Forum Programmation.shell binder backward-delete-word pour que je me mette au zsh.

Posté par (page perso) .
Tags : aucun
0
19
oct.
2006
Bonjour,

Il y a une chose qui me manque en zsh pour que je puisse m'y mettre:
le alt+backspace (backward-kill-word) (man bash /Meta-Rubout: backward-kill-word)
qui est différent de CTRL+W (unix-word-rubout)

Si quelqu'un me donne une chtite ligne a rajouter dans le zshrc pour que ca fonctionne comme sous bash... alors je me lancerais en zsh (et j'arreterai de patcher bash pour qu'il puisse faire ce que je veux ;p -comme executer des repertoires-)

Cordialement,
Sebastien MICHEL
  • # Question naive ...

    Posté par . Évalué à 1.

    Ce n'est pas le comportement par défault?
    Parce que chez moi ca marche, et j'ai rien fait pour.

    En tout cas merci pour l'astuce que je ne connaissais pas.
  • # No manual entry for bash

    Posté par (page perso) . Évalué à 2.

    Bon j'ai pas tout compris même après avoir lu http://gentoo-wiki.com/MAN_bash .

    Ce que tu veux, c'est une combinaison de touche qui efface le mot précédent en disant qu'un mot est une suite de caractères alphanumériques et non simplement un truc entre espaces ?
    Ou le contraire ? Bref probablement

    autoload -U select-word-style
    select-word-style bash

    (voir man zshcontrib/bash)
    • [^] # Re: No manual entry for bash

      Posté par (page perso) . Évalué à 1.

      En fait ce que j'aime sous bash c'est le fait que alt+backspace concidere les mots en tant que suite de caracteres alphanumeriques alors que ctrl+w concidere les mots comme une suite de caracteres et l'espace est le séparateur de mot.

      Je suis en vacances et mon ssh a des problemes mais des que c'est a nouveau accessible je tente ta manip.

      Moi j'etais parti sur la conf suivante:

      # pour le alt+backspace:
      bindkey "\e" backward-delete-word
      export WORDCHARS='*?_[]~\!#$%^<>|`@#$%^*()+?'

      # pour le ctrl+w
      autoload -U backward-kill-word-match
      zle -N backward-kill-word backward-kill-word-match
      zstyle ':zle:backward-kill-word' word-style whitespace


      le probleme de cette conf c'est que le alt+backspace n'est pas stocké dans le buffer pour les "collé" (yank)
      Apparement ce sont les fonctions *kill* qui stockent dans le yank buffer.
      Il faudrait donc binder ctrl+w et alt+backspace avec backward-kill-world mais avec deux configuration de (word-style) differents.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.