Як відключити миготливий курсор у gnome-терміналі?


40

Я міг присягнути, що колись у гноме-терміналі "Профіль" була налаштування для цього.

І тоді в деякій версії Ubuntu це налаштування зникло, і мені довелося скористатися System ➜ Preferences ➜ Keyboard, щоб зняти прапорець «Курсор мигає в текстових полях».

Ну, але, схоже, зараз це не працює. Тож як змусити курсор перестати блимати?

Відповіді:


21

Так, є налаштування, приховане в gconf.
Відкрийте gconf-редактор, перейдіть до /apps/gnome-terminal/profiles/Default, знайдіть cursor_blink_modeта змініть його значення на off.


Спасибі; що це зробило. Хоча одне з дійсних параметрів (фактично за замовчуванням насправді) повинно бути "системним". Це просто зламано?
Немо

Я не думаю, що він зламаний, оскільки курсор повинен блимати за замовчуванням, а точніше за дизайном, і не тільки в Терміналі. У вікні керування клавіатурою є налаштування для системи. Не впевнений, чи можна вимкнути його звідти.
щороку

1
Як я вже згадував у своєму запитанні, я думав, що відключив його глобально в налаштуваннях клавіатури ... Але це не впливало на gnome-термінал. Що змушує мене замислюватися про те, на що посилається "системний" параметр cursor_blink_mode. У всякому разі, моя проблема виправлена. Знову дякую.
Немо

1
@Nemo «Система» , ймовірно , відноситься до значення cursor-blink«gsetting», який ви можете запросити так: gsettings get org.gnome.desktop.interface cursor-blink. Є інші курсора , пов'язані з gsettings , що ви могли б Tweak , а також, як cursor-blink-timeout, cursor-sizeі т.д.
Maxy-B

Я намагаюся знайти можливі альтернативи "вимкнено" та "системи". Я все ще хочу миготливий курсор в активному терміналі, тільки не у всіх інших.
Готьє

30

Ви можете відключити мигання також з командного рядка (gconf-редактор не встановлений за замовчуванням):

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

Для новіших версій gnome-terminal команда змінила:

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

5
У Ubuntu 16.04 gsettings set ...мені не працювали. Я це вирішив gsettings set org.gnome.desktop.interface cursor-blink false.
mmoya

@mmoya: Хм, це працювало на мене. Ви, можливо, перейменували свій профіль терміналу з імені за замовчуванням (називається "типовим")? Недоліком вашого рішення є те, що він вимикає миготіння для всіх програм, а не лише gnome-терміналу.
mdd

Я фактично назвав його за замовчуванням , коли я відкрив налаштування профілю в інтерфейсі, він не мав імені. У будь-якому випадку це не має значення, як профіль uuid отриманий з gsettings get ...команди, чи не так?
mmoya

gsettings getкоманда отримує UUID з профілю по імені default(це ім'я за замовчуванням), це працює , якщо ви зміните команду Default?
mdd

Я думаю, я використовував defaultяк ім'я, тому що gsettings get ...працює. Було б непогано додати відповідь до відповіді, що команда передбачає, що профіль називається за замовчуванням .
mmoya

17

Я переглядаю цю публікацію майже в кожній установці Gnome. Здається, що фактична назва змінної змінюється кожен так часто.

Моє рішення: gsettings list-recursively | grep blink

Тоді я встановлюю значення зв'язку від True до False. На сьогодні це org.gnome.desktop.interface курсор-блимає, тож:

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

Сподіваюся, це допоможе комусь іншому в майбутньому!


3
Дякуємо, що надали засоби пошуку, а не просто рішення!
Люк

Це рішення працювало для мене в ubuntu 17.10
xaxxon

6

Ви можете надіслати послідовність аварійної передачі до терміналу (я думаю, будь-який сумісний з POSIX), встановивши поточний символ курсору, використовуючи tput:

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

Просто покласти все , що ви віддаєте перевагу у вашому сценарії Runcom: ~/.zshrc, ~/.bashrc- то , що ваш отрута - або в глобальному в , /etcякщо ви хочете для його запуску для всіх користувачів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.