Como desabilito o cursor piscando no terminal gnome?

40

Eu poderia jurar que havia uma configuração para isso no "Perfil" do terminal gnomo.

E então, em alguma versão do Ubuntu, essa configuração desapareceu e eu tive que usar o Sistema ➜ Preferências ➜ Teclado para desmarcar "O cursor pisca nos campos de texto".

Bem, nenhum deles parece estar funcionando agora. Então, como faço para que o cursor pare de piscar?

Nemo
fonte

Respostas:

21

Sim, há uma configuração oculta no gconf.
Abra o gconf-editor, navegue até /apps/gnome-terminal/profiles/Default, encontre cursor_blink_modee altere seu valor para off.

mikewhatever
fonte
Obrigado; isso foi feito. Embora uma das configurações válidas (o padrão, na verdade) seja "sistema". Isso está quebrado?
Nemo
Não acho que esteja quebrado, pois o cursor deve piscar por padrão, ou melhor, por design, e não apenas no Terminal. Há uma configuração abrangente para o sistema na janela de controle do teclado. Não tenho certeza se você pode desativá-lo a partir daí.
mikewhatever
11
Como mencionei na minha pergunta, pensei em desativá-lo globalmente nas configurações do teclado ... Mas não teve nenhum efeito no terminal gnome. O que me faz pensar a que configuração do "sistema" está cursor_blink_mode. Enfim, meu problema está resolvido. Obrigado novamente.
Nemo
11
@Nemo "sistema" provavelmente se refere ao valor do cursor-blink"gsetting", que você pode consultar assim: gsettings get org.gnome.desktop.interface cursor-blink. Há outras gsettings-cursor relacionados que você pode ajustar também, como cursor-blink-timeout, cursor-size, etc.
Maxy-B
Estou tentando encontrar as alternativas possíveis para "off" e "system". Ainda quero um cursor piscando no terminal ativo, mas não em todos os outros.
Gauthier
30

Você pode desativar o piscar também na linha de comando (o gconf-editor não está instalado por padrão):

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

Para versões mais recentes do gnome-terminal, o comando mudou:

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
fonte
5
No Ubuntu 16.04 gsettings set ..., não funcionou para mim. Eu resolvi isso com gsettings set org.gnome.desktop.interface cursor-blink false.
mmoya 1/09/16
@mmoya: Hmm, funcionou para mim. Você talvez renomeou seu perfil de terminal com o nome padrão (chamado "padrão")? A desvantagem da sua solução é que ela desabilita o piscar para todos os aplicativos, não apenas o terminal gnome.
Mdd 1/09/16
Na verdade, eu o nomeei Padrão , quando abri as configurações de perfil na interface do usuário, ele não tinha nome. De qualquer forma, não deve importar, pois o uuid de perfil é obtido pelo gsettings get ...comando, deveria?
mmoya 2/09/16
o gsettings getcomando obtém o uuid de um perfil chamado default(que é o nome padrão), funciona se você alterar o comando para Default?
Mdd 5/09/16
Eu acho que usei defaultcomo nome porque gsettings get ...funciona. Seria bom adicionar uma nota à resposta dizendo que o comando assume que o perfil é chamado padrão .
mmoya 5/09/16
17

Analiso este post em quase todas as instalações do Gnome. Parece que o nome real da variável muda de vez em quando.

Minha solução: gsettings list-recursively | grep blink

Em seguida, defino o valor do link de Verdadeiro para Falso. A partir de agora, é org.gnome.desktop.interface piscar de cursor, então:

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

Espero que isso ajude alguém no futuro!

Farhan Yusufzai
fonte
3
Obrigado por fornecer um meio de encontrá-lo, e não apenas a solução!
Luc
Esta solução funcionou para mim no ubuntu 17.10
xaxxon
6

Você pode enviar uma sequência de escape para o terminal (qualquer POSIX compatível, eu acho) configurando o caractere atual do cursor usando tput:

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

Basta colocar o que você preferir em seu script Runcom locais: ~/.zshrc, ~/.bashrc- o que é o seu veneno - ou em um global em /etcse você desejar que ele seja executado para todos os usuários.

cprn
fonte