KDP(電子出版)のメモ 急急如律令

Amazon Kindleダイレクト・パブリッシングでの電子出版や電子書籍の作成販売について、文章やイラストの作成や編集方法について書いています。

自動ルビ振りマクロを作ったよ

自動ルビ振りマクロ

www.youtube.com

 

  エディター上で選択した文字にルビをふるマクロを作った。青空文庫小説家になろうカクヨムにも使える。100KBまで大丈夫なので、大体3万文字ぐらいはいっぺんにルビがつく。完全に正しいルビとは限らないのでチェックは必要だけど、現代語なら9割以上はただしいはず。Meryエディタのマクロです。他のエディタはよく知らないが改造したら他のエディタでも動くのでは?

JIS X 0208コード以外の文字が含まれていると、エラーが出て止まる。

例えば:軀銳閱旣强契戶吳娛歲產尙稅說絕脫彥姬

実際に動かした画面

f:id:kyukyunyorituryo:20161102002102j:plain f:id:kyukyunyorituryo:20161102002112j:plain

PageOneでの表示テスト

f:id:kyukyunyorituryo:20161102002653j:plain

 

Meryについて

 Meryは見た目的にメモ帳のようではあるが、マクロ、アウトライン、

シンタックスハイライト、マクロがjavascriptを使えたり、漢字の対応が多いのが特徴。www.haijin-boys.com

 zipをダウンロードして、解凍してMery.exeをダブルクリックすると実行する。

 表示>色の反転で目が疲れないように背景を黒くしている。

f:id:kyukyunyorituryo:20161102002106j:plain

 

 

マクロのセットアップ

下のリンクからClone or download、Download ZIPでマクロファイルがダウンロードできる。使うのはその中の、ふりがな.js。

github.com

Meryを展開したフォルダのMyMacros>Macrosにふりがな.jsを置く。下ではふりがなのファイルがいっぱいあるが開発中の別バージョン。

f:id:kyukyunyorituryo:20161102002046j:plain

マクロ、選択で先程追加したマクロを登録する。

f:id:kyukyunyorituryo:20161102002055j:plain

 標準ではマクロバーが表示されていないので、表示、ツールバー、マクロバーよりマクロバーを表示する。

f:id:kyukyunyorituryo:20161102002116j:plain

 使い方

  1. エディターに文字を貼り付けたり書く。
  2. ルビを付けたい文字を選択する。
  3. ふりがな.jsと書かれているところをクリック。

 ここでは全体を選択したが、3万文字程度までは一括してルビを付けれるだろうと思う。多いと処理が終わるまで10秒ぐらいかかるかも。

f:id:kyukyunyorituryo:20161102002102j:plain

 

マクロで追加されたルビ

 f:id:kyukyunyorituryo:20161102002112j:plain

 

設定の変更

標準の設定では、すべての漢字に青空文庫のふりがなを振ることになっているが変更できる。

マクロ、編集(E)ふりがな.jsとクリック

f:id:kyukyunyorituryo:20161102004919j:plain

そうすると、ふりがな.jsの編集画面になる。13行目から18行目辺りにルビの種類と、ルビをつける量を設定する項目がある。編集して保存すると、マクロの実行する内容が変わる。

f:id:kyukyunyorituryo:20161102004935j:plain

//0:青空文庫、1:pixiv、2:BCCKS、3:でんでんマークダウン、4:HTML5

 var r = 0;//ルビタイプの指定

 var r = 0 とある数字の0を0から4まで、半角数字で変更すると設定を変えられる。

//ルビを付けるグレードの指定
//1~6:小学1年から6年、7:中学生、8:一般向けの8段階
var Grade =1;

同様に、var Grade =1;の数字を変えることで、ルビを付ける量を変えられる。

 

 ルビの形式は、青空文庫、pixiv、bccks、html、でんでんマークダウンを設定を書き換えることで選択可能。小学生1年から6年、中学生、一般向けの8段階のふりがなをつけるレベルも設定を書き換えることで選択可能だ。ウェブAPIを利用しているのでネット接続が必須。青空文庫のルビは、小説家になろうカクヨムにも使えるので、ウェブ小説を書く人にもいいと思う。

 マクロが実行している内容

 細かく言うと下のような感じ。

  1. エディターで文字を選択してマクロを実行する
  2. YahooAPIにPOSTリクエストして、XMLを受け取る
  3. DOMパーサーに渡して、ルビを付けて返す

 ウェブAPIを使っているのでネット接続は必要になっている。WSHを使ったので、javascriptではなく、jscriptで違いに戸惑った。xmlhttprequestなら基本仕様なので互換性あると思ったのに、なにそれって。WSHActiveXObjectを使わないといけないようだ。jquery使ったら簡単になりそうなときも追加する方法がよくわからなかった。

 ところで、WSHデバッグツールでWindows Script Debuggerがあると書いてるのをみたがなくなっているような。visual studioでもできるようだけど。

 デバッグツール使わずにalert()だけでデバッグという面倒なことをやっておった。

ロームデバッグツールに慣れていたので面食らった。

99nyorituryo.hatenablog.com


アンドロイドアプリ化してみました。

play.google.com

 

jsonでやってたことをXMLでDOMパーサー使ってやるように変えた。XMLの勉強にはなった。DOMパーサーの使い方を覚えたので、キンドルコミッククリエイターの目次の処理もDOMパーサーを使って作り直してみるかな。

kindle comic creatorの目次処理

 

99nyorituryo.hatenablog.com

 FIxedEpub3.jsなんというものを作ると面白そうだな。

 PageOneとMeryについては、下の本で書いたのでもうちょっと詳しく知りたかったらどうぞ。KDPについては情報が古くなっていると思われる。

縦書き電子書籍の作り方

縦書き電子書籍の作り方

 

 

 タグ:ふりがな

 

ふりがな付与

ふりがな付与