NAME
ru-utf8 - утилита подмены файлов в национальных кодировках на файлы в utf-8.
VERSION
Version 0.02
SYNOPSIS
ru-utf8 [-h] [--man] [<files> ...] [--ext exts] [--in-branch] --command <command>
DESCRIPTION
Утилита переводит файлы во временные в кодировке utf-8 (в /tmp) и после выполнения команды и их изменения переписывает обратно в определённой кодировке.
Есть 3 основные режима работы:
# Обработать все изменённые, но ещё не закомиченные файлы:
$ ru-utf8 -c ''
# Обработать изменённые и закомиченные файлы в ветке (branch-е):
$ ru-utf8 --branch
# Обработать указанные файлы:
$ ru-utf8 file1 /root/file2
С помощью опции -e (--ext) можно указать расширения файлов для форматирования (по умолчанию это pm,pl,plx,t,):
$ ru-utf8 -e pm,,t
Обратите внимание на пустое расширение — оно используется для исполняемых скриптов perl, которые расширения не имеют. При наличие такого расширения будет проверяться так же первая строка файла регуляркой /^#!.*?\bperl\b/
.
Так же можно указать кодировки и порядок в котором они будут проверяться:
$ ru-utf8 -n cp1251,utf-8
`ru-utf8` возвращает максимальный код из возвращённых при запуске команды над файлами.
OPTIONS
- -h, --help
-
Показать помощь и выйти.
- --man
-
Распечатать мануал и завершиться.
- -e <exts>, --ext <exts>
-
Список расширений через запятую.
По умолчанию: pm,pl,t,.
Пустое расширение обозначает файлы без расширений. Однако в них проверяется наличие #! в начале файла.
- -n encodings, --encodings encodings
-
Список кодировок через запятую.
По умолчанию берётся из переменной окружения RU-ENCODINGS, а если она пуста, равняется: utf-8,cp1251,koi8-r.
- -b, --in-branch
-
Форматировать изменённые и закомиченные файлы в ветке (branch-е).
- -с command, --command command
-
Команда.
Обязательный параметр.
- -o, --overall
-
Указывает, что команда одна для всех файлов, а не для каждого по отдельности.
При этом обращение к файлам происходит как в шелле: $1, $2...
Например:
ru-utf8 file1 file2 -c 'cat $1 $2'
ARGS
LICENSE
⚖ GPLv3
AUTHOR
Yaroslav O. Kosmina <darviarush@mail.ru>