我使用 \path{} 命令打印出 *.tex 文件中目录的路径。我在网上搜索了很多资料来解决自动换行路径网址的问题。
我找到了一些提示和可能的解决方案,例如\usepackage[hyphens]{url}
,\setlength{\emergencystretch}{2pt}
或
%\def\UrlBreaks{
%\do\a\do\b\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j%
%\do\k\do\l\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t%
%\do\u\do\v\do\w\do\x\do\y\do\z\do\A\do\B\do\C\do\D%
%\do\F\do\G\do\H\do\I\do\J\do\K\do\L\do\M\do\N%
%\do\O\do\P\do\Q\do\R\do\S\do\T\do\U\do\V\do\W\do\X%
%\do\Z\do\_}%
但它们都不是我想要的解决方案。这些解决方案有效,但有时文本中下一行的路径 URL 前后的单词之间会有太多空格,无法正确拆分。文本超出了我定义的文本宽度。所以我想要一个解决方案,其中路径 URL 可以正确地将单词拆分为我选择的 babel 语言;因为我的工作是德语。
下面是我的一些路径 URL 的两个示例:
- HKEY_LOCAL_MACHINE\软件\策略\微软\系统证书\AuthRoot
- \%APPDATA\%\Microsoft\Crypto
有这样的方法吗?或者如何使用 path{} 命令获得极好、干净且工作良好的 URL 换行符?谢谢!
答案1
TeX 是否可以在没有过满或未满的框的情况下断行,与段落设置和 url 设置同样相关。## 这显示了几个宽度设置为 raggedright 而没有过满的框。
\documentclass{article}
\usepackage{url}
\parindent0pt
\begin{document}
{\raggedright
X\dotfill X
\path|HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\SystemCertificates\AuthRoot|
\path|\%APPDATA\%\Microsoft\Crypto|
X\dotfill X
}
\bigskip
\begin{minipage}{.5\textwidth}\raggedright
X\dotfill X
\path|HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\SystemCertificates\AuthRoot|
\path|\%APPDATA\%\Microsoft\Crypto|
X\dotfill X
\end{minipage}
\bigskip
\begin{minipage}{.25\textwidth}\raggedright
X\dotfill X
\path|HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\SystemCertificates\AuthRoot|
\path|\%APPDATA\%\Microsoft\Crypto|
X\dotfill X
\end{minipage}
\end{document}