• ベストアンサー

テキストファイル(《》←をふりがな表記使用/青空文庫形式)をhtml化したい

趣味で文章を書いている者です。 執筆は秀丸エディタで、ルビは「|振り仮名《ふりがな》」のように 表記しています。 smoopyなどの専用ビューアでは、ちゃんと認識してくれるので、 自分で読む分には不便はないのですが…… しかし、HPに載せる場合には、<ruby><rb>振り仮名</rb><rp>(</rp><rt>ふりがな</rt><rp>)</rp></ruby>としなければなりません。とても面倒です。 この青空文庫形式のルビを、htmlに変換するマクロなどはありませんでしょうか? ~ここからは複数の手順を踏んでも構わないやり方~ 青空文庫形式をwordに変換するマクロはありましたが、wordのhtml化はやたらとファイルが重く、不格好になってしまうのでちょっと……。 なお、青空文庫→Word→一太郎→HTML化という手順も踏みましたが、 この場合だと、振り仮名(ふりがな)とカッコ表記になってしまいます。 http://ameblo.jp/lm064574/entry-10020015211.html こちらのサイトさんの、一太郎のルビを<ruby>タグ化するマクロも試しましたが、最初の方の文字以外、極小サイズになってしまう不具合が発生してしまいました……。 ご存じの方、いらっしゃいましたらご教授お願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

記号を単純にタグに変換してしまうと、文中にあるルビとは無関係の箇所の|、《、》記号も置換してしまいます。 「秀丸エディタ[正規表現&マクロ]厳選テクニック」阿部友計著(ナツメ社)には、ずばり「ルビ付きテキストをrubyタグ付きHTMLファイルに書き換える」という方法が掲載されています。(秀丸のマクロ機能) (この本は、買っても絶対元取れる本なのでお勧めです。)

makerutana
質問者

お礼

これはありがたい! 今、アマゾンで確認したところです。 早速注文しようと思います。 日常的に使うものは、マクロで自動化出来るととても助かります。 教えていただいて感謝します。

その他の回答 (1)

  • jppy
  • ベストアンサー率14% (14/99)
回答No.1

原文はテキストファイルでしょうか? スマートではありませんが、簡単なところで、秀丸の置換機能とかどうでしょう 3回やらないといけませんが・・・。 |→<ruby><rb> {{→</rb><rp>(</rp><rt> }}→</rt><rp>)</rp></ruby> ※ルビ以外で「|」「{{」「}}」が使われてるとやっかいですが・・・。

makerutana
質問者

お礼

回答ありがとうございます。早速試してみました。 ……が、振り仮名(ふりがな)とカッコ付きで表記されるだけでした。 これは私の青空文庫の説明が悪かったからです。 全ての漢字を、 1 |漢字《漢字》 と表記しているのではなく、 2 漢字《かんじ》 と表記しているのがほとんどなのです。 1のやり方は、|~《》までの全単語にルビを振ります(|←で区切った部分から《》の部分まで) 2のやり方は、~《》←この《》直近の漢字にルビを振ります(ひらがなは無視する) 対象の漢字の前にコレ→<ruby><rb>を挟んで、 <ruby><rb>漢字</rb><rp>(</rp><rt>かんじ</rt><rp>)</rp></ruby> このようにした場合は、ちゃんとルビが振られました。 今回の目的にはそぐいませんでしたが、「使える道具」が増えたことは感謝しています。 ありがとうございました。

