グレインの備忘録

プログラミング関係とかをつらつらと。

Vim

NeoVim+neco-ghcでHaskell自動補完

neco-ghcを使ってHaskellの自動補完を有効にする。 github.com なお、neco-ghcはneocomplete,deoplete,YCMなどで動く。 インストール Tomlに追加。 <<dein_lazy.toml>> [[plugins]] repo = 'eagletmt/neco-ghc' on_i = 1 あとはdein#install()で完了。 さらに、ghc-modが必要</dein_lazy.toml>…

NeomakeでC++の自動構文チェックをやらせてみる

Vimで自動構文解析といえばsyntasticだったが、チェック中は動作をブロックしてしまうので微妙だった。 NeoVimではリモートプラグインが導入され、このような問題を解決できるものが登場したので使ってみる。 NeoMakeを入れる github.com 今回使うのはこのNe…

neosnippetに自分のスニペットを追加する

Vim

前回の記事ではneosnippetを導入したが、自作のスニペットを使いたくなったので方法をメモ。 neosnippetの設定 まずは、スニペットファイルの保存先を指定する。 プラグイン起動時の設定に一行追加する。 let g:neosnippet#snippets_directory = ~/.vim/dein…

バッファの内容を変数に読み込む方法

Vim

日本語で調べても一切情報が出てこなかったので焦った。 方法 :%y [レジスタ名] :let content = @[レジスタ名] 一旦レジスタにヤンクしてから、その内容を変数に入れる。 @[レジスタ名]でレジスタの内容を参照できるようだ。

括弧の自動補完にlexima.vimを使う

Vim

以前の設定ではキーマップを駆使した汚い括弧補完を使っていた。 探してみると、もっと良さげなプラグインがあったのでそれに置き換えてみる。 導入 dein_lazy.tomlに追加。 [[plugins]] # lexima repo = 'cohama/lexima.vim' on_i = 1 後はインストールすれ…

deinを真面目に設定してみる(TOML)

Vim

deinはvimrcに設定を書くだけでも使える。 しかし、一般的にはTOMLと呼ばれる外部ファイルに書くらしい。 TOMLファイルを利用する とりあえずTOMLを使う準備をしよう。 init.vimに以下の記述を追加する。 set runtimepath+=~/.vim/dein/repos/github.com/Sho…

タブ独立のファイルツリーで快適コーディング

Vim

やはり、ファイルツリーをVim内で開いておけると何かと便利だ。 ファイルツリーといえばNERDTreeが有名だが、それのタブ独立版があるそうなので試してみた。 vim-nerdtree-tabsのインストール まずはプラグイン導入から。 vimrcに追加 call dein#add('scrool…

lightline対応のカラースキーム "tender" を試す

Vim

以前lightlineを使ってステータスラインを格好良くしたが、このlightlineに対応した良さげなカラースキームがあったので試してみた。 tenderの導入 いつもどおりサクッと。 call dein#add('jacoborus/tender.vim') をvimrcに追加して :call dein#install() …

lightlineを使ってステータスバーを格好良くする

Vim

lightlineとは lightlineはVim用プラグインで、ステータスバーを格好良くできる。 変更前 変更後 また、この手のプラグインの中では取り回しのしやすい方らしい。lightline.vim作りました - プラグインの直交性について 導入 とりあえずpluginを入れる。 vim…

Vim(NeoVim)でクリップボードを使う

Vim

vimはデフォルトでクリップボードとデータをやり取りできない。 xclipを導入することで使えるようになる。 sudo apt -y install xclip これで使えるようになった。

Vim(NeoVim)を導入したらとりあえずしとく設定

Vim

インデント関連 set autoindent "自動インデント set tabstop=4 "タブ幅 set shiftwidth=4 "自動インデント幅 set noexpandtab "タブをスペースに展開しない set softtabstop=0 "タブ幅(入力時) その他表示関連 set number "行番号表示 syntax on "シンタッ…