#include "converter.h"
#include "format.h"
#include "gettext.h"
-#include "lastfiles.h"
+#include "session.h"
#include "LColor.h"
#include "lyxlex.h"
#include "lyxfont.h"
using lyx::support::ascii_lowercase;
using lyx::support::bformat;
-using lyx::support::ExpandPath;
+using lyx::support::expandPath;
using lyx::support::getEnv;
-using lyx::support::LibFileSearch;
+using lyx::support::libFileSearch;
using lyx::support::token;
using std::cout;
{ "\\language_global_options", LyXRC::RC_LANGUAGE_GLOBAL_OPTIONS },
{ "\\language_package", LyXRC::RC_LANGUAGE_PACKAGE },
{ "\\language_use_babel", LyXRC::RC_LANGUAGE_USE_BABEL },
- { "\\lastfiles", LyXRC::RC_LASTFILES },
+ { "\\load_session", LyXRC::RC_LOADSESSION },
{ "\\make_backup", LyXRC::RC_MAKE_BACKUP },
{ "\\mark_foreign_language", LyXRC::RC_MARK_FOREIGN_LANGUAGE },
{ "\\num_lastfiles", LyXRC::RC_NUMLASTFILES },
{ "\\screen_font_sizes", LyXRC::RC_SCREEN_FONT_SIZES },
{ "\\screen_font_typewriter", LyXRC::RC_SCREEN_FONT_TYPEWRITER },
{ "\\screen_font_typewriter_foundry", LyXRC::RC_SCREEN_FONT_TYPEWRITER_FOUNDRY },
+ { "\\screen_geometry_height", LyXRC::RC_SCREEN_GEOMETRY_HEIGHT },
+ { "\\screen_geometry_width", LyXRC::RC_SCREEN_GEOMETRY_WIDTH },
+ { "\\screen_geometry_xysaved", LyXRC::RC_SCREEN_GEOMETRY_XYSAVED },
{ "\\screen_zoom", LyXRC::RC_SCREEN_ZOOM },
{ "\\serverpipe", LyXRC::RC_SERVERPIPE },
{ "\\set_color", LyXRC::RC_SET_COLOR },
{ "\\use_alt_language", LyXRC::RC_USE_ALT_LANG },
{ "\\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 },
// compatibility with versions older than 1.4.0 only
{ "\\use_pspell", LyXRC::RC_USE_SPELL_LIB },
print_paper_flag = "-t";
print_paper_dimension_flag = "-T";
document_path.erase();
- tempdir_path = "/tmp";
view_dvi_paper_option.erase();
- default_papersize = PAPER_USLETTER;
+ default_papersize = PAPER_DEFAULT;
custom_export_format = "ps";
chktex_command = "chktex -n1 -n3 -n6 -n9 -n22 -n25 -n30 -n38";
bibtex_command = "bibtex";
dpi = 75;
// Because a screen typically is wider than a piece of paper:
zoom = 150;
+ geometry_width = 0;
+ geometry_height = 0;
+ geometry_xysaved = true;
wheel_jump = 5;
// Default LaTeX font size:
font_sizes[LyXFont::SIZE_TINY] = "5.0";
ascii_linelen = 65;
num_lastfiles = maxlastfiles;
check_lastfiles = true;
+ use_lastfilepos = true;
+ load_session = true;
make_backup = true;
backupdir_path.erase();
display_graphics = lyx::graphics::ColorDisplay;
case RC_INPUT: // Include file
if (lexrc.next()) {
string const tmp =
- LibFileSearch(string(),
+ libFileSearch(string(),
lexrc.getString());
if (read(tmp)) {
lexrc.printError("Error reading "
case RC_CYGWIN_PATH_FIX:
if (lexrc.next()) {
cygwin_path_fix = lexrc.getBool();
- }
- break;
+ }
+ break;
case RC_TEX_ALLOWS_SPACES:
if (lexrc.next()) {
tex_allows_spaces = lexrc.getBool();
- }
- break;
+ }
+ break;
case RC_KBMAP:
if (lexrc.next()) {
string const kmap(os::internal_path(lexrc.getString()));
if (kmap.empty()) {
// nothing
- } else if (!LibFileSearch("kbd", kmap,
+ } else if (!libFileSearch("kbd", kmap,
"kmap").empty()) {
primary_kbmap = kmap;
} else {
string const kmap(os::internal_path(lexrc.getString()));
if (kmap.empty()) {
// nothing
- } else if (!LibFileSearch("kbd", kmap,
+ } else if (!libFileSearch("kbd", kmap,
"kmap").empty()) {
secondary_kbmap = kmap;
} else {
PAPER_USLETTER;
else if (size == "legal")
default_papersize =
- PAPER_LEGALPAPER;
+ PAPER_USLEGAL;
else if (size == "executive")
default_papersize =
- PAPER_EXECUTIVEPAPER;
+ PAPER_USEXECUTIVE;
else if (size == "a3")
default_papersize =
- PAPER_A3PAPER;
+ PAPER_A3;
else if (size == "a4")
default_papersize =
- PAPER_A4PAPER;
+ PAPER_A4;
else if (size == "a5")
default_papersize =
- PAPER_A5PAPER;
+ PAPER_A5;
else if (size == "b5")
default_papersize =
- PAPER_B5PAPER;
+ PAPER_B5;
+ else if (size == "default")
+ default_papersize =
+ PAPER_DEFAULT;
}
break;
}
break;
+ case RC_SCREEN_GEOMETRY_HEIGHT:
+ if (lexrc.next()) {
+ geometry_height = lexrc.getInteger();
+ }
+ break;
+
+ case RC_SCREEN_GEOMETRY_WIDTH:
+ if (lexrc.next()) {
+ geometry_width = lexrc.getInteger();
+ }
+ break;
+
+ case RC_SCREEN_GEOMETRY_XYSAVED:
+ if (lexrc.next()) {
+ geometry_xysaved = lexrc.getBool();
+ }
+ break;
+
case RC_WHEEL_JUMP:
if (lexrc.next()) {
wheel_jump = lexrc.getInteger();
case RC_DOCUMENTPATH:
if (lexrc.next()) {
document_path = os::internal_path(lexrc.getString());
- document_path = ExpandPath(document_path);
+ document_path = expandPath(document_path);
}
break;
case RC_TEMPLATEPATH:
if (lexrc.next()) {
template_path = os::internal_path(lexrc.getString());
- template_path = ExpandPath(template_path);
+ template_path = expandPath(template_path);
}
break;
case RC_TEMPDIRPATH:
if (lexrc.next()) {
tempdir_path = os::internal_path(lexrc.getString());
- tempdir_path = ExpandPath(tempdir_path);
+ tempdir_path = expandPath(tempdir_path);
}
break;
}
break;
- case RC_LASTFILES:
+ case RC_USELASTFILEPOS:
+ if (lexrc.next()) {
+ use_lastfilepos = lexrc.getBool();
+ }
+ break;
+
+ case RC_LOADSESSION:
if (lexrc.next()) {
- lastfiles = ExpandPath(os::internal_path(lexrc.getString()));
+ load_session = lexrc.getBool();
}
break;
case RC_SERVERPIPE:
if (lexrc.next()) {
lyxpipes = os::internal_path(lexrc.getString());
- lyxpipes = ExpandPath(lyxpipes);
+ lyxpipes = expandPath(lyxpipes);
}
break;
case RC_BACKUPDIR_PATH:
if (lexrc.next()) {
backupdir_path = os::internal_path(lexrc.getString());
- backupdir_path = ExpandPath(backupdir_path);
+ backupdir_path = expandPath(backupdir_path);
}
break;
case RC_DATE_INSERT_FORMAT:
os << "# The default papersize to use.\n"
<< "\\default_papersize \"";
switch (default_papersize) {
+ case PAPER_DEFAULT:
+ os << "default"; break;
case PAPER_USLETTER:
os << "usletter"; break;
- case PAPER_LEGALPAPER:
+ case PAPER_USLEGAL:
os << "legal"; break;
- case PAPER_EXECUTIVEPAPER:
+ case PAPER_USEXECUTIVE:
os << "executive"; break;
- case PAPER_A3PAPER:
+ case PAPER_A3:
os << "a3"; break;
- case PAPER_A4PAPER:
+ case PAPER_A4:
os << "a4"; break;
- case PAPER_A5PAPER:
+ case PAPER_A5:
os << "a5"; break;
- case PAPER_B5PAPER:
+ case PAPER_B5:
os << "b5"; break;
- case PAPER_DEFAULT: break;
+ case PAPER_CUSTOM:
+ case PAPER_B3:
+ case PAPER_B4: break;
}
os << "\"\n";
}
if (tex_allows_spaces != system_lyxrc.tex_allows_spaces) {
os << "\\tex_allows_spaces "
<< convert<string>(tex_allows_spaces) << '\n';
- }
+ }
case RC_KBMAP:
if (ignore_system_lyxrc ||
use_kbmap != system_lyxrc.use_kbmap) {
zoom != system_lyxrc.zoom) {
os << "\\screen_zoom " << zoom << '\n';
}
+ case RC_SCREEN_GEOMETRY_HEIGHT:
+ if (ignore_system_lyxrc ||
+ geometry_height != system_lyxrc.geometry_height) {
+ os << "\\screen_geometry_height " << geometry_height
+ << '\n';
+ }
+ case RC_SCREEN_GEOMETRY_WIDTH:
+ if (ignore_system_lyxrc ||
+ geometry_width != system_lyxrc.geometry_width) {
+ os << "\\screen_geometry_width " << geometry_width
+ << '\n';
+ }
+ case RC_SCREEN_GEOMETRY_XYSAVED:
+ if (ignore_system_lyxrc ||
+ geometry_xysaved != system_lyxrc.geometry_xysaved) {
+ os << "\\screen_geometry_xysaved " << convert<string>(geometry_xysaved)
+ << '\n';
+ }
case RC_WHEEL_JUMP:
if (ignore_system_lyxrc ||
wheel_jump != system_lyxrc.wheel_jump) {
string const path = os::external_path(document_path);
os << "\\document_path \"" << path << "\"\n";
}
- case RC_LASTFILES:
+ case RC_USELASTFILEPOS:
if (ignore_system_lyxrc ||
- lastfiles != system_lyxrc.lastfiles) {
- string const path = os::external_path(lastfiles);
- os << "\\lastfiles \"" << path << "\"\n";
+ use_lastfilepos != system_lyxrc.use_lastfilepos) {
+ os << "\\use_session " << convert<string>(use_lastfilepos)
+ << '\n';
+ }
+ case RC_LOADSESSION:
+ if (ignore_system_lyxrc ||
+ load_session != system_lyxrc.load_session) {
+ os << "\\load_session " << convert<string>(load_session)
+ << "\n";
}
case RC_NUMLASTFILES:
if (ignore_system_lyxrc ||
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_LASTFILES:
- str = _("The file where the last-files information should be stored.");
+ case RC_USELASTFILEPOS:
+ str = _("De-select if you do not want LyX to scroll to saved position.");
+ break;
+
+ case RC_LOADSESSION:
+ str = _("De-select to prevent loading files opened from the last lyx session.");
break;
case RC_MAKE_BACKUP:
str = _("The zoom percentage for screen fonts. A setting of 100% will make the fonts roughly the same size as on paper.");
break;
+ case RC_SCREEN_GEOMETRY_HEIGHT:
+ case RC_SCREEN_GEOMETRY_WIDTH:
+ str = _("Specify geometry of the main view in width x height (values from last session will not be used if non-zero values are specified).");
+ break;
+
+ case RC_SCREEN_GEOMETRY_XYSAVED:
+ str = _("Allow session manager to save and restore windows position.");
+ break;
+
case RC_SERVERPIPE:
str = _("This starts the lyxserver. The pipes get an additional extension \".in\" and \".out\". Only for advanced users.");
break;
break;
case RC_SPELL_COMMAND:
- str = _("What command runs the spell checker?");
+ str = _("What command runs the spellchecker?");
break;
case RC_TEMPDIRPATH:
break;
case RC_USE_INP_ENC:
- str = _("Specify whether to pass the -T input encoding option to ispell. Enable this if you can't spellcheck words with international letters in them. This may not work with all dictionaries.");
+ str = _("Specify whether to pass the -T input encoding option to ispell. Enable this if you cannot check the spelling of words containing accented letters. This may not work with all dictionaries.");
break;
case RC_USE_SPELL_LIB: