• [^] # Re: Ctrl+e

    Posté par . En réponse au message Touche fin de ligne ne fonctionne pas. Évalué à 4.

    En fonction du terminal, les touches spéciales génèreront une séquence de caractères particuliers (peut-être configurable au niveau du terminal), dont il faut ensuite que ton shell tienne compte.

    Par exemple sur ma machine, la touche End produit ^[[F sous xterm, ^[[8~ sous rxvt. Pour voir la séquence exacte, j'utilise la commande "cat" sans rien, puis je tappe sur la touche, puis Ctrl+C pour quitter le cat.

    Ensuite, il faut que le shell en tienne compte. A priori avec bash c'est readline qui s'en charge, et les fichiers /etc/inputrc et ~/.inputrc qui sont sollicités. Je copie là mon ~/.inputrc qui contient la séquence incriminée, et d'autres trucs pratiques :

    -=-=---=-=---=-=---=-=---=-=--
    # Show all if ambigious.
    set show-all-if-ambiguous on

    # 8Bits supports.
    set meta-flag on
    set convert-meta off
    set input-meta on
    set output-meta on

    # Keyboard configuration
    "^[[2~": yank # Insert
    "^[[3~": delete-char # Suppr

    "^[[7~": beginning-of-line # Home
    "^[[8~": end-of-line # End

    "^[[1~": beginning-of-line # Home
    "^[[4~": end-of-line # End

    "^[[5~": previous-history # Previous
    "^[[6~": next-history # Next

    "^[^[": kill-whole-line # Escape-Escape
    -=-=---=-=---=-=---=-=---=-=--

    Il y a des tonnes de choses intéressantes dans bash(1).