Archive for the ‘機種依存文字検出’ Category
機種依存文字検出のアルゴリズム変更
前回のバグ回避策で触れましたように機種依存文字の検出ロジックを見直し、 ver.0.3bで公開します。
NGをチェックする方式 ⇒ OKをチェックする方式 に変更しました。
機種依存文字などチェックのソースをそのまま流用させていただきました。
使い方
- x-charactercode-validator.0.3.zipをダウンロード
(最新版はhttp://typista.xii.jp/wp-content/uploads/x-charactercode-validator.zipです) - プラグインディレクトリに解凍
- ダッシュボードからアクティベート
今後の対応
FCKEDITORにも対応可能な方策を探します。どなたかアドバイスいただけると幸いです。
検知した場合に置換してしまうオプション設定が可能となるような機能拡張は、引き続き予定しています。
機種依存文字検出プラグインforMac(Beta)
前回の課題にあげたMac版に、ほんのり対応しました。 OS XのFireFoxで試したものの、WYSIWYGモードでは入力したMac機種依存文字が文字化けしていた(ソースモードでは機種依存文字が正しく表示される)状態ながら、一応検出されていると思われるので、ver.0.2で公開します。 *Mac版の品質フィードバックをいただけるとうれしいです。
使い方
- x-charactercode-validator.0.2.zipをダウンロード
(最新版はhttp://typista.xii.jp/wp-content/uploads/x-charactercode-validator.zipです) - プラグインディレクトリに解凍
- ダッシュボードからアクティベート
今後の対応
Mac版で不具合があれば、その対応。 検知した場合に置換してしまうオプション設定が可能となるような機能拡張。
補足
WYSIWYGは、FCKEDITOR2.4.1を利用しています。標準のWYSIWYGなら文字化けしないのかも試してみたいと思いますが、少し時間がかかると思いますので、どなかた試された方からの報告をいただけると幸いです。 それとMacの機種依存文字をJavaScriptで配列化するために、機種依存文字一括変換辞書にある「MAC機種依存→共通.txt」を利用しました。 このファイルはSJIS保存だったため、Mac版のチェック用JavaScriptファイルは、
charset="Shift_JIS"
でのインクルードです。
2008.06.06追記(バグ報告)
WYSIWYGにFCKEDITOR2.4.1を使っている場合に、1度検知された機種依存文字を削除しても、記事を保存することができないことがわかりました。 <textarea id="content">の値が、onLoad時に取得したままの状態で更新されないことが要因です。 「保存」「公開」ボタンを押したときの
target = document.getElementById( "content" );
を取得するように試行錯誤中です。 取り急ぎの回避策としては、WordPressデフォルトのWYSIWYGエディタに戻し、かつ記事編集後、逐一「ビジュアル」→「HTML」→「ビジュアル」の切り替えが必要です。(この結果、target.valueが更新されるため、機種依存文字チェックが正しく機能します。)
2008.06.06追記(バグ回避策)
デフォルトのWYSIWYGエディタの場合のみ、苦肉ですが以下のバグ回避策を講じました。
→ x-charactercode-validator.0.3.zip からダウンロードしてください。
FCKEDITORは、まだ回避策が見つかりません。
if ( ( ‘undefined’ == typeof wpTinyMCEConfig ) || ‘tinymce’ == wpTinyMCEConfig.defaultEditor ) { switchEditors.go(‘content’);
}
同時に、機種依存文字の検出ロジック(の流用元)を見直し、従来は機種依存文字をターゲットに検索していましたが、機種依存しない文字(共通文字)の範囲にあるかをチェックする方式に変更しています。
機種依存文字検出プラグインforWin
モバイル向けや、お役所系のCMS要件で、機種依存文字の検出ってのをよく見かけますね。
WordPressはUTF-8がデフォルトなので、本来は不要(と認識している)だが、意外に引き合いは多いのではないかと思い、苦手な分野にチャレンジしてみました。
→ 機種依存文字一括変換辞書が大変参考になりました。
使い方
- x-charactercode-validator.0.1.zipをダウンロード
- プラグインディレクトリに解凍
- ダッシュボードからアクティベート
以上で、記事の「保存」ボタンまたは「公開」ボタンを押したときに、タイトル or 投稿内容をJavaScriptでチェックし、
‘㎜’,'㎝’,'㎞’,'㎎’,'㎏’,'㏄’,'№’,'㏍’,'℡’,'㊤’, ‘㊥’,'㊦’,'㊧’,'㊨’,'㈱’,'㈲’,'㈹’,'㍾’,'㍽’,'㍼’, ‘㍻’,'Ⅰ’,'Ⅱ’,'Ⅲ’,'Ⅳ’,'Ⅴ’,'Ⅵ’,'Ⅶ’,'Ⅷ’,'Ⅸ’, ‘Ⅹ’,'㍉’,'㌔’,'㌢’,'㍍’,'㌘’,'㌧’,'㌃’,'㌶’,'㍑’, ‘㍗’,'㌍’,'㌦’,'㌣’,'㌫’,'㍊’,'㌻’,'①’,'②’,'③’, ‘④’,'⑤’,'⑥’,'⑦’,'⑧’,'⑨’,'⑩’,'⑪’,'⑫’,'⑬’, ‘⑭’,'⑮’,'⑯’,'⑰’,'⑱’,'⑲’,'⑳’
といったWindows機種依存文字(正確にはNECとかIBM機種依存かな)が含まれていれば、アラートダイアログが出ます。
※当然、この記事は当プラグインOFFで投稿(^^;
今後の対応
Mac版の対応と、検知した場合に置換してしまうオプション設定が可能となるような機能拡張。
