使用 biblatex/biber 的 SAE 論文的“互聯網參考”參考書目風格

使用 biblatex/biber 的 SAE 論文的“互聯網參考”參考書目風格

儘管我缺乏 LaTeX 技能,但在論壇的幫助下,我在開發更新的 SAE 課程以使用 LaTeX 撰寫 SAE 論文方面取得了良好的進展。下一步:正確格式化參考書目中的「Internet References」。

我正在使用 biblatex/biber,雖然很明顯使用這種組合進行參考書目目的有很多功能,但對我來說如何操作格式並不明顯。因此,我再次尋求這方面的幫助。

我們以以下圍脖條目為例:

@Online{Dowanol2012,
  Title                    = {DOWANOL (TM) TPM Technical Data Sheet},
  Url                      = {http://msdssearch.dow.com/PublishedLiteratureDOWCOM/dh_08ad/0901b803808ad68e.pdf?filepath=oxysolvents/pdfs/noreg/110-00619.pdf&fromPage=GetDoc},
  Note                     = {Accessed 9/8/2015},
  Organization             = {The DOW Chemical Company},
  Urldate                  = {2015-09-08},
  Year                     = {2012},
}

透過我目前的嘗試,我在參考書目中得到以下條目:

DOWANOL (TM) TPM 技術資料表,存取日期:2015 年 9 月 8 日。陶氏化學公司,2012,http://msdssearch.dow.com/PublishedLiteratureDOWCOM/dh_08ad/0901b803808ad68e.pdf?filepath=oxysolvents/pdfs/noreg/110-00619.pdf&fromPage=GetDoc,瀏覽日期:2015 年 9 月 8 日。

我需要它的樣子如下:

陶氏化學公司,“DOWANOL (TM) TPM 技術資料表”http://msdssearch.dow.com/PublishedLiteratureDOWCOM/dh_08ad/0901b803808ad68e.pdf?filepath=oxysolvents/pdfs/noreg/110-00619.pdf&fromPage=GetDoc,瀏覽日期:2015 年 9 月。

我不確定該urldate字段可能不是最適合用來代替Sep. 2015的字段。09/08/2015也許我可以從 urldate 訪問月/年?

另外,我使用以下命令刪除了標題上的斜體:

\DeclareFieldFormat[online]{title}{#1}

但在那之後,我不知道如何重新排序所有內容,擺脫網址日期的雙重列印並進行所有格式設定(即標題周圍的引號等)

這是目前的 MWE:

\documentclass[letterpaper]{article}

% This package allows for detailed control of urls within the document and in the bibliography.
\usepackage{filecontents}
\usepackage{url}
\usepackage{color}
\usepackage{xcolor}
\usepackage[american]{babel}
\usepackage{csquotes}

\usepackage[style=numeric-comp, maxbibnames=4, minbibnames=3, sorting=none,firstinits=true, url=false, doi=true, backend=biber]{biblatex}

% Change the font size of the references list
\renewcommand*{\bibfont}{\small}

% Fix the way URLs are displayed.
\DeclareFieldFormat{url}{\url{#1}}
\DeclareFieldFormat{urldate}{\bibstring{urlseen}\space#1}
\renewbibmacro*{url+urldate}{%
  \usebibmacro{url}%
  \iffieldundef{urlyear}
    {}
    {\setunit*{\addcomma\space}%
     \usebibmacro{urldate}}}

% Print an access date on URLs.
\DefineBibliographyStrings{american}{urlseen = {accessed}}

% Typesets the URL (and DOI) in the same font as the document  
\urlstyle{same}

% Print an access date on URLs.
\DefineBibliographyStrings{american}{urlseen = {accessed}}

% Remove the italics on the title (how do I get quotes around it)?
\DeclareFieldFormat[online]{title}{#1}

% This line defines which file(s) bibtex will look for your bib entries (i.e. the name of your *.bib file without the extension). 
\bibliography{test}

\usepackage{hyperref}
\hypersetup{
  pdfencoding = {auto},
  pdfauthor   = {Dr. Who},
  pdftitle    = {Title},
  urlcolor    = blue,
  pdffitwindow=true,
  pdfkeywords={LLFC}, % Keywords 
  pdfnewwindow=true, % links in new window
  colorlinks=true, % false: boxed links; true: colored links
  linkcolor=red, % Color of internal links (change box color with linkbordercolor)
  linkbordercolor=red,
  citecolor=green,
  filecolor=magenta, 
  urlcolor=blue
}

\begin{filecontents}{test.bib}
@Online{Dowanol2012,
  Title                    = {DOWANOL (TM) TPM Technical Data Sheet},
  Url                      = {http://msdssearch.dow.com/PublishedLiteratureDOWCOM/dh_08ad/0901b803808ad68e.pdf?filepath=oxysolvents/pdfs/noreg/110-00619.pdf&fromPage=GetDoc},
  Note                     = {Accessed 9/8/2015},
  Organization             = {The DOW Chemical Company},
  Urldate                  = {2015-09-08},
  Year                     = {2012},
}
\end{filecontents}

\begin{document}
This is a test document with one citation \cite{Dowanol2012}.
\renewcommand\refname{References}
\printbibliography
\end{document}

哦,從技術上講,超連結應該帶有下劃線和藍色...我可以將其設為藍色,但我無法為其添加下劃線。特別是僅適用於屬於「@online」圍兜類型一部分的網址。期刊文章的 DOI 的 URL 應該帶有下劃線,而不是藍色(不過我可以稍後在單獨的線程中解決這個問題,只是嘗試為我試圖完成的奇怪格式提供上下文,以滿足 SAE 指南)。

答案1

在這個答案中,我將假設您的文件使用來自有人使用 biblatex/biber 解決方案實施了汽車工程師學會 (SAE) 風格的參考書目嗎?,所以我們不必處理那裡已經解決的細節。

大多數工作已經可以透過更改條目來完成.bib。 「陶氏化學公司」很可能是author而不是organization(另見在書目條目的「作者」欄位中使用「公司作者」(完整拼出姓名), 這biblatex文件§2.3.3 對此有一個簡短的描述團體作者和編輯,p。 31)。note由於資訊已經在該urldate欄位中,因此該欄位似乎也沒有必要。所以我會選擇

@Online{Dowanol2012,
  Title    = {DOWANOL (TM) TPM Technical Data Sheet},
  Url      = {http://msdssearch.dow.com/PublishedLiteratureDOWCOM/dh_08ad/0901b803808ad68e.pdf?filepath=oxysolvents/pdfs/noreg/110-00619.pdf&fromPage=GetDoc},
  author   = {{The DOW Chemical Company}},
  Urldate  = {2015-09-08},
  Year     = {2012},
}

那麼唯一需要改變的是輸出urldate,只需選擇urldate=long,然後你可以使用

\DefineBibliographyExtras{english}{
  \protected\def\mkbibdatelong#1#2#3{%
    \iffieldundef{#2}
      {}
      {\mkbibmonth{\thefield{#2}}%
       \iffieldundef{#1}{}{\space}}%
     \iffieldbibstring{#1}
       {\bibstring{\thefield{#1}}}
       {\stripzeros{\thefield{#1}}}}}

微量元素

\documentclass[letterpaper]{article}
\usepackage[american]{babel}
\usepackage{csquotes}
\usepackage[style=numeric-comp, maxbibnames=4, minbibnames=3, sorting=none,firstinits=true, url=false, doi=true, backend=biber, urldate=long]{biblatex}

\renewcommand*{\bibfont}{\small}

\DeclareFieldFormat{url}{\url{#1}}
\DeclareFieldFormat{urldate}{\bibstring{urlseen}\space#1}
\renewbibmacro*{url+urldate}{%
  \usebibmacro{url}%
  \iffieldundef{urlyear}
    {}
    {\setunit*{\addcomma\space}%
     \usebibmacro{urldate}}}

\DefineBibliographyStrings{american}{urlseen = {accessed}}

\urlstyle{same}

\DeclareFieldFormat[online]{title}{\mkbibquote{#1\isdot}}
\renewcommand*{\newunitpunct}{\addcomma\space}

\DefineBibliographyExtras{english}{
  \protected\def\mkbibdatelong#1#2#3{%
    \iffieldundef{#2}
      {}
      {\mkbibmonth{\thefield{#2}}%
       \iffieldundef{#1}{}{\space}}%
     \iffieldbibstring{#1}
       {\bibstring{\thefield{#1}}}
       {\stripzeros{\thefield{#1}}}}}

\usepackage{hyperref}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@Online{Dowanol2012,
  Title    = {DOWANOL (TM) TPM Technical Data Sheet},
  Url      = {http://msdssearch.dow.com/PublishedLiteratureDOWCOM/dh_08ad/0901b803808ad68e.pdf?filepath=oxysolvents/pdfs/noreg/110-00619.pdf&fromPage=GetDoc},
  author   = {{The DOW Chemical Company}},
  Urldate  = {2015-09-08},
  Year     = {2012},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
This is a test document with one citation \cite{Dowanol2012}.

\printbibliography
\end{document}

相關內容