はじめに
この記事はVimmerな人たちのためのCommonLisp環境構築(slimv編)のvlime編です。
今回はNeovim+vlimeな環境をLinux上で構築してみます。
Windowsでの環境構築方法を追記しました
前提とする環境
- OS : Ubuntu 18.04 64bit
インストール手順
Gitのインストール
sudo apt install git
Lisp処理系のインストール
sudo apt install sbcl
Neovimのインストール
sudo apt install neovim
Windowsの場合
ここからバイナリをダウンロードします。
https://github.com/neovim/neovim/releases/tag/v0.4.4
vim-plugとvlimeのインストール
今回はプラグインマネージャとしてvim-plugを使ってみます。
個人的にはインストールの簡単さとシンプルさがイイです。
インストール手順にしたがってインストールします。
curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
設定ファイルにvim-plugとvlimeを利用するための設定を追加します。
:e ~/.config/nvim/init.vim
以下を追記します。
call plug#begin('~/.vim/plugged')
" vlime
Plug 'l04m33/vlime', {'rtp' : 'vim/'}
" Paredit ※必須ではないけどおススメ、括弧の対応とってくれたりする
" Plug 'vim-scripts/paredit.vim'
call plug#end()
Neovimを再起動して以下を実行することでvlimeがインストールされます。
:PlugInstall
Windowsの場合
スクリプトをここからダウンロードして、%LOCALAPPDATA%\nvim\autoload\plug.vim
に置きます。
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
設定ファイルにvim-plugとvlimeを利用するための設定を追加します。
Windowsの場合は設定ファイルは%LOCALAPPDATA%\nvim\init.vim
に作成します。
以下を追記します。
call plug#begin('~/.vim/plugged')
" vlime
Plug 'l04m33/vlime', {'rtp' : 'vim/'}
" Paredit ※必須ではないけどおススメ、括弧の対応とってくれたりする
" Plug 'vim-scripts/paredit.vim'
call plug#end()
Neovimを再起動して以下を実行することでvlimeがインストールされます。
:PlugInstall
vlimeを使う
vlimeではslimvと異なり、サーバを別途立ち上げてそこにNeovimから接続しに行きます。
Neovimの外でサーバを立ち上げる操作が必要です。
サーバを立ち上げます。
cd ~/.vim/plugged/vlime/lisp
sbcl --load start-vlime.lisp
追記2020/9/25:
Windows版では事前に立ち上げなくても\\rr
したときに自動で立ち上がりました
Linux版は試していないのでわかりません
こんなかんじの表示がでたらOK
* <INFO> [16:01:45] vlime-usocket - Server created: (#(127 0 0 1) 7002)
Neovimを立ち上げて適当な.lispファイルを開きます。
:e ~/test.lisp
\rr
でREPLに接続できます。
適当にS式を書いて。。。
(defun hello (name)
(format t "Hello ~A!" name))
(hello "kedama")
\\oe
でカーソル下のS式をコンパイルします。
--
; compiling (DEFUN HELLO ...)--
\\se
でカーソル下のS式を評価します。
Hello kedama!
NIL
基本的な使い方まとめ
-
\\rr
: REPLに接続する -
\\ss
: カーソル下のS式またはアトムを評価する -
\\se
: カーソル下のS式を評価する -
\\sa
: カーソル下のアトムを評価する -
\\oe
: カーソル下のフォームををコンパイルする -
\\rs
: サーバを停止する。
詳細は:help vlime
を参照してください。