Edited at

Xcodeを捨ててneovimでSwiftを書く

More than 3 years have passed since last update.


なぜXcodeを捨てるのか

Linuxでも動く環境を作りたいからです(大嘘)

neovim使いたいだけです。


neovimを入れる


Install

以下Mac

Mac以外でもググればきっとわかります。

$ brew install neovim/neovim/neovim

$ brew install python3
$ pip3 install neovim

pythonの環境とかは適当に。3が必要です。

1行目でneovim本体を入れてます。

https://github.com/neovim/neovim

3行目は"Python client to Neovim"です。neovimでpython使うためのラッパ的なsomethingです。(多分)

https://github.com/neovim/python-client


Basic use

以下のコマンドで起動します。

$ nvim


Settings


設定ファイル

~/.config/nvim/init.vim


plugin


ダークパワーを得る

dein.vimを使いましょう。

install方法は公式リポジトリをみてください。

Dark powered Vim/Neovim plugin manager

https://github.com/Shougo/dein.vim

これでダークパワーを得ました。


さらにダークパワーを得る

deoplete.nvimを使いましょう。

Dark powered asynchronous completion framework for neovim

https://github.com/Shougo/deoplete.nvim

ダークパワーが高まってきました。


Swiftを書くためのpluginたち

適当に以下のpluginをいれます。


  • plugin 管理


    • Shougo/dein.vim



  • 補完


    • Shougo/deoplete.vim

    • landaire/deoplete-swift



  • 実行


    • thinca/vim-quickrun



  • Syntax check


    • scrooloose/syntastic

    • kballard/vim-swift



  • Syntax highlight


    • keith/swift.vim




init.vim

" (略)

call dein#add('scrooloose/syntastic')
call dein#add('thinca/vim-quickrun')
call dein#add('Shougo/deoplete.nvim')
call dein#add('landaire/deoplete-swift')
call dein#add('kballard/vim-swift')
call dein#add('keith/swift.vim')
" (略)

" quickrun
" normalモードで \r で実行
let g:quickrun_config = {}
let g:quickrun_config['swift'] = {
\ 'command': 'xcrun',
\ 'cmdopt': 'swift',
\ 'exec': '%c %o %s',
\}

" deopleteの自動補完on
let g:deoplete#enable_at_startup = 1
" swiftの自動補完on
let g:deoplete#sources#swift#daemon_autostart = 1
(略)



SourceKittenを入れる

最後にSourceKittenを入れます。

https://github.com/jpsim/SourceKitten

deoplete-swiftはこいつの補完エンジンを使ってdeopleteに渡してるイメージです。

https://github.com/landaire/deoplete-swift

リポジトリを見ると


let g:deoplete#sources#swift#sourcekittendaemon = '' location of the sourcekittendaemon on your system. This is optional and will be found in your $PATH if not set


と書いてあるので、普通にPATH通ってるところにSourceKittenをインストールすれば大丈夫です。


完成

スクリーンショット 2016-03-03 0.54.57.png

だいたいこんな感じです。

非同期補完しながら分割ウィンドウに実行結果出してます。


まとめ


  • neovimでSwiftを書こう。

  • Linuxでも多分いける。


今後の展望


  • 'kballard/vim-swift'はiOSシミュレータとかも扱えるらしい?(未確認)のでもうちょっと試してみたい。