Soy nuevo en JS y Vim. ¿Qué complementos me ayudarían a escribir código Javascript?
Soy nuevo en JS y Vim. ¿Qué complementos me ayudarían a escribir código Javascript?
Respuestas:
Hay una manera muy fácil de integrar JSLint o el jshint.com impulsado por la comunidad (que es mucho mejor IMO) con Vim usando el complemento Syntastic Vim. Vea mi otra publicación para más información.
Hay también una manera muy ordenada para agregar la etiqueta-lista de Mozilla usando DoctorJS (anteriormente jsctags ), que también se utiliza en Cloud9 IDE 's editor en línea Ace .
apt-get, la casabrew de Mac , etc.):
exuberant-ctags
ctagsrealmente se ejecute exuberant-ctagsy no el SO preinstalado ctags. Puedes averiguarlo ejecutando ctags --version.node (Node.js)DoctorJSde github:git clone https://github.com/mozilla/doctorjs.gitDoctorJSdirectorio y make install(también necesitará la makeaplicación instalada, pero esto es muy básico).
make installno funciona por el momento. Por ahora solo agrego el bin/directorio del repositorio a mi $ PATH en su lugar. Consulte las páginas de problemas y GitHub de DoctorJS para obtener más información.DoctorJS está actualmente muerto . Hay un nuevo proyecto prometedor llamado tern.js . Actualmente está en versión beta temprana, y eventualmente debería reemplazarlo.
Hay un proyecto ramitos / jsctags que utiliza tern como motor. Solo npm install -geso, y tagbar lo usará automáticamente para archivos javascript.
git clone --recursive https://github.com/mozilla/doctorjs.gity luego hacer que la instalación funcione
git submodule init && git submodule update. Luego haz el paso 3.
brew install ctags-exuberant
snipMate emula el ⇥sistema de inserción de TextMate y viene con un montón de fragmentos útiles de JS (entre otros) por defecto. Es extremadamente fácil agregar el tuyo.
javaScriptLint le permite validar su código contra jsl.
También puede encontrar una variedad de archivos de sintaxis de JavaScript en vim.org. Pruébelos y vea cuál funciona mejor para usted y su estilo de codificación.
El omnicompleto nativo ( ctrlx- ctrlo) funciona muy bien para mí. Puede hacerlo más dinámico con autoComplPop , pero a veces puede ser molesto.
editar, en respuesta al comentario de tarek11011:
acp no funciona para JavaScript por defecto, tienes que modificarlo un poco. Así es como lo hice (truco sucio, todavía soy un novato de Vim):
En vim-autocomplpop / plugin / acp.vim he agregado phpy javascript(y actionscript) para behavsque se vea así:
let behavs = {
\ '*' : [],
\ 'ruby' : [],
\ 'python' : [],
\ 'perl' : [],
\ 'xml' : [],
\ 'html' : [],
\ 'xhtml' : [],
\ 'css' : [],
\ 'javascript' : [],
\ 'actionscript' : [],
\ 'php' : [],
\ }
Un poco más abajo, hay una serie de bloques de código que se ven así:
"---------------------------------------------------------------------------
call add(behavs.ruby, {
\ 'command' : "\<C-x>\<C-o>",
\ 'meets' : 'acp#meetsForRubyOmni',
\ 'repeat' : 0,
\ })
He duplicado este y lo edité un poco para que se vea así:
"---------------------------------------------------------------------------
call add(behavs.javascript, {
\ 'command' : "\<C-x>\<C-o>",
\ 'meets' : 'acp#meetsForRubyOmni',
\ 'repeat' : 0,
\ })
e hizo lo mismo para actionscript y php.
Si desea editar JS / CSS dentro de un documento HTML que puede hacer: juego de pies = html.css.javascript en la línea de comandos de Vim para hacer ctrlx- ctrloel trabajo como se esperaba en el método / propiedades nombres en JS bloques y propiedades / valores en bloques CSS. Sin embargo, este enfoque también tiene sus inconvenientes (sangría extraña ...).
Este complemento también es útil: https://github.com/maksimr/vim-jsbeautify . Proporciona formato automático completo para javascript. Una pulsación de tecla y su código se ve hermoso. También puede ser útil al pegar fragmentos de código. Utiliza el popular js-beautifier, que también se puede encontrar como una aplicación en línea. Este último se puede encontrar aquí: http://jsbeautifier.org/ .
Solo uso un plugin vim específico de js: jslint.vim - https://github.com/hallettj/jslint.vim que valida su código con las reglas de jslints y también le da errores de sintaxis.
Para corregir la sangría y el autoformato (Ctrl =): sangría de JavaScript
Para establecer el ancho de sangría, agregue javascript.vim archivo en ~ / .vim / ftplugin dir con los siguientes contenidos (para sangría de dos espacios):
setl sw=2 sts=2 et
~/.vimrc:autocmd FileType javascript setlocal sw=2 ts=2 sts=2