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'.


2
nocorrect, а? Це просто ігнорує виправлення лише для цієї команди? Мені доведеться перевірити це пізніше.
Ракета Hazmat

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]? 
%

*: Або ні, я мав ЗШ запитати , якщо це необхідно виправити , commandщоб _commandна пару команд з якої - то причини. Можливо, тому, що він перевіряє псевдоніми та надає їм більший пріоритет.


Ах, це має сенс. Я ніби як з correctallдалі, тому що я не можу друкувати, і мені подобається , як він буде виправляти ksв ls. Цікаво, чи існує спосіб змінити спосіб zsh на "виправлення".
Ракета Hazmat
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.