微量元素

微量元素

有沒有辦法控制 url 的中斷biblatex?我在用美國化學學會指南它說:

筆記:不同的 Web 瀏覽器會在 URL 的不同位置中斷文字。在印刷作品中,如果 URL 需要在行尾進行換行,則應在冒號或雙斜線之後進行換行;在單一斜線、波形符號、句號、逗號、連字號、底線、問號、數字符號或百分號之前;或等號或與號之前或之後。

我還使用該url套件以與我的文字相同的字體排版網址。我閱讀了包文檔,對巨集\UrlBreaks和有點困惑\UrlBigBreaks,但從我收集的情況來看,這些只能用於在列出的字符之後允許中斷,但不能在之前作為樣式指南的一些要求(我個人肯定不喜歡在經期前休息! )。有沒有辦法做到這一點?

答案1

我認為這應該要做你想要的。它定義了一種新的風格,可以根據您的規則\urlstyle{acs}重新定義。\UrlBreaks\UrlSpecials

有一個小問題。它更喜歡在 和 之間中斷://而不是在 之間//,但是如果您有//其他地方,則有可能在之間中斷。我試著解決這個問題,但沒能成功。但我認為這不會在真實的例子中發生。

微量元素

\documentclass{article}
\usepackage{url}

\makeatletter
\def\url@acsstyle{%
  \def\UrlBreaks{\do\/}%
  \def\UrlSpecials{%
    \do\~{\penalty\UrlBreakPenalty\mathchar`~}%
    \do\.{\penalty\UrlBreakPenalty\mathchar`.}%
    \do\,{\penalty\UrlBreakPenalty\mathchar`,}%
    \do\-{\penalty\UrlBreakPenalty\mathchar`-}%
    \do\_{\penalty\UrlBreakPenalty\mathchar`_}%
    \do\?{\penalty\UrlBreakPenalty\mathchar`?}%
    \do\#{\penalty\UrlBreakPenalty\mathchar"23}%
    \do\%{\Url@percent}%
    \do\={\penalty\UrlBreakPenalty\mathchar`=\penalty\UrlBreakPenalty}%
    \do\&{\penalty\UrlBreakPenalty\mathchar`&\penalty\UrlBreakPenalty}%
    \do\ {\Url@space}\do\^^M{\Url@space}%
    \Url@force@Tilde}%
}
\makeatother

\raggedright

\begin{document}

\hsize 5cm

\section*{Default Style}

\url{https://tex.stackexchange.com/questions/477945/control-url-breaking}

\section*{ACS Style}

\urlstyle{acs}

\url{https://tex.stackexchange.com/questions/477945/control-url-breaking}

\end{document}

輸出

答案2

您將需要三個不同的包,因此請將其包含在您的程式碼中:

\usepackage{url}
\usepackage{breakurl}
\usepackage[breaklinks]{hyperref}

\def\UrlBreaks{\do\/\do-}現在,如果您希望能夠在 a/或 a之後中斷它,您只需要添加即可-

例如,如果條目是這樣的:

@misc{GartnerNFC,
author = "Clark, Sarah",
howpublished = "nfcworld.com",
month = aug,
note = "Cited July 3rd 2012",
title = "{Gartner’s Hype Cycle places NFC at ‘Peak of Inflated Expectations’}",
url = "http://www.nfcworld.com/2011/08/11/39008/gartner-hype-cycle-places-nfc-at-peak-of-inflated-expectations",
year = "2011"
}

它看起來像這樣:

對於其他選項,請查看url套件文件。

相關內容