Melhor GUI para vim?

15

Gosto de usar o vim, seus infinitos recursos e a maneira como faz as coisas (na maior parte). Eu o uso dentro e fora (não como meu editor principal) há pelo menos sete anos, então, enquanto estou longe de ser um especialista, geralmente sei o que fazer.

Agora, enquanto eu amo isso na linha de comando, eu realmente gostaria que fosse meu editor principal nas GUIs do Windows e Linux. Mas ... gvim ... é horrível . Ele quebra tantas "regras" de usabilidade no Windows que nem vale a pena lutar com ela. Nem o Cream , com suas alterações e fantasia .vimrc, salva o dia.

Então, minha pergunta é: existe uma GUI vim moderna para Windows e Linux que faz com que ela pareça e se comporte como a maioria dos editores de GUI? Ter Sublime Text, Kate, TextMate ou a GUI da Editra com os recursos do vim seria incrível. Sei que todos os quatro (assim como muitos outros editores) têm plugins que tipo de torna-los se comportam como vim, mas isso não chega nem perto (pelo menos para Editra e Sublime texto, não tenho certeza para os outros) o verdadeiro vim.

Sendo o Vim open source, não tenho muita certeza de por que ainda não houve uma revisão completa da GUI. As pessoas não usam gvim?

imiric
fonte
15
Pessoalmente, eu uso o gVim no Windows exatamente porque ele se comporta da mesma maneira que o console / terminal vimno Unixes.
user1686
1
Seria útil conhecer alguns detalhes das regras de usabilidade com as quais você considera o gVim particularmente culpado.
RedGrittyBrick
2
OK, aqui está um: a seleção de algum texto no modo visual e a rolagem na verdade modificam a seleção. Entendo que isso acontece porque o cursor sempre precisa permanecer visível e ajuda a usar o comando 'o' no modo visual, mas isso é tão contra-intuitivo quanto os aplicativos GUI padrão. Vejo muitas pessoas usarem o gVim apenas porque ele se comporta como o Vim, mas por que simplesmente não usar o console Vim? É muito fácil configurar um ambiente Linux no Windows e / ou usar um bom terminal como o mintty.
imiric
2
Em vez de "configurar um ambiente Linux no Windows", por que não usar o gVim? Nenhuma configuração é necessária.
user1686
Aqui está mais uma discussão interessante sobre ter uma GUI moderna para Vim: groups.google.com/group/vim_use/browse_thread/thread/...
imiric

Respostas:

12

O vim foi projetado para usar o teclado com eficiência, não para usar o mouse. portanto, acho sua reclamação sobre um "gui" ruim um pouco estranha. se você não gosta do vim ou não quer aprender como as coisas são feitas no vim, tudo bem. mas é necessário usar outro editor porque o vim simplesmente não corresponde aos seus requisitos.

então, duvido que exista alguma versão gui do vim que corresponda às suas expectativas sobre como um editor "gráfico" decente deve ser ou se comportar.

akira
fonte
3
ou você apenas aprender 100% vim e ser feito com o editor de problemas até o final do tempo :)
akira
3
Existem / existem / razões para usar o gVim em vez do Vim em apenas um console. Dois exemplos: 1) Existem meta combinações que o Vim não pode ver, exceto na GUI, devido a limitações nos emuladores de terminal e nas bibliotecas de manipulação de terminal. 2) Suporte a cores significativamente mais extenso. Além disso, acho que é extremamente injusto esperar que o Vim se comporte de repente como todos os outros aplicativos de GUI, apenas porque tem uma GUI. O Vim provavelmente sempre terá que violar as "regras" de usabilidade, ou não seria mais o Vim. Se não é isso que você deseja, devo reiterar outras pessoas: encontre um editor diferente.
Heptite 11/09/11
5
@imric: Quando digo que "não seria mais o Vim", na verdade quero dizer que não pode mais ser o Vim e "estar em conformidade" no modo GUI. O Vim é um clone vi aprimorado e o vi existia literalmente antes da existência de GUIs. Ele tem uma interface muito original, e sim, que faz conflito com as diretrizes de usabilidade GUI atuais. Para obter (tudo) o que você deseja, você está solicitando um editor que realmente, verdadeiramente, não se comporte da maneira que o vi / Vim pretende funcionar. Uma regra que Bram Moolenar (o criador e proprietário dos direitos autorais do Vim) tem para o Vim é, tanto quanto possível, o console e a GUI Vim devem se comportar da mesma forma.
Heptite 11/09/11
3
@ imric: por que você deseja usar o vim, se não por sua interface de usuário "arrogante e injusta"? quer dizer, é vim .. você usa porque faz o trabalho do jeito que faz, o mesmo para o emacs. como eu já disse: se a ferramenta entrar em conflito com o que você deseja: use uma ferramenta diferente.
akira
2
Pessoalmente, meu GVim está configurado para se parecer exatamente com o meu Vim, então não tenho menus, barras de rolagem, mesmas fontes / cores ... A única razão pela qual às vezes estou usando o GVim em vez do Vim é quando estou usando o mouse e o volante percorre livremente alguns arquivos (quando estou tomando café ou cerveja, por exemplo). Isso não acontece muito, mas ainda assim, às vezes. Não consigo imaginar por que alguém iria querer um Vim que não se comporte como o Vim. Melhor usar outro editor que foi projetado com a GUI em mente.
precisa saber é
7

