[LyX/master] Properly support the cite engines in the GUI
commit a3de2976fd42eb92bb5f0323bc4ef9d07ea12195 Author: Juergen Spitzmueller Date: Sat Dec 31 09:28:51 2016 +0100 Properly support the cite engines in the GUI Instead of hardcoding 3 engines, we now support all engines which are defined in the *.citeengines files. --- lib/citeengines/basic.citeengine |5 +- lib/citeengines/jurabib.citeengine |8 +- lib/citeengines/natbib.citeengine | 10 +- src/BufferParams.cpp | 26 + src/CiteEnginesList.cpp| 46 src/CiteEnginesList.h | 18 +++- src/frontends/qt4/GuiDocument.cpp | 136 + src/frontends/qt4/GuiDocument.h|3 + src/frontends/qt4/ui/BiblioUi.ui | 203 ++-- 9 files changed, 251 insertions(+), 204 deletions(-) diff --git a/lib/citeengines/basic.citeengine b/lib/citeengines/basic.citeengine index dc4941b..7de5e35 100644 --- a/lib/citeengines/basic.citeengine +++ b/lib/citeengines/basic.citeengine @@ -1,6 +1,7 @@ -# \DeclareLyXCiteEngine{BibTeX (basic)} +# \DeclareLyXCiteEngine{Basic (BibTeX)} # DescriptionBegin -# Use the basic citation capabilities provided by plain LaTeX. +# The basic citation capabilities provided by BibTeX. +# Mainly simple numeric styles primarily suitable for science and maths. # DescriptionEnd # Excludes: jurabib | natbib diff --git a/lib/citeengines/jurabib.citeengine b/lib/citeengines/jurabib.citeengine index 13bbc6f..de292bb 100644 --- a/lib/citeengines/jurabib.citeengine +++ b/lib/citeengines/jurabib.citeengine @@ -1,8 +1,8 @@ -# \DeclareLyXCiteEngine[jurabib.sty]{Jurabib} +# \DeclareLyXCiteEngine[jurabib.sty]{Jurabib (BibTeX)} # DescriptionBegin -# Loads the LaTeX package jurabib, a citation engine. Jurabib supports annotations, -# author-year style citations and hyphenation patterns for bibliography entries in -# English, German, French, Dutch, Spanish and Italian. +# Jurabib supports a range of author-year styles primarily suitable for law studies +# and the Humanities. It includes localizations for English, German, French, Dutch, +# Spanish and Italian. # DescriptionEnd # Excludes: basic | natbib diff --git a/lib/citeengines/natbib.citeengine b/lib/citeengines/natbib.citeengine index 63bf1cb..dcd160f 100644 --- a/lib/citeengines/natbib.citeengine +++ b/lib/citeengines/natbib.citeengine @@ -1,9 +1,9 @@ -# \DeclareLyXCiteEngine[natbib.sty]{Natbib} +# \DeclareLyXCiteEngine[natbib.sty]{Natbib (BibTeX)} # DescriptionBegin -# Loads the LaTeX package natbib, a citation engine. Natbib supports -# both author-year and numerical styles for citations, automatic sorting -# and merging of numerical citations, annotations, capitalization of the -# `van' part of author names, shortened and full author lists, and more. +# Natbib supports a range of both author-year and numerical styles mainly +# aimed at the Humanities. It features automatic sorting and merging of +# numerical citations, annotations, capitalization of the `van' part of +# author names, shortened and full author lists, and more. # DescriptionEnd # Excludes: basic | jurabib diff --git a/src/BufferParams.cpp b/src/BufferParams.cpp index 326d487..1e7f772 100644 --- a/src/BufferParams.cpp +++ b/src/BufferParams.cpp @@ -23,6 +23,7 @@ #include "Buffer.h" #include "buffer_funcs.h" #include "Bullet.h" +#include "CiteEnginesList.h" #include "Color.h" #include "ColorSet.h" #include "Converter.h" @@ -272,27 +273,6 @@ PackageTranslator const & packagetranslator() } -// Cite engine -typedef Translator CiteEngineTypeTranslator; - - -CiteEngineTypeTranslator const init_citeenginetypetranslator() -{ - CiteEngineTypeTranslator translator("authoryear", ENGINE_TYPE_AUTHORYEAR); - translator.addPair("numerical", ENGINE_TYPE_NUMERICAL); - translator.addPair("default", ENGINE_TYPE_DEFAULT); - return translator; -} - - -CiteEngineTypeTranslator const & citeenginetypetranslator() -{ - static CiteEngineTypeTranslator const translator = - init_citeenginetypetranslator(); - return translator; -} - - // Spacing typedef Translator SpaceTranslator; @@ -863,7 +843,7 @@ string BufferParams::readToken(Lexer & lex, string const & token, } else if (token == "\\cite_engine_type") { string engine_type; lex >> engine_type; - cite_engine_type_ = citeenginetypetranslator().find(engine_type); + cite_engine_type_ = theCiteEnginesList.getType(engine_type); } else if (token == "\\biblio_style") { lex.eatLine(); biblio_style = lex.getString(); @@ -1234,7 +1214,7 @@ void BufferParams::writeFile(ostream & os, Buffer const * buf) const os << "basic"; } - os << "\n\\cite_engine_type " << citeenginetypetranslator().find(cite_engine_type_) + os << "\n\\cite_engine_type " << theCiteEnginesList.getTypeAsS
[LyX/master] Properly support the cite engines in the GUI
commit 8e4bd6a497561b1dda99f0b75102a9f8a1ca46ff Author: Juergen Spitzmueller Date: Sat Dec 31 09:28:51 2016 +0100 Properly support the cite engines in the GUI Instead of hardcoding 3 engines, we now support all engines which are defined in the *.citeengines files. --- lib/citeengines/basic.citeengine |5 +- lib/citeengines/jurabib.citeengine |8 +- lib/citeengines/natbib.citeengine | 10 +- src/BufferParams.cpp | 26 + src/CiteEnginesList.cpp| 46 src/CiteEnginesList.h | 18 +++- src/frontends/qt4/GuiDocument.cpp | 136 + src/frontends/qt4/GuiDocument.h|3 + src/frontends/qt4/ui/BiblioUi.ui | 203 ++-- 9 files changed, 251 insertions(+), 204 deletions(-) diff --git a/lib/citeengines/basic.citeengine b/lib/citeengines/basic.citeengine index dc4941b..7de5e35 100644 --- a/lib/citeengines/basic.citeengine +++ b/lib/citeengines/basic.citeengine @@ -1,6 +1,7 @@ -# \DeclareLyXCiteEngine{BibTeX (basic)} +# \DeclareLyXCiteEngine{Basic (BibTeX)} # DescriptionBegin -# Use the basic citation capabilities provided by plain LaTeX. +# The basic citation capabilities provided by BibTeX. +# Mainly simple numeric styles primarily suitable for science and maths. # DescriptionEnd # Excludes: jurabib | natbib diff --git a/lib/citeengines/jurabib.citeengine b/lib/citeengines/jurabib.citeengine index 13bbc6f..de292bb 100644 --- a/lib/citeengines/jurabib.citeengine +++ b/lib/citeengines/jurabib.citeengine @@ -1,8 +1,8 @@ -# \DeclareLyXCiteEngine[jurabib.sty]{Jurabib} +# \DeclareLyXCiteEngine[jurabib.sty]{Jurabib (BibTeX)} # DescriptionBegin -# Loads the LaTeX package jurabib, a citation engine. Jurabib supports annotations, -# author-year style citations and hyphenation patterns for bibliography entries in -# English, German, French, Dutch, Spanish and Italian. +# Jurabib supports a range of author-year styles primarily suitable for law studies +# and the Humanities. It includes localizations for English, German, French, Dutch, +# Spanish and Italian. # DescriptionEnd # Excludes: basic | natbib diff --git a/lib/citeengines/natbib.citeengine b/lib/citeengines/natbib.citeengine index 63bf1cb..dcd160f 100644 --- a/lib/citeengines/natbib.citeengine +++ b/lib/citeengines/natbib.citeengine @@ -1,9 +1,9 @@ -# \DeclareLyXCiteEngine[natbib.sty]{Natbib} +# \DeclareLyXCiteEngine[natbib.sty]{Natbib (BibTeX)} # DescriptionBegin -# Loads the LaTeX package natbib, a citation engine. Natbib supports -# both author-year and numerical styles for citations, automatic sorting -# and merging of numerical citations, annotations, capitalization of the -# `van' part of author names, shortened and full author lists, and more. +# Natbib supports a range of both author-year and numerical styles mainly +# aimed at the Humanities. It features automatic sorting and merging of +# numerical citations, annotations, capitalization of the `van' part of +# author names, shortened and full author lists, and more. # DescriptionEnd # Excludes: basic | jurabib diff --git a/src/BufferParams.cpp b/src/BufferParams.cpp index 326d487..1e7f772 100644 --- a/src/BufferParams.cpp +++ b/src/BufferParams.cpp @@ -23,6 +23,7 @@ #include "Buffer.h" #include "buffer_funcs.h" #include "Bullet.h" +#include "CiteEnginesList.h" #include "Color.h" #include "ColorSet.h" #include "Converter.h" @@ -272,27 +273,6 @@ PackageTranslator const & packagetranslator() } -// Cite engine -typedef Translator CiteEngineTypeTranslator; - - -CiteEngineTypeTranslator const init_citeenginetypetranslator() -{ - CiteEngineTypeTranslator translator("authoryear", ENGINE_TYPE_AUTHORYEAR); - translator.addPair("numerical", ENGINE_TYPE_NUMERICAL); - translator.addPair("default", ENGINE_TYPE_DEFAULT); - return translator; -} - - -CiteEngineTypeTranslator const & citeenginetypetranslator() -{ - static CiteEngineTypeTranslator const translator = - init_citeenginetypetranslator(); - return translator; -} - - // Spacing typedef Translator SpaceTranslator; @@ -863,7 +843,7 @@ string BufferParams::readToken(Lexer & lex, string const & token, } else if (token == "\\cite_engine_type") { string engine_type; lex >> engine_type; - cite_engine_type_ = citeenginetypetranslator().find(engine_type); + cite_engine_type_ = theCiteEnginesList.getType(engine_type); } else if (token == "\\biblio_style") { lex.eatLine(); biblio_style = lex.getString(); @@ -1234,7 +1214,7 @@ void BufferParams::writeFile(ostream & os, Buffer const * buf) const os << "basic"; } - os << "\n\\cite_engine_type " << citeenginetypetranslator().find(cite_engine_type_) + os << "\n\\cite_engine_type " << theCiteEnginesList.getTypeAsS
[LyX/master] Properly support the cite engines in the GUI
commit 59a4f263a44ca3a1f5a37a652c8df154788f72d1 Author: Juergen Spitzmueller Date: Sat Dec 31 09:28:51 2016 +0100 Properly support the cite engines in the GUI Instead of hardcoding 3 engines, we now support all engines which are defined in the *.citeengines files. --- lib/citeengines/basic.citeengine |5 +- lib/citeengines/jurabib.citeengine |8 +- lib/citeengines/natbib.citeengine | 10 +- src/BufferParams.cpp | 26 + src/CiteEnginesList.cpp| 46 src/CiteEnginesList.h | 18 +++- src/frontends/qt4/GuiDocument.cpp | 136 + src/frontends/qt4/GuiDocument.h|3 + src/frontends/qt4/ui/BiblioUi.ui | 203 ++-- 9 files changed, 251 insertions(+), 204 deletions(-) diff --git a/lib/citeengines/basic.citeengine b/lib/citeengines/basic.citeengine index dc4941b..7de5e35 100644 --- a/lib/citeengines/basic.citeengine +++ b/lib/citeengines/basic.citeengine @@ -1,6 +1,7 @@ -# \DeclareLyXCiteEngine{BibTeX (basic)} +# \DeclareLyXCiteEngine{Basic (BibTeX)} # DescriptionBegin -# Use the basic citation capabilities provided by plain LaTeX. +# The basic citation capabilities provided by BibTeX. +# Mainly simple numeric styles primarily suitable for science and maths. # DescriptionEnd # Excludes: jurabib | natbib diff --git a/lib/citeengines/jurabib.citeengine b/lib/citeengines/jurabib.citeengine index 13bbc6f..de292bb 100644 --- a/lib/citeengines/jurabib.citeengine +++ b/lib/citeengines/jurabib.citeengine @@ -1,8 +1,8 @@ -# \DeclareLyXCiteEngine[jurabib.sty]{Jurabib} +# \DeclareLyXCiteEngine[jurabib.sty]{Jurabib (BibTeX)} # DescriptionBegin -# Loads the LaTeX package jurabib, a citation engine. Jurabib supports annotations, -# author-year style citations and hyphenation patterns for bibliography entries in -# English, German, French, Dutch, Spanish and Italian. +# Jurabib supports a range of author-year styles primarily suitable for law studies +# and the Humanities. It includes localizations for English, German, French, Dutch, +# Spanish and Italian. # DescriptionEnd # Excludes: basic | natbib diff --git a/lib/citeengines/natbib.citeengine b/lib/citeengines/natbib.citeengine index 63bf1cb..dcd160f 100644 --- a/lib/citeengines/natbib.citeengine +++ b/lib/citeengines/natbib.citeengine @@ -1,9 +1,9 @@ -# \DeclareLyXCiteEngine[natbib.sty]{Natbib} +# \DeclareLyXCiteEngine[natbib.sty]{Natbib (BibTeX)} # DescriptionBegin -# Loads the LaTeX package natbib, a citation engine. Natbib supports -# both author-year and numerical styles for citations, automatic sorting -# and merging of numerical citations, annotations, capitalization of the -# `van' part of author names, shortened and full author lists, and more. +# Natbib supports a range of both author-year and numerical styles mainly +# aimed at the Humanities. It features automatic sorting and merging of +# numerical citations, annotations, capitalization of the `van' part of +# author names, shortened and full author lists, and more. # DescriptionEnd # Excludes: basic | jurabib diff --git a/src/BufferParams.cpp b/src/BufferParams.cpp index 326d487..1e7f772 100644 --- a/src/BufferParams.cpp +++ b/src/BufferParams.cpp @@ -23,6 +23,7 @@ #include "Buffer.h" #include "buffer_funcs.h" #include "Bullet.h" +#include "CiteEnginesList.h" #include "Color.h" #include "ColorSet.h" #include "Converter.h" @@ -272,27 +273,6 @@ PackageTranslator const & packagetranslator() } -// Cite engine -typedef Translator CiteEngineTypeTranslator; - - -CiteEngineTypeTranslator const init_citeenginetypetranslator() -{ - CiteEngineTypeTranslator translator("authoryear", ENGINE_TYPE_AUTHORYEAR); - translator.addPair("numerical", ENGINE_TYPE_NUMERICAL); - translator.addPair("default", ENGINE_TYPE_DEFAULT); - return translator; -} - - -CiteEngineTypeTranslator const & citeenginetypetranslator() -{ - static CiteEngineTypeTranslator const translator = - init_citeenginetypetranslator(); - return translator; -} - - // Spacing typedef Translator SpaceTranslator; @@ -863,7 +843,7 @@ string BufferParams::readToken(Lexer & lex, string const & token, } else if (token == "\\cite_engine_type") { string engine_type; lex >> engine_type; - cite_engine_type_ = citeenginetypetranslator().find(engine_type); + cite_engine_type_ = theCiteEnginesList.getType(engine_type); } else if (token == "\\biblio_style") { lex.eatLine(); biblio_style = lex.getString(); @@ -1234,7 +1214,7 @@ void BufferParams::writeFile(ostream & os, Buffer const * buf) const os << "basic"; } - os << "\n\\cite_engine_type " << citeenginetypetranslator().find(cite_engine_type_) + os << "\n\\cite_engine_type " << theCiteEnginesList.getTypeAsS