Как отключить мигающий курсор в gnome-терминале?


40

Я мог бы поклясться, что когда-то была настройка для этого в терминале гномов "Профиль".

А затем в какой-то версии Ubuntu этот параметр исчез, и мне пришлось использовать Систему ferences Настройки ➜ Клавиатура, чтобы снять флажок «Курсор мигает в текстовых полях».

Ну, похоже, ни один из них сейчас не работает. Так как же заставить курсор перестать мигать?

Ответы:


21

Да, в gconf есть скрытая настройка.
Откройте gconf-editor, перейдите /apps/gnome-terminal/profiles/Default, найдите cursor_blink_modeи измените его значение на off.


Благодарность; это сделал Хотя одна из действительных настроек (по умолчанию, на самом деле) должна быть «системной». Это просто сломано?
— Немо,

Я не думаю, что он сломан, так как курсор должен мигать по умолчанию, точнее, по дизайну, а не только в Терминале. Для этого есть общесистемная настройка в окне управления клавиатурой. Не уверен, если вы можете отключить его оттуда, хотя.
— mikewh независимо от

1
Как я уже упоминал в своем вопросе, я думал, что отключил его глобально в настройках клавиатуры ... Но это не повлияло на gnome-терминал. Что заставляет меня задуматься о том, на что указывает «системная» установка cursor_blink_mode. Во всяком случае, моя проблема исправлена. Еще раз спасибо.
— Немо,

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

Я пытаюсь найти возможные альтернативы "выключению" и "системе". Мне все еще нужен мигающий курсор в активном терминале, но не во всех остальных.
— Готье

30

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

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

Для более новых версий gnome-терминала команда была изменена:

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: Хм, это сработало для меня. Возможно, вы переименовали свой профиль терминала из имени по умолчанию (называемого «по умолчанию»)? Недостаток вашего решения в том, что оно отключает мигание для всех приложений, а не только для gnome-терминала.
— MDD

Я фактически назвал его как Default , когда я открыл настройки профиля в пользовательском интерфейсе, у него не было имени. В любом случае это не должно иметь значения, поскольку профиль uuid получен из gsettings get ...команды, не так ли?
— Ммоя

gsettings getкоманда получает UUID из профиля по имени default(это имя по умолчанию), это работает , если вы измените команду Default?
— MDD

Я думаю, что я использовал в defaultкачестве имени, потому что gsettings get ...работает. Было бы неплохо добавить к ответу примечание о том, что команда предполагает, что профиль называется default .
— Ммоя

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.