X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyxrc.h;h=5b0882b51e18d26016ce673d7c6889bdca03ba6a;hb=c90c5e6386ce69c34c99b3594d6fa452e6a13161;hp=77a292e95365f2292561c1845ebd55ccacd2d2d8;hpb=f4d7b803f354552a8f9c8aaf28086c2e3b7d7d90;p=lyx.git diff --git a/src/lyxrc.h b/src/lyxrc.h index 77a292e953..5b0882b51e 100644 --- a/src/lyxrc.h +++ b/src/lyxrc.h @@ -17,11 +17,110 @@ #endif #include "bufferparams.h" -#include "support/utility.hpp" +#include /// This contains the runtime configuration of LyX -class LyXRC : public noncopyable { +class LyXRC //: public noncopyable { +// after 1.1.6 I will use a LyXRCStruct here and then this can be made +// noncopyable again. For now I want to minimise changes. ARRae 20001010 +{ public: +enum LyXRCTags { + RC_FONT_ENCODING = 1, + RC_PRINTER, + RC_PRINT_COMMAND, + RC_PRINTEVENPAGEFLAG, + RC_PRINTODDPAGEFLAG, + RC_PRINTPAGERANGEFLAG, + RC_PRINTCOPIESFLAG, + RC_PRINTCOLLCOPIESFLAG, + RC_PRINTREVERSEFLAG, + RC_PRINTLANDSCAPEFLAG, + RC_PRINTTOPRINTER, + RC_PRINT_ADAPTOUTPUT, + RC_PRINTTOFILE, + RC_PRINTFILEEXTENSION, + RC_PRINTEXSTRAOPTIONS, + RC_PRINTSPOOL_COMMAND, + RC_PRINTSPOOL_PRINTERPREFIX, + RC_PRINTPAPERFLAG, + RC_PRINTPAPERDIMENSIONFLAG, + RC_CUSTOM_EXPORT_COMMAND, + RC_CUSTOM_EXPORT_FORMAT, + RC_SCREEN_DPI, + RC_SCREEN_ZOOM, + RC_SCREEN_FONT_SIZES, + RC_SCREEN_FONT_ROMAN, + RC_SCREEN_FONT_SANS, + RC_SCREEN_FONT_TYPEWRITER, + RC_SCREEN_FONT_MENU, + RC_SCREEN_FONT_POPUP, + RC_SCREEN_FONT_ENCODING, + RC_SCREEN_FONT_ENCODING_MENU, + RC_SET_COLOR, + RC_AUTOSAVE, + RC_DOCUMENTPATH, + RC_TEMPLATEPATH, + RC_TEMPDIRPATH, + RC_USETEMPDIR, + RC_LASTFILES, + RC_AUTOREGIONDELETE, + RC_BIND, + RC_OVERRIDE_X_DEADKEYS, + RC_SERVERPIPE, + RC_INPUT, + RC_BINDFILE, + RC_UIFILE, + RC_KBMAP, + RC_KBMAP_PRIMARY, + RC_KBMAP_SECONDARY, + RC_ASCIIROFF_COMMAND, + RC_ASCII_LINELEN, + RC_NUMLASTFILES, + RC_CHECKLASTFILES, + RC_VIEWDVI_PAPEROPTION, + RC_DEFAULT_PAPERSIZE, + RC_PS_COMMAND, + RC_ACCEPT_COMPOUND, + RC_SPELL_COMMAND, + RC_USE_INP_ENC, + RC_USE_ALT_LANG, + RC_USE_PERS_DICT, + RC_USE_ESC_CHARS, + RC_SCREEN_FONT_SCALABLE, + RC_ALT_LANG, + RC_PERS_DICT, + RC_ESC_CHARS, + RC_CHKTEX_COMMAND, + RC_CURSOR_FOLLOWS_SCROLLBAR, + RC_EXIT_CONFIRMATION, + RC_DISPLAY_SHORTCUTS, + RC_MAKE_BACKUP, + RC_BACKUPDIR_PATH, + RC_RTL_SUPPORT, + RC_AUTO_NUMBER, + RC_MARK_FOREIGN_LANGUAGE, + RC_LANGUAGE_PACKAGE, + RC_LANGUAGE_AUTO_BEGIN, + RC_LANGUAGE_AUTO_END, + RC_LANGUAGE_COMMAND_BEGIN, + RC_LANGUAGE_COMMAND_END, + RC_LANGUAGE_COMMAND_LOCAL, + RC_LANGUAGE_GLOBAL_OPTIONS, + RC_LANGUAGE_USE_BABEL, + RC_DATE_INSERT_FORMAT, + RC_SHOW_BANNER, + RC_WHEEL_JUMP, + RC_CONVERTER, + RC_VIEWER, + RC_FORMAT, + RC_NEW_ASK_FILENAME, + RC_DEFAULT_LANGUAGE, + RC_LABEL_INIT_LENGTH, + RC_LAST +}; + + /// LyXRC(); /// @@ -29,15 +128,15 @@ public: /// int read (string const & filename); /// + void readBindFileIfNeeded(); + /// void write(string const & filename) const; /// void print() const; /// void output(std::ostream & os) const; - /// Is a bind file already (or currently) read? - bool hasBindFile; /// - int ReadBindFile(string const & name = "cua"); + static string const getDescription(LyXRCTags); /// string bind_file; /// @@ -84,44 +183,14 @@ public: string custom_export_format; /// bool pdf_mode; - /// program for running latex - string latex_command; - /// - string pdflatex_command; - /// - string pdf_to_ps_command; - /// - string dvi_to_ps_command; - /// program for performing literate programming - string literate_command; - /// - string literate_extension; - /// - string literate_error_filter; - /// program for compiling - string build_command; - /// - string build_error_filter; - /// program for running relyx - string relyx_command; /// postscript interpreter (in general "gs", if it is installed) string ps_command; - /// program for viewing postscript output (default "ghostview -swap") - string view_ps_command; - /// program for viewing postscript pictures (default "ghostview") - string view_pspic_command; - /// program for viewing dvi output (default "xdvi") - string view_dvi_command; /// option for telling the dvi viewer about the paper size string view_dvi_paper_option; - /// program for viewing pdf output (default "xpdf") - string view_pdf_command; /// default paper size for local xdvi/dvips/ghostview/whatever BufferParams::PAPER_SIZE default_papersize; /// command to run chktex incl. options string chktex_command; - /// command to run an html converter incl. options - string html_command; /// string document_path; /// @@ -173,8 +242,12 @@ public: /// ISO_10646_1, /// + ISO_8859_1, + /// ISO_8859_6_8, /// + ISO_8859_9, + /// OTHER_ENCODING }; /// @@ -186,12 +259,6 @@ public: /// unsigned int autosave; /// - string fax_command; - /// - string phone_book; - /// - string fax_program; - /// string ascii_roff_command; /// unsigned int ascii_linelen; @@ -238,6 +305,12 @@ public: /// string language_command_end; /// + string language_command_local; + /// + bool language_global_options; + /// + bool language_use_babel; + /// bool rtl_support; /// bool auto_number; @@ -248,23 +321,22 @@ public: /// Do we have to use a GUI? bool use_gui; /// - string linuxdoc_to_lyx_command; - /// - string linuxdoc_to_html_command; - /// - string linuxdoc_to_latex_command; + bool new_ask_filename; /// - string docbook_to_dvi_command; + string default_language; /// - string docbook_to_html_command; + bool cursor_follows_scrollbar; /// - string docbook_to_pdf_command; + int label_init_length; +private: + /// Is a bind file already (or currently) read? + bool hasBindFile; /// - bool new_ask_filename; + int ReadBindFile(string const & name); }; /// extern LyXRC lyxrc; /// -//extern LyXRC system_lyxrc; +extern LyXRC system_lyxrc; #endif