Como personalizar keybindings ReadLine GHCi?
Pergunta
Eu sei GHCi suporta Readline, e atalhos de teclado, como ^W
e trabalho ^U
como esperado.
Eu me pergunto se o apoio ghci personalização de atalhos de teclado da maneira Bash lida com inputrc.
Solução
Qual é a sua versão GHC? GHCi parou de usar readline e começou a usar libedit torno de 6,10 e haskeline torno de 6,12.
libedit pode ser configurado em ~/.editrc
; Da mesma forma, Haskeline tem ~/.haskeline
. Por exemplo, eu tenho
# ~/.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
para coincidir com o meu
# ~/.inputrc (for readline) "\e[5~": history-search-backward "\e[6~": history-search-forward
Outras dicas
@ do ephemient acima também contribui com a mais recente versões do MySQL que mudaram do readline para libedit. Eu costumava
$ ~/.editrc:
bind ^[[A ed-search-prev-history
bind ^[[B ed-search-next-history
para coincidir com a minha versão antiga que costumava trabalho dentro MySQL:
$ ~/.inputrc:
"\e[A":history-search-backward
"\e[B":history-search-forward
(meu único incômodo agora é que se eu só quero para se deslocar e não procurar, eu tenho que digitar um "" primeiro a combinar cada linha).