Zsh хочет исправить VIM в .vim

12

Я использую zsh на Gentoo x64, и когда я печатаю sudo vim /path/to/file из своей домашней папки, zsh спрашивает:

zsh: correct 'vim' to '.vim' [nyae]?

Я хочу запустить vimне мою .vimпапку. Как я могу это исправить?

Я думаю, что это setopt autocdявляется причиной. Странно, если я не добавлю sudo, zsh не просит ничего исправить.

Ракета Хазмат
источник

Ответы:

8

попробуй alias sudo='nocorrect sudo'.

helb
источник
2
nocorrectа? Это просто игнорирует исправления только для этой команды? Я должен проверить это позже.
Ракета Хазмат
15

ОК, я получил это. Проблема не в autocdэтом correctall. vimкак команда ( vim file) не вызывает каких - либо коррекции *, но vimв sudo vimэто аргумент, zshвидит , что это близко к названию папки в текущей директории, и спрашивает , если вы хотите изменить , что, как файлы и папки более общие аргументы. Так что решение есть unsetopt correctall(или setopt nocorrectall). Как иллюстрация; обратите внимание, у меня есть .zshпапка:

% unsetopt correctall
% setopt autocd correct 
% vim zsh
% sudo vim zsh
% setopt correctall
% vim zsh
zsh: correct 'zsh' to '.zsh' [nyae]? 
% sudo vim zsh
zsh: correct 'zsh' to '.zsh' [nyae]? 
zsh: correct 'vim' to '.vim' [nyae]? 
%

*: Или не должен, у меня был zsh спросить, должен ли он быть исправлен commandдля _commandпары команд по какой-то причине. Возможно, потому что он проверяет псевдонимы и дает им более высокий приоритет.

Kevin
источник
Ах, это имеет смысл. Я вроде как с correctallдальше, потому что я не могу печатать, и мне нравится , как он будет исправлять ksв ls. Интересно, есть ли способ изменить способ проверки «исправлений» в zsh?
Ракета Хазмат