ठीक है, मुझे यह मिल गया। समस्या नहीं है 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किसी कारण से एक जोड़े आदेशों पर। शायद इसलिए कि यह उपनामों की जाँच करता है और उन्हें उच्च प्राथमिकता देता है।
nocorrect, एह? क्या यह सिर्फ उस आदेश के लिए सुधार की उपेक्षा करता है? मुझे बाद में इसका परीक्षण करना होगा।