本 🔗
Chapter2 memo 🔗
- pluginインストールディレクトリ作成 :
mkdir -p ~/.vim/pack/plugins/start
- pluginインストール(初歩的なやり方)
|
|
- バッファリスト表示からバッファ表示 :
:ls
->:b1
- split :
:split
:vsplit
- タブを開く :
:tabnew
- タブ移動 :
gt
gT
- foldmethod = indent時の展開 :
zo
逆はzc
- explorerを開く :
:Ex
- コピーしたテキストを確認するレジスタ一覧 :
:reg
Chapter3 🔗
- vim-plug download :
curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.github.com/junegunn/vim-plug/master/plug.vim
- Plug install :
:PlugInstall
- Plug update :
:PlugUpdate
- Plug clean :
:PlugClean
- Plug upgrade :
:PlugUpgrade
.vimrc
ファイルにPlugを追加した後の保存とインストール ::w | so $MYVIMRC | PlugInstll
- プロファイリング :
vim --startuptime startuptime.log
Chapter4 🔗
- 特定のメソッドが定義されている場所を見つけ、それが呼ばれている場所を探す :
gd
Chapter5 ビルドし、テストし、実行する 🔗
- gitの使い方的な章
git init
->git add .
->git commit -m ""
git remote add origin <URL>
git push -u origin main
- リモートの変更をローカルに取り込む場合 :
git pull --rebase
git log
git checkout -b <ブランチ名>
git branch -a
- file diff :
vimdiff <file a> <file b>
- diffでの差分を反映する :
do
,dp
,:diffget
,:diffput
- diffのファイルを手動で変更した場合の手動アップデート
diffu
- conflict発生時 :
git mergetool
- vimdiff / Git
|
|
:diffg R
: REMOTEの変更を反映:diffg B
: BASEの変更を反映:diffg L
: LOCALの変更を反映- grep :
:grep -r --include="*.py" animal .
- grep(location list) :
:lgrep -r --include="*.py" animal .
- Quickfix list :
:copen
- Quickfix list close :
:cclose
Chapter6 正規表現とマクロでリファクタんリングする 🔗
- 置換 :
:s/<置換対象>/<置換される文字>/<フラグ>
- 行番号指定置換 :
:12;/dog/s/animal/creature/g
- ファイル全体置換 : :%s/find-this/replace-with-this/g``
- 単語完全一致 :
\<
,\>
で囲む - cat hunting mice -> mice hunting cat :
:s/\(cat\) hunting \(mice\)/\2 hunting \1
- vimで記述する際は基本的に記号はエスケープ記号が必要そうだし、変数は$マークじゃなさそう
:arg **/*.py
,:argdo %s/\<[Ctrl+r,Ctrl+w]\>/Pitbull/gec|update
Chapter7 Vimを自分のものにする 🔗
.vimrc
ファイルのgit管理 :~/.dotfiles
ディレクトリを作成し.vimrc
ファイルを移動、$HOMEにシンボリックリンクを貼る- 参考 : https://qiita.com/okamos/items/7f5461814e8ed8916870
- インストールされているcolorscheme一覧 :
:colorscheme Ctrl + d
Chapter8 Vim scriptで平凡を超越する 🔗
- Google VimScript Style Guide
- (参考)Google Style Guide
- vimのplugin構成
- autoload/ : プラグインの一部を遅延読み込みするためのもの
- colors/ : カラースキーム
- compiler/ : 言語固有のコンパイラ関係機能
- ftdetect/ : ファイルタイプ固有のファイルタイプ判別設定
- tfplugin/ : ファイルタイプ固有のファイルタイプ②関連したコード
- indent/ : ファイルタイプ固有のインデントに関連した設定
- plugin/ : プラグインのコア機能
- syntax/ : 言語固有のシンタックス定義
- Learn Vimscript the Hard Way