Some time ago I could encourage the person offering support for
Piedmontese via a separate LaTeX package to merge his package to a one
of the new babel system. Now there is the babel-piedmontese package at
CTAN and it is in TeXLive 2016.
So it is time to support the language also in LyX. The attached patch
does this.
regards Uwe
development/FORMAT | 4 ++++
lib/languages | 10 ++++++++++
lib/lyx2lyx/lyx_2_3.py | 23 ++++++++++++++++++++++-
src/tex2lyx/Preamble.cpp | 10 +++++-----
src/version.h | 4 ++--
5 files changed, 43 insertions(+), 8 deletions(-)
diff --git a/development/FORMAT b/development/FORMAT
index 902c145..3c9d4d1 100644
--- a/development/FORMAT
+++ b/development/FORMAT
@@ -11,6 +11,10 @@ adjustments are made to tex2lyx and bugs are fixed in
lyx2lyx.
-----------------------
+2016-10-16 Uwe Stöhr <uwesto...@web.de>
+ * Format incremented to 513: support for Piedmontese:
+ \lang piedmontese
+
2016-08-04 Jürgen Spitzmüller <sp...@lyx.org>
* Format incremented to 512
Added inclusion of styles from [scr]article to the [scr]article-beamer
diff --git a/lib/languages b/lib/languages
index d56d030..8f1f402 100644
--- a/lib/languages
+++ b/lib/languages
@@ -837,6 +837,16 @@ End
# LangCode ru_petr1708
# End
+Language piedmontese
+ GuiName "Piedmontese"
+ HasGuiSupport true
+ BabelName piedmontese
+ PolyglossiaName piedmontese
+ QuoteStyle french
+ Encoding iso8859-15
+ LangCode pms_IT
+End
+
Language polish
GuiName "Polish"
HasGuiSupport true
diff --git a/lib/lyx2lyx/lyx_2_3.py b/lib/lyx2lyx/lyx_2_3.py
index 001c1cb..0b4c293 100644
--- a/lib/lyx2lyx/lyx_2_3.py
+++ b/lib/lyx2lyx/lyx_2_3.py
@@ -261,6 +261,25 @@ def convert_beamer_article_styles(document):
return
+def revert_piedmontese(document):
+ "Set the document language to English but assure Piedmontese output"
+
+ if document.language == "piedmontese":
+ document.language = "english"
+ i = find_token(document.header, "\\language piedmontese", 0)
+ if i != -1:
+ document.header[i] = "\\language english"
+ j = find_token(document.header, "\\language_package default", 0)
+ if j != -1:
+ document.header[j] = "\\language_package babel"
+ k = find_token(document.header, "\\options", 0)
+ if k != -1:
+ document.header[k] = document.header[k].replace("\\options",
"\\options piedmontese,")
+ else:
+ l = find_token(document.header, "\\use_default_options", 0)
+ document.header.insert(l + 1, "\\options piedmontese")
+
+
##
# Conversion hub
#
@@ -270,10 +289,12 @@ convert = [
[509, [convert_microtype]],
[510, [convert_dateinset]],
[511, [convert_ibranches]],
- [512, [convert_beamer_article_styles]]
+ [512, [convert_beamer_article_styles]],
+ [513, []]
]
revert = [
+ [512, [revert_piedmontese]],
[511, [revert_beamer_article_styles]],
[510, [revert_ibranches]],
[509, []],
diff --git a/src/tex2lyx/Preamble.cpp b/src/tex2lyx/Preamble.cpp
index a52927f..b0f84bc 100644
--- a/src/tex2lyx/Preamble.cpp
+++ b/src/tex2lyx/Preamble.cpp
@@ -60,8 +60,8 @@ const char * const known_languages[] = {"acadian",
"afrikaans", "albanian",
"interlingua", "irish", "italian", "japanese", "kazakh", "kurmanji", "latin",
"latvian", "lithuanian", "lowersorbian", "lsorbian", "magyar", "malay",
"meyalu",
"mongolian", "naustrian", "newzealand", "ngerman", "ngermanb", "norsk",
"nswissgerman",
-"nynorsk", "polutonikogreek", "polish", "portuges", "portuguese", "romanian",
"russian",
-"russianb", "samin", "scottish", "serbian", "serbian-latin", "slovak",
+"nynorsk", "piedmontese", "polutonikogreek", "polish", "portuges",
"portuguese",
+"romanian", "russian", "russianb", "samin", "scottish", "serbian",
"serbian-latin", "slovak",
"slovene", "spanish", "swedish", "swissgerman", "thai", "turkish", "turkmen",
"ukraineb", "ukrainian", "uppersorbian", "UKenglish", "USenglish", "usorbian",
"vietnam", "welsh",
@@ -81,8 +81,8 @@ const char * const known_coded_languages[] = {"french",
"afrikaans", "albanian",
"interlingua", "irish", "italian", "japanese", "kazakh", "kurmanji", "latin",
"latvian", "lithuanian", "lowersorbian", "lowersorbian", "magyar", "bahasam",
"bahasam",
"mongolian", "naustrian", "newzealand", "ngerman", "ngerman", "norsk",
"german-ch",
-"nynorsk", "polutonikogreek", "polish", "portuguese", "portuguese",
"romanian", "russian",
-"russian", "samin", "scottish", "serbian", "serbian-latin", "slovak",
+"nynorsk", "piedmontese", "polutonikogreek", "polish", "portuguese",
"portuguese",
+"romanian", "russian", "russian", "samin", "scottish", "serbian",
"serbian-latin", "slovak",
"slovene", "spanish", "swedish", "german-ch-old", "thai", "turkish", "turkmen",
"ukrainian", "ukrainian", "uppersorbian", "english", "english", "uppersorbian",
"vietnamese", "welsh",
@@ -100,7 +100,7 @@ const char * const known_english_quotes_languages[] =
{"american", "australian",
/// languages with french quotes (.lyx names)
const char * const known_french_quotes_languages[] = {"albanian",
"arabic_arabi", "arabic_arabtex", "basque", "canadien", "catalan", "french",
-"galician", "greek", "italian", "norsk", "nynorsk", "polutonikogreek",
+"galician", "greek", "italian", "norsk", "nynorsk", "piedmontese",
"polutonikogreek",
"russian", "spanish", "spanish-mexico", "turkish", "turkmen", "ukrainian",
"vietnamese", 0};
diff --git a/src/version.h b/src/version.h
index 561f3ec..0b18df3 100644
--- a/src/version.h
+++ b/src/version.h
@@ -32,8 +32,8 @@ extern char const * const lyx_version_info;
// Do not remove the comment below, so we get merge conflict in
// independent branches. Instead add your own.
-#define LYX_FORMAT_LYX 512 // spitz: beamer article extension
-#define LYX_FORMAT_TEX2LYX 512
+#define LYX_FORMAT_LYX 513 // uwestoehr: support for Piedmontese
+#define LYX_FORMAT_TEX2LYX 513
#if LYX_FORMAT_TEX2LYX != LYX_FORMAT_LYX
#ifndef _MSC_VER