Comment désactiver le curseur clignotant dans gnome-terminal?

40

J'aurais pu jurer qu'il y avait une fois un paramètre pour cela dans le "profil" gnome-terminal.

Et puis, dans certaines versions d’Ubuntu, ce paramètre a disparu et je devais utiliser Système ➜ Préférences Clavier pour décocher «Le curseur clignote dans les champs de texte».

Eh bien, aucun de ceux-ci ne semble fonctionner maintenant. Alors, comment faire en sorte que le curseur arrête de clignoter?

Nemo
la source

Réponses:

21

Oui, il y a un paramètre caché dans gconf.
Ouvrez gconf-editor, naviguez vers /apps/gnome-terminal/profiles/Default, recherchez cursor_blink_modeet modifiez sa valeur en off.

micro-ce que tu veux
la source
Merci; ça l'a fait. Bien que l'un des paramètres valides (par défaut, en fait) soit supposé être "système". Est-ce juste cassé?
Nemo
Je ne pense pas que ce soit cassé, car le curseur est censé clignoter par défaut, ou plutôt par conception, et pas seulement dans Terminal. Il existe un paramètre système global pour cela dans la fenêtre de contrôle du clavier. Vous ne savez pas si vous pouvez l'éteindre à partir de là.
Mikewever
1
Comme je l'ai mentionné dans ma question, je pensais l'avoir désactivé globalement dans les paramètres du clavier ... Mais cela n'avait aucun effet sur gnome-terminal. Ce qui me fait me demander à quoi se réfère le paramètre "system" de cursor_blink_mode. Quoi qu'il en soit, mon problème est résolu. Merci encore.
Nemo
1
@Nemo « système » se réfère probablement à la valeur de la cursor-blink« GRéglage », que vous pouvez interroger comme ceci: gsettings get org.gnome.desktop.interface cursor-blink. Il existe d' autres gsettings liées au curseur que vous pouvez tordre ainsi, comme cursor-blink-timeout, cursor-size, etc.
Maxy-B
J'essaie de trouver les alternatives possibles au "off" et au "système". Je veux toujours un curseur clignotant dans le terminal actif, mais pas dans tous les autres.
Gauthier
30

Vous pouvez également désactiver le clignotement à partir de la ligne de commande (gconf-editor n'est pas installé par défaut):

 gconftool-2 --set /apps/gnome-terminal/profiles/Default/cursor_blink_mode --type string off

Pour les nouvelles versions de gnome-terminal, la commande a été modifiée:

gsettings set org.gnome.Terminal.Legacy.Profile:/org/gnome/terminal/legacy/profiles:/:$(gsettings get org.gnome.Terminal.ProfilesList default|tr -d \')/ cursor-blink-mode off
mdd
la source
5
Dans Ubuntu 16.04, cela gsettings set ...n’a pas fonctionné pour moi. Je l'ai résolu avec gsettings set org.gnome.desktop.interface cursor-blink false.
mmoya
@mmoya: Hmm, ça a fonctionné pour moi. Avez-vous peut-être renommé votre profil de terminal à partir du nom par défaut (appelé "default")? L'inconvénient de votre solution est qu'elle désactive le clignotement pour toutes les applications, pas seulement pour gnome-terminal.
Mdd
En fait, je l'ai nommé par défaut . Lorsque j'ai ouvert les paramètres de profil dans l'interface utilisateur, il ne portait aucun nom. Quoi qu'il en soit, cela ne devrait pas avoir d'importance car le profil uuid est obtenu de la gsettings get ...commande, devrait-il?
mmoya
la gsettings getcommande obtient l'uuid d'un profil nommé default(qui est le nom par défaut), cela fonctionne-t-il si vous modifiez la commande en Default?
Mdd
Je pense que j'ai utilisé defaultcomme nom parce que les gsettings get ...travaux. Il serait bien d'ajouter une note à la réponse indiquant que la commande suppose que le profil s'appelle default .
mmoya
17

Je passe en revue cet article sur presque toutes les installations de Gnome. Il semble que le nom de la variable change de temps en temps.

Ma solution: gsettings list-recursively | grep blink

Ensuite, je règle la valeur du lien de True à False. Pour l'instant, il s'agit de org.gnome.desktop.interface cursor-blink, donc:

gsettings set org.gnome.desktop.interface cursor-blink false

J'espère que cela aidera quelqu'un d'autre à l'avenir!

Farhan Yusufzai
la source
3
Merci de nous avoir fourni un moyen de le trouver plutôt que de simplement la solution!
Luc
Cette solution a fonctionné pour moi dans Ubuntu 17.10
xaxxon
6

Vous pouvez envoyer une séquence d'échappement au terminal (n'importe quel terminal compatible POSIX, je pense) en définissant le caractère de curseur actuel à l'aide de tput:

tput civis    # invisible
tput cnorm    # normal       (usually an underscore)
tput cvvis    # very visible (usually a rectangle)

Il suffit de mettre tout ce que vous préférez dans votre script Runcom local: ~/.zshrc, ~/.bashrc- ce qui est votre poison - ou dans celui mondial /etcsi vous le souhaitez pour qu'il fonctionne pour tous les utilisateurs.

cprn
la source