本 🔗
Chapter2 memo 🔗
- pluginインストールディレクトリ作成 :
mkdir -p ~/.vim/pack/plugins/start - pluginインストール(初歩的なやり方)
|
|
- バッファリスト表示からバッファ表示 :
:ls->:b1 - split :
:split:vsplit - タブを開く :
:tabnew - タブ移動 :
gtgT - 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 loggit 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