スキップしてメイン コンテンツに移動

使いこなせてないviコマンド覚書

とうとう入門viを買ってしまったので読みつつ、今のところ使いこなせてないコマンドの覚書。
意識的に使うべし>自分

  • number指定を用いたhjkl移動
    • 連射せずにジャンプする癖を付ける
  • C:現在位置から行末までを削除し、入力モードに移行(=c$)
  • S:現在の行を削除し、入力モードに移行
  • D:現在位置から行末までを削除
  • A:行の末尾に移動して入力モード
  • I:行の先頭に移動して入力モード
  • J:2行の連結
  • zシリーズ
    • z:現在の行を画面の一番上へ表示するスクロール
    • z.:現在の行を画面の中央へ移動するスクロール
    • z-:現在の行を画面の一番下へ移動するスクロール
  • H, M, L:画面の一番上、中央、一番下へそれぞれジャンプ
  • nH, nL:画面の一番上から及び画面の一番下からn行目へジャンプ
  • n|:n列目の文字へジャンプ
  • e, E:単語の末尾にジャンプ(Eは句読点を単語の一部とする)
  • fx, Fx:現在の行の次(前)のxへジャンプ
  • tx, Tx:現在の行の次(前)のxの前の文字(後ろの文字)へジャンプ
  • ;, \,:直前の上記2つを繰り返す(逆順で繰り返す)
  • xG:x行目へジャンプ
    • :xが癖になってるが、こっちの方が早い
  • 起動時 vi +n file:n行目の位置でfileをオープン
  • 起動時 vi + file:最終行の位置でfileをオープン
  • 起動時 vi +/pattern file:最初にpatternが見つかった位置でfileをオープン
  • "xyy:カレント行をバッファxへヤンク→"xp:カレント行の次の行へバッファxの行をペースト
    • バッファ名が大文字の場合更新でなく追加
  • 'x:マークxの行の先頭にジャンプ
  • `x:マークxの文字へジャンプ
  • exコマンドでの操作
    • d:削除
    • m:移動
    • t:コピー
  • exコマンドでの行シンボル
    • 0:ファイルの先頭(1行目の前)
    • .:カレント行
    • $:ファイル最後の行
    • %:すべての行
  • 検索パターンメタキャラクタ
    • \<, \>:TANGONO先頭、末尾
  • 置換文字メタキャラクタ
    • \u, \l:最初の文字を大文字(小文字)に変換
    • \U, \L:\e又は\Eまでを大文字(小文字)に変換
  • :&(=&):置換繰り返し
  • :r !xxx:シェルでコマンドxxxを実行した結果を読み込む
  • :xx,yy!zzz:xx~yy行目をシェルでコマンドzzzに渡し、実行結果で入れ替える
多いなおい。
だがそれがいい(ぁ

追記。その他
  • ^Ws=:split
  • ^Wv=:vsplit

コメント

このブログの人気の投稿

日記をつけはじめて1年とちょっと経ったまとめ

日記をつけはじめて1年とちょっと経ったまとめ 去年(2017)の 1/11 から日記をつけ始め、気づくともう1年以上ほぼ毎日つけていました まさか習慣化するとは思っていなかったんですが、意外と続いたので一旦まとめておこうと思ってのエントリ このエントリでは どういう手法で続けてきたか や 続けてきた結果どうなったか などをまとめておいて、自分用の改善材料にすること、及び、このエントリを見た人の判断材料にすることを目的としています …ので、書き始めた主要因である書籍 日記の魔力 については、覚えている内容を参考にする程度で、本自体の紹介はほぼしないです(読み返すのが面倒だっただけじゃないです) まとめ 書いてみたら長くなったので、まとめから 自分用のフォーマットを整えれば意外と書くのは楽 愚痴も悩みもとりあえず文字に吐き出すと精神衛生上良い 忘れっぽいと思っていたら、思っていたより数倍物事を忘れていることに気づく 万が一興味を持ったら一度 日記の魔力 を読んでみては 今後は… これまで通り毎日ログを書く ふりかえりの意義を再考して、ちゃんと毎週&毎月ふりかえるようにする ふりかえりの中で、どういうログを書いておくと使いやすいか考えて、日記自体も改善する 以降、自分のふりかえりも兼ねているため長文ですが、つらつらと書きます きっかけ 最初のきっかけは、 Twitter のタイムラインに流れてきたブログのエントリ 思考や行動を改善できる「日記の魔力」とは の引用…だった気がする(この時はまだログをつけていなかったので記録も記憶も残っていない…) ここで紹介されている 日記の魔力 という本を一通り読み、本に書いてあるとおりに 騙されたと思って日記を書き始めてみよう と思ったのが最初の一歩 手法 記憶が朧げですが、確か本の著者の方の手法は ワープロかPCか何かで、毎日のログを隙間時間にファイルに記述する 10日に一度くらいのスパンでそれまで書いた日記をふりかえる ふりかえりの中で、自分が人生で追っていきたい主題みたいなものに関連する内容を別のファイルにコピペして貯めていく みたいな形だったはず。色々と細かいルール(天気などの後から調べれば分かることは書かない等)が少しあった気がするけれど、既に覚えて...

あけましておめでとうございます 2020

あけましておめでとうございます。 去年は1年通して仕事が忙しかったことを言い訳に、何も抱負を達成せずにのんべんだらりと過ごしてしまった一年でした。 去年一切達成できなかった抱負ですが、盛大にハードルを下げつつ、今年も書いておこうと思います。 - 英会話コースを受講する - 隔月で新しいことを体験する(間の月は次の月にやることを考える) - 個人でゲームを作成してプラットフォームへ上げる - 4半期ごとに達成状況を確認して、余裕があったら目標を追加する 以上です。 今年もよろしくお願いいたします。

git を操作したい時にちょっと便利かもしれない unite-source を書いています

こんばんは。この記事は、 Vim Advent Calendar 2012 の 50日目の記事です。 49日目は、 @uryt さんの vim.orgにアップロードされていないプラグインがあるかチェックするgit-unreleased-vimplugins作った でした。 本日は、長いこと自前で作成している、 unite を利用して 簡単な git 操作を行える unite-source 、 giti を紹介します。 vim-unite-giti https://github.com/kmnk/vim-unite-giti これは何? 初期構想としては、自分の自分による自分のための git 操作用 unite source です。 現在はドキュメントも書いたので、自分以外の方にも、お使いいただける物になっていると思います。 言わずと知れた unite のインターフェースを用いて、 git の色々な操作を実現するための plugin's plugin になります。 unite を使って git 操作をしたい気持ちになる方に、是非使ってみて頂きたいです。 普段の仕事でヘビーに使っているので、基本的な操作に関しては、この source で(多分)完結できるはずです。 何故作ったの? git の vim plugin と言えば、有名な vim-fugitive があります。 自分も、仕事で使うバージョン管理システムが svn から git に移行したタイミングで、最初は使おうとしていました。 ですが、長らく(こちらも自前の) vim-unite-svn で、バージョン管理システムを unite 経由で使うことに慣れきってしまっており、 差分をコミットするごとにフラストレーションが溜まり、限界を超えた頃、気づくと自前で作成していました。 何ができるの? (自分が仕事を使ってる分には不自由しない程度に)基本的な操作は大体出来ます。 source 名を羅列すると、以下のような物を用意してあります。 * giti/branch, giti/branch_all * giti/config * giti/log * giti/remote * giti/status それぞれ、簡単に説明してみます。 giti/branch, giti/branch_all git br...