-->

CotEditor

ここの最後に書いた「表のタグも何とかしたい」
とりあえず、簡単なのを作ったw
CotEditor用だ。

セルをタブ区切りで作って、選択してスクリプトを実行すればいい。
ExcelやLibreOffice Calcでタブ区切りのテキストで保存したやつが使えるはず。

#!/bin/bash
# %%%{CotEditorXInput=Selection}%%%
# %%%{CotEditorXOutput=ReplaceSelection}%%%

cat - | awk '
        BEGIN {
                FS="\t"
                print "<table>"
                row=0
        }
        {
                print "  <tr>"
                for(i = 1; i <= NF; i++) {
                        if(row == 0) {
                                print "    <th>" $i "</th>"
                        } else {
                                print "    <td>" $i "</td>"
                        }
                }
                print "  </tr>"
                row++;
        }
        END {
                print "</table>"
        }'
このエントリーをはてなブックマークに追加

前々から、ライブドアブログやココログの"記事を書く"のリッチテキストエディタ(って言うのかな?)でできるHTMLが、ちょっと気に入らなかったのでMacのCotEditorやWindowsのエディタでHTMLタグ付き入力してHTML編集へコピペしてた。
けっこー面倒くさかった。<や>を変換するのとか。

けど、エディタのなんかマクロ作って、すこし楽ちんにするのもメンドクセーって思ってそれもやってなかったんだが、重い腰をあげて、まず、MacのCotEditorのマクロを調べてみた。

ヘルプをみれば、あっさりわかった。ちゅーか、簡単。早いことやっとけばよかった(^^;)
シェルスクリプトで標準入力から編集中のテキストを入力して、何らかの変換して標準出力に出力するだけ。

ということで、選択しているところの&を&amp;、<を&lt;、>を&gt;に変換して、行頭に<p>をつけて、行末に</p>を付けるマクロを作った。こんなかんじ。

#!/bin/sh
# %%%{CotEditorXInput=Selection}%%%
# %%%{CotEditorXOutput=ReplaceSelection}%%%
cat - | sed -e 's/&/&amp;/g' -e 's/</\&lt;/g' -e 's/>/\&gt;/g' -e 's/^/<p>/g' -e 's/$/<\/p>/g'

CotEditorのスクリプトマニュアルを見ればわかると思うが、これをhoge.sh(hogeはなんか適当な名前にしてね)に保存して"chmod +x"で実行権をあたえて~/Library/Application Support/CotEditor/ScriptMenu/にコピーして、スクリプトメニューの更新をすれば使えるようになる。

あと、ついでに選択しているところのHTMLタグを削除するのも作ってみた。

#!/bin/sh
# %%%{CotEditorXInput=Selection}%%%
# %%%{CotEditorXOutput=ReplaceSelection}%%%
cat - | sed -e 's/<[^>]*>//g'

よーし、今度、Windowsのエディタのマクロも調べて同じよなのをつくろー。
エディタのマクロじゃなくてもいいから、表のタグも何とかしたいな。

このエントリーをはてなブックマークに追加

↑このページのトップヘ