정규식 필터로 번역에서 원치 않는 줄 제외하기
디버그 문자열, 에셋 경로, 남아 있는 개발용 텍스트는 자동 제외를 빠져나갈 수 있습니다. RuneTranslate의 프로젝트별 정규식 필터는 원본이 패턴과 일치하는 모든 줄을 제외하며, 무엇이 걸리는지 정확히 보여주는 실시간 미리보기까지 제공하므로 쓸모없는 텍스트에 번역을 낭비할 일이 없습니다. 모든 등급에서 무료입니다.
RuneTranslate를 게임에 지정하면 찾을 수 있는 모든 번역 가능한 문자열을 가져옵니다. 대부분은 실제 대사와 메뉴 텍스트지만, 일부는 쓸모없는 것들입니다. 남아 있는 디버그 줄, 에셋 파일명, 내부 플래그, 그리고 게임이 플레이어에게 결코 보여주지 않는 떠도는 식별자 같은 것들이죠. RuneTranslate는 엔진별로 명백한 경우를 이미 제외하고 이를 빨간색 옵트인 행으로 표시하지만, 게임마다 다르며 어떤 쓸모없는 텍스트는 지금 작업 중인 타이틀에만 특화되어 있습니다.
바로 그럴 때 쓰는 것이 정규식 제외 필터입니다. RuneTranslate에 하나 이상의 패턴을 주면, 원본 텍스트가 패턴과 일치하는 모든 줄이 실행에서 제외됩니다. 번역기가 건너뛰고, 언제든 다시 켤 수 있는 빨간색 옵트인 행으로 표시되죠. 내장된 엔진 제외와 같은 방식이지만, 여러분 자신의 규칙으로 작동하고 프로젝트와 함께 저장됩니다. 게다가 비용도 들지 않습니다. 용어집이나 번역 메모리와 달리 정규식 제외는 모든 등급에서 무료입니다.
애초에 줄을 왜 제외할까요?
두 가지 이유가 있습니다. 하나는 명백하고, 다른 하나는 더 중요합니다.
- 비용과 시간. 번역하는 쓸모없는 줄 하나하나가 아무도 읽지 않을 텍스트에 쓰이는 제공업체 할당량(또는 무료 스크레이퍼 속도 제한)입니다. 게임 전체로 보면 이게 쌓입니다.
- 게임이 정상 작동하게 유지. 이게 진짜 중요한 이유입니다. 어떤 줄은 아예 텍스트가 아닙니다. 엔진이 값으로 처리하는 키, 파일 경로, 흐름 피연산자입니다.
bg_office_01이나EV_FLAG_TRUE를 번역하면 장면 전환이나 변수 조회를 조용히 망가뜨릴 수 있습니다. 이들을 제외하면 내보낸 빌드가 안정적으로 유지됩니다.
어디에서 찾나요
프로젝트를 열고, 편집기 툴바에서 ⋯ 더 보기 메뉴를 연 다음 정규식 제외를 선택하세요. 그러면 사용자 지정 제외 필터 패널이 열립니다. 하나의 대화 상자 안에서 패턴을 추가하고, 무엇이 걸리는지 정확히 확인하고, 적용하는 모든 작업을 할 수 있습니다.
실시간 미리보기가 핵심입니다
패턴을 무턱대고 적용할 일은 없습니다. 정규식을 입력하면 RuneTranslate가 전체 TOTAL줄 중 N줄 일치를 보여주고, 걸릴 실제 줄 몇 개를 나열하며, 키를 누를 때마다 갱신됩니다. 잘못된 패턴은 오류와 함께 즉시 표시되므로 깨진 패턴을 저장할 수 없습니다.
미리보기는 여러분 프로젝트의 실제 줄을 보여주므로, 쓸모없는 것만 정확히 걸리고 진짜 텍스트는 걸리지 않을 때까지 패턴을 조정한 뒤 적용하면 됩니다. 기억해 둘 만한 한 가지 세부 사항: 패턴은 번역이 아니라 원본 텍스트, 즉 원래 일본어나 여러분의 원본 언어가 무엇이든 그것과 일치합니다. 패턴은 번역되지 않은 텍스트를 기준으로 작성합니다.
미리 만들어진 패턴
이 패널에는 거의 모든 일본 게임에서 등장하는 패턴을 위한 원클릭 프리셋 칩이 함께 제공됩니다:
- ASCII 전용 —
^[\x00-\x7F]+$— 원본 언어 문자가 전혀 없는 줄(남아 있는 영어, 로마자 표기 또는 식별자). 원본이 일본어일 때는 보통 제외해도 안전합니다. - 에셋 경로 —
\.(png|jpe?g|gif|webp|ogg|mp3|wav|webm|mp4)$— 미디어 파일 확장자로 끝나는 모든 것. - 변수 —
^[a-z_]+\.[a-z_]—f.page나state.flag처럼 점으로 연결된 코드 참조. - 대문자 토큰 —
^[A-Z0-9_]+$—EVENT_FLAG_3같은 상수와 플래그. - 숫자 / 기호 —
^[\d\s.,:%/+\-]+$— 숫자로만 된 행과11111112222같은 타일 마스크. - 대괄호 태그 —
^\[.*\]$— 오직[tag]하나뿐인 줄 전체.
이 패널은 직접 만들 때 쓸 간단한 치트 시트도 보여줍니다: ^와 $는 줄의 시작과 끝을 고정하고, .은 임의의 문자, *와 +는 0개 이상과 1개 이상을 뜻하며, ?는 선택 사항, \d는 숫자, \w는 단어 문자, \s는 공백입니다.
직접 필터 작성하기
프리셋은 일반적인 경우를 다룹니다. 게임에 특화된 것은 직접 자바스크립트 정규식을 작성하면 됩니다. 몇 가지 요령:
- 줄 전체에 고정하세요. 아무 처리 없는
debug는 그 단어를 포함하는 모든 줄과 일치합니다. 디버깅에 관한 실제 대사까지 포함해서요.^DEBUG:는 그 표시로 시작하는 줄만 일치하고, 패턴을^...$로 감싸면 줄 전체와 일치합니다. 고정은 가장 안전한 기본값입니다. - 미리보기 개수를 지켜보세요. 어떤 패턴이 쓸모없는 줄 12개를 걸다가 갑자기 400개를 건다면, 거의 틀림없이 진짜 텍스트를 걸어 버린 것입니다. 샘플을 확인하고 패턴을 좁히세요.
- 단어보다 구조를 우선하세요. 쓸모없는 텍스트는 보통 특정 단어가 아니라 형태로 알아볼 수 있습니다. 전부 대문자, 점으로 연결된 경로, 끝의 파일 확장자, 순수한 숫자 같은 것들이죠. 구조적 패턴은 프로젝트 전체에 두루 적용됩니다.
- 아이디어 하나에 규칙 하나. 작고 명확한 패턴 여러 개가 거대하고 읽기 힘든 패턴 하나보다 이해하기도, 나중에 제거하기도 쉽습니다.
적용하기, 그리고 되돌리기
적용 및 저장을 누르세요. RuneTranslate는 패턴을 프로젝트와 함께 저장하고 모든 줄을 다시 분류한 뒤, 무슨 일이 일어났는지 정확히 알려줍니다. 예를 들어 340줄 제외 · 5줄 복원 같은 식으로요. 복원된 개수는 전에는 어떤 필터에 걸렸지만 이제는 걸리지 않아 자동으로 되돌려진 줄입니다.
완전히 되돌릴 수 있습니다. 패턴을 삭제하고 다시 적용하면 해당 줄이 돌아옵니다. 필터는 오직 자기가 만든 제외만 관리하며, 엔진 자동 제외를 절대 덮어쓰지 않습니다. 그리고 필터가 조금 넓게 잡혔다면 각 줄의 행 토글로 언제든 개별 줄을 다시 켤 수 있습니다.
필터링된 번역 초기화 프롬프트
RuneTranslate가 대신 처리해 주는 한 가지 경우: 이미 번역해 둔 줄을 필터로 걸러내면 어떻게 될까요? 제외된 줄은 원본 텍스트를 내보내지만, 기존 번역은 여전히 그 줄에 붙어 있습니다. 그래서 적용 직후, 새로 필터링된 줄 중에 이미 번역이 들어 있는 것이 있으면 RuneTranslate는 그것들을 대기 상태로 초기화할지(번역을 버려 내보낼 때 깔끔하게 원본으로 되돌아가도록) 아니면 그대로 둘지 묻습니다. 보통은 초기화가 원하는 결과입니다. 애초에 번역되기를 원치 않아서 그 줄들을 제외한 것이니까요.
다른 기능과 어떻게 어울리나
정규식 필터는 마지막 마무리 도구입니다. 엔진 어댑터는 각 형식에 대해 자기가 아는 구조적 쓸모없는 텍스트를 이미 제외하므로, 잘 지원되는 게임에서는 AI가 에셋 경로를 볼 일이 아예 없습니다. 필터는 남은 것들을 위한 것입니다. 게임에 특화된 표시, 이상한 디버그 채널 하나, 또는 잘 안 쓰이는 엔진이 드러내는, 대사라고 하기엔 애매한 문자열 같은 것들이죠.
편집기의 제외됨 상태 필터를 사용하면 현재 보류된 모든 것, 즉 엔진 제외와 여러분의 정규식 제외를 함께 검토하고 그중 무엇이든 다시 포함시킬 수 있습니다. 그리고 필터가 줄을 제거하는 것과 반대로, 용어집은 정반대 역할을 합니다. 선택한 용어를 고정하여 항상 같은 방식으로 번역되게 하죠. 이 둘을 함께 쓰면 무엇을 번역할지와 어떻게 번역할지를 모두 제어할 수 있습니다.
프로젝트를 시작할 때 필터 패널에 5분만 투자하면 — 프리셋 칩 몇 개를 넣고, 미리보기를 훑어보고, 적용하면 — 이후 모든 실행에서 할당량을 아끼고 위험한 비텍스트를 번역기에서 완전히 차단할 수 있습니다. RuneTranslate 다운로드를 하고, 아무 게임이나 열어, ⋯ 더 보기 메뉴에서 정규식 제외를 확인해 보세요.
RuneTranslate를 써볼 준비가 되셨나요?
무료 등급에서 모든 엔진과 모든 번역 제공자가 열립니다. Supporter($3/mo)로 최고 속도가 열립니다.
Windows용 다운로드