Saya baru mengenal JS & Vim. Plugin mana yang akan membantu saya menulis kode Javascript?
javascript
vim
Tarek Saied
sumber
sumber
Jawaban:
Pemeriksaan Sintaks / Linting
Ada cara yang sangat mudah untuk mengintegrasikan JSLint atau jshint.com berbasis komunitas (yang jauh lebih baik IMO) dengan Vim menggunakan plugin Syntastic Vim. Lihat posting saya yang lain untuk info lebih lanjut.
Penjelajahan Kode Sumber / Daftar tag
Ada juga cara yang sangat rapi untuk menambahkan tag-listing menggunakan Mozilla DoctorJS (sebelumnya jsctags ), yang juga digunakan di Cloud9 IDE 's Ace editor online .
apt-get
, rumahbrew
Mac , dll.):exuberant-ctags
ctags
benar-benar berjalanexuberant-ctags
dan bukan OS yang diinstal sebelumnyactags
. Anda dapat mengetahuinya dengan mengeksekusictags --version
.node
(Node.js)DoctorJS
dari github:git clone https://github.com/mozilla/doctorjs.git
DoctorJS
dir danmake install
(Anda juga harusmake
memasang aplikasi, tetapi ini sangat mendasar).make install
tidak melakukan trik untuk saat ini. Untuk saat ini saya hanya menambahkanbin/
dir repo ke $ PATH saya sebagai gantinya. Lihat GitHub DoctorJS dan halaman masalah untuk info lebih lanjut.Proyek Baru - Tern.js
DoctorJS saat ini sudah mati . Ada proyek yang menjanjikan baru yang disebut tern.js . Saat ini dalam versi beta awal, dan pada akhirnya harus menggantinya.
Ada ramitos proyek / jsctags yang menggunakan tiga barang sebagai mesinnya. Hanya
npm install -g
itu, dan tagbar akan secara otomatis menggunakannya untuk file javascript.sumber
git clone --recursive https://github.com/mozilla/doctorjs.git
dan kemudian membuat instal harus bekerjagit submodule init && git submodule update
. Kemudian lakukan langkah 3.brew install ctags-exuberant
snipMate mengemulasi ⇥sistem penyisipan TextMate dan dilengkapi dengan sekumpulan snipet JS yang berguna (antara lain) secara default. Sangat mudah untuk menambahkan milik Anda sendiri.
javaScriptLint memungkinkan Anda untuk memvalidasi kode Anda terhadap jsl.
Anda juga dapat menemukan berbagai file sintaksis JavaScript di vim.org. Cobalah dan lihat mana yang paling cocok untuk Anda dan gaya pengkodean Anda.
Omnicomplete asli ( ctrlx- ctrlo) bekerja sangat baik untuk saya. Anda dapat membuatnya lebih dinamis dengan autoComplPop , tetapi kadang-kadang bisa mengganggu.
sunting, sebagai tanggapan atas komentar tarek11011:
acp tidak berfungsi untuk JavaScript secara default, Anda harus mengubah sedikit. Inilah cara saya melakukannya (hack kotor, saya masih seorang Vim noob):
Dalam vim-autocomplpop / plugin / acp.vim saya telah menambahkan
php
danjavascript
(danactionscript
)behavs
sehingga terlihat seperti itu:Sedikit di bawah, ada serangkaian blok kode yang terlihat seperti itu:
Saya telah menggandakan yang ini dan sedikit mengeditnya agar terlihat seperti itu:
dan melakukan hal yang sama untuk script dan php.
Jika Anda ingin mengedit JS / CSS dalam dokumen HTML yang dapat Anda lakukan: set ft = html.css.javascript di baris perintah Vim untuk membuat ctrlx- ctrlobekerja seperti yang diharapkan pada metode / properti nama dalam blok JS dan properti / nilai dalam blok CSS. Namun pendekatan ini juga memiliki kelemahan (lekukan aneh ...).
sumber
This plugin is also useful: https://github.com/maksimr/vim-jsbeautify. It provides full autoformatting for javascript. One keystroke, and your code looks beautiful. It can come in handy when pasting code snippets as well. It makes use of the popular js-beautifier, which can also be found as an online application. The latter can be found right here: http://jsbeautifier.org/.
sumber
I only use one js specific vim plugin - jslint.vim - https://github.com/hallettj/jslint.vim which validates your code with jslints rules and gives you syntax errors as well.
sumber
To fix indentation and autoformatting (Ctrl =): JavaScript Indent
To set indentation width, add
javascript.vim
file into ~/.vim/ftplugin dir with following contents (for two space indentation):sumber
~/.vimrc
:autocmd FileType javascript setlocal sw=2 ts=2 sts=2