如何使用 biblatex 自訂參考書目和引文風格?

如何使用 biblatex 自訂參考書目和引文風格?

最近我決定從 MS Word 切換到 LaTeX 來寫論文。我在管理引文和參考書目方面遇到了一些問題,特別是當被要求為不同目的使用不同樣式時。

我正在考慮為不同的參考書目和引文樣式建立不同的 tex 文件,但我不知道如何正確編輯樣式。

本文(另存為Example.bib):

@Article{Ho2012,
  author   = {Ho, L. and Dreyfus, J. and Boyer, J. and Lowe, T. and Bustamante, H. and Duker, P. and Meli, T. and Newcombe, G.},
  title    = {Fate of cyanobacteria and their metabolites during water treatment sludge management processes},
  journal  = {Sci Total Environ},
  year     = {2012},
  volume   = {424},
  number   = {1},
  pages    = {232-238},
  issn     = {1879-1026 (Electronic)
0048-9697 (Linking)},
  note     = {Many notes},
  doi      = {10.1016/j.scitotenv.2012.02.025},
  keywords = {Many keywords},
  type     = {Journal Article},
  url      = {http://www.ncbi.nlm.nih.gov/pubmed/22444068},
}

@Article{Ho2007,
  author   = {Ho, Lionel and Hoefel, D. and Saint, C. P. and Newcombe, Gayle},
  title    = {Isolation and identification of a novel microcystin-degrading bacterium from a biological sand filter},
  journal  = {Water Res},
  year     = {2007},
  volume   = {41},
  number   = {20},
  pages    = {4685-4695},
  issn     = {0043-1354 (Print)
0043-1354 (Linking)},
  note     = {Many notes},
  doi      = {10.1016/j.watres.2007.06.057},
  keywords = {Many keywords},
  type     = {Journal Article},
  url      = {http://www.ncbi.nlm.nih.gov/pubmed/17640697},
}

@Article{Ho2012a,
  author   = {Ho, L. and Sawade, E. and Newcombe, G.},
  title    = {Biological treatment options for cyanobacteria metabolite removal: A review},
  journal  = {Water Res},
  year     = {2012},
  volume   = {46},
  number   = {5},
  pages    = {1536-1548},
  issn     = {1879-2448 (Electronic)
0043-1354 (Linking)},
  note     = {Many notes},
  doi      = {10.1016/j.watres.2011.11.018},
  keywords = {Many keywords},
  type     = {Journal Article},
  url      = {http://www.ncbi.nlm.nih.gov/pubmed/22133838},
}

應該這樣引用和引用:

方式一

(何等人。,2007年; 2012a; b)
參考

Ho, L.、Dreyfus, J.、Boyer, J.、Lowe, T.、Bustamante, H.、Duker, P.、Meli, T. 與 Newcombe, G. (2012a)。水處理污泥管理過程中藍藻及其代謝物的命運。科學總環境,424(1), 232-238。

Ho, L.、Hoefel, D.、Saint, CP 與 Newcombe, G. (2007)。從生物砂濾池中分離鑑定一種新型微囊藻毒素降解菌。水資源研究,41(20),4685-4695。

Ho, L.、Sawade, E. 與 Newcombe, G. (2012b)。去除藍藻代謝物的生物治療選擇:綜述。水資源研究,46(5),1536-1548。

在 LaTeX 中我有:

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[citestyle=authoryear,
bibstyle=authoryear,
giveninits=true,
maxcitenames=2,
uniquelist=false,
sortcites,
maxbibnames=99,
sorting=ynt,
url=false,
eprint=false
]{biblatex}
\renewcommand*{\nameyeardelim}{\addcomma\space}
\usepackage[none]{hyphenat} 
\addbibresource{Example.bib}

%For italic et al. %%%
\renewbibmacro*{name:andothers}{
  \ifboolexpr{
    test {\ifnumequal{\value{listcount}}{\value{liststop}}}
    and
    test \ifmorenames
  }
    {\ifnumgreater{\value{liststop}}{1}
       {\finalandcomma}
       {}%
     \andothersdelim\bibstring[\emph]{andothers}}
    {}}
%%%

\DeclareNameAlias{sortname}{last-first}
\begin{document}
\parencite{Ho2012,Ho2012a,Ho2007}
\printbibliography[sorting=nyt]
\end{document}

我得到:

在此輸入影像描述

我怎麼能夠

  1. 從參考書目中刪除註釋和 ISNN(黃色和藍色標記)?
  2. 避免在期刊名稱(綠色標記)之前加上「In:」?
  3. 把期刊名稱寫成純文字(粉紅色標記)?
  4. 成交量(發行)(橘色市場)?
  5. 引文按年份排序,我嘗試列印按名稱排序的參考書目,但顯然代碼 \printbibliography[sorting=nyt] 不起作用
  6. 引文必須不同,如上所述

最後我不知道如何做到這一點:

方式2

(Ho 等人,2012 年;Ho 等人,2007 年;Ho、Sawade 和 Newcombe,2012 年)

何,L。德雷福斯,J.;博耶,J.;洛,T.;布斯塔曼特,H.;杜克,P.;梅利,T.; NEWCOMBE, G.水處理污泥管理過程中藍綠藻及其代謝物的命運。 Sci Total Environ,第 424 卷,n。 1,p。 232-238,2012。

何,L。霍費爾,D.;聖,CP; NEWCOMBE,G.從生物砂濾器中分離和鑑定一種新型微囊藻毒素降解細菌。水資源研究,第 41 卷,n。 20,p。 4685-4695,2007 年。

何,L。薩瓦德,E.; NEWCOMBE,G.去除藍藻代謝物的生物治療選擇:綜述。水資源研究,第 46 卷,n。 5,p。 1536-1548,2012。

答案1

這是參考的解決方案(方法1)。對於引用,我使用的樣式authoryear-comp 並不完全是您想要的,但比您現在的樣式更接近。

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[citestyle=authoryear-comp,
bibstyle=authoryear,
giveninits=true,
maxcitenames=2,
uniquelist=false,
sortcites,
maxbibnames=99,
sorting=ynt,
url=false,
eprint=false,
isbn =false
]{biblatex}
\renewcommand*{\nameyeardelim}{\addcomma\space}
\usepackage[none]{hyphenat}
\addbibresource{Example.bib}
%%%%%%%%%%%%%%%%%%%%%%%%%%%
\renewbibmacro{in:}{%
  \ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}

\DeclareFieldFormat{journaltitle}{#1}

\DeclareSourcemap{% requires biber
  \maps[datatype=bibtex]{
    \map{
      \step[fieldset=note, null]
    }
  }
}

\renewbibmacro*{volume+number+eid}{%
  \printfield{volume}%
  \printfield[parens]{number}%
  \setunit{\addcomma\space}%
  \printfield{eid}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%For italic et al. %%%
\renewbibmacro*{name:andothers}{
  \ifboolexpr{
    test {\ifnumequal{\value{listcount}}{\value{liststop}}}
    and
    test \ifmorenames
  }
    {\ifnumgreater{\value{liststop}}{1}
       {\finalandcomma}
       {}%
     \andothersdelim\bibstring[\emph]{andothers}}
    {}}
%%%

\DeclareNameAlias{sortname}{last-first}
\begin{document}
\parencite{Ho2012,Ho2012a,Ho2007}
\newrefcontext{sorting=nyt}
\printbibliography

\end{document} 

在此輸入影像描述

相關內容