Если вы заметили, что часто производите одну и ту же последовательность операций с помощью TextLab, вы можете объединить последовательность операций в одну пользовательскую команду. Сделать это можно с помощью консольного приложения TextLabCmd, которое поставляется вместе с TextLab. Это приложение может выполнять все преобразования текста, которые выполняет TextLab, но работает в консольном окне. Приложение предназначено для написания командных файлов, содержащих последовательные вызовы TextLabCmd и другие внешние команды по обработке текста.
Например, вам надо объединить последовательность следующих действий:
- Применить табуляцию (tabify);
- Удалить завершающие пробелы (Trim Trailing Spaces);
- Выровнить комментари (Align Comments).
Это можно выполнить при помощи следующего bat-файла, если его подключить к TextLab.
TextLabCmd.exe -action:Tabify -tabsize:4 | ^
TextLabCmd.exe -action:TrimTrailSpaces | ^
TextLabCmd.exe -action:AlignComments -texttype:2
Опции командной строки TextLabCmd соответствуют настройкам TextLab:
- -action:<Имя операции>
- Список имён операций приведён ниже. Обязательная опция.
- -texttype:<Код типа текста>
- Коды типов текста:
1 - Естественный язык,
2 - С-like и похожие по синстаксису языки,
3 - Unix Shell и похожие по синстаксису языки,
4 - VB,
5 - SQL,
По умолчанию значение - 1 (т.е. естественный язык);
- -textwidth:<Ширина текста>
- Максимальная ширина текста. По умолчанию - 80;
- -usetab
- Признак использования символа табуляции. По умолчанию табуляция используется.
- -tabsize:<Размер табуляции>
- По умолчанию - 4;
- -bullets:<Список маркеров элементов списка>
- Маркеры через запятую. По умолчанию - "o,*,+,-,¤,·,v,<>,[]".
- -listmark:<Код способа нумерации>
- Код способов нумерации:
1 - 1. 2. 3. ...
2 - 1) 2) 3) ...
3 - I. II. III. ...
4 - i. ii. iii. ...
5 - A. B. C. ...
6 - A) B) C) ...
7 - a. b. c. ...
8 - a) b) c) ...
9 - А. Б. В. ...
10 - А) Б) В) ...
11 - а. б. в. ...
12 - а) б) в) ...
По умолчанию используется способ "1. 2. 3. ...."
- -columns:<Число колонок>
- Используется для операции Columns. По умолчанию - 3;
- -keepleft</strong>
- Признак необходимости сохранения положения каждого абзаца,
По умолчанию при форматировании все абзацы выставляются получают одинаковый отступ от левого края текста.
- -nlistBtm</strong>
- Использется для форматирования много уровневых списков. Признак необходимости нумерации самых глубоко вложенных элементов списка.
По умолчанию самые глубоко вложенные элементы списка нумеруются.
- -cp:<Номер кодовой страницы>
- Номер кодовой страницы в соответствии с которой закодирован входной текст, и в соответсвии с которой приложение будет выдавать результирующий текст. По умолчанию - 1251.
Используются следующие имена операций:
- Форматирование параграфов
AlignLeft, AlignRight, AlignCenter, Justify, JoinLinesInOne, DoubleLineSpace, JoinParagraphs,
- Списки
NumberedLines, BulletedLines, MultiNumberedLines, MultiBulletedLines, CleanLineBullets, SortLines, NumberedPgs, BulletedPgs, MultiNumberedPgs, MultiBulletedPgs, CleanPgsBullets,
- Таблицы
Columns,
- Символы
AlterCase, UpperCase, Lowercase, CorrectKbLayout, Translit, BackTranslit
- Пробельные символы
Tabify, Untabify, IncIndent, DecIndent, MoveRight, MoveLeft, Unalign, TrimTrailSpaces
- Программирование
Comment, Uncomment, AlignComments, DeleteComments, OnlyComments
Утилита принимает входные данные со стандартного потока ввода, в выдаёт результат в поток стандартного вывода.
Ниже приведён пример использования:
TextLabCmd.exe -action:UpperCase < source.txt > target.txt