Personnaliser le terminal

Tout d’abord : Salut et bon année à tous :006

Voila, je suis tombé un peu par hasard sur ce screenshoot d’un terminal. Ce screen est issu d’un tuto Ubuntu(org) sur Awesome. Je me demandais comment personnaliser le terminal de la sorte.
Lien de l’image => images.imagehotel.net/25dy6dwden.png

La distinction instruction / réponse est des plus agréable quoi que perfectible. J’ai laissé ma configuration d’urxvt par défaut ou presque. Donc si vous avez des idées, des fichiers de configuration ou autre à partager pour personnaliser au mieux le terminal, ce topic est à vous.

:006

C’est la commande jot qui te permet par exemple de tracer une ligne avec un motif et la couleur de ton choix , comme on le voit sur l’image que tu lies.

Ce n’est pas ton terminal qu’il faut configurer mais la variable PS1 ( ton prompt ),
ça peut-être fait dans un fichier ~/.profile

exemple trouvé je sais plus où pour l’initialisation de ksh.

e=`printf "\033"` end="$e[0m" red="$e[1;31m" green="$e[1;32m" yellow="$e[1;33m" blue="$e[1;34m" magenta="$e[1;35m" darkcyan="$e[36m" unset e PS1='${darkcyan}$(jot -s "" -b "." ${COLUMNS})${end} ${blue}$(id -un)@$(hostname)${end}: ${green}${PWD}${end} $(date "+%F %T") \$ '

Merci pour ta réponse. Effectivement, il s’agit de configurer le prompt, on le fait en modifiant le fichier .bashrc.

Voici le mien donc :

YLOBRN='\[\033[01;33;43m\]'  
WHTBRN='\[\033[01;37;43m\]'  
REDBRN='\[\033[00;31;43m\]'  
REDBLK='\[\033[00;31;40m\]'  
PPLBLK='\[\033[01;35;40m\]'  
WHTBLK='\[\033[01;37;40m\]'  
NONE='\[\033[00m\]'  
HBLK='\[\033[00;30;30m\]'  
HBLU='\[\033[01;34;34m\]'  
BLU='\[\033[00;34;34m\]'  
YEL='\[\033[00;33;33m\]'  
WHT='\[\033[01;37;37m\]'  
PRPL='\[\033[00;34;35m\]'  
RED='\[\033[01;31;31m\]'  
NORM='\[\033[01;00;0m\]'
 
BLACK="\[\033[0;30m\]"
DARK_GRAY="\[\033[1;30m\]"
LIGHT_GRAY="\[\033[0;37m\]"
BLUE="\[\033[0;34m\]"
LIGHT_BLUE="\[\033[1;34m\]"
GREEN="\[\033[0;32m\]"
LIGHT_GREEN="\[\033[1;32m\]"
CYAN="\[\033[0;36m\]"
LIGHT_CYAN="\[\033[1;36m\]"
RED="\[\033[0;31m\]"
LIGHT_RED="\[\033[1;31m\]"
PURPLE="\[\033[0;35m\]"
LIGHT_PURPLE="\[\033[1;35m\]"
BROWN="\[\033[0;33m\]"
YELLOW="\[\033[1;33m\]"
WHITE="\[\033[1;37m\]"
DEFAULT_COLOR="\[\033[00m\]"
 
nc="\[\e[0m\]"
 
