Завершение истории oh-my-zsh

Недавно я переключился на zsh, используя oh-my-zsh robbyrussell . До этого я использовал bash с большим количеством пользовательских материалов, и я просто пропустил одну вещь, потому что zsh пытается быть «слишком умным»:

Если я git commit а затем zsh проходит через все последние команды git . Однако я действительно хочу, чтобы все команды запускались с git commit (а не только git ).

Как я могу достичь такого поведения в (oh-my-) zsh?

2 Solutions collect form web for “Завершение истории oh-my-zsh”

Я нашел решение своей проблемы в документации ZSH . Oh-my-zsh, похоже, отображает клавиши и на что-то вроде

 bindkey '\e[A' history-search-backward bindkey '\e[B' history-search-forward 

Это дает точное поведение, описанное выше. Документация ZSH описывает поведение history-search-backward как

Искать назад в истории для строки, начинающейся с первого слова в буфере .


Вместо этого я хотел использовать следующее сопоставление, которое я вставлял в свой ~/.zshrc :

 bindkey '\e[A' history-beginning-search-backward bindkey '\e[B' history-beginning-search-forward 

Поведение history-beginning-search-backward выглядит следующим образом:

Поиск вперед в истории для строки, начинающейся с текущей строки до курсора . Это оставляет курсор в исходном положении.

Кроме того, если \e[A не работает для стрелок вверх или вниз, нажмите <ctrl-v><KEY (eg, up arrow)> на другом терминале, который дает ^[OA . Затем вы можете использовать это вместо \e[A Процесс описан здесь: http://zshwiki.org/home/zle/bindkeys

Я хотел, чтобы такое же поведение для zsh с установленным oh-my-zsh и нашло в нем history-substring-search .

Я достиг такого же поведения, описанного выше, добавив плагин к моему ~/.zshrc :

plugins=(git brew npm history-substring-search)

Я думаю, что этот плагин не существовал, когда этот вопрос был поднят. Просто альтернативный способ добиться того же.

  • Файл трубопровода для команды, которая не реализует трубопроводы
  • Как установить короткую ссылку symlink на Sublime Text 3 в терминале?
  • PATH установлен до / etc / zshenv
  • Пользовательская подсказка Tmux и ZSH: ошибка с именем окна
  • Резюме Zsh-Terminal (OS X Lion)
  • Получить функцию в PS1 (Zsh)?
  • Zsh не попадает ~ / .profile
  • Как удалить файлы в командной строке с регулярными выражениями?
  • Как изменить оболочку по умолчанию на удаленном сервере?
  • На OS X, как я могу запустить Cacoa emacs * и * перенести его на передний план?
  • ^ C не работает в zsh на Mac OSX
  • Повторите последнюю команду, соответствующую «двум словам» zsh
  • Interesting Posts

    Совместное использование OneNote 2010? Настольный компьютер и ноутбук и веб-сайт (Skydrive)?

    Auctex View работает или не зависит от того, как я запустил Emacs

    Диск с хафонами / наушниками

    Медленнее, чем ожидалось, скорости беспроводной сети 802.11n

    Как запустить программу .msi с правами администратора?

    Как скопировать / вставить в режиме vim ex

    Терминальный эмулятор с разделенными панелями для Mac OSX

    Могу ли я получить доступ к архивам Microsoft Outlook PST с помощью любых других инструментов?

    Черный экран после загрузки

    Невозможно активировать .net 3.5 в Windows 8. Невозможно активировать с панели управления и никогда не получить установочный компакт-диск или iso с моим компьютером для использования DISM с

    Повторение нумерации таблиц в новом разделе

    Как сбросить пароль для Windows 7 с помощью флеш-накопителя?

    Настройка трех мониторов на машине со встроенной графической картой

    Как я могу получить список установленных сертификатов в Windows?

    Редактирование файла hosts

    Давайте будем гением компьютера.