]> git.lyx.org Git - lyx.git/blobdiff - src/LyXRC.cpp
Assure correct spacing of colored items in mathed
[lyx.git] / src / LyXRC.cpp
index 7b7b2627102dbab9c5b562e83d8a168731ac3cc5..42df207154924ada4bbce032339249abe91141c7 100644 (file)
@@ -61,7 +61,7 @@ namespace {
 
 // The format should also be updated in configure.py, and conversion code
 // should be added to prefs2prefs_prefs.py.
-static unsigned int const LYXRC_FILEFORMAT = 31; // lasgouttes: add \ct_additions_underlined
+static unsigned int const LYXRC_FILEFORMAT = 32; // spitz: add \ct_markup_copied
 // when adding something to this array keep it sorted!
 LexerKeyword lyxrcTags[] = {
        { "\\accept_compound", LyXRC::RC_ACCEPT_COMPOUND },
@@ -93,6 +93,7 @@ LexerKeyword lyxrcTags[] = {
        { "\\converter_cache_maxage", LyXRC::RC_CONVERTER_CACHE_MAXAGE },
        { "\\copier", LyXRC::RC_COPIER },
        { "\\ct_additions_underlined", LyXRC::RC_CT_ADDITIONS_UNDERLINED },
+       { "\\ct_markup_copied", LyXRC::RC_CT_MARKUP_COPIED },
        { "\\cursor_follows_scrollbar", LyXRC::RC_CURSOR_FOLLOWS_SCROLLBAR },
        { "\\cursor_width", LyXRC::RC_CURSOR_WIDTH },
        { "\\def_file", LyXRC::RC_DEFFILE },
@@ -642,13 +643,13 @@ LyXRC::ReturnValues LyXRC::read(Lexer & lexrc, bool check_format)
                                lexrc.printError("Missing color tag.");
                                break;
                        }
-                       string lyx_name = lexrc.getString();
+                       string const lyx_name = lexrc.getString();
 
                        if (!lexrc.next()) {
                                lexrc.printError("Missing color name for color: `$$Token'");
                                break;
                        }
-                       string x11_name = lexrc.getString();
+                       string const x11_name = lexrc.getString();
 
                        ColorCode const col =
                                lcolor.getFromLyXName(lyx_name);
@@ -659,6 +660,7 @@ LyXRC::ReturnValues LyXRC::read(Lexer & lexrc, bool check_format)
 
                        if (!lcolor.setColor(col, x11_name))
                                LYXERR0("Bad lyxrc set_color for " << lyx_name);
+                       LYXERR(Debug::LYXRC, "Set " << lyx_name << "(" << col << ") to " << x11_name);
                        break;
                }
 
@@ -668,14 +670,23 @@ LyXRC::ReturnValues LyXRC::read(Lexer & lexrc, bool check_format)
                        break;
 
                case RC_SERVERPIPE:
-                       if (lexrc.next())
-                               lyxpipes = os::internal_path(lexrc.getString());
+                       if (lexrc.next()) {
+                               string userdir = package().user_support().absFileName();
+                               if (userdir.back() == '/')
+                                 userdir.pop_back();
+                               lyxpipes = subst(os::internal_path(lexrc.getString()), "$$UserDir",
+                                       userdir);
+                       }
                        break;
 
                case RC_CT_ADDITIONS_UNDERLINED:
                        lexrc >> ct_additions_underlined;
                        break;
 
+               case RC_CT_MARKUP_COPIED:
+                       lexrc >> ct_markup_copied;
+                       break;
+
                case RC_CURSOR_FOLLOWS_SCROLLBAR:
                        lexrc >> cursor_follows_scrollbar;
                        break;
@@ -1601,6 +1612,16 @@ void LyXRC::write(ostream & os, bool ignore_system_lyxrc, string const & name) c
                if (tag != RC_LAST)
                        break;
                // fall through
+       case RC_CT_MARKUP_COPIED:
+               if (ignore_system_lyxrc ||
+                   ct_markup_copied
+                   != system_lyxrc.ct_markup_copied) {
+                       os << "\\ct_markup_copied "
+                          << convert<string>(ct_markup_copied) << '\n';
+               }
+               if (tag != RC_LAST)
+                       break;
+               // fall through
        case RC_CURSOR_FOLLOWS_SCROLLBAR:
                if (ignore_system_lyxrc ||
                    cursor_follows_scrollbar
@@ -2771,6 +2792,7 @@ void actOnUpdatedPrefs(LyXRC const & lyxrc_orig, LyXRC const & lyxrc_new)
        case LyXRC::RC_CONVERTER_CACHE_MAXAGE:
        case LyXRC::RC_COPIER:
        case LyXRC::RC_CT_ADDITIONS_UNDERLINED:
+       case LyXRC::RC_CT_MARKUP_COPIED:
        case LyXRC::RC_CURSOR_FOLLOWS_SCROLLBAR:
        case LyXRC::RC_SCROLL_BELOW_DOCUMENT:
        case LyXRC::RC_GUI_LANGUAGE: