#include "support/lstrings.h"
#include "support/os.h"
#include "support/Package.h"
+#include "support/TempFile.h"
#include "support/userinfo.h"
#include <fstream>
// 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 = 15; // prannoy: statusbar on/off in full screen
+static unsigned int const LYXRC_FILEFORMAT = 17; // lasgouttes: remove \\rtl
// when adding something to this array keep it sorted!
LexerKeyword lyxrcTags[] = {
{ "\\example_path", LyXRC::RC_EXAMPLEPATH },
{ "\\export_overwrite", LyXRC::RC_EXPORT_OVERWRITE },
{ "\\font_encoding", LyXRC::RC_FONT_ENCODING },
- { "\\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 },
{ "\\macro_edit_style", LyXRC::RC_MACRO_EDIT_STYLE },
{ "\\make_backup", LyXRC::RC_MAKE_BACKUP },
{ "\\mark_foreign_language", LyXRC::RC_MARK_FOREIGN_LANGUAGE },
+ { "\\mouse_middlebutton_paste", LyXRC::RC_MOUSE_MIDDLEBUTTON_PASTE },
{ "\\mouse_wheel_speed", LyXRC::RC_MOUSE_WHEEL_SPEED },
{ "\\nomencl_command", LyXRC::RC_NOMENCL_COMMAND },
{ "\\num_lastfiles", LyXRC::RC_NUMLASTFILES },
{ "\\print_to_file", LyXRC::RC_PRINTTOFILE },
{ "\\print_to_printer", LyXRC::RC_PRINTTOPRINTER },
{ "\\printer", LyXRC::RC_PRINTER },
- { "\\rtl", LyXRC::RC_RTL_SUPPORT },
{ "\\save_compressed", LyXRC::RC_SAVE_COMPRESSED },
{ "\\screen_dpi", LyXRC::RC_SCREEN_DPI },
{ "\\screen_font_roman", LyXRC::RC_SCREEN_FONT_ROMAN },
completion_minlength = 6;
spellcheck_notes = true;
use_kbmap = false;
- rtl_support = true;
visual_cursor = false;
auto_number = true;
mark_foreign_language = true;
default_length_unit = Length::CM;
cursor_width = 1;
close_buffer_with_last_view = "yes";
+ mouse_middlebutton_paste = true;
}
return retval == ReadOK;
LYXERR(Debug::FILES, "Converting LyXRC file to " << LYXRC_FILEFORMAT);
- FileName const tempfile = FileName::tempName("convert_lyxrc");
+ TempFile tmp("convert_lyxrc");
+ FileName const tempfile = tmp.name();
bool const success = prefs2prefs(filename, tempfile, false);
if (!success) {
LYXERR0 ("Unable to convert " << filename.absFileName() <<
LYXERR(Debug::LYXRC, "Reading '" << tempfile << "'...");
retval = read(lexrc2, check_format);
}
- tempfile.removeFile();
return retval == ReadOK;
}
if (!lexrc.isOK())
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;
lexrc >> fontenc;
break;
- case RC_FORCE_PAINT_SINGLE_CHAR:
- lexrc >> force_paint_single_char;
- break;
-
case RC_PRINTER:
lexrc >> printer;
break;
case RC_LANGUAGE_COMMAND_LOCAL:
lexrc >> language_command_local;
break;
- case RC_RTL_SUPPORT:
- lexrc >> rtl_support;
- break;
case RC_VISUAL_CURSOR:
lexrc >> visual_cursor;
break;
}
break;
+ case RC_MOUSE_MIDDLEBUTTON_PASTE:
+ lexrc >> mouse_middlebutton_paste;
+ break;
+
case RC_LAST:
break; // this is just a dummy
}
!= system_lyxrc.font_sizes[FONT_SIZE_HUGE] ||
font_sizes[FONT_SIZE_HUGER]
!= system_lyxrc.font_sizes[FONT_SIZE_HUGER]) {
+ streamsize old_prec = os.precision();
os.setf(ios::fixed);
os.precision(2);
os << "\\screen_font_sizes"
<< ' ' << font_sizes[FONT_SIZE_HUGE]
<< ' ' << font_sizes[FONT_SIZE_HUGER]
<< '\n';
+ os.precision(old_prec);
+ os.unsetf(ios::fixed);
}
if (tag != RC_LAST)
break;
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_MOUSE_MIDDLEBUTTON_PASTE:
+ if (ignore_system_lyxrc ||
+ mouse_middlebutton_paste != system_lyxrc.mouse_middlebutton_paste) {
+ os << "\\mouse_middlebutton_paste "
+ << convert<string>(mouse_middlebutton_paste) << '\n';
+ }
+ if (tag != RC_LAST)
+ break;
case RC_COMPLETION_INLINE_DELAY:
if (ignore_system_lyxrc ||
completion_inline_delay != system_lyxrc.completion_inline_delay) {
}
if (tag != RC_LAST)
break;
-
+
case RC_NUMLASTFILES:
if (ignore_system_lyxrc ||
num_lastfiles != system_lyxrc.num_lastfiles) {
if (tag != RC_LAST)
break;
- case RC_RTL_SUPPORT:
- if (ignore_system_lyxrc ||
- rtl_support != system_lyxrc.rtl_support) {
- os << "\\rtl " << convert<string>(rtl_support) << '\n';
- }
- if (tag != RC_LAST)
- break;
case RC_VISUAL_CURSOR:
if (ignore_system_lyxrc ||
visual_cursor != system_lyxrc.visual_cursor) {
break;
}
case RC_DEFAULT_OTF_VIEW_FORMAT:
- if (ignore_system_lyxrc ||
- default_otf_view_format != system_lyxrc.default_otf_view_format) {
+ if ((ignore_system_lyxrc ||
+ default_otf_view_format != system_lyxrc.default_otf_view_format)
+ && !default_otf_view_format.empty()) {
os << "\\default_otf_view_format " << default_otf_view_format << '\n';
}
if (tag != RC_LAST)
for (Converters::const_iterator cit = theConverters().begin();
cit != theConverters().end(); ++cit) {
Converter const * converter =
- theSystemConverters().getConverter(cit->from,
- cit->to);
+ theSystemConverters().getConverter(cit->from(),
+ cit->to());
if (!converter ||
- converter->command != cit->command ||
- converter->flags != cit->flags)
- os << "\\converter \"" << cit->from << "\" \""
- << cit->to << "\" \""
- << escapeCommand(cit->command) << "\" \""
- << cit->flags << "\"\n";
+ converter->command() != cit->command() ||
+ converter->flags() != cit->flags())
+ os << "\\converter \"" << cit->from() << "\" \""
+ << cit->to() << "\" \""
+ << escapeCommand(cit->command()) << "\" \""
+ << cit->flags() << "\"\n";
}
// New/modifed converters
for (Converters::const_iterator cit = theSystemConverters().begin();
cit != theSystemConverters().end(); ++cit)
- if (!theConverters().getConverter(cit->from, cit->to))
- os << "\\converter \"" << cit->from
- << "\" \"" << cit->to << "\" \"\" \"\"\n";
+ if (!theConverters().getConverter(cit->from(), cit->to()))
+ os << "\\converter \"" << cit->from()
+ << "\" \"" << cit->to() << "\" \"\" \"\"\n";
if (tag != RC_LAST)
break;
case LyXRC::RC_ESC_CHARS:
case LyXRC::RC_EXAMPLEPATH:
case LyXRC::RC_FONT_ENCODING:
- case LyXRC::RC_FORCE_PAINT_SINGLE_CHAR:
case LyXRC::RC_FILEFORMAT:
case LyXRC::RC_GROUP_LAYOUTS:
case LyXRC::RC_HUNSPELLDIR_PATH:
case LyXRC::RC_MAKE_BACKUP:
case LyXRC::RC_MARK_FOREIGN_LANGUAGE:
case LyXRC::RC_MOUSE_WHEEL_SPEED:
+ case LyXRC::RC_MOUSE_MIDDLEBUTTON_PASTE:
case LyXRC::RC_NUMLASTFILES:
case LyXRC::RC_PARAGRAPH_MARKERS:
case LyXRC::RC_PATH_PREFIX:
case LyXRC::RC_PRINTTOPRINTER:
case LyXRC::RC_PRINT_ADAPTOUTPUT:
case LyXRC::RC_PRINT_COMMAND:
- case LyXRC::RC_RTL_SUPPORT:
case LyXRC::RC_SAVE_COMPRESSED:
case LyXRC::RC_SCREEN_DPI:
case LyXRC::RC_SCREEN_FONT_ROMAN:
str = _("The font encoding used for the LaTeX2e fontenc package. T1 is highly recommended for non-English languages.");
break;
- case RC_FORCE_PAINT_SINGLE_CHAR:
- str = _("Disable any kerning and ligatures for text drawing on screen.");
- break;
-
case RC_FILEFORMAT:
break;
break;
case RC_AUTOCORRECTION_MATH:
- str = _("Allow TeXMacs shorthand, like => converting to \Rightarrow.");
+ str = _("Allow TeXMacs shorthand, like => converting to \\Rightarrow.");
break;
case RC_NUMLASTFILES:
str = _("Your favorite print program, e.g. \"dvips\", \"dvilj4\".");
break;
- case RC_RTL_SUPPORT:
- str = _("Select to enable support of right-to-left languages (e.g. Hebrew, Arabic).");
- break;
-
case RC_VISUAL_CURSOR:
str = _("Select to have visual bidi cursor movement, unselect for logical movement.");
break;