0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

CotEditor+AppleScriptで青空文庫のテキストからルビを削除する

Posted at

青空文庫って

「青空文庫は、誰にでもアクセスできる自由な電子本を、図書館のようにインターネット上に集めようとする活動です。」(本家のサイトから)
ここでは、作品をブラウザで直接閲覧できるほか、検索・読書ができるアプリもあります。
また、作品のデータをテキスト形式(ZIP圧縮)とXHTML形式の2種類がダウンロードできるようになっています。

ルビ付きが多い

公開されている作品には、読み仮名(ルビ)が付いていて、ブラウザや閲覧アプリではふりがなが振られて読みやすくなっています。
ZIP形式でダウンロードして解凍すると、通常のテキストファイルとして利用できて、色々と応用が効きます

ルビが邪魔?

ルビは自分で読むときは良いのですが、読み上げソフトなどで読ませるようにテキスト化する(ZIPファイルを解凍)と、ルビがあると漢字を2回読むあげることになって邪魔になります。(漢字を間違えて読むのは許すとして)

CotEditor + AppleScript

CotEditorは、Apache License, Version 2.0でライセンスされているオープンソースプログラムです。(macOS用)
 CotEditor Project → github
 リンク先のサイトを見ると、このエディターを詳しく知ることができます。特徴的なのは、AppleScript に対応していて、色々と操作の自動化などができることです。
この機能を使って、一瞬で青空文庫のテキストファイルからルビを削除できるようにしました。

AppleScript のソース

前置きが長くなりましたが、具体的にはルビを削除するAppleScriptを書いて、CotEditor のスクリプトフォルダに置けば、スクリプトメニューからサッと実行ができてしまいます。
では、ソースコードです

Ruby_Del.scpt
-- 青空文庫のテキストファイルから、ふりがな(ルビ)を削除する AppleScript
-- ルビは《ふりがな》 のようにやまかっこで囲まれている部分。
-- written by YNOMURA.COM
tell application "CotEditor"
	if not (exists front document) then return
	tell front document
		replace for "《.*?》" to "" with RE and all
	end tell

end tell

上記のコードをスクリプトエディタにコピぺして、分かりやすいところに保存します。保存したファイルを CotEditor のスクリプトメニューから「スクリプトフォルダを開く」で表示されるところに複製します。
これですぐに実行できるようになります。ほんの一瞬で終わってしまいます。

ちょっと解説

このスクリプトでは、CotEditor で開いているテキストに対して検索・置き換えを指示しています。検索には「正規表現」で、「《」で始まって「》」で終わる文字列を空文字で置き換えるという指定をしています。(階層構造にななっていないので簡略化しています)

参考になれば

CotEditorをご利用で、AppleScriptによる自動化ができればと思っている方の参考になればと思います。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?