#include "graphics/GraphicsTypes.h"
#include "support/convert.h"
+#include "support/environment.h"
#include "support/filetools.h"
#include "support/lstrings.h"
+#include "support/os.h"
#include "support/userinfo.h"
+namespace os = lyx::support::os;
+
using lyx::support::ascii_lowercase;
using lyx::support::bformat;
using lyx::support::ExpandPath;
-using lyx::support::GetEnv;
+using lyx::support::getEnv;
using lyx::support::LibFileSearch;
using lyx::support::token;
{ "\\spell_command", LyXRC::RC_SPELL_COMMAND },
{ "\\tempdir_path", LyXRC::RC_TEMPDIRPATH },
{ "\\template_path", LyXRC::RC_TEMPLATEPATH },
+ { "\\tex_allows_spaces", LyXRC::RC_TEX_ALLOWS_SPACES },
{ "\\ui_file", LyXRC::RC_UIFILE },
{ "\\use_alt_language", LyXRC::RC_USE_ALT_LANG },
{ "\\use_escape_chars", LyXRC::RC_USE_ESC_CHARS },
ui_file = "default";
// Get printer from the environment. If fail, use default "",
// assuming that everything is set up correctly.
- printer = GetEnv("PRINTER");
+ printer = getEnv("PRINTER");
print_adapt_output = false;
print_command = "dvips";
print_evenpage_flag = "-B";
default_language = "english";
show_banner = true;
cygwin_path_fix = false;
+ tex_allows_spaces = false;
date_insert_format = "%A, %e %B %Y";
cursor_follows_scrollbar = false;
dialogs_iconify_with_main = false;
}
}
break;
- case RC_BINDFILE: // RVDK_PATCH_5
+ case RC_BINDFILE:
if (lexrc.next()) {
- bind_file = lexrc.getString();
+ bind_file = os::internal_path(lexrc.getString());
}
break;
case RC_UIFILE:
if (lexrc.next()) {
- ui_file = lexrc.getString();
+ ui_file = os::internal_path(lexrc.getString());
}
break;
}
break;
- case RC_KBMAP:
- if (lexrc.next()) {
- use_kbmap = lexrc.getBool();
- }
- break;
-
case RC_CYGWIN_PATH_FIX:
if (lexrc.next()) {
cygwin_path_fix = lexrc.getBool();
}
break;
+ case RC_TEX_ALLOWS_SPACES:
+ if (lexrc.next()) {
+ tex_allows_spaces = lexrc.getBool();
+ }
+ break;
+
+ case RC_KBMAP:
+ if (lexrc.next()) {
+ use_kbmap = lexrc.getBool();
+ }
+ break;
+
case RC_KBMAP_PRIMARY:
if (lexrc.next()) {
- string const kmap(lexrc.getString());
+ string const kmap(os::internal_path(lexrc.getString()));
if (kmap.empty()) {
// nothing
} else if (!LibFileSearch("kbd", kmap,
case RC_KBMAP_SECONDARY:
if (lexrc.next()) {
- string const kmap(lexrc.getString());
+ string const kmap(os::internal_path(lexrc.getString()));
if (kmap.empty()) {
// nothing
} else if (!LibFileSearch("kbd", kmap,
case RC_PRINTTOFILE:
if (lexrc.next()) {
- print_to_file = lexrc.getString();
+ print_to_file = os::internal_path(lexrc.getString());
}
break;
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;
}
break;
case RC_DOCUMENTPATH:
if (lexrc.next()) {
- document_path = ExpandPath(lexrc.getString());
+ document_path = os::internal_path(lexrc.getString());
+ document_path = ExpandPath(document_path);
}
break;
case RC_TEMPLATEPATH:
if (lexrc.next()) {
- template_path = ExpandPath(lexrc.getString());
+ template_path = os::internal_path(lexrc.getString());
+ template_path = ExpandPath(template_path);
}
break;
case RC_TEMPDIRPATH:
if (lexrc.next()) {
- tempdir_path = ExpandPath(lexrc.getString());
+ tempdir_path = os::internal_path(lexrc.getString());
+ tempdir_path = ExpandPath(tempdir_path);
}
break;
case RC_LASTFILES:
if (lexrc.next()) {
- lastfiles = ExpandPath(lexrc.getString());
+ lastfiles = ExpandPath(os::internal_path(lexrc.getString()));
}
break;
case RC_SERVERPIPE:
if (lexrc.next()) {
- lyxpipes = ExpandPath(lexrc.getString());
+ lyxpipes = os::internal_path(lexrc.getString());
+ lyxpipes = ExpandPath(lyxpipes);
}
break;
break;
case RC_PERS_DICT:
if (lexrc.next()) {
- isp_pers_dict = lexrc.getString();
+ isp_pers_dict = os::internal_path(lexrc.getString());
}
break;
case RC_ESC_CHARS:
break;
case RC_BACKUPDIR_PATH:
if (lexrc.next()) {
- backupdir_path = ExpandPath(lexrc.getString());
+ backupdir_path = os::internal_path(lexrc.getString());
+ backupdir_path = ExpandPath(backupdir_path);
}
break;
case RC_DATE_INSERT_FORMAT:
case RC_BINDFILE:
if (ignore_system_lyxrc ||
bind_file != system_lyxrc.bind_file) {
- os << "\\bind_file " << bind_file << "\n";
+ string const path = os::external_path(bind_file);
+ os << "\\bind_file \"" << path << "\"\n";
}
//
// Misc Section
case RC_UIFILE:
if (ignore_system_lyxrc ||
ui_file != system_lyxrc.ui_file) {
- os << "\\ui_file \"" << ui_file << "\"\n";
+ string const path = os::external_path(ui_file);
+ os << "\\ui_file \"" << path << "\"\n";
}
case RC_AUTOREGIONDELETE:
if (ignore_system_lyxrc ||
switch (default_papersize) {
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_DEFAULT:
+ case PAPER_CUSTOM:
+ case PAPER_B3:
+ case PAPER_B4: break;
}
os << "\"\n";
}
index_command != system_lyxrc.index_command) {
os << "\\index_command \"" << index_command << "\"\n";
}
- case RC_KBMAP:
- if (ignore_system_lyxrc ||
- use_kbmap != system_lyxrc.use_kbmap) {
- os << "\\kbmap " << convert<string>(use_kbmap) << '\n';
- }
-
case RC_CYGWIN_PATH_FIX:
if (ignore_system_lyxrc ||
cygwin_path_fix != system_lyxrc.cygwin_path_fix) {
os << "\\cygwin_path_fix_needed "
<< convert<string>(cygwin_path_fix) << '\n';
}
+ case RC_TEX_ALLOWS_SPACES:
+ 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) {
+ os << "\\kbmap " << convert<string>(use_kbmap) << '\n';
+ }
case RC_KBMAP_PRIMARY:
if (ignore_system_lyxrc ||
primary_kbmap != system_lyxrc.primary_kbmap) {
- os << "\\kbmap_primary \"" << primary_kbmap << "\"\n";
+ string const path = os::external_path(primary_kbmap);
+ os << "\\kbmap_primary \"" << path << "\"\n";
}
case RC_KBMAP_SECONDARY:
if (ignore_system_lyxrc ||
secondary_kbmap != system_lyxrc.secondary_kbmap) {
- os << "\\kbmap_secondary \"" << secondary_kbmap
- << "\"\n";
+ string const path = os::external_path(secondary_kbmap);
+ os << "\\kbmap_secondary \"" << path << "\"\n";
}
case RC_SERVERPIPE:
if (ignore_system_lyxrc ||
lyxpipes != system_lyxrc.lyxpipes) {
- os << "\\serverpipe \"" << lyxpipes << "\"\n";
+ string const path = os::external_path(lyxpipes);
+ os << "\\serverpipe \"" << path << "\"\n";
}
case RC_DATE_INSERT_FORMAT:
if (ignore_system_lyxrc ||
case RC_PRINTTOFILE:
if (ignore_system_lyxrc ||
print_to_file != system_lyxrc.print_to_file) {
- os << "\\print_to_file \"" << print_to_file << "\"\n";
+ string const path = os::external_path(print_to_file);
+ os << "\\print_to_file \"" << path << "\"\n";
}
case RC_PRINTFILEEXTENSION:
if (ignore_system_lyxrc ||
case RC_DOCUMENTPATH:
if (ignore_system_lyxrc ||
document_path != system_lyxrc.document_path) {
- os << "\\document_path \"" << document_path << "\"\n";
+ string const path = os::external_path(document_path);
+ os << "\\document_path \"" << path << "\"\n";
}
case RC_LASTFILES:
if (ignore_system_lyxrc ||
lastfiles != system_lyxrc.lastfiles) {
- os << "\\lastfiles \"" << lastfiles << "\"\n";
+ string const path = os::external_path(lastfiles);
+ os << "\\lastfiles \"" << path << "\"\n";
}
case RC_NUMLASTFILES:
if (ignore_system_lyxrc ||
case RC_TEMPLATEPATH:
if (ignore_system_lyxrc ||
template_path != system_lyxrc.template_path) {
- os << "\\template_path \"" << template_path << "\"\n";
+ string const path = os::external_path(template_path);
+ os << "\\template_path \"" << path << "\"\n";
}
case RC_TEMPDIRPATH:
if (ignore_system_lyxrc ||
tempdir_path != system_lyxrc.tempdir_path) {
- os << "\\tempdir_path \"" << tempdir_path << "\"\n";
+ string const path = os::external_path(tempdir_path);
+ os << "\\tempdir_path \"" << path << "\"\n";
}
case RC_USETEMPDIR:
// Ignore it
case RC_BACKUPDIR_PATH:
if (ignore_system_lyxrc ||
backupdir_path != system_lyxrc.backupdir_path) {
- os << "\\backupdir_path \"" << backupdir_path << "\"\n";
+ string const path = os::external_path(backupdir_path);
+ os << "\\backupdir_path \"" << path << "\"\n";
}
os << "\n#\n"
}
case RC_PERS_DICT:
if (isp_pers_dict != system_lyxrc.isp_pers_dict) {
- os << "\\personal_dictionary \"" << isp_pers_dict
- << "\"\n";
+ string const path = os::external_path(isp_pers_dict);
+ os << "\\personal_dictionary \"" << path << "\"\n";
}
case RC_USE_INP_ENC:
if (ignore_system_lyxrc ||
break;
case RC_ASCIIROFF_COMMAND:
- str = _("Use to define an external program to render tables in the ASCII output. E.g. \"groff -t -Tlatin1 $$FName\" where $$FName is the input file. If \"none\" is specified, an internal routine is used.");
+ 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 \"none\" is specified, an internal routine is used.");
break;
case RC_ASCII_LINELEN:
- str = _("This is the maximum line length of an exported ASCII file (LaTeX, SGML or plain text).");
+ str = _("This is the maximum line length of an exported text file (LaTeX, SGML or plain text).");
break;
case RC_AUTOREGIONDELETE:
break;
case RC_PATH_PREFIX:
+ str = _("Specify those directories which should be "
+ "prepended to the PATH environment variable. "
+ "Use the OS native format.");
break;
case RC_PERS_DICT:
break;
case RC_SPELL_COMMAND:
- str = _("What command runs the spell checker?");
+ str = _("What command runs the spellchecker?");
break;
case RC_TEMPDIRPATH:
str = _("The path that LyX will set when offering to choose a template. An empty value selects the directory LyX was started from.");
break;
+ case RC_TEX_ALLOWS_SPACES:
+ 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;
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: