Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

Vimの初期設定とVim8のプラグイン管理を行うShallScriptを書いてみた

$
0
0

はじめての記事投稿です。
至らぬ点も多々あるかと思いますが、よろしくお願い致します。

テキストエディタは基本VSCodeを使っていましたが、
Vimを使いこなしてる人をみて「これはかっこいい!」と思いVim修行中の者です。
デフォルトでの操作方法はなんとなく理解してきたのでそろそろプラグインを使っていこうとした際に
まずはどの環境でも一瞬でVimの環境を持ってこれるようにShellScriptを書いてみたって話です。

Vimのプラグイン管理の種類

  • サードパーティー製のプラグインマネージャー
  • Vim 8から搭載されているプラグイン管理機能

どちらで管理したか

調べた感じはサードパーティー製のプラグインマネージャーを用いた管理手法のネット記事が多かったのですが、
標準搭載されている機能のほうが将来的なメンテナンスや機能追加も公式に行われると思ってVim 8から搭載されているプラグイン管理機能を用いました。
vim 8で標準搭載されている機能を用いたパッケージ管理方法はこちらの記事を参考に行いました。
また.vimフォルダや.vimrcファイルもシンボリックリンクを貼って一つの管理ディレクトリ内に設置してます。

フォルダ構成

vimfiles/
├─init.sh # 下記にて紹介する初期設定用のShellScriptです。
├─.vimrc
└─.vim/
  └─pack/
    └─mypackages/ # このディレクトリ名はなんでも大丈夫です。
         ├─start/
         | ├─plugin1/
         | ├─plugin2/
         | └─plugin3/
         └─opt/
           ├─plugin4/
           ├─plugin5/
           └─plugin6/

初期設定用のShellScript

#!/bin/bash                                                                                                                                                                                                         # vim file synbolic link settingDOT_FILES=(.vim .vimrc)for file in${DOT_FILES[@]}do
    if[-e$HOME/$file];then
        sudo rm-r$HOME/$filefi  
    ln-s$HOME/vimfiles/$file$HOME/$filedone# vim start packages settingdeclare-A START_PACKAGES
START_PACKAGES=(["NERDTree"]="https://github.com/scrooloose/nerdtree.git"["airline"]="https://github.com/vim-airline/vim-airline"["airline-themes"]="https://github.com/vim-airline/vim-airline-themes")start_pack_dir=$HOME/.vim/pack/mypackages/start
if[-e$start_pack_dir];then
    sudo mkdir-p$start_pack_dirfi

for package in${!START_PACKAGES[@]}do
    if[-e$start_pack_dir/$package];then
        sudo rm-rf$start_pack_dir/$packagefi  
    mkdir$start_pack_dir/$package
    git clone ${START_PACKAGES[$package]}$start_pack_dir/$packagedone# vim opt packages settingdeclare-A OPT_PACKAGES
OPT_PACKAGES=()opt_pack_dir=$HOME/.vim/pack/mypackages/opt
if[-e$opt_pack_dir];then
    sudo mkdir-p$opt_pack_dirfi

for package in${!OPT_PACKAGES[@]}do
    if[-e$opt_pack_dir/$package];then
        sudo rm-rf$opt_pack_dir/$packagefi  
    mkdir$opt_pack_dir/$package
    git clone ${OPT_PACKAGES[$package]}$opt_pack_dir/$packagedone

Vim起動時に読み込んでほしいプラグインはSTART_PACKAGESの連想配列にkeyをプラグイン名、valueをgithubのURLとして追加します。
※あとからオプションとして読み込むプラグインはOPT_PACKAGESに記載します。

最後に

これでVimのプラグインの初期設定をシェルを叩くだけでよくなりました。
環境構築を簡単にする手法としてはdotfilesを管理したり、dockerを使ったりと様々ありますがvimだけに今回は焦点をしぼった形となっているためそんなに楽になってわけではないですがね…。
とりあえず普段あまり触らないShellScriptの勉強にもなったので良しとしますが、おすすめの手法などあればご紹介いただければ嬉しいです。


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>