Skip to content

Latest commit

 

History

History
39 lines (29 loc) · 11 KB

fix_usage.md

File metadata and controls

39 lines (29 loc) · 11 KB

Що таке fix

  • fix - програма для виконанняя частих дій з текстом які виникають при перекладі ранобе

Як її встановити

  1. Встановіть компілятор для мови C++ та програму Make на вашу операційну систему
  • У GNU/Linux та MacOS встановіть make та gcc скориставшись пакетним менеджером. Наприклад в ArchLinux: sudo pacman -S base-devel gcc
  • Windows: Відеоінструкція як встановити через MSYS2, програма Visual Studio Code вам не потрібна. Успіхів!
  1. Відкрийте термінал у теці з файлом fix.cpp і виконайте команду make

  2. Впевніться щоб збудований файл fix буде видно у $PATH

  • Для GNU/Linux та MacOS, fix та інші скрипти можна перемістити у ~/.local/bin/. Якщо ця тека не у $PATH, додайте export PATH=$PATH:/home/[ваш користувач]/.local/bin/ до вашого rc-файлу терміналу
  • У Windows рекомендую додати теку з fix.cpp у ваш $PATH, щоб усі скрипти були доступні відусіль. Проте для того, щоб на Windows працювали усі скрипти, а не лише fix їх треба виконувати у терміналі mysys2
  • За бажанням програму можна використовувати й без $PATH, але тоді треба надати повний шлях до неї ./dev/scripts/fix

Як використовувати програму

Взаємодія з програмою відбувається через передачу їй параметрів. Наприклад fix -c 4 -C "\nРозділ " розділи4_100 - виконає поділ файлу розділи4_100 на окремі файли по ключовому слову [новий рядок]Розділ , номер першого файлу буде 4.

Програма зберігає результат своєї роботи у теці res.

Без параметрів зʼявиться пояснення які параметри доступні у програмі: usage: fix [-tTdeE] [-n length] [-c chapter] [-C delimeter] file ...

Детальне пояснення параметрів

  • -c - вказує номер першого файлу у який зберігати результат роботи наступних команд. Використовується, наприклад, коли ви вже переклали декілька розділів і вам не потрібно щоб нумерація файлів почалась з 1. fix -c 4 -C "\nChapter " розділи4_100 - виконає поділ файлу розділи4_100 на окремі файли по ключовому слову [новий рядок]Chapter , номер першого файлу буде 4.
  • -C - патерн поділу файлу. Тобто вказати програмі де закінчення одного файлу, а де починається наступний. Наприклад ви маєте файл розділи1_645 з усіма англійськими розділами у ньому. Щоб власноруч не створювати файли та копіювати у них кожний розділ окремо використовується цей параметр. fix -C "\nChapter " розділи1_645 - створить файли res/1,2,3...645 в кожному буде міститись відповідний розділ. Дуже зручно) Якщо вам треба поділити розділи українського твору, то -C "\nРозділ " можна не вказувати, це ключове слово використовується за замовчуванням. Патер має змінюватись відповідно до структури вашого тексту, тобто якщо ваші розділи починаються з # Chapter 20, вам треба написати fix -C "\n# Chapter ".
  • -t - поділ тексту на ділянки певної довжини(додає '\n' між ділянками). Може знадобитись якщо вам не треба ділити текст на файли, а лише додати відступи на певній відстані. Відстань задається через параметр -n. Не ділить слова навпіл, бо шукає останній '\n' для такої кількості символів. fix -n 1500 -t розділи1_645 - створить файл res/розділи1_645 у якому ~кожні 1500 символів зʼявлятиметься новий рядок.
  • -T - поділити файл на декілька, за кількістю символів. Використовується, наприклад, щоб поділити файл з англійськими розділами на ті, що будуть придатні для скрипту перекладу s. Не ділить слова навпіл, бо шукає останній '\n' для такої кількості символів. fix -n 1500 -T розділи1_645 - створить багато файлів у теці res, починаючи з 1, у кожному буде ~1500 символів. Потім перекладаєте всі ці файли за допомогою скрипту s, наприклад s -r -E -S 130 -T 3650 $(ls | sort -V), $(ls | sort -V) означає вибрати усі файли у цій теці, відсортоваті за абеткою та передати як параметри у скрипт.
  • -n - з якою кількістю символів будуть працювати наступні команди. 5000 символів за замовчуванням. Використовується, наприклад, для поділу англійського тексту на файли які потім підуть у скрипт перекладу s. Тобто щоб вказати коли почався текст для наступного файлу з англійським текстом. fix -n 1500 -T розділи1_645 Параметр переважно використовується з числом 1500 - розділити файл для перекладу у DeepL.
  • -e - копіювання тексту файлу у буфер обміну по патерну і збереження результату. Використовується, наприклад, для перекладу розділу через вебзастосунок DeepL якщо у вас не має обмеження на кількість символів на переклад. Тобто виконали fix -C "\nChapter " -e розділи1_5 - у буфер обміну потрапив перший розділ, ви його перекладаєте у DeepL, копіюєте результат перекладу у буфер обміну і натискаєте Enter у терміналі з програмою fix. Це спричинить збереження результату з буфера обміну і копіювання наступного розділу за патерном, наприкінці зберігається файл з усіма результатами. Можливо ця функція буде трохи перероблена. Якщо випадково натиснули Enter не скопіювавши результат, на попередній розділ можна повернутись натиснувши / і Enter.
  • -E - копіювання тексту файлу у буфер обміну за кількістю символів і збереження результату з буфера обміну у файл. Використовую для копіювання тексту і перевірки помилок у LanguageTool. fix -n 9945 -E 1 2 3 - поділить файл перекладу 1 на декілька частин, з ~9945 символів у кожній і скопіює першу у буфер обміну. Перевіривши першу частину натискаємо Enter, результат виправленої першої частини зберігається у пам'яті, друга частина тексту потрапляє у буфер обмін. Коли всі частини файлу 1 перевірені — виправлені частини зберігаються у файлі res/1, потім програма переходить до файлу 2 і повторює ці дії поки файли не закінчиться або користувач не припинить виконання програми. Дуже зручна функція!
  • -d - виправлення закінчень у кожному рядку. Якщо використовувати скрипт conver_book у деяких реченнях зʼявились нові рядки, слова,\nслова. Щоб виправити це, використовується цей параметр.
  • -a - яке закінчення додавати до назви файлу, .txt додається за замовчуванням якщо назва файла не містить його. fix -a .txt -n 1500 -T chapters1_645 - поділить файл з англійськими розділами на окремі файли, які придатні до перекладу в DeepL через скрипт s. Для своїх перекладів не використовую жодних закінчень, бо вони лише заважають, якщо вам теж вкажіть параметр -A. Ця функція зроблена, щоб користувачі не вважали що програма "зіпсувала" їх файли перекладу.
  • -A - вимкнути додавання закінчення до назви файлу. fix -A -n 1500 -T chapters1_645

Якщо вам потрібно виконати заміну слів, використайте скрипт chg.

Що не варто робити

  • -n менше ніж 1000. Бо -t чи -T, наприклад, можуть потрапити на рядок який більше за 1000 символів і програма може працювати так вічно шукаючи новий рядок вичерпавши усю операційну памʼять. Вас попередили.