The branch, features/indexmacros, has been updated. - Log -----------------------------------------------------------------
commit f86c7994a5be562544ee80bf3b6e9607a7c5ebf3 Merge: 5a53872 8b48e42 Author: Juergen Spitzmueller <sp...@lyx.org> Date: Mon Apr 25 08:12:12 2022 +0200 Merge branch 'master' into features/indexmacros commit 8b48e429dec32d729a355bd6acf9e388c98a5e71 Author: Kornel Benko <kor...@lyx.org> Date: Sun Apr 24 17:38:33 2022 +0200 Update sk.po diff --git a/po/sk.po b/po/sk.po index 9f6c938..959591a 100644 --- a/po/sk.po +++ b/po/sk.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: LyX-2.4\n" "Report-Msgid-Bugs-To: lyx-de...@lists.lyx.org\n" -"POT-Creation-Date: 2022-04-19 16:14+0200\n" -"PO-Revision-Date: 2022-04-19 14:15+0000\n" +"POT-Creation-Date: 2022-04-24 17:25+0200\n" +"PO-Revision-Date: 2022-04-24 15:29+0000\n" "Last-Translator: Kornel Benko <kor...@lyx.org>\n" "Language-Team: Slovak <kor...@lyx.org>\n" "Language: sk\n" @@ -37073,6 +37073,10 @@ msgid "Output source file generation/processing" msgstr "Spúšťanie/generovanie výstupného súboru" #: src/support/debug.cpp:51 +msgid "Output source file generation/processing (alias to 'outfile')" +msgstr "Spúšťanie/generovanie výstupného súboru (iné meno pre 'outfile')" + +#: src/support/debug.cpp:51 msgid "Math editor" msgstr "Editor matematiky" @@ -37176,6 +37180,10 @@ msgstr "VÅ¡eobecné ladiace hlásenia pre vývojárov" msgid "All debugging messages" msgstr "VÅ¡etky ladiace hlásenia" +#: src/support/debug.cpp:78 +msgid "All debugging messages (alias to 'all')" +msgstr "VÅ¡etky ladiace hlásenia (iné meno pre 'all')" + #: src/support/debug.cpp:154 #, c-format msgid "Debugging `%1$s' (%2$s)" commit bcbf067cd4b4683ccb7e7ab8d3dcf97d8621aebb Author: jpc <j...@lyx.org> Date: Sun Apr 24 17:24:26 2022 +0200 Update fr.po diff --git a/po/fr.gmo b/po/fr.gmo index 930c04f..453e4bd 100644 Binary files a/po/fr.gmo and b/po/fr.gmo differ diff --git a/po/fr.po b/po/fr.po index 19c7d47..7e45a8f 100644 --- a/po/fr.po +++ b/po/fr.po @@ -362,8 +362,8 @@ msgid "" msgstr "" "Project-Id-Version: LyX 2.4\n" "Report-Msgid-Bugs-To: lyx-de...@lists.lyx.org\n" -"POT-Creation-Date: 2022-04-19 18:17+0200\n" -"PO-Revision-Date: 2022-04-19 18:20+0200\n" +"POT-Creation-Date: 2022-04-24 17:20+0200\n" +"PO-Revision-Date: 2022-04-24 17:23+0200\n" "Last-Translator: Jean-Pierre Chrétien <jeanpierre.chret...@free.fr>\n" "Language-Team: lyxfr\n" "Language: fr\n" @@ -32069,18 +32069,18 @@ msgstr "Suffixe du fichier" #: src/frontends/qt/GuiBranches.cpp:135 src/frontends/qt/GuiBranches.cpp:149 #: src/frontends/qt/GuiDocument.cpp:3339 src/frontends/qt/GuiDocument.cpp:4644 -#: src/frontends/qt/GuiProgressView.cpp:144 -#: src/frontends/qt/GuiProgressView.cpp:158 -#: src/frontends/qt/GuiProgressView.cpp:179 +#: src/frontends/qt/GuiProgressView.cpp:148 +#: src/frontends/qt/GuiProgressView.cpp:162 +#: src/frontends/qt/GuiProgressView.cpp:184 msgid "Yes" msgstr "Oui" #: src/frontends/qt/GuiBranches.cpp:135 src/frontends/qt/GuiBranches.cpp:149 #: src/frontends/qt/GuiDocument.cpp:3338 src/frontends/qt/GuiDocument.cpp:3972 #: src/frontends/qt/GuiDocument.cpp:4643 -#: src/frontends/qt/GuiProgressView.cpp:110 -#: src/frontends/qt/GuiProgressView.cpp:143 -#: src/frontends/qt/GuiProgressView.cpp:179 +#: src/frontends/qt/GuiProgressView.cpp:114 +#: src/frontends/qt/GuiProgressView.cpp:147 +#: src/frontends/qt/GuiProgressView.cpp:184 msgid "No" msgstr "Non" @@ -34212,11 +34212,11 @@ msgstr "<Tous les index>" msgid "Progress/Debug Messages" msgstr "Messages de progression ou d'analyse" -#: src/frontends/qt/GuiProgressView.cpp:101 +#: src/frontends/qt/GuiProgressView.cpp:105 msgid "Debug Level" msgstr "Niveau d'analyse" -#: src/frontends/qt/GuiProgressView.cpp:102 +#: src/frontends/qt/GuiProgressView.cpp:106 msgid "Set" msgstr "Fixer" @@ -37412,28 +37412,28 @@ msgstr "%1$d chaînes remplacées dans le sélection." msgid "%1$d strings have been replaced." msgstr "%1$d chaînes remplacées." -#: src/lyxfind.cpp:4680 +#: src/lyxfind.cpp:4679 msgid "One match has been replaced." msgstr "Une correspondance a été remplacée." -#: src/lyxfind.cpp:4683 +#: src/lyxfind.cpp:4682 msgid "Two matches have been replaced." msgstr "Deux correspondances ont été remplacées." -#: src/lyxfind.cpp:4686 +#: src/lyxfind.cpp:4685 #, c-format msgid "%1$d matches have been replaced." msgstr "%1$d correspondances ont été remplacées." -#: src/lyxfind.cpp:4692 +#: src/lyxfind.cpp:4691 msgid "Match not found." msgstr "Chaîne de caractères introuvable." -#: src/lyxfind.cpp:4698 +#: src/lyxfind.cpp:4697 msgid "Match has been replaced." msgstr "Chaîne de caractères remplacée." -#: src/lyxfind.cpp:4700 +#: src/lyxfind.cpp:4699 msgid "Match found." msgstr "Chaîne de caractères reconnue." @@ -37782,10 +37782,15 @@ msgstr "Lecture des fichiers de configuration" msgid "Custom keyboard definition" msgstr "Définition d'un clavier personnalisé" -#: src/support/debug.cpp:50 src/support/debug.cpp:51 +#: src/support/debug.cpp:50 msgid "Output source file generation/processing" msgstr "Génération/traitement du fichier source exporté." +#: src/support/debug.cpp:51 +msgid "Output source file generation/processing (alias to 'outfile')" +msgstr "" +"Génération/traitement du fichier source exporté (alias de « outfile »)." + #: src/support/debug.cpp:52 msgid "Math editor" msgstr "Ãditeur mathématique" @@ -37886,11 +37891,15 @@ msgstr "Rechercher et remplacer, version bavarde du moteur" msgid "Developers' general debug messages" msgstr "Messages de débogage généraux pour les développeurs" -#: src/support/debug.cpp:77 src/support/debug.cpp:78 +#: src/support/debug.cpp:77 msgid "All debugging messages" msgstr "Tous les messages de débogage" -#: src/support/debug.cpp:185 +#: src/support/debug.cpp:78 +msgid "All debugging messages (alias to 'all')" +msgstr "Tous les messages de débogage (alias de « all »)." + +#: src/support/debug.cpp:193 #, c-format msgid "Debugging `%1$s' (%2$s)" msgstr "Débogage de '%1$s' (%2$s)" commit 15607db33343d2f59da8c7b423df3137fa580e7a Author: Juergen Spitzmueller <sp...@lyx.org> Date: Sun Apr 24 17:05:31 2022 +0200 de.po diff --git a/po/de.gmo b/po/de.gmo index cd9723d..0173826 100644 Binary files a/po/de.gmo and b/po/de.gmo differ diff --git a/po/de.po b/po/de.po index 76e0a0b..517d75b 100644 --- a/po/de.po +++ b/po/de.po @@ -94,8 +94,8 @@ msgid "" msgstr "" "Project-Id-Version: LyX 2.4git\n" "Report-Msgid-Bugs-To: lyx-de...@lists.lyx.org\n" -"POT-Creation-Date: 2022-04-20 08:01+0200\n" -"PO-Revision-Date: 2022-04-20 08:03+0200\n" +"POT-Creation-Date: 2022-04-24 16:54+0200\n" +"PO-Revision-Date: 2022-04-24 17:05+0200\n" "Last-Translator: Jürgen Spitzmüller <sp...@lyx.org>\n" "Language-Team: Deutsch <lyx-d...@lists.lyx.org>\n" "Language: de\n" @@ -31806,18 +31806,18 @@ msgstr "Erweitere Dateinamen" #: src/frontends/qt/GuiBranches.cpp:135 src/frontends/qt/GuiBranches.cpp:149 #: src/frontends/qt/GuiDocument.cpp:3339 src/frontends/qt/GuiDocument.cpp:4644 -#: src/frontends/qt/GuiProgressView.cpp:144 -#: src/frontends/qt/GuiProgressView.cpp:158 -#: src/frontends/qt/GuiProgressView.cpp:179 +#: src/frontends/qt/GuiProgressView.cpp:148 +#: src/frontends/qt/GuiProgressView.cpp:162 +#: src/frontends/qt/GuiProgressView.cpp:184 msgid "Yes" msgstr "Ja" #: src/frontends/qt/GuiBranches.cpp:135 src/frontends/qt/GuiBranches.cpp:149 #: src/frontends/qt/GuiDocument.cpp:3338 src/frontends/qt/GuiDocument.cpp:3972 #: src/frontends/qt/GuiDocument.cpp:4643 -#: src/frontends/qt/GuiProgressView.cpp:110 -#: src/frontends/qt/GuiProgressView.cpp:143 -#: src/frontends/qt/GuiProgressView.cpp:179 +#: src/frontends/qt/GuiProgressView.cpp:114 +#: src/frontends/qt/GuiProgressView.cpp:147 +#: src/frontends/qt/GuiProgressView.cpp:184 msgid "No" msgstr "Nein" @@ -33955,11 +33955,11 @@ msgstr "<Alle Indexe>" msgid "Progress/Debug Messages" msgstr "Fortschritts-/Testmeldungen" -#: src/frontends/qt/GuiProgressView.cpp:101 +#: src/frontends/qt/GuiProgressView.cpp:105 msgid "Debug Level" msgstr "Testebene" -#: src/frontends/qt/GuiProgressView.cpp:102 +#: src/frontends/qt/GuiProgressView.cpp:106 msgid "Set" msgstr "Aktiv" @@ -37539,10 +37539,14 @@ msgstr "Lesen der Konfigurationsdateien" msgid "Custom keyboard definition" msgstr "Eigene Tastaturdefinition" -#: src/support/debug.cpp:50 src/support/debug.cpp:51 +#: src/support/debug.cpp:50 msgid "Output source file generation/processing" msgstr "Erzeugung/Verarbeitung der Ausgabequelldatei" +#: src/support/debug.cpp:51 +msgid "Output source file generation/processing (alias to 'outfile')" +msgstr "Erzeugung/Verarbeitung der Ausgabequelldatei (Alias für 'outfile')" + #: src/support/debug.cpp:52 msgid "Math editor" msgstr "Mathe-Editor" @@ -37643,11 +37647,15 @@ msgstr "Mechanismus für Suchen und Ersetzen (ausführlich)" msgid "Developers' general debug messages" msgstr "Allgemeine Testmeldungen der Entwickler" -#: src/support/debug.cpp:77 src/support/debug.cpp:78 +#: src/support/debug.cpp:77 msgid "All debugging messages" msgstr "Alle Testmeldungen" -#: src/support/debug.cpp:185 +#: src/support/debug.cpp:78 +msgid "All debugging messages (alias to 'all')" +msgstr "Alle Testmeldungen (alias für 'all')" + +#: src/support/debug.cpp:193 #, c-format msgid "Debugging `%1$s' (%2$s)" msgstr "Testen von ,%1$s` (%2$s)" commit e6a7137a539d8b79c892f9043dee618d6c202d89 Author: Juergen Spitzmueller <sp...@lyx.org> Date: Sun Apr 24 16:51:42 2022 +0200 Mark aliases in the description diff --git a/src/support/debug.cpp b/src/support/debug.cpp index 4b32191..29dd9f2 100644 --- a/src/support/debug.cpp +++ b/src/support/debug.cpp @@ -48,7 +48,7 @@ DebugErrorItem errorTags[] = { { Debug::LYXRC, "lyxrc", N_("Configuration files reading")}, { Debug::KBMAP, "kbmap", N_("Custom keyboard definition")}, { Debug::OUTFILE, "outfile", N_("Output source file generation/processing")}, - { Debug::OUTFILE, "latex", N_("Output source file generation/processing")}, + { Debug::OUTFILE, "latex", N_("Output source file generation/processing (alias to 'outfile')")}, { Debug::MATHED, "mathed", N_("Math editor")}, { Debug::FONT, "font", N_("Font handling")}, { Debug::TCLASS, "tclass", N_("Textclass files reading")}, @@ -75,7 +75,7 @@ DebugErrorItem errorTags[] = { { Debug::FINDVERBOSE,"findverbose", N_("Find and replace mechanism, verbose version")}, { Debug::DEBUG, "debug", N_("Developers' general debug messages")}, { Debug::ANY, "any", N_("All debugging messages")}, - { Debug::ANY, "all", N_("All debugging messages")} + { Debug::ANY, "all", N_("All debugging messages (alias to 'all')")} }; commit 64ec812da576af9e676bd37a5d6779fd1394aa63 Author: Juergen Spitzmueller <sp...@lyx.org> Date: Sun Apr 24 16:51:16 2022 +0200 Amend d8f540f51 Properly handle aliases diff --git a/src/frontends/qt/GuiProgressView.cpp b/src/frontends/qt/GuiProgressView.cpp index b2e6ccc..9dc9263 100644 --- a/src/frontends/qt/GuiProgressView.cpp +++ b/src/frontends/qt/GuiProgressView.cpp @@ -89,7 +89,7 @@ GuiProgressView::GuiProgressView(GuiView & parent, Qt::DockWidgetArea area, DebugVector dmap; for (int i = 0 ; i < level_count; i++) { Debug::Type const level = Debug::value(i); - string const dbgname = Debug::name(level); + string const dbgname = Debug::realName(i); // ignore these if (dbgname == "any" || dbgname == "all" || dbgname == "none" || dbgname == "latex") diff --git a/src/support/debug.cpp b/src/support/debug.cpp index fa40d59..4b32191 100644 --- a/src/support/debug.cpp +++ b/src/support/debug.cpp @@ -118,6 +118,14 @@ string const Debug::name(Debug::Type val) } +string const Debug::realName(int idx) +{ + if (idx < numErrorTags) + return errorTags[idx].name; + return "unknown index"; +} + + Debug::Type Debug::value(string const & val) { Type l = Debug::NONE; diff --git a/src/support/debug.h b/src/support/debug.h index 2306524..e284b94 100644 --- a/src/support/debug.h +++ b/src/support/debug.h @@ -130,9 +130,14 @@ namespace Debug { /// Return description of level std::string const description(Type val); - /// Return name of level + /// Return name of level from value. In case of aliases, + /// this returns the first entry found std::string const name(Type val); + /// Return name of level from index, in case of aliases + /// this is unambiguous + std::string const realName(int i); + /// Display the tags and descriptions of the current debug level void showLevel(std::ostream & os, Type level); commit d8f540f51ba4fbff7ea3251278b02adc4c529010 Author: Juergen Spitzmueller <sp...@lyx.org> Date: Sun Apr 24 14:21:56 2022 +0200 Properly ignore debug levels in the GUI Not only none and any, but also the aliases. diff --git a/src/frontends/qt/GuiProgressView.cpp b/src/frontends/qt/GuiProgressView.cpp index 0937c64..b2e6ccc 100644 --- a/src/frontends/qt/GuiProgressView.cpp +++ b/src/frontends/qt/GuiProgressView.cpp @@ -85,13 +85,17 @@ GuiProgressView::GuiProgressView(GuiView & parent, Qt::DockWidgetArea area, widget_->debugMessagesTW->setEnabled(false); widget_->debugNoneRB->setChecked(true); - // ignore Debug::NONE and Debug::ANY - int const level_count = Debug::levelCount() - 1; + int const level_count = Debug::levelCount(); DebugVector dmap; - for (int i = 1 ; i < level_count; i++) { + for (int i = 0 ; i < level_count; i++) { Debug::Type const level = Debug::value(i); + string const dbgname = Debug::name(level); + // ignore these + if (dbgname == "any" || dbgname == "all" + || dbgname == "none" || dbgname == "latex") + continue; QString const desc = - toqstr(from_ascii(Debug::name(level) + " - ")) + toqstr(from_ascii(dbgname + " - ")) + qt_(Debug::description(level)); dmap.push_back(DebugMap(level, desc)); } commit 98cc6acd0bb7643462367123d6fc31af81244d09 Author: Kornel Benko <kor...@lyx.org> Date: Sun Apr 24 13:52:46 2022 +0200 Amend 3b7a79f1: Use Debug::base_type instead of 'unsigned long long' where possible diff --git a/src/frontends/qt/GuiProgressView.cpp b/src/frontends/qt/GuiProgressView.cpp index c44704b..0937c64 100644 --- a/src/frontends/qt/GuiProgressView.cpp +++ b/src/frontends/qt/GuiProgressView.cpp @@ -51,7 +51,7 @@ GuiProgressView::~GuiProgressView() namespace{ -typedef pair<unsigned long long, QString> DebugMap; +typedef pair<Debug::base_type, QString> DebugMap; typedef vector<DebugMap> DebugVector; bool DebugSorter(DebugMap const & a, DebugMap const & b) @@ -152,7 +152,7 @@ void GuiProgressView::debugMessageActivated(QTreeWidgetItem * item, int) void GuiProgressView::levelChanged() { - unsigned long long level = Debug::NONE; + Debug::base_type level = Debug::NONE; QTreeWidgetItemIterator it(widget_->debugMessagesTW); while (*it) { if ((*it)->text(1) == qt_("Yes")) { commit 3b7a79f137a09a68f9d1febfaacf5bf3dc07fe2d Author: Kornel Benko <kor...@lyx.org> Date: Sun Apr 24 13:27:36 2022 +0200 FindAdv: Amend d09f5ce1: Added new debug level :findverbose Fix the GUI handling for the new value using now 'unsigned long long' instead of 'int' diff --git a/src/frontends/qt/GuiProgressView.cpp b/src/frontends/qt/GuiProgressView.cpp index 6c5f939..c44704b 100644 --- a/src/frontends/qt/GuiProgressView.cpp +++ b/src/frontends/qt/GuiProgressView.cpp @@ -51,7 +51,7 @@ GuiProgressView::~GuiProgressView() namespace{ -typedef pair<int, QString> DebugMap; +typedef pair<unsigned long long, QString> DebugMap; typedef vector<DebugMap> DebugVector; bool DebugSorter(DebugMap const & a, DebugMap const & b) @@ -106,7 +106,7 @@ GuiProgressView::GuiProgressView(GuiView & parent, Qt::DockWidgetArea area, for (; dit != den; ++dit) { QTreeWidgetItem * item = new QTreeWidgetItem(widget_->debugMessagesTW); item->setText(0, dit->second); - item->setData(0, Qt::UserRole, int(dit->first)); + item->setData(0, Qt::UserRole, dit->first); item->setText(1, qt_("No")); } widget_->debugMessagesTW->resizeColumnToContents(0); @@ -152,11 +152,12 @@ void GuiProgressView::debugMessageActivated(QTreeWidgetItem * item, int) void GuiProgressView::levelChanged() { - unsigned int level = Debug::NONE; + unsigned long long level = Debug::NONE; QTreeWidgetItemIterator it(widget_->debugMessagesTW); while (*it) { - if ((*it)->text(1) == qt_("Yes")) - level |= (*it)->data(0, Qt::UserRole).toInt(); + if ((*it)->text(1) == qt_("Yes")) { + level |= (*it)->data(0, Qt::UserRole).toULongLong(); + } ++it; } dispatch(FuncRequest(LFUN_DEBUG_LEVEL_SET, convert<string>(level))); diff --git a/src/support/debug.cpp b/src/support/debug.cpp index 04485be..fa40d59 100644 --- a/src/support/debug.cpp +++ b/src/support/debug.cpp @@ -129,7 +129,7 @@ Debug::Type Debug::value(string const & val) break; // Is it a number? if (isStrInt(tmp)) - l |= static_cast<Type>(convert<int>(tmp)); + l |= static_cast<Type>(convert<unsigned long long>(tmp)); else // Search for an explicit name for (DebugErrorItem const & item : errorTags) diff --git a/src/support/debug.h b/src/support/debug.h index 681ef3f..2306524 100644 --- a/src/support/debug.h +++ b/src/support/debug.h @@ -32,12 +32,15 @@ typedef basic_streambuf<char, char_traits<char> > streambuf; #endif +// Make sure at compile time that sizeof(unsigned long long) >= 8 +typedef char p__LINE__[ (sizeof(unsigned long long) > 7) ? 1 : -1]; + namespace lyx { /// This is all the different debug levels that we have. namespace Debug { /// - typedef uint64_t base_type; + typedef unsigned long long base_type; enum Type : base_type { /// NONE = 0, @@ -106,7 +109,7 @@ namespace Debug { /// FINDVERBOSE= (1u << 31), /// - DEBUG = (1L << 32), + DEBUG = (1ULL << 32), /// ANY = 0x1ffffffff }; commit c7b6bf45196c6f57462ba8377ab597618d27d7dd Author: Kornel Benko <kor...@lyx.org> Date: Sat Apr 23 20:33:47 2022 +0200 FindAdv: Search also if layout of the searched paragraph has 'inpreamble' set Using 'force' in call to TeXOnePar() enables the search of any string in document. diff --git a/src/lyxfind.cpp b/src/lyxfind.cpp index 6fead6b..825bee3 100644 --- a/src/lyxfind.cpp +++ b/src/lyxfind.cpp @@ -1108,7 +1108,7 @@ static docstring buffer_to_latex(Buffer & buffer) } pit_type const endpit = buffer.paragraphs().size(); for (pit_type pit = 0; pit != endpit; ++pit) { - TeXOnePar(buffer, buffer.text(), pit, os, runparams); + TeXOnePar(buffer, buffer.text(), pit, os, runparams, string(), -1, -1, true); LYXERR(Debug::FINDVERBOSE, "searchString up to here: " << ods.str()); } return ods.str(); @@ -4019,7 +4019,7 @@ docstring latexifyFromCursor(DocIterator const & cur, int len) if (len != -1 && endpos > cur.pos() + len) endpos = cur.pos() + len; TeXOnePar(buf, *cur.innerText(), cur.pit(), os, runparams, - string(), cur.pos(), endpos); + string(), cur.pos(), endpos, true); LYXERR(Debug::FIND, "Latexified text from pos(" << cur.pos() << ") len(" << len << "): " << ods.str()); return(ods.str()); } else if (cur.inMathed()) { @@ -4612,7 +4612,7 @@ static int findAdvReplace(BufferView * bv, FindAndReplaceOptions const & opt, Ma runparams.flavor = Flavor::XeTeX; runparams.linelen = 8000; //lyxrc.plaintext_linelen; runparams.dryrun = true; - TeXOnePar(repl_buffer, repl_buffer.text(), 0, os, runparams); + TeXOnePar(repl_buffer, repl_buffer.text(), 0, os, runparams, string(), -1, -1, true); //repl_buffer.getSourceCode(ods, 0, repl_buffer.paragraphs().size(), false); docstring repl_latex = ods.str(); LYXERR(Debug::FINDVERBOSE, "Latexified replace_buffer: '" << repl_latex << "'"); ----------------------------------------------------------------------- Summary of changes: po/de.gmo | Bin 624552 -> 624975 bytes po/de.po | 34 +++++++++++++++--------- po/fr.gmo | Bin 627801 -> 628113 bytes po/fr.po | 47 ++++++++++++++++++++------------- po/sk.po | 12 +++++++- src/frontends/qt/GuiProgressView.cpp | 23 ++++++++++------ src/lyxfind.cpp | 6 ++-- src/support/debug.cpp | 14 ++++++++-- src/support/debug.h | 14 ++++++++-- 9 files changed, 98 insertions(+), 52 deletions(-) hooks/post-receive -- Repository for new features
-- lyx-cvs mailing list lyx-cvs@lists.lyx.org http://lists.lyx.org/mailman/listinfo/lyx-cvs