Pinconvのマイナーバージョンアップを行いました。ステータスバーをダブルクリックまたは右クリックして変換データファイルの切り替えが出来るようになったほか、いくつか不具合を修正しています。
Pinconvの紹介はこちらのエントリ、詳しい使い方についてはPinconvの使い方を参照下さい。窓の杜による紹介記事はこちらです。
修正点

- 変換データの切り替えをステータスバーから行えるように変更
- 変換データの新規作成が正常に実行できない不具合の修正
- 変換データのインポートが正常に実行できない不具合の修正
- 置換後のハイライトが正常に動作しない不具合を修正
文字列にルビを振るためのプラグインを新たに追加したPinconv 4.01を公開します。
ダウンロードとPinconvの詳しい説明は、こちらのエントリを参照下さい。
Ruby プラグイン

Rubyプラグインは、上の画像のように文字列にルビを振るためのプラグインです。たとえばカラオケ用のアンチョコを作ったり、音読練習用のプリントを作ったりする場合に利用すると便利だと思います。出力形式にHTMLを採用していますので、ブログなどに張り付けることもできます。
利用例: 簡体字中国語にピンインのルビを振る
以下、Rubyプラグインの利用例として往年の名曲にピンインのルビを振ってみます。いくつかステップを踏む必要がありますが、それほど手間がかかるわけではありませんのでお付き合いください。
read more…
中国語の各種変換機能を備えたPinconv 4.00のβ版を公開します。
ダウンロード
pinconv.zip
Screenshot

Pinconvの主な機能についてはこちらを参照下さい。
β版の新機能
新たにプラグインの仕組みが導入されました。インストール時には次の5つのプラグインが同梱されています。
- 文字カウント
- コメント行とそれ以外の行を分けて文字数をカウントしたり、カーソル行までの文字数、カーソル行以降の文字数などをカウントすることができます。
- grep
- フォルダ内の全ファイルを対象に検索を行います。サブフォルダの検索や正規表現を利用した検索が可能です。
- あいまい検索
- 編集中のファイルや対訳データベースを対象にあいまい検索を行うことができます。Pinconvに翻訳メモリ的な機能を追加するものです。
- 日本語校閲
- 見出し表示
- 指定した文字列から始まる行を一覧表示することができます。正規表現が利用できるほか、ブックマークした行だけを一覧表示することもできます。
注意事項
現在、Pinconv 4.00はβ版です。不具合が残っている可能性があるほか、作者の思いつきで仕様が変わることがありますのでご注意下さい。なお、現在のところPinconvは機能制限なく利用することができますが、将来的には一部機能をシェアウェア化する予定です。あらかじめご了承下さい。
ヘルプ
作りかけですがこちらに使い方の簡単な説明があります。
再帰的にフォルダ内を検索して条件に合うファイルを取得するための関数。
引数のdirには検索対象のフォルダのパス、masksには「*.txt *.exe」のように取得したいファイルの種類をリストで渡します。
返り値はファイル名のリストです。
proc globRecursive {dir masks} {
set result [list]
foreach cur [lsort [glob -nocomplain -dir $dir *]] {
if {[file type $cur] == "directory"} {
eval lappend result [globRecursive $cur $masks]
} else {
foreach mask $masks {
if {[string match $mask $cur]} {
lappend result $cur
break
}
}
}
}
return $result
}
いつもやり方を忘れるTkのフォーカスまわり。
エンターキーを押下した際、次のウィジェットにフォーカスを移動させたい場合は、tk_focusNextを使います。
bind $w <Return> {
focus [tk_focusNext [focus]]
break
}
自分のためにメモφ(。_。)メモ
中国語にかかわる各種変換機能とオンライン辞書の編集検索機能を備えたPinconv 4.00(アルファ版)を公開します。
ダウンロード
pinconv.zip
Screenshot

