Estou interessado em ter um único arquivo aberto com o vim em dois shells ao mesmo tempo. O caso de uso que tenho em mente são duas janelas de tela gnu rodando em um tty.
O problema é que eu gostaria que as instâncias do vim fossem coordenadas no sentido de que as edições em uma janela se manifestassem instantaneamente em cada janela. Eu também gostaria de diferentes posições do cursor em cada janela, então algo como apenas ter duas janelas de tela exibindo o mesmo shell não é o que estou procurando.
Por exemplo, eu gostaria de poder estar no modo de edição na linha 1 na minha primeira janela e também no modo de edição na linha 200 na minha segunda janela. Gostaria que as edições de uma janela se manifestassem imediatamente na outra janela e gostaria de uma ação de salvamento em uma janela para salvar todas as alterações feitas em cada janela.
Algo assim é possível? Se não com vim, com outro editor?
Você deve realmente diferenciar entre abrir o arquivo duas vezes ou apenas exibir seu conteúdo duas vezes.
Aberto separadamente (em dois shells/xterms) a coordenação é via
:e!
etc. no vim, mas não é prático e não é o que você deseja.Se você estiver apenas
:sp
no vim, obterá uma duplicação instantânea; mas isso não é "duas conchas".E agora, se você "dividir" (ou multiplexar) seu shell, obterá algo intermediário. É praticamente impossível implementar o que você deseja, sem uma camada adicional. Isso seria um sistema de banco de dados.