Add new packages installed
This commit is contained in:
636
elpa/auctex-12.1.0/style/biblatex.el
Normal file
636
elpa/auctex-12.1.0/style/biblatex.el
Normal file
@@ -0,0 +1,636 @@
|
||||
;;; biblatex.el --- AUCTeX style for `biblatex.sty' version 2.8a.
|
||||
|
||||
;; Copyright (C) 2012-2014, 2016 Free Software Foundation, Inc.
|
||||
|
||||
;; Author: Ralf Angeli <angeli@caeruleus.net>
|
||||
;; Maintainer: auctex-devel@gnu.org
|
||||
;; Created: 2012-11-14
|
||||
;; Keywords: tex
|
||||
|
||||
;; This file is part of AUCTeX.
|
||||
|
||||
;; AUCTeX is free software; you can redistribute it and/or modify it
|
||||
;; under the terms of the GNU General Public License as published by
|
||||
;; the Free Software Foundation; either version 3, or (at your option)
|
||||
;; any later version.
|
||||
|
||||
;; AUCTeX is distributed in the hope that it will be useful, but
|
||||
;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
;; General Public License for more details.
|
||||
|
||||
;; You should have received a copy of the GNU General Public License
|
||||
;; along with AUCTeX; see the file COPYING. If not, write to the Free
|
||||
;; Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
||||
;; 02110-1301, USA.
|
||||
|
||||
;;; Commentary:
|
||||
|
||||
;; This file adds support for `biblatex.sty' version 2.8a.
|
||||
|
||||
;;; Code:
|
||||
|
||||
(defvar LaTeX-biblatex-entrytype
|
||||
'(;; Regular Types
|
||||
"article" "book" "mvbook" "inbook" "bookinbook" "suppbook" "booklet"
|
||||
"collection" "mvcollection" "incollection" "suppcollection" "manual" "misc"
|
||||
"online" "patent" "periodical" "suppperiodical" "proceedings"
|
||||
"mvproceedings" "inproceedings" "reference" "mvreference" "inreference"
|
||||
"report" "set" "thesis" "unpublished" "xdata" "customa" "customb" "customc"
|
||||
"customd" "custome" "customf"
|
||||
;; Type Aliases
|
||||
"conference" "electronic" "masterthesis" "phdthesis" "techreport" "www"
|
||||
;; Unsupported Types
|
||||
"artwork" "audio" "bibnote" "commentary" "image" "jurisdiction"
|
||||
"legislation" "legal" "letter" "movie" "music" "performance" "review"
|
||||
"software" "standard" "video")
|
||||
"List of biblatex entry types.")
|
||||
|
||||
(defvar LaTeX-biblatex-executebibliographyoptions-options
|
||||
'(;; General
|
||||
("sorting" ("nty" "nyt" "nyvt" "anyt" "anyvt" "ynt" "ydnt" "none" "debug"))
|
||||
("sortcase" ("true" "false"))
|
||||
("sortupper" ("true" "false"))
|
||||
("sortlocale")
|
||||
("sortlos" ("bib" "los"))
|
||||
("related" ("true" "false"))
|
||||
("sortcites" ("true" "false"))
|
||||
("maxnames")
|
||||
("minnames")
|
||||
("maxbibnames")
|
||||
("minbibnames")
|
||||
("maxcitenames")
|
||||
("mincitenames")
|
||||
("maxitems")
|
||||
("minitems")
|
||||
("autocite" ("plain" "inline" "footnote" "superscript"))
|
||||
("autopunct" ("true" "false"))
|
||||
("language" (append LaTeX-biblatex-language-list
|
||||
'("autobib" "autocite" "auto")))
|
||||
("clearlang" ("true" "false"))
|
||||
("autolang" ("none" "hyphen" "other" "other*" "langname"))
|
||||
("block" ("none" "space" "par" "nbpar" "ragged"))
|
||||
("notetype" ("foot+end" "footonly" "endonly"))
|
||||
("hyperref" ("true" "false" "auto"))
|
||||
("backref" ("true" "false"))
|
||||
("backrefstyle" ("none" "three" "two" "two+" "three+" "all+"))
|
||||
("backrefsetstyle" ("setonly" "memonly" "setormem" "setandmem" "memandset"
|
||||
"setplusmem"))
|
||||
("indexing" ("true" "false" "cite" "bib"))
|
||||
("loadfiles" ("true" "false"))
|
||||
("refsection" ("none" "part" "chapter" "section" "subsection"))
|
||||
("refsegment" ("none" "part" "chapter" "section" "subsection"))
|
||||
("citereset" ("none" "part" "chapter" "section" "subsection"))
|
||||
("abbreviate" ("true" "false"))
|
||||
("date" ("short" "long" "terse" "comp" "iso8601"))
|
||||
("datelabel" ("year" "short" "long" "terse" "comp" "iso8601"))
|
||||
("origdate" ("short" "long" "terse" "comp" "iso8601"))
|
||||
("eventdate" ("short" "long" "terse" "comp" "iso8601"))
|
||||
("urldate" ("short" "long" "terse" "comp" "iso8601"))
|
||||
("alldates" ("short" "long" "terse" "comp" "iso8601"))
|
||||
("datezeros" ("true" "false"))
|
||||
("dateabbrev" ("true" "false"))
|
||||
("defernumbers" ("true" "false"))
|
||||
("punctfont" ("true" "false"))
|
||||
("arxiv" ("abs" "ps" "pdf" "format"))
|
||||
("texencoding" ("auto"))
|
||||
("bibencoding" ("auto"))
|
||||
("safeinputenc" ("true" "false"))
|
||||
("bibwarn" ("true" "false"))
|
||||
("mincrossrefs")
|
||||
;; Style-specific
|
||||
("isbn" ("true" "false"))
|
||||
("url" ("true" "false"))
|
||||
("doi" ("true" "false"))
|
||||
("eprint" ("true" "false"))
|
||||
;; Internal
|
||||
("pagetracker" ("true" "false" "page" "spread"))
|
||||
("citecounter" ("true" "false" "context"))
|
||||
("citetracker" ("true" "false" "context" "strict" "constrict"))
|
||||
("ibidtracker" ("true" "false" "context" "strict" "constrict"))
|
||||
("opcittracker" ("true" "false" "context" "strict" "constrict"))
|
||||
("loccittracker" ("true" "false" "context" "strict" "constrict"))
|
||||
("idemtracker" ("true" "false" "context" "strict" "constrict"))
|
||||
("parentracker" ("true" "false"))
|
||||
("maxparens")
|
||||
("firstinits" ("true" "false"))
|
||||
("sortfirstinits" ("true" "false"))
|
||||
("terseinits" ("true" "false"))
|
||||
("labelalpha" ("true" "false"))
|
||||
("maxalphanames")
|
||||
("minalphanames")
|
||||
("labelnumber" ("true" "false"))
|
||||
("labeltitle" ("true" "false"))
|
||||
("labeltitleyear" ("true" "false"))
|
||||
("labeldate" ("true" "false"))
|
||||
("singletitle" ("true" "false"))
|
||||
("uniquename" ("true" "false" "init" "full" "allinit" "allfull" "mininit"
|
||||
"minfull"))
|
||||
("uniquelist" ("true" "false" "minyear")))
|
||||
"Key=value options for ExecuteBibliographyOptions macro of the biblatex package.")
|
||||
|
||||
;; See table 2 of Biblatex reference manual.
|
||||
(defvar LaTeX-biblatex-language-list
|
||||
'("catalan" "croatian" "czech" "danish" "dutch" "american" "british"
|
||||
"canadian" "australian" "newzealand" "finnish" "french" "german" "austrian"
|
||||
"ngernam" "naustrian" "greek" "italian" "norwegian" "polish" "brazilian"
|
||||
"portuguese" "russian" "spanish" "swedish")
|
||||
"List of languages supported by biblatex packages.")
|
||||
|
||||
(defvar LaTeX-biblatex-addbibresource-options
|
||||
'(("label")
|
||||
("location" ("local" "remote"))
|
||||
("type" ("file"))
|
||||
("datatype" ("bibtex" "ris" "zoterordfxml" "endnotexml")))
|
||||
"Key=value options for addbibresource macro of the biblatex package.")
|
||||
|
||||
(defun LaTeX-arg-addbibresource (optional &optional prompt)
|
||||
"Prompt for a BibLaTeX database file.
|
||||
If OPTIONAL is non-nil, insert the resulting value as an optional
|
||||
argument, otherwise as a mandatory one. Use PROMPT as the prompt
|
||||
string."
|
||||
(let (files inputs database)
|
||||
(if LaTeX-using-Biber
|
||||
(setq files 'TeX-Biber-global-files
|
||||
inputs 'biberinputs)
|
||||
(setq files 'BibTeX-global-files
|
||||
inputs 'bibinputs))
|
||||
(setq files 'TeX-Biber-global-files
|
||||
inputs 'biberinputs)
|
||||
(message "Searching for BibLaTeX files...")
|
||||
(or (symbol-value files)
|
||||
(set files (mapcar 'list (TeX-search-files-by-type
|
||||
'biberinputs 'global t nil))))
|
||||
(message "Searching for BibLaTeX files...done")
|
||||
(setq database (completing-read
|
||||
(TeX-argument-prompt optional prompt "BibLaTeX files")
|
||||
(append (mapcar 'list (TeX-search-files-by-type
|
||||
inputs 'local t nil))
|
||||
(symbol-value files))))
|
||||
(LaTeX-add-bibliographies database)
|
||||
;; Run style file associated to the bibliography database file in order to
|
||||
;; immediately fill `LaTeX-bibitem-list'. We need to strip the extension
|
||||
;; because AUCTeX style files don't use it.
|
||||
(TeX-run-style-hooks (file-name-sans-extension database))
|
||||
(TeX-argument-insert database optional)))
|
||||
|
||||
;; Support for multicite commands, see § 3.7.3 of Biblatex reference manual.
|
||||
(defun LaTeX-arg-biblatex-cites (optional &optional prompt)
|
||||
"Prompt for citations with completion until input is empty.
|
||||
Prompt also for optional prenotes and postnotes. If OPTIONAL is
|
||||
non-nil, insert the citation key as an optional argument,
|
||||
otherwise as a mandatory one. Use PROMPT as the prompt string
|
||||
for citation keys."
|
||||
;; Prompt for global prenote and postnote.
|
||||
(and TeX-arg-cite-note-p (not current-prefix-arg)
|
||||
(let ((TeX-arg-opening-brace "(")
|
||||
(TeX-arg-closing-brace ")")
|
||||
(prenote (TeX-read-string
|
||||
(TeX-argument-prompt t nil "Global prenote"))))
|
||||
(TeX-argument-insert prenote t)
|
||||
;; If the prenote is empty the postnote is optional, otherwise it's
|
||||
;; mandatory.
|
||||
(TeX-argument-insert
|
||||
(TeX-read-string (TeX-argument-prompt t nil "Global postnote"))
|
||||
(equal prenote ""))))
|
||||
(let ((items t) (noinsert nil))
|
||||
(while items
|
||||
;; Prompt for prenote and postnote of the current keys.
|
||||
(and TeX-arg-cite-note-p (not current-prefix-arg)
|
||||
(let ((TeX-arg-opening-brace "[")
|
||||
(TeX-arg-closing-brace "]")
|
||||
(prenote (TeX-read-string
|
||||
(TeX-argument-prompt t nil "Prenote"))))
|
||||
(TeX-argument-insert prenote t)
|
||||
;; If the prenote is empty the postnote is optional, otherwise it's
|
||||
;; mandatory.
|
||||
(TeX-argument-insert
|
||||
(TeX-read-string (TeX-argument-prompt t nil "Postnote"))
|
||||
(equal prenote ""))))
|
||||
(setq items (if (and (fboundp 'reftex-citation)
|
||||
(fboundp 'reftex-plug-flag)
|
||||
(reftex-plug-flag 3))
|
||||
;; Use RefTeX when enabled.
|
||||
(reftex-citation t)
|
||||
;; Multiple citation keys in each argument are allowed.
|
||||
(TeX-completing-read-multiple
|
||||
(TeX-argument-prompt optional prompt "Key(s)")
|
||||
(LaTeX-bibitem-list))))
|
||||
(apply 'LaTeX-add-bibitems items)
|
||||
;; If input is empty, insert an empty group only the first time, when
|
||||
;; `noinsert' flag is nil.
|
||||
(unless (and (not items) noinsert)
|
||||
(TeX-argument-insert (mapconcat 'identity items ",") optional))
|
||||
(setq noinsert t))))
|
||||
|
||||
(defun LaTeX-arg-biblatex-natbib-notes (optional)
|
||||
"Prompt for two note arguments of a natbib compat citation command."
|
||||
(when TeX-arg-cite-note-p
|
||||
(let ((pre (TeX-read-string
|
||||
(TeX-argument-prompt optional nil "Prenote")))
|
||||
(post (TeX-read-string
|
||||
(TeX-argument-prompt optional nil "Postnote"))))
|
||||
(TeX-argument-insert pre optional)
|
||||
(TeX-argument-insert post optional)
|
||||
;; pre is given, post is empty: Make sure that we insert an
|
||||
;; extra pair of `[]', otherwise pre becomes post
|
||||
(when (and pre (not (string= pre ""))
|
||||
(string= post ""))
|
||||
(insert LaTeX-optop LaTeX-optcl)))))
|
||||
|
||||
(TeX-add-style-hook
|
||||
"biblatex"
|
||||
(lambda ()
|
||||
;; Biblatex uses as default backend biber, run it unless biblatex `backend'
|
||||
;; option value is one of `bibtex', `bibtex8', `bibtexu'. Autodetection of
|
||||
;; the backend can be overridden by setting `LaTeX-biblatex-use-Biber' as a
|
||||
;; local variable.
|
||||
(setq LaTeX-using-Biber
|
||||
(if (local-variable-p 'LaTeX-biblatex-use-Biber (current-buffer))
|
||||
LaTeX-biblatex-use-Biber
|
||||
(not (or (LaTeX-provided-package-options-member
|
||||
"biblatex" "backend=bibtex")
|
||||
(LaTeX-provided-package-options-member
|
||||
"biblatex" "backend=bibtex8")
|
||||
(LaTeX-provided-package-options-member
|
||||
"biblatex" "backend=bibtexu")))))
|
||||
|
||||
(TeX-run-style-hooks
|
||||
"etoolbox"
|
||||
"keyval"
|
||||
"kvoptions"
|
||||
"logreq"
|
||||
"ifthen"
|
||||
"url")
|
||||
(TeX-add-symbols
|
||||
;;; Global Customization
|
||||
;; Setting Package Options
|
||||
'("ExecuteBibliographyOptions"
|
||||
[TeX-arg-eval mapconcat 'identity
|
||||
(TeX-completing-read-multiple
|
||||
"Entry type: " LaTeX-biblatex-entrytype) ","]
|
||||
(TeX-arg-key-val LaTeX-biblatex-executebibliographyoptions-options))
|
||||
;;; Bibliography Commands
|
||||
;; Resources
|
||||
'("addbibresource" [TeX-arg-key-val LaTeX-biblatex-addbibresource-options]
|
||||
LaTeX-arg-addbibresource)
|
||||
'("addglobalbib" [TeX-arg-key-val LaTeX-biblatex-addbibresource-options]
|
||||
LaTeX-arg-addbibresource)
|
||||
'("addsectionbib" [TeX-arg-key-val LaTeX-biblatex-addbibresource-options]
|
||||
LaTeX-arg-addbibresource)
|
||||
;; The Bibliography
|
||||
'("printbibliography"
|
||||
[TeX-arg-key-val (("env") ("heading") ("title") ("prenote") ("postnote")
|
||||
("section") ("segment") ("sorting") ("type") ("nottype")
|
||||
("subtype") ("notsubtype") ("keyword") ("notkeyword")
|
||||
("categoy") ("notcategory") ("filter") ("check")
|
||||
("prefixnumbers") ("resetnumbers" ("true" "false"))
|
||||
("omitnumbers" ("true" "false")))])
|
||||
'("bibbysection"
|
||||
[TeX-arg-key-val (("env") ("heading") ("prenote") ("postnote"))])
|
||||
'("bibbysegment"
|
||||
[TeX-arg-key-val (("env") ("heading") ("prenote") ("postnote"))])
|
||||
'("bibbycategory"
|
||||
[TeX-arg-key-val (("env") ("prenote") ("postnote") ("section"))])
|
||||
'("printbibheading"
|
||||
[TeX-arg-key-val (("heading") ("title"))])
|
||||
;; The List of Shorthands
|
||||
'("printshorthands"
|
||||
[TeX-arg-key-val (("env") ("heading") ("title") ("prenote") ("postnote")
|
||||
("section") ("segment") ("sorting") ("type") ("nottype")
|
||||
("subtype") ("notsubtype") ("keyword") ("notkeyword")
|
||||
("categoy") ("notcategory") ("filter") ("check"))])
|
||||
;; Bibliography Sections
|
||||
'("newrefsection" ["Resources"])
|
||||
"endrefsection"
|
||||
;; Bibliography Segments
|
||||
"newrefsegment"
|
||||
"endrefsegment"
|
||||
;; Bibliography Categories
|
||||
'("DeclareBibliographyCategory" "Category")
|
||||
'("addtocategory" "Category" TeX-arg-cite)
|
||||
;; Bibliography Headings and Environments
|
||||
'("defbibenvironment" "Name" 3)
|
||||
'("defbibheading" "Name" ["Title"] t)
|
||||
;; Bibliography Notes
|
||||
'("defbibnote" "Name" "Text")
|
||||
;; Bibliography Filters and Checks
|
||||
'("defbibfilter" "Name" t)
|
||||
'("defbibcheck" "Name" t)
|
||||
;; Dynamic Entry Sets
|
||||
'("defbibentryset" "Set"
|
||||
(TeX-arg-eval mapconcat 'identity (TeX-completing-read-multiple
|
||||
"Keys: " (LaTeX-bibitem-list)) ","))
|
||||
;;; Citation Commands
|
||||
'("cite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("Cite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("parencite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("Parencite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("footcite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("footcitetext" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
;; Style-specific Commands
|
||||
'("textcite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("Textcite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("smartcite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("Smartcite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("cite*" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("parencite*" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("supercite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
;; Qualified Citation Lists
|
||||
'("cites" LaTeX-arg-biblatex-cites)
|
||||
'("Cites" LaTeX-arg-biblatex-cites)
|
||||
'("parencites" LaTeX-arg-biblatex-cites)
|
||||
'("Parencites" LaTeX-arg-biblatex-cites)
|
||||
'("footcites" LaTeX-arg-biblatex-cites)
|
||||
'("footcitetexts" LaTeX-arg-biblatex-cites)
|
||||
'("smartcites" LaTeX-arg-biblatex-cites)
|
||||
'("Smartcites" LaTeX-arg-biblatex-cites)
|
||||
'("textcites" LaTeX-arg-biblatex-cites)
|
||||
'("Textcites" LaTeX-arg-biblatex-cites)
|
||||
'("supercites" LaTeX-arg-biblatex-cites)
|
||||
;; Style-independent Commands
|
||||
'("autocite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("Autocite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("autocite*" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("Autocite*" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("autocites" LaTeX-arg-biblatex-cites)
|
||||
'("Autocites" LaTeX-arg-biblatex-cites)
|
||||
;; Text Commands
|
||||
'("citeauthor" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("Citeauthor" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("citeauthor*" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("Citeauthor*" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("citetitle" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("citetitle*" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("citeyear" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("citeyear*" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("citedate" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("citedate*" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("citeurl" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("parentext" "Text")
|
||||
'("brackettext" "Text")
|
||||
;; Special Commands
|
||||
'("fullcite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("footfullcite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("volcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("Volcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("Pvolcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("Pvolcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("fvolcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("ftolcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("svolcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("Svolcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("tvolcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("Tvolcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("avolcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("Avolcite"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"]) ()) "Volume"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Page"]) ()) TeX-arg-cite)
|
||||
'("notecite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("Notecite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("pnotecite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("Pnotecite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
'("fnotecite" (TeX-arg-conditional TeX-arg-cite-note-p
|
||||
(["Prenote"] ["Postnote"]) ()) TeX-arg-cite)
|
||||
;; Low-level Commands
|
||||
'("citename"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"] ["Postnote"]) ())
|
||||
TeX-arg-cite (TeX-arg-conditional TeX-arg-cite-note-p (["Format"]) ())
|
||||
"Name list")
|
||||
'("citelist"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"] ["Postnote"]) ())
|
||||
TeX-arg-cite (TeX-arg-conditional TeX-arg-cite-note-p (["Format"]) ())
|
||||
"Literal list")
|
||||
'("citefield"
|
||||
(TeX-arg-conditional TeX-arg-cite-note-p (["Prenote"] ["Postnote"]) ())
|
||||
TeX-arg-cite (TeX-arg-conditional TeX-arg-cite-note-p (["Format"]) ())
|
||||
"Field")
|
||||
;; Miscellaneous Commands
|
||||
"citereset"
|
||||
"citereset*"
|
||||
"mancite"
|
||||
"pno"
|
||||
"ppno"
|
||||
"nopp"
|
||||
"psq"
|
||||
"psqq"
|
||||
'("RN" "Integer")
|
||||
'("Rn" "Integer")
|
||||
;; Localization Commands
|
||||
'("DefineBibliographyStrings"
|
||||
(TeX-arg-eval completing-read "Language: " LaTeX-biblatex-language-list) t)
|
||||
'("DefineBibliographyExtras"
|
||||
(TeX-arg-eval completing-read "Language: " LaTeX-biblatex-language-list) t)
|
||||
'("UndefineBibliographyExtras"
|
||||
(TeX-arg-eval completing-read "Language: " LaTeX-biblatex-language-list) t)
|
||||
'("DefineHyphenationExceptions"
|
||||
(TeX-arg-eval completing-read "Language: " LaTeX-biblatex-language-list) t)
|
||||
"NewBibliographyString")
|
||||
|
||||
;; § 3.8.9 natbib Compatibility Commands
|
||||
(when (or (LaTeX-provided-package-options-member "biblatex" "natbib")
|
||||
(LaTeX-provided-package-options-member "biblatex" "natbib=true"))
|
||||
(let ((cmds '(("citet" . 1) ("citet*" . 1)
|
||||
("Citet" . 1) ("Citet*" . 1)
|
||||
("citep" . 2) ("citep*" . 2)
|
||||
("Citep" . 2) ("Citep*" . 2)
|
||||
("citealt" . 1) ("citealt*" . 1)
|
||||
("Citealt" . 1) ("Citealt*" . 1)
|
||||
("citealp" . 2) ("citealp*" . 2)
|
||||
("Citealp" . 2) ("Citealp*" . 2))))
|
||||
;; Taken from natbib.el:
|
||||
(apply
|
||||
#'TeX-add-symbols
|
||||
(mapcar
|
||||
(lambda (cmd)
|
||||
(cond
|
||||
((= (cdr cmd) 1)
|
||||
;; Just one optional argument, the post note
|
||||
(list
|
||||
(car cmd)
|
||||
'(TeX-arg-conditional TeX-arg-cite-note-p (["Postnote"]) nil)
|
||||
'TeX-arg-cite))
|
||||
((= (cdr cmd) 2)
|
||||
;; Pre and post notes
|
||||
(list
|
||||
(car cmd)
|
||||
'(TeX-arg-conditional TeX-arg-cite-note-p
|
||||
([LaTeX-arg-biblatex-natbib-notes])
|
||||
nil)
|
||||
'TeX-arg-cite))))
|
||||
cmds))
|
||||
|
||||
;; Fontification for compat macros does not go into `font-latex.el':
|
||||
(when (and (featurep 'font-latex)
|
||||
(eq TeX-install-font-lock 'font-latex-setup))
|
||||
(font-latex-add-keywords '(("citet" "*[[{")
|
||||
("Citet" "*[[{")
|
||||
("citep" "*[[{")
|
||||
("Citep" "*[[{")
|
||||
("citealt" "*[[{")
|
||||
("Citealt" "*[[{")
|
||||
("citealp" "*[[{")
|
||||
("Citealp" "*[[{"))
|
||||
'biblatex))))
|
||||
|
||||
(LaTeX-add-environments
|
||||
;;; Bibliography commands
|
||||
;; Bibliography Sections
|
||||
'("refsection" ["Resources"])
|
||||
;; Bibliography Segments
|
||||
"refsegment")
|
||||
|
||||
;; Declaring expert macros and environments. Criterion: all macros and
|
||||
;; environments to fine tune the bibliography, probably they will be used
|
||||
;; only by expert users.
|
||||
(TeX-declare-expert-macros
|
||||
"biblatex"
|
||||
"ExecuteBibliographyOptions" "printshorthands" "newrefsection"
|
||||
"endrefsection" "newrefsegment" "endrefsegment"
|
||||
"DeclareBibliographyCategory" "addtocategory" "defbibenvironment"
|
||||
"defbibheading" "defbibnote" "defbibfilter" "defbibcheck" "defbibentryset"
|
||||
"citereset" "citereset*" "mancite" "pno" "ppno" "nopp" "psq" "psqq" "RN"
|
||||
"Rn" "DefineBibliographyStrings" "DefineBibliographyExtras"
|
||||
"UndefineBibliographyExtras" "DefineHyphenationExceptions"
|
||||
"NewBibliographyString")
|
||||
(LaTeX-declare-expert-environments
|
||||
"biblatex"
|
||||
"refsection" "refsegment")
|
||||
|
||||
;; Tell RefTeX: If package option `natbib' is given, activate that
|
||||
;; format, otherwise stick with `biblatex':
|
||||
(when (and LaTeX-reftex-cite-format-auto-activate
|
||||
(fboundp 'reftex-set-cite-format))
|
||||
(if (or (LaTeX-provided-package-options-member "biblatex" "natbib")
|
||||
(LaTeX-provided-package-options-member "biblatex" "natbib=true"))
|
||||
(reftex-set-cite-format 'natbib)
|
||||
;; The entry `biblatex' is defined in
|
||||
;; `reftex-cite-format-builtin' in reftex-vars.el which will be
|
||||
;; part of Emacs >= 25.3. So check here if we find an entry,
|
||||
;; otherwise do it manually for older Emacsen.
|
||||
(if (assoc 'biblatex reftex-cite-format-builtin)
|
||||
(reftex-set-cite-format 'biblatex)
|
||||
(reftex-set-cite-format
|
||||
'((?\C-m . "\\cite[][]{%l}")
|
||||
(?C . "\\cite*[][]{%l}")
|
||||
(?t . "\\textcite[][]{%l}")
|
||||
(?T . "\\textcite*[][]{%l}")
|
||||
(?p . "\\parencite[][]{%l}")
|
||||
(?P . "\\parencite*[][]{%l}")
|
||||
(?f . "\\footcite[][]{%l}")
|
||||
(?s . "\\smartcite[][]{%l}")
|
||||
(?u . "\\autocite[][]{%l}")
|
||||
(?U . "\\autocite*[][]{%l}")
|
||||
(?a . "\\citeauthor{%l}")
|
||||
(?A . "\\citeauthor*{%l}")
|
||||
(?i . "\\citetitle{%l}")
|
||||
(?I . "\\citetitle*{%l}")
|
||||
(?y . "\\citeyear{%l}")
|
||||
(?Y . "\\citeyear*{%l}")
|
||||
(?n . "\\nocite{%l}")))))))
|
||||
LaTeX-dialect)
|
||||
|
||||
(defvar LaTeX-biblatex-package-options-list
|
||||
(append
|
||||
;;; Preamble Options
|
||||
LaTeX-biblatex-executebibliographyoptions-options
|
||||
'(;;; Load-time Options
|
||||
("backend" ("biber" "bibtex" "bibtexu" "bibtex8"))
|
||||
("style" BibLaTeX-global-style-files)
|
||||
("bibstyle" BibLaTeX-global-style-files)
|
||||
("citestyle" BibLaTeX-global-style-files)
|
||||
("natbib" ("true" "false"))
|
||||
("mcite" ("true" "false"))
|
||||
;;; Entry Options
|
||||
;; Preamble/Type/Entry Options
|
||||
("useauthor" ("true" "false"))
|
||||
("useeditor" ("true" "false"))
|
||||
("usetranslator" ("true" "false"))
|
||||
("useprefix" ("true" "false"))
|
||||
("indexing" ("true" "false" "cite" "bib"))
|
||||
;; Type/Entry Options are not available globally.
|
||||
;; Legacy Options (deprecated)
|
||||
("openbib")))
|
||||
"Package options for the biblatex package.")
|
||||
|
||||
(defun LaTeX-biblatex-package-options nil
|
||||
"Prompt for package options for the biblatex package."
|
||||
(unless BibLaTeX-global-style-files
|
||||
(if (if (eq TeX-arg-input-file-search 'ask)
|
||||
(not (y-or-n-p "Find BibLaTeX style yourself? "))
|
||||
TeX-arg-input-file-search)
|
||||
;; ...then, search for BibLaTeX styles.
|
||||
(progn
|
||||
(message "Searching for BibLaTeX styles...")
|
||||
(setq BibLaTeX-global-style-files
|
||||
(TeX-search-files-by-type 'bbxinputs 'global t t))
|
||||
(message "Searching for BibLaTeX styles...done"))
|
||||
;; ...else, use for completion only standard BibLaTeX styles (see §3.3 of
|
||||
;; Biblatex reference manual).
|
||||
(setq BibLaTeX-global-style-files
|
||||
'("numeric" "numeric-comp" "numeric-verb" "alphabetic"
|
||||
"alphabetic-verb" "authoryear" "authoryear-comp" "authoryear-ibid"
|
||||
"authoryear-icomp" "authortitle" "authortitle-comp"
|
||||
"authortitle-ibid" "authortitle-icomp" "authortitle-terse"
|
||||
"authortitle-tcomp" "authortitle-ticomp" "verbose" "verbose-ibid"
|
||||
"verbose-note" "verbose-inote" "verbose-trad1" "verbose-trad2"
|
||||
"verbose-trad3" "reading" "draft" "debug"))))
|
||||
(TeX-read-key-val t LaTeX-biblatex-package-options-list))
|
||||
|
||||
;;; biblatex.el ends here
|
||||
Reference in New Issue
Block a user