Eu sou novo no JS & Vim. Quais plugins me ajudariam a escrever código Javascript?
Eu sou novo no JS & Vim. Quais plugins me ajudariam a escrever código Javascript?
Respostas:
Existe uma maneira muito fácil de integrar o JSLint ou o jshint.com orientado pela comunidade (que é muito melhor IMO) com o Vim usando o plug-in Syntastic Vim. Veja meu outro post para mais informações.
Há também uma maneira muito elegante para adicionar tag de listagem usando da Mozilla DoctorJS (anteriormente jsctags ), que também é usado em Cloud9 IDE 's editor on-line Ace .
apt-get
, casabrew
de Mac , etc.):
exuberant-ctags
ctags
realmente é executada exuberant-ctags
e não o sistema operacional pré-instalado ctags
. Você pode descobrir executando ctags --version
.node
(Node.js)DoctorJS
do github:git clone https://github.com/mozilla/doctorjs.git
DoctorJS
dir e make install
(você também precisará do make
aplicativo instalado, mas isso é muito básico).
make install
mas não funcionam por enquanto. Por enquanto, basta adicionar o bin/
diretório do repositório ao meu $ PATH. Consulte o GitHub do DoctorJS e publica páginas para obter mais informações.DoctorJS está atualmente morto . Há um projeto novo e promissor chamado tern.js . Atualmente, está no beta inicial e deve substituí-lo.
Existe um projeto ramitos / jsctags que usa a andorinha-do-mar como seu mecanismo. Apenas npm install -g
isso, e o tagbar o usará automaticamente para arquivos javascript.
git submodule init && git submodule update
. Em seguida, execute o passo 3.
brew install ctags-exuberant
snipMate emula o ⇥sistema de inserção do TextMate e vem com um monte de snippets JS úteis (entre outros) por padrão. É extremamente fácil adicionar o seu próprio.
O javaScriptLint permite validar seu código em relação ao jsl.
Além disso, você pode encontrar uma variedade de arquivos de sintaxe JavaScript em vim.org. Experimente e veja qual funciona melhor para você e seu estilo de codificação.
O omnicomplete nativo ( ctrlx- ctrlo) funciona muito bem para mim. Você pode torná-lo mais dinâmico com o autoComplPop , mas às vezes pode ser irritante.
editar, em resposta ao comentário de tarek11011:
O acp não funciona para JavaScript por padrão, você precisa ajustá-lo um pouco. Aqui está como eu fiz isso (truque sujo, eu ainda sou um Vim noob):
No vim-autocomplpop / plugin / acp.vim eu adicionei php
e javascript
(e actionscript
) para behavs
que fique assim:
let behavs = {
\ '*' : [],
\ 'ruby' : [],
\ 'python' : [],
\ 'perl' : [],
\ 'xml' : [],
\ 'html' : [],
\ 'xhtml' : [],
\ 'css' : [],
\ 'javascript' : [],
\ 'actionscript' : [],
\ 'php' : [],
\ }
Um pouco abaixo, há uma série de blocos de código que se parecem com isso:
"---------------------------------------------------------------------------
call add(behavs.ruby, {
\ 'command' : "\<C-x>\<C-o>",
\ 'meets' : 'acp#meetsForRubyOmni',
\ 'repeat' : 0,
\ })
Dupliquei este e editei um pouco para ficar assim:
"---------------------------------------------------------------------------
call add(behavs.javascript, {
\ 'command' : "\<C-x>\<C-o>",
\ 'meets' : 'acp#meetsForRubyOmni',
\ 'repeat' : 0,
\ })
e fez o mesmo para actionscript e php.
Se você deseja editar JS / CSS em um documento HTML, é possível: defina ft = html.css.javascript na linha de comando do Vim para make ctrlx- ctrlofuncione conforme o esperado nos nomes de métodos / propriedades nos blocos JS e propriedades / valores nos blocos CSS. No entanto, essa abordagem também tem suas desvantagens (indentação estranha ...).
Este plugin também é útil: https://github.com/maksimr/vim-jsbeautify . Ele fornece formatação automática completa para javascript. Um toque de tecla e seu código parece bonito. Pode ser útil ao colar trechos de código também. Ele utiliza o popular js-beautifier, que também pode ser encontrado como um aplicativo online. O último pode ser encontrado aqui: http://jsbeautifier.org/ .
Eu uso apenas um plug-in vim específico para js - jslint.vim - https://github.com/hallettj/jslint.vim, que valida seu código com regras jslints e fornece erros de sintaxe também.
Para corrigir o recuo e a formatação automática (Ctrl =): Recuo do JavaScript
Para definir a largura do recuo, adicione o javascript.vim
arquivo em ~ / .vim / ftplugin dir com o seguinte conteúdo (para recuo de dois espaços):
setl sw=2 sts=2 et
~/.vimrc
:autocmd FileType javascript setlocal sw=2 ts=2 sts=2