Mascotte de Publicitem, agence de communication et publicité

PublicitemOui, publie si t’aimes !Téléphone pictogramme Conseil gratuit

Préférer zsh en shell plutôt que bash

Portrait de Patrice Grundmann
02
12
2014

Zsh est un interpréteur de commande (shell) bien pratique pour sa complétion hors pair et ses capacités pour interpréter des scripts. Installons-le sous Ubuntu ou Debian en ligne de commande, puis changeons le shell par défaut :

  1. sudo apt-get install zsh
  2. chsh

Choisir : /bin/zsh
Vérifiez bien votre saisie avant de valider, sinon vous risquez d'avoir un terminal non fonctionnel.

Il ne reste plus qu'à changer dans Konsole par exemple (notre terminal sous Kubuntu) la commande, là aussi par : /bin/zsh Nous allons créer dans notre home un fichier .zshrc vim ~/.zshrc

Collons-y ces lignes :

  1. # Set up du prompt
  2. autoload -Uz promptinit
  3. promptinit
  4. #prompt adam2                    #prompt dénudé
  5. prompt fire blue white red black #prompt plus doux
  6. #prompt fire red black red white red red #prompt pour root
  7.  
  8. zstyle ':completion:*:descriptions' format '%U%B%d%b%u'
  9. zstyle ':completion:*:warnings' format '%BDésolé, pas de correspondace pour : %d%b'
  10. zstyle ':completion:*:sudo:*' command-path /usr/local/sbin /usr/local/bin \
  11.                              /usr/sbin /usr/bin /sbin /bin /usr/X11R6/bin
  12. # Crée un cache des complétion possibles
  13. # très utile pour les complétion qui demandent beaucoup de temps
  14. # comme la recherche d'un paquet aptitude install moz<tab>
  15. zstyle ':completion:*' use-cache on
  16. zstyle ':completion:*' cache-path ~/.zsh_cache
  17.  
  18. # Des couleurs pour la complétion :
  19. # faites un kill -9 <tab><tab> pour voir l'effet
  20. zmodload zsh/complist
  21. setopt extendedglob
  22. zstyle ':completion:*:*:kill:*:processes' list-colors "=(#b) #([0-9]#)*=36=31"
  23.  
  24. # Correction des commandes mal saisies
  25. setopt correctall
  26.  
  27. setopt histignorealldups sharehistory
  28.  
  29. # Use emacs keybindings even if our EDITOR is set to vi
  30. bindkey -e
  31.  
  32. # Keep 1000 lines of history within the shell and save it to ~/.zsh_history:
  33. HISTSIZE=1000
  34. SAVEHIST=1000
  35. HISTFILE=~/.zsh_history
  36.  
  37. # Use modern completion system
  38. autoload -Uz compinit
  39. compinit
  40.  
  41. zstyle ':completion:*' auto-description 'specify: %d'
  42. zstyle ':completion:*' completer _expand _complete _correct _approximate
  43. zstyle ':completion:*' format 'Completing %d'
  44. zstyle ':completion:*' group-name ''
  45. zstyle ':completion:*' menu select=2
  46. eval "$(dircolors -b)"
  47. zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
  48. zstyle ':completion:*' list-colors ''
  49. zstyle ':completion:*' list-prompt %SAt %p: Hit TAB for more, or the character to insert%s
  50. zstyle ':completion:*' matcher-list '' 'm:{a-z}={A-Z}' 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=* l:|=*'
  51. zstyle ':completion:*' menu select=long
  52. zstyle ':completion:*' select-prompt %SScrolling active: current selection at %p%s
  53. zstyle ':completion:*' use-compctl false
  54. zstyle ':completion:*' verbose true
  55.  
  56. zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31'
  57. zstyle ':completion:*:kill:*' command 'ps -u $USER -o pid,%cpu,tty,cputime,cmd'
  58.  
  59. # Les alias marchent comme sous bash
  60. alias ls='ls --color=auto'
  61. alias ll='ls --color=auto -lah'
  62. alias lll='ls --color=auto -lh | less'
  63. # marre de se faire corriger par zsh ;)
  64. alias xs='cd'
  65. alias sl='ls'
  66. # mplayer en plein framme buffer ;)
  67. alias mplayerfb='mplayer -vo fbdev -vf scale=1024:768'
  68. # Un grep avec des couleurs :
  69. export GREP_COLOR=31
  70. alias grep='grep --color=auto'
  71. alias xte='nohup xterm &' # xte lancera un xterm qui ne se fermera pas si on ferme le terminal
  72. # Pareil pour les variables d'environement :
  73. #export http_proxy="http://hostname:8080/"
  74. #export HTTP_PROXY=$http_proxy
  75.  
  76. # éditeur de texte et pager par défaut
  77. export EDITOR=/usr/bin/vim
  78. export PAGER=/usr/bin/most
  79. #echo `/usr/games/fortune` | cowsay -f tux.cow
  80.  
  81. ## site
  82. alias Drpublicitempro='drush --uri="http://www.publicitem.pro"'
  83.  
  84. setopt no_nomatch # if there are no matches for globs, leave them alone and execute the command
  85. setopt no_cdable_vars # don't use named directories in cd autocompletion
  86.  
  87. #PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
  88.  
  89. ### Profile
  90. # && source ~/.profile

Tapons dans le terminal : zsh (ou réouvrons le terminal pour que la configuration soit prise en compte)
Nous avons un shell fonctionnel et plaisant.

Catégorie : 

Soumis par Patrice Grundmann le mar, 02/12/2014 - 02:20

Ajouter un commentaire