namespace {
+static unsigned int const LYXRC_FILEFORMAT = 1;
+
// when adding something to this array keep it sorted!
LexerKeyword lyxrcTags[] = {
{ "\\accept_compound", LyXRC::RC_ACCEPT_COMPOUND },
{ "\\converter_cache_maxage", LyXRC::RC_CONVERTER_CACHE_MAXAGE },
{ "\\copier", LyXRC::RC_COPIER },
{ "\\cursor_follows_scrollbar", LyXRC::RC_CURSOR_FOLLOWS_SCROLLBAR },
+ { "\\cursor_width", LyXRC::RC_CURSOR_WIDTH },
{ "\\date_insert_format", LyXRC::RC_DATE_INSERT_FORMAT },
{ "\\def_file", LyXRC::RC_DEFFILE },
{ "\\default_decimal_point", LyXRC::RC_DEFAULT_DECIMAL_POINT },
{ "\\example_path", LyXRC::RC_EXAMPLEPATH },
{ "\\export_overwrite", LyXRC::RC_EXPORT_OVERWRITE },
{ "\\font_encoding", LyXRC::RC_FONT_ENCODING },
- { "\\format", LyXRC::RC_FORMAT },
+ { "\\force_paint_single_char", LyXRC::RC_FORCE_PAINT_SINGLE_CHAR },
+ { "\\format", LyXRC::RC_FILEFORMAT },
{ "\\forward_search_dvi", LyXRC::RC_FORWARD_SEARCH_DVI },
{ "\\forward_search_pdf", LyXRC::RC_FORWARD_SEARCH_PDF },
{ "\\fullscreen_limit", LyXRC::RC_FULL_SCREEN_LIMIT },
{ "\\group_layouts", LyXRC::RC_GROUP_LAYOUTS },
{ "\\gui_language", LyXRC::RC_GUI_LANGUAGE },
{ "\\hunspelldir_path", LyXRC::RC_HUNSPELLDIR_PATH },
+ { "\\icon_set", LyXRC::RC_ICON_SET },
{ "\\index_alternatives", LyXRC::RC_INDEX_ALTERNATIVES },
{ "\\index_command", LyXRC::RC_INDEX_COMMAND },
{ "\\input", LyXRC::RC_INPUT },
{ "\\language_command_begin", LyXRC::RC_LANGUAGE_COMMAND_BEGIN },
{ "\\language_command_end", LyXRC::RC_LANGUAGE_COMMAND_END },
{ "\\language_command_local", LyXRC::RC_LANGUAGE_COMMAND_LOCAL },
+ { "\\language_custom_package", LyXRC::RC_LANGUAGE_CUSTOM_PACKAGE },
{ "\\language_global_options", LyXRC::RC_LANGUAGE_GLOBAL_OPTIONS },
- { "\\language_package", LyXRC::RC_LANGUAGE_PACKAGE },
- { "\\language_use_babel", LyXRC::RC_LANGUAGE_USE_BABEL },
+ { "\\language_package_selection", LyXRC::RC_LANGUAGE_PACKAGE_SELECTION },
{ "\\load_session", LyXRC::RC_LOADSESSION },
{ "\\mac_dontswap_ctrl_meta", LyXRC::RC_MAC_DONTSWAP_CTRL_META },
{ "\\mac_like_word_movement", LyXRC::RC_MAC_LIKE_WORD_MOVEMENT },
{ "\\open_buffers_in_tabs", LyXRC::RC_OPEN_BUFFERS_IN_TABS },
{ "\\paragraph_markers", LyXRC::RC_PARAGRAPH_MARKERS },
{ "\\path_prefix", LyXRC::RC_PATH_PREFIX },
- { "\\personal_dictionary", LyXRC::RC_PERS_DICT },
{ "\\plaintext_linelen", LyXRC::RC_PLAINTEXT_LINELEN },
- { "\\plaintext_roff_command", LyXRC::RC_PLAINTEXT_ROFF_COMMAND },
{ "\\preview", LyXRC::RC_PREVIEW },
{ "\\preview_hashed_labels", LyXRC::RC_PREVIEW_HASHED_LABELS },
{ "\\preview_scale_factor", LyXRC::RC_PREVIEW_SCALE_FACTOR },
{ "\\single_close_tab_button", LyXRC::RC_SINGLE_CLOSE_TAB_BUTTON },
{ "\\single_instance", LyXRC::RC_SINGLE_INSTANCE },
{ "\\sort_layouts", LyXRC::RC_SORT_LAYOUTS },
- { "\\spell_command", LyXRC::RC_SPELL_COMMAND },
{ "\\spellcheck_continuously", LyXRC::RC_SPELLCHECK_CONTINUOUSLY },
{ "\\spellcheck_notes", LyXRC::RC_SPELLCHECK_NOTES },
{ "\\spellchecker", LyXRC::RC_SPELLCHECKER },
{ "\\template_path", LyXRC::RC_TEMPLATEPATH },
{ "\\tex_allows_spaces", LyXRC::RC_TEX_ALLOWS_SPACES },
{ "\\tex_expects_windows_paths", LyXRC::RC_TEX_EXPECTS_WINDOWS_PATHS },
+ { "\\texinputs_prefix", LyXRC::RC_TEXINPUTS_PREFIX },
{ "\\thesaurusdir_path", LyXRC::RC_THESAURUSDIRPATH },
{ "\\ui_file", LyXRC::RC_UIFILE },
- { "\\use_alt_language", LyXRC::RC_USE_ALT_LANG },
{ "\\use_converter_cache", LyXRC::RC_USE_CONVERTER_CACHE },
- { "\\use_escape_chars", LyXRC::RC_USE_ESC_CHARS },
- { "\\use_input_encoding", LyXRC::RC_USE_INP_ENC },
{ "\\use_lastfilepos", LyXRC::RC_USELASTFILEPOS },
- { "\\use_personal_dictionary", LyXRC::RC_USE_PERS_DICT },
{ "\\use_pixmap_cache", LyXRC::RC_USE_PIXMAP_CACHE },
// compatibility with versions older than 1.4.0 only
- { "\\use_pspell", LyXRC::RC_USE_SPELL_LIB },
{ "\\use_system_colors", LyXRC::RC_USE_SYSTEM_COLORS },
- // compatibility with versions older than 1.4.0 only
- { "\\use_tempdir", LyXRC::RC_USETEMPDIR },
{ "\\use_tooltip", LyXRC::RC_USE_TOOLTIP },
{ "\\user_email", LyXRC::RC_USER_EMAIL },
{ "\\user_name", LyXRC::RC_USER_NAME },
// compatibility with versions older than 1.4.0 only
{ "\\viewer", LyXRC::RC_VIEWER},
{ "\\viewer_alternatives", LyXRC::RC_VIEWER_ALTERNATIVES },
- { "\\visual_cursor" ,LyXRC::RC_VISUAL_CURSOR}
+ { "\\visual_cursor", LyXRC::RC_VISUAL_CURSOR },
+ { "format", LyXRC::RC_LYXRCFORMAT }
};
const int lyxrcCount = sizeof(lyxrcTags) / sizeof(lyxrcTags[0]);
void LyXRC::setDefaults()
{
+ icon_set = string();
bind_file = "cua";
def_file = "default";
ui_file = "default";
+ // The current document directory
+ texinputs_prefix = ".";
// Get printer from the environment. If fail, use default "",
// assuming that everything is set up correctly.
printer = getEnv("PRINTER");
language_auto_begin = true;
language_auto_end = true;
language_global_options = true;
- language_use_babel = true;
- language_package = "\\usepackage{babel}";
+ language_package_selection = LP_AUTO;
+ language_custom_package = "\\usepackage{babel}";
language_command_begin = "\\selectlanguage{$$lang}";
language_command_local = "\\foreignlanguage{$$lang}{";
sort_layouts = false;
completion_inline_dots = -1;
completion_inline_delay = 0.2;
default_decimal_point = ".";
+ cursor_width = 1;
}
} // namespace anon
-int LyXRC::read(FileName const & filename)
+bool LyXRC::read(FileName const & filename, bool check_format)
{
Lexer lexrc(lyxrcTags);
- if (lyxerr.debugging(Debug::PARSER))
- lexrc.printTable(lyxerr);
-
lexrc.setFile(filename);
- if (!lexrc.isOK())
- return -2;
-
LYXERR(Debug::LYXRC, "Reading '" << filename << "'...");
-
- return read(lexrc);
+ ReturnValues retval = read(lexrc, check_format);
+ if (!check_format || retval != FormatMismatch)
+ return retval == ReadOK;
+
+ LYXERR(Debug::FILES, "Converting LyXRC file to " << LYXRC_FILEFORMAT);
+ FileName const tempfile = FileName::tempName("convert_lyxrc");
+ bool const success = prefs2prefs(filename, tempfile, false);
+ if (!success) {
+ LYXERR0 ("Unable to convert " << filename.absFileName() <<
+ " to format " << LYXRC_FILEFORMAT);
+ return false;
+ }
+ Lexer lexrc2(lyxrcTags);
+ lexrc2.setFile(tempfile);
+ LYXERR(Debug::LYXRC, "Reading '" << tempfile << "'...");
+ retval = read(lexrc2, check_format);
+ tempfile.removeFile();
+ return retval == ReadOK;
}
-int LyXRC::read(istream & is)
+// don't need to worry about conversion, because this is always
+// from an internal source
+bool LyXRC::read(istream & is)
{
Lexer lexrc(lyxrcTags);
- if (lyxerr.debugging(Debug::PARSER))
- lexrc.printTable(lyxerr);
-
lexrc.setStream(is);
- if (!lexrc.isOK())
- return -2;
-
LYXERR(Debug::LYXRC, "Reading istream...");
-
- return read(lexrc);
+ return read(lexrc, false) == ReadOK;
}
-int LyXRC::read(Lexer & lexrc)
+LyXRC::ReturnValues LyXRC::read(Lexer & lexrc, bool check_format)
{
+ if (lyxerr.debugging(Debug::PARSER))
+ lexrc.printTable(lyxerr);
+
if (!lexrc.isOK())
- return -2;
+ return ReadError;
+
+ // default for current rowpainter capabilities
+ force_paint_single_char = true;
+
+ // format prior to 2.0 and introduction of format tag
+ unsigned int format = 0;
while (lexrc.isOK()) {
// By using two switches we take advantage of the compiler
break;
}
switch (static_cast<LyXRCTags>(le)) {
+ case RC_LYXRCFORMAT:
+ if (lexrc.next())
+ format = lexrc.getInteger();
+ break;
case RC_INPUT: // Include file
if (lexrc.next()) {
FileName const tmp =
libFileSearch(string(),
lexrc.getString());
- if (read(tmp)) {
- lexrc.printError("Error reading "
- "included file: " + tmp.absFileName());
+ if (read(tmp, check_format)) {
+ lexrc.printError(
+ "Error reading included file: " + tmp.absFileName());
}
}
break;
lexrc >> tex_allows_spaces;
break;
+ case RC_TEXINPUTS_PREFIX:
+ lexrc >> texinputs_prefix;
+ break;
+
case RC_KBMAP:
lexrc >> use_kbmap;
break;
lexrc >> fontenc;
break;
+ case RC_FORCE_PAINT_SINGLE_CHAR:
+ lexrc >> force_paint_single_char;
+ break;
+
case RC_PRINTER:
lexrc >> printer;
break;
lexrc >> check_lastfiles;
break;
+ case RC_ICON_SET:
+ lexrc >> icon_set;
+ break;
+
case RC_SCREEN_FONT_ROMAN:
if (lexrc.next()) {
roman_font_name = lexrc.getString();
lexrc >> cursor_follows_scrollbar;
break;
+ case RC_CURSOR_WIDTH:
+ lexrc >> cursor_width;
+ break;
+
case RC_SCROLL_BELOW_DOCUMENT:
lexrc >> scroll_below_document;
break;
case RC_DATE_INSERT_FORMAT:
lexrc >> date_insert_format;
break;
- case RC_LANGUAGE_PACKAGE:
- lexrc >> language_package;
+ case RC_LANGUAGE_CUSTOM_PACKAGE:
+ lexrc >> language_custom_package;
break;
case RC_LANGUAGE_AUTO_BEGIN:
lexrc >> language_auto_begin;
case RC_LANGUAGE_GLOBAL_OPTIONS:
lexrc >> language_global_options;
break;
- case RC_LANGUAGE_USE_BABEL:
- lexrc >> language_use_babel;
+ case RC_LANGUAGE_PACKAGE_SELECTION:
+ if (lexrc.next()) {
+ switch (lexrc.getInteger()) {
+ case 0:
+ language_package_selection = LP_AUTO;
+ break;
+ case 1:
+ language_package_selection = LP_BABEL;
+ break;
+ case 2:
+ language_package_selection = LP_CUSTOM;
+ break;
+ case 3:
+ language_package_selection = LP_NONE;
+ break;
+ }
+ }
break;
case RC_LANGUAGE_COMMAND_BEGIN:
lexrc >> language_command_begin;
formats.setViewer(format, command);
break;
}
- case RC_FORMAT: {
+ case RC_FILEFORMAT: {
string format, extension, prettyname, shortcut;
lexrc >> format >> extension >> prettyname >> shortcut;
string viewer, editor;
flgs |= Format::document;
else if (flag == "vector")
flgs |= Format::vector;
+ else if (flag == "menu=export")
+ flgs |= Format::export_menu;
else
LYXERR0("Ignoring unknown flag `"
<< flag << "' for format `"
}
case RC_EDITOR_ALTERNATIVES: {
string format, command;
- lexrc >> format >> command;
+ if (lexrc.next())
+ format = lexrc.getString();
+ if (lexrc.eatLine())
+ command = lexrc.getString();
editor_alternatives[format].insert(command);
break;
}
case RC_DEFAULT_VIEW_FORMAT:
lexrc >> default_view_format;
break;
-
+
case RC_DEFAULT_LANGUAGE:
lexrc >> default_language;
break;
run_mode = single_instance ? USE_REMOTE : NEW_INSTANCE;
break;
case RC_FORWARD_SEARCH_DVI:
- if (lexrc.next(true))
+ if (lexrc.next(true))
forward_search_dvi = lexrc.getString();
break;
case RC_FORWARD_SEARCH_PDF:
- if (lexrc.next(true))
+ if (lexrc.next(true))
forward_search_pdf = lexrc.getString();
break;
case RC_EXPORT_OVERWRITE:
}
break;
- // Obsoteted in 1.4.0
- case RC_USETEMPDIR:
- // Obsoleted in 2.0
- case RC_SPELL_COMMAND:
- case RC_PERS_DICT:
- case RC_PLAINTEXT_ROFF_COMMAND:
- case RC_USE_ALT_LANG:
- case RC_USE_ESC_CHARS:
- case RC_USE_INP_ENC:
- case RC_USE_PERS_DICT:
- case RC_USE_SPELL_LIB:
- LYXERR(Debug::LYXRC, "Skipping obsolete tag `"
- << lexrc.getString() << "'.");
- lexrc.next(true);
- break;
-
case RC_LAST:
break; // this is just a dummy
}
+
+ // This is triggered the first time through the loop unless
+ // we hit a format tag.
+ if (check_format && format != LYXRC_FILEFORMAT)
+ return FormatMismatch;
}
/// Update converters data-structures
theConverters().update(formats);
theConverters().buildGraph();
- return 0;
+ return ReadOK;
}
// Escape \ and " so that LyXLex can read the string later
string escapeCommand(string const & str) {
- return subst(subst(str , "\\", "\\\\"),
+ return subst(subst(str , "\\", "\\\\"),
"\"", "\\\"");
}
void LyXRC::write(ostream & os, bool ignore_system_lyxrc, string const & name) const
{
LyXRCTags tag = RC_LAST;
-
+
if (!name.empty()) {
for (int i = 0; i != lyxrcCount; ++i)
if ("\\" + name == lyxrcTags[i].tag)
if (tag == RC_LAST)
os << "# LyX " << lyx_version
<< " generated this file. If you want to make your own\n"
- << "# modifications you should do them from inside LyX and save.\n"
- << "\n";
+ << "# modifications you should do them from inside LyX and save.\n\n"
+ << "Format " << LYXRC_FILEFORMAT << "\n\n";
// Why the switch you might ask. It is a trick to ensure that all
// the elements in the LyXRCTags enum are handled. As you can see
case RC_LAST:
case RC_INPUT:
// input/include files are not done here
+ case RC_LYXRCFORMAT:
case RC_BINDFILE:
if (ignore_system_lyxrc ||
bind_file != system_lyxrc.bind_file) {
if (tag != RC_LAST)
break;
case RC_TEX_EXPECTS_WINDOWS_PATHS:
- if (ignore_system_lyxrc ||
- windows_style_tex_paths != system_lyxrc.windows_style_tex_paths) {
+ // Don't write this setting to the preferences file,
+ // but allow temporary changes (bug 7557).
+ if (ignore_system_lyxrc) {
os << "\\tex_expects_windows_paths "
<< convert<string>(windows_style_tex_paths) << '\n';
}
<< "# SCREEN & FONTS SECTION ############################\n"
<< "#\n\n";
+ case RC_ICON_SET:
+ if (ignore_system_lyxrc ||
+ icon_set != system_lyxrc.icon_set) {
+ os << "\\icon_set \"" << icon_set
+ << "\"\n";
+ }
+ if (tag != RC_LAST)
+ break;
+
case RC_SCREEN_DPI:
if (ignore_system_lyxrc ||
dpi != system_lyxrc.dpi) {
}
if (tag != RC_LAST)
break;
+ case RC_CURSOR_WIDTH:
+ if (ignore_system_lyxrc ||
+ cursor_width
+ != system_lyxrc.cursor_width) {
+ os << "\\cursor_width "
+ << cursor_width << '\n';
+ }
+ if (tag != RC_LAST)
+ break;
case RC_SCROLL_BELOW_DOCUMENT:
if (ignore_system_lyxrc ||
scroll_below_document
<< "# TEX SECTION #######################################\n"
<< "#\n\n";
+ case RC_TEXINPUTS_PREFIX:
+ if (ignore_system_lyxrc ||
+ texinputs_prefix != system_lyxrc.texinputs_prefix) {
+ os << "\\texinputs_prefix \"" << texinputs_prefix << "\"\n";
+ }
+ if (tag != RC_LAST)
+ break;
+
case RC_FONT_ENCODING:
if (ignore_system_lyxrc ||
fontenc != system_lyxrc.fontenc) {
if (tag != RC_LAST)
break;
+ case RC_FORCE_PAINT_SINGLE_CHAR:
+ if (ignore_system_lyxrc ||
+ force_paint_single_char != system_lyxrc.force_paint_single_char) {
+ os << "\\force_paint_single_char \"" << force_paint_single_char << "\"\n";
+ }
+ if (tag != RC_LAST)
+ break;
+
os << "\n#\n"
<< "# FILE SECTION ######################################\n"
<< "#\n\n";
}
if (tag != RC_LAST)
break;
- case RC_USETEMPDIR:
- if (tag != RC_LAST)
- break;
- // Ignore it
- case RC_PLAINTEXT_ROFF_COMMAND: // Obsoleted in 2.0
- if (tag != RC_LAST)
- break;
case RC_PLAINTEXT_LINELEN:
if (ignore_system_lyxrc ||
plaintext_linelen != system_lyxrc.plaintext_linelen) {
<< "# SPELLCHECKER SECTION ##############################\n"
<< "#\n\n";
- case RC_SPELL_COMMAND:
- case RC_USE_SPELL_LIB:
- // Obsoleted in 2.0
- if (tag != RC_LAST)
- break;
case RC_ACCEPT_COMPOUND:
if (ignore_system_lyxrc ||
spellchecker_accept_compound != system_lyxrc.spellchecker_accept_compound) {
}
if (tag != RC_LAST)
break;
- case RC_USE_ALT_LANG:
- // Obsoleted in 2.0
- if (tag != RC_LAST)
- break;
case RC_ALT_LANG:
if (ignore_system_lyxrc ||
spellchecker_alt_lang != system_lyxrc.spellchecker_alt_lang) {
}
if (tag != RC_LAST)
break;
- case RC_USE_ESC_CHARS:
- if (tag != RC_LAST)
- break;
case RC_ESC_CHARS:
if (ignore_system_lyxrc ||
spellchecker_esc_chars != system_lyxrc.spellchecker_esc_chars) {
}
if (tag != RC_LAST)
break;
- case RC_USE_PERS_DICT:
- // obsoleted in 2.0
- if (tag != RC_LAST)
- break;
case RC_USE_SYSTEM_COLORS:
if (ignore_system_lyxrc ||
use_system_colors != system_lyxrc.use_system_colors) {
}
if (tag != RC_LAST)
break;
- case RC_PERS_DICT:
- // obsoleted in 2.0
- if (tag != RC_LAST)
- break;
- case RC_USE_INP_ENC:
- // obsoleted in 2.0
- if (tag != RC_LAST)
- break;
os << "\n#\n"
<< "# LANGUAGE SUPPORT SECTION ##########################\n"
}
if (tag != RC_LAST)
break;
- case RC_LANGUAGE_PACKAGE:
+ case RC_LANGUAGE_CUSTOM_PACKAGE:
if (ignore_system_lyxrc ||
- language_package != system_lyxrc.language_package) {
- os << "\\language_package \"" << language_package
+ language_custom_package != system_lyxrc.language_custom_package) {
+ os << "\\language_custom_package \"" << language_custom_package
<< "\"\n";
}
if (tag != RC_LAST)
}
if (tag != RC_LAST)
break;
- case RC_LANGUAGE_USE_BABEL:
+ case RC_LANGUAGE_PACKAGE_SELECTION:
if (ignore_system_lyxrc ||
- language_use_babel != system_lyxrc.language_use_babel) {
- os << "\\language_use_babel \""
- << convert<string>(language_use_babel)
- << "\"\n";
+ language_package_selection != system_lyxrc.language_package_selection) {
+ os << "\\language_package_selection ";
+ switch (language_package_selection) {
+ case LP_AUTO:
+ os << "0\n";
+ break;
+ case LP_BABEL:
+ os << "1\n";
+ break;
+ case LP_CUSTOM:
+ os << "2\n";
+ break;
+ case LP_NONE:
+ os << "3\n";
+ break;
+ }
}
if (tag != RC_LAST)
break;
<< "# FORMATS SECTION ##########################\n"
<< "#\n\n";
- case RC_FORMAT:
+ case RC_FILEFORMAT:
// New/modified formats
for (Formats::const_iterator cit = formats.begin();
cit != formats.end(); ++cit) {
format->viewer() != cit->viewer() ||
format->editor() != cit->editor() ||
format->documentFormat() != cit->documentFormat() ||
- format->vectorFormat() != cit->vectorFormat()) {
+ format->vectorFormat() != cit->vectorFormat() ||
+ format->inExportMenu() != cit->inExportMenu()) {
os << "\\format \"" << cit->name() << "\" \""
<< cit->extension() << "\" \""
<< cit->prettyname() << "\" \""
flags.push_back("document");
if (cit->vectorFormat())
flags.push_back("vector");
+ if (cit->inExportMenu())
+ flags.push_back("menu=export");
+
os << getStringFromVector(flags);
os << "\"\n";
}
case RC_VIEWER_ALTERNATIVES: {
Alternatives::const_iterator it = viewer_alternatives.begin();
Alternatives::const_iterator const en = viewer_alternatives.end();
- Alternatives::const_iterator const sysend =
+ Alternatives::const_iterator const sysend =
system_lyxrc.viewer_alternatives.end();
for (; it != en; ++it) {
string const & fmt = it->first;
CommandSet const & cmd = it->second;
CommandSet::const_iterator sit = cmd.begin();
CommandSet::const_iterator const sen = cmd.end();
- Alternatives::const_iterator const sysfmt = ignore_system_lyxrc ?
+ Alternatives::const_iterator const sysfmt = ignore_system_lyxrc ?
system_lyxrc.viewer_alternatives.begin() : // we won't use it in this case
system_lyxrc.viewer_alternatives.find(fmt);
for (; sit != sen; ++sit) {
string const & cmd = *sit;
- if (ignore_system_lyxrc
+ if (ignore_system_lyxrc
|| sysfmt == sysend // format not found
|| sysfmt->second.count(cmd) == 0 // this command not found
)
case RC_EDITOR_ALTERNATIVES: {
Alternatives::const_iterator it = editor_alternatives.begin();
Alternatives::const_iterator const en = editor_alternatives.end();
- Alternatives::const_iterator const sysend =
+ Alternatives::const_iterator const sysend =
system_lyxrc.editor_alternatives.end();
for (; it != en; ++it) {
string const & fmt = it->first;
CommandSet const & cmd = it->second;
CommandSet::const_iterator sit = cmd.begin();
CommandSet::const_iterator const sen = cmd.end();
- Alternatives::const_iterator const sysfmt = ignore_system_lyxrc ?
+ Alternatives::const_iterator const sysfmt = ignore_system_lyxrc ?
system_lyxrc.editor_alternatives.begin() : // we won't use it in this case
system_lyxrc.editor_alternatives.find(fmt);
for (; sit != sen; ++sit) {
string const & cmd = *sit;
- if (ignore_system_lyxrc
+ if (ignore_system_lyxrc
|| sysfmt == sysend // format not found
|| sysfmt->second.count(cmd) == 0 // this command not found
)
<< "\" \"" << cit->to << "\" \"\" \"\"\n";
if (tag != RC_LAST)
break;
-
+
case RC_COPIER:
if (tag == RC_LAST)
os << "\n#\n"
// if we forget an element.
LyXRC::LyXRCTags tag = LyXRC::RC_LAST;
switch (tag) {
+ case LyXRC::RC_LAST:
case LyXRC::RC_ACCEPT_COMPOUND:
case LyXRC::RC_ALT_LANG:
case LyXRC::RC_PLAINTEXT_LINELEN:
- case LyXRC::RC_PLAINTEXT_ROFF_COMMAND:
case LyXRC::RC_AUTOCORRECTION_MATH:
case LyXRC::RC_AUTOREGIONDELETE:
case LyXRC::RC_AUTORESET_OPTIONS:
case LyXRC::RC_ESC_CHARS:
case LyXRC::RC_EXAMPLEPATH:
case LyXRC::RC_FONT_ENCODING:
- case LyXRC::RC_FORMAT:
+ case LyXRC::RC_FORCE_PAINT_SINGLE_CHAR:
+ case LyXRC::RC_FILEFORMAT:
case LyXRC::RC_GROUP_LAYOUTS:
case LyXRC::RC_HUNSPELLDIR_PATH:
+ case LyXRC::RC_ICON_SET:
case LyXRC::RC_INDEX_ALTERNATIVES:
case LyXRC::RC_INDEX_COMMAND:
case LyXRC::RC_JBIBTEX_COMMAND:
case LyXRC::RC_LANGUAGE_COMMAND_END:
case LyXRC::RC_LANGUAGE_COMMAND_LOCAL:
case LyXRC::RC_LANGUAGE_GLOBAL_OPTIONS:
- case LyXRC::RC_LANGUAGE_PACKAGE:
- case LyXRC::RC_LANGUAGE_USE_BABEL:
+ case LyXRC::RC_LANGUAGE_CUSTOM_PACKAGE:
+ case LyXRC::RC_LANGUAGE_PACKAGE_SELECTION:
+ case LyXRC::RC_LYXRCFORMAT:
case LyXRC::RC_MAC_DONTSWAP_CTRL_META:
case LyXRC::RC_MAC_LIKE_WORD_MOVEMENT:
case LyXRC::RC_MACRO_EDIT_STYLE:
case LyXRC::RC_PARAGRAPH_MARKERS:
case LyXRC::RC_PATH_PREFIX:
if (lyxrc_orig.path_prefix != lyxrc_new.path_prefix) {
- prependEnvPath("PATH", lyxrc.path_prefix);
+ prependEnvPath("PATH", lyxrc_new.path_prefix);
}
- case LyXRC::RC_PERS_DICT:
case LyXRC::RC_PREVIEW:
case LyXRC::RC_PREVIEW_HASHED_LABELS:
case LyXRC::RC_PREVIEW_SCALE_FACTOR:
case LyXRC::RC_SET_COLOR:
case LyXRC::RC_SHOW_BANNER:
case LyXRC::RC_OPEN_BUFFERS_IN_TABS:
- case LyXRC::RC_SPELL_COMMAND:
case LyXRC::RC_SPELLCHECKER:
case LyXRC::RC_SPELLCHECK_CONTINUOUSLY:
case LyXRC::RC_SPELLCHECK_NOTES:
if (lyxrc_orig.windows_style_tex_paths != lyxrc_new.windows_style_tex_paths) {
os::windows_style_tex_paths(lyxrc_new.windows_style_tex_paths);
}
+ case LyXRC::RC_TEXINPUTS_PREFIX:
case LyXRC::RC_THESAURUSDIRPATH:
case LyXRC::RC_UIFILE:
case LyXRC::RC_USER_EMAIL:
case LyXRC::RC_USER_NAME:
- case LyXRC::RC_USETEMPDIR:
- case LyXRC::RC_USE_ALT_LANG:
case LyXRC::RC_USE_CONVERTER_CACHE:
- case LyXRC::RC_USE_ESC_CHARS:
- case LyXRC::RC_USE_INP_ENC:
- case LyXRC::RC_USE_PERS_DICT:
case LyXRC::RC_USE_SYSTEM_COLORS:
case LyXRC::RC_USE_TOOLTIP:
case LyXRC::RC_USE_PIXMAP_CACHE:
- case LyXRC::RC_USE_SPELL_LIB:
case LyXRC::RC_VIEWDVI_PAPEROPTION:
case LyXRC::RC_SINGLE_CLOSE_TAB_BUTTON:
case LyXRC::RC_SINGLE_INSTANCE:
case LyXRC::RC_EXPORT_OVERWRITE:
case LyXRC::RC_DEFAULT_DECIMAL_POINT:
case LyXRC::RC_SCROLL_WHEEL_ZOOM:
- case LyXRC::RC_LAST:
+ case LyXRC::RC_CURSOR_WIDTH:
break;
}
}
break;
case RC_ALT_LANG:
- case RC_USE_ALT_LANG:
str = _("Specify an alternate language. The default is to use the language of the document.");
break;
- case RC_PLAINTEXT_ROFF_COMMAND:
- str = _("Use to define an external program to render tables in plain text output. E.g. \"groff -t -Tlatin1 $$FName\" where $$FName is the input file. If \"\" is specified, an internal routine is used.");
- break;
-
case RC_PLAINTEXT_LINELEN:
str = _("The maximum line length of exported plain text/LaTeX/SGML files. If set to 0, paragraphs are output in a single line; if the line length is > 0, paragraphs are separated by a blank line.");
break;
str = _("LyX normally doesn't update the cursor position if you move the scrollbar. Set to true if you'd prefer to always have the cursor on screen.");
break;
+ case RC_CURSOR_WIDTH:
+ str = _("Configure the width of the text cursor. Automatic zoom-controlled cursor width used when set to 0.");
+ break;
+
case RC_SCROLL_BELOW_DOCUMENT:
str = _("LyX normally doesn't allow the user to scroll further than the bottom of the document. Set to true if you prefer to scroll the bottom of the document to the top of the screen");
break;
break;
case RC_ESC_CHARS:
- case RC_USE_ESC_CHARS:
str = _("Specify additional chars that can be part of a word.");
break;
str = _("The font encoding used for the LaTeX2e fontenc package. T1 is highly recommended for non-English languages.");
break;
- case RC_FORMAT:
+ case RC_FORCE_PAINT_SINGLE_CHAR:
+ str = _("Disable any kerning and ligatures for text drawing on screen.");
+ break;
+
+ case RC_FILEFORMAT:
break;
case RC_INDEX_COMMAND:
str = _("De-select if you don't want the language(s) used as an argument to \\documentclass.");
break;
- case RC_LANGUAGE_PACKAGE:
+ case RC_LANGUAGE_CUSTOM_PACKAGE:
str = _("The LaTeX command for loading the language package. E.g. \"\\usepackage{babel}\", \"\\usepackage{omega}\".");
break;
- case RC_LANGUAGE_USE_BABEL:
+ case RC_LANGUAGE_PACKAGE_SELECTION:
str = _("De-select if you don't want babel to be used when the language of the document is the default language.");
break;
case RC_PATH_PREFIX:
str = _("Specify those directories which should be "
- "prepended to the PATH environment variable. "
+ "prepended to the PATH environment variable.\n"
"Use the OS native format.");
break;
case RC_TEX_EXPECTS_WINDOWS_PATHS:
break;
+ case RC_TEXINPUTS_PREFIX:
+ str = _("Specify those directories which should be "
+ "prepended to the TEXINPUTS environment variable.\n"
+ "A '.' represents the current document directory. "
+ "Use the OS native format.");
+ break;
+
case RC_UIFILE:
str = _("The UI (user interface) file. Can either specify an absolute path, or LyX will look in its global and local ui/ directories.");
break;
case RC_USER_NAME:
break;
- case RC_USETEMPDIR:
- break;
-
case RC_USE_USE_SYSTEM_COLORS:
str = _("Enable use the system colors for some things like main window background and selection.");
break;
str = _("Enable the pixmap cache that might improve performance on Mac and Windows.");
break;
- case RC_USE_SPELL_LIB:
- break;
-
case RC_VIEWDVI_PAPEROPTION:
_("Specify the paper command to DVI viewer (leave empty or use \"-paper\")");
break;