logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 09-05-2018 20:53:20

Jkart
Membre
Distrib. : Bookworm
(G)UI : Xfce
Inscription : 16-12-2017

Coloration syntaxique [Résolu]

Bonsoir,
Voici un sujet sur lequel on trouve régulièrement des messages, mais je n'ai pas réussi à faire ce que je voulais.

J'aimerais améliorer la présentation de mon terminal et pour cela améliorer la coloration du texte.
Actuellement voila ce que cela donne :

1525894643.jpg
- J’aimerais que « guichaoua@debian » et « root@debian » ne soit pas de la même couleur, l’un en vert et l’autre en rouge par exemple. Comment fait-on cela ?

- Pourquoi après un sudo su (ou sudo -i ou sudo -s) la ligne de commande passe t’elle en noir (root@debian:/etc/apt#) alors qu’avec un sudo -E -s elle reste colorée ? Si possible je préférerais qu’elle reste colorée.

J’ai essayé de bidouiller le fichier home/guichaoua/.bashrc, dont voici un extrait, sans succès.
if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"


PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '


Si quelqu'un à des solutions à mes questions...
Merci d'avance
Jkart

Dernière modification par Jkart (10-05-2018 18:49:33)


Tour: HP Pavilion 690-0095nf
Ram 8 giga  SSD 128 giga Disque 1T
Bookworm/Windows 11
Intel(R) i7 8700 Nvidia GTX 1050ti

Hors ligne

#2 09-05-2018 21:39:21

MicP
Membre
Inscription : 29-02-2016

Re : Coloration syntaxique [Résolu]

Bonsoir

Copie/colle dans une fenêtre de terminal
ce bloc de lignes de commande,
juste pour que tu voies ce que ça donne :


PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;33m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;34m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;35m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;36m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;37m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;38m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;41m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;42m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;43m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;44m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;45m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;46m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;47m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

PS1='${debian_chroot:+($debian_chroot)}\[\033[07;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[07;33m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[07;34m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[07;35m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[07;36m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[07;37m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[07;38m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[07;41m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
PS1='${debian_chroot:+($debian_chroot)}\[\033[07;42m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

 



Voir aussi :

https://stackoverflow.com/questions/484 … -sequences

https://en.wikipedia.org/wiki/ANSI_escape_code

=======
En ce qui concerne les options de sudo et l'incidence sur les couleurs du prompt,
il s'agit d'une question d'environnement.

L'environnement du shell (et donc de la variable PS1) est défini dans le fichier ~/.bashrc qui est donc spécifique à chaque compte utilisateur.

Certaines options de la commande sudo permettent de garder l'environnement du compte utilisateur qui a lancé la commande sudo,
d'autres options utilisent l'environnement du compte qui exécute la commande qui est lancée par sudo

Avec certaines options c'est l'environnement du compte root,
Avec d'autres options, c'est l'environnement du compte utilisateur qui a lancé la commande sudo.

Dernière modification par MicP (09-05-2018 22:08:49)

Hors ligne

#3 09-05-2018 22:29:41

Jkart
Membre
Distrib. : Bookworm
(G)UI : Xfce
Inscription : 16-12-2017

Re : Coloration syntaxique [Résolu]

Bonsoir,
Merci pour cette réponse rapide.
J'ai jeté un coup d'oeil aux liens. J'essaierai de m'y pencher sérieusement demain. Cependant ils sont en anglais alors que je ne comprends pas tout quand c'est en français...
Si j'ai bien compris ce qu'implique la réponse, il faut modifier le .basrc (~/) du simple utilisateur mais surtout, pour ce que je veux faire, le ".bashrc" (il se trouve où celui la?) du root?

Ce que je cherche à faire:
- J’aimerais que « guichaoua@debian » et « root@debian » ne soit pas de la même couleur, l’un en vert et l’autre en rouge par exemple. Je suppose qu'il faudra utiliser les codes couleurs 31 (rouge), 32 (vert)...  Mais que faut-il et comment modifier pour cela?

- Comment faire pour qu'après un sudo su (ou sudo -i ou sudo -s) l'invite de commande (root@debian) reste colorée et ne passe pas en noir?

Cordialement
Jkart

Dernière modification par Jkart (09-05-2018 22:41:28)


Tour: HP Pavilion 690-0095nf
Ram 8 giga  SSD 128 giga Disque 1T
Bookworm/Windows 11
Intel(R) i7 8700 Nvidia GTX 1050ti

Hors ligne

#4 09-05-2018 22:41:27

Severian
Membre
Distrib. : Debian GNU/Linux 9.4 (stretch)
Noyau : Linux 4.14.0-0.bpo.3-amd64
(G)UI : Openbox 3.6.1-4
Inscription : 13-12-2014

Re : Coloration syntaxique [Résolu]

bonsoir
de mon coté ma config terminal me donne exactement un $ vert pour les utilisateur et un # rouge pour le root
pour se faire :
coté utilisateur, modifier le fichier ~/.bashrc
la partie

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}[\w]\[\033[01;32m\]\$\[\033[00m\] ' #code qui affiche le prompt que je veux en vert
fi
 



coté root, il faut modifier le fichier /etc/bash.bashrc

if [ "`id -u`" -eq 0 ]; then
  PS1='${debian_chroot:+($debian_chroot)}[\w]\[\033[01;31m\]\$\[\033[00m\] ' # prompt rouge
else
  PS1='${debian_chroot:+($debian_chroot)}[\w]\[\033[01;32m\]\$\[\033[00m\] ' # prompt vert
fi
 


\u : nom de l'utilisateur.
    \h : nom de la machine.
    \W : nom du dossier courant.
    \$ : affiche $ pour un utilisateur et # pour root.
    \w : chemin complet du répertoire de travail.
    \d : date format texte ("sam. janv. 31").
    \A : heure format 24h sans secondes.
    \t : heure format 24h avec les secondes.
    \T : heure format 12h avec les secondes.
    \@ : heure format 12H sans secondes.
    \D{%d-%m-%Y %H:%M:%S%z} : Date et heure dans un format personnalisable (ici jour-mois-année sur 4 chiffres heure:minute:seconde fuseau horaire).


/!\ Attention la date et l'heure sont celles lors de l'apparition du prompt! L'heure ne défile pas!

    $? : code de retour de la dernière commande (0 si OK, 1 si erreur).
    `commande_ou_fonction` : lance la commande ou fonction.
    \j : nombre de tache en cours dans le terminal (pratique si vous lancez des tâches en arrière plan).
    \# : le numéro de la commande.
    \v : version de bash.
    \n : nouvelle ligne.



edit :  pour trouver des tutos, fais une simple recherche sur "bashrc PS1"

Dernière modification par Severian (09-05-2018 22:46:05)

Hors ligne

#5 09-05-2018 23:35:29

Jkart
Membre
Distrib. : Bookworm
(G)UI : Xfce
Inscription : 16-12-2017

Re : Coloration syntaxique [Résolu]

Bonsoir et merci à tous,
J'ai modifié le fichier simple utilisateur . bashrc comme indiqué.
Par contre, si j'ai bien ouvert le fichier root  /etc/bash.bashrc, je n'ai pas trouvé l'emplacement où il faut insérer ce qui suit:



if [ "`id -u`" -eq 0 ]; then
  PS1='${debian_chroot:+($debian_chroot)}[\w]\[\033[01;31m\]\$\[\033[00m\] ' # prompt rouge
else
  PS1='${debian_chroot:+($debian_chroot)}[\w]\[\033[01;32m\]\$\[\033[00m\] ' # prompt vert
fi




Pourrais-tu me faire un copier/coller plus large pour que je puisse avoir une meilleure idée de l'emplacement?
Merci
Jkart

Dernière modification par Jkart (09-05-2018 23:36:46)


Tour: HP Pavilion 690-0095nf
Ram 8 giga  SSD 128 giga Disque 1T
Bookworm/Windows 11
Intel(R) i7 8700 Nvidia GTX 1050ti

Hors ligne

#6 09-05-2018 23:44:58

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-13-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : Coloration syntaxique [Résolu]

Tu peux ajouter ces lignes dans le fichier /root/.bashrc

Tousse antique Ovide !

Hors ligne

#7 10-05-2018 00:26:25

MicP
Membre
Inscription : 29-02-2016

Re : Coloration syntaxique [Résolu]

Bonjour

Pour que le prompt du compte root apparaisse en couleur rouge,
dans le fichier /root/.bashrc
il faudrait juste ajouter ce qui suit :

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
    xterm-color|*-256color) color_prompt=yes;;
esac

# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes

if [ -n "$force_color_prompt" ]; then
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
  # We have color support; assume it's compliant with Ecma-48
  # (ISO/IEC-6429). (Lack of such support is extremely rare, and such
  # a case would tend to support setf rather than setaf.)
  color_prompt=yes
    else
  color_prompt=
    fi
fi

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt

Si la valeur de la variable TERM retournée par votre terminal (ou émulateur de terminal)
ne suffit pas à permettre l'affichage d'un prompt en couleur alors que le type de terminal que vous utilisez en est capable,
vous pourrez dé-commenter la ligne contenant :

force_color_prompt=yes


=======
Vous pourrez vérifier la couleur du prompt utilisée par le compte root
en lançant, si vous utilisez sudo, la commande suivante :

sudo -i

ou bien, pour ceux qui n'utilisent pas sudo,
en lançant la commande suivante :

su


=======
L'intérêt de ne modifier que le fichier de configuration du shell du compte root (/root/.bashrc)
est que cette méthode n'aura aucune incidence sur l'apparence du prompt des autres comptes utilisateurs,
et les lignes de commandes ajoutées au fichier de configuration du shell du compte root
feront en sorte de ne pas ajouter de séquences d'échappement au prompt
si le terminal est incapable de les interpréter ou que sa configuration ne le permettrait pas.

=======
Il ne s'agit pas de coloration syntaxique


Dernière modification par MicP (10-05-2018 13:13:02)

Hors ligne

#8 10-05-2018 08:51:05

Severian
Membre
Distrib. : Debian GNU/Linux 9.4 (stretch)
Noyau : Linux 4.14.0-0.bpo.3-amd64
(G)UI : Openbox 3.6.1-4
Inscription : 13-12-2014

Re : Coloration syntaxique [Résolu]

'soir

# System-wide .bashrc file for interactive bash(1) shells.

# To enable the settings / commands in this file for login shells as well,
# this file has to be sourced in /etc/profile.

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, overwrite the one in /etc/profile)
#~PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
if [ "`id -u`" -eq 0 ]; then
  PS1='${debian_chroot:+($debian_chroot)}[\w]\[\033[01;31m\]\$\[\033[00m\] '
else
  PS1='${debian_chroot:+($debian_chroot)}[\w]\[\033[01;32m\]\$\[\033[00m\] '
fi
# Commented out, don't overwrite xterm -T "title" -n "icontitle" by default.
# If this is an xterm set the title to user@host:dir
#case "$TERM" in
#xterm*|rxvt*)
#    PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
#    ;;
#*)
#    ;;
#esac

# enable bash completion in interactive shells
#if ! shopt -oq posix; then
#  if [ -f /usr/share/bash-completion/bash_completion ]; then
#    . /usr/share/bash-completion/bash_completion
#  elif [ -f /etc/bash_completion ]; then
#    . /etc/bash_completion
#  fi
#fi

# if the command-not-found package is installed, use it
if [ -x /usr/lib/command-not-found -o -x /usr/share/command-not-found/command-not-found ]; then
  function command_not_found_handle {
          # check because c-n-f could've been removed in the meantime
                if [ -x /usr/lib/command-not-found ]; then
       /usr/lib/command-not-found -- "$1"
                   return $?
                elif [ -x /usr/share/command-not-found/command-not-found ]; then
       /usr/share/command-not-found/command-not-found -- "$1"
                   return $?
    else
       printf "%s: command not found\n" "$1" >&2
       return 127
    fi
  }
fi
 

Hors ligne

#9 10-05-2018 18:46:35

Jkart
Membre
Distrib. : Bookworm
(G)UI : Xfce
Inscription : 16-12-2017

Re : Coloration syntaxique [Résolu]

Bonsoir,

J'ai donc mis en application vos réponses en ce qui concerne le root.
Le résultat, avec celle de Séverian, est un peu limité, le # passe en rouge mais c'est tout.

Plusieurs remarque en ce qui concerne la solution de MicP
Mon fichier /root/.bashrc ne doit pas être le même que le sien. Le mien est très court et contient uniquement des commentaires. Cela vient peut être du fait qu'il utilise une Jessie et moi une Stretch?
J'ai donc utilisé le fichier /etc/.bashrc préconisé par Séverian. La commande:

if [ "$color_prompt" = yes ]; then


ne fonctionnait pas. Aussi je l'ai remplacée par celle de Séverian:

if [ "`id -u`" -eq 0 ]; then



J'ai donc finalement réalisé un mix des solutions de Séverian et MicP.

# set a fancy prompt (non-color, overwrite the one in /etc/profile)
#~PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
if [ "`id -u`" -eq 0 ]; then
  PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
  PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
# Commented out, don't overwrite xterm -T "title" -n "icontitle" by default.



Le résultat ne me satisfait pas pleinement mais c'est déjà pas mal, je met la discussion en résolu.
Si quelqu'un compte se servir de cette discussion, je voudrais lui faire 1 mise en garde. Le fait de modifier le fichier bash du root peut avoir pour conséquence de ne plus pouvoir se mettre en root. Cela m'est arrivé, en bidouillant cet après-midi, heureusement que je travaille dans une VBox et je suis donc reparti d'une sauvegarde Snapshot. Ne pas oublier le discret #~ ajouté devant le 1er PS1.
Merci aux personnes qui m'ont répondues
Cordialement
Jkart

