Pergunta

Eu tenho usado Lisp e fora por um tempo, mas eu estou começando a ficar mais sério sobre fazer algum trabalho "real" em Lisp. Eu sou um grande fã Vim e queria saber como eu posso ser mais produtivo usando Vim como meu editor para o desenvolvimento Lisp. Plugins, sugestões de fluxo de trabalho, etc, são todos bem-vindos.

Por favor, não diga "uso emacs" como já ramp up no Vim e estou realmente gostando como um editor.

Foi útil?

Solução

Limp pretende ser caracterizado inteiramente Lisp IDE Comum para Vim. O padrão é SBCL, mas pode ser alterado para suportar a maioria das outras implementações, substituindo "sbcl" para a sua língua presa favorita, no arquivo /usr/local/limp/latest/bin/lisp.sh

Ao discutir Lisp nestes dias, presume-se comumente a ser Common Lisp, a linguagem padronizada pela ANSI X3J13 (ver o HyperSpec , e Prático Lisp comum para um bom livro) com implementações como GNU clisp, SBCL, cmucl, AllegroCL , e muitos outros.

Voltar para Limp. Existem outras soluções que são mais leves, ou tentar fazer outras coisas, mas eu acredito em proporcionar um ambiente que lhe dá coisas como correspondência de suporte, destacando, pesquisa de documentação, ou seja, tornando-se uma solução turn-key, tanto quanto possível .

Na o repositório Limp você vai encontrar alguns dos trabalhos anteriores do projeto SlimVim, ou seja, a ECL de interface (Embeddable Common Lisp), fundiu-se com versões posteriores (7.1); Simon também fez patches para 7.2 disponível ainda a serem incorporadas. A interface ECL está documentado no if_ecl.txt .

trabalho de curto prazo é fazer disse fusão com 7,2 e apresentar um patch para vim_dev para obtê-lo incorporada pela árvore oficial Vim.

O que nos leva aos planos de longo prazo: ter Lisp diretamente no Vim irá torná-lo conveniente para começar a trabalhar em um front-end SWANK (a parte do lodo que é executado em sua Lisp, com slime.el sendo a parte que é executado no editor -. frontend)

E em algum lugar no meio, é provável que todos os Limp será reescrito em Common Lisp usando a interface ECL, tornando Limp mais fácil de manter (VimScript não é o meu favorito) e ser mais fácil para os usuários personalizarem.

O local Limp oficial vai para baixo de vez em quando, mas como fora pontas, o < a href = "http://www.vim.org/scripts/script.php?script_id=2219" rel = "noreferrer"> download no Vim.org deve sempre trabalhar, e os grupos de apoio flácido-devel e flácido pelo usuário são hospedados com os Grupos do Google. Não hesite em se juntar, se você sente que precisa de uma pergunta respondida, ou talvez até querer participar em desenvolvimento. A maior parte da discussão tem lugar na lista flácido-devel. Se você estiver em IRC, eu estou em #limp em irc.freenode.net como 'tic'.

Boa sorte!

Outras dicas

Você poderia dar slimv uma pausa.

Aqui está um diagrama legal por Xach que resume a situação atual.

diagrama explicando que há quase nenhum usuário VIM que são também programadores Lisp e também pode cortá-lo para torná-lo um bom Lisp IDE ... péssimo texto alternativo :)

SLIME para o Emacs é uma ferramenta maravilhosa para a programação LISP. A melhor parte é o envio de código escrito em seu editor direto para uma sessão de LISP ao vivo. Você pode obter um comportamento semelhante fora do Vim usando as dicas aqui:

http://technotales.wordpress.com/2007 / 10/03 / like-lodo-for-vim /

Eu ajustei meu próprio script para que eu possa enviar a qualquer um SBCL ou Clojure sessão. Isso faz você muito mais produtivo e aproveita o REPL.

": conjunto lisp" inicia o modo de recuo lisp para Vim. Mas isso não vai trabalhar com alguns dialetos como Clojure. Para Clojure, use VimClojure .

Algumas pessoas gostam LIMP também.

: set lisp

Vim tem um modo para ajudá-lo recuar seu código para os padrões Lisp.

Além disso, eu modificar as lispwords mudar a forma como vim recua meu código.

: SETL lw- = if (em ~ / .vim / ftplugin / lisp.vim)

  • Vim add-ons: Arco-íris Parênteses, Lisp sintaxe
  • SBCL add-ons: rlwrap, sb-aclrepl
  • Fluxo de Trabalho:. Ion3 (ou algum outro WM azulejos) com múltiplas janelas de terminal

    • Editar Lisp no Vim
    • Alterne para a janela Lisp (usando o teclado é claro)
    • Use C-r de recordar a linha para recarregar o sistema ASDF em questão para as alterações tornam-se ativos.
    • copiar Use X Window / colar para pequenos trechos / alterações.
    • Use DESCREVER, TRACE e APROPOS pesadamente.
    • Repetir.

Você pode dar Emacs com Vim emulação de uma tentativa, não é perfeito, mas pode ser um pouco familiar. Eu acho que Lisp brilha se você usar algo como Slime ou DrScheme fazendo desenvolvimento iterativo, todos os outros editores sentem simplesmente errado.

Aqui estamos 9 anos mais tarde, e agora temos Vim 8 e Neovim, ambos fornecendo a capacidade de interagir com plugins de forma assíncrona.

vlime é um excelente plug-in rica em recursos que tira proveito da nova interface assíncrona para fornecer um SLIME-like ambiente dev para Lisp comum.

Eu sei que você disse para não dizer-lhe para usar Emacs.

Use Emacs.

Sério, o SLIME configuração para Emacs é muito bonito o plataforma de desenvolvimento padrão para Lisp, e por muito boas razões.

Não parece ter havido tentativas de ter um SLIME-like integração do Lisp no Vim, mas nenhum deles realmente ido tão longe quanto necessário para ser realmente útil. Eu acho que a integração de ECL foi feito, embora, mas não a montante comprometido.

Você deve encontrar todos os links relevantes de de Cliki sobre Vim .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top