c4se記:さっちゃんですよ☆

.。oO(さっちゃんですよヾ(〃l _ l)ノ゙☆)

.。oO(此のblogは、主に音樂考察Programming に分類されますよ。ヾ(〃l _ l)ノ゙♬♪♡)

音樂は SoundCloud に公開中です。

考察は現在は主に Scrapbox で公表中です。

Programming は GitHub で開發中です。

Vimで<200b> (ZERO WIDTH NO-BREAK SPACE) を削除する

追記2016-03-30
Yahoo! 知恵袋で参照されてゐるのを見て了ったので、当時のわたしの勘違ひを訂正しておく。
<C-k>云々はdigraphsと云ふもの。<C-k>に関しては:h c_CTRL-K:h i_CTRL-Kを参照。digraphsに就いては:h digraphsを参照。Non-breaking spaceは<C-k>NSで打てると書いてある。此れはinsertモードに限らずcommandモードでも打てるので、下記の置換は:%s/<C-k>NS//gでできる。此れが第一の勘違ひ。
第二の勘違ひはyankとクリップボードに関するもの。:h clipboard:h registers:h c_CTRL-Rを参照。クリップボードの効かない環境では、ylすると 0 と云ふレジスタにyankされるので、commandモードや検索モードで<C-r>0でyankしたもをの挿入できる。下記で紹介したset clipboard=unnamedの設定は此のデフォルトで 0 に保存する動作を * に保存するやう変更するものだ。当然レジスタ名を指定して、例へば"aylレジスタ a を指定してあげれば/<C-r>a<CR>でyankした文字を検索できる。

Facebookとかから文章をコピペしてVimに持って来ると、<200b>と云う謎の特殊文字がずらずら並ぶ。うざい。此れはZERO WIDTH NO-BREAK SPACE (&#xFEFF;) と云う特殊文字
[ノーブレークスペース - Wikipedia http://ja.wikipedia.org/wiki/%E3%83%8E%E3%83%BC%E3%83%96%E3%83%AC%E3%83%BC%E3%82%AF%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9 ]


此れをさっさと消したい。
<200b>にカーソルを合わせ(画面上では6文字に見えてるけど、内部的には1文字として扱われてる)、ylでヤンク (.vimrcにset clipboard=unnamedで、標準ヤンクをクリップボードに設定してる)。コマンドモードに移り、:%s/<C-r>*//gで消せる。
:%s/A/B/gで、当バッファ内全てのAを、Bに置換。
<C-r>*は、Ctrl + rに続けて*を打つ。コマンドエリアに、クリップボードの中身を貼付け。


Non-braking space自体は、Vimでinsert mode時に、<C-k>NSで打てる。[Non-breaking space - Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/Non-breaking_space#Keyboard_entry_methods ]
<C-v>u〜 とか<C-v>U〜〜 とか<C-k>○○ とかで、色んな特殊文字打てるのね。[Working with Unicode - Vim Tips Wiki http://vim.wikia.com/wiki/Working_with_Unicode ]