https://kaworu.jpn.org/vim/index.php?title=%E7%89%B9%E5%88%A5:%E6%96%B0%E3%81%97%E3%81%84%E3%83%9A%E3%83%BC%E3%82%B8&feed=atom&hideredirs=1&limit=50&offset=&namespace=0&username=&tagfilter=
neovim/vim入門 - 新しいページ [ja]
2024-03-28T11:33:17Z
提供: neovim/vim入門
MediaWiki 1.24.1
https://kaworu.jpn.org/vim/vim%E3%81%A7%E9%95%B7%E3%81%84%E8%A1%8C%E3%81%8C%E3%81%82%E3%82%8B%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E7%B7%A8%E9%9B%86%E3%81%8C%E9%87%8D%E3%81%9F%E3%81%8F%E3%81%AA%E3%82%8B%E7%8F%BE%E8%B1%A1%E3%81%AE%E5%AF%BE%E7%AD%96
vimで長い行があるファイルの編集が重たくなる現象の対策
2017-09-17T09:41:38Z
<p>Daemon: ページの作成:「vimで「1行が長いファイルを編集している」ときに、カーソルの移動が重くなり、 使い物にならないことがあります。その場...」</p>
<hr />
<div>vimで「1行が長いファイルを編集している」ときに、カーソルの移動が重くなり、 使い物にならないことがあります。その場合の対策を紹介します。<br />
<br />
'''読み方'''<br />
;synmaxcol:しん まっくす こる<br />
__TOC__<br />
<br />
== 概要 ==<br />
1行が長いファイルの編集時に、vim のカーソル移動が非常に重たくなることがありませんか?<br />
この原因は、'''シンタックスハイライト''' です。<br />
<br />
XMLとか、HTML とか、1行で永遠と続いてしまっているやつだと重たくなります。<br />
ひょっとすると JSON のデータが長かったりしても、重くなるでしょう。<br />
== 解決策 ==<br />
シンタックスハイライトが原因で、カーソル移動などが遅くなってしまう場合の対策は、いくつかあります。<br />
* シンタックスハイライトをオフにする (:syntax off)<br />
* 改行を入れる<br />
* ハイライトする文字数を制限する (:set synmaxcol=3000)<br />
== 関連項目 ==<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%A7%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E5%85%A8%E4%BD%93%E3%82%92%E3%82%BD%E3%83%BC%E3%83%88%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimでファイル全体をソートする方法
2017-09-06T14:04:54Z
<p>Daemon: </p>
<hr />
<div>[[vim]]なら編集中のファイル内(バッファ全体)を簡単にソートできます。<br />
<br />
'''読み方'''<br />
;sort:そーと<br />
__TOC__<br />
<br />
== 概要 ==<br />
ファイルの編集中に以下の悩みを持つことはありませんか?<br />
* ファイルの行をソートしたい<br />
* 編集中のファイルの重複を省きたい<br />
<br />
vim を終了し、sort コマンドを利用して、ソートしてから、もう一度 vim でファイルを開く、といった面倒な方法もありますが、もっとスマートな方法があります。<br />
== 外部コマンドを利用したソート ==<br />
=== ファイル内をソートする方法 ===<br />
現在のファイル(バッファ)全体に対して、sort コマンドを実行する方法は以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
:%!sort<br />
</syntaxhighlight><br />
* % (パーセント) は、現在のバッファを意味します。<br />
* '''!''' (エクスクラネーションマーク)は、システムのコマンドを実行することを意味します。<br />
<br />
さらに、ユニーク処理したいのであれば、 -u オプションを利用します。<br />
<syntaxhighlight lang="vim"><br />
:%!sort -u<br />
</syntaxhighlight><br />
== 内部コマンドを利用したソート ==<br />
=== ファイル内をソートする ===<br />
バッファ全体を'''昇順'''でソートする場合は、以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
:sort<br />
</syntaxhighlight><br />
<br />
バッファ全体を'''降順'''でソートする場合は、以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
:sort<br />
</syntaxhighlight><br />
=== 大文字小文字の区別なしでソートする ===<br />
<syntaxhighlight lang="vim"><br />
a<br />
A<br />
b<br />
B<br />
</syntaxhighlight><br />
を ''':sort''' でソートすると<br />
<syntaxhighlight lang="vim"><br />
A<br />
B<br />
a<br />
b<br />
</syntaxhighlight><br />
になります。<br />
<br />
大文字小文字を区別なしにソートするには<br />
<syntaxhighlight lang="vim"><br />
:sort i<br />
</syntaxhighlight><br />
を利用します。結果は、以下の通りになります。<br />
<syntaxhighlight lang="vim"><br />
A<br />
a<br />
B<br />
b<br />
</syntaxhighlight><br />
=== 8進数、10進数、16進数のソート ===<br />
それぞれ、以下のオプションを利用してソートできます。<br />
<syntaxhighlight lang="vim"><br />
:sort o<br />
:sort n<br />
:sort x<br />
</syntaxhighlight><br />
=== カンマで区切られた第2フィールドでソートする例 ===<br />
以下のデータがあったとき、セパレータを , (カンマ) とします。<br />
<syntaxhighlight lang="vim"><br />
foo,10,aaa<br />
bar,8,aaa<br />
hoge,20,aaa<br />
</syntaxhighlight><br />
ここでは整数の第2フィールドを10進数として、ソートしたい場合は、<br />
<syntaxhighlight lang="vim"><br />
:sort /[^,]*,/n<br />
</syntaxhighlight><br />
となります。<br />
結果は以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
bar,8,aaa<br />
foo,10,aaa<br />
hoge,20,aaa<br />
</syntaxhighlight><br />
<br />
n オプションをつけないと、10,20,8 という順番で並ぶことになります。<br />
== まとめ ==<br />
* :%!sort や :sort で開いているファイル全体を簡単にソートできる<br />
* :%!sort -u で開いているファイル全体をユニークにソートできる<br />
== 関連項目 ==<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%AE%E7%92%B0%E5%A2%83%E6%A7%8B%E7%AF%89
vimの環境構築
2017-06-18T14:10:08Z
<p>Daemon: ページの作成:「vimを使うためやメンテナンスのために必要なことをまとめました。 '''読み方''' ;vim:ぶいあいえむ __TOC__ == 概要 == vim...」</p>
<hr />
<div>[[vim]]を使うためやメンテナンスのために必要なことをまとめました。<br />
<br />
'''読み方'''<br />
;[[vim]]:ぶいあいえむ<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]]のビルド、インストール、アップデート、設定などを紹介します。<br />
== インストールとアップデート ==<br />
* [[vimをビルドする]]<br />
* [[vimのインストール]]<br />
* [[vimの設定ファイル]]<br />
* [[Windowsにvimの環境を構築する方法]]<br />
* [[WindowsのKaoriYa版vimをオンラインアップデートする方法]]<br />
== vimを復数環境で利用する ==<br />
* [[vimの設定をWindowsとLinuxとMacで共有する方法]]<br />
== vimをIDEとして使う ==<br />
* [[vimのPHP開発環境]]<br />
== 関連項目 ==<br />
* [[これからはじめるvim]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%A7%E5%BE%A9%E6%95%B0%E3%81%AE%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AE%E3%82%A4%E3%83%B3%E3%83%87%E3%83%B3%E3%83%88%E3%82%92%E4%BF%AE%E6%AD%A3%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimで復数のソースコードのインデントを修正する方法
2017-06-18T12:36:46Z
<p>Daemon: ページの作成:「vimを使ったプログラミングで、復数のソースコードを整形する方法を紹介します。 '''読み方''' ;args:あーぐす ;argdo:あーぐ...」</p>
<hr />
<div>[[vim]]を使ったプログラミングで、復数のソースコードを整形する方法を紹介します。<br />
<br />
'''読み方'''<br />
;args:あーぐす<br />
;argdo:あーぐ どぅー<br />
:wall:だぶりゅ おーる<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vimでソースコード全体のインデントを整形する方法]]で紹介した方法を応用したものです。<br />
== おさらい ==<br />
=== 復数のファイルを一気に開く ===<br />
[[vimでファイルを開く方法]] で復数のファイルの開き方を紹介しました。<br />
<syntaxhighlight lang="vim"><br />
:args *.c<br />
</syntaxhighlight><br />
=== ファイルの全行を一気に整形する ===<br />
[[vimでソースコード全体のインデントを整形する方法]]で以下を紹介しました。<br />
<syntaxhighlight lang="vim"><br />
gg=G<br />
</syntaxhighlight><br />
== 復数のファイルをすべて整形する方法 ==<br />
ここでは、'''C言語''' のソースファイルを前提にして紹介します。<br />
C言語以外でもやり方は、同じなので、 *.c の拡張子部分を適当な拡張子に読み替えて下さい。<br />
<syntaxhighlight lang="vim"><br />
:args *.c<br />
:argdo normal gg=G<br />
:wall<br />
</syntaxhighlight><br />
<br />
上記の意味は以下の通りです。<br />
# *.c にマッチするファイル(復数あれば復数のファイル)を開く<br />
# 開いているバッファすべてに対して、インデントの修正を行う<br />
# 変更のあるバッファをすべて上書きする<br />
== 関連項目 ==<br />
* [[vimでソースコード全体のインデントを整形する方法]]<br />
* [[vimでファイルを開く方法]]<br />
* [[プログラミングに役立つvimのテクニック]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%81%AB%E5%BD%B9%E7%AB%8B%E3%81%A4vim%E3%81%AE%E3%83%86%E3%82%AF%E3%83%8B%E3%83%83%E3%82%AF
プログラミングに役立つvimのテクニック
2017-06-18T12:27:59Z
<p>Daemon: </p>
<hr />
<div>[[vim]]では、プログラミングに役立つテクニックがいろいろあります。<br />
<br />
'''読み方'''<br />
;[[vim]]:ぶいあいえむ<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]] では、プログラミングを支援する機能がいろいろあります。<br />
ここでは、知っていると プログラミングが楽になるテクニックを紹介します。<br />
== vimを使ったプログラミングに役立つテクニックたち ==<br />
* [[vimにテキストをペーストする時にオートインデントさせない方法]]<br />
* [[vimでソースコード全体のインデントを整形する方法]]<br />
* [[vimで復数のソースコードのインデントを修正する方法]]<br />
== 関連項目 ==<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%A7%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89%E5%85%A8%E4%BD%93%E3%81%AE%E3%82%A4%E3%83%B3%E3%83%87%E3%83%B3%E3%83%88%E3%82%92%E6%95%B4%E5%BD%A2%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimでソースコード全体のインデントを整形する方法
2017-06-15T15:45:57Z
<p>Daemon: </p>
<hr />
<div>プログラムのソースコードでは、「インデント」(字下げ)が非常に重要です。インデントが壊れているソースコードを簡単に読みやすくする方法は、ソースコード全体(ファイルの全行)のインデントを直すことです。[[vim]]では簡単にインデントをし直せるので、その方法を紹介します。<br />
<br />
'''読み方'''<br />
;インデント:いんでんと<br />
;字下げ:じさげ<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]]の自動インデント機能は非常に便利です。自分で字下げをしなくても、エディタが自動的にソースコードの言語にあわせて、インデントしてくれます。<br />
<br />
他人の作ったソースコードをもってきたときに、そのファイルのインデントが狂っていることがあるかもしれませんし、ソースコードをコピペしたときに、オートインデントの影響でインデントがおかしくなっている(参考 [[vimにテキストをペーストする時にオートインデントさせない方法]]) 、といったこともあります。<br />
<br />
インデントを1つ1つタブなどを入れていくのは、骨が折れます。<br />
<br />
実は、1つ1つのインデントを手で直す必要は、ないはずです。それは、[[vim]] が実は簡単にインデントを直す機能を持っているからです。<br />
== インデントとは ==<br />
そもそも '''インデント''' って何?っていう方は、このセクションを読んで下さい。<br />
ご存知の方は、次のセクションまで飛ばして頂いて大丈夫です。<br />
<br />
'''インデント'''とは、'''字下げ'''のことです。<br />
タブやスペースなどの「空白」で、ソースコードを読みやすくするために使われます。<br />
人間の読みやすさ、認識のしやすさの助けになります。<br />
== ソースコード全体のインデントを修正する方法 ==<br />
[[vim]]の '''=''' (イコール) は、 インデントを修正するコマンドです。<br />
バッファの先頭に戻り、バッファの最後までに対して = を実行することで、ソースコードのすべての行(開いているファイルのバッファ全体)に対して、インデントの修正を実行することができます。<br />
<syntaxhighlight lang="vim"><br />
gg=G<br />
</syntaxhighlight><br />
== まとめ ==<br />
* [[vim]] は、インデントを直す機能を持っている。<br />
* インデントを修正するコマンドは '''=''' (イコール)。<br />
* ソースコード全体(ファイル全体のすべての行)のインデントをなおすには '''gg=G''' 。<br />
== 関連項目 ==<br />
* [[vimにテキストをペーストする時にオートインデントさせない方法]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%AB%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%82%92%E3%83%9A%E3%83%BC%E3%82%B9%E3%83%88%E3%81%99%E3%82%8B%E6%99%82%E3%81%AB%E3%82%AA%E3%83%BC%E3%83%88%E3%82%A4%E3%83%B3%E3%83%87%E3%83%B3%E3%83%88%E3%81%95%E3%81%9B%E3%81%AA%E3%81%84%E6%96%B9%E6%B3%95
vimにテキストをペーストする時にオートインデントさせない方法
2017-06-14T15:12:40Z
<p>Daemon: </p>
<hr />
<div>クリップボードのソースコードを[[vim]]にペースト(貼り付け)する時に、オートインデント(autoindent)により、貼り付けたテキストがガタガタにフォーマットされる体験をしたことはありますか?ここでは、それの対処方法について紹介します。<br />
<br />
'''読み方'''<br />
;autoindent:おーといんでんと<br />
__TOC__<br />
<br />
== 概要 ==<br />
クリップボードのソースコードを[[vim]]にペースト(貼り付け)する時に、オートインデント(autoindent)により、貼り付けたテキストがガタガタにフォーマットされる体験をしたことはありますか?<br />
<br />
この問題を解決するために、違うファイルを作成して、違うファイルに貼り付けて、[[vim]] から読み込んだりして、乗り越えてしまっている人もいるかもしれません。<br />
<br />
実は、[[vim]] だけでこの問題は解決できます。<br />
<br />
外部コマンドを使って、対応することもできますが、おそらく、ムダの少ない方法は paste モードのオンオフではないでしょうか。<br />
== 解決策 ==<br />
コードをペーストするときに、 autoindent をオフにして、特別な paste モードにします。<br />
以下のコマンドで paste モードになります。<br />
<syntaxhighlight lang="vim"><br />
:set paste<br />
</syntaxhighlight><br />
vim の表示が例えば、以下のような感じになります。<br />
-- INSERT (paste) --<br />
<br />
コードのペースト(貼り付け)が終わったら、 paste モードをオフにします。再び、 auto indent を起動します。<br />
<syntaxhighlight lang="vim"><br />
:set nopaste<br />
</syntaxhighlight><br />
<br />
paste モードの切り替え用のキーバインドを設定することも可能です。<br />
<syntaxhighlight lang="vim"><br />
set pastetoggle=<F3><br />
</syntaxhighlight><br />
上記の例では、 F3 キーで paste モードのオンオフができます。<br />
== まとめ ==<br />
* paste モードを操ることで、オートインデントに悩まずに、コピペ作業を効率化できます。<br />
* set paste<br />
* set nopaste<br />
== 関連項目 ==<br />
* [[vimでソースコード全体のインデントを整形する方法]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%AE%E7%BD%AE%E6%8F%9B%E3%81%A7%E3%82%B9%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E3%82%92%E3%82%A8%E3%82%B9%E3%82%B1%E3%83%BC%E3%83%97%E3%81%9B%E3%81%9A%E3%81%AB%E7%BD%AE%E6%8F%9B%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimの置換でスラッシュをエスケープせずに置換する方法
2017-06-12T15:02:25Z
<p>Daemon: </p>
<hr />
<div>[[vim]]の置換は、 :s/pattern/string/options を使って行います。デミリタをスラッシュにしてしまうと、string の部分にスラッシュを使用する場合には、バックスラッシュによるエスケープ処理が必要になります。デミリタを変更することで、バックスラッシュによるエスケープなしに、置換ができるようになります。<br />
<br />
'''読み方'''<br />
;pattern:ぱたーん<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]]の置換は、 :s/pattern/string/options を使って行います。デミリタをスラッシュにしてしまうと、string の部分にスラッシュを使用する場合には、バックスラッシュによるエスケープ処理が必要になります。<br />
<br />
エスケープ処理が入ると、可読性が著しく悪くなります。<br />
<syntaxhighlight lang="vim"><br />
:s/foo/https:\/\/foo.com\//<br />
</syntaxhighlight><br />
どこまでが 置き換え後の文字列なのか、デミリタの記号なのかが、よく考えないとわからなくなってしまいます。<br />
<br />
[[vim]]の置換のデミリタは、スラッシュを使わなければならないのではなく、ほかの記号でも代替可能です。<br />
<br />
利用できるデミリタの例は、 [[vimの置換のデミリタはスラッシュ以外も利用できる]] をご参照下さい。<br />
== スラッシュ以外のデミリタを利用する ==<br />
デミリタとして、スラッシュ以外を使う利点ですが、スラッシュをエスケープせずにパターンや置換後のテキストに使えることではないでしょうか。<br />
パターンや置換後のテキストの指定に、スラッシュを使いたいときに、デミリタにスラッシュを使っている場合、バックスラッシュでスラッシュをエスケープしなければなりません。<br />
<br />
スラッシュをエスケープしはじめると、コマンドが読みにくくなってしまい、なにがなんだかわからなくなってしまう方もいるのではないでしょうか?<br />
<syntaxhighlight lang="vim"><br />
:s/foo/https:\/\/foo.com\//<br />
</syntaxhighlight><br />
デミリタをシャープ(#)に変えてみるとスッキリした形になります。<br />
<syntaxhighlight lang="vim"><br />
:s#foo#https://foo.com/#<br />
</syntaxhighlight><br />
非常に読みやすくなったのではないでしょうか?<br />
== スラッシュの置換の例 ==<br />
スラッシュ(/) を スラッシュスラッシュ(//)する場合には、デミリタをスラッシュにシた場合、このようなコマンドになります。<br />
<syntaxhighlight lang="vim"><br />
:s/\//\/\//<br />
</syntaxhighlight><br />
これだけでも、頭がおかしくなりそうです。<br />
<br />
デミリタをスラッシュ以外にかえることで、こんなにスッキリします。<br />
<syntaxhighlight lang="vim"><br />
:s#/#//#<br />
</syntaxhighlight><br />
<br />
URL を書き換える例だと、こんな感じで、やはり読みにくいです。<br />
<syntaxhighlight lang="vim"><br />
:s/http:\/\/foo.com\/index.html/https:\/\/bar.com\/index.php/<br />
</syntaxhighlight><br />
こんな感じで簡単になります。<br />
<syntaxhighlight lang="vim"><br />
:s#http://foo.com/index.html#https://bar.com/index.php#<br />
</syntaxhighlight><br />
== まとめ ==<br />
* 置換のデミリタはいろいろな記号が利用できる<br />
* 置換のデミリタを変えれば、パターンや置換後の文字列に含める'''記号'''のエスケープ処理を省略できる<br />
== 関連項目 ==<br />
* [[vimの置換のデミリタはスラッシュ以外も利用できる]]<br />
* [[vimの検索と置換]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%AE%E6%9C%80%E5%BE%8C%E3%81%AE%E7%BD%AE%E6%8F%9B%E3%82%92%E7%B9%B0%E3%82%8A%E8%BF%94%E3%81%99%E6%96%B9%E6%B3%95
vimの最後の置換を繰り返す方法
2017-06-11T14:45:37Z
<p>Daemon: ページの作成:「vimでは、強力な置換機能が提供されています。vimで最後に行った置換を後から繰り返したくなることはありませんか? '...」</p>
<hr />
<div>[[vim]]では、強力な置換機能が提供されています。[[vim]]で最後に行った置換を後から繰り返したくなることはありませんか?<br />
<br />
'''読み方'''<br />
;&:あんぱさんど<br />
__TOC__<br />
<br />
== 概要 ==<br />
ここでは、[[vim]]の最後の置換を繰り返す方法を紹介します。<br />
同じ置換を行いたいときに、入力の短縮になります。<br />
== 置換を繰り返す方法 ==<br />
置換の繰り返す方法は、簡単です。 & を使います。<br />
<syntaxhighlight lang="vim"><br />
:&<br />
</syntaxhighlight><br />
<br />
置換を繰り返す例です。<br />
まず、普通に置換を行います。そのあとで、置換したい行で、:& を実行すると、最後の置換を繰り返します。<br />
<syntaxhighlight lang="vim"><br />
:s/foo/bar/<br />
:&<br />
</syntaxhighlight><br />
== オプションの指定 ==<br />
g オプションで、行中のすべてのマッチを置換することができます。<br />
以下の場合は、繰り返しのときに、 g オプションを指定していないので、最初のマッチだけが置換されます。<br />
<syntaxhighlight lang="vim"><br />
:s/foo/bar/g<br />
:&<br />
</syntaxhighlight><br />
<br />
そのため、繰り返しの置換のときにも、オプションを指定する必要があります。<br />
たとえば、繰り返しの置換時にも g オプションを指定したい場合には、以下のようになります。<br />
<syntaxhighlight lang="vim"><br />
:s/foo/bar/g<br />
:&g<br />
</syntaxhighlight><br />
== 全体にも繰り返しが実行できる ==<br />
ここでは、全体に対する置換の繰り返しを紹介します。<br />
ただ単に、レンジを % で指定するだけになります。<br />
<syntaxhighlight lang="vim"><br />
:%s/foo/bar/<br />
:%&<br />
</syntaxhighlight><br />
<br />
g オプションを使用する場合は、このようになります。<br />
<syntaxhighlight lang="vim"><br />
:%s/foo/bar/g<br />
:%&g<br />
</syntaxhighlight><br />
== コマンドの履歴から繰り返す方法 ==<br />
ここでは、 :& を紹介することが目的ではありますが、最後の置換を繰り返す方法として、履歴を使う方法もあります。<br />
<br />
''':''' (コロン) を打ち、そのあとに C-f (コントロール f) で、コマンドの履歴を参照できます。最後の置換まで、移動して、 Enter を押すだけで、最後の置換を繰り返すことができます。もちろん、最後以外の置換を探して、実行することもできます。<br />
<syntaxhighlight lang="vim"><br />
:<C-f><br />
</syntaxhighlight><br />
== 関連項目 ==<br />
* [[vimの検索と置換]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%AE%E7%BD%AE%E6%8F%9B%E3%81%AE%E3%83%87%E3%83%9F%E3%83%AA%E3%82%BF%E3%81%AF%E3%82%B9%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5%E4%BB%A5%E5%A4%96%E3%82%82%E5%88%A9%E7%94%A8%E3%81%A7%E3%81%8D%E3%82%8B
vimの置換のデミリタはスラッシュ以外も利用できる
2017-06-11T12:05:27Z
<p>Daemon: /* スラッシュ以外を使う利点は? */</p>
<hr />
<div>[[vim]]の置換では、よくデミリタとしてスラッシュ(/)が利用されますが、実はスラッシュ以外も利用できます。スラッシュ以外を利用することで、/ をエスケープせずに使うといったこともできます。<br />
<br />
'''読み方'''<br />
;置換:ちかん<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]]では、 :s コマンドを利用して、文字列の'''置換''' を行います。<br />
<syntaxhighlight lang="vim"><br />
:s/foo/bar/<br />
</syntaxhighlight><br />
<br />
置換コマンド、検索パターン、置換後のテキストを区切るための'''デミリタ'''(区切り文字)として、スラッシュ (/) を利用していることが多いのではないでしょうか?<br />
その背景には、例として、 スラッシュが利用されることが多いからではないかと思います。<br />
<br />
vim のヘルプでも、はじめに出てくる例がスラッシュだったりします。<br />
以下は、 vim の日本語のヘルプの抜粋です。<br />
ヘルプをよんでいくと、スラッシュ以外の例が出てきます。<br />
<syntaxhighlight lang="vim"><br />
4.2 置換 *:substitute*<br />
*:s* *:su*<br />
:[range]s[ubstitute]/{pattern}/{string}/[flags] [count]<br />
[range] の各行で {pattern} のマッチを {string} に置き<br />
換える。<br />
{pattern}については|pattern|を参照すること。<br />
{string} は普通の文字列でもよいし、特別な指定方法を使っ<br />
てもよい。|sub-replace-special| を参照。<br />
[range] と [count] が指定されないと、現在行内でのみ置<br />
換を行う。<br />
[count] が指定されると、[range] の最終行から数えて<br />
[count] 行で置換を行う。[range] が指定されないと、現在<br />
行から開始する。<br />
|cmdline-ranges| も参照。<br />
フラグについては |:s_flags| を参照。<br />
</syntaxhighlight><br />
== スラッシュ以外の区切り文字をデミリタとして使えるもの ==<br />
いろいろな記号が利用できます。<br />
* コロン (:)<br />
* セミコロン (;)<br />
* エクスクラ メーション・マーク (exclamation mark) (!)<br />
* アットマーク (@)<br />
* シャープ (#)<br />
* アスタリスク (*)<br />
* ドット (.)<br />
* カンマ (,)<br />
<br />
逆に使えないものとして、パイプ (|) が挙げられます。<br />
== スラッシュ以外の区切り文字をデミリタとして使う例 ==<br />
よくある置換の例を挙げます。<br />
<syntaxhighlight lang="vim"><br />
:s/foo/bar/<br />
</syntaxhighlight><br />
<br />
さて、上の例のデミリタを変えて、例を示します。<br />
<syntaxhighlight lang="vim"><br />
:s!foo!bar!<br />
:s:foo:bar:<br />
:s;foo;bar;<br />
:s@foo@bar@<br />
:s.foo.bar.<br />
:s#foo#bar#<br />
</syntaxhighlight><br />
== スラッシュ以外を使う利点は? ==<br />
デミリタとして、スラッシュ以外を使う利点ですが、スラッシュをエスケープせずにパターンや置換後のテキストに使えることではないでしょうか。<br />
パターンや置換後のテキストの指定に、スラッシュを使いたいときに、デミリタにスラッシュを使っている場合、バックスラッシュでスラッシュをエスケープしなければなりません。<br />
<br />
スラッシュをエスケープしはじめると、コマンドが読みにくくなってしまい、なにがなんだかわからなくなってしまう方もいるのではないでしょうか?<br />
<syntaxhighlight lang="vim"><br />
:s/foo/https:\/\/foo.com\//<br />
</syntaxhighlight><br />
デミリタをシャープ(#)に変えてみるとスッキリした形になります。<br />
<syntaxhighlight lang="vim"><br />
:s#foo#https://foo.com/#<br />
</syntaxhighlight><br />
ほら、とっても読みやすいでしょ?<br />
<br />
ほぼ同じような内容ではありますが、[[vimの置換でスラッシュをエスケープせずに置換する方法]]をご参照下さい。<br />
<br />
== まとめ ==<br />
* 置換のデミリタはスラッシュ以外も利用できる<br />
* パターンや置換後のテキストにスラッシュを使いたい場合には、スラッシュ以外のデミリタを利用する<br />
* パターンや置換後のテキストに出てこない記号でデミリタを代替するとエスケープレスで読みやすいコマンドが書ける<br />
== 関連項目 ==<br />
* [[vimの置換でスラッシュをエスケープせずに置換する方法]]<br />
* [[vimの検索と置換]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%AE%E6%A4%9C%E7%B4%A2%E3%81%A8%E7%BD%AE%E6%8F%9B
vimの検索と置換
2017-06-10T04:04:33Z
<p>Daemon: /* vimの置換 */</p>
<hr />
<div>[[vim]]では、非常に便利な'''検索'''と'''置換'''の機能が提供されています。[[vimの検索と置換]]を活かさずに、[[vim]]を使用するのは、非常にもったいないです。<br />
<br />
'''読み方'''<br />
;[[vim]]:ぶぃむ,ゔぃむ<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]]では、非常に便利な'''検索'''と'''置換'''の機能が提供されています。[[vimの検索と置換]]を活かさずに、[[vim]]を使用するのは、非常にもったいないです。<br />
== vimの検索 ==<br />
* [[vimの検索のハイライトを消す方法]]<br />
* [[vimの検索でマルチインクリメンタルハイライトを実現するincsearch.vim]]<br />
== vimの置換 ==<br />
=== vimの置換の基本 ===<br />
* [[vimで確認をしながら文字列を置換する方法]]<br />
* [[vimの矩形ビジュアルモードで矩形選択範囲内を置換する]]<br />
* [[vimの置換のデミリタはスラッシュ以外も利用できる]]<br />
* [[vimの置換でスラッシュをエスケープせずに置換する方法]]<br />
* [[vimの文字列置換で置換後の文字列に改行を含める方法]]<br />
* [[vimの最後の置換を繰り返す方法]]<br />
=== vimの置換での削除テクニック ===<br />
* [[vimで改行だけの空行を削除する方法]]<br />
* [[vimでタブやスペースだけの空白行を削除する方法]]<br />
* [[vimで行末のタブやスペースの空白を削除する方法]]<br />
<br />
== まとめ ==<br />
* [[vimのパターン検索と置換で知っておくべきこと]]<br />
== 関連項目 ==<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%A7%E7%A2%BA%E8%AA%8D%E3%82%92%E3%81%97%E3%81%AA%E3%81%8C%E3%82%89%E6%96%87%E5%AD%97%E5%88%97%E3%82%92%E7%BD%AE%E6%8F%9B%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimで確認をしながら文字列を置換する方法
2017-06-09T15:55:03Z
<p>Daemon: </p>
<hr />
<div>[[vim]]の置換では、パターンにマッチしたところを置換しますが、パターンと一致したところを置換するかどうか、確認をしながら、置換を実行することができます。ここでは、確認しながら、置換する方法を紹介します。<br />
<br />
'''読み方'''<br />
;置換:ちかん<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]] で文字列置換をする際に、その文字列は置換してよいのかどうか、確認しながら置換することができます。<br />
<br />
一般的な置換は、<br />
<syntaxhighlight lang="vim"><br />
:%s/foo/bar/<br />
</syntaxhighlight><br />
とか<br />
<syntaxhighlight lang="vim"><br />
:%s/foo/bar/g<br />
</syntaxhighlight><br />
といった方法になります。<br />
この例では、置換を実行してよいかどうかの確認がないまま、置換が実行されます。<br />
<br />
ときには、置換したい場所とそうではない場所があり、細かい条件を追加することで、確認しないでも置換することもできるかもしれませんが、細かい指定を入れるのが難しかったり、面倒だったりすることもあると思います。<br />
<br />
ここでは、確認をしながら置換する方法を紹介します。<br />
== 文字列を置換する場合に確認を入れる方法 ==<br />
[[vim]]の置換のオプションには、 c オプションがあり、この c を指定することで、文字列を置換するときに、「置換をするか?」と確認のメッセージが出るようになります。もし、置換してよければ y 、置換をしたくなければ、 n を押すと、置換の実行の可否が決定され、次のマッチした文字列の場所に移動して、再び、置換をするかどうかの確認が始まります。<br />
<syntaxhighlight lang="vim"><br />
:%s/foo/bar/c<br />
</syntaxhighlight><br />
<br />
同じ行で2回以上の置換を行うときには、g を指定しますが、確認を入れながら置換する場合には、c オプションも指定するため、オプション指定は、 gc といった形になります。<br />
<syntaxhighlight lang="vim"><br />
:%s/foo/bar/gc<br />
</syntaxhighlight><br />
== 関連項目 ==<br />
* [[vimの検索と置換]]<br />
* [[vimのパターン検索と置換で知っておくべきこと]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%A7%E8%A1%8C%E6%9C%AB%E3%81%AE%E3%82%BF%E3%83%96%E3%82%84%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9%E3%81%AE%E7%A9%BA%E7%99%BD%E3%82%92%E5%89%8A%E9%99%A4%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimで行末のタブやスペースの空白を削除する方法
2017-06-08T13:28:26Z
<p>Daemon: </p>
<hr />
<div>テキストファイルの行末に、不要な'''タブ'''や'''スペース'''を削除したい場合があります。[[vim]]の正規表現で簡単に削除できます。やり方をいくつか紹介します。<br />
<br />
'''読み方'''<br />
;正規表現:せいきひょうげん<br />
__TOC__<br />
<br />
== 概要 ==<br />
テキストを編集しているときに、行末に、不要なタブやスペースが入っていることに気が付き、削除したいことがあります。テキストファイル中の至る所の行末に、タブやスペースがいくつも入っている場合、1つ1つ消して回るのは、骨が折れます。<br />
<br />
そのようなときに、スマートに対応する方法として、'''正規表現'''を利用した置換があります。<br />
<br />
ここでは、不要なブランクを簡単に削除する方法をいくつか紹介します。<br />
== 行末のタブやスペースを削除するコマンド ==<br />
文字クラス \s を利用して、タブやスペースを簡単に削除できます。<br />
<syntaxhighlight lang="vim"><br />
:%s/\s*$//<br />
</syntaxhighlight><br />
<br />
行末のスペースだけを削除するコマンドは、以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
:%s/ *$//<br />
</syntaxhighlight><br />
<br />
行末のタブだけを削除するコマンドは、以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
:%s/ *$//<br />
</syntaxhighlight><br />
== 自動で削除する方法 ==<br />
ファイルを保存する直前で、行末の空白を削除します。<br />
プログラムを編集して、保存するときに、有効です。<br />
以下の例では、C言語(*.c)と python のコード (*.py) のときに、実行されます。<br />
<syntaxhighlight lang="vim"><br />
aug space<br />
au!<br />
autocmd BufWritePre *.c,*.py :%s/\s\+$//e<br />
aug END<br />
</syntaxhighlight><br />
<br />
拡張子の指定をこのようにすることもできます。<br />
<syntaxhighlight lang="vim"><br />
autocmd BufWritePre *.{c,h,cpp,cc,py,pl} :%s/\s\+$//e<br />
</syntaxhighlight><br />
== 関連項目 ==<br />
* [[vimの検索と置換]]<br />
* [[vimの文字列置換で置換後の文字列に改行を含める方法]]<br />
* [[vimで改行だけの空行を削除する方法]]<br />
* [[vimでタブやスペースだけの空白行を削除する方法]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%A7%E3%82%BF%E3%83%96%E3%82%84%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9%E3%81%A0%E3%81%91%E3%81%AE%E7%A9%BA%E7%99%BD%E8%A1%8C%E3%82%92%E5%89%8A%E9%99%A4%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimでタブやスペースだけの空白行を削除する方法
2017-06-07T15:20:24Z
<p>Daemon: </p>
<hr />
<div>[[vim]]では、空白だけで構成される空白行を'''正規表現'''で簡単に削除できます。<br />
<br />
'''読み方'''<br />
;空白行:くうはくぎょう<br />
__TOC__<br />
<br />
== 概要 ==<br />
テキストファイルに<br />
* タブだけの行<br />
* スペースだけの行<br />
* スペースとタブだけの行<br />
のような空白行(空白だけで構成される行)を削除したいときがあります。<br />
<br />
そんな空行を [[vim]] で簡単に消す方法を紹介します。<br />
== タブやスペースだけの空白行を削除する方法 ==<br />
タブやスペースだけの行を消すコマンドは以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
:g/^\s\+$/d<br />
</syntaxhighlight><br />
<br />
gはglobalコマンドで、/^\s\+$/ のパターンを探し、マッチした行を コマンド d で削除します。<br />
\s は文字クラスで、改行以外の空白文字にマッチし、スペースやタブなどにマッチします。<br />
[[vim]]の正規表現(nomagicモード)では、1以上を表す + は、バックスラッシュでエスケープする必要があり、 \+ となっています。<br />
<br />
abc def<br />
(タブ)(タブ)<br />
ghi jkl<br />
(スペース)(タブ)<br />
(スペース)(スペース)<br />
mno p<br />
みたいなテキストがあったときに、上記コマンドを実行すると<br />
abc def<br />
ghi jkl<br />
mno p<br />
といった形いなります。<br />
== タブやスペースや改行だけの空白行を削除する方法 ==<br />
タブやスペースと改行だけの行を消すコマンドは以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
:v/\S/d<br />
</syntaxhighlight><br />
もしくは<br />
<syntaxhighlight lang="vim"><br />
:g/^\s*$/d<br />
</syntaxhighlight><br />
になります。<br />
<br />
文字クラスを0回以上マッチとすることで ^$ にもマッチするため、改行だけの行も削除できるようになります。<br />
純粋に '''改行だけの行''' を削除したい場合は、 [[vimで改行だけの空行を削除する方法]] をご参照下さい。<br />
== \s の意味 ==<br />
正規表現にあたる \s とは、改行以外の空白文字にマッチする[[vim]]の'''文字クラス'''です。<br />
== 関連項目 ==<br />
* [[vimの検索と置換]]<br />
* [[vimで改行だけの空行を削除する方法]]<br />
* [[vimのパターン検索と置換で知っておくべきこと]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%A7%E6%94%B9%E8%A1%8C%E3%81%A0%E3%81%91%E3%81%AE%E7%A9%BA%E8%A1%8C%E3%82%92%E5%89%8A%E9%99%A4%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimで改行だけの空行を削除する方法
2017-06-06T15:03:30Z
<p>Daemon: </p>
<hr />
<div>テキストを編集しているときに、'''空行'''を削除したい場合があります。[[vim]]では、空行(改行だけの行)を簡単に削除できます。その方法をここで紹介します。<br />
<br />
'''読み方'''<br />
;blank line:ぶらんく らいん<br />
__TOC__<br />
<br />
== 概要 ==<br />
空行とは、 <s>空の行</s>です。英語だと'''ブランクライン'''(black line) になります。空行といっても、実際には、「改行だけの行」になります。<br />
<br />
例えば、以下のテキストであれば、2行目が「改行だけの行」(空行)です。<br />
<syntaxhighlight lang="c"><br />
int main (int argc, char *argv[]) {<br />
<br />
}<br />
</syntaxhighlight><br />
それでは、空行の消し方を紹介します。<br />
== 空行を消すコマンド ==<br />
空行を削除する方法は、いくつかあります。<br />
* :v/./d<br />
* :g/^$/d<br />
<br />
この :v/./d は、入力は簡単なのですが、空行の削除後に、テキスト全体がハイライトされてしまうため、 ハイライトを消したい場合は、 :nohl の実行が必要になってしまいます。<br />
<br />
nohl の実行も考えれば、 :g/^$/d のほうが、結果的な入力量も少なく、簡単ということになります。<br />
== nohl について ==<br />
nohl については、 [[vimの検索のハイライトを消す方法]] をご参照下さい。<br />
== 関連項目 ==<br />
* [[vimの検索と置換]]<br />
* [[vimの検索のハイライトを消す方法]]<br />
* [[vimでタブやスペースだけの空白行を削除する方法]]<br />
* [[vimのパターン検索と置換で知っておくべきこと]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%A7%E8%A1%8C%E3%82%92%E8%A4%87%E8%A3%BD%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimで行を複製する方法
2017-06-05T15:02:23Z
<p>Daemon: </p>
<hr />
<div>テキストの編集において、コピー&ペーストは重要です。[[vim]] で「行」を複製(デュプリケート)する方法を紹介します。その応用で、複数行も簡単にコピー&ペーストできます。<br />
<br />
'''読み方'''<br />
;yank:やんく<br />
__TOC__<br />
<br />
== 概要 ==<br />
コピー&ペーストは、[[vim]]の用語では、'''ヤンク''' とペーストです。<br />
<br />
行の複製は、プログラムを書いているときや文章を書いているときに便利です。<br />
例えば、変数宣言の行をコピーして、ペーストすることで、タイプ量を減らせるからです。<br />
<br />
yy と p を使いこなせることで、コピー&ペーストも高速にこなせるようになります。わざわざ、マウスで範囲選択する必要もありませんし、カーソルキーを使用して、時間をかけて範囲を選択する必要もありません。HOMEとENDなどのキーを併用して、移動する必要もありません。<br />
== 行の複製 ==<br />
行全体をコピーする場合は、以下のいずれかを使用します。<br />
* yy<br />
* Y<br />
<br />
y は、 yank (ヤンク) の y です。<br />
<br />
ペーストには、以下のいずれかを利用します。<br />
;p:カーソル行の次に新しい行を作成してペーストする<br />
;P:カーソル行の前に新しい行を作成してペーストする<br />
<br />
p は put の p です。<br />
<br />
現在の行全体をコピーして、カーソル行の次の行にペーストする場合は<br />
yyp<br />
か<br />
Yp<br />
になります。<br />
== 複数行の複製 ==<br />
yy では、カレント行しかコピーできません。<br />
復数行をコピーする場合には、 yy の前に行数を指定します。<br />
たとえば、3行をコピーしたいのであれば、<br />
3yy<br />
となります。<br />
<br />
そのあとで、ペーストしたい行まで行って、 p を使用します。<br />
== ビジュアルモードで複数行の複製 ==<br />
行単位のビジュアルモードを使用することで、ビジュアルモードで、範囲を選択することができます。何行コピーしたいかわからないときなどに、視覚的に選択できて非常に便利です。<br />
<br />
# Shift+v で行単位のビジュアルモードに入り、範囲を指定する<br />
# 範囲指定が終わったら、 y でコピーします。<br />
# ペーストしたい位置に移動して p で貼り付けます。<br />
<br />
== カット&ペースト ==<br />
このドキュメントは、コピー&ペースト(複製)がメインだったのですが、カットも参考程度に書いておきます。<br />
yyp だとコピー&ペーストになりますが、行単位の削除の dd と p を組み合わせることで、カット&ペーストができます。<br />
ddp<br />
ddp だとカレントの行を次の行と入れ替える結果になります。<br />
== まとめ ==<br />
* [[vim]] では、コピーを'''ヤンク'''といいます<br />
* yyp (後にペースト) や yyP (前にペースト) で簡単にコピー&ペーストができます<br />
* 複数行コピーして貼り付ける場合は、 3yy (3行コピー) して、 p で貼り付けます。<br />
* ビジュアルモード(Shift+v)で行選択し、 y でコピーして、 p で貼り付けられます。<br />
== 関連項目 ==<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%AE%E6%96%87%E5%AD%97%E5%88%97%E7%BD%AE%E6%8F%9B%E3%81%A7%E7%BD%AE%E6%8F%9B%E5%BE%8C%E3%81%AE%E6%96%87%E5%AD%97%E5%88%97%E3%81%AB%E6%94%B9%E8%A1%8C%E3%82%92%E5%90%AB%E3%82%81%E3%82%8B%E6%96%B9%E6%B3%95
vimの文字列置換で置換後の文字列に改行を含める方法
2017-06-04T13:15:41Z
<p>Daemon: /* 関連項目 */</p>
<hr />
<div>[[vim]]では、文字列置換に s コマンド を使います。置換する文字列に「改行」を含めたいこともよくありますし、改行コードを置換したいときもあります。今回は、文字列を置換するときに、リプレイス後の文字列に改行を含める方法を紹介します。<br />
<br />
'''読み方'''<br />
;置換:ちかん<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]] では、文字列置換に<br />
%s/検索パターン/置換後の文字列/オプション<br />
がよく使います。<br />
<br />
行だけなら<br />
:s<br />
を使い、バッファ全体なら<br />
:%s<br />
になります。<br />
<br />
「置換後の文字列」に「改行」を含めたいこともあると思います。私もよく、置換後に改行を入れる、といったことをよくやっています。<br />
== 置換後の文字列に改行を入れるやりかた ==<br />
改行を指定するときには、<br />
C-v Return<br />
を入力します(コントロール + v のあとに リターンキーを押します)。<br />
^M<br />
みたいな文字列が入ります。この '''^M''' が '''改行''' を意味します。<br />
<br />
例えば、 ''',''' (カンマ) を '''改行''' に切り替える場合は<br />
:%s/,/^M/<br />
になります。行のすべての ''',''' (カンマ) を '''改行''' にする場合は、 g オプションをつけます。<br />
:%s/,/^M/g<br />
<br />
<br />
''',''' (カンマ) の後に '''改行''' を追加したい場合だと<br />
:%s/,/,^M/g<br />
となります。<br />
<br />
例えば、 foo を foo 改行 bar みたいにしたいのであれば、こんな感じになります(^M は コントロール +v + 改行です)。<br />
:%s/foo/foo^Mbar/g<br />
<br />
== \r を使う場合 ==<br />
^M の代わりに \r を使うこともできます。<br />
行のすべての ''',''' (カンマ) を '''改行''' にする場合は、 g オプションをつけます。<br />
:%s/,/\r/g<br />
<br />
''',''' (カンマ) の後に '''改行''' を追加したい場合だと<br />
:%s/,/,\r/g<br />
となります。<br />
<br />
== 関連項目 ==<br />
* [[vimの検索と置換]]<br />
* [[vimのパターン検索と置換で知っておくべきこと]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%AE%E6%A4%9C%E7%B4%A2%E3%81%AE%E3%83%8F%E3%82%A4%E3%83%A9%E3%82%A4%E3%83%88%E3%82%92%E6%B6%88%E3%81%99%E6%96%B9%E6%B3%95
vimの検索のハイライトを消す方法
2017-06-03T14:28:53Z
<p>Daemon: /* 関連項目 */</p>
<hr />
<div>[[vim]]の検索は、マッチした文字列を'''ハイライト'''できますが、検索後に'''ハイライト'''されたままになります。簡単に'''ハイライト'''を消す(クリア)できます。その方法をここでは紹介します。<br />
<br />
'''読み方'''<br />
;nohlsearch: のー えいちえる さーち<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]] の検索は、 hlsearch オプションにより、検索のマッチした文字列の'''ハイライト'''('''強調表示''')ができます。ハイライト表示は、非常に便利ですが、ときに、ハイライト表示が邪魔に感じるときもあります。<br />
<br />
そういった場合には、ハイライト表示を消すことで、快適な編集作業を継続できます。<br />
<br />
ここでは、ハイライト表示の簡単な消し方を紹介します。<br />
== ハイライトを消す方法 ==<br />
[[vim]]の検索のハイライト( hlsearch ) は、 nohlsearch コマンドで簡単に消せます。以下の例は、短縮形コマンドです。<br />
<syntaxhighlight lang="vim"><br />
:noh<br />
</syntaxhighlight><br />
== ハイライトを消すキーバインドを追加する ==<br />
''':noh''' をタイプするのが面倒という方は、キーバインドの設定をオススメします。 例えば、 '''ESC''' を2回叩いて、ハイライトを消す設定は、以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
nmap <Esc><Esc> :nohl<CR><br />
</syntaxhighlight><br />
== nohlsearch ってなに? ==<br />
'''nohlsearch''' は、 no highlight search の略でしょう。<br />
== ハイライト検索そのものをやめる方法 ==<br />
''':noh''' では、ハイライトされている表示を消すだけですが、ハイライト検索 (hlsearch) そのものをやめる場合には、以下の設定を行います。<br />
<syntaxhighlight lang="vim"><br />
:set nohlsearch<br />
</syntaxhighlight><br />
もしくは<br />
<syntaxhighlight lang="vim"><br />
:set hlsearch!<br />
</syntaxhighlight><br />
です。<br />
<br />
これで、検索してマッチしたハイライトはされなくなります。<br />
== まとめ ==<br />
* :noh で検索のハイライトを消すことができます。<br />
* キーバインドを設定することで、検索のハイライトをより簡単に消すことができます。<br />
== 関連項目 ==<br />
* [[vimの検索と置換]]<br />
* [[vimのパターン検索と置換で知っておくべきこと]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%A7%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E9%96%8B%E3%81%8F%E6%96%B9%E6%B3%95
vimでファイルを開く方法
2017-05-31T16:35:30Z
<p>Daemon: ページの作成:「vimでファイルを開く方法を紹介します。ファイルの開き方を覚えることで、vimに入力するコマンドを省略することが可能...」</p>
<hr />
<div>[[vim]]でファイルを開く方法を紹介します。ファイルの開き方を覚えることで、[[vim]]に入力するコマンドを省略することが可能になります。<br />
<br />
'''読み方'''<br />
;[[vim]]:ぶいあいえむ<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]] でファイルを開くときは<br />
* コマンドライン引数でファイルを指定する<br />
* [[vim]] の起動後に コマンドファイルを開く<br />
といった方法があります。<br />
<br />
また、ウィンドウモードの [[vim]] ([[gvim]]) では、ウィンドウのメニューから開くこともできますが、今回の対象ではありません。<br />
== コマンドラインで開くファイルを指定する ==<br />
[[vim]] を起動するときに、コマンドライン引数でファイル名を指定することで、ファイルを開くことができます。<br />
<syntaxhighlight lang="vim"><br />
$ vim main.c<br />
</syntaxhighlight><br />
== コマンドラインで開くファイルを復数指定する ==<br />
復数のファイルを指定すれば、復数のファイルを開くことができます。<br />
<syntaxhighlight lang="vim"><br />
$ vim main.c main.h<br />
</syntaxhighlight><br />
== コマンドラインで指定した復数のファイルをタブで開く方法 ==<br />
[[vim]]のコマンドライン引数で指定した復数のファイルを別々のタブで開くには、 -p オプションを利用します。<br />
<syntaxhighlight lang="vim"><br />
$ vim -p Makfile main.c main.h<br />
</syntaxhighlight><br />
こうすることで、すべてのファイルが別々のタブで開かれます。<br />
== コマンドラインで指定した復数のファイルを水平分割で開く方法 ==<br />
[[vim]]で復数のファイルを編集しているときに便利なのが、画面分割です。 :sp (split) は非常に便利です。<br />
[[vim]]のコマンドライン引数でファイルを復数指定したときに、 -o オプションを使うことで、[[vim]]を起動したときに水平分割でファイルを表示できます。<br />
<syntaxhighlight lang="vim"><br />
$ vim -o Makfile main.c main.h<br />
</syntaxhighlight><br />
== コマンドラインで指定した復数のファイルを垂直分割で開く方法 ==<br />
:vsp (水平分割)で分割して、それぞれのウィンドウにコマンドライン引数で指定したファイルを表示することもできます。<br />
<syntaxhighlight lang="vim"><br />
$ vim -O Makfile main.c main.h<br />
</syntaxhighlight><br />
== コマンドラインで指定したファイルを差分表示で開く方法 ==<br />
[[vim]]には、 diff (差分) モードがあります。<br />
ソースコードのレビュー、変更点の確認などをするときに便利です。<br />
<syntaxhighlight lang="vim"><br />
$ vim -d main.c main.c.ORG<br />
</syntaxhighlight><br />
<br />
vimdiff は、 -d オプションと等価です。<br />
<syntaxhighlight lang="vim"><br />
$ vimdiff main.c main.c.ORG<br />
</syntaxhighlight><br />
<br />
== vimコマンドでファイルを開く ==<br />
これは、 [[vim]] のコマンドでファイルを開く、単純な例です。<br />
<syntaxhighlight lang="vim"><br />
:vi /etc/hosts<br />
</syntaxhighlight><br />
<br />
''':e''' コマンド でもファイルを開くことができます。<br />
<syntaxhighlight lang="vim"><br />
:e /etc/hosts<br />
</syntaxhighlight><br />
== vimコマンドで復数のファイルを開く ==<br />
vimのコマンドで復数のファイルを開くことができます。<br />
<syntaxhighlight lang="vim"><br />
:arg main.c main.h<br />
</syntaxhighlight><br />
<br />
C言語のソースコードをまとめて開きたいときには、以下のコマンドが便利です。<br />
<syntaxhighlight lang="vim"><br />
:arg *.c<br />
</syntaxhighlight><br />
<br />
同じディレクトリにあるC言語のソースコードとヘッダファイルの両方を開きたいときには、このようなコマンドで開くこともできます。<br />
<syntaxhighlight lang="vim"><br />
:arg *.{c,h}<br />
</syntaxhighlight><br />
== まとめ ==<br />
いろいろなファイルの開き方があることがご理解頂けたと思います。必要に応じて、開き方を変えることにより、時間の短縮につながってきます。<br />
== 関連項目 ==<br />
* [[vimを終了する方法]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%82%92%E7%B5%82%E4%BA%86%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimを終了する方法
2017-05-30T15:17:08Z
<p>Daemon: </p>
<hr />
<div>[[vim]] には、いろいろな [[vimを終了する方法]] があります。いろいろな便利な方法(コマンド)がありますので、紹介します。初心者がまず覚えるのは :q や :q! と :wq の3つでしょうか。<br />
<br />
'''読み方'''<br />
;[[vim]]:ぶいあいえむ<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]]は、コマンドで操作する不思議なエディタです。おそらく、vi / vim をはじめて起動したときには、戸惑いがあったでしょう。<br />
とにかく覚えないといけないのは<br />
* :q<br />
* :q!<br />
* :wq<br />
* :wq!<br />
あたりではないでしょうか。<br />
<br />
このページにあるコマンドが覚えられれば、とりあえず、[[vim]] の終了は困らないと思います。<br />
== 上書きせずに終了する ==<br />
これは、非常によく使われる終了方法の1つです。<br />
<br />
カレントのウィンドウに変更がないときに終了する方法です。ウィンドウに変更があると終了できません。<br />
<syntaxhighlight lang="vim"><br />
:q<br />
</syntaxhighlight><br />
<br />
''':q''' は、'''カレントウィンドウ''' を閉じるか、最後のカレントウィンドウであれば、[[vim]] を終了してくれます。<br />
<br />
カレントウィンドウが変更されている場合には、[[vim]] は終了しません。<br />
== 保存せずにとにかく終了する ==<br />
これは、非常によく使われる終了方法の1つです。<br />
<br />
カレントウィンドウに変更があっても、保存せずにカレントウィンドウを閉じるか、最後のウィンドウであれば[[vim]]を終了します。<br />
<syntaxhighlight lang="vim"><br />
:q!<br />
</syntaxhighlight><br />
とりあえず、ファイルの中身を調べたくて開いてみたが、変更はしたくないので、保存せずに終了するときに、よく使われるコマンドです。<br />
<br />
同様のコマンドに、'''ZQ''' があります。<br />
<syntaxhighlight lang="vim"><br />
ZQ<br />
</syntaxhighlight><br />
== 保存して終了する ==<br />
これは、非常によく使われる終了方法の1つです。<br />
<br />
カレントウィンドウを上書きして、カレントウィンドウを閉じるか、最後のウィンドウであれば、[[vim]] を終了します。<br />
<syntaxhighlight lang="vim"><br />
:wq<br />
</syntaxhighlight><br />
<br />
この :wq の良いところは、このコマンドで、保存と終了(もしくはカレントウィンドウを閉じる)ことができることです。<br />
たとえば、保存と終了は、以下のコマンドでもできるわけですが、2回のコマンド入力が必要になり、面倒ですし、タイピングの量も多くなるため、時間もその分かかります。<br />
<syntaxhighlight lang="vim"><br />
:w<br />
:q<br />
</syntaxhighlight><br />
つまり :wp は、 :w, :q の短縮形なわけです。<br />
== 保存して終了する ==<br />
強制的に上書きして終了する場合には、''':wq''' に ! をつけます。<br />
<syntaxhighlight lang="vim"><br />
:wq!<br />
</syntaxhighlight><br />
「ほかの [[vim]] で開いているファイル」を 新しい [[vim]] で開いてしまった場合に、「リードオンリー」(読み取り専用)で開いてしまうことがあります。<br />
リードオンリーで開いてしまったが、どうしても上書きしたい場合には、 :wq! となります(上書きしたいだけなら :w!)。<br />
== 変更があれば保存して終了する ==<br />
カレントに変更があれば、保存して、[[vim]] を終了します。<br />
復数のウィンドウがある場合には、カレントに変更があれば、保存されますが、終了はしませんが、最後のウィンドウにいる場合には、[[vim]]が終了されます。<br />
<syntaxhighlight lang="vim"><br />
ZZ<br />
</syntaxhighlight><br />
<br />
'''ZZ''' と同様の動きをするのが ''':x''' です。<br />
<syntaxhighlight lang="vim"><br />
:x<br />
</syntaxhighlight><br />
== すべてのファイルを保存して終了する ==<br />
すべてのファイルを上書き保存して、終了します。<br />
<syntaxhighlight lang="vim"><br />
:wqa<br />
</syntaxhighlight><br />
どれかが変更されているが、変更しているファイルを調べるのが面倒なので、とりあえず、上書きして終了したいときに使えます。<br />
== 復数のファイルをすべて閉じる ==<br />
復数のファイルを開いているときに、[[vim]] を終了したいときに、利用します。変更されたウィンドウがなければ、[[vim]]は終了します。<br />
<syntaxhighlight lang="vim"><br />
:qa<br />
</syntaxhighlight><br />
たくさんファイルを開いているときに、1つ1つのウィンドウを閉じるのは、骨が折れます。復数のファイルを開いて [[vim]] を使われる方には、便利なコマンドです。<br />
== とにかくすべて閉じる ==<br />
復数のファイルを開いて、保存されていないウィンドウがあっても、とにかく[[vim]]を終了したいときに使えるコマンドです。<br />
<syntaxhighlight lang="vim"><br />
:qa!<br />
</syntaxhighlight><br />
変更は保存せずに、終了したいときに、非常に便利です。変更されたウィンドウがどれか、とか、わざわざ考える必要なく、終了できます。<br />
== まとめ ==<br />
[[vim]] を終了するコマンドはたくさんありますが、このあたりを抑えておけば、良いのではないでしょうか。<br />
一度に覚えるのは、大変かもしれませんが、少しずつ覚えていけば、自然と慣れていきます。<br />
{|class="wikitable"<br />
|+ vimを終了させるコマンド一覧<br />
! やりたいこと<br />
! 単体のファイル向けコマンド<br />
! 復数のファイル向けコマンド<br />
|-<br />
| 保存せずに終了<br />
| :q<br />
| :qa<br />
|-<br />
| 変更を破棄して終了<br />
| :q!<br />
| :qa!<br />
|-<br />
| 上書きして保存<br />
| :wq<br />
| :wqa<br />
|-<br />
| とにかく上書きして保存<br />
| :wq!<br />
| :wqa!<br />
|}<br />
== 関連項目 ==<br />
* [[vimでファイルを開く方法]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim_8.0%E3%81%AE%E6%96%B0%E6%A9%9F%E8%83%BD%E3%82%92%E8%A7%A3%E8%AA%AC%E3%81%97%E3%81%BE%E3%81%99
vim 8.0の新機能を解説します
2016-10-09T16:14:17Z
<p>Daemon: ページの作成:「vim 8.0 は 2016年9月12日にリリースされました。vim 8.0 は、バグ修正のほかに、機能拡張も行われています。ここでは、[[vim]...」</p>
<hr />
<div>[[vim]] 8.0 は 2016年9月12日にリリースされました。[[vim]] 8.0 は、バグ修正のほかに、機能拡張も行われています。ここでは、[[vim]] 8.0 の新機能を解説します。<br />
<br />
'''読み方'''<br />
;vim 8.0:ぶいあいえむ はってんぜろ<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]] 8.0 では、いろいろな機能が追加されました。非同期機能やラムダのサポート、オフィシャルなパッケージ管理機能など、[[vim]]が格段にパワーアップしています。[[vim]] 8.0 の機能拡張を紹介します。<br />
== vim 8.0 の新機能のサマリ ==<br />
;channel:非同期I/Oをサポート<br />
;job: ジョブ機能による非同期コマンド実行<br />
;timer: 非同期のタイマー実行<br />
;lambda(ラムダ), closure(クロージャ): ラムダがサポート<br />
;packages: パッケージ管理のサポート<br />
;test-functions: vim 開発者向けのテストフレームワークの提供<br />
;Windows IDs(ウィンドウID): ウィンドウ管理にユニークなIDで管理できるAPIの追加(win_getid(), win_id2win())<br />
;viminfo-timestamp: タイムスタンプを利用した viminfo<br />
;breakindent: インデントをつけた折り返し<br />
;Windows DirectX: Windows 環境では DirectX (DirectWrite) がサポートされました<br />
;GTK+3: GTK+3 がサポートされました<br />
;Visualモード時のC-a/C-x: ビジュアルモードで選択した範囲の数値のインクリメント・デクリメント<br />
;defaults.vim: .vimrc がない場合にロードされる既定値<br />
== 関連項目 ==<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%81%AEdbext.vim%E3%81%A7SQL%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E3%82%92%E6%93%8D%E4%BD%9C%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95
vimのdbext.vimでSQLデータベースを操作する方法
2016-08-06T10:41:12Z
<p>Daemon: ページの作成:「MySQLやOracleなどのデータベースを扱うときに、それぞれのSQLクライアントを利用してデータベースを参照・操作を行います。そ...」</p>
<hr />
<div>MySQLやOracleなどのデータベースを扱うときに、それぞれのSQLクライアントを利用してデータベースを参照・操作を行います。それぞれのクライアントをもっとエディタのように編集・入力ができたら、と思われる方も多いと思います。vim/neovimやEmacsは、エディタの上からリレーショナルデータベースを操作できます。ここでは、プラグインのdbext.vimを利用した例を紹介します。<br />
<br />
'''読み方'''<br />
;dbext.vim:でぃーびー いーえっくすてぃー ぶいあいえむ<br />
__TOC__<br />
<br />
== 概要 ==<br />
ここでは、データベースの操作を vim/neovim を行うための方法を紹介します。<br />
<br />
プラグインの '''dbext.vim''' を使用した例になります。<br />
dbext.vim は、 MySQL や Oracle, SQLite などをはじめ、たくさんのデータベースをサポートしています。<br />
<br />
エディタからデータベースを操作することにより、エディタの編集能力を借りることができるのが、最大のメリットといえるでしょう。<br />
<br />
ここでは、MySQL (実際にはMariaDB) を例として扱います。<br />
== データベースのクライアントの課題 ==<br />
データベースの操作には、データベースのクライアントを通じて行います。もしくは、プログラミング言語ごとに提供されるドライバを通して、データベースと通信します。<br />
<br />
MySQL/MariaDB なら mysqlコマンド, Oracleなら sqlplus など、専用のクライアントコマンドが提供されています。<br />
<br />
専用コマンドの問題点は、SQL入力プロンプトにエディタのような柔軟な編集能力がないことではないでしょうか。<br />
== dbext.vim が扱えるデータベース ==<br />
idbext.vim がサポートしているデータベースは、以下の通りです。<br />
* ODBC / Perl DBI (Any database with a Perl DBI driver) <br />
* MySQL <br />
* Oracle <br />
* Oracle Rdb (VMS) <br />
* SAP HANA <br />
* SAP Sybase SQL Anywhere (SA/ASA) <br />
* SAP Sybase IQ (ASA) <br />
* SAP Sybase Adaptive Server Enterprise (ASE) <br />
* SAP Sybase UltraLite (UL) <br />
* Microsoft SQL Server <br />
* IBM DB2 <br />
* Interbase <br />
* SQLite <br />
* PostgreSQL <br />
* Ingres <br />
* Firebird <br />
* Crate.IO <br />
== インストール ==<br />
=== dein.vim ===<br />
dein の場合は、以下の設定を .vimrc に書き、 :call dein#install() を実行してください。<br />
<syntaxhighlight lang="vim"><br />
call dein#add('vim-scripts/dbext.vim')<br />
</syntaxhighlight><br />
=== NeoBundle ===<br />
[[NeoBundle]] の場合は、以下の設定を .vimrc に書き、 :NeoBundleInstall を実行してください。<br />
<syntaxhighlight lang="vim"><br />
NeoBundle 'vim-scripts/dbext.vim'<br />
</syntaxhighlight><br />
== 設定 ==<br />
以下は、MySQL サーバに接続する場合の例です。<br />
<syntaxhighlight lang="vim"><br />
let g:dbext_default_profile_mySQL = 'type=MYSQL:srvname=localhost:user=root:passwd=:dbname=test'<br />
</syntaxhighlight><br />
上記の場合、プロファイル名は、 mySQL となります。<br />
<br />
この設定は、複数書くことができます。<br />
その場合は、プロファイル名を重複しないように書きます。<br />
== データベースプロファイルの切り替え ==<br />
プロファイルを切り替えることで、データベースの接続を切り替えます。<br />
<br />
選択ウィザードを表示する場合は、以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
<Leader>sbp<br />
</syntaxhighlight><br />
上記のコマンドを実行すると、以下のような選択画面が表示されます。数字で、プロファイルを指定して、エンターを押します。<br />
<syntaxhighlight lang="vim"><br />
dbext:Connection parameters have been defaulteddbext: Executing SQL at 18:57<br />
0. None<br />
1. mySQL<br />
[Optional] Enter profile #: 0<br />
</syntaxhighlight><br />
<br />
もしくは、以下のコマンドで直接変更できます。<br />
<syntaxhighlight lang="vim"><br />
:DBSetOption profile=test<br />
</syntaxhighlight><br />
== テーブル一覧を表示する ==<br />
以下のコマンドで、テーブル一覧を表示できます。<br />
<syntaxhighlight lang="vim"><br />
<Leader>slt<br />
</syntaxhighlight><br />
<br />
テーブルのプレフィックスを入力するように求められます。<br />
<syntaxhighlight lang="vim"><br />
Enter table prefix:<br />
</syntaxhighlight><br />
特に指定するものがなければ、エンターで構いません。<br />
以下は、テーブルが1つしかありませんので、1つだけ表示されています。<br />
<syntaxhighlight lang="vim"><br />
Connection: T(MYSQL) S(localhost) D(test) U(root) at 18:59<br />
+--------------------+<br />
| Tables_in_test (%) |<br />
+--------------------+<br />
| user |<br />
+--------------------+<br />
~<br />
Result 16% 1:1<br />
Enter table prefix: dbext: Executing SQL at 18:59<br />
</syntaxhighlight><br />
== テーブルの内容を表示 ==<br />
カーソルをテーブル名に置き、以下のコマンドを実行すると、テーブルの内容が表示されます。<br />
<syntaxhighlight lang="vim"><br />
<Leader>st<br />
</syntaxhighlight><br />
表示された例は、以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
Connection: T(MYSQL) S(localhost) D(test) U(root) at 19:01<br />
+------+------+<br />
| id | name |<br />
+------+------+<br />
| 1 | a |<br />
| 2 | b |<br />
+------+------+<br />
</syntaxhighlight><br />
== 任意のSQLを実行する ==<br />
DBExecSQLUnderCursor を実行すると、カーソル上の SQL を実行できます。<br />
<br />
vim に入力された SQL の文の行のカーソルを置き、以下のショートカットキーを実行すると、SQL が実行できます。<br />
<syntaxhighlight lang="vim"><br />
<Leader>se<br />
</syntaxhighlight><br />
<br />
たとえば、以下のSQL文を入力し、カーソルを同じ行に置きます。<br />
<syntaxhighlight lang="sql"><br />
select * from user;<br />
</syntaxhighlight><br />
ここで、以下のキーを入力します。<br />
<syntaxhighlight lang="vim"><br />
<Leader>se<br />
</syntaxhighlight><br />
そうすると、画面分割され、実行結果が表示されます。<br />
<syntaxhighlight lang="sql"><br />
Connection: T(MYSQL) S(localhost) D(test) U(root) at 19:06<br />
+------+------+<br />
| id | name |<br />
+------+------+<br />
| 1 | a |<br />
| 2 | b |<br />
+------+------+<br />
</syntaxhighlight><br />
<br />
以下のようにすれば、<br />
<syntaxhighlight lang="sql"><br />
select * from user where name='a';<br />
</syntaxhighlight><br />
実行すると<br />
<syntaxhighlight lang="sql"><br />
Connection: T(MYSQL) S(localhost) D(test) U(root) at 19:05<br />
+------+------+<br />
| id | name |<br />
+------+------+<br />
| 1 | a |<br />
+------+------+<br />
</syntaxhighlight><br />
となります。<br />
== まとめ ==<br />
* dbext.vim からデータベースが操作できる<br />
* vimのバッファ内のSQL文を簡単に実行できる<br />
* 実行結果は、vim バッファ内に表示されるので、実行結果の編集も簡単<br />
== 関連項目 ==<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/Vim%E3%81%A8NeoVim%E3%81%AE%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%83%9E%E3%83%8D%E3%83%BC%E3%82%B8%E3%83%A3Dein.vim
VimとNeoVimのプラグインマネージャDein.vim
2016-03-12T11:05:41Z
<p>Daemon: </p>
<hr />
<div>'''Dein.vim'''とは、[[vim]]と[[neovim]] の '''プラグインマネージャ'''です。[[vimのプラグイン管理]]といえば、[[NeoBundle]]が有名ですが、'''Dein.vim'''は、[[NeoBundle]]の開発者によって開発されたプラグインです。[[NeoBundle]]の開発は終了してしまったため、[[NeoBundle]]をご利用の場合は、'''Dein.vim'''に移行した方がよいでしょう。<br />
<br />
'''読み方'''<br />
;'''Dein.vim''':でいん ぶいあいえむ<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]] を使うときに、手放せない必須アイテムの1つが、'''プラグインマネージャ'''でしょう。[[vim]]は、とても強力なエディタですが、[[vim]]のプラグインを使わずに使うのは、とてももったいないです。そのプラグインの管理を簡単にしてくれるのが、プラグインマネージャです。プラグインマネージャには、いろいろありますが、以前は、[[NeoBundle]] を利用していました。現在では、[[NeoBundle]]の開発者が作っている '''Dein.vim''' を利用し始めました。<br />
<br />
[[NeoBundle]]から移行するのは、腰が重いかもしれませんが、 '''Dein.vim'''の方が'''爆速'''だそうです。'''vimer'''には、あらゆる事に対して、スピード狂な方が多いと思います。プラグインも爆速のほうがいいですよね。<br />
<br />
Vimのプラグインは、 tom l形式で設定できるようになりました。<br />
== 動作環境 ==<br />
* Vim 7.4 以上、もしくは、[[neovim]]<br />
* '''git'''コマンド<br />
== 導入 ==<br />
<syntaxhighlight lang="bash"><br />
$ curl https://raw.githubusercontent.com/Shougo/dein.vim/master/bin/installer.sh -o /tmp/installer.sh<br />
$ sh /tmp/installer.sh ~/.vim/dein<br />
</syntaxhighlight><br />
== 設定 ==<br />
installer.sh を実行すると以下の vim の設定が表示されます。<br />
<syntaxhighlight lang="vim"><br />
"dein Scripts-----------------------------<br />
if &compatible<br />
set nocompatible " Be iMproved<br />
endif<br />
<br />
" Required:<br />
set runtimepath^=~/.vim/dein/repos/github.com/Shougo/dein.vim<br />
<br />
" Required:<br />
call dein#begin(expand('~/.vim/dein'))<br />
<br />
" Let dein manage dein<br />
" Required:<br />
call dein#add('Shougo/dein.vim')<br />
<br />
" Add or remove your plugins here:<br />
call dein#add('Shougo/neosnippet.vim')<br />
call dein#add('Shougo/neosnippet-snippets')<br />
<br />
" You can specify revision/branch/tag.<br />
call dein#add('Shougo/vimshell', { 'rev': '3787e5' })<br />
<br />
" Required:<br />
call dein#end()<br />
<br />
" Required:<br />
filetype plugin indent on<br />
<br />
" If you want to install not installed plugins on startup.<br />
"if dein#check_install()<br />
" call dein#install()<br />
"endif<br />
<br />
"End dein Scripts-------------------------<br />
</syntaxhighlight><br />
== プラグインのインストール ==<br />
プラグインのインストールは、以下のコマンドで行います。<br />
<syntaxhighlight lang="vim"><br />
:call dein#install()<br />
</syntaxhighlight><br />
== プラグインのアップデート ==<br />
プラグインのアップデートは、以下のコマンドで行います。<br />
<syntaxhighlight lang="vim"><br />
:call dein#update()<br />
</syntaxhighlight><br />
== インストールされているプラグインの確認方法 ==<br />
'''Unite''' を利用して、プラグインを確認できます。<br />
<syntaxhighlight lang="vim"><br />
:Unite dein<br />
</syntaxhighlight><br />
== まとめ ==<br />
* [[NeoBundle]] の開発は終了しました。<br />
* [[NeoBundle]] の代わりに、 '''Dein.vim'''(デイン) を利用しましょう。<br />
* '''Dein.vim''' は、[[NeoBundle]] よりも高速です。<br />
== 関連項目 ==<br />
* [[NeoBundle]]<br />
* [[vimのプラグイン管理]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/Chrome%E3%82%84Firefox%E3%81%A7%E3%82%A6%E3%82%A7%E3%83%96%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%AEtextarea%E3%82%92vi%E5%8C%96%E3%81%99%E3%82%8B%E3%82%A8%E3%82%AF%E3%82%B9%E3%83%86%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%B3wasavi
ChromeやFirefoxでウェブページのtextareaをvi化するエクステンションwasavi
2016-01-12T12:14:40Z
<p>Daemon: </p>
<hr />
<div>ウェブページのテキストエリアを'''vi'''で編集できたら...と思ったことはありませんか?いくつかの方法で、そのようなことを実現できます。vi は、貴方のスピードを加速させます。wasavi は、テキストエリアでの貴方を加速します。<br />
<br />
'''読み方'''<br />
;wasavi:わさび<br />
__TOC__<br />
<br />
== 概要 ==<br />
It's all text は、Firefox でしか使えなかったので、困っていたのたので、使ってみました。It's all text は、Firefox のエクステンションで、フォームから好きな(vimの)エディタを呼び出せます。<br />
<br />
wasavi は、 Chrome, Firefox, Opera 用のエクステンションです。テキストエリアを vi のように編集することができます。<br />
<br />
Firefox のプラグインの It's all text とは違い、新しいウィンドウが表示されるわけではなく、テキストエリアがそのまま '''vi'''(vim) っぽく なります。<br />
<br />
== wasaviとは ==<br />
wasavi は、ブラウザに表示されたテキストエリアを vi 風のキーバインドで編集するためのブラウザのエクステンションです。<br />
== インストール ==<br />
まずは、エクステンションをインストールします。<br />
* [https://chrome.google.com/webstore/detail/wasavi/dgogifpkoilgiofhhhodbodcfgomelhe?hl=ja chrome wasavi]<br />
== テキストエリアを vi 化する ==<br />
テキストエリアのある適当なウェブページを開いて下さい。<br />
テキストエリアをクリックして、フォーカスをあてたら、<br />
Cntl + Enter<br />
を押すと、テキストエリア内に vi 風の画面が表示されます。<br />
== 編集する ==<br />
'''vi''' と同じように編集できます。微妙にビジュアルモードも利用できます。ただし、矩形ビジュアルモードはサポートされていないようです。置換なども行えます。<br />
== 終らせ方 ==<br />
テキストエリアを vi 化し、編集が終わったら、vi のように<br />
<syntaxhighlight lang="bash"><br />
:wq<br />
ZZ<br />
</syntaxhighlight><br />
などで、保存して終了することで、通常のテキストエリアに戻ります。その時に、編集した内容がフォームに書き込まれます。<br />
== wasavi のメリットとデメリット ==<br />
wasavi の良いところは、ブラウザと wasavi と呼ばれるエクステンションで関係することだと思います。また、複数のブラウザをサポートしているところも良いと思います。<br />
<br />
一方で、'''vi'''/vim 風の機能を提供しますが、やはり [[vim]] ではないため、力不足の面があります。[[vim]] のようなプラグインによる拡張が利用できないため、補完能力などに不満が出るかもしれません。画面分割もできません。<br />
== It's all textやその他の拡張について ==<br />
It's all text は、どんなエディタであっても起動できますし、gvim を起動すれば、完全な vim の機能を利用できます。それは、もどきのエディタを模倣するのではなく、純粋にエディタを起動するからです。ただし、It's all text は、Firefox でしか利用できないという制約もあり、その点は、辛いところです。<br />
<br />
その他の拡張は、ほかにプログラムを必要としたりするものがあり、環境構築が面倒という側面もあります。<br />
== まとめ ==<br />
* wasavi は、ライトに使いたい、ちょっと使いたい人の向けです。<br />
* wasavi は、Chrome や Firefox で テキストエリアを 簡単に vi 風の環境にしてくれます<br />
* 完全な vim ではないため、vim の闇の力をあますところなく利用している人にとっては、プラグイン、補完機能や画面分割などもないため、役不足な面があります。<br />
* ''闇の力''が不足しているとしても、ただのテキストエリアよりは、貴方を'''爆速'''にしてくれるでしょう。<br />
== 最後に ==<br />
[[neovim]] が ブラウザに革命をもたらしてくれるに違いない。<br />
== 関連項目 ==<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/%E3%82%AD%E3%83%BC%E3%82%B9%E3%83%88%E3%83%AD%E3%83%BC%E3%82%AF%E6%95%B0%E3%81%AE%E5%B0%91%E3%81%AA%E3%81%95%E3%82%92%E7%AB%B6%E3%81%86VimGolf
キーストローク数の少なさを競うVimGolf
2016-01-10T03:06:20Z
<p>Daemon: </p>
<hr />
<div>'''VimGolf'''とは、キーストローク数の少なさを競う [[vim]] を利用した競技です。<br />
<br />
'''読み方'''<br />
;VimGolf:ぶいあいえむ ごるふ<br />
__TOC__<br />
<br />
== 概要 ==<br />
私が[[vim]]を使う理由に、<u>少ないキー入力で物事を完結できる</u>、があります。<br />
キー入力が少なければ少ないほど、私達はより生産的な活動に最も重要な時間というリソースを投下できるようになるのです。私達に無駄なキーを叩いているヒマは、一切ありません。<br />
<br />
一方で、より少ない入力を実現するためには、'''訓練'''しかありません。<br />
<br />
キー入力を少なくするために、思考時間が増加してしまうと、本末転倒です。我々の最も重要な資産である時間が思考によって失われていってしまうからです。<br />
<br />
思考の時間とキー入力の量は、トレードオフの関係にある部分もあるでしょう。<br />
<br />
そこで、'''VimGolf''' というゲームを用いて、より少ないキーストローク数を実現するには、どうしたらよいのか?という思考の訓練を行うと良いでしょう。ほかの人の入力から学べるところもあります。もっとも、[[vim]] への入力だけの羅列をみていると'''黒魔術'''めいていて、理解不能なところもありますが、がんばって読み解くことで、新しい血肉が得られるというものです。<br />
== インストールとセットアップの手順 ==<br />
VimGolf をやるには、Twitter アカウントが必要です。また、VimGolf の浅いとから Twitter アカウントと oauth (アカウント連携) する必要があります。oauth (アカウント連携) するとあなたのVimGolf Key が発行されます。VimGolf Key は、vimgolf コマンドがゲームの結果をアップロードするための認証コードとして利用します。<br />
<syntaxhighlight lang="bash"><br />
sudo gem install vimgolf<br />
rehash<br />
vimgolf setup<br />
</syntaxhighlight><br />
=== インストールの例 ===<br />
<syntaxhighlight lang="bash"><br />
$ sudo gem install vimgolf<br />
Fetching: vimgolf-0.4.8.gem (100%)<br />
<br />
------------------------------------------------------------------------------<br />
Thank you for installing vimgolf-0.4.8.<br />
<br />
0.1.3: custom vimgolf .vimrc file to help level the playing field<br />
0.2.0: proxy support, custom diffs + proper vimscript parser/scoring<br />
0.3.0: improve windows support, switch to YAML to remove c-ext dependency<br />
0.4.0: improved diff/retry CLI, emacs support: http://bit.ly/yHgOPF<br />
<br />
*NOTE*: please re-run "vimgolf setup" prior to playing!<br />
<br />
For more information, rules & updates: http://vimgolf.com/about<br />
------------------------------------------------------------------------------<br />
Successfully installed vimgolf-0.4.8<br />
Installing ri documentation for vimgolf-0.4.8<br />
1 gem installed<br />
</syntaxhighlight><br />
=== セットアップ ===<br />
<syntaxhighlight lang="bash"><br />
$ vimgolf setup<br />
<br />
Let's setup your VimGolf key...<br />
1) Open vimgolf.com in your browser.<br />
2) Click "Sign in with Twitter".<br />
3) Once signed in, copy your key (black box, top right).<br />
Paste your VimGolf key: hogehoge<br />
Saved. Happy golfing!<br />
</syntaxhighlight><br />
== 遊び方 ==<br />
VimGolf のサイトの問題のページを見ます。<br />
問題のページのURLの文字列が '''チャレンジID''' です。<br />
<br />
http://www.vimgolf.com/challenges/55b18bbea9c2c30d04000001<br />
なら<br />
55b18bbea9c2c30d04000001<br />
がチャレンジIDです。<br />
<br />
以下のコマンドでゲームを開始できます。<br />
<syntaxhighlight lang="bash"><br />
vimgolf put チャレンジID<br />
</syntaxhighlight><br />
<br />
'''Start file''' を編集し、 '''End file''' と同じテキストファイルにして、<u>保存して vim を終了</u> します。vim を終了すると、保存したファイルが '''End file''' と一致するか確認してくれます。<br />
<br />
一致していないと、やりなおす、やめるか、選択できます。<br />
<br />
また、ゲームが完了した場合は、以下のようなメニューが英語で表示されるので、選択します。<br />
* 結果をサイトにアップロードして、リトライする<br />
* 結果をサイトにアップロードして、vimgolf を終了する<br />
* 結果をサイトにアップロードしないで、リトライする。<br />
* 結果をサイトにアップロードしないで、終了する<br />
== 関連項目 ==<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/neovim%E3%81%AE%E7%B5%B1%E5%90%88%E3%81%95%E3%82%8C%E3%81%9Fterminal_emulator%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9
neovimの統合されたterminal emulatorの使い方
2015-12-30T04:32:38Z
<p>Daemon: ページの作成:「neovim(nvim)の'''terminal emulator'''(ターミナルエミュレータ, 組み込みターミナルエミュレータ)とは、neovimに統合されたターミ...」</p>
<hr />
<div>[[neovim]](nvim)の'''terminal emulator'''(ターミナルエミュレータ, 組み込みターミナルエミュレータ)とは、[[neovim]]に統合されたターミナルです。 ''':terminal''' で呼び出すことができます。<br />
<br />
'''読み方'''<br />
;terminal emulator:たーみなる えみゅれーた<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]]と[[neovim]]を明確に区別する特徴の1つが、だいたい完全な VT220/xterm ライクな'''ターミナルエミュレータ'''(以下、ターミナルと略)です。'''ターミナル'''は、ユーザに特別なバッファタイプとして提供されます。ターミナルは、非同期に実行されます。この実装は、 libvterm で実現されています。<br />
== neovimのターミナルのなにがうれしいのか? ==<br />
'''UnixやMacのターミナル'''には、画面分割機能を持っているソフトウェアが提供されています。仮想端末マルチプレクサの'''tmux'''も同様に画面分割機能をもっています。<br />
<br />
[[neovim]]がターミナルエミュレータの機能を持つことで、作業が [[neovim]] の世界で完結できます。[[neovim]]の世界で完結する、ということは、[[neovim]] だけのキーバインドだけで完結するということです。<br />
つまり、端末ソフトウェアのキーバインドが ホゲホゲ だから、 tmux のバインドが ホゲホゲ だから、と考える必要はありません(慣れていれば、体が勝手に動いていますが)。<br />
<br />
[[neovim]]内のできごとであれば、コピペも簡単です。同じキーバインドで、コピーもペーストもできます。<br />
<br />
プログラムを開発中に、エディタ を C-z (中断)して make の結果を待つような使い方をする必要はありません。<br />
<br />
それが、すべて、[[neovim]] の中でできるのです。<br />
== neovimのビルトインのターミナルエミュレータの起動 ==<br />
[[neovim]]のターミナルエミュレータの起動は簡単です。<br />
<syntaxhighlight lang="vim"><br />
:terminal<br />
</syntaxhighlight><br />
だけで、起動します。<br />
== ターミナルのコマンドモードとターミナルモードの切り替え ==<br />
ターミナルからほかのneovimのウィンドウに移りたいときに、ターミナルモードからコマンドモードに移行します。<br />
<br />
ちょうど、vi で言う、インサートモードからコマンドモードに移る感覚と同じです。<br />
<br />
{|class="wikitable"<br />
|+ ターミナルモードとコマンドモードの切り替え<br />
! 目的<br />
! キーバインド<br />
|-<br />
| ターミナルモードになる<br />
| ターミナルで i<br />
|-<br />
| コマンドモードに戻る<br />
| C-\-n<br />
|}<br />
== キーバインド ==<br />
ウィンドウ間の移動は、コマンドモードであれば、ただのウィンドウと同じであるため、違和感なく行き来できます。<br />
{|class="wikitable"<br />
|+ キーバインド<br />
! 目的<br />
! キーバインド<br />
|-<br />
| 右へ<br />
| C-w C-l<br />
|-<br />
| 左<br />
| C-w C-h<br />
|-<br />
|上<br />
| C-w C-k<br />
|-<br />
|下<br />
| C-w C-j<br />
|}<br />
== まとめ ==<br />
* :terminal で [[neovim]] の組み込みターミナルエミュレータを起動できます。<br />
* C-\ C-n でターミナルモードからコマンドモードに移行できます。<br />
* コマンドモードからターミナルモードは、 i で移行できます。<br />
* [[neovim]]のターミナルエミュレータは、[[neovim]] のキーバインドで操作できるため、ほかのターミナルソフトウェアやターミナルマルチプレクサのキーバインドを覚える必要もありませんし、操作を混在させる必要もありません。テキストのコピペも簡単です。<br />
* Let's neovim terminal emulator!<br />
== 関連項目 ==<br />
* [[neovim]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/neovim%E3%81%AE%E8%A8%AD%E5%AE%9A%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%A8%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%81%AE%E7%BD%AE%E3%81%8D%E5%A0%B4
neovimの設定ファイルとディレクトリの置き場
2015-12-29T06:32:51Z
<p>Daemon: ページの作成:「neovimでは、vimとは異なる新しい設定ファイルのディレクトリ構造となりました。'''XDG Base Directory Specification''' と呼ばれる...」</p>
<hr />
<div>[[neovim]]では、[[vim]]とは異なる新しい設定ファイルのディレクトリ構造となりました。'''XDG Base Directory Specification''' と呼ばれる構造になりました。[[vim]]の設定と共存することもできます。<br />
<br />
'''読み方'''<br />
;[[neovim]]:ねお ぶいあいえむ<br />
;XDG Base Directory Specification: えっくすでぃーじー べーす でぃれくとり すぺしふぃけーしょん<br />
<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[neovim]] の設定ファイルのディレクトリ構造は、 '''XDG Base Directory Specification''' と呼ばれるディレクトリ構造の標準規格に則っています。<br />
<br />
[[neovim]] をインストールしたら [[neovim]] の設定ファイルを整備する必要があります。<br />
== 環境変数の設定 ==<br />
お使いのシェルの設定ファイルに下記の環境変数を設定します。zsh なら .zshrc に記載します。<br />
<syntaxhighlight lang="bash"><br />
export XDG_CONFIG_HOME=~/.config<br />
</syntaxhighlight><br />
<br />
設定を反映する場合は、 source コマンドを実行します。<br />
<syntaxhighlight lang="bash"><br />
source ~/.zshrc<br />
</syntaxhighlight><br />
== neovim と vim の設定を共存させる方法 ==<br />
ディレクトリとファイルを作成します。<br />
<syntaxhighlight lang="bash"><br />
export XDG_CONFIG_HOME=~/.config<br />
mkdir -p ~/.config<br />
ln -s ~/.vim ~/.config/nvim<br />
ln -s ~/.vimrc ~/.config/nvim/init.vim<br />
</syntaxhighlight><br />
[[vim]] の設定ファイル、ディレクトリにシンボリックリンクを作成します。<br />
<br />
[[vim]]と[[neovim]]の設定を混在させる場合には、[[vimスクリプト]] で、[[neovim]] だけに実行させたい命令があれば、if 文を使用します。<br />
<syntaxhighlight lang="vim"><br />
if has('nvim')<br />
# neovim 限定の設定<br />
endif<br />
</syntaxhighlight><br />
注意事項として、 <u>has('nvim') であって、 has('neovim') ではありませんのでご注意ください</u>。<br />
== neovim と vim の設定を共存しない方法 ==<br />
<syntaxhighlight lang="bash"><br />
export XDG_CONFIG_HOME=~/.config<br />
mkdir -p ~/.config/nvim/<br />
vim ~/.config/nvim/init.vim<br />
</syntaxhighlight><br />
== 関連項目 ==<br />
* [[neovim]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/neovim%E3%82%92Mac_OS_X%E3%81%ABHomebrew%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%A7%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B
neovimをMac OS XにHomebrewコマンドでインストールする
2015-12-29T06:22:12Z
<p>Daemon: </p>
<hr />
<div>[[neovim]]は、<u>'''Mac OS X'''に '''Homebrew''' で簡単にインストールできます</u>。GUIの[[neovim]]もあります。<br />
<br />
'''読み方'''<br />
;[[neovim]]:ねお ぶいあいえむ<br />
;Homebrew:ほーむぶりゅー<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[neovim]]は、Mac OS X でも簡単に利用できます。<br />
== homebrewのインストール ==<br />
brew コマンドがインストールされていない場合には、まず、 brew からインストールします。 <br />
<syntaxhighlight lang="bash"><br />
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"<br />
</syntaxhighlight><br />
Homebrew については、 https://brew.sh/index_ja.html をご参照下さい。<br />
== neovimのインストール ==<br />
<syntaxhighlight lang="bash"><br />
$ brew tap neovim/neovim<br />
$ brew install neovim<br />
$ brew install python3<br />
$ sudo pip3 install neovim<br />
</syntaxhighlight><br />
python3 をインストールする理由は、 pip3 を入れて、 python の neovim をインストールするためです。<br />
== GUIのneovimのインストール==<br />
VimのGUIは、 KaoriYa を使うという印象だが、 neovim では、 neovim-dot-app を使えば良いです。<br />
<br />
事前に Xcode.app (Xcode) のインストールが必要です。<br />
<syntaxhighlight lang="bash"><br />
brew install scons<br />
brew tap neovim/neovim<br />
brew tap rogual/neovim-dot-app<br />
sudo xcodebuild -license accept<br />
brew install neovim-dot-app<br />
</syntaxhighlight><br />
=== Xcode がないと失敗する ===<br />
<syntaxhighlight lang="bash"><br />
% brew install neovim-dot-app <br />
==> Installing neovim-dot-app from rogual/neovim-dot-app<br />
neovim-dot-app: A full installation of Xcode.app is required to compile this software.<br />
Installing just the Command Line Tools is not sufficient.<br />
Xcode can be installed from the App Store.<br />
Error: An unsatisfied requirement failed this build.<br />
[1] 94753 exit 1 brew install neovim-dot-app<br />
</syntaxhighlight><br />
=== Xcode ライセンスに同意していないとダメ ===<br />
Xcode ライセンスに同意していないとエラーになります。<br />
<syntaxhighlight lang="bash"><br />
% brew install neovim-dot-app <br />
Error: You have not agreed to the Xcode license. Please resolve this by running:<br />
sudo xcodebuild -license accept<br />
</syntaxhighlight><br />
=== ビルドでコケる ===<br />
なぜか、ビルドで失敗した件。<br />
<syntaxhighlight lang="bash"><br />
% brew install neovim-dot-app <br />
Updating Homebrew...<br />
==> Auto-updated Homebrew!<br />
Updated 1 tap (homebrew/core).<br />
==> Updated Formulae<br />
bit<br />
<br />
==> Installing neovim-dot-app from rogual/neovim-dot-app<br />
==> Installing dependencies for rogual/neovim-dot-app/neovim-dot-app: pkgconfig<br />
==> Installing rogual/neovim-dot-app/neovim-dot-app dependency: pkgconfig<br />
==> Downloading https://homebrew.bintray.com/bottles/pkg-config-0.29.2.sierra.bottle.tar.gz<br />
######################################################################## 100.0%<br />
==> Pouring pkg-config-0.29.2.sierra.bottle.tar.gz<br />
/usr/local/Cellar/pkg-config/0.29.2: 11 files, 627.1KB<br />
==> Installing rogual/neovim-dot-app/neovim-dot-app<br />
==> Downloading https://github.com/rogual/neovim-dot-app/archive/0.1.5.tar.gz<br />
==> Downloading from https://codeload.github.com/rogual/neovim-dot-app/tar.gz/0.1.5<br />
######################################################################## 100.0%<br />
==> make NVIM=/usr/local/opt/neovim/bin/nvim<br />
Last 15 lines from /Users/kaoru/Library/Logs/Homebrew/neovim-dot-app/01.make:<br />
2017-09-25 15:52:06 +0900<br />
<br />
make<br />
NVIM=/usr/local/opt/neovim/bin/nvim<br />
<br />
VIM=/usr/local/Cellar/neovim/0.2.0_1/share/nvim NVIM=/usr/local/opt/neovim/bin/nvim scons -Q<br />
File "/private/tmp/neovim-dot-app-20170925-96264-9vos24/neovim-dot-app-0.1.5/SConstruct", line 14<br />
<br />
print "Unable to execute pkg-config, you may have to set CFLAGS and LDFLAGS by hand."<br />
<br />
^<br />
<br />
SyntaxError: invalid syntax<br />
<br />
make: *** [all] Error 2<br />
<br />
If reporting this issue please do so at (not Homebrew/brew or Homebrew/core):<br />
https://github.com/rogual/homebrew-neovim-dot-app/issues<br />
<br />
These open issues may also help:<br />
VIM env var in neovim directory https://github.com/rogual/homebrew-neovim-dot-app/issues/15<br />
Python is an unnecessary dependency https://github.com/rogual/homebrew-neovim-dot-app/issues/2<br />
[1] 95565 exit 1 brew install neovim-dot-app<br />
</syntaxhighlight><br />
=== brewのlinkappsは deprecated ===<br />
インストール方法の説明に brew linkapps って書いてあるケースがあるけど、 brew ではすでに deprecated になっている。<br />
<syntaxhighlight lang="bash"><br />
% brew linkapps neovim-dot-app <br />
Warning: `brew linkapps` has been deprecated and will eventually be removed!<br />
<br />
Unfortunately `brew linkapps` cannot behave nicely with e.g. Spotlight using<br />
either aliases or symlinks and Homebrew formulae do not build "proper" `.app`<br />
bundles that can be relocated. Instead, please consider using `brew cask` and<br />
migrate formulae using `.app`s to casks.<br />
Error: No such keg: /usr/local/Cellar/neovim-dot-app<br />
[1] 95189 exit 1 brew linkapps neovim-dot-app<br />
</syntaxhighlight><br />
== 設定 ==<br />
[[neovim]]の設定に関しては、[[neovimの設定ファイルとディレクトリの置き場]]をご参照ください。<br />
<syntaxhighlight lang="bash"><br />
mkdir -p ${XDG_CONFIG_HOME:=$HOME/.config}<br />
ln -s ~/.vim $XDG_CONFIG_HOME/nvim<br />
ln -s ~/.vimrc $XDG_CONFIG_HOME/nvim/init.vim<br />
</syntaxhighlight><br />
== 関連項目 ==<br />
* [[neovimの設定ファイルとディレクトリの置き場]]<br />
* [[neovim]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/deoplete
deoplete
2015-12-28T08:24:32Z
<p>Daemon: /* 関連項目 */</p>
<hr />
<div>[[deoplete]]とは、入力補完プラグイン neocomplete(ネオコン) の [[neovim]] 版のプラグインです。[[deoplete]]は、<u>強力な入力補完機能を提供します</u>。<br />
<br />
'''読み方'''<br />
;[[deoplete]]:でお ぷりーと<br />
;[[neovim]]:ねお ぶいあいえむ<br />
;dark powered neo-completion: だーく ぱわーど ねお こんぷりーじょん<br />
__TOC__<br />
<br />
== 概要 ==<br />
[[vim]] を使う利点の1つが、おそらく、<u>あなたの人生を補完する</u>、コンプリージョン機能(マイクロソフト的には、インテリセンス)でしょう。[[neovim]] も [[vim]] と同じように、<u>'''補完機能''' が使えます</u>。<br />
<br />
[[deoplete]]は、 '''dark powered neo-completion'''('''闇の力の neo-completion''') の省略です。<br />
さぁ、補完の時間だ!<br />
Let's completion time!<br />
暗黒美夢王<br />
出典: [http://www.slideshare.net/Shougo/neocompletevim neocomplete.vim]<br />
<br />
[[deoplete]] は、カレントバッファ内での、'''非同期のキーワード補完システム'''を提供します。<br />
<br />
== インストール ==<br />
# ファイルを取り出し 、 [[neovim]] ディレクトリ (たいていは、 ~/.config/nvim ) におきます。<br />
# <syntaxhighlight lang="vim">:UpdateRemotePlugins<br />
</syntaxhighlight>もしくは、[[NeoBundle]]を利用している場合は<syntaxhighlight lang="vim"><br />
:NeoBundleRemotePlugins</syntaxhighlight>を実行し、[[neovim]]を再起動します。<br />
# <syntaxhighlight lang="vim">:DeopleteEnable<br />
</syntaxhighlight>コマンドを実行するか、$XDG_CONFIG_HOME/nvim/init.vim に <syntaxhighlight lang="vim"><br />
:let g:deoplete#enable_at_startup = 1<br />
</syntaxhighlight> を設定します。<br />
<br />
~/.config/nvim/init.vim<br />
<syntaxhighlight lang="vim"><br />
if has('nvim')<br />
NeoBundle 'Shougo/deoplete.nvim'<br />
let g:deoplete#enable_at_startup = 1<br />
endif<br />
</syntaxhighlight><br />
<br />
<syntaxhighlight lang="bash"><br />
$ git clone https://github.com/Shougo/deoplete.nvim ~/.config/nvim/<br />
</syntaxhighlight><br />
== 依存関係 ==<br />
[[deoplete]] は、 if_python3 を必要とします。<br />
<syntaxhighlight lang="vim"><br />
:echo has("python3")<br />
</syntaxhighlight><br />
が 1 を返す場合は、問題ありません。<br />
<br />
そうではない場合は、pip コマンド(pythonのインストーラー)を利用し 、 python3 インタフェースを有効することができます。<br />
<syntaxhighlight lang="bash"><br />
$ sudo pip install neovim<br />
or<br />
$ sudo pip3 install neovim<br />
</syntaxhighlight><br />
== 設定 ==<br />
<syntaxhighlight lang="vim"><br />
" deoplete を利用する<br />
let g:deoplete#enable_at_startup = 1<br />
</syntaxhighlight><br />
== 読み方 ==<br />
<html><br />
<blockquote class="twitter-tweet" lang="ja"><p lang="ja" dir="ltr">deoplete ってなんて読むの?でおぷりーと? <a href="https://twitter.com/hashtag/neovim?src=hash">#neovim</a> <a href="https://twitter.com/hashtag/vim?src=hash">#vim</a></p>&mdash; 戸田 薫 (@KaoruToda) <a href="https://twitter.com/KaoruToda/status/681378082662449153">2015, 12月 28</a></blockquote><br />
<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script><br />
</html><br />
== まとめ ==<br />
[[neovim]] では、 [[deoplete]] という'''闇の力'''で、入力(と貴方の人生)を補完します。フハハハハ…。<br />
== 注釈 ==<br />
テイストを作者様に合わせておきました。<br />
== 関連項目 ==<br />
* [[NeoBundle]]<br />
* [[neovim]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/neovim
neovim
2015-12-26T16:15:57Z
<p>Daemon: /* 関連項目 */</p>
<hr />
<div>[[neovim]]とは、[[vim]]からフォークした次世代[[vim]]を開発するプロジェクトです。<br />
<br />
'''読み方'''<br />
;[[neovim]]:ねお ぶいあいえむ<br />
<br />
__TOC__<br />
<br />
== 概要 ==<br />
vi は、 vim へと進化し、そして今、 neovim へと進化している最中です。<br />
vi -> vim -> neovim (イマココ)<br />
vim には、さまざまな課題がありました。その問題を解決するために、[[neovim]] は 始まりました。<br />
* メンテナンスをしやすく<br />
* コントリビューターが参加しやすく<br />
* VimScript を Lua へ<br />
* 抽象化し、ウェブブラウザでも [[neovim]] を利用できるように<br />
いろいろな目的をもって、進められています。<br />
<br />
[[vim]]では、同期実行で処理が行われていたので、何かしようと思うと、エディタがポーズしてしまい、何もできなくなって、ユーザは待っているしかありませんでした([[vimproc]]を使えばできることもありましたが)。[[neovim]] 自身が正式に非同期に対応することで、ユーザはエディタが停止して何も出来なくなることもなく、プラグインなどの開発者はより良いものが提供できる、といった利点があります。<br />
== neovim の良いところ ==<br />
パワフルなプラグインです。<br />
msgpack API は、いろいろなプログラミング言語から構造化されたコミュニケーションを実現しますう。リモートプラグインは、[[neovim]] が安全で非同期に通信できる子プロセスとして実行します。<br />
<br />
革新的です。<br />
* 強力なデフォルト<br />
* truecolor や bracketed paste のようなモダンなターミナル機能<br />
* 組み込みターミナルエミュレータ<br />
== neovim の 実行ファイル ==<br />
neovim の実行ファイル名は、 '''nvim''' です。<br />
== Vimプラグインの互換性 ==<br />
どうやら、vim 用の vim プラグインがすべて動くというわけではないようです。<br />
互換性を目的に開発しているわけでもないので、いずれ、動かなくなるのではないでしょうか。<br />
<br />
現時点では、[[NeoBundle]]も利用できます。<br />
== インストール ==<br />
* [[neovimをFreeBSDにpkgコマンドでインストールする]]<br />
* [[neovimをMac OS XにHomebrewコマンドでインストールする]]<br />
== ソースコードからビルドする ==<br />
* [[neovim 0.1.1をビルドする]]<br />
== 設定 ==<br />
[[neovim]]の設定に関しては、[[neovimの設定ファイルとディレクトリの置き場]]をご参照ください。、<br />
== neovim のプラグイン ==<br />
* パッケージ管理<br />
** [[NeoBundle]]<br />
* 入力補完システム<br />
** [[deoplete]]<br />
== 関連項目 ==<br />
* [[neovimをFreeBSDにpkgコマンドでインストールする]]<br />
* [[neovimをMac OS XにHomebrewコマンドでインストールする]]<br />
* [[neovim 0.1.1をビルドする]]<br />
* [[neovimの設定ファイルとディレクトリの置き場]]<br />
* [[neovimの統合されたterminal emulatorの使い方]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/neovim%E3%82%92FreeBSD%E3%81%ABpkg%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%A7%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B
neovimをFreeBSDにpkgコマンドでインストールする
2015-12-26T16:02:47Z
<p>Daemon: </p>
<hr />
<div>FreeBSD では [[neovim]] を pkg システムのバイナリパッケージでインストールできます。<br />
<br />
'''読み方'''<br />
;neovim:ねお ぶいあいえむ<br />
__TOC__<br />
<br />
== 概要 ==<br />
次世代 vim として開発されている [[neovim]] を pkg コマンドで FreeBSD にインストールできます。<br />
== インストール ==<br />
<syntaxhighlight lang="bash"><br />
sudo pkg install neovim<br />
</syntaxhighlight><br />
== Python 用 neovim のインストール ==<br />
<syntaxhighlight lang="bash"><br />
sudo pip install neovim<br />
</syntaxhighlight><br />
== 設定 ==<br />
[[neovim]]の設定に関しては、[[neovimの設定ファイルとディレクトリの置き場]]をご参照ください。、<br />
== 関連項目 ==<br />
* [[neovim]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/neovim_0.1.1%E3%82%92%E3%83%93%E3%83%AB%E3%83%89%E3%81%99%E3%82%8B
neovim 0.1.1をビルドする
2015-12-26T15:59:52Z
<p>Daemon: </p>
<hr />
<div>FreeBSD 10.0 で neovim 0.1.1 をビルドしました。<br />
<br />
'''読み方'''<br />
;neovim:ねお ぶいあいえむ<br />
__TOC__<br />
<br />
== 概要 ==<br />
FreeBSD の pkg / ports に neovim 0.0.0-alpha しかなかったため、GitHub からソースコードをダウンロードし、自前でビルドしました。<br />
== FreeBSD 10.0 ==<br />
いろいろ入っている環境のせいか、依存関係的に何もインストールせずに、ビルドできてしまいました。<br />
<syntaxhighlight lang="bash"><br />
wget https://github.com/neovim/neovim/archive/v0.1.1.tar.gz<br />
tar zxfp v0.1.1.tar.gz<br />
cd neovim-0.1.1<br />
gmake cmake<br />
gmake<br />
</syntaxhighlight><br />
== できたバイナリ ==<br />
=== バージョン情報 ===<br />
<syntaxhighlight lang="bash"><br />
$ ./build/bin/nvim --version<br />
NVIM 0.1.1 (compiled Dec 27 2015 01:14:55)<br />
Build type: Debug<br />
Compilation: /usr/bin/cc -Wconversion -g -Wall -Wextra -pedantic<br />
-Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wvla<br />
-fstack-protector-strong -fdiagnostics-color=auto<br />
-DINCLUDE_GENERATED_DECLARATIONS -DHAVE_CONFIG_H<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/build/config<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/src<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/.deps/usr/include<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/.deps/usr/include<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/.deps/usr/include/luajit-2.0<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/.deps/usr/include<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/.deps/usr/include<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/.deps/usr/include<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/.deps/usr/include -I/usr/local/include<br />
-I/usr/local/include<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/build/src/nvim/auto<br />
-I/home/kaworu/tmp/neovim/neovim-0.1.1/build/include<br />
Compiled by kaworu@a1.local<br />
<br />
Optional features included (+) or not (-): +acl +iconv +jemalloc<br />
For differences from Vim, see :help vim-differences<br />
<br />
system vimrc file: "$VIM/sysinit.vim"<br />
fall-back for $VIM: "/usr/local/share/nvim"<br />
</syntaxhighlight><br />
=== ldd ===<br />
<syntaxhighlight lang="bash"><br />
$ ldd ./build/bin/nvim<br />
./build/bin/nvim:<br />
libintl.so.8 => /usr/local/lib/libintl.so.8 (0x800b5f000)<br />
libiconv.so.2 => /usr/local/lib/libiconv.so.2 (0x800d69000)<br />
librt.so.1 => /usr/lib/librt.so.1 (0x801063000)<br />
libthr.so.3 => /lib/libthr.so.3 (0x801269000)<br />
libkvm.so.6 => /lib/libkvm.so.6 (0x80148e000)<br />
libm.so.5 => /lib/libm.so.5 (0x801696000)<br />
libutil.so.9 => /lib/libutil.so.9 (0x8018bc000)<br />
libc.so.7 => /lib/libc.so.7 (0x801ace000)<br />
</syntaxhighlight><br />
== 関連項目 ==<br />
* [[neovim]]<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/gvim%E3%81%A7Shift_Insert%E3%81%A7S-Insert%E3%81%8C%E5%85%A5%E5%8A%9B%E3%81%95%E3%82%8C%E3%81%A6%E8%B2%BC%E3%82%8A%E4%BB%98%E3%81%91%E3%81%A7%E3%81%8D%E3%81%AA%E3%81%84
gvimでShift InsertでS-Insertが入力されて貼り付けできない
2015-11-30T15:10:32Z
<p>Daemon: ページの作成:「gvim でクリップボードを貼り付けるために、Shift Insert を押すと、<S-Insert>が入力されて、貼り付け(ペースト)ができない症状...」</p>
<hr />
<div>gvim でクリップボードを貼り付けるために、Shift Insert を押すと、<S-Insert>が入力されて、貼り付け(ペースト)ができない症状が発生しました。この問題は、設定1つで解消できます。<br />
<br />
'''読み方'''<br />
;nopaste:のーぺーすと<br />
__TOC__<br />
<br />
== 概要 ==<br />
'''gvim''' で'''クリップボード'''を貼り付けるために、Shift + Insert を押すと、<S-Insert>が入力されて、貼り付け(ペースト)ができない症状が発生しました。なお、マウスで右クリックを押して、「貼り付け」のメニューを選択すると、ペーストができます。<br />
<br />
この問題は、以下のオプションを設定することで解消できます。<br />
<syntaxhighlight lang="vim"><br />
:set nopaste<br />
</syntaxhighlight><br />
== 関連項目 ==<br />
* [[メインページ]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon
https://kaworu.jpn.org/vim/vim%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3_NERDTree_%E3%83%84%E3%83%AA%E3%83%BC%E5%9E%8B%E3%82%A8%E3%82%AF%E3%82%B9%E3%83%97%E3%83%AD%E3%83%BC%E3%83%A9
vimプラグイン NERDTree ツリー型エクスプローラ
2015-11-23T10:41:03Z
<p>Daemon: </p>
<hr />
<div>[[vimのプラグイン]]である'''NERDTree'''(NERD Tree)は、'''ツリー型のエクスプローラ'''です。ファイルがたくさんある場合には、'''エクスプローラ'''的なものも必要になってきます。<u>'''vim'''を'''IDE'''っぽくすることができ、'''開発効率'''が上げられます</u>。<br />
<br />
'''読み方'''<br />
;NERDTree:なーどつりー<br />
__TOC__<br />
<br />
== 概要 ==<br />
基本的に、NREDTree がずっとvimの画面の左側に出っぱなしで生活しています。ファイルをあちこちに作成しているので、ツリーを辿って操作できるほうが便利です。vimをIDE的に利用している方に便利です。<br />
<br />
ターミナルに表示される画面だとこんな感じです。<br />
<syntaxhighlight lang="bash"><br />
" Press ? for help |<br />
|~<br />
.. (up a dir) |~<br />
</home/kaworu/p/cpp/skeleton/ |~<br />
a.cpp |~<br />
a.out* |~<br />
class.cpp |~<br />
~ |~<br />
~ |~<br />
~ |~<br />
~ |~<br />
<tf-8 | nerdtree 14% 1:1 [無名] 100% 0:1<br />
</syntaxhighlight><br />
<br />
ファイル名の上で、エンターキーを叩けば、この通りファイルを開いてくれます。<br />
<syntaxhighlight lang="bash"><br />
" Press ? for help |class C0 {<br />
| C0() {<br />
.. (up a dir) | }<br />
</home/kaworu/p/cpp/skeleton/ | virtual ~C0(){<br />
a.cpp | }<br />
a.out* |};<br />
class.cpp |#if 1<br />
~ |//#pragma once<br />
~ |class C1 {<br />
~ | C1();<br />
~ | virtual ~C1();<br />
NERD_tree_1 100% 7:1 <L class.cpp unix | utf-8 | cpp 5% 1:1<br />
</syntaxhighlight><br />
== 設定 ==<br />
[[NeoBundle]]を利用する場合です。<br />
<syntaxhighlight lang="vim"><br />
NeoBundle 'scrooloose/nerdtree'<br />
</syntaxhighlight><br />
== インストール ==<br />
<syntaxhighlight lang="vim"><br />
:NeoBundleInstall<br />
</syntaxhighlight><br />
== 使い方 ==<br />
=== NERDTree を起動する ===<br />
<syntaxhighlight lang="vim"><br />
:NERDTree<br />
</syntaxhighlight><br />
<br />
カレントディレクトリを開くには、以下の通りです。<br />
<syntaxhighlight lang="vim"><br />
:NERDTree .<br />
</syntaxhighlight><br />
<br />
ブックマークを直接開くこともできます。<br />
<syntaxhighlight lang="vim"><br />
:NERDTree ブックマーク名<br />
</syntaxhighlight><br />
=== 常にNERDTreeを表示する ===<br />
vimを立ち上げるたびに、新しいタブを開くたびに、 :NERDTree を実行するのが面倒であれば、以下の設定で、常に表示し続けることができます。<br />
<syntaxhighlight lang="vim"><br />
autocmd VimEnter * execute 'NERDTree'<br />
</syntaxhighlight><br />
便利ですね。<br />
=== NERDTree で除外対象を指定する ===<br />
ファイル数が多くなってくると、みたくないファイルも出てくるでしょう。多くの場合は、オブジェクトファイルの .o とか見えなくてもいいですよね。<br />
以下の設定を追加することで、見たくないものを消すことができます。<br />
<syntaxhighlight lang="vim"><br />
let NERDTreeIgnore = ['.[oa]$', '.(so)$', '.(tgz|gz|zip)$' ]<br />
</syntaxhighlight><br />
=== 隠しファイルを表示する ===<br />
.vim などのファイル・ディレクトリは、隠しファイル扱いで、デフォルトでは表示されません。'''I''' で隠しファイルを表示できます。<br />
<br />
デフォルトで隠しファイルを表示したい場合は、以下の設定を追加します。<br />
<syntaxhighlight lang="vim"><br />
let NERDTreeShowHidden = 1<br />
</syntaxhighlight><br />
=== NERDTree でブックマークする ===<br />
ブックマーク機能を利用すれば、ディレクトリのあちこちに、ワープすることができます。NERDTreeの上で、B を押すと、ブックマークを表示してくれます。<br />
<syntaxhighlight lang="vim"><br />
:Bookmark<br />
</syntaxhighlight><br />
=== ブックマークのデータの管理について ===<br />
'''NERDTree'''のブックマークデータは、<br />
Windows であれば、<br />
C:\Users\あなたのユーザ\.NERDTreeBookmarks<br />
にあります。<br />
== まとめ ==<br />
* NERDTree によりファイル達の操作が簡単になります。<br />
* ブックマーク機能を利用すると、あちこちのディレクトリにひとっ飛びです。<br />
* vimをIDEっぽく使いたい方は、一度使ってみてください。<br />
== 関連項目 ==<br />
* [[NeoBundle]]<br />
* [[vimのプラグイン]]<br />
<!-- vim: filetype=mediawiki<br />
--></div>
Daemon