自己紹介
三浦 広志
OpenStreetMap Foundation Japan 代表理事
NTTDATAで基盤系 研究開発
いろいろFreeSoftwareづくり
近況(1/3)
EPWING のドライバ EB4Jのメンテ
WeeklyOSMの翻訳チームに参加しはじめた
広辞苑第四版CDROMをヤフオク落札
近況(2/3)
Qt非公式インストーラaqtinstallが貢献をうけて劇的に改善
PythonのC拡張ガイドブックの翻訳開始
SKKの絵文字辞書を利用開始
近況(3/3)
圧縮ライブラリPyPPMd をスレッド化して、producer-consumer問題を解決
圧縮解凍ライブラリ py7zr がConda-forgeに公開
機能
とてもシンプルな、辞書検索アプリ
サポートする辞書フォーマット
EPWING(w/ Graphics, Sounds and Movies)
EPWING ebz compression (.ebz)
LingvoDSL (.dsl)
LingvoDSL dz compression (.dsl.dz)
StarDict (.ifo .dict)
StarDict (.dict.dz)
アプリのイメージ
開発の状況
言語: Java 11, 16
ライブラリ: EB4J
外字マッピング: furoku-data project
開発期間: 2021年8月27日から9月11日
最新バージョン v0.4.0 11,Sep.
特徴: 外字処理
各種 拡張仕様をサポート
libEB © 互換付録データ、Unicode拡張
EBWin互換Unicodeおきかえ
標準準拠外字イメージ
EPWINGフォーマットとは
1980年代後半から2000年代前半にかけて普及
CD-ROM辞書や電子書籍のフォーマット
文字コード JIS-X0208
広辞苑、研究社 英和中辞典など
プロむけの辞書が現役(海野辞書など)
外字のUnicode表示
EBWinではUnicodeで外字を表示する機能あり
EB4Jでも最新版で同様の機能を提供
EBViewer 開発の動機
開発した外字表示機能の動作を確認したい
マッピング作成を効率的にしたい
取り敢えず
翻訳支援ツール OmegaTのEPWINGプラグインのコードを再利用して簡易ビューア作成
付録データの作成
Target
Source
大修館ジーニアス英和辞典第5版
genius.yml
ビジネス技術実用英語大辞典V6.02
unno602.yml
岩波広辞苑第4版 第5版
kojien.yml
付録定義
title: 大修館ジーニアス
type: EPWING
subbook:
- name: GENIUS
unicode: true
character-code: JISX0208
stop-code: 0x1f090001
narrow:
range:
start: 0xa121
end: 0xa528
map:
0xA121 : 'á'
0xA122 : 'à'
0xA123 : 'ɑ'
0xA124 : 'ɑ́'
GraalVMの活用
Oracle が開発した 多言語対応の仮想マシン
JVM言語(Java, Scalaなど)のネイティブコンパイル対応
2019年に本番運用可能バージョンが公開された
ツールバイナリの生成
GraalVM の Native Image ツール
JavaのCUIアプリがシングルバイナリになる
–
Native Image
JVM言語をAOT(Ahead of Time)コンパイル
VMが組込まれておりスタンドアロン実行可能
アプリ起動時に初期化処理が不要
GraalVM 利用の方針
EB4J-TOOLS というCUIツールに適用
GraalVMがGUIアプリ対応したら、辞書引きツールにも適用したい
今後
一旦、ベータとしてリリース
メンテナンスのモードにします
細かい不具合はすこしある
協力者はウエルカム
Resume presentation
辞書引きソフト こえどLUG 報告 Hiroshi Miura 11, Sep., 2021 slide https://hackmd.io/@miurahr/HklkshYfF
{"metaMigratedAt":"2023-06-16T10:09:12.371Z","metaMigratedFrom":"YAML","title":"Koedolug 20210911","breaks":true,"description":"View the slide with \"Slide Mode\".","contributors":"[{\"id\":\"a39fef58-9b07-42cd-973a-4a7e5bdc85cf\",\"add\":4056,\"del\":1382}]"}