vimをちゃんとやる4
H, M, L
画面の先頭/真ん中/末尾にジャンプ
g;
直前の変更位置までジャンプして戻る
m {letter}
バッファにローカルなマークを作る
{letter}を大文字にすることでグローバルマークにできる
` {letter}
マークにジャンプする
vimをちゃんとやる3
,
f{char} の反対方向に移動
t
f{char} は{char} の文字上
t{char} は{char} の文字の手前
vi{char}, va{char}
viのときは {char}を含まない
vaのときは {char} を含む
vimをちゃんとやる2
:tabedit {filename}
{filename}のタブを作る
<C-w>T
アクティブなウィンドウを独立したタブに移動する
:tabc[lose]
アクティブなタブを閉じる
@:
直前のコマンドライン入力を繰り返す
タブの移動
覚え方は「"g"oto "t"ab」
- {N}gt
- gt
- gT
以下の通り
- {N}番目のタブに移動
- 次のタブに移動
- 前のタブに移動
vimをちゃんとやる1
;
fコマンドで実行した直前の検索を繰り返す
1文字ずつ置換する
- 置換対象の文字の上で *
- cw"文字入力"< ESC >
- n
- .
やってることは以下の通り
- 置換対象文字のハイライト
- 1文字置換
- 次の文字へ移動
- 変更を繰り返す
daw
覚え方は「delete a word 」
カーソルのある単語を削除
インサートモードで <C-w>
直前の単語まで削除
インサートモードで <C-u>
行頭まで削除
gv
直前のビジュアル選択範囲を再度選択
ビュジュアルモードで o
端点に移動
表のカラムの下の行に線を入れる
- 項目(先頭)行でyyp
- Vr-
やってることは以下の通り
- 項目(先頭)行の末尾までコピーして下の行に貼り付け
- 1で貼り付けた行末まで"-"に置換
選択した行末に ; を追加
- <C-v>でビジュアルブロックにする行を選択
- $
- A;
- < ESC >
やってることは以下の通り
- <C-v>でビジュアルブロックにする行を選択
- ビジュアルブロックにされた行の行末までビジュアルブロックにする
- 末尾に ; を挿入
- < ESC >
選択した行末に ; を追加②
範囲が広い時はこっちの方がよい(今の行から最後まで等) ノーマルモードでのコマンドを実行する :normarl を使う
- A; < ESC >
- jVG
- :'<,'>normal .
やってることは以下の通り
- カーソルのある行末に ; を追加
- 下の行に移動して、最後の行まで行選択
- 選択されている行に対して . コマンド(行末に ; を挿入)を繰り返す
<C-r><C-w>
* で単語をハイライト表示したとき、<C-r><C-w>でハイライトした単語をコマンドに入力できる
ansibleでmacbookを管理
はじめに
先日、macbookが起動しなくなり仕方なくクリーンインストールしたので、今後のことも考えてmacbookの環境を管理する
環境
brew と brew caskは導入済み $ brew install ansible 上記、コマンドを実行済み $ ansible --version ansible 2.5.0
今回用意した2つのファイル
hosts
localhost
localhost.yml
--- - hosts: localhost connection: local gather_facts: no become: no vars: homebrew_packages: - name: python - name: fish - name: git - name: node - name: pyenv - name: tree - name: vim homebrew_cask_packages: - name: google-chrome - name: google-drive - name: virtualbox - name: vagrant - name: iTerm2 - name: atom - name: docker - name: evernote - name: dropbox - name: slack tasks: - name: update homebrew homebrew: update_homebrew=yes # brew - name: install homebrew_packages homebrew: name={{ item.name }} with_items: '{{ homebrew_packages }}' # homebrew_cask - name: install homebrew_cask_packages homebrew_cask: name={{ item.name }} with_items: '{{ homebrew_cask_packages }}'
$ ansible-playbook -i hosts localhostsyml
これで、homebrew_packagesとhomebrew_cask_packagesに記述したソフトウェアをインストールできる