SpaceVimを試す(Windows)

SpaceVIM

問題

  • $HOME/vimfilesを作成するので、お試しでいれたのに全ての環境がSpaceVimになる
  • 情報が殆どない

前提

  • 今回はWindowsだけを対象にします。
  • MACでは、NVIMとVIM8/mac vimがあるで、NVIMだけSpaceVIMにしています。
    • $HOME直下のファイルを削除/リネーム

      rm ~/.vim
      mv .vim_back .vim
      mv .vimrc_back .vimrc

対処

  • 前提
    • kaoriyaなど複数VIMをフォルダで管理している
  • $HOME/vimfilesを削除する
    • $HOMEはC:\Users[user name]\
  • kaoriyaさんを別フォルダに作成(d:\vim_spaceとする)

    • cmdを管理者権限で起動

      d:
      cd d:\vimspace
      mklink vimfiles $HOME\.SpaceVim
      cp $HOME\.SpaceVim\vimrc d:\vim_space\_vimrc

  • コピーしてきた_vimrcn¥の先頭に追加

    "execute 'source' fnamemodify(expand('<sfile>'), ':h').'/config/main.vim'
    execute 'source' fnamemodify(expand('<sfile>'), ':h').'/vimfiles/config/main.vim'

_vimrcの編集

  • SpaceVIMと_vimrcの設定がかなりかぶるので、ほとんど削除
    • クリップボード渡しは持ってきておいたほうが良い。
    • 折角spacevim使っているので、プラグインは後で移植
    • Qfixhowmの設定だけは、全部再利用
    • Uniteなどspacevimで利用しているものの設定はKeyに気をつける

gvimrcを潰しておく

  • spacevimの設定が潰されるので、gvimrcをリネームしておく
    • colorschemとfontを消すのもうまくいく
    • 様子を見ながら戻していく予定

DeinのPATH指定

  • [SPC ?]を呼び出すと、Python3のパスを求められたので_vimrcに追加(Denite or Unite)

設定ファイル

  • SpaceVIMの設定は、以下にする
    • C:\Users[User Name].SpaceVim.d\init.toml

SpaceVimの設定まわり

  • neomakeのエラーが解決できなかったので、
    • enable_neomake= 0
  • 行番号が気持ち悪い
    • relativenumber= 0
  • Leaderがsなのが気持ち悪い
  • vimfilerなので、NerdTreeに切り替える
    • optionsに記載すると、勝手にインストールされます。

      [options]
      filemanager = "nerdtree"

    • F3でNerdTreeが起動すればOK
  • font設定
    • guifont = 'Myrica M:h12'

ColorScheme

  • colorschemeは、layersに指定すると、勝手に色々持ってきてくれる
    • ColorScheme

      [[layers]]
      name = "colorscheme"

    • DLされるもの
      • NeoSolarized: Installing done.
      • jellybeans.vim: Installing done.
      • molokai: Installing done.
      • nord-vim: Installing done.
      • onedark.vim: Installing done.
      • vim-hybrid: Installing done.
      • vim-material: Installing done.
      • vim-one: Installing done.
  • SpaceVim上でcolorschemeを変更する場合
    • [SPC T n]:switch to next random colorscheme listed in colorscheme layer.

git操作がないので入れる

  • fugitiveは最低ほしいので、init.tomlにcustom_pluginsを記載

    [[custom_plugins]]
    name = "tpope/vim-fugitive"
    merged = 0

grep

  • rg/ag/pt/ack/grepあたりがデフォルトで使える
    • SPC s [r/a/t/k/g]とかで切り替える
    • rgの場合
      • SPC s r b:Buffer検索
      • SPC s r p:Directory配下検索

Spaceトリガーを見て、面白そうなもの

  • SPC ?:cmd help
  • F2:Tagbar toggle
  • F3:Filer toggle
  • buffer
    • [1-9]:buffer移動
    • SPC b N [hjkln]:new buffer:q
    • SPC b n:next
    • SPC b d:kill
    • SPC b p:previous
    • SPC b C-d:kill Other Buffer
    • SPC b h:Home画面
    • SPC b R:再描画
  • カーソル配下ハイライト検索
    • SPC s h:ハイライト
      • n:next
  • 行末Space削除
    • ,SPC

SpaceVimを参考に自分のvimrcを拡張する

  • SpaceVim使っていると、過剰すぎるし遅くない?と・・・思えてきた
  • SpaceVimを教科書にして、自分のvimrcを拡張する場合
    • $HOME/.SpaceVim/autoload/SpaceVim/layers配下
    • おすすめ
      • edit.vim or operator.vim
        • textobj操作系が揃っています。
      • fzf.vim
        • FZFの設定周りを参考に
      • incsearch.vim
        • haya14busaさんのプラグイン周り。僕はanzuと合わせて使っています。
      • ui.vim
        • tagbar周りのプラグイン
        • SpaceVimのオープニングBufferはmhinz/vim-startify

Log

  • 上手くいかないときは:SPDebugInfo!
  • 設定周りなどを出力します

未解決(継続)

  • 日本語入力の候補がでたときに、勝手に確定されるときがある。