From: Sergey Matveev Date: Sat, 27 Nov 2021 19:36:53 +0000 (+0300) Subject: Переписал torn с Perl на zsh X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=9dc73622854227df4a31a4c0a57adfc72a52ecd6;p=stargrave-blog.git Переписал torn с Perl на zsh http://www.git.stargrave.org/?p=torn.git;a=blob;f=torn.zsh Мой самый старый престарый скрипт из всех что я использовал регулярно по сей день, где в copyright указан аж 2007-ой год, переписан с Perl на zsh. Точнее он стал zsh функцией, а не полноценным исполняемым скриптом. Иногда мне нужна только транслитерация. Иногда нужно всё кроме транслитерации. На самом деле сейчас я стал меньше транслитерировать имена файлов, ибо в целом софт и современные Unix файловые системы их хорошо поддерживают. Подразумевается что используется это вместе с zmv, но никакой специфики для него нет. Вместо "torn" вызова можно сделать: zmv "*" '`torn $f`. Прежде была FORCE_DIR переменная, а теперь достаточно работать с glob-ом самого zsh. zmv -Q "(**/)*(.)" '`torn $f`'. Можно вызывать tornt функцию, только для транслитерации. Можно включить интерактивный режим (-i) или dry-run (-n) самого zmv. Это же ещё и первый раз когда я написал функцию для использования с autoload-ом. ---