linter vim emacs clojure

javascript linter vim



¿Ya vim es lo suficientemente bueno para programar clojure? (3)

¿Es emacs mejor para el desarrollo de clojure / lisp? Sí lo es. ¿Puedes prescindir de eso, por supuesto? Usé vim para el desarrollo de Clojure pero cambié a emacs hace un par de meses y estoy muy contento de haberlo hecho. Personalmente, creo que es una experiencia mucho mejor. Los plugins de vim probablemente hayan madurado un poco mientras tanto, pero vim tiene algunas limitaciones serias con respecto a los procesos externos y demás. Tenía algunos plugins de vim generales que realmente me encantaron pero afortunadamente todos tenían alternativas para emacs.

Un par de cosas que vale la pena mencionar:

  • Yo uso el modo Malvado. Como Tom mencionó, es una capa de emulación vim. Es extremadamente bueno No extraño nada de vim. Se admiten objetos de texto, todos los modos vim, etc. Personalmente, no recuerdo todas las combinaciones extrañas de emacs, me vuelven loco. Sin mal no estaría usando emacs. Creé combinaciones de teclas mal para paredit y algunos otros complementos y básicamente tienes vim con esteroides. Solo uso vim para ediciones rápidas ahora.

  • Personalizar Emacs fue la parte más difícil. Me encanta Emacs ahora, pero no sabría qué hacer sin mi configuración personalizada de Emacs. Una vez que ajusta todo a su gusto, es muy difícil volver a cualquier otra cosa. Sin embargo, me llevó mucho tiempo llegar a ese punto. Compruebe https://github.com/otijhuis/emacs para mi configuración personal de emacs si quiere probarlo. Todavía necesita un poco de trabajo y no soy un gurú de Emacs, pero funciona muy bien para el desarrollo de Clojure. Puede ser un buen punto de partida.

He usado vim durante bastante tiempo y todavía estoy contento con él. Empecé a aprender clojure hace 6 meses. Parece que emacs es la primera opción para la programación de lenguaje lispy. Pero preferiría aprender algo más que dedicar mucho tiempo a aprender a usar un editor que no es obviamente superior a vim.

Así que tuve problemas para hacer que mi configuración vim fuera más adecuada para la programación de clojure.

Lo que ahora estoy usando es:

  • vim-clojure-static, que proporciona resaltado de sintaxis básico
  • paredit, que proporciona edición estructural en s-expression
  • vim-fireplace, que puede hablar con una réplica remota dentro de vim

También uso vim-redl, redl para obtener una réplica de depuración, pero IMO los tres anteriores ya pueden proporcionar una experiencia de codificación bastante agradable.

Mi pregunta es, ¿sigo perdiendo algunas características desastrosas del flujo de trabajo de emacs?


La razón por la que a Lispers le gusta Emacs es que Emacs es una máquina de ceceo. Si ya está familiarizado con la familia de idiomas y sus tendencias, es realmente conveniente poder usarla para extender su editor.

Desde mi propio flujo de trabajo (ciertamente Common Lisp, en lugar de Clojure), me gusta tener autocompletar , sugerencias de argumento y el macroexpandidor SLIME. Estoy bastante seguro de que puedes obtener cada uno de estos para vim, así que no te preocupes demasiado por lo que todos los demás están usando.

Como nota, si aún no lo has hecho, mira en slimv y este artículo sobre cómo configurarlo con Clojure . No lo he usado yo mismo, no siendo un usuario vim, pero parece lo suficientemente cerca.


Me gustaría señalar el próximo vim-sexp , por el mantenedor de vim-clojure-static :

vim-sexp

Edición de precisión para expresiones simbólicas

Este complemento proporciona asignaciones, operadores y objetos de texto para Lisps, incluido Clojure.

Yo no uso Clojure por mi cuenta, así que no puedo asegurarlo, pero el plugin parece muy prometedor y está en desarrollo activo.