OVH Cloud OVH Cloud

[OSX] un meilleur affichage des caractères unicode

3 réponses
Avatar
Sébastien Kirche
Bonjour,

il y a quelques jours de cela, Mitsuharu Yamamoto - un grand
contributeur à Carbon Emacs a annoncé sur emacs-devel qu'il avait
intégré au tronc du CVS la gestion de l'affichage des caractères
utilisant la technique ATSUI (Apple Type Services for Unicode Imaging).

ATSUI est utilisé et mis au point dans la branche unicode-2, jusqu'à
maintenant le texte était affiché dans Carbon Emacs par QuickDraw.

Cet ajout a été fait à la demande du mainteneur du code ATSUI pour
permettre de tester plus cette version qui va améliorer grandement
l'affichage du texte.

Attention : ATSUI n'est pas encore la méthode par défaut, pour
l'utiliser, il faut définir USE_ATSUI à la compilation. Ce qui donne les
incantations suivantes :

pour le make : make CFLAGS='-DUSE_ATSUI'
ou pour le make-package : make-package -M,CFLAGS='-DUSE_ATSUI'

D'après Mitsuharu ce n'est pas tout à fait sec, et il subsiste quelques
soucis avec certains caractères non ou mal affichés.

J'ai laissé passer quelques jour avant de tester et le résultat est
assez satisfaisant. Je n'ai pas encore vu de problème en français (je
rédige le présent message avec cette version). Je précise que j'utilise
une police à largeur fixe.

C-h h montre certains caractères avec les carrés vides, mais le
français, allemand, finnois, georgien, grec, hébreu, laosien, russe,
tchèque, slovaque, thaï, thibétain, japonais, chinois,
coréen, vietnamien... semblent déjà corrects :)

J'ai fait 2 copies d'écran pour se faire une idée :

- C-h h : http://sebastien.kirche.free.fr/emacs_stuff/EmacsAtsui1.png

- comparatif de l'affichage de caractères unicode dans les fils de
discussion de gnus avec et sans ATSUI :
http://sebastien.kirche.free.fr/emacs_stuff/EmacsAtsui2.png
(ce n'est pas forcément super joli, mais ça prove que ça fonctionne !)

Pour ceux que ça intéresse, l'arborescence (qui fonctionne très bien
sous Linux) est obtenue avec:
(if (or
(string-match "\\`obelix" system-name)
(string-match "\\`goudurix" system-name))
(when window-system ;obelix
(setq gnus-sum-thread-tree-root "\x4912f ") ; "> "
(setq gnus-sum-thread-tree-false-root "\x490f8 ") ; "> "
(setq gnus-sum-thread-tree-single-indent "\x4912e ") ; ""
(setq gnus-sum-thread-tree-leaf-with-other "\x4903c\x49020\x490fa ") ; "+-> "
(setq gnus-sum-thread-tree-vertical "\x49022") ; "| "
(setq gnus-sum-thread-tree-single-leaf "\x490b0\x49020\x490fa ")) ; "\\-> "
(when window-system ;autre
(setq gnus-sum-thread-tree-root "> ") ; "> "
(setq gnus-sum-thread-tree-false-root "> ") ; "> "
(setq gnus-sum-thread-tree-single-indent "") ; ""
(setq gnus-sum-thread-tree-leaf-with-other "+-> ") ; "+-> "
(setq gnus-sum-thread-tree-vertical "| ") ; "| "
(setq gnus-sum-thread-tree-single-leaf "`-> "))) ; "\\-> "

Ici les système obelix et goudurix possèdent les bonnes polices pour cet
affichage qui est sinon remplacé par des caractères ascii simples.

--
Sébastien Kirche

3 réponses

Avatar
Flatman
* Sébastien Kirche wrote:
|
| il y a quelques jours de cela, Mitsuharu Yamamoto - un grand
| contributeur à Carbon Emacs a annoncé sur emacs-devel qu'il avait
| intégré au tronc du CVS la gestion de l'affichage des caractères
| utilisant la technique ATSUI (Apple Type Services for Unicode Imaging).
|
| ATSUI est utilisé et mis au point dans la branche unicode-2, jusqu'à
| maintenant le texte était affiché dans Carbon Emacs par QuickDraw.

C'est le genre de chose qui pourrait résoudrait mon prob de signe eur
qui m'oblige a rester en Courrier ?

--
Erik

* Life is wonderful with Emacs and Perl *
Avatar
Flatman
* "seki" wrote:
|
| Flatman wrote:
| > C'est le genre de chose qui pourrait résoudrait mon prob de signe eur
| > qui m'oblige a rester en Courrier ?
|
| Je ne sais pas quel est ton problème exactement, mais c'est possible.
| Décidément les encodages avec emacs... (refrain connu)
|
| Si tu as un carré vide à la place de l'EUR, ça risque de régler le
| problème.
|
| Je n'ai pas eu le temps de me copier la version ATSUI sur mon site, il
| faudra
| que tu testes toi-même.
|
| Tu peux te faire une version bundle pour test.
| Ça se compile avec
| make-package --self-contained -M,CFLAGS='-DUSE_ATSUI'
|
| Si tu utilises déjà cette version, pense à dupliquer Emacs.app avant.
|

C'était déjà fait ...
Le prob n'existe que avec toutes les polices sauf 'courier new'
et atsui ne résout rien :-/ Je reste donc en courier ...


--
Erik

* Life is wonderful with Emacs and Perl *
Avatar
Sébastien Kirche
Le 14 October 2005 à 16:10, Sébastien Kirche s'est exprimé ainsi :

(setq gnus-sum-thread-tree-root "x4912f ")
(setq gnus-sum-thread-tree-false-root "x490f8 ")
(setq gnus-sum-thread-tree-single-indent "x4912e ")
(setq gnus-sum-thread-tree-leaf-with-other "x4903cx49020x490fa ")
(setq gnus-sum-thread-tree-vertical "x49022")
(setq gnus-sum-thread-tree-single-leaf "x490b0x49020x490fa)



J'ai trouvé quelques caractères qui passent mieux sous osx :

(setq gnus-sum-thread-tree-root "x490b3 ")
(setq gnus-sum-thread-tree-false-root "x490b3 ")
(setq gnus-sum-thread-tree-single-indent " ")
(setq gnus-sum-thread-tree-leaf-with-other "x4903cx49020x490fb ")
(setq gnus-sum-thread-tree-vertical "x49022")
(setq gnus-sum-thread-tree-single-leaf "x49034x49020x490fb ")

À voir ce que ça peut donner sous Linux et les autres...
Si vous en trouvez de meilleurs, faites-moi en profiter :)

--
Sébastien Kirche