関連するQ&A

  • javascriptのreplaceについて

    javascriptを使って青空文庫のルビを削除したいと考えています。 例えば以下のような文章です。 「みんながうまそうに食べている<ruby><rb>最中</rb><rp>(</rp><rt>さなか</rt><rp>)</rp></ruby>に、こんな話は禁物だ。… これを 「みんながうまそうに食べている最中に、こんな話は禁物だ。… というようにしたいと思っています。 そこで、以下のようなコードを書いたのですが、どうもうまく動いてくれません。 ----------------------------------------------------------------------- doc = temp.replace(/<ruby><rb>(.+)<\/rb><rp>.+<\/rp><rt>.+<\/rt><rp>.+<\/rp><\/ruby>/gi, "$1"); 処理結果: 「みんながうまそうに食べている最中</rb><rp>(</rp><rt>さなか</rt><rp>)</rp></ruby>に、こんな話は禁物だ。… ----------------------------------------------------------------------- どこが誤っているのでしょうか? ご指導お願いします。

  • ルビ対応ブラウザと非対応ブラウザのルビのサイズ

    HTMLで<ruby>タグ等を使って読み仮名を振ることはできるのですが そのルビの文字サイズを思ったとおりに変えることができません 知りたい事は、ルビに対応しているブラウザで文字サイズを大きくして 非対応のブラウザでは文字サイズは変わらないようにする方法です <ruby><rb>田中</rb><rp>(</rp><rt>たなか</rt><rp>)</rp></ruby>とすると ルビに対応しているブラウザは“田中”の上に小さく“たなか” 非対応のブラウザだと田中(たなか)という感じになりますよね そこでルビ対応ブラウザのルビのサイズをちょうど良いくらいに変更すると 当たり前のことですが非対応のブラウザの文字サイズまで変わってしまいます それをなんとかしようと、自分のわかる範囲で いろいろと試してみたのですがうまくいきません 複雑であっても良いので、ルビに対応したブラウザだけ ルビの文字サイズを変える方法があったら教えてください

  • アンケートフォームの修正(ラジオボタンからチェックボックスにHTMLを書き換えると誤動作します)

    初めてホームページを作成しているものです。 ホームページビルダー11を使っています。 アンケートフォームを作成したのですが、間違いに気付き、 ラジオボタンからチェックボックスへ、HTMLを書き換えて修正しました。 見た目はうまくいったのですが、試しにアンケートに入力して送信しようとすると、この設問に対して、「Q17は必須設問です」のようなメッセージが出ます。 必須設問には違いないのですが、ちゃんとチェックボックスをチェックしているのに、このメッセージがでるのは、おかしいと思います。 どなたか、ちぇっくしていただけないでしょうか? ちなみに、日英併記、日本語にはルビを打っているので、読みにくくなっています。 よろしくお願いいたします!! <H3 id="Q17_head">Q 17.</H3> <BLOCKQUOTE> <P>Prefecture to Teach(Public Data)<BR> <RUBY><RB>教</RB><RP>(</RP><RT>おし</RT><RP>)</RP></RUBY>える<RUBY><RB>都道府県</RB><RP>(</RP><RT>とどうふけん</RT><RP>)</RP></RUBY>(<RUBY><RB>公開項目</RB><RP>(</RP><RT>こうかいこうもく</RT><RP>)</RP></RUBY>)</P> <TABLE> <TBODY> <TR> <TD><INPUT type="checkbox" name="Q17_1"></TD> <TD id="Q17_1_ca"></TD> <TD>Hokkaido <RUBY><RB>北海道</RB><RP>(</RP><RT>ほっかいどう</RT><RP>)</RP></RUBY></TD> </TR> <TR> <TD><INPUT type="checkbox" name="Q17_2"></TD> <TD id="Q17_2_ca"></TD> <TD>Aomori <RUBY><RB>青森県</RB><RP>(</RP><RT>あおもりけん</RT><RP>)</RP></RUBY></TD> </TR> (省略) </TBODY> </TABLE> </BLOCKQUOTE> 以上

  • ルビ行と同じ行間にそろえたい

    <RUBY>鋭心<RP>(</RP><RT>とごころ</RT><RP>)</RP></RUBY> というようにしてルビを振ることがわかりましたが、ルビのある行はない行より行間が広くなります。ルビのない行もルビのある行と同じ行間にしたいのですが、そんなことはできないでしょうか。

  • xsltを利用して変換後改行が入る

    MSXMLを利用して、XMLをHTMLへ変換しているのですが、変換後、改行が入ってしまいます。 どうすれば改行を取ることができるでしょうか? 【xslt】 <xsl:template match="ruby"><xsl:copy-of select="self::node()" /></xsl:template> 【XML】 <ruby><rb>○</rb><rp>〔</rp><rt>××</rt><rp>〕</rp></ruby> 【結果(HTML)】 <ruby xmlns=""> <rb>○</rb> <rp>〔</rp> <rt>××</rt> <rp>〕</rp>

    • 締切済み
    • XML
  • au端末で青空文庫(テキスト)を読む方法

    今までドコモ端末で、reateというテキストビューア iアプリを利用して、 青空文庫の書籍を携帯で読んでいました。 最近、au(W51SA)にキャリア変更したので、 同じように青空文庫の書籍を楽しみたいのですが、 PCでダウンロードした青空文庫(.txt)をルビつきで、縦表示 出来るEZアプリ(または方法)はないのでしょうか。 パピルスというサイトで、青空文庫の一部を無料でダウンロードできますが、 青空文庫にはあって、パピルスにはない書籍が結構あります。 青空文庫のテキストデータを、XMD形式に自分で変換できて 携帯に転送できるならそれでもいいのですが、 それは出来ないような事をどこかのサイトで見ました (誤認識だったらご指摘お願いします)。 ですので、書籍データはあくまでPCで青空文庫からダウンロードして、 SDカード経由で端末に送りたいのですが・・・。 ご存知の方がいらっしゃいましたらアドバイスお願いします。

  • テキストファイルに「今日の天気(てんき)は晴れ」という文章が書かれてい

    テキストファイルに「今日の天気(てんき)は晴れ」という文章が書かれていたとします。 これを open(IN,"<log.txt"); flock(IN,1); @log=<IN>; foreach(@log){ print "$_"; } というプログラムで開いたとき、「$_」に代入されている「今日の天気(てんき)は晴れ」の「天気(てんき)」の部分を「<ruby><rb>天気</rb><rp>(</rp><rt>てんき</rt><rp>)</rp></ruby>」に置換したいのですが、どうしたらよいのでしょうか? 「天気」の方は「s/([亜-煕]|[一-龠])/$1/g;」で認識するんですが、「(てんき)」はどうすればいいのか分かりません。

    • ベストアンサー
    • Perl
  • エクセルのWEB形式保存で、ふりがな機能を使わない方法

    エクセル2003で作ったファイルをhtm形式で保存。 WEBで公開しています。 キーワード検索は[Ctrl]+[F] 検索する文字列 → " " でやることにしています。 しかし、明らかにそこにある文字がヒットしないことがあります。       ↓ 原因は以下【 例 】のようにルビが入るためでした。 (XML形式のためかと思います) 【 例 】 "手間がかかるので" をキーワード検索(ヒットしない)       ↓ ソースを見ると、以下のようになっている。 <ruby>手間<span style='display:none'><rt>テマ</rt></span></ruby>がかかるので、 【質問は】 ルビを入れないようにできないでしょうか。         ↓ ×<ruby>手間<span style='display:none'><rt>テマ</rt></span></ruby>がかかるので ○手間がかかるので

  • HPビルダー2001にて……

    現在HPビルダー2001をwin2000上で使用しているのですが、不具合を見つけたので質問させて頂きます。 <ruby><rb>単語<rp><rt>ルビ<rb><ruby> 上記のようにタグを使ってルビを振ってみたところ、プレビュー画面で画面端での文章の折り返しがされていませんでした。 上記のやり方でルビを振った文章を消去してみたところ、折り返しは正常に表示されたので、原因はここにあると思います。 タグの打ち間違いなのか……? そこで質問なのですが、折り返しを正常にしたままタグでルビを振るにはどうしたらよいのでしょうか? アドバイスお願いします。

  • FirefoxとIEの両方でルビをふる方法はありますか?

    HTMLで、 <ruby>太郎<rp>(</rp><rt>たろう</rt><rp>)</rp></ruby> と書くと、IEで見たときには、「太郎」の上に「たろう」とルビがふられますが、Firefox等で見ると、「太郎(たろう)」と表示されてしまいます。 Firefoxでも、アドオンで、 https://addons.mozilla.org/ja/firefox/addon/1935 をインストールすれば、ルビが見られますが、 その場合は、上記アドオンを追加したパソコンでしかルビは見られません。 IEとFirefoxの両方でルビをふる良い方法はないものでしょうか?

専門家に質問してみよう