Вопрос

Я знаю, что GHCi поддерживает Readline, и сочетания клавиш, такие как ^ W и ^ U , работают должным образом.

Мне интересно, поддерживает ли ghci настройку сочетаний клавиш, как Bash работает с inputrc.

Это было полезно?

Решение

Какая у вас версия GHC? GHCi прекратил использовать readline и начал использовать libedit около 6.10 и haskeline около 6.12.

libedit можно настроить в ~ / .editrc ; аналогично, на Haskeline есть ~ / .haskeline . Например, у меня есть

# ~/.editrc (for libedit)
edit on
bind ^R em-inc-search-prev
bind ^S em-inc-search-next
bind ^[[5~ ed-search-prev-history
bind ^[[6~ ed-search-next-history

чтобы соответствовать моему

# ~/.inputrc (for readline)
"\e[5~": history-search-backward
"\e[6~": history-search-forward

Другие советы

Ответ

@ ephemient выше также помогает с более новыми сборками MySQL, которые переключились с readline на libedit. Я использовал

$ ~/.editrc:
bind ^[[A ed-search-prev-history
bind ^[[B ed-search-next-history

чтобы соответствовать моей старой версии, которая раньше работала внутри MySQL:

$ ~/.inputrc:
"\e[A":history-search-backward
"\e[B":history-search-forward

(единственное, что меня сейчас раздражает, так это то, что если я просто хочу прокрутить, а не искать, я сначала должен ввести ". " в каждой строке).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top