Saya telah menggunakan dan menonaktifkan Lisp untuk sementara waktu, tetapi saya mulai menjadi lebih serius untuk melakukan pekerjaan "nyata" di Lisp. Saya adalah penggemar berat Vim dan bertanya-tanya bagaimana saya bisa menjadi paling produktif menggunakan Vim sebagai editor saya untuk pengembangan Lisp. Plugin, saran alur kerja, dll. Semuanya diterima.
Tolong jangan katakan "gunakan emacs" karena saya telah menggunakan Vim dan saya sangat menikmatinya sebagai editor.
vim
ide
lisp
common-lisp
Drew Olson
sumber
sumber
Jawaban:
Limp bertujuan untuk menjadi Common Lisp IDE untuk Vim dengan fitur lengkap. Ini default ke SBCL, tetapi dapat diubah untuk mendukung sebagian besar implementasi lain dengan mengganti "sbcl" untuk cadel favorit Anda, di file /usr/local/limp/latest/bin/lisp.sh
Saat membahas Lisp hari ini, umumnya diasumsikan sebagai Common Lisp, bahasa yang distandarisasi oleh ANSI X3J13 (lihat HyperSpec , dan Practical Common Lisp untuk buku teks yang baik) dengan implementasi seperti GNU Clisp, SBCL, CMUCL, AllegroCL, dan banyak lagi. orang lain.
Kembali ke Limp. Ada solusi lain yang lebih ringan, atau mencoba melakukan hal lain, tetapi saya percaya dalam menyediakan lingkungan yang memberi Anda hal-hal seperti pencocokan braket, penyorotan, pencarian dokumentasi, yaitu menjadikannya solusi turn-key sebanyak mungkin .
Di repositori Limp Anda akan menemukan beberapa pekerjaan proyek SlimVim sebelumnya, yaitu antarmuka ECL (Embeddable Common Lisp), digabungkan dengan rilis yang lebih baru (7.1); Simon juga telah menyediakan tambalan ke 7,2 yang belum digabungkan. Antarmuka ECL didokumentasikan dalam if_ecl.txt .
Pekerjaan jangka pendek adalah melakukan penggabungan tersebut dengan 7.2 dan mengirimkan tambalan ke vim_dev untuk menggabungkannya ke dalam pohon Vim resmi.
Yang membawa kita ke rencana jangka panjang: memiliki Lisp langsung di Vim akan membuatnya nyaman untuk mulai bekerja di front-end SWANK (bagian dari SLIME yang berjalan di Lisp Anda, dengan slime.el menjadi bagian yang berjalan di editor - bagian depan).
Dan di suatu tempat di antaranya, kemungkinan semua Limp akan ditulis ulang di Common Lisp menggunakan antarmuka ECL, membuat Limp lebih mudah dipelihara (VimScript bukan favorit saya) dan lebih mudah bagi pengguna untuk menyesuaikan.
Situs resmi Limp turun dari waktu ke waktu, tetapi seperti yang ditunjukkan, unduhan di Vim.org harus selalu berfungsi, dan grup dukungan limp-devel dan limp-user dihosting dengan Google Grup. Jangan ragu untuk bergabung jika Anda merasa perlu menjawab pertanyaan, atau mungkin ingin bergabung dalam pengembangan. Sebagian besar pembahasan berlangsung pada daftar pincang-devel. Jika Anda menyukai IRC, saya berada di #limp di irc.freenode.net sebagai 'tic'.
Semoga berhasil!
sumber
Anda mungkin memberi sedikit istirahat.
sumber
Berikut diagram keren dari Xach yang merangkum situasi saat ini.
sumber
Lihat plugin Limp:
http://www.vim.org/scripts/script.php?script_id=2219
sumber
SLIME untuk EMACS adalah alat yang luar biasa untuk pemrograman LISP. Bagian terbaiknya adalah mengirimkan kode yang ditulis di editor Anda langsung ke sesi LISP langsung. Anda bisa mendapatkan perilaku serupa dari Vim menggunakan tip di sini:
http://technotales.wordpress.com/2007/10/03/like-slime-for-vim/
Saya menyesuaikan skrip saya sendiri sehingga saya dapat mengirim ke sesi SBCL atau Clojure . Itu membuat Anda jauh lebih produktif dan memanfaatkan REPL.
": set cadel" memulai mode indentasi cadel untuk Vim. Tapi itu tidak akan berhasil dengan beberapa dialek seperti Clojure. Untuk Clojure, gunakan VimClojure .
Beberapa orang juga menyukai LIMP .
sumber
Di sini kita 9 tahun kemudian, dan sekarang kita memiliki Vim 8 dan Neovim, keduanya menyediakan kemampuan untuk berinteraksi dengan plugin secara asynchronous.
vlime adalah plugin kaya fitur yang luar biasa yang memanfaatkan antarmuka async baru untuk menyediakan lingkungan dev seperti SLIME untuk Common Lisp.
sumber
Alur Kerja: Ion3 (atau WM ubin lainnya) dengan beberapa jendela terminal.
sumber
: setel cadel
Vim memiliki mode untuk membantu Anda memasukkan kode Anda dengan standar Lisp.
Juga, saya memodifikasi lispwords untuk mengubah bagaimana vim mengindentasi kode saya.
: setl lw- = if (dalam ~ / .vim / ftplugin / lisp.vim)
sumber
Anda dapat mencoba Emacs dengan emulasi Vim, tidak sempurna, tetapi mungkin agak familier. Saya pikir Lisp bersinar jika Anda menggunakan sesuatu seperti Slime atau DrScheme melakukan pengembangan berulang, semua editor lain merasa salah.
sumber
Tampaknya ada upaya untuk memiliki integrasi Lisp seperti SLIME di Vim, tetapi tidak ada yang benar-benar sejauh yang diperlukan untuk benar-benar berguna. Saya pikir integrasi ECL telah dilakukan, tetapi tidak dilakukan di hulu.
Anda harus menemukan semua link yang relevan dari halaman Cliki tentang Vim .
sumber
Aku tahu kamu mengatakan untuk tidak menyuruhmu menggunakan Emacs.
Gunakan Emacs.
Serius, lendir setup untuk Emacs cukup banyak yang platform pengembangan standar untuk Lisp, dan untuk alasan yang sangat baik.
sumber