encodings in the preferences dialog
* src/LaTeXFeatures.C: special treatment for tis620-0 encoding
* src/bufferparams.C: ditto
* src/output_latex.C: ditto
* src/encoding.[Ch]: Add the possibility to iterate over all encodings
* src/paragraph_pimpl.C: Add latin10 and cp858 to Euro treatment
* src/buffer.C: Update format number
* src/frontends/qt4/QDocumentDialog.C: Don't hardcode available
encodings
* lib/lyx2lyx/LyX.py,
lib/lyx2lyx/lyx_1_5.py: implement conversion from 256 to 255
* lib/encodings: Add some encodings, fix all "unknown" entries
* development/FORMAT: Document file format change
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16418 a592a061-630c-0410-9148-cb99ea01b6c8
ControlMath.C: cleanup order of symbols in math panel
iconpalette.C: 6 cols since many symbols come in pairs
Rrightarrow.xpm: was missing
searrow.xpm: was north east
swarrow.xpm: was north west
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16316 a592a061-630c-0410-9148-cb99ea01b6c8
change default for latin1-languages to latin9 (bug 845)
* src/paragraph_pimpl.C:
add support for the subset of symbols that is only covered by
latin1 (not latin9) to make the above switch painless.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16239 a592a061-630c-0410-9148-cb99ea01b6c8
* lib/chkconfig.ltx:
check for the textcomp package
* lib/doc/LaTeXConfig.lyx.in:
document textcomp
* src/LaTeXFeatures.C (simplefeatures):
add textcomp
* src/paragraph_pimpl.C (simpleTeXSpecialChar):
support the Euro sign (via textcomp command)
* src/paragraph_pimpl.C (validate):
require textcomp if we have a Euro symbol
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16193 a592a061-630c-0410-9148-cb99ea01b6c8
"Formatting" as suggested by John Levon; add shortcuts
for clear (double) page; add separator between line
break commands and page break commands
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@16040 a592a061-630c-0410-9148-cb99ea01b6c8
codepoint > 255.
I decided that this is no file format change: We already had the change to
format 249 that allowed unicode in .lyx files. The output to .tex of
non-ascii characters is now different than before (even for those that were
supported previously, e.g. german umlauts in latin1), but this is only
relevant if people referenced a label in ERT. Since we cannot detect this
anyway we don't need a file format change.
* src/support/lstrings.C
(escape): Extend the escaping algorithm from 8 bit to 24 bit.
* src/support/lstrings.h
(escape): Update comment
* lib/lyx2lyx/lyx_1_4.py
(lyx_support_escape): Update comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15883 a592a061-630c-0410-9148-cb99ea01b6c8
- capitalize word in menu entries
- remove obsolete comments
- change "Notation" to "Glossary"
- move "Date" to the end of the "insert" menu
- add shortcuts, where possible
- change "Next Reference" to "Next Cross-Reference"
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15790 a592a061-630c-0410-9148-cb99ea01b6c8
- src/frontends/Toolbars.h: control displaying of CT toolbar with a parameter
- src/frontends/Toolbars.C: control displaying of CT toolbar with a parameter
- src/frontends/LyXView.C : show CT toolbar
- src/ToolbarBackend.C : add CT toolbar to default.ui as REVIEW
- lib/ui/default.ui : add CT toolbar to default.ui
- src/ToolbarBackend.h : add CT toolbar type REVIEW
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15598 a592a061-630c-0410-9148-cb99ea01b6c8
* src/encoding.h
(encoding_table): remove, this is no longer needed with unicode
(iconvName_): new member: name of the encoding in iconv syntax
* src/exporter.C
(Exporter::Export): Use return value of Buffer::makeLaTeXFile
* src/buffer.[Ch]
(Buffer::makeLaTeXFile): return whether the file has been created
successfully
* src/buffer.C
(Buffer::makeLaTeXFile): Use a docstream that converts to the correct
encoding
Display an error dialog is something went wrong
* src/bufferparams.C
(BufferParams::writeLaTeX): Undo the utf8 inputenc hack
* src/frontends/qt4/QDocumentDialog.C: Add some FIXMEs
* src/support/unicode.[Ch]
(eightbit_to_ucs4): New conversion function
(ucs4_to_eightbit): New conversion function
* src/support/docstream.[Ch]
(utf8_codecvt_facet_exception): Move to header and rename to
iconv_codecvt_facet_exception
(odocfstream): Take the encoding as argument
* src/support/docstream.C
(utf8_codecvt_facet): Generalize to other encodings than utf8 and
rename to iconv_codecvt_facet
* src/encoding.C: Remove obsolete tables
* src/output_latex.C
(TeXOnePar): Convert the paragraph to different encoding if needed
* lib/encodings: Remove obsolete tables
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15564 a592a061-630c-0410-9148-cb99ea01b6c8
Now we can parse all commands that could be parsed in the old
InsetCommandParams
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15551 a592a061-630c-0410-9148-cb99ea01b6c8
* LyXFunc:
- dispatch(): transfer assertion on lyx_view_ to each LFUN on a case by case basis.
- dispatch(): new LFUN_WINDOW_CLOSE
- getStatus(): special treatment for LFUN_LYX_QUIT
* LyX:
- views_, addLyXView(): deleted
- quit(): call saveGeometry() on each LyXView before exiting.
* GuiApplication:
- is now a QObject.
- quitLyX(): new Qt slot for lastWindowClosed signal.
* Gui.h:
- destroyView(), destroyWorkArea(): deleted
- viewIds(): new method
* GuiImplementation:
- implement above changes.
- GuiImplementation is now a QObject
- cleanupViews(): new private slot.
- buildViewIds(): new helper method
- views_ and work_areas_ are now maps of raw pointers instead of schared_ptr.
* LyXView
- now stores its id.
- dispatch(): special treatment for LFUN_WINDOW_CLOSE.
- workAreaIds(): new method.
- close(): new pure virtual method.
- saveGeometry(): new pure virtual method.
* GuiView:
- implements above changes.
- GuiView(): set WA_DeleteOnClose and Qt::WA_QuitOnClose to let Qt manage the destruction on close().
- closeEvent(): session stuff transfered to saveGeometry()
* WorkArea
- now store its id.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15514 a592a061-630c-0410-9148-cb99ea01b6c8
* src/insets/insetcommandparams.[Ch]:
(operator[]): New, access a parameter
(clear): New, clear all parameters
(info_): New, stire info about this command
(cmdname): Rename to name_
(contents, options, sec_options): Replace with params_. Parameters
are now stored as docstring.
(findInfo): New factor for command info for all commands
(read, write): Use new syntax
(parameter set and get methods): reimplemenmt for new parameter storage
* src/insets/insetcommand.h
(getParam): New, get a parameter
(setParam): New, set a parameter
(parameter set and get methods): Adjust to InsetCommandParams changes
* src/insets/insetbibitem.[Ch]
(write): Remove, not needed anymore
(directWrite): ditto
* src/insets/insetbibitem.C
(InsetBibitem::read): Use InsetCommand::read
* src/insets/insetref.C
(InsetRef::latex): Use new InsetCommandParams interface
* src/mathed/InsetMathHull.C
(InsetMathHull::doDispatch): ditto
* src/text3.C
(LyXText::dispatch): ditto
* src/factory.C
(createInset): Create InsetCommandParams with command name
(readInset): ditto
(readInset): Remove error message for bibitem, since bibitem is
now a normal command inset
* src/buffer.C: Bump file format number
* src/frontends/controllers/ControlCommand.[Ch]
(ControlCommand): take an additional command name parameter
* src/text.C
(readParToken): Remove code for \bibitem
* lib/lyx2lyx/LyX.py: Bump latest file format number
* lib/lyx2lyx/lyx_1_5.py
(convert_bibitem, convert_commandparams): new, convert to new format
(revert_commandparams): new, convert to old format
* development/FORMAT: document new format
* many other files: Adjust to the changes above
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15357 a592a061-630c-0410-9148-cb99ea01b6c8
* src/buffer:
file format incrementation to 251
* src/insets/insetcharstyle.[Ch]:
- make show_label a param and save its state
- let all-insets-toggle togle the label in charstyles
* development/FORMAT:
document file format change
* lib/lyx2lyx/LyX.py:
add new file format
* lib/lyx2lyx/lyx_1_5.py:
remove char style label param on reversion to 250.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15345 a592a061-630c-0410-9148-cb99ea01b6c8
* lib/ui/stdmenus.ui: move math text styles from
menu "insert" to menu "edit"
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15246 a592a061-630c-0410-9148-cb99ea01b6c8
* src/mathed/InsetMathSplit.C
(InsetMathSplit::validate): Only require amsmath for AMS stuff
* src/mathed/MathFactory.C
(createInsetMath): create InsetMathSplit if the latexkey is "split"
* src/mathed/MathParser.C
(Parser::parse1): remove "gathered" and "aligned", since these are
now handled via lib/symbols
(Parser::parse1): create InsetMathSplit if the latexkey is "split"
* lib/symbols: Add aligned, gathered, lgathered and rgathered
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15224 a592a061-630c-0410-9148-cb99ea01b6c8
* src/insets/insetgraphics.C
(findTargetFormat): return pdf for vector graphics
* src/format.h
(Flags): new enum describing format flags
(flags_): new member variable for format flags
(vectorFormat): new, tell whether a format can contain vector graphics
* src/format.C: adjust to flags changes
* src/frontends/qt[34]/QPrefsDialog.C
(QPrefsDialog::QPrefsDialog): handle new vector flag
(QPrefsDialog::switch_format): ditto
(QPrefsDialog::updateFormatsButtons): ditto
(QPrefsDialog::new_format): ditto
(QPrefsDialog::modify_format): ditto
* src/frontends/qt3/ui/QPrefFileformatsModule.ui
* src/frontends/qt4/ui/QPrefFileformatsUi.ui
(vectorCB): new checkbox for vector flag
* src/lyxrc.C
(LyXRC::read): read vector flag
(LyXRC::write): write vector flag
* lib/doc/Customization.lyx: document format flags
* lib/configure.py
(checkFormatEntries): Add vector flag to some formats
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15205 a592a061-630c-0410-9148-cb99ea01b6c8
* src/frontends/controllers/ControlMath.C
(latex_misc): Add intop and ointop
* lib/images/math/intop.xpm: New
* lib/images/math/ointop.xpm: Ditto
* lib/images/math/int.xpm: Add box to make the difference to intop clear
* lib/images/math/oint.xpm: ditto
* lib/Makefile.am: add new files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14924 a592a061-630c-0410-9148-cb99ea01b6c8
since it can not be represented in the Czech sdoc_toc in latin2
encoding.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14646 a592a061-630c-0410-9148-cb99ea01b6c8
* src/tex2lyx/text.C
(void parse_noweb): new, parse a noweb code chunck
(void parse_text): handle noweb <<xxx>>= and [[xxx]] constructs
* src/tex2lyx/tex2lyx.[Ch]: new global variable noweb_mode and
command line option to set it
* src/tex2lyx/preamble.C
(parse_preamble): prepend "literate-" to the textclass name in
noweb mode
* lib/configure.py
(checkConverterEntries): fix literate -> lyx converter
(checkConverterEntries): fix typo in latex -> sxw converter
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14635 a592a061-630c-0410-9148-cb99ea01b6c8
* lib/layouts/revtex4.layout: refer to tex2lyx rather than
reLyX in comments
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14627 a592a061-630c-0410-9148-cb99ea01b6c8
(dist_pkgdata_PYTHON): and put it here
(dist_scripts_DATA): rename to dist_scripts_PYTHON; this invokes
automake's built-in python support.
(install-data-hook): adapt to above change.
* lib/lyx2lyx/Makefile.am (dist_lyx2lyx_DATA): rename to dist_lyx2lyx_PYTHON;
this invokes automake's built-in python support.
(install-data-hook): new target: sets executable bit on lyx2lyx.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14592 a592a061-630c-0410-9148-cb99ea01b6c8
Support all lyx files (support goes to lyx-0.6 the first public available lyx version).
Fine tune the guessing of the lyx version used to produce the document (only useful for 2.10 and 2.15 documents).
Support to convertion to utf-8 encoding was added but it is not (yet) active.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14558 a592a061-630c-0410-9148-cb99ea01b6c8
as a python dictionary, ready to be used by other python modules.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14557 a592a061-630c-0410-9148-cb99ea01b6c8
The calls are now made to string methods, the advantage being that they work with
unicode strings.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14537 a592a061-630c-0410-9148-cb99ea01b6c8
Add a documentation string to each module.
Add a documentation string to every function in the modules.
file is a python reserved word => s/file/document/g as variable
add a new property to modules, supported_versions that holds
the versions supported by that module
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14534 a592a061-630c-0410-9148-cb99ea01b6c8
lyx_0_10.py
LyX.py: add support for UserGuide convertion from lyx-0.8 (and 0.7).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14532 a592a061-630c-0410-9148-cb99ea01b6c8
* src/graph.C
(Graph::getReachable): Only add a child format to only viewable
formats if the child or parent has a viewer. Previously a child
format was also added when there was no viewer at all.
* lib/configure.py
(checkFormatEntries): add text2, text3 and text4 formats
(checkConverterEntries): add ps2ascii , pstotext and catdvi converters
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14528 a592a061-630c-0410-9148-cb99ea01b6c8
* lib/external_templates
(XFig): Require the color package, since xfig generates LaTeX
code with \color.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14504 a592a061-630c-0410-9148-cb99ea01b6c8
* lyx_1_1_5.py
* lyx_1_2.py
* lyx_1_3.py
* lyx_1_4.py
* lyx_1_5.py
* parser_tools.py: remove functions that are not generic, i.e.
assume a specific pattern for the file format, and move them to the
places where they are used.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14503 a592a061-630c-0410-9148-cb99ea01b6c8
* src/LyXAction.C
(LyXAction::init): handle new LFUN_CLIPBOARD_PASTE
* src/insets/insettabular.C
(InsetTabular::doDispatch): ditto
* src/insets/insetbox.C
(InsetBox::doDispatch): ditto
* src/insets/insetert.C
(InsetERT::doDispatch): ditto
(InsetERT::getStatus): ditto
* src/insets/insetcharstyle.C
(InsetCharStyle::doDispatch): ditto
* src/BufferView_pimpl.C
(BufferView::Pimpl::selectionRequest): stuff selection, not clipboard
* src/mathed/math_nestinset.C
(MathNestInset::lfunMousePress): get stuff selection, not clipboard
(MathNestInset::lfunMouseRelease): clipboard -> selection in
commented code
* src/CutAndPaste.C
(cutSelection): ditto
* src/frontends/{qt3,gtk}/GuiImplementation.C
(GuiImplementation::newWorkArea): create new selection, not clipboard,
since the clipboard is now an object
(GuiImplementation::destroyWorkArea): destroy selection, not clipboard
* src/frontends/{qt4,qt3,gtk}/GuiSelection.h: new, copied from
GuiClipboard.h
* src/frontends/{qt4,qt3,gtk}/GuiSelection.C: new, copied from
GuiClipboard.C
* src/frontends/{qt3,gtk}/GuiImplementation.h
(selection): new accessor for selection_
(selection_): new, the global selection object
* src/frontends/{qt4,qt3,gtk}/Makefile.am: add GuiSelection.C and
GuiSelection.h
* src/frontends/{qt4,qt3,gtk}/GuiClipboard.C
(GuiClipboard::get): return clipboard, not selection
(GuiClipboard::put): stuff clipboard, not selection
* src/frontends/{qt4,qt3,gtk}/GuiClipboard.h
(haveSelection): remove (this is now in GuiSelection)
* src/frontends/{qt3,gtk}/GuiClipboard.h
(old_work_area_): remove, since it is not needed anymore
* src/frontends/gtk/ghelpers.C
(getGTKStockIcon): handle LFUN_CLIPBOARD_PASTE
* src/frontends/Clipboard.h
(haveSelection): remove (this is now in Selection)
* src/frontends/qt4/GuiImplementation.[Ch]
(GuiImplementation::selection): new accessor for selection_
* src/frontends/Gui.h
(selection): New accessor for the global selection object
* src/frontends/Selection.h; new, copied from Clipboard.h
* src/frontends/Makefile.am: add Selection.h
* src/text3.C
(various): s/clipboard().haveSelection/selection().haveSelection/
(LyXText::dispatch): handle LFUN_CLIPBOARD_PASTE
(LyXText::getStatus): ditto
* src/lfuns.h: new lfun LFUN_CLIPBOARD_PASTE
* lib/ui/stdmenus.ui: add new lfun LFUN_CLIPBOARD_PASTE
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14408 a592a061-630c-0410-9148-cb99ea01b6c8
* src/support/os.[Ch]
(python): new function, return the python command
* lib/lyx2lyx/lyx_1_5.py
(revert_font_settings): replace tabs with spaces
The rest is simply s/python/python -tt/ and
s/"python"/lyx::support::os::python()/ where appropriate.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14270 a592a061-630c-0410-9148-cb99ea01b6c8
* lib/lyx2lyx/LyX.py (format_relation): add file format 247 (from Georg BAUM).
* lib/lyx2lyx/lyx_1_5.py: add convert_font_settings, revert_font_settings (from Georg BAUM).
* lib/chkconfig.ltx: Test for newly supported font packages
* lib/doc/LaTeXConfig.lyx.in: document newly supported font packages
* lib/doc/UserGuide.lyx: document new UI.
* lib/doc/Extended.lyx: update PostScript font documentation
* development/FORMAT: document file format change 246->247.
* src/tex-strings.[Ch]: new strings tex_fonts_roman, tex_fonts_sans,
tex_fonts_monospaced (with GUI equivalents).
* src/buffer.C: Format up to 247.
* src/bufferparams.C:
new params fontsRoman, fontsSans, fontsTypewriter, fontsDefaultFamily,
fontsSC, fontsOSF, fontsSansScale and fontsTypewriterScale
(LyXFont const BufferParams::getFont): consider switch of default family.
(string const BufferParams::loadFonts): new method to get all the LaTeX
font stuff done.
* src/paragraph.C
(LyXFont const Paragraph::getFont):
(LyXFont const Paragraph::getLabelFont):
(LyXFont const Paragraph::getLayoutFont): user buffer's not textclass's
default font
* src/text.C
(int LyXText::leftMargin):
(int LyXText::rightMargin): user buffer's not textclass's default font
* src/text2.C
(LyXFont LyXText::getFont):
(LyXFont LyXText::getLayoutFont):
(LyXFont LyXText::getLabelFont): check if the family of the default document
font has been customized.
* src/frontends/gtk/GDocument.[Ch]: implement new font ui (from Georg BAUM).
* src/frontends/gtk/glade/document.glade: implement new font ui (from Georg BAUM).
* src/frontends/qt3/Makefile.dialogs: add new FontModuleBase
* src/frontends/qt3/ui/FontModuleBase.ui: new File
* src/frontends/qt3/ui/TextLayoutModuleBase.ui: remove font widgets
* src/frontends/qt3/QDocument.C
* src/frontends/qt3/QDocumentDialog.[Ch]: implement new font ui
* src/frontends/qt4/Makefile.dialogs: add new FontUi
* src/frontends/qt4/QDocumentDialog.[Ch]: implement new font ui
* src/frontends/qt4/ui/FontUi.ui: new File
* src/frontends/qt4/ui/TextLayoutUi.ui: remove font widgets
* src/frontends/qt4/ui/compile_uic.sh: add new FontUi
* src/frontends/xforms/FormDocument.[Ch]: implement new font ui
* src/frontends/xforms/forms/form_document.fd: add new font tab.
* src/frontends/controllers/ControlDocument.[Ch]
(char ControlDocument::fontfamilies):
(char ControlDocument::fontfamilies_gui):
(bool ControlDocument::isFontAvailable):
(bool ControlDocument::providesSC):
(bool ControlDocument::providesOSF):
(bool ControlDocument::providesScale): new methods, providing font info.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14143 a592a061-630c-0410-9148-cb99ea01b6c8
* Makefile.am:
* templates/ijmpc.lyx:
* layouts/ijmpc.layout: new textclass for International Journal of
Modern Physics C.
* templates/ijmpd.lyx
* layouts/ijmpd.layout: update.
* LaTeXConfig.lyx.in:
* Extended.lyx: update for ijmpc/d textclasses.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@13977 a592a061-630c-0410-9148-cb99ea01b6c8