Dernière modification par Jkart (10-05-2018 20:11:05)


Tour: HP Pavilion 690-0095nf
Ram 8 giga  SSD 128 giga Disque 1T
Bookworm/Windows 11
Intel(R) i7 8700 Nvidia GTX 1050ti

Hors ligne

#10 10-05-2018 19:36:34

Severian
Membre
Distrib. : Debian GNU/Linux 9.4 (stretch)
Noyau : Linux 4.14.0-0.bpo.3-amd64
(G)UI : Openbox 3.6.1-4
Inscription : 13-12-2014

Re : Coloration syntaxique [Résolu]

tu as juste à faire plein d'essais pour trouver ce que tu as envis
dans un terminal tu tape la commande

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '


tu as :
    \u : nom de l'utilisateur.
    \h : nom de la machine.
    \W : nom du dossier courant.
    \$ : affiche $ pour un utilisateur et # pour root.
    \w : chemin complet du répertoire de travail.
et les couleurs
     Noir 0;30   
    Gris foncé 1;30
    Bleu 0;34
    Bleu clair 1;34
    Vert 0;32
    Vert clair 1;32
    Cyan 0;36
    Cyan clair 1;36
    Rouge 0;31
    Rouge clair 1;31
    Violet 0;35
    Violet clair 1;35
    Brun 0;33
    Jaune 1;33
    Gris clair 0;37
    Blanc 1;37
le code couleur s'utilise ainsi
\[\033[00;31m\] pour le rouge et \[\033[01;31m\] pour le rouge clair
et fermer ta  zone" couleur par  \[\033[00m\]
à toi de t'amuser à bouger les balises, écrire un texte, mettre les infos que tu veux voir ....

PS1='${debian_chroot:+($debian_chroot)}\[\033[00;34m\]Mon \[\033[00m\]\[\033[01;34m\]Terminale \[\033[00m\]\[\033[00;32m\]est \[\033[00m\]\[\033[01;32m\]G\[\033[01;31m\]é\[\033[00;35m\]n\[\033[01;35m\]i\[\033[01;33m\]a\[\033[00;37m\]l \[\033[00m\]\[\033[00;36m\]:\[\033[00m\]\[\033[01;36m\]\w\[\033[00m\]\[\033[00;31m\]\$\[\033[00m\] '

Dernière modification par Severian (10-05-2018 19:37:04)

Hors ligne

#11 11-05-2018 01:04:52

MicP
Membre
Inscription : 29-02-2016

Re : Coloration syntaxique [Résolu]

…Mon fichier /root/.bashrc ne doit pas être le même que le sien. Le mien est très court et contient uniquement des commentaires. …

Non, c'est exactement la même chose pour le mien,
le fichier /root/.bashrc ne contient à l'origine que des lignes commentées.
C'est d'ailleurs pour ça que je proposais d'y ajouter tout le premier pavé de lignes de commandes et commentaires cités dans mon message #7

Mes tests avaient été effectués sur une machine virtuelle nouvellement installée => stretch

Dernière modification par MicP (11-05-2018 06:56:24)

Hors ligne

#12 11-05-2018 11:01:13

Jkart
Membre
Distrib. : Bookworm
(G)UI : Xfce
Inscription : 16-12-2017

Re : Coloration syntaxique [Résolu]

Bonjour à tous,
Merci pour ces commentaires et précisions.
Tout cela me permettra de tester de nouvelles possibilités et notamment de faire des modifications dans le /root/.bashrc
Cordialement
Jkart

Tour: HP Pavilion 690-0095nf
Ram 8 giga  SSD 128 giga Disque 1T
Bookworm/Windows 11
Intel(R) i7 8700 Nvidia GTX 1050ti

Hors ligne

#13 11-05-2018 18:58:05

brunocomment
Membre
Distrib. : Buster
Noyau : 4.19
(G)UI : Awesome
Inscription : 23-03-2018

Re : Coloration syntaxique [Résolu]

Bonsoir Jkart,

Si c'est de ça que tu parles

1526061116.png

trouvé sur le forum : http://bashrcgenerator.com/


Salut

If it happens, it must be possible.
                                               unknown.

Hors ligne

#14 11-05-2018 21:06:37

tof70
Membre
Distrib. : Debian 10 - Buster
Noyau : Linux 4.19.0-20-amd64
(G)UI : i3 + Gnome comme base
Inscription : 28-08-2016

Re : Coloration syntaxique [Résolu]

Salut,
je ne sais plus où j'ai trouvé ce petit script bash, il affiche dans le terminal et en couleurs, un tableau  des différentes présentations avec leur correspondance.

#!/bin/bash
 
# Texte de l'exemple ( >= 3 caractères ) :
TEXT="Bash" ;
 
# Couleur du texte :
declare -a FG=('' '1' '2' '4' '5' '7' '22' '24' '27' '30' '1;30' \
'31' '1;31' '32' '1;32' '33' '1;33' '34' '1;34' '35' '1;35' '36' \
'1;36' '37' '1;37' '38' '39') ;
 
# Première ligne :
printf "FG \ BG\t%${#TEXT}s  " ;
for bg in {40..47} ; do
        printf "%${#TEXT}sm  " ${bg} ;
done
echo ;
 
# Création du tableau de présentation des combinaisons forground / background :
for fg in ${!FG[*]} ; do
        echo -ne "${FG[fg]}m\t\033[${FG[fg]}m $TEXT " ;
        for bg in {40..47} ; do
                echo -ne "\033[${FG[fg]}m\033[${bg}m $TEXT \033[0m " ;
        done
        echo ;
done
 
# Comment déclarer une couleur :
echo ;
echo "  Format de déclaration : \\033[FG\\033[BG." ;
echo "  Retour aux paramètres par défaut : \033[0m" ;
echo

Hors ligne

#15 15-05-2018 00:32:08

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-13-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : Coloration syntaxique [Résolu]

Je me suis fais une fonction du genre bien pratique que j'avais trouvé je ne sais plus où :


function LesCouleurs(){
for i in {0..255};do
    printf "\x1b[38;5;${i}mcolour${i}\x1b[0m  "
done
}


Tousse antique Ovide !

Hors ligne

#16 15-05-2018 19:49:21

Jkart
Membre
Distrib. : Bookworm
(G)UI : Xfce
Inscription : 16-12-2017

Re : Coloration syntaxique [Résolu]

Bonsoir Philou92,
Désolé mais je ne comprends pas cette fonction et je ne vois pas comment l'utiliser.
Si tu peux m'éclairer??
Cordialement

Tour: HP Pavilion 690-0095nf
Ram 8 giga  SSD 128 giga Disque 1T
Bookworm/Windows 11
Intel(R) i7 8700 Nvidia GTX 1050ti

Hors ligne

#17 15-05-2018 20:02:52

Philou92
Adhérent(e)
Lieu : Hauts de Seine
Distrib. : Debian bookworm
Noyau : Linux 6.1.0-13-amd64
(G)UI : LightDM et Xfce4.18
Inscription : 29-04-2015

Re : Coloration syntaxique [Résolu]

Par exemple tu colles la fonction dans ton fichier ~/.bashrc

Rafraîchies la lecture de ce fichier.

source ~/.bashrc



Puis tape:

LesCouleurs



Tu devrais alors observer le mot colour écrit dans 256 couleurs différentes.


Tousse antique Ovide !

Hors ligne

#18 24-05-2018 09:04:38

MdgRUN
Membre
Lieu : Plaine des Cafres
Distrib. : Bullseye
Noyau : 5.10....et+
(G)UI : Lxqt
Inscription : 27-09-2016

Re : Coloration syntaxique [Résolu]

Bonjour,

voici ma variable  avec compteur, date& heure, répertoire de travail,N° de la commande dans l'historique et , à la ligne, son  retour d'execution (0 pour OK):

PS1='${debian_chroot:+($debian_chroot)}--\#-\[\e[1;32m\] *\D{+%A-%d-%B-%Y}+++\t* \[\e[1;36m\] [ \w\a ] \! \n\--->\[\e[1;31m\] [$?] \[\e[0;m\]-->>> '



testée avec un

 export



on peut vérifier la syntaxe avec

ls --quoting-style=shell



Et si on veut une écriture + POSIX  \033 doit remplacer \e wink


**Donnez une poignée de sable à un poète,il en fera des étoiles **

Hors ligne

Pied de page des forums