Alternando entre cli e vim e outros arquivos de fluxo de trabalho

4

Eu vi algum tipo de fluxo de trabalho no vim:
Vim tinha um arquivo aberto. Em seguida, uma combinação de chaves feitas vim desaparecer e o usuário estava na linha de comando trabalhando no modo cli, em seguida, abriu outro arquivo e, de repente, voltou para o arquivo aberto anteriormente exatamente no lugar / linha que ele era. Isso me lembrou a mudança entre as janelas que fazemos no Windows. Alguém sabe como esse worflow é feito no vim?

    
por Jim 16.09.2014 / 21:56

3 respostas

15

Existem várias opções para o fazer:

  • Você pode usar um multiplexador de terminal como a tela ou tmux .

    Na tela, por exemplo, o atalho Ctrl + a - a , tem a mesma funcionalidade que Alt + Tab em ambientes gráficos: mude para a última tela.

  • Ou você usa a função interna de vim .

    Digite :!command no modo de comando de vim . Por exemplo: :!ls -l . Depois que o comando terminar, pressione Enter para voltar para vim .

  • Há mais uma opção: Controle de tarefas .

    Pressione Ctrl + z para interromper o processo atual ( vim ). Você se encontrará em um terminal. Para trazer o processo parado de volta para o primeiro plano, digite fg .

Para mim, eu prefiro tela. Eu tenho uma regra não escrita para mim: "Sempre abra uma tela".

    
por 16.09.2014 / 22:05
4

Você pode pressionar Ctrl-z para parar o vim e ir para o CLI, fazer o que precisar (editar outro arquivo vim talvez), depois pressionar fg na linha de comando para voltar ao vim no mesmo lugar onde parou em. Se você não viu o comando fg sendo digitado, é muito provável que a tela esteja sendo usada.

    
por 16.09.2014 / 22:13
3

Eu não sei sobre a parte "de repente retornou ...", mas o primeiro bit é bastante trivial. O comando :shell abre seu shell. Para mim, ele é aberto onde quer que eu estivesse quando abri vim , por isso está herdando as configurações de vim , como G-Man anota . Isso lhe dá o modo CLI. Você também pode abrir outro vim dele. Ao sair deste shell, você volta para onde quer que você estava em vim originalmente. Você sempre pode vincular um atalho a :shell .

    
por 16.09.2014 / 22:06