目次:
vimインストール
基本的なことのメモ
vimrcのrcってなんだろう
vimインストール
ubuntu16.04$ gvim と入力するとエラーメッセージ。代わりに候補が。
The program 'gvim' can be found in the following packages:
* vim
* vim-gnome
・・・
こちらに詳しく書いてあったので略。
http://zorinos.seesaa.net/article/451348076.html
自分としてはvim-gtkが良さそうです。
■vim-gtkインストール
sudo apt-get install vim-gtk
起動は
gvim
です。 (vim-gtkと打っても立ち上がりません)
% は自分自身。
同じファイルを開き直すのは%(自ファイル)を使います。開いている間に更新されたはずのログファイルを開き直すとか。
The program 'gvim' can be found in the following packages:
* vim
* vim-gnome
・・・
こちらに詳しく書いてあったので略。
http://zorinos.seesaa.net/article/451348076.html
自分としてはvim-gtkが良さそうです。
■vim-gtkインストール
sudo apt-get install vim-gtk
起動は
gvim
です。 (vim-gtkと打っても立ち上がりません)
基本的なことのメモ
.vimrcファイルどこ→/home/userです。:version で調べられます。 :echo $HOME で出てきます。% は自分自身。
同じファイルを開き直すのは%(自ファイル)を使います。開いている間に更新されたはずのログファイルを開き直すとか。
:source %
でファイルを読み込み直す。
substitude で、%s:foo/bar/ と%があると、全体を検索。s:foo/bar/ だと、カレントラインだけを検索する。
gg 最初の行へ
G 最後の行へ
dd その行を切り取り
yy その行ヤンク(コピー)
p ペースト(カーソルの下に)
P ペースト(カーソルの上に)
[数字]で倍数を指定できます。
[数字]yy で数字行だけコピー
:tabnew 新しいタブを開く:tabnでも
gt 次のタブへ
map
Ctrl-V でペーストする。ただし挿入モードのみ。Alt-E-Pという操作をimapしました。"Insert mode Ctrl-V Paste from clipboard
imap <C-V> <M-E>p
Tips
差分を見る gvimdiff
左右に並べるために、:vs で分割し、比べる2つを表示します。どちらも :difft[his] を入力すると、diffで差分を表示します。
行をハイライトするが、行全体ではなく、番号だけをハイライトしたいとき。写経のときに便利です。
set cursorline
hi clear CursorLine
gvimでスペルチェックをON/OFFする
:set spell
:set nospell
修正候補を出すときは、赤線の上で
z=
間違いではないので辞書登録するときは
zg (goodの意味)
日本語のスペルチェックはないようです。2018/12現在
コードのときはソースコード内は読まずにコメント部分に関してスペルチェックをしてくれるようです。
■カレントファイルパスをコピーする。
:let @" = expand("%:p")
のあとにpでプットできる。
"(レジストリ)に%:p をコピーする?ということでしょうか。覚えられません・・・。
:%s/\s\+$//gc
:%s/ 検索開始
\s スペース
\+$ 1文字以上あって末尾
//gc 空白と置換して消す
例えばpycodestyleでひっかかるので行末のスペースだけを消したいときに使いました。
■vim正規表現で①を# ①に置き換える
コード例で、解説のために①などの番号がついているときがあります。このままコピーしてしまうとコードが動かないのでコメントアウトしたいと思います。
(前)
def hoge: ①
(後)
def hoge: # ①
:%s/\(①\|②\|③\|④\|⑤\|⑥\|⑦\|⑧\|⑨\)$/# \1/gc
行末にある①〜⑨をORでマッチして、# 後方参照 で確認しながら変更します。
■vimでor検索
括弧と | をエスケープしないとだめ
\(aaa\|bbb|)
これで aaa または bbb にマッチする
■vimの非貪欲non-greedyマッチ
.*
これを
.\{-}
こうする
■Vim のウィンドウ高さを最大にする。
Windows
<Win> + Shift + ↑
Ubuntu
ショートカットはないので
:set lines=120
などで調整する。
■ 検索で大文字小文字を制御する
/hoge\c 大文字小文字を区別しない
/hoge\C 大文字小文字を区別する
:set ignorecase いつでも無視する設定
■ vimで印刷時にヘッダを消す
:set printoptions=header:0
VIM正規表現
■行末の空白(trailing whitespace)を消す:%s/\s\+$//gc
:%s/ 検索開始
\s スペース
\+$ 1文字以上あって末尾
//gc 空白と置換して消す
例えばpycodestyleでひっかかるので行末のスペースだけを消したいときに使いました。
■vim正規表現で①を# ①に置き換える
コード例で、解説のために①などの番号がついているときがあります。このままコピーしてしまうとコードが動かないのでコメントアウトしたいと思います。
(前)
def hoge: ①
(後)
def hoge: # ①
:%s/\(①\|②\|③\|④\|⑤\|⑥\|⑦\|⑧\|⑨\)$/# \1/gc
行末にある①〜⑨をORでマッチして、# 後方参照 で確認しながら変更します。
■vimでor検索
括弧と | をエスケープしないとだめ
\(aaa\|bbb|)
これで aaa または bbb にマッチする
■vimの非貪欲non-greedyマッチ
.*
これを
.\{-}
こうする
■Vim のウィンドウ高さを最大にする。
Windows
<Win> + Shift + ↑
Ubuntu
ショートカットはないので
:set lines=120
などで調整する。
■ 検索で大文字小文字を制御する
/hoge\c 大文字小文字を区別しない
/hoge\C 大文字小文字を区別する
:set ignorecase いつでも無視する設定
■ vimで印刷時にヘッダを消す
:set printoptions=header:0
調べたこと豆知識
■vimrcのrcってなんだろう
と思って調べると諸説あるようです。
https://stackoverflow.com/questions/11030552/what-does-rc-mean-in-dot-files
http://www.faqs.org/docs/artu/ch10s03.html#id2941902
run commands
resource control
run control
runtime configuration
The ‘rc’ suffix goes back to Unix's grandparent, CTSS. It had a command-script feature called "runcom". Early Unixes used ‘rc’ for the name of the operating system's boot script, as a tribute to CTSS runcom.
UNIXの祖であるCTSSでは"runcom"というシステムブートファイルがあって、rcはをれへのトリビュートである。
・・・ということでrun controlが歴史的な解釈のようです。
と思って調べると諸説あるようです。
https://stackoverflow.com/questions/11030552/what-does-rc-mean-in-dot-files
http://www.faqs.org/docs/artu/ch10s03.html#id2941902
run commands
resource control
run control
runtime configuration
The ‘rc’ suffix goes back to Unix's grandparent, CTSS. It had a command-script feature called "runcom". Early Unixes used ‘rc’ for the name of the operating system's boot script, as a tribute to CTSS runcom.
UNIXの祖であるCTSSでは"runcom"というシステムブートファイルがあって、rcはをれへのトリビュートである。
・・・ということでrun controlが歴史的な解釈のようです。
失敗・未解決
■(未解決)Windows gvimでテキストを開いたとき、
「続けるにはenterを押すかコマンドを入力してください」と出ます。これを出さずに直接ファイルを開いて欲しいのですが・・・。方法がわかりません。2個同時に開いたときも出るようです。
■deinが使えなかった失敗
■[soloved]
gvimでset autochdirが動作しない。と思ったら、.gvimrcを書き換えて再読み込みしないとできなかった。その場でsetしてもダメということのようです。
■設定ファイルの再読み込み
.gvimrcファイルを読みなおすときは、
:source .gvimrc
.vimrcにdeinの設定を入れれば良いのですが、.gvimrcに入れていたので読み込めていませんでした。なぜかdein#update()はできていましたので毎回それやっていました。という失敗。
■権限がない状態のファイルを保存する
gvimでset autochdirが動作しない。と思ったら、.gvimrcを書き換えて再読み込みしないとできなかった。その場でsetしてもダメということのようです。
■設定ファイルの再読み込み
.gvimrcファイルを読みなおすときは、
:source .gvimrc
.vimrcにdeinの設定を入れれば良いのですが、.gvimrcに入れていたので読み込めていませんでした。なぜかdein#update()はできていましたので毎回それやっていました。という失敗。
0 件のコメント:
コメントを投稿