f

アーカイブ

2013-12-08

Breakable \url with long-hyphenation-word

LaTeXにおいて参考文献としてURLを挙げるときに以下のようにハイフン-で繋がれた長いURLを貼り付けないといけないときがある。
http://www.very-very-huge-big-long-hyphenation-many-many-word
LaTeXでリンクを貼る場合は、hyperrefパッケージで提供されている\hrefコマンドや\urlコマンドが使える。これらのコマンドの書式は以下。
\href{<URL>}{<name>}
\url{<URL>}
通常、LaTeXでは長い単語が行末にかかると自動で単語の前半と後半を2行に分けて、間をハイフンでつなぐハイフネーションを行いうまく組版してくれる。このハイフネーションは一定の規則にしたがってLaTeXで自動で行うとのことで新語にも対応できる。
しかし、最初に例に挙げたようなもともとハイフンで繋がれた長い単語郡では、どうやらLaTeXではそれ自体が既にハイフネーションの行われた単語としてみなされ、ハイフネーションが行われず欄外にはみすことがある。
この欄外のはみ出しは\urlコマンドを使うときに遭遇する。\hrefコマンドではふまく折り返しされる。
o: \href{http://www.very-very-huge-big-long-hyphenation-many-many-word}{http://www.very-very-huge-big-long-hyphenation-many-many-word}
x: \url{http://www.very-very-huge-big-long-hyphenation-many-many-word}
これに対処するには、urlパッケージを読み込みオプションにhyphensをつけるとハイフン-の箇所で自動的に折り返してくれる
\usepackage[hyphens]{url}
LyXでは、urlパッケージが自動的に読み込まれるため、以下の場所に<hyphens>を記述しdocumentclassのオプションにhyphensをつけて対処する。
Document⇒Settings⇒Document Class⇒Class option⇒Custom
参考:
  • http://tex.stackexchange.com/questions/49788/hyperref-url-long-url-with-dashes-wont-break
  • http://tex.stackexchange.com/questions/141449/lyx-how-to-add-option-to-package-automatically-load
なお、冒頭に上げたハイフンが入った長い単語の折り返しを実現するためのパッケージとしてbreakurlもある。
参考:
http://tex.stackexchange.com/questions/54946/how-to-break-long-url-in-an-item
しかし、breakurlのマニュアルのIntroductionの記述によると、このパッケージはどうやらpdflatexかdvips経由は利用可能でdvipdfmx経由は利用不可な模様。

0 件のコメント:

コメントを投稿