Wie deaktiviere ich den blinkenden Cursor im Gnome-Terminal?

40

Ich hätte schwören können, dass es im Gnome-Terminal "Profile" einmal eine Einstellung dafür gab.

In einigen Ubuntu-Versionen verschwand diese Einstellung, und ich musste " System" Einstellungen ➜ Tastatur "verwenden , um" Cursor blinkt in Textfeldern "zu deaktivieren.

Nun, keiner von beiden scheint jetzt zu funktionieren. Wie lasse ich den Cursor aufhören zu blinken?

Nemo
quelle

Antworten:

21

Ja, in gconf ist eine Einstellung versteckt.
Öffne gconf-editor, navigiere zu /apps/gnome-terminal/profiles/Default, finde cursor_blink_modeund ändere seinen Wert auf off.

wie auch immer
quelle
Vielen Dank; das hat es geschafft. Obwohl eine der gültigen Einstellungen (eigentlich die Standardeinstellung) "system" sein soll. Ist das gerade kaputt?
Nemo
Ich glaube nicht, dass es kaputt ist, da der Cursor standardmäßig oder eher konstruktionsbedingt blinken soll und nicht nur im Terminal. Dafür gibt es eine systemweite Einstellung im Tastatursteuerungsfenster. Ich bin mir nicht sicher, ob Sie es von dort aus deaktivieren können.
mikewhatever
1
Wie ich in meiner Frage erwähnt habe, dachte ich, ich hätte es in den Tastatureinstellungen global deaktiviert ... Aber es hatte keine Auswirkungen auf das Gnome-Terminal. Was mich wundert, auf welche "System" -Einstellung sich cursor_blink_mode bezieht. Wie auch immer, mein Problem ist behoben. Danke noch einmal.
Nemo
1
@Nemo „System“ bezieht sich wahrscheinlich auf den Wert der cursor-blink„GEinstellung“, die Sie wie so abfragen: gsettings get org.gnome.desktop.interface cursor-blink. Es gibt auch andere Cursor-bezogene gsettings , dass Sie auch zwicken könnte, wie cursor-blink-timeout, cursor-sizeetc.
Maxy-B
Ich versuche die möglichen Alternativen zu "off" und "system" zu finden. Ich möchte immer noch einen blinkenden Cursor im aktiven Terminal, nur nicht in allen anderen.
Gauthier
30

Sie können das Blinken auch über die Befehlszeile deaktivieren (gconf-editor ist nicht standardmäßig installiert):

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

Für neuere Versionen von gnome-terminal wurde der Befehl geändert:

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
quelle
5
In Ubuntu 16.04 hat das gsettings set ...bei mir nicht geklappt. Ich habe es mit gelöst gsettings set org.gnome.desktop.interface cursor-blink false.
mmoya
@mmoya: Hmm, es hat bei mir funktioniert. Haben Sie Ihr Terminalprofil möglicherweise vom Standardnamen ("Standard" genannt) umbenannt? Der Nachteil Ihrer Lösung ist, dass das Blinken für alle Anwendungen deaktiviert ist, nicht nur für das Gnome-Terminal.
mdd
Ich habe es tatsächlich als Standard benannt . Als ich die Profileinstellungen in der Benutzeroberfläche öffnete, hatte es keinen Namen. Wie auch immer, es sollte keine Rolle spielen, da die Profil-UUID vom gsettings get ...Befehl stammt, oder?
mmoya
Der gsettings getBefehl erhält die UUID eines Profils mit dem Namen default(dies ist der Standardname). Funktioniert dies, wenn Sie den Befehl in ändern Default?
mdd
Ich denke, ich habe defaultals Name verwendet, weil das gsettings get ...funktioniert. Es wäre schön, der Antwort eine Notiz hinzuzufügen, die besagt, dass der Befehl davon ausgeht, dass das Profil als Standard bezeichnet wird .
mmoya
17

Ich überprüfe diesen Beitrag auf fast jeder einzelnen Gnome-Installation. Scheint, dass sich der tatsächliche Variablenname von Zeit zu Zeit ändert.

Meine Lösung: gsettings list-recursively | grep blink

Dann setze ich den Link-Wert von True auf False. Ab sofort blinkt der Cursor auf org.gnome.desktop.interface.

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

Hoffe das hilft jemand anderem in der Zukunft!

Farhan Yusufzai
quelle
3
Vielen Dank, dass Sie uns nicht nur die Lösung, sondern auch ein Mittel zur Verfügung stellen, um sie zu finden!
Luc
Diese Lösung funktionierte für mich in Ubuntu 17.10
Xaxxon 31.10.17
6

Sie können eine Escape-Sequenz an das Terminal senden (ich glaube, jede POSIX-kompatible), indem Sie das aktuelle Cursor-Zeichen folgendermaßen einstellen tput:

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

Fügen Sie einfach das, was Sie möchten, in Ihr lokales Runcom-Skript ein:, - was auch immer Ihr Gift ist - oder in das globale Skript ~/.zshrc, wenn Sie möchten, dass es für alle Benutzer ausgeführt wird.~/.bashrc/etc

cprn
quelle