自分でつくるPDFリーダーという題目で展開していく予定(※1)でしたが、現状ではAgdaやHoTT(Homotopy Type Theory)等、先にやっておきたいことがたくさん出てきて、余暇では時間が取れない感が出てきました。なのでひとまずペンディングします(再開しました(https://polymony.net/2019/12/20/post-2631/。)ローカルな勉強会(https://connpass.com/event/159833/)を開きます。そこでの資料をこのHPでもアップロードしていく予定です。)。
ただし、前回(https://polymony.net/2019/06/04/post-602/)にHaskell(stack)とGtk(Gtk2hs)の環境を構築した人に悪い(※2)ので、連載で作ろうとしていたPDFリーダーについて一応、最低限動くもの(体験版みたいなものですね)を用意しました。バグらないとは思いますが、自己責任でお願いします。ソースコードもまだ汚いですが参考になるかもしれません。ライセンス周りも各人がビルドすれば問題ないと思ってます。
インストール?の仕方ですが、Haskell(stack)とGtk(gtk2hs)の環境が揃っていれば、この圧縮ファイル(https://polymony.net/wp-content/uploads/2019/06/poppy3.zip)の中身を展開し、コマンドプロンプトでstack buildと打てば、動くソフトがビルドされます。ビルドした後でstack exec poppy3-exeとやれば、実際にリーダーが起動します。MacやLinuxの人は上の説明を適宜置き換えてください。(どうやら、Gtkのランタイム?があればHaskell(stack) + Gtk(gtk2hs)の環境を整えなくてもこのプログラムを走らせられるみたいです。その辺りもおいおい調べてみます。)
ネタとしているテキストは、wikipediaの「戦国時代」の項目です。(https://ja.wikipedia.org/wiki/%E6%88%A6%E5%9B%BD%E6%99%82%E4%BB%A3_(%E6%97%A5%E6%9C%AC))。まずは色々と試してみてください。一例としては「氏」とか指定すると面白いかも知れません。
こういう感じで学生さんの教科書に使うと、面白い、かつ勉強しやすくなると思っています。ただ、仕事外でそっちをやる時間と気力が今はないです。
「自分でつくるPDFリーダー」ネタについては少し間が開きそうですが、再開時にはまたよろしくお願いします。
(※1)
考えていたスケジュールは以下のとおりでした。どこかで余裕ができたら再開したいです。
(1)
ウィンドウの表示(最低限のGUI)
(2)
ファイルリストの取得と画像の表示
(3)
ページ送りボタンの設置(これでただの画像リーダーが完成する)
(4)
特定の位置に色をつける関数
(5)
単語の一部を指定して、特定の位置を抽出する関数
(6)
単語の一部を指定して、特定の位置に色をつける関数
(7)
ページの位置をクリックして、単語の一部を取得する関数
(8)
ページの位置をクリックして、単語の一部を取得しリスト保存する関数
(9)
各イベントをトリガーにして色をつける関数
(※2)Haskellを勉強する上で、参考になるかも知れない情報をまとめました(https://polymony.net/2019/06/26/post-1330/)。良ければ見てみてください。