Sur un terminal qui supporte les couleurs, Emacs peut mettre en surbrillance la région courante. Mais normalement il ne le fait pas. Pourquoi non ?
Mettre la région en surbrillance lorsqu'elle existe n'est pas désirable sous Emacs, car une fois que vous avez placé une marque, il y a toujours une région (dans ce tampon). Et mettre en surbrillance tout le temps serait nuisible. C'est pour cette raison qu'Emacs met en surbrillance une région seulement immédiatement après que vous l'ayez sélectionnée avec la souris.
Vous pouvez utiliser la mise en surbrillance de la région avec le mode Marque Transitoire. C'est un mode d'opération plus rigide dans lequel la région "reste" temporairement seulement, vous devrez donc indiquer une région pour chaque commande qui en utilise une. Dans le mode de Marque Transitoire, la plupart du temps aucune région n'est définie ; dans ce cas il est commode de mettre en surbrillance la région lorsqu'elle existe, et ce comportement n'est pas ennuyeux.
Pour lancer le mode de Marque Transitoire, tapez M-x transient-mark-mode. Cette commande démarre ou arrête le mode, vous pouvez alors répéter la commande pour sortir du mode.
Voici les détails du mode de Marque Transitoire :
Pour placer la marque, tapez C-SPC (set-mark-command). La marque est alors rendue active ; en déplaçant le point, vous verrez la région mise en surbrillance grandir et diminuer.
Les commandes souris pour spécifier la marque la rendent elles aussi active. De même pour les commandes clavier pour spécifier une région, dont M-@, C-M-@, M-h, C-M-h, C-x C-p et C-x h.
Lorsque la marque est active, vous pouvez exécuter des commandes qui opèrent sur la région, comme copier, indenter, ou écrire dans un fichier.
Un changement dans le tampon, comme l'insertion ou la suppression d'un caractère, désactive la marque. Ça veut dire que toute commande suivante opérant sur une région échouera et refusera de s'exécuter. Vous pouvez rendre la région à nouveau active en tapant C-x C-x.
Les commandes comme M-> et C-s qui "laissent la marque derrière eux" en plus de leur fonction première n'activent pas la nouvelle marque. Vous pouvez activer la nouvelle région en exécutant C-x C-x (exchange-point-and-mark).
C-s lorsque la marque est active n'altère pas la marque.
Quitter avec C-g désactive la marque.
Certaines commandes opèrent sur la région lorsqu'elle est active. Par exemple, C-x u dans le mode de Marque Transitoire opère sur la région lorsqu'une région existe. En dehors du mode de Marque Transitoire, vous devez taper C-u C-x u si vous désirez opérer sur la région. Section 7.4. Les autres commandes opérant de cette manière sont identifiées comme telles dans leur propre documentation.
La mise en surbrillance utilise la face de région ; vous pouvez personnaliser la façon dont la région est mise en valeur en changeant cette face. Section 32.2.2.3.
Lorsque différentes fenêtres contiennent un même tampon, elles peuvent avoir des régions différentes, car elles peuvent avoir différentes valeurs pour le point (bien qu'elles partagent toutes une même position de la marque). Ordinairement, seule la fenêtre sélectionnée met sa région en surbrillance (Chapter 18). Si la variable highlight-nonselected-windows est non-nil, alors toutes les fenêtres met sa région en surbrillance (à condition que le mode de Marque Transitoire soit actif et que la marque soit active).
Lorsque le mode de Marque Transitoire est désactivé, chaque commande positionnant la marque l'active aussi, et elle n'est jamais désactivée.
Si la variable mark-even-if-inactive est non-nil dans le mode de Marque Transitoire, les commandes peuvent utiliser la marque et la région même si elles sont inactives. La mise en surbrillance apparaît et disparaît comme d'habitude avec le mode de Marque Transitoire, mais la marque n'est pas réellement désactivée lorsque la mise en surbrillance disparaît.
Le mode de Marque Transitoire est parfois aussi appelé "mode Zmacs" car l'éditeur Zmacs sur la Machine Lisp du MIT gérait le point d'une manière similaire.