- RU.UNIX ----------------------------------------------------------- RU.UNIX - Msg : #479 [500] От : Artem Chuprina 2:5020/400 13 ноября 04, 00:15 Кому : Vasily Korytov 15 ноября 04, 02:23 Тема : Re: tcsh to zsh completion convert ------------------------------------------------------------------------------- From: Artem ChuprinaVasily Korytov -> Artem Chuprina @ Fri, 12 Nov 2004 19:18:14 +0000 (UTC): >> VK> Как я понял из zshcompctl(1), можно сделать это через extended >> VK> completion (через ключ m) -- но есть ли способ проще? >> >> Безусловно. Удалить эту команду нафиг и вставить вместо этого >> >> autoload -U compinit >> compinit VK> Спасибо, я посмотрю на это и решу, надо ли мне оно или дальше колдовать VK> с compctl. Пока весь этот compinit кажется очень перегруженным и VK> монструозным. =(( Они прекрасно совмещаются. Посредством compinit ты грузишь то, что сделали до тебя и пользуешься готовым. Его там, скажу я тебе, дофига. Hастолько дофига, что у меня сейчас ни одного своего определения нет, а completion zsh я использую на всю катушку - за него его и держу. А свои добавления делаешь более простым в изучении (а может, и в использовании) compctl. >> Для тех команд, которым его обучить забыли - есть два варианта >> организации completion - через compctl (старый вариант, подозреваю, что >> по возможностям близкий к tcsh'ному complete, хотя синтаксис иной) и >> через compdef (новый, продвинутый, без поллитры не разберешься, но зато >> для очень многих команд уже все готово) VK> Вот именно то, что уже готово для многих команд меня и не устраивает. А чем именно? VK> Можно ли как-то бескровно не использовать все эти пресеты, но VK> использовать compdef? Конечно, можно. VK> И, вдогонку, еще один вопрос по zsh. Существует ли способ увидеть в VK> completion все директории -- в т.ч. с точкой в начале, отличный от VK> `setopt glob_dots'? Да, через compdef можно практически все, что угодно (через compctl - не факт, но не исключу, что и через него можно). Просто штатные средства работают с учетом glob_dots. Оно, в общем, понятно - обычно ты либо предпочитаешь видеть все, либо у тебя все-таки то, что начинается с точки, несет служебную функцию и одновременно с неслужебными их видеть не надо. У меня в этом смысле получилась странная комбинация - в выводе ls я предпочитаю видеть все, а completion - как у нормальных людей, раздельно. -- Artem Chuprina FIDO: 2:5020/122.256 --- ifmail v.2.15dev5.3 * Origin: Leninsky 45 home network (2:5020/400)