Большой файл .A2L, цитируемая проблема перевода - PullRequest
1 голос
/ 15 февраля 2020

Я ищу небольшое руководство от опытных пользователей. Я очень новичок, и я надеюсь, что моя формулировка будет ясной и разборчивой.

У меня большой файл .A2L размером 11,3 МБ. Он содержит около 600 000 строк данных, кода и цитируемого текста. Цитируемый текст на немецком языке, и я хотел бы перевести это на английский sh.

Посмотрев на приведенный ниже пример, вы поймете, о чем я говорю.

/ begin CHARACTERISTI C

FrmMng_tiACCAPoll_C
"Erlaubte Zeit zur CAN Polling der ACCA-Botschaft, wenn GRA"
VALUE
0x1D45BA
Kw_Wu16
655350.0
Time_ms
0.00
655350.0

FORMAT "%8.1"
EXTENDED_LIMITS 0.00 655350.0

/begin IF_DATA ASAP1B_CCP
    DP_BLOB
      0x00
      0x1D45BA
      0x2
/end IF_DATA
/begin IF_DATA ETK 
    DP_BLOB 
      0x1D45BA 
      0x2 
/end IF_DATA 
/begin IF_DATA ASAP1B_KWP2000 
    DP_BLOB 
      0x1D45BA 
      0x2 
/end IF_DATA 
/begin IF_DATA ASAP1B_MCMESS 
    DP_BLOB 
      0x1D45BA 
      0x2 
/end IF_DATA 

Этот шаблон повторяется на протяжении всего файл. Много строк кода, затем несколько немецких слов в кавычках.

Вот где я сейчас нахожусь. Используя некоторый код Regex, мне удалось получить весь текст из исходного файла. Я также добавил номера строк, чтобы я мог снова вставить переведенный текст туда, откуда он возник.

Пример ниже. 1. Строка 4512: «Kennlin ie zur Отрицательный Гренц для Beschleuningungssollwer» 2. Строка 4566: «Kennlin ie zur Положительный Гренц для Beschleuningungssollwert» 3. Строка 4620: «Смещение на Отрицательный Beschleuningungsung * 101 * * 1015» * Вы видите, я надеюсь перевести текст в цитатах на английский sh. Затем я надеюсь снова вставить переведенный текст обратно в правильную строку. В этом случае строка 4512 будет иметь вид «Характеристика c кривая для отрицательного предела для уставок ускорения».

Теперь у меня есть хороший, аккуратный, более 16 000 файлов, которые необходимо перевести. Когда я отправляю этот текстовый файл размером 1 МБ в Google переводчик, он ничего не делает с ним. Не одно изменение. Я полагаю, что это как-то связано с числами в файле.

Я сделал еще один шаг вперед и удалил все числа и слово «строка» из файла. Казалось, это работает. У меня почти полностью переведенный список. Проблема в том, что Google, похоже, потерял несколько предложений, поскольку в моем новом файле меньше строк, чем в моем исходном файле. Другая проблема заключается в том, что, не имея номеров строк, я не знаю, куда вставить недавно переведенные сообщения.

Я новичок, и я пытаюсь учиться, но я признаю, что это вышло моей лиги. Кто-нибудь может предложить какие-нибудь советы или предложения?

Я благодарю вас за ваше время и хорошего дня.

Шейн

1 Ответ

0 голосов
/ 24 февраля 2020

Попробуйте выполнить следующую процедуру:

  1. Откройте файл
  2. Поместите курсор в начало первой строки
  3. Alt + C
  4. Пометьте «Текст для вставки» и напишите: «Lin ie:» (без кавычек), затем OK
  5. Поместите курсор на первую строку, непосредственно перед ":"
  6. Alt + C
  7. Отметьте «Вставить номер»: выберите старт = 1; Увеличение на = 1 и добавление нулей (необязательно)
  8. Control + H . Поиск: ^Linie[^:]+:[ ](?!")[^\n]*(?:\r?\n|\z), заменить на: (nothing)
  9. Скопировать вставить в Google Переводчик и перевести.

Я думаю, что одним из ключевых здесь было использование слова «Лин ie 'вместо' Линия '. Поскольку позже вы захотите перевести все на английский язык sh, возможно, из-за смешения разных языков переводчик не будет работать нормально и, возможно, пропустит некоторые строки.

...