0

背景: HTML を生成するつもりで、DocBook 5 文書 (および既に作成されたテキストを含む) を作成しています。セマンティック マークアップを最初から正しくして、後でやり直す必要がないようにしたいのですが、標準的な方法では探しているものが生成されないようで、どうすればよいかわかりません。それから逸脱するかどうかは、XSL で何が可能かによって決まります。

現在の設定: 私の用語集には省略された項目しかありません。これは、フルスペルの s とゼロ以外の数のs および/またはsglossentryを含む sで構成されます。代わりにすべてがs になる可能性があると思います。私には関係ありません。たとえば、私がこれを持っているとします:glosstermacronymabbrevglossterm

    <glossentry xml:id="ff"><glossterm>Firefox</glossterm>
        <acronym>FF</acronym>
        <glossdef>
          <para>The web browser made by Mozilla.</para>
        </glossdef>
    </glossentry>

理想

Firefox を参照したい場合は、どこにでもFFテキストを入力するとします。理想的には、追加のマークアップなしで、「FF」(大文字と小文字を区別) がparaグラフ内のプレーンな単語全体として表示される場合 (またはtitle、たとえば属性内の URL 内ではなく、codeまたはprogramlisting...)、DocBook ファイルで、 HTML ではテキスト "FF" として出力されますが、用語集エントリへのリンクとしてマークアップされますが、標準のリンク CSS ではなく、さらにtitle値を持つ属性が含まれます。Firefox. そうすれば、読者はホバリングして頭字語/略語を読み上げることができます。それが不十分な場合は、クリックしてより完全な定義に進むことができます。その間、私はそれを黒く下線を引いてスタイリングし、この機能があることを彼らに知らせますが、通常のリンクのように注意をそらすことはありません。特に、テキスト内で頻繁に発生します。

主な質問: プレーンテキストのマークアップのない用語のそのような置換は XSL でも可能ですか (スカンソープ問題のようなものを作成せずに)? もしそうなら、用語集にあるすべてのacronymまたはabbrev見つかったものに対して自動的にこれを行うことができますか?

これを直接行う方法はわかりませんでしたが、それが私の目標です。その間、私は他のことを試しました:

アプローチ1

キーボード マクロを設定して、ff入力中に変換できるようにし<xref linkend="ff"/>ます。

長所:

  1. 用語集へのリンク
  2. 略語を綴る

短所:

  1. 略語を綴ります (入力するだけでなく、読むのに短くするのが良いでしょう)...回避策:acronymを aglosstermにして、最初に入れますglossentry(セマンティクスの損失ですが、おそらくそれで問題ありませんか?)
  2. 用語集へのリンク (別のスタイルにしたい)...解決策: CSS fora.xref
  3. FFFirefox上記の2つを回避しても、タイトルはただの代わりに出てFirefoxきます(そして、複数の同義語を持つ他のものでは、一緒にマッシュアップが続きます)...解決策xml:id:好みの頭字語/略語に代替を置き、次にその中のリンクがそのendterm属性のそのIDを参照するようにします(linkend最初のIDを参照するだけでなく)
  4. 入力してシス​​テムに任せるのではなく、キーボード マクロを使用することを忘れないでください。インポートされたテキストは、用語集のエントリごとにテキスト置換を行う必要があります。

アプローチ 2

とキーボード マクロを使用<xsl:param name="glossterm.auto.link" select="1"/>して に変更FF<glossterm>FF</glossterm>ます。

長所:

  1. 用語集へのリンク

短所:

  1. 略語を綴ります (入力するだけでなく、読むのに短くするのが良いでしょう)...回避策:acronymを aglosstermにして、最初に入れますglossentry(セマンティクスの損失ですが、おそらくそれで問題ありませんか?)
  2. 用語集へのリンク (別のスタイルにしたい)...解決策: CSS for.glossterm
  3. 上記の2つを回避しても、title属性は指定されません
  4. 入力してシス​​テムに任せるのではなく、キーボード マクロを使用することを忘れないでください。インポートされたテキストは、用語集のエントリごとにテキスト置換を行う必要があります。

これまでのアプローチ 1 は、回避策の後の方が優れているように見えますが、私が概説した理想を達成する方法はありますか?

4

0 に答える 0