J'ai remarqué quelques captures d'écran de fenêtres de terminal en ligne qui montrent de minces bords en surbrillance autour des barres d'état ou des lignes en surbrillance. Dans l'exemple suivant, notez la bordure gris clair autour des lignes 1, 5 et 389:
Dans cet exemple, notez la bordure jaune autour de la ligne de mode Emacs (barre d'état):
Quel est le nom de cet effet et est-il possible avec iTerm 2 sous OS X 10.10?
Mise à jour
Après avoir fait des recherches et creusé dans le code du thème de l'interface Emacs Customize , j'ai trouvé du code qui définissait les bords. Dans le langage Emacs, cela s'appelle :box
, et l'un de ses attributs est line-width
. Voici un exemple de ligne de boîte définie dans un thème:
'(modeline ((t (:background "Gray10" :foreground "SteelBlue" :box (:line-width 1 :style none) :width condensed))))
La documentation de :box
se trouve dans la documentation des attributs faciaux du manuel Emacs , bien qu'elle ne mentionne pas comment cela fonctionne, ni quels terminaux sont pris en charge.
J'ai commencé à penser que cela pourrait être une caractéristique spéciale des versions GUI d'Emacs (telles que Aquamacs , mais je suis presque sûr d'avoir vu des captures d'écran de ce qui semble être des fenêtres de terminal Ubuntu Unity avec des surbrillances similaires).
Réponses:
L'effet que vous voyez n'est pas une astuce graphique de la fenêtre de terminal, c'est gui emacs s'exécutant dans X. Vous identifiez correctement la personnalisation pour qu'emacs dessine cela, mais ceux-ci ne sont rendus que lorsque emacs est exécuté dans X.
Pour illustrer, j'ai ma ligne de mode sur le thème de:
et quand emacs est exécuté graphiquement (par exemple
emacs
) il est rendu comme:et quand emacs est exécuté dans un terminal (par exemple
emacs -nw
), il est rendu comme:Vous pouvez voir les effets de bordure en pixels qui donnent l'apparence en relief définie par la boîte de rendu uniquement en mode gui. En mode terminal, c'est juste un effet plat.
De même, les images que vous avez publiées proviennent de gui emacs et l'effet n'est la propriété d'aucun émulateur de terminal, ni aucun émulateur de terminal impliqué dans ce rendu.
la source
La façon dont je comprends cette page Wikipédia (bien que j'aimerais beaucoup me tromper sur cette question spécifique):
Remarque: cela ne permet pas d'encadrer une chaîne de caractères sans frontières entre les caractères. comme
Lisa
dans la première capture d'écran.Donc, ma réponse (à la mi-2015) reste:
Les émulateurs de terminaux (actuels) ne peuvent pas afficher les bordures colorées facultatives par côté autour des caractères comme vous le souhaitez.
Ici, vous pouvez voir à quoi ressemblent les codes ANSI.
Les applications Gui comme gvim et xemacs, non basées sur un émulateur de terminal, ne sont pas liées aux limitations des émulateurs de terminal actuels. Je pense que les captures d'écran proviennent d'applications GUI.
Encore une fois, je voudrais me tromper sur ce point, car je serais heureux d'incorporer un tel formatage dans mes propres personnalisations de fichiers dot.
la source