Исключения для Zsh правильно все функции?

3278
Jan Hlavacek

Я использую correctallопцию в zsh, и я в целом вполне доволен этим. Однако есть несколько ситуаций, когда я нахожу эту функцию очень раздражающей.

Например, допустим, у меня есть файл, file1.texи я хочу создать копию с именем, file2.texкоторую я затем отредактирую, чтобы внести некоторые изменения. я сделаю

cp file1.tex file2.tex 

только чтобы сказать, zshчто я мог ошибиться file2.texи если я хочу исправить это file1.tex.

Происходит следующее: когда zshпытается проверить орфографию, он ищет в текущем каталоге файл с именем file2.tex, не находит его, но находит file1.texи предполагает, что я ошибся file1.tex, и спрашивает, хочу ли я это исправить.

Это случается со мной так часто, что я на самом деле отключаю correctallопцию и использую только correct. Однако, как я плохая машинистка, я очень скучаю по correctallварианту. Таким образом мой мой вопрос:

Есть ли способ сказать, чтобы zshне исправить последний аргумент cpкоманды?

(Я знаю, что могу получить желаемый результат, изменив настройки завершения cp, но я все еще хочу получить завершение по последнему аргументу, я просто не хочу его автокорректировать.)

12
Я думаю, что вы можете получить результат, изменив настройки завершения для `cp`, не теряя завершения. Посмотрите на раздел о `zstyle` в справочной странице` zshcompsys`, в частности, тег `corrections`. Обязательно сообщите, если вы понимаете, какую команду выдать (я не знаю). Gilles 13 лет назад 0
@ Жиль: Спасибо! Это, по крайней мере, даст мне направление, в котором нужно смотреть. В следующий раз у меня будет несколько дней (или, может быть, недель или месяцев?), Когда мне нечего будет делать, я посмотрю, смогу ли я что-то понять. :) Jan Hlavacek 13 лет назад 0

1 ответ на вопрос

13
peth

Попробуйте это.

alias cp='nocorrect cp ' alias mv='nocorrect mv ' alias mkdir='nocorrect mkdir ' 

и т.п.

Это не совсем так, поскольку это приведет к отключению применения корректора для всей команды, но я думаю, что это хороший компромисс. Например, завершение (в том числе правильное завершение) и расширение будут работать.

Благодарю. Хотя это не совсем то, что я искал, похоже, это самая близкая вещь, которая на самом деле возможна. Jan Hlavacek 13 лет назад 0

Похожие вопросы