nDiki

2017年12月22日 (金)

Alfred の workflow の引数の文字列は濁点・半濁点が分解されているので iconv で合成することにした

最近 Remember The Milk でタスクを検索した際に検索結果に出ないタスクがあっておかしいなと思っていたのですが、ようやく原因がわかりました。 Alfred から workflow でrumember を使ってタスク登録していたものの一部が検索できないようなので調べたところ、濁点・半濁点が分解された UTF-8 文字列で Remember The Milk に送られていたのです。 Remember The MilkWeb 版で入力や検索では濁点・半濁点が分解されていない文字が使われるため検索でマッチしていないのでした。

合成されている Unicode 正規化形式C (NFC) で統一したいのですが Alfred では選択する方法がありません。Keyword to Script テンプレートで作った Alfred workflow だと Run Script (/bin/bash) のひな型が

 query="{query}"

となるのですが、ここをいったん

 query=`echo "{query}" | iconv -f UTF-8-MAC -t UTF-8`

のようにして変換することにしました。 Remember The Milk への登録以外にもテキストファイルに追記する workflow や Slack に投稿する workflow も同様にして NFC で処理するように変更です。

すでに Remember The Milk に投稿したものは仕方ないので手動で検索してちまちま修正。テキストファイルに書いたものもわかる範囲で検索して書き換えました。ふう。Google ChromeUlysses はきちんと合成して表示してくれるので今まで気がつきませんでしたよ。

補足

ちなみに uconv -f utf-8 -t utf-8 -x nfc だと合成できていない文字があってうまくいきませんでした。

スポンサード リンク
[ 12月22日全て ]

About Me

Naney Naney

Naney (なにい)です。株式会社ミクシィで SNS 事業の部長をしています。

About nDiki

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。

#nNote タグがついている記事は他の記事に比べて、より断片的・未整理・不完全なちょっとしたノートです。まだ結論に至っていない考えなども含まれます。頻繁/大幅に更新したり削除したりすることがあります。

※本サイトの内容は個人的見解であり所属組織とは関係ありません。

Other Notes

ナレッジベースアプリケーション Obsidian で書いているノートの一部を notes.naney.org で 公開しています。

最近検索されている記事

月別インデックス
Process Time: 0.182006s / load averages: 0.24, 0.35, 0.41
nDiki by WATANABE Yoshimasa (Naney)
Powered by DiKicker