はじめに
こんにちは、野村です。
今回は、クリップボード内の特定の文字を置換するコマンドの作り方を紹介します。
具体的には、クリップボード内にある「<」、「>」、「&」をHTMLエンティティに置換し、ついでにタブ文字を半角スペース2個に置換するコマンドです。
htmlソースを含む文字列をブログ記事の編集フォームなどに貼り付けるときに便利です。
準備
xselを利用します。なければインストールします(debianの場合)。
# apt install xsel
スクリプト
#!/bin/bash touch /tmp/htmlcb xsel -bo > /tmp/htmlcb sed -e 's/&/\&/g' \ -e 's/</\</g' \ -e 's/>/\>/g' \ -e 's/\t/ /g' \ /tmp/htmlcb | xsel -bi rm /tmp/htmlcb
以上の内容を「htmlcb」というファイル名で保存し、パスの通ったデレクトリに移動し、実行権限を与えます。
使い方
文字列をコピーした後、端末エミュレータなどでコマンド「htmlcb」を実行してからペーストします。
然るべき文字列が置換されている状態になっているはずです。
最後に
以上、クリップボード内の特定の文字を置換するコマンドの作り方を紹介しました。
ここのところ、同じようなネタが続いたけど、
htmlソースを含む文字列をブログに貼り付けても正常に表示できません。特定の文字を置換しないといけない。面倒です。そこをなんとかする独自コマンドを作ってみました。
文字列をブログ編集フォームに貼り付ける際に便利なvimプラグインです。選択範囲内の「<」や「>」などを然るべき文字列に置換した状態でクリップボードに収めます。
これで打止め。
というわけで、今回はこれにて。