Por que o vim está congelado?

0

Eu tenho duas máquinas diferentes (casa e trabalho) rodando o Ubuntu 18.04. Ontem à noite vim congelou em casa. Eu estava no modo de inserção e digitando e fui salvar ( esc :w ) e nada aconteceu. A barra de status ainda lê -- INSERT -- , o cursor ainda está piscando onde estava. Eu estava travado. Eu não consegui encontrar uma saída. Eu não conseguia digitar (nada acontecia quando eu digitasse), não conseguia me mexer (as setas para cima e para baixo não faziam nada). Ele estava preso no modo de inserção com o cursor piscando onde estava.

Eu definitivamente estava multitarefa e provavelmente acertei algumas outras teclas, mas não sei quais teclas. Mas era tarde, então fechei a janela do terminal e tentei novamente (eu estava digitando uma mensagem de commit do git). Aconteceu novamente no meio da minha digitação, então mudei para git commit -m "don't need an editor for this" . E então eu desliguei meu computador e parei de trabalhar.

Eu percebi que estava cansado, mas aconteceu comigo hoje em dia trabalhar em um laptop diferente. Mais uma vez eu estava multitarefa e não posso jurar que eu não digitei qualquer seqüência de teclas bizarro, mas se eu fizesse isso era acidental. E outras guias no mesmo terminal não estão congeladas.

Estou acostumado a ficar preso no modo visual no vim. Esse é um truque que aprendi. Mas preso no modo de inserção? Alguma idéia do que eu poderia ter feito e como sair disso?

Por sugestão de comentário, tentei ver .viminfo , mas a única .viminfo que eu vejo pertence exclusivamente a root e aparece apenas para mostrar coisas que eu teria editado com sudo :

# Input Line History (newest to oldest):

# Debug Line History (newest to oldest):

# Registers:

# File marks:
'0  1  0  /etc/neomuttrc
|4,48,1,0,1531789956,"/etc/neomuttrc"
'1  1  66  /etc/apt/sources.list.d/signal-bionic.list
|4,49,1,66,1530816565,"/etc/apt/sources.list.d/signal-bionic.list"
'2  51  0  /etc/apt/sources.list
|4,50,51,0,1530816531,"/etc/apt/sources.list"

# Jumplist (newest first):
-'  1  0  /etc/neomuttrc
|4,39,1,0,1531789956,"/etc/neomuttrc"
-'  1  66  /etc/apt/sources.list.d/signal-bionic.list
|4,39,1,66,1530816565,"/etc/apt/sources.list.d/signal-bionic.list"
-'  1  66  /etc/apt/sources.list.d/signal-bionic.list
|4,39,1,66,1530816565,"/etc/apt/sources.list.d/signal-bionic.list"
-'  51  0  /etc/apt/sources.list
|4,39,51,0,1530816531,"/etc/apt/sources.list"
-'  51  0  /etc/apt/sources.list
|4,39,51,0,1530816531,"/etc/apt/sources.list"
-'  51  0  /etc/apt/sources.list
|4,39,51,0,1530816531,"/etc/apt/sources.list"
-'  51  0  /etc/apt/sources.list
|4,39,51,0,1530816531,"/etc/apt/sources.list"
-'  1  0  /etc/apt/sources.list
|4,39,1,0,1530816447,"/etc/apt/sources.list"
-'  1  0  /etc/apt/sources.list
|4,39,1,0,1530816447,"/etc/apt/sources.list"
-'  1  0  /etc/apt/sources.list
|4,39,1,0,1530816447,"/etc/apt/sources.list"
-'  1  0  /etc/apt/sources.list
|4,39,1,0,1530816447,"/etc/apt/sources.list"

# History of marks within files (newest to oldest):

> /etc/neomuttrc
    *   1531789952  0
    "   1   0

> /etc/apt/sources.list.d/signal-bionic.list
    *   1530816564  0
    "   1   66
    ^   1   67
    .   1   66
    +   1   66

> /etc/apt/sources.list
    *   1530816454  0
    "   51  0

Parece estranho que eu não tenha um .viminfo sem privilégios, mas eu fiz sudo udpatedb e locate .viminfo e ainda não exibi mais do que o arquivo de propriedade de uma raiz.

    
por Amanda 29.10.2018 / 22:18

1 resposta

2

Uma chave que eu costumo digitar por engano é Ctrl S ; que pára toda a saída até que um Ctrl Q seja digitado.

Esse é o XON/XOFF control-flow, que é ativado por padrão, e ^S e ^Q são as chaves VSTART e VSTOP padrão - veja o stty (1) e termios (3 manpages.

Cuidado, porém, que uma Ctrl Q enviará todas as chaves que você tentou digitar desde a última Ctrl S e eles podem causar muitos danos; em algumas circunstâncias, talvez seja melhor simplesmente fechar o terminal.

    
por 30.10.2018 / 00:01

Tags