Zsh хочет автозамены команды, с перед ним
Я только начал использовать Zsh в последнее время для некоторой интегрированной поддержки в командной строке для моего статуса Git и т. д.
когда я набираю:
ruby -v
чтобы подтвердить версию ruby, которую я запускаю, Zsh спрашивает, хочу ли я изменить команду на _ruby. Ну, сказав " нет " в командной строке и выполнив команду, как ожидалось, я продолжаю получать вопрос в командной строке после подтверждения правильности моей команды.
Я предполагаю, что есть файл завершения или что-то в этом роде.
спасибо
обновление:
оболочка больше не пытается завершить _ruby, она перестала отвечать после закрытия оболочки несколько раз каким-то образом.
Я пытался очистить файл несколько раз, но есть переменная "opts", которая составляет 50 или более строк, и все строки выполняются вместе, некоторые строки более 150 символов. Может быть, я мог бы отправить вам вложение, если вы все еще хотите его увидеть. Я искренне извиняюсь за грязный пост.
4 ответа:
это автокоррекция команды, активируемая . Это не имеет ничего общего с окончанием. Вы видите
_ruby
потому что zsh думает, что нетruby
команда и она предлагает_ruby
как ближайший существующий матч.если вы только что установили
ruby
, возможно,zsh
запомнил список доступных команд ранее, и он не всегда будет пытаться увидеть, появилась ли команда между ними. В таком случае, бегитеhash -rf
. Будущие сессии zsh не будет иметь этой проблемы, так как уже существовала, когда они начали.иногда, когда вы меняете свой
PATH
, zsh забывает некоторые хэшированные команды. Вариантhash_listall
помогает против этого. Как и выше, если вы можете заставить zsh обновить свой кэш команд с помощьюhash -rf
.
вы могли бы сделать псевдоним:
alias ruby='nocorrect ruby'
Это то, что я сделал, когда zsh продолжал спрашивать меня, если я имел в виду
.meteor
когда я набралmeteor
потому что автокоррекция по-прежнему полезна время от времени.
Я считаю, что функция автозамены может раздражать время от времени. Так что я делаю в моем~/.zshrc,
DISABLE_CORRECTION="true"
некоторое время назад после обновления, я получил команды автокоррекции включен, который я не хочу. Если же случилось с вами и вы хотите вернуть его, в ~/.zshrc файл у вас будет сделать это:
# Uncomment the following line to enable command auto-correction.
ENABLE_CORRECTION="false"
или прокомментировать его в соответствии с ниже:
# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"