From 225a37be39a1b8588850c46db6468adf05ba7cdc Mon Sep 17 00:00:00 2001 From: Juergen Spitzmueller Date: Mon, 20 Apr 2015 12:15:20 +0200 Subject: [PATCH] Support item argument in linguistic examples File format change. --- development/FORMAT | 23 +++- lib/examples/de/linguistics.lyx | 232 +++++++++++++++++++++----------- lib/examples/linguistics.lyx | 191 +++++++++++++++++--------- lib/layouts/linguistics.module | 7 +- lib/lyx2lyx/LyX.py | 2 +- lib/lyx2lyx/lyx_2_2.py | 43 +++++- src/version.h | 4 +- 7 files changed, 348 insertions(+), 154 deletions(-) diff --git a/development/FORMAT b/development/FORMAT index ffd2b07069..fd3be4cf0f 100644 --- a/development/FORMAT +++ b/development/FORMAT @@ -11,12 +11,29 @@ adjustments are made to tex2lyx and bugs are fixed in lyx2lyx. ----------------------- +2015-04-20 Jürgen Spitzmüller + * Format incremented to 486: Support item arguments in the + "Numbered Examples (consecutive)" and "Subexample" layouts of + the linguistics module: + \item[foo] bar ==> \begin_layout {Subexample|Numbered Examples (consecutive)} + \begin_inset Argument item:1 + status open + + \begin_layout Plain Layout + foo + \end_layout + + \end_inset + + bar + \end_layout + 2015-04-09 Jürgen Spitzmüller - * Format incremented to 485: new par layout for sigplanconf.layout: + * Format incremented to 485: new par layout for sigplanconf.layout: DOI. -2015-04-06 Uwe Stöhr - * Format incremented to 484: support for Georgian: +2015-04-06 Uwe Stöhr + * Format incremented to 484: support for Georgian: \lang georgian 2015-03-23 Georg Baum diff --git a/lib/examples/de/linguistics.lyx b/lib/examples/de/linguistics.lyx index 3bc311794f..57ecd63cba 100644 --- a/lib/examples/de/linguistics.lyx +++ b/lib/examples/de/linguistics.lyx @@ -1,5 +1,5 @@ -#LyX 2.1 created this file. For more info see http://www.lyx.org/ -\lyxformat 474 +#LyX 2.2 created this file. For more info see http://www.lyx.org/ +\lyxformat 486 \begin_document \begin_header \textclass article @@ -87,7 +87,8 @@ linguistics \begin_body \begin_layout Title -Linguistische Arbeiten mit LyX +Linguistische Arbeiten mit \SpecialChar LyX + \end_layout \begin_layout Author @@ -107,11 +108,12 @@ type "mailto:" \end_layout \begin_layout Date -18.02.2013 +20.04.2015 \end_layout \begin_layout Abstract -In diesem Text werden einige Funktionen von LyX vorgestellt, die spezifisch +In diesem Text werden einige Funktionen von \SpecialChar LyX + vorgestellt, die spezifisch auf die Bedürfnisse von Linguistinnen und Linguisten ausgerichtet sind. Es wird gezeigt, wie nummerierte Beispiele, Glossen, OT-Tableaux, semantische Auszeichnung und phonetische Notation (IPA) erzeugt werden können. @@ -130,7 +132,8 @@ Linguistik \begin_inset Quotes grd \end_inset --Modul bereitgestellt, das seit Version 1.6.0 mit LyX mitgeliefert wird. +-Modul bereitgestellt, das seit Version 1.6.0 mit \SpecialChar LyX + mitgeliefert wird. \begin_inset Quotes gld \end_inset @@ -139,14 +142,15 @@ Module \begin_inset Quotes grd \end_inset - -- das Konzept wurde ebenfalls mit LyX 1.6.0 eingeführt -- sind Ergänzungsdateien -, welche die von der Dokumentklasse bereitgestellten Möglichkeiten zumeist + – das Konzept wurde ebenfalls mit \SpecialChar LyX + 1.6.0 eingeführt – sind Ergänzungsdateien, + welche die von der Dokumentklasse bereitgestellten Möglichkeiten zumeist für sehr spezifische Aufgaben erweitern und die für jedes Dokument (egal welcher Klasse) einfach ausgewählt werden können. Um das Linguistik-Modul zu verwenden, gehen sie zu \family sans -Dokument\SpecialChar \menuseparator -Einstellungen\SpecialChar \menuseparator +Dokument\SpecialChar menuseparator +Einstellungen\SpecialChar menuseparator Module \family default , wählen Sie @@ -168,10 +172,12 @@ inzufügen \end_layout \begin_layout Standard -Grundsätzlich sollte das Modul in jeder von LyX unterstützten Dokumentklasse +Grundsätzlich sollte das Modul in jeder von \SpecialChar LyX + unterstützten Dokumentklasse funktionieren (falls nicht, informieren Sie bitte den Autor dieses Textes). Allerdings müssen Sie, um alle Features nutzen zu können, die folgenden - LaTeX-Pakete installiert haben: + \SpecialChar LaTeX +-Pakete installiert haben: \end_layout \begin_layout Enumerate @@ -187,6 +193,10 @@ key "covington" \end_inset : Dieses Paket wird benötigt, um nummerierte Beispiele und Glossen zu erzeugen. +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper @@ -220,6 +230,10 @@ convington selbst nicht unterstützt). Das Paket ist darüber hinaus aber auch generell nützlich, um das Aussehen von Listen (Aufzählungen, Auflistungen, Beschreibungen) anzupassen. +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper @@ -253,6 +267,10 @@ Bedeutung . Das Paket erlaubt es, kontextsensible Anführungszeichen zu generieren (bspw. je nach aktuell verwendeter Sprache). +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper @@ -280,7 +298,12 @@ key "float" \end_inset : Dieses Paket brauchen wir für die OT-Tableaux und das Tableaux-Verzeichnis. - Es sollte Bestandteil jeder LaTeX-Distribution sein. + Es sollte Bestandteil jeder \SpecialChar LaTeX +-Distribution sein. +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper @@ -360,8 +383,8 @@ Querverweise auf Beispiele erzeugen Sie wie gewohnt: Sie fügen im Beispiel eine Marke ein, und an der Stelle, an der der Querverweis erscheinen soll, einen Verweis mittels \family sans -Einfügen\SpecialChar \menuseparator -Querverweis\SpecialChar \ldots{} +Einfügen\SpecialChar menuseparator +Querverweis\SpecialChar ldots \family default @@ -385,6 +408,16 @@ reference "sub:Unterbeispiel" . \end_layout +\begin_layout Standard +Wenn Sie die Nummerierung für einzelne Beispiele ändern möchten, verwenden + Sie +\family sans +Einfügen\SpecialChar menuseparator +Benutzerdefinierte Nummerierung +\family default +. +\end_layout + \begin_layout Section Glossen \end_layout @@ -393,12 +426,12 @@ Glossen Das Linguistikmodul stellt zwei Arten von Glossen zur Verfügung. Beide sind über \family sans -Einfügen\SpecialChar \menuseparator +Einfügen\SpecialChar menuseparator Benutzerdefinierte Einfügungen \begin_inset space ~ \end_inset -\SpecialChar \ldots{} +\SpecialChar ldots \family default zugänglich. @@ -423,7 +456,8 @@ Tri-Glosse \backslash glt \family default - eingeleitet werden, der direkt (also nicht im TeX-Modus) eingegeben werden + eingeleitet werden, der direkt (also nicht im \SpecialChar TeX +-Modus) eingegeben werden muss. \end_layout @@ -539,12 +573,15 @@ glt Do you have matches? \end_layout \begin_layout Subsection* -Beschränkungen von LyX-Glossen +Beschränkungen von \SpecialChar LyX +-Glossen \end_layout \begin_layout Standard -Die Unterstützung von Glossen in LyX steckt noch in den Kinderschuhen. - Es gibt einige Beschränkungen, die in zukünftigen LyX-Versionen möglicherweise +Die Unterstützung von Glossen in \SpecialChar LyX + steckt noch in den Kinderschuhen. + Es gibt einige Beschränkungen, die in zukünftigen \SpecialChar LyX +-Versionen möglicherweise behoben werden: \end_layout @@ -552,14 +589,16 @@ Die Unterstützung von Glossen in LyX steckt noch in den Kinderschuhen. Schriftänderungen sind in den Glossen nicht möglich. Der Textstil-Dialog ist daher auch deaktiviert. Da Wörter in Glossen niemals getrennt werden, ist eine explizite Bestimmung - der Sprache in der LaTeX-Ausgabe nicht nötig (und sie würde auch zu Fehlern + der Sprache in der \SpecialChar LaTeX +-Ausgabe nicht nötig (und sie würde auch zu Fehlern führen, da das \emph on covington \emph default -Paket dies nicht unterstützt). Dennoch wollen Sie vielleicht die Sprache in den Glossen festlegen, damit - die Rechtschreibprüfung in LyX richtig funktioniert. + die Rechtschreibprüfung in \SpecialChar LyX + richtig funktioniert. Um das zu tun, müssen Sie folgendermaßen vorgehen: Markieren Sie den Text und führen Sie dann \family sans @@ -610,34 +649,42 @@ english french \family default . - In der LaTeX-Ausgabe werden die Sprachumschaltungen nun zwar weiterhin - unterdrückt, aber die Rechtschreibprüfung erkennt die Sprache. + In der \SpecialChar LaTeX +-Ausgabe werden die Sprachumschaltungen nun zwar weiterhin unterdrückt, + aber die Rechtschreibprüfung erkennt die Sprache. \end_layout \begin_layout Enumerate -Da der Inhalt von Glossen unverändert an LaTeX weitergegeben wird, passt - LyX die Textkodierung nicht an den Inhalt an. +Da der Inhalt von Glossen unverändert an \SpecialChar LaTeX + weitergegeben wird, passt \SpecialChar LyX + die + Textkodierung nicht an den Inhalt an. Das heißt, dass Sie, wenn Sie in der Glosse Zeichen verwenden, die die aktuelle Kodierung nicht abdeckt, eine Fehlermeldung bekommen werden. Folgendermaßen können Sie das Problem umgehen: +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper \begin_layout Itemize Geben Sie entweder den Text außerhalb der Glosse ein, öffnen Sie dann \family sans -Ansicht\SpecialChar \menuseparator +Ansicht\SpecialChar menuseparator Quelle ansehen \family default - und kopieren Sie den LaTeX-Code von dort in die Glosse, + und kopieren Sie den \SpecialChar LaTeX +-Code von dort in die Glosse, \end_layout \begin_layout Itemize oder markieren Sie die ganze Glosse (von außen) und stellen Sie über \family sans -Bearbeiten\SpecialChar \menuseparator -Sprache\SpecialChar \menuseparator -Weitere Sprachen\SpecialChar \ldots{} +Bearbeiten\SpecialChar menuseparator +Sprache\SpecialChar menuseparator +Weitere Sprachen\SpecialChar ldots \family default die angemessene Sprache ein, @@ -646,9 +693,9 @@ die angemessene Sprache ein, \begin_layout Itemize oder ändern Sie in \family sans -Dokument\SpecialChar \menuseparator -Einstellungen\SpecialChar \ldots{} -\SpecialChar \menuseparator +Dokument\SpecialChar menuseparator +Einstellungen\SpecialChar ldots +\SpecialChar menuseparator Sprache \family default die Kodierung auf @@ -661,14 +708,17 @@ Unicode (utf8 \begin_layout Itemize oder wählen Sie in \family sans -Dokument\SpecialChar \menuseparator -Einstellungen\SpecialChar \ldots{} -\SpecialChar \menuseparator +Dokument\SpecialChar menuseparator +Einstellungen\SpecialChar ldots +\SpecialChar menuseparator Schriften \family default \emph on -Nicht-TeX-Schriften verwenden (via XeTeX/LuaTeX) +Nicht-\SpecialChar TeX +-Schriften verwenden (via Xe\SpecialChar TeX +/Lua\SpecialChar TeX +) \emph default . \end_layout @@ -679,20 +729,26 @@ Innerhalb von Glossen können Seiten umbrochen werden, was natürlich nicht erwünscht ist. Um dies zu umgehen, können Sie Glossen in Boxen packen (über \family sans -Einfügen\SpecialChar \menuseparator -Box\SpecialChar \menuseparator +Einfügen\SpecialChar menuseparator +Box\SpecialChar menuseparator Rahmenlos \family default ). Wenn Sie dies automatisch für alle Glossen im Dokument tun wollen, können - Sie den folgenden LaTeX-Code nach + Sie den folgenden \SpecialChar LaTeX +-Code nach \family sans -Dokument\SpecialChar \menuseparator -Einstellungen\SpecialChar \ldots{} -\SpecialChar \menuseparator -LaTeX-Vorspann +Dokument\SpecialChar menuseparator +Einstellungen\SpecialChar ldots +\SpecialChar menuseparator +\SpecialChar LaTeX +-Vorspann \family default kopieren: +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper @@ -840,7 +896,7 @@ Die OT-Tableaux selbst können natürlich einfach als normale Tabellen eingegebe werden (Spezifika wie gestrichelte Tabellenlinien und schattierte Tabellenzelle n, die man hierfür manchmal braucht, sind in \family sans -Hilfe\SpecialChar \menuseparator +Hilfe\SpecialChar menuseparator Eingebettete Objekt \family default e beschrieben). @@ -850,11 +906,12 @@ e beschrieben). \begin_layout Standard Wenn Sie allerdings Ihre Tableaux durch das Dokument hindurch nummerieren und ein eigenes Tableaux-Verzeichnis einrichten möchten, reichen die Bordmittel - von LyX nicht aus. + von \SpecialChar LyX + nicht aus. Auch hier hilft das Linguistikmodul. Wenn es ausgewählt ist, finden Sie unter \family sans -Einfügen\SpecialChar \menuseparator +Einfügen\SpecialChar menuseparator Gleitobjekte \family default zusätzlich ein Tableau-Gleitobjekt (siehe Tableau @@ -882,7 +939,7 @@ status open \align center \begin_inset Tabular - + @@ -1174,13 +1231,13 @@ name "tab:Beispiel-Tableau" \begin_layout Standard Bitte beachten Sie, dass die Legende in der Standardeinstellung immer unter - dem Tableau ausgegeben wird, egal, wohin Sie sie im LyX-Arbeitsfenster - setzen. + dem Tableau ausgegeben wird, egal, wohin Sie sie im \SpecialChar LyX +-Arbeitsfenster setzen. Um die Legende über die Tableaux zu setzen, müssen Sie den folgenden Code in \family sans -Dokument\SpecialChar \menuseparator -Einstellungen\SpecialChar \menuseparator +Dokument\SpecialChar menuseparator +Einstellungen\SpecialChar menuseparator Präambel \family default eingeben: @@ -1219,8 +1276,8 @@ restylefloat{tableau} Ein Verzeichnis der Tableaux geben Sie, wie bei normalen Tabellen auch, über \family sans -Einfügen\SpecialChar \menuseparator -Liste\SpecialChar \slash{} +Einfügen\SpecialChar menuseparator +Liste\SpecialChar breakableslash Inhaltsverzeichnis \family default ein. @@ -1291,7 +1348,7 @@ Bedeutung \begin_layout Standard Diese Textstile finden Sie unter \family sans -Bearbeiten\SpecialChar \menuseparator +Bearbeiten\SpecialChar menuseparator Textstil \family default . @@ -1301,8 +1358,8 @@ Textstil Wenn Sie (oder Ihr Verlag) also etwa Ausdrücke doch fett gesetzt haben wollen, geben Sie einfach den folgenden Code in \family sans -Dokument\SpecialChar \menuseparator -Einstellungen\SpecialChar \menuseparator +Dokument\SpecialChar menuseparator +Einstellungen\SpecialChar menuseparator Präambel \family default ein: @@ -1348,14 +1405,18 @@ Phonetische Notation (IPA) \begin_layout Standard Um phonetische Zeichen einzugeben, brauchen Sie das Linguistikmodul nicht. - IPA-Unterstützung ist mittlerweile eine Grundfunktion von LyX. + IPA-Unterstützung ist mittlerweile eine Grundfunktion von \SpecialChar LyX +. Da IPA aber von Linguistinnen und Linguisten sehr häufig gebraucht wird, wird die Verwendung der IPA-Funktion hier trotzdem (kurz) beschrieben. \end_layout \begin_layout Standard -Um LyX' IPA-Funktion mit klassischem LaTeX oder PDFLaTeX zu benutzen, müssen - Sie das Paket +Um \SpecialChar LyX +' IPA-Funktion mit klassischem \SpecialChar LaTeX + oder PDF\SpecialChar LaTeX + zu benutzen, müssen Sie das + Paket \emph on tipa \emph default @@ -1371,18 +1432,21 @@ key "tipa" status collapsed \begin_layout Plain Layout -Wenn Sie XeTeX oder LuaTeX verwenden (und +Wenn Sie Xe\SpecialChar TeX + oder Lua\SpecialChar TeX + verwenden (und \begin_inset Quotes gld \end_inset -Nicht-TeX-Schriften verwenden +Nicht-\SpecialChar TeX +-Schriften verwenden \begin_inset Quotes grd \end_inset in \family sans -Dokument\SpecialChar \menuseparator -Einstellungen\SpecialChar \menuseparator +Dokument\SpecialChar menuseparator +Einstellungen\SpecialChar menuseparator Schriften \family default aktiviert haben), brauchen Sie kein zusätzliches Paket. @@ -1409,8 +1473,8 @@ key "preview" Phonetische Zeichen werden in eine spezielle Umgebung eingegeben, die Sie über \family sans -Einfügen\SpecialChar \menuseparator -Sonderzeichen\SpecialChar \menuseparator +Einfügen\SpecialChar menuseparator +Sonderzeichen\SpecialChar menuseparator Phonetische Symbole \family default aktivieren. @@ -1489,9 +1553,9 @@ nach \emph default installiert ist und Sie außerdem in \family sans - Werkzeuge\SpecialChar \menuseparator -Einstellungen\SpecialChar \ldots{} -\SpecialChar \menuseparator + Werkzeuge\SpecialChar menuseparator +Einstellungen\SpecialChar ldots +\SpecialChar menuseparator Grafik \family default @@ -1502,8 +1566,9 @@ Sofortige Vorschau \begin_inset Quotes grd \end_inset - aktiviert haben, zeigt LyX eine WYSIWYG-Vorschau der Notation an, sobald - der Cursor den IPA-Bereich verlässt. + aktiviert haben, zeigt \SpecialChar LyX + eine WYSIWYG-Vorschau der Notation an, sobald der + Cursor den IPA-Bereich verlässt. Alternativ zur Symbolleiste können Sie die Zeichen auch direkt mithilfe der Kurznotation eingeben können, die im \emph on @@ -1529,9 +1594,9 @@ tipa ]). Alternativ können Sie die meisten IPA-Zeichen auch über \family sans -Einfügen\SpecialChar \menuseparator -Sonderzeichen\SpecialChar \menuseparator -Symbole\SpecialChar \ldots{} +Einfügen\SpecialChar menuseparator +Sonderzeichen\SpecialChar menuseparator +Symbole\SpecialChar ldots \family default in das Eingabefeld eingeben oder sie aus einem anderen Dokument kopieren @@ -1568,12 +1633,14 @@ Weitere Informationen \begin_layout Standard Mehr und ausführlichere Informationen über die Möglichkeiten des Einsatzes - von LyX für linguistische Zwecke finden Sie auf der (englischsprachigen) - + von \SpecialChar LyX + für linguistische Zwecke finden Sie auf der (englischsprachigen) \emph on -LinguistLyX +Linguist\SpecialChar LyX + \emph default --Seite auf dem LyX-Wiki +-Seite auf dem \SpecialChar LyX +-Wiki \begin_inset CommandInset citation LatexCommand cite key "linguistlyx" @@ -1675,8 +1742,9 @@ key "linguistlyx" \end_inset -Maria Gouskova, Stacia Hartleben und Jürgen Spitzmüller: Using LyX for Linguisti -c Papers. +Maria Gouskova, Stacia Hartleben und Jürgen Spitzmüller: Using \SpecialChar LyX + for Linguistic + Papers. \begin_inset Flex URL status collapsed diff --git a/lib/examples/linguistics.lyx b/lib/examples/linguistics.lyx index 322522381b..5536e2bfb4 100644 --- a/lib/examples/linguistics.lyx +++ b/lib/examples/linguistics.lyx @@ -1,5 +1,5 @@ -#LyX 2.1 created this file. For more info see http://www.lyx.org/ -\lyxformat 474 +#LyX 2.2 created this file. For more info see http://www.lyx.org/ +\lyxformat 486 \begin_document \begin_header \textclass article @@ -87,7 +87,8 @@ linguistics \begin_body \begin_layout Title -Writing linguistic papers with LyX +Writing linguistic papers with \SpecialChar LyX + \end_layout \begin_layout Author @@ -107,11 +108,12 @@ type "mailto:" \end_layout \begin_layout Date -18/02/2013 +20/04/2015 \end_layout \begin_layout Abstract -This paper describes some features that LyX provides to linguists. +This paper describes some features that \SpecialChar LyX + provides to linguists. It demonstrates how to use some native support in order to produce numbered examples, glosses, OT tableaux, semantic markup, and phonetic symbols (IPA). \end_layout @@ -129,7 +131,8 @@ Linguistics \begin_inset Quotes erd \end_inset - module that ships with LyX as of version 1.6.0. + module that ships with \SpecialChar LyX + as of version 1.6.0. \begin_inset Quotes eld \end_inset @@ -138,12 +141,13 @@ Modules \begin_inset Quotes erd \end_inset - are support files (introduced with LyX 1.6.0) that can easily be selected - for any document. + are support files (introduced with \SpecialChar LyX + 1.6.0) that can easily be selected for + any document. In order to use the Linguistics module, go to \family sans -Document\SpecialChar \menuseparator -Settings\SpecialChar \menuseparator +Document\SpecialChar menuseparator +Settings\SpecialChar menuseparator Modules \family default , select @@ -165,7 +169,8 @@ Add You should be able to use the module with any document class (please inform me, if not). However, in order to use all the features, you need to have the following - LaTeX packages installed: + \SpecialChar LaTeX + packages installed: \end_layout \begin_layout Enumerate @@ -181,6 +186,10 @@ key "covington" \end_inset : This is the base package used for numbered examples and glosses. +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper @@ -221,6 +230,10 @@ itemize description \emph default ). +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper @@ -254,6 +267,10 @@ Meaning character style. The package provides context sensitive quotation marks, depending on the language in use. +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper @@ -281,7 +298,12 @@ key "float" \end_inset : Needed for the OT tableaux floats and list of floats. - This package should be part of any LaTeX distribution. + This package should be part of any \SpecialChar LaTeX + distribution. +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper @@ -359,7 +381,7 @@ And another one References to examples are produced as usual: insert a label to the example and a cross-reference via \family sans -Insert\SpecialChar \menuseparator +Insert\SpecialChar menuseparator Cross references \family default . @@ -380,6 +402,16 @@ reference "sub:subexample" . \end_layout +\begin_layout Standard +If you want to modify the numbering of an individual example, you can use + +\family sans +Insert\SpecialChar menuseparator +Custom Numbering +\family default +. +\end_layout + \begin_layout Section Glosses \end_layout @@ -388,7 +420,7 @@ Glosses The Linguistics module provides two kinds of glosses, which can be inserted via \family sans -Insert\SpecialChar \menuseparator +Insert\SpecialChar menuseparator Custom Insets \family default : The standard @@ -412,7 +444,8 @@ e., the paragraphs are automatically broken if they exceed the text width. \backslash glt \family default - which must be inserted verbatim in the gloss inset (TeX mode is not needed, + which must be inserted verbatim in the gloss inset (\SpecialChar TeX + mode is not needed, and in fact not even possible). \end_layout @@ -524,11 +557,13 @@ glt Do you have matches? \end_layout \begin_layout Subsection* -Shortcomings of LyX's glosses +Shortcomings of \SpecialChar LyX +'s glosses \end_layout \begin_layout Standard -LyX's glosse support is rather basic, and thus has some shortcomings, which +\SpecialChar LyX +'s glosse support is rather basic, and thus has some shortcomings, which might be addressed in further releases: \end_layout @@ -539,7 +574,8 @@ Font changes are not allowed in glosses. Character Style \family default dialog is disabled. - Since glosses are not hyphenated, an explicit language setting in the LaTeX + Since glosses are not hyphenated, an explicit language setting in the \SpecialChar LaTeX + output is not required (in fact, it would break the output, since covington does not support it). However, you still might want to set the language for proper spell checking. @@ -576,34 +612,42 @@ french ngerman \family default . - In the LaTeX output, this setting will be suppressed. + In the \SpecialChar LaTeX + output, this setting will be suppressed. \end_layout \begin_layout Enumerate -Since the content of glosses is passed verbatim to LaTeX, LyX does not adapt - the encoding to the contents. +Since the content of glosses is passed verbatim to \SpecialChar LaTeX +, \SpecialChar LyX + does not adapt the + encoding to the contents. That means that if you use characters in the glosse which are not covered by the current encoding, you will run into an error message. Here are the possible workarounds to this problem: +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper \begin_layout Itemize Either enter the text outside the glosse, open \family sans -View\SpecialChar \menuseparator +View\SpecialChar menuseparator View Source \family default - and copy the LaTeX code into the glosse, + and copy the \SpecialChar LaTeX + code into the glosse, \end_layout \begin_layout Itemize or mark the whole glosse (from outside) and set the appropriate language via \family sans -Edit\SpecialChar \menuseparator -Language\SpecialChar \menuseparator -More Languages\SpecialChar \ldots{} +Edit\SpecialChar menuseparator +Language\SpecialChar menuseparator +More Languages\SpecialChar ldots \family default , @@ -616,9 +660,9 @@ Unicode (utf8) \emph default via \family sans -Document\SpecialChar \menuseparator -Settings\SpecialChar \ldots{} -\SpecialChar \menuseparator +Document\SpecialChar menuseparator +Settings\SpecialChar ldots +\SpecialChar menuseparator Language \family default , @@ -627,13 +671,16 @@ Language \begin_layout Itemize or check \emph on -Use non-TeX fonts (via XeTeX/LuaTeX) +Use non-\SpecialChar TeX + fonts (via Xe\SpecialChar TeX +/Lua\SpecialChar TeX +) \emph default in \family sans -Document\SpecialChar \menuseparator -Settings\SpecialChar \ldots{} -\SpecialChar \menuseparator +Document\SpecialChar menuseparator +Settings\SpecialChar ldots +\SpecialChar menuseparator Fonts \family default . @@ -644,19 +691,24 @@ Fonts Page breaks can occur within glosses, which is of course not desirable. A workaround is to wrap glosses into boxes (via \family sans -Insert\SpecialChar \menuseparator -Box\SpecialChar \menuseparator +Insert\SpecialChar menuseparator +Box\SpecialChar menuseparator Frameless \family default ). If you want to automate this for all glosses, you can copy the following code to \family sans -Document\SpecialChar \menuseparator -Settings\SpecialChar \menuseparator -LaTeX Preamble +Document\SpecialChar menuseparator +Settings\SpecialChar menuseparator +\SpecialChar LaTeX + Preamble \family default : +\begin_inset Separator parbreak +\end_inset + + \end_layout \begin_deeper @@ -824,7 +876,7 @@ List of Tables The Linguistics module provides support for both. In \family sans -Insert\SpecialChar \menuseparator +Insert\SpecialChar menuseparator Floats \family default , you'll find a Tableaux float: @@ -841,7 +893,7 @@ status open \align center \begin_inset Tabular - + @@ -1126,11 +1178,12 @@ Example Tableau \begin_layout Standard Note that by default, the caption is always placed below the tableaux in - the output, no matter where you put it in the LyX window. + the output, no matter where you put it in the \SpecialChar LyX + window. To get the Tableaux captions on top, put the following code in \family sans -Document\SpecialChar \menuseparator -Settings\SpecialChar \menuseparator +Document\SpecialChar menuseparator +Settings\SpecialChar menuseparator Preamble \family default : @@ -1167,7 +1220,7 @@ restylefloat{tableau} \begin_layout Standard A List of Tableaux inset can be found in \family sans -Insert\SpecialChar \menuseparator +Insert\SpecialChar menuseparator Lists & TOC \family default . @@ -1237,7 +1290,7 @@ meaning \begin_layout Standard You can insert the character styles via the \family sans -Edit\SpecialChar \menuseparator +Edit\SpecialChar menuseparator Text Style \family default submenu. @@ -1278,14 +1331,19 @@ Phonetic Symbols (IPA) \begin_layout Standard You do not need the Linguistics module to insert phonetic symbols, this - is a base functionality of LyX. + is a base functionality of \SpecialChar LyX +. However, since this is frequently used by linguists, we will describe it (briefly) in this manual nevertheless. \end_layout \begin_layout Standard -If you use traditional LaTeX or PDFLaTeX, a prerequisite to use LyX's IPA - support is the LaTeX package +If you use traditional \SpecialChar LaTeX + or PDF\SpecialChar LaTeX +, a prerequisite to use \SpecialChar LyX +'s IPA support is + the \SpecialChar LaTeX + package \emph on tipa \emph default @@ -1301,7 +1359,9 @@ key "tipa" status collapsed \begin_layout Plain Layout -If you use XeTeX or LuaTeX (i. +If you use Xe\SpecialChar TeX + or Lua\SpecialChar TeX + (i. \begin_inset space \thinspace{} \end_inset @@ -1309,14 +1369,15 @@ e., if you have clicked \begin_inset Quotes eld \end_inset -Use non-TeX fonts +Use non-\SpecialChar TeX + fonts \begin_inset Quotes erd \end_inset in \family sans -Document\SpecialChar \menuseparator -Settings\SpecialChar \menuseparator +Document\SpecialChar menuseparator +Settings\SpecialChar menuseparator Fonts \family default ), no extra package is needed. @@ -1342,8 +1403,8 @@ key "preview" \begin_layout Standard The recommended way to insert phonetic symbols is via \family sans -Insert\SpecialChar \menuseparator -Special characters\SpecialChar \menuseparator +Insert\SpecialChar menuseparator +Special characters\SpecialChar menuseparator Phonetic symbols. \family default @@ -1355,7 +1416,8 @@ inset \begin_inset Quotes erd \end_inset - in LyX speak), where you can insert the symbols. + in \SpecialChar LyX + speak), where you can insert the symbols. Note that this box can be used both for the insertion of small snippets (inline) and multiple paragraphs of phonetic notation. While the cursor is inside the box, a toolbar opens, which provides the @@ -1443,8 +1505,8 @@ after \emph default is installed and you have switched on instant preview (in \family sans - Tools\SpecialChar \menuseparator -Preferences\SpecialChar \menuseparator + Tools\SpecialChar menuseparator +Preferences\SpecialChar menuseparator Graphi \family default cs), you'll get a nice WYSIWYG preview as soon as the cursor leaves the @@ -1486,9 +1548,9 @@ tipa ]). Furthermore, you can insert symbols via \family sans -Insert\SpecialChar \menuseparator -Special characters\SpecialChar \menuseparator -Symbols\SpecialChar \ldots{} +Insert\SpecialChar menuseparator +Special characters\SpecialChar menuseparator +Symbols\SpecialChar ldots \family default (which might be useful for symbols that are not yet covered by the toolbar), @@ -1524,7 +1586,9 @@ Further information \begin_layout Standard For a detailed description of specific possibilities for linguists, please - refer to the LinguistLyX page on the LyX wiki + refer to the Linguist\SpecialChar LyX + page on the \SpecialChar LyX + wiki \begin_inset CommandInset citation LatexCommand cite key "linguistlyx" @@ -1625,8 +1689,9 @@ key "linguistlyx" \end_inset -Maria Gouskova, Stacia Hartleben and Jürgen Spitzmüller: Using LyX for Linguisti -c Papers. +Maria Gouskova, Stacia Hartleben and Jürgen Spitzmüller: Using \SpecialChar LyX + for Linguistic + Papers. \begin_inset Flex URL status collapsed diff --git a/lib/layouts/linguistics.module b/lib/layouts/linguistics.module index c9bf72464a..1527f8f8eb 100644 --- a/lib/layouts/linguistics.module +++ b/lib/layouts/linguistics.module @@ -40,13 +40,16 @@ Style Numbered_Examples_(consecutive) LatexType Item_Environment LatexName examples LabelString "Examples:" + Argument item:1 + LabelString "Custom Numbering|s" + Tooltip "Customize the numeration" + EndArgument End # multiple numbered example with covington.sty Style Subexample - CopyStyle Numbered_Example_(multiline) - LatexType Item_Environment + CopyStyle Numbered_Examples_(consecutive) LatexName subexample LabelString "Subexample:" Requires covington,enumitem diff --git a/lib/lyx2lyx/LyX.py b/lib/lyx2lyx/LyX.py index 2ab78bb613..9df4b422a1 100644 --- a/lib/lyx2lyx/LyX.py +++ b/lib/lyx2lyx/LyX.py @@ -85,7 +85,7 @@ format_relation = [("0_06", [200], minor_versions("0.6" , 4)), ("1_6", list(range(277,346)), minor_versions("1.6" , 10)), ("2_0", list(range(346,414)), minor_versions("2.0" , 8)), ("2_1", list(range(414,475)), minor_versions("2.1" , 0)), - ("2_2", list(range(475,486)), minor_versions("2.2" , 0)) + ("2_2", list(range(475,487)), minor_versions("2.2" , 0)) ] #################################################################### diff --git a/lib/lyx2lyx/lyx_2_2.py b/lib/lyx2lyx/lyx_2_2.py index b9e230518d..95966197c1 100644 --- a/lib/lyx2lyx/lyx_2_2.py +++ b/lib/lyx2lyx/lyx_2_2.py @@ -729,6 +729,45 @@ def revert_sigplan_doi(document): # no need to reset i +def revert_ex_itemargs(document): + " Reverts \\item arguments of the example environments (Linguistics module) to TeX-code " + + # Do we use the linguistics module? + have_mod = False + mods = document.get_module_list() + for mod in mods: + if mod == "linguistics": + have_mod = True + continue + + if not have_mod: + return + + i = 0 + example_layouts = ["Numbered Examples (consecutive)", "Subexample"] + while True: + i = find_token(document.body, "\\begin_inset Argument item:", i) + if i == -1: + return + j = find_end_of_inset(document.body, i) + # Find containing paragraph layout + parent = get_containing_layout(document.body, i) + if parent == False: + document.warning("Malformed LyX document: Can't find parent paragraph layout") + i += 1 + continue + parbeg = parent[3] + layoutname = parent[0] + if layoutname in example_layouts: + beginPlain = find_token(document.body, "\\begin_layout Plain Layout", i) + endPlain = find_end_of_layout(document.body, beginPlain) + content = document.body[beginPlain + 1 : endPlain] + del document.body[i:j+1] + subst = put_cmd_in_ert("[") + content + put_cmd_in_ert("]") + document.body[parbeg : parbeg] = subst + i += 1 + + ## # Conversion hub # @@ -748,10 +787,12 @@ convert = [ [482, [convert_phrases]], [483, [convert_specialchar]], [484, []], - [485, []] + [485, []], + [486, []] ] revert = [ + [485, [revert_ex_itemargs]], [484, [revert_sigplan_doi]], [483, [revert_georgian]], [482, [revert_specialchar]], diff --git a/src/version.h b/src/version.h index d9409d3e0d..7109a1da61 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 485 // spitz: support DOI in sigplanconf -#define LYX_FORMAT_TEX2LYX 485 +#define LYX_FORMAT_LYX 486 // spitz: support item argument in linguistic examples +#define LYX_FORMAT_TEX2LYX 486 #if LYX_FORMAT_TEX2LYX != LYX_FORMAT_LYX #ifndef _MSC_VER -- 2.39.2