Quais são algumas das principais diferenças entre o vim e o vi?

3
Quais são algumas das principais diferenças entre vi e vim? Há alguma diferença de atalho de teclado significativa, quaisquer recursos que um tenha e o outro não? Sim, sei que fiz outra pergunta semelhante a esta ( Vi vs vim, ou, existe alguma razão pela qual eu quer usar o vi? , mas o propósito dessa pergunta não era uma comparação completa entre os dois, mas apenas perguntar se havia alguma situação em que o vi tivesse a vantagem. Esta postagem é uma comparação direta entre os conjuntos de recursos do vi e do vim.

Edit: Eu estava errado, isso não é uma comparação entre os recursos do vi e vim. vim, sendo Vi IMproved, tem muitos, muitos mais recursos então vi. O que eu estou perguntando é, se você tem usado o vi toda a sua vida e um dia você se senta e começa a usar o vim, o que será diferente? Ou se você era um usuário vim anteriormente e experimentou o vi, quais diferenças você notaria?

    
por fouric 04.02.2013 / 23:51

5 respostas

1

É um pouco como perguntar sobre bash e sh . O ViM tem uma opção especial compatible (linha de comando -C ) - veja o manual do ViM, então ligue-o e tente fazer algum trabalho. E isso não é nem metade do caminho para vi de 20-30 anos atrás (quando teclados / terminais muitas vezes faltavam setas e outras - hoje comuns - chaves especiais a propósito).

Por isso, se você está acostumado com o ViM e acaba na frente do vi, ainda pode fazer suas coisas, mas muito mais lento, porque a maioria das coisas simplesmente não funciona (de qualquer maneira ou do jeito que você espera).

    
por 14.02.2013 / 18:43
1

Imediatamente para mim, realce de sintaxe. Em seguida, recuo automático e linhas de comentário automático, devido ao meu uso contínuo de colar da minha área de trabalho.

Além disso, o vim tem a funcionalidade adicional de dizer as diferenças

:help vi_diff

:help vim-additions

    
por 14.02.2013 / 20:03
1

É um pouco como perguntar qual é a diferença entre um Datsun 120Y & um Porsche!

O Vim tem uma multitude de recursos não oferecidos pelo antigo vi simples: -

  • Várias janelas - horizontal, vertical e & guias.
  • destaque visual.
  • Ajuda on-line por meio do comando: help.
  • Grave macros em um registro que você possa executar.
  • Desfaça (e refaça) várias vezes, ao invés da velha alternância insana do vi.
  • Histórico da linha de comando, histórico de pesquisa.
  • Uma linguagem inteira incorporada junto com uma série de funções disponíveis, por exemplo, getcwd ()
  • Correspondência de padrões amplamente expandida.
  • Word completion via ctrl-P & ctrl-N.
  • Um navegador de arquivos integrado (um pouco desajeitado, mas pode ser útil).
  • A tecla ESC realmente encerra os comandos que você estava tentando, bem, escapar de vez de (insanamente) executá-los como vi.
  • Capacidade de executar comandos em todos os buffers, args ou windows via bufdo, argdo & windo.

Eu poderia continuar por muito mais tempo do que isso, o vim tem muitos recursos a mais do que o simples e antigo vi que realmente não há comparação.

PS - Para realmente usar o vi antigo simples, você teria que estar trabalhando em um sistema Unix legado, por exemplo, Solaris (desculpe pessoal, está indo assim). Você pode estar usando o vim quando acha que está usando o vi, já que a maioria das distribuições do Linux simplesmente mapeia o vi para o vim. Se: help works, ou vários undos trabalham, ou: version funciona, você está usando vim, não vi!

    
por 21.02.2018 / 07:05
0

Se por vi você quer dizer que o original vi , aquele estava um pouco quebrado, tinha toneladas de "comandos não documentados" (eu ainda me lembro com carinho de um longo documento dando aos indocumentados e meio ou mais) comandos quebrados, idiossincráticos, totalmente irregulares e, às vezes, salva vidas. O (s) idioma (s) de extensão para vim são muito mais poderosos. Basta olhar o significado do nome: * V * i * Im * provado, vim se declara como tendo o sinalizador vi para o futuro. A menos que você entre em cantos e recantos, ambos devem trabalhar da mesma maneira, com vim tendo a vantagem de continuar desenvolvendo.

    
por 05.02.2013 / 00:47
0

Para mim, o Vim mostra muito menos idiossincrasias do que o vi; por exemplo. para um comando c hange, o texto é removido e você insere texto em vez de um sinal $ colocado no final e substitui o texto até esse sinal. Ou desfazer multi-nível. Ou divisões de janelas e gerenciamento de buffer.

Depois, há a configurabilidade: com o vi, você pode ter alguns mapeamentos, alterar algumas opções. O Vim tem uma infinidade de plugins em vim.org , vem com muitas configurações de sintaxe e filetype e tem uma ótima comunidade.

Por último, sob o capô, tem-se o Vimscript com (desde a versão 7) tipos de dados poderosos e a possibilidade de usar uma variedade de linguagens de script alternativas como Python, Perl ou Ruby.

    
por 20.02.2013 / 14:04

Tags