Journal Bash, cherche configuration à la hauteur d'un zsh

Posté par  .
Étiquettes : aucune
0
27
juin
2004
Plop journal,

Je tente de revenir vers Bash. Je suis depuis toujours un grand aficionado de zsh mais j'ai envie de tester bash.

DOnc ce que je cherche c'est un bash avec:

- completion automatique
- un prompt digne de ce nom
- un keybinding ala emacs

pour le reste je chercherai
  • # completion:

    Posté par  (site web personnel) . Évalué à 6.

    le paquet bash-completion est ton ami!!!
    • [^] # Re: completion:

      Posté par  (site web personnel) . Évalué à -2.

      PS: rien a voir, mais pourquoi ton journal est en première page alors que le miens, que je viens de poster, est dans la colonne de gauche???? c'est pas juste, mééééhhhheeeeeuuuu
      • [^] # Re: completion:

        Posté par  . Évalué à 2.

        suffit de (dé)cocher l'option "poster ce journal en premiere page" quand tu créés un journal...
    • [^] # Re: completion:

      Posté par  . Évalué à 3.

      effectivement :)

      Merci du tuyau.

      Tiens une autre question: comment on peut dire à bash d'essayer de corriger la ligne de commande quand il pense qu'il y a une erreur ? Pr exemple mon zsh me pose une jolie question (en français) pour me demander de confirmer l'entrée, ou la corriger. C'est possible ?
      • [^] # Re: completion:

        Posté par  . Évalué à 4.

        y a "shopt -s cdspell" pour corriger les petites fautes dans le nom des repertoires, mais y a rien d'autre :(
  • # plop

    Posté par  (site web personnel) . Évalué à 6.

    > - completion automatique
    installe bash_completion

    > - un keybinding ala emacs
    ben celui par défaut en est pas loin, qu'est-ce qu'il te manque ?

    > - un prompt digne de ce nom
    ah ouais là, y'a un truc que j'arrivais à faire avec tcsh mais pas avec bash, c'est de pouvoir changer la couleur du texte saisi sur la ligne de commande sans toucher à celle par défaut. C'est super pratique pour reperer facilement les vieilles lignes de commandes dans l'historique du terminal. Si quelqu'un sait faire ça, je lui offre un bon d'achat pour une tranche d'ornithorynque. Mais je crois que c'est une limitation de readline :-/
    • [^] # Re: plop

      Posté par  . Évalué à 3.

      > - un keybinding ala emacs
      ben celui par défaut en est pas loin, qu'est-ce qu'il te manque ?


      EN fait j'avais pas encore changer mon shell donc je me demandais si c'étais réalisable. Je m'en vais voir ça.

      Pour le prompt, c'est vrai que ça peut être pratique ce que tu décris. Fais-moi signe si tu obtiens un résultat. De mon côté je vais aller me lire le bash scripting manual pour en apprendre davantage sur bash.
    • [^] # Re: plop

      Posté par  . Évalué à 5.

      - completion automatique
      installe bash_completion


      A noter que bash assure l'autocomplétion par défaut, le package "bash_completion" mettant en place une complétion « intelligente » !

      > - un keybinding ala emacs
      ben celui par défaut en est pas loin, qu'est-ce qu'il te manque ?


      Au hasard, je dirais:
      set -o emacs on
      set -o vi off
      et set -o tout seul pour avoir la liste des options. Je ne sais pas si c'est ce que tu cherches.

      > - un prompt digne de ce nom
      ah ouais là, y'a un truc que j'arrivais à faire avec tcsh mais pas avec bash, c'est de pouvoir changer la couleur du texte saisi sur la ligne de commande sans toucher à celle par défaut.


      Peut-être pas la ligne saisie, mais le prompt si:

      export PS1='\e[33;01m[\u@\h \W]$ \e[00m'
      • [^] # Re: plop

        Posté par  . Évalué à 2.

        Attention il faut bien proteger les caracteres d'echapement ( \e) par des \[, sinon dans certains cas ton affichage va faire n'importe quoi :
        voici ce que j'utilise chez moi :

        PS1="\[\e[0;34m\][\[\e[0;m\]\u@\h:\w\[\e[0;34m\]]\[\e[0;m\]\$ "
        • [^] # Re: plop

          Posté par  . Évalué à 1.

          Pour le script, voila une petite adresse d'un exemple:
          http://lycos42.free.fr/gentoo/conf/(...)

          Je me suis basé sur celui la pour faire le mien. Il n'en reste rien d'ailleur, j'ai tout récrit à ma façon, il n'en reste plus que le style.
  • # Pour le prompt

    Posté par  (site web personnel) . Évalué à 6.

    Pense à regarder le Bash Prompt HowTo ici : http://www.gilesorr.com/bashprompt/(...)

    On y trouve aussi des exemples, de toutes tailles, de toutes formes et de toutes couleurs. Bref tout le monde devrait trouver son bonheur.
    • [^] # Re: Pour le prompt

      Posté par  (site web personnel) . Évalué à 4.

      Ca reste un prompt simple et basique légèrement modifiable, sous zsh (et certains autres shells) tu as de multiple prompt, par exemple :
      - un à droite, à la bash si tu veux ;) modifiable comme bash
      - un à gauche, pour l'heure c'est pratique
      - un qui apparît quand tu as taper n'importe quoi, genre "'hep joe tu ne voulais pas plutot dire "..." "(y/n/e/)
      - un qui est le titre du menu des différentes completion possible, ...
      - ...

      et ainsi de suite, je ne pense pas que tu puisse faire cela avec bash
      • [^] # Re: Pour le prompt

        Posté par  (site web personnel) . Évalué à 2.

        Ca reste un prompt simple et basique légèrement modifiable, sous zsh (et certains autres shells) tu as de multiple prompt

        Bah justement, j'ai essayé de me mettre à zsh après en avoir entendu beaucoup de bien ici ou là, notamment du point de vue de la personnalisation, mais je n'ai jamais réussi à faire ça sous zsh:

        ---
        export TTYNR=`tty`
        export TTYNR=${TTYNR:8}

        if [ `id -u` = "0" ]; then
        PS1='[\t \d (tty$TTYNR) #\#]\n\u@\H:\[\033[1;31m\]\w\[\033[0m\]\$ '
        else
        PS1='[\t \d (tty$TTYNR) #\#]\n\u@\H:\[\033[1;34m\]\w\[\033[0m\]\$ '
        fi
        ---

        Je n'ai pas trouvé d'équivalent non-gruik au \n (pour avoir 2 lignes).
        Si quelqu'un sait comment faire...

        Des tuyaux intéressants pour votre shell:
        http://linuxfr.org/~ngc891/5154.html(...)

        Bonus: Si vous voulez un promt Bash original, essayez celui-la:
        http://cercle-daejeon.homelinux.org/linux/bash/supertux.sh(...)
        c'est un pingouin en couleur...
        • [^] # Re: Pour le prompt

          Posté par  . Évalué à 2.

          Essaye quelque chose comme ça :

          PS1=$' ligne1 \n ligne2 >'

          Pour un vrai prompt qui roxor :

          autoload promptinit ; promptinit ; prompt elite2

Suivre le flux des commentaires

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