Pinconvの主な機能
- 漢字の変換
- 簡体字中国語と日本語の漢字の相互変換
- 簡体字中国語と繁体字中国語の相互変換
- 簡体字中国語から発音記号(簡易ピンイン)への変換
- 簡易ピンインから声調記号付きのピンインへの変換
- 上記変換は対訳形式で出力することができ、処理結果をHTMLなどに変換することも可能です。
- オンライン辞書「北辞郎」の検索と編集
- 北辞郎APIを利用し、検索と編集を行うことができます。
- Unicode対応のエディタ
- WEB検索
- 選択した文字列をGoogleやwikipediaなどで手軽に検索することができます。
- 全画面表示
- 雑音をシャットアウトして物書きに集中したい時に便利な全画面表示機能を備えています。
- 正規表現に対応した検索と置換機能
- などなど
read more…
- edit
- a text widget with highlighting support for Tcl/Tk
NAME
edit (version 1.02 – 2010-01-21)
download: edit.zip
screenshot: demo1, demo2
REQUIREMENT
hashtrie 1.0
unicodeblock 1.1
SYNOPSIS
package require Tk
package require hashtrie 1.0
package require unicodeblock 1.1
package require edit ? 1.0 ?
edit pathName ? options ?
edit::addHighlightWord pathName word class
edit::deleteHighlightWord pathName word
edit::generateHighlightRule sourcefile rulefile
edit::addHighlightRgx pathName pattern tagname
edit::deleteHighlightRgx pathName pattern
edit::defineBrackets pathName brackets
edit::defineTextTag filename
edit::applyTextTags pathName tags
edit::linemapPopup X Y menu
edit::getAllMarkedIndex pathName startIndex endIndex
edit::getMarkedLine pathName index direction
pathName highlight startIndex endIndex
pathName copy
pathName cut
pathName paste
pathName append
pathName configure option value ? ... ?
pathName refresh
read more…
一括置換やLongest Common Prefix Searchなどを行うためのtrie風データ構造です。
今のところ、渡されるtrieの中身などはチェックしていません。そのうち直します。
拡張名:hashtrie
ダウンロード:hashtrie.zip
使い方は下記参照:
% package require hashtrie
1.0
% set trie [hashtrie::new]
{} {} 0 {}
% set trie [hashtrie::add $trie test テスト]
{t-0 1 e-1 2 s-2 3 t-3 4} {4 テスト} 4 {4 test}
% set trie [hashtrie::add $trie check チェック]
{t-0 1 e-1 2 s-2 3 t-3 4 c-0 5 h-5 6 e-6 7 c-7 8 k-8 9} {4 テスト 9 チェック} 9 {4 test 9 check}
% set d [dict create 今日 きょう 明日 あした 明後日 あさって]
今日 きょう 明日 あした 明後日 あさって
% set trie [hashtrie::import $trie $d]
{t-0 1 e-1 2 s-2 3 t-3 4 c-0 5 h-5 6 e-6 7 c-7 8 k-8 9 今-0 10 日-10 11 明-0 12 日-12 13 後-12 14 日-14 15} {4 テスト 9 チェック 11 きょう 13 あした 15 あさって} 15 {4 test 9 check 11 今日 13 明日 15 明後日}
% hashtrie::exists $trie 今日
1
% hashtrie::replace $trie "今日と明日はtestで忙しい。"
きょうとあしたはテストで忙しい。
% hashtrie::remove trie check
1
% puts $trie
{t-0 1 e-1 2 s-2 3 t-3 4 c-0 5 h-5 6 e-6 7 c-7 8 k-8 9 今-0 10 日-10 11 明-0 12 日-12 13 後-12 14 日-14 15} {4 テスト 11 きょう 13 あした 15 あさって} 15 {4 test 11 今日 13 明日 15 明後日}
read more…
与えられた文字のUnicode Block名を返すTcl用の拡張です。
拡張名:unicodeblock
ダウンロード:unicodeblock.zip
使い方:
set blockname [unicodeblock::getblock "字"]