Build済み品の配布について(予告)

MSYS2の路線で導入できるようになりました。このサイトのやり方を参考にしました。 LTSのバージョン、extra-deps、およびその他のフラグをstack.yamlで設定すればうまくいきます。ただ、やっぱりMSYS2路線はテクニカルなのでWSL2路線をお勧めします。MSもWSL2でLinux GUI(おそらくGTKも対象)に注力するらしいですし。

ただし、うまくビルドできたものを配布しようと思っています(★1)。Windows10 Homeをクリーンインストールした機体で以下の手順で実行できること確認できました。

  • 圧縮ファイルの中身をCドライブ直下に配置
  • Mecabをインストール
  • バッチファイル(デスクトップに配置)にPDFファイルをD&D

で簡単に日本語PDF文書にシンタクスハイライトできます。環境変数の指定とかそういう煩わしいものは不要です(バッチファイルに書いてあります)。英語もやりたい場合は、

  • Dockerをインストールして例のコマンドを二回打ちます。

こちらもそんなに難しくないかなと思っています。

が、念のために上記一連の手順の動画も作ります。

このMSYS2路線の.exeだと.pdfに関連付けたり、ドラッグアンドドロップで気軽にPDF読めたりするのが良いです。

購入した電子PDFを自作PDFリーダーで読む、こういう配布をすると自作にならないですが、まずは自然言語へのシンタクスハイライトの可能性を感じてほしいです。技術の普及の一助となればいいなと思っています。

書籍も技術書典10までにはアップデート予定です。

技術書典10に新刊を出すのは難しいと思っています(★2)。その代わりに少しのアップデートをかけます。Windows向けバイナリ配布、技術書典10で購入した技術書をこのソフトで不思議な読書体験しよう、手順はコレコレみたいな内容は少なくとも加筆する予定。不思議な読書体験、というフレーズもネタバラシしたほうが良さそうなので技術書典10ではのっけから、シンタクスハイライトを自然言語に施す試み、云々まで言ってしまっていいと思えてきた。概要文も変えたほうがいいかも。

(★1)

ライセンス周り見ていましたが、popplerがGPL2なのでそちらに合わせる形でソース付きで配布になりそうです。GTK関連がLGPL2.1、ICUは特に問題なさそう。その他HaskellのライブラリはGTK(LGPL2.1), Poppler(LGPL2.1)周り以外はほとんどBSD3で問題なし。Text(BSD2), http-client(MIT), safe-exceptions(MIT)といった形で、これら3つはライセンスタームを添付して配布すればOKの模様。GPL2云々も配布のソースからの派生については、という解釈で良さそう。Ubuntu版はあくまで別。バイナリ配布する予定のコードはそこからforkしているから。ここまではソース付きでアップロードする。

これでMinGW周りの難しさを回避できたので残り(MecabとStanfordParser)はユーザーご自身に環境構築してもらう。

Mecabは公式のインストーラがあるのでそう難しくない(utf8にすることだけ気をつける)はず。

Docker+StanfordParserは少ししんどいかもだけど、添付して配布するやり方を知らない。また英語不要の場合は不要。

これで安心して配布できそうです。

(★2)

Mecab関数、置換可能性、それによる類別みたいな流れが楽勝と思っていましたが、甘かったです(笑)。MecabさんがBest Effortしてしまうんですよね。まさか助詞を含んで名詞化しても周りとの関係性が壊れないとは思わなかったです(○○、が、□□、を、という四単語で、「○○が」を括っても関係性が壊れなかったりします。ちょっと残念)。失敗例として文書化するのもありですが、なんかなって。置換可能性で数値を分類するとか、そういう面白い実験が高階関数で実装できてて、いいじゃん、いよいよ本丸、ってとこでこけたので少し時間を置きたいです。

3月のイベントですね、次の新刊参加は。コロナが収束していればリアルイベントで東京に行ってみたいです。以前、購入客側で技術書典7と技術書同人誌博覧会2に参加しましたが、見てるとサークル参加の方々、楽しそうでした。自分もああいうのやってみたいなぁって。このPDFリーダーもデモ機で実体験してもらいたいです。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする