zsh ingin mengoreksi vim ke .vim

12

Saya menggunakan zsh di Gentoo x64, dan ketika saya mengetik sudo vim /path/to/file dari folder rumah saya, zsh bertanya:

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

Saya ingin menjalankan vimbukan .vimfolder saya . Bagaimana cara saya memperbaikinya?

Dugaan saya adalah yang setopt autocdmenyebabkan ini. Yang aneh adalah, jika saya tidak menambahkan sudo, zsh tidak meminta untuk memperbaiki apa pun.

Roket Hazmat
sumber

Jawaban:

8

coba alias sudo='nocorrect sudo'.

helb
sumber
2
nocorrect, eh? Apakah itu mengabaikan koreksi hanya untuk perintah itu? Saya harus menguji ini nanti.
Rocket Hazmat
15

Oke, saya mengerti. Masalahnya bukan autocd, itu correctall. vimsebagai perintah ( vim file) tidak memicu koreksi *, tapi vimdi sudo vimargumen, zshmelihat bahwa itu dekat dengan nama folder di direktori saat ini, dan menanyakan apakah Anda ingin perubahan itu, sebagai file dan folder yang lebih argumen umum. Jadi solusinya adalah unsetopt correctall(atau setopt nocorrectall). Sebagai ilustrasi; perhatikan saya punya .zshfolder:

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

*: Atau tidak, saya telah memiliki zsh bertanya apakah itu harus benar commanduntuk _commandpada beberapa perintah untuk beberapa alasan. Mungkin karena memeriksa alias dan memberi mereka prioritas lebih tinggi.

Kevin
sumber
Ah, itu masuk akal. Aku agak seperti memiliki correctall, karena saya tidak bisa mengetik, dan saya seperti bagaimana itu akan benar ksuntuk ls. Bertanya-tanya apakah ada cara untuk mengubah cara zsh memeriksa "koreksi".
Rocket Hazmat