Eu concordo com as respostas e comentários de Akira.

A única GUI amigável para convenções do Vim é o MacVim, que, obviamente, é um aplicativo somente para Mac.

Não tenho certeza se é "o melhor dos dois mundos", mas a versão beta mais recente do Sublime Text 2 possui um modo "vintage" muito impressionante, que abrange muitos recursos úteis do Vim (movimentos, objetos de texto) e mapeia outras coisas ( /ou ?por exemplo) aos seus recursos nativos. Acho seu design geral um pouco irritante, então não me vejo mudando para ele tão cedo, mas, novamente, o modo vintage é impressionante.

romainl
fonte
1
Certo, o MacVim parece ter uma GUI Vim muito melhor. Mas, pelo que entendi, era necessário um pouco de trabalho para torná-lo perfeito no OS X, e o gVim é uma monstruosidade de décadas que praticamente não recebe atualizações. Eu tentei o modo Vim do Sublime Text e, embora implemente muitos dos comandos de movimento e inserção, ele ainda fica aquém.
imiric
No MacOS X, UIs boas e coerentes são de suma importância, enquanto ninguém se importa com isso no Linux e Windows. É por isso que importava para as pessoas por trás do MacVim e elas passaram pelo trabalho árduo necessário. Mas a tarefa provavelmente não foi tão complicada por causa das diretrizes / tradições / usos estabelecidos e de como elas são aplicadas por meio das ferramentas oficiais de desenvolvimento. Nesta desktop Linux, meus aplicativos ter pelo menos 2 maneiras para nomear o menu principal ( "File" ou alguma palavra relacionada com a função do aplicativo) e pelo menos 4 atalhos para "Quit" / "Close Window" ( <C-q>, <S-C-q>, <C-w>, :q...) . Eu sei ...
romainl 14/09/11
… Em primeira mão, é basicamente o mesmo no Windows. Eu acho que é difícil ter uma experiência polida e bem integrada em um ambiente tão confuso sem algum tipo de incentivo monetário ou liderança autoritária. OK, desculpe pelo discurso retórico, de volta à programação regular.
romainl
2

Você pode obter um plug-in para um IDE que fornece combinações de teclas VIM. POR EXEMPLO

Aqui está um IDE da web muito legal para desenvolvedores da web, que inclui o git, que possui o modo de ligação de teclas do VIM incorporado:

Caso contrário, faço meu desenvolvimento em um mac e sou um grande fã do MacVim, e concordo que o gVim é super feio no * nix e me encolho sempre que preciso executar o vim em um shell ssh no servidor.

No que diz respeito ao VIM, como editores que não são um IDE separado, outro aplicativo GUI (somente para Mac, desculpe) é:

Thomas Hunter
fonte
Obrigado por suas sugestões, mas decidi manter o console do Vim para todas as minhas necessidades de desenvolvimento, em vez de lutar com o gVim. Eu já tenho meu shell aberto o tempo todo, só tenho outra janela do tmux executando o Vim, e isso faz com que alternar entre o editor e o shell seja muito rápido e conveniente. Além disso, nenhuma regra de usabilidade está sendo quebrada no console. :-) Estou pensando em mudar para o Mac em breve e experimentarei o MacVim.
imiric
2

Você pode usar o Código VisualStudio e tem vários plugins que adicionam muitas das funcionalidades do Vim ao lado com muitas guloseimas. É um editor muito bom, além de ser aberto e gratuito e possui sabores do Windows, MacOs e Linux.

Marco Santana
fonte
1
Se você é um fanboy do hard core do Vim, provavelmente não encontrará nenhum dos plugins do VS Code Vim satisfatórios.
1

Se você usa a tecnologia de acesso como um leitor de tela e deseja poder do vim, experimente o meu projeto: https://code.google.com/p/phonim/, ele usa scripts JAWS e a interface gVim OLE. Embora exequível, deixa muito a desejar, mas mesmo esse acesso limitado ao poder do vim vale a pena.

Para melhorar a situação do gVim, tudo o que é necessário é que alguém com o conhecimento adequado dote o back-end do vim com um front end moderno da interface do usuário com um componente de editor que tenha suporte UIAutomation e MSAA adequado.

Kerneels Roos
fonte
Não tem problema, editei. Sim, um pouco de discurso retórico, mas veja bem, eu amo o vim e realmente gostaria que mais pessoas se beneficiassem com ele :-).
Kerneels Roos
1

O Vim deve ser usado sem GUI. Mas se você estiver preocupado com a barra de menus e a barra de ferramentas no gvim que parece fora de lugar. Você pode desativá-lo, basta inserir

"Remove Menubar and Toolbar
set guioptions -=m 
set guioptions -=T

em seu vimrc então ele se foi. no bônus, se você estiver usando janelas inferiores a 10, seu gvim será redimensionado melhor (que o padrão cmd do windows) e possui um melhor suporte ao esquema de cores e uma boa aparência.

user93
fonte
1

Talvez algo como Oni seja o que você está procurando. Eu não o usei pessoalmente, mas é baseado no neovim ; portanto, você não deve ter um conjunto de recursos pela metade.

vimista
fonte