Il y a plusieurs raisons pour lesquelles les curseurs standards de X sont
durs à suivre pour certaines personnes :
- quand X tourne sur un notbook avec un LCD à faible contraste
- sur les écrans normaux lorsque l'on utilise une résolution élevée, i. e. 1600x1280
- pour les déficients visuels même sur un matériel standard
Dans tous les cas, cela peut aider d'utiliser des curseurs agrandis.
Idéalement, ce travail devrait être fait par un programme X unique qui
agrandit automatiquement tous les curseurs de souris.
A ma connaissance, il n'y a pas de moyen de moyen simple d'écrire un utilitaire
de ce type, car le protocole X n'a pas de primitive pour manipuler les curseurs.
Pour plus de détails, voyez la section[
ci-dessous.
Si nous avons un but moins général, quelque chose peut être fait:
Il y a un jeu de curseurs standards qui peut être trouvé dans la police
de curseurs (essayez ]xfd -fn cursor pour l'observer). La plupart
des programmes utilisent ces curseurs et l'idée générale est de remplacer
la police de curseur standard par une version agrandie.
A propos de ce document
Le point de départ de ce MINIHOWTO a été un camarade déficient visuel
qui m'a demandé comment agrandir le curseur de la souris sous X. Après
avoir trouvé comment cela peut être fait, j'ai écrit la version initiale
de ce document. La connaissance de la méthode décrite ici ne semble pas
être très répandue alors j'ai décidé de la partager et j'ai soumis ce
document en tant que Linux MINIHOWTO, malgré le fait qu'il
.
La de
ce document est maintenue dans le format SGML/linuxdoc. Cela rend
possible la génération automatique de versions dans les formats suivants
(qui peuvent être trouvées au même endroit que le document maître): html, text,
LaTeX, DVI, PostScript, GNU info.
a fait
une traduction en Japonais de ce MINIHOWTO. Elle peut être trouvé à .
Comment le faire
Suivez les étapes détaillées ci-dessous. Si vous ne voulez pas récupérer et
compiler le package bdfresize vous même, vous pouvez aller directement à l'étape
3 et télécharger une police agrandie au lieu de la créer.
- récupérez cursor.bdf, la source de la police de curseur, depuis une
distribution X i. e. depuis
(si vous ne
le trouvez pas là, essayez une recherche d'archive ou récupérez le depuis
).
- récupérez et installez le package bdfresize depuis
(ou depuis ):
zcat bdfresize-1.4.tar.Z | tar xf -
cd bdfresize-1.4
xmkmf
make
Sur Linux vous aurez probablement à utiliser :
make CCOPTIONS='-include /usr/include/bsd/bsd.h' clean all
- créez un répertoire et installez une police de curseur agrandie dedans
(facteur d'agrandissement de deux dans cet exemple) :
mkdir $HOME/fonts
bdfresize -f 2 cursor.bdf | bdftopcf >$HOME/fonts/cursor2.pcf
mkfontdir $HOME/fonts
J'ai préparé quelques
avec les facteurs d'agrandissement suivants : 1.5, 2, 2.5, 3, 4, 5,
6, 7, 8 et 16. Vous pouvez télécharger l'une d'entre elles et la copier
dans $HOME/fonts si vous ne voulez pas utiliser bdfresize.
- modifiez votre fichier
.xinitrc ou .xsession : avant
qu'un quelconque client X (qui utilise les curseurs) ne soit lancé, les
commandes suivantes doivent être exécutées :
xset +fp $HOME/fonts
xsetroot -cursor_name X_cursor
- quittez votre section X et redémarrez.
Voilà — maintenant tous les curseurs devraient avoir doublé de taille.
Notes et limitations
- les serveurs X peuvent avoir une limite pour la taille maximum du
curseur, spécialement si ils utilisent une implémentation matérielle
pour le curseur. Les autres n'ont pas de telles limites. I. e.
XF86_S3 3.3 fonctionne même avec un curseur de 512x512 (même si
c'est plus lentement).
- La police de curseur agrandie doit avoir le même nom que l'originale
(le
cursor, bdfresize
ne change pas le nom de la police.
- Le répertoireavec le nouveau curseur doit être placé avant le répertoire
avec le curseur standard dans le chemin des polices — cela est
effectué avec
xset +fp (par opposition à
xset fp+ ).
- Les changements dans
$HOME/fonts/ ne seront visibles
qu'après que la commande mkfontdir $HOME/fonts; xset fp rehash
aie été exécutée et seulement pour les clients X lancés après
(plus exactement : pour les curseurs nouvellement créés).
-
xset +fp path pourrait ne pas marcher sur un terminal X. Dans ce
cas, on peut utiliser un serveur de polices (voir la section [) si il est supporté par le
terminal X ou une autre méthode pour installer les polices sur le terminal X
(cela ne peut généralement être fait que par votre administrateur système).
]- La même approche peut être utilisée pour les polices
olcursor et
decw$cursor et n'importe quel autre curseur que vous voudriez
rencontrer.
- Les polices de curseur produites par bdfresize ne sont pas lissées,
spécialement avec des facteurs d'agrandissement élevés. Cela serait
gentil si quelqu'un pouvait créer une version plus agréable pour
quelques tailles communes.
Discussion Technique
Est il possible d'écrire un programme X qui agrandit les curseurs
automatiquement ?
XCreate*Cursor.
Les requêtes XCreate*Cursor doivent être modifiées pour utiliser un
curseur agrandit.
Ce serveur proxy simule un nouvel affichage, i. e.
Autres idées pour rendre le curseur plus visible
Voici quelques idées pour des programmes X simples qui peuvent rendre
les curseurs plus faciles à repérer.
- Quand une touche de fonction est pressée, afficher quelque chose
(grand curseur, petite fenêtre) au niveau du pointeur pendant 0.5s.
- utilisez XRecolorCursor pour changer la couleur du pointeur toutes
les 0.1s
Un projet plus demandé serait pour plus de détails).
Informations connexes
Comment utiliser un serveur de polices
Un serveur de police est un service réseau qui fournit un jeu de polices
X11 avec un protocole simple. Il peut être interrogé sur les polices
qu'il fournit et fournira les bitmap d'une police sur demande.
Vous pourriez vouloir utiliser un serveur de polices pour fournir au
serveur X une police de pointeur modifié au lieu de lui dire où trouver
les polices sur le système de fichiers.
Cette méthode est particulièrement pratique si vous utilisez plusieurs
machines qui ne partagent pas de système de fichiers commun ou si vous
utilisez des terminaux X qui supportent le protocole de serveur de polices.
Un serveur de polices et les outils associés sont fournis avec la distribution
X11R5+ (AFAIK).
Installer un serveur de polices
Lisez les pages de manuel fs(1) , fslsfonts(1) (ou
xfs(1) , xfslsfonts(1) sous X11R6) et essayez les—
ce n'est pas dure. Dites que vous utilisez le server sur l'hôte
some.host.edu sur le port 7100. Vous pouvez tester l'installation
avec la commande
fslsfonts -server some.host.edu:7100
Pour utiliser effectivement le serveur, entrez la commande
xset +fp tcp/some.host.edu:7100
qui devrait se terminer sans message d'erreur.
Comment récupérer la source bdf d'une police quelconque
Si vous avez installé un serveur de polices, utilisez simplement fstobdf
qui est fourni avec le serveur de polices.
Sinon, vous pouvez essayer getbdf qui peut capturer n'importe quelle police
X11 installée dans un fichier bdf.