今日はコンピューターの話。
まだまだ電子書籍の執筆、でんでんコンバーターによるEPUB化を行っている。
先日、EPUB Validatorによるバリデーションエラーを、どのようにつぶすかについての記事を書いた。
イジハピ! : 【第955回】EPUBのValidationエラーについて
ぼくはマークダウンで書いた原稿を、でんでんコンバーターに渡してEPUBファイルに変換し、EPUB Validatorで検証をするという作業を繰り返していた。
普通にマークダウンで原稿を書いて、でんでんコンバーターで変換するという作業を行う分には、あまりエラーは発生しない。
でも、さいきんちょっと進行上トリッキーな原稿を書いていると、エラーが続出するので、エラー検証にまつわる下記の作業を自動化したくなってきた。
* EPUBファイルnandoka.epubの拡張子をzipに変えてnantoka.zipとする
* それをunzipしてフォルダーnantokaに入れる
* 中身のファイルを検証し、エラーの箇所を突き止めて直す
* nantokaをzipに圧縮する。このとき以下のような手順を踏まなければならない。
$ cd nantoka
$ zip -0 -X ../nantoka.epub mimetype
$ zip -r ../nantoka.epub -x mimetype
さて、これ、Mac/UNIXでやるぶんにはなんてことない作業だが、Windowsでやりたい。理由はWindowsベースのハウツー本を書いているからで、なるべくWindowsで作業を完結したいと思ったのだ。
まず、コマンドラインで実行できるUNIX互換のzipコマンドおよびunzipコマンドを入手する。
以下から入手出来た。
Zip for Windows
UnZip for Windows
Cygwinとかそういうしちめんどくさいものを入れる必要はなくて、単に上からインストーラー(Complete package except sources)をダウンロードして実行するだけだ。
以下にzip.exeとunzip.exeが格納される。
C:\Program Files\GnuWin32\bin
ところで、なぜかPATH環境変数にこのパスが自動で入らないので、手動でWindowsを設定してPATH環境変数に上記のフォルダーを追加する。
具体的には「PC」を右クリックして「プロパティ」を選択し、「システムの詳細設定」をクリックし、「環境設定」をクリックし、「システム環境変数」から「Path」をクリックし、「編集」をクリックする。
ここで、昔は「値」ボックスが編集可能になるだけで、既存の「Path」の値をこわごわ変更して、セミコロン区切りで新しいフォルダーを追加しなければならなかったが、たぶんWindows 10からだと思うけど、グッと使いやすくなっていて、「環境変数名の編集」というボックスが出来て値の追加、編集、フォルダー参照、削除、優先順位の変更が個々の値ごとにボタンで出来るようになった。
こいつはいいね!>Windows
cmd.exeが拡充したという話もあって、Windowsにコマンドライン回帰の波が来ているんだろうか。今後もいろいろ期待である。
話が長くなったが、以下のバッチファイルを書いた。
まず、EPUBを解凍してフォルダーに入れる。
デスクトップにdensho.epubという名前でEPUBがあるという前提である。
次にrmdirコマンドでさっき作業したフォルダーを削除する。最初の1回はエラーが返る。/SというのはSubfolderの略で、サブフォルダーを再帰的に処理する。/QはQuietの略で、いちいち確認を求めないという意味らしい。
次にcopyコマンドでEPUBをZIPファイルに名前を変えてコピーする。
最後にdensho.zipをunzipする。-dはフォルダーを作ってその中に解凍したファイルを入れることで、ここではdenshoというフォルダーを作成している。
これでdenshoフォルダーの中にEPUBの中身が展開されるので、いろいろファイルをエラーに従って検証し、場合によっては、修整を試みる。本来はソースファイルであるでんでんマークダウンのファイルを修正してでんでんコンバーターによるビルドからやり直すのがスジであるが、原因がよく分からない時にEPUBのHTMLをいろいろいじって試験的にビルドしてみたいことがある。
さて、HTMLをいじってしまったフォルダーをもう一度zipし、EPUBに変換する。これは以下のようなバッチファイルを使ってみた。
ということで、書き出すと面倒なようだが、実際はバッチファイルが2個デスクトップにあって、片っぽをダブルクリックするとEPUBがフォルダー化され、もう片っぽをダブルクリックするとフォルダーがEPUB化
するだけの話である。要はフォルダー名、ファイル名が決め打ちなので、バッチファイルを書くとうまくいく。いちいちファイルやフォルダーを指定したり、ドラッグ&ドロップする手間がないのである。コマンドライン、バッチファイルというとアレルギー反応を示す人も、1つでも作ってみると便利さを実感されると思う。
さて、現在執筆中の電書のサイズが10MBを超えてしまい、Webサービスの<idpf>EPUB Validatorでは検証が出来なくなってしまった。
そこで、デスクトップ アプリケーションのpagina EPUB-Checkerというのを使ってみた。
pagina GmbH Publikationstechnologien: EPUB-Checker
JREを入れないと動かないが、ダウンロードしてunzipすると実行形式ができ、EPUBをドラッグ&ドロップすると検証が出来る。今後はこれを使おう。
今日もチラ裏でゴメンナサイ。
先日、EPUB Validatorによるバリデーションエラーを、どのようにつぶすかについての記事を書いた。
イジハピ! : 【第955回】EPUBのValidationエラーについて
ぼくはマークダウンで書いた原稿を、でんでんコンバーターに渡してEPUBファイルに変換し、EPUB Validatorで検証をするという作業を繰り返していた。
普通にマークダウンで原稿を書いて、でんでんコンバーターで変換するという作業を行う分には、あまりエラーは発生しない。
でも、さいきんちょっと進行上トリッキーな原稿を書いていると、エラーが続出するので、エラー検証にまつわる下記の作業を自動化したくなってきた。
* EPUBファイルnandoka.epubの拡張子をzipに変えてnantoka.zipとする
* それをunzipしてフォルダーnantokaに入れる
* 中身のファイルを検証し、エラーの箇所を突き止めて直す
* nantokaをzipに圧縮する。このとき以下のような手順を踏まなければならない。
$ cd nantoka
$ zip -0 -X ../nantoka.epub mimetype
$ zip -r ../nantoka.epub -x mimetype
さて、これ、Mac/UNIXでやるぶんにはなんてことない作業だが、Windowsでやりたい。理由はWindowsベースのハウツー本を書いているからで、なるべくWindowsで作業を完結したいと思ったのだ。
まず、コマンドラインで実行できるUNIX互換のzipコマンドおよびunzipコマンドを入手する。
以下から入手出来た。
Zip for Windows
UnZip for Windows
Cygwinとかそういうしちめんどくさいものを入れる必要はなくて、単に上からインストーラー(Complete package except sources)をダウンロードして実行するだけだ。
以下にzip.exeとunzip.exeが格納される。
C:\Program Files\GnuWin32\bin
ところで、なぜかPATH環境変数にこのパスが自動で入らないので、手動でWindowsを設定してPATH環境変数に上記のフォルダーを追加する。
具体的には「PC」を右クリックして「プロパティ」を選択し、「システムの詳細設定」をクリックし、「環境設定」をクリックし、「システム環境変数」から「Path」をクリックし、「編集」をクリックする。
ここで、昔は「値」ボックスが編集可能になるだけで、既存の「Path」の値をこわごわ変更して、セミコロン区切りで新しいフォルダーを追加しなければならなかったが、たぶんWindows 10からだと思うけど、グッと使いやすくなっていて、「環境変数名の編集」というボックスが出来て値の追加、編集、フォルダー参照、削除、優先順位の変更が個々の値ごとにボタンで出来るようになった。
こいつはいいね!>Windows
cmd.exeが拡充したという話もあって、Windowsにコマンドライン回帰の波が来ているんだろうか。今後もいろいろ期待である。
話が長くなったが、以下のバッチファイルを書いた。
まず、EPUBを解凍してフォルダーに入れる。
デスクトップにdensho.epubという名前でEPUBがあるという前提である。
REM unzip_epub.batまずdelコマンドでさっき作業したzipファイルを削除する。最初の1回はエラーが返る。
del C:\Users\query1000\Desktop\densho.zip
rmdir /S /Q C:\Users\query1000\Desktop\densho
copy C:\Users\query1000\Desktop\densho.epub C:\Users\query1000\Desktop\densho.zip
unzip C:\Users\query1000\Desktop\densho.zip -d densho
次にrmdirコマンドでさっき作業したフォルダーを削除する。最初の1回はエラーが返る。/SというのはSubfolderの略で、サブフォルダーを再帰的に処理する。/QはQuietの略で、いちいち確認を求めないという意味らしい。
次にcopyコマンドでEPUBをZIPファイルに名前を変えてコピーする。
最後にdensho.zipをunzipする。-dはフォルダーを作ってその中に解凍したファイルを入れることで、ここではdenshoというフォルダーを作成している。
これでdenshoフォルダーの中にEPUBの中身が展開されるので、いろいろファイルをエラーに従って検証し、場合によっては、修整を試みる。本来はソースファイルであるでんでんマークダウンのファイルを修正してでんでんコンバーターによるビルドからやり直すのがスジであるが、原因がよく分からない時にEPUBのHTMLをいろいろいじって試験的にビルドしてみたいことがある。
さて、HTMLをいじってしまったフォルダーをもう一度zipし、EPUBに変換する。これは以下のようなバッチファイルを使ってみた。
REM zip_epub.bat原理は分からないのだが、これでうまくいく。
C:
cd C:\Users\query1000\Desktop\densho
zip -0 -X ..\densho.epub mimetype
zip -r..\densho.epub * -x mimetype
ということで、書き出すと面倒なようだが、実際はバッチファイルが2個デスクトップにあって、片っぽをダブルクリックするとEPUBがフォルダー化され、もう片っぽをダブルクリックするとフォルダーがEPUB化
するだけの話である。要はフォルダー名、ファイル名が決め打ちなので、バッチファイルを書くとうまくいく。いちいちファイルやフォルダーを指定したり、ドラッグ&ドロップする手間がないのである。コマンドライン、バッチファイルというとアレルギー反応を示す人も、1つでも作ってみると便利さを実感されると思う。
さて、現在執筆中の電書のサイズが10MBを超えてしまい、Webサービスの<idpf>EPUB Validatorでは検証が出来なくなってしまった。
そこで、デスクトップ アプリケーションのpagina EPUB-Checkerというのを使ってみた。
pagina GmbH Publikationstechnologien: EPUB-Checker
JREを入れないと動かないが、ダウンロードしてunzipすると実行形式ができ、EPUBをドラッグ&ドロップすると検証が出来る。今後はこれを使おう。
今日もチラ裏でゴメンナサイ。