On m’a demandé où était l’image pour faire la petite ligne de dégradé en bas de la page de mon site :

la ligne de dégradé en CSS en bas de la page de mon site

Il n’y a ni images, ni script, juste une ligne de CSS.

En fait, je mélange ici deux choses désormais largement supportés par les navigateurs :

  • les images multiples
  • les dégradés linear-gradient()

Le principe est le suivant : un dégradé, au niveau du navigateur se comporte comme une image de fond. On peut donc en mettre plusieurs et les décaler les un des autres :

background: linear-gradient(to right, transparent, red), linear-gradient(to right, blue, transparent);

Se comportera (presque) comme :

background: linear-gradient(to right, blue, red);


Après, les images sont décalées avec background-position.
C’est de là que vient mon astuce : il suffit de mettre un premier dégradé (la ligne noire), un deuxième (la ligne blanche) décalée de 1px vers le bas, et un troisième faux dégradé monochrome décalé de deux pixels vers le bas. Le faux dégradé n’a qu’une seule couleur, celle du fond du reste de la page.

Pour résumer, ça fait ça (où le rouge-bordeaux est en fait la couleur de fond du reste de la page, ne laissant alors apparaître que les deux lignes bleue et noire) :
images déclalé en CSS
Il suffit alors de remplacer les couleurs pleines par des dégradés avec 3 couleurs (le transparent sur le côté, une couleur pleine au centre).

Note importante quand même : dans la liste des 3 dégradés de fonds, c’est le premier qui est placé au dessus, les autres sont placés en dessous. Sur mon exemple ci-dessus, il faudra donc déclarer le rouge-bordeaux d’abord, le bleu ensuite et le noir en dernier.

Concernant la ligne de dégradé sur mon site, le code est là :

background: linear-gradient(to right, #212121, #212121) 0 2px no-repeat, linear-gradient(to right, #212121, #646464, #212121 ) 0 1px no-repeat, linear-gradient(to right, #212121, #010101, #212121 ) 0 0px no-repeat;

Remarquez que le premier dégradé est celui qui est unicolore et au-dessus, le second est le blanc et en dernier est la petite ligne noire du haut.

Sous GNU/Linux, le terminal est un programme central pour les utilisateurs, pour sa rapidité et sa simplicité. Il peut donc être intéressant de le personnaliser et de l’améliorer un peu.

Ces astuces ici sont pratiquement toutes inspirées de ce qui se fait dans la distribution Linux Mint, qui intègre tout ça par défaut.

Les couleurs dans le terminal


Par défaut sous Ubuntu (et ailleurs), le texte dans le terminal est tout de la même couleur. C’est difficilement lisible. Il est possible, entre autre, de mettre en couleur le texte au début d’une nouvelle ligne, le « nom@machine ~ $ » pour le rendre plus visible.
Pour cela, éditez le fichier caché .bashrc qui se trouve dans votre dossier personnel et ajoutez tout à la fin sur une nouvelle ligne :
PS1='\e[1;35m\u@\h\e[1;32m \w $ \e[0m'

Résultat :

terminal with another PS1 colors
Personnellement, j’ajoute même une nouvelle ligne avant un nouveau prompt, pour bien espacer chaque ligne (remplacez la ligne précédente par celle là) :
PS1='\n\e[1;35m\u@\h\e[1;32m \w $ \e[0m'

Pour que ça marche, éditez le fichier .bashrc, sauvegardez les changements puis ouvrez un nouveau terminal. Chaque changement dans le fichier n’est pris en compte qu’en ouvrant un nouveau terminal.
ÉDIT : pas besoin de relancer le terminal, Nono me signale la méthode où il suffit de lancer « . ~/.bashrc »

En plus, je préfère que le titre du terminal affiche le chemin courant (PWD) plutôt que « Terminal » :

PS1='\[\e]0;\w\a\]\n\e[1;35m\u@\h\e[1;32m \w $ \e[0m'[/code]
Si vous voulez changer de couleurs, sachez que ce sont les « 35 » et « 32 » que vous voyez qui font référence aux couleurs. La liste est donnée sur cette page. Le « 1; » devant la code couleur correspond au gras. Pour que les caractères ne soient pas en gras, mettez « 0; ».

ÉDIT : Kyriog me signale ce site pour créer des lignes PS1 pour bashrc. Glissez-déposez les éléments dans la ligne au dessus et récupérez le code en bas !

Command not found


Lorsque vous tapez une commande qui n’existe pas, le terminal affiche une erreur. Il est possible de lui faire suggérer l’installation d’un paquet logiciel qui contient cette commande.
Par exemple, si Firefox n’est pas installé et que vous tapez « firefox », il vous proposera alors d’installer Firefox.

Installez les paquets suivants :

sudo apt-get install command-not-found command-not-found-data

Puis ajoutez le à votre bashrc (si ça n’est pas ajouté tout seul par le fait de l’avoir installé) :

# if the command-not-found package is installed, use it
if [ -x /usr/lib/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/bin/python /usr/lib/command-not-found -- $1
                   return $?
		else
		   return 127
		fi
	}
fi


Cowsay


Cowsay couplé à Fortune permet d’afficher un petit dessin en ASCII qui affiche une citation. Quand j’ouvre un terminal, je vois affiché une citation au hasard énoncée par un animal au hasard : une vache, un renne, un hellokitty ou un tux.
Il faut pour cela avoir installé les paquets cowsay et fortune (et activé les paquets universe) :
sudo apt-get install cowsay fortune

Puis placer cette ligne dans le bashrc :
fortune -a | cowsay -f $(shuf -n1 -e hellokitty default tux moose)

Normalement, quand vous ouvrirez le terminal, ça fera quelque chose comme ça :

cowsay + fortunes trick

L’autocompletion


Sous Ubuntu ça semble avoir été corrigé dans la version 14.04, mais avant l’autocomplétion avec la touche de tabulation ne marchait pas ou de façon incomplète. Pourtant, en ajoutant ceci à votre fichier .bashrc, vous pouvez activer l’autocomplétion qui est quand même très pratique.

# enable bash completion in interactive shells
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi

Maintenant, au lieu de taper « sudo aptitude install firefox », vous taperez « sudo apti<tab> i<tab> firef<tab> » ce qui fait gagner pas mal de temps.

Voilà, avec tout ça vous aurez un terminal plus joli.
Une petite astuce finale : il est possible d’ajouter n’importe quelle commande au lancement du terminal. Pour cela, il suffit de placez la commande dans le fichier .bashrc. C’est aussi simple que cela.
Par exemple pour afficher l’heure d’ouverture du terminal tout en haut, mettez « date » tout seul sur une ligne. Pour afficher les dernières commandes tapées, mettez « cat .bash_history | tail »