julia-vim に送った PR が取り込まれました

ちょっと前の話になりますが、 julia のドキュメントを vim 内に表示するための機能を追加する PR を julia-vim プラグインに送りました。

github.com

machakann.hatenablog.com

これが、ついに merge されてうれしいって話です。

使い方

まずは

julia-vim をインストールしましょう。お好きなプラグインマネージャを使うといいと思います。

カーソル下の関数・マクロを調べる

julia のソースコードを開きます。知りたい関数・マクロ名の上にカーソルを置いて、K キー (shift + k) を押します。そうするとウィンドウが分割され、ドキュメントが表示されます。通常のウィンドウなので、 :quit コマンドや :only コマンドなどで閉じることができます。

※ 2018/9/16 追記 : preview ウィンドウを使うようになった ので :pclose コマンドも使えます。

demo K

もし、~~~ command is not executable みたいな警告が出る場合は julia の実行ファイルが見つからない場合なので、 g:julia#doc#juliapath に実行ファイルへのパスを設定してください。

let g:julia#doc#juliapath = 'path/to/julia/executablefile'

基本的には、PATH が通っていれば必要ありません。また、Windows では PATH を通していなくとも %LOCALAPPDATA%\Julia-*\bin\julia.exe が存在すればそれを使います。

任意の関数・マクロを調べる

任意の関数・マクロを調べる機能も存在します。こちらには標準でのマッピングは存在しませんが、例えば、 ? キーにマッピングすると、REPL のヘルプモードのように使えます。 vimrc に次のように書きましょう、自動コマンドグループ名はお好みで。

augroup vimrc-julia
  autocmd FileType julia nmap <buffer> ? <Plug>(JuliaDocPrompt)
augroup END

あるいは ~/.vim/after/ftplugin/julia_mapping.vim (Windows なら %USERPROFILE%\vimfiles\after\ftplugin\julia_mapping.vim) あたりにマッピング設定だけ書いてもいいですね。

nmap <buffer> ? <Plug>(JuliaDocPrompt)

デモです。入力の途中で <Tab> キーを押すと補完候補を出してくれます。

demo <Plug>(JuliaDocPrompt)