function prompt {
    ctime=$(date +%R)
    prmpt="-[${usern}@${hostn}][${PWD}][${ctime}]"
    cols=$(tput cols)
    let FILLS=${cols}-${#prmpt}
    LINE=""
 
    if [[ "$PWD" =~ "/home/$usern" ]]
     then
      let FILLS=$FILLS-0+${#usern}
    fi
 
    for (( f=0; f<$FILLS; f++ ))  do
        LINE=$LINE"\e(0q\e(B"
    done
 
    export PS1="\`
            echo -e '
$CYAN\[\e(0l\e(B\]<$CYAN\u$CYAN@$CYAN\h$CYAN><$BROWN\w$CYAN>${LINE}($CYAN${ctime}$CYAN)
\[\e(0\]m\[\e(B\]<$CYAN\$$CYAN>$nc ';
    \`"
 
}  
PROMPT_COMMAND=prompt

Dans l’esprit ça donne ça :

┌<user@hote></repertoire>────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────(17:20) └<$>

Merci bien pour l’astuce, vous avez pas une pair de lien avec des fondus qui donne quelques exemples ( j’ai bien envie de me le personnalisé mais je manque d’idée :blush: ).

Je suis d’accord avec Clochette! J’ai tenté un truc similaire, mais le formattage n’est pas parfait sur mon ordi, l’heure est coupée et va à la ligne au lieu d’être entièrement sur la première, faudrait personnaliser.

Sinon, vous ne trouvez pas que ça ralenti le terminal?

Utilisez zsh, le chemin de croix ne fait pas parti du chemin unix :

Au passage pour l’image de là haut vous avez toute la description là :
aperiodic.net/phil/prompt/

La couleur ? Tu utilise quel émulateur ?

hello
sinon il konsole quipermet un peux de modifier son apparence /fond/fonte/couleur, mai pas des ligne ou gadjet du genre, d’ailleur c’est a mon avis peux conseillier si un soft utilise les couleur qui son propre aux systeme de base genre les fontes rouge,fond noir pour attirer l’attention, et vous le vert /fond noire …

non, pas la couleur, l’ajout des lignes et la mise en forme du prompt qui semble ralentir un peu. Zsh permettrait d’éviter mon souci d’heure coupée? J’ai du mal à m’y mettre, je suis bien attaché à dash. :slightly_smiling:
Merci pour le lien!

:open_mouth: :open_mouth: :open_mouth:

Pour l’histoire de la barre, je ne peux pas me prononcer, je ne l’ai jamais fait (ça enlève des lignes utilisables).

Salut,

[quote=“MisterFreez”]…Au passage pour l’image de là haut vous avez toute la description là :
aperiodic.net/phil/prompt/[/quote]

Cool ce lien, merci.
J’utilise ZSH depuis un moment, et à part un bug récent en Sid de “l’auto-completion” (enfin corrigé) c’est vraiment cool.

meme problème avec bash (konsole) l’heure est coupé en 2

Bonjour,

Pour aligner du texte à droite de la console :

texte="ce que vous voulez"
printf "%*s\n" $(tput cols) ${texte}

explication :

  • : indique que le texte à afficher doit être formaté de la longueur donnée par le paramètre suivant non traité par printf (en l’occurence la valeur retourné par $(tput cols), qui retourne le nombre de colonne du term).
    le texte à afficher est celui qui suit le paramètre donnant la longueur du champ

Attention, la valeur ${COLUMNS} est propre à certains shell et donc peut ne pas exister ou peut ne pas être mis à jour si la fenêtre est redimensionnée (à vérifier).

autre astuce :
pour créer une chaine de longueur “n” du même caractère, 2 possibilités (exemple avec le caractère “-” et une longueur de 20):
1 : printf “%.0s-” {1…20}
si n est dynamique :

eval "printf '%.0s-' {1..${n}}"

2 :

chaineVide="$(printf "%*s" ${n} " ")"
echo "${chaineVide// /-}"

voilà :wink:

:open_mouth: :open_mouth: :open_mouth:
.[/quote]
Bon d’accord, j’ai surtout la flemme de créer un .zshrc :unamused:

Non mais tu utilise vraiment dash comme login shell ? Pourquoi avoir quitté bash pour dash ? Si tu ne veux pas avoir à configurer tu a fish qui est pas mal. Sinon tu peut récupérer mes fichiers de configuration ici : barmic.indefero.net/p/conf/sourc … master/zsh (il est assez générique).

:smiley: Je te remercie pour le partage, ej vais peut-être bien te piquer des trucs. J’ai finalement changé sur zsh, en gardant le zshrc recommandé lors du premier login, et j’ai juste recopié mes alias et fonctions dedans.

Pourquoi es-tu si surpris que j’utilisais dash? C’est l’interpréteur par défaut de debian désormais. Ou alors j’utilisais bash sans m’en rendre compte??? Ça me paraît bizarre, lors de la mise à jour (il y a longtemps), dpkg avait gentiment posé la question de l’interpréteur souhaité entre dash et bash.
Existe-t-il un moyen de vérifier même si je suis passé à zsh désormais?

edit : j’ai tenté un chsh, et de choisir /bin/sh, qui est censé être lié à dash (non?). En effet, c’est différent de ce que j’avais avant, je devais utiliser bash sans pour autant le savoir.

Le shell des utilisateurs est toujours Bash par défaut. C’est pour le Shell “système” que c’est Dash désormais.

$ readlink /bin/sh dash

Voila qui explique tout :laughing:
Je comprends mieux la réaction de Misterfreez :slightly_smiling: