Comment faire l'arrêt du curseur blinking
quand dans un TTY ? (ou ailleurs).
points bonus Pour un réglage universel qui arrête le curseur clignotant presque partout.
Cela vous donne un bloc jaune solide (non-kinking) comme un curseur:
echo -n -e '\e[?17;14;224c'
Pour plus d'informations, vérifiez ces références: Linuxgazette et Emacswiki ainsi que le fichier /usr/src/linux/Documentation/VGA-softcursor.txt
(si présent sur votre système)
Il y a un Séquence de contrôle standard Pour désactiver le curseur clignotant sur les bornes.
printf '\033[?12l'
Cependant, de nombreux terminaux ne mettent pas en œuvre ce paramètre, alors lus.
Il existe un réglage de terminal standard plus largement mis en œuvre pour la commutation Visibilité du curseur entre une visibilité élevée, une visibilité normale et une invisibilité. Certains terminaux ne font pas une différence entre la normale et la haute, et rien ne garantit que l'un ou l'autre volonté ou ne clignotera pas. In Terminfo , émettez le cvvis
, cnorm
ou civis
(E.G. tput cvvis
). Les entrées correspondantes termcap Les entrées sont vs
, ve
et vi
.
Ces paramètres ne survivront pas à un terminal réinitialiser. Vous constaterez donc que cela ne survivra pas au lancement de nombreuses applications en plein écran. Vous pouvez surmonter cette difficulté en ajoutant la séquence de changement de configuration du curseur sur la chaîne de réinitialisation de votre terminal.
infocmp >>~/etc/terminfo.txt
. Modifiez la description pour modifier la séquence rs1
(Réinitialisation de base), par ex. Remplacez rs1=\Ec
par rs1=\Ec\E[?12l
. Avec certains programmes et réglages, vous devrez peut-être modifier le rs2
(réinitialisation complète) également. Ensuite, compilez la description TerminFo avec tic ~/etc/terminfo.txt
(ceci écrit sous le répertoire $TERMINFO
ou ~/.terminfo
si non défini)./etc/termcap
). Changer le is
(réinitialisation de base) et rs
(réinitialisation complète) des séquences pour ajouter vos paramètres, par exemple. :is=\Ec\E[?12l:
. Définissez la variable d'environnement TERMCAP
à la valeur éditée (début et fin avec :
).Certains terminaux et autres applications vous donnent plus d'options:
cursorBlink
est définie sur true
ou l'option -bc
option est transmise sur la ligne de commande. Le taux de clignotement est personnalisable via les ressources cursorOnTime
et cursorOffTime
ressources.printf '\033[17;127?c'
(le premier paramètre 17 vous donne le curseur logiciel sans curseur de matériel et le deuxième paramètre défini sur 127. il est essentiellement une vidéo inverse). Voir ci-dessus concernant les réinitialisations terminales.M-x blink-cursor-mode
tondre le clignotant du curseur. Mettez (blink-cursor-mode 0)
dans votre ~/.emacs
pour l'éteindre. Ceci est un paramètre global et ne s'applique pas dans un terminal de texte.Voir aussi Juri Linkov (Jurta) 'S No clignotant Page pour savoir comment éteindre le clignotant dans la moissonneuse, TK, GTK (GNOME), QT (KDE), Firefox , et plus.
J'ai trouvé que cela plus facile si vous avez des autorisations racines:
~$ echo 0 > /sys/class/graphics/fbcon/cursor_blink
Je le mets dans le script de démarrage de la machine comme /etc/rc.local
pour archigno Linux.
Mettre
\ 033 [? 17; 0; 127C
à votre variable PS1 et vous arrêterez de clignoter constamment.
PAR EXEMPLE:
export PS1 = '\ 033 [? 17; 0; 127C\U:\w\$' '
Je mets
echo 0 > /sys/class/graphics/fbcon/cursor_blink
dans /etc/rc.local et créé un service SystemD pour celui-ci en utilisant des instructions en ligne. Cependant, j'ai remarqué que parfois après le démarrage, le curseur clignote toujours. Il serait bon de connaître la bonne façon de désactiver définitivement le curseur clignotant via SYSFS sur un système SystemD moderne, est-ce que quelqu'un a des conseils? Certaines distributions ont /etc/sysfs.conf, mais je suis en train d'exécuter une arche et je ne trouve pas ce fichier dans Sysfsutils ou ailleurs.
En tant que solution temporaire, j'ai dirigé la commande suivante
Sudo zsh -c 'echo -n "\033[?17;0;255c" >> /etc/issue'
Certaines expérimentations ont montré que le "255c" à la fin fonctionne mieux que "127c" énumérés ci-dessus, il produit un curseur blanc plutôt que gris.
Cela cache complètement le curseur.
tput civis
Restaurer:
tput cnorm
Sudo cp /etc/issue /etc/issue.tmp
setterm -cursor off | Sudo tee /etc/issue
cat /etc/issue.tmp | Sudo tee --append /etc/issue
Sudo rm /etc/issue.tmp
Sudo reboot
Pour la console Linux:
Ajouter -I "\033[?17;0;255c"
Option à getty
lignes dans votre /etc/inittab
déposer. Faire cela:
Ouvrez le /etc/inittab
Fichier avec un éditeur de texte. Il devrait y avoir des lignes contenant getty
ou agetty
ou similaire. Un exemple est:
tty1::respawn:/sbin/getty 38400 tty1
Ajouter -I "\033[?17;0;255c"
à chaque ligne getty
. À titre d'exemple, après avoir ajouté -I "\033[?17;0;255c"
, la ligne getty
la ligne ci-dessus serait la suivante:
tty1::respawn:/sbin/getty -I "\033[?17;0;255c" 38400 tty1
Redémarrez le système, ou alternativement, tuez tous les processus getty
.
Une meilleure alternative est de mettre ESC[?17;0;255c
dans /etc/issue
, au lieu de la mettre à getty
lignes. Faire cela en utilisant vi
est le suivant:
/etc/issue
utiliser vi
./etc/issue
Fichier, entrez le mode insertion.^V
(C'est, Ctrlv), puis appuyez Esc. Le caractère d'échappement devrait maintenant être inséré.[?17;0;255c
.Une autre alternative consiste à maintenir le curseur matériel (au lieu d'utiliser un curseur de logiciel) et à cesser de clignoter le curseur du matériel et à en faire un curseur de bloc. Faire cela:
Ajoutez ce qui suit à /etc/inittab
:
# Stop cursor blink on Linux console
::sysinit:/bin/sh -c "echo 0 > /sys/class/graphics/fbcon/cursor_blink"
Ajouter ESC[?8c
à /etc/issue
. Reportez-vous à la section "Alternative 2" pour obtenir des instructions pour ce faire.
Cependant, avec cette option, le curseur ne devient pas blanc brillant. Je suppose que cela n'est possible qu'avec l'utilisation du curseur logiciel.
Après avoir suivi l'une de ces alternatives, vous obtiendrez un curseur bloqué blanc, non clignotant.