←前のエントリ |  ↑↑Blog |  ↑Category |  ↓Comment |  ↓Trackback |  次のエントリ→

iBlogTagAssistのカスタマイズ


タグ等の入力支援のためのAppleScriptのカスタマイズ方法です。

iBlogTagAssistのカスタマイズ方法について記述します。
導入方法と使用方法はこちらのエントリ(1.0版1.2版 )をどうそ。
ここで説明している内容は、1.0版、1.2版で同じです。説明で使用しているソースは1.0版となります。

ここでいう iBlogTagAssist とは、AppleScriptとしての1ファイルで存在するものを指します。

カスタマイズ可能なのは以下の3項目です。
#もちろん、内部のソースをいじれば自由自在です。

1. <、>を置換するもの
2. 独自の置換の追加
3. 独自のエイリアスの作成

カスタマイズは全て、iBlogTagAssist のファイルの先頭部分にあります。
version 1.0 では以下の部分になります。

-- customize (start)
(*
 * alias
 *)
property alias_list : {{"src", "ta -tag:hbp -esc -conv:1"}, {"no-esc", "ta -tag:hb -br"}, {"esc", "ta -tag:hb -esc -br -conv:1"}}

(*
 * "<", ">" -> ?
 *)
-- use html escape code to replace "<" or ">"
property less_than : "&lt;"
property greater_than : "&gt;"

-- use another word to replace "<" or ">"
--property less_than : "<"
--property greater_than : ">"

(*
 * convert
 *)
property convert_list : {{"&lt;a ", "&lt;<span style=¥"display:none;¥">_</span>a "}}
-- custmize (end)



1. <、>を置換するもの

a) &lt;や&gt;に置き換えたい

-- use html escape code to replace "<" or ">"
property less_than : "&lt;"
property greater_than : "&gt;"

-- use another word to replace "<" or ">"
--property less_than : "<"
--property greater_than : ">"

のように最初の部分をコメントアウトしないで、2つ目の部分をコメントアウトしてください。デフォルトはこの状態です。

b) 全角にしたい

-- use html escape code to replace "<" or ">"
--property less_than : "&lt;"
--property greater_than : "&gt;"

-- use another word to replace "<" or ">"
property less_than : "<"
property greater_than : ">"

のように最初の部分をコメントアウトし、2つ目の部分をコメントアウトしないでください。


c) 別の文字にしたい

-- use html escape code to replace "<" or ">"
--property less_than : "&lt;"
--property greater_than : "&gt;"

-- use another word to replace "<" or ">"
property less_than : "["
property greater_than : "]"


のように最初の部分をコメントアウトし、2つ目の部分をコメントアウトしないで、変数の値を変換したいものにしてください。ここでは、"["、"]"に変換するようにしています。


2. 独自の置換の追加

2.1 追加の仕方
独自に置換する項目を追加することができます。

(*
 * convert
 *)
property convert_list : {{"&lt;a ", "&lt;<span style=¥"display:none;¥">_</span>a "}}

上記のソース部分における convert_list に置換したい内容を置換前、置換後のペアで追加/編集します。
例えば、 "<br>"を"<br />" と変更したい場合は、

{"<br>", "<br />"}

というペアを元々あるconvert_listに追加します。

デフォルトの状態に追加したとすると、以下のようになります。

(*
 * convert
 *)
property convert_list : {{"&lt;a ", "&lt;<span style=¥"display:none;¥">_</span>a "}, {"<br>", "<br />"}}

2.2 追加した置換の利用の仕方

-conv:convert_list_index

選択された範囲内に置いて、置換を行う。置換内容は、convert_list_indexにて指定されたもの。



のように、convert_list_indexに値を渡して利用します。この値は、2.1で追加対象とした、convert_list変数の何番目に存在するかを示す数値となります。

デフォルトの状態では、ソースは、

(*
 * convert
 *)
property convert_list : {{"&lt;a ", "&lt;<span style=¥"display:none;¥">_</span>a "}}

となっていますので、数値との対応は

1: "&lt;a " → "&lt;<span style=¥"display:none;¥">_</span>a "

となります。

よって、2.1の例のように2番目に追加したものを利用する場合は、-conv:2 をtaのオプションとして渡せば処理されます。


3. 独自のエイリアスの作成

3.1 登録の仕方
処理のたびに、全てのオプションを入力するのは大変ですので、エイリアスを登録することができます。
デフォルトで、3種類のエイリアスがありますが、自分の望む動作でない場合、追加削除等の編集することができます。

カスタマイズの該当ソースは、

(*
 * alias
 *)
property alias_list : {{"src", "ta -tag:hbp -esc -conv:1"}, {"no-esc", "ta -tag:hb -br"}, {"esc", "ta -tag:hb -esc -br -conv:1"}}

のようになっています。
上記のソース部分における alias_list に登録したいエイリアスとその内容を名前と実際のパラメータのペアで追加/編集します。

例えば、 "html"という名前で

・HTMLCodeタグで囲み
・<br>タグを<br />タグに変換する
・HTMLエスケープを実施する
・aタグの変換(-conv:1)をする

という変換を登録したい場合は、名前"html"と処理内容を意味するパラメータ "ta -tag:h -conv:2 -esc -conv:1"のペア

{"html", "ta -tag:h -conv:2 -esc -conv:1"}

を alias_list変数に追加します。

デフォルトの状態に追加したとすると、以下のようになります。

(*
 * alias
 *)
property alias_list : {{"src", "ta -tag:hbp -esc -conv:1"}, {"no-esc", "ta -tag:hb -br"}, {"esc", "ta -tag:hb -esc -br -conv:1"}, {"html", "ta -tag:h -conv:2 -esc -conv:1"}

3.2 追加したエイリアスの利用の仕方

ta[:alias_name]
alias_name

登録済みの省略名を指定する。ここを指定すると、以降のオプションは無視され、登録名に対応する処理が実行される。対応する名前がないと警告が表示され、何も処理されない。

デフォルトとして、以下のものが登録されている。

esc:HTMLCode、blockquoteで囲み、内容についてエスケープ処理を行う。改行を<br />には置き換える。aタグは<との間にスペースを入れる。
no-esc:HTMLCode、blockquoteで囲み、内容についてエスケープ処理を行わない。改行を<br />には置き換える。
src:HTMLCode、blockquote、preで囲み、内容についてエスケープ処理を行う。改行を<br />には置き換えない。


ということで、3.1 で追加したエイリアスを利用する場合は

ta:html

を処理対象の先頭行に加えて、iBlogTagAssistで処理すれば良いです。

例えば、

<_a href="http://www.google.co.jp">google</a><br>


という内容を ta:src で処理すると

<_a href="http://www.google.co.jp">google</a><br>


となる。

一方、ta:html で処理すると

<_a href="http://www.google.cojp">google</a><br />

となり、blockquoteされておらず、<br>が<br />となっていることが分かる。

( ・∀・)つ〃∩ ヘェーヘェーヘェー">
投稿時間: 2004年10月23日 (土) at 19:40   

←前  |  ↑↑Blog |  ↑Category |  ↑Entry top |  ↑Comment |  次→
←前  |  ↑↑Blog |  ↑Category |  ↑Entry top |  ↑Comment |  次→