LoginSignup
5
12

More than 5 years have passed since last update.

atom userがneovimへ...

Last updated at Posted at 2017-07-23

atom user が neovim に移行してみました。

なぜ?? Vimerに?!

 最近までatom userの僕がなぜneovimを使おうと思ったのか...
 今までatomでの開発に事足りていたが最近、ラズパイや仮想サーバーを借りて開発するるようになったため、terminalでコードを書くことが増えてきました。

vimでよくない??

 そー言う方も少なくないと思います。なのでneovimのいいところ、メリットを上げていきたいと思います。

  • 強力なデフォルト

  • truecolor や bracketed paste のようなモダンなターミナル機能

  • 組み込みターミナルエミュレータ(:terminal で呼び出せる)

  • 早い...です

(neovimのいいところメリットは コメントにあるようにVimでも対応済みのようです)

使うっきゃないですね👍

それでは早速インストールから始めます

Install

mac


brew install neovim/neovim/neovim

ubuntu


sudo apt-get install software-properties-common
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:neovim-ppa/stable
sudo apt-get update
sudo apt-get install neovim

Setting

neovimの設定ファイルの場所はデフォルトは $HOME/.config/nvim/init.vimです。ここに設定を書き込んでいきます。

Contents

今、僕が設定している、最低限設定

Set


~/.config/nvim/init.vim
set t_Co=256  "screen が 256色"
set termguicolors  "True Colorを使用"
set number "桁表示"
set backspace=indent,eol,start
set mouse=a   "マウス有効"
set laststatus=2 "ステータスラインの表示"
set list "スペースの可視化"
set listchars=tab:»\ ,trail:-,extends:»,precedes:«,nbsp:% "space 対応"
set clipboard=unnamed "clipbordと対応"
set ruler "カーソルが何行目の何列目に置かれているかを表示"
set autoindent "改行時に前の行のインデントを継続する"
set tabstop=2 "画面上でタブ文字が占める幅"
set softtabstop=2 "連続した空白に対してタブキーやバックスペースキーでカーソルが動く幅"
set shiftwidth=2 "自動インデントでずれる幅"
set expandtab "タブ入力を複数の空白入力に置き換える"
set cursorline "横のカーソルライン表示"
set cursorcolumn "縦のカーソルライン表示"
set smartindent "改行時に入力された行の末尾に合わせて次の行のインデントを増減する"

change command


~/.config/nvim/init.vim
inoremap <silent> jj <ESC> "escape insert mode

vim-go


~/.config/nvim/init.vim
vim-go
let g:go_template_autocreate = 0
let g:go_fmt_command = "goimports"
let g:go_highlight_functions = 1
let g:go_highlight_methods = 1
let g:go_highlight_structs = 1
let g:go_highlight_operators = 1
let g:go_term_enabled = 1
let g:go_highlight_build_constraints = 1

let g:deoplete#sources#go#align_class = 1
let g:deoplete#sources#go#sort_class = ['package', 'func', 'type', 'var', 'const']
let g:deoplete#sources#go#package_dot = 1

quick-run


~/.config/nvim/init.vim
quick-run
let g:quickrun_config = {'*': {'hook/time/enable': '1'},}

dein settings


~/.config/nvim/init.vim
" dein settings {{{"
" dein自体の自動インストール"
let s:cache_home = empty($XDG_CACHE_HOME) ? expand('~/.cache') : $XDG_CACHE_HOME
let s:dein_dir = s:cache_home . '/dein'
let s:dein_repo_dir = s:dein_dir . '/repos/github.com/Shougo/dein.vim'
if !isdirectory(s:dein_repo_dir)
  call system('git clone https://github.com/Shougo/dein.vim ' . shellescape(s:dein_repo_dir))
endif
let &runtimepath = s:dein_repo_dir .",". &runtimepath
" プラグイン読み込み&キャッシュ作成"
let s:toml_file = fnamemodify(expand('<sfile>'), ':h').'/dein.toml'
if dein#load_state(s:dein_dir)
  call dein#begin(s:dein_dir)
  call dein#load_toml(s:toml_file)
  call dein#end()
  call dein#save_state()
endif
"不足プラグインの自動インストール"
if has('vim_starting') && dein#check_install()
  call dein#install()
endif
"}}}"

nvim term


~/.config/nvim/init.vim
syntax enable
colorscheme atom-dark

plugins


 僕の場合はファイルを分けて、書きます。ファイルは$HOME/.config/nvim/dein.tomlです。

~/.config/nvim/dein.toml

[[plugins]]
repo = 'Shougo/deoplete.nvim'

[[plugins]]
repo = 'itchyny/lightline.vim'

[[plugins]] #toml syntax
repo = 'cespare/vim-toml'
on_ft = 'toml'

[[plugins]]
repo = 'gosukiwi/vim-atom-dark'

[[plugins]]
repo = 'fatih/vim-go'

[[plugins]]
repo = 'zchee/deoplete-go'

[[plugins]]
repo = 'plasticboy/vim-markdown'

[[plugins]]
repo = 'thinca/vim-quickrun'

こんな感じの見た目です。
Screen Shot 2017-07-24 at 12.16.44 AM.png

Reference


5
12
5

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
12