diff --git a/development/Win32/packaging/Microsoft.VC90.CRT.manifest b/development/Win32/packaging/Microsoft.VC90.CRT.manifest index d3a615b7b9..41623b1490 100644 --- a/development/Win32/packaging/Microsoft.VC90.CRT.manifest +++ b/development/Win32/packaging/Microsoft.VC90.CRT.manifest @@ -1,13 +1,13 @@ - - - - - - - + + + + + + + diff --git a/development/Win32/packaging/installer/include/dictlist.nsh b/development/Win32/packaging/installer/include/dictlist.nsh index 30db827a8e..a24269e792 100644 --- a/development/Win32/packaging/installer/include/dictlist.nsh +++ b/development/Win32/packaging/installer/include/dictlist.nsh @@ -1,60 +1,60 @@ -/* - -dictlist.nsh - -List of Aspell dictionaries supported by LyX - -*/ - -!macro Dictionaries DICT - - ${DICT} af-0.50-0 "Afrikaans" af 915 - ${DICT} ar-1.2-0 "Arabic" ar 4352 - ${DICT} ms-0.50-0 "Bahasa Melayu" ms 187 - ${DICT} bg-4.1-0 "Bulgarian" bg 5345 - ${DICT} br-0.50-2 "Brezhoneg" br 375 - ${DICT} be-0.01 "Byelaruskaya mova" be 9229 - ${DICT} ca-20040130-1 "Catal" ca 1095 - ${DICT} cs-20040614-1 "Cetina" cs 2069 - ${DICT} da-1.4.42-1 "Dansk" da 3036 - ${DICT} de-20030222-1 "Deutsch" de 2872 - ${DICT} en-6.0-0 "English" en 1130 - ${DICT} es-0.50-2 "Espaol" es 2953 - ${DICT} eo-2.1.20000225a-2 "Esperanto" eo 3773 - ${DICT} et-0.1.21-1 "Estonian" et 922 - ${DICT} fr-0.50-3 "Franais" fr 4331 - ${DICT} gl-0.50-0 "Galego" gl 2974 - ${DICT} el-0.50-3 "Greek" el 3204 - ${DICT} hy-0.10.0-0 "Hayeren" hy 850 - ${DICT} he-1.0-0 "Hebrew" he 2024 - ${DICT} hsb-0.01-1 "Hornjoserbsce" hsb 385 - ${DICT} hr-0.51-0 "Hrvatski" hr 1967 - ${DICT} ia-0.50-1 "Interlingua" ia 610 - ${DICT} is-0.51.1-0 "slenska" is 1536 - ${DICT} it-2.2_20050523-0 "Italiano" it 696 - ${DICT} la-20020503-0 "Latin" la 193 - ${DICT} lv-0.5.5-1 "Latvieu Valoda" lv 256 - ${DICT} lt-1.1+cvs20060103-0 "Lietuviu kalba" lt 628 - ${DICT} hu-0.99.4.2-0 "Magyar" hu 1608 - ${DICT} mn-0.01-0 "Mongolian" mn 141 - ${DICT} nl-opentaal200711 "Nederlands" nl 1333 - ${DICT} nb-0.50.1-0 "Norsk (Bokml)" nb 3031 - ${DICT} nn-0.50.1-1 "Norsk (Nynorsk)" nn 1930 - ${DICT} fa-0.11-0 "Persian" fa 1667 - ${DICT} pl-6.0_20061121-0 "Polski" pl 1859 - ${DICT} pt_PT-20070510-0 "Portugus" pt_PT 319 - ${DICT} pt_BR-20080221-1 "Portugus do Brasil" pt_BR 2453 - ${DICT} ro-0.50-2 "Romna" ro 341 - ${DICT} ru-0.99f7-1 "Russian" ru 1458 - ${DICT} gd-0.1.1-1 "Scottish" gd 194 - ${DICT} sr-0.02 "Serbian" sr 3686 - ${DICT} sk-0.52-0 "Slovencina" sk 4602 - ${DICT} sl-0.50-0 "Slovencina" sl 5236 - ${DICT} fi-0.7-0 "Suomi" fi 659 - ${DICT} sv-0.51-0 "Svenska" sv 1029 - ${DICT} tr-0.50-0 "Trke" tr 547 - ${DICT} uk-1.4.0-0 "Ukrainian" uk 770 - ${DICT} vi-0.01.1-1 "Vietnamese" vi 115 - ${DICT} cy-0.50-3 "Welsh" cy 1771 - -!macroend +/* + +dictlist.nsh + +List of Aspell dictionaries supported by LyX + +*/ + +!macro Dictionaries DICT + + ${DICT} af-0.50-0 "Afrikaans" af 915 + ${DICT} ar-1.2-0 "Arabic" ar 4352 + ${DICT} ms-0.50-0 "Bahasa Melayu" ms 187 + ${DICT} bg-4.1-0 "Bulgarian" bg 5345 + ${DICT} br-0.50-2 "Brezhoneg" br 375 + ${DICT} be-0.01 "Byelaruskaya mova" be 9229 + ${DICT} ca-20040130-1 "Catal" ca 1095 + ${DICT} cs-20040614-1 "Cetina" cs 2069 + ${DICT} da-1.4.42-1 "Dansk" da 3036 + ${DICT} de-20030222-1 "Deutsch" de 2872 + ${DICT} en-6.0-0 "English" en 1130 + ${DICT} es-0.50-2 "Espaol" es 2953 + ${DICT} eo-2.1.20000225a-2 "Esperanto" eo 3773 + ${DICT} et-0.1.21-1 "Estonian" et 922 + ${DICT} fr-0.50-3 "Franais" fr 4331 + ${DICT} gl-0.50-0 "Galego" gl 2974 + ${DICT} el-0.50-3 "Greek" el 3204 + ${DICT} hy-0.10.0-0 "Hayeren" hy 850 + ${DICT} he-1.0-0 "Hebrew" he 2024 + ${DICT} hsb-0.01-1 "Hornjoserbsce" hsb 385 + ${DICT} hr-0.51-0 "Hrvatski" hr 1967 + ${DICT} ia-0.50-1 "Interlingua" ia 610 + ${DICT} is-0.51.1-0 "slenska" is 1536 + ${DICT} it-2.2_20050523-0 "Italiano" it 696 + ${DICT} la-20020503-0 "Latin" la 193 + ${DICT} lv-0.5.5-1 "Latvieu Valoda" lv 256 + ${DICT} lt-1.1+cvs20060103-0 "Lietuviu kalba" lt 628 + ${DICT} hu-0.99.4.2-0 "Magyar" hu 1608 + ${DICT} mn-0.01-0 "Mongolian" mn 141 + ${DICT} nl-opentaal200711 "Nederlands" nl 1333 + ${DICT} nb-0.50.1-0 "Norsk (Bokml)" nb 3031 + ${DICT} nn-0.50.1-1 "Norsk (Nynorsk)" nn 1930 + ${DICT} fa-0.11-0 "Persian" fa 1667 + ${DICT} pl-6.0_20061121-0 "Polski" pl 1859 + ${DICT} pt_PT-20070510-0 "Portugus" pt_PT 319 + ${DICT} pt_BR-20080221-1 "Portugus do Brasil" pt_BR 2453 + ${DICT} ro-0.50-2 "Romna" ro 341 + ${DICT} ru-0.99f7-1 "Russian" ru 1458 + ${DICT} gd-0.1.1-1 "Scottish" gd 194 + ${DICT} sr-0.02 "Serbian" sr 3686 + ${DICT} sk-0.52-0 "Slovencina" sk 4602 + ${DICT} sl-0.50-0 "Slovencina" sl 5236 + ${DICT} fi-0.7-0 "Suomi" fi 659 + ${DICT} sv-0.51-0 "Svenska" sv 1029 + ${DICT} tr-0.50-0 "Trke" tr 547 + ${DICT} uk-1.4.0-0 "Ukrainian" uk 770 + ${DICT} vi-0.01.1-1 "Vietnamese" vi 115 + ${DICT} cy-0.50-3 "Welsh" cy 1771 + +!macroend diff --git a/development/Win32/packaging/installer/include/gui.nsh b/development/Win32/packaging/installer/include/gui.nsh index 4815a74c01..171642bf89 100644 --- a/development/Win32/packaging/installer/include/gui.nsh +++ b/development/Win32/packaging/installer/include/gui.nsh @@ -1,101 +1,101 @@ -/* - -gui.nsh - -Installer user interface settings - -*/ - -#-------------------------------- -# General - -Name "${APP_NAME} ${APP_VERSION}" -BrandingText " " - -#-------------------------------- -# Interface settings - -!define MUI_ABORTWARNING -!define MUI_ICON "${SETUP_ICON}" -!define MUI_UNICON "${SETUP_ICON}" -!define MUI_HEADERIMAGE -!define MUI_HEADERIMAGE_BITMAP "${SETUP_HEADERIMAGE}" -!define MUI_HEADERIMAGE_RIGHT -!define MUI_WELCOMEFINISHPAGE_BITMAP "${SETUP_WIZARDIMAGE}" -!define MUI_UNWELCOMEFINISHPAGE_BITMAP "${SETUP_WIZARDIMAGE}" -!define MUI_COMPONENTSPAGE_NODESC - -#-------------------------------- -# Pages - -# Installer - -!define MUI_WELCOMEPAGE_TITLE_3LINES -!define MUI_WELCOMEPAGE_TEXT $(TEXT_WELCOME) -!insertmacro MUI_PAGE_WELCOME -!insertmacro MUI_PAGE_LICENSE "${FILES_LICENSE}" -!insertmacro MULTIUSER_PAGE_INSTALLMODE - -Page custom PageReinstall PageReinstallValidate -Page custom PageExternalLaTeX PageExternalLaTeXValidate -!ifndef BUNDLE_IMAGEMAGICK -Page custom PageExternalImageMagick PageExternalImageMagickValidate -!endif -!ifndef BUNDLE_GHOSTSCRIPT -Page custom PageExternalGhostscript PageExternalGhostscriptValidate -!endif -Page custom PageLanguage PageLanguageValidate - -!define MUI_PAGE_HEADER_TEXT $(TEXT_DICT_TITLE) -!define MUI_PAGE_HEADER_SUBTEXT $(TEXT_DICT_SUBTITLE) -!define MUI_COMPONENTSPAGE_TEXT_TOP $(TEXT_DICT_TOP) -!define MUI_COMPONENTSPAGE_TEXT_COMPLIST $(TEXT_DICT_LIST) -!insertmacro MUI_PAGE_COMPONENTS # For spell checker dictionaries - -!insertmacro MUI_PAGE_DIRECTORY -!insertmacro MUI_PAGE_INSTFILES - -!define MUI_FINISHPAGE_RUN "$INSTDIR\${APP_RUN}" -!define MUI_FINISHPAGE_SHOWREADME -!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED -!define MUI_FINISHPAGE_SHOWREADME_FUNCTION CreateDesktopShortcut -!define MUI_FINISHPAGE_SHOWREADME_TEXT $(TEXT_FINISH_DESKTOP) -!define MUI_FINISHPAGE_LINK $(TEXT_FINISH_WEBSITE) -!define MUI_FINISHPAGE_LINK_LOCATION "http://www.lyx.org/" -!define MUI_PAGE_CUSTOMFUNCTION_SHOW CheckDesktopShortcut -!insertmacro MUI_PAGE_FINISH - -# Uninstaller - -!define MUI_WELCOMEPAGE_TITLE_3LINES -!define MUI_WELCOMEPAGE_TEXT $(UNTEXT_WELCOME) -!insertmacro MUI_UNPAGE_WELCOME -!insertmacro MUI_UNPAGE_CONFIRM -!insertmacro MUI_UNPAGE_COMPONENTS -!insertmacro MUI_UNPAGE_INSTFILES - -!insertmacro MUI_UNPAGE_FINISH - -#-------------------------------- -# Installer Languages - -!macro LANG LANG_NAME - # NSIS language file - !insertmacro MUI_LANGUAGE "${LANG_NAME}" - # LyX language file - !insertmacro LANGFILE_INCLUDE_WITHDEFAULT "lang\${LANG_NAME}.nsh" "lang\English.nsh" -!macroend - -!insertmacro LANG "english" -!insertmacro LANG "french" -!insertmacro LANG "german" -!insertmacro LANG "italian" - -#-------------------------------- -# Version information - -VIProductVersion "${APP_VERSION_NUMBER}" -VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "${APP_NAME}" -VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "${APP_INFO}" -VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "${APP_VERSION}" -VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "${APP_COPYRIGHT}" +/* + +gui.nsh + +Installer user interface settings + +*/ + +#-------------------------------- +# General + +Name "${APP_NAME} ${APP_VERSION}" +BrandingText " " + +#-------------------------------- +# Interface settings + +!define MUI_ABORTWARNING +!define MUI_ICON "${SETUP_ICON}" +!define MUI_UNICON "${SETUP_ICON}" +!define MUI_HEADERIMAGE +!define MUI_HEADERIMAGE_BITMAP "${SETUP_HEADERIMAGE}" +!define MUI_HEADERIMAGE_RIGHT +!define MUI_WELCOMEFINISHPAGE_BITMAP "${SETUP_WIZARDIMAGE}" +!define MUI_UNWELCOMEFINISHPAGE_BITMAP "${SETUP_WIZARDIMAGE}" +!define MUI_COMPONENTSPAGE_NODESC + +#-------------------------------- +# Pages + +# Installer + +!define MUI_WELCOMEPAGE_TITLE_3LINES +!define MUI_WELCOMEPAGE_TEXT $(TEXT_WELCOME) +!insertmacro MUI_PAGE_WELCOME +!insertmacro MUI_PAGE_LICENSE "${FILES_LICENSE}" +!insertmacro MULTIUSER_PAGE_INSTALLMODE + +Page custom PageReinstall PageReinstallValidate +Page custom PageExternalLaTeX PageExternalLaTeXValidate +!ifndef BUNDLE_IMAGEMAGICK +Page custom PageExternalImageMagick PageExternalImageMagickValidate +!endif +!ifndef BUNDLE_GHOSTSCRIPT +Page custom PageExternalGhostscript PageExternalGhostscriptValidate +!endif +Page custom PageLanguage PageLanguageValidate + +!define MUI_PAGE_HEADER_TEXT $(TEXT_DICT_TITLE) +!define MUI_PAGE_HEADER_SUBTEXT $(TEXT_DICT_SUBTITLE) +!define MUI_COMPONENTSPAGE_TEXT_TOP $(TEXT_DICT_TOP) +!define MUI_COMPONENTSPAGE_TEXT_COMPLIST $(TEXT_DICT_LIST) +!insertmacro MUI_PAGE_COMPONENTS # For spell checker dictionaries + +!insertmacro MUI_PAGE_DIRECTORY +!insertmacro MUI_PAGE_INSTFILES + +!define MUI_FINISHPAGE_RUN "$INSTDIR\${APP_RUN}" +!define MUI_FINISHPAGE_SHOWREADME +!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED +!define MUI_FINISHPAGE_SHOWREADME_FUNCTION CreateDesktopShortcut +!define MUI_FINISHPAGE_SHOWREADME_TEXT $(TEXT_FINISH_DESKTOP) +!define MUI_FINISHPAGE_LINK $(TEXT_FINISH_WEBSITE) +!define MUI_FINISHPAGE_LINK_LOCATION "http://www.lyx.org/" +!define MUI_PAGE_CUSTOMFUNCTION_SHOW CheckDesktopShortcut +!insertmacro MUI_PAGE_FINISH + +# Uninstaller + +!define MUI_WELCOMEPAGE_TITLE_3LINES +!define MUI_WELCOMEPAGE_TEXT $(UNTEXT_WELCOME) +!insertmacro MUI_UNPAGE_WELCOME +!insertmacro MUI_UNPAGE_CONFIRM +!insertmacro MUI_UNPAGE_COMPONENTS +!insertmacro MUI_UNPAGE_INSTFILES + +!insertmacro MUI_UNPAGE_FINISH + +#-------------------------------- +# Installer Languages + +!macro LANG LANG_NAME + # NSIS language file + !insertmacro MUI_LANGUAGE "${LANG_NAME}" + # LyX language file + !insertmacro LANGFILE_INCLUDE_WITHDEFAULT "lang\${LANG_NAME}.nsh" "lang\English.nsh" +!macroend + +!insertmacro LANG "english" +!insertmacro LANG "french" +!insertmacro LANG "german" +!insertmacro LANG "italian" + +#-------------------------------- +# Version information + +VIProductVersion "${APP_VERSION_NUMBER}" +VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "${APP_NAME}" +VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "${APP_INFO}" +VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "${APP_VERSION}" +VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "${APP_COPYRIGHT}" diff --git a/development/Win32/packaging/installer/include/nsis.nsh b/development/Win32/packaging/installer/include/nsis.nsh index b286d6eb4a..b8dffd2d38 100644 --- a/development/Win32/packaging/installer/include/nsis.nsh +++ b/development/Win32/packaging/installer/include/nsis.nsh @@ -1,42 +1,42 @@ -/* - -nsis.nsh - -Configuration of standard NSIS header files - -*/ - -#-------------------------------- -# Multi-User settings - -!define MULTIUSER_EXECUTIONLEVEL Highest -!define MULTIUSER_INSTALLMODE_COMMANDLINE -!define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_KEY "${APP_REGKEY}" -!define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_VALUENAME "" - -!define MULTIUSER_INSTALLMODE_INSTDIR "${APP_DIR}" -!define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_KEY "${APP_REGKEY}" -!define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_VALUENAME "" - -!define MULTIUSER_INSTALLMODE_FUNCTION InitUser -!define MULTIUSER_MUI - -#-------------------------------- -# Standard header files - -!include MUI2.nsh -!include LogicLib.nsh -!include StrFunc.nsh -!include FileFunc.nsh -!include WordFunc.nsh -!include Sections.nsh -!include WinVer.nsh -!include LangFile.nsh -!include MultiUser.nsh -!include nsDialogs.nsh - -#-------------------------------- -# Include standard functions - -!insertmacro RefreshShellIcons -!insertmacro WordFind2X +/* + +nsis.nsh + +Configuration of standard NSIS header files + +*/ + +#-------------------------------- +# Multi-User settings + +!define MULTIUSER_EXECUTIONLEVEL Highest +!define MULTIUSER_INSTALLMODE_COMMANDLINE +!define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_KEY "${APP_REGKEY}" +!define MULTIUSER_INSTALLMODE_DEFAULT_REGISTRY_VALUENAME "" + +!define MULTIUSER_INSTALLMODE_INSTDIR "${APP_DIR}" +!define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_KEY "${APP_REGKEY}" +!define MULTIUSER_INSTALLMODE_INSTDIR_REGISTRY_VALUENAME "" + +!define MULTIUSER_INSTALLMODE_FUNCTION InitUser +!define MULTIUSER_MUI + +#-------------------------------- +# Standard header files + +!include MUI2.nsh +!include LogicLib.nsh +!include StrFunc.nsh +!include FileFunc.nsh +!include WordFunc.nsh +!include Sections.nsh +!include WinVer.nsh +!include LangFile.nsh +!include MultiUser.nsh +!include nsDialogs.nsh + +#-------------------------------- +# Include standard functions + +!insertmacro RefreshShellIcons +!insertmacro WordFind2X diff --git a/development/Win32/packaging/installer/include/variables.nsh b/development/Win32/packaging/installer/include/variables.nsh index 15e0c4547c..fcca8ef508 100644 --- a/development/Win32/packaging/installer/include/variables.nsh +++ b/development/Win32/packaging/installer/include/variables.nsh @@ -1,31 +1,31 @@ -/* - -variables.nsh - -Variables that are shared between multiple files - -*/ - -Var PathLaTeX -Var PathLaTeXLocal -Var PathImageMagick -Var PathGhostscript -Var PathBibTeXEditor - -Var SetupLaTeX -Var SizeLaTeX - -!ifndef BUNDLE_IMAGEMAGICK - Var SetupImageMagick - Var SizeImageMagick -!endif - -!ifndef BUNDLE_GHOSTSCRIPT - Var SetupGhostscript - Var SizeGhostscript -!endif - -Var LangName -Var LangISOCode - -Var PrinterConf +/* + +variables.nsh + +Variables that are shared between multiple files + +*/ + +Var PathLaTeX +Var PathLaTeXLocal +Var PathImageMagick +Var PathGhostscript +Var PathBibTeXEditor + +Var SetupLaTeX +Var SizeLaTeX + +!ifndef BUNDLE_IMAGEMAGICK + Var SetupImageMagick + Var SizeImageMagick +!endif + +!ifndef BUNDLE_GHOSTSCRIPT + Var SetupGhostscript + Var SizeGhostscript +!endif + +Var LangName +Var LangISOCode + +Var PrinterConf diff --git a/development/Win32/packaging/installer/license.rtf b/development/Win32/packaging/installer/license.rtf index 3951e6061e..2669a214ae 100644 --- a/development/Win32/packaging/installer/license.rtf +++ b/development/Win32/packaging/installer/license.rtf @@ -1,421 +1,421 @@ -{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}{\f1\fswiss\fcharset0 Arial;}{\f2\fnil\fcharset2 Symbol;}} -{\*\generator Msftedit 5.41.15.1507;}\viewkind4\uc1\pard\qc\b\f0\fs24 LyX Windows Distribution License Agreement\b0\fs36\par -\pard\fs16\par -\pard\qc This Windows distribution of LyX contains:\par -\pard\par -\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-720\li720 LyX. You can redistribute LyX and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par -{\pntext\f2\'B7\tab}Components of Python. You can redistribute Python and/or modify it under the terms of the Python Software Foundation License Version 2.\par -{\pntext\f2\'B7\tab}Components of ImageMagick. You can redistribute the BaKoMa fonts under the terms of the ImageMagick license.\par -{\pntext\f2\'B7\tab}Components of GPL Ghostscript. You can redistribute Netpbm and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par -{\pntext\f2\'B7\tab}Components of Aspell. You can redistribute Aspell and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.\par -{\pntext\f2\'B7\tab}A modified version of the BaKoMa fonts. You can redistribute the BaKoMa fonts under the terms of the BaKoMa Font License.\par -{\pntext\f2\'B7\tab}The wasy font 'wasy10.ttf' from the latex-xft font bundle: http://packages.qa.debian.org/l/latex-xft-fonts.html. You can redistribute the latex-xft font bundle and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par -{\pntext\f2\'B7\tab}Components of Netpbm. You can redistribute Netpbm and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par -{\pntext\f2\'B7\tab}Components of Dvipost. You can redistribute Dvipost and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par -{\pntext\f2\'B7\tab}Components of Aiksaurus. You can redistribute Aiksaurus and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par -\pard\par -This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\par -\par -\pard\qc\b\fs24 GNU GENERAL PUBLIC LICENSE\b0\fs16\par -Version 2, June 1991\par -\par -Copyright (C) 1989, 1991 Free Software Foundation, Inc.\par -51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA\par -Everyone is permitted to copy and distribute verbatim copies\par -of this license document, but changing it is not allowed.\par -\pard\par -\b Preamble\b0\par -\par -The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.\par -\par -When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.\par -\par -To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.\par -\par -For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.\par -\par -We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.\par -\par -Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.\par -\par -Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.\par -\par -The precise terms and conditions for copying, distribution and modification follow.\par -\page\b GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\b0\par -\par -0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".\par -\par -Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.\par -\par -1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.\par -\par -You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.\par -\par -2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:\par -\par -a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.\par -\par -b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.\par -\par -c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)\par -\page These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.\par -\par -Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.\par -\par -In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.\par -\par -3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:\par -\par -a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,\par -\par -b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,\par -\par -c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)\par -\par -The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.\par -\par -If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.\par - \page 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.\par -\par -5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.\par -\par -6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.\par -\par -7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.\par -\par -If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.\par -\par -It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.\par -\par -This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. \page 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.\par -\par -9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.\par -\par -Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.\par -\par -10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.\par -\par -\b NO WARRANTY\b0\par -\par -11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\par -\par -12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\par -\par -\b END OF TERMS AND CONDITIONS\par -\par -\pard\qc How to Apply These Terms to Your New Programs\b0\par -\pard\par -If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.\par -\par -To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.\par -\par - \par - Copyright (C) \par -\par -This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or(at your option) any later version.\par -\par - This program is distributed in the hope that it will be useful,\par - but WITHOUT ANY WARRANTY; without even the implied warranty of\par - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\par - GNU General Public License for more details.\par -\par - You should have received a copy of the GNU General Public License along\par - with this program; if not, write to the Free Software Foundation, Inc.,\par - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\par -\par -Also add information on how to contact you by electronic and paper mail.\par -\par -If the program is interactive, make it output a short notice like this when it starts in an interactive mode:\par -\par - Gnomovision version 69, Copyright (C) year name of author\par - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\par - This is free software, and you are welcome to redistribute it\par - under certain conditions; type `show c' for details.\par -\par -The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.\par -\par -You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:\par -\par - Yoyodyne, Inc., hereby disclaims all copyright interest in the program\par - `Gnomovision' (which makes passes at compilers) written by James Hacker.\par -\par - , 1 April 1989\par - Ty Coon, President of Vice\par -\par -This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License.\b\par -\b0\par -\pard\qc\b\fs24 GNU LESSER GENERAL PUBLIC LICENSE\b0\fs16\par -Version 2.1, February 1999\par -\par -Copyright (C) 1991, 1999 Free Software Foundation, Inc.\par -51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA\par -Everyone is permitted to copy and distribute verbatim copies\par -of this license document, but changing it is not allowed.\par -\par -[This is the first released version of the Lesser GPL. It also counts\par - as the successor of the GNU Library Public License, version 2, hence\par - the version number 2.1.]\par -\pard\b Preamble\b0\par -\par -The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users.\par -\par -This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below.\par -\par -When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things.\par -\par -To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it.\par -\par -For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights.\par -\par -We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library.\par -\par -To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others.\par -\par -Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license.\par -\par -Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs.\par -\par -When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library.\par -\par -We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances.\par -\par -For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License.\par -\par -In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system.\par -\par -Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library.\par -\par -The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run.\par -\par -\b TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\b0\par -\par -0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you".\par -\par -A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables.\par -\par -The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".)\par -\par -"Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library.\par -\par -Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does.\par -\par -1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library.\par -\par -You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.\par -\par -2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:\par -\par - * a) The modified work must itself be a software library.\par - * b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change.\par - * c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License.\par - * d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful.\par -\par -(For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.)\par -\par -These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.\par -\par -Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library.\par -\par -In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. \par -\par -3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices.\par -\par -Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy.\par -\par -This option is useful when you wish to copy part of the code of the Library into a program that is not a library.\par -\par -4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange.\par -\par -If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code.\par -\par -5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License.\par -\par -However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables.\par -\par -When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law.\par -\par -If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.)\par -\par -Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself.\par -\par -6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications.\par -\par -You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things:\par -\par -* a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.)\par -* b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with.\par -* c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution.\par -* d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place.\par -* e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. \par -\par -For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.\par -\par -It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute.\par -\par -7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things:\par -\par -* a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above.\par -* b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. \par -\par -8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.\par -\par -9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it.\par -\par -10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License.\par -\par -11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library.\par -\par -If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances.\par -\par -It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.\par -\par -This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.\par -\par -12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.\par -\par -13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.\par -\par -Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation.\par -\par -14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.\par -\par -\b NO WARRANTY\b0\par -\par -15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\par -\par -16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\par -\par -\b END OF TERMS AND CONDITIONS\b0\par -\par -\pard\qc\b How to Apply These Terms to Your New Libraries\b0\par -\pard\par -If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License).\par -\par -To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.\par -\par - \par - Copyright (C) \par -\par - This library is free software; you can redistribute it and/or\par - modify it under the terms of the GNU Lesser General Public\par - License as published by the Free Software Foundation; either\par - version 2.1 of the License, or (at your option) any later version.\par -\par - This library is distributed in the hope that it will be useful,\par - but WITHOUT ANY WARRANTY; without even the implied warranty of\par - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\par - Lesser General Public License for more details.\par -\par - You should have received a copy of the GNU Lesser General Public\par - License along with this library; if not, write to the Free Software\par - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA\par -\par -Also add information on how to contact you by electronic and paper mail.\par -\par -You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names:\par -\par - Yoyodyne, Inc., hereby disclaims all copyright interest in the\par - library `Frob' (a library for tweaking knobs) written by James Random Hacker.\par -\par - , 1 April 1990\par - Ty Coon, President of Vice\par -\par -That's all there is to it!\par -\par -\pard\qc\b\fs24 PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2\b0\fs16\par -\pard\par -1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and the Individual or Organization ("Licensee") accessing and otherwise using this software ("Python") in source or binary form and its associated documentation.\par -\par -2. Subject to the terms and conditions of this License Agreement, PSF hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare derivative works, distribute, and otherwise use Python alone or in any derivative version, provided, however, that PSF's License Agreement and PSF's notice of copyright, i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Python Software Foundation; All Rights Reserved" are retained in Python alone or in any derivative version prepared by Licensee.\par -\par -3. In the event Licensee prepares a derivative work that is based on or incorporates Python or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of the changes made to Python.\par -\par -4. PSF is making Python available to Licensee on an "AS IS" basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.\par -\par -5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.\par -\par -6. This License Agreement will automatically terminate upon a material breach of its terms and conditions.\par -\par -7. Nothing in this License Agreement shall be deemed to create any relationship of agency, partnership, or joint venture between PSF and Licensee. This License Agreement does not grant permission to use PSF trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party.\par -\par -8. By copying, installing or otherwise using Python, Licensee agrees to be bound by the terms and conditions of this License Agreement.\par -\par -\pard\qc\b\fs24 IMAGEMAGICK LICENSE\b0\fs16\par -\pard\par -The legally binding and authoritative terms and conditions for use, reproduction, and distribution of ImageMagick follow:\par -\par -Copyright 1999-2007 ImageMagick Studio LLC, a non-profit organization dedicated to making software imaging solutions freely available.\par -\par -1. Definitions.\par -\par -License shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.\par -\par -Licensor shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.\par -\par -Legal Entity shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, control means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.\par -\par -You (or Your) shall mean an individual or Legal Entity exercising permissions granted by this License.\par -\par -Source form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.\par -\par -Object form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.\par -\par -Work shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).\par -\par -Derivative Works shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.\par -\par -Contribution shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, submitted means any form of electronic, verbal, or written communication intentionally sent to the Licensor by its copyright holder or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as Not a Contribution.\par -\par -Contributor shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.\par -\par -2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.\par -\par -3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted.\par -\par -4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:\par -\par -a. You must give any other recipients of the Work or Derivative Works a copy of this License; and\par -b. You must cause any modified files to carry prominent notices stating that You changed the files; and\par -c. You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and\par -d. If the Work includes a NOTICE text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.\par -\par -You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.\par -\par -5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.\par -\par -6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.\par -\par -7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.\par -\par -8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.\par -\par -9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License.\par -\par -\pard\qc\b\fs24 BaKoMa Fonts License\par -\pard\b0\fs16\par -This licence covers two font packs (known as BaKoMa Fonts Colelction, which is available at `CTAN:fonts/cm/ps-type1/bakoma/'):\par -\par -1) BaKoMa-CM (1.1/12-Nov-94)\par -Computer Modern Fonts in PostScript Type 1 and TrueType font formats.\par -\par -2) BaKoMa-AMS (1.2/19-Jan-95)\par -AMS TeX fonts in PostScript Type 1 and TrueType font formats.\par - \par -Copyright (C) 1994, 1995, Basil K. Malyshev. All Rights Reserved.\par -\par -Permission to copy and distribute these fonts for any purpose is hereby granted without fee, provided that the above copyright notice, author statement and this permission notice appear in all copies of these fonts and related documentation.\par -\par -Permission to modify and distribute modified fonts for any purpose is hereby granted without fee, provided that the copyright notice, author statement, this permission notice and location of original fonts (http://www.ctan.org/tex-archive/fonts/cm/ps-type1/bakoma) appear in all copies of modified fonts and related documentation.\par -\par -Permission to use these fonts (embedding into PostScript, PDF, SVG and printing by using any software) is hereby granted without fee. It is not required to provide any notices about using these fonts.\par -\par -Basil K. Malyshev\par -INSTITUTE FOR HIGH ENERGY PHYSICS\par -IHEP, OMVT\par -Moscow Region\par -142281 PROTVINO\par -RUSSIA\par -\par -E-Mail: bakoma@mail.ru or malyshev@mail.ihep.ru\f1\par -} +{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}{\f1\fswiss\fcharset0 Arial;}{\f2\fnil\fcharset2 Symbol;}} +{\*\generator Msftedit 5.41.15.1507;}\viewkind4\uc1\pard\qc\b\f0\fs24 LyX Windows Distribution License Agreement\b0\fs36\par +\pard\fs16\par +\pard\qc This Windows distribution of LyX contains:\par +\pard\par +\pard{\pntext\f2\'B7\tab}{\*\pn\pnlvlblt\pnf2\pnindent0{\pntxtb\'B7}}\fi-720\li720 LyX. You can redistribute LyX and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par +{\pntext\f2\'B7\tab}Components of Python. You can redistribute Python and/or modify it under the terms of the Python Software Foundation License Version 2.\par +{\pntext\f2\'B7\tab}Components of ImageMagick. You can redistribute the BaKoMa fonts under the terms of the ImageMagick license.\par +{\pntext\f2\'B7\tab}Components of GPL Ghostscript. You can redistribute Netpbm and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par +{\pntext\f2\'B7\tab}Components of Aspell. You can redistribute Aspell and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.\par +{\pntext\f2\'B7\tab}A modified version of the BaKoMa fonts. You can redistribute the BaKoMa fonts under the terms of the BaKoMa Font License.\par +{\pntext\f2\'B7\tab}The wasy font 'wasy10.ttf' from the latex-xft font bundle: http://packages.qa.debian.org/l/latex-xft-fonts.html. You can redistribute the latex-xft font bundle and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par +{\pntext\f2\'B7\tab}Components of Netpbm. You can redistribute Netpbm and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par +{\pntext\f2\'B7\tab}Components of Dvipost. You can redistribute Dvipost and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par +{\pntext\f2\'B7\tab}Components of Aiksaurus. You can redistribute Aiksaurus and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\par +\pard\par +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\par +\par +\pard\qc\b\fs24 GNU GENERAL PUBLIC LICENSE\b0\fs16\par +Version 2, June 1991\par +\par +Copyright (C) 1989, 1991 Free Software Foundation, Inc.\par +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA\par +Everyone is permitted to copy and distribute verbatim copies\par +of this license document, but changing it is not allowed.\par +\pard\par +\b Preamble\b0\par +\par +The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.\par +\par +When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.\par +\par +To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.\par +\par +For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.\par +\par +We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.\par +\par +Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.\par +\par +Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.\par +\par +The precise terms and conditions for copying, distribution and modification follow.\par +\page\b GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\b0\par +\par +0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".\par +\par +Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.\par +\par +1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.\par +\par +You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.\par +\par +2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:\par +\par +a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.\par +\par +b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.\par +\par +c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)\par +\page These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.\par +\par +Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.\par +\par +In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.\par +\par +3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:\par +\par +a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,\par +\par +b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,\par +\par +c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.)\par +\par +The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.\par +\par +If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.\par + \page 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.\par +\par +5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.\par +\par +6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.\par +\par +7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.\par +\par +If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.\par +\par +It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.\par +\par +This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. \page 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.\par +\par +9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.\par +\par +Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.\par +\par +10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.\par +\par +\b NO WARRANTY\b0\par +\par +11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\par +\par +12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\par +\par +\b END OF TERMS AND CONDITIONS\par +\par +\pard\qc How to Apply These Terms to Your New Programs\b0\par +\pard\par +If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms.\par +\par +To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.\par +\par + \par + Copyright (C) \par +\par +This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or(at your option) any later version.\par +\par + This program is distributed in the hope that it will be useful,\par + but WITHOUT ANY WARRANTY; without even the implied warranty of\par + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\par + GNU General Public License for more details.\par +\par + You should have received a copy of the GNU General Public License along\par + with this program; if not, write to the Free Software Foundation, Inc.,\par + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.\par +\par +Also add information on how to contact you by electronic and paper mail.\par +\par +If the program is interactive, make it output a short notice like this when it starts in an interactive mode:\par +\par + Gnomovision version 69, Copyright (C) year name of author\par + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.\par + This is free software, and you are welcome to redistribute it\par + under certain conditions; type `show c' for details.\par +\par +The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program.\par +\par +You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:\par +\par + Yoyodyne, Inc., hereby disclaims all copyright interest in the program\par + `Gnomovision' (which makes passes at compilers) written by James Hacker.\par +\par + , 1 April 1989\par + Ty Coon, President of Vice\par +\par +This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License.\b\par +\b0\par +\pard\qc\b\fs24 GNU LESSER GENERAL PUBLIC LICENSE\b0\fs16\par +Version 2.1, February 1999\par +\par +Copyright (C) 1991, 1999 Free Software Foundation, Inc.\par +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA\par +Everyone is permitted to copy and distribute verbatim copies\par +of this license document, but changing it is not allowed.\par +\par +[This is the first released version of the Lesser GPL. It also counts\par + as the successor of the GNU Library Public License, version 2, hence\par + the version number 2.1.]\par +\pard\b Preamble\b0\par +\par +The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users.\par +\par +This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below.\par +\par +When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things.\par +\par +To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it.\par +\par +For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights.\par +\par +We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library.\par +\par +To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others.\par +\par +Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license.\par +\par +Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs.\par +\par +When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library.\par +\par +We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances.\par +\par +For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License.\par +\par +In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system.\par +\par +Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library.\par +\par +The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run.\par +\par +\b TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\b0\par +\par +0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you".\par +\par +A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables.\par +\par +The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".)\par +\par +"Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library.\par +\par +Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does.\par +\par +1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library.\par +\par +You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.\par +\par +2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:\par +\par + * a) The modified work must itself be a software library.\par + * b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change.\par + * c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License.\par + * d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful.\par +\par +(For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.)\par +\par +These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.\par +\par +Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library.\par +\par +In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. \par +\par +3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices.\par +\par +Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy.\par +\par +This option is useful when you wish to copy part of the code of the Library into a program that is not a library.\par +\par +4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange.\par +\par +If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code.\par +\par +5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License.\par +\par +However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables.\par +\par +When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law.\par +\par +If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.)\par +\par +Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself.\par +\par +6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications.\par +\par +You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things:\par +\par +* a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.)\par +* b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with.\par +* c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution.\par +* d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place.\par +* e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. \par +\par +For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.\par +\par +It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute.\par +\par +7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things:\par +\par +* a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above.\par +* b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. \par +\par +8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.\par +\par +9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it.\par +\par +10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License.\par +\par +11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library.\par +\par +If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances.\par +\par +It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.\par +\par +This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.\par +\par +12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.\par +\par +13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.\par +\par +Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation.\par +\par +14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.\par +\par +\b NO WARRANTY\b0\par +\par +15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\par +\par +16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\par +\par +\b END OF TERMS AND CONDITIONS\b0\par +\par +\pard\qc\b How to Apply These Terms to Your New Libraries\b0\par +\pard\par +If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License).\par +\par +To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.\par +\par + \par + Copyright (C) \par +\par + This library is free software; you can redistribute it and/or\par + modify it under the terms of the GNU Lesser General Public\par + License as published by the Free Software Foundation; either\par + version 2.1 of the License, or (at your option) any later version.\par +\par + This library is distributed in the hope that it will be useful,\par + but WITHOUT ANY WARRANTY; without even the implied warranty of\par + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\par + Lesser General Public License for more details.\par +\par + You should have received a copy of the GNU Lesser General Public\par + License along with this library; if not, write to the Free Software\par + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA\par +\par +Also add information on how to contact you by electronic and paper mail.\par +\par +You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names:\par +\par + Yoyodyne, Inc., hereby disclaims all copyright interest in the\par + library `Frob' (a library for tweaking knobs) written by James Random Hacker.\par +\par + , 1 April 1990\par + Ty Coon, President of Vice\par +\par +That's all there is to it!\par +\par +\pard\qc\b\fs24 PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2\b0\fs16\par +\pard\par +1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and the Individual or Organization ("Licensee") accessing and otherwise using this software ("Python") in source or binary form and its associated documentation.\par +\par +2. Subject to the terms and conditions of this License Agreement, PSF hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare derivative works, distribute, and otherwise use Python alone or in any derivative version, provided, however, that PSF's License Agreement and PSF's notice of copyright, i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Python Software Foundation; All Rights Reserved" are retained in Python alone or in any derivative version prepared by Licensee.\par +\par +3. In the event Licensee prepares a derivative work that is based on or incorporates Python or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of the changes made to Python.\par +\par +4. PSF is making Python available to Licensee on an "AS IS" basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT INFRINGE ANY THIRD PARTY RIGHTS.\par +\par +5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF.\par +\par +6. This License Agreement will automatically terminate upon a material breach of its terms and conditions.\par +\par +7. Nothing in this License Agreement shall be deemed to create any relationship of agency, partnership, or joint venture between PSF and Licensee. This License Agreement does not grant permission to use PSF trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party.\par +\par +8. By copying, installing or otherwise using Python, Licensee agrees to be bound by the terms and conditions of this License Agreement.\par +\par +\pard\qc\b\fs24 IMAGEMAGICK LICENSE\b0\fs16\par +\pard\par +The legally binding and authoritative terms and conditions for use, reproduction, and distribution of ImageMagick follow:\par +\par +Copyright 1999-2007 ImageMagick Studio LLC, a non-profit organization dedicated to making software imaging solutions freely available.\par +\par +1. Definitions.\par +\par +License shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.\par +\par +Licensor shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.\par +\par +Legal Entity shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, control means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.\par +\par +You (or Your) shall mean an individual or Legal Entity exercising permissions granted by this License.\par +\par +Source form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.\par +\par +Object form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.\par +\par +Work shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).\par +\par +Derivative Works shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.\par +\par +Contribution shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, submitted means any form of electronic, verbal, or written communication intentionally sent to the Licensor by its copyright holder or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as Not a Contribution.\par +\par +Contributor shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.\par +\par +2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.\par +\par +3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted.\par +\par +4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:\par +\par +a. You must give any other recipients of the Work or Derivative Works a copy of this License; and\par +b. You must cause any modified files to carry prominent notices stating that You changed the files; and\par +c. You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and\par +d. If the Work includes a NOTICE text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.\par +\par +You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.\par +\par +5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.\par +\par +6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.\par +\par +7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.\par +\par +8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.\par +\par +9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License.\par +\par +\pard\qc\b\fs24 BaKoMa Fonts License\par +\pard\b0\fs16\par +This licence covers two font packs (known as BaKoMa Fonts Colelction, which is available at `CTAN:fonts/cm/ps-type1/bakoma/'):\par +\par +1) BaKoMa-CM (1.1/12-Nov-94)\par +Computer Modern Fonts in PostScript Type 1 and TrueType font formats.\par +\par +2) BaKoMa-AMS (1.2/19-Jan-95)\par +AMS TeX fonts in PostScript Type 1 and TrueType font formats.\par + \par +Copyright (C) 1994, 1995, Basil K. Malyshev. All Rights Reserved.\par +\par +Permission to copy and distribute these fonts for any purpose is hereby granted without fee, provided that the above copyright notice, author statement and this permission notice appear in all copies of these fonts and related documentation.\par +\par +Permission to modify and distribute modified fonts for any purpose is hereby granted without fee, provided that the copyright notice, author statement, this permission notice and location of original fonts (http://www.ctan.org/tex-archive/fonts/cm/ps-type1/bakoma) appear in all copies of modified fonts and related documentation.\par +\par +Permission to use these fonts (embedding into PostScript, PDF, SVG and printing by using any software) is hereby granted without fee. It is not required to provide any notices about using these fonts.\par +\par +Basil K. Malyshev\par +INSTITUTE FOR HIGH ENERGY PHYSICS\par +IHEP, OMVT\par +Moscow Region\par +142281 PROTVINO\par +RUSSIA\par +\par +E-Mail: bakoma@mail.ru or malyshev@mail.ihep.ru\f1\par +} \ No newline at end of file diff --git a/development/Win32/packaging/installer/lyx.nsi b/development/Win32/packaging/installer/lyx.nsi index e4af9a6e6c..75b4cc839d 100644 --- a/development/Win32/packaging/installer/lyx.nsi +++ b/development/Win32/packaging/installer/lyx.nsi @@ -1,55 +1,55 @@ -/* - -NSIS Script - LyX 1.5/1.6 Installer for Win32 -Authors: Joost Verburg, Angus Leeming, Uwe Sthr -Requires NSIS 2.36 or later - -Licence details for all installer scripts can be found in the file COPYING - -*/ - -!include settings.nsh - -#-------------------------------- -# Header files - -!include include\declarations.nsh -!include include\variables.nsh -!include include\nsis.nsh - -!include include\dictlist.nsh -!include include\filelist.nsh -!include include\langlist.nsh - -!include include\detection.nsh -!include include\gui.nsh -!include include\init.nsh - -#-------------------------------- -# The following commands use makensis to compile two applications. -# Although these applications are written in NSIS, they do not install anything. - -# Compile the launcher -!system '"${NSISDIR}\makensis.exe" "${FILES_LAUNCHER}\launcher.nsi"' - -# Compile Windows PDF view helper -!system '"${NSISDIR}\makensis.exe" "${FILES_PDFVIEW}\pdfview.nsi"' - -#-------------------------------- -# Setup - -!include setup\install.nsh -!include setup\uninstall.nsh -!include setup\configure.nsh - -#-------------------------------- -# User interface (wizard pages) - -!include gui\external.nsh -!include gui\langselect.nsh -!include gui\reinstall.nsh - -#-------------------------------- -# Output file - -Outfile "${SETUP_EXE}" +/* + +NSIS Script - LyX 1.5/1.6 Installer for Win32 +Authors: Joost Verburg, Angus Leeming, Uwe Sthr +Requires NSIS 2.36 or later + +Licence details for all installer scripts can be found in the file COPYING + +*/ + +!include settings.nsh + +#-------------------------------- +# Header files + +!include include\declarations.nsh +!include include\variables.nsh +!include include\nsis.nsh + +!include include\dictlist.nsh +!include include\filelist.nsh +!include include\langlist.nsh + +!include include\detection.nsh +!include include\gui.nsh +!include include\init.nsh + +#-------------------------------- +# The following commands use makensis to compile two applications. +# Although these applications are written in NSIS, they do not install anything. + +# Compile the launcher +!system '"${NSISDIR}\makensis.exe" "${FILES_LAUNCHER}\launcher.nsi"' + +# Compile Windows PDF view helper +!system '"${NSISDIR}\makensis.exe" "${FILES_PDFVIEW}\pdfview.nsi"' + +#-------------------------------- +# Setup + +!include setup\install.nsh +!include setup\uninstall.nsh +!include setup\configure.nsh + +#-------------------------------- +# User interface (wizard pages) + +!include gui\external.nsh +!include gui\langselect.nsh +!include gui\reinstall.nsh + +#-------------------------------- +# Output file + +Outfile "${SETUP_EXE}" diff --git a/development/Win32/packaging/installer/settings.nsh b/development/Win32/packaging/installer/settings.nsh index 72e92e546e..5e64f23ed9 100644 --- a/development/Win32/packaging/installer/settings.nsh +++ b/development/Win32/packaging/installer/settings.nsh @@ -1,59 +1,59 @@ -/* - -Settings for LyX installer - -These typically need to be modified for each LyX release - -*/ - -#-------------------------------- -# Windows version on which the complier is running - -!define COMPILER_OS VISTA -#!define COMPILER_OS XP - -#-------------------------------- -# Version number - -!define APP_VERSION_MAJOR 1 -!define APP_VERSION_MINOR 6 -!define APP_VERSION_REVISION 0 -!define APP_VERSION_BUILD 0 # Start with 1 for the installer releases of each version - -!define /date APP_VERSION "${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}svn %Y%m%d" # Version to display - -#-------------------------------- -# Installer file name - -# Typical names for the release are "LyX-1.5.4-1-Installer.exe" etc. - -!ifndef ExeFile - !define /date ExeFile "LyX-${APP_VERSION_MAJOR}${APP_VERSION_MINOR}svn-%Y%m%d-Installer.exe" -!endif -!ifndef BundleExeFile - !define /date BundleExeFile "LyX-${APP_VERSION_MAJOR}${APP_VERSION_MINOR}svn-%Y%m%d-Installer-Bundle.exe" -!endif -!ifndef MinimalExeFile - !define /date MinimalExeFile "LyX-${APP_VERSION_MAJOR}${APP_VERSION_MINOR}svn-%Y%m%d-Installer-Minimal.exe" -!endif - -#-------------------------------- -# File names of component installers - -!define SETUPFILE_LATEX "basic-miktex-2.7.3248.exe" -!define SETUPFILE_IMAGEMAGEMAGICK "ImageMagick-6.4.1-0-Q16-windows-dll.exe" -!define SETUPFILE_GHOSTSCRIPT "gs861w32.exe" - -#-------------------------------- -# Download size of components (in KB) - -!define SIZE_DOWNLOAD_LATEX 78493 -!define SIZE_DOWNLOAD_IMAGEMAGICK 8565 -!define SIZE_DOWNLOAD_GHOSTSCRIPT 12469 - -#-------------------------------- -# Approximations of space required for components (in KB) - -!define SIZE_LATEX 225000 -!define SIZE_IMAGEMAGICK 34500 -!define SIZE_GHOSTSCRIPT 31500 +/* + +Settings for LyX installer + +These typically need to be modified for each LyX release + +*/ + +#-------------------------------- +# Windows version on which the complier is running + +!define COMPILER_OS VISTA +#!define COMPILER_OS XP + +#-------------------------------- +# Version number + +!define APP_VERSION_MAJOR 1 +!define APP_VERSION_MINOR 6 +!define APP_VERSION_REVISION 0 +!define APP_VERSION_BUILD 0 # Start with 1 for the installer releases of each version + +!define /date APP_VERSION "${APP_VERSION_MAJOR}.${APP_VERSION_MINOR}svn %Y%m%d" # Version to display + +#-------------------------------- +# Installer file name + +# Typical names for the release are "LyX-1.5.4-1-Installer.exe" etc. + +!ifndef ExeFile + !define /date ExeFile "LyX-${APP_VERSION_MAJOR}${APP_VERSION_MINOR}svn-%Y%m%d-Installer.exe" +!endif +!ifndef BundleExeFile + !define /date BundleExeFile "LyX-${APP_VERSION_MAJOR}${APP_VERSION_MINOR}svn-%Y%m%d-Installer-Bundle.exe" +!endif +!ifndef MinimalExeFile + !define /date MinimalExeFile "LyX-${APP_VERSION_MAJOR}${APP_VERSION_MINOR}svn-%Y%m%d-Installer-Minimal.exe" +!endif + +#-------------------------------- +# File names of component installers + +!define SETUPFILE_LATEX "basic-miktex-2.7.3248.exe" +!define SETUPFILE_IMAGEMAGEMAGICK "ImageMagick-6.4.1-0-Q16-windows-dll.exe" +!define SETUPFILE_GHOSTSCRIPT "gs861w32.exe" + +#-------------------------------- +# Download size of components (in KB) + +!define SIZE_DOWNLOAD_LATEX 78493 +!define SIZE_DOWNLOAD_IMAGEMAGICK 8565 +!define SIZE_DOWNLOAD_GHOSTSCRIPT 12469 + +#-------------------------------- +# Approximations of space required for components (in KB) + +!define SIZE_LATEX 225000 +!define SIZE_IMAGEMAGICK 34500 +!define SIZE_GHOSTSCRIPT 31500 diff --git a/development/Win32/patches/aiksaurus-june06.patch b/development/Win32/patches/aiksaurus-june06.patch index 40768072f0..d38b46cdc7 100644 --- a/development/Win32/patches/aiksaurus-june06.patch +++ b/development/Win32/patches/aiksaurus-june06.patch @@ -1,131 +1,131 @@ -Index: base/Aiksaurus.cpp -=================================================================== -RCS file: /cvsroot/aiksaurus/base/Aiksaurus.cpp,v -retrieving revision 1.5 -diff -u -r1.5 Aiksaurus.cpp ---- base/Aiksaurus.cpp 3 Apr 2005 19:10:55 -0000 1.5 -+++ base/Aiksaurus.cpp 12 Jul 2006 21:00:20 -0000 -@@ -36,36 +36,69 @@ - using namespace std; - - #if defined WIN32 -+ - #ifdef AIK_DATA_DIR - #undef AIK_DATA_DIR - #endif -- #include -- #define WIN32_LEAN_AND_MEAN -- // Default aik_data_dir is local directory -- std::string AIK_DATA_DIR(".\\"); -- // Regestry Reading for AIK_DATA_DIR -- void ReadRegistry() -- { -- HKEY hKey; -- unsigned long lType; -- DWORD dwSize; -- unsigned char* szValue = NULL; -- if( ::RegOpenKeyEx( HKEY_LOCAL_MACHINE, "Software\\Aiksaurus", 0, KEY_READ, &hKey) == ERROR_SUCCESS ) -- { -- // Determine size of string -- if( ::RegQueryValueEx( hKey, "Data_Dir", NULL, &lType, NULL, &dwSize) == ERROR_SUCCESS ) -- { -- szValue = new unsigned char[dwSize + 1]; -- ::RegQueryValueEx( hKey, "Data_Dir", NULL, &lType, szValue, &dwSize); -- AIK_DATA_DIR = (char*) szValue; -- delete[] szValue; -- } -- } -- } -+ -+#ifndef HAVE_GETENV -+#define HAVE_GETENV -+#endif -+ -+#include -+#define WIN32_LEAN_AND_MEAN -+ -+// Default aik_data_dir is local directory -+std::string AIK_DATA_DIR(".\\"); -+ -+ std::string ReadRegString(HKEY hive, std::string key, std::string name) -+ { -+ -+ // Reads a string from the Windows registry (used to get paths) -+ -+ HKEY hKey; -+ unsigned long lType; -+ DWORD dwSize; -+ unsigned char* szValue = NULL; -+ -+ if (::RegOpenKeyEx(hive, key.c_str(), 0, KEY_READ, &hKey) == ERROR_SUCCESS) -+ { -+ if(::RegQueryValueEx(hKey, name.c_str(), NULL, &lType, NULL, &dwSize) == ERROR_SUCCESS) -+ { -+ szValue = new unsigned char[dwSize + 1]; -+ ::RegQueryValueEx(hKey, name.c_str(), NULL, &lType, szValue, &dwSize); -+ std::string RegistryReturn((char*)szValue); -+ delete[] szValue; -+ return RegistryReturn; -+ } else { -+ return ""; -+ } -+ } else { -+ return ""; -+ } -+ } -+ -+ HKEY GetRegHive() -+ { -+ -+ // Check whether Aiksaurus is installed for the current user or for all users -+ -+ std::string value; -+ -+ if (ReadRegString(HKEY_LOCAL_MACHINE, "Software\\Aiksaurus", "Data Path") == "") -+ { -+ return HKEY_CURRENT_USER; -+ } else { -+ return HKEY_LOCAL_MACHINE; -+ } -+ -+ } -+ - #if defined _DLL_BUILD - //Add a DllMain Entry point - BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { return TRUE; } - #endif -+ - #endif - - namespace AiksaurusImpl -@@ -256,14 +289,25 @@ - try - { - #if defined WIN32 -- ReadRegistry(); -+ std::string base(AIK_DATA_DIR); -+ std::string value; -+ HKEY hive; -+ -+ hive = GetRegHive(); -+ value = (hive, "Software\\Aiksaurus", "Data Path"); -+ if (value != "") base == value; - #endif -- std::string base(AIK_DATA_DIR); -+ - #ifdef HAVE_GETENV -- char * aikdatadir_envvar = getenv ("AIK_DATA_DIR"); -- if (aikdatadir_envvar) base = std::string(aikdatadir_envvar); -+ char * aikdatadir_envvar = getenv ("AIK_DATA_DIR"); -+ if (aikdatadir_envvar) base = std::string(aikdatadir_envvar); -+#endif -+ -+#if defined WIN32 -+ if (base.substr(base.length() - 1, 1) != "\\") base.append("\\"); - #endif -- std::string mfile(base + "meanings.dat"); -+ -+ std::string mfile(base + "meanings.dat"); - std::string wfile(base + "words.dat"); - d_impl_ptr = new ThesaurusImpl(mfile.c_str(), wfile.c_str()); - } +Index: base/Aiksaurus.cpp +=================================================================== +RCS file: /cvsroot/aiksaurus/base/Aiksaurus.cpp,v +retrieving revision 1.5 +diff -u -r1.5 Aiksaurus.cpp +--- base/Aiksaurus.cpp 3 Apr 2005 19:10:55 -0000 1.5 ++++ base/Aiksaurus.cpp 12 Jul 2006 21:00:20 -0000 +@@ -36,36 +36,69 @@ + using namespace std; + + #if defined WIN32 ++ + #ifdef AIK_DATA_DIR + #undef AIK_DATA_DIR + #endif +- #include +- #define WIN32_LEAN_AND_MEAN +- // Default aik_data_dir is local directory +- std::string AIK_DATA_DIR(".\\"); +- // Regestry Reading for AIK_DATA_DIR +- void ReadRegistry() +- { +- HKEY hKey; +- unsigned long lType; +- DWORD dwSize; +- unsigned char* szValue = NULL; +- if( ::RegOpenKeyEx( HKEY_LOCAL_MACHINE, "Software\\Aiksaurus", 0, KEY_READ, &hKey) == ERROR_SUCCESS ) +- { +- // Determine size of string +- if( ::RegQueryValueEx( hKey, "Data_Dir", NULL, &lType, NULL, &dwSize) == ERROR_SUCCESS ) +- { +- szValue = new unsigned char[dwSize + 1]; +- ::RegQueryValueEx( hKey, "Data_Dir", NULL, &lType, szValue, &dwSize); +- AIK_DATA_DIR = (char*) szValue; +- delete[] szValue; +- } +- } +- } ++ ++#ifndef HAVE_GETENV ++#define HAVE_GETENV ++#endif ++ ++#include ++#define WIN32_LEAN_AND_MEAN ++ ++// Default aik_data_dir is local directory ++std::string AIK_DATA_DIR(".\\"); ++ ++ std::string ReadRegString(HKEY hive, std::string key, std::string name) ++ { ++ ++ // Reads a string from the Windows registry (used to get paths) ++ ++ HKEY hKey; ++ unsigned long lType; ++ DWORD dwSize; ++ unsigned char* szValue = NULL; ++ ++ if (::RegOpenKeyEx(hive, key.c_str(), 0, KEY_READ, &hKey) == ERROR_SUCCESS) ++ { ++ if(::RegQueryValueEx(hKey, name.c_str(), NULL, &lType, NULL, &dwSize) == ERROR_SUCCESS) ++ { ++ szValue = new unsigned char[dwSize + 1]; ++ ::RegQueryValueEx(hKey, name.c_str(), NULL, &lType, szValue, &dwSize); ++ std::string RegistryReturn((char*)szValue); ++ delete[] szValue; ++ return RegistryReturn; ++ } else { ++ return ""; ++ } ++ } else { ++ return ""; ++ } ++ } ++ ++ HKEY GetRegHive() ++ { ++ ++ // Check whether Aiksaurus is installed for the current user or for all users ++ ++ std::string value; ++ ++ if (ReadRegString(HKEY_LOCAL_MACHINE, "Software\\Aiksaurus", "Data Path") == "") ++ { ++ return HKEY_CURRENT_USER; ++ } else { ++ return HKEY_LOCAL_MACHINE; ++ } ++ ++ } ++ + #if defined _DLL_BUILD + //Add a DllMain Entry point + BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { return TRUE; } + #endif ++ + #endif + + namespace AiksaurusImpl +@@ -256,14 +289,25 @@ + try + { + #if defined WIN32 +- ReadRegistry(); ++ std::string base(AIK_DATA_DIR); ++ std::string value; ++ HKEY hive; ++ ++ hive = GetRegHive(); ++ value = (hive, "Software\\Aiksaurus", "Data Path"); ++ if (value != "") base == value; + #endif +- std::string base(AIK_DATA_DIR); ++ + #ifdef HAVE_GETENV +- char * aikdatadir_envvar = getenv ("AIK_DATA_DIR"); +- if (aikdatadir_envvar) base = std::string(aikdatadir_envvar); ++ char * aikdatadir_envvar = getenv ("AIK_DATA_DIR"); ++ if (aikdatadir_envvar) base = std::string(aikdatadir_envvar); ++#endif ++ ++#if defined WIN32 ++ if (base.substr(base.length() - 1, 1) != "\\") base.append("\\"); + #endif +- std::string mfile(base + "meanings.dat"); ++ ++ std::string mfile(base + "meanings.dat"); + std::string wfile(base + "words.dat"); + d_impl_ptr = new ThesaurusImpl(mfile.c_str(), wfile.c_str()); + } diff --git a/development/Win32/patches/dtl.patch b/development/Win32/patches/dtl.patch index daf49544a0..2bc759bfb4 100644 --- a/development/Win32/patches/dtl.patch +++ b/development/Win32/patches/dtl.patch @@ -1,220 +1,220 @@ -diff -riwBu -Xex dtl\dt2dv.c dtl-modified\dt2dv.c ---- dtl\dt2dv.c Wed Mar 08 01:00:00 1995 -+++ dtl-modified\dt2dv.c Mon Oct 02 13:28:35 2006 -@@ -1,9 +1,11 @@ - /* dt2dv - convert human-readable "DTL" file to DVI format - - this is intended to invert dv2dt version 0.6.0 -- - version 0.6.1 - 14:38 GMT +11 Thu 9 March 1995 -+ - version 0.6.2 - 27 July 2005 - - Geoffrey Tobin G.Tobin@ee.latrobe.edu.au - - fixes: Michal Tomczak-Jaegermann ntomczak@vm.ucs.ualberta.ca - Nelson H. F. Beebe beebe@math.utah.edu -+ Angus Leeming leeming@lyx.org: Enable dt2dv to handle -+ .dvi files containing strings longer than 1024 chars. - - Reference: "The DVI Driver Standard, Level 0", - by The TUG DVI Driver Standards Committee. - Appendix A, "Device-Independent File Format". -@@ -34,7 +36,7 @@ - size_t max; /* capacity of buf */ - S4 wrote; /* number of characters written into buf */ - size_t read; /* position in buf of next character to read from buf */ -- char * buf; /* line buffer */ -+ unsigned char * buf; /* line buffer */ - } Line; - - char linebuf[MAXLINE+1]; -@@ -1089,7 +1091,7 @@ - dinfo(); - status = 0; - } -- else if ( ! isprint (c) && ! isspace (c)) -+ else if ( ! isprint (c & 0x7f) && ! isspace (c)) - { - PRINT_PROGNAME; - fprintf (stderr, -@@ -2223,7 +2225,7 @@ - /* transfer (length and) quoted string from dtl to dvi file, */ - /* return number of bytes written to dvi file. */ - { -- U4 k, k2; -+ U4 k, k2, lstr_maxsize; - Lstring lstr; - - if (debug) -@@ -2232,12 +2234,13 @@ - fprintf (stderr, "(xfer_len_string) : entering xfer_len_string.\n"); - } - -- init_Lstring (&lstr, LSIZE); -- - /* k[n] : length of special string */ - - k = get_unsigned (dtl); - -+ lstr_maxsize = (k > LSIZE) ? k : LSIZE; -+ init_Lstring (&lstr, lstr_maxsize); -+ - if (debug) - { - PRINT_PROGNAME; -@@ -2567,7 +2570,7 @@ - #ifdef HEX_CHECKSUM - /* c[4] : (hexadecimal) checksum : I (gt) would prefer this */ - xfer_hex (4, dtl, dvi); --#else /NOT HEX_CHECKSUM */ -+#else /*NOT HEX_CHECKSUM */ - /* c[4] : checksum (octal, for comparison with tftopl's .pl file) */ - xfer_oct (4, dtl, dvi); - #endif -diff -riwBu -Xex dtl\Makefile dtl-modified\Makefile ---- dtl\Makefile Tue Sep 19 23:59:17 2006 -+++ dtl-modified\Makefile Wed Jul 05 17:54:20 2006 -@@ -3,6 +3,14 @@ - # Thu 9 March 1995 - # Geoffrey Tobin - # Nelson H. F. Beebe -+# -+# Changes 27 July 2005 by Angus Leeming to enable the Makefile to -+# work out of the box on both *nix and Windows machines under -+# the MinSYS environment. -+# -+# The Makefile can also be used unaltered to build a Windows executable -+# from a Linux box if make is invoked as: -+# $ make EXEEXT='.exe' CC='i386-mingw32-gcc' - #======================================================================= - - BINDIR = /usr/local/bin -@@ -16,10 +24,22 @@ - CP = /bin/cp - DITROFF = ditroff - DITROFF = groff --EXES = dt2dv dv2dt -+ -+# This is a GNU make extension. -+# If you're flavour of make refuses to accept it, -+# then simply hardcode EXEEXT. -+ifeq ($(WINDIR),) -+ EXEEXT = -+else -+ EXEEXT = .exe -+endif -+ -+DT2DV = dt2dv$(EXEEXT) -+DV2DT = dv2dt$(EXEEXT) -+EXES = $(DT2DV) $(DV2DT) - LDFLAGS = -s - LDFLAGS = --MAN2PS = ./man2ps -+MAN2PS = sh ./man2ps - MANDIR = /usr/local/man/man$(MANEXT) - MANEXT = 1 - OBJS = dt2dv.o dv2dt.o -@@ -44,23 +64,24 @@ - - #======================================================================= - --all: dtl check doc -+#all: dtl check doc -+all: dtl check - - doc: dt2dv.hlp dv2dt.hlp dt2dv.ps dv2dt.ps - --dtl: $(EXES) -+dtl: dv2dt dt2dv - - check tests: hello example tripvdu edited - - dv2dt: dv2dt.o dtl.h -- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $@.o -+ $(CC) $(CFLAGS) $(LDFLAGS) -o $(DV2DT) dv2dt.o - - dt2dv: dt2dv.o dtl.h -- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $@.o -+ $(CC) $(CFLAGS) $(LDFLAGS) -o $(DT2DV) dt2dv.o - --hello: hello.dtl $(EXES) -- dt2dv hello.dtl hello2.dvi -- dv2dt hello2.dvi hello2.dtl -+hello: hello.dtl dv2dt dt2dv -+ ./$(DT2DV) hello.dtl hello2.dvi -+ ./$(DV2DT) hello2.dvi hello2.dtl - -@diff hello.dtl hello2.dtl > hello.dif - @if [ -s hello.dif ] ; \ - then echo ERROR: differences in hello.dif ; \ -@@ -69,11 +90,11 @@ - - hello.dtl: hello.tex - tex hello -- dv2dt hello.dvi hello.dtl -+ ./$(DV2DT) hello.dvi hello.dtl - --example: example.dtl $(EXES) -- dt2dv example.dtl example2.dvi -- dv2dt example2.dvi example2.dtl -+example: example.dtl dv2dt dt2dv -+ ./$(DT2DV) example.dtl example2.dvi -+ ./$(DV2DT) example2.dvi example2.dtl - -@diff example.dtl example2.dtl > example.dif - @if [ -s example.dif ] ; \ - then echo ERROR: differences in example.dif ; \ -@@ -82,11 +103,11 @@ - - example.dtl: example.tex - tex example -- dv2dt example.dvi example.dtl -+ ./$(DV2DT) example.dvi example.dtl - --tripvdu: tripvdu.dtl $(EXES) -- dt2dv tripvdu.dtl tripvdu2.dvi -- dv2dt tripvdu2.dvi tripvdu2.dtl -+tripvdu: tripvdu.dtl dv2dt dt2dv -+ ./$(DT2DV) tripvdu.dtl tripvdu2.dvi -+ ./$(DV2DT) tripvdu2.dvi tripvdu2.dtl - -@diff tripvdu.dtl tripvdu2.dtl > tripvdu.dif - @if [ -s tripvdu.dif ] ; \ - then echo ERROR: differences in tripvdu.dif ; \ -@@ -95,15 +116,15 @@ - - tripvdu.dtl: tripvdu.tex - tex tripvdu -- dv2dt tripvdu.dvi tripvdu.dtl -+ ./$(DV2DT) tripvdu.dvi tripvdu.dtl - - # edited.txt is already a dtl file. - --edited: edited.txt $(EXES) -- dt2dv edited.txt edited.dvi -- dv2dt edited.dvi edited2.dtl -- dt2dv edited2.dtl edited2.dvi -- dv2dt edited2.dvi edited3.dtl -+edited: edited.txt dv2dt dt2dv -+ ./$(DT2DV) edited.txt edited.dvi -+ ./$(DV2DT) edited.dvi edited2.dtl -+ ./$(DT2DV) edited2.dtl edited2.dvi -+ ./$(DV2DT) edited2.dvi edited3.dtl - @if [ -s edited.dif ] ; \ - then echo ERROR : differences in edited.dif ; \ - else $(RM) edited.dif ; \ -diff -riwBu -Xex dtl\man2ps dtl-modified\man2ps ---- dtl\man2ps Tue Sep 19 23:59:22 2006 -+++ dtl-modified\man2ps Wed Sep 20 00:03:05 2006 -@@ -20,16 +20,16 @@ - esac - - # We can use either GNU groff or Sun Solaris troff + dpost --if [ -x /usr/local/bin/groff ] -+if [ which groff > /dev/null ] - then # GNU groff - TROFF="groff $FORMAT" - TROFF2PS="cat" --elif [ -x /usr/lib/lp/postscript/dpost ] -++elif [ which dpost > /dev/null ] - then # Solaris 2.1 - TROFF="troff $FORMAT" - TROFF2PS="/usr/lib/lp/postscript/dpost" - else -- echo "Cannot find troff-to-PostScript filter" -++ echo "Cannot find troff-to-PostScript filter" >&2 - exit 1 - fi - +diff -riwBu -Xex dtl\dt2dv.c dtl-modified\dt2dv.c +--- dtl\dt2dv.c Wed Mar 08 01:00:00 1995 ++++ dtl-modified\dt2dv.c Mon Oct 02 13:28:35 2006 +@@ -1,9 +1,11 @@ + /* dt2dv - convert human-readable "DTL" file to DVI format + - this is intended to invert dv2dt version 0.6.0 +- - version 0.6.1 - 14:38 GMT +11 Thu 9 March 1995 ++ - version 0.6.2 - 27 July 2005 + - Geoffrey Tobin G.Tobin@ee.latrobe.edu.au + - fixes: Michal Tomczak-Jaegermann ntomczak@vm.ucs.ualberta.ca + Nelson H. F. Beebe beebe@math.utah.edu ++ Angus Leeming leeming@lyx.org: Enable dt2dv to handle ++ .dvi files containing strings longer than 1024 chars. + - Reference: "The DVI Driver Standard, Level 0", + by The TUG DVI Driver Standards Committee. + Appendix A, "Device-Independent File Format". +@@ -34,7 +36,7 @@ + size_t max; /* capacity of buf */ + S4 wrote; /* number of characters written into buf */ + size_t read; /* position in buf of next character to read from buf */ +- char * buf; /* line buffer */ ++ unsigned char * buf; /* line buffer */ + } Line; + + char linebuf[MAXLINE+1]; +@@ -1089,7 +1091,7 @@ + dinfo(); + status = 0; + } +- else if ( ! isprint (c) && ! isspace (c)) ++ else if ( ! isprint (c & 0x7f) && ! isspace (c)) + { + PRINT_PROGNAME; + fprintf (stderr, +@@ -2223,7 +2225,7 @@ + /* transfer (length and) quoted string from dtl to dvi file, */ + /* return number of bytes written to dvi file. */ + { +- U4 k, k2; ++ U4 k, k2, lstr_maxsize; + Lstring lstr; + + if (debug) +@@ -2232,12 +2234,13 @@ + fprintf (stderr, "(xfer_len_string) : entering xfer_len_string.\n"); + } + +- init_Lstring (&lstr, LSIZE); +- + /* k[n] : length of special string */ + + k = get_unsigned (dtl); + ++ lstr_maxsize = (k > LSIZE) ? k : LSIZE; ++ init_Lstring (&lstr, lstr_maxsize); ++ + if (debug) + { + PRINT_PROGNAME; +@@ -2567,7 +2570,7 @@ + #ifdef HEX_CHECKSUM + /* c[4] : (hexadecimal) checksum : I (gt) would prefer this */ + xfer_hex (4, dtl, dvi); +-#else /NOT HEX_CHECKSUM */ ++#else /*NOT HEX_CHECKSUM */ + /* c[4] : checksum (octal, for comparison with tftopl's .pl file) */ + xfer_oct (4, dtl, dvi); + #endif +diff -riwBu -Xex dtl\Makefile dtl-modified\Makefile +--- dtl\Makefile Tue Sep 19 23:59:17 2006 ++++ dtl-modified\Makefile Wed Jul 05 17:54:20 2006 +@@ -3,6 +3,14 @@ + # Thu 9 March 1995 + # Geoffrey Tobin + # Nelson H. F. Beebe ++# ++# Changes 27 July 2005 by Angus Leeming to enable the Makefile to ++# work out of the box on both *nix and Windows machines under ++# the MinSYS environment. ++# ++# The Makefile can also be used unaltered to build a Windows executable ++# from a Linux box if make is invoked as: ++# $ make EXEEXT='.exe' CC='i386-mingw32-gcc' + #======================================================================= + + BINDIR = /usr/local/bin +@@ -16,10 +24,22 @@ + CP = /bin/cp + DITROFF = ditroff + DITROFF = groff +-EXES = dt2dv dv2dt ++ ++# This is a GNU make extension. ++# If you're flavour of make refuses to accept it, ++# then simply hardcode EXEEXT. ++ifeq ($(WINDIR),) ++ EXEEXT = ++else ++ EXEEXT = .exe ++endif ++ ++DT2DV = dt2dv$(EXEEXT) ++DV2DT = dv2dt$(EXEEXT) ++EXES = $(DT2DV) $(DV2DT) + LDFLAGS = -s + LDFLAGS = +-MAN2PS = ./man2ps ++MAN2PS = sh ./man2ps + MANDIR = /usr/local/man/man$(MANEXT) + MANEXT = 1 + OBJS = dt2dv.o dv2dt.o +@@ -44,23 +64,24 @@ + + #======================================================================= + +-all: dtl check doc ++#all: dtl check doc ++all: dtl check + + doc: dt2dv.hlp dv2dt.hlp dt2dv.ps dv2dt.ps + +-dtl: $(EXES) ++dtl: dv2dt dt2dv + + check tests: hello example tripvdu edited + + dv2dt: dv2dt.o dtl.h +- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $@.o ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $(DV2DT) dv2dt.o + + dt2dv: dt2dv.o dtl.h +- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $@.o ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $(DT2DV) dt2dv.o + +-hello: hello.dtl $(EXES) +- dt2dv hello.dtl hello2.dvi +- dv2dt hello2.dvi hello2.dtl ++hello: hello.dtl dv2dt dt2dv ++ ./$(DT2DV) hello.dtl hello2.dvi ++ ./$(DV2DT) hello2.dvi hello2.dtl + -@diff hello.dtl hello2.dtl > hello.dif + @if [ -s hello.dif ] ; \ + then echo ERROR: differences in hello.dif ; \ +@@ -69,11 +90,11 @@ + + hello.dtl: hello.tex + tex hello +- dv2dt hello.dvi hello.dtl ++ ./$(DV2DT) hello.dvi hello.dtl + +-example: example.dtl $(EXES) +- dt2dv example.dtl example2.dvi +- dv2dt example2.dvi example2.dtl ++example: example.dtl dv2dt dt2dv ++ ./$(DT2DV) example.dtl example2.dvi ++ ./$(DV2DT) example2.dvi example2.dtl + -@diff example.dtl example2.dtl > example.dif + @if [ -s example.dif ] ; \ + then echo ERROR: differences in example.dif ; \ +@@ -82,11 +103,11 @@ + + example.dtl: example.tex + tex example +- dv2dt example.dvi example.dtl ++ ./$(DV2DT) example.dvi example.dtl + +-tripvdu: tripvdu.dtl $(EXES) +- dt2dv tripvdu.dtl tripvdu2.dvi +- dv2dt tripvdu2.dvi tripvdu2.dtl ++tripvdu: tripvdu.dtl dv2dt dt2dv ++ ./$(DT2DV) tripvdu.dtl tripvdu2.dvi ++ ./$(DV2DT) tripvdu2.dvi tripvdu2.dtl + -@diff tripvdu.dtl tripvdu2.dtl > tripvdu.dif + @if [ -s tripvdu.dif ] ; \ + then echo ERROR: differences in tripvdu.dif ; \ +@@ -95,15 +116,15 @@ + + tripvdu.dtl: tripvdu.tex + tex tripvdu +- dv2dt tripvdu.dvi tripvdu.dtl ++ ./$(DV2DT) tripvdu.dvi tripvdu.dtl + + # edited.txt is already a dtl file. + +-edited: edited.txt $(EXES) +- dt2dv edited.txt edited.dvi +- dv2dt edited.dvi edited2.dtl +- dt2dv edited2.dtl edited2.dvi +- dv2dt edited2.dvi edited3.dtl ++edited: edited.txt dv2dt dt2dv ++ ./$(DT2DV) edited.txt edited.dvi ++ ./$(DV2DT) edited.dvi edited2.dtl ++ ./$(DT2DV) edited2.dtl edited2.dvi ++ ./$(DV2DT) edited2.dvi edited3.dtl + @if [ -s edited.dif ] ; \ + then echo ERROR : differences in edited.dif ; \ + else $(RM) edited.dif ; \ +diff -riwBu -Xex dtl\man2ps dtl-modified\man2ps +--- dtl\man2ps Tue Sep 19 23:59:22 2006 ++++ dtl-modified\man2ps Wed Sep 20 00:03:05 2006 +@@ -20,16 +20,16 @@ + esac + + # We can use either GNU groff or Sun Solaris troff + dpost +-if [ -x /usr/local/bin/groff ] ++if [ which groff > /dev/null ] + then # GNU groff + TROFF="groff $FORMAT" + TROFF2PS="cat" +-elif [ -x /usr/lib/lp/postscript/dpost ] +++elif [ which dpost > /dev/null ] + then # Solaris 2.1 + TROFF="troff $FORMAT" + TROFF2PS="/usr/lib/lp/postscript/dpost" + else +- echo "Cannot find troff-to-PostScript filter" +++ echo "Cannot find troff-to-PostScript filter" >&2 + exit 1 + fi + diff --git a/development/Win32/patches/dvipost-1.1.patch b/development/Win32/patches/dvipost-1.1.patch index cde6fe2086..ba2f5e8ba3 100644 --- a/development/Win32/patches/dvipost-1.1.patch +++ b/development/Win32/patches/dvipost-1.1.patch @@ -1,360 +1,360 @@ -diff -riwbBu -Xex dvipost-1.1/dvi.c dvipost-1.1-modified/dvi.c ---- dvipost-1.1/dvi.c Wed Mar 22 14:59:58 2006 -+++ dvipost-1.1-modified/dvi.c Wed May 31 11:27:44 2006 -@@ -502,8 +502,12 @@ - for (i = 0; i < pos_changed.dim; i++) - { - POS *p = pos_changed.tab + i; -+ if (!p->type) -+ dout_special(out, osstart); - cmd_goto(out, p->end, cbcol); - dout_putrule(out, p->end - p->beg, cbrule); -+ if (!p->type) -+ dout_special(out, osend); - } - - dout_special(out, cbend); -@@ -625,10 +629,9 @@ - mv_right(w); - text_cnt++; - -- if (!cbmode[page_stat]) return; -- -+ if (!cbmode[page_stat] && !osmode[page_stat]) return; - pos_add(&pos_changed, dvi_stat.v - text_height - cbexp, -- dvi_stat.v + text_depth + cbexp); -+ dvi_stat.v + text_depth + cbexp, cbmode[page_stat]); - - if (cbframe) - { -diff -riwbBu -Xex dvipost-1.1/dvipost.c dvipost-1.1-modified/dvipost.c ---- dvipost-1.1/dvipost.c Mon Nov 4 08:44:46 2002 -+++ dvipost-1.1-modified/dvipost.c Mon Sep 18 13:11:58 2006 -@@ -1,6 +1,7 @@ - /* dvi file post processing - - $Copyright (C) 2002 Erich Fruehstueck -+Modified version by LyX Team - - Dvipost is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public -@@ -18,13 +19,20 @@ - 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. - */ - -- - #include "dvipost.h" - #include "dvi.h" -+#if !defined(_MSC_VER) - #include - #include -+#else -+#include "dirent.h" -+#endif - #include - -+#ifdef _WIN32 -+#include -+#endif -+ - int dvipost (const char *iname, const char *oname) - { - FILE *input, *tmp, *output; -@@ -33,7 +41,19 @@ - - /* open temporary file - */ -+#ifndef _WIN32 - tmp = tmpfile(); -+#else -+ /* create temporary file in Windows temp directory */ -+ -+ char tmppath[MAX_PATH-14]; -+ char tmpname[MAX_PATH]; -+ -+ GetTempPath(MAX_PATH-14, tmppath); -+ GetTempFileName(tmppath, "dvp", 0, tmpname); -+ -+ tmp = fopen(tmpname, "r+b"); -+#endif - - if (!tmp) - { -@@ -57,8 +77,10 @@ - } - else - { -+#ifndef _WIN32 - iname = ""; - input = stdin; -+#endif - } - - /* check magic and process input -@@ -94,6 +116,8 @@ - - /* copy file to output - */ -+ -+#ifndef _WIN32 - rewind(tmp); - - if (oname && strcmp(oname, "-") != 0) -@@ -113,23 +137,20 @@ - oname = ""; - output = stdout; - } -+#endif - - message(NOTE, "$!: Copy data to %s\n", oname); - -- while ((c = getc(tmp)) != EOF) -- putc(c, output); -- -+#ifndef _WIN32 -+ while ((c = getc(tmp)) != EOF) putc(c, output); - fclose(tmp); -+#else -+ /* Copy file directly */ -+ fclose(tmp); -+ CopyFile(tmpname, oname, FALSE); -+ DeleteFile(tmpname); -+#endif - -- if (ferror(output)) -- { -- fprintf(stderr, "%s: ", pname); -- perror(oname); -- stat = EXIT_FAILURE; -- } -- else stat = EXIT_SUCCESS; -- -- fclose(output); - return stat; - } -diff -riwbBu -Xex dvipost-1.1/dvipost.h dvipost-1.1-modified/dvipost.h ---- dvipost-1.1/dvipost.h Mon Nov 4 08:44:46 2002 -+++ dvipost-1.1-modified/dvipost.h Sun Sep 17 22:03:51 2006 -@@ -1,6 +1,7 @@ - /* postfilter - - $Copyright (C) 2002 Erich Fruehstueck -+Modified version by LyX Team - - Dvipost is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public -@@ -44,6 +45,7 @@ - typedef struct { - int beg; - int end; -+ int type; - } POS; - - typedef struct { -@@ -53,7 +55,7 @@ - } PosTab; - - void pos_init (PosTab *pos); --void pos_add (PosTab *pos, int beg, int end); -+void pos_add (PosTab *pos, int beg, int end, int type); - - extern int process_dvi (const char *id, FILE *in, FILE *out); - extern int dvipost (const char *iname, const char *oname); -diff -riwbBu -Xex dvipost-1.1/main.c dvipost-1.1-modified/main.c ---- dvipost-1.1/main.c Wed Nov 27 15:19:14 2002 -+++ dvipost-1.1-modified/main.c Sun Sep 17 21:56:42 2006 -@@ -24,15 +24,19 @@ - #define TEX_ACCEPT_OPTIONS 1 - #endif - --static char *version = "dvipost version 1.0\n\ -+static char *version = "dvipost version 1.1 with modifications by LyX Team (sep 2006)\n\ - Dvipost is copyright (C) 2002 Erich Fruehstueck.\n"; - - #include "dvipost.h" - #include "dvi.h" -+#if !defined(_MSC_VER) - #include -+#endif - #include - #include -+#ifndef _WIN32 - #include -+#endif - - char **tex_argv = NULL; - int tex_argc = 0; -@@ -233,17 +237,26 @@ - return stat; - } - --static char *get_dvi_name (const char *arg) -+static char *get_dvi_name (char *arg) - { - char *p, *dvi; - -+#ifdef _WIN32 -+ int i; -+ -+ for (i=0; i < strlen(arg); ++i) { -+ if (arg[i] == '\\') -+ arg[i] = '/'; -+ } -+#endif -+ - p = strrchr(arg, '/'); - - if (p && p[1]) - arg = p + 1; - -- dvi = strcpy(xalloc(strlen(arg) + 4), arg); -- p = strchr(dvi, '.'); -+ dvi = strcpy(xalloc(strlen(arg) + 5), arg); -+ p = strrchr(dvi, '.'); - - if (p && strcmp(p, ".tex") == 0) - *p = 0; -@@ -267,14 +280,32 @@ - char *dviname; - int flag; - int i, n; -+#ifdef _WIN32 -+ char *cmd; -+ char *qch; -+ char *p; -+#else - int status; - pid_t pid; -+#endif - time_t stamp; - - tex_argv = xalloc((1 + argc) * sizeof(char*)); - tex_argv[0] = argv[0]; - tex_argc = 1; - -+#ifdef _WIN32 -+ for (i=0; i < strlen(argv[0]); ++i) { -+ if (argv[0][i] == '\\') -+ argv[0][i] = '/'; -+ } -+ -+ p = strrchr(argv[0], '.'); -+ -+ if (p && strcmp(p, ".exe") == 0) -+ *p = 0; -+#endif -+ - pname = strrchr(argv[0], '/'); - - if (pname == NULL) pname = argv[0]; -@@ -356,6 +387,34 @@ - fflush(stdout); - - time(&stamp); -+#ifdef _WIN32 -+ for (i=0, n=0; i < tex_argc; ++i) { -+ n += strlen(tex_argv[i]); -+ qch = tex_argv[i]; -+ while ((qch = strchr(qch, '"'))) { -+ ++qch; -+ ++n; -+ } -+ } -+ -+ cmd = xalloc(1 + n + 3*(tex_argc-1)); -+ strcpy(cmd, tex_argv[0]); -+ -+ for (i=1, n=strlen(cmd); i < tex_argc; ++i) -+ { -+ cmd[n++] = ' '; -+ cmd[n++] = '"'; -+ for (qch=tex_argv[i]; *qch; ++qch) { -+ if (*qch == '"') -+ cmd[n++] = '\\'; -+ cmd[n++] = *qch; -+ } -+ cmd[n++] = '"'; -+ } -+ cmd[n] = '\0'; -+ system(cmd); -+ xfree(cmd); -+#else - pid = fork(); - - if (pid == -1) -@@ -368,6 +427,7 @@ - execvp(tex_argv[0], tex_argv); - - waitpid(pid, &status, 0); -+#endif - - if (dviname) - return dvipost(dviname, dviname); -diff -riwbBu -Xex dvipost-1.1/pos.c dvipost-1.1-modified/pos.c ---- dvipost-1.1/pos.c Tue Oct 29 12:54:02 2002 -+++ dvipost-1.1-modified/pos.c Sun Sep 17 22:03:41 2006 -@@ -1,6 +1,7 @@ - /* position table - - $Copyright (C) 2002 Erich Fruehstueck -+Modified version by LyX Team - - Dvipost is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public -@@ -39,7 +40,7 @@ - pos->dim = 0; - } - --void pos_add (PosTab *pos, int beg, int end) -+void pos_add (PosTab *pos, int beg, int end, int type) - { - if (beg > end) - { -@@ -56,7 +57,7 @@ - { - if (last->end < end) last->end = end; - if (last->beg > beg) last->beg = beg; -- -+ if (last->type < type) last->type = type; - return; - } - } -@@ -64,5 +65,6 @@ - pos_expand(pos); - pos->tab[pos->dim].beg = beg; - pos->tab[pos->dim].end = end; -+ pos->tab[pos->dim].type = type; - pos->dim++; - } -diff -riwbBu -Xex dvipost-1.1/tfm.c dvipost-1.1-modified/tfm.c ---- dvipost-1.1/tfm.c Sun Nov 3 09:52:04 2002 -+++ dvipost-1.1-modified/tfm.c Sun Sep 17 22:03:44 2006 -@@ -1,6 +1,7 @@ - /* tfm data - - $Copyright (C) 2002 Erich Fruehstueck -+Modified version by LyX Team - - Dvipost is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public -@@ -22,6 +23,11 @@ - #include "dvi.h" - #include - -+#if defined(_MSC_VER) -+#define popen _popen -+#define pclose _pclose -+#endif -+ - static char tfm_buf[1024]; - static int tfm_err = 0; - static int tfm_pos = 0; -@@ -112,6 +118,8 @@ - { - if (tfm_buf[n] == '\n') - { -+ if (n && tfm_buf[n-1] == '\r') -+ n--; - tfm_buf[n] = 0; - break; - } +diff -riwbBu -Xex dvipost-1.1/dvi.c dvipost-1.1-modified/dvi.c +--- dvipost-1.1/dvi.c Wed Mar 22 14:59:58 2006 ++++ dvipost-1.1-modified/dvi.c Wed May 31 11:27:44 2006 +@@ -502,8 +502,12 @@ + for (i = 0; i < pos_changed.dim; i++) + { + POS *p = pos_changed.tab + i; ++ if (!p->type) ++ dout_special(out, osstart); + cmd_goto(out, p->end, cbcol); + dout_putrule(out, p->end - p->beg, cbrule); ++ if (!p->type) ++ dout_special(out, osend); + } + + dout_special(out, cbend); +@@ -625,10 +629,9 @@ + mv_right(w); + text_cnt++; + +- if (!cbmode[page_stat]) return; +- ++ if (!cbmode[page_stat] && !osmode[page_stat]) return; + pos_add(&pos_changed, dvi_stat.v - text_height - cbexp, +- dvi_stat.v + text_depth + cbexp); ++ dvi_stat.v + text_depth + cbexp, cbmode[page_stat]); + + if (cbframe) + { +diff -riwbBu -Xex dvipost-1.1/dvipost.c dvipost-1.1-modified/dvipost.c +--- dvipost-1.1/dvipost.c Mon Nov 4 08:44:46 2002 ++++ dvipost-1.1-modified/dvipost.c Mon Sep 18 13:11:58 2006 +@@ -1,6 +1,7 @@ + /* dvi file post processing + + $Copyright (C) 2002 Erich Fruehstueck ++Modified version by LyX Team + + Dvipost is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public +@@ -18,13 +19,20 @@ + 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. + */ + +- + #include "dvipost.h" + #include "dvi.h" ++#if !defined(_MSC_VER) + #include + #include ++#else ++#include "dirent.h" ++#endif + #include + ++#ifdef _WIN32 ++#include ++#endif ++ + int dvipost (const char *iname, const char *oname) + { + FILE *input, *tmp, *output; +@@ -33,7 +41,19 @@ + + /* open temporary file + */ ++#ifndef _WIN32 + tmp = tmpfile(); ++#else ++ /* create temporary file in Windows temp directory */ ++ ++ char tmppath[MAX_PATH-14]; ++ char tmpname[MAX_PATH]; ++ ++ GetTempPath(MAX_PATH-14, tmppath); ++ GetTempFileName(tmppath, "dvp", 0, tmpname); ++ ++ tmp = fopen(tmpname, "r+b"); ++#endif + + if (!tmp) + { +@@ -57,8 +77,10 @@ + } + else + { ++#ifndef _WIN32 + iname = ""; + input = stdin; ++#endif + } + + /* check magic and process input +@@ -94,6 +116,8 @@ + + /* copy file to output + */ ++ ++#ifndef _WIN32 + rewind(tmp); + + if (oname && strcmp(oname, "-") != 0) +@@ -113,23 +137,20 @@ + oname = ""; + output = stdout; + } ++#endif + + message(NOTE, "$!: Copy data to %s\n", oname); + +- while ((c = getc(tmp)) != EOF) +- putc(c, output); +- ++#ifndef _WIN32 ++ while ((c = getc(tmp)) != EOF) putc(c, output); + fclose(tmp); ++#else ++ /* Copy file directly */ ++ fclose(tmp); ++ CopyFile(tmpname, oname, FALSE); ++ DeleteFile(tmpname); ++#endif + +- if (ferror(output)) +- { +- fprintf(stderr, "%s: ", pname); +- perror(oname); +- stat = EXIT_FAILURE; +- } +- else stat = EXIT_SUCCESS; +- +- fclose(output); + return stat; + } +diff -riwbBu -Xex dvipost-1.1/dvipost.h dvipost-1.1-modified/dvipost.h +--- dvipost-1.1/dvipost.h Mon Nov 4 08:44:46 2002 ++++ dvipost-1.1-modified/dvipost.h Sun Sep 17 22:03:51 2006 +@@ -1,6 +1,7 @@ + /* postfilter + + $Copyright (C) 2002 Erich Fruehstueck ++Modified version by LyX Team + + Dvipost is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public +@@ -44,6 +45,7 @@ + typedef struct { + int beg; + int end; ++ int type; + } POS; + + typedef struct { +@@ -53,7 +55,7 @@ + } PosTab; + + void pos_init (PosTab *pos); +-void pos_add (PosTab *pos, int beg, int end); ++void pos_add (PosTab *pos, int beg, int end, int type); + + extern int process_dvi (const char *id, FILE *in, FILE *out); + extern int dvipost (const char *iname, const char *oname); +diff -riwbBu -Xex dvipost-1.1/main.c dvipost-1.1-modified/main.c +--- dvipost-1.1/main.c Wed Nov 27 15:19:14 2002 ++++ dvipost-1.1-modified/main.c Sun Sep 17 21:56:42 2006 +@@ -24,15 +24,19 @@ + #define TEX_ACCEPT_OPTIONS 1 + #endif + +-static char *version = "dvipost version 1.0\n\ ++static char *version = "dvipost version 1.1 with modifications by LyX Team (sep 2006)\n\ + Dvipost is copyright (C) 2002 Erich Fruehstueck.\n"; + + #include "dvipost.h" + #include "dvi.h" ++#if !defined(_MSC_VER) + #include ++#endif + #include + #include ++#ifndef _WIN32 + #include ++#endif + + char **tex_argv = NULL; + int tex_argc = 0; +@@ -233,17 +237,26 @@ + return stat; + } + +-static char *get_dvi_name (const char *arg) ++static char *get_dvi_name (char *arg) + { + char *p, *dvi; + ++#ifdef _WIN32 ++ int i; ++ ++ for (i=0; i < strlen(arg); ++i) { ++ if (arg[i] == '\\') ++ arg[i] = '/'; ++ } ++#endif ++ + p = strrchr(arg, '/'); + + if (p && p[1]) + arg = p + 1; + +- dvi = strcpy(xalloc(strlen(arg) + 4), arg); +- p = strchr(dvi, '.'); ++ dvi = strcpy(xalloc(strlen(arg) + 5), arg); ++ p = strrchr(dvi, '.'); + + if (p && strcmp(p, ".tex") == 0) + *p = 0; +@@ -267,14 +280,32 @@ + char *dviname; + int flag; + int i, n; ++#ifdef _WIN32 ++ char *cmd; ++ char *qch; ++ char *p; ++#else + int status; + pid_t pid; ++#endif + time_t stamp; + + tex_argv = xalloc((1 + argc) * sizeof(char*)); + tex_argv[0] = argv[0]; + tex_argc = 1; + ++#ifdef _WIN32 ++ for (i=0; i < strlen(argv[0]); ++i) { ++ if (argv[0][i] == '\\') ++ argv[0][i] = '/'; ++ } ++ ++ p = strrchr(argv[0], '.'); ++ ++ if (p && strcmp(p, ".exe") == 0) ++ *p = 0; ++#endif ++ + pname = strrchr(argv[0], '/'); + + if (pname == NULL) pname = argv[0]; +@@ -356,6 +387,34 @@ + fflush(stdout); + + time(&stamp); ++#ifdef _WIN32 ++ for (i=0, n=0; i < tex_argc; ++i) { ++ n += strlen(tex_argv[i]); ++ qch = tex_argv[i]; ++ while ((qch = strchr(qch, '"'))) { ++ ++qch; ++ ++n; ++ } ++ } ++ ++ cmd = xalloc(1 + n + 3*(tex_argc-1)); ++ strcpy(cmd, tex_argv[0]); ++ ++ for (i=1, n=strlen(cmd); i < tex_argc; ++i) ++ { ++ cmd[n++] = ' '; ++ cmd[n++] = '"'; ++ for (qch=tex_argv[i]; *qch; ++qch) { ++ if (*qch == '"') ++ cmd[n++] = '\\'; ++ cmd[n++] = *qch; ++ } ++ cmd[n++] = '"'; ++ } ++ cmd[n] = '\0'; ++ system(cmd); ++ xfree(cmd); ++#else + pid = fork(); + + if (pid == -1) +@@ -368,6 +427,7 @@ + execvp(tex_argv[0], tex_argv); + + waitpid(pid, &status, 0); ++#endif + + if (dviname) + return dvipost(dviname, dviname); +diff -riwbBu -Xex dvipost-1.1/pos.c dvipost-1.1-modified/pos.c +--- dvipost-1.1/pos.c Tue Oct 29 12:54:02 2002 ++++ dvipost-1.1-modified/pos.c Sun Sep 17 22:03:41 2006 +@@ -1,6 +1,7 @@ + /* position table + + $Copyright (C) 2002 Erich Fruehstueck ++Modified version by LyX Team + + Dvipost is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public +@@ -39,7 +40,7 @@ + pos->dim = 0; + } + +-void pos_add (PosTab *pos, int beg, int end) ++void pos_add (PosTab *pos, int beg, int end, int type) + { + if (beg > end) + { +@@ -56,7 +57,7 @@ + { + if (last->end < end) last->end = end; + if (last->beg > beg) last->beg = beg; +- ++ if (last->type < type) last->type = type; + return; + } + } +@@ -64,5 +65,6 @@ + pos_expand(pos); + pos->tab[pos->dim].beg = beg; + pos->tab[pos->dim].end = end; ++ pos->tab[pos->dim].type = type; + pos->dim++; + } +diff -riwbBu -Xex dvipost-1.1/tfm.c dvipost-1.1-modified/tfm.c +--- dvipost-1.1/tfm.c Sun Nov 3 09:52:04 2002 ++++ dvipost-1.1-modified/tfm.c Sun Sep 17 22:03:44 2006 +@@ -1,6 +1,7 @@ + /* tfm data + + $Copyright (C) 2002 Erich Fruehstueck ++Modified version by LyX Team + + Dvipost is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public +@@ -22,6 +23,11 @@ + #include "dvi.h" + #include + ++#if defined(_MSC_VER) ++#define popen _popen ++#define pclose _pclose ++#endif ++ + static char tfm_buf[1024]; + static int tfm_err = 0; + static int tfm_pos = 0; +@@ -112,6 +118,8 @@ + { + if (tfm_buf[n] == '\n') + { ++ if (n && tfm_buf[n-1] == '\r') ++ n--; + tfm_buf[n] = 0; + break; + } diff --git a/development/Win32/patches/mingw/gettext-0.14.5.patch b/development/Win32/patches/mingw/gettext-0.14.5.patch index 7ec264131e..f7ab71f586 100644 --- a/development/Win32/patches/mingw/gettext-0.14.5.patch +++ b/development/Win32/patches/mingw/gettext-0.14.5.patch @@ -1,329 +1,329 @@ -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/hostname.c gettext-tools/src/hostname.c ---- gettext-tools/src/hostname.c 2005-05-20 16:40:02.000000000 -0400 -+++ gettext-tools/src/hostname.c 2005-11-11 11:02:07.203125000 -0500 -@@ -99,7 +99,7 @@ - static enum { default_format, short_format, long_format, ip_format } format; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "fqdn", no_argument, NULL, 'f' }, - { "help", no_argument, NULL, 'h' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgattrib.c gettext-tools/src/msgattrib.c ---- gettext-tools/src/msgattrib.c 2005-05-20 16:40:15.000000000 -0400 -+++ gettext-tools/src/msgattrib.c 2005-11-11 11:01:39.484375000 -0500 -@@ -69,7 +69,7 @@ - static int to_change; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "add-location", no_argument, &line_comment, 1 }, - { "clear-fuzzy", no_argument, NULL, CHAR_MAX + 8 }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgcat.c gettext-tools/src/msgcat.c ---- gettext-tools/src/msgcat.c 2005-05-20 16:40:19.000000000 -0400 -+++ gettext-tools/src/msgcat.c 2005-11-11 11:02:33.109375000 -0500 -@@ -53,7 +53,7 @@ - static const char *to_code; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "add-location", no_argument, &line_comment, 1 }, - { "directory", required_argument, NULL, 'D' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgcmp.c gettext-tools/src/msgcmp.c ---- gettext-tools/src/msgcmp.c 2005-05-20 16:40:23.000000000 -0400 -+++ gettext-tools/src/msgcmp.c 2005-11-11 11:02:51.906250000 -0500 -@@ -49,7 +49,7 @@ - static bool multi_domain_mode = false; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "directory", required_argument, NULL, 'D' }, - { "help", no_argument, NULL, 'h' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgcomm.c gettext-tools/src/msgcomm.c ---- gettext-tools/src/msgcomm.c 2005-05-20 16:40:27.000000000 -0400 -+++ gettext-tools/src/msgcomm.c 2005-11-11 11:03:09.406250000 -0500 -@@ -55,7 +55,7 @@ - static const char *to_code; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "add-location", no_argument, &line_comment, 1 }, - { "directory", required_argument, NULL, 'D' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgconv.c gettext-tools/src/msgconv.c ---- gettext-tools/src/msgconv.c 2005-05-20 16:40:31.000000000 -0400 -+++ gettext-tools/src/msgconv.c 2005-11-11 11:03:21.671875000 -0500 -@@ -52,7 +52,7 @@ - static const char *to_code; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "add-location", no_argument, &line_comment, 1 }, - { "directory", required_argument, NULL, 'D' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgen.c gettext-tools/src/msgen.c ---- gettext-tools/src/msgen.c 2005-05-20 16:40:35.000000000 -0400 -+++ gettext-tools/src/msgen.c 2005-11-11 11:03:54.531250000 -0500 -@@ -48,7 +48,7 @@ - static int force_po; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "add-location", no_argument, &line_comment, 1 }, - { "directory", required_argument, NULL, 'D' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgexec.c gettext-tools/src/msgexec.c ---- gettext-tools/src/msgexec.c 2005-05-20 16:40:40.000000000 -0400 -+++ gettext-tools/src/msgexec.c 2005-11-11 11:04:07.546875000 -0500 -@@ -74,7 +74,7 @@ - static int exitcode; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "directory", required_argument, NULL, 'D' }, - { "help", no_argument, NULL, 'h' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgfilter.c gettext-tools/src/msgfilter.c ---- gettext-tools/src/msgfilter.c 2005-05-20 16:40:44.000000000 -0400 -+++ gettext-tools/src/msgfilter.c 2005-11-11 11:04:19.062500000 -0500 -@@ -97,7 +97,7 @@ - static int sub_argc; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "add-location", no_argument, &line_comment, 1 }, - { "directory", required_argument, NULL, 'D' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgfmt.c gettext-tools/src/msgfmt.c ---- gettext-tools/src/msgfmt.c 2005-11-11 00:58:30.000000000 -0500 -+++ gettext-tools/src/msgfmt.c 2005-11-11 11:04:30.546875000 -0500 -@@ -163,7 +163,7 @@ - static int do_statistics; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "alignment", required_argument, NULL, 'a' }, - { "check", no_argument, NULL, 'c' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msggrep.c gettext-tools/src/msggrep.c ---- gettext-tools/src/msggrep.c 2005-05-20 16:41:05.000000000 -0400 -+++ gettext-tools/src/msggrep.c 2005-11-11 11:03:39.796875000 -0500 -@@ -81,7 +81,7 @@ - static struct grep_task grep_task[3]; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "add-location", no_argument, &line_comment, 1 }, - { "comment", no_argument, NULL, 'C' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msginit.c gettext-tools/src/msginit.c ---- gettext-tools/src/msginit.c 2005-11-11 00:59:01.000000000 -0500 -+++ gettext-tools/src/msginit.c 2005-11-11 11:04:42.078125000 -0500 -@@ -125,7 +125,7 @@ - static bool no_translator; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "help", no_argument, NULL, 'h' }, - { "input", required_argument, NULL, 'i' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgmerge.c gettext-tools/src/msgmerge.c ---- gettext-tools/src/msgmerge.c 2005-05-20 16:42:09.000000000 -0400 -+++ gettext-tools/src/msgmerge.c 2005-11-11 11:04:51.328125000 -0500 -@@ -84,7 +84,7 @@ - static const char *backup_suffix_string; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "add-location", no_argument, &line_comment, 1 }, - { "backup", required_argument, NULL, CHAR_MAX + 1 }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgunfmt.c gettext-tools/src/msgunfmt.c ---- gettext-tools/src/msgunfmt.c 2005-05-20 16:42:11.000000000 -0400 -+++ gettext-tools/src/msgunfmt.c 2005-11-11 11:05:45.718750000 -0500 -@@ -73,7 +73,7 @@ - static int force_po; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "csharp", no_argument, NULL, CHAR_MAX + 4 }, - { "csharp-resources", no_argument, NULL, CHAR_MAX + 5 }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msguniq.c gettext-tools/src/msguniq.c ---- gettext-tools/src/msguniq.c 2005-05-20 16:42:23.000000000 -0400 -+++ gettext-tools/src/msguniq.c 2005-11-11 11:05:57.968750000 -0500 -@@ -52,7 +52,7 @@ - static const char *to_code; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "add-location", no_argument, &line_comment, 1 }, - { "directory", required_argument, NULL, 'D' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/urlget.c gettext-tools/src/urlget.c ---- gettext-tools/src/urlget.c 2005-05-20 16:44:41.000000000 -0400 -+++ gettext-tools/src/urlget.c 2005-11-11 11:06:10.968750000 -0500 -@@ -65,7 +65,7 @@ - - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "help", no_argument, NULL, 'h' }, - { "version", no_argument, NULL, 'V' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/xgettext.c gettext-tools/src/xgettext.c ---- gettext-tools/src/xgettext.c 2005-05-20 16:47:42.000000000 -0400 -+++ gettext-tools/src/xgettext.c 2005-11-11 11:06:25.406250000 -0500 -@@ -176,7 +176,7 @@ - #endif - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "add-comments", optional_argument, NULL, 'c' }, - { "add-location", no_argument, &line_comment, 1 }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/tests/tstgettext.c gettext-tools/tests/tstgettext.c ---- gettext-tools/tests/tstgettext.c 2005-05-20 16:48:17.000000000 -0400 -+++ gettext-tools/tests/tstgettext.c 2005-11-11 11:10:29.046875000 -0500 -@@ -52,7 +52,7 @@ - static bool do_expand; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "domain", required_argument, NULL, 'd' }, - { "env", required_argument, NULL, '=' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/tests/tstngettext.c gettext-tools/tests/tstngettext.c ---- gettext-tools/tests/tstngettext.c 2005-05-20 16:48:20.000000000 -0400 -+++ gettext-tools/tests/tstngettext.c 2005-11-11 11:10:39.875000000 -0500 -@@ -42,7 +42,7 @@ - #define _(str) gettext (str) - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "domain", required_argument, NULL, 'd' }, - { "env", required_argument, NULL, '=' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-runtime/configure.ac gettext-runtime/configure.ac ---- gettext-runtime/configure.ac 2005-11-11 00:04:26.000000000 -0500 -+++ gettext-runtime/configure.ac 2005-11-11 11:34:46.687500000 -0500 -@@ -111,6 +111,28 @@ - #endif - ]) - -+dnl Since gcc-3.3.3, const variables are placed in .rdata section -+dnl On windows (cygwin, mingw) this is a problem if the variable -+dnl is a composite containing references to other variables, because -+dnl the runtime relocation machinery can't fixup the address. Thus -+dnl these composite vars must NOT be declared const. This typically -+dnl occurs in long_options structs, containing references to variables -+dnl that are the targets of an option flag. -+case "$host_os" in -+ *cygwin* | *mingw* ) -+ AC_DEFINE([CONST_IS_PROBLEMATIC_WIN32], 1, -+ [Define to 1 if structs-containing-references must not be declared const]) -+ ;; -+esac -+AH_VERBATIM([DEF_CONST_PROBLEMATIC_WIN32], -+[/* On some platforms, structs-containing-references must not be declared const */ -+#if defined CONST_IS_PROBLEMATIC_WIN32 -+# define CONST_PROBLEMATIC_WIN32 -+#else -+# define CONST_PROBLEMATIC_WIN32 const -+#endif -+]) -+ - AH_VERBATIM([DEF_OS2], - [/* Extra OS/2 (emx+gcc) defines. */ - #ifdef __EMX__ -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/configure.ac gettext-tools/configure.ac ---- gettext-tools/configure.ac 2005-11-11 00:26:09.000000000 -0500 -+++ gettext-tools/configure.ac 2005-11-11 11:34:03.140625000 -0500 -@@ -214,6 +214,28 @@ - #endif - ]) - -+dnl Since gcc-3.3.3, const variables are placed in .rdata section -+dnl On windows (cygwin, mingw) this is a problem if the variable -+dnl is a composite containing references to other variables, because -+dnl the runtime relocation machinery can't fixup the address. Thus -+dnl these composite vars must NOT be declared const. This typically -+dnl occurs in long_options structs, containing references to variables -+dnl that are the targets of an option flag. -+case "$host_os" in -+ *cygwin* | *mingw* ) -+ AC_DEFINE([CONST_IS_PROBLEMATIC_WIN32], 1, -+ [Define to 1 if structs-containing-references must not be declared const]) -+ ;; -+esac -+AH_VERBATIM([DEF_CONST_PROBLEMATIC_WIN32], -+[/* On some platforms, structs-containing-references must not be declared const */ -+#if defined CONST_IS_PROBLEMATIC_WIN32 -+# define CONST_PROBLEMATIC_WIN32 -+#else -+# define CONST_PROBLEMATIC_WIN32 const -+#endif -+]) -+ - dnl Check for the expat XML parser. - dnl On operating systems where binary distribution vendors are likely to - dnl ship both gettext and expat, we use dynamic loading to avoid a hard -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-runtime/src/envsubst.c gettext-runtime/src/envsubst.c ---- gettext-runtime/src/envsubst.c 2005-05-20 16:14:16.000000000 -0400 -+++ gettext-runtime/src/envsubst.c 2005-11-11 11:07:50.796875000 -0500 -@@ -43,7 +43,7 @@ - static bool all_variables; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "help", no_argument, NULL, 'h' }, - { "variables", no_argument, NULL, 'v' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-runtime/src/gettext.c gettext-runtime/src/gettext.c ---- gettext-runtime/src/gettext.c 2005-05-20 16:14:21.000000000 -0400 -+++ gettext-runtime/src/gettext.c 2005-11-11 11:08:03.859375000 -0500 -@@ -48,7 +48,7 @@ - static bool do_expand; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "domain", required_argument, NULL, 'd' }, - { "help", no_argument, NULL, 'h' }, -diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-runtime/src/ngettext.c gettext-runtime/src/ngettext.c ---- gettext-runtime/src/ngettext.c 2005-05-20 16:14:39.000000000 -0400 -+++ gettext-runtime/src/ngettext.c 2005-11-11 11:08:16.062500000 -0500 -@@ -44,7 +44,7 @@ - static int do_expand; - - /* Long options. */ --static const struct option long_options[] = -+static CONST_PROBLEMATIC_WIN32 struct option long_options[] = - { - { "domain", required_argument, NULL, 'd' }, - { "help", no_argument, NULL, 'h' }, - +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/hostname.c gettext-tools/src/hostname.c +--- gettext-tools/src/hostname.c 2005-05-20 16:40:02.000000000 -0400 ++++ gettext-tools/src/hostname.c 2005-11-11 11:02:07.203125000 -0500 +@@ -99,7 +99,7 @@ + static enum { default_format, short_format, long_format, ip_format } format; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "fqdn", no_argument, NULL, 'f' }, + { "help", no_argument, NULL, 'h' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgattrib.c gettext-tools/src/msgattrib.c +--- gettext-tools/src/msgattrib.c 2005-05-20 16:40:15.000000000 -0400 ++++ gettext-tools/src/msgattrib.c 2005-11-11 11:01:39.484375000 -0500 +@@ -69,7 +69,7 @@ + static int to_change; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "add-location", no_argument, &line_comment, 1 }, + { "clear-fuzzy", no_argument, NULL, CHAR_MAX + 8 }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgcat.c gettext-tools/src/msgcat.c +--- gettext-tools/src/msgcat.c 2005-05-20 16:40:19.000000000 -0400 ++++ gettext-tools/src/msgcat.c 2005-11-11 11:02:33.109375000 -0500 +@@ -53,7 +53,7 @@ + static const char *to_code; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "add-location", no_argument, &line_comment, 1 }, + { "directory", required_argument, NULL, 'D' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgcmp.c gettext-tools/src/msgcmp.c +--- gettext-tools/src/msgcmp.c 2005-05-20 16:40:23.000000000 -0400 ++++ gettext-tools/src/msgcmp.c 2005-11-11 11:02:51.906250000 -0500 +@@ -49,7 +49,7 @@ + static bool multi_domain_mode = false; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "directory", required_argument, NULL, 'D' }, + { "help", no_argument, NULL, 'h' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgcomm.c gettext-tools/src/msgcomm.c +--- gettext-tools/src/msgcomm.c 2005-05-20 16:40:27.000000000 -0400 ++++ gettext-tools/src/msgcomm.c 2005-11-11 11:03:09.406250000 -0500 +@@ -55,7 +55,7 @@ + static const char *to_code; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "add-location", no_argument, &line_comment, 1 }, + { "directory", required_argument, NULL, 'D' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgconv.c gettext-tools/src/msgconv.c +--- gettext-tools/src/msgconv.c 2005-05-20 16:40:31.000000000 -0400 ++++ gettext-tools/src/msgconv.c 2005-11-11 11:03:21.671875000 -0500 +@@ -52,7 +52,7 @@ + static const char *to_code; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "add-location", no_argument, &line_comment, 1 }, + { "directory", required_argument, NULL, 'D' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgen.c gettext-tools/src/msgen.c +--- gettext-tools/src/msgen.c 2005-05-20 16:40:35.000000000 -0400 ++++ gettext-tools/src/msgen.c 2005-11-11 11:03:54.531250000 -0500 +@@ -48,7 +48,7 @@ + static int force_po; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "add-location", no_argument, &line_comment, 1 }, + { "directory", required_argument, NULL, 'D' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgexec.c gettext-tools/src/msgexec.c +--- gettext-tools/src/msgexec.c 2005-05-20 16:40:40.000000000 -0400 ++++ gettext-tools/src/msgexec.c 2005-11-11 11:04:07.546875000 -0500 +@@ -74,7 +74,7 @@ + static int exitcode; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "directory", required_argument, NULL, 'D' }, + { "help", no_argument, NULL, 'h' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgfilter.c gettext-tools/src/msgfilter.c +--- gettext-tools/src/msgfilter.c 2005-05-20 16:40:44.000000000 -0400 ++++ gettext-tools/src/msgfilter.c 2005-11-11 11:04:19.062500000 -0500 +@@ -97,7 +97,7 @@ + static int sub_argc; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "add-location", no_argument, &line_comment, 1 }, + { "directory", required_argument, NULL, 'D' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgfmt.c gettext-tools/src/msgfmt.c +--- gettext-tools/src/msgfmt.c 2005-11-11 00:58:30.000000000 -0500 ++++ gettext-tools/src/msgfmt.c 2005-11-11 11:04:30.546875000 -0500 +@@ -163,7 +163,7 @@ + static int do_statistics; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "alignment", required_argument, NULL, 'a' }, + { "check", no_argument, NULL, 'c' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msggrep.c gettext-tools/src/msggrep.c +--- gettext-tools/src/msggrep.c 2005-05-20 16:41:05.000000000 -0400 ++++ gettext-tools/src/msggrep.c 2005-11-11 11:03:39.796875000 -0500 +@@ -81,7 +81,7 @@ + static struct grep_task grep_task[3]; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "add-location", no_argument, &line_comment, 1 }, + { "comment", no_argument, NULL, 'C' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msginit.c gettext-tools/src/msginit.c +--- gettext-tools/src/msginit.c 2005-11-11 00:59:01.000000000 -0500 ++++ gettext-tools/src/msginit.c 2005-11-11 11:04:42.078125000 -0500 +@@ -125,7 +125,7 @@ + static bool no_translator; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "help", no_argument, NULL, 'h' }, + { "input", required_argument, NULL, 'i' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgmerge.c gettext-tools/src/msgmerge.c +--- gettext-tools/src/msgmerge.c 2005-05-20 16:42:09.000000000 -0400 ++++ gettext-tools/src/msgmerge.c 2005-11-11 11:04:51.328125000 -0500 +@@ -84,7 +84,7 @@ + static const char *backup_suffix_string; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "add-location", no_argument, &line_comment, 1 }, + { "backup", required_argument, NULL, CHAR_MAX + 1 }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msgunfmt.c gettext-tools/src/msgunfmt.c +--- gettext-tools/src/msgunfmt.c 2005-05-20 16:42:11.000000000 -0400 ++++ gettext-tools/src/msgunfmt.c 2005-11-11 11:05:45.718750000 -0500 +@@ -73,7 +73,7 @@ + static int force_po; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "csharp", no_argument, NULL, CHAR_MAX + 4 }, + { "csharp-resources", no_argument, NULL, CHAR_MAX + 5 }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/msguniq.c gettext-tools/src/msguniq.c +--- gettext-tools/src/msguniq.c 2005-05-20 16:42:23.000000000 -0400 ++++ gettext-tools/src/msguniq.c 2005-11-11 11:05:57.968750000 -0500 +@@ -52,7 +52,7 @@ + static const char *to_code; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "add-location", no_argument, &line_comment, 1 }, + { "directory", required_argument, NULL, 'D' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/urlget.c gettext-tools/src/urlget.c +--- gettext-tools/src/urlget.c 2005-05-20 16:44:41.000000000 -0400 ++++ gettext-tools/src/urlget.c 2005-11-11 11:06:10.968750000 -0500 +@@ -65,7 +65,7 @@ + + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "help", no_argument, NULL, 'h' }, + { "version", no_argument, NULL, 'V' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/src/xgettext.c gettext-tools/src/xgettext.c +--- gettext-tools/src/xgettext.c 2005-05-20 16:47:42.000000000 -0400 ++++ gettext-tools/src/xgettext.c 2005-11-11 11:06:25.406250000 -0500 +@@ -176,7 +176,7 @@ + #endif + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "add-comments", optional_argument, NULL, 'c' }, + { "add-location", no_argument, &line_comment, 1 }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/tests/tstgettext.c gettext-tools/tests/tstgettext.c +--- gettext-tools/tests/tstgettext.c 2005-05-20 16:48:17.000000000 -0400 ++++ gettext-tools/tests/tstgettext.c 2005-11-11 11:10:29.046875000 -0500 +@@ -52,7 +52,7 @@ + static bool do_expand; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "domain", required_argument, NULL, 'd' }, + { "env", required_argument, NULL, '=' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/tests/tstngettext.c gettext-tools/tests/tstngettext.c +--- gettext-tools/tests/tstngettext.c 2005-05-20 16:48:20.000000000 -0400 ++++ gettext-tools/tests/tstngettext.c 2005-11-11 11:10:39.875000000 -0500 +@@ -42,7 +42,7 @@ + #define _(str) gettext (str) + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "domain", required_argument, NULL, 'd' }, + { "env", required_argument, NULL, '=' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-runtime/configure.ac gettext-runtime/configure.ac +--- gettext-runtime/configure.ac 2005-11-11 00:04:26.000000000 -0500 ++++ gettext-runtime/configure.ac 2005-11-11 11:34:46.687500000 -0500 +@@ -111,6 +111,28 @@ + #endif + ]) + ++dnl Since gcc-3.3.3, const variables are placed in .rdata section ++dnl On windows (cygwin, mingw) this is a problem if the variable ++dnl is a composite containing references to other variables, because ++dnl the runtime relocation machinery can't fixup the address. Thus ++dnl these composite vars must NOT be declared const. This typically ++dnl occurs in long_options structs, containing references to variables ++dnl that are the targets of an option flag. ++case "$host_os" in ++ *cygwin* | *mingw* ) ++ AC_DEFINE([CONST_IS_PROBLEMATIC_WIN32], 1, ++ [Define to 1 if structs-containing-references must not be declared const]) ++ ;; ++esac ++AH_VERBATIM([DEF_CONST_PROBLEMATIC_WIN32], ++[/* On some platforms, structs-containing-references must not be declared const */ ++#if defined CONST_IS_PROBLEMATIC_WIN32 ++# define CONST_PROBLEMATIC_WIN32 ++#else ++# define CONST_PROBLEMATIC_WIN32 const ++#endif ++]) ++ + AH_VERBATIM([DEF_OS2], + [/* Extra OS/2 (emx+gcc) defines. */ + #ifdef __EMX__ +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-tools/configure.ac gettext-tools/configure.ac +--- gettext-tools/configure.ac 2005-11-11 00:26:09.000000000 -0500 ++++ gettext-tools/configure.ac 2005-11-11 11:34:03.140625000 -0500 +@@ -214,6 +214,28 @@ + #endif + ]) + ++dnl Since gcc-3.3.3, const variables are placed in .rdata section ++dnl On windows (cygwin, mingw) this is a problem if the variable ++dnl is a composite containing references to other variables, because ++dnl the runtime relocation machinery can't fixup the address. Thus ++dnl these composite vars must NOT be declared const. This typically ++dnl occurs in long_options structs, containing references to variables ++dnl that are the targets of an option flag. ++case "$host_os" in ++ *cygwin* | *mingw* ) ++ AC_DEFINE([CONST_IS_PROBLEMATIC_WIN32], 1, ++ [Define to 1 if structs-containing-references must not be declared const]) ++ ;; ++esac ++AH_VERBATIM([DEF_CONST_PROBLEMATIC_WIN32], ++[/* On some platforms, structs-containing-references must not be declared const */ ++#if defined CONST_IS_PROBLEMATIC_WIN32 ++# define CONST_PROBLEMATIC_WIN32 ++#else ++# define CONST_PROBLEMATIC_WIN32 const ++#endif ++]) ++ + dnl Check for the expat XML parser. + dnl On operating systems where binary distribution vendors are likely to + dnl ship both gettext and expat, we use dynamic loading to avoid a hard +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-runtime/src/envsubst.c gettext-runtime/src/envsubst.c +--- gettext-runtime/src/envsubst.c 2005-05-20 16:14:16.000000000 -0400 ++++ gettext-runtime/src/envsubst.c 2005-11-11 11:07:50.796875000 -0500 +@@ -43,7 +43,7 @@ + static bool all_variables; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "help", no_argument, NULL, 'h' }, + { "variables", no_argument, NULL, 'v' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-runtime/src/gettext.c gettext-runtime/src/gettext.c +--- gettext-runtime/src/gettext.c 2005-05-20 16:14:21.000000000 -0400 ++++ gettext-runtime/src/gettext.c 2005-11-11 11:08:03.859375000 -0500 +@@ -48,7 +48,7 @@ + static bool do_expand; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "domain", required_argument, NULL, 'd' }, + { "help", no_argument, NULL, 'h' }, +diff -urN -x .build -x .inst -x .sinst -x '*~' gettext-runtime/src/ngettext.c gettext-runtime/src/ngettext.c +--- gettext-runtime/src/ngettext.c 2005-05-20 16:14:39.000000000 -0400 ++++ gettext-runtime/src/ngettext.c 2005-11-11 11:08:16.062500000 -0500 +@@ -44,7 +44,7 @@ + static int do_expand; + + /* Long options. */ +-static const struct option long_options[] = ++static CONST_PROBLEMATIC_WIN32 struct option long_options[] = + { + { "domain", required_argument, NULL, 'd' }, + { "help", no_argument, NULL, 'h' }, + diff --git a/development/Win32/patches/msvc/aspell-setter-sep06.patch b/development/Win32/patches/msvc/aspell-setter-sep06.patch index c842860462..c2467e6706 100644 --- a/development/Win32/patches/msvc/aspell-setter-sep06.patch +++ b/development/Win32/patches/msvc/aspell-setter-sep06.patch @@ -1,264 +1,264 @@ -diff -riwBu -Xex aspell-setter-sep06/common/config.cpp aspell-setter-sep06-modified/common/config.cpp ---- aspell-setter-sep06/common/config.cpp 2005-12-12 17:41:06.000000000 +0100 -+++ aspell-setter-sep06-modified/common/config.cpp 2007-02-16 22:40:26.947401600 +0100 -@@ -78,6 +78,10 @@ - - namespace aspell { - -+#ifdef WIN32PORT -+ String GetWindowsDir(String registry_name, String default_directory); -+#endif -+ - const char * const keyinfo_type_name[4] = { - N_("string"), N_("integer"), N_("boolean"), N_("list") - }; -@@ -642,20 +646,19 @@ - - } else if (strcmp(i, "home-dir") == 0) { - -- //get the personal folder (e.g. "c:\My Documents") -- char * dir = new char[MAX_PATH]; -- LPITEMIDLIST items = 0; -- HRESULT hand = SHGetSpecialFolderLocation(0, CSIDL_PERSONAL, &items); -- if ((NOERROR == hand) && items) { -- if (SHGetPathFromIDList(items, dir)) { -- for (char *ptr = dir; *ptr; ++ptr) -- if ('\\' == *ptr) -- *ptr = '/'; -- final_str = dir; -- } -- CoTaskMemFree(items); -- } -- delete [] dir; -+ final_str = GetWindowsDir("Base Path", ""); -+ -+ } else if (strcmp(i, "dict-dir") == 0) { -+ -+ final_str = GetWindowsDir("Dictionary Path", "Dictionaries"); -+ -+ } else if (strcmp(i, "data-dir") == 0) { -+ -+ final_str = GetWindowsDir("Data Path", "Data"); -+ -+ } else if (strcmp(i, "personal-dir") == 0) { -+ -+ final_str = GetWindowsDir("Personal Path", "Personal"); - - } - #endif -@@ -1394,20 +1397,6 @@ - return no_err; - } - --#if defined(WIN32_USE_PERSONAL_DIR) --# define HOME_DIR "!home-dir" --# define PERSONAL ".pws" --# define REPL ".prepl" --#elif defined(ENABLE_WIN32_RELOCATABLE) --# define HOME_DIR "" --# define PERSONAL ".pws" --# define REPL ".prepl" --#else --# define HOME_DIR "<$HOME|./>" --# define PERSONAL ".aspell..pws" --# define REPL ".aspell..prepl" --#endif -- - static const KeyInfo config_keys[] = { - // the description should be under 50 chars - {"actual-dict-dir", KeyInfoString, "", 0} -@@ -1484,12 +1473,12 @@ - , {"per-conf-path", KeyInfoString, "", 0} - , {"personal", KeyInfoString, PERSONAL, - N_("personal dictionary file name")} -- , {"personal-path", KeyInfoString, "", 0} -+ , {"personal-path", KeyInfoString, "", 0} - , {"prefix", KeyInfoString, PREFIX, - N_("prefix directory")} - , {"repl", KeyInfoString, REPL, - N_("replacements list file name") } -- , {"repl-path", KeyInfoString, "", 0} -+ , {"repl-path", KeyInfoString, "", 0} - , {"run-together", KeyInfoBool, "false", - N_("consider run-together words legal"), KEYINFO_MAY_CHANGE} - , {"run-together-limit", KeyInfoInt, "2", -@@ -1524,12 +1513,6 @@ - N_("search path for word list information files"), KEYINFO_HIDDEN} - , {"warn", KeyInfoBool, "true", - N_("enable warnings")} --#ifdef WIN32PORT -- , {"dict-subdir", KeyInfoString, "dicts", -- N_("sub directory for dictionaries")} -- , {"data-subdir", KeyInfoString, "data", -- N_("sub directory for other data")} --#endif - - // - // These options are generally used when creating dictionaries -@@ -1574,7 +1557,10 @@ - N_("suggest possible replacements"), KEYINFO_MAY_CHANGE} - , {"time" , KeyInfoBool, "false", - N_("time load time and suggest time in pipe mode"), KEYINFO_MAY_CHANGE} -- -+ #ifdef WIN32PORT -+ , {"personal-dir", KeyInfoString, PERSONAL_DIR, -+ N_("directory for personal dictionaries")} -+ #endif - }; - - const KeyInfo * config_impl_keys_begin = config_keys; -@@ -1588,4 +1574,87 @@ - config_impl_keys_end); - } - -+#ifdef WIN32PORT -+ -+ String ReadRegString(HKEY hive, String key, String name) -+ { -+ -+ // Reads a string from the Windows registry (used to get paths) -+ -+ HKEY hKey; -+ unsigned long lType; -+ DWORD dwSize; -+ unsigned char* szValue = NULL; -+ -+ if (::RegOpenKeyEx(hive, key.c_str(), 0, KEY_READ, &hKey) == ERROR_SUCCESS) -+ { -+ if(::RegQueryValueEx(hKey, name.c_str(), NULL, &lType, NULL, &dwSize) == ERROR_SUCCESS) -+ { -+ szValue = new unsigned char[dwSize + 1]; -+ ::RegQueryValueEx(hKey, name.c_str(), NULL, &lType, szValue, &dwSize); -+ String RegistryReturn((char*)szValue); -+ delete[] szValue; -+ return RegistryReturn; -+ } else { -+ return ""; -+ } -+ } else { -+ return ""; -+ } -+ -+ } -+ -+ HKEY GetRegHive() -+ { -+ -+ // Check whether Aspell is installed for the current user or for all users -+ -+ String value; -+ -+ if (ReadRegString(HKEY_CURRENT_USER, "Software\\Aspell", "Base Path").empty()) -+ { -+ return HKEY_LOCAL_MACHINE; -+ } else { -+ return HKEY_CURRENT_USER; -+ } -+ -+ } -+ -+ String GetWindowsDir(String registry_name, String default_dir) -+ { -+ -+ String final_dir; -+ -+ // Get directory from registry -+ HKEY hive; -+ hive = GetRegHive(); -+ final_dir = ReadRegString(hive, "Software\\Aspell", registry_name); -+ -+ // Default location in "Documents and Settings" -+ if (final_dir.empty()) { -+ -+ char * dir = new char[MAX_PATH]; -+ LPITEMIDLIST items = 0; -+ HRESULT hand = SHGetSpecialFolderLocation(0, CSIDL_APPDATA, &items); -+ -+ if ((NOERROR == hand) && items) { -+ if (SHGetPathFromIDList(items, dir)) { -+ for (char *ptr = dir; *ptr; ++ptr) -+ if ('\\' == *ptr) -+ *ptr = '/'; -+ final_dir = dir; -+ final_dir.append("/Aspell/"); -+ final_dir.append(default_dir.c_str()); -+ } -+ CoTaskMemFree(items); -+ } -+ -+ } -+ -+ return final_dir; -+ -+ } -+ -+#endif -+ - } -diff -riwBu -Xex aspell-setter-sep06/common/vector.hpp aspell-setter-sep06-modified/common/vector.hpp ---- aspell-setter-sep06/common/vector.hpp 2005-10-13 09:42:54.000000000 +0200 -+++ aspell-setter-sep06-modified/common/vector.hpp 2006-09-17 19:50:45.730606400 +0200 -@@ -50,10 +50,10 @@ - T * data_end() {return &*this->end();} - - T * pbegin() {return &*this->begin();} -- T * pend() {return &*this->end();} -+ T * pend() {return &this->back()+1;} - - const T * pbegin() const {return &*this->begin();} -- const T * pend() const {return &*this->end();} -+ const T * pend() const {return &this->back()+1;} - - template - U * datap() { -diff -riwBu -Xex aspell-setter-sep06/win32/dirs.h aspell-setter-sep06-modified/win32/dirs.h ---- aspell-setter-sep06/win32/dirs.h 2005-10-13 13:29:34.000000000 +0200 -+++ aspell-setter-sep06-modified/win32/dirs.h 2007-02-16 22:52:43.486492800 +0100 -@@ -1,16 +1,26 @@ - #ifndef dirs_h - #define dirs_h - --#ifdef WIN32_USE_EXECUTABLE_DIR --# define DATA_DIR "" --# define CONF_DIR "" --# define DICT_DIR "" -+# define DATA_DIR "!data-dir" -+# define DICT_DIR "!dict-dir" -+# define PERSONAL_DIR "!personal-dir" -+# define CONF_DIR "" -+ -+#if defined(WIN32_USE_EXECUTABLE_DIR) -+# define HOME_DIR "" -+# define PERSONAL ".pws" -+# define REPL ".prepl" - # define PREFIX "!prefix" -+#elif defined(WIN32_USE_PERSONAL_DIR) -+# define HOME_DIR "!home-dir" -+# define PERSONAL ".pws" -+# define REPL ".prepl" -+# define PREFIX "" - #else --# define DATA_DIR "aspell-win32/data" --# define CONF_DIR "aspell-win32" --# define DICT_DIR "dicts" --# define PREFIX "aspell-win32" -+# define HOME_DIR "<$HOME|./>" -+# define PERSONAL ".aspell..pws" -+# define REPL ".aspell..prepl" -+# define PREFIX "" - #endif - - #endif -diff -riwBu -Xex aspell-setter-sep06/win32/settings.h aspell-setter-sep06-modified/win32/settings.h ---- aspell-setter-sep06/win32/settings.h 2006-09-06 10:51:16.000000000 +0200 -+++ aspell-setter-sep06-modified/win32/settings.h 2006-09-17 18:55:23.112916800 +0200 -@@ -9,9 +9,6 @@ - /* Defined if curses like POSIX Functions should be used */ - #undef CURSES_ONLY - --/* Defined if win32 relocation should be used */ --#define ENABLE_WIN32_RELOCATABLE 1 -- - /* Define to 1 if you have the header file. */ - #undef HAVE_DLFCN_H - +diff -riwBu -Xex aspell-setter-sep06/common/config.cpp aspell-setter-sep06-modified/common/config.cpp +--- aspell-setter-sep06/common/config.cpp 2005-12-12 17:41:06.000000000 +0100 ++++ aspell-setter-sep06-modified/common/config.cpp 2007-02-16 22:40:26.947401600 +0100 +@@ -78,6 +78,10 @@ + + namespace aspell { + ++#ifdef WIN32PORT ++ String GetWindowsDir(String registry_name, String default_directory); ++#endif ++ + const char * const keyinfo_type_name[4] = { + N_("string"), N_("integer"), N_("boolean"), N_("list") + }; +@@ -642,20 +646,19 @@ + + } else if (strcmp(i, "home-dir") == 0) { + +- //get the personal folder (e.g. "c:\My Documents") +- char * dir = new char[MAX_PATH]; +- LPITEMIDLIST items = 0; +- HRESULT hand = SHGetSpecialFolderLocation(0, CSIDL_PERSONAL, &items); +- if ((NOERROR == hand) && items) { +- if (SHGetPathFromIDList(items, dir)) { +- for (char *ptr = dir; *ptr; ++ptr) +- if ('\\' == *ptr) +- *ptr = '/'; +- final_str = dir; +- } +- CoTaskMemFree(items); +- } +- delete [] dir; ++ final_str = GetWindowsDir("Base Path", ""); ++ ++ } else if (strcmp(i, "dict-dir") == 0) { ++ ++ final_str = GetWindowsDir("Dictionary Path", "Dictionaries"); ++ ++ } else if (strcmp(i, "data-dir") == 0) { ++ ++ final_str = GetWindowsDir("Data Path", "Data"); ++ ++ } else if (strcmp(i, "personal-dir") == 0) { ++ ++ final_str = GetWindowsDir("Personal Path", "Personal"); + + } + #endif +@@ -1394,20 +1397,6 @@ + return no_err; + } + +-#if defined(WIN32_USE_PERSONAL_DIR) +-# define HOME_DIR "!home-dir" +-# define PERSONAL ".pws" +-# define REPL ".prepl" +-#elif defined(ENABLE_WIN32_RELOCATABLE) +-# define HOME_DIR "" +-# define PERSONAL ".pws" +-# define REPL ".prepl" +-#else +-# define HOME_DIR "<$HOME|./>" +-# define PERSONAL ".aspell..pws" +-# define REPL ".aspell..prepl" +-#endif +- + static const KeyInfo config_keys[] = { + // the description should be under 50 chars + {"actual-dict-dir", KeyInfoString, "", 0} +@@ -1484,12 +1473,12 @@ + , {"per-conf-path", KeyInfoString, "", 0} + , {"personal", KeyInfoString, PERSONAL, + N_("personal dictionary file name")} +- , {"personal-path", KeyInfoString, "", 0} ++ , {"personal-path", KeyInfoString, "", 0} + , {"prefix", KeyInfoString, PREFIX, + N_("prefix directory")} + , {"repl", KeyInfoString, REPL, + N_("replacements list file name") } +- , {"repl-path", KeyInfoString, "", 0} ++ , {"repl-path", KeyInfoString, "", 0} + , {"run-together", KeyInfoBool, "false", + N_("consider run-together words legal"), KEYINFO_MAY_CHANGE} + , {"run-together-limit", KeyInfoInt, "2", +@@ -1524,12 +1513,6 @@ + N_("search path for word list information files"), KEYINFO_HIDDEN} + , {"warn", KeyInfoBool, "true", + N_("enable warnings")} +-#ifdef WIN32PORT +- , {"dict-subdir", KeyInfoString, "dicts", +- N_("sub directory for dictionaries")} +- , {"data-subdir", KeyInfoString, "data", +- N_("sub directory for other data")} +-#endif + + // + // These options are generally used when creating dictionaries +@@ -1574,7 +1557,10 @@ + N_("suggest possible replacements"), KEYINFO_MAY_CHANGE} + , {"time" , KeyInfoBool, "false", + N_("time load time and suggest time in pipe mode"), KEYINFO_MAY_CHANGE} +- ++ #ifdef WIN32PORT ++ , {"personal-dir", KeyInfoString, PERSONAL_DIR, ++ N_("directory for personal dictionaries")} ++ #endif + }; + + const KeyInfo * config_impl_keys_begin = config_keys; +@@ -1588,4 +1574,87 @@ + config_impl_keys_end); + } + ++#ifdef WIN32PORT ++ ++ String ReadRegString(HKEY hive, String key, String name) ++ { ++ ++ // Reads a string from the Windows registry (used to get paths) ++ ++ HKEY hKey; ++ unsigned long lType; ++ DWORD dwSize; ++ unsigned char* szValue = NULL; ++ ++ if (::RegOpenKeyEx(hive, key.c_str(), 0, KEY_READ, &hKey) == ERROR_SUCCESS) ++ { ++ if(::RegQueryValueEx(hKey, name.c_str(), NULL, &lType, NULL, &dwSize) == ERROR_SUCCESS) ++ { ++ szValue = new unsigned char[dwSize + 1]; ++ ::RegQueryValueEx(hKey, name.c_str(), NULL, &lType, szValue, &dwSize); ++ String RegistryReturn((char*)szValue); ++ delete[] szValue; ++ return RegistryReturn; ++ } else { ++ return ""; ++ } ++ } else { ++ return ""; ++ } ++ ++ } ++ ++ HKEY GetRegHive() ++ { ++ ++ // Check whether Aspell is installed for the current user or for all users ++ ++ String value; ++ ++ if (ReadRegString(HKEY_CURRENT_USER, "Software\\Aspell", "Base Path").empty()) ++ { ++ return HKEY_LOCAL_MACHINE; ++ } else { ++ return HKEY_CURRENT_USER; ++ } ++ ++ } ++ ++ String GetWindowsDir(String registry_name, String default_dir) ++ { ++ ++ String final_dir; ++ ++ // Get directory from registry ++ HKEY hive; ++ hive = GetRegHive(); ++ final_dir = ReadRegString(hive, "Software\\Aspell", registry_name); ++ ++ // Default location in "Documents and Settings" ++ if (final_dir.empty()) { ++ ++ char * dir = new char[MAX_PATH]; ++ LPITEMIDLIST items = 0; ++ HRESULT hand = SHGetSpecialFolderLocation(0, CSIDL_APPDATA, &items); ++ ++ if ((NOERROR == hand) && items) { ++ if (SHGetPathFromIDList(items, dir)) { ++ for (char *ptr = dir; *ptr; ++ptr) ++ if ('\\' == *ptr) ++ *ptr = '/'; ++ final_dir = dir; ++ final_dir.append("/Aspell/"); ++ final_dir.append(default_dir.c_str()); ++ } ++ CoTaskMemFree(items); ++ } ++ ++ } ++ ++ return final_dir; ++ ++ } ++ ++#endif ++ + } +diff -riwBu -Xex aspell-setter-sep06/common/vector.hpp aspell-setter-sep06-modified/common/vector.hpp +--- aspell-setter-sep06/common/vector.hpp 2005-10-13 09:42:54.000000000 +0200 ++++ aspell-setter-sep06-modified/common/vector.hpp 2006-09-17 19:50:45.730606400 +0200 +@@ -50,10 +50,10 @@ + T * data_end() {return &*this->end();} + + T * pbegin() {return &*this->begin();} +- T * pend() {return &*this->end();} ++ T * pend() {return &this->back()+1;} + + const T * pbegin() const {return &*this->begin();} +- const T * pend() const {return &*this->end();} ++ const T * pend() const {return &this->back()+1;} + + template + U * datap() { +diff -riwBu -Xex aspell-setter-sep06/win32/dirs.h aspell-setter-sep06-modified/win32/dirs.h +--- aspell-setter-sep06/win32/dirs.h 2005-10-13 13:29:34.000000000 +0200 ++++ aspell-setter-sep06-modified/win32/dirs.h 2007-02-16 22:52:43.486492800 +0100 +@@ -1,16 +1,26 @@ + #ifndef dirs_h + #define dirs_h + +-#ifdef WIN32_USE_EXECUTABLE_DIR +-# define DATA_DIR "" +-# define CONF_DIR "" +-# define DICT_DIR "" ++# define DATA_DIR "!data-dir" ++# define DICT_DIR "!dict-dir" ++# define PERSONAL_DIR "!personal-dir" ++# define CONF_DIR "" ++ ++#if defined(WIN32_USE_EXECUTABLE_DIR) ++# define HOME_DIR "" ++# define PERSONAL ".pws" ++# define REPL ".prepl" + # define PREFIX "!prefix" ++#elif defined(WIN32_USE_PERSONAL_DIR) ++# define HOME_DIR "!home-dir" ++# define PERSONAL ".pws" ++# define REPL ".prepl" ++# define PREFIX "" + #else +-# define DATA_DIR "aspell-win32/data" +-# define CONF_DIR "aspell-win32" +-# define DICT_DIR "dicts" +-# define PREFIX "aspell-win32" ++# define HOME_DIR "<$HOME|./>" ++# define PERSONAL ".aspell..pws" ++# define REPL ".aspell..prepl" ++# define PREFIX "" + #endif + + #endif +diff -riwBu -Xex aspell-setter-sep06/win32/settings.h aspell-setter-sep06-modified/win32/settings.h +--- aspell-setter-sep06/win32/settings.h 2006-09-06 10:51:16.000000000 +0200 ++++ aspell-setter-sep06-modified/win32/settings.h 2006-09-17 18:55:23.112916800 +0200 +@@ -9,9 +9,6 @@ + /* Defined if curses like POSIX Functions should be used */ + #undef CURSES_ONLY + +-/* Defined if win32 relocation should be used */ +-#define ENABLE_WIN32_RELOCATABLE 1 +- + /* Define to 1 if you have the header file. */ + #undef HAVE_DLFCN_H + diff --git a/development/Win32/patches/msvc/gettext-0.15.patch b/development/Win32/patches/msvc/gettext-0.15.patch index 3cb6f86b94..66384c62d4 100644 --- a/development/Win32/patches/msvc/gettext-0.15.patch +++ b/development/Win32/patches/msvc/gettext-0.15.patch @@ -1,796 +1,796 @@ -diff -riwBu -Xex gettext-0.15\gettext-runtime\config.h.msvc gettext-0.15-modified\gettext-runtime\config.h.msvc ---- gettext-0.15\gettext-runtime\config.h.msvc Fri Jul 21 16:30:08 2006 -+++ gettext-0.15-modified\gettext-runtime\config.h.msvc Sat Oct 21 23:37:47 2006 -@@ -1,5 +1,7 @@ - /* config.h.in. Generated from configure.ac by autoheader. */ - -+#define EXEEXT '.exe' -+ - /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP - systems. This function is required for `alloca.c' support on those systems. - */ -diff -riwBu -Xex gettext-0.15\gettext-runtime\intl\Makefile.msvc gettext-0.15-modified\gettext-runtime\intl\Makefile.msvc ---- gettext-0.15\gettext-runtime\intl\Makefile.msvc Mon Aug 01 13:14:02 2005 -+++ gettext-0.15-modified\gettext-runtime\intl\Makefile.msvc Fri Oct 20 12:23:09 2006 -@@ -204,6 +204,7 @@ - # intl.dll and intl.lib are created together. - intl.lib : $(OBJECTS) $(RESOURCES) - $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD $(OBJECTS) $(libdir)\iconv.lib $(RESOURCES) -Feintl.dll -+ mt.exe -manifest intl.dll.manifest -outputresource:intl.dll;2 - - intl.res : $(srcdir)\..\windows\intl.rc - rc -Fo intl.res $(srcdir)\..\windows\intl.rc -diff -riwBu -Xex gettext-0.15\gettext-runtime\src\Makefile.msvc gettext-0.15-modified\gettext-runtime\src\Makefile.msvc ---- gettext-0.15\gettext-runtime\src\Makefile.msvc Thu Feb 10 17:49:08 2005 -+++ gettext-0.15-modified\gettext-runtime\src\Makefile.msvc Fri Oct 20 12:22:23 2006 -@@ -107,12 +107,15 @@ - - gettext.exe : $(gettext_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(gettext_OBJECTS) ..\lib\grt.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Fegettext.exe -+ mt.exe -manifest gettext.exe.manifest -outputresource:gettext.exe;1 - - ngettext.exe : $(ngettext_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(ngettext_OBJECTS) ..\lib\grt.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Fengettext.exe -+ mt.exe -manifest ngettext.exe.manifest -outputresource:ngettext.exe;1 - - envsubst.exe : $(envsubst_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(ngettext_OBJECTS) ..\lib\grt.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Feenvsubst.exe -+ mt.exe -manifest envsubst.exe.manifest -outputresource:envsubst.exe;1 - - install : all force - -mkdir $(prefix) -diff -riwBu -Xex gettext-0.15\gettext-tools\config.h.msvc gettext-0.15-modified\gettext-tools\config.h.msvc ---- gettext-0.15\gettext-tools\config.h.msvc Fri Jul 21 16:30:18 2006 -+++ gettext-0.15-modified\gettext-tools\config.h.msvc Wed Oct 18 23:51:07 2006 -@@ -1,5 +1,6 @@ - /* config.h.in. Generated from configure.ac by autoheader. */ - -+#define EXEEXT '.exe' - - /* Default value for alignment of strings in .mo file. */ - #define DEFAULT_OUTPUT_ALIGNMENT 1 -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\addext.c gettext-0.15-modified\gettext-tools\lib\addext.c ---- gettext-0.15\gettext-tools\lib\addext.c Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\addext.c Sat Oct 14 00:03:13 2006 -@@ -43,7 +43,9 @@ - # include - #endif - -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #include "basename.h" - -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\clean-temp.c gettext-0.15-modified\gettext-tools\lib\clean-temp.c ---- gettext-0.15\gettext-tools\lib\clean-temp.c Mon Jul 03 17:13:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\clean-temp.c Sat Oct 14 00:04:01 2006 -@@ -28,7 +28,10 @@ - #include - #include - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #include "error.h" - #include "fatal-signal.h" -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\copy-file.c gettext-0.15-modified\gettext-tools\lib\copy-file.c ---- gettext-0.15\gettext-tools\lib\copy-file.c Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\copy-file.c Sat Oct 14 00:05:52 2006 -@@ -28,7 +28,10 @@ - #include - #include - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #if HAVE_UTIME || HAVE_UTIMES - # if HAVE_UTIME_H -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\execute.c gettext-0.15-modified\gettext-tools\lib\execute.c ---- gettext-0.15\gettext-tools\lib\execute.c Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\execute.c Sat Oct 14 00:07:17 2006 -@@ -29,7 +29,10 @@ - #include - #include - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #include "error.h" - #include "exit.h" -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\fatal-signal.c gettext-0.15-modified\gettext-tools\lib\fatal-signal.c ---- gettext-0.15\gettext-tools\lib\fatal-signal.c Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\fatal-signal.c Sat Oct 14 00:07:42 2006 -@@ -27,7 +27,10 @@ - #include - #include - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #include "xalloc.h" - -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\findprog.c gettext-0.15-modified\gettext-tools\lib\findprog.c ---- gettext-0.15\gettext-tools\lib\findprog.c Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\findprog.c Sat Oct 14 00:08:03 2006 -@@ -27,7 +27,10 @@ - #include - #include - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #include "xalloc.h" - #include "pathname.h" -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\getopt_.h gettext-0.15-modified\gettext-tools\lib\getopt_.h ---- gettext-0.15\gettext-tools\lib\getopt_.h Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\getopt_.h Fri Oct 13 23:13:47 2006 -@@ -42,7 +42,9 @@ - #if defined __GETOPT_PREFIX && !defined __need_getopt - # include - # include -+#ifdef HAVE_UNISTD_H - # include -+#endif - # undef __need_getopt - # undef getopt - # undef getopt_long -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\gettext.h gettext-0.15-modified\gettext-tools\lib\gettext.h ---- gettext-0.15\gettext-tools\lib\gettext.h Fri Jun 09 22:29:10 2006 -+++ gettext-0.15-modified\gettext-tools\lib\gettext.h Sat Oct 14 00:28:04 2006 -@@ -142,8 +142,10 @@ - - #include - -+#ifndef _MSC_VER - #define _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS \ - (__GNUC__ >= 3 || defined __cplusplus) -+#endif - - #if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS - #include -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\javacomp.c gettext-0.15-modified\gettext-tools\lib\javacomp.c ---- gettext-0.15\gettext-tools\lib\javacomp.c Tue Jul 11 14:08:16 2006 -+++ gettext-0.15-modified\gettext-tools\lib\javacomp.c Sat Oct 14 00:08:25 2006 -@@ -29,7 +29,11 @@ - #include - #include - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif -+ - #include - #include - -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\mkdtemp.c gettext-0.15-modified\gettext-tools\lib\mkdtemp.c ---- gettext-0.15\gettext-tools\lib\mkdtemp.c Fri Jun 30 16:17:32 2006 -+++ gettext-0.15-modified\gettext-tools\lib\mkdtemp.c Sat Oct 14 00:10:09 2006 -@@ -46,7 +46,9 @@ - # include - #endif - -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #if HAVE_GETTIMEOFDAY || _LIBC - # if HAVE_SYS_TIME_H || _LIBC -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\pathmax.h gettext-0.15-modified\gettext-tools\lib\pathmax.h ---- gettext-0.15\gettext-tools\lib\pathmax.h Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\pathmax.h Sat Oct 14 00:05:25 2006 -@@ -18,7 +18,9 @@ - #ifndef _PATHMAX_H - # define _PATHMAX_H - -+#ifdef HAVE_UNISTD_H - # include -+#endif - - /* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define - PATH_MAX but might cause redefinition warnings when sys/param.h is -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\pipe.c gettext-0.15-modified\gettext-tools\lib\pipe.c ---- gettext-0.15\gettext-tools\lib\pipe.c Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\pipe.c Sat Oct 14 00:06:14 2006 -@@ -28,7 +28,10 @@ - #include - #include - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #include "error.h" - #include "exit.h" -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\pipe.h gettext-0.15-modified\gettext-tools\lib\pipe.h ---- gettext-0.15\gettext-tools\lib\pipe.h Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\pipe.h Sat Oct 14 00:06:34 2006 -@@ -21,7 +21,11 @@ - - /* Get pid_t. */ - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif -+ - #include - - #include -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\progreloc.c gettext-0.15-modified\gettext-tools\lib\progreloc.c ---- gettext-0.15\gettext-tools\lib\progreloc.c Wed May 17 12:12:44 2006 -+++ gettext-0.15-modified\gettext-tools\lib\progreloc.c Sat Oct 21 23:39:19 2006 -@@ -313,7 +313,7 @@ - the filenames may have undergone a case conversion since - they were packaged. In other words, EXEEXT may be ".exe" - on one system and ".EXE" on another. */ -- static const char exeext[] = EXEEXT; -+ static const char exeext = EXEEXT; - const char *s1 = argv0 + argv0_len - exeext_len; - const char *s2 = exeext; - for (; *s1 != '\0'; s1++, s2++) -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\safe-read.c gettext-0.15-modified\gettext-tools\lib\safe-read.c ---- gettext-0.15\gettext-tools\lib\safe-read.c Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\safe-read.c Sat Oct 14 00:09:37 2006 -@@ -29,7 +29,10 @@ - - /* Get ssize_t. */ - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #include - -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\unsetenv.c gettext-0.15-modified\gettext-tools\lib\unsetenv.c ---- gettext-0.15\gettext-tools\lib\unsetenv.c Sat Jun 17 17:51:52 2006 -+++ gettext-0.15-modified\gettext-tools\lib\unsetenv.c Sat Oct 14 00:10:34 2006 -@@ -27,7 +27,10 @@ - - #include - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #if !_LIBC - # define __environ environ -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\wait-process.h gettext-0.15-modified\gettext-tools\lib\wait-process.h ---- gettext-0.15\gettext-tools\lib\wait-process.h Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\lib\wait-process.h Sat Oct 14 00:06:56 2006 -@@ -21,7 +21,11 @@ - - /* Get pid_t. */ - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif -+ - #include - - #include -diff -riwBu -Xex gettext-0.15\gettext-tools\lib\xvasprintf.c gettext-0.15-modified\gettext-tools\lib\xvasprintf.c ---- gettext-0.15\gettext-tools\lib\xvasprintf.c Tue May 09 19:01:24 2006 -+++ gettext-0.15-modified\gettext-tools\lib\xvasprintf.c Wed Oct 18 22:21:39 2006 -@@ -22,6 +22,13 @@ - /* Specification. */ - #include "xvasprintf.h" - -+#ifndef va_copy -+ -+/* Assumes typical stack machine */ -+#define va_copy(dst, src) ((void)((dst) = (src))) -+ -+#endif -+ - #include - #include - #include -diff -riwBu -Xex gettext-0.15\gettext-tools\src\Makefile.msvc gettext-0.15-modified\gettext-tools\src\Makefile.msvc ---- gettext-0.15\gettext-tools\src\Makefile.msvc Wed Mar 29 13:29:20 2006 -+++ gettext-0.15-modified\gettext-tools\src\Makefile.msvc Fri Oct 20 12:20:56 2006 -@@ -122,14 +122,18 @@ - write-stringtable.obj \ - write-po.obj \ - msgl-ascii.obj \ -+ msgl-check.obj \ - msgl-iconv.obj \ - msgl-equal.obj \ - msgl-cat.obj \ - msgl-english.obj \ -+ msgl-fsearch.obj \ - file-list.obj \ - msgl-charset.obj \ - po-time.obj \ -- plural.obj \ -+ po-xerror.obj \ -+ plural-exp.obj \ -+ plural-eval.obj \ - plural-table.obj \ - format.obj \ - format-c.obj \ -@@ -224,6 +228,9 @@ - msgl-ascii.obj : msgl-ascii.c - $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c msgl-ascii.c - -+msgl-check.obj : msgl-check.c -+ $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c msgl-check.c -+ - msgl-iconv.obj : msgl-iconv.c - $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c msgl-iconv.c - -@@ -245,8 +252,11 @@ - po-time.obj : po-time.c - $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c po-time.c - --plural.obj : plural.c -- $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c plural.c -+po-xerror.obj : po-xerror.c -+ $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c po-xerror.c -+ -+plural-exp.obj : plural-exp.c -+ $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c plural-exp.c - - plural-table.obj : plural-table.c - $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c plural-table.c -@@ -322,6 +332,7 @@ - # gettextsrc.dll and gettextsrc.lib are created together. - gettextsrc.lib : ..\windows\gettextsrc.def $(OBJECTS) $(RESOURCES) - $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD ..\windows\gettextsrc.def $(OBJECTS) ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(RESOURCES) -Fegettextsrc.dll -+ mt.exe -manifest gettextsrc.dll.manifest -outputresource:gettextsrc.dll;2 - - gettextsrc.res : ../windows/gettextsrc.rc - rc -Fo gettextsrc.res ../windows/gettextsrc.rc -@@ -488,51 +499,67 @@ - - msgcmp.exe : $(msgcmp_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgcmp_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgcmp.exe -+ mt.exe -manifest msgcmp.exe.manifest -outputresource:msgcmp.exe;1 - - msgfmt.exe : $(msgfmt_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgfmt_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgfmt.exe -+ mt.exe -manifest msgfmt.exe.manifest -outputresource:msgfmt.exe;1 - - msgmerge.exe : $(msgmerge_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgmerge_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgmerge.exe -+ mt.exe -manifest msgmerge.exe.manifest -outputresource:msgmerge.exe;1 - - msgunfmt.exe : $(msgunfmt_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgunfmt_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgunfmt.exe -+ mt.exe -manifest msgunfmt.exe.manifest -outputresource:msgunfmt.exe;1 - - xgettext.exe : $(xgettext_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(xgettext_OBJECTS) ..\libuniname\uniname.lib gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Fexgettext.exe -+ mt.exe -manifest xgettext.exe.manifest -outputresource:xgettext.exe;1 - - msgattrib.exe : $(msgattrib_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgattrib_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgattrib.exe -+ mt.exe -manifest msgattrib.exe.manifest -outputresource:msgattrib.exe;1 - - msgcat.exe : $(msgcat_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgcat_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgcat.exe -+ mt.exe -manifest msgcat.exe.manifest -outputresource:msgcat.exe;1 - - msgcomm.exe : $(msgcomm_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgcomm_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgcomm.exe -+ mt.exe -manifest msgcomm.exe.manifest -outputresource:msgcomm.exe;1 - - msgconv.exe : $(msgconv_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgconv_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgconv.exe -+ mt.exe -manifest msgconv.exe.manifest -outputresource:msgconv.exe;1 - - msgen.exe : $(msgen_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgen_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgen.exe -+ mt.exe -manifest msgen.exe.manifest -outputresource:msgen.exe;1 - - msgexec.exe : $(msgexec_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgexec_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgexec.exe -+ mt.exe -manifest msgexec.exe.manifest -outputresource:msgexec.exe;1 - - msgfilter.exe : $(msgfilter_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgfilter_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgfilter.exe -+ mt.exe -manifest msgfilter.exe.manifest -outputresource:msgfilter.exe;1 - - msggrep.exe : $(msggrep_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msggrep_OBJECTS) ..\libgrep\grep.lib gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsggrep.exe -+ mt.exe -manifest msggrep.exe.manifest -outputresource:msggrep.exe;1 - - msginit.exe : $(msginit_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msginit_OBJECTS) ..\intl\localename.obj gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsginit.exe -+ mt.exe -manifest msginit.exe.manifest -outputresource:msginit.exe;1 - - msguniq.exe : $(msguniq_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msguniq_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsguniq.exe -+ mt.exe -manifest msguniq.exe.manifest -outputresource:msguniq.exe;1 - - recode-sr-latin.exe : $(recode_sr_latin_OBJECTS) - $(CC) $(MFLAGS) $(DEBUGFLAGS) $(recode_sr_latin_OBJECTS) ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Ferecode-sr-latin.exe -+ mt.exe -manifest recode-sr-latin.exe.manifest -outputresource:recode-sr-latin.exe;1 - - # Compilation rules for gettextpo.lib objects, with $(PICFLAGS). - -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgattrib.c gettext-0.15-modified\gettext-tools\src\msgattrib.c ---- gettext-0.15\gettext-tools\src\msgattrib.c Mon Apr 03 13:27:40 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgattrib.c Wed Oct 18 23:53:18 2006 -@@ -147,7 +147,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgcat.c gettext-0.15-modified\gettext-tools\src\msgcat.c ---- gettext-0.15\gettext-tools\src\msgcat.c Mon Apr 03 13:27:40 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgcat.c Wed Oct 18 23:53:18 2006 -@@ -119,7 +119,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgcmp.c gettext-0.15-modified\gettext-tools\src\msgcmp.c ---- gettext-0.15\gettext-tools\src\msgcmp.c Mon Apr 03 13:27:40 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgcmp.c Wed Oct 18 23:53:18 2006 -@@ -90,7 +90,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgcomm.c gettext-0.15-modified\gettext-tools\src\msgcomm.c ---- gettext-0.15\gettext-tools\src\msgcomm.c Mon Apr 03 13:27:40 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgcomm.c Wed Oct 18 23:53:18 2006 -@@ -121,7 +121,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgconv.c gettext-0.15-modified\gettext-tools\src\msgconv.c ---- gettext-0.15\gettext-tools\src\msgconv.c Mon Apr 03 13:27:42 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgconv.c Wed Oct 18 23:53:18 2006 -@@ -111,7 +111,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgen.c gettext-0.15-modified\gettext-tools\src\msgen.c ---- gettext-0.15\gettext-tools\src\msgen.c Mon Apr 03 13:27:42 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgen.c Wed Oct 18 23:53:18 2006 -@@ -101,10 +100,11 @@ - /* Set locale via LC_ALL. */ - setlocale (LC_ALL, ""); - #endif -- - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgexec.c gettext-0.15-modified\gettext-tools\src\msgexec.c ---- gettext-0.15\gettext-tools\src\msgexec.c Tue May 02 14:28:34 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgexec.c Wed Oct 18 23:53:18 2006 -@@ -29,7 +29,10 @@ - #include - #include - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #include "closeout.h" - #include "dir-list.h" -@@ -114,7 +117,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgfilter.c gettext-0.15-modified\gettext-tools\src\msgfilter.c ---- gettext-0.15\gettext-tools\src\msgfilter.c Mon May 22 14:15:32 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgfilter.c Wed Oct 18 23:53:18 2006 -@@ -35,7 +35,10 @@ - # include - #endif - -+#ifdef HAVE_UNISTD_H - #include -+#endif -+ - #if defined _MSC_VER || defined __MINGW32__ - # include - #endif -@@ -164,7 +167,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgfmt.c gettext-0.15-modified\gettext-tools\src\msgfmt.c ---- gettext-0.15\gettext-tools\src\msgfmt.c Tue May 02 14:28:34 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgfmt.c Wed Oct 18 23:53:19 2006 -@@ -28,6 +28,10 @@ - #include - #include - -+#ifdef _MSC_VER -+#define ENDIANNESS 0 -+#endif -+ - #include "closeout.h" - #include "dir-list.h" - #include "error.h" -@@ -217,7 +221,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msggrep.c gettext-0.15-modified\gettext-tools\src\msggrep.c ---- gettext-0.15\gettext-tools\src\msggrep.c Mon Apr 24 13:17:08 2006 -+++ gettext-0.15-modified\gettext-tools\src\msggrep.c Wed Oct 18 23:53:19 2006 -@@ -31,7 +31,10 @@ - #include - #include - -+#ifdef HAVE_UNISTD_H - #include -+#endif -+ - #if defined _MSC_VER || defined __MINGW32__ - # include - #endif -@@ -161,7 +164,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msginit.c gettext-0.15-modified\gettext-tools\src\msginit.c ---- gettext-0.15\gettext-tools\src\msginit.c Fri Jun 30 16:34:40 2006 -+++ gettext-0.15-modified\gettext-tools\src\msginit.c Wed Oct 18 23:53:19 2006 -@@ -37,7 +37,9 @@ - # include - #endif - -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #if HAVE_DIRENT_H - # include -@@ -160,7 +162,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgmerge.c gettext-0.15-modified\gettext-tools\src\msgmerge.c ---- gettext-0.15\gettext-tools\src\msgmerge.c Mon Apr 03 13:27:42 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgmerge.c Wed Oct 18 23:53:19 2006 -@@ -170,7 +170,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgunfmt.c gettext-0.15-modified\gettext-tools\src\msgunfmt.c ---- gettext-0.15\gettext-tools\src\msgunfmt.c Mon Apr 03 13:27:42 2006 -+++ gettext-0.15-modified\gettext-tools\src\msgunfmt.c Wed Oct 18 23:53:19 2006 -@@ -130,7 +130,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\msguniq.c gettext-0.15-modified\gettext-tools\src\msguniq.c ---- gettext-0.15\gettext-tools\src\msguniq.c Mon Apr 03 13:27:42 2006 -+++ gettext-0.15-modified\gettext-tools\src\msguniq.c Wed Oct 18 23:53:19 2006 -@@ -114,7 +114,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\src\write-mo.c gettext-0.15-modified\gettext-tools\src\write-mo.c ---- gettext-0.15\gettext-tools\src\write-mo.c Thu Oct 06 13:08:06 2005 -+++ gettext-0.15-modified\gettext-tools\src\write-mo.c Sat Oct 14 01:02:50 2006 -@@ -38,7 +38,12 @@ - #include "gmo.h" - #include "hash-string.h" - -+#ifndef _MSC_VER - #include "byteswap.h" -+#else -+#include "byteswap_.h" -+#endif -+ - #include "error.h" - #include "hash.h" - #include "message.h" -diff -riwBu -Xex gettext-0.15\gettext-tools\src\xgettext.c gettext-0.15-modified\gettext-tools\src\xgettext.c ---- gettext-0.15\gettext-tools\src\xgettext.c Fri Jun 09 22:27:24 2006 -+++ gettext-0.15-modified\gettext-tools\src\xgettext.c Wed Oct 18 23:53:19 2006 -@@ -293,7 +293,9 @@ - - /* Set the text message domain. */ - bindtextdomain (PACKAGE, relocate (LOCALEDIR)); -+#ifdef BISON_LOCALEDIR - bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); -+#endif - textdomain (PACKAGE); - - /* Ensure that write errors on stdout are detected. */ -diff -riwBu -Xex gettext-0.15\gettext-tools\windows\gettextlib.def gettext-0.15-modified\gettext-tools\windows\gettextlib.def ---- gettext-0.15\gettext-tools\windows\gettextlib.def Tue Feb 08 13:26:08 2005 -+++ gettext-0.15-modified\gettext-tools\windows\gettextlib.def Wed Oct 18 22:18:21 2006 -@@ -40,7 +40,6 @@ - create_pipe_bidi - create_pipe_in - create_pipe_out --delete_hash - error - error_at_line - error_one_per_line -@@ -49,7 +48,6 @@ - execute_csharp_program - execute_java_class - find_backup_file_name --find_entry - find_in_path - freesa - fstrcmp -@@ -61,9 +59,6 @@ - gnu_basename - gnu_mbswidth - gnu_stpncpy --init_hash --insert_entry --iterate_table - locale_charset - mallocsa - maybe_print_progname -@@ -92,8 +87,6 @@ - shell_quote_copy - shell_quote_length - stpcpy --strcasecmp --strncasecmp - u8_possible_linebreaks - u8_width_linebreaks - uc_width -@@ -110,3 +103,19 @@ - xrealloc - xsetenv - xstrdup -+cleanup_temp_dir -+unregister_temp_subdir -+unregister_temp_file -+register_temp_subdir -+register_temp_file -+create_temp_dir -+hash_destroy -+hash_iterate -+hash_init -+proper_name -+proper_name_utf8 -+hash_insert_entry -+hash_find_entry -+hash_set_value -+hash_iterate_modify -+iconv_string -diff -riwBu -Xex gettext-0.15\gettext-tools\windows\gettextsrc.def gettext-0.15-modified\gettext-tools\windows\gettextsrc.def ---- gettext-0.15\gettext-tools\windows\gettextsrc.def Sat Feb 12 21:07:36 2005 -+++ gettext-0.15-modified\gettext-tools\windows\gettextsrc.def Wed Oct 18 22:19:25 2006 -@@ -65,7 +65,6 @@ - dir_list_nth - dir_list_restore - dir_list_save_reset --extract_plural_expression - get_sysdep_c_format_directives - iconv_message_list - iconv_msgdomain_list -@@ -92,7 +91,6 @@ - message_list_list_append - message_list_list_append_list - message_list_list_search --message_list_list_search_fuzzy - message_list_prepend - message_list_remove_if_not - message_list_search -@@ -120,7 +118,6 @@ - msgdomain_list_sort_by_msgid - msgdomain_list_sublist - open_po_file --parse_plural_expression - po_callback_comment - po_callback_comment_filepos - po_callback_domain -@@ -157,3 +154,16 @@ - string_list_init - string_list_join - string_list_member -+check_message_list -+parse_plural_expression -+plural_eval -+po_xerror -+extract_plural_expression -+message_fuzzy_index_alloc -+fuzzy_search_goal_function -+message_list_list_free -+po_charset_character_iterator -+get_python_format_unnamed_arg_count -+check_message -+textmode_xerror -+textmode_xerror2 +diff -riwBu -Xex gettext-0.15\gettext-runtime\config.h.msvc gettext-0.15-modified\gettext-runtime\config.h.msvc +--- gettext-0.15\gettext-runtime\config.h.msvc Fri Jul 21 16:30:08 2006 ++++ gettext-0.15-modified\gettext-runtime\config.h.msvc Sat Oct 21 23:37:47 2006 +@@ -1,5 +1,7 @@ + /* config.h.in. Generated from configure.ac by autoheader. */ + ++#define EXEEXT '.exe' ++ + /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP + systems. This function is required for `alloca.c' support on those systems. + */ +diff -riwBu -Xex gettext-0.15\gettext-runtime\intl\Makefile.msvc gettext-0.15-modified\gettext-runtime\intl\Makefile.msvc +--- gettext-0.15\gettext-runtime\intl\Makefile.msvc Mon Aug 01 13:14:02 2005 ++++ gettext-0.15-modified\gettext-runtime\intl\Makefile.msvc Fri Oct 20 12:23:09 2006 +@@ -204,6 +204,7 @@ + # intl.dll and intl.lib are created together. + intl.lib : $(OBJECTS) $(RESOURCES) + $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD $(OBJECTS) $(libdir)\iconv.lib $(RESOURCES) -Feintl.dll ++ mt.exe -manifest intl.dll.manifest -outputresource:intl.dll;2 + + intl.res : $(srcdir)\..\windows\intl.rc + rc -Fo intl.res $(srcdir)\..\windows\intl.rc +diff -riwBu -Xex gettext-0.15\gettext-runtime\src\Makefile.msvc gettext-0.15-modified\gettext-runtime\src\Makefile.msvc +--- gettext-0.15\gettext-runtime\src\Makefile.msvc Thu Feb 10 17:49:08 2005 ++++ gettext-0.15-modified\gettext-runtime\src\Makefile.msvc Fri Oct 20 12:22:23 2006 +@@ -107,12 +107,15 @@ + + gettext.exe : $(gettext_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(gettext_OBJECTS) ..\lib\grt.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Fegettext.exe ++ mt.exe -manifest gettext.exe.manifest -outputresource:gettext.exe;1 + + ngettext.exe : $(ngettext_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(ngettext_OBJECTS) ..\lib\grt.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Fengettext.exe ++ mt.exe -manifest ngettext.exe.manifest -outputresource:ngettext.exe;1 + + envsubst.exe : $(envsubst_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(ngettext_OBJECTS) ..\lib\grt.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Feenvsubst.exe ++ mt.exe -manifest envsubst.exe.manifest -outputresource:envsubst.exe;1 + + install : all force + -mkdir $(prefix) +diff -riwBu -Xex gettext-0.15\gettext-tools\config.h.msvc gettext-0.15-modified\gettext-tools\config.h.msvc +--- gettext-0.15\gettext-tools\config.h.msvc Fri Jul 21 16:30:18 2006 ++++ gettext-0.15-modified\gettext-tools\config.h.msvc Wed Oct 18 23:51:07 2006 +@@ -1,5 +1,6 @@ + /* config.h.in. Generated from configure.ac by autoheader. */ + ++#define EXEEXT '.exe' + + /* Default value for alignment of strings in .mo file. */ + #define DEFAULT_OUTPUT_ALIGNMENT 1 +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\addext.c gettext-0.15-modified\gettext-tools\lib\addext.c +--- gettext-0.15\gettext-tools\lib\addext.c Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\addext.c Sat Oct 14 00:03:13 2006 +@@ -43,7 +43,9 @@ + # include + #endif + ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #include "basename.h" + +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\clean-temp.c gettext-0.15-modified\gettext-tools\lib\clean-temp.c +--- gettext-0.15\gettext-tools\lib\clean-temp.c Mon Jul 03 17:13:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\clean-temp.c Sat Oct 14 00:04:01 2006 +@@ -28,7 +28,10 @@ + #include + #include + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #include "error.h" + #include "fatal-signal.h" +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\copy-file.c gettext-0.15-modified\gettext-tools\lib\copy-file.c +--- gettext-0.15\gettext-tools\lib\copy-file.c Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\copy-file.c Sat Oct 14 00:05:52 2006 +@@ -28,7 +28,10 @@ + #include + #include + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #if HAVE_UTIME || HAVE_UTIMES + # if HAVE_UTIME_H +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\execute.c gettext-0.15-modified\gettext-tools\lib\execute.c +--- gettext-0.15\gettext-tools\lib\execute.c Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\execute.c Sat Oct 14 00:07:17 2006 +@@ -29,7 +29,10 @@ + #include + #include + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #include "error.h" + #include "exit.h" +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\fatal-signal.c gettext-0.15-modified\gettext-tools\lib\fatal-signal.c +--- gettext-0.15\gettext-tools\lib\fatal-signal.c Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\fatal-signal.c Sat Oct 14 00:07:42 2006 +@@ -27,7 +27,10 @@ + #include + #include + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #include "xalloc.h" + +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\findprog.c gettext-0.15-modified\gettext-tools\lib\findprog.c +--- gettext-0.15\gettext-tools\lib\findprog.c Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\findprog.c Sat Oct 14 00:08:03 2006 +@@ -27,7 +27,10 @@ + #include + #include + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #include "xalloc.h" + #include "pathname.h" +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\getopt_.h gettext-0.15-modified\gettext-tools\lib\getopt_.h +--- gettext-0.15\gettext-tools\lib\getopt_.h Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\getopt_.h Fri Oct 13 23:13:47 2006 +@@ -42,7 +42,9 @@ + #if defined __GETOPT_PREFIX && !defined __need_getopt + # include + # include ++#ifdef HAVE_UNISTD_H + # include ++#endif + # undef __need_getopt + # undef getopt + # undef getopt_long +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\gettext.h gettext-0.15-modified\gettext-tools\lib\gettext.h +--- gettext-0.15\gettext-tools\lib\gettext.h Fri Jun 09 22:29:10 2006 ++++ gettext-0.15-modified\gettext-tools\lib\gettext.h Sat Oct 14 00:28:04 2006 +@@ -142,8 +142,10 @@ + + #include + ++#ifndef _MSC_VER + #define _LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS \ + (__GNUC__ >= 3 || defined __cplusplus) ++#endif + + #if !_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS + #include +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\javacomp.c gettext-0.15-modified\gettext-tools\lib\javacomp.c +--- gettext-0.15\gettext-tools\lib\javacomp.c Tue Jul 11 14:08:16 2006 ++++ gettext-0.15-modified\gettext-tools\lib\javacomp.c Sat Oct 14 00:08:25 2006 +@@ -29,7 +29,11 @@ + #include + #include + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif ++ + #include + #include + +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\mkdtemp.c gettext-0.15-modified\gettext-tools\lib\mkdtemp.c +--- gettext-0.15\gettext-tools\lib\mkdtemp.c Fri Jun 30 16:17:32 2006 ++++ gettext-0.15-modified\gettext-tools\lib\mkdtemp.c Sat Oct 14 00:10:09 2006 +@@ -46,7 +46,9 @@ + # include + #endif + ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #if HAVE_GETTIMEOFDAY || _LIBC + # if HAVE_SYS_TIME_H || _LIBC +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\pathmax.h gettext-0.15-modified\gettext-tools\lib\pathmax.h +--- gettext-0.15\gettext-tools\lib\pathmax.h Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\pathmax.h Sat Oct 14 00:05:25 2006 +@@ -18,7 +18,9 @@ + #ifndef _PATHMAX_H + # define _PATHMAX_H + ++#ifdef HAVE_UNISTD_H + # include ++#endif + + /* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define + PATH_MAX but might cause redefinition warnings when sys/param.h is +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\pipe.c gettext-0.15-modified\gettext-tools\lib\pipe.c +--- gettext-0.15\gettext-tools\lib\pipe.c Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\pipe.c Sat Oct 14 00:06:14 2006 +@@ -28,7 +28,10 @@ + #include + #include + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #include "error.h" + #include "exit.h" +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\pipe.h gettext-0.15-modified\gettext-tools\lib\pipe.h +--- gettext-0.15\gettext-tools\lib\pipe.h Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\pipe.h Sat Oct 14 00:06:34 2006 +@@ -21,7 +21,11 @@ + + /* Get pid_t. */ + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif ++ + #include + + #include +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\progreloc.c gettext-0.15-modified\gettext-tools\lib\progreloc.c +--- gettext-0.15\gettext-tools\lib\progreloc.c Wed May 17 12:12:44 2006 ++++ gettext-0.15-modified\gettext-tools\lib\progreloc.c Sat Oct 21 23:39:19 2006 +@@ -313,7 +313,7 @@ + the filenames may have undergone a case conversion since + they were packaged. In other words, EXEEXT may be ".exe" + on one system and ".EXE" on another. */ +- static const char exeext[] = EXEEXT; ++ static const char exeext = EXEEXT; + const char *s1 = argv0 + argv0_len - exeext_len; + const char *s2 = exeext; + for (; *s1 != '\0'; s1++, s2++) +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\safe-read.c gettext-0.15-modified\gettext-tools\lib\safe-read.c +--- gettext-0.15\gettext-tools\lib\safe-read.c Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\safe-read.c Sat Oct 14 00:09:37 2006 +@@ -29,7 +29,10 @@ + + /* Get ssize_t. */ + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #include + +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\unsetenv.c gettext-0.15-modified\gettext-tools\lib\unsetenv.c +--- gettext-0.15\gettext-tools\lib\unsetenv.c Sat Jun 17 17:51:52 2006 ++++ gettext-0.15-modified\gettext-tools\lib\unsetenv.c Sat Oct 14 00:10:34 2006 +@@ -27,7 +27,10 @@ + + #include + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #if !_LIBC + # define __environ environ +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\wait-process.h gettext-0.15-modified\gettext-tools\lib\wait-process.h +--- gettext-0.15\gettext-tools\lib\wait-process.h Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\lib\wait-process.h Sat Oct 14 00:06:56 2006 +@@ -21,7 +21,11 @@ + + /* Get pid_t. */ + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif ++ + #include + + #include +diff -riwBu -Xex gettext-0.15\gettext-tools\lib\xvasprintf.c gettext-0.15-modified\gettext-tools\lib\xvasprintf.c +--- gettext-0.15\gettext-tools\lib\xvasprintf.c Tue May 09 19:01:24 2006 ++++ gettext-0.15-modified\gettext-tools\lib\xvasprintf.c Wed Oct 18 22:21:39 2006 +@@ -22,6 +22,13 @@ + /* Specification. */ + #include "xvasprintf.h" + ++#ifndef va_copy ++ ++/* Assumes typical stack machine */ ++#define va_copy(dst, src) ((void)((dst) = (src))) ++ ++#endif ++ + #include + #include + #include +diff -riwBu -Xex gettext-0.15\gettext-tools\src\Makefile.msvc gettext-0.15-modified\gettext-tools\src\Makefile.msvc +--- gettext-0.15\gettext-tools\src\Makefile.msvc Wed Mar 29 13:29:20 2006 ++++ gettext-0.15-modified\gettext-tools\src\Makefile.msvc Fri Oct 20 12:20:56 2006 +@@ -122,14 +122,18 @@ + write-stringtable.obj \ + write-po.obj \ + msgl-ascii.obj \ ++ msgl-check.obj \ + msgl-iconv.obj \ + msgl-equal.obj \ + msgl-cat.obj \ + msgl-english.obj \ ++ msgl-fsearch.obj \ + file-list.obj \ + msgl-charset.obj \ + po-time.obj \ +- plural.obj \ ++ po-xerror.obj \ ++ plural-exp.obj \ ++ plural-eval.obj \ + plural-table.obj \ + format.obj \ + format-c.obj \ +@@ -224,6 +228,9 @@ + msgl-ascii.obj : msgl-ascii.c + $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c msgl-ascii.c + ++msgl-check.obj : msgl-check.c ++ $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c msgl-check.c ++ + msgl-iconv.obj : msgl-iconv.c + $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c msgl-iconv.c + +@@ -245,8 +252,11 @@ + po-time.obj : po-time.c + $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c po-time.c + +-plural.obj : plural.c +- $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c plural.c ++po-xerror.obj : po-xerror.c ++ $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c po-xerror.c ++ ++plural-exp.obj : plural-exp.c ++ $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c plural-exp.c + + plural-table.obj : plural-table.c + $(CC) $(INCLUDES) $(CFLAGS) $(PICFLAGS) -c plural-table.c +@@ -322,6 +332,7 @@ + # gettextsrc.dll and gettextsrc.lib are created together. + gettextsrc.lib : ..\windows\gettextsrc.def $(OBJECTS) $(RESOURCES) + $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD ..\windows\gettextsrc.def $(OBJECTS) ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(RESOURCES) -Fegettextsrc.dll ++ mt.exe -manifest gettextsrc.dll.manifest -outputresource:gettextsrc.dll;2 + + gettextsrc.res : ../windows/gettextsrc.rc + rc -Fo gettextsrc.res ../windows/gettextsrc.rc +@@ -488,51 +499,67 @@ + + msgcmp.exe : $(msgcmp_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgcmp_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgcmp.exe ++ mt.exe -manifest msgcmp.exe.manifest -outputresource:msgcmp.exe;1 + + msgfmt.exe : $(msgfmt_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgfmt_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgfmt.exe ++ mt.exe -manifest msgfmt.exe.manifest -outputresource:msgfmt.exe;1 + + msgmerge.exe : $(msgmerge_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgmerge_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgmerge.exe ++ mt.exe -manifest msgmerge.exe.manifest -outputresource:msgmerge.exe;1 + + msgunfmt.exe : $(msgunfmt_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgunfmt_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgunfmt.exe ++ mt.exe -manifest msgunfmt.exe.manifest -outputresource:msgunfmt.exe;1 + + xgettext.exe : $(xgettext_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(xgettext_OBJECTS) ..\libuniname\uniname.lib gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Fexgettext.exe ++ mt.exe -manifest xgettext.exe.manifest -outputresource:xgettext.exe;1 + + msgattrib.exe : $(msgattrib_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgattrib_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgattrib.exe ++ mt.exe -manifest msgattrib.exe.manifest -outputresource:msgattrib.exe;1 + + msgcat.exe : $(msgcat_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgcat_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgcat.exe ++ mt.exe -manifest msgcat.exe.manifest -outputresource:msgcat.exe;1 + + msgcomm.exe : $(msgcomm_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgcomm_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgcomm.exe ++ mt.exe -manifest msgcomm.exe.manifest -outputresource:msgcomm.exe;1 + + msgconv.exe : $(msgconv_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgconv_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgconv.exe ++ mt.exe -manifest msgconv.exe.manifest -outputresource:msgconv.exe;1 + + msgen.exe : $(msgen_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgen_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgen.exe ++ mt.exe -manifest msgen.exe.manifest -outputresource:msgen.exe;1 + + msgexec.exe : $(msgexec_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgexec_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgexec.exe ++ mt.exe -manifest msgexec.exe.manifest -outputresource:msgexec.exe;1 + + msgfilter.exe : $(msgfilter_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msgfilter_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsgfilter.exe ++ mt.exe -manifest msgfilter.exe.manifest -outputresource:msgfilter.exe;1 + + msggrep.exe : $(msggrep_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msggrep_OBJECTS) ..\libgrep\grep.lib gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsggrep.exe ++ mt.exe -manifest msggrep.exe.manifest -outputresource:msggrep.exe;1 + + msginit.exe : $(msginit_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msginit_OBJECTS) ..\intl\localename.obj gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsginit.exe ++ mt.exe -manifest msginit.exe.manifest -outputresource:msginit.exe;1 + + msguniq.exe : $(msguniq_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(msguniq_OBJECTS) gettextsrc.lib ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Femsguniq.exe ++ mt.exe -manifest msguniq.exe.manifest -outputresource:msguniq.exe;1 + + recode-sr-latin.exe : $(recode_sr_latin_OBJECTS) + $(CC) $(MFLAGS) $(DEBUGFLAGS) $(recode_sr_latin_OBJECTS) ..\lib\gettextlib.lib ..\intl\intl.lib $(libdir)\iconv.lib $(LDADD) -Ferecode-sr-latin.exe ++ mt.exe -manifest recode-sr-latin.exe.manifest -outputresource:recode-sr-latin.exe;1 + + # Compilation rules for gettextpo.lib objects, with $(PICFLAGS). + +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgattrib.c gettext-0.15-modified\gettext-tools\src\msgattrib.c +--- gettext-0.15\gettext-tools\src\msgattrib.c Mon Apr 03 13:27:40 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgattrib.c Wed Oct 18 23:53:18 2006 +@@ -147,7 +147,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgcat.c gettext-0.15-modified\gettext-tools\src\msgcat.c +--- gettext-0.15\gettext-tools\src\msgcat.c Mon Apr 03 13:27:40 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgcat.c Wed Oct 18 23:53:18 2006 +@@ -119,7 +119,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgcmp.c gettext-0.15-modified\gettext-tools\src\msgcmp.c +--- gettext-0.15\gettext-tools\src\msgcmp.c Mon Apr 03 13:27:40 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgcmp.c Wed Oct 18 23:53:18 2006 +@@ -90,7 +90,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgcomm.c gettext-0.15-modified\gettext-tools\src\msgcomm.c +--- gettext-0.15\gettext-tools\src\msgcomm.c Mon Apr 03 13:27:40 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgcomm.c Wed Oct 18 23:53:18 2006 +@@ -121,7 +121,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgconv.c gettext-0.15-modified\gettext-tools\src\msgconv.c +--- gettext-0.15\gettext-tools\src\msgconv.c Mon Apr 03 13:27:42 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgconv.c Wed Oct 18 23:53:18 2006 +@@ -111,7 +111,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgen.c gettext-0.15-modified\gettext-tools\src\msgen.c +--- gettext-0.15\gettext-tools\src\msgen.c Mon Apr 03 13:27:42 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgen.c Wed Oct 18 23:53:18 2006 +@@ -101,10 +100,11 @@ + /* Set locale via LC_ALL. */ + setlocale (LC_ALL, ""); + #endif +- + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgexec.c gettext-0.15-modified\gettext-tools\src\msgexec.c +--- gettext-0.15\gettext-tools\src\msgexec.c Tue May 02 14:28:34 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgexec.c Wed Oct 18 23:53:18 2006 +@@ -29,7 +29,10 @@ + #include + #include + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #include "closeout.h" + #include "dir-list.h" +@@ -114,7 +117,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgfilter.c gettext-0.15-modified\gettext-tools\src\msgfilter.c +--- gettext-0.15\gettext-tools\src\msgfilter.c Mon May 22 14:15:32 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgfilter.c Wed Oct 18 23:53:18 2006 +@@ -35,7 +35,10 @@ + # include + #endif + ++#ifdef HAVE_UNISTD_H + #include ++#endif ++ + #if defined _MSC_VER || defined __MINGW32__ + # include + #endif +@@ -164,7 +167,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgfmt.c gettext-0.15-modified\gettext-tools\src\msgfmt.c +--- gettext-0.15\gettext-tools\src\msgfmt.c Tue May 02 14:28:34 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgfmt.c Wed Oct 18 23:53:19 2006 +@@ -28,6 +28,10 @@ + #include + #include + ++#ifdef _MSC_VER ++#define ENDIANNESS 0 ++#endif ++ + #include "closeout.h" + #include "dir-list.h" + #include "error.h" +@@ -217,7 +221,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msggrep.c gettext-0.15-modified\gettext-tools\src\msggrep.c +--- gettext-0.15\gettext-tools\src\msggrep.c Mon Apr 24 13:17:08 2006 ++++ gettext-0.15-modified\gettext-tools\src\msggrep.c Wed Oct 18 23:53:19 2006 +@@ -31,7 +31,10 @@ + #include + #include + ++#ifdef HAVE_UNISTD_H + #include ++#endif ++ + #if defined _MSC_VER || defined __MINGW32__ + # include + #endif +@@ -161,7 +164,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msginit.c gettext-0.15-modified\gettext-tools\src\msginit.c +--- gettext-0.15\gettext-tools\src\msginit.c Fri Jun 30 16:34:40 2006 ++++ gettext-0.15-modified\gettext-tools\src\msginit.c Wed Oct 18 23:53:19 2006 +@@ -37,7 +37,9 @@ + # include + #endif + ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #if HAVE_DIRENT_H + # include +@@ -160,7 +162,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgmerge.c gettext-0.15-modified\gettext-tools\src\msgmerge.c +--- gettext-0.15\gettext-tools\src\msgmerge.c Mon Apr 03 13:27:42 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgmerge.c Wed Oct 18 23:53:19 2006 +@@ -170,7 +170,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msgunfmt.c gettext-0.15-modified\gettext-tools\src\msgunfmt.c +--- gettext-0.15\gettext-tools\src\msgunfmt.c Mon Apr 03 13:27:42 2006 ++++ gettext-0.15-modified\gettext-tools\src\msgunfmt.c Wed Oct 18 23:53:19 2006 +@@ -130,7 +130,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\msguniq.c gettext-0.15-modified\gettext-tools\src\msguniq.c +--- gettext-0.15\gettext-tools\src\msguniq.c Mon Apr 03 13:27:42 2006 ++++ gettext-0.15-modified\gettext-tools\src\msguniq.c Wed Oct 18 23:53:19 2006 +@@ -114,7 +114,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\src\write-mo.c gettext-0.15-modified\gettext-tools\src\write-mo.c +--- gettext-0.15\gettext-tools\src\write-mo.c Thu Oct 06 13:08:06 2005 ++++ gettext-0.15-modified\gettext-tools\src\write-mo.c Sat Oct 14 01:02:50 2006 +@@ -38,7 +38,12 @@ + #include "gmo.h" + #include "hash-string.h" + ++#ifndef _MSC_VER + #include "byteswap.h" ++#else ++#include "byteswap_.h" ++#endif ++ + #include "error.h" + #include "hash.h" + #include "message.h" +diff -riwBu -Xex gettext-0.15\gettext-tools\src\xgettext.c gettext-0.15-modified\gettext-tools\src\xgettext.c +--- gettext-0.15\gettext-tools\src\xgettext.c Fri Jun 09 22:27:24 2006 ++++ gettext-0.15-modified\gettext-tools\src\xgettext.c Wed Oct 18 23:53:19 2006 +@@ -293,7 +293,9 @@ + + /* Set the text message domain. */ + bindtextdomain (PACKAGE, relocate (LOCALEDIR)); ++#ifdef BISON_LOCALEDIR + bindtextdomain ("bison-runtime", relocate (BISON_LOCALEDIR)); ++#endif + textdomain (PACKAGE); + + /* Ensure that write errors on stdout are detected. */ +diff -riwBu -Xex gettext-0.15\gettext-tools\windows\gettextlib.def gettext-0.15-modified\gettext-tools\windows\gettextlib.def +--- gettext-0.15\gettext-tools\windows\gettextlib.def Tue Feb 08 13:26:08 2005 ++++ gettext-0.15-modified\gettext-tools\windows\gettextlib.def Wed Oct 18 22:18:21 2006 +@@ -40,7 +40,6 @@ + create_pipe_bidi + create_pipe_in + create_pipe_out +-delete_hash + error + error_at_line + error_one_per_line +@@ -49,7 +48,6 @@ + execute_csharp_program + execute_java_class + find_backup_file_name +-find_entry + find_in_path + freesa + fstrcmp +@@ -61,9 +59,6 @@ + gnu_basename + gnu_mbswidth + gnu_stpncpy +-init_hash +-insert_entry +-iterate_table + locale_charset + mallocsa + maybe_print_progname +@@ -92,8 +87,6 @@ + shell_quote_copy + shell_quote_length + stpcpy +-strcasecmp +-strncasecmp + u8_possible_linebreaks + u8_width_linebreaks + uc_width +@@ -110,3 +103,19 @@ + xrealloc + xsetenv + xstrdup ++cleanup_temp_dir ++unregister_temp_subdir ++unregister_temp_file ++register_temp_subdir ++register_temp_file ++create_temp_dir ++hash_destroy ++hash_iterate ++hash_init ++proper_name ++proper_name_utf8 ++hash_insert_entry ++hash_find_entry ++hash_set_value ++hash_iterate_modify ++iconv_string +diff -riwBu -Xex gettext-0.15\gettext-tools\windows\gettextsrc.def gettext-0.15-modified\gettext-tools\windows\gettextsrc.def +--- gettext-0.15\gettext-tools\windows\gettextsrc.def Sat Feb 12 21:07:36 2005 ++++ gettext-0.15-modified\gettext-tools\windows\gettextsrc.def Wed Oct 18 22:19:25 2006 +@@ -65,7 +65,6 @@ + dir_list_nth + dir_list_restore + dir_list_save_reset +-extract_plural_expression + get_sysdep_c_format_directives + iconv_message_list + iconv_msgdomain_list +@@ -92,7 +91,6 @@ + message_list_list_append + message_list_list_append_list + message_list_list_search +-message_list_list_search_fuzzy + message_list_prepend + message_list_remove_if_not + message_list_search +@@ -120,7 +118,6 @@ + msgdomain_list_sort_by_msgid + msgdomain_list_sublist + open_po_file +-parse_plural_expression + po_callback_comment + po_callback_comment_filepos + po_callback_domain +@@ -157,3 +154,16 @@ + string_list_init + string_list_join + string_list_member ++check_message_list ++parse_plural_expression ++plural_eval ++po_xerror ++extract_plural_expression ++message_fuzzy_index_alloc ++fuzzy_search_goal_function ++message_list_list_free ++po_charset_character_iterator ++get_python_format_unnamed_arg_count ++check_message ++textmode_xerror ++textmode_xerror2 diff --git a/development/Win32/patches/msvc/libiconv-1.11.patch b/development/Win32/patches/msvc/libiconv-1.11.patch index 456eee6222..b89f48f15c 100644 --- a/development/Win32/patches/msvc/libiconv-1.11.patch +++ b/development/Win32/patches/msvc/libiconv-1.11.patch @@ -1,131 +1,131 @@ -diff -riwBu -Xex libiconv-1.11\config.h.msvc libiconv-1.11-modified\config.h.msvc ---- libiconv-1.11\config.h.msvc Wed Jul 19 21:10:22 2006 -+++ libiconv-1.11-modified\config.h.msvc Sat Oct 14 01:36:15 2006 -@@ -1,5 +1,11 @@ - /* config.h.in. Generated from configure.ac by autoheader. */ - -+#define EXEEXT '.exe' -+ -+typedef __int8 uint8_t; -+typedef __int16 uint16_t; -+typedef __int32 uint32_t; -+ - /* Define to the number of bits in type 'int16_t'. */ - #undef BITSIZEOF_INT16_T - -diff -riwBu -Xex libiconv-1.11\lib\Makefile.msvc libiconv-1.11-modified\lib\Makefile.msvc ---- libiconv-1.11\lib\Makefile.msvc Thu Jan 06 18:37:08 2005 -+++ libiconv-1.11-modified\lib\Makefile.msvc Fri Oct 20 12:25:08 2006 -@@ -121,6 +121,7 @@ - # iconv.dll and iconv.lib are created together. - iconv.lib : $(OBJECTS) $(RESOURCES) - $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD $(OBJECTS) $(RESOURCES) -Feiconv.dll -+ mt.exe -manifest iconv.dll.manifest -outputresource:iconv.dll;2 - - iconv.res : $(srcdir)/../windows/iconv.rc - rc -Fo iconv.res $(srcdir)/../windows/iconv.rc -diff -riwBu -Xex libiconv-1.11\libcharset\lib\Makefile.msvc libiconv-1.11-modified\libcharset\lib\Makefile.msvc ---- libiconv-1.11\libcharset\lib\Makefile.msvc Thu Jan 06 18:46:04 2005 -+++ libiconv-1.11-modified\libcharset\lib\Makefile.msvc Sat Oct 21 23:23:55 2006 -@@ -116,6 +116,7 @@ - # charset.dll and charset.lib are created together. - charset.lib : $(OBJECTS) $(RESOURCES) - $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD $(OBJECTS) $(RESOURCES) -Fecharset.dll -+ mt.exe -manifest charset.dll.manifest -outputresource:charset.dll;2 - - charset.res : $(srcdir)/../windows/charset.rc - rc -Fo charset.res $(srcdir)/../windows/charset.rc -diff -riwBu -Xex libiconv-1.11\src\Makefile.msvc libiconv-1.11-modified\src\Makefile.msvc ---- libiconv-1.11\src\Makefile.msvc Sun May 18 13:27:30 2003 -+++ libiconv-1.11-modified\src\Makefile.msvc Fri Oct 20 12:24:14 2006 -@@ -93,18 +93,29 @@ - - SHELL = /bin/sh - -+!if $(NO_NLS) - all : iconv_no_i18n.exe iconv.exe -+!else -+all : iconv.exe -+!endif - - # This is the temporary iconv executable, without internationalization. -+ -+!if $(NO_NLS) -+ - iconv_no_i18n.exe : $(srcdir)/iconv_no_i18n.c $(srcdir)/iconv.c ../srclib/icrt.lib ../lib/iconv.lib - $(CC) $(INCLUDES) -I..\lib $(CFLAGS) -DINSTALLPREFIX=\"$(IIprefix)\" -DINSTALLDIR=\"$(IIbindir)\" $(srcdir)/iconv_no_i18n.c ../srclib/icrt.lib ../lib/iconv.lib -Feiconv_no_i18n.exe -+ mt.exe -manifest iconv_no_i18n.exe.manifest -outputresource:iconv_no_i18n.exe;1 - $(RM) iconv_no_i18n.obj - !if $(DLL) - copy ..\lib\iconv.dll iconv.dll - !endif - -+!endif -+ - iconv.exe : $(srcdir)/iconv.c ../srclib/icrt.lib ../lib/iconv.lib - $(CC) $(INCLUDES) -I..\lib $(CFLAGS) -DINSTALLPREFIX=\"$(IIprefix)\" -DINSTALLDIR=\"$(IIbindir)\" $(srcdir)/iconv.c ../srclib/icrt.lib $(LIBINTL) ../lib/iconv.lib -Feiconv.exe -+ mt.exe -manifest iconv.exe.manifest -outputresource:iconv.exe;1 - $(RM) iconv.obj - !if $(DLL) - copy ..\lib\iconv.dll iconv.dll -diff -riwBu -Xex libiconv-1.11\srclib\Makefile.msvc libiconv-1.11-modified\srclib\Makefile.msvc ---- libiconv-1.11\srclib\Makefile.msvc Sat Jan 24 11:11:24 2004 -+++ libiconv-1.11-modified\srclib\Makefile.msvc Fri Oct 13 22:54:03 2006 -@@ -90,7 +90,7 @@ - xmalloc.obj xstrdup.obj \ - \ - relocatable.obj \ -- setenv.obj unsetenv.obj -+ setenv.obj unsetenv.obj width.obj - - all : icrt.lib - -@@ -120,6 +120,9 @@ - - unsetenv.obj : unsetenv.c - $(CC) $(INCLUDES) $(CFLAGS) -c unsetenv.c -+ -+width.obj : width.c -+ $(CC) $(INCLUDES) $(CFLAGS) -c width.c - - icrt.lib : $(OBJECTS) - -$(RM) icrt.lib -diff -riwBu -Xex libiconv-1.11\srclib\progreloc.c libiconv-1.11-modified\srclib\progreloc.c ---- libiconv-1.11\srclib\progreloc.c Wed May 17 12:12:44 2006 -+++ libiconv-1.11-modified\srclib\progreloc.c Fri Oct 13 22:23:31 2006 -@@ -313,7 +313,7 @@ - the filenames may have undergone a case conversion since - they were packaged. In other words, EXEEXT may be ".exe" - on one system and ".EXE" on another. */ -- static const char exeext[] = EXEEXT; -+ static const char exeext = EXEEXT; - const char *s1 = argv0 + argv0_len - exeext_len; - const char *s2 = exeext; - for (; *s1 != '\0'; s1++, s2++) -diff -riwBu -Xex libiconv-1.11\srclib\unitypes.h libiconv-1.11-modified\srclib\unitypes.h ---- libiconv-1.11\srclib\unitypes.h Thu May 19 18:58:24 2005 -+++ libiconv-1.11-modified\srclib\unitypes.h Fri Oct 13 22:37:58 2006 -@@ -20,7 +20,9 @@ - #define _UNITYPES_H - - /* Get uint8_t, uint16_t, uint32_t. */ -+#ifdef FULL_PATH_STDINT_H - #include -+#endif - - /* Type representing a Unicode character. */ - typedef uint32_t ucs4_t; -diff -riwBu -Xex libiconv-1.11\srclib\unsetenv.c libiconv-1.11-modified\srclib\unsetenv.c ---- libiconv-1.11\srclib\unsetenv.c Sat Jun 17 17:51:52 2006 -+++ libiconv-1.11-modified\srclib\unsetenv.c Fri Oct 13 22:24:29 2006 -@@ -27,7 +27,10 @@ - - #include - #include -+ -+#ifdef HAVE_UNISTD_H - #include -+#endif - - #if !_LIBC - # define __environ environ +diff -riwBu -Xex libiconv-1.11\config.h.msvc libiconv-1.11-modified\config.h.msvc +--- libiconv-1.11\config.h.msvc Wed Jul 19 21:10:22 2006 ++++ libiconv-1.11-modified\config.h.msvc Sat Oct 14 01:36:15 2006 +@@ -1,5 +1,11 @@ + /* config.h.in. Generated from configure.ac by autoheader. */ + ++#define EXEEXT '.exe' ++ ++typedef __int8 uint8_t; ++typedef __int16 uint16_t; ++typedef __int32 uint32_t; ++ + /* Define to the number of bits in type 'int16_t'. */ + #undef BITSIZEOF_INT16_T + +diff -riwBu -Xex libiconv-1.11\lib\Makefile.msvc libiconv-1.11-modified\lib\Makefile.msvc +--- libiconv-1.11\lib\Makefile.msvc Thu Jan 06 18:37:08 2005 ++++ libiconv-1.11-modified\lib\Makefile.msvc Fri Oct 20 12:25:08 2006 +@@ -121,6 +121,7 @@ + # iconv.dll and iconv.lib are created together. + iconv.lib : $(OBJECTS) $(RESOURCES) + $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD $(OBJECTS) $(RESOURCES) -Feiconv.dll ++ mt.exe -manifest iconv.dll.manifest -outputresource:iconv.dll;2 + + iconv.res : $(srcdir)/../windows/iconv.rc + rc -Fo iconv.res $(srcdir)/../windows/iconv.rc +diff -riwBu -Xex libiconv-1.11\libcharset\lib\Makefile.msvc libiconv-1.11-modified\libcharset\lib\Makefile.msvc +--- libiconv-1.11\libcharset\lib\Makefile.msvc Thu Jan 06 18:46:04 2005 ++++ libiconv-1.11-modified\libcharset\lib\Makefile.msvc Sat Oct 21 23:23:55 2006 +@@ -116,6 +116,7 @@ + # charset.dll and charset.lib are created together. + charset.lib : $(OBJECTS) $(RESOURCES) + $(CC) $(MFLAGS) $(DEBUGFLAGS) -LD $(OBJECTS) $(RESOURCES) -Fecharset.dll ++ mt.exe -manifest charset.dll.manifest -outputresource:charset.dll;2 + + charset.res : $(srcdir)/../windows/charset.rc + rc -Fo charset.res $(srcdir)/../windows/charset.rc +diff -riwBu -Xex libiconv-1.11\src\Makefile.msvc libiconv-1.11-modified\src\Makefile.msvc +--- libiconv-1.11\src\Makefile.msvc Sun May 18 13:27:30 2003 ++++ libiconv-1.11-modified\src\Makefile.msvc Fri Oct 20 12:24:14 2006 +@@ -93,18 +93,29 @@ + + SHELL = /bin/sh + ++!if $(NO_NLS) + all : iconv_no_i18n.exe iconv.exe ++!else ++all : iconv.exe ++!endif + + # This is the temporary iconv executable, without internationalization. ++ ++!if $(NO_NLS) ++ + iconv_no_i18n.exe : $(srcdir)/iconv_no_i18n.c $(srcdir)/iconv.c ../srclib/icrt.lib ../lib/iconv.lib + $(CC) $(INCLUDES) -I..\lib $(CFLAGS) -DINSTALLPREFIX=\"$(IIprefix)\" -DINSTALLDIR=\"$(IIbindir)\" $(srcdir)/iconv_no_i18n.c ../srclib/icrt.lib ../lib/iconv.lib -Feiconv_no_i18n.exe ++ mt.exe -manifest iconv_no_i18n.exe.manifest -outputresource:iconv_no_i18n.exe;1 + $(RM) iconv_no_i18n.obj + !if $(DLL) + copy ..\lib\iconv.dll iconv.dll + !endif + ++!endif ++ + iconv.exe : $(srcdir)/iconv.c ../srclib/icrt.lib ../lib/iconv.lib + $(CC) $(INCLUDES) -I..\lib $(CFLAGS) -DINSTALLPREFIX=\"$(IIprefix)\" -DINSTALLDIR=\"$(IIbindir)\" $(srcdir)/iconv.c ../srclib/icrt.lib $(LIBINTL) ../lib/iconv.lib -Feiconv.exe ++ mt.exe -manifest iconv.exe.manifest -outputresource:iconv.exe;1 + $(RM) iconv.obj + !if $(DLL) + copy ..\lib\iconv.dll iconv.dll +diff -riwBu -Xex libiconv-1.11\srclib\Makefile.msvc libiconv-1.11-modified\srclib\Makefile.msvc +--- libiconv-1.11\srclib\Makefile.msvc Sat Jan 24 11:11:24 2004 ++++ libiconv-1.11-modified\srclib\Makefile.msvc Fri Oct 13 22:54:03 2006 +@@ -90,7 +90,7 @@ + xmalloc.obj xstrdup.obj \ + \ + relocatable.obj \ +- setenv.obj unsetenv.obj ++ setenv.obj unsetenv.obj width.obj + + all : icrt.lib + +@@ -120,6 +120,9 @@ + + unsetenv.obj : unsetenv.c + $(CC) $(INCLUDES) $(CFLAGS) -c unsetenv.c ++ ++width.obj : width.c ++ $(CC) $(INCLUDES) $(CFLAGS) -c width.c + + icrt.lib : $(OBJECTS) + -$(RM) icrt.lib +diff -riwBu -Xex libiconv-1.11\srclib\progreloc.c libiconv-1.11-modified\srclib\progreloc.c +--- libiconv-1.11\srclib\progreloc.c Wed May 17 12:12:44 2006 ++++ libiconv-1.11-modified\srclib\progreloc.c Fri Oct 13 22:23:31 2006 +@@ -313,7 +313,7 @@ + the filenames may have undergone a case conversion since + they were packaged. In other words, EXEEXT may be ".exe" + on one system and ".EXE" on another. */ +- static const char exeext[] = EXEEXT; ++ static const char exeext = EXEEXT; + const char *s1 = argv0 + argv0_len - exeext_len; + const char *s2 = exeext; + for (; *s1 != '\0'; s1++, s2++) +diff -riwBu -Xex libiconv-1.11\srclib\unitypes.h libiconv-1.11-modified\srclib\unitypes.h +--- libiconv-1.11\srclib\unitypes.h Thu May 19 18:58:24 2005 ++++ libiconv-1.11-modified\srclib\unitypes.h Fri Oct 13 22:37:58 2006 +@@ -20,7 +20,9 @@ + #define _UNITYPES_H + + /* Get uint8_t, uint16_t, uint32_t. */ ++#ifdef FULL_PATH_STDINT_H + #include ++#endif + + /* Type representing a Unicode character. */ + typedef uint32_t ucs4_t; +diff -riwBu -Xex libiconv-1.11\srclib\unsetenv.c libiconv-1.11-modified\srclib\unsetenv.c +--- libiconv-1.11\srclib\unsetenv.c Sat Jun 17 17:51:52 2006 ++++ libiconv-1.11-modified\srclib\unsetenv.c Fri Oct 13 22:24:29 2006 +@@ -27,7 +27,10 @@ + + #include + #include ++ ++#ifdef HAVE_UNISTD_H + #include ++#endif + + #if !_LIBC + # define __environ environ diff --git a/development/Win32/vld/README.html b/development/Win32/vld/README.html index 7182f554b6..e624126f39 100644 --- a/development/Win32/vld/README.html +++ b/development/Win32/vld/README.html @@ -1,747 +1,747 @@ - - - - - - - - - - Visual Leak Detector (Beta) - - - - - - - - -
- -

Visual Leak Detector 1.9f (Beta)

- -

Enhanced Memory Leak Detection for Visual C++

- -
- - - - -
- - - - - - -

Introduction

- -

Visual C++ provides built-in memory leak detection, but its capabilities are minimal at best. This memory leak - detector was created as a free alternative to the built-in memory leak detector provided with Visual C++. Here - are some of Visual Leak Detector's features, none of which exist in the built-in detector:

- -
    -
  • Provides a complete stack trace for each leaked block, including source file and line number information when - available.
  • - -
  • Detects most, if not all, types of in-process memory leaks including COM-based leaks, and pure Win32 heap-based - leaks.
  • - -
  • Selected modules (DLLs or even the main EXE) can be excluded from leak detection.
  • - -
  • Provides complete data dumps (in hex and ASCII) of leaked blocks.
  • - -
  • Customizable memory leak report: can be saved to a file or sent to the debugger and can include a variable level - of detail.
  • -
- -

Other after-market leak detectors for Visual C++ are already available. But most of the really popular ones, - like Purify and BoundsChecker, are very expensive. A few free alternatives exist, but they're often too intrusive, - restrictive, or unreliable. Visual Leak Detector is currently the only freely available memory leak - detector for Visual C++ that provides all of the above professional-level features packaged neatly in an easy-to-use - library.

- -

Visual Leak Detector is licensed free of charge as a service to the Windows developer - community. If you find it to be useful and would like to just say "Thanks!", or you think it stinks and would like to - say "This thing sucks!", please feel free to drop me a note. Or, if you'd - prefer, you can contribute a small donation. Both are very appreciated.

- - - - -

Using Visual Leak Detector

- -

This section briefly describes the basics of using Visual Leak Detector (VLD).

- -

Important! : Before using VLD with any Visual C++ project, you must first add the Visual Leak - Detector include and library directories to the Visual C++ include and library directory search paths:

- -
    -
  • Visual C++ 8: Go to Tools -> Options -> Projects and Solutions -> VC++ Directories. - Select "Include files" from the "Show Directories For" drop-down menu. Add the - include subdirectory from the Visual Leak Detector installation directory. Move it - to the bottom of the list. Then select "Library files" from the drop-down menu and add the - lib subdirectory from the Visual Leak Detector installation directory. Again, move - it to the bottom of the list.
  • - -
  • Visual C++ 7: Go to Project Properties -> C/C++ -> General -> Additional Include - Directories and add the include subdirectory from the Visual Leak Detector - installation directory. Move it to the bottom of the list. Then select Additional Library Directories and add - the lib subdirectory from the Visual Leak Detector installation directory. Again, - move it to the bottom of the list.
  • - -
  • Visual C++ 6: Go to Tools -> Options -> Directories. Select "Include files" from - the "Show Directories For" drop-down menu. Add the include subdirectory - from the Visual Leak Detector installation directory. Move it to the bottom of the list. Then select "Library - files" from the drop-down menu and add the lib subdirectory from the Visual Leak - Detector installation directory. Again, move it to the bottom of the list.
  • -
- -

To use VLD with your project, follow these simple steps:

- -
    -
  1. In at least one C/C++ source file from your program, include the vld.h header - file. It should not matter which file you add the include statement to. It also should not matter in what order - the header is included in relation to other headers. The only exception is - stdafx.h (or any other precompiled header). A precompiled header, such as - stdafx.h, must always be the first header included in a source file, so - vld.h must be included after any precompiled headers.
  2. - -
  3. If your program contains one or more DLLs that you would also like to check for memory leaks, then also include - vld.h in at least one source file from each DLL to be included in leak - detection.
  4. - -
  5. Build the debug version of your program.
  6. -
- -

Note: Unlike earlier (pre-1.9) versions of VLD, it is now acceptable to include - vld.h in every source file, or to include it in a common header that is included by - many or all source files. Only one copy of the VLD code will be loaded into the process, regardless of how many - source files include vld.h.

- -

VLD will detect memory leaks in your program whenever you run the debug version. When you run the program under the - Visual C++ debugger, a report of all the memory leaks detected will be displayed in the debugger's output window - when your program exits (the report can optionally be saved to a file instead, see - ReportFile under Configuration Options). Double-clicking on a - source file's line number in the memory leak report will take you to that file and line in the editor window, - allowing easy navigation of the code path leading up to the allocation that resulted in the memory leak.

- -

Note: When you build release versions of your program, VLD will not be linked into the - executable. So it is safe to leave vld.h included in your source files when doing - release builds. Doing so will not result in any performance degradation or any other undesirable overhead.

- - - - -

Configuration Options

- -

There are a several configuration options that control specific aspects of VLD's operation. These configuration - options are stored in the vld.ini configuration file. By default, the configuration - file should be in the Visual Leak Detector installation directory. However, the configuration file can be copied to - the program's working directory, in which case the configuration settings in that copy of - vld.ini will apply only when debugging that one program.

- -
-
VLD
-
-

This option acts as a master on/off switch. By default, this option is set to "on". To completely - disable Visual Leak Detector at runtime, set this option to "off". When VLD is turned off using this - option, it will do nothing but print a message to the debugger indicating that it has been turned off.

-
- -
AggregateDuplicates
-
-

Normally, VLD displays each individual leaked block in detail. Setting this option to "yes" will make VLD - aggregate all leaks that share the same size and call stack under a single entry in the memory leak report. - Only the first leaked block will be reported in detail. No other identical leaks will be displayed. Instead, - a tally showing the total number of leaks matching that size and call stack will be shown. This can be useful - if there are only a few sources of leaks, but those few sources are repeatedly leaking a very large number of - memory blocks.

-
- -
ForceIncludeModules
-
-

In some rare cases, it may be necessary to include a module in leak detection, but it may not be possible to - include vld.h in any of the module's sources. In such cases, this option can be - used to force VLD to include those modules in leak detection. List the names of the modules (DLLs) to be - forcefully included in leak detection. If you do use this option, it's advisable to also add - vld.lib to the list of library modules in the linker options of your project's - settings.

- -

Caution: Use this option only when absolutely necessary. In some situations, - use of this option may result in unpredictable behavior including false leak reports and/or crashes. It's - best to stay away from this option unless you are sure you understand what you are doing.

-
- -
MaxDataDump
-
-

Set this option to an integer value to limit the amount of data displayed in memory block data dumps. When - this number of bytes of data have been dumped, the dump will stop. This can be useful if any of the leaked - blocks are very large and the debugger's output window becomes too cluttered. You can set this option to 0 - (zero) if you want to suppress data dumps altogether.

-
- -
MaxTraceFrames
-
-

By default, VLD will trace the call stack for each allocated block as far back as possible. Each frame traced - adds additional overhead (in both CPU time and memory usage) to your debug executable. If you'd like to limit - this overhead, you can define this macro to an integer value. The stack trace will stop when it has traced - this number of frames. The frame count may include some of the "internal" frames which, by default, are not - displayed in the debugger's output window (see TraceInternalFrames below). In - some cases there may be about three or four "internal" frames at the beginning of the call stack. Keep this - in mind when using this macro, or you may not see the number of frames you expect.

-
- -
ReportEncoding
-
-

When the memory leak report is saved to a file, the report may optionally be Unicode encoded instead of using - the default ASCII encoding. This might be useful if the data contained in leaked blocks is likely to consist - of Unicode text. Set this option to "unicode" to generate a Unicode encoded report.

-
- -
ReportFile
-
-

Use this option to specify the name and location of the file in which to save the memory leak report when - using a file as the report destination, as specified by the ReportTo option. If - no file is specified here, then VLD will save the report in a file named "memory_leak_report.txt" in the - working directory of the program.

-
- -
ReportTo
-
-

The memory leak report may be sent to a file in addition to, or instead of, the debugger. Use this option to - specify which type of destination to use. Specify one of "debugger" (the default), "file", or "both".

-
- -
SelfTest
-
-

VLD has the ability to check itself for memory leaks. This feature is always active. Every time you run VLD, - in addition to checking your own program for memory leaks, it is also checking itself for leaks. Setting this - option to "on" forces VLD to intentionally leak a small amount of memory: a 21-character block filled with - the text "Memory Leak Self-Test". This provides a way to test VLD's ability to check itself for memory leaks - and verify that this capability is working correctly. This option is usually only useful for debugging VLD - itself.

-
- -
SlowDebuggerDump
-
-

If enabled, this option causes Visual Leak Detector to write the memory leak report to the debugger's output - window at a slower than normal rate. This option is specifically designed to work around a known issue with - some older versions of Visual Studio where some data sent to the output window might be lost if it is sent - too quickly. If you notice that some information seems to be missing from the memory leak report, try turning - this on.

-
- -
StackWalkMethod
-
-

Selects the method to be used for walking the stack to obtain call stacks for allocated memory blocks. The - default "fast" method may not always be able to successfully trace completely through all call stacks. In - such cases, the "safe" method may prove to be more reliable in obtaining the full stack trace. The - disadvantage with the "safe" method is that it is significantly slower than the "fast" method and will - probably result in very noticeable performance degradation of the program being debugged. In most cases it - should be okay to leave this option set to "fast". If you experience problems getting VLD to show call - stacks, you can try setting this option to "safe".

- -

If you do use the "safe" method, and notice a significant performance decrease, you may want to consider - using the MaxTraceFrames option to limit the number of frames traced to a - relatively small number. This can reduce the amount of time spent tracing the stack by a very large - amount.

-
- -
StartDisabled
-
-

Set this option to "yes" to disable memory leak detection initially. This can be useful if you need to be - able to selectively enable memory leak detection from runtime, without needing to rebuild the executable; - however, this option should be used with caution. Any memory leaks that may occur before memory leak - detection is enabled at runtime will go undetected. For example, if the constructor of some global variable - allocates memory before execution reaches a subsequent call to VLDEnable, then - VLD will not be able to detect if the memory allocated by the global variable is never freed. Refer to the - following section on controlling leak detection at runtime for details on using the - runtime APIs which can be useful in conjunction with this option.

-
- -
TraceInternalFrames
-
-

This option determines whether or not all frames of the call stack, including frames internal to the heap, - are traced. There will always be a number of frames on the call stack which are internal to Visual Leak - Detector and C/C++ or Win32 heap APIs that aren't generally useful for determining the cause of a leak. - Normally these frames are skipped during the stack trace, which somewhat reduces the time spent tracing and - amount of data collected and stored in memory. Including all frames in the stack trace, all the way down into - VLD's own code can, however, be useful for debugging VLD itself.

-
-
- - - - -

Controlling Leak Detection at Runtime

- -

Using the default configuration, VLD's memory leak detection will be enabled during the entire run of your program. - In certain scenarios it may be desirable to selectively disable memory leak detection in certain segments of your - code. VLD provides simple APIs for controlling the state of memory leak detection at runtime. To access these APIs, - include vld.h in the source file that needs to use them.

- -
-
VLDDisable
-
-

This function disables memory leak detection. After calling this function, memory leak detection will remain - disabled until it is explicitly re-enabled via a call to VLDEnable.

- -
void VLDDisable (void);
- -

Arguments:

- -

This function accepts no arguments.

- -

Return Value:

- -

None (this function always succeeds).

- -

Notes:

- -

This function controls memory leak detection on a per-thread basis. In other words, calling this function - disables memory leak detection for only the thread that called the function. Memory leak detection will - remain enabled for any other threads in the same process. This insulates the programmer from having to - synchronize multiple threads that disable and enable memory leak detection. However, note also that this - means that in order to disable memory leak detection process-wide, this function must be called from every - thread in the process.

-
- - -
VLDEnable
-
-

This function enables memory leak detection if it was previously disabled. After calling this function, - memory leak detection will remain enabled unless it is explicitly disabled again via a call to - VLDDisable().

- -
void VLDEnable (void);
- -

Arguments:

- -

This function accepts no arguments.

- -

Return Value:

- -

None (this function always succeeds).

- -

Notes:

- -

This function controls memory leak detection on a per-thread basis. See the remarks for - VLDDisable regarding multithreading and memory leak detection for details. - Those same concepts also apply to this function.

-
-
- - - - -

Building Visual Leak Detector from Source

- -

Because Visual Leak Detector is open source, it can be built from source if you want to tweak it to your - liking. The most difficult part about building VLD from source is getting your build environment correctly set up. - But if you follow these instructions carefully, the process should be fairly painless.

- -
    -
  1. VLD depends on the Debug Help Library. This library is part of - Debugging Tools for Windows (DTfW). - Download and install DTfW in order to install the required headers and libraries. I recommend installing version - 6.5 of DTfW. Newer versions may also work, but older versions will probably not work. Be sure to manually select - to install the SDK files during the DTfW installation or the headers and libraries will not be installed (they - are not installed with a default installation).
  2. - -
  3. Visual C++ will need to be made aware of where it can find the Debug Help Library header and library files. - Add the sdk\inc and sdk\lib subdirectories from the - DTfW installation directory to the include and library search paths in Visual C++. (See the section above - on using Visual Leak Detector on instructions for adding to these search paths). -
  4. - -
  5. VLD also requires a reasonably up-to-date Platform SDK. It is known to work with the latest SDK (as of this - writing) which is the Windows Server 2003 R2 SDK. It should also work with earlier SDKs, such as the Windows XP - SP2 SDK or may even work with SDKs as old as the February 2003 SDK. If in doubt, - update - your Platform SDK to the latest version.
  6. - -
  7. Again, Visual C++ will need to know where to find the Platform SDK headers and libraries. Add the - Include and Lib subdirectories from the - Platform SDK installation directory to the Include and Library search paths, respectively. The - Platform SDK directories should be placed just after the DTfW directories.
  8. -
- -

To summarize, your Visual C++ include search path should look something like this:

- -
    -
  • C:\Program Files\Debugging Tools for Windows\sdk\inc
  • - -
  • C:\Program Files\Microsoft Platform SDK\Include
  • - -
  • C:\Program Files\Microsoft Visual Studio\VCx\Include
  • - -
  • ...
  • -
- -

And your Visual C++ library search path should look like this:

- -
    -
  • C:\Program Files\Debugging Tools for Windows\sdk\lib
  • - -
  • C:\Program Files\Microsoft Platform SDK\Lib
  • - -
  • C:\Program Files\Microsoft Visual Studio\VCx\Lib
  • - -
  • ...
  • -
- -

In the above examples, "VCx" could be "VC", "VC7", or "VC98" (or possibly other values) depending on which version of - Visual Studio you have installed. Also, the name of your Platform SDK directory will probably be different from - the example depending on which version of the Platform SDK you have installed.

- -

Once you have completed all of the above steps, your build environment should be ready. To build VLD, just open the - vld.sln solution file and do a full build.

- -

When actually running the built project, vld.dll will expect to find the Debug Help - Library as a private assembly. The private assembly must be located in the same directory as - vld.dll (either the Release or - Debug directory by default). Otherwise, when VLD is loaded, an error message will pop - up indicating that the program failed to initialize, and you will see a message similar to the following in the - debugger's output window:

-

LDR: LdrpWalkImportDescriptor() failed to probe C:\Projects\vld\Release\vld.dll for its manifest, - ntstatus 0xc0150002

- -

To ensure that vld.dll finds the required private assembly, you need to copy - dbghelp.dll and Microsoft.DTfW.DHL.manifest to the - same directory that vld.dll is in.

- - - - -

Windows x64 Support

- -

The VLD source code has been modified to add support for x64-based 64-bit Windows. However, the binary contained in - the distributed version of VLD is 32-bit only. To take advantage of the 64-bit support, you'll need to build a 64-bit - version of VLD from source. To build the 64-bit version, follow the instructions for building VLD - from source. So long as it is built using a x64-compatible compiler in 64-bit mode, the resulting DLL will be a - 64-bit binary.

- -

Note: I have not personally tested the 64-bit extensions so they are not absolutely - guaranteed to work out-of-the-box. There may be a few lingering 64-bit compiler errors that still need to be worked - out. If you need 64-bit support and run into problems trying to build the source in 64-bit mode, please - let me know. I'll be glad to assist in getting the 64-bit code working - properly.

- - - - -

Frequently Asked Questions

- -
-
When I try to compile my program with VLD, it fails and the compiler gives this error: Cannot open include file: - 'vld.h': No such file or directory.
-
-

The compiler can't find the header file that VLD installed. This probably means that VLD's include - subdirectory has not been added to the Visual C++ include search path. See the section above about - Using Visual Leak Detector for instructions on how to add VLD's directories to the search - path.

-
-
In the memory leak report, the callstack contains many lines that say - "File and line number unvailable" or "Function name unavailable".
-
-

This may mean that VLD couldn't find the symbol database for your program. The symbol database is ususally in - a file named [my-program-name].pdb. If this file is not located in the same - directory as the program itself, then VLD will probably not find it and can't show any file or function - names.

-
-
- - - - -

Known Restrictions

- -

Known restrictions/limitations in this version of VLD include:

- -
    -
  • Memory allocations made through calls to functions loaded from a DLL using delayed loading may not be - detected.
  • - -
  • Support for programs that use MFC 7.0 or MFC 7.1 is not complete yet. Some memory leaks from such MFC-based - programs may not be detected. A possible workaround for this restriction is to try forcefully including the MFC - DLLs in memory leak detection, by setting the ForceIncludeModules configuration - option to: "mfc70d.dll mfc71d.dll" and explicitly adding vld.lib as an input file - on the linker command line (can be added through project settings by adding it to the list of library modules in - the linker options). This restriction does not apply to programs that use MFC 4.2 or MFC 8.0 which are both fully - supported.
  • - -
  • Visual Leak Detector may report leaks internal to Visual Leak Detector if the main thread of the process - terminates while other threads are still running.
  • - -
  • On Windows 2000 and earlier operating systems, you may need to manually add the - bin\Microsoft.VC80.CRT subdirectory from the Visual Leak Detector installation - directory to the system PATH environment variable. Also, dbghelp.dll will probably - need to be manually copied to the directory where the program being debugged resides. Otherwise the system may - not find the required DLLs when running VLD.
  • - -
  • If more than one copy of the same C Runtime DLL is loaded in the process at the same time, then some leaks may - go undetected (note that loading more than one copy of the C Runtime DLL at the same time is probably a bad idea - to begin with).
  • -
- - - - -

License

- -

Visual Leak Detector is distributed under the terms of the - GNU Lesser General Public License. This license allows you to - use the VLD library with your own programs without restriction. However, if you build a program (or another library) - that is based on the VLD source code, or uses parts of the VLD source code in it, then some restrictions - will apply. What this means is that you are free to ship and use the distributed version of the VLD DLL with regular - commercial programs. But if you create a modified version of VLD, that modified version must remain "free software". - See the COPYING.txt file for details.

- -

The Debug Help Library (dbghelp.dll) and Microsoft C Runtime Library - (msvcr80.dll) distributed with this software are not part of - Visual Leak Detector and are not covered under the terms of the GNU Lesser General Public License. They are - separately copyrighted works of Microsoft Corporation. Microsoft reserves all its rights to its copyrights in the - Debug Help Library and Microsoft C Runtime Library. Neither your use of the Visual Leak Detector software, - nor your license under the GNU Lesser General Public license grant you any rights to use the Debug Help Library or - Microsoft C Runtime Library in ANY WAY (for example, redistributing them) that would infringe upon - Microsoft Corporation's copyright in the Debug Help Library or Microsoft C Runtime Library.

- -

NO WARRANTY

- -

BECAUSE VISUAL LEAK DETECTOR ("THE SOFTWARE") IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE SOFTWARE, TO - THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER - PARTIES PROVIDE THE SOFTWARE "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE - QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH YOU. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL - NECESSARY SERVICING, REPAIR OR CORRECTION.

- -

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY - WHO MAY MODIFY AND/OR REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE LICENSING TERMS SET FORTH ABOVE, BE LIABLE TO YOU - FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY - TO USE THE SOFTWARE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED - BY YOU OR THIRD PARTIES OR A FAILURE OF THE SOFTWARE TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR - OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

- - - - -

Contacting the Author

- -

Please forward any bug reports, questions, comments or suggestions to me at -dmoulding@gmail.com.

- -

Donations to help support ongoing development of Visual Leak Detector are very appreciated!

- -
-
- - - -
-
- -

- Valid XHTML 1.0! - Valid CSS! -

- - - -
- - - + + + + + + + + + + Visual Leak Detector (Beta) + + + + + + + + +
+ +

Visual Leak Detector 1.9f (Beta)

+ +

Enhanced Memory Leak Detection for Visual C++

+ +
+ + + + +
+ + + + + + +

Introduction

+ +

Visual C++ provides built-in memory leak detection, but its capabilities are minimal at best. This memory leak + detector was created as a free alternative to the built-in memory leak detector provided with Visual C++. Here + are some of Visual Leak Detector's features, none of which exist in the built-in detector:

+ +
    +
  • Provides a complete stack trace for each leaked block, including source file and line number information when + available.
  • + +
  • Detects most, if not all, types of in-process memory leaks including COM-based leaks, and pure Win32 heap-based + leaks.
  • + +
  • Selected modules (DLLs or even the main EXE) can be excluded from leak detection.
  • + +
  • Provides complete data dumps (in hex and ASCII) of leaked blocks.
  • + +
  • Customizable memory leak report: can be saved to a file or sent to the debugger and can include a variable level + of detail.
  • +
+ +

Other after-market leak detectors for Visual C++ are already available. But most of the really popular ones, + like Purify and BoundsChecker, are very expensive. A few free alternatives exist, but they're often too intrusive, + restrictive, or unreliable. Visual Leak Detector is currently the only freely available memory leak + detector for Visual C++ that provides all of the above professional-level features packaged neatly in an easy-to-use + library.

+ +

Visual Leak Detector is licensed free of charge as a service to the Windows developer + community. If you find it to be useful and would like to just say "Thanks!", or you think it stinks and would like to + say "This thing sucks!", please feel free to drop me a note. Or, if you'd + prefer, you can contribute a small donation. Both are very appreciated.

+ + + + +

Using Visual Leak Detector

+ +

This section briefly describes the basics of using Visual Leak Detector (VLD).

+ +

Important! : Before using VLD with any Visual C++ project, you must first add the Visual Leak + Detector include and library directories to the Visual C++ include and library directory search paths:

+ +
    +
  • Visual C++ 8: Go to Tools -> Options -> Projects and Solutions -> VC++ Directories. + Select "Include files" from the "Show Directories For" drop-down menu. Add the + include subdirectory from the Visual Leak Detector installation directory. Move it + to the bottom of the list. Then select "Library files" from the drop-down menu and add the + lib subdirectory from the Visual Leak Detector installation directory. Again, move + it to the bottom of the list.
  • + +
  • Visual C++ 7: Go to Project Properties -> C/C++ -> General -> Additional Include + Directories and add the include subdirectory from the Visual Leak Detector + installation directory. Move it to the bottom of the list. Then select Additional Library Directories and add + the lib subdirectory from the Visual Leak Detector installation directory. Again, + move it to the bottom of the list.
  • + +
  • Visual C++ 6: Go to Tools -> Options -> Directories. Select "Include files" from + the "Show Directories For" drop-down menu. Add the include subdirectory + from the Visual Leak Detector installation directory. Move it to the bottom of the list. Then select "Library + files" from the drop-down menu and add the lib subdirectory from the Visual Leak + Detector installation directory. Again, move it to the bottom of the list.
  • +
+ +

To use VLD with your project, follow these simple steps:

+ +
    +
  1. In at least one C/C++ source file from your program, include the vld.h header + file. It should not matter which file you add the include statement to. It also should not matter in what order + the header is included in relation to other headers. The only exception is + stdafx.h (or any other precompiled header). A precompiled header, such as + stdafx.h, must always be the first header included in a source file, so + vld.h must be included after any precompiled headers.
  2. + +
  3. If your program contains one or more DLLs that you would also like to check for memory leaks, then also include + vld.h in at least one source file from each DLL to be included in leak + detection.
  4. + +
  5. Build the debug version of your program.
  6. +
+ +

Note: Unlike earlier (pre-1.9) versions of VLD, it is now acceptable to include + vld.h in every source file, or to include it in a common header that is included by + many or all source files. Only one copy of the VLD code will be loaded into the process, regardless of how many + source files include vld.h.

+ +

VLD will detect memory leaks in your program whenever you run the debug version. When you run the program under the + Visual C++ debugger, a report of all the memory leaks detected will be displayed in the debugger's output window + when your program exits (the report can optionally be saved to a file instead, see + ReportFile under Configuration Options). Double-clicking on a + source file's line number in the memory leak report will take you to that file and line in the editor window, + allowing easy navigation of the code path leading up to the allocation that resulted in the memory leak.

+ +

Note: When you build release versions of your program, VLD will not be linked into the + executable. So it is safe to leave vld.h included in your source files when doing + release builds. Doing so will not result in any performance degradation or any other undesirable overhead.

+ + + + +

Configuration Options

+ +

There are a several configuration options that control specific aspects of VLD's operation. These configuration + options are stored in the vld.ini configuration file. By default, the configuration + file should be in the Visual Leak Detector installation directory. However, the configuration file can be copied to + the program's working directory, in which case the configuration settings in that copy of + vld.ini will apply only when debugging that one program.

+ +
+
VLD
+
+

This option acts as a master on/off switch. By default, this option is set to "on". To completely + disable Visual Leak Detector at runtime, set this option to "off". When VLD is turned off using this + option, it will do nothing but print a message to the debugger indicating that it has been turned off.

+
+ +
AggregateDuplicates
+
+

Normally, VLD displays each individual leaked block in detail. Setting this option to "yes" will make VLD + aggregate all leaks that share the same size and call stack under a single entry in the memory leak report. + Only the first leaked block will be reported in detail. No other identical leaks will be displayed. Instead, + a tally showing the total number of leaks matching that size and call stack will be shown. This can be useful + if there are only a few sources of leaks, but those few sources are repeatedly leaking a very large number of + memory blocks.

+
+ +
ForceIncludeModules
+
+

In some rare cases, it may be necessary to include a module in leak detection, but it may not be possible to + include vld.h in any of the module's sources. In such cases, this option can be + used to force VLD to include those modules in leak detection. List the names of the modules (DLLs) to be + forcefully included in leak detection. If you do use this option, it's advisable to also add + vld.lib to the list of library modules in the linker options of your project's + settings.

+ +

Caution: Use this option only when absolutely necessary. In some situations, + use of this option may result in unpredictable behavior including false leak reports and/or crashes. It's + best to stay away from this option unless you are sure you understand what you are doing.

+
+ +
MaxDataDump
+
+

Set this option to an integer value to limit the amount of data displayed in memory block data dumps. When + this number of bytes of data have been dumped, the dump will stop. This can be useful if any of the leaked + blocks are very large and the debugger's output window becomes too cluttered. You can set this option to 0 + (zero) if you want to suppress data dumps altogether.

+
+ +
MaxTraceFrames
+
+

By default, VLD will trace the call stack for each allocated block as far back as possible. Each frame traced + adds additional overhead (in both CPU time and memory usage) to your debug executable. If you'd like to limit + this overhead, you can define this macro to an integer value. The stack trace will stop when it has traced + this number of frames. The frame count may include some of the "internal" frames which, by default, are not + displayed in the debugger's output window (see TraceInternalFrames below). In + some cases there may be about three or four "internal" frames at the beginning of the call stack. Keep this + in mind when using this macro, or you may not see the number of frames you expect.

+
+ +
ReportEncoding
+
+

When the memory leak report is saved to a file, the report may optionally be Unicode encoded instead of using + the default ASCII encoding. This might be useful if the data contained in leaked blocks is likely to consist + of Unicode text. Set this option to "unicode" to generate a Unicode encoded report.

+
+ +
ReportFile
+
+

Use this option to specify the name and location of the file in which to save the memory leak report when + using a file as the report destination, as specified by the ReportTo option. If + no file is specified here, then VLD will save the report in a file named "memory_leak_report.txt" in the + working directory of the program.

+
+ +
ReportTo
+
+

The memory leak report may be sent to a file in addition to, or instead of, the debugger. Use this option to + specify which type of destination to use. Specify one of "debugger" (the default), "file", or "both".

+
+ +
SelfTest
+
+

VLD has the ability to check itself for memory leaks. This feature is always active. Every time you run VLD, + in addition to checking your own program for memory leaks, it is also checking itself for leaks. Setting this + option to "on" forces VLD to intentionally leak a small amount of memory: a 21-character block filled with + the text "Memory Leak Self-Test". This provides a way to test VLD's ability to check itself for memory leaks + and verify that this capability is working correctly. This option is usually only useful for debugging VLD + itself.

+
+ +
SlowDebuggerDump
+
+

If enabled, this option causes Visual Leak Detector to write the memory leak report to the debugger's output + window at a slower than normal rate. This option is specifically designed to work around a known issue with + some older versions of Visual Studio where some data sent to the output window might be lost if it is sent + too quickly. If you notice that some information seems to be missing from the memory leak report, try turning + this on.

+
+ +
StackWalkMethod
+
+

Selects the method to be used for walking the stack to obtain call stacks for allocated memory blocks. The + default "fast" method may not always be able to successfully trace completely through all call stacks. In + such cases, the "safe" method may prove to be more reliable in obtaining the full stack trace. The + disadvantage with the "safe" method is that it is significantly slower than the "fast" method and will + probably result in very noticeable performance degradation of the program being debugged. In most cases it + should be okay to leave this option set to "fast". If you experience problems getting VLD to show call + stacks, you can try setting this option to "safe".

+ +

If you do use the "safe" method, and notice a significant performance decrease, you may want to consider + using the MaxTraceFrames option to limit the number of frames traced to a + relatively small number. This can reduce the amount of time spent tracing the stack by a very large + amount.

+
+ +
StartDisabled
+
+

Set this option to "yes" to disable memory leak detection initially. This can be useful if you need to be + able to selectively enable memory leak detection from runtime, without needing to rebuild the executable; + however, this option should be used with caution. Any memory leaks that may occur before memory leak + detection is enabled at runtime will go undetected. For example, if the constructor of some global variable + allocates memory before execution reaches a subsequent call to VLDEnable, then + VLD will not be able to detect if the memory allocated by the global variable is never freed. Refer to the + following section on controlling leak detection at runtime for details on using the + runtime APIs which can be useful in conjunction with this option.

+
+ +
TraceInternalFrames
+
+

This option determines whether or not all frames of the call stack, including frames internal to the heap, + are traced. There will always be a number of frames on the call stack which are internal to Visual Leak + Detector and C/C++ or Win32 heap APIs that aren't generally useful for determining the cause of a leak. + Normally these frames are skipped during the stack trace, which somewhat reduces the time spent tracing and + amount of data collected and stored in memory. Including all frames in the stack trace, all the way down into + VLD's own code can, however, be useful for debugging VLD itself.

+
+
+ + + + +

Controlling Leak Detection at Runtime

+ +

Using the default configuration, VLD's memory leak detection will be enabled during the entire run of your program. + In certain scenarios it may be desirable to selectively disable memory leak detection in certain segments of your + code. VLD provides simple APIs for controlling the state of memory leak detection at runtime. To access these APIs, + include vld.h in the source file that needs to use them.

+ +
+
VLDDisable
+
+

This function disables memory leak detection. After calling this function, memory leak detection will remain + disabled until it is explicitly re-enabled via a call to VLDEnable.

+ +
void VLDDisable (void);
+ +

Arguments:

+ +

This function accepts no arguments.

+ +

Return Value:

+ +

None (this function always succeeds).

+ +

Notes:

+ +

This function controls memory leak detection on a per-thread basis. In other words, calling this function + disables memory leak detection for only the thread that called the function. Memory leak detection will + remain enabled for any other threads in the same process. This insulates the programmer from having to + synchronize multiple threads that disable and enable memory leak detection. However, note also that this + means that in order to disable memory leak detection process-wide, this function must be called from every + thread in the process.

+
+ + +
VLDEnable
+
+

This function enables memory leak detection if it was previously disabled. After calling this function, + memory leak detection will remain enabled unless it is explicitly disabled again via a call to + VLDDisable().

+ +
void VLDEnable (void);
+ +

Arguments:

+ +

This function accepts no arguments.

+ +

Return Value:

+ +

None (this function always succeeds).

+ +

Notes:

+ +

This function controls memory leak detection on a per-thread basis. See the remarks for + VLDDisable regarding multithreading and memory leak detection for details. + Those same concepts also apply to this function.

+
+
+ + + + +

Building Visual Leak Detector from Source

+ +

Because Visual Leak Detector is open source, it can be built from source if you want to tweak it to your + liking. The most difficult part about building VLD from source is getting your build environment correctly set up. + But if you follow these instructions carefully, the process should be fairly painless.

+ +
    +
  1. VLD depends on the Debug Help Library. This library is part of + Debugging Tools for Windows (DTfW). + Download and install DTfW in order to install the required headers and libraries. I recommend installing version + 6.5 of DTfW. Newer versions may also work, but older versions will probably not work. Be sure to manually select + to install the SDK files during the DTfW installation or the headers and libraries will not be installed (they + are not installed with a default installation).
  2. + +
  3. Visual C++ will need to be made aware of where it can find the Debug Help Library header and library files. + Add the sdk\inc and sdk\lib subdirectories from the + DTfW installation directory to the include and library search paths in Visual C++. (See the section above + on using Visual Leak Detector on instructions for adding to these search paths). +
  4. + +
  5. VLD also requires a reasonably up-to-date Platform SDK. It is known to work with the latest SDK (as of this + writing) which is the Windows Server 2003 R2 SDK. It should also work with earlier SDKs, such as the Windows XP + SP2 SDK or may even work with SDKs as old as the February 2003 SDK. If in doubt, + update + your Platform SDK to the latest version.
  6. + +
  7. Again, Visual C++ will need to know where to find the Platform SDK headers and libraries. Add the + Include and Lib subdirectories from the + Platform SDK installation directory to the Include and Library search paths, respectively. The + Platform SDK directories should be placed just after the DTfW directories.
  8. +
+ +

To summarize, your Visual C++ include search path should look something like this:

+ +
    +
  • C:\Program Files\Debugging Tools for Windows\sdk\inc
  • + +
  • C:\Program Files\Microsoft Platform SDK\Include
  • + +
  • C:\Program Files\Microsoft Visual Studio\VCx\Include
  • + +
  • ...
  • +
+ +

And your Visual C++ library search path should look like this:

+ +
    +
  • C:\Program Files\Debugging Tools for Windows\sdk\lib
  • + +
  • C:\Program Files\Microsoft Platform SDK\Lib
  • + +
  • C:\Program Files\Microsoft Visual Studio\VCx\Lib
  • + +
  • ...
  • +
+ +

In the above examples, "VCx" could be "VC", "VC7", or "VC98" (or possibly other values) depending on which version of + Visual Studio you have installed. Also, the name of your Platform SDK directory will probably be different from + the example depending on which version of the Platform SDK you have installed.

+ +

Once you have completed all of the above steps, your build environment should be ready. To build VLD, just open the + vld.sln solution file and do a full build.

+ +

When actually running the built project, vld.dll will expect to find the Debug Help + Library as a private assembly. The private assembly must be located in the same directory as + vld.dll (either the Release or + Debug directory by default). Otherwise, when VLD is loaded, an error message will pop + up indicating that the program failed to initialize, and you will see a message similar to the following in the + debugger's output window:

+

LDR: LdrpWalkImportDescriptor() failed to probe C:\Projects\vld\Release\vld.dll for its manifest, + ntstatus 0xc0150002

+ +

To ensure that vld.dll finds the required private assembly, you need to copy + dbghelp.dll and Microsoft.DTfW.DHL.manifest to the + same directory that vld.dll is in.

+ + + + +

Windows x64 Support

+ +

The VLD source code has been modified to add support for x64-based 64-bit Windows. However, the binary contained in + the distributed version of VLD is 32-bit only. To take advantage of the 64-bit support, you'll need to build a 64-bit + version of VLD from source. To build the 64-bit version, follow the instructions for building VLD + from source. So long as it is built using a x64-compatible compiler in 64-bit mode, the resulting DLL will be a + 64-bit binary.

+ +

Note: I have not personally tested the 64-bit extensions so they are not absolutely + guaranteed to work out-of-the-box. There may be a few lingering 64-bit compiler errors that still need to be worked + out. If you need 64-bit support and run into problems trying to build the source in 64-bit mode, please + let me know. I'll be glad to assist in getting the 64-bit code working + properly.

+ + + + +

Frequently Asked Questions

+ +
+
When I try to compile my program with VLD, it fails and the compiler gives this error: Cannot open include file: + 'vld.h': No such file or directory.
+
+

The compiler can't find the header file that VLD installed. This probably means that VLD's include + subdirectory has not been added to the Visual C++ include search path. See the section above about + Using Visual Leak Detector for instructions on how to add VLD's directories to the search + path.

+
+
In the memory leak report, the callstack contains many lines that say + "File and line number unvailable" or "Function name unavailable".
+
+

This may mean that VLD couldn't find the symbol database for your program. The symbol database is ususally in + a file named [my-program-name].pdb. If this file is not located in the same + directory as the program itself, then VLD will probably not find it and can't show any file or function + names.

+
+
+ + + + +

Known Restrictions

+ +

Known restrictions/limitations in this version of VLD include:

+ +
    +
  • Memory allocations made through calls to functions loaded from a DLL using delayed loading may not be + detected.
  • + +
  • Support for programs that use MFC 7.0 or MFC 7.1 is not complete yet. Some memory leaks from such MFC-based + programs may not be detected. A possible workaround for this restriction is to try forcefully including the MFC + DLLs in memory leak detection, by setting the ForceIncludeModules configuration + option to: "mfc70d.dll mfc71d.dll" and explicitly adding vld.lib as an input file + on the linker command line (can be added through project settings by adding it to the list of library modules in + the linker options). This restriction does not apply to programs that use MFC 4.2 or MFC 8.0 which are both fully + supported.
  • + +
  • Visual Leak Detector may report leaks internal to Visual Leak Detector if the main thread of the process + terminates while other threads are still running.
  • + +
  • On Windows 2000 and earlier operating systems, you may need to manually add the + bin\Microsoft.VC80.CRT subdirectory from the Visual Leak Detector installation + directory to the system PATH environment variable. Also, dbghelp.dll will probably + need to be manually copied to the directory where the program being debugged resides. Otherwise the system may + not find the required DLLs when running VLD.
  • + +
  • If more than one copy of the same C Runtime DLL is loaded in the process at the same time, then some leaks may + go undetected (note that loading more than one copy of the C Runtime DLL at the same time is probably a bad idea + to begin with).
  • +
+ + + + +

License

+ +

Visual Leak Detector is distributed under the terms of the + GNU Lesser General Public License. This license allows you to + use the VLD library with your own programs without restriction. However, if you build a program (or another library) + that is based on the VLD source code, or uses parts of the VLD source code in it, then some restrictions + will apply. What this means is that you are free to ship and use the distributed version of the VLD DLL with regular + commercial programs. But if you create a modified version of VLD, that modified version must remain "free software". + See the COPYING.txt file for details.

+ +

The Debug Help Library (dbghelp.dll) and Microsoft C Runtime Library + (msvcr80.dll) distributed with this software are not part of + Visual Leak Detector and are not covered under the terms of the GNU Lesser General Public License. They are + separately copyrighted works of Microsoft Corporation. Microsoft reserves all its rights to its copyrights in the + Debug Help Library and Microsoft C Runtime Library. Neither your use of the Visual Leak Detector software, + nor your license under the GNU Lesser General Public license grant you any rights to use the Debug Help Library or + Microsoft C Runtime Library in ANY WAY (for example, redistributing them) that would infringe upon + Microsoft Corporation's copyright in the Debug Help Library or Microsoft C Runtime Library.

+ +

NO WARRANTY

+ +

BECAUSE VISUAL LEAK DETECTOR ("THE SOFTWARE") IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE SOFTWARE, TO + THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER + PARTIES PROVIDE THE SOFTWARE "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE + QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH YOU. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL + NECESSARY SERVICING, REPAIR OR CORRECTION.

+ +

IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY + WHO MAY MODIFY AND/OR REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE LICENSING TERMS SET FORTH ABOVE, BE LIABLE TO YOU + FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY + TO USE THE SOFTWARE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED + BY YOU OR THIRD PARTIES OR A FAILURE OF THE SOFTWARE TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR + OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

+ + + + +

Contacting the Author

+ +

Please forward any bug reports, questions, comments or suggestions to me at +dmoulding@gmail.com.

+ +

Donations to help support ongoing development of Visual Leak Detector are very appreciated!

+ +
+
+ + + +
+
+ +

+ Valid XHTML 1.0! + Valid CSS! +

+ + + +
+ + + \ No newline at end of file diff --git a/development/Win32/vld/tools/msvc2005/vld.vcproj b/development/Win32/vld/tools/msvc2005/vld.vcproj index 1f42d6bb39..43118e80d9 100644 --- a/development/Win32/vld/tools/msvc2005/vld.vcproj +++ b/development/Win32/vld/tools/msvc2005/vld.vcproj @@ -1,250 +1,250 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/development/Win32/vld/vld.ini b/development/Win32/vld/vld.ini index 53e39841cd..bb4c6a9253 100644 --- a/development/Win32/vld/vld.ini +++ b/development/Win32/vld/vld.ini @@ -1,158 +1,158 @@ -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; $Id: vld.ini,v 1.7 2006/11/18 03:12:35 dmouldin Exp $ -;; -;; Visual Leak Detector - Initialization/Configuration File -;; Copyright (c) 2006 Dan Moulding -;; -;; This library is free software; you can redistribute it and/or -;; modify it under the terms of the GNU Lesser General Public -;; License as published by the Free Software Foundation; either -;; version 2.1 of the License, or (at your option) any later version. -;; -;; This library is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -;; Lesser General Public License for more details. -;; -;; You should have received a copy of the GNU Lesser General Public -;; License along with this library; if not, write to the Free Software -;; Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -;; -;; See COPYING.txt for the full terms of the GNU Lesser General Public License. -;; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -; Any options left blank or not present will revert to their default values. -[Options] - -; The main on/off switch. If off, Visual Leak Detector will be completely -; disabled. It will do nothing but print a message to the debugger indicating -; that it has been turned off. -; -; Valid Values: on, off -; Default: on -; -VLD = on - -; If yes, duplicate leaks (those that are identical) are not shown individually. -; Only the first such leak is shown, along with a number indicating the total -; number of duplicate leaks. -; -; Valid Values: yes, no -; Default: no -; -AggregateDuplicates = no - -; Lists any additional modules to be included in memory leak detection. This can -; be useful for checking for memory leaks in debug builds of 3rd party modules -; which can not be easily rebuilt with '#include "vld.h"'. This option should be -; used only if absolutely necessary and only if you really know what you are -; doing. -; -; CAUTION: Avoid listing any modules that link with the release CRT libraries. -; Only modules that link with the debug CRT libraries should be listed here. -; Doing otherwise might result in false memory leak reports or even crashes. -; -; Valid Values: Any list containing module names (i.e. names of EXEs or DLLs). -; Default: None. -; -; Also track Qt's allocations: (not 100% sure that the reported leaks are correct) -;ForceIncludeModules = QtCored4.dll QtGuid4.dll -ForceIncludeModules = - -; Maximum number of data bytes to display for each leaked block. If zero, then -; the data dump is completely suppressed and only call stacks are shown. -; Limiting this to a low number can be useful if any of the leaked blocks are -; very large and cause unnecessary clutter in the memory leak report. -; -; Value Values: 0 - 4294967295 -; Default: 4294967295 -; -MaxDataDump = - -; Maximum number of call stack frames to trace back during leak detection. -; Limiting this to a low number can reduce the CPU utilization overhead imposed -; by memory leak detection, especially when using the slower "safe" stack -; walking method (see StackWalkMethod below). -; -; Valid Values: 1 - 4294967295 -; Default: 4294967295 -; -MaxTraceFrames = - -; Sets the type of encoding to use for the generated memory leak report. This -; option is really only useful in conjuction with sending the report to a file. -; Sending a Unicode encoded report to the debugger is not useful because the -; debugger cannot display Unicode characters. Using Unicode encoding might be -; useful if the data contained in leaked blocks is likely to consist of Unicode -; text. -; -; Valid Values: ascii, unicode -; Default: ascii -; -ReportEncoding = ascii - -; Sets the report file destination, if reporting to file is enabled. A relative -; path may be specified and is considered relative to the process' working -; directory. -; -; Valid Values: Any valid path and filename. -; Default: .\memory_leak_report.txt -; -ReportFile = - -; Sets the report destination to either a file, the debugger, or both. If -; reporting to file is enabled, the report is sent to the file specified by the -; ReportFile option. -; -; Valid Values: debugger, file, both -; Default: debugger -; -ReportTo = debugger - -; Turns on or off a self-test mode which is used to verify that VLD is able to -; detect memory leaks in itself. Intended to be used for debugging VLD itself, -; not for debugging other programs. -; -; Valid Values: on, off -; Default: off -; -SelfTest = off - -; Selects the method to be used for walking the stack to obtain stack traces for -; allocated memory blocks. The "fast" method may not always be able to -; successfully trace completely through all call stacks. In such cases, the -; "safe" method may prove to more reliably obtain the full stack trace. The -; disadvantage is that the "safe" method is significantly slower than the "fast" -; method and will probably result in very noticeable performance degradation of -; the program being debugged. -; -; Valid Values: fast, safe -; Default: fast -; -StackWalkMethod = fast - -; Determines whether memory leak detection should be initially enabled for all -; threads, or whether it should be initially disabled for all threads. If set -; to "yes", then any threads requiring memory leak detection to be enabled will -; need to call VLDEnable at some point to enable leak detection for those -; threads. -; -; Valid Values: yes, no -; Default: no -; -StartDisabled = no - -; Determines whether or not all frames, including frames internal to the heap, -; are traced. There will always be a number of frames internal to Visual Leak -; Detector and C/C++ or Win32 heap APIs that aren't generally useful for -; determining the cause of a leak. Normally these frames are skipped during the -; stack trace, which somewhat reduces the time spent tracing and amount of data -; collected and stored in memory. Including all frames in the stack trace, all -; the way down into VLD's own code can, however, be useful for debugging VLD -; itself. -; -; Valid Values: yes, no -; Default: no -; -TraceInternalFrames = no +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; $Id: vld.ini,v 1.7 2006/11/18 03:12:35 dmouldin Exp $ +;; +;; Visual Leak Detector - Initialization/Configuration File +;; Copyright (c) 2006 Dan Moulding +;; +;; This library is free software; you can redistribute it and/or +;; modify it under the terms of the GNU Lesser General Public +;; License as published by the Free Software Foundation; either +;; version 2.1 of the License, or (at your option) any later version. +;; +;; This library is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +;; Lesser General Public License for more details. +;; +;; You should have received a copy of the GNU Lesser General Public +;; License along with this library; if not, write to the Free Software +;; Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +;; +;; See COPYING.txt for the full terms of the GNU Lesser General Public License. +;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +; Any options left blank or not present will revert to their default values. +[Options] + +; The main on/off switch. If off, Visual Leak Detector will be completely +; disabled. It will do nothing but print a message to the debugger indicating +; that it has been turned off. +; +; Valid Values: on, off +; Default: on +; +VLD = on + +; If yes, duplicate leaks (those that are identical) are not shown individually. +; Only the first such leak is shown, along with a number indicating the total +; number of duplicate leaks. +; +; Valid Values: yes, no +; Default: no +; +AggregateDuplicates = no + +; Lists any additional modules to be included in memory leak detection. This can +; be useful for checking for memory leaks in debug builds of 3rd party modules +; which can not be easily rebuilt with '#include "vld.h"'. This option should be +; used only if absolutely necessary and only if you really know what you are +; doing. +; +; CAUTION: Avoid listing any modules that link with the release CRT libraries. +; Only modules that link with the debug CRT libraries should be listed here. +; Doing otherwise might result in false memory leak reports or even crashes. +; +; Valid Values: Any list containing module names (i.e. names of EXEs or DLLs). +; Default: None. +; +; Also track Qt's allocations: (not 100% sure that the reported leaks are correct) +;ForceIncludeModules = QtCored4.dll QtGuid4.dll +ForceIncludeModules = + +; Maximum number of data bytes to display for each leaked block. If zero, then +; the data dump is completely suppressed and only call stacks are shown. +; Limiting this to a low number can be useful if any of the leaked blocks are +; very large and cause unnecessary clutter in the memory leak report. +; +; Value Values: 0 - 4294967295 +; Default: 4294967295 +; +MaxDataDump = + +; Maximum number of call stack frames to trace back during leak detection. +; Limiting this to a low number can reduce the CPU utilization overhead imposed +; by memory leak detection, especially when using the slower "safe" stack +; walking method (see StackWalkMethod below). +; +; Valid Values: 1 - 4294967295 +; Default: 4294967295 +; +MaxTraceFrames = + +; Sets the type of encoding to use for the generated memory leak report. This +; option is really only useful in conjuction with sending the report to a file. +; Sending a Unicode encoded report to the debugger is not useful because the +; debugger cannot display Unicode characters. Using Unicode encoding might be +; useful if the data contained in leaked blocks is likely to consist of Unicode +; text. +; +; Valid Values: ascii, unicode +; Default: ascii +; +ReportEncoding = ascii + +; Sets the report file destination, if reporting to file is enabled. A relative +; path may be specified and is considered relative to the process' working +; directory. +; +; Valid Values: Any valid path and filename. +; Default: .\memory_leak_report.txt +; +ReportFile = + +; Sets the report destination to either a file, the debugger, or both. If +; reporting to file is enabled, the report is sent to the file specified by the +; ReportFile option. +; +; Valid Values: debugger, file, both +; Default: debugger +; +ReportTo = debugger + +; Turns on or off a self-test mode which is used to verify that VLD is able to +; detect memory leaks in itself. Intended to be used for debugging VLD itself, +; not for debugging other programs. +; +; Valid Values: on, off +; Default: off +; +SelfTest = off + +; Selects the method to be used for walking the stack to obtain stack traces for +; allocated memory blocks. The "fast" method may not always be able to +; successfully trace completely through all call stacks. In such cases, the +; "safe" method may prove to more reliably obtain the full stack trace. The +; disadvantage is that the "safe" method is significantly slower than the "fast" +; method and will probably result in very noticeable performance degradation of +; the program being debugged. +; +; Valid Values: fast, safe +; Default: fast +; +StackWalkMethod = fast + +; Determines whether memory leak detection should be initially enabled for all +; threads, or whether it should be initially disabled for all threads. If set +; to "yes", then any threads requiring memory leak detection to be enabled will +; need to call VLDEnable at some point to enable leak detection for those +; threads. +; +; Valid Values: yes, no +; Default: no +; +StartDisabled = no + +; Determines whether or not all frames, including frames internal to the heap, +; are traced. There will always be a number of frames internal to Visual Leak +; Detector and C/C++ or Win32 heap APIs that aren't generally useful for +; determining the cause of a leak. Normally these frames are skipped during the +; stack trace, which somewhat reduces the time spent tracing and amount of data +; collected and stored in memory. Including all frames in the stack trace, all +; the way down into VLD's own code can, however, be useful for debugging VLD +; itself. +; +; Valid Values: yes, no +; Default: no +; +TraceInternalFrames = no diff --git a/lib/doc/clipart/platypus.eps b/lib/doc/clipart/platypus.eps index e55f7d4ee3..e1b8ed8f39 100644 --- a/lib/doc/clipart/platypus.eps +++ b/lib/doc/clipart/platypus.eps @@ -1,533 +1,533 @@ -%!PS-Adobe-2.0 EPSF-2.0 -%%Title: -%%Creator: PixelMagician -%%CreationDate: Tue Apr 13 14:21:14 1993 -%%For: kris -%%DocumentFonts: (atend) -%%Pages: 0 0 -%%BoundingBox: 0 0 435 321 -%%NXNextStepVersion: 3.0 -%%EndComments - -%%BeginProcSet: /usr/lib/NextStep/printPackage.ps 3.0 -%! -% NeXT Printing Package -% Version: 3.0 -% Copyright: 1988, NeXT, Inc. - -/__NXdef{1 index where{pop pop pop}{def}ifelse}bind def -/__NXbdef{1 index where{pop pop pop}{bind def}ifelse}bind def -/UserObjects 10 array __NXdef -/defineuserobject{ - exch dup 1 add dup UserObjects length gt{ - array dup 0 UserObjects putinterval - /UserObjects exch def - }{pop}ifelse UserObjects exch 3 -1 roll put -}__NXbdef -/undefineuserobject{UserObjects exch null put}__NXbdef -/execuserobject{UserObjects exch get exec}__NXbdef -/__NXRectPath{4 2 roll moveto 1 index 0 rlineto -0 exch rlineto neg 0 rlineto closepath}__NXbdef -/__NXProcessRectArgs{ - 1 index type /arraytype eq{ - exch 0 4 2 index length 1 sub{ - dup 3 add 1 exch{1 index exch get exch}for - 5 1 roll 5 index exec - }for pop pop - }{exec}ifelse -}__NXbdef -/rectfill{gsave newpath {__NXRectPath fill} __NXProcessRectArgs grestore}__NXbdef -/rectclip{newpath {__NXRectPath} __NXProcessRectArgs clip newpath}__NXbdef -/rectstroke{ - gsave newpath dup type /arraytype eq{dup length 6 eq}{false}ifelse{ - {gsave __NXRectPath null concat stroke grestore} - dup length array cvx copy dup 2 4 -1 roll put __NXProcessRectArgs - }{{__NXRectPath stroke} __NXProcessRectArgs}ifelse grestore -}__NXbdef -/_NXLevel2 systemdict /languagelevel known {languagelevel 2 ge}{false}ifelse __NXdef -/xyshow{ - 0 1 3 index length 1 sub{ - currentpoint 4 index 3 index 1 getinterval show - 3 index 3 index 2 mul 1 add get add exch - 3 index 3 index 2 mul get add exch moveto pop - }for pop pop -}__NXbdef -/xshow{ - 0 1 3 index length 1 sub{ - currentpoint 4 index 3 index 1 getinterval show - exch 3 index 3 index get add exch moveto pop - }for pop pop -}__NXbdef -/yshow{ - 0 1 3 index length 1 sub{ - currentpoint 4 index 3 index 1 getinterval show - 3 index 3 index get add moveto pop - }for pop pop -}__NXbdef -/arct{arcto pop pop pop pop}__NXbdef -/setbbox{pop pop pop pop}__NXbdef -/ucache{}__NXbdef -/ucachestatus{mark 0 0 0 0 0}__NXbdef -/setucacheparams{cleartomark}__NXbdef -/uappend{systemdict begin cvx exec end}__NXbdef -/ueofill{gsave newpath uappend eofill grestore}__NXbdef -/ufill{gsave newpath uappend fill grestore}__NXbdef -/ustroke{ - gsave newpath dup length 6 eq - {exch uappend concat}{uappend}ifelse - stroke grestore -}__NXbdef -/__NXustrokepathMatrix dup where {pop pop}{matrix def}ifelse -/ustrokepath{ - newpath dup length 6 eq{ - exch uappend __NXustrokepathMatrix currentmatrix exch concat - strokepath setmatrix - }{uappend strokepath}ifelse -} __NXbdef -/upath{ - [exch {/ucache cvx}if pathbbox /setbbox cvx - {/moveto cvx}{/lineto cvx}{/curveto cvx}{/closepath cvx}pathforall]cvx -} __NXbdef -/setstrokeadjust{pop}__NXbdef -/currentstrokeadjust{false}__NXbdef -/selectfont{exch findfont exch -dup type /arraytype eq {makefont}{scalefont}ifelse setfont}__NXbdef -/_NXCombineArrays{ - counttomark dup 2 add index dup length 3 -1 roll { - 2 index length sub dup 4 1 roll 1 index exch 4 -1 roll putinterval exch - }repeat pop pop pop -}__NXbdef -/flushgraphics{}def -/setwindowtype{pop pop}def -/currentwindowtype{pop 0}def -/setalpha{pop}def -/currentalpha{1.0}def -/hidecursor{}def -/obscurecursor{}def -/revealcursor{}def -/setcursor{4 {pop}repeat}bind def -/showcursor{}def -/NextStepEncoding where not{ -/NextStepEncoding StandardEncoding 256 array copy def -0 [129/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/Ccedilla/Egrave -/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis -/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/Ugrave/Uacute -/Ucircumflex/Udieresis/Yacute/Thorn/mu/multiply/divide/copyright -176/registered 181/brokenbar 190/logicalnot 192/onesuperior 201/twosuperior -204/threesuperior 209/plusminus/onequarter/onehalf/threequarters/agrave -/aacute/acircumflex/atilde/adieresis/aring/ccedilla/egrave/eacute -/ecircumflex/edieresis/igrave 226/iacute 228/icircumflex/idieresis/eth -/ntilde 236/ograve/oacute/ocircumflex/otilde/odieresis 242/ugrave/uacute -/ucircumflex 246/udieresis/yacute 252/thorn/ydieresis] -{dup type /nametype eq - {NextStepEncoding 2 index 2 index put pop 1 add}{exch pop}ifelse -}forall pop -/NextStepEncoding NextStepEncoding readonly def -/_NXfstr 128 string dup 0 (_NX) putinterval def -/_NXfindfont /findfont load def -/findfont{ - % Because we can never let NextStepEncoding get into - % SharedFontDirectory, we cannot reencode a font to NextStepEncoding - % if we are in shared mode. So if currentshared is true, - % we call the normal findfont and return that - /currentshared where {pop currentshared} {false} ifelse - {_NXfindfont} - {dup _NXfstr 3 125 getinterval cvs length 3 add _NXfstr 0 3 -1 roll - getinterval cvn exch FontDirectory 2 index known - {pop FontDirectory exch get} - {_NXfindfont dup /Encoding get StandardEncoding eq - { dup length dict exch - {1 index /FID ne {2 index 3 1 roll put}{pop pop}ifelse}forall - dup /Encoding NextStepEncoding put definefont - }{exch pop} ifelse - }ifelse - }ifelse -}bind def -}{pop}ifelse -/_NXImageString {/__NXImageString where{pop}{/__NXImageString 4000 string __NXdef}ifelse __NXImageString}__NXbdef -/_NXDoImageOp{ - 3 dict begin /parr 5 array def 1 index{dup}{1}ifelse /chans exch def - chans 2 add 2 roll parr 0 chans getinterval astore pop - 5 index 4 index mul 2 index{1 sub 8 idiv 1 add mul}{mul 1 sub 8 idiv 1 add}ifelse - 4 index mul /totbytes exch def pop exch pop - gsave matrix invertmatrix concat 0.5 setgray 0 0 4 2 roll rectfill grestore - {0 1 chans 1 sub{parr exch get exec length totbytes exch sub /totbytes exch def}for totbytes 0 le{exit}if}loop end -}__NXbdef -/alphaimage{1 add _NXDoImageOp}def -_NXLevel2{ - /NXCalibratedRGBColorSpace where{pop}{ - /NXCalibratedRGBColorSpace - {mark /NXCalibratedRGB /ColorSpace findresource exch pop}stopped - {cleartomark /NXCalibratedRGB[/CIEBasedABC 2 dict dup begin - /MatrixLMN[.4124 .2126 .0193 .3576 .7152 .1192 .1805 .0722 .9505]def - /WhitePoint[.9505 1 1.089] def end] /ColorSpace defineresource}if def}ifelse - /nxsetrgbcolor{NXCalibratedRGBColorSpace setcolorspace setcolor}__NXbdef - /nxsetgray{dup dup nxsetrgbcolor}__NXbdef - /_NXCalibratedImage{exch{array astore dup length true}{false}ifelse - 8 -1 roll{NXCalibratedRGBColorSpace setcolorspace}if - 8 dict dup 9 1 roll begin /ImageType 1 def /MultipleDataSources exch def - currentcolorspace 0 get /Indexed eq{pop /Decode[0 2 6 index exp 1 sub]def} - {2 mul dup array /Decode exch def 1 sub 0 1 3 -1 roll{Decode exch dup 2 mod put}for}ifelse - /DataSource exch def /ImageMatrix exch def - /BitsPerComponent exch def /Height exch def /Width exch def end image}__NXbdef -} { - /setcmykcolor{ - 1.0 exch sub dup dup 6 -1 roll sub dup 0 lt{pop 0}if 5 1 roll - 4 -1 roll sub dup 0 lt{pop 0}if 3 1 roll exch sub dup 0 lt{pop 0}if setrgbcolor}__NXbdef - /currentcmykcolor{currentrgbcolor 3{1.0 exch sub 3 1 roll}repeat 0}__NXbdef - /colorimage{_NXDoImageOp}__NXbdef - /nxsetrgbcolor{setrgbcolor}__NXbdef /nxsetgray{setgray}__NXbdef - /setpattern{pop .5 setgray}__NXbdef - /_NXCalibratedImage{dup 1 eq {pop pop image}{colorimage}ifelse pop}__NXbdef -} ifelse -/_NXSetCMYKOrRGB where{pop}{ - mark{systemdict /currentwindow get exec}stopped - {{pop pop pop setcmykcolor}}{{nxsetrgbcolor pop pop pop pop}}ifelse /_NXSetCMYKOrRGB exch def cleartomark -}ifelse -%%EndProcSet - -_NXLevel2{/_NXsethsb where{pop}{/_NXsethsb /sethsbcolor load def}ifelse /sethsbcolor{_NXsethsb currentrgbcolor nxsetrgbcolor}def /setrgbcolor{nxsetrgbcolor}bind def /setgray{nxsetgray}bind def -}if -gsave - /__NXbasematrix matrix currentmatrix def -grestore -%%EndProlog -%%BeginSetup -%%EndSetup -0 0 435 321 rectclip -0 0 435 321 rectclip -1 nxsetgray -0 0 435 321 rectfill -0.000000 0.000000 transform -gsave __NXbasematrix setmatrix itransform translate -1 nxsetgray --5000 -5000 10000 10000 rectfill -435 -321 -2 -[1 0 0 -1 0 321] - -/_NXImageStr0 _NXImageString 0 327 getinterval def {currentfile _NXImageStr0 readhexstring pop} bind image -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefbfffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5bbbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd25b7ffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe400aabfffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4621897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9912c17fff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffede546919fffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6948a14dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeb6861505dfff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeda5625426fffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6a40495137fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d92a9c5167fff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe141ca6aa452fffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd7159ad440a2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8d5a69a5515afff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff18aaa6426206fffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe122996844243fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe115a99498163fff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff92895fa199129fffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff99599a7926620cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2446dae265918afff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe6296a9e46c8067fffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc464f4a56984153fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff68a6d9bd2a41286fff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff209653c75699589fffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb61a95689a70cc58fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6536b5a48d259a20fff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8567f574a5d2a612fffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd948a669977d55543fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc4bafb5ca7b6f9587bff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0f79eea9dd4e9146bffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff91ff9df39aca56a85fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb47feeafb779b6d655fff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff955fdfbeeeb765eb20fffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe56bebfae5ab4d6b96fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd5977edefba6e6b5bc2fff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa89abefadd67776de83fffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff616dfb779dab1ddaf07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd46bbfb9ebbdf5cc660bfff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb44f7dded77dfba5b49bfffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61abebadabbe97e3ac67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed2b7ab3e7fbb9a97a567fff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe93bb9fb7bfbaafadb51bfffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff95beebff7baed3e75b40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff65ffebe6f7dda7cbe680ffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe87ff5defbeea559a6701ffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd87ff9e5ebba7ab78da01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa15fd577defd227dbe402ffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff559ec6aeaceca9ab79403ffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd4d7726deb9a89ef69c893ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82a771febf239c7bd98083ffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff079debf7eeb768bfa74143ffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0daa57bbecee74ffe64207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff829766faebadf66df5d150fffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd176ed6df7bbfb5e9e6a501fffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd95b6efabdedafaf7d79442fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe976aa7ff9fffada7a9ab0487fffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe557aa9bbeb7bfe9e7dd29108bfffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe40be7aaaefeeeaf6d7a9f4500ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8682a6deff7feee999dbabd6401ffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82e169f7ff5dda7e6eb99daa1002ffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed2f6a9bdfbda775f9aa6659725103ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd64aa69be7eead9dae8b5a6735bc10bffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0faa68677e776bbaeaad96eaaeb441fffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe846b66899ae5ddbdfba6f957d8c69503fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff906ba99627f9b7be2dddaf65f56198107fffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd09b98665afd7affc7af76fa5dab898087fffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd67ada6a47baafafb1ebdea7fad6f72110ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd09eea9e869ebff9adb7e796bb75aab9445ffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff526fa9a5ad77e551b2db9b69deb6acfd980ffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff94d9aa166907e9942eb8e7ddb9ddbf6f7712ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5764aa69e55eb667f9d3dfaab32fbe7a9983ffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8699a6aeb96a6997bc75f6ae98fff6c9c990fffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffda1625d9bbd2f5978ab7afdceff6aee76ed702fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4515aa975e99bfbe2d8abf73beeeb79f779a07fffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8009a66287566fbe1ba3e6eebf9e9ea7ddb4c0ffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810679d86685ab9e4a65e86bd5e3736cf77da42ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6425db717d287ee46967a1ab67d9d8bae9bae27ffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5941a6680a6a1dd85694dd26feb3a556ed9dec9fffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed9046859a25aa6b4266577e9fb5deb6976577e67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff965119196599ada91a94b9fd7de76deb1fe9e775ffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7ffefffffffffffffffffffffffffffffffffe0464b4558a5567f41957f7e6b66ca3bdbef35ecaffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe6ff9bff9feffffffffffffffffffffffffffff8249744092c546aac65bfadeefaafcf36fbdb3e07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffaebf9afd5ba55a5bf96ffffffffffffffffffffffffa096285420564151e962b6a6a7eaae79dbde6df603ffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafe801a92946d0555544aaebfbb9fffffffffffffffc06549584615d54060796dbde6f6c68976b7dab6a5bffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbfabfea96eaf956daebae8680100046a5a6bffffffffffe005062a66419509482d6abbb9eeaaa29d35f5aaa88fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffff9f4aeeb7feeff5a6fa3e5a42a5fa69e5501a95bffffffff800014a16849515a519692d79a6aa99670dbb6ae7a3fffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4a1bdf51ffffe06fe6bffe6a9affe6f9101901405abbfffd8400b144016689611a560a2d29aaa67dd66eeaa561bfffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8011bff66fabf41be614a97f5bffafa461945a51ae4015abfbad5284549225645958957ae4b96a5ebafd56e70451ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffde279a7d7fa9bb96f81a5a6906ff92a50be46ea406e90b8007bffffe4245808590695a2bae829865f56ae6a7996c91ffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe587a86fa2e64691ae569ae995f5e16e92a5aeabfeff9285aef9555fffed45466951482498e5696857659a6b9e6a6642ffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd9467d96a9aea5a45002ffaa016fbd97e96e6be91bfd96a6be5050055b6fff6641a00851804569a552594aaa9ea9b6b241ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffe557bd9a6595aaa5500bf5a955af9b96fd6af95bba695a55bd56aa6fbe93ffff64a0026460806a6e9196126966e9a6cd103ffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe499bf9b5eaaab8be01ba4547bf95a7e7fff6fe46ffeabaaaffa54ae00566bfefffd411a20a0797949a14897a8af25a5e40bffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee5071a9b6e6ee7ab917bd5067e68bfabf6ffa56a4bfe6f01ff9595abaa9b57957ffff41b58a42d1e0a659751eaab99e96505fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffff54429afa6baea6eb6ebbe86e5eaeffbfe7fa9196dbaea91bfa969aa79e56555affaafd6ab9b66a09a76c51946845ea2d18813fffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff024156df5bfea3aaaffa6dbf5e5affe7f9fa7e9a6e6f696fbfa6a9afdbffab5995055fffffe99f5a689928602a059d5b929853fffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd86a3faeb96ba6a9aaed69bfe6906afe6f6966e687aae7afe7fa96f96e5fbefe6feaffffffeedbaeb9a648b6c09946112aca258bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffd82a42aefa6ba5b6affbf6ff9a966ffd5f6f7dfe6ffae7e5eb9a9a6ffe9d1aa9a97ae99ba45bffdfadbb9278b46664801136d721ffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff415a25ebff7fd76ef9bfaffbe5955a99b6d7fafbfae97d6febfff6fffee1e91bf9569be81a57fffebaf999ea4284950054a25886ffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd59649b7ffbffa9fb9bbefebe0a1454bf6abf6fe7ffbfebeaabfaebfeafe9aaa6aee54ae818056efeffea975c4609554142982417ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffd2e95eaeeffebeaffabaffff95a7c50b46d6faaafffefeffbebdbda7af9faa9555b95955aa5405b9bfffffb8a2ee6681640a641047ffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3a157aaaf5fbe6f6affe9b6df959fd38ad6e69bdb7afefffe6fef9bff469ffaaf96ab4691aaaa9698a5bbffb5f698755601855a11bffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd87996f9abda9e5ba56aff7edb6befe12f8be69b9b6afaafaeae5b5fd5f66e16a516a546fe995955505be4bfffb9b41955807086848fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffff4eefab567ea67ab5da7ffffd6979a966f4747fb9bf4fa5754afafd1fbfa986f94405a642a96850456fe41bfabe8a9279c201d659455fffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2fff6ae5fae6979919befe9642db429bda515b9af4b9b9af52ea46f47eff95fdaab9e525146abfae905aba5bf96a59e604064a45001fffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fbdd8855afae6d509bb7eb40652f59bdb9425abe5aaf5ffd5564b96ffa955ac6ae95afe9b9b4455115aa42fe6ffa6b4414552558812fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffff86f6b52c9b98b6d616be6f7ae655be5be15fa91a99a9a5a597efd687e9beffffa069ab9aaaa6afeaa95465be47ba6df910a160696a44bfffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2fc6ed92a9b75e6967e5f7ae6e97e1fe06ff6b995a65949b66f4516ffff95e516aeb9a9a45a4556bfbe405a9a51aeb95119694999506ffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffff97b6f572ea99491e9e7cb7ad659a65e7e6ffbbea55f5f9b96d65bafef56fffabdaea59557ffeabff9696ba4065aa49bae824250625c44ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffff67fdfe5feaa2b75b9b6f3c3de5b25d57e5be7fffe4667875ad6ff956bbff9aa6a5bd192ba556aabfb96be84ab5a912bffe051090992406ffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd9aab5af6badf9f7eb9b9f6d669f58be55e97ebbe6966faef5ffeaafe6e855bb9af97a09664561a5fbabbeba6ef807fdebd05852219410bffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffff9da797edaffff9fdbd5e79f5fa96ab91ad6bd5ed6e7e3f5ebffaebe9640bf9146aa55aabf955a82f96be565695417fe56b848559961405fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffd2bbfffbe7fee9bdbe5a6afcb99abfeaaabafe57e2bf4f46a9dbae96beaea6aa91a945be56e5b9ed5bfeaffeaa82bea060be3265259110bfffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafefffceadff67f6e23ebe1b8be6f6af9fabe690055575bd2ffdb65bf9bffeadbff5aaa4579650fffd5aff9a9592941281ef8944964001ffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffe7dadef72bafdff9a6af9e6fabebe6ee5bd6eaf0685ae4fabff9bf6fe5b9690bafe1bfeafe569afe966ff9af86be41a8502aff562154007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffdfabb598fef76d99979fe1f9bd2e2d7dbd65bd86d5bb9a6fe7ffffffab6a9bf96ea6aafffabeabf596b92e96f1a6ebf600a2ffd5495002bffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb6f577762797dab679c7f5bcaf7f0699bfa9b94aa7e95e6feaf5bead6fffeffef9afae55fffffebfffe5a44be6f4a7564060bffd928400bfffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffe39d8ebe9cf5f6cd5da2faf7c679d019bdbbbdbd6b95fe7f5be6ff996aaafbe5effe60fb5995bbffd6ffa9aa5ebe4a4af9b049bffc96505ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffd22d76eb3d8e7b7db68b969d76db029b95b97a590bebe2bfabfea6e5e05eb96fe55aaefffefffa5bffd006569a96b9ae158417ff8e69606ffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9cab1954e5ede9f2d97d6dafda2e2d6d57d654151f9565e47ff96f6f9a961be6bffff95affbabbff95fef4169ad6fea59ea44bff616944bffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffff632fc44d21baba60f77fcfa3c28a29be7af79beb6bed79fc2ffebff6e7eaed5bfe6b956f9a56aaffbffafffaff57da917e5d2567e915403fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffd3a6e257495f696eb99dff95d18be5bb666f9ae46fda3ebf6ea9bafed6fabeae12affebd45abfffffe5afebfd02f9a5b595e6d619e66408ffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe5b86da6cf77d69d9dab779bfcabe2fad24bae55abda99eb6a6df6a5bfa6baffff9b96bda9a997ffffffbfea45ab955affe759e817aa8023fffffffffffffffffffdffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffff90fe32e72dfe6db77fa9de5ffff7eefe7dbafbfe5bbd5aa29af8bd6a51ffdfbfbad6fffeb96ea5ba96966effab9e541f5ebeabd41fba4083ffffffffffffffffbff6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffff059c57ddf3eab9e7b9cbffba5a5effbabfdbe5a6baebefebfe5a7fbf7ffaf796ffafd5bb9abfbffffffffeafffe9bae9afffbee46fe9520fffffffffffffffa63fe3ffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc09241db9f7af938da67b76ed98fea6babbf99a7fa46fef9fd7b9be6f6fe7e6a5beff97f69aa566a6f96fabfe59e2ee476595a6f46ab9c02fffffffffffffe4855fc3ffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffff859bbfaf7dcbd9fea7a9efea87f464b962f4a97e509bdaffffe6fffd6f9b9be7ffffff96fd6afd5a5faaafbea5ba8555e04bae7eab7d6407ffffffffffffd05005f0bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffff16cfee1ce2937ade9beabeab2fa9d7855a4bfff416b9aff54b97ff996f6ff9ff6fffab95eaa9a9bbaebfffe92feaaaee96f9b9a85679801ffffffffffffe80100510fffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff65afde966c39fb7793faae67df7fe7956e5b97e1a96bba6646e6a6e92e7fe4b96ffffef979557ff9555b95abfa5691ebaafffe59059ef003fffffffffffb4141001d2fffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffaa3b6b6df4fbcaab9fffbdaca5ff682659fa5aefbb990ba57f9a1bd7faa9bb9857fbfd7fa5af96a95bafff1a65a46eafabed6a51026a800bfffffffffff402817b60bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffce9e85df3e75567fe56fd919b1ff99575ee65fff56669b95aa5bfeafe5e9fa6faffa66ad41e86afe91a57bf69aa6fa8696aa51aa40847806ffffffffffe801289fc06ffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd2e6b87fefdee597fa5b76e23e2fd965d6ea69e465afaf969a6fe5bf56ffa5afae91aff7ffeaaeeaaadaaffa0596ad5a469452aa84001d90bffffffffff801098fd81fbfffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffff829ff1ffbbe9eb4f796ddff9faeee45fafefaf5be5f9f5ef91beaf5afe99bfd6bfffffffeafaeaffaffebe6bfffe695966996f9f94001582ffffffffffd048279db47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffff267afff8fea3ef6df2666bffaf6bea9bfeafaff91e2baa69abeb52ff96abfafae7f96515afe6fe56be56fa7e979546d2929b9bea0100a10ffffffffffe45c679dbe1ffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd66d8b9f6799bfd75bc8f3ff99a97f57fd9f9b959ff954bffd69a7eb9bffff914afab9456bffffffffefa5ffbfffebea4bef96e695401942ffffffffff40782a67f87ffffafffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffe98fa2b6dddbe7bef175bcbee9a55fc2e9556fabfff56fffb8682bfe6bf959546fe695ffba9046bfe55bfffffb9af516ebe6ab91a4400550ffffffffffc2210729fe0fffff0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffc1ae5feb972f8fe7c1fbffebf6e2e95fdfe7fafdf96ffe558bfbf9fe5be94bffd1a969aaa9afffe5aaafe6aa96fe6bf96d5a586fa6841182fffffffffd42102d1bf84ffff91fff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe05fabaef9a7e175f17efafdfa64bdbf9df7e6fafabe559bfffff5ffe4bf9bfe4a56fe4505e55005a56aaffe6a95000db96966ba59d504a1ffffffffff484508a3fd08bfff02fffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffc56e9dbbf5df9596fcb6cb93d7c7e7f99b78afeafdf97eaaf9a6ff956e5ba95a5a9f956bfe901affea800059901bc6bf59592e4699244187fffffffff801067d9ff4183ffc03fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffff1ab63eeae67e776fe2df7a5f2fef6e99ab4baf7ebe6f85f914bff5bffad6e97ffaf5696f402e540545a5be955bf9a5bf9ad641b94659152ffffffffff01124bdbf94331f900bfff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd56efb6a6ddaae5efeffe9698bdbfe47f9d66bfbbc797fe5bffafbaae1abeaffff906fe952a5550005abbb99402946f96f87d6f857900206fffffffff8010967afd013900022ffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffff559ead6caba5b9feae9a42a6be26d57f9db85baffbd6fabfb96fa1bf57fffe4459011401556a6fa55af5aaaa406ff5afe5bfee5af804404bffffffffe0094179ff0000000187ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffd657db2a6aeaf977bb07e5ddd764b66f9fef6e7af596f8bd6ff96ff96fe95bbfe904297fa401ba46fa6a56bfa6fe56e46ffe81afe4589406fffffffff41241dfbf80001afe01fffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec7b7aadf3ad9a9e6da787be7d8595feffe2f69a65bf9f9afbf9b97ae91ffffe9556eaa146aa5695055bfa52d56ff95fab95bfa44351944bffffffffd00503dbfd1002d5f947fffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffff1ffcaf18f943e39bfde7ff2fae739db9687f5a757f6a7ffbf46abe5affa55bff86ab9ae956a9a41bea56aeeefe9abafaf5bf9546900a67fffffffff021463ffe4062a9ffc2efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffe785196a94fea7b9fbee7aebe6a52feaf9ae6ffbbe69bdab6effffe41be56afa5dafa255adba54066b59aaae46b16e91a46fb96a5a800ae7fffffffff90859d27f402026fff2ffbffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd7a2697b6a1f6beaf9ffff76a6f6af6dff597dffffe7abfeeffe6af5a95bfff5bffe6bfffe900a5abfa15106ffffefeaa6fffda45400191bfefbfffffe146553afd00062aff4ffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffff5fadfdaad6d2f8bd7fffae5abedbadffae7d97ffe5d2f92fed6bfe9abffa916ffe56955e96bfff505406affabe9affffeaff940011696a7e6aafffff660550fff4005dbff51ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffd6ea7eb969abfa7e3ee7956e6ebaff696a69fa4792f4647e5fef99969b9a56b95affeae95d445556fff92ffaaa9affa646b9a94194016919029bdfffc6800025fd00197ff5b3ffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9e7aeabd5b7e5696e77f44feb6dae69bff96a5197e5787fff9b5a81af9aa5bfa55955fe1aaea5595aaaaa955916bbfbffaea9865406a5400146dbfa685000100f80697ff8bd3ffff3fffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffba9a65669f682f9994a2cbdb5fd790229befe6e42f1a6a7ffe6ee5e57fa00541401ffef95af956fffbffa959055bfe56e5ba0551955a25059010182865e96105600b4087ff97dcbfff47ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9a -aa526db7fa9bd65af4b8e69696807e9afffee9296fe557faffffbf9b8005500abfea5affeffa696e6aaafffd942a5a90b9596a400000a810640400685a42c608027d97ffc2998bffc0bfff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff14a5616f5bff96e16fe6a57f91a6ac2bd9eabaaab9bfa6bfffa6f9afa965fef4556a96ae55aaff59afffe5511be55aa805bfe6a50000001546a404009916405f940017feffd2d16cbe001ffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffff4100105955ff9b96affaae6ef6fea66befe9a97ba96efff86fea955bfaf6be4141bfeae545af656bf6455551400bf0059ab95bfe4690009400556814a401a000a980215abfe19073850003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd08111 -4192e9b8697aabdbeadaaef92ff9ae646a655a9a5b555bbffebea55500aabb944401afeffffe806abfbe5aa680017906f7f955bba45029af6a8005016802fe4080aafe0906a000401fffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffef5451029450505579bd6f97dbe569a92fb869b5eab86e7feaa94155ba6fff9aff9aa9afffa954665bf6bffe955459500257f95be29befa541fea947e7eaea00a5551b91905aff0a0190120007fffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffa51429a5a10810aaaa5591a6e5695b8297ea5e6faaf5a6a16bfeffffffbf9abfffe6fffeaaffffa56ffaadaa6bfe9556afbb9bfff9af5d41afafd6f9bfaf8647a1a5ad07405bf4600005b7e46ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00a52aa064 -1a5696a9aea6afe6beaf81a5aaa7eff91a919beefba57fe95fea6fa97f955a5ad4465aabe56ffffe55abfeb91a9aabf9b96fc006fa42fbfe5bf95affa01e018007f850008a73e81fffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01952a4299145f9055ba5aa95696f96a5456e7feba6f92a555656affebfeffffffff45956afea95f9415bfeaa5456a006ba8bf5bb9ab9a55aba55a5bff9a5babef801a68a446bd09018df7fd0bfffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffea12a199609100a96296f551daafef816be943915da95f91bfe2abd43fa546bfaaaaa7fefabafaa95bfffffeaaa940069a9b91bfeb94aa546efa4ae5ab96a86f9a9145195e6d6aff4002debbfe43fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe90ba0a26461964 -a559a5fb6947e555ab95a1be55f91bfe06a5ba55995bafffbdaebfaa5aababfffefebbe40165451aae9005bffe7da7e4afe6a6fe6f954006d6f95a928166e659fd41a2cfffe08bffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffe016e6b65534968192801bfae866aafe5af86bae5fe5aa94ae997af955019557ff95655babedaafeb9566bffbaaaaaa95a001657aad66b955bf805a50096e595bfe6ae6904aaaa6af69cf6fffe875fffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffff40a25a580a825904241ab57c57fea6b55eea56f6f91b91be86a905afa54a01b956afffe66fffbfffe6a656afaaabffa95166f6ae67969560b96aea5afff5a86ff5a6e290055b96baa5ccf7ff947b2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0d446881a919a092 -c29656a97e6fa546f95aabb919aa2a95bf6e556abfffaa9afa5a69ae95d06d095156ff96ffbaf141a16fd6a6aab9a6ea5aae6ba5e5ea43fe6ead6950002e6e7b97edbfe404962fffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffd07602460740a91a1a2904569297f96effa29191aefae6e4a9bfaaff556917eaaefffffaf9aaba46f81bffbe664555fffffe9553f81fea6f9699affd696bd5beffffabe54525bdd2f11faefd4071cd3ff83fffffffffffffffffffffffffffffffffffffff -fffffffffffffffe52b94aa9b4a6a0a6f9800404101faafea56aa9497d7fba81915e96a5aa66a96ffb7ae407faa6aafd6aafaab95aea9ea95a5ab96ba9a6e851ada5591aaffe5f5bf9b5b5a6a40bfe16922affe004b0acb940bffffffffffffffffffffffffffffffffffffffffffffffffffffff4a986da97c666456e5a -28a00006eb9fdab95456bbe6fbd6ab9a9af9a55abaabfffd1a6ae569b5affeffffffe95154456baabfea6feb5e646529a505969fe4bfffae6e5bff641ff5a5a60bfe012890280003ffffff -ffffffffffffffffffffffffffffffffffffffffffffffffc7a62e674e569e59a06296024496a5affbd59525692eafda5b8eae6bfeaaaaebff9affe841bfe96bbfebebfebffffffa99fbafebfd5bea5b4415405a96bf9ba6ffabfaabe541ae7a5bd15fe6a2005004001fffffffffffffffffffffffffffffffffffffffff -fffffffffffffe2a5c99ad2a9ba56a26058054194004557bffbfa40be6e565955abff5affeef4aa5bffe5ebffe97bdbf6bffea5aafabaea800696f96be69015a511a42a6e5e6be5ffabd6fa06525e6696abf00000014f901bffffffffffffffffffffffffffffffffffffffffffffffffffffff4597756e1652f9a61e465 -06469000406abff95a46abfa556bfe455bffa596abeaafe5af6ff95afebfffffd4559a991a6afbfe55bf6f9b540069590161aae90a5bfe6e96ae4140bf6399ffe4000014e591bfffffffff -ffffffffffffffffffffffffffffffffffffffffffffffd154a86fe5a0f8bf5a965105501494046aabf6beaa55051a95a9bfebbebee6ba65ba5ae6ff8fffd7e91bfefffeaeabfe9555eebb965a1956a965446a6ea56aa5a95fff56da6a06ee996ebe500004e5f82bffffffffffffffffffffffffffffffffffffffffffff -ffffffffffff495694ab6aeb8af9eaaa498500a564056a952ea555a5babea5956fe579efff56feaa99bda9bfabea6fffffb556a556ffbffaa56c46aeaaa6a15560151bbb9691bffd26aafea42ae405aa6af8448dff91bffffffffffffffffffffffffffffffffffffffffffffffffffffffffd252745aaff9d26a65ab97d -50495906a469556abba7fa900065556fffeaa5bffeaabea6abe940bfeaa9ffffffffeafd5055566687b57c1aa51aaaa542a565a9af95bfbf9ba5001ae6a8569bd2deeff41bffffffffffff -fffffffffffffffffffffffffffffffffffffffffffff45b6d1a9af9f18a69a7a2e1685001a81018006a96bb9581aa555ebaaabda5fffbfffbf9afe96afe6f85a56fba4156aabeeea955afffaafeaa9555046afeb9011abaa6d6d6a5006b9a901856a6fffa01ffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffe195a5b99b87592da69a0f4796840a594040145aeb9796ffab9ab66a406bfeaaa7feff999aabff9a6aeffffaabeaeffbeaabaaa6bfea994069a6aaaa6be5a56fee91fa6afd6900259a568455be8a906fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc21569161e7451d6a558b868 -6a501955405590045ba955a5a5a81fd566baffbaeada56fe95a9507aa95abe55599566aaa9555aaa7ffe6a44569505aa965a56ae96bde8956ea000a965fa446a16a01bffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffe05946014b6965a6b60a7d656a6868691aa456a956aaa566ae9bfaebbbee9566fffe45946beabbe95affaf96aaa9155a6a6af9a55bfabfaa90695554015516faafe906fa6e5010a6ba41a1506e402ffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffd0bd180426d1aeab8da3e559529afa41a41a645a95aff9955545aaff505517bfffeaeeefea6fff595556d452aeff956ab95ea5bfeaff9aabbbfa94069941056bfa5afb91550501afa1a4154ea40bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff56985540590926ae661641916 -99ab9b85b968555400665555feaaaabafff15bfafea9bfeae66fe5abfffffa05455bfaa6965655456fffffaaaaaaaaa966affffeafa696f95901506554106a801bffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffd5a26600595496aba286e6a45545aae46aa50016000009aaa555aaaa6eab95557fe9abb96a6af996a96e55bf9afe5aaa5a400054691ba57bbfaa945551591b91e9b5be6e6a901185a995694001afffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffff41899a45a6a6586c97ae65a9b8019985a1aa4646801507a901aa555aebfaaefffeaaaaabaaaa5bfaaebaa96e696950145a6a95aaaa1bfffaaea55aabaaefd2b90bfeaaeaa40a01e4010400001baffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0996796a6a66a5e596eb865b86 -555a91aa4006e91551a5aaaeaaaaa965a956bfea900babffe5ab6aeaa1aefba905aae95100001101abe5ae501e9401555aab92b96a95aa41910fffe540416affffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffff80699d258a9afe7955d5ebaaab9401abfe56aa5a0680156959015556aad056baa55505aaa6daba5affaaaaa6afffba95945594005a92556f57946baa96ff5ae9fe95fa50020006fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffff00656485226a79aa1fd97e59198176a541a968010646a6aa6aaaaaab9107b915ba6eafb955ba51aa57aeaaeae55815aaaaaa8006a460bffff699569ae547d5aa95aa5be500406ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc41159d225a5055a2bb9a95a0015 -651aabb441a56955400054001a96a99500bfa6beabb55bea8546aa951655941baa9016a90164000505656fee55995aaaffbfafebfe9401402fffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffff404066569ae00266a59a50696a506a6e51a646a8955016aa41a555a9515abaa565456befebf964065416baeaa699446be96ba951aa9e97feffea505401955ba5fffe950050007bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffc00009a64a751a66a19586a06c02a8026aa49115454055941aaaa999ba95aaa795a9515eaa96f956a9aaa9999abe9a9506eaa96ea52946bfad57f942baeebf97ea6994511000bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1b8001156699aaaa9a66ae596a51a -fbfe9abfee96eafa666aae9559a6ba6a96ae951affffeae46a06ff99e97e69a5aaea5559aa91aaa45afa5fe8540444156bffff946000042fffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffff87ff90419558a66e9a6959aefa1affff4afffffffd16a6aa950669aaaaaaa8195abffaabe5596b85a686aea6f9aaa95e5bfaa9695aa515551fe94792aeffa56a6659a9000006ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffd6effd081555a56aa5a9646965abaa505ab9055f5695546d11005a90500111aa50a149af95ff6a51552aa5406a55695ad56aaaa6aa4690046a6ffe7ff91100166bfe401000007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd5aab0005a554aa6aa0196abe4196a -556aaafe9555401146500001400066941a86a5b659aa6e956aa94696feabaae5af996ab9105010106aabe6fff96aaffaaaaea6054000bfffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffdb1019f910a56a9a869464a56492aaa555556a966d55554a905500640055001a9064015069416aa63e45e5549a414141bbfe50000015a815690bbf9751b945aa546ba554000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ff6bc01a9f00924695295a6a65005a916ab555bfaa956faaa641aa1001aa100000000a9014069a9a4642f46945aa56ffab955fb55a50104105919215bff96a97bbff44400050bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd5ae0062e001e6611595a501a0556a56b -eaaa95aebe55555aa80115a805505190195004691a94165afeab90b95aaa55aa6f555aa9f94000002af42d56bffa7a990a94400007ffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffff025f808ba0089662416915699affeaaa5406aea95ba55401402aa469050a96a42d0169068005006915abeeebaaff6aa9452fd40004400000a1a59016fffff9affbe500001bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -c4027e02eb801255405929406a56aa52feeaa946bff002aaaeaa6aab909ae526ae46a550000005069b97afa7d95aabef9bff4000040010001a40001a4aff95f8006900001afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe2e406f016b405a5585460047965a554591 -01a9aabd45a659966e555aaaabaaa665b90691aa56ba9a55faaabfbe5005afe506aaaa91280101005401801aabffff500000056fffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffff8fff01f40a78015d996544061aaa556a5510092aafaaaa999555a96b6aa9556e406aa9d6a916540500abd56fd6bff84690af911400000004505a0010401ae5594000006efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe6 -fff403c49f8216812000001696ab556bbbeaba40aa50055956ebaa91aafea501a956a005bbafffa01016ffeeb95f9016c07ff950015ea506a555500544016a5400002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff66fffd06c07b94046100010140001aea6551 -615abd5b6555655aa41aabe05801a95bf55abf915551aea952e96b96a916a655be56ba95aa540566800914000000000005bfffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffd5ffffe07e06b88012900210006ba555501456a95abbe961a95566aae1abff4644016fd0026ae9565441a546b91be0bfe6ff95efa6afe56aef9106590010100005555bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff477 -ffff06f16b81299006ffeea8015baaaabaa401464696aa411545579abe69556aa9a56fff9ffa5afe400145ae9aa95aa5e5ae7fd41155500001051000000016afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcbffffff82f55b4018006f92ff9e6a954056a4 -5a6faff91ae9551406bfefffee86a59fd156d5555514655ea505056efdba4bfc42d59a5000000005004025000bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffff1bffffffc7f05b054590ec00280aa55aba55400155453f995500005a459bfffd05ae9bff85aa1a4fe2a915010467a5bf96fefa4006aba9954029000541000055bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbffffffffffffffffcbfff -ffffc2f42b28654bd064006aa6ea169aaaa5aaa94ae55669a56beffea9916fe81aef96bbf6be1bffbe906a51abf47fd902ae5040000000116a410014002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe27bfffffff0f70b54162d004005aa95aa6a5554 -51016ae4016a5aa5bfe9bfffffea9afefff91541699515505a506e7e5fe5b90546beaebaaa905540500001007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffff43fffffffff4bf0b184a6000002e4065150555155aba546ff9455555d6f98556ffffa506e7d1afaffe517ffe556d03f5b8bfa01a6a955aa9a4000556a454100bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2fffff -fffff8bf0b195542b940a81d55140641451000116a966aa901aaae9bfef9e56febbfe46ffb8af556e5aa95a06e96f96e925af9550001159940540001afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1dfeffffffffc7f0a1902afea91a425159a000500 -156f5bf859a005502bffbbfbffb946aafaab9104050056e01a565aa81abfe96f951699901900000000002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffff47fffffbfffffc3f4a000095145a9150001405155aaaaaa8afa45051655079afff66eafa45aaafeffff99569bee905146bfd6fffe9a9554400055565581006fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3dfbffff -fffffe2f8a2041affea569569640086a555bba9f959540111aaa646affeea5555469bfd15555a7ff902b680651fbfeaa56915805ae540000000019ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe07fffff6fbfffff2fd6185aaaaaaba595a154056aaa -aaae56a5a95a5955556fe1656fa46eabaaaab91affaaa56aa5a9a4147a6fe40546af91aaa50405400006ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffff45ebfffdfaffffff4fee15954555aa9656aa451154050a9aba56fa40142555bffbe947a81556405b4640656ffbe97d91550a96f9ab551b5a6e950684000000affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0ff7ffebef -bfffff8bfb2a1541000001565404045abbaababa9a900040254ffa9a9ffa6ffa5aebbfffff9545abfd6f592964ba9b9a4543a998000000000502ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0feffff9baeffffffcb6f44055506956a9aa505950641 -6aaa55552a954015ae95f4166ad6a804011957e6d57e06b9b95941694ea4656a51946a54405540007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffff0beebffdffb7e7ffffe3ffc40166aaaa65961400011aaaabeeaa66aeaa541aaa9ffafeaffffeabaaafffe606ff6abfa5e45901595a95abd6401900051404015ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff879dfffddffef -fffffffa9bc1569a9651400000aeba01e4654511055ba5400005be6be56a5bf907a9569affa40bebe8f9be40a07bf952a416a4015460150006bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd17fffff7f9fe9fffffffe02c25495696a9500440056a5bf -e9955afe5795a550067ffd9beabea6fe9056effebffa5abfd6069519064bab5d5444006aa8001abfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffe07eefffb9ef7beffffffff01e1401669500150656aabfebfea46ed02559e9555aaabff9a99affad5569695af45bf40b9bf5462504bfe685ff96abaa54002ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe07defffddfbbddf -ffffffff40910001aa565aa95001415aaa6feaebba9ffeafe6069fa5bfeabf55be9e9a56fed41ffea6fdbf4159255beaaa5569504001abffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff49bfefff7ffefbffffffffffc0d10005555541aa55aaa5aeaa -659541aafffff95540abfeafea5afffbdaabffbdb905ebe0a641f91596bdbd57e90000006aefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffff83fdfbfffffffffefffffffffe1e0004150001155e441006aaa9ffa55411956a6a4a94baae6bffffebfff6a69eb86ff42ee5fa91ad106a91aa5056aa05097ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc26dfbffffff5effbf -ffdbffffffe0000055556a55a556aaa555aa6aaa79795be559a56ffe7f96aafba9a6ffebee991af819bafde0295596910500000005affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0bfeffffbfffbefefffffffffffff801180011556aaa5565297f -abeaab995a1502a556e995f97f56fa6ffff97d2e5b643ea6bf5af905a46d200015000005ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffff07fedfdffffffffbffffabffffffff6000005aa555405956a995019efaaeefffe55169aaffafffbffebfff95baf9bffeb9796ebf91580581f50000000405affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff06ffdfdfffffffffffff -b7fffbfffffa400401055105a56aaa9550065aa95a56eefa1482b997fefaeafff96ef9f86f5bdff96ef9ae801902e700000002fefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff42efeffefefffffcfffffafffffffffffd0010406a95a911a456516 -aba55925004011aaebafffe7fe5be6afef6fdbd6fef97f87f6559445847fe40002ebbfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffff86dfbffafef7ffffffffffafbfffddfffff000056440010145a55aa9aa96ffbfefaaa96a0155516e4affabea56f9fefee6ffd6daad7d7a45901b40050baffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd2cfffffffffffff9ffff7e -fffdf7fefffff8000010015a66a5004aa01545115a5aa995664006655911ae9166947afff69bbdbcbe86960ba82905b9aaefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0a7eddf3f3fffffffffffebdfafffddfffffe00151400005aa5005400 -5abaaa9566405510154006905040590540566aff59bdbf9bf42af41547e09bbfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffff87ebf76ffbfbffffbffffffbbe7eeb6fefffff8040016a400159016965a552aaa5a545a5551a014001d0640001412d677ff9af9ffa5681a955b0a6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe2adebeffffffffffbfffdf7e -effb7f7fbbfffff45500194415995000106ae9a91aa5aa4054000000000002451400566aeebf6ef8bbe07826a01859fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff195afef7fffffffebfffdf7fedbeeefebfefffffe000010116955505555 -05556554550490654000000400001050400061efdae69bbdae4b45011025ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffc2daabf7fffffffffffffeeffebf7ffaffdfffffffe81000155401544154555aaa9244444164000001aff902900000000d2af9eeb9ffd6a9640005067fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2fdbfdbdfffffffffffffcffff -77ff9efffffeff6faf40114001991a91a95695afba9400000500001bfffffffe94500002026e2adffdbe6a2e0144a6cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcafbf6ffffffffffbffffefffbbb7f66efbeff7b9681ea0184000051596a7 -b955555006a51501641affffffffffffffea004187e2e4bbffe6559420197fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffff67efbcebffffffffffffeffbbfb7beadfbdbbeeeb80fd680150000115555545aaa99a9400150000bfffffffffffffffffe80046a56c2ebebd28190603ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbfff7fefffffffcfffffdfafefa -fb3f7fbbdefae90bfd0600000005000156994004016900010007ffffffffffffffffffffa00559975a9fdbf9978489ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff57edfeeefffffffffffeabdfdfff7eabf7ffbfb8002fe90180000000000044 -0100150104005006bffffffffffffffffffffff8084299a5a9a86f991846ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffe1fffdddfffffffefffffeff7ff9fedebefb6fe4006fe950090000000168001500015400000059fffffffffffffffffffffffff4220761a1e8a5ae94201bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcbfdffffffffffeffffdfffffff7b -efe2fbbef8056ae5506a90000000055a56400000000055016fffffffffffffffffffffffffc0042965d160a65a4142bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5bffffdfffffffffffffffefb3bfceefddfffd0040054000000000000104050 -054000000005bbffffffffffffffffffffffffffe000010429051e65a00afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -ffffe3ff7ffffffffffffffbffffffffeb796b7fff800000000006a5000000000000000000000003fffffffffffffffffffffffffffff8040005498051941907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffd3fffffffffffffffffffffffef6fb -fffbdff80014000005afffea4140000000000000005aaffffffffffffffffffffffffffffffc020000410028050582fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffff4bf3fb43fffffffffdffffff6fffbf9bfefde00000000affffffffffeba80000 -000505fffffffffffffffffffffffffffffffffffe21210018100a500092fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -ffff17dff302fffffffffbffffffffbfbbcdffff44400001ffffffffffffffffe95aa6bfffffffffffffffffffffffffffffffffffffff226890514101a4002ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffe2bfff702fffffffffffffff7fbffdf -7edffd1400006fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff21da65f8040496940ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffc1ffff603ffffffffffffffffffefffefbee050000affffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffff11baaabfffe5451902fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -fffc5ffff703ffffffff7fffffbf7fffeef7ff811000bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd805ffffffffabff915fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffcaffff207ffffffdbffffeffffef7df -fffe005007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed85ffd2ffefdffff0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffcaffff3af402fffefffffffffffdcdf7ef400002fffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffda86abfeaff1d7fdf03fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -fffc2ffff6fc000ffdfffffdffffbfaffbfb800001bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeeac97ea4f7393ff141fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffc6ffffffd003fdfffffdffffffffffe -fd00000bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9e3d6bdc8b7271ff040fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffc9fffffffea9ffffffeffefffedffbff000002fffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffe7e3d6f49577638bf8a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -fffc4ffffffd58affffffffdffffdfff7f400000bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6f83cbfd0a776ac3f8201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffd2fffffffffffffffffebdffffffff4 -040002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8be0bcbe50f3aa8d0fe150bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffe23fffffffffffffffdfdffffffff8050000fffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffd7a61f8bf40f3c98b0bf4893fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -ffff16ffffffffffffffffffdffffffd0100007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff979003f8fe40f2cecb93f8050fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffff8ffffffffffffffffffdfbffffd010 -0002ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff57d840bf8fe01f1d447e2fd1243ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffc5ffffffffffffefffffeffff955044007ffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffff47a0402fe1be52f0fee3f4bf0511ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -ffffd27ffffffffff7fdffffffff915040002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5a80108be41bc83f4fd53fc3f50982fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffff0dfffffbffffffffbdbfbf9110000 -00bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff464000b5ff82f942fcff72fe1fd02e0bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffffd27ffe583bffffffffeff4240000007ffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffff879801fd7fd43f103fcbd557f8be89f82ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -ffffff5effff5d9affffffdfe5004000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2e407ff5fe653f847fc7fa8afc6f54be47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffe29ffffff7fffffdfd1900000000 -bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8b82bffd7f5913f18b5c3e559fe4fc03ff07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffffffc7afffffffffffe514000000002ffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffff2507ebf6fa6417d48ffc3fe2b7fc3e00bfd0bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -ffffffff4297ffffffff9100000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc440efad7f6508be10efd3e5a77fe0f682ffc2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffe40002fffe54000000000000bf -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2043cbf9fd002cf660f493fee3dff83c04bbf4bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffffffffe400000000000000000000bffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffe401af6e7f800b8fd41ffe2fd05eeff168119fd3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -ffffffffffffb90500000000000000bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1fff2ecfc442f0fe41ebe2fb24fbbfc1f4076f4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff410000000000000bffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffffcf6e901ff1f612e5b0ffe0bbfff47e07efc7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffb0340000000000bfffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffff2ffffafe7e807fc2fc03fff4bdd53dfffe0fc1ffe2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -fffffffffffffff801900000016ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3ffdfebcf402dfc3f802a9f83fea2f7effc2f0fff4bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffff800540016fffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcbfffafe2f41b7f8bf807e8fc3f500f55bff0fcbfbc2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffffffffffffffff900016fffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffff0ffffffc7952f760fd80be47d2ff80bcfdffd7d3fbf4ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -fffffffffffffffffbffbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2fffaff9f54a8b71ff80ffdbf0ff513e7e7ff4b9fcf8bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2fbae7f2f40cdfa2ff00fe96b47a785f5a9ffe0dbfb97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffff83fcebfcae525ffe3fd41f64afc26f84fdfebffd23fbe3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83fe77f8ca0baefd3f602f7cffe0fe993dffabff43fff2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80b7bdb0c02adbfdae903fa463f4ff583f396bffe6fef2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffc4bafff240f7e7bc8e203ebe7f7cbf156fdffbfffff1f5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd09effd701df77bc9e10bdaa6f3e6f911eeffaffffe6f8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff08b7fc807cf7bf93d00fde9152fefc24dff9fffffcef4ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffff8017f500bcdabf67c02fcef3f8fe7d14effff9bff6ff4ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd015f2077acdff4b843f8f4000ff3f00f7fe5aafffff8bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff413d01f73fdff0f50bf81a2fcff9f80f3ff9affffff4bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffd00abff9bfcff0f00ffcea7febfcb84f7fdbfffffff1bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff802fffaffdff4e02fecff6fe3fe3d0f25bfff3fffe4bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe007fffe57ff8c4befcff9ff3ff2e3f3fffd2ffbff0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffff802ffefffff441fed014483affcf2f7fb5bff4bf94ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe053bf96bff003ffffffabffffd75ff5a7ff1bfe46ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80237fffff07ffffffffffffff28ffff7f87ffe13ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffe052ad2fff0ffffeffffffffff81ffffa42fff803ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9115fe5bf7fffe52a565bfffffffbd60bfffe14fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4502fffffffeffdffffea5bffffbffeffff800fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffd0001abffffeffefffffffffffebfffffe4403ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0025000066affafffffffffffdffff990500ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd00190890016bdbfffffffff90a950118007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffa0100049152105be540050011119690001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe40000000108001aafbbc41300400106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff94000010050215565180151400156fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffaabfee5000450200065156afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe40000006bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff955aaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc -grestore -%%Trailer +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: +%%Creator: PixelMagician +%%CreationDate: Tue Apr 13 14:21:14 1993 +%%For: kris +%%DocumentFonts: (atend) +%%Pages: 0 0 +%%BoundingBox: 0 0 435 321 +%%NXNextStepVersion: 3.0 +%%EndComments + +%%BeginProcSet: /usr/lib/NextStep/printPackage.ps 3.0 +%! +% NeXT Printing Package +% Version: 3.0 +% Copyright: 1988, NeXT, Inc. + +/__NXdef{1 index where{pop pop pop}{def}ifelse}bind def +/__NXbdef{1 index where{pop pop pop}{bind def}ifelse}bind def +/UserObjects 10 array __NXdef +/defineuserobject{ + exch dup 1 add dup UserObjects length gt{ + array dup 0 UserObjects putinterval + /UserObjects exch def + }{pop}ifelse UserObjects exch 3 -1 roll put +}__NXbdef +/undefineuserobject{UserObjects exch null put}__NXbdef +/execuserobject{UserObjects exch get exec}__NXbdef +/__NXRectPath{4 2 roll moveto 1 index 0 rlineto +0 exch rlineto neg 0 rlineto closepath}__NXbdef +/__NXProcessRectArgs{ + 1 index type /arraytype eq{ + exch 0 4 2 index length 1 sub{ + dup 3 add 1 exch{1 index exch get exch}for + 5 1 roll 5 index exec + }for pop pop + }{exec}ifelse +}__NXbdef +/rectfill{gsave newpath {__NXRectPath fill} __NXProcessRectArgs grestore}__NXbdef +/rectclip{newpath {__NXRectPath} __NXProcessRectArgs clip newpath}__NXbdef +/rectstroke{ + gsave newpath dup type /arraytype eq{dup length 6 eq}{false}ifelse{ + {gsave __NXRectPath null concat stroke grestore} + dup length array cvx copy dup 2 4 -1 roll put __NXProcessRectArgs + }{{__NXRectPath stroke} __NXProcessRectArgs}ifelse grestore +}__NXbdef +/_NXLevel2 systemdict /languagelevel known {languagelevel 2 ge}{false}ifelse __NXdef +/xyshow{ + 0 1 3 index length 1 sub{ + currentpoint 4 index 3 index 1 getinterval show + 3 index 3 index 2 mul 1 add get add exch + 3 index 3 index 2 mul get add exch moveto pop + }for pop pop +}__NXbdef +/xshow{ + 0 1 3 index length 1 sub{ + currentpoint 4 index 3 index 1 getinterval show + exch 3 index 3 index get add exch moveto pop + }for pop pop +}__NXbdef +/yshow{ + 0 1 3 index length 1 sub{ + currentpoint 4 index 3 index 1 getinterval show + 3 index 3 index get add moveto pop + }for pop pop +}__NXbdef +/arct{arcto pop pop pop pop}__NXbdef +/setbbox{pop pop pop pop}__NXbdef +/ucache{}__NXbdef +/ucachestatus{mark 0 0 0 0 0}__NXbdef +/setucacheparams{cleartomark}__NXbdef +/uappend{systemdict begin cvx exec end}__NXbdef +/ueofill{gsave newpath uappend eofill grestore}__NXbdef +/ufill{gsave newpath uappend fill grestore}__NXbdef +/ustroke{ + gsave newpath dup length 6 eq + {exch uappend concat}{uappend}ifelse + stroke grestore +}__NXbdef +/__NXustrokepathMatrix dup where {pop pop}{matrix def}ifelse +/ustrokepath{ + newpath dup length 6 eq{ + exch uappend __NXustrokepathMatrix currentmatrix exch concat + strokepath setmatrix + }{uappend strokepath}ifelse +} __NXbdef +/upath{ + [exch {/ucache cvx}if pathbbox /setbbox cvx + {/moveto cvx}{/lineto cvx}{/curveto cvx}{/closepath cvx}pathforall]cvx +} __NXbdef +/setstrokeadjust{pop}__NXbdef +/currentstrokeadjust{false}__NXbdef +/selectfont{exch findfont exch +dup type /arraytype eq {makefont}{scalefont}ifelse setfont}__NXbdef +/_NXCombineArrays{ + counttomark dup 2 add index dup length 3 -1 roll { + 2 index length sub dup 4 1 roll 1 index exch 4 -1 roll putinterval exch + }repeat pop pop pop +}__NXbdef +/flushgraphics{}def +/setwindowtype{pop pop}def +/currentwindowtype{pop 0}def +/setalpha{pop}def +/currentalpha{1.0}def +/hidecursor{}def +/obscurecursor{}def +/revealcursor{}def +/setcursor{4 {pop}repeat}bind def +/showcursor{}def +/NextStepEncoding where not{ +/NextStepEncoding StandardEncoding 256 array copy def +0 [129/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/Ccedilla/Egrave +/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis +/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/Ugrave/Uacute +/Ucircumflex/Udieresis/Yacute/Thorn/mu/multiply/divide/copyright +176/registered 181/brokenbar 190/logicalnot 192/onesuperior 201/twosuperior +204/threesuperior 209/plusminus/onequarter/onehalf/threequarters/agrave +/aacute/acircumflex/atilde/adieresis/aring/ccedilla/egrave/eacute +/ecircumflex/edieresis/igrave 226/iacute 228/icircumflex/idieresis/eth +/ntilde 236/ograve/oacute/ocircumflex/otilde/odieresis 242/ugrave/uacute +/ucircumflex 246/udieresis/yacute 252/thorn/ydieresis] +{dup type /nametype eq + {NextStepEncoding 2 index 2 index put pop 1 add}{exch pop}ifelse +}forall pop +/NextStepEncoding NextStepEncoding readonly def +/_NXfstr 128 string dup 0 (_NX) putinterval def +/_NXfindfont /findfont load def +/findfont{ + % Because we can never let NextStepEncoding get into + % SharedFontDirectory, we cannot reencode a font to NextStepEncoding + % if we are in shared mode. So if currentshared is true, + % we call the normal findfont and return that + /currentshared where {pop currentshared} {false} ifelse + {_NXfindfont} + {dup _NXfstr 3 125 getinterval cvs length 3 add _NXfstr 0 3 -1 roll + getinterval cvn exch FontDirectory 2 index known + {pop FontDirectory exch get} + {_NXfindfont dup /Encoding get StandardEncoding eq + { dup length dict exch + {1 index /FID ne {2 index 3 1 roll put}{pop pop}ifelse}forall + dup /Encoding NextStepEncoding put definefont + }{exch pop} ifelse + }ifelse + }ifelse +}bind def +}{pop}ifelse +/_NXImageString {/__NXImageString where{pop}{/__NXImageString 4000 string __NXdef}ifelse __NXImageString}__NXbdef +/_NXDoImageOp{ + 3 dict begin /parr 5 array def 1 index{dup}{1}ifelse /chans exch def + chans 2 add 2 roll parr 0 chans getinterval astore pop + 5 index 4 index mul 2 index{1 sub 8 idiv 1 add mul}{mul 1 sub 8 idiv 1 add}ifelse + 4 index mul /totbytes exch def pop exch pop + gsave matrix invertmatrix concat 0.5 setgray 0 0 4 2 roll rectfill grestore + {0 1 chans 1 sub{parr exch get exec length totbytes exch sub /totbytes exch def}for totbytes 0 le{exit}if}loop end +}__NXbdef +/alphaimage{1 add _NXDoImageOp}def +_NXLevel2{ + /NXCalibratedRGBColorSpace where{pop}{ + /NXCalibratedRGBColorSpace + {mark /NXCalibratedRGB /ColorSpace findresource exch pop}stopped + {cleartomark /NXCalibratedRGB[/CIEBasedABC 2 dict dup begin + /MatrixLMN[.4124 .2126 .0193 .3576 .7152 .1192 .1805 .0722 .9505]def + /WhitePoint[.9505 1 1.089] def end] /ColorSpace defineresource}if def}ifelse + /nxsetrgbcolor{NXCalibratedRGBColorSpace setcolorspace setcolor}__NXbdef + /nxsetgray{dup dup nxsetrgbcolor}__NXbdef + /_NXCalibratedImage{exch{array astore dup length true}{false}ifelse + 8 -1 roll{NXCalibratedRGBColorSpace setcolorspace}if + 8 dict dup 9 1 roll begin /ImageType 1 def /MultipleDataSources exch def + currentcolorspace 0 get /Indexed eq{pop /Decode[0 2 6 index exp 1 sub]def} + {2 mul dup array /Decode exch def 1 sub 0 1 3 -1 roll{Decode exch dup 2 mod put}for}ifelse + /DataSource exch def /ImageMatrix exch def + /BitsPerComponent exch def /Height exch def /Width exch def end image}__NXbdef +} { + /setcmykcolor{ + 1.0 exch sub dup dup 6 -1 roll sub dup 0 lt{pop 0}if 5 1 roll + 4 -1 roll sub dup 0 lt{pop 0}if 3 1 roll exch sub dup 0 lt{pop 0}if setrgbcolor}__NXbdef + /currentcmykcolor{currentrgbcolor 3{1.0 exch sub 3 1 roll}repeat 0}__NXbdef + /colorimage{_NXDoImageOp}__NXbdef + /nxsetrgbcolor{setrgbcolor}__NXbdef /nxsetgray{setgray}__NXbdef + /setpattern{pop .5 setgray}__NXbdef + /_NXCalibratedImage{dup 1 eq {pop pop image}{colorimage}ifelse pop}__NXbdef +} ifelse +/_NXSetCMYKOrRGB where{pop}{ + mark{systemdict /currentwindow get exec}stopped + {{pop pop pop setcmykcolor}}{{nxsetrgbcolor pop pop pop pop}}ifelse /_NXSetCMYKOrRGB exch def cleartomark +}ifelse +%%EndProcSet + +_NXLevel2{/_NXsethsb where{pop}{/_NXsethsb /sethsbcolor load def}ifelse /sethsbcolor{_NXsethsb currentrgbcolor nxsetrgbcolor}def /setrgbcolor{nxsetrgbcolor}bind def /setgray{nxsetgray}bind def +}if +gsave + /__NXbasematrix matrix currentmatrix def +grestore +%%EndProlog +%%BeginSetup +%%EndSetup +0 0 435 321 rectclip +0 0 435 321 rectclip +1 nxsetgray +0 0 435 321 rectfill +0.000000 0.000000 transform +gsave __NXbasematrix setmatrix itransform translate +1 nxsetgray +-5000 -5000 10000 10000 rectfill +435 +321 +2 +[1 0 0 -1 0 321] + +/_NXImageStr0 _NXImageString 0 327 getinterval def {currentfile _NXImageStr0 readhexstring pop} bind image +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffefbfffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5bbbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd25b7ffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe400aabfffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4621897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9912c17fff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffede546919fffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6948a14dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeb6861505dfff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeda5625426fffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6a40495137fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d92a9c5167fff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe141ca6aa452fffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd7159ad440a2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8d5a69a5515afff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff18aaa6426206fffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe122996844243fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe115a99498163fff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff92895fa199129fffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff99599a7926620cfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2446dae265918afff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe6296a9e46c8067fffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc464f4a56984153fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff68a6d9bd2a41286fff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff209653c75699589fffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb61a95689a70cc58fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6536b5a48d259a20fff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8567f574a5d2a612fffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd948a669977d55543fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc4bafb5ca7b6f9587bff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0f79eea9dd4e9146bffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff91ff9df39aca56a85fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb47feeafb779b6d655fff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff955fdfbeeeb765eb20fffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe56bebfae5ab4d6b96fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd5977edefba6e6b5bc2fff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa89abefadd67776de83fffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff616dfb779dab1ddaf07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd46bbfb9ebbdf5cc660bfff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb44f7dded77dfba5b49bfffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61abebadabbe97e3ac67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed2b7ab3e7fbb9a97a567fff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe93bb9fb7bfbaafadb51bfffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff95beebff7baed3e75b40ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff65ffebe6f7dda7cbe680ffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe87ff5defbeea559a6701ffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd87ff9e5ebba7ab78da01ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa15fd577defd227dbe402ffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff559ec6aeaceca9ab79403ffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd4d7726deb9a89ef69c893ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82a771febf239c7bd98083ffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff079debf7eeb768bfa74143ffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0daa57bbecee74ffe64207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff829766faebadf66df5d150fffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd176ed6df7bbfb5e9e6a501fffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd95b6efabdedafaf7d79442fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe976aa7ff9fffada7a9ab0487fffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe557aa9bbeb7bfe9e7dd29108bfffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe40be7aaaefeeeaf6d7a9f4500ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8682a6deff7feee999dbabd6401ffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82e169f7ff5dda7e6eb99daa1002ffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed2f6a9bdfbda775f9aa6659725103ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd64aa69be7eead9dae8b5a6735bc10bffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0faa68677e776bbaeaad96eaaeb441fffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe846b66899ae5ddbdfba6f957d8c69503fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff906ba99627f9b7be2dddaf65f56198107fffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd09b98665afd7affc7af76fa5dab898087fffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd67ada6a47baafafb1ebdea7fad6f72110ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd09eea9e869ebff9adb7e796bb75aab9445ffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff526fa9a5ad77e551b2db9b69deb6acfd980ffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff94d9aa166907e9942eb8e7ddb9ddbf6f7712ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5764aa69e55eb667f9d3dfaab32fbe7a9983ffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8699a6aeb96a6997bc75f6ae98fff6c9c990fffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffda1625d9bbd2f5978ab7afdceff6aee76ed702fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4515aa975e99bfbe2d8abf73beeeb79f779a07fffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8009a66287566fbe1ba3e6eebf9e9ea7ddb4c0ffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810679d86685ab9e4a65e86bd5e3736cf77da42ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6425db717d287ee46967a1ab67d9d8bae9bae27ffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5941a6680a6a1dd85694dd26feb3a556ed9dec9fffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed9046859a25aa6b4266577e9fb5deb6976577e67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff965119196599ada91a94b9fd7de76deb1fe9e775ffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7ffefffffffffffffffffffffffffffffffffe0464b4558a5567f41957f7e6b66ca3bdbef35ecaffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe6ff9bff9feffffffffffffffffffffffffffff8249744092c546aac65bfadeefaafcf36fbdb3e07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffaebf9afd5ba55a5bf96ffffffffffffffffffffffffa096285420564151e962b6a6a7eaae79dbde6df603ffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafe801a92946d0555544aaebfbb9fffffffffffffffc06549584615d54060796dbde6f6c68976b7dab6a5bffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbfabfea96eaf956daebae8680100046a5a6bffffffffffe005062a66419509482d6abbb9eeaaa29d35f5aaa88fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffff9f4aeeb7feeff5a6fa3e5a42a5fa69e5501a95bffffffff800014a16849515a519692d79a6aa99670dbb6ae7a3fffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4a1bdf51ffffe06fe6bffe6a9affe6f9101901405abbfffd8400b144016689611a560a2d29aaa67dd66eeaa561bfffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8011bff66fabf41be614a97f5bffafa461945a51ae4015abfbad5284549225645958957ae4b96a5ebafd56e70451ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffde279a7d7fa9bb96f81a5a6906ff92a50be46ea406e90b8007bffffe4245808590695a2bae829865f56ae6a7996c91ffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe587a86fa2e64691ae569ae995f5e16e92a5aeabfeff9285aef9555fffed45466951482498e5696857659a6b9e6a6642ffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd9467d96a9aea5a45002ffaa016fbd97e96e6be91bfd96a6be5050055b6fff6641a00851804569a552594aaa9ea9b6b241ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffe557bd9a6595aaa5500bf5a955af9b96fd6af95bba695a55bd56aa6fbe93ffff64a0026460806a6e9196126966e9a6cd103ffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe499bf9b5eaaab8be01ba4547bf95a7e7fff6fe46ffeabaaaffa54ae00566bfefffd411a20a0797949a14897a8af25a5e40bffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee5071a9b6e6ee7ab917bd5067e68bfabf6ffa56a4bfe6f01ff9595abaa9b57957ffff41b58a42d1e0a659751eaab99e96505fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffff54429afa6baea6eb6ebbe86e5eaeffbfe7fa9196dbaea91bfa969aa79e56555affaafd6ab9b66a09a76c51946845ea2d18813fffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff024156df5bfea3aaaffa6dbf5e5affe7f9fa7e9a6e6f696fbfa6a9afdbffab5995055fffffe99f5a689928602a059d5b929853fffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd86a3faeb96ba6a9aaed69bfe6906afe6f6966e687aae7afe7fa96f96e5fbefe6feaffffffeedbaeb9a648b6c09946112aca258bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffd82a42aefa6ba5b6affbf6ff9a966ffd5f6f7dfe6ffae7e5eb9a9a6ffe9d1aa9a97ae99ba45bffdfadbb9278b46664801136d721ffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff415a25ebff7fd76ef9bfaffbe5955a99b6d7fafbfae97d6febfff6fffee1e91bf9569be81a57fffebaf999ea4284950054a25886ffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd59649b7ffbffa9fb9bbefebe0a1454bf6abf6fe7ffbfebeaabfaebfeafe9aaa6aee54ae818056efeffea975c4609554142982417ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffd2e95eaeeffebeaffabaffff95a7c50b46d6faaafffefeffbebdbda7af9faa9555b95955aa5405b9bfffffb8a2ee6681640a641047ffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3a157aaaf5fbe6f6affe9b6df959fd38ad6e69bdb7afefffe6fef9bff469ffaaf96ab4691aaaa9698a5bbffb5f698755601855a11bffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd87996f9abda9e5ba56aff7edb6befe12f8be69b9b6afaafaeae5b5fd5f66e16a516a546fe995955505be4bfffb9b41955807086848fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffff4eefab567ea67ab5da7ffffd6979a966f4747fb9bf4fa5754afafd1fbfa986f94405a642a96850456fe41bfabe8a9279c201d659455fffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2fff6ae5fae6979919befe9642db429bda515b9af4b9b9af52ea46f47eff95fdaab9e525146abfae905aba5bf96a59e604064a45001fffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0fbdd8855afae6d509bb7eb40652f59bdb9425abe5aaf5ffd5564b96ffa955ac6ae95afe9b9b4455115aa42fe6ffa6b4414552558812fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffff86f6b52c9b98b6d616be6f7ae655be5be15fa91a99a9a5a597efd687e9beffffa069ab9aaaa6afeaa95465be47ba6df910a160696a44bfffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2fc6ed92a9b75e6967e5f7ae6e97e1fe06ff6b995a65949b66f4516ffff95e516aeb9a9a45a4556bfbe405a9a51aeb95119694999506ffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffff97b6f572ea99491e9e7cb7ad659a65e7e6ffbbea55f5f9b96d65bafef56fffabdaea59557ffeabff9696ba4065aa49bae824250625c44ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffff67fdfe5feaa2b75b9b6f3c3de5b25d57e5be7fffe4667875ad6ff956bbff9aa6a5bd192ba556aabfb96be84ab5a912bffe051090992406ffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd9aab5af6badf9f7eb9b9f6d669f58be55e97ebbe6966faef5ffeaafe6e855bb9af97a09664561a5fbabbeba6ef807fdebd05852219410bffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffff9da797edaffff9fdbd5e79f5fa96ab91ad6bd5ed6e7e3f5ebffaebe9640bf9146aa55aabf955a82f96be565695417fe56b848559961405fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffd2bbfffbe7fee9bdbe5a6afcb99abfeaaabafe57e2bf4f46a9dbae96beaea6aa91a945be56e5b9ed5bfeaffeaa82bea060be3265259110bfffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffafefffceadff67f6e23ebe1b8be6f6af9fabe690055575bd2ffdb65bf9bffeadbff5aaa4579650fffd5aff9a9592941281ef8944964001ffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffe7dadef72bafdff9a6af9e6fabebe6ee5bd6eaf0685ae4fabff9bf6fe5b9690bafe1bfeafe569afe966ff9af86be41a8502aff562154007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffdfabb598fef76d99979fe1f9bd2e2d7dbd65bd86d5bb9a6fe7ffffffab6a9bf96ea6aafffabeabf596b92e96f1a6ebf600a2ffd5495002bffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb6f577762797dab679c7f5bcaf7f0699bfa9b94aa7e95e6feaf5bead6fffeffef9afae55fffffebfffe5a44be6f4a7564060bffd928400bfffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffe39d8ebe9cf5f6cd5da2faf7c679d019bdbbbdbd6b95fe7f5be6ff996aaafbe5effe60fb5995bbffd6ffa9aa5ebe4a4af9b049bffc96505ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffd22d76eb3d8e7b7db68b969d76db029b95b97a590bebe2bfabfea6e5e05eb96fe55aaefffefffa5bffd006569a96b9ae158417ff8e69606ffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9cab1954e5ede9f2d97d6dafda2e2d6d57d654151f9565e47ff96f6f9a961be6bffff95affbabbff95fef4169ad6fea59ea44bff616944bffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffff632fc44d21baba60f77fcfa3c28a29be7af79beb6bed79fc2ffebff6e7eaed5bfe6b956f9a56aaffbffafffaff57da917e5d2567e915403fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffd3a6e257495f696eb99dff95d18be5bb666f9ae46fda3ebf6ea9bafed6fabeae12affebd45abfffffe5afebfd02f9a5b595e6d619e66408ffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe5b86da6cf77d69d9dab779bfcabe2fad24bae55abda99eb6a6df6a5bfa6baffff9b96bda9a997ffffffbfea45ab955affe759e817aa8023fffffffffffffffffffdffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffff90fe32e72dfe6db77fa9de5ffff7eefe7dbafbfe5bbd5aa29af8bd6a51ffdfbfbad6fffeb96ea5ba96966effab9e541f5ebeabd41fba4083ffffffffffffffffbff6ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffff059c57ddf3eab9e7b9cbffba5a5effbabfdbe5a6baebefebfe5a7fbf7ffaf796ffafd5bb9abfbffffffffeafffe9bae9afffbee46fe9520fffffffffffffffa63fe3ffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc09241db9f7af938da67b76ed98fea6babbf99a7fa46fef9fd7b9be6f6fe7e6a5beff97f69aa566a6f96fabfe59e2ee476595a6f46ab9c02fffffffffffffe4855fc3ffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffff859bbfaf7dcbd9fea7a9efea87f464b962f4a97e509bdaffffe6fffd6f9b9be7ffffff96fd6afd5a5faaafbea5ba8555e04bae7eab7d6407ffffffffffffd05005f0bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffff16cfee1ce2937ade9beabeab2fa9d7855a4bfff416b9aff54b97ff996f6ff9ff6fffab95eaa9a9bbaebfffe92feaaaee96f9b9a85679801ffffffffffffe80100510fffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff65afde966c39fb7793faae67df7fe7956e5b97e1a96bba6646e6a6e92e7fe4b96ffffef979557ff9555b95abfa5691ebaafffe59059ef003fffffffffffb4141001d2fffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffaa3b6b6df4fbcaab9fffbdaca5ff682659fa5aefbb990ba57f9a1bd7faa9bb9857fbfd7fa5af96a95bafff1a65a46eafabed6a51026a800bfffffffffff402817b60bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffce9e85df3e75567fe56fd919b1ff99575ee65fff56669b95aa5bfeafe5e9fa6faffa66ad41e86afe91a57bf69aa6fa8696aa51aa40847806ffffffffffe801289fc06ffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd2e6b87fefdee597fa5b76e23e2fd965d6ea69e465afaf969a6fe5bf56ffa5afae91aff7ffeaaeeaaadaaffa0596ad5a469452aa84001d90bffffffffff801098fd81fbfffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffff829ff1ffbbe9eb4f796ddff9faeee45fafefaf5be5f9f5ef91beaf5afe99bfd6bfffffffeafaeaffaffebe6bfffe695966996f9f94001582ffffffffffd048279db47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffff267afff8fea3ef6df2666bffaf6bea9bfeafaff91e2baa69abeb52ff96abfafae7f96515afe6fe56be56fa7e979546d2929b9bea0100a10ffffffffffe45c679dbe1ffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd66d8b9f6799bfd75bc8f3ff99a97f57fd9f9b959ff954bffd69a7eb9bffff914afab9456bffffffffefa5ffbfffebea4bef96e695401942ffffffffff40782a67f87ffffafffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffe98fa2b6dddbe7bef175bcbee9a55fc2e9556fabfff56fffb8682bfe6bf959546fe695ffba9046bfe55bfffffb9af516ebe6ab91a4400550ffffffffffc2210729fe0fffff0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffc1ae5feb972f8fe7c1fbffebf6e2e95fdfe7fafdf96ffe558bfbf9fe5be94bffd1a969aaa9afffe5aaafe6aa96fe6bf96d5a586fa6841182fffffffffd42102d1bf84ffff91fff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe05fabaef9a7e175f17efafdfa64bdbf9df7e6fafabe559bfffff5ffe4bf9bfe4a56fe4505e55005a56aaffe6a95000db96966ba59d504a1ffffffffff484508a3fd08bfff02fffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffc56e9dbbf5df9596fcb6cb93d7c7e7f99b78afeafdf97eaaf9a6ff956e5ba95a5a9f956bfe901affea800059901bc6bf59592e4699244187fffffffff801067d9ff4183ffc03fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffff1ab63eeae67e776fe2df7a5f2fef6e99ab4baf7ebe6f85f914bff5bffad6e97ffaf5696f402e540545a5be955bf9a5bf9ad641b94659152ffffffffff01124bdbf94331f900bfff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd56efb6a6ddaae5efeffe9698bdbfe47f9d66bfbbc797fe5bffafbaae1abeaffff906fe952a5550005abbb99402946f96f87d6f857900206fffffffff8010967afd013900022ffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffff559ead6caba5b9feae9a42a6be26d57f9db85baffbd6fabfb96fa1bf57fffe4459011401556a6fa55af5aaaa406ff5afe5bfee5af804404bffffffffe0094179ff0000000187ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffd657db2a6aeaf977bb07e5ddd764b66f9fef6e7af596f8bd6ff96ff96fe95bbfe904297fa401ba46fa6a56bfa6fe56e46ffe81afe4589406fffffffff41241dfbf80001afe01fffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec7b7aadf3ad9a9e6da787be7d8595feffe2f69a65bf9f9afbf9b97ae91ffffe9556eaa146aa5695055bfa52d56ff95fab95bfa44351944bffffffffd00503dbfd1002d5f947fffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffff1ffcaf18f943e39bfde7ff2fae739db9687f5a757f6a7ffbf46abe5affa55bff86ab9ae956a9a41bea56aeeefe9abafaf5bf9546900a67fffffffff021463ffe4062a9ffc2efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffe785196a94fea7b9fbee7aebe6a52feaf9ae6ffbbe69bdab6effffe41be56afa5dafa255adba54066b59aaae46b16e91a46fb96a5a800ae7fffffffff90859d27f402026fff2ffbffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd7a2697b6a1f6beaf9ffff76a6f6af6dff597dffffe7abfeeffe6af5a95bfff5bffe6bfffe900a5abfa15106ffffefeaa6fffda45400191bfefbfffffe146553afd00062aff4ffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffff5fadfdaad6d2f8bd7fffae5abedbadffae7d97ffe5d2f92fed6bfe9abffa916ffe56955e96bfff505406affabe9affffeaff940011696a7e6aafffff660550fff4005dbff51ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffd6ea7eb969abfa7e3ee7956e6ebaff696a69fa4792f4647e5fef99969b9a56b95affeae95d445556fff92ffaaa9affa646b9a94194016919029bdfffc6800025fd00197ff5b3ffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9e7aeabd5b7e5696e77f44feb6dae69bff96a5197e5787fff9b5a81af9aa5bfa55955fe1aaea5595aaaaa955916bbfbffaea9865406a5400146dbfa685000100f80697ff8bd3ffff3fffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffba9a65669f682f9994a2cbdb5fd790229befe6e42f1a6a7ffe6ee5e57fa00541401ffef95af956fffbffa959055bfe56e5ba0551955a25059010182865e96105600b4087ff97dcbfff47ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe9a +aa526db7fa9bd65af4b8e69696807e9afffee9296fe557faffffbf9b8005500abfea5affeffa696e6aaafffd942a5a90b9596a400000a810640400685a42c608027d97ffc2998bffc0bfff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff14a5616f5bff96e16fe6a57f91a6ac2bd9eabaaab9bfa6bfffa6f9afa965fef4556a96ae55aaff59afffe5511be55aa805bfe6a50000001546a404009916405f940017feffd2d16cbe001ffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffff4100105955ff9b96affaae6ef6fea66befe9a97ba96efff86fea955bfaf6be4141bfeae545af656bf6455551400bf0059ab95bfe4690009400556814a401a000a980215abfe19073850003ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd08111 +4192e9b8697aabdbeadaaef92ff9ae646a655a9a5b555bbffebea55500aabb944401afeffffe806abfbe5aa680017906f7f955bba45029af6a8005016802fe4080aafe0906a000401fffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffef5451029450505579bd6f97dbe569a92fb869b5eab86e7feaa94155ba6fff9aff9aa9afffa954665bf6bffe955459500257f95be29befa541fea947e7eaea00a5551b91905aff0a0190120007fffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffa51429a5a10810aaaa5591a6e5695b8297ea5e6faaf5a6a16bfeffffffbf9abfffe6fffeaaffffa56ffaadaa6bfe9556afbb9bfff9af5d41afafd6f9bfaf8647a1a5ad07405bf4600005b7e46ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00a52aa064 +1a5696a9aea6afe6beaf81a5aaa7eff91a919beefba57fe95fea6fa97f955a5ad4465aabe56ffffe55abfeb91a9aabf9b96fc006fa42fbfe5bf95affa01e018007f850008a73e81fffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01952a4299145f9055ba5aa95696f96a5456e7feba6f92a555656affebfeffffffff45956afea95f9415bfeaa5456a006ba8bf5bb9ab9a55aba55a5bff9a5babef801a68a446bd09018df7fd0bfffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffea12a199609100a96296f551daafef816be943915da95f91bfe2abd43fa546bfaaaaa7fefabafaa95bfffffeaaa940069a9b91bfeb94aa546efa4ae5ab96a86f9a9145195e6d6aff4002debbfe43fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe90ba0a26461964 +a559a5fb6947e555ab95a1be55f91bfe06a5ba55995bafffbdaebfaa5aababfffefebbe40165451aae9005bffe7da7e4afe6a6fe6f954006d6f95a928166e659fd41a2cfffe08bffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffe016e6b65534968192801bfae866aafe5af86bae5fe5aa94ae997af955019557ff95655babedaafeb9566bffbaaaaaa95a001657aad66b955bf805a50096e595bfe6ae6904aaaa6af69cf6fffe875fffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffff40a25a580a825904241ab57c57fea6b55eea56f6f91b91be86a905afa54a01b956afffe66fffbfffe6a656afaaabffa95166f6ae67969560b96aea5afff5a86ff5a6e290055b96baa5ccf7ff947b2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0d446881a919a092 +c29656a97e6fa546f95aabb919aa2a95bf6e556abfffaa9afa5a69ae95d06d095156ff96ffbaf141a16fd6a6aab9a6ea5aae6ba5e5ea43fe6ead6950002e6e7b97edbfe404962fffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffd07602460740a91a1a2904569297f96effa29191aefae6e4a9bfaaff556917eaaefffffaf9aaba46f81bffbe664555fffffe9553f81fea6f9699affd696bd5beffffabe54525bdd2f11faefd4071cd3ff83fffffffffffffffffffffffffffffffffffffff +fffffffffffffffe52b94aa9b4a6a0a6f9800404101faafea56aa9497d7fba81915e96a5aa66a96ffb7ae407faa6aafd6aafaab95aea9ea95a5ab96ba9a6e851ada5591aaffe5f5bf9b5b5a6a40bfe16922affe004b0acb940bffffffffffffffffffffffffffffffffffffffffffffffffffffff4a986da97c666456e5a +28a00006eb9fdab95456bbe6fbd6ab9a9af9a55abaabfffd1a6ae569b5affeffffffe95154456baabfea6feb5e646529a505969fe4bfffae6e5bff641ff5a5a60bfe012890280003ffffff +ffffffffffffffffffffffffffffffffffffffffffffffffc7a62e674e569e59a06296024496a5affbd59525692eafda5b8eae6bfeaaaaebff9affe841bfe96bbfebebfebffffffa99fbafebfd5bea5b4415405a96bf9ba6ffabfaabe541ae7a5bd15fe6a2005004001fffffffffffffffffffffffffffffffffffffffff +fffffffffffffe2a5c99ad2a9ba56a26058054194004557bffbfa40be6e565955abff5affeef4aa5bffe5ebffe97bdbf6bffea5aafabaea800696f96be69015a511a42a6e5e6be5ffabd6fa06525e6696abf00000014f901bffffffffffffffffffffffffffffffffffffffffffffffffffffff4597756e1652f9a61e465 +06469000406abff95a46abfa556bfe455bffa596abeaafe5af6ff95afebfffffd4559a991a6afbfe55bf6f9b540069590161aae90a5bfe6e96ae4140bf6399ffe4000014e591bfffffffff +ffffffffffffffffffffffffffffffffffffffffffffffd154a86fe5a0f8bf5a965105501494046aabf6beaa55051a95a9bfebbebee6ba65ba5ae6ff8fffd7e91bfefffeaeabfe9555eebb965a1956a965446a6ea56aa5a95fff56da6a06ee996ebe500004e5f82bffffffffffffffffffffffffffffffffffffffffffff +ffffffffffff495694ab6aeb8af9eaaa498500a564056a952ea555a5babea5956fe579efff56feaa99bda9bfabea6fffffb556a556ffbffaa56c46aeaaa6a15560151bbb9691bffd26aafea42ae405aa6af8448dff91bffffffffffffffffffffffffffffffffffffffffffffffffffffffffd252745aaff9d26a65ab97d +50495906a469556abba7fa900065556fffeaa5bffeaabea6abe940bfeaa9ffffffffeafd5055566687b57c1aa51aaaa542a565a9af95bfbf9ba5001ae6a8569bd2deeff41bffffffffffff +fffffffffffffffffffffffffffffffffffffffffffff45b6d1a9af9f18a69a7a2e1685001a81018006a96bb9581aa555ebaaabda5fffbfffbf9afe96afe6f85a56fba4156aabeeea955afffaafeaa9555046afeb9011abaa6d6d6a5006b9a901856a6fffa01ffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffe195a5b99b87592da69a0f4796840a594040145aeb9796ffab9ab66a406bfeaaa7feff999aabff9a6aeffffaabeaeffbeaabaaa6bfea994069a6aaaa6be5a56fee91fa6afd6900259a568455be8a906fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc21569161e7451d6a558b868 +6a501955405590045ba955a5a5a81fd566baffbaeada56fe95a9507aa95abe55599566aaa9555aaa7ffe6a44569505aa965a56ae96bde8956ea000a965fa446a16a01bffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffe05946014b6965a6b60a7d656a6868691aa456a956aaa566ae9bfaebbbee9566fffe45946beabbe95affaf96aaa9155a6a6af9a55bfabfaa90695554015516faafe906fa6e5010a6ba41a1506e402ffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffd0bd180426d1aeab8da3e559529afa41a41a645a95aff9955545aaff505517bfffeaeeefea6fff595556d452aeff956ab95ea5bfeaff9aabbbfa94069941056bfa5afb91550501afa1a4154ea40bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff56985540590926ae661641916 +99ab9b85b968555400665555feaaaabafff15bfafea9bfeae66fe5abfffffa05455bfaa6965655456fffffaaaaaaaaa966affffeafa696f95901506554106a801bffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffd5a26600595496aba286e6a45545aae46aa50016000009aaa555aaaa6eab95557fe9abb96a6af996a96e55bf9afe5aaa5a400054691ba57bbfaa945551591b91e9b5be6e6a901185a995694001afffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffff41899a45a6a6586c97ae65a9b8019985a1aa4646801507a901aa555aebfaaefffeaaaaabaaaa5bfaaebaa96e696950145a6a95aaaa1bfffaaea55aabaaefd2b90bfeaaeaa40a01e4010400001baffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0996796a6a66a5e596eb865b86 +555a91aa4006e91551a5aaaeaaaaa965a956bfea900babffe5ab6aeaa1aefba905aae95100001101abe5ae501e9401555aab92b96a95aa41910fffe540416affffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffff80699d258a9afe7955d5ebaaab9401abfe56aa5a0680156959015556aad056baa55505aaa6daba5affaaaaa6afffba95945594005a92556f57946baa96ff5ae9fe95fa50020006fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffff00656485226a79aa1fd97e59198176a541a968010646a6aa6aaaaaab9107b915ba6eafb955ba51aa57aeaaeae55815aaaaaa8006a460bffff699569ae547d5aa95aa5be500406ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc41159d225a5055a2bb9a95a0015 +651aabb441a56955400054001a96a99500bfa6beabb55bea8546aa951655941baa9016a90164000505656fee55995aaaffbfafebfe9401402fffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffff404066569ae00266a59a50696a506a6e51a646a8955016aa41a555a9515abaa565456befebf964065416baeaa699446be96ba951aa9e97feffea505401955ba5fffe950050007bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffc00009a64a751a66a19586a06c02a8026aa49115454055941aaaa999ba95aaa795a9515eaa96f956a9aaa9999abe9a9506eaa96ea52946bfad57f942baeebf97ea6994511000bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1b8001156699aaaa9a66ae596a51a +fbfe9abfee96eafa666aae9559a6ba6a96ae951affffeae46a06ff99e97e69a5aaea5559aa91aaa45afa5fe8540444156bffff946000042fffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffff87ff90419558a66e9a6959aefa1affff4afffffffd16a6aa950669aaaaaaa8195abffaabe5596b85a686aea6f9aaa95e5bfaa9695aa515551fe94792aeffa56a6659a9000006ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffd6effd081555a56aa5a9646965abaa505ab9055f5695546d11005a90500111aa50a149af95ff6a51552aa5406a55695ad56aaaa6aa4690046a6ffe7ff91100166bfe401000007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd5aab0005a554aa6aa0196abe4196a +556aaafe9555401146500001400066941a86a5b659aa6e956aa94696feabaae5af996ab9105010106aabe6fff96aaffaaaaea6054000bfffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffdb1019f910a56a9a869464a56492aaa555556a966d55554a905500640055001a9064015069416aa63e45e5549a414141bbfe50000015a815690bbf9751b945aa546ba554000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ff6bc01a9f00924695295a6a65005a916ab555bfaa956faaa641aa1001aa100000000a9014069a9a4642f46945aa56ffab955fb55a50104105919215bff96a97bbff44400050bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd5ae0062e001e6611595a501a0556a56b +eaaa95aebe55555aa80115a805505190195004691a94165afeab90b95aaa55aa6f555aa9f94000002af42d56bffa7a990a94400007ffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffff025f808ba0089662416915699affeaaa5406aea95ba55401402aa469050a96a42d0169068005006915abeeebaaff6aa9452fd40004400000a1a59016fffff9affbe500001bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +c4027e02eb801255405929406a56aa52feeaa946bff002aaaeaa6aab909ae526ae46a550000005069b97afa7d95aabef9bff4000040010001a40001a4aff95f8006900001afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe2e406f016b405a5585460047965a554591 +01a9aabd45a659966e555aaaabaaa665b90691aa56ba9a55faaabfbe5005afe506aaaa91280101005401801aabffff500000056fffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffff8fff01f40a78015d996544061aaa556a5510092aafaaaa999555a96b6aa9556e406aa9d6a916540500abd56fd6bff84690af911400000004505a0010401ae5594000006efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe6 +fff403c49f8216812000001696ab556bbbeaba40aa50055956ebaa91aafea501a956a005bbafffa01016ffeeb95f9016c07ff950015ea506a555500544016a5400002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff66fffd06c07b94046100010140001aea6551 +615abd5b6555655aa41aabe05801a95bf55abf915551aea952e96b96a916a655be56ba95aa540566800914000000000005bfffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffd5ffffe07e06b88012900210006ba555501456a95abbe961a95566aae1abff4644016fd0026ae9565441a546b91be0bfe6ff95efa6afe56aef9106590010100005555bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff477 +ffff06f16b81299006ffeea8015baaaabaa401464696aa411545579abe69556aa9a56fff9ffa5afe400145ae9aa95aa5e5ae7fd41155500001051000000016afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcbffffff82f55b4018006f92ff9e6a954056a4 +5a6faff91ae9551406bfefffee86a59fd156d5555514655ea505056efdba4bfc42d59a5000000005004025000bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffff1bffffffc7f05b054590ec00280aa55aba55400155453f995500005a459bfffd05ae9bff85aa1a4fe2a915010467a5bf96fefa4006aba9954029000541000055bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbffffffffffffffffcbfff +ffffc2f42b28654bd064006aa6ea169aaaa5aaa94ae55669a56beffea9916fe81aef96bbf6be1bffbe906a51abf47fd902ae5040000000116a410014002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe27bfffffff0f70b54162d004005aa95aa6a5554 +51016ae4016a5aa5bfe9bfffffea9afefff91541699515505a506e7e5fe5b90546beaebaaa905540500001007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffff43fffffffff4bf0b184a6000002e4065150555155aba546ff9455555d6f98556ffffa506e7d1afaffe517ffe556d03f5b8bfa01a6a955aa9a4000556a454100bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2fffff +fffff8bf0b195542b940a81d55140641451000116a966aa901aaae9bfef9e56febbfe46ffb8af556e5aa95a06e96f96e925af9550001159940540001afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1dfeffffffffc7f0a1902afea91a425159a000500 +156f5bf859a005502bffbbfbffb946aafaab9104050056e01a565aa81abfe96f951699901900000000002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffff47fffffbfffffc3f4a000095145a9150001405155aaaaaa8afa45051655079afff66eafa45aaafeffff99569bee905146bfd6fffe9a9554400055565581006fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3dfbffff +fffffe2f8a2041affea569569640086a555bba9f959540111aaa646affeea5555469bfd15555a7ff902b680651fbfeaa56915805ae540000000019ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe07fffff6fbfffff2fd6185aaaaaaba595a154056aaa +aaae56a5a95a5955556fe1656fa46eabaaaab91affaaa56aa5a9a4147a6fe40546af91aaa50405400006ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffff45ebfffdfaffffff4fee15954555aa9656aa451154050a9aba56fa40142555bffbe947a81556405b4640656ffbe97d91550a96f9ab551b5a6e950684000000affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0ff7ffebef +bfffff8bfb2a1541000001565404045abbaababa9a900040254ffa9a9ffa6ffa5aebbfffff9545abfd6f592964ba9b9a4543a998000000000502ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0feffff9baeffffffcb6f44055506956a9aa505950641 +6aaa55552a954015ae95f4166ad6a804011957e6d57e06b9b95941694ea4656a51946a54405540007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffff0beebffdffb7e7ffffe3ffc40166aaaa65961400011aaaabeeaa66aeaa541aaa9ffafeaffffeabaaafffe606ff6abfa5e45901595a95abd6401900051404015ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff879dfffddffef +fffffffa9bc1569a9651400000aeba01e4654511055ba5400005be6be56a5bf907a9569affa40bebe8f9be40a07bf952a416a4015460150006bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd17fffff7f9fe9fffffffe02c25495696a9500440056a5bf +e9955afe5795a550067ffd9beabea6fe9056effebffa5abfd6069519064bab5d5444006aa8001abfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffe07eefffb9ef7beffffffff01e1401669500150656aabfebfea46ed02559e9555aaabff9a99affad5569695af45bf40b9bf5462504bfe685ff96abaa54002ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe07defffddfbbddf +ffffffff40910001aa565aa95001415aaa6feaebba9ffeafe6069fa5bfeabf55be9e9a56fed41ffea6fdbf4159255beaaa5569504001abffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff49bfefff7ffefbffffffffffc0d10005555541aa55aaa5aeaa +659541aafffff95540abfeafea5afffbdaabffbdb905ebe0a641f91596bdbd57e90000006aefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffff83fdfbfffffffffefffffffffe1e0004150001155e441006aaa9ffa55411956a6a4a94baae6bffffebfff6a69eb86ff42ee5fa91ad106a91aa5056aa05097ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc26dfbffffff5effbf +ffdbffffffe0000055556a55a556aaa555aa6aaa79795be559a56ffe7f96aafba9a6ffebee991af819bafde0295596910500000005affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd0bfeffffbfffbefefffffffffffff801180011556aaa5565297f +abeaab995a1502a556e995f97f56fa6ffff97d2e5b643ea6bf5af905a46d200015000005ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffff07fedfdffffffffbffffabffffffff6000005aa555405956a995019efaaeefffe55169aaffafffbffebfff95baf9bffeb9796ebf91580581f50000000405affffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff06ffdfdfffffffffffff +b7fffbfffffa400401055105a56aaa9550065aa95a56eefa1482b997fefaeafff96ef9f86f5bdff96ef9ae801902e700000002fefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff42efeffefefffffcfffffafffffffffffd0010406a95a911a456516 +aba55925004011aaebafffe7fe5be6afef6fdbd6fef97f87f6559445847fe40002ebbfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffff86dfbffafef7ffffffffffafbfffddfffff000056440010145a55aa9aa96ffbfefaaa96a0155516e4affabea56f9fefee6ffd6daad7d7a45901b40050baffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd2cfffffffffffff9ffff7e +fffdf7fefffff8000010015a66a5004aa01545115a5aa995664006655911ae9166947afff69bbdbcbe86960ba82905b9aaefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0a7eddf3f3fffffffffffebdfafffddfffffe00151400005aa5005400 +5abaaa9566405510154006905040590540566aff59bdbf9bf42af41547e09bbfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffff87ebf76ffbfbffffbffffffbbe7eeb6fefffff8040016a400159016965a552aaa5a545a5551a014001d0640001412d677ff9af9ffa5681a955b0a6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe2adebeffffffffffbfffdf7e +effb7f7fbbfffff45500194415995000106ae9a91aa5aa4054000000000002451400566aeebf6ef8bbe07826a01859fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff195afef7fffffffebfffdf7fedbeeefebfefffffe000010116955505555 +05556554550490654000000400001050400061efdae69bbdae4b45011025ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffc2daabf7fffffffffffffeeffebf7ffaffdfffffffe81000155401544154555aaa9244444164000001aff902900000000d2af9eeb9ffd6a9640005067fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2fdbfdbdfffffffffffffcffff +77ff9efffffeff6faf40114001991a91a95695afba9400000500001bfffffffe94500002026e2adffdbe6a2e0144a6cffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcafbf6ffffffffffbffffefffbbb7f66efbeff7b9681ea0184000051596a7 +b955555006a51501641affffffffffffffea004187e2e4bbffe6559420197fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffff67efbcebffffffffffffeffbbfb7beadfbdbbeeeb80fd680150000115555545aaa99a9400150000bfffffffffffffffffe80046a56c2ebebd28190603ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdbfff7fefffffffcfffffdfafefa +fb3f7fbbdefae90bfd0600000005000156994004016900010007ffffffffffffffffffffa00559975a9fdbf9978489ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff57edfeeefffffffffffeabdfdfff7eabf7ffbfb8002fe90180000000000044 +0100150104005006bffffffffffffffffffffff8084299a5a9a86f991846ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffe1fffdddfffffffefffffeff7ff9fedebefb6fe4006fe950090000000168001500015400000059fffffffffffffffffffffffff4220761a1e8a5ae94201bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcbfdffffffffffeffffdfffffff7b +efe2fbbef8056ae5506a90000000055a56400000000055016fffffffffffffffffffffffffc0042965d160a65a4142bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5bffffdfffffffffffffffefb3bfceefddfffd0040054000000000000104050 +054000000005bbffffffffffffffffffffffffffe000010429051e65a00afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +ffffe3ff7ffffffffffffffbffffffffeb796b7fff800000000006a5000000000000000000000003fffffffffffffffffffffffffffff8040005498051941907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffd3fffffffffffffffffffffffef6fb +fffbdff80014000005afffea4140000000000000005aaffffffffffffffffffffffffffffffc020000410028050582fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffff4bf3fb43fffffffffdffffff6fffbf9bfefde00000000affffffffffeba80000 +000505fffffffffffffffffffffffffffffffffffe21210018100a500092fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +ffff17dff302fffffffffbffffffffbfbbcdffff44400001ffffffffffffffffe95aa6bfffffffffffffffffffffffffffffffffffffff226890514101a4002ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffe2bfff702fffffffffffffff7fbffdf +7edffd1400006fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff21da65f8040496940ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffc1ffff603ffffffffffffffffffefffefbee050000affffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffff11baaabfffe5451902fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +fffc5ffff703ffffffff7fffffbf7fffeef7ff811000bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd805ffffffffabff915fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffcaffff207ffffffdbffffeffffef7df +fffe005007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed85ffd2ffefdffff0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffcaffff3af402fffefffffffffffdcdf7ef400002fffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffda86abfeaff1d7fdf03fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +fffc2ffff6fc000ffdfffffdffffbfaffbfb800001bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeeac97ea4f7393ff141fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffc6ffffffd003fdfffffdffffffffffe +fd00000bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9e3d6bdc8b7271ff040fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffc9fffffffea9ffffffeffefffedffbff000002fffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffe7e3d6f49577638bf8a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +fffc4ffffffd58affffffffdffffdfff7f400000bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6f83cbfd0a776ac3f8201ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffd2fffffffffffffffffebdffffffff4 +040002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8be0bcbe50f3aa8d0fe150bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffe23fffffffffffffffdfdffffffff8050000fffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffd7a61f8bf40f3c98b0bf4893fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +ffff16ffffffffffffffffffdffffffd0100007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff979003f8fe40f2cecb93f8050fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffff8ffffffffffffffffffdfbffffd010 +0002ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff57d840bf8fe01f1d447e2fd1243ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffc5ffffffffffffefffffeffff955044007ffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffff47a0402fe1be52f0fee3f4bf0511ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +ffffd27ffffffffff7fdffffffff915040002fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff5a80108be41bc83f4fd53fc3f50982fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffff0dfffffbffffffffbdbfbf9110000 +00bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff464000b5ff82f942fcff72fe1fd02e0bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffffd27ffe583bffffffffeff4240000007ffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffff879801fd7fd43f103fcbd557f8be89f82ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +ffffff5effff5d9affffffdfe5004000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2e407ff5fe653f847fc7fa8afc6f54be47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffe29ffffff7fffffdfd1900000000 +bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8b82bffd7f5913f18b5c3e559fe4fc03ff07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffffffc7afffffffffffe514000000002ffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffff2507ebf6fa6417d48ffc3fe2b7fc3e00bfd0bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +ffffffff4297ffffffff9100000000001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc440efad7f6508be10efd3e5a77fe0f682ffc2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffe40002fffe54000000000000bf +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2043cbf9fd002cf660f493fee3dff83c04bbf4bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffffffffe400000000000000000000bffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffe401af6e7f800b8fd41ffe2fd05eeff168119fd3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +ffffffffffffb90500000000000000bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1fff2ecfc442f0fe41ebe2fb24fbbfc1f4076f4fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff410000000000000bffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffffcf6e901ff1f612e5b0ffe0bbfff47e07efc7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffb0340000000000bfffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffff2ffffafe7e807fc2fc03fff4bdd53dfffe0fc1ffe2fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +fffffffffffffff801900000016ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe3ffdfebcf402dfc3f802a9f83fea2f7effc2f0fff4bffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffff800540016fffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcbfffafe2f41b7f8bf807e8fc3f500f55bff0fcbfbc2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcfffffffffffffffff900016fffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffff0ffffffc7952f760fd80be47d2ff80bcfdffd7d3fbf4ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +fffffffffffffffffbffbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff2fffaff9f54a8b71ff80ffdbf0ff513e7e7ff4b9fcf8bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2fbae7f2f40cdfa2ff00fe96b47a785f5a9ffe0dbfb97ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffff83fcebfcae525ffe3fd41f64afc26f84fdfebffd23fbe3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83fe77f8ca0baefd3f602f7cffe0fe993dffabff43fff2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80b7bdb0c02adbfdae903fa463f4ff583f396bffe6fef2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffc4bafff240f7e7bc8e203ebe7f7cbf156fdffbfffff1f5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd09effd701df77bc9e10bdaa6f3e6f911eeffaffffe6f8ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff08b7fc807cf7bf93d00fde9152fefc24dff9fffffcef4ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffff8017f500bcdabf67c02fcef3f8fe7d14effff9bff6ff4ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd015f2077acdff4b843f8f4000ff3f00f7fe5aafffff8bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff413d01f73fdff0f50bf81a2fcff9f80f3ff9affffff4bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffd00abff9bfcff0f00ffcea7febfcb84f7fdbfffffff1bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff802fffaffdff4e02fecff6fe3fe3d0f25bfff3fffe4bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe007fffe57ff8c4befcff9ff3ff2e3f3fffd2ffbff0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffff802ffefffff441fed014483affcf2f7fb5bff4bf94ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe053bf96bff003ffffffabffffd75ff5a7ff1bfe46ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff80237fffff07ffffffffffffff28ffff7f87ffe13ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffe052ad2fff0ffffeffffffffff81ffffa42fff803ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9115fe5bf7fffe52a565bfffffffbd60bfffe14fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4502fffffffeffdffffea5bffffbffeffff800fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffd0001abffffeffefffffffffffebfffffe4403ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffee0025000066affafffffffffffdffff990500ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd00190890016bdbfffffffff90a950118007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffa0100049152105be540050011119690001fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe40000000108001aafbbc41300400106ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff94000010050215565180151400156fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffaabfee5000450200065156afffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe40000006bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff955aaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc +grestore +%%Trailer diff --git a/lib/doc/gl/Intro.lyx b/lib/doc/gl/Intro.lyx index 46a1c87dae..4ee50a427f 100644 --- a/lib/doc/gl/Intro.lyx +++ b/lib/doc/gl/Intro.lyx @@ -1,2248 +1,2248 @@ -#LyX 2.0.0svn created this file. For more info see http://www.lyx.org/ -\lyxformat 404 -\begin_document -\begin_header -\textclass article -\begin_preamble -% DO NOT ALTER THIS PREAMBLE!!! -% -%This preamble is designed to ensure that the document prints -% out as advertised. If you mess with this preamble, -% parts of the document may not print out as expected. If you -% have problems LaTeXing this file, please contact -% the documentation team -% email: lyx-docs@lists.lyx.org - -\usepackage{ifpdf} % part of the hyperref bundle -\ifpdf % if pdflatex is used - - % set fonts for nicer pdf view - \IfFileExists{lmodern.sty}{\usepackage{lmodern}}{} - -\fi % end if pdflatex is used - -% the pages of the TOC is numbered roman -% and a pdf-bookmark for the TOC is added -\pagenumbering{Roman} -\let\myTOC\tableofcontents -\renewcommand\tableofcontents{% - \pdfbookmark[1]{\contentsname}{} - \myTOC - \cleardoublepage - \pagenumbering{arabic} } - -% redefine the \LyX macro for PDF bookmarks -\def\LyX{\texorpdfstring{% - L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@} - {LyX}} -\end_preamble -\use_default_options false -\maintain_unincluded_children false -\language galician -\inputencoding auto -\fontencoding global -\font_roman default -\font_sans default -\font_typewriter default -\font_default_family default -\use_xetex false -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\default_output_format default -\output_sync 0 -\bibtex_command default -\index_command default -\paperfontsize 12 -\spacing single -\use_hyperref true -\pdf_title "Introdución ao LyX" -\pdf_author "LyX team, tradución: Ramón Flores" -\pdf_subject "LyX-documentation Introdución" -\pdf_keywords "LyX, documentation" -\pdf_bookmarks true -\pdf_bookmarksnumbered true -\pdf_bookmarksopen true -\pdf_bookmarksopenlevel 2 -\pdf_breaklinks false -\pdf_pdfborder false -\pdf_colorlinks true -\pdf_backref false -\pdf_pdfusetitle false -\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue, pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false" -\papersize a4paper -\use_geometry false -\use_amsmath 0 -\use_esint 0 -\use_mhchem 1 -\use_mathdots 1 -\cite_engine basic -\use_bibtopic false -\use_indices false -\paperorientation portrait -\suppress_date false -\use_refstyle 0 -\index Índice -\shortcut idx -\color #008000 -\end_index -\leftmargin 2cm -\topmargin 2cm -\rightmargin 2cm -\bottommargin 2cm -\secnumdepth 2 -\tocdepth 2 -\paragraph_separation indent -\paragraph_indentation default -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle default -\tracking_changes false -\output_changes false -\html_math_output 0 -\html_be_strict false -\end_header - -\begin_body - -\begin_layout Title -Introdución ao LyX -\end_layout - -\begin_layout Author -pola equipa de LyX -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Se quer facer algun comentário ou achou algun erro, agradeceremo-lle no-lo - comunique na lista de correo, en inglés, do proxecto de documentación do - LyX -\begin_inset CommandInset href -LatexCommand href -target "lyx-docs@lists.lyx.org" -type "mailto:" - -\end_inset - -. -\end_layout - -\end_inset - - -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout - -\size normal -tradución: Ramón Flores -\begin_inset CommandInset href -LatexCommand href -target "fa2ramon@usc.es" -type "mailto:" - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset CommandInset toc -LatexCommand tableofcontents - -\end_inset - - -\end_layout - -\begin_layout Section -A filosofia do LyX -\begin_inset CommandInset label -LatexCommand label -name "sec:A-filosofia-do-LyX" - -\end_inset - - -\end_layout - -\begin_layout Quote -\begin_inset Quotes eld -\end_inset - -Tio Cosmo, por que lle chaman a isto procesador de texto? -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Quote -\begin_inset Quotes eld -\end_inset - -É ben sinxelo, Skyler. - Xa tes visto o que os procesadores de comida fan coa comida, non si? -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Quote -\begin_inset space \hfill{} -\end_inset - -— Jeff MacNelly en -\begin_inset Quotes eld -\end_inset - -Shoe -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Subsection -Que é o LyX? -\end_layout - -\begin_layout Standard -LyX é un sistema de preparación de documentos, especialmente recomendábel - para elaborar textos técnicos e científicos complexos, con fórmulas, referéncia -s cruzadas, bibliografias, índices, \SpecialChar \ldots{} - En xeral é moi bon para documentos, - de calquer longura, nos que se requeiran as habilidades de procesado usuais: - seccionado e paxinación automáticos, corrección ortográfica, etc. - Alguns exemplos nos cais se usa o LyX poden dar unha boa idea da sua utilidade: - informes, relatórios, teses e tesiñas, cartas comerciais, apontamentos, - discursos, actas de congresos, documentación de software, libros (sobre - PostgreSQL, sensores remotos, cifrado, romances, poesia, e mesmo algun - libro para nenos), artigos científicos, roteiros de teatro e de cinema, - propostas de negócios \SpecialChar \ldots{} - -\end_layout - -\begin_layout Standard -É tamén posíbel utilizá-lo para escreber cartas persoais, mais ha programas - mais simples para iso. - E desde logo non é a mellor opción para elaborar anúncios, cartaces, ou - panfletos (explicara-se mais adiante o porqué), ainda que con un pouco - de esforzo sexa posíbel facé-los. - -\end_layout - -\begin_layout Standard -O LyX é un programa que utiliza unha aproximación moderna para a escrita - de documentos por computador, rompendo coa tradición obsoleta baseada na - máquina de escreber. - Foi deseñado para autores que queren un resultado profisional, con rapidez - e con un mínimo de esforzo sen se tornaren especialistas en tipografia. - O traballo tipográfico deixa-se-lle ao computador, de maneira que o autor - pode concentrar-se no contido do que está a escreber, non na forma. -\end_layout - -\begin_layout Standard -Parte do inicial desafio de utilizar LyX ven da mudanza de mentalidade que - debe facer o usuário. - Ha algun tempo, todo o que o usuário médio tiña para elaborar documentos - era a máquina de escreber. - Para ultrapasar as limitacións que esta tiña, idearon-se truques que se - espallaron entre os usuários, e que persisten mesmo na era dos computadores, - máquinas estas moito mais potentes que as primeiras. - Subliñar, que é pouco mais do que dixitar o carácter -\begin_inset Quotes eld -\end_inset - -_ -\begin_inset Quotes erd -\end_inset - -, tornou-se un xeito de resaltar o texto. - Cumpria coñecer por adiantado o tamaño das colunas, e ir axustando con - tabulacións e espazos, para elaborar unha táboa xeitosa. - O mesmo se aplicaba ás datas nas cartas, axustadas á direita, e en xeral - a calquer texto con xustificación direita. - A hifenación no fin dunha liña requeria ollo clínico e moita perspicácia. - -\end_layout - -\begin_layout Standard -Por outras palabras, os usuários de máquinas de escreber tiñan que se preocupar - por multitude de pequenos detalles, para obter un resultado satisfactório. - Infelizmente esta mentalidade foi herdada pola maioria dos procesadores - de texto, de maneira que ainda utilizan a tecla de tabulado para engadir - espazos en branco, ou obrigan ao usuário a se preocupar de en que parte - exacta da páxina vai ir algo. - Para resaltar o texto deixan que usuário mude de fonte, tal e como se trocaba - de roda nas máquinas de escreber. - Esta é a filosofia subxacente nun procesador WYSIWYG: -\begin_inset Quotes eld -\end_inset - -What You See Is What You Get -\begin_inset Quotes erd -\end_inset - - (o que vé e o que obtén), que en moitos casos torna-se en -\begin_inset Quotes eld -\end_inset - -What You See Is All You Get -\begin_inset Quotes erd -\end_inset - - (o que vé é todo o que obtén). -\end_layout - -\begin_layout Standard -No LyX, a diferenza dun procesador de textos ordinário, o usuário non ten - que se preocupar de como conseguir que un determinado carácter vaia nalgun - lugar determinado, simplesmente di-lle ao LyX que é o que quer facer, e - o programa encarrega-se do resto, seguindo un conxunto de regras chamadas - un -\emph on -estilo -\emph default -. -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Para ser xustos, cumpre recoñecermos que hoxe en dia os procesadores de - texto incluen algun tipo de follas de estilo con unha filosofia similar, - mais menos potente, ao do LyX, porén na prática apenas son utilizadas. -\end_layout - -\end_inset - - Vexamos un pequeno exemplo: -\end_layout - -\begin_layout Standard -Supoñamos que vai escreber un relatório, que quer iniciar con unha sección - chamada -\begin_inset Quotes eld -\end_inset - -Introdución -\begin_inset Quotes erd -\end_inset - -. - Comeza entón indo ao menu do seu procesador para trocar o tamaño da fonte, - escollendo unha maior da que aparece predefinida para o texto. - A seguir activa o botón de negrito, e despois escrebe, -\begin_inset Quotes eld -\end_inset - -1. -\begin_inset space ~ -\end_inset - - -\begin_inset space ~ -\end_inset - -Introdución -\begin_inset Quotes erd -\end_inset - -. - Obviamente, se mais tarde decidir que esta sección vai mellor noutro lugar, - ou que seria bon inserir unha outra sección antes desta, terá que renumerar - todo, inclusivamente no índice. -\end_layout - -\begin_layout Standard -No LyX, vai a lista de estilos, un menu despregueábel que se acha á esquerda - da barra de botóns, selecciona -\family sans -Sección -\family default -, e escrebe -\begin_inset Quotes eld -\end_inset - -Introdución -\begin_inset Quotes erd -\end_inset - -. -\end_layout - -\begin_layout Standard -Isto é canto precisa. - Se posteriormente trocar de lugar a sección, ela será renumerada automaticament -e — en calquer lado. - E se nalgun momento fixo unha referéncia á sección correctamente (inserindo - unha etiqueta), o LyX actualizará automaticamente as referéncias en todo - o documento, sen ter que dixitar un simples número. -\end_layout - -\begin_layout Standard -Outro tema importante é o da consisténcia do texto. - Dias despois de escreber o relatório decide incluir unha nova sección, - a Sección -\begin_inset space ~ -\end_inset - -4. - Pon-se a escrebé-la, mais engana-se en canto a fonte que estaba a utilizar - para os títulos da sección, e no canto de empregar unha fonte 18 -\begin_inset space \thinspace{} -\end_inset - -pt en negrito usa outra de 16 -\begin_inset space \thinspace{} -\end_inset - -pt, polo que o título da Sección -\begin_inset space ~ -\end_inset - -4 vai ir con unha fonte, semellante mais non igual, á que usou para nas - seccións anteriores. - Este problema non existe no LyX, que toma conta de todos eses detalles. - Ao fin e ao cabo, son nesas cousas nas que os computadores son imbatíbeis. -\end_layout - -\begin_layout Standard -Outro exemplo, supoña que está a facer unha lista. - Noutro procesador de texto unha lista e apenas unha série de tabuladores - e saltos de liña. - O usuário precisa coñecer, ou decidir, onde colocar a etiqueta para cada - elemento da lista, que tipo de etiqueta debe ser, cantos liñas en branco - inserir entre cada elemento, etc, etc. - Co LyX só ten tomar duas decisións: que tipo de lista é, e que incluir - na lista, só iso. -\end_layout - -\begin_layout Standard -Asi que a idea básica por tras do LyX é: especifique o -\emph on -que -\emph default - quer facer, non -\emph on -como -\emph default - facé-lo. - No canto de -\begin_inset Quotes eld -\end_inset - -o que vé é o que obtén -\begin_inset Quotes erd -\end_inset - -, o modelo LyX é -\begin_inset Quotes eld -\end_inset - -o que vé é o que pretende facer -\begin_inset Quotes erd -\end_inset - - (WYSIWYM - -\series bold -\lang english -W -\series default -hat -\series bold -Y -\series default -ou -\series bold -S -\series default -ee -\series bold -I -\series default -s -\series bold -W -\series default -hat -\series bold -Y -\series default -ou -\series bold -M -\series default -ean -\lang galician -). -\end_layout - -\begin_layout Standard -Esta é a razón pola que o LyX non é bon para elaborar cartaces e anúncios—nese - caso, o usuário quer especificar exactamente onde vai cada cousa, e non - ha unidades funcionais como parágrafos, seccións, etc. - Isto no significa que no LyX falte algunha función fundamental, simplesmente - que non é a ferramenta certa para o traballo —- non se usa un martelo para - apertar un parafuso, non si?. -\end_layout - -\begin_layout Subsection -Diferenzas entre o LyX e outros procesadores de texto -\begin_inset Argument -status collapsed - -\begin_layout Plain Layout -LyX e outros procesadores de texto -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -Eis unha lista de cousas que non encontrará no LyX: -\end_layout - -\begin_layout Itemize -A regra do documento -\end_layout - -\begin_layout Itemize -Tabuladores -\end_layout - -\begin_layout Itemize -Espazos en branco extras (i.e. - ao premer -\family sans -Enter -\family default - ou -\family sans -Space -\family default - duas ou máis veces) -\end_layout - -\begin_layout Standard -Os tabuladores e a regra a mostrar a posición das palabras na páxina, non - teñen utilidade no LyX. - É o programa quen se preocupa onde fican os carácteres na páxina, non o - usuário. - Canto aos espazos en branco extras acontece o mesmo; o LyX insere-os cando - é necesário, dependendo do contexto. - Non ser capaz de inserir 2 espazos en branco nunha liña pode resultar irritante - ao princípio, mais terá mais sentido cando comezar a pensar en termos WYSIWYM. -\end_layout - -\begin_layout Standard -Vexamos agora algunhas funcións que existen en LyX, mais que son usadas - dun xeito un pouco diferente ao usual: -\end_layout - -\begin_layout Itemize -Comandos de identación -\end_layout - -\begin_layout Itemize -Quebras de páxina -\end_layout - -\begin_layout Itemize -Espazamento entre liñas (i.e. - espazo simples, espazo duplo, etc.) -\end_layout - -\begin_layout Itemize -Espazos en branco, horizontais e verticais -\end_layout - -\begin_layout Itemize -Fontes e tamaños de fonte -\end_layout - -\begin_layout Itemize -Tipos de letra (negrito, itálico, subliñado, etc.) -\end_layout - -\begin_layout Standard -Se ben é posíbel utilizar tais funcións no LyX, usualmente o usuário non - precisa delas, xa que o próprio programa se ocupa desas cousas en función - do que estexa a facer. - O tipo de fonte e o seu tamaño son escollidas automaticamente para as nas - diferentes partes do documento. - Os parágrafos son identados en función do contexto; de maneira que para - os diferentes tipos de parágrafos terán-se distintas identacións. - Tamén as quebras de páxina son colocadas automaticamente. - E en xeral, o espazo entre liñas, palabras e parágrafos é variábel, calculado - axeitadamente polo LyX. -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -O usuário pode escoller manualmente todos estes parámetros (se ben que para - alguns precise coñecimentos de LaTeX), para todo o documento ou para unha - parte específica. - No -\shape italic -Guia do Usuário -\shape default - pode ver-se como facer. - Porén é recomendábel, cando menos nun princípio, deixar-lle traballar ao - LyX. - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -Por último, existen algunhas áreas onde, na nosa opinión, o LyX (e o LaTeX) - ultrapasan moitos procesadores de texto: -\end_layout - -\begin_layout Itemize -Hifenación -\end_layout - -\begin_layout Itemize -Listas de calquer tipo -\end_layout - -\begin_layout Itemize -Fórmulas -\end_layout - -\begin_layout Itemize -Táboas -\end_layout - -\begin_layout Itemize -Referéncias cruzadas -\end_layout - -\begin_layout Standard -Certamente a maioria dos procesadores de texto actuais dan manexado símbolos - matemáticos, táboas e hifenación, e alguns están mesmo a evoluir na dirección - do conceito WYSIWYM. - Mais polo momento son novos nestes eidos, entanto que o LyX está baseado - no sistema de preparación de documentos LaTeX. - Sistema que ten décadas de existéncia, e ademais -\emph on -funciona -\emph default -. -\end_layout - -\begin_layout Subsection -Que demo é iso do LaTeX? ( e por que me debe importar?) -\end_layout - -\begin_layout Standard -O LaTeX é un sistema de preparación de documentos desenvolvido por Leslie - Lamport en 1985. -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -A fonte da que bebe esta sección é o libro -\begin_inset Quotes eld -\end_inset - - -\emph on -A Guide to LaTeX2e -\emph default -, -\begin_inset Quotes erd -\end_inset - - de Helmut Kopka e Patrick Daly, que ten unha entrada na bibliografia do - -\emph on -Guia do Usuário -\emph default -\SpecialChar \@. - -\end_layout - -\end_inset - - Por sua vez, o LaTeX, elaborou-se sobre unha linguaxe tipográfica chamada - TeX, criada por Donald Knuth en 1984. - O que fai o TeX é ler roteiros, ficheiros ASCII con unha secuéncia de instrució -ns, e executar secuencialmente os comandos tipográficos do roteiro. - É un pouquiño máis complicado que unha máquina de escreber, mais non tan - complicado como unha imprensa; porén Knuth modelou moitos dos truques das - artes tipográficas como algoritmos computacionais, incorporando-os ao TeX, - e conseguindo con isto atinxir unha excelente cualidade nos textos impresos. - En todo caso, a saída directa do TeX é un ficheiro no formato coñecido - como -\begin_inset Quotes eld -\end_inset - -device independent -\begin_inset Quotes erd -\end_inset - - (independente do dispositivo -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -dispositivo de impresión, na maior parte dos casos unha impresora. -\end_layout - -\end_inset - -), ou -\family typewriter -dvi -\family default - para abreviar. - O ficheiro -\family typewriter -dvi -\family default - pode enviar-se directamente a calquer dispositivo que entenda o formato - -\family typewriter -dvi -\family default -, ou ben converte-lo noutro formato como PostScript, PDF, etc. - -\end_layout - -\begin_layout Standard -Ademais do anterior, o TeX permite a definición de macros polo usuário, - é isto fai do TeX moito máis que un simples motor tipográfico. - A maior parte do usuários de TeX empregan un pacote de macros que Knuth - elaborou para agachar unha boa parte dos detalles tipográficos. - E é neste pacote no que a maioria da xente pensa ao se referir ao TeX. - O usuário comun non emprega o TeX puro e duro, que son comandos tipográficos - sen mais, só os autores de novos pacotes de macros o fan. - É aqui que Leslie Lamport entra en cena, el queria un pacote de macros - pensado no usuário con unha orientación non demasiado tipográfica , unha - série de comandos que compuxera tipograficamente cousas como seccións, - táboas ou fórmulas matemáticas, de forma consistente e uniforme, co mínimo - barullo posíbel. - E asi naceu o LaTeX. -\end_layout - -\begin_layout Standard -Entretanto e en paralelo co desenvolvimento e crecimento do LaTeX, outra - xente ia elaborando os seus próprios pacotes de macros para o TeX, uns - para facer diapositivas, outros artigos para algunha revista científica, - etc. - Alguns empregaban o TeX puro, entanto outros comezaban modificando o LaTeX. - Para tentar unificar este sarillo, unha equipa de usuários de LaTeX (incluindo - Lamport, por suposto), comezaron a traballar no LaTeX2e, a versión actual - de LaTeX, durante os anos 80. - Esta nova versión ten comandos que fornecen unha interface máis fácil de - usar para os comandos de criación de macros do TeX , axuda no emprego de - novas fontes, etc. - De facto, o LaTeX é en si mesmo unha linguaxe bastante extensa, e usuários - de todo o mundo teñen contribuído coas suas próprias achegas, estendendo - grandemente o corpo estándar. -\end_layout - -\begin_layout Standard -Ha duas vias de estender o LateX, as -\emph on -clases -\emph default - e os -\emph on -estilos -\emph default -. - Unha -\emph on -clase -\emph default - é un conxunto de macros de LaTeX (e TeX) que descreben un tipo novo de - documento, como un libro ou un artigo. - Ha -\emph on -clases -\emph default - para diapositivas, para revistas de matemática e de física \SpecialChar \ldots{} -, mesmo ha moitas - universidades que teñen unha -\emph on -clase -\emph default - própria para as suas teses. - Un -\emph on -estilo -\emph default - a diferenza dunha -\emph on -clase -\emph default - non define un novo tipo de documento, senón un tipo de -\emph on -comportamento -\emph default - diferente que calquer documento pode usar. - Por exemplo, o LyX controla as marxes das páxinas e os espazos entre liñas, - através de dous ficheiros de -\emph on -estilo -\emph default - para LaTeX deseñados con ese propósito. - Ha ficheiros de -\emph on -estilo -\emph default - para un monte de cousas: imprimir etiquetas ou envelopes, mudar o comportamento - da identación, engadir novas fontes, manipular gráficos, deseñar cabezallos - imaxinativos, personalizar bibliografias, mudar a posición e aspeito das - notas de rodapé, táboas e figuras, formatar listas, et cetera. -\end_layout - -\begin_layout Standard -Eis un resumo: -\end_layout - -\begin_layout List -\labelwidthstring 00.00.0000 -TeX: Linguaxe tipográfica na que se poden utilizar macros. -\end_layout - -\begin_layout List -\labelwidthstring 00.00.0000 -LaTeX: Pacote de macros construído sobre o TeX\SpecialChar \@. - -\end_layout - -\begin_layout List -\labelwidthstring 00.00.0000 -clase: Descrición dun tipo de documento, usando LaTeX\SpecialChar \@. - -\end_layout - -\begin_layout List -\labelwidthstring 00.00.0000 -estilo: Modifica nalgun xeito o comportamento predefinido do LaTeX. -\end_layout - -\begin_layout List -\labelwidthstring 00.00.0000 -LyX: Procesador de texto WYSIWYM, que emprega o LaTeX, en toda a sua gloria, - para imprimir. -\end_layout - -\begin_layout Standard -A idea desta sección é tentar explicar porqué o LyX funciona de forma un - tanto diferente dos outros procesadores de texto. - A razón é simples: o LyX basea-se no LaTeX para compor o texto impreso, - e tal como o LaTeX, o LyX foca-se no contexto da sua escrita – -\emph on -o que -\emph default - está a escreber, deixando ao computador ocupar-se da aparéncia do texto. -\end_layout - -\begin_layout Section -Navegando pola documentación -\end_layout - -\begin_layout Standard -Para facilitar a resposta ás suas perguntas e a descrición de todas as funcións - do LyX, dividiu-se a documentación en vários ficheiros diferentes. - Cada cal con un propósito concreto, que se verá posteriormente. - Mais antes de ollar os outros ficheiros, é preferíbel ler este documento - cuidadosamente xa que contén moita información útil e comentários que poden - lle aforrar algun tempo. -\end_layout - -\begin_layout Standard -Ainda que o LyX xa pasou a versión 1.0, parte da documentación pode estar - incompleta ou ultrapasada. - Como o resto do LyX, os manuais son o traballo dun grupo de voluntários - que teñen -\begin_inset Quotes eld -\end_inset - -ocupacións reais -\begin_inset Quotes erd -\end_inset - -, famílias, pratos para lavar, lixo para recoller, etc., etc., etc. - Facemos o posíbel para manter os manuais a ponto, mais nen sempre o conseguimos. - (Se quer axudar a remediar esta situación, asegure-se de ler o capítulo - -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:Contrib" - -\end_inset - -, alén do restante deste documento.) -\end_layout - -\begin_layout Standard -Un outro favor que nos pode facer é avisar-nos se calquer cousa nestes manuais - lle confundir, non estiver claro, ou estiver errado. - Pode contactar cos actuais responsábeis pola documentación enviando un - correo electrónico a -\begin_inset CommandInset href -LatexCommand href -target "lyx-docs@lists.lyx.org" -type "mailto:" - -\end_inset - -. - Se lle xurde algunha pergunta sobre o LyX a cal non dá atopado resposta - nos manuais, pode achar axuda na lista de correos de usuários en -\begin_inset CommandInset href -LatexCommand href -target "lyx-user@lists.lyx.org" -type "mailto:" - -\end_inset - -. -\end_layout - -\begin_layout Subsection -O Formato dos Manuais -\end_layout - -\begin_layout Standard -Os manuais poden-se ler directamente no LyX, ou imprimi-los e le-los en - papel. - Se está a ler directamente no monitor debe ter en conta que ha algunhas - pequenas diferenzas coa versión impresa. - Primeiro, o título aparece apenas no início do documento e non formatado - separadamente nunha páxina como nalgunhas versións impresas. - O índice e as notas de rodapé non están visíbeis nun princípio. - As notas de rodapé, como esta -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Esta é unha nota de rodapé -\end_layout - -\end_inset - -, poden-se ler clicando sobre elas co botón esquerdo do rato. - Canto a táboa de contidos pode ben clicar na caixa cincenta que ha no início - do documento e que di xustamente táboa de contidos, ou clicando no menu - Navegar. - (Probe!) -\end_layout - -\begin_layout Standard -No manual impreso as referéncias cruzadas mostran os números correspondentes - ao capítulo, sección, subsección etc., referenciados. - Lendo directamente no LyX porén, as referéncias aparecen nunha caixa cincenta - como esta: -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:Contrib" - -\end_inset - -. - (Na versión impresa non se verá a caixa, tan só un número.) Ao clicar nesa - caixa co botón esquerdo do rato abre-se un diálogo que contén todas as - referéncias que ha no documento, neste caso só ha unha referéncia -\begin_inset Quotes eld -\end_inset - -chp:Contrib -\begin_inset Quotes erd -\end_inset - -. - Se no diálogo preme o botón -\begin_inset Quotes eld -\end_inset - -Ir á etiqueta -\begin_inset Quotes erd -\end_inset - - o LyX saltará a etiqueta correspondente á referéncia. - Outra forma de facer o salto é clicando na referéncia co botón direito - do rato. - Pode-se voltar ao lugar de orixe dixitando -\family sans -Crtl-< -\family default - (Que significa -\begin_inset Quotes eld -\end_inset - - -\family sans -Crtl-< -\family default - -\begin_inset Quotes erd -\end_inset - - ? Verá-se mais adiante.) -\end_layout - -\begin_layout Standard -Unha vez esclarecidas algunhas diferenzas importantes entre a versión impresa - e a electrónica deste ficheiro, pasamos a falar do formato deste documento. - -\end_layout - -\begin_layout Standard -Notará que as veces se usan fontes diferentes da padrón, estas mudanzas - de fonte facilitan a leitura ao resaltar unha determinada cadea escrita, - e ademais cada estilo de fonte ten o seu significado: -\end_layout - -\begin_layout Itemize - -\emph on -Enfatizado -\emph default - usa-se para dar énfase en xeral, argumentos xenéricos, títulos de libros, - nomes de seccións doutros manuais, e notas dos autores; -\end_layout - -\begin_layout Itemize - -\family typewriter -Fonte -\begin_inset space ~ -\end_inset - -Fixa -\family default - usa-se para programas e nomes de ficheiros, código LaTeX, e códigos e funcións - LyX; -\end_layout - -\begin_layout Itemize - -\family sans -Sans -\begin_inset space ~ -\end_inset - -Serif -\family default - usa-se para menus, botóns, xanelas suspensas e nomes de teclas; -\end_layout - -\begin_layout Itemize - -\noun on -Versalete -\noun default - usa-se para nomes próprios. -\end_layout - -\begin_layout Standard -Nas combinacións de teclas, ex. - atallos de teclado, usa-se a seguinte convención de prefixo: -\end_layout - -\begin_layout Itemize -\begin_inset Quotes eld -\end_inset - - -\family sans -C- -\family default - -\begin_inset Quotes erd -\end_inset - - ou -\begin_inset Quotes eld -\end_inset - -Crtl- -\begin_inset Quotes erd -\end_inset - -: indica a tecla -\family sans -Control -\family default -; -\end_layout - -\begin_layout Itemize -\begin_inset Quotes eld -\end_inset - - -\family sans -S- -\family default - -\begin_inset Quotes erd -\end_inset - -: indica a tecla -\family sans -Shift -\family default -; -\end_layout - -\begin_layout Itemize -\begin_inset Quotes eld -\end_inset - - -\family sans -M- -\family default - -\begin_inset Quotes erd -\end_inset - -: indica a tecla -\family sans -Meta -\family default - que en moitos teclados será a tecla -\family sans -Alt -\family default -; -\end_layout - -\begin_layout Standard -Por outra banda fará-se referéncia tamén ás teclas alfanuméricas, e as non - alfanuméricas: -\end_layout - -\begin_layout Itemize -\begin_inset Quotes eld -\end_inset - - -\family sans -F1 -\family default - -\begin_inset Quotes erd -\end_inset - - \SpecialChar \ldots{} - -\begin_inset Quotes eld -\end_inset - - -\family sans -F12 -\family default - -\begin_inset Quotes erd -\end_inset - -: son as teclas de función; -\end_layout - -\begin_layout Itemize -\begin_inset Quotes eld -\end_inset - - -\family sans -Esc -\family default - -\begin_inset Quotes erd -\end_inset - -: é a tecla de escape; -\end_layout - -\begin_layout Itemize -\begin_inset Quotes eld -\end_inset - -Esquerda -\begin_inset Quotes erd -\end_inset - -, -\begin_inset Quotes eld -\end_inset - - -\family sans -Direita -\family default - -\begin_inset Quotes erd -\end_inset - -, -\begin_inset Quotes eld -\end_inset - - -\family sans -Superior -\family default - -\begin_inset Quotes erd -\end_inset - -, -\begin_inset Quotes eld -\end_inset - - -\family sans -Inferior -\family default - -\begin_inset Quotes erd -\end_inset - -: son as teclas que moven o cursor, e que veñen usualmente denotadas con - unha frecha que aponta para a dirección correspondente; -\end_layout - -\begin_layout Itemize - -\family sans -\begin_inset Quotes eld -\end_inset - -Insert -\family default - -\begin_inset Quotes erd -\end_inset - -, -\begin_inset Quotes eld -\end_inset - - -\family sans -Supr -\family default - -\begin_inset Quotes erd -\end_inset - -, -\begin_inset Quotes eld -\end_inset - - -\family sans -Inicio -\family default - -\begin_inset Quotes erd -\end_inset - -, -\begin_inset Quotes eld -\end_inset - - -\family sans -Fin -\family default - -\begin_inset Quotes erd -\end_inset - -, -\begin_inset Quotes eld -\end_inset - - -\family sans -RePág -\family default - -\begin_inset Quotes erd -\end_inset - -, -\begin_inset Quotes eld -\end_inset - - -\family sans -AvPág -\family default - -\begin_inset Quotes erd -\end_inset - -: son as 6 teclas que aparecen normalmente sobre as teclas de -\emph on -cursor -\emph default -. - -\end_layout - -\begin_layout Itemize -\begin_inset Quotes eld -\end_inset - - -\family sans -Return -\family default - -\begin_inset Quotes erd -\end_inset - - e -\begin_inset Quotes eld -\end_inset - - -\family sans -Enter -\family default - -\begin_inset Quotes erd -\end_inset - -: ambas referen-se á mesma tecla, a correspondente ao retorno de carro. - Nalguns teclados esta tecla aparece como -\begin_inset Quotes eld -\end_inset - -Return -\begin_inset Quotes erd -\end_inset - -, noutros como -\begin_inset Quotes eld -\end_inset - -Enter -\begin_inset Quotes erd -\end_inset - -, noutros onde o que aparece é unha frecha en ángulo, e mesmo ha teclados - onde ha duas teclas diferentes. - O LyX trata todo como a mesma tecla, e usará-se -\family sans -Return -\family default - e -\family sans -Enter -\family default -, sen distinción. -\end_layout - -\begin_layout Standard -As distintas combinacións de teclas que se usan en LyX son descritas no - capítulo -\begin_inset Quotes eld -\end_inset - - -\emph on -Funcións ligábeis -\emph default - -\begin_inset Quotes erd -\end_inset - - , do -\begin_inset Quotes eld -\end_inset - - -\emph on -Manual de Referéncia -\emph default - -\begin_inset Quotes erd -\end_inset - - (o ficheiro -\family typewriter -Reference.lyx -\family default -). - -\end_layout - -\begin_layout Subsection -Os manuais -\end_layout - -\begin_layout Standard -Na seguinte lista descrebe-se o contido dos manuais aos que se acede desde - a -\family typewriter -Axuda -\family default - : -\end_layout - -\begin_layout Description - -\emph on -Introdución -\end_layout - -\begin_deeper -\begin_layout Standard -Este ficheiro. -\end_layout - -\end_deeper -\begin_layout Description - -\emph on -Tutorial -\end_layout - -\begin_deeper -\begin_layout Standard -Se esta a iniciar-se no LyX, e non coñece LaTeX, debe ler antes que nada - este tutorial. - Se pensa que LaTeX é o material co que se elaboran os preservativos, entón - cumpre-lle reler o capítulo -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:A-filosofia-do-LyX" - -\end_inset - - desta -\emph on -Introdución -\emph default -, e despois pasar ao tutorial. - E ben posíbel que despois de ler o -\emph on -Tutorial -\emph default - continue a pensar que LaTeX é algunha substáncia elástica, mais saberá - como usar LyX. -\end_layout - -\begin_layout Standard -Se -\emph on -coñece -\emph default - LaTeX, debe tamén ler o -\emph on -Tutorial -\emph default -, mais comezando pola sección -\begin_inset Quotes eld -\end_inset - - -\emph on -LyX para usuários de LaTeX -\emph default - -\begin_inset Quotes erd -\end_inset - - (unha ollada ao resto da documentación tampouco manca). -\end_layout - -\begin_layout Standard -Se en calquer momento non sabe moi ben como facer algo en LyX, probe a ler - o Tutorial antes de mergullar-se en calquer dos outros manuais, é probábel - ser-lle de axuda. -\end_layout - -\end_deeper -\begin_layout Description - -\emph on -Guia -\begin_inset space ~ -\end_inset - - -\series bold -do -\begin_inset space ~ -\end_inset - -Usuário -\series default -\emph default - -\end_layout - -\begin_deeper -\begin_layout Standard -É a documentación primária. - Tenta cobrir -\emph on -a maioria -\emph default - das operacións básicas e recursos disponíbeis do LyX. - O manual principal asume que o leitor ten alguns coñecimentos de LaTeX - ou que xa leu o -\emph on -Tutorial. -\end_layout - -\end_deeper -\begin_layout Description - -\emph on -Funcións -\begin_inset space ~ -\end_inset - -Avanzadas -\end_layout - -\begin_deeper -\begin_layout Standard -Ampliación do -\emph on -Guia do Usuário -\emph default -. - Documenta como utilizar comandos LaTeX dentro do LyX, formatos adicionais, - e funcións de edición de propósito específico, incluindo alguns dos (estraños - mais elegantes) truques dos mestres de LaTeX. -\end_layout - -\end_deeper -\begin_layout Description - -\emph on -Personalización -\end_layout - -\begin_deeper -\begin_layout Standard -Unha descrición de características avanzadas do LyX, incluindo como personalizar - o comportamento; composición de teclas, internacionalización, e ficheiros - de configuración. - Nen pense e achegar-se a este documento sen ler previamente o -\emph on -Tutorial -\emph default -. -\end_layout - -\end_deeper -\begin_layout Description -FAQ -\end_layout - -\begin_deeper -\begin_layout Standard -Conxunto ordenado de respostas a perguntas frecuentes sobre o LyX. -\end_layout - -\end_deeper -\begin_layout Description -Táboa -\begin_inset space ~ -\end_inset - -de -\begin_inset space ~ -\end_inset - -contidos -\end_layout - -\begin_deeper -\begin_layout Standard -Neste documento recollen-se os índices dos seguintes manuais: -\emph on -Introdución, FAQ, Tutorial, Guia de usuário, Funcións avanzadas -\emph default - e -\emph on -Personalización -\emph default -. -\end_layout - -\end_deeper -\begin_layout Description - -\emph on -Configuración -\begin_inset space ~ -\end_inset - -do -\begin_inset space ~ -\end_inset - -LaTeX -\end_layout - -\begin_deeper -\begin_layout Standard -Ao instalar-se o LyX pesquisa no seu sistema, e armacena o que aprendeu - sobre como está configurado o LaTeX no seu computador. - Pode consultar esta información en calquer momento, pero é especialmente - recomendábel se pensa que falta algun pacote de LaTeX. -\end_layout - -\end_deeper -\begin_layout Standard -Ademais deste manuais existen outros dous, que se poden achar na directória - de documentación do LyX. - Estes manuais son: -\end_layout - -\begin_layout Description - -\emph on -Manual -\begin_inset space ~ -\end_inset - - -\series bold -de -\begin_inset space ~ -\end_inset - -Referéncia -\series default -\emph default - -\end_layout - -\begin_deeper -\begin_layout Standard -( -\family typewriter -Reference.lyx -\family default -) Este manual conterá, cando este rematado, unha descrición exaustiva e - detallada das funcións do LyX, mais sen as úteis dicas de uso encontradas - no -\emph on -Guia do Usuário -\emph default - ou noutros manuais. - -\end_layout - -\end_deeper -\begin_layout Standard -Os manuais fan referéncia uns aos outros, cando é necesário. - Por exemplo, o -\emph on -Guia do Usuário -\emph default - contén -\emph on -algunha -\emph default - información sobre instalación e personalización, mais encamiña ao leitor - ao manual de -\emph on -Personalización -\emph default - para obter mais información. -\end_layout - -\begin_layout Standard -Salientamos novamente un ponto importante: -\end_layout - -\begin_layout Standard -\begin_inset VSpace 0.51cm -\end_inset - - -\end_layout - -\begin_layout Standard -\align center -Se é novato nisto do LyX lea o -\emph on -Tutorial. - -\emph default - Xa! -\end_layout - -\begin_layout Standard -\begin_inset VSpace 0.51cm -\end_inset - - -\end_layout - -\begin_layout Standard -Senón pode frustrar-se inecesariamente. - O LyX fai todo o que precisa dun procesador de textos, mais ten un xeito - próprio de o facer. -\end_layout - -\begin_layout Subsection -As traducións dos manuais -\end_layout - -\begin_layout Standard -Os manuais son ficheiros lyx que fican na directória -\family typewriter -\size small -.../share/lyx/doc -\family default -\size default - -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -En linux fican normalmente en -\family typewriter -\size small -/usr/share/lyx/doc -\family default -\size default - ou -\family typewriter -\size small -/usr/local/share/lyx/doc. - -\family default - En MSWindows en -\family typewriter -C: -\backslash -Archivos de programa -\backslash -LyX -\backslash -Resources -\backslash -doc -\family default -\size default - ou similar. -\end_layout - -\end_inset - -. - Nesta directória armacenan-se os manuais orixinais en inglés, e as diversas - traducións que existen. - Asi a introdución que está a ler é o ficheiro -\family typewriter -intro.lyx -\family default -, o orixinal é o ficheiro -\family typewriter -intro.lyx -\family default -, e as versións portuguesa, española e francesa son respectivamente -\family typewriter -pt_intro.lyx, es_intro.lyx -\family default - e -\family typewriter -fr_intro.lyx -\family default -. - Se olla na dita directória verá que non todos os manuais están traducidos - a todas as línguas. - Cando falta a tradución dalgun manual, ao aceder a ese manual mediante - o menu de -\family typewriter -Axuda -\family default - aparece o manual orixinal, i.e. - en inglés. - Se preferir lé-lo noutra língua, que teña tradución, non ten mais que abrir - o ficheiro correspondente no menu -\family typewriter -Ficheiro -\family sans -\SpecialChar \menuseparator - -\family typewriter -Abrir. -\end_layout - -\begin_layout Standard -Os manuais traducidos ao galego fan referéncia aos menus en galego, e os - manuais noutras línguas fan loxicamente referéncia aos menus na língua - correspondente. - Polo momento só ha traducidos 2 manuais ao galego, este que está a ler - e o -\emph on -Tutorial -\emph default -, portanto terá que ler os outros manuais noutras línguas. - As veces as traducións dos menus son evidentes ( File, Ficheiro, Fichero, - Fichier, etc), mais en moitos outros casos non é tan fácil, e pode resultar - confuso ler un manual nunha língua, que fai reféncia aos menus nesa língua, - entanto o programa usado usa outra língua, ex. - ler o manual en inglés no LyX cos menus en galego. - Neses casos resulta conveniente poder executar o programa na mesma língua - do manual. -\end_layout - -\begin_layout Standard -Pode lanzar o LyX en distintas línguas utilizando a variábel de entorno - axeitada, que dependerá do seu sistema. - As variábeis mais utilizadas son: LANG, LC_ALL, LANGUAGE, KDE_LANG. - Asi para lanzar o programa em inglés dos EUA execute o seguinte comando - nun terminal -\end_layout - -\begin_layout Standard - -\family typewriter -LANG=en_US lyx -\family default - (ou -\family typewriter -LC_ALL=en_US lyx -\family default -, ou -\family typewriter -KDE_LANG=en_US -\family default -) -\end_layout - -\begin_layout Standard -\noindent -e se preferir en francés, use: -\end_layout - -\begin_layout Standard - -\family typewriter -LANG=fr_FR lyx -\family default - (ou -\family typewriter -LC_ALL=fr_FR lyx -\family default -, ou -\family typewriter -KDE_LANG=fr_FR -\family default -) -\end_layout - -\begin_layout Section -Axudando ao proxecto LyX -\begin_inset CommandInset label -LatexCommand label -name "sec:Contrib" - -\end_inset - - -\end_layout - -\begin_layout Subsection -O programa -\end_layout - -\begin_layout Standard -O LyX é un programa bastante grande, escrito maiormente en C++, que non - está libre de erros, sendo sempre ben-vidas as melloras no código fonte. -\end_layout - -\begin_layout Subsubsection -Informando de erros de código -\end_layout - -\begin_layout Standard -Ao empregar o LyX pode bater con comportamentos que considere defeituosos. - Pode contribuir a mellorar a cualidade do programa informando deses comportamen -tos. - De entre tais comportamentos defeituosos, os máis perigosos, se ben improbábeis -, son os que levan a que o programa se feche inesperadamente, sen lle pedir - opinión ao usuário. - -\color none - Outros defeitos que a equipa do LyX considera importantes son os relacionados - coa interface de usuário; asi son especialmente úteis as indicacións de - partes da interface do LyX que acha confusas ou pouco claras. -\end_layout - -\begin_layout Standard -LyX ten un sistema de seguimento de erros, ao cal se pode aceder en -\family typewriter -LyX bug tracker -\begin_inset Flex URL -status collapsed - -\begin_layout Plain Layout - -http://www.lyx.org/trac/wiki/BugTrackerHome -\end_layout - -\end_inset - - -\family default -. - Antes de avisar de calquer erro deberia consultar o dito sistema, non vaia - ser que xa exista un informe prévio do erro. - No sistema de seguimento de erros, ademais de facer novos informes de erros, - poden-se facer comentários nos informes abertos por calquer outra persoa. - Ademais é posíbel informar dun erro enviando un correo electrónico á lista - de desenvolvimento do proxecto: -\begin_inset CommandInset href -LatexCommand href -target "lyx-devel@lists.lyx.org" -type "mailto:" - -\end_inset - -. - As mensaxes enviadas a esta lista, como as das outras listas do proxecto, - armacenan-se nun arquivo público ao cal se pode aceder desde o site do - proxecto LyX, -\family typewriter -LyX website -\begin_inset Flex URL -status collapsed - -\begin_layout Plain Layout - -http://www.lyx.org/ -\end_layout - -\end_inset - - -\family default -. -\end_layout - -\begin_layout Standard -Un bon (útil) informe de erros debe incluir como mínimo a versión de LyX - onde se dá o problema. - Preferindo-se descricións precisas e detalladas, pois canto máis tempo - precisen os desenvolvedores para dar co miolo do problema, menos tempo - teñen para mellorar o programa. -\end_layout - -\begin_layout Standard -Mencione o sistema operativo, incluindo a versión, no cal está a traballar, - e as versións das librarias que están instaladas no sistema, e se foren - relevantes ao erro, as versións dos programas externos que usa o LyX. -\end_layout - -\begin_layout Standard -Se é un problema de compilación ou configuración, inclua no informe o ficheiro - -\family typewriter -config.log -\family default -, e non se esqueza de especificar o compilador, versión incluída, que está - a empregar. -\end_layout - -\begin_layout Standard -Se encontra algunha operación, ou conxunto de operación, que leven ao LyX - se fechar sen orde expresa do usuário, agradeceríamos-lle que se tomara - a moléstia de obter un informe automático detallado do problema. - Para isto ten utilizar un executábel depurábel (non-stripped) do LyX. - O executábel que se obtén ao compilar o LyX desde as fontes é por defeito - depurábel, entanto que os que os que veñen cos pacotes binários non permiten - depuración (stripped). - Para obter o informe automático execute o LyX desde o depurador gdb, dixitando - algo asi como: -\begin_inset Quotes eld -\end_inset - - -\family typewriter -\size small -gdb /home/usuario/lyx-1.6.x/src/lyx -\family default -\size default - -\begin_inset Quotes erd -\end_inset - - e logo -\begin_inset Quotes eld -\end_inset - - -\family typewriter -\size small -run -\family default -\size default - -\begin_inset Quotes erd -\end_inset - -. - Repita as operacións precisas para que o LyX se colge e volte a gdb. - Dixite -\begin_inset Quotes eld -\end_inset - - -\family typewriter -\size small -bt -\family default -\size default - -\begin_inset Quotes erd -\end_inset - - para producir o informe automático e inclua-o no seu informe manual sobre - o erro. -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -se quer ser exaustivo, use os comandos -\begin_inset Quotes eld -\end_inset - - -\family typewriter -info locals -\family default - -\begin_inset Quotes erd -\end_inset - - e -\begin_inset Quotes eld -\end_inset - - -\family typewriter -up -\family default - -\begin_inset Quotes erd -\end_inset - - para incluir os valores das variábeis locais. -\end_layout - -\end_inset - - Se é reproducíbel, é mais importante unha descrición detallada dun xeito - de reproducir o erro que o informe automático, xa que os desenvolvedores - poden xerar o seu próprio informe. - Porén, se o erro non é facilmente reproducíbel enviar un informe automático - é fundamental, xa que pode ser que sexa o único informe automático con - que contén os desenvolvedores. -\end_layout - -\begin_layout Subsubsection -Mellorando o código -\end_layout - -\begin_layout Standard -Se fixo algunha mudanza do código fonte que pensa pudera tornar-se parte - do LyX, porque corrixe algun erro ou introduz algunha funcionalidade, envie-a - como un ficheiro diff (en formato unificado) á lista de desenvolvimento - referida anteriormente, xunto con un breve informe da mudanza (change log) - e unha descrición do que fai o seu parche. - -\end_layout - -\begin_layout Subsection -A documentación -\end_layout - -\begin_layout Standard -Se ben é certo que a documentación de LyX é extensa, tamén o é que o programa - está a ser desenvolvido constantemente, e cada nova versión engade novas - funcionalidades. - Non é portanto impensábel pensar que algun manual precise melloras. - Esta sección descrebe que facer en caso de achar un erro, ou querer facer - suxestións para mellorar a documentación. -\end_layout - -\begin_layout Subsubsection -Erros nos manuais -\end_layout - -\begin_layout Standard -Se acha un problema na documentación envie unha mensaxe, en inglés, á lista - de correos -\begin_inset CommandInset href -LatexCommand href -target "lyx-docs@lists.lyx.org" -type "mailto:" - -\end_inset - -. - A equipa de documentación fará as correccións necesárias. - -\end_layout - -\begin_layout Subsubsection -Xuntar-se á equipa de documentación. -\end_layout - -\begin_layout Standard -O proxecto de documentación do LyX, como calquer outra parte do proxecto - LyX, aceita axuda en calquer momento! Se está interesado en contribuir - a el, necesita realizar as seguintes tarefas -\emph on -primeiramente -\emph default -: -\end_layout - -\begin_layout Enumerate -Obteña o código fonte de LyX mais recente -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Os mais aventureiros pode obter a última documentación, contida no módulo -\lang english - -\family typewriter -\lang galician -lyxdoc, -\family default - do repositório CVS de LyX, ao cal se pode aceder anonimamente. -\end_layout - -\end_inset - -, e descompacte-o. - Achará unha directória dentro da árbore principal chamada -\family typewriter -lib/doc/ -\family default -. -\end_layout - -\begin_layout Enumerate -A seguir lea o -\emph on -User's Guide -\emph default - (Guia de usuário) e o -\emph on -Tutorial -\emph default -. - -\end_layout - -\begin_deeper -\begin_layout Standard -A razón destas leituras é dar-lle ideas. - O -\emph on -Tutorial -\emph default - e o -\emph on -User's Guide -\emph default - serán probabelmente os manuais mais actualizados. - Con unha leitura atenta deles fará-se unha idea do estilo de manuais que - quer facer a equipa de documentación, tanto no que ser refere ao contido - como a sua apresentación. -\end_layout - -\end_deeper -\begin_layout Enumerate -Contacte a equipa en: -\end_layout - -\begin_deeper -\begin_layout Standard -\begin_inset CommandInset href -LatexCommand href -target "lyx-docs@lists.lyx.org" -type "mailto:" - -\end_inset - - -\end_layout - -\begin_layout Standard -para debater as mudanzas que pretende introducir, coñecer outras opinións - sobre elas, entrando nun proceso construtivo que permitan unha mellora - consensuada da documentación. - -\end_layout - -\end_deeper -\begin_layout Standard -As mudanzas que pode suxerir poden ir desde esclarecer alguns treitos do - texto, até modificar a estrutura xeral da documentación. - Calquer mellora é ben recebida. -\end_layout - -\begin_layout Subsubsection -A tradución -\end_layout - -\begin_layout Standard -[Nota do T.] Por último pode contribuir axudando na tradución ao galego da - documentación, que polo momento está por traducir na sua maior parte, e - do programa. - Pode por-se en contacto co tradutor, ben no enderezo que aparece no início - do documento, ben no proxecto de tradución ao galego de GNU/Linux, -\family typewriter -Proxecto Trasno -\begin_inset Flex URL -status collapsed - -\begin_layout Plain Layout - -http://www.trasno.net -\end_layout - -\end_inset - -. -\end_layout - -\end_body -\end_document +#LyX 2.0.0svn created this file. For more info see http://www.lyx.org/ +\lyxformat 404 +\begin_document +\begin_header +\textclass article +\begin_preamble +% DO NOT ALTER THIS PREAMBLE!!! +% +%This preamble is designed to ensure that the document prints +% out as advertised. If you mess with this preamble, +% parts of the document may not print out as expected. If you +% have problems LaTeXing this file, please contact +% the documentation team +% email: lyx-docs@lists.lyx.org + +\usepackage{ifpdf} % part of the hyperref bundle +\ifpdf % if pdflatex is used + + % set fonts for nicer pdf view + \IfFileExists{lmodern.sty}{\usepackage{lmodern}}{} + +\fi % end if pdflatex is used + +% the pages of the TOC is numbered roman +% and a pdf-bookmark for the TOC is added +\pagenumbering{Roman} +\let\myTOC\tableofcontents +\renewcommand\tableofcontents{% + \pdfbookmark[1]{\contentsname}{} + \myTOC + \cleardoublepage + \pagenumbering{arabic} } + +% redefine the \LyX macro for PDF bookmarks +\def\LyX{\texorpdfstring{% + L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@} + {LyX}} +\end_preamble +\use_default_options false +\maintain_unincluded_children false +\language galician +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_xetex false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize 12 +\spacing single +\use_hyperref true +\pdf_title "Introdución ao LyX" +\pdf_author "LyX team, tradución: Ramón Flores" +\pdf_subject "LyX-documentation Introdución" +\pdf_keywords "LyX, documentation" +\pdf_bookmarks true +\pdf_bookmarksnumbered true +\pdf_bookmarksopen true +\pdf_bookmarksopenlevel 2 +\pdf_breaklinks false +\pdf_pdfborder false +\pdf_colorlinks true +\pdf_backref false +\pdf_pdfusetitle false +\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue, pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false" +\papersize a4paper +\use_geometry false +\use_amsmath 0 +\use_esint 0 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 0 +\index Índice +\shortcut idx +\color #008000 +\end_index +\leftmargin 2cm +\topmargin 2cm +\rightmargin 2cm +\bottommargin 2cm +\secnumdepth 2 +\tocdepth 2 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Title +Introdución ao LyX +\end_layout + +\begin_layout Author +pola equipa de LyX +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Se quer facer algun comentário ou achou algun erro, agradeceremo-lle no-lo + comunique na lista de correo, en inglés, do proxecto de documentación do + LyX +\begin_inset CommandInset href +LatexCommand href +target "lyx-docs@lists.lyx.org" +type "mailto:" + +\end_inset + +. +\end_layout + +\end_inset + + +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout + +\size normal +tradución: Ramón Flores +\begin_inset CommandInset href +LatexCommand href +target "fa2ramon@usc.es" +type "mailto:" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\end_layout + +\begin_layout Section +A filosofia do LyX +\begin_inset CommandInset label +LatexCommand label +name "sec:A-filosofia-do-LyX" + +\end_inset + + +\end_layout + +\begin_layout Quote +\begin_inset Quotes eld +\end_inset + +Tio Cosmo, por que lle chaman a isto procesador de texto? +\begin_inset Quotes erd +\end_inset + + +\end_layout + +\begin_layout Quote +\begin_inset Quotes eld +\end_inset + +É ben sinxelo, Skyler. + Xa tes visto o que os procesadores de comida fan coa comida, non si? +\begin_inset Quotes erd +\end_inset + + +\end_layout + +\begin_layout Quote +\begin_inset space \hfill{} +\end_inset + +— Jeff MacNelly en +\begin_inset Quotes eld +\end_inset + +Shoe +\begin_inset Quotes erd +\end_inset + + +\end_layout + +\begin_layout Subsection +Que é o LyX? +\end_layout + +\begin_layout Standard +LyX é un sistema de preparación de documentos, especialmente recomendábel + para elaborar textos técnicos e científicos complexos, con fórmulas, referéncia +s cruzadas, bibliografias, índices, \SpecialChar \ldots{} + En xeral é moi bon para documentos, + de calquer longura, nos que se requeiran as habilidades de procesado usuais: + seccionado e paxinación automáticos, corrección ortográfica, etc. + Alguns exemplos nos cais se usa o LyX poden dar unha boa idea da sua utilidade: + informes, relatórios, teses e tesiñas, cartas comerciais, apontamentos, + discursos, actas de congresos, documentación de software, libros (sobre + PostgreSQL, sensores remotos, cifrado, romances, poesia, e mesmo algun + libro para nenos), artigos científicos, roteiros de teatro e de cinema, + propostas de negócios \SpecialChar \ldots{} + +\end_layout + +\begin_layout Standard +É tamén posíbel utilizá-lo para escreber cartas persoais, mais ha programas + mais simples para iso. + E desde logo non é a mellor opción para elaborar anúncios, cartaces, ou + panfletos (explicara-se mais adiante o porqué), ainda que con un pouco + de esforzo sexa posíbel facé-los. + +\end_layout + +\begin_layout Standard +O LyX é un programa que utiliza unha aproximación moderna para a escrita + de documentos por computador, rompendo coa tradición obsoleta baseada na + máquina de escreber. + Foi deseñado para autores que queren un resultado profisional, con rapidez + e con un mínimo de esforzo sen se tornaren especialistas en tipografia. + O traballo tipográfico deixa-se-lle ao computador, de maneira que o autor + pode concentrar-se no contido do que está a escreber, non na forma. +\end_layout + +\begin_layout Standard +Parte do inicial desafio de utilizar LyX ven da mudanza de mentalidade que + debe facer o usuário. + Ha algun tempo, todo o que o usuário médio tiña para elaborar documentos + era a máquina de escreber. + Para ultrapasar as limitacións que esta tiña, idearon-se truques que se + espallaron entre os usuários, e que persisten mesmo na era dos computadores, + máquinas estas moito mais potentes que as primeiras. + Subliñar, que é pouco mais do que dixitar o carácter +\begin_inset Quotes eld +\end_inset + +_ +\begin_inset Quotes erd +\end_inset + +, tornou-se un xeito de resaltar o texto. + Cumpria coñecer por adiantado o tamaño das colunas, e ir axustando con + tabulacións e espazos, para elaborar unha táboa xeitosa. + O mesmo se aplicaba ás datas nas cartas, axustadas á direita, e en xeral + a calquer texto con xustificación direita. + A hifenación no fin dunha liña requeria ollo clínico e moita perspicácia. + +\end_layout + +\begin_layout Standard +Por outras palabras, os usuários de máquinas de escreber tiñan que se preocupar + por multitude de pequenos detalles, para obter un resultado satisfactório. + Infelizmente esta mentalidade foi herdada pola maioria dos procesadores + de texto, de maneira que ainda utilizan a tecla de tabulado para engadir + espazos en branco, ou obrigan ao usuário a se preocupar de en que parte + exacta da páxina vai ir algo. + Para resaltar o texto deixan que usuário mude de fonte, tal e como se trocaba + de roda nas máquinas de escreber. + Esta é a filosofia subxacente nun procesador WYSIWYG: +\begin_inset Quotes eld +\end_inset + +What You See Is What You Get +\begin_inset Quotes erd +\end_inset + + (o que vé e o que obtén), que en moitos casos torna-se en +\begin_inset Quotes eld +\end_inset + +What You See Is All You Get +\begin_inset Quotes erd +\end_inset + + (o que vé é todo o que obtén). +\end_layout + +\begin_layout Standard +No LyX, a diferenza dun procesador de textos ordinário, o usuário non ten + que se preocupar de como conseguir que un determinado carácter vaia nalgun + lugar determinado, simplesmente di-lle ao LyX que é o que quer facer, e + o programa encarrega-se do resto, seguindo un conxunto de regras chamadas + un +\emph on +estilo +\emph default +. +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Para ser xustos, cumpre recoñecermos que hoxe en dia os procesadores de + texto incluen algun tipo de follas de estilo con unha filosofia similar, + mais menos potente, ao do LyX, porén na prática apenas son utilizadas. +\end_layout + +\end_inset + + Vexamos un pequeno exemplo: +\end_layout + +\begin_layout Standard +Supoñamos que vai escreber un relatório, que quer iniciar con unha sección + chamada +\begin_inset Quotes eld +\end_inset + +Introdución +\begin_inset Quotes erd +\end_inset + +. + Comeza entón indo ao menu do seu procesador para trocar o tamaño da fonte, + escollendo unha maior da que aparece predefinida para o texto. + A seguir activa o botón de negrito, e despois escrebe, +\begin_inset Quotes eld +\end_inset + +1. +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +Introdución +\begin_inset Quotes erd +\end_inset + +. + Obviamente, se mais tarde decidir que esta sección vai mellor noutro lugar, + ou que seria bon inserir unha outra sección antes desta, terá que renumerar + todo, inclusivamente no índice. +\end_layout + +\begin_layout Standard +No LyX, vai a lista de estilos, un menu despregueábel que se acha á esquerda + da barra de botóns, selecciona +\family sans +Sección +\family default +, e escrebe +\begin_inset Quotes eld +\end_inset + +Introdución +\begin_inset Quotes erd +\end_inset + +. +\end_layout + +\begin_layout Standard +Isto é canto precisa. + Se posteriormente trocar de lugar a sección, ela será renumerada automaticament +e — en calquer lado. + E se nalgun momento fixo unha referéncia á sección correctamente (inserindo + unha etiqueta), o LyX actualizará automaticamente as referéncias en todo + o documento, sen ter que dixitar un simples número. +\end_layout + +\begin_layout Standard +Outro tema importante é o da consisténcia do texto. + Dias despois de escreber o relatório decide incluir unha nova sección, + a Sección +\begin_inset space ~ +\end_inset + +4. + Pon-se a escrebé-la, mais engana-se en canto a fonte que estaba a utilizar + para os títulos da sección, e no canto de empregar unha fonte 18 +\begin_inset space \thinspace{} +\end_inset + +pt en negrito usa outra de 16 +\begin_inset space \thinspace{} +\end_inset + +pt, polo que o título da Sección +\begin_inset space ~ +\end_inset + +4 vai ir con unha fonte, semellante mais non igual, á que usou para nas + seccións anteriores. + Este problema non existe no LyX, que toma conta de todos eses detalles. + Ao fin e ao cabo, son nesas cousas nas que os computadores son imbatíbeis. +\end_layout + +\begin_layout Standard +Outro exemplo, supoña que está a facer unha lista. + Noutro procesador de texto unha lista e apenas unha série de tabuladores + e saltos de liña. + O usuário precisa coñecer, ou decidir, onde colocar a etiqueta para cada + elemento da lista, que tipo de etiqueta debe ser, cantos liñas en branco + inserir entre cada elemento, etc, etc. + Co LyX só ten tomar duas decisións: que tipo de lista é, e que incluir + na lista, só iso. +\end_layout + +\begin_layout Standard +Asi que a idea básica por tras do LyX é: especifique o +\emph on +que +\emph default + quer facer, non +\emph on +como +\emph default + facé-lo. + No canto de +\begin_inset Quotes eld +\end_inset + +o que vé é o que obtén +\begin_inset Quotes erd +\end_inset + +, o modelo LyX é +\begin_inset Quotes eld +\end_inset + +o que vé é o que pretende facer +\begin_inset Quotes erd +\end_inset + + (WYSIWYM - +\series bold +\lang english +W +\series default +hat +\series bold +Y +\series default +ou +\series bold +S +\series default +ee +\series bold +I +\series default +s +\series bold +W +\series default +hat +\series bold +Y +\series default +ou +\series bold +M +\series default +ean +\lang galician +). +\end_layout + +\begin_layout Standard +Esta é a razón pola que o LyX non é bon para elaborar cartaces e anúncios—nese + caso, o usuário quer especificar exactamente onde vai cada cousa, e non + ha unidades funcionais como parágrafos, seccións, etc. + Isto no significa que no LyX falte algunha función fundamental, simplesmente + que non é a ferramenta certa para o traballo —- non se usa un martelo para + apertar un parafuso, non si?. +\end_layout + +\begin_layout Subsection +Diferenzas entre o LyX e outros procesadores de texto +\begin_inset Argument +status collapsed + +\begin_layout Plain Layout +LyX e outros procesadores de texto +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Eis unha lista de cousas que non encontrará no LyX: +\end_layout + +\begin_layout Itemize +A regra do documento +\end_layout + +\begin_layout Itemize +Tabuladores +\end_layout + +\begin_layout Itemize +Espazos en branco extras (i.e. + ao premer +\family sans +Enter +\family default + ou +\family sans +Space +\family default + duas ou máis veces) +\end_layout + +\begin_layout Standard +Os tabuladores e a regra a mostrar a posición das palabras na páxina, non + teñen utilidade no LyX. + É o programa quen se preocupa onde fican os carácteres na páxina, non o + usuário. + Canto aos espazos en branco extras acontece o mesmo; o LyX insere-os cando + é necesário, dependendo do contexto. + Non ser capaz de inserir 2 espazos en branco nunha liña pode resultar irritante + ao princípio, mais terá mais sentido cando comezar a pensar en termos WYSIWYM. +\end_layout + +\begin_layout Standard +Vexamos agora algunhas funcións que existen en LyX, mais que son usadas + dun xeito un pouco diferente ao usual: +\end_layout + +\begin_layout Itemize +Comandos de identación +\end_layout + +\begin_layout Itemize +Quebras de páxina +\end_layout + +\begin_layout Itemize +Espazamento entre liñas (i.e. + espazo simples, espazo duplo, etc.) +\end_layout + +\begin_layout Itemize +Espazos en branco, horizontais e verticais +\end_layout + +\begin_layout Itemize +Fontes e tamaños de fonte +\end_layout + +\begin_layout Itemize +Tipos de letra (negrito, itálico, subliñado, etc.) +\end_layout + +\begin_layout Standard +Se ben é posíbel utilizar tais funcións no LyX, usualmente o usuário non + precisa delas, xa que o próprio programa se ocupa desas cousas en función + do que estexa a facer. + O tipo de fonte e o seu tamaño son escollidas automaticamente para as nas + diferentes partes do documento. + Os parágrafos son identados en función do contexto; de maneira que para + os diferentes tipos de parágrafos terán-se distintas identacións. + Tamén as quebras de páxina son colocadas automaticamente. + E en xeral, o espazo entre liñas, palabras e parágrafos é variábel, calculado + axeitadamente polo LyX. +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +O usuário pode escoller manualmente todos estes parámetros (se ben que para + alguns precise coñecimentos de LaTeX), para todo o documento ou para unha + parte específica. + No +\shape italic +Guia do Usuário +\shape default + pode ver-se como facer. + Porén é recomendábel, cando menos nun princípio, deixar-lle traballar ao + LyX. + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Por último, existen algunhas áreas onde, na nosa opinión, o LyX (e o LaTeX) + ultrapasan moitos procesadores de texto: +\end_layout + +\begin_layout Itemize +Hifenación +\end_layout + +\begin_layout Itemize +Listas de calquer tipo +\end_layout + +\begin_layout Itemize +Fórmulas +\end_layout + +\begin_layout Itemize +Táboas +\end_layout + +\begin_layout Itemize +Referéncias cruzadas +\end_layout + +\begin_layout Standard +Certamente a maioria dos procesadores de texto actuais dan manexado símbolos + matemáticos, táboas e hifenación, e alguns están mesmo a evoluir na dirección + do conceito WYSIWYM. + Mais polo momento son novos nestes eidos, entanto que o LyX está baseado + no sistema de preparación de documentos LaTeX. + Sistema que ten décadas de existéncia, e ademais +\emph on +funciona +\emph default +. +\end_layout + +\begin_layout Subsection +Que demo é iso do LaTeX? ( e por que me debe importar?) +\end_layout + +\begin_layout Standard +O LaTeX é un sistema de preparación de documentos desenvolvido por Leslie + Lamport en 1985. +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +A fonte da que bebe esta sección é o libro +\begin_inset Quotes eld +\end_inset + + +\emph on +A Guide to LaTeX2e +\emph default +, +\begin_inset Quotes erd +\end_inset + + de Helmut Kopka e Patrick Daly, que ten unha entrada na bibliografia do + +\emph on +Guia do Usuário +\emph default +\SpecialChar \@. + +\end_layout + +\end_inset + + Por sua vez, o LaTeX, elaborou-se sobre unha linguaxe tipográfica chamada + TeX, criada por Donald Knuth en 1984. + O que fai o TeX é ler roteiros, ficheiros ASCII con unha secuéncia de instrució +ns, e executar secuencialmente os comandos tipográficos do roteiro. + É un pouquiño máis complicado que unha máquina de escreber, mais non tan + complicado como unha imprensa; porén Knuth modelou moitos dos truques das + artes tipográficas como algoritmos computacionais, incorporando-os ao TeX, + e conseguindo con isto atinxir unha excelente cualidade nos textos impresos. + En todo caso, a saída directa do TeX é un ficheiro no formato coñecido + como +\begin_inset Quotes eld +\end_inset + +device independent +\begin_inset Quotes erd +\end_inset + + (independente do dispositivo +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +dispositivo de impresión, na maior parte dos casos unha impresora. +\end_layout + +\end_inset + +), ou +\family typewriter +dvi +\family default + para abreviar. + O ficheiro +\family typewriter +dvi +\family default + pode enviar-se directamente a calquer dispositivo que entenda o formato + +\family typewriter +dvi +\family default +, ou ben converte-lo noutro formato como PostScript, PDF, etc. + +\end_layout + +\begin_layout Standard +Ademais do anterior, o TeX permite a definición de macros polo usuário, + é isto fai do TeX moito máis que un simples motor tipográfico. + A maior parte do usuários de TeX empregan un pacote de macros que Knuth + elaborou para agachar unha boa parte dos detalles tipográficos. + E é neste pacote no que a maioria da xente pensa ao se referir ao TeX. + O usuário comun non emprega o TeX puro e duro, que son comandos tipográficos + sen mais, só os autores de novos pacotes de macros o fan. + É aqui que Leslie Lamport entra en cena, el queria un pacote de macros + pensado no usuário con unha orientación non demasiado tipográfica , unha + série de comandos que compuxera tipograficamente cousas como seccións, + táboas ou fórmulas matemáticas, de forma consistente e uniforme, co mínimo + barullo posíbel. + E asi naceu o LaTeX. +\end_layout + +\begin_layout Standard +Entretanto e en paralelo co desenvolvimento e crecimento do LaTeX, outra + xente ia elaborando os seus próprios pacotes de macros para o TeX, uns + para facer diapositivas, outros artigos para algunha revista científica, + etc. + Alguns empregaban o TeX puro, entanto outros comezaban modificando o LaTeX. + Para tentar unificar este sarillo, unha equipa de usuários de LaTeX (incluindo + Lamport, por suposto), comezaron a traballar no LaTeX2e, a versión actual + de LaTeX, durante os anos 80. + Esta nova versión ten comandos que fornecen unha interface máis fácil de + usar para os comandos de criación de macros do TeX , axuda no emprego de + novas fontes, etc. + De facto, o LaTeX é en si mesmo unha linguaxe bastante extensa, e usuários + de todo o mundo teñen contribuído coas suas próprias achegas, estendendo + grandemente o corpo estándar. +\end_layout + +\begin_layout Standard +Ha duas vias de estender o LateX, as +\emph on +clases +\emph default + e os +\emph on +estilos +\emph default +. + Unha +\emph on +clase +\emph default + é un conxunto de macros de LaTeX (e TeX) que descreben un tipo novo de + documento, como un libro ou un artigo. + Ha +\emph on +clases +\emph default + para diapositivas, para revistas de matemática e de física \SpecialChar \ldots{} +, mesmo ha moitas + universidades que teñen unha +\emph on +clase +\emph default + própria para as suas teses. + Un +\emph on +estilo +\emph default + a diferenza dunha +\emph on +clase +\emph default + non define un novo tipo de documento, senón un tipo de +\emph on +comportamento +\emph default + diferente que calquer documento pode usar. + Por exemplo, o LyX controla as marxes das páxinas e os espazos entre liñas, + através de dous ficheiros de +\emph on +estilo +\emph default + para LaTeX deseñados con ese propósito. + Ha ficheiros de +\emph on +estilo +\emph default + para un monte de cousas: imprimir etiquetas ou envelopes, mudar o comportamento + da identación, engadir novas fontes, manipular gráficos, deseñar cabezallos + imaxinativos, personalizar bibliografias, mudar a posición e aspeito das + notas de rodapé, táboas e figuras, formatar listas, et cetera. +\end_layout + +\begin_layout Standard +Eis un resumo: +\end_layout + +\begin_layout List +\labelwidthstring 00.00.0000 +TeX: Linguaxe tipográfica na que se poden utilizar macros. +\end_layout + +\begin_layout List +\labelwidthstring 00.00.0000 +LaTeX: Pacote de macros construído sobre o TeX\SpecialChar \@. + +\end_layout + +\begin_layout List +\labelwidthstring 00.00.0000 +clase: Descrición dun tipo de documento, usando LaTeX\SpecialChar \@. + +\end_layout + +\begin_layout List +\labelwidthstring 00.00.0000 +estilo: Modifica nalgun xeito o comportamento predefinido do LaTeX. +\end_layout + +\begin_layout List +\labelwidthstring 00.00.0000 +LyX: Procesador de texto WYSIWYM, que emprega o LaTeX, en toda a sua gloria, + para imprimir. +\end_layout + +\begin_layout Standard +A idea desta sección é tentar explicar porqué o LyX funciona de forma un + tanto diferente dos outros procesadores de texto. + A razón é simples: o LyX basea-se no LaTeX para compor o texto impreso, + e tal como o LaTeX, o LyX foca-se no contexto da sua escrita – +\emph on +o que +\emph default + está a escreber, deixando ao computador ocupar-se da aparéncia do texto. +\end_layout + +\begin_layout Section +Navegando pola documentación +\end_layout + +\begin_layout Standard +Para facilitar a resposta ás suas perguntas e a descrición de todas as funcións + do LyX, dividiu-se a documentación en vários ficheiros diferentes. + Cada cal con un propósito concreto, que se verá posteriormente. + Mais antes de ollar os outros ficheiros, é preferíbel ler este documento + cuidadosamente xa que contén moita información útil e comentários que poden + lle aforrar algun tempo. +\end_layout + +\begin_layout Standard +Ainda que o LyX xa pasou a versión 1.0, parte da documentación pode estar + incompleta ou ultrapasada. + Como o resto do LyX, os manuais son o traballo dun grupo de voluntários + que teñen +\begin_inset Quotes eld +\end_inset + +ocupacións reais +\begin_inset Quotes erd +\end_inset + +, famílias, pratos para lavar, lixo para recoller, etc., etc., etc. + Facemos o posíbel para manter os manuais a ponto, mais nen sempre o conseguimos. + (Se quer axudar a remediar esta situación, asegure-se de ler o capítulo + +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:Contrib" + +\end_inset + +, alén do restante deste documento.) +\end_layout + +\begin_layout Standard +Un outro favor que nos pode facer é avisar-nos se calquer cousa nestes manuais + lle confundir, non estiver claro, ou estiver errado. + Pode contactar cos actuais responsábeis pola documentación enviando un + correo electrónico a +\begin_inset CommandInset href +LatexCommand href +target "lyx-docs@lists.lyx.org" +type "mailto:" + +\end_inset + +. + Se lle xurde algunha pergunta sobre o LyX a cal non dá atopado resposta + nos manuais, pode achar axuda na lista de correos de usuários en +\begin_inset CommandInset href +LatexCommand href +target "lyx-user@lists.lyx.org" +type "mailto:" + +\end_inset + +. +\end_layout + +\begin_layout Subsection +O Formato dos Manuais +\end_layout + +\begin_layout Standard +Os manuais poden-se ler directamente no LyX, ou imprimi-los e le-los en + papel. + Se está a ler directamente no monitor debe ter en conta que ha algunhas + pequenas diferenzas coa versión impresa. + Primeiro, o título aparece apenas no início do documento e non formatado + separadamente nunha páxina como nalgunhas versións impresas. + O índice e as notas de rodapé non están visíbeis nun princípio. + As notas de rodapé, como esta +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Esta é unha nota de rodapé +\end_layout + +\end_inset + +, poden-se ler clicando sobre elas co botón esquerdo do rato. + Canto a táboa de contidos pode ben clicar na caixa cincenta que ha no início + do documento e que di xustamente táboa de contidos, ou clicando no menu + Navegar. + (Probe!) +\end_layout + +\begin_layout Standard +No manual impreso as referéncias cruzadas mostran os números correspondentes + ao capítulo, sección, subsección etc., referenciados. + Lendo directamente no LyX porén, as referéncias aparecen nunha caixa cincenta + como esta: +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:Contrib" + +\end_inset + +. + (Na versión impresa non se verá a caixa, tan só un número.) Ao clicar nesa + caixa co botón esquerdo do rato abre-se un diálogo que contén todas as + referéncias que ha no documento, neste caso só ha unha referéncia +\begin_inset Quotes eld +\end_inset + +chp:Contrib +\begin_inset Quotes erd +\end_inset + +. + Se no diálogo preme o botón +\begin_inset Quotes eld +\end_inset + +Ir á etiqueta +\begin_inset Quotes erd +\end_inset + + o LyX saltará a etiqueta correspondente á referéncia. + Outra forma de facer o salto é clicando na referéncia co botón direito + do rato. + Pode-se voltar ao lugar de orixe dixitando +\family sans +Crtl-< +\family default + (Que significa +\begin_inset Quotes eld +\end_inset + + +\family sans +Crtl-< +\family default + +\begin_inset Quotes erd +\end_inset + + ? Verá-se mais adiante.) +\end_layout + +\begin_layout Standard +Unha vez esclarecidas algunhas diferenzas importantes entre a versión impresa + e a electrónica deste ficheiro, pasamos a falar do formato deste documento. + +\end_layout + +\begin_layout Standard +Notará que as veces se usan fontes diferentes da padrón, estas mudanzas + de fonte facilitan a leitura ao resaltar unha determinada cadea escrita, + e ademais cada estilo de fonte ten o seu significado: +\end_layout + +\begin_layout Itemize + +\emph on +Enfatizado +\emph default + usa-se para dar énfase en xeral, argumentos xenéricos, títulos de libros, + nomes de seccións doutros manuais, e notas dos autores; +\end_layout + +\begin_layout Itemize + +\family typewriter +Fonte +\begin_inset space ~ +\end_inset + +Fixa +\family default + usa-se para programas e nomes de ficheiros, código LaTeX, e códigos e funcións + LyX; +\end_layout + +\begin_layout Itemize + +\family sans +Sans +\begin_inset space ~ +\end_inset + +Serif +\family default + usa-se para menus, botóns, xanelas suspensas e nomes de teclas; +\end_layout + +\begin_layout Itemize + +\noun on +Versalete +\noun default + usa-se para nomes próprios. +\end_layout + +\begin_layout Standard +Nas combinacións de teclas, ex. + atallos de teclado, usa-se a seguinte convención de prefixo: +\end_layout + +\begin_layout Itemize +\begin_inset Quotes eld +\end_inset + + +\family sans +C- +\family default + +\begin_inset Quotes erd +\end_inset + + ou +\begin_inset Quotes eld +\end_inset + +Crtl- +\begin_inset Quotes erd +\end_inset + +: indica a tecla +\family sans +Control +\family default +; +\end_layout + +\begin_layout Itemize +\begin_inset Quotes eld +\end_inset + + +\family sans +S- +\family default + +\begin_inset Quotes erd +\end_inset + +: indica a tecla +\family sans +Shift +\family default +; +\end_layout + +\begin_layout Itemize +\begin_inset Quotes eld +\end_inset + + +\family sans +M- +\family default + +\begin_inset Quotes erd +\end_inset + +: indica a tecla +\family sans +Meta +\family default + que en moitos teclados será a tecla +\family sans +Alt +\family default +; +\end_layout + +\begin_layout Standard +Por outra banda fará-se referéncia tamén ás teclas alfanuméricas, e as non + alfanuméricas: +\end_layout + +\begin_layout Itemize +\begin_inset Quotes eld +\end_inset + + +\family sans +F1 +\family default + +\begin_inset Quotes erd +\end_inset + + \SpecialChar \ldots{} + +\begin_inset Quotes eld +\end_inset + + +\family sans +F12 +\family default + +\begin_inset Quotes erd +\end_inset + +: son as teclas de función; +\end_layout + +\begin_layout Itemize +\begin_inset Quotes eld +\end_inset + + +\family sans +Esc +\family default + +\begin_inset Quotes erd +\end_inset + +: é a tecla de escape; +\end_layout + +\begin_layout Itemize +\begin_inset Quotes eld +\end_inset + +Esquerda +\begin_inset Quotes erd +\end_inset + +, +\begin_inset Quotes eld +\end_inset + + +\family sans +Direita +\family default + +\begin_inset Quotes erd +\end_inset + +, +\begin_inset Quotes eld +\end_inset + + +\family sans +Superior +\family default + +\begin_inset Quotes erd +\end_inset + +, +\begin_inset Quotes eld +\end_inset + + +\family sans +Inferior +\family default + +\begin_inset Quotes erd +\end_inset + +: son as teclas que moven o cursor, e que veñen usualmente denotadas con + unha frecha que aponta para a dirección correspondente; +\end_layout + +\begin_layout Itemize + +\family sans +\begin_inset Quotes eld +\end_inset + +Insert +\family default + +\begin_inset Quotes erd +\end_inset + +, +\begin_inset Quotes eld +\end_inset + + +\family sans +Supr +\family default + +\begin_inset Quotes erd +\end_inset + +, +\begin_inset Quotes eld +\end_inset + + +\family sans +Inicio +\family default + +\begin_inset Quotes erd +\end_inset + +, +\begin_inset Quotes eld +\end_inset + + +\family sans +Fin +\family default + +\begin_inset Quotes erd +\end_inset + +, +\begin_inset Quotes eld +\end_inset + + +\family sans +RePág +\family default + +\begin_inset Quotes erd +\end_inset + +, +\begin_inset Quotes eld +\end_inset + + +\family sans +AvPág +\family default + +\begin_inset Quotes erd +\end_inset + +: son as 6 teclas que aparecen normalmente sobre as teclas de +\emph on +cursor +\emph default +. + +\end_layout + +\begin_layout Itemize +\begin_inset Quotes eld +\end_inset + + +\family sans +Return +\family default + +\begin_inset Quotes erd +\end_inset + + e +\begin_inset Quotes eld +\end_inset + + +\family sans +Enter +\family default + +\begin_inset Quotes erd +\end_inset + +: ambas referen-se á mesma tecla, a correspondente ao retorno de carro. + Nalguns teclados esta tecla aparece como +\begin_inset Quotes eld +\end_inset + +Return +\begin_inset Quotes erd +\end_inset + +, noutros como +\begin_inset Quotes eld +\end_inset + +Enter +\begin_inset Quotes erd +\end_inset + +, noutros onde o que aparece é unha frecha en ángulo, e mesmo ha teclados + onde ha duas teclas diferentes. + O LyX trata todo como a mesma tecla, e usará-se +\family sans +Return +\family default + e +\family sans +Enter +\family default +, sen distinción. +\end_layout + +\begin_layout Standard +As distintas combinacións de teclas que se usan en LyX son descritas no + capítulo +\begin_inset Quotes eld +\end_inset + + +\emph on +Funcións ligábeis +\emph default + +\begin_inset Quotes erd +\end_inset + + , do +\begin_inset Quotes eld +\end_inset + + +\emph on +Manual de Referéncia +\emph default + +\begin_inset Quotes erd +\end_inset + + (o ficheiro +\family typewriter +Reference.lyx +\family default +). + +\end_layout + +\begin_layout Subsection +Os manuais +\end_layout + +\begin_layout Standard +Na seguinte lista descrebe-se o contido dos manuais aos que se acede desde + a +\family typewriter +Axuda +\family default + : +\end_layout + +\begin_layout Description + +\emph on +Introdución +\end_layout + +\begin_deeper +\begin_layout Standard +Este ficheiro. +\end_layout + +\end_deeper +\begin_layout Description + +\emph on +Tutorial +\end_layout + +\begin_deeper +\begin_layout Standard +Se esta a iniciar-se no LyX, e non coñece LaTeX, debe ler antes que nada + este tutorial. + Se pensa que LaTeX é o material co que se elaboran os preservativos, entón + cumpre-lle reler o capítulo +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:A-filosofia-do-LyX" + +\end_inset + + desta +\emph on +Introdución +\emph default +, e despois pasar ao tutorial. + E ben posíbel que despois de ler o +\emph on +Tutorial +\emph default + continue a pensar que LaTeX é algunha substáncia elástica, mais saberá + como usar LyX. +\end_layout + +\begin_layout Standard +Se +\emph on +coñece +\emph default + LaTeX, debe tamén ler o +\emph on +Tutorial +\emph default +, mais comezando pola sección +\begin_inset Quotes eld +\end_inset + + +\emph on +LyX para usuários de LaTeX +\emph default + +\begin_inset Quotes erd +\end_inset + + (unha ollada ao resto da documentación tampouco manca). +\end_layout + +\begin_layout Standard +Se en calquer momento non sabe moi ben como facer algo en LyX, probe a ler + o Tutorial antes de mergullar-se en calquer dos outros manuais, é probábel + ser-lle de axuda. +\end_layout + +\end_deeper +\begin_layout Description + +\emph on +Guia +\begin_inset space ~ +\end_inset + + +\series bold +do +\begin_inset space ~ +\end_inset + +Usuário +\series default +\emph default + +\end_layout + +\begin_deeper +\begin_layout Standard +É a documentación primária. + Tenta cobrir +\emph on +a maioria +\emph default + das operacións básicas e recursos disponíbeis do LyX. + O manual principal asume que o leitor ten alguns coñecimentos de LaTeX + ou que xa leu o +\emph on +Tutorial. +\end_layout + +\end_deeper +\begin_layout Description + +\emph on +Funcións +\begin_inset space ~ +\end_inset + +Avanzadas +\end_layout + +\begin_deeper +\begin_layout Standard +Ampliación do +\emph on +Guia do Usuário +\emph default +. + Documenta como utilizar comandos LaTeX dentro do LyX, formatos adicionais, + e funcións de edición de propósito específico, incluindo alguns dos (estraños + mais elegantes) truques dos mestres de LaTeX. +\end_layout + +\end_deeper +\begin_layout Description + +\emph on +Personalización +\end_layout + +\begin_deeper +\begin_layout Standard +Unha descrición de características avanzadas do LyX, incluindo como personalizar + o comportamento; composición de teclas, internacionalización, e ficheiros + de configuración. + Nen pense e achegar-se a este documento sen ler previamente o +\emph on +Tutorial +\emph default +. +\end_layout + +\end_deeper +\begin_layout Description +FAQ +\end_layout + +\begin_deeper +\begin_layout Standard +Conxunto ordenado de respostas a perguntas frecuentes sobre o LyX. +\end_layout + +\end_deeper +\begin_layout Description +Táboa +\begin_inset space ~ +\end_inset + +de +\begin_inset space ~ +\end_inset + +contidos +\end_layout + +\begin_deeper +\begin_layout Standard +Neste documento recollen-se os índices dos seguintes manuais: +\emph on +Introdución, FAQ, Tutorial, Guia de usuário, Funcións avanzadas +\emph default + e +\emph on +Personalización +\emph default +. +\end_layout + +\end_deeper +\begin_layout Description + +\emph on +Configuración +\begin_inset space ~ +\end_inset + +do +\begin_inset space ~ +\end_inset + +LaTeX +\end_layout + +\begin_deeper +\begin_layout Standard +Ao instalar-se o LyX pesquisa no seu sistema, e armacena o que aprendeu + sobre como está configurado o LaTeX no seu computador. + Pode consultar esta información en calquer momento, pero é especialmente + recomendábel se pensa que falta algun pacote de LaTeX. +\end_layout + +\end_deeper +\begin_layout Standard +Ademais deste manuais existen outros dous, que se poden achar na directória + de documentación do LyX. + Estes manuais son: +\end_layout + +\begin_layout Description + +\emph on +Manual +\begin_inset space ~ +\end_inset + + +\series bold +de +\begin_inset space ~ +\end_inset + +Referéncia +\series default +\emph default + +\end_layout + +\begin_deeper +\begin_layout Standard +( +\family typewriter +Reference.lyx +\family default +) Este manual conterá, cando este rematado, unha descrición exaustiva e + detallada das funcións do LyX, mais sen as úteis dicas de uso encontradas + no +\emph on +Guia do Usuário +\emph default + ou noutros manuais. + +\end_layout + +\end_deeper +\begin_layout Standard +Os manuais fan referéncia uns aos outros, cando é necesário. + Por exemplo, o +\emph on +Guia do Usuário +\emph default + contén +\emph on +algunha +\emph default + información sobre instalación e personalización, mais encamiña ao leitor + ao manual de +\emph on +Personalización +\emph default + para obter mais información. +\end_layout + +\begin_layout Standard +Salientamos novamente un ponto importante: +\end_layout + +\begin_layout Standard +\begin_inset VSpace 0.51cm +\end_inset + + +\end_layout + +\begin_layout Standard +\align center +Se é novato nisto do LyX lea o +\emph on +Tutorial. + +\emph default + Xa! +\end_layout + +\begin_layout Standard +\begin_inset VSpace 0.51cm +\end_inset + + +\end_layout + +\begin_layout Standard +Senón pode frustrar-se inecesariamente. + O LyX fai todo o que precisa dun procesador de textos, mais ten un xeito + próprio de o facer. +\end_layout + +\begin_layout Subsection +As traducións dos manuais +\end_layout + +\begin_layout Standard +Os manuais son ficheiros lyx que fican na directória +\family typewriter +\size small +.../share/lyx/doc +\family default +\size default + +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +En linux fican normalmente en +\family typewriter +\size small +/usr/share/lyx/doc +\family default +\size default + ou +\family typewriter +\size small +/usr/local/share/lyx/doc. + +\family default + En MSWindows en +\family typewriter +C: +\backslash +Archivos de programa +\backslash +LyX +\backslash +Resources +\backslash +doc +\family default +\size default + ou similar. +\end_layout + +\end_inset + +. + Nesta directória armacenan-se os manuais orixinais en inglés, e as diversas + traducións que existen. + Asi a introdución que está a ler é o ficheiro +\family typewriter +intro.lyx +\family default +, o orixinal é o ficheiro +\family typewriter +intro.lyx +\family default +, e as versións portuguesa, española e francesa son respectivamente +\family typewriter +pt_intro.lyx, es_intro.lyx +\family default + e +\family typewriter +fr_intro.lyx +\family default +. + Se olla na dita directória verá que non todos os manuais están traducidos + a todas as línguas. + Cando falta a tradución dalgun manual, ao aceder a ese manual mediante + o menu de +\family typewriter +Axuda +\family default + aparece o manual orixinal, i.e. + en inglés. + Se preferir lé-lo noutra língua, que teña tradución, non ten mais que abrir + o ficheiro correspondente no menu +\family typewriter +Ficheiro +\family sans +\SpecialChar \menuseparator + +\family typewriter +Abrir. +\end_layout + +\begin_layout Standard +Os manuais traducidos ao galego fan referéncia aos menus en galego, e os + manuais noutras línguas fan loxicamente referéncia aos menus na língua + correspondente. + Polo momento só ha traducidos 2 manuais ao galego, este que está a ler + e o +\emph on +Tutorial +\emph default +, portanto terá que ler os outros manuais noutras línguas. + As veces as traducións dos menus son evidentes ( File, Ficheiro, Fichero, + Fichier, etc), mais en moitos outros casos non é tan fácil, e pode resultar + confuso ler un manual nunha língua, que fai reféncia aos menus nesa língua, + entanto o programa usado usa outra língua, ex. + ler o manual en inglés no LyX cos menus en galego. + Neses casos resulta conveniente poder executar o programa na mesma língua + do manual. +\end_layout + +\begin_layout Standard +Pode lanzar o LyX en distintas línguas utilizando a variábel de entorno + axeitada, que dependerá do seu sistema. + As variábeis mais utilizadas son: LANG, LC_ALL, LANGUAGE, KDE_LANG. + Asi para lanzar o programa em inglés dos EUA execute o seguinte comando + nun terminal +\end_layout + +\begin_layout Standard + +\family typewriter +LANG=en_US lyx +\family default + (ou +\family typewriter +LC_ALL=en_US lyx +\family default +, ou +\family typewriter +KDE_LANG=en_US +\family default +) +\end_layout + +\begin_layout Standard +\noindent +e se preferir en francés, use: +\end_layout + +\begin_layout Standard + +\family typewriter +LANG=fr_FR lyx +\family default + (ou +\family typewriter +LC_ALL=fr_FR lyx +\family default +, ou +\family typewriter +KDE_LANG=fr_FR +\family default +) +\end_layout + +\begin_layout Section +Axudando ao proxecto LyX +\begin_inset CommandInset label +LatexCommand label +name "sec:Contrib" + +\end_inset + + +\end_layout + +\begin_layout Subsection +O programa +\end_layout + +\begin_layout Standard +O LyX é un programa bastante grande, escrito maiormente en C++, que non + está libre de erros, sendo sempre ben-vidas as melloras no código fonte. +\end_layout + +\begin_layout Subsubsection +Informando de erros de código +\end_layout + +\begin_layout Standard +Ao empregar o LyX pode bater con comportamentos que considere defeituosos. + Pode contribuir a mellorar a cualidade do programa informando deses comportamen +tos. + De entre tais comportamentos defeituosos, os máis perigosos, se ben improbábeis +, son os que levan a que o programa se feche inesperadamente, sen lle pedir + opinión ao usuário. + +\color none + Outros defeitos que a equipa do LyX considera importantes son os relacionados + coa interface de usuário; asi son especialmente úteis as indicacións de + partes da interface do LyX que acha confusas ou pouco claras. +\end_layout + +\begin_layout Standard +LyX ten un sistema de seguimento de erros, ao cal se pode aceder en +\family typewriter +LyX bug tracker +\begin_inset Flex URL +status collapsed + +\begin_layout Plain Layout + +http://www.lyx.org/trac/wiki/BugTrackerHome +\end_layout + +\end_inset + + +\family default +. + Antes de avisar de calquer erro deberia consultar o dito sistema, non vaia + ser que xa exista un informe prévio do erro. + No sistema de seguimento de erros, ademais de facer novos informes de erros, + poden-se facer comentários nos informes abertos por calquer outra persoa. + Ademais é posíbel informar dun erro enviando un correo electrónico á lista + de desenvolvimento do proxecto: +\begin_inset CommandInset href +LatexCommand href +target "lyx-devel@lists.lyx.org" +type "mailto:" + +\end_inset + +. + As mensaxes enviadas a esta lista, como as das outras listas do proxecto, + armacenan-se nun arquivo público ao cal se pode aceder desde o site do + proxecto LyX, +\family typewriter +LyX website +\begin_inset Flex URL +status collapsed + +\begin_layout Plain Layout + +http://www.lyx.org/ +\end_layout + +\end_inset + + +\family default +. +\end_layout + +\begin_layout Standard +Un bon (útil) informe de erros debe incluir como mínimo a versión de LyX + onde se dá o problema. + Preferindo-se descricións precisas e detalladas, pois canto máis tempo + precisen os desenvolvedores para dar co miolo do problema, menos tempo + teñen para mellorar o programa. +\end_layout + +\begin_layout Standard +Mencione o sistema operativo, incluindo a versión, no cal está a traballar, + e as versións das librarias que están instaladas no sistema, e se foren + relevantes ao erro, as versións dos programas externos que usa o LyX. +\end_layout + +\begin_layout Standard +Se é un problema de compilación ou configuración, inclua no informe o ficheiro + +\family typewriter +config.log +\family default +, e non se esqueza de especificar o compilador, versión incluída, que está + a empregar. +\end_layout + +\begin_layout Standard +Se encontra algunha operación, ou conxunto de operación, que leven ao LyX + se fechar sen orde expresa do usuário, agradeceríamos-lle que se tomara + a moléstia de obter un informe automático detallado do problema. + Para isto ten utilizar un executábel depurábel (non-stripped) do LyX. + O executábel que se obtén ao compilar o LyX desde as fontes é por defeito + depurábel, entanto que os que os que veñen cos pacotes binários non permiten + depuración (stripped). + Para obter o informe automático execute o LyX desde o depurador gdb, dixitando + algo asi como: +\begin_inset Quotes eld +\end_inset + + +\family typewriter +\size small +gdb /home/usuario/lyx-1.6.x/src/lyx +\family default +\size default + +\begin_inset Quotes erd +\end_inset + + e logo +\begin_inset Quotes eld +\end_inset + + +\family typewriter +\size small +run +\family default +\size default + +\begin_inset Quotes erd +\end_inset + +. + Repita as operacións precisas para que o LyX se colge e volte a gdb. + Dixite +\begin_inset Quotes eld +\end_inset + + +\family typewriter +\size small +bt +\family default +\size default + +\begin_inset Quotes erd +\end_inset + + para producir o informe automático e inclua-o no seu informe manual sobre + o erro. +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +se quer ser exaustivo, use os comandos +\begin_inset Quotes eld +\end_inset + + +\family typewriter +info locals +\family default + +\begin_inset Quotes erd +\end_inset + + e +\begin_inset Quotes eld +\end_inset + + +\family typewriter +up +\family default + +\begin_inset Quotes erd +\end_inset + + para incluir os valores das variábeis locais. +\end_layout + +\end_inset + + Se é reproducíbel, é mais importante unha descrición detallada dun xeito + de reproducir o erro que o informe automático, xa que os desenvolvedores + poden xerar o seu próprio informe. + Porén, se o erro non é facilmente reproducíbel enviar un informe automático + é fundamental, xa que pode ser que sexa o único informe automático con + que contén os desenvolvedores. +\end_layout + +\begin_layout Subsubsection +Mellorando o código +\end_layout + +\begin_layout Standard +Se fixo algunha mudanza do código fonte que pensa pudera tornar-se parte + do LyX, porque corrixe algun erro ou introduz algunha funcionalidade, envie-a + como un ficheiro diff (en formato unificado) á lista de desenvolvimento + referida anteriormente, xunto con un breve informe da mudanza (change log) + e unha descrición do que fai o seu parche. + +\end_layout + +\begin_layout Subsection +A documentación +\end_layout + +\begin_layout Standard +Se ben é certo que a documentación de LyX é extensa, tamén o é que o programa + está a ser desenvolvido constantemente, e cada nova versión engade novas + funcionalidades. + Non é portanto impensábel pensar que algun manual precise melloras. + Esta sección descrebe que facer en caso de achar un erro, ou querer facer + suxestións para mellorar a documentación. +\end_layout + +\begin_layout Subsubsection +Erros nos manuais +\end_layout + +\begin_layout Standard +Se acha un problema na documentación envie unha mensaxe, en inglés, á lista + de correos +\begin_inset CommandInset href +LatexCommand href +target "lyx-docs@lists.lyx.org" +type "mailto:" + +\end_inset + +. + A equipa de documentación fará as correccións necesárias. + +\end_layout + +\begin_layout Subsubsection +Xuntar-se á equipa de documentación. +\end_layout + +\begin_layout Standard +O proxecto de documentación do LyX, como calquer outra parte do proxecto + LyX, aceita axuda en calquer momento! Se está interesado en contribuir + a el, necesita realizar as seguintes tarefas +\emph on +primeiramente +\emph default +: +\end_layout + +\begin_layout Enumerate +Obteña o código fonte de LyX mais recente +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Os mais aventureiros pode obter a última documentación, contida no módulo +\lang english + +\family typewriter +\lang galician +lyxdoc, +\family default + do repositório CVS de LyX, ao cal se pode aceder anonimamente. +\end_layout + +\end_inset + +, e descompacte-o. + Achará unha directória dentro da árbore principal chamada +\family typewriter +lib/doc/ +\family default +. +\end_layout + +\begin_layout Enumerate +A seguir lea o +\emph on +User's Guide +\emph default + (Guia de usuário) e o +\emph on +Tutorial +\emph default +. + +\end_layout + +\begin_deeper +\begin_layout Standard +A razón destas leituras é dar-lle ideas. + O +\emph on +Tutorial +\emph default + e o +\emph on +User's Guide +\emph default + serán probabelmente os manuais mais actualizados. + Con unha leitura atenta deles fará-se unha idea do estilo de manuais que + quer facer a equipa de documentación, tanto no que ser refere ao contido + como a sua apresentación. +\end_layout + +\end_deeper +\begin_layout Enumerate +Contacte a equipa en: +\end_layout + +\begin_deeper +\begin_layout Standard +\begin_inset CommandInset href +LatexCommand href +target "lyx-docs@lists.lyx.org" +type "mailto:" + +\end_inset + + +\end_layout + +\begin_layout Standard +para debater as mudanzas que pretende introducir, coñecer outras opinións + sobre elas, entrando nun proceso construtivo que permitan unha mellora + consensuada da documentación. + +\end_layout + +\end_deeper +\begin_layout Standard +As mudanzas que pode suxerir poden ir desde esclarecer alguns treitos do + texto, até modificar a estrutura xeral da documentación. + Calquer mellora é ben recebida. +\end_layout + +\begin_layout Subsubsection +A tradución +\end_layout + +\begin_layout Standard +[Nota do T.] Por último pode contribuir axudando na tradución ao galego da + documentación, que polo momento está por traducir na sua maior parte, e + do programa. + Pode por-se en contacto co tradutor, ben no enderezo que aparece no início + do documento, ben no proxecto de tradución ao galego de GNU/Linux, +\family typewriter +Proxecto Trasno +\begin_inset Flex URL +status collapsed + +\begin_layout Plain Layout + +http://www.trasno.net +\end_layout + +\end_inset + +. +\end_layout + +\end_body +\end_document diff --git a/lib/doc/gl/Tutorial.lyx b/lib/doc/gl/Tutorial.lyx index 8974d31516..be976ca6ac 100644 --- a/lib/doc/gl/Tutorial.lyx +++ b/lib/doc/gl/Tutorial.lyx @@ -1,5495 +1,5495 @@ -#LyX 2.0.0svn created this file. For more info see http://www.lyx.org/ -\lyxformat 404 -\begin_document -\begin_header -\textclass book -\begin_preamble -% DO NOT ALTER THIS PREAMBLE!!! -% -%This preamble is designed to ensure that the document prints -% out as advertised. If you mess with this preamble, -% parts of the document may not print out as expected. If you -% have problems LaTeXing this file, please contact -% the documentation team -% email: lyx-docs@lists.lyx.org - -\usepackage{ifpdf} % part of the hyperref bundle -\ifpdf % if pdflatex is used - - % set fonts for nicer pdf view - \IfFileExists{lmodern.sty}{\usepackage{lmodern}}{} - -\fi % end if pdflatex is used - -% the pages of the TOC is numbered roman -% and a pdf-bookmark for the TOC is added -\let\myTOC\tableofcontents -\renewcommand\tableofcontents{% - \pdfbookmark[1]{\contentsname}{} - \myTOC } - -% redefine the \LyX macro for PDF bookmarks -\def\LyX{\texorpdfstring{% - L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@} - {LyX}} -\end_preamble -\use_default_options false -\maintain_unincluded_children false -\language galician -\inputencoding auto -\fontencoding global -\font_roman default -\font_sans default -\font_typewriter default -\font_default_family default -\use_xetex false -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\default_output_format default -\output_sync 0 -\bibtex_command default -\index_command default -\paperfontsize 12 -\spacing single -\use_hyperref true -\pdf_title "The LyX Tutorial" -\pdf_author "LyX Team, Ramón Flores" -\pdf_subject "LyX-documentation Tutorial" -\pdf_keywords "LyX, documentation" -\pdf_bookmarks true -\pdf_bookmarksnumbered true -\pdf_bookmarksopen true -\pdf_bookmarksopenlevel 1 -\pdf_breaklinks false -\pdf_pdfborder false -\pdf_colorlinks true -\pdf_backref false -\pdf_pdfusetitle false -\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false" -\papersize default -\use_geometry false -\use_amsmath 0 -\use_esint 0 -\use_mhchem 1 -\use_mathdots 1 -\cite_engine basic -\use_bibtopic false -\use_indices false -\paperorientation portrait -\suppress_date false -\use_refstyle 0 -\index Índice -\shortcut idx -\color #008000 -\end_index -\secnumdepth 3 -\tocdepth 2 -\paragraph_separation indent -\paragraph_indentation default -\quotes_language english -\papercolumns 1 -\papersides 2 -\paperpagestyle headings -\tracking_changes false -\output_changes false -\html_math_output 0 -\html_be_strict false -\end_header - -\begin_body - -\begin_layout Title -O Tutorial de LyX -\end_layout - -\begin_layout Author -pola equipa de LyX -\begin_inset Newline newline -\end_inset - -(Tradutor: -\noun on -Ramón Flores -\noun default - ) -\end_layout - -\begin_layout Date -26 de Decembro de 2006 -\end_layout - -\begin_layout Standard -\begin_inset CommandInset toc -LatexCommand tableofcontents - -\end_inset - - -\end_layout - -\begin_layout Chapter -Introdución -\end_layout - -\begin_layout Section -Ben-vido ao LyX! -\end_layout - -\begin_layout Standard -Este ficheiro foi escrito pensando en todos aqueles que nunca ouviron falar - de LaTeX ou non o coñecen alá moi ben. - Comecemos dando unha boa notícia: non é preciso aprender LaTeX para usar - o LyX. - En realidade a razón de ser do LyX é fornecer unha interface cuase-WYSIWYG - para o LaTeX. - Porén ha algunhas cousas que precisará aprender para usar o LyX, e que - lle sexa de utilidade. -\end_layout - -\begin_layout Standard -Alguns dos leitores chegarian a este documento tras tentar inserir dous - espazos despois dun ponto, ou 3 liñas en branco entre parágrafos, mais - con certa frustración decataron-se que non o daban feito. - De facto, acharán que a maioria dos pequenos truques que están afeitos - a empregar noutros procesadores de texto, non funcionan en LyX. - Isto é por a maioria dos procesadores de texto permitiren, cando non requereren -, que o usuário introduza manualmente espazos, fontes, etc. - Co cal o usuário non só escrebe o documento, senón que tamén fai a composición - tipográfica do mesmo. - O LyX fai a composición automática e consistentemente, deixando ao usuário - concentrar-se nas cousas importantes: os contidos do documento. -\end_layout - -\begin_layout Standard -Portanto recomendamos-lle continuar a ler, o tempo adicado a este -\emph on -Tutorial -\emph default - non é tempo perdido, é tempo investido. -\end_layout - -\begin_layout Section -Que -\shape italic -é, -\shape default - e que non é, este Tutorial -\end_layout - -\begin_layout Standard -Antes de comezar esta sección, pretendemos salientar o seguinte, O -\emph on -Tutorial -\emph default - usa a notación definida na -\emph on -Introdu -\shape italic -\emph default -ción -\shape default -\SpecialChar \@. - Se comezou a ler a documentación por este manual, recomendamos-lle que - o deixe por un pouco e lea primeiro a -\shape italic -Introdución -\shape default -. -\end_layout - -\begin_layout Standard -Unha vez que xa sabe o significado das distintas fontes utilizadas no documento - pasamos a comentar a focaxe deste -\emph on -Tutorial -\emph default -. -\end_layout - -\begin_layout Subsection -Tirando o máximo proveito -\end_layout - -\begin_layout Standard -Este -\emph on -Tutorial -\emph default - consta de exemplos e exercícios, e para tirar o máximo proveito del, entanto - vai lendo, debe escreber todas esas pequenas cousas que se lle di de escreber, - e tamén tentar completar todos os exercícios suxeridos. - Para a sua comodidade, pode ser boa idea imprimir a versión PostScript® - deste documento. -\end_layout - -\begin_layout Standard -Se estiver familiarizado co LaTeX, probabelmente poderá ler o -\shape italic -Tutorial -\shape default - máis rapidamente, xa que a base do LyX é o LaTeX. - Porén o LyX posui algunhas idiosincrasias -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -ou, sendo optimistas, -\begin_inset Quotes eld -\end_inset - -características -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\end_inset - - que cumpre ter en conta. - Mesmo se non quer ler o resto do -\shape italic -Tutorial -\shape default -, cumpre-lle botar un ollo á Sección -\begin_inset space ~ -\end_inset - - -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:usuarioslatex" - -\end_inset - -, escrita pensando especificamente nos usuários de LaTeX. -\end_layout - -\begin_layout Subsection -O que non -\shape italic -vai -\shape default - atopar -\end_layout - -\begin_layout Itemize -Explicacións detalladas de todas as funcións do LyX. -\end_layout - -\begin_deeper -\begin_layout Standard -Para iso xa está o -\emph on -Guia do Usuário. - -\emph default - Este documento só pretende-se introducir ao leitor no emprego do programa, - mais lembre que o Guia está sempre a sua disposición. - Tentar duplicar no -\emph on -Tutorial -\emph default - toda a información que aparece no -\emph on -Guia -\emph default - daria lugar a que este documento fose longo de mais, redundante, e frecuentemen -te desactualizado. -\end_layout - -\end_deeper -\begin_layout Itemize -Explicacións detalladas de LaTeX. -\end_layout - -\begin_deeper -\begin_layout Standard -Non son necesárias para usar o LyX. - Mais se estiver interesado en aprender alguns dos elegantes truques que - pode facer co LaTeX, sempre pode ler un libro de LaTeX. - No mercado existen vários bons libros, polo cal escusamos de escreber un - novo. -\end_layout - -\end_deeper -\begin_layout Standard -E agora chegou o momento de elaborar o seu primeiro documento \SpecialChar \ldots{} - -\end_layout - -\begin_layout Chapter -Comezando co LyX -\end_layout - -\begin_layout Section -O seu primeiro documento no LyX -\end_layout - -\begin_layout Standard - Antes de comezar a escreber é bon mencionarmos algunhas cousiñas que, esperemos -, tornen este -\emph on -Tutorial -\emph default - mais instrutivo, útil e divertido. - -\end_layout - -\begin_layout Standard -Dado que ha moita información que non vamos fornecer neste documento, o - primeiro que ten que facer é procurar os restantes documentos de axuda. - Isto é bastante sinxelo; inicie o LyX e vaia ao menu -\family sans -A -\bar under -x -\bar default -uda, -\family default - onde pode escoller os distintos manuais, abra o -\emph on -Guia de Usuário -\emph default -, e o -\emph on -Tutorial -\emph default - (se non o estiver xa a ler no monitor). - Asi, pode ler ambos encanto escrebe o seu próprio documento -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Poden servir tamén como bons exemplos de como usar as moitas características - do LyX. -\end_layout - -\end_inset - -. - Para pasar dun documento a outro ten que ir ao menu -\family sans -\bar under -V -\bar default -er -\family default -, e seleccionar o ficheiro que queira mostrar na xanela. - O -\emph on -Tutorial -\emph default - non cobre en detalle asuntos descritos noutros manuais do LyX, se ben isto - pode resultar incomodo inicialmente, permite termos un -\emph on -Tutorial -\emph default - breve. - Ademais afará-se a utilizar outros manuais do LyX, o cal — a longo prazo - — aforrará-lle moito tempo. -\end_layout - -\begin_layout Standard -Neste -\emph on -Tutorial -\emph default - imos asumir que no seu computador ten instalada unha versión do LyX totalmente - funcional, unha outra versión do LaTeX, o -\family typewriter -xdvi -\family default - ou outro visualizador de -\family typewriter -dvi -\family default -, o -\family typewriter -dvips -\family default - ou outro conversor de -\family typewriter -dvi -\family default - a PostScript®, e tamén seria bon se tiver unha impresora conectada e que - funcione. - Isto é moito asumir. - Se algo disto lle falta, vai ter que reconfigurar o seu sistema (ou pedir-llo - ao administrador do sistemas). - Pode achar información sobre configuracións noutros manuais, nomeadamente - no -\emph on -Guia do Usuário -\emph default -. -\end_layout - -\begin_layout Standard -Por último ha un documento especificamente escrito para praticar os seus - coñecimentos de LyX. - Chama-se -\family typewriter -exemplo_bruto.lyx -\family default -, supostamente escrito por alguén que ignora as grandes capacidades do LyX. - Segundo vaia aprendendo as novas funcións do LyX, suxeriremo-lle modificar - as partes correspondentes do documento -\family typewriter -exemplo_bruto.lyx -\family default -. - Verá que este documento contén algunhas dicas -\begin_inset Quotes eld -\end_inset - -subtis -\begin_inset Quotes erd -\end_inset - - para o axudar a arranxar as cousas -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -As dicas achan-se en -\begin_inset Quotes eld -\end_inset - -Notas -\begin_inset Quotes erd -\end_inset - - amarelas. - Para aceder ao texto da nota cumpre clicar na mesma. -\end_layout - -\end_inset - -. - Se desexar facer trampa (ou verificar se está a facer ben as cousas), ha - tamén un ficheiro chamado -\family typewriter -exemplo_lyxificado.lyx -\family default - que contén o mesmo texto escrito por un mestre LyXeiro. -\end_layout - -\begin_layout Standard -Os ficheiros de exemplo achan-se na directória -\family typewriter -examples/ -\family default -, á cal pode aceder desde LyX seleccionando -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator - -\bar under -A -\bar default -brir -\family default - e clicando no botón -\family sans -Exemplos -\family default -. - Abra o documento en bruto, e use -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator -Gravar -\family default - -\family sans -\bar under -c -\bar default -omo -\family default - para gravar unha cópia na sua directória e poder asi traballar nel. - Ao mellorar algunha parte do documento, verifique como afectan as mudanzas - na pré-impresión. -\end_layout - -\begin_layout Standard -Por certo, o directório -\family typewriter -examples/ -\family default - contén moitos outros ficheiros de exemplo, que mostran como utilizar o - LyX para obter resultados complexos e gozosos. - Estes ficheiros de exemplo son especialmente úteis para mostrar cousas - que (devido ao tamaño ou a outras razóns) non entran ben na documentación. - Após ler o -\emph on -Tutorial -\emph default -, ou se non sabe como facer algo complicado no LyX, dé unha olladela a estes - ficheiros. -\end_layout - -\begin_layout Subsection -Escreber, visualizar e imprimir -\end_layout - -\begin_layout Itemize -Abra un novo ficheiro con -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator - -\bar under -N -\bar default -ovo -\end_layout - -\begin_layout Itemize -Escreba unha frase como: -\family typewriter -Este é o meu primeiro documento en LyX! -\end_layout - -\begin_layout Itemize -Grave o seu documento con -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator -Gravar -\begin_inset space ~ -\end_inset - - -\bar under -c -\bar default -omo\SpecialChar \@. - -\end_layout - -\begin_layout Itemize -Execute o LaTeX para criar unha pré-impresión (versión -\family typewriter -dvi, -\family default - -\family sans -postscript -\family default - ou -\family sans -pdf -\family default -), con -\family sans -\bar under -\noun on -V -\bar default -\noun default -er\SpecialChar \menuseparator - -\bar under -D -\bar default -VI, -\family default - -\family sans -\bar under -\noun on -V -\bar default -\noun default -er\SpecialChar \menuseparator -Postcript -\family default - ou -\family sans -\bar under -\noun on -V -\bar default -\noun default -er\SpecialChar \menuseparator -PD -\bar under -F -\family default -\bar default -\SpecialChar \@. - Se lanzou o LyX desde un terminal poderá ver como nel van aparecendo unha - série de mensaxes, escritos polo LaTeX, e que polo momento pode ignorar. - O LyX lanzará algun visualizador (de -\family typewriter -dvi, -\family default - -\family typewriter -postscript -\family default - ou -\family typewriter -pdf -\family default -, segundo corresponda), que abrirá outra xanela mostrando o aspeito que - vai ter o seu documento impreso. -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Pode aforrar algo de tempo, maior canto maior sexa o documento, se tras - a primeira vez que execute algun dos visores o deixa sen fechar, e após - facer calquer mudanza no documento usa -\family sans -\bar under -V -\bar default -er\SpecialChar \menuseparator - -\bar under -A -\bar default -ctualizar\SpecialChar \menuseparator - -\bar under -D -\bar default -VI -\family default - (ou -\family sans -\SpecialChar \menuseparator -Pos -\bar under -t -\bar default -scritp -\family default - ou -\family sans -\SpecialChar \menuseparator -PD -\bar under -F -\family default -\bar default -) para ver o novo aspeito do documento. -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Itemize -Imprima usando -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator -im -\bar under -p -\bar default -rimir\SpecialChar \@. - -\end_layout - -\begin_layout Standard -Parabéns! Escrebeu e imprimiu o seu primeiro documento en LyX. - O resto son pequenos detalles que se tratan no resto do -\emph on -Tutorial -\emph default -, no -\emph on -Guia do usuário -\emph default - e no manual de -\emph on -Funcións avanzadas -\emph default - ! -\end_layout - -\begin_layout Subsection -Operacións sinxelas -\end_layout - -\begin_layout Standard -Loxicamente o LyX permite-lle realizar a maioria das cousas que está afeito - a facer con un procesador de texto. - Vai engadir novas liñas cando for necesário, e identar parágrafos automaticamen -te. - A seguir inclui-se unha breve descrición de como realizar algunhas operacións - sinxelas. -\end_layout - -\begin_layout Description -Desfacer O LyX ten múltiplos níveis de desfacer, o que significa que poderia - desfacer todo o que fixo desde o início da sesión seleccionando -\family sans -\bar under -E -\bar default -ditar\SpecialChar \menuseparator - -\bar under -D -\bar default -esfacer -\family default - unha e outra vez. - Caso se pasar desfacendo, pode refacer as accións desfeitas seleccionando - -\family sans -\bar under -E -\bar default -ditar\SpecialChar \menuseparator - -\bar under -R -\bar default -efacer. -\end_layout - -\begin_deeper -\begin_layout Standard -Actualmente, o comando -\family sans -Desfacer -\family default - está limitado a 100 pasos, e ademais non funciona para -\emph on -todo -\emph default -, como por exemplo para mudanzas no formato do documento. - Estes son un par de defeitos do LyX, que ainda non están solucionados. -\end_layout - -\end_deeper -\begin_layout Description -Cortar/Colar/Copiar Use -\family sans -\bar under -E -\bar default -ditar\SpecialChar \menuseparator -Cortar -\family default - (ou Crtl+X), -\family sans -\bar under -E -\bar default -ditar\SpecialChar \menuseparator -Colar -\family default - (ou Crtl+V), e -\family sans -\bar under -E -\bar default -ditar\SpecialChar \menuseparator -Copiar (ou Crtl+C) -\family default - para cortar, colar e copiar. - Outra posibilidade consiste en colar o texto seleccionado (mesmo noutros - programas) clicando no -\emph on -botón central -\emph default - do rato. -\end_layout - -\begin_layout Description -Procurar/Substituir Utilice -\family sans -\bar under -E -\bar default -ditar\SpecialChar \menuseparator - -\bar under -P -\bar default -rocurar -\begin_inset space ~ -\end_inset - -e -\begin_inset space ~ -\end_inset - -Substituir -\family default -, isto vai lanzar unha caixa de diálogo que lle permite -\family sans -Procurar -\family default - un dado texto, Substitui-lo por outro -\begin_inset Foot -status open - -\begin_layout Plain Layout -Cando rematar pode fechar a xanela, ou deixa-la aberta, segundo lle resulte - mais cómodo. - A maioria das caixas de diálogo no LyX — incluindo as correspondentes a - -\family sans -\bar under -P -\bar default -rocurar -\begin_inset space ~ -\end_inset - -e -\begin_inset space ~ -\end_inset - -substituir -\family default -, -\family sans -\bar under -T -\bar default -áboa -\begin_inset space ~ -\end_inset - -de -\begin_inset space ~ -\end_inset - -contidos -\family default -, e -\family sans -\bar under -C -\bar default -onfiguración -\family default - (do documento), asi como os vários diálogos matemáticos — son xanelas que - poden deixar-se abertas, ou minimizadas, en vez de fechadas. - Uns poucos diálogos, como o -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator - -\bar under -A -\bar default -brir -\family default -, non lle permiten porén escreber nada na xanela principal do LyX, até os - fechar. - Asegure-se de manter en foco a xanela axeitada, ao tentar escreber na xanela - principal do LyX ou ao executar un comando noutra caixa de diálogo. -\end_layout - -\end_inset - -, podendo-se facer a procura sensíbel a maiúsculas/minúsculas, a palabras - completas o partes de palabras, e permitindo avanzar ou recuar no documento. -\end_layout - -\begin_layout Description -Formato -\begin_inset space ~ -\end_inset - -de -\begin_inset space ~ -\end_inset - -carácteres Pode -\emph on -enfatizar -\emph default - o texto (xeralmente converte os carácteres a itálica), pór en -\series bold -negrito -\series default -, ou en -\noun on - -\begin_inset Quotes eld -\end_inset - -Versalete -\begin_inset Quotes erd -\end_inset - - -\noun default - (normalmente pequenas maiúsculas, usado para nomes de persoas) no diálogo - -\family sans -\bar under -E -\bar default -ditar\SpecialChar \menuseparator - -\bar under -E -\bar default -stilo -\begin_inset space ~ -\end_inset - -do -\begin_inset space ~ -\end_inset - -texto. -\end_layout - -\begin_layout Description -Barra -\begin_inset space ~ -\end_inset - -de -\begin_inset space ~ -\end_inset - -Ferramentas Mesmo abaixo dos menus ha como mínimo unha barra chea de botóns - que lle permiten efectuar directamente algunhas das funcións mais populares: - -\family sans -Colar, Imprimir, Inserir -\begin_inset space ~ -\end_inset - -formula\SpecialChar \ldots{} - -\family default - Se mantiver o ponteiro do rato por riba dun deses botóns un par de segundos - aparecerá unha pequena nota amarela informando sobre a función do botón. -\end_layout - -\begin_layout Standard -Por agora ainda non escrebeu abondo para que estas funcións sexan úteis, - mas á medida que for escrebendo tente desfacer, colar, etc. -\end_layout - -\begin_layout Subsection -WYSIWYM: Espazos en branco no LyX -\end_layout - -\begin_layout Standard -Unha das cousas que mais estraña ao novo usuário é a forma como o LyX xere - os espazos en branco. - Pode premer repetidamente o -\family sans -Return -\family default -, mais só obterá unha liña en branco; ou premer veces sen conta a -\family sans -barra espazadora -\family default -, e só obterá un espazo. - Nunha liña en branco, o LyX non permite nen introducir tan sequer un espazo - en branco. - A tecla -\family sans -Tab -\family default - non engade o consabido espazos de tubulazón, de facto non -\emph on -existen -\emph default - tais espazos, nen existe regra na parte superior da páxina que lle permita - estabelecer -\family sans -tabuladores, -\family default - nen tampouco alterar as marxes. -\end_layout - -\begin_layout Standard -Moitos procesadores de texto comerciais basean-se na filosofia WYSIWYG -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -WYSIWYG: -\begin_inset Quotes eld -\end_inset - -What You See Is What You Get -\begin_inset Quotes erd -\end_inset - - . -\end_layout - -\end_inset - - (o que vé e o que obtén), porén o LyX ten filosofia própria: WYSIWYM -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -WYSIWYM: -\series bold - -\lang english -W -\series default -hat -\series bold -Y -\series default -ou -\series bold -S -\series default -ee -\series bold -I -\series default -s -\series bold -W -\series default -hat -\series bold -Y -\series default -ou -\series bold -M -\series default -ean. -\end_layout - -\end_inset - - (o que vé é o que pretende facer). - O usuário especifica o que pretende obter, sendo o LyX o que se preocupa - da composición tipográfica, dando lugar a unha saída con cualidade profisional. - Gramaticalmente un -\family sans -Return -\family default - separa parágrafos, entanto un espazo en branco separa palabras, polo que - non ha razón para ter vários seguidos nunha liña; un -\family sans -espazo de tabulado -\family default - non ten nengunha función gramatical, e portanto o LyX non o considera. - Ao traballar co LyX, investirá máis tempo preocupando-se do -\emph on -contido -\emph default - dos documentos, e menos preocupando-se do -\emph on -formato -\emph default - dos mesmos -\emph on -. - -\emph default - Na -\emph on -Introdución -\emph default - pode ver mais información sobre a filosofia WYSIWYM. -\end_layout - -\begin_layout Standard -Contodo, no LyX tamén existen (moitas) maneiras de afinar manualmente o - formato dos documentos. - Ao fin e ao cabo é posíbel que o LyX non acerte coa composición tipográfica - exacta que o autor tiña en mente. - Estas formas de afinar o formato aparecen descritas no -\emph on -Guia do Usuário -\emph default -, incluindo entre outras espazados horizontal e vertical máis potentes e - versáteis que os espazos ou as liñas en branco — e formas para especificar - manualmente o tamaño e o tipo de fonte, e o aliñamentos dos parágrafos. - Agora ben, o que pretenden os autores do LyX é que o usuário poda despreocupar- -se do formato, prestando-lle atención só ao final. - Evitando algo que ocorre con frecuéncia cos procesadores de texto tradicionais; - que o usuário dedica mais tempo e esforzo a forma do que ao contido do - documento. -\end_layout - -\begin_layout Section -Ambientes -\end_layout - -\begin_layout Standard -En LyX o texto, en función do seu propósito no documento, clasifica-se en - -\emph on -ambientes -\emph default -. - Usualmente nun documento a maioria do texto non ten un formato especial, - é texto normal, mais é usual que estexa divido en capítulos, seccións \SpecialChar \ldots{} - - e que cada unha desas partes teña un título que lle permiten dan unha idea - ao leitor do que vai ser tratado a seguir. - O texto normal, o título dunha sección, o nome do autor, son exemplos de - ambientes que aparecen en moitos documentos. - Ha tamén alguns ambientes que son específicos dun tipo de documento determinado -: o resumo dun artigo, o enderezo do remitente dunha carta, etc. -\end_layout - -\begin_layout Standard -Os ambientes son unha peza importante a hora de implementar a filosofia - WYSIWYM no LyX. - Os vários ambientes teñen en xeral diferente aspeito, o título dun capítulo - ten que diferenciar-se do título dunha subsección ou da bibliografia, e - para os distinguir empregan-se: fontes diferentes (família, tamaño, tipo), - espazamento entre liñas diferentes, etc. - O asunto ainda pode ser mais complicado, asi por exemplo cada xornal científico - adoita ter as suas preferéncias de formato para os distintos ambientes: - un editor pode querer títulos de sección con unha fonte de 18 pontos, en - negrito, e o texto centrado, entanto outro teña por norma utilizar outra - fonte de 15 pontos, en itálico, e o texto xustificado á esquerda; e desde - logo moi dificilmente van estar de acordo nos formatos da bibliografia. - O LyX está deseñado para lle permitir lidar dignamente con estas complexidades, - sen necesidade de lle prestar atención de mais aos diferentes estilos de - formatación. -\end_layout - -\begin_layout Standard -A caixa de -\family sans -Ambientes -\family default - fica na esquerda da barra de ferramentas (xusto por baixo do menu -\family sans -\bar under -F -\bar default -icheiro -\family default -). - Nesta caixa ha un menu despregueábel que permite escoller o ambiente, indicando - en todo momento en que tipo de ambiente se acha o cursor. - Asi no seu primeiro documento até o momento indicou sempre -\family sans -Normal, -\family default - que é o ambiente predefinido, mais agora é tempo de experimentar outros - ambientes, para o cal só ha que clicar na caixa de -\family sans -Ambientes -\family default - e escoller algun dos que aparecen no menu. -\end_layout - -\begin_layout Subsection -Seccións e Subseccións -\end_layout - -\begin_layout Standard -Escreba a palabra -\family typewriter -Introdución -\family default - na primeira liña do seu ficheiro LyX, e seleccione -\family sans -Sección -\family default - no menu -\family sans -Ambientes -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Non precisa -\emph on -seleccionar -\emph default - a liña. - Se non ha nada seleccionado, o LyX muda o ambiente do parágrafo onde se - acha o cursor. - Mais tamén é posíbel mudar o ambiente de vários parágrafos; seleccionando-os - antes de escoller o ambiente. -\end_layout - -\end_inset - -. - -\family default - Asegure-se de escoller o ambiente -\family sans -Sección -\family default - e -\emph on -non -\emph default - -\family sans -Sección*, -\family default - do que xa falaremos máis tarde. - O LyX etiqueta a sección con un -\family sans - -\begin_inset Quotes eld -\end_inset - -1 -\begin_inset Quotes erd -\end_inset - - -\family default - escrebendo o cabezallo (título) nunha fonte maior. - Prema agora a tecla -\family sans -Return -\family default -, e observe que a caixa de -\family sans -Ambientes -\family default - troca de -\family sans -Sección -\family default - a -\family sans -Normal -\family default -. - Na maior parte dos ambientes, incluído o cabezallo dunha sección, LyX asume - que o ambiente remata ao teclear -\family sans -Return. - -\family default - Escreba a introdución do documento: -\end_layout - -\begin_layout LyX-Code -Esta é a introdución do meu primeiro documento en LyX. -\end_layout - -\begin_layout Standard -Prema a tecla Return e seleccione novamente -\family sans -Sección -\family default - no menu -\family sans -Ambientes -\family default -. - O LyX escrebe un -\begin_inset Quotes eld -\end_inset - -2 -\begin_inset Quotes erd -\end_inset - - e agarda que o usuário dixite o título desta nova sección. - Dixite -\family typewriter -Mais cousas -\family default -, e verá que o LyX o escrebe coa tipografia própria do título dunha sección. -\end_layout - -\begin_layout Standard -Imos mellorando. - Volte ao final da -\begin_inset Quotes eld -\end_inset - -Sección -\begin_inset space ~ -\end_inset - -1 -\begin_inset Quotes erd -\end_inset - - (tras de -\begin_inset Quotes eld -\end_inset - -primeiro documento en LyX -\begin_inset Quotes erd -\end_inset - -), prema novamente a tecla -\family sans -Return -\family default -, e seleccione -\family sans -Sección -\family default - no menu de -\family sans -Ambientes -\family default -. - O LyX escrebe un -\begin_inset Quotes eld -\end_inset - -2 -\begin_inset Quotes erd -\end_inset - - e agarda que o usuário dixite un título. - Dixite -\family typewriter -Acerca deste documento -\family default -. - A sección -\begin_inset space ~ -\end_inset - - -\begin_inset Quotes eld -\end_inset - -Mais cousas -\begin_inset Quotes erd -\end_inset - -, que estaba antes como -\begin_inset Quotes eld -\end_inset - -Sección -\begin_inset space ~ -\end_inset - -2 -\begin_inset Quotes erd -\end_inset - -, é renumerada automaticamente como -\begin_inset Quotes eld -\end_inset - -Sección -\begin_inset space ~ -\end_inset - -3 -\begin_inset Quotes erd -\end_inset - - ! Aplicando a filosofia WYSIWYM, ao identificar un anaco de texto como - título da sección, o LyX encarrega-se automaticamente da sua numeración - e tipografia. -\end_layout - -\begin_layout Standard -Prema -\family sans -Return -\family default - para voltar ao ambiente -\family sans -Normal -\family default -, e escreba as seguintes cinco liñas: -\end_layout - -\begin_layout LyX-Code -As seccións e as subseccións descreben-se a seguir. -\end_layout - -\begin_layout LyX-Code -Descrición da sección -\end_layout - -\begin_layout LyX-Code -As seccións son maiores que as subseccións. -\end_layout - -\begin_layout LyX-Code -Descrición da subsección -\end_layout - -\begin_layout LyX-Code -As subseccións son menores que as seccións. -\end_layout - -\begin_layout LyX-Code - -\end_layout - -\begin_layout Standard -Clique na segunda liña e seleccione -\family sans -Subsección -\family default - no menu de -\family sans -Ambientes -\family default -. - O LyX etiqueta a subsección con -\begin_inset Quotes eld -\end_inset - -2.1 -\begin_inset Quotes erd -\end_inset - -, e escrebe o título nunha fonte maior que o texto normal e menor que o - título da sección. - Mude tamén a cuarta liña para o ambiente -\family sans -Subsección -\family default -. - Como seguramente xa esperaba, o LyX asignou-lle automaticamente a etiqueta - -\begin_inset Quotes eld -\end_inset - -2.2 -\begin_inset Quotes erd -\end_inset - -. - Se adiciona agora outra sección antes da -\begin_inset Quotes eld -\end_inset - -Sección 2 -\begin_inset Quotes erd -\end_inset - -, esta será renumerada para -\begin_inset Quotes eld -\end_inset - -Sección 3 -\begin_inset Quotes erd -\end_inset - -, e con ela as sua subseccións, que pasarán a ser a -\begin_inset Quotes eld -\end_inset - -3.1 -\begin_inset Quotes erd -\end_inset - - e a -\begin_inset Quotes eld -\end_inset - -3.2 -\begin_inset Quotes erd -\end_inset - -. - -\end_layout - -\begin_layout Standard -O LyX contempla outros níveis de hierarquia: -\family sans -Subsubsección -\family default -, -\family sans -Parágrafo -\family default -, e -\family sans -Subparágrafo -\family default -. - Anime-se e experimente con eles. - Pode observar que os cabezallos do parágrafo e subparágrafo non están numerados - por defeito, e que os subparágrafos están identados; porén como se explica - no -\emph on -Guia do Usuário -\emph default - é posíbel alterar estes comportamentos. - O nível mais alto da hierarquia corresponde aos -\family sans -Capítulos, -\family default - mais este ambiente só se pode empregar nalguns tipos ( -\emph on -clases -\emph default -) de documentos LyX (vexa-se a Sección -\begin_inset space ~ -\end_inset - - -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:clases_de_documentos" - -\end_inset - -). - -\end_layout - -\begin_layout Standard -Finalmente, tamén existen ambientes para seccións ou subseccións non numeradas. - Se trocar un dos cabezallos de -\family sans -Sección -\family default - a -\family sans -Sección* -\family default -, o LyX usará a mesma tipografia, mais sen numeración. - Outros ambientes similares son -\family sans -Capítulo*, Subsección* -\family default - e -\family sans -Subsubsección* -\family default -. - Probe a trocar algunhas das suas seccións ou subseccións para ambientes - non numerados, i.e. - con -\begin_inset Quotes eld -\end_inset - -* -\begin_inset Quotes erd -\end_inset - -, e observe como isto afecta á numeración das restantes seccións. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Arranxe os cabezallos de seccións e subseccións no arquivo de testes -\family typewriter -exemplo_bruto.lyx -\family default -. - -\end_layout - -\begin_layout Subsection -Listas e sub-listas -\end_layout - -\begin_layout Standard -O LyX oferece diferentes ambientes para elaborar listas. - Estes ambientes liberan-no de premer a tecla -\family sans -Tab -\family default - veces sen conta ao escreber un esquema, ou de renumerar inteiramente unha - lista cando quer adicionar un ponto no meio dela, permitindo-lle concentrar-se - no seu contido -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Desculpe que teimemos en subliñar este ponto ao longo do -\emph on -Tutorial -\emph default -, mais -\emph on -é -\emph default - o ponto principal da filosofia na que se basea o LyX. -\end_layout - -\end_inset - -. - Os diferentes tipos de documentos requeren, loxicamente, diferentes tipos - de lista: -\end_layout - -\begin_layout Itemize -Nas apresentación son usuais as listas, como esta, onde cada ítem vai precedido - dunha marca (ponto, asterisco\SpecialChar \ldots{} -), que se poden elaborar facilmente en LyX - co ambiente -\family sans -Listapontuada -\family default -. -\end_layout - -\begin_layout Itemize -Un esquema estrutura-se comodamente co ambiente -\family sans -Enumeración -\family default -, que facilita escreber listas ordenadas por números e letras. - -\end_layout - -\begin_layout Itemize -Un documento descrebendo pacotes de software pode empregar o ambiente -\family sans -Descrición -\family default -, onde cada ítem na lista comeza con unha palabra en negrito. - -\end_layout - -\begin_layout Itemize -O ambiente -\family sans -Lista -\family default - (próprio do LyX, i.e. - non existe en LaTeX) é unha forma levemente diferente do ambiente -\family sans -Descrición -\family default -. -\end_layout - -\begin_layout Standard -Escrebamos unha lista de razóns polas cais o LyX é mellor que os outros - procesadores de texto. - Algures no seu documento escreba: -\end_layout - -\begin_layout Standard - -\family typewriter -O LyX é mellor que os outros procesadores de texto porque: -\end_layout - -\begin_layout Standard -\noindent -e prema -\family sans -Return -\family default -. - Agora seleccione -\family sans -Listapontuada -\family default - no menu de -\family sans -Ambientes -\family default -. - O LyX engade á liña unha -\begin_inset Quotes eld -\end_inset - -marca -\begin_inset Quotes erd -\end_inset - -, na realidade un asterisco, que será convertido nun ponto gordo na (pré)impresi -ón. - Escreba as suas razóns: -\end_layout - -\begin_layout LyX-Code -O programa encarrega-se da composición tipográfica. -\end_layout - -\begin_layout LyX-Code -A escritura de fórmulas matemáticas é WYSIWYG. -\end_layout - -\begin_layout LyX-Code -É moi sinxelo elaborar listas! -\end_layout - -\begin_layout Standard -Os ambientes de lista, a diferenza dos cabezallos, non terminan ao premer - a tecla -\family sans -Return -\family default -. - As avesas, o LyX asume que o usuário quer continuar a engadir ítens á lista, - de maneira que ao premer -\family sans -Return -\family default - engade outro ítem a lista. - Asi o resultado do exercício anterior será unha lista de tres ítens. - Para obter un ítem con mais dun parágrafo pode-se utilizar un -\family sans -Return -\begin_inset space ~ -\end_inset - -Protexido -\family default -, que se obtén ao premer -\family sans -Ctrl-Return -\family default -. - E para rematar unha lista, precisa-se escoller o ambiente -\family sans -Normal -\family default - (o cal se pode obter coa combinación de teclas, -\family sans -M-p -\begin_inset space ~ -\end_inset - -p -\family default -). -\end_layout - -\begin_layout Standard -Ten xa unha fermosa lista pontuada, e pode visualizar cal será o seu aspeito - no documento impreso indo a -\family sans -\bar under -\noun on -V -\bar default -\noun default -er\SpecialChar \menuseparator - -\bar under -D -\bar default -VI -\family default - (ou -\family sans -\bar under -\noun on -V -\bar default -\noun default -er\SpecialChar \menuseparator -PostScript -\family default - ou -\family sans -\bar under -\noun on -V -\bar default -\noun default -er\SpecialChar \menuseparator -PD -\bar under -F -\family default -\bar default -)\SpecialChar \@. - Mais se cadra muda de idea e quer que a lista sexa numerada, non ten mais - que seleccionar toda a lista -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -O LyX non lle permite seleccionar a primeira marca sen seleccionar tamén - o parágrafo -\emph on -anterior -\emph default - á lista, o que probabelmente non quererá facer. - Do mesmo xeito, tampouco é posíbel seleccionar o número nun título de sección, - mais isto non o debe preocupar. -\end_layout - -\end_inset - - e escoller -\family sans -Enumeración -\family default - no menu de -\family sans -Ambientes -\family default - e voilá!. - E como xa vimos, se agora quixera engadir ou eliminar un ítem da lista, - o LyX encarregaria-se de manter coerente a numeración. -\end_layout - -\begin_layout Standard -Coa lista ainda seleccionada, pode trocar o ambiente, escollendo un dos - outros dous ambientes de lista, -\family sans -Descrición -\family default - e -\family sans -List -\family default -a, e observar asi o seu formato. - Neses dous ambientes, cada ítem da lista consta de un termo, a primeira - palabra do ítem, seguida por unha definición, o resto do parágrafo (até - premer a tecla -\family sans -Return -\family default -). - O termo pode ser escrito en negrito ( -\family sans -Descrición -\family default -) ou separado por un Tabulador -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Mais non un -\family sans -Tabulador -\family default - de máquina de escreber, patético, ríxido e fixo, senón un tabulador de - composición tipográfica, que se alterará para se axustar ao tamaño do maior - termo. -\end_layout - -\end_inset - - ( -\family sans -List -\family default -a) do resto do parágrafo. - Se quixer ter mais dunha palabra na definición, una as palabras con -\family sans -Espazos -\begin_inset space ~ -\end_inset - -Protexidos -\family default - -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Pode-se obter un espazo protexido coa combinación de teclas -\family sans -Crtl-Space -\end_layout - -\end_inset - -. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Arranxe a lista no -\family typewriter -exemplo_bruto.lyx -\end_layout - -\begin_layout Standard -É posíbel encaixar -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -[N.T.] En inglés utilizan as palabras -\emph on -to nest -\emph default -, e -\emph on -nested -\emph default -, para falar de listas, e outros ambientes que se encaixan uns noutros como - bonecas rusas. - Sen excesivo convencimento traducin por -\emph on -encaixar -\emph default -, -\emph on -encaixado/a -\emph default -. -\end_layout - -\end_inset - - listas unhas nas outras, de múltiplas e interesantes maneiras, o que permite - por exemplo escreber esquemas elaborados e asemade claros. - As listas elaboradas e pontuadas teñen diferentes tipos de numeración e - marcas nos diferentes níveis da hierarquia, sendo tais tipos e marcas modificáb -eis polo usuário. - No -\emph on -Guia do Usuário -\emph default - descrebe-se polo miúdo os diferentes tipos de listas, mostrando exemplos - onde se enguedellan estes diferentes tipos. -\end_layout - -\begin_layout Subsection -Outros Ambientes -\end_layout - -\begin_layout Standard -Para separar un texto citado do resto poden-se utilizar dous ambientes: - -\family sans -Cita -\family default -, para pequenos textos, e -\family sans -Citación -\family default -, para textos maiores. - Pensado para reproducir o código fonte de programas, o ambiente -\family sans -Código-LyX -\family default - usa a fonte monoespazada -\family typewriter -typewriter -\family default -, sendo este o único ambiente onde é posíbel empregar espazos en branco - múltiplos, necesários para identar código. - Se en vez de escreber programas prefere escreber poesia, conta co ambiente - -\family sans -Verso -\family default -, no cal se usa a tecla -\family sans -Return -\family default - para separar estrofes, e -\family sans -Ctrl-Return -\family default - para separar liñas nunha estrofe. - No -\emph on -Guia do Usuário -\emph default - incluen-se as descricións completas de todos os ambientes disponíbeis no - LyX. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Use os ambientes -\family sans -Cita, -\family default - -\family sans -Código-LyX, -\family default - e -\family sans -Verso -\family default - para mellorar -\begin_inset ERT -status collapsed - -\begin_layout Plain Layout - - -\backslash -linebreak -\end_layout - -\end_inset - - -\family typewriter -exemplo_bruto.lyx -\end_layout - -\begin_layout Chapter -Escrebendo documentos -\end_layout - -\begin_layout Standard -Esperamos que o capítulo anterior servise para facilitar os seus primeiros - pasos en LyX. - Agora xa sabe escreber texto simples, coñece algunhas operacións de edición, - e os úteis ambientes, mais seguramente espera poder escreber documentos - mais completos, e complexos, tais como: artigos, libros, manuais ou cartas. - Este capítulo esta escrito pensando en axudar-lle nesta tarefa, apresentando - primeiramente as clases de documentos, que permiten escreber comodamente - os distintos tipos de documentos, e a seguir moitas das cousas que tornan - o texto nun documento, tais como os títulos, as notas de rodapé, as referéncias - cruzadas, a bibliografia e os índices. -\end_layout - -\begin_layout Section -Clases de documentos -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:clases_de_documentos" - -\end_inset - -Os distintos tipos de documentos requeren distinta composición tipográfica; - asi por exemplo, nos libros usualmente ha leves diferenzas na composición - das duas páxinas dunha folla, entanto nos artigos normalmente non existe - esa diferenza. - Ademais moitos tipos de documentos conteñen ambientes específicos; nas - cartas usan-se alguns ambientes, tais como a morada do remetente ou a sinatura, - que non sen senso nun libro ou nun artigo. - As -\emph on -clases de documentos -\family sans -\emph default - -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -[N.T.] Na versión orixinal, en inglés, usan -\emph on -text class -\emph default - , supoño que para diferenciar-se un pouco da -\emph on -document class -\emph default - do LaTeX. - Sendo ambos conceitos equivalentes. - De facto os nomes das clases de documentos non están traducidos, por se - utilizar os de LaTeX. -\end_layout - -\end_inset - - -\family default - do LyX ocupan-se destas diferenzas a grande escala entre os diferentes - tipos de documento. - Este -\emph on -Tutorial -\emph default -, por exemplo, está escrito usando a clase Book (libro). - As -\emph on -clases de documentos -\emph default - son outra peza importante da filosofia WYSIWYM; grazas a elas o LyX sabe - cal é a tipografia axeitada para o documento, e o usuário pode despreocupar-se - dese aspeito. -\end_layout - -\begin_layout Standard -Probabelmente o seu documento de proba é da clase -\family sans -Article (artigo) -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Esta é usualmente a clase predefinida -\family typewriter -. -\end_layout - -\end_inset - -, -\family default - experimente a trocar de clase (na caixa de diálogo -\family sans -\bar under -D -\bar default -ocumento\SpecialChar \menuseparator - -\bar under -C -\bar default -onfiguración -\family default -) para ver como varia a tipografia. - Unha das cousas que muda ao trocar de clase de documento é o conxunto de - ambientes que se poden usar, e para ver os que permite unha determinada - clase, basta consultar o menu de -\family sans -Ambientes -\family default -. - Asi se trocar o seu documento para a clase -\family sans -Book -\family default - e observar o menu de -\family sans -Ambientes -\family default -, comprobará que se ben apenas ha variación nos ambientes permitidos, agora - pode utilizar o ambiente -\family sans -Capítulo -\family default -. - -\end_layout - -\begin_layout Standard -Tamaños das fontes, unha ou duas colunas, e cabezallos das páxinas son algunhas - das características que diferencian as composicións tipográficas dos diferentes - xornais. - Ao ir avanzando na era da computación, os xornais pasaron a aceitar artigos - submetidos electronicamente, para o cal definen os seus próprios ficheiros - de estilo en LaTeX, de maneira que os autores podan enviar os seus artigos - xa coa tipografia axeitada. - Estes ficheiros de estilo poden adaptar-se facilmente para o LyX, e unha - boa chea deles xa o están. - -\end_layout - -\begin_layout Standard -Na seguinte táboa apresenta-se unha breve referéncia de algunhas clases - de documentos. - Mais pode achar-se moita mais información relativa as ditas clases no -\emph on -Guia do Usuário -\emph default -, sección -\emph on -Tipos de Documentos -\emph default - ( -\emph on -Document Types -\emph default -), e no manual de -\emph on -Funcións avanzadas -\emph default -, sección -\emph on -Clases de documentos especiais -\emph default - ( -\emph on -Special Document Clases -\emph default -). -\end_layout - -\begin_layout Standard -\begin_inset VSpace 0.3cm -\end_inset - - -\end_layout - -\begin_layout Standard -\align center -\begin_inset Tabular - - - - - - -\begin_inset Text - -\begin_layout Plain Layout -Nome -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -Notas -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -article (artigo) -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -unha cara -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -As duas caras dunha folla teñen as mesmas características. -\end_layout - -\end_inset - -, sen capítulos -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -article (AMS) -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -composición & ambientes para a American Math Society -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -report (relatório) -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -máis extenso que o artigo, duas caras -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -A cara anterior e a posterior dunha mesma folla diferen levemente. -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -book (libro) -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -relatório + capa e contracapa -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -slides (apresentación) -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -transparéncias (tamén inclui FoilTeX) -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -letter (carta) -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -ambientes específicos para enderezos, sinatura\SpecialChar \ldots{} - -\end_layout - -\end_inset - - - - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset VSpace 0.3cm -\end_inset - - -\end_layout - -\begin_layout Section -Modelos: escrebendo unha carta -\end_layout - -\begin_layout Standard -Todos os dias escreben-se inumeras cartas no mundo. - En LyX pode-se escreber unha carta criando un ficheiro novo, -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator - -\bar under -N -\bar default -ovo, -\family default - e escollendo -\family sans -Letter -\family default - no menu -\family sans -\bar under -C -\bar default -lase do documento -\family default - da caixa de diálogo -\family sans -\bar under -D -\bar default -ocumento\SpecialChar \menuseparator - -\bar under -C -\bar default -onfiguración -\family default -. - Mais esta non é a opción mais cómoda. - Calquer carta comercial debe incluir o enderezo do remitente e o do recipendári -o, a sinatura, etc. - O LyX facilita a escritura das cartas fornecendo ao usuário con un -\emph on -modelo -\emph default - para cartas, do cal partir para escreber unha. -\end_layout - -\begin_layout Standard -Abra un novo ficheiro con -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator -Novo -\begin_inset space ~ -\end_inset - -desde -\begin_inset space ~ -\end_inset - - -\bar under -m -\bar default -odelo, -\family default - seleccione -\family typewriter -letter.lyx -\family default - como modelo, guarde o novo ficheiro con o nome que mellor lle praza, e - visualice como vai ser impreso o documento para ver a tipografia dos ambientes - incluídos. - -\end_layout - -\begin_layout Standard -Se abre o menu de -\family sans -Ambientes -\family default - verá vários ambientes, como o -\family sans -Meu -\begin_inset space ~ -\end_inset - -enderezo -\family default - que non existe na maioria das outras clases de documentos -\family sans -. - -\family default - Outras, como -\family sans -Enumeración e -\family default - -\family sans -Descrición -\family default -, son máis comuns -\family sans -. - -\family default - Fedelle un rato con eles para ver os que ha, e como funcionan. - Notará que por exemplo ao seleccionar o ambiente -\family sans -Sinatura -\family default - aparece a palabra -\begin_inset Quotes eld -\end_inset - -Signature: -\begin_inset Quotes eld -\end_inset - - en vermello antes da sinatura propriamente dita. - O texto en vermello non vai ser impreso, mais indica o sítio onde debe - escreber-se a sinatura. - Tamén poderá comprobar que, ainda que a sinatura debe escreber-se antes - da apertura ( -\begin_inset Quotes eld -\end_inset - -Opening -\begin_inset Quotes erd -\end_inset - -), na versión escrita aparecerá ao final da carta, como é usual. -\end_layout - -\begin_layout Standard -Como vimos anteriormente ao seleccionar o menu -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator -Novo -\begin_inset space ~ -\end_inset - -desde -\begin_inset space ~ -\end_inset - - -\bar under -m -\bar default -odelo -\family default - aparece un diálogo onde se poden escoller unha série de modelos fornecidos - polo LyX. - Agora ben, neste diálogo pode-se navegar polas diversas directórias do - seu computador, e portanto escoller calquer ficheiro lyx, que entón servirá - como -\family sans -modelo. - -\family default - Asi por exemplo pode gravar a carta coa que esta a experimentar, na cal - xa escrebeu nos campos correspondentes o seu nome, enderezo e sinatura, - con un nome axeitado, ex. - -\family typewriter -miña_carta.lyx -\family default -, e na sua directória. - Este ficheiro servira-lle como modelo sempre que o abra indo ao menu -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator -Novo -\begin_inset space ~ -\end_inset - -desde -\begin_inset space ~ -\end_inset - - -\bar under -m -\bar default -odelo, -\family default - e navegando até a sua directória. - No novo ficheiro aberto, sen nome ainda, xa aparecerán escritos de princípio - os seus nome, enderezo e sinatura. - O próximo exercício é obvio: escreba unha carta a alguén! -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Unha adverténcia: se estiver a escreber a partir dun -\family sans -modelo -\family default - e eliminar todo o texto dun ambiente dado— por exemplo, se eliminar todo - o campo -\family sans -Meu -\begin_inset space ~ -\end_inset - -Enderezo -\family default - para o substituir co seu próprio texto — e entón move o cursor sen escreber - algo, o ambiente pode desaparecer, xa que a maior parte dos ambientes non - poden existir sen texto. - Para recuperar o ambiente basta seleccioná-lo do menu -\family sans -de Ambientes -\family default - . -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -O uso de -\family sans -modelos -\family default - permite aforrar moito tempo, sendo aconsellábel o seu emprego, sempre que - posíbel. - Outro uso dos modelos é como ferramenta didáctica; tanto a aprendizaxe - individual, pois facilita aprender a tirar-lle partido as diferentes clases - de documentos, como para o ensino a un grupo de persoas, xa que permite - ao profesor guiar a aprendizaxe. -\end_layout - -\begin_layout Section -Títulos dos documentos -\end_layout - -\begin_layout Standard -O LyX (tal como o LaTeX) considera o título — que pode conter o próprio - título, o autor, a data e mesmo o resumo dun artigo — como unha parte separada - do documento. - -\end_layout - -\begin_layout Standard -Volte ao seu ficheiro de proba, que se non lle mudou de nome chamara-se - -\family typewriter -newfile.lyx, -\family default - e asegure-se de usar a clase de documento -\family sans -Article -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Para esta parte non se pode usar a clase de documento -\family sans -Letter, -\family default - xa que non permite o uso do ambiente -\family sans -Título -\family default -. -\end_layout - -\end_inset - -. - -\family default - Escreba un título na primeira liña e escolla o ambiente -\family sans -Título -\family default -. - Na liña seguinte escreba o seu nome e troque de ambiente para -\family sans -Autor -\family default -. - Nunha nova liña dixite a data, e escolla o ambiente -\family sans -Data -\family default -. - Por último escolla o ambiente -\family sans -Resumo -\family default - e nel escreba un parágrafo ou dous con un sumário do seu documento. - É o momento de ver que aspeito terá unha vez impreso. - -\end_layout - -\begin_layout Standard -Se agora troca a clase de documento para -\family sans -Book -\family default -, o título aparecerá nunha páxina separada, como a primeira páxina deste - tutorial, mais antes terá que trocar de ambiente o resumo, xa que ese ambiente - non existe en -\family sans -Book -\family default -. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Arranxe o título, data e autor no ficheiro -\family typewriter -exemplo_bruto.lyx -\end_layout - -\begin_layout Section -Etiquetas e referéncias cruzadas -\end_layout - -\begin_layout Standard -É posíbel etiquetar partes do documento, como seccións, subseccións, figuras, - táboas\SpecialChar \ldots{} - para posteriormente facer referéncia a esas partes en calquer lugar - do seu documento. - Este tipo de referéncias, coñecidas como referéncias cruzadas, poden ser - tanto directamente ao texto etiquetado, número da sección, número da táboa, - etc., como a páxina onde aparece o elemento etiquetado. - E tal como coas seccións ou coas notas de rodapé, o usuário non precisa - de se preocupar cos detalles do manexo das referéncias cruzadas, basta - etiquetar e referir-se a etiqueta, en calquer orde e en calquer momento, - e o LyX ocupa-se do resto. - O manexo flexíbel e fiábel das etiquetas e das referéncias cruzadas por - parte do LyX (e do LaTeX), constitui un dos seu pontos fortes en comparación - cos procesadores de texto convencionais. -\end_layout - -\begin_layout Subsection* -A sua primeira etiqueta -\end_layout - -\begin_layout Standard -É tempo de colocar a sua primeira etiqueta, por exemplo na segunda sección - do seu documento de proba, esa cuxo título é -\begin_inset Quotes eld -\end_inset - -Acerca deste documento -\begin_inset Quotes erd -\end_inset - -. - Clique no fin da liña do título da sección e seleccione -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator - -\bar under -E -\bar default -tiqueta -\family default -, abrirá-se entón unha caixa de diálogo con unha suxestión para o nome da - etiqueta, suxestión que loxicamente pode aceitar ou ignorar. - Unha vez conforme co nome da etiqueta clique OK, co cal se fechará a caixa - de diálogo e aparecerá unha caixa cincenta co nome da etiqueta onde estaba - o cursor. -\end_layout - -\begin_layout Standard -As referéncias de sección referen-se á sección ou subsección na cal fica - a etiqueta, asi que poderia ter colocado a etiqueta en calquer lugar da - sección. - Mais inserir a etiqueta no título da sección, ou na liña a seguir, asegura - que ao referir o número de páxina, esta sexa a correspondente ao título - da sección. -\end_layout - -\begin_layout Standard -Se agora imprimir o documento non notará nengunha diferenza, xa que as etiquetas - en si non aparecen impresas. - Mais unha etiqueta pode ser referenciada, e as referéncias cruzadas si - aparecen no documento impreso. -\end_layout - -\begin_layout Subsection* -A sua primeira referéncia cruzada -\end_layout - -\begin_layout Standard -Coloque o cursor nalgunha parte da Sección -\begin_inset space ~ -\end_inset - -3 do seu documento, e escreba: -\end_layout - -\begin_layout LyX-Code -Se quer saber máis acerca deste documento, vexa -\begin_inset Newline newline -\end_inset - -a Sección , que se acha na páxina . -\end_layout - -\begin_layout Standard -Agora, co cursor xusto despois da palabra -\begin_inset Quotes eld -\end_inset - -sección -\begin_inset Quotes erd -\end_inset - -, escolla -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator - -\bar under -R -\bar default -eferéncia -\begin_inset space ~ -\end_inset - -cruzada -\family default -. - Xurdirá entón a caixa de diálogo -\family sans -Referéncia -\begin_inset space ~ -\end_inset - -cruzada, -\family default - mostrando unha série de posíbeis etiquetas que pode referir. - Na verdade neste momento debe haber só unha, a sua primeira etiqueta. - Seleccione-a (se non está xa pré-seleccionada) e clique en -\family sans -\bar under -A -\bar default -plicar -\family default -. - Posicione agora o cursor xusto despois da palabra -\begin_inset Quotes eld -\end_inset - -páxina -\begin_inset Quotes erd -\end_inset - -, e repita o procedimento anterior, mais trocando de formato, escollendo - , na vez do que aparece predefinido, . - Para que o proceso sexa totalmente correcto deberá inserir un -\family sans -espazo -\begin_inset space ~ -\end_inset - -protexido (Crtl-Space) -\family default - entre a referéncia e a palabra anterior. -\end_layout - -\begin_layout Standard -O LyX coloca a referéncia nunha caixa cincenta onde estaba o cursor. - No documento impreso esta caixa vai ser substituída polo número da sección - ou da páxina (dependendo do formato escollido no diálogo -\family sans -Referéncia -\begin_inset space ~ -\end_inset - -cruzada -\family default -). - Obteña unha pré-impresión ( -\family sans -\bar under -\noun on -V -\bar default -\noun default -er\SpecialChar \menuseparator - -\bar under -A -\bar default -ctualizar\SpecialChar \menuseparator - -\bar under -D -\bar default -VI -\family default - ou -\family sans -\bar under -\noun on -V -\bar default -\noun default -er\SpecialChar \menuseparator - -\bar under -A -\bar default -ctualizar\SpecialChar \menuseparator -Pos -\bar under -t -\bar default -scritp -\family default - ou -\family sans -\bar under -\noun on -V -\bar default -\noun default -er\SpecialChar \menuseparator - -\bar under -A -\bar default -ctualizar\SpecialChar \menuseparator -PD -\bar under -F -\family default -\bar default -) para ver como son substituídas as referéncias. -\end_layout - -\begin_layout Standard -Ademais as referéncias facilitan a vida do usuário funcionando como hiper-ligazó -ns á hora de editar documentos en LyX; clicando nunha xurde o diálogo -\family sans -Referéncia -\begin_inset space ~ -\end_inset - -cruzada -\family default -, onde se pode seleccionar o botón -\family sans -\bar under -I -\bar default -r á etiqueta -\family default -, que leva o cursor á etiqueta referida. - O atallo -\family sans -Crtl-< -\family default - devolve o cursor a caixa coa referéncia. -\end_layout - -\begin_layout Subsection* -Un pouco mais de xogo -\end_layout - -\begin_layout Standard -Dixemos anteriormente que o LyX se encarrega do manexo das referéncias cruzadas; - chegou o momento de ver como!. - Insira unha nova sección antes da Sección -\begin_inset space ~ -\end_inset - -2, volte a visualizar como vai sair o documento impreso, e — voilà! — a - referéncia cruzada da sección pasou a: -\begin_inset Quotes eld -\end_inset - -3 -\begin_inset Quotes erd -\end_inset - -! Troque o ambiente de -\begin_inset Quotes eld -\end_inset - -Acerca deste Documento -\begin_inset Quotes erd -\end_inset - - para -\family sans -sub-sección -\family default -, e verá como a referéncia cruzada refere agora Subsección -\begin_inset space ~ -\end_inset - -2.1 en vez de Sección -\begin_inset space ~ -\end_inset - -3. - Por outra banda a referéncia da páxina non se vé alterada, xa que a sección - tornou-se subsección, mais non mudou de páxina. -\end_layout - -\begin_layout Standard -Se quixer praticar un pouco máis tente inserir unha nova etiqueta onde colocou - a sua primeira referéncia cruzada, e refira esa etiqueta noutra parte calquer - do documento. - Para comprobar que o LyX manexa correctamente as referéncias cruzadas en - documentos mais extensos, copie algunhas páxinas do -\emph on -Guia do Usuário -\emph default - e cole-as no seu documento -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Observe que copiar o título dun capítulo dá lugar a unha adverténcia, pois - os capítulos non están previstos na clase -\family sans -Article -\family default -., e a que os títulos de capítulo troquen de ambiente para o -\family sans -normal -\family default -. - Se non entende porque acontece isto, consulte a Sección -\begin_inset space ~ -\end_inset - - -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:clases_de_documentos" - -\end_inset - -. - -\end_layout - -\end_inset - -. -\end_layout - -\begin_layout Standard -Se vai inserir referéncias cruzadas con frecuéncia (por exemplo ao escreber - un artigo académico), pode entón ser-lle máis cómodo deixar aberta a caixa - de diálogo -\family sans -Referéncia -\begin_inset space ~ -\end_inset - -cruzada -\family default -. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Arranxe as referéncias no ficheiro -\family typewriter -exemplo_bruto.lyx -\end_layout - -\begin_layout Section -Notas de rodapé e á marxe -\end_layout - -\begin_layout Standard -É posíbel inserir notas de rodapé ben desde a barra de tarefas -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -O botón mostra unha páxina con unha nota de rodapé. -\end_layout - -\end_inset - - ou através do menu -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator -Nota de roda -\bar under -p -\bar default -é -\family default -\SpecialChar \@. - Situe o cursor no fin da palabra -\begin_inset Quotes eld -\end_inset - -LyX -\begin_inset Quotes eld -\end_inset - - na introdución do seu documento de proba, para a seguir inserir unha nota - de rodapé por algun dos métodos antes vistos. - Xurdirá entón unha caixa en branco para a nota, precedida dun botón de - fondo cincento e coa palabra -\begin_inset Quotes eld -\end_inset - -rodapé -\begin_inset Quotes erd -\end_inset - - en vermello. - Na caixa en branco escreba -\end_layout - -\begin_layout LyX-Code -O Lyx é un procesador tipográfico de texto -\end_layout - -\begin_layout Standard -e clique sobre o botón cincento. - Ao clicar desaparecerá a caixa co texto da nota, ficando somente o botón - sinalando que aí ha unha nota de rodapé. - Chamamos a isto cobrir a nota de rodapé. - Podendo-se descobrir a nota en calquer momento, para a ler ou a editar, - sen mais que clicar sobre o botón cincento. -\end_layout - -\begin_layout Standard -Pode perguntar-se porque no botón da nota aparece escrito -\begin_inset Quotes eld -\end_inset - -rodapé -\begin_inset Quotes erd -\end_inset - - e non un número ou outra marca mais esclarecedora de como vai aparecer - no texto impreso. - A resposta é que o LyX ocupa-se automaticamente da numeración das notas - de rodapé, de maneira que pode inserir notas de rodapé en calquer lugar - do documento e en calquer momento, e o programa as renumera convenientemente. - -\end_layout - -\begin_layout Standard -As notas de rodapé poden-se cortadas e coladas como se foran texto normal, - non ha mais que seleccionar o botón rodapé -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Se cadra é-lle máis sinxelo seleccioná-lo usando o teclado. - Pois ao tentar usar o rato pode abrir sen querer a nota. -\end_layout - -\end_inset - - e -\family sans -Cortar -\family default - e -\family sans -Colar -\family default -. - É tamén posíbel converter texto normal en nota de rodapé; basta seleccionar - o texto e facer o mesmo que para inserir unha nota de rodapé valeira, ben - ir ao menu -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator -Nota de roda -\bar under -p -\bar default -é -\family default -, ben clicar no botón -\begin_inset Graphics - filename ../../images/footnote-insert.png - scale 85 - -\end_inset - - da barra de ferramentas. - O proceso inverso tamén é posíbel, basta colocar o cursor no início da - nota e premer a tecla -\family sans -Backspace, -\family default - ou alternativamente colocar o cursor no fin da nota e premer a tecla -\family sans -Supr -\family default -. - Se non o fixo xa é hora de experimentar un pouco coas notas de rodapé antes - de seguir adiante. -\end_layout - -\begin_layout Standard -As notas á marxe poden inserir-se ben desde o botón -\begin_inset Graphics - filename ../../images/marginalnote-insert.png - scale 85 - -\end_inset - - da barra de tarefas ou através do menu -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator -Nota á -\family default - -\family sans -\bar under -m -\bar default -arxe -\family default -\SpecialChar \@. - Esta notas son semellantes ás anteriores agás no seguinte: -\end_layout - -\begin_layout Itemize -no botón que as sinaliza di -\begin_inset Quotes eld -\end_inset - -marxe -\begin_inset Quotes erd -\end_inset - -. -\end_layout - -\begin_layout Itemize -no texto impreso estas notas aparecerán loxicamente na marxe, e non no rodapé. -\end_layout - -\begin_layout Itemize -as notas á marxe non están numeradas. -\end_layout - -\begin_layout Standard -No seu documento de proba troque unha nota de rodapé para texto normal, - a seguir seleccione ese texto e converta-o en nota á marxe. - Por último vaia ao menu -\family sans -\bar under -V -\bar default -er -\family default - para averiguar como son impresas as notas á marxe. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Arranxe a nota de rodapé no ficheiro -\family typewriter -exemplo_bruto.lyx -\family default -. -\end_layout - -\begin_layout Section -Bibliografia -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:bibliografias" - -\end_inset - -As bibliografias, cando menos en ciéncias, son semellantes as referéncias - cruzadas. - A bibliografia contén unha série de referéncias no fin do documento, que - poden ser referidas en calquer parte do mesmo. - LyX e LaTeX numeran automanticamente as entradas bibliográficas, encarregando-s -e en todo momento de manter correcta tal numeración, sexan cais sexan as - mudanzas que se fagan na mesma. -\end_layout - -\begin_layout Standard -Vaia ao fin do documento e troque o ambiente para -\family sans -Bibliografia -\family default -. - Agora, cada novo parágrafo será unha referéncia bibliográfica. - Como primeira referéncia escreba: -\family typewriter -O Tutorial do Lyx, pola Equipa de documentación do LyX -\family default -. - Observe que o LyX insere automaticamente unha caixa cincenta e numerada - antes de cada referéncia. - Clicando na caixa xurde o diálogo -\family sans -Configuración -\begin_inset space ~ -\end_inset - -de -\begin_inset space ~ -\end_inset - -entrada -\begin_inset space ~ -\end_inset - -bibliográfica, -\family default - con dous campos. - O primeiro, a chave, usa-se para identificar a referéncia no documento, - sendo por omisión a palabra -\family sans -key -\family default - seguida dun número. - Mude a chave para -\begin_inset Quotes eld -\end_inset - -tutorial-lyx -\begin_inset Quotes erd -\end_inset - -, que é mais fácil de lembrar. -\end_layout - -\begin_layout Standard -É hora de inserir unha cita bibliográfica no seu documento; coloque o cursor - onde lle pareza oportuno, e vaia ao menu -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator - -\bar under -C -\bar default -itación, -\family default - que fai xurdir un par de caixas de diálogo superpostas. - En primeiro plano aparece o diálogo -\family sans -Engadir cita -\family default -, que permite escoller entre as distintas entradas que ha na bibliografia - unha para citar neste ponto, para o cal cumpre seleccioná-la e premer no - botón -\family sans -\bar under -E -\bar default -ngadir -\family default -. - Premido o botón fica só o diálogo -\family sans -Citación -\family default -, que permite organizar as referéncias que van ser citadas, xa que é posíbel - facer várias citas no mesmo ponto. - Neste momento probabelmente só haxa unha entrada bibliográfica, -\begin_inset Quotes eld -\end_inset - -tutorial-lyx -\begin_inset Quotes erd -\end_inset - -, seleccione-a, e verá como no seu documento aparece unha caixa cincenta - coa dita entrada. - No documento impreso aparecerá un número entre parénteses, referindo a - entrada bibliográfica correspondente no fin do documento. -\end_layout - -\begin_layout Standard -As referéncias mediante números son moi comuns, mais existen outras posibilidade -s. - Por exemplo alguns xornais prescreben usar -\begin_inset Quotes eld -\end_inset - -[Castelao1944] -\begin_inset Quotes erd -\end_inset - - para se referiren a unha publicazón de Castelao do ano 1944. - E para isto é que serve o campo -\family sans -Etiqueta -\family default - da caixa de diálogo -\family sans -Configuración -\begin_inset space ~ -\end_inset - -de -\begin_inset space ~ -\end_inset - -entrada -\begin_inset space ~ -\end_inset - -bibliográfica. - -\family default - Consulte o -\emph on -Guia do usuário -\emph default - para mais detalles. -\end_layout - -\begin_layout Standard -É posíbel tamén completar a referéncia bibliográfica con mais información, - como o(s) capitulo(s) ou a(s) páxina(s) de interese no documento citado. - Isto consegue-se engadindo tal información no campo -\family sans -Texto -\family default - -\family sans -\bar under -d -\bar default -espois -\family default - do diálogo -\family sans -Citación -\family default -. - A información adicional aparecerá dentro dos parénteses e após a referéncia. -\end_layout - -\begin_layout Standard - -\series bold -Exercício: -\series default - Arranxe a bibliografia e a cita no ficheiro -\family typewriter -exemplo_bruto.lyx -\end_layout - -\begin_layout Section -Índices -\end_layout - -\begin_layout Standard -Nalgunhas ocasións pode desexar incluir un índice no seu documento, ben - no início ben no fin. - Co LyX isto é moi doado; prema -\family sans -Return -\family default - entre o título e a primeira sección do seu documento e escolla -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator -L -\bar under -i -\bar default -sta -\begin_inset space ~ -\end_inset - -/ -\begin_inset space ~ -\end_inset - -Indices\SpecialChar \menuseparator - -\bar under -I -\bar default -ndice -\begin_inset space ~ -\end_inset - -xeral -\family default -, e onde estaba o cursor aparecerá un botón onde di -\begin_inset Quotes eld -\end_inset - -Índice Xeral -\begin_inset Quotes erd -\end_inset - - . - A primeira vista non parece que gañará moito, mais se actualiza a vista - do documento como vai ser impreso verá que se acabou de xerar un índice - coas seccións e subseccións do documento. -\end_layout - -\begin_layout Standard -Á primeira vista todo isto lle pode parecer pouco útil. - No entanto, se for dar unha espreitadela á pré-impresión, pode verificar - que acabou de xerar un índice onde se encontran listadas as várias seccións - e sub-seccións do seu documento. - Se en calquer momento reordena as seccións ou cria seccións novas, o LyX - encarrega-se de manter todo en orde. -\end_layout - -\begin_layout Standard -O índice xeral non pode ser editado directamente, e por iso non aparece - listado no documento, porén se clicar no botón correspondente xurdirá unha - xanela cos contidos do dito índice. - Outra maneira de aceder aos ditos contidos é mediante o menu Navegar, que - se pode usar sen necesidade de inserir un índice xeral no documento. - Grazas a este menu poderá mover-se facilmente entre as distintas seccións - e subseccións do documento. -\end_layout - -\begin_layout Standard -O botón do índice, e con el o índice, pode eliminar-se da mesma maneira - que unha letra calquer. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Arranxe o índice do ficheiro -\family typewriter -exemplo_bruto.lyx -\end_layout - -\begin_layout Chapter -Escrebendo fórmulas -\end_layout - -\begin_layout Standard -Moitos cientistas usan LaTeX porque a composición tipográfica que permite - obter, especialmente coas fórmulas matemáticas, ten moi boa cualidade, - dando unha aparéncia profisional aos documentos que non se obtén cos procesador -es de texto estándar e os seus editores matemáticos. - Agora ben, escreber ecuacións en LaTeX asemella-se mais á programazón do - que á escrita, razón pola que ha tamén moitos outros cientistas que non - o usan, a pesar dos magníficos resultados. - -\end_layout - -\begin_layout Standard -O LyX é unha moi boa solución neste caso, xa que permite escreber fórmulas - facilmente, a sua filosofia WYSIWYM é especialmente axeitada para esta - tarefa, e os resultados son iguais de bons que co LaTeX. - Se está afeito a escreber con LaTeX poderá seguir a empregar os seus úteis - mas incómodos comandos, mais con unha intuitiva visualización WYSIWYM. - Se, por outro lado, nunca usou LaTeX, non teña medo, o -\family sans -Painel -\begin_inset space ~ -\end_inset - -matemático -\family default - permitirá-lle escreber rápida e facilmente ecuacións con un aspeito profisional -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Polo momento o LyX non garante que as suas fórmulas estexa correctas, mais - si un bon resultado estético. - -\end_layout - -\end_inset - -. -\end_layout - -\begin_layout Section -Modo matemático -\end_layout - -\begin_layout Standard -Algures no seu documento de proba escreba: -\end_layout - -\begin_layout LyX-Code -Gosto da famosa fórmula de Einstein, E=mc^2, pola sua simplicidade. -\end_layout - -\begin_layout Standard -A ecuación asi escrita non ten moi boa aparéncia, mesmo na forma impresa; - as variábeis e o sinal de igualdade están xuntos de mais, e o cadrado poderia - estar mellor representado. - A pésima composición tipográfica debe-se a ter utilizado texto normal para - escreber a fórmula, en vez de usar o modo matemático. -\end_layout - -\begin_layout Standard -Para criar unha fórmula vaia a barra de ferramentas e clique no botón -\begin_inset Graphics - filename ../../images/math-mode.png - scale 85 - -\end_inset - -. - Isto dá lugar a aparición onde ficaba o cursor dun pequeno rectángulo azul - dentro doutro rectángulo púrpura, que representa unha fórmula matemática - valeira. - Ademais o cursor moveu-se ao interior do rectángulo. - Dixite novamente E=mc^2, verá que é escrito en azul, e que o cadrado azul - desaparece. - Para sair do modo matemático pode ben premer a tecla Esc, ben premer duas - veces a tecla coa frecha para direita, -\begin_inset Formula $\rightarrow$ -\end_inset - -. - O rectángulo purpura desaparece, deixando o cursor á direita da fórmula, - e se agora escrebe algo xa será texto normal. -\end_layout - -\begin_layout Standard -Consulte a pré-impresión e verá como a fórmula ten agora moito mellor aspeito, - con espazos a ambos lados do signo de igualdade, o -\begin_inset Quotes eld -\end_inset - -2 -\begin_inset Quotes erd -\end_inset - - co tamaño e a posición dun expoente, e as letras, que se asume son variábeis, - en itálico. - Os números son só números. -\end_layout - -\begin_layout Standard -O editor matemático é outro exemplo da filosofia WYSIWYM. - En LaTeX, usan-se comandos tais como -\family typewriter - -\backslash -sqrt -\family default - ou -\family typewriter - -\backslash -frac -\family default - para escreber as fórmulas matemáticas, de maneira que se a expresión é - un pouco complexa non é fácil visualizá-la mentalmente. - Sendo preciso compilar o ficheiro latex para poder visualizá-la realmente - nunha pré-impresión. - Por outra banda cumpre ter moito cuidado ao escreber para non cometer erros - como a falta dalgun parénteses, ou a inclusión dalgun termo indebido dentro - dunha raiz. -\end_layout - -\begin_layout Standard -O LyX non trata de visualizar exactamente cal vai ser o resultado impreso - da fórmula (WYSIWYG), mais dá unha idea aproximada, que con un pouco de - experiéncia resulta moi fiábel. - Na imensa maioria das veces o resultado final vai ser satisfactório sen - necesidade de preocupar-se dos pequenos detalles; tamaño dalgunha variábel, - posición dun determinado signo, etc. - Isto permite ao usuário, e sabemos que nos repetimos, concentrar-se no - contido das fórmulas, sen necesidade de esforzar-se na sua forma. -\end_layout - -\begin_layout Section -Navegando nas ecuacións -\end_layout - -\begin_layout Standard -Vamos modificar agora a fórmula -\begin_inset Formula $E=mc^{2}$ -\end_inset - - para obter -\begin_inset Formula $E=1+mc^{2}$ -\end_inset - -. - As teclas con frechas serven para mover o cursor, tanto en texto normal - como no modo matemático. - Leve o cursor até a fórmula, e observe que ao entrar nela aparece novamente - o rectángulo púrpura, indicando que está en modo matemático. - Situe o cursor após o signo igual, coas teclas con frechas ou co rato, - e insira -\begin_inset Quotes eld -\end_inset - -1+ -\begin_inset Quotes erd -\end_inset - -. - Despois, pode usar as teclas con frechas ou -\family sans -Esc -\family default - para sair da fórmula, o que fará desaparecer o rectángulo púrpura novamente. - -\end_layout - -\begin_layout Standard -Alén das teclas especiais descritas mais abaixo, a edición en modo matemático - é similar a edición en texto normal. - Use -\family sans -Supr -\family default - (ou -\family sans -Backspace -\family default -) para eliminar carácteres, seleccione texto coas teclas con frechas ou - co rato, corte, copie e cole normalmente -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Pode cortar ou copiar parte dunha fórmula e colá-la dentro da mesma fórmula, - ou noutra fórmula distinta, mais loxicamente non pode colá-la no texto - normal. -\end_layout - -\end_inset - -, e lembre que en caso de erro sempre pode -\family sans -\bar under -D -\bar default -esfacer -\family default - ou -\family sans -\bar under -R -\bar default -efacer -\family default - no menu -\family sans -\bar under -E -\bar default -ditar -\family default -. - Adverténcia: se o cursor estiver xunto a unha fórmula, mais fora dela, - premer -\family sans -Supr -\family default - (ou -\family sans -Backspace -\family default -) elimina-a toda ela. - Nese caso pode empregar -\family sans -\bar under -E -\bar default -ditar\SpecialChar \menuseparator - -\bar under -D -\bar default -esfacer -\family default - para a recuperar. -\end_layout - -\begin_layout Standard -E se agora quixer mudar o expoente de -\begin_inset Formula $E=mc^{2}$ -\end_inset - -, por exemplo para -\begin_inset Formula $E=mc^{2.5}$ -\end_inset - - ? Pode situar o rato e clicar no sítio axeitado, ou pode empregar as teclas - das frechas. - Coas teclas -\begin_inset Formula $\rightarrow$ -\end_inset - - e -\begin_inset Formula $\leftarrow$ -\end_inset - - situe primeiramente o cursor após o -\begin_inset Quotes eld -\end_inset - -c -\begin_inset Quotes erd -\end_inset - - e antes do -\begin_inset Quotes eld -\end_inset - -2 -\begin_inset Quotes erd -\end_inset - -, prema entón na tecla -\begin_inset Formula $\uparrow$ -\end_inset - - e verá como o cursor se pasa ao nível do expoente, xusto antes do -\begin_inset Quotes eld -\end_inset - -2 -\begin_inset Quotes erd -\end_inset - -. - Mova-se agora coa tecla -\begin_inset Formula $\rightarrow$ -\end_inset - - e engada o -\begin_inset Quotes eld -\end_inset - -.5 -\begin_inset Quotes erd -\end_inset - -. - Para baixar de nível pode loxicamente premer a tecla -\begin_inset Formula $\downarrow$ -\end_inset - -, ou como está no fin do nível superior a tecla -\begin_inset Formula $\rightarrow$ -\end_inset - -. - En todo caso, ao premer a tecla -\begin_inset Formula $\downarrow$ -\end_inset - - o cursor baixa de nível e situa-se na posición -\emph on -após -\emph default - o expoente, con independéncia da sua posición anterior no expoente. -\end_layout - -\begin_layout Section -Expoentes e índices -\end_layout - -\begin_layout Standard -É posíbel inserir un expoente desde o -\family sans -Painel -\begin_inset space ~ -\end_inset - -Matemático -\family default -, como se verá a seguir, porén é mais rápido inserir un acento circunflexo - -\begin_inset Quotes eld -\end_inset - -^ -\begin_inset Quotes erd -\end_inset - - e premer a tecla de espazo. - Isto dá lugar a aparición dun pequeno rectángulo azul nunha posición levemente - superior, a correspondente aos expoentes, sendo posíbel escreber no dito - rectángulo o que se quixer, que aparecerá nun tamaño de letra menor. - Todo o que escreber nel, até premer a tecla espazo, a tecla -\begin_inset Formula $\rightarrow$ -\end_inset - - ou -\family sans -Esc -\family default - (para sair de vez do modo matemático) -\family sans -, -\family default - tornará-se parte do expoente. -\end_layout - -\begin_layout Standard -Os índices (sub-índices) teñen un tratamento semellante, iniciando-se neste - caso ao inserir un -\family sans -trazo -\begin_inset space ~ -\end_inset - -baixo -\family default - ( -\begin_inset Quotes eld -\end_inset - -_ -\begin_inset Quotes eld -\end_inset - -). - É posíbel inserir índices e expoentes dentro doutros índices e expoentes, - como por exemplo: -\begin_inset Formula $A_{a_{0}+b^{2}}+C^{a_{0}+b^{2}}$ -\end_inset - -. - -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Transforme a ecuación 1 do -\family typewriter -exemplo_bruto.lyx -\family default - ao modo matemático. -\end_layout - -\begin_layout Section -O -\family sans -Painel matemático -\end_layout - -\begin_layout Standard -O -\family sans -Painel -\begin_inset space ~ -\end_inset - -matemático -\family default - permite inserir facilmente símbolos ou comandos matemáticos. - Tamén existen atallos de teclado que permiten inserir moitos símbolos e - comandos, mais para aprender as posibilidades. - que oferece o editor matemático do LyX o mais fácil e didáctico é usar - o -\family sans -Painel -\begin_inset space ~ -\end_inset - -matemático -\family default -. - Posteriormente poderá ver noutros manuais os atallos de teclado correspondentes. - Abra entón o painel desde o menu con -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator - -\bar under -F -\bar default -ormula\SpecialChar \menuseparator - -\bar under -P -\bar default -ainel -\begin_inset space ~ -\end_inset - -matemático -\family default - e deixe-o aberto entanto le esta sección. - Outra forma de abrir o painel é clicando no botón direito do rato en calquer - fórmula. -\end_layout - -\begin_layout Subsection -Símbolos -\end_layout - -\begin_layout Standard -Na parte direita do painel ha un recadro con un conxunto de símbolos. - Na parte superior do recadro ha un menu despregueábel que permite escoller - entre distintos conxuntos de símbolos: operadores, relacións, letras gregas, - frechas \SpecialChar \ldots{} - Non ten mais que clicar en calquer deses símbolos para os incluir - no seu texto, ou nas suas fórmulas. - Na parte inferior do recadro, por riba do botón de -\family sans -\bar under -F -\bar default -echar -\family default -, ha outro botón , -\family sans -\bar under -S -\bar default -eparar painel -\family default -, que loxicamente permite ter paineis independentes para os distintos conxuntos - de símbolos. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Escreba no se documento de proba: -\begin_inset Quotes eld -\end_inset - -Eu -\begin_inset Formula $\heartsuit$ -\end_inset - - LyX -\begin_inset Quotes erd -\end_inset - -. -\end_layout - -\begin_layout Subsection -Raices e fraccións -\end_layout - -\begin_layout Standard -Prema no botón -\begin_inset Graphics - filename ../../images/math/sqrt-square.png - scale 85 - -\end_inset - - do painel matemático e verá como se abre un menu despregueábel que lle - permite escoller entre vários tipos de raiz. - Ao escoller, por exemplo, a raiz cúbica inserirá-se no texto o típico signo - da raiz, con un 3 na parte superior esquerda, e con un rectángulo azul - dentro da raiz. - O cursor fica dentro do dito rectángulo, no cal poderá escreber números, - variábeis, outras raices ou o que desexar. - Verá que ao ir adicionando ou eliminando carácteres a raiz vai-se redimensionan -do para abranxer todo o que for escrito dentro. -\end_layout - -\begin_layout Standard -A mesma facilidade existe para traballar coas fraccións. - No painel matemático ha un botón con unha fracción con un rectángulo azul - no numerador e outro no denominador. - Clicando nel insere-se unha fracción no texto con dous pontos de insercións, - no numerador e no denominador, podendo-se pasar dun ao outro coas frechas - ou co rato. - Insira unha fracción no seu ficheiro de proba, verá que o cursor aparece - no nominador, escreba un -\begin_inset Quotes eld -\end_inset - -1 -\begin_inset Quotes erd -\end_inset - - e pase despois ao denominador e escreba un -\begin_inset Quotes eld -\end_inset - -2 -\begin_inset Quotes erd -\end_inset - - . - Xa ten unha fracción, sinxela mais unha fracción. - Porén é posíbel escreber fraccións moito mais complicadas, xa que tanto - no denominador como no numerador pode escreber calquer expresión matemática: - variábeis, raices, outras fraccións, etc. -\end_layout - -\begin_layout Subsection -Acentos e delimitadores -\end_layout - -\begin_layout Standard -O LyX permite usar un bon número de -\begin_inset Quotes eld -\end_inset - -acentos -\begin_inset Quotes erd -\end_inset - - matemáticos, cos que é posíbel acentuar calquer carácter ( -\begin_inset Formula $\overrightarrow{v}$ -\end_inset - -) ou grupo de carácteres ( -\begin_inset Formula $\overrightarrow{a+b}$ -\end_inset - -). - Estes acentos seleccionan-se na sección -\family sans -Decoración -\family default -, do menu despregueábel que ha no recadro -\family sans -Símbolos -\family default -, á direita do painel. - Verá que ha acentos longos, que se expanden co texto acentuado, e outros - curtos, que manteñen o seu tamaño sexa cal sexa o texto acentuado. - Loxicamente o texto acentuado é o que se escrebe no rectángulo azul que - aparece ben por baixo, ben por riba do acento. -\end_layout - -\begin_layout Standard -Os delimitadores, como parénteses curvos, parénteses rectos ou chaves, inseren-s -e desde un painel que se lanza ao premer o botón -\begin_inset Graphics - filename ../../images/math/delim.png - scale 85 - -\end_inset - -. - O par de delimitadores seleccionados mostra-se na parte inferior. - Por defeito ten-se un par de parénteses curvos, mais é posíbel escoller - calquer par de delimitadores; unha chave esquerda e un paréntese recto - direito, duas chaves esquerdas, o mesmo un dos delimitadores valeiro, para - obter algo como -\begin_inset Quotes eld -\end_inset - - -\begin_inset Formula $a=\left\langle 7\right.$ -\end_inset - - -\begin_inset Quotes erd -\end_inset - - (o delimitador valeiro mostra-se como unha liña a trazos en LyX, mais non - aparecerá no documento impreso). -\end_layout - -\begin_layout Standard -É posíbel dixitar directamente parénteses no modo matemático, o cal é mais - cómodo que usar o painel matemático, mais estes parénteses terán o tamaño - do texto normal, e non van modificá-lo ao introducir fraccións ou matrices - entre os delimitadores. - O resultado estético será normalmente moi pobre. - Pola contra os delimitadores do painel matemático mudan o seu tamaño en - función do que haxa entre eles, e o resultado estético está garantido. -\end_layout - -\begin_layout Standard -Tamén é posíbel aplicar delimitadores, raices ou acentos a texto escrito - previamente. - Basta con seleccionar a porción da fórmula que se quer modificar e clicar - no botón respectivo do -\family sans -Painel -\begin_inset space ~ -\end_inset - -matemático -\family default -. - Probe a mudar a segunda lei de Newton da forma escalar para a forma vectorial - ( -\begin_inset Formula $f=ma$ -\end_inset - - para -\begin_inset Formula $\overrightarrow{f}=m\overrightarrow{a}$ -\end_inset - -). - A operación inversa, i.e. - eliminar uns delimitadores, unha raiz ou un acento dunha porción de texto, - realiza-se colocando o cursor no início da dita porción e premendo a tecla - -\family sans -Backspace -\family default - (a tecla que elimina o carácter anterior ao cursor). -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Arranxe a ecuación 2 do -\family typewriter -exemplo_bruto.lyx -\family default -. -\end_layout - -\begin_layout Subsection -Modo TeX: Limites, log, sin e outros -\end_layout - -\begin_layout Standard -No modo matemático asume-se que as letras son variábeis, de maneira que - se escreber sen mais o nome dunha función, por exemplo -\begin_inset Quotes eld -\end_inset - -cos -\begin_inset Quotes erd -\end_inset - -, o LyX pensará que está a escreber o produto de várias variábeis, neste - caso tres: -\begin_inset Formula $c$ -\end_inset - -, -\begin_inset Formula $o$ -\end_inset - -, e -\begin_inset Formula $s$ -\end_inset - -. - Para diferenciar as variábeis das funcións o LaTeX escrebe as primeiras - en itálico, e as segundas en -\family sans -Roman, -\family default - ademais introduz un pequeno espazo entre unha función e a variábel corresponden -te. - Ou sexa escrebe -\begin_inset Quotes eld -\end_inset - - -\begin_inset Formula $\cos x$ -\end_inset - - -\begin_inset Quotes erd -\end_inset - - e non -\begin_inset Quotes eld -\end_inset - - -\begin_inset Formula $cosx$ -\end_inset - - -\begin_inset Quotes erd -\end_inset - -. - -\end_layout - -\begin_layout Standard -Na parte esquerda do -\family sans -Painel -\begin_inset space ~ -\end_inset - -matemático -\family default - listan-se as funcións matemáticas mais comuns. - Clique en -\begin_inset Quotes eld -\end_inset - -cos -\begin_inset Quotes erd -\end_inset - -, e verá como se insere a función -\begin_inset Quotes eld -\end_inset - -cos -\begin_inset Quotes erd -\end_inset - - no texto. - Ainda que a función fica dentro dunha fórmula o texto aparece escrito en - negro e en letra normal (non inclinada). - Mais non é texto normal, toda a palabra é tratada como un único signo, - de maneira que se preme en -\family sans -Backspace -\family default - eliminará toda a palabra, e se fai recuar o cursor verá como aparece o - rectángulo purpura que arrodea as ecuacións. - Coloque agora o cursor a direita da función, mais dentro do rectángulo, - e escreba -\begin_inset Quotes eld -\end_inset - -x -\begin_inset Quotes erd -\end_inset - -. - Tal e como é de esperar no modo matemático a variábel -\begin_inset Quotes eld -\end_inset - -x -\begin_inset Quotes erd -\end_inset - - escrebe-se en azul e en itálico. - Vexa agora a pré-impresión para comprobar o resultado final. -\end_layout - -\begin_layout Standard -Ás funcións predefinidas polo LyX, como a calquer outro texto, pode-se-lle - engadir índices e expoentes, o que permite escreber expresións tais como - -\begin_inset Quotes eld -\end_inset - - -\begin_inset Formula $\cos^{2}\theta$ -\end_inset - - -\begin_inset Quotes erd -\end_inset - - ou -\begin_inset Quotes eld -\end_inset - - -\begin_inset Formula $\lim_{n\rightarrow\infty}$ -\end_inset - - -\begin_inset Quotes erd -\end_inset - -. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Transforme a ecuación 3 do -\family typewriter -exemplo_bruto.lyx -\family default - no modo matemático. -\end_layout - -\begin_layout Subsection -Matrices -\end_layout - -\begin_layout Standard -O botón -\begin_inset Graphics - filename ../../images/math/matrix.png - scale 85 - clip - -\end_inset - - do -\family sans -Painel -\begin_inset space ~ -\end_inset - -matemático -\family default - serve loxicamente para inserir matrices. - Ao clicar nese botón abre-se o diálogo -\family sans -Matriz matemática -\family default - que permite escoller o número de liñas e de colunas que vai ter a matriz. - Escolla 2 liñas e 3 colunas e feche o diálogo. - O LyX inserirá unha matriz de -\begin_inset Formula $2\times3$ -\end_inset - - rectángulos azuis, nos que poderá escreber calquer expresión matemática - (raices cúbicas, fraccións, logaritmos, outras matrices\SpecialChar \ldots{} -), mesmo pode deixar - algun dos rectángulos valeiro. - Pode mover-se entre os elementos da matriz coa tecla -\family sans -Tab -\family default - e as teclas con frechas. - -\end_layout - -\begin_layout Standard -Ao colocar o cursor nunha matriz matemática, no menu principal -\family sans -\bar under -E -\bar default -ditar -\family default - aparecen un par de novos epígrafes, un dos cais, -\family sans -\bar under -F -\bar default -ilas e colunas, -\family default - permite engadir ou eliminar filas e colunas, e modificar os seus aliñamentos - horizontal e vertical. - -\end_layout - -\begin_layout Standard -Lembre que é posíbel debuxar uns delimitadores axeitados para a matriz seleccion -ando-a e escollendo os delimitadores no -\family sans -Painel -\begin_inset space ~ -\end_inset - -matemático -\family default -. -\end_layout - -\begin_layout Standard -Por último cumpre-nos asinalar que non é recomendábel utilizar matrices - matemáticas para escreber texto. - Para iso son moito mellores as táboas. -\end_layout - -\begin_layout Subsection -Fórmulas independentes -\end_layout - -\begin_layout Standard -Até o momento escrebemos fórmulas que ficaban na mesma liña que o texto - que viña antes e despois delas, polo que receben o nome de fórmulas en - liña. - As fórmulas en liña usan-se normalmente cando son curtas e simples, mais - con expresións longas e complexas, ou cando se desexa salientaren no texto - usan-se as fórmulas independentes. - Ademais só as fórmulas independentes poden seren etiquetadas e numeradas, - e as ecuacións multi-liña teñen que ser obrigatoriamente independentes - (vexa o -\emph on -Guia do usuário -\emph default -). -\end_layout - -\begin_layout Standard -Clique no botón -\family sans - -\begin_inset Graphics - filename ../../images/math-display.png - -\end_inset - - -\family default - do -\family sans -Painel -\begin_inset space ~ -\end_inset - -matemático -\family default - e verá como aparece no texto unha fórmula valeira independente, i.e. - centrada nunha nova liña. - Escreba agora unha expresión matemática e lance unha pré-impresión para - ver o aspeito final. - Se o cursor está xa nunha expresión matemática o botón -\family sans - -\begin_inset Graphics - filename ../../images/math-display.png - -\end_inset - - -\family default - troca entre formula en liña e independente, i.e. - se inicialmente ten-se unha fórmula en liña pasa-se a ser independente - e vice-versa. -\end_layout - -\begin_layout Standard -As fórmulas independentes apresentan algunhas diferenzas a respeito das - en liña: -\end_layout - -\begin_layout Itemize -O tamaño da letra é maior nalguns símbolos, como -\begin_inset Formula $\sum$ -\end_inset - - e -\begin_inset Formula $\int$ -\end_inset - -. -\end_layout - -\begin_layout Itemize -Os índices e os expoentes para límites e somatórios (mais non para integrais) - escreben-se por baixo dos símbolos, e non a continuación deles. -\end_layout - -\begin_layout Itemize -O texto está centrado. -\end_layout - -\begin_layout Standard -Fora destas diferenzas as fórmulas en liña e independentes son moi similares. -\end_layout - -\begin_layout Standard -Finalmente unha nota sobre a colocación das fórmulas independentes no texto. - Se quer que unha fórmula independente fique dentro dun parágrafo entón - non prema o -\family sans -Return -\family default - ao sair dela. - Mais se xa o fixo non ten mais que situar o cursor no início da frase, - que segue á fórmula, e premer -\family sans -Backspace -\family default -. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Faga independentes as várias fórmulas do -\family typewriter -exemplo_bruto.lyx -\family default - e vexa o seu aspeito nunha pré-impresión. -\end_layout - -\begin_layout Standard - -\series bold -Exercício -\series default -: Usando as várias ferramentas que aprendeu nesta sección, escreba unha - ecuación como esta -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Despois de facé-lo desde zero probe con -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator - -\bar under -F -\bar default -ormula\SpecialChar \menuseparator -Entorno -\family default - -\family sans -\bar under -c -\bar default -asos -\end_layout - -\end_inset - -: -\begin_inset Formula \[ -f(x)=\left\{ \begin{array}{cc} -\log_{8}x & x>0\\ -0 & x=0\\ -\sum_{i=1}^{5}\alpha_{i}+\sqrt{-\frac{1}{x}} & x<0 -\end{array}\right.\] - -\end_inset - - -\end_layout - -\begin_layout Section -Mais cuestións matemáticas -\end_layout - -\begin_layout Standard -No editor matemático pode-se facer moitas mais cousas. - Porén consideramos que o mais básico xa foi explicado, e encamiñamos ao - leitor ao -\emph on -Guia do usuário -\emph default - para ver como: -\end_layout - -\begin_layout Itemize -Etiquetar e numerar as ecuacións. -\end_layout - -\begin_layout Itemize -Escreber ecuacións multiliña -\end_layout - -\begin_layout Itemize -Trocar de tipo de letra, por exemplo para usar negrito nunha fórmula. -\end_layout - -\begin_layout Itemize -Facer un axuste fino no tamaño da letra e no espazamento dentro das fórmulas. - (Non se preocupe disto até a versión final do texto do seu documento!) -\end_layout - -\begin_layout Itemize -Escreber macros. - Poden ser moi úteis, basta defini-los unha vez no início do documento e - poden utilizar-se en calquer parte. - Se muda a definición do macro, as referéncias ao macro serán modificadas - en todo o documento. - Os macros poden mesmo tomar argumentos. -\end_layout - -\begin_layout Itemize -Facer moitas outras cousas que nen se mencionan neste -\emph on -Tutorial -\emph default -. -\end_layout - -\begin_layout Chapter -Miscelánea -\end_layout - -\begin_layout Section -Outras importantes funcionalidades do LyX -\end_layout - -\begin_layout Standard -Neste tutorial non se pretende documentar todos os posíbeis comandos do - LyX, para iso están o -\emph on -Guia do Usuário -\emph default - e o manual de -\emph on -Funcións avanzadas -\emph default -. - Mais para nos despedir apresentamos algunhas das funcionalidades do LyX - das cais ainda non falamos: -\end_layout - -\begin_layout Itemize -tratamento WYSIWYM de táboas. - As táboas poden inserir-se ben desde o menu principal, -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator - -\bar under -T -\bar default -áboa, -\family default - ben clicando no botón -\begin_inset Graphics - filename ../../images/tabular-insert.png - scale 85 - clip - -\end_inset - - da barra de ferramentas. - Clicando na táboa co -\emph on -botón direito -\emph default - abre-se o diálogo -\family sans -Configuración -\begin_inset space ~ -\end_inset - -da -\begin_inset space ~ -\end_inset - -táboa -\family default -, que permite editar a táboa polo miúdo. -\end_layout - -\begin_layout Itemize -inclusión, e manexo, de imaxe nos documentos, (con -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator - -\family default - -\family sans -Ima -\bar under -x -\bar default -e -\family default - ou clicando no botón -\begin_inset Graphics - filename ../../images/dialog-show-new-inset_graphics.png - scale 85 - -\end_inset - -). - -\begin_inset Quotes eld -\end_inset - -De fabrica -\begin_inset Quotes erd -\end_inset - - o LyX entende vários formatos vectoriais: PostScript®, PostScript Encapsulado - (EPS), Scalable Vector Graphics (SVG) e LaTeX puro, e os formatos bitmap - mais usuais (png, jpeg, tif, bmp, \SpecialChar \ldots{} -), mais é posíbel configurá-lo para utilizar - praticamente calquer formato. - Tanto as táboas como as figuras pode ser acompañadas de lexendas, sendo - posíbel criar automaticamente listas de táboas e/ou figuras. -\end_layout - -\begin_layout Itemize -controlo de versións, mediante RCS ( -\family typewriter -man rcsintro -\family default - para máis información). -\end_layout - -\begin_layout Itemize -altamente personalizábel. - Ha moitas cousas que o usuário pode mudar no LyX, desde o aspeito visual - da xanela principal até os comandos para exportar documentos. - Moitas destas mudanzas poden-se facer desde o menu, -\family sans -Ferramentas -\family default - -\family sans -\SpecialChar \menuseparator -Pre -\bar under -f -\bar default -éncias, -\family default - outras son menos acesíbeis e para as facer cumpre ler o manual de -\emph on -Personalización -\family sans -\emph default -\SpecialChar \@. - -\end_layout - -\begin_layout Itemize -poliglota. - O LyX está é desenvolvido por unha equipa de programadores distribuída - pelos cinco continentes. - Por iso entende moitas línguas, podendo-se escreber documentos en distintos - alfabetos, e con escritas tanto de esquerda->direita como direita->esquerda. - Ten ademais os menus e documentación traducidos a várias línguas, e estamos - desexosos de receber novas traducións. - -\end_layout - -\begin_layout Itemize -corrección ortográfica disponíbel en ducias de línguas. - -\family sans -\bar under -F -\bar default -erramentas\SpecialChar \menuseparator - -\bar under -C -\bar default -orrector ortográfico -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Note-se que a corrección ortográfica comeza a partir do cursor. -\end_layout - -\end_inset - -. -\end_layout - -\begin_layout Itemize -navegación dos menus co teclado. - O LyX ten atallos de teclado que permite non ter que utilizar continuamente - o rato, e que poden ser personalizados polo usuário (vexa-se o manual de - -\emph on -Personalización -\emph default -). - -\end_layout - -\begin_layout Itemize -importación de documentos LaTeX. - Vexa-se a sección -\begin_inset space ~ -\end_inset - - -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:tex2lyx" - -\end_inset - -. -\end_layout - -\begin_layout Itemize -Minibuffer. - Na parte inferior da xanela principal ha unha liña cincenta na que se mostra - diversa información; o tipo de fonte usada ou o atallo de teclado correspondent -e a acción que se acaba de executar. - Sobre esta liña é posíbel abrir unha caixa de texto chamada minibuffer - (nome tomado dunha función similar en -\family sans -emacs -\family default -), que dá aceso a todo tipo de interesantes funcionalidades, incluindo algunhas - que permiten escangallar de vez o documento. - Polo que non debe escreber no minibuffer se non sabe o que está a facer. -\end_layout - -\begin_layout Section -O LyX para usuários de LaTeX -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:usuarioslatex" - -\end_inset - -Non é necesário saber nada de LaTeX para empregar o LyX, mais ter unha certa - idea permite aproveitá-lo mellor. - En todo caso moitos dos novos usuário de LyX teñen alguns coñecimentos - básico de LaTeX, e esta sección está pensada para eles. - -\end_layout - -\begin_layout Standard -Unha cuestión que se lle ocorre ao usuário de LaTeX que está a considerar - en usar o LyX, é se neste programa poderá conseguir facer todo o que o - LaTeX permite facer. - A resposta é afirmativa, dunha forma ou doutra, o LyX permite realizar - practicamente o mesmo que o LaTeX, mais simplificando grandemente o proceso - de escrita. - -\end_layout - -\begin_layout Standard -Co intuito de manter un Tutorial breve só se mencionan nel as cousas mais - básicas, as que os novos usuário do LyX precisan para comezar. - Mais no manual -\emph on -Funcións avanzadas -\emph default -, especificamente no capítulo -\emph on -\lang english -Secrets of the LaTeX Masters -\emph default -\lang galician - (Secretos dos mestres do LaTeX), trata-se en profundidade as diferenzas - entre o LyX e o LaTeX, e como usar vários truques do LaTeX no LyX. -\end_layout - -\begin_layout Subsection -Modo TeX -\end_layout - -\begin_layout Standard -O LyX implementa moitos comandos do LaTeX, mais non todos. - No seu defeito oferece o modo TeX, que permite utilizar calquer comando - de LaTeX, sempre que o usuário o coñeza. - Para entrar neste modo pode-se ben clicar no botón -\color none - -\color red - -\begin_inset Graphics - filename ../../images/ert-insert.png - scale 85 - clip - -\end_inset - - -\color none - na barra de ferramentas, ou seleccionar no menu -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator -Códi -\bar under -g -\bar default -o -\begin_inset space ~ -\end_inset - -TeX. - -\family default - Abre-se entón unha caixa vermella precedida por un botón que pon en vermello - ERT -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -[N.T] Evil Red Text = Malvado texto vermello. - O nome fai referéncia a que o texto no modo TeX aparece escrito en vermello, - e que unha das tarefas da equipa desenvolvedora do LyX e facer desaparecer - a necesidade de usar ese texto vermello. -\end_layout - -\end_inset - -. - A caixa é loxicamente para escreber comandos TeX (LaTeX), que o LyX vai - pasar directamente ao LaTeX. - Todo o escrito na caixa vai aparecer en vermello, para asi diferenciá-lo - claramente. - -\end_layout - -\begin_layout Standard -No modo matemático basta con dixitar a barra invertida, -\begin_inset Quotes eld -\end_inset - - -\backslash - -\begin_inset Quotes erd -\end_inset - -, para entrar no modo TeX. - Entanto estexa no modo TeX o texto será escrito en vermello, saindo-se - del premendo na barra espazadora ou calquer outra tecla non alfabética: - un número, un paréntese, etc. - Unha vez abandonado o modo TeX, se o LyX coñece o comando escrito, vai-no - representar no xeito WYSIWYM. - Asi se nunha formula escreber o comando -\backslash -gamma, ao premer a barra espazadora o LyX trocará o texto -\family sans -\shape italic -\color red -gamma -\family default -\shape default -\color none - en vermello por un -\color blue - -\begin_inset Formula $\gamma$ -\end_inset - - -\color none - en azul. - Este método funciona con case todos os macros matemáticos non complicados, - sendo mais rápido que utilizar o -\family sans -Painel -\begin_inset space ~ -\end_inset - -Matemático -\family default -, especialmente para os usuários experientes do LaTeX. -\end_layout - -\begin_layout Standard -Constantemente están a aparecer novos pacotes de LaTeX, con novas funcionalidade -s e sen pedir permiso a unha autoridade central. - O LyX permite utilizar calquer deles sen mais que escreber -\family typewriter - -\backslash -usepackage{nome_do_pacote} -\family default - no preámbulo (vexa-se a Sección -\begin_inset space ~ -\end_inset - - -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:preambulo" - -\end_inset - -), mais sen suporte WYSIMYM para as funcionalidades do pacote. -\end_layout - -\begin_layout Subsection -Importando de LaTeX — -\family typewriter -tex2lyx -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:tex2lyx" - -\end_inset - -Para importar un documento LaTeX seleccione -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator - -\bar under -I -\bar default -mportar\SpecialChar \menuseparator -LaTeX (plain) -\family default - no menu principal. - Isto dá lugar a que o LyX chame o comando -\family typewriter -tex2lyx -\family default -, responsábel da tradución de LaTeX a LyX, crie un ficheiro co mesmo nome - que o orixinal, en latex, mais coa extensión -\family typewriter -lyx -\family default -, e abra este ficheiro lyx. - Se o proceso non for ben sucedido, tente executar o -\family typewriter -tex2lyx -\family default - na liña de comandos variando as opcións do programa. -\end_layout - -\begin_layout Standard - -\family typewriter -tex2lyx -\family default - entende e traduz a maior parte dos comandos e ambientes LaTeX, mais non - todos. - Usualmente deixa inalteradas as partes que non entende, en modo TeX. - Portanto tras importar un ficheiro LaTeX é bon procurar as partes non traducida -s, en vermello, e editá-las manualmente. - Se ben, en moitos casos, un documento con partes en modo TeX pode dar lugar - a un texto impreso de boa cualidade. - Ainda que no LyX non sexa facilmente lexíbel, perdendo-se o espirito do - WYSIWYM. -\end_layout - -\begin_layout Standard - -\family typewriter -tex2lyx -\family default - ten o seu próprio manual, ao que se acede con -\family typewriter -man tex2lyx -\family default -. - Lea-o para aprender que comandos e ambientes LaTeX non están soportados, - os seus erros (e como contorná-los), e as diferentes opcións coas que se - pode executar. -\end_layout - -\begin_layout Subsection -Exportando a LaTeX -\end_layout - -\begin_layout Standard -O LyX permite exportar directamente a LaTeX, escollendo -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator - -\bar under -E -\bar default -xportar\SpecialChar \menuseparator -LaTeX (plain) -\family default - no menu xerará-se un ficheiro LaTeX co nome igual ao documento lyx, mais - coa extensión -\family typewriter -.tex. - -\family default - É tamén posíbel tamén xerar un ficheiro LaTeX especialmente deseñado para - compilar con pdflatex, en vez de con latex, escollendo -\family sans -\bar under -F -\bar default -icheiro\SpecialChar \menuseparator - -\bar under -E -\bar default -xportar\SpecialChar \menuseparator -LaTeX (pdflatex) -\family default - no menu. - Para visualizar pré-impresións, ou para imprimir, o LyX xera ficheiros - temporários en LaTeX, portanto ten que ser bon xerando documentos con este - formato. -\end_layout - -\begin_layout Subsection -Configuración do documento -\end_layout - -\begin_layout Subsubsection - -\emph on -Clase -\emph default - do documento -\end_layout - -\begin_layout Standard -Indo a -\family sans -\bar under -D -\bar default -ocumento\SpecialChar \menuseparator - -\bar under -C -\bar default -onfiguración -\family default - abre-se unha caixa de diálogo que serve loxicamente para configurar o documento -, permitindo especificar moitas das opcións que se poden incluir no comando - -\family typewriter - -\backslash -documentclass -\family default - de LaTeX. - Asi pode-se mudar a -\emph on -clase -\emph default - do documento, o tipo e tamaño da fonte base, o tamaño do papel, as marxes, - a língua etc. - Ademais calquer opción extra para o comando -\family typewriter - -\backslash -documentclass -\family default - pode ser engadida no campo -\family sans -Opcións -\family default - da -\family sans -Configuración de clase -\family default - no apartado -\family sans -Clase do documento -\family default -. -\end_layout - -\begin_layout Subsubsection -Preámbulo LaTeX -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:preambulo" - -\end_inset - -Na caixa de diálogo -\family sans -Configuración do documento -\family default -, que se veu no parágrafo anterior, existe unha sección chamada -\family sans -Preámbulo LaTeX -\family default -, onde se poden incluir directamente comandos en LaTeX que afectarán a todo - o documento. - -\end_layout - -\begin_layout Subsection -BibTeX -\end_layout - -\begin_layout Standard -O LyX permite utilizar o BibTeX, un pacote para construir bases de dados - con referéncias bibliográficas, que poden ser usadas en diferentes documentos. - Seleccione -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator -Lista -\begin_inset space ~ -\end_inset - -/ -\begin_inset space ~ -\end_inset - -Indice\SpecialChar \menuseparator - -\bar under -B -\bar default -ibliografia BibTeX -\family default - para incluir un ficheiro -\family typewriter -bib -\family default -. - Clique no botón resultante -\begin_inset Quotes eld -\end_inset - -Bibliografia Xerada BibTeX -\begin_inset Quotes erd -\end_inset - - e xurdirá a caixa de diálogo -\family sans -Bibliografia BibTeX -\family default -. - No campo -\family sans -Banco -\begin_inset space ~ -\end_inset - -de -\begin_inset space ~ -\end_inset - -dados -\family default -, escreba o que escreberia entre as chaves do comando -\family typewriter - -\backslash -bibliography{} -\family default - -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Do mesmo xeito que en LaTeX, se ha várias bibliografias estas deben ir separadas - por vírgulas, sen espazos en branco. -\end_layout - -\end_inset - -. - Analogamente, escreba no campo -\family sans -Estilo -\family default - o que escreberia entre as chaves do comando -\family typewriter - -\backslash -bibliographystyle{} -\family default -. -\end_layout - -\begin_layout Standard -Após disto pode citar de calquer das bibliografias incluídas mediante o - comando -\family sans -\bar under -I -\bar default -nserir\SpecialChar \menuseparator -C -\bar under -i -\bar default -tación -\family default - (vexa a sección -\begin_inset space ~ -\end_inset - - -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:bibliografias" - -\end_inset - -). - A execución do BibTeX fica a cargo do LyX. -\end_layout - -\begin_layout Section -Erros ! -\end_layout - -\begin_layout Standard -Ás veces, ao tentar imprimir ou ver unha pré-impresión do documento, o LaTeX - topa con algo que non comprende. - Nestes casos o LyX abrirá a caixa de diálogo -\family sans -LyX: latex Erros -\family default - onde se listan os erros atopados. - Ao clicar nun erro determinado neste diálogo move-se o cursor até o ponto - que dá lugar ao dito erro, e mostra-se en detalle a mensaxe de erro que - produz o latex, na parte inferior da caixa de diálogo. -\end_layout - -\end_body -\end_document +#LyX 2.0.0svn created this file. For more info see http://www.lyx.org/ +\lyxformat 404 +\begin_document +\begin_header +\textclass book +\begin_preamble +% DO NOT ALTER THIS PREAMBLE!!! +% +%This preamble is designed to ensure that the document prints +% out as advertised. If you mess with this preamble, +% parts of the document may not print out as expected. If you +% have problems LaTeXing this file, please contact +% the documentation team +% email: lyx-docs@lists.lyx.org + +\usepackage{ifpdf} % part of the hyperref bundle +\ifpdf % if pdflatex is used + + % set fonts for nicer pdf view + \IfFileExists{lmodern.sty}{\usepackage{lmodern}}{} + +\fi % end if pdflatex is used + +% the pages of the TOC is numbered roman +% and a pdf-bookmark for the TOC is added +\let\myTOC\tableofcontents +\renewcommand\tableofcontents{% + \pdfbookmark[1]{\contentsname}{} + \myTOC } + +% redefine the \LyX macro for PDF bookmarks +\def\LyX{\texorpdfstring{% + L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@} + {LyX}} +\end_preamble +\use_default_options false +\maintain_unincluded_children false +\language galician +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_xetex false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize 12 +\spacing single +\use_hyperref true +\pdf_title "The LyX Tutorial" +\pdf_author "LyX Team, Ramón Flores" +\pdf_subject "LyX-documentation Tutorial" +\pdf_keywords "LyX, documentation" +\pdf_bookmarks true +\pdf_bookmarksnumbered true +\pdf_bookmarksopen true +\pdf_bookmarksopenlevel 1 +\pdf_breaklinks false +\pdf_pdfborder false +\pdf_colorlinks true +\pdf_backref false +\pdf_pdfusetitle false +\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false" +\papersize default +\use_geometry false +\use_amsmath 0 +\use_esint 0 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 0 +\index Índice +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 2 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 2 +\paperpagestyle headings +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Title +O Tutorial de LyX +\end_layout + +\begin_layout Author +pola equipa de LyX +\begin_inset Newline newline +\end_inset + +(Tradutor: +\noun on +Ramón Flores +\noun default + ) +\end_layout + +\begin_layout Date +26 de Decembro de 2006 +\end_layout + +\begin_layout Standard +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\end_layout + +\begin_layout Chapter +Introdución +\end_layout + +\begin_layout Section +Ben-vido ao LyX! +\end_layout + +\begin_layout Standard +Este ficheiro foi escrito pensando en todos aqueles que nunca ouviron falar + de LaTeX ou non o coñecen alá moi ben. + Comecemos dando unha boa notícia: non é preciso aprender LaTeX para usar + o LyX. + En realidade a razón de ser do LyX é fornecer unha interface cuase-WYSIWYG + para o LaTeX. + Porén ha algunhas cousas que precisará aprender para usar o LyX, e que + lle sexa de utilidade. +\end_layout + +\begin_layout Standard +Alguns dos leitores chegarian a este documento tras tentar inserir dous + espazos despois dun ponto, ou 3 liñas en branco entre parágrafos, mais + con certa frustración decataron-se que non o daban feito. + De facto, acharán que a maioria dos pequenos truques que están afeitos + a empregar noutros procesadores de texto, non funcionan en LyX. + Isto é por a maioria dos procesadores de texto permitiren, cando non requereren +, que o usuário introduza manualmente espazos, fontes, etc. + Co cal o usuário non só escrebe o documento, senón que tamén fai a composición + tipográfica do mesmo. + O LyX fai a composición automática e consistentemente, deixando ao usuário + concentrar-se nas cousas importantes: os contidos do documento. +\end_layout + +\begin_layout Standard +Portanto recomendamos-lle continuar a ler, o tempo adicado a este +\emph on +Tutorial +\emph default + non é tempo perdido, é tempo investido. +\end_layout + +\begin_layout Section +Que +\shape italic +é, +\shape default + e que non é, este Tutorial +\end_layout + +\begin_layout Standard +Antes de comezar esta sección, pretendemos salientar o seguinte, O +\emph on +Tutorial +\emph default + usa a notación definida na +\emph on +Introdu +\shape italic +\emph default +ción +\shape default +\SpecialChar \@. + Se comezou a ler a documentación por este manual, recomendamos-lle que + o deixe por un pouco e lea primeiro a +\shape italic +Introdución +\shape default +. +\end_layout + +\begin_layout Standard +Unha vez que xa sabe o significado das distintas fontes utilizadas no documento + pasamos a comentar a focaxe deste +\emph on +Tutorial +\emph default +. +\end_layout + +\begin_layout Subsection +Tirando o máximo proveito +\end_layout + +\begin_layout Standard +Este +\emph on +Tutorial +\emph default + consta de exemplos e exercícios, e para tirar o máximo proveito del, entanto + vai lendo, debe escreber todas esas pequenas cousas que se lle di de escreber, + e tamén tentar completar todos os exercícios suxeridos. + Para a sua comodidade, pode ser boa idea imprimir a versión PostScript® + deste documento. +\end_layout + +\begin_layout Standard +Se estiver familiarizado co LaTeX, probabelmente poderá ler o +\shape italic +Tutorial +\shape default + máis rapidamente, xa que a base do LyX é o LaTeX. + Porén o LyX posui algunhas idiosincrasias +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +ou, sendo optimistas, +\begin_inset Quotes eld +\end_inset + +características +\begin_inset Quotes erd +\end_inset + + +\end_layout + +\end_inset + + que cumpre ter en conta. + Mesmo se non quer ler o resto do +\shape italic +Tutorial +\shape default +, cumpre-lle botar un ollo á Sección +\begin_inset space ~ +\end_inset + + +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:usuarioslatex" + +\end_inset + +, escrita pensando especificamente nos usuários de LaTeX. +\end_layout + +\begin_layout Subsection +O que non +\shape italic +vai +\shape default + atopar +\end_layout + +\begin_layout Itemize +Explicacións detalladas de todas as funcións do LyX. +\end_layout + +\begin_deeper +\begin_layout Standard +Para iso xa está o +\emph on +Guia do Usuário. + +\emph default + Este documento só pretende-se introducir ao leitor no emprego do programa, + mais lembre que o Guia está sempre a sua disposición. + Tentar duplicar no +\emph on +Tutorial +\emph default + toda a información que aparece no +\emph on +Guia +\emph default + daria lugar a que este documento fose longo de mais, redundante, e frecuentemen +te desactualizado. +\end_layout + +\end_deeper +\begin_layout Itemize +Explicacións detalladas de LaTeX. +\end_layout + +\begin_deeper +\begin_layout Standard +Non son necesárias para usar o LyX. + Mais se estiver interesado en aprender alguns dos elegantes truques que + pode facer co LaTeX, sempre pode ler un libro de LaTeX. + No mercado existen vários bons libros, polo cal escusamos de escreber un + novo. +\end_layout + +\end_deeper +\begin_layout Standard +E agora chegou o momento de elaborar o seu primeiro documento \SpecialChar \ldots{} + +\end_layout + +\begin_layout Chapter +Comezando co LyX +\end_layout + +\begin_layout Section +O seu primeiro documento no LyX +\end_layout + +\begin_layout Standard + Antes de comezar a escreber é bon mencionarmos algunhas cousiñas que, esperemos +, tornen este +\emph on +Tutorial +\emph default + mais instrutivo, útil e divertido. + +\end_layout + +\begin_layout Standard +Dado que ha moita información que non vamos fornecer neste documento, o + primeiro que ten que facer é procurar os restantes documentos de axuda. + Isto é bastante sinxelo; inicie o LyX e vaia ao menu +\family sans +A +\bar under +x +\bar default +uda, +\family default + onde pode escoller os distintos manuais, abra o +\emph on +Guia de Usuário +\emph default +, e o +\emph on +Tutorial +\emph default + (se non o estiver xa a ler no monitor). + Asi, pode ler ambos encanto escrebe o seu próprio documento +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Poden servir tamén como bons exemplos de como usar as moitas características + do LyX. +\end_layout + +\end_inset + +. + Para pasar dun documento a outro ten que ir ao menu +\family sans +\bar under +V +\bar default +er +\family default +, e seleccionar o ficheiro que queira mostrar na xanela. + O +\emph on +Tutorial +\emph default + non cobre en detalle asuntos descritos noutros manuais do LyX, se ben isto + pode resultar incomodo inicialmente, permite termos un +\emph on +Tutorial +\emph default + breve. + Ademais afará-se a utilizar outros manuais do LyX, o cal — a longo prazo + — aforrará-lle moito tempo. +\end_layout + +\begin_layout Standard +Neste +\emph on +Tutorial +\emph default + imos asumir que no seu computador ten instalada unha versión do LyX totalmente + funcional, unha outra versión do LaTeX, o +\family typewriter +xdvi +\family default + ou outro visualizador de +\family typewriter +dvi +\family default +, o +\family typewriter +dvips +\family default + ou outro conversor de +\family typewriter +dvi +\family default + a PostScript®, e tamén seria bon se tiver unha impresora conectada e que + funcione. + Isto é moito asumir. + Se algo disto lle falta, vai ter que reconfigurar o seu sistema (ou pedir-llo + ao administrador do sistemas). + Pode achar información sobre configuracións noutros manuais, nomeadamente + no +\emph on +Guia do Usuário +\emph default +. +\end_layout + +\begin_layout Standard +Por último ha un documento especificamente escrito para praticar os seus + coñecimentos de LyX. + Chama-se +\family typewriter +exemplo_bruto.lyx +\family default +, supostamente escrito por alguén que ignora as grandes capacidades do LyX. + Segundo vaia aprendendo as novas funcións do LyX, suxeriremo-lle modificar + as partes correspondentes do documento +\family typewriter +exemplo_bruto.lyx +\family default +. + Verá que este documento contén algunhas dicas +\begin_inset Quotes eld +\end_inset + +subtis +\begin_inset Quotes erd +\end_inset + + para o axudar a arranxar as cousas +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +As dicas achan-se en +\begin_inset Quotes eld +\end_inset + +Notas +\begin_inset Quotes erd +\end_inset + + amarelas. + Para aceder ao texto da nota cumpre clicar na mesma. +\end_layout + +\end_inset + +. + Se desexar facer trampa (ou verificar se está a facer ben as cousas), ha + tamén un ficheiro chamado +\family typewriter +exemplo_lyxificado.lyx +\family default + que contén o mesmo texto escrito por un mestre LyXeiro. +\end_layout + +\begin_layout Standard +Os ficheiros de exemplo achan-se na directória +\family typewriter +examples/ +\family default +, á cal pode aceder desde LyX seleccionando +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator + +\bar under +A +\bar default +brir +\family default + e clicando no botón +\family sans +Exemplos +\family default +. + Abra o documento en bruto, e use +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator +Gravar +\family default + +\family sans +\bar under +c +\bar default +omo +\family default + para gravar unha cópia na sua directória e poder asi traballar nel. + Ao mellorar algunha parte do documento, verifique como afectan as mudanzas + na pré-impresión. +\end_layout + +\begin_layout Standard +Por certo, o directório +\family typewriter +examples/ +\family default + contén moitos outros ficheiros de exemplo, que mostran como utilizar o + LyX para obter resultados complexos e gozosos. + Estes ficheiros de exemplo son especialmente úteis para mostrar cousas + que (devido ao tamaño ou a outras razóns) non entran ben na documentación. + Após ler o +\emph on +Tutorial +\emph default +, ou se non sabe como facer algo complicado no LyX, dé unha olladela a estes + ficheiros. +\end_layout + +\begin_layout Subsection +Escreber, visualizar e imprimir +\end_layout + +\begin_layout Itemize +Abra un novo ficheiro con +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator + +\bar under +N +\bar default +ovo +\end_layout + +\begin_layout Itemize +Escreba unha frase como: +\family typewriter +Este é o meu primeiro documento en LyX! +\end_layout + +\begin_layout Itemize +Grave o seu documento con +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator +Gravar +\begin_inset space ~ +\end_inset + + +\bar under +c +\bar default +omo\SpecialChar \@. + +\end_layout + +\begin_layout Itemize +Execute o LaTeX para criar unha pré-impresión (versión +\family typewriter +dvi, +\family default + +\family sans +postscript +\family default + ou +\family sans +pdf +\family default +), con +\family sans +\bar under +\noun on +V +\bar default +\noun default +er\SpecialChar \menuseparator + +\bar under +D +\bar default +VI, +\family default + +\family sans +\bar under +\noun on +V +\bar default +\noun default +er\SpecialChar \menuseparator +Postcript +\family default + ou +\family sans +\bar under +\noun on +V +\bar default +\noun default +er\SpecialChar \menuseparator +PD +\bar under +F +\family default +\bar default +\SpecialChar \@. + Se lanzou o LyX desde un terminal poderá ver como nel van aparecendo unha + série de mensaxes, escritos polo LaTeX, e que polo momento pode ignorar. + O LyX lanzará algun visualizador (de +\family typewriter +dvi, +\family default + +\family typewriter +postscript +\family default + ou +\family typewriter +pdf +\family default +, segundo corresponda), que abrirá outra xanela mostrando o aspeito que + vai ter o seu documento impreso. +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Pode aforrar algo de tempo, maior canto maior sexa o documento, se tras + a primeira vez que execute algun dos visores o deixa sen fechar, e após + facer calquer mudanza no documento usa +\family sans +\bar under +V +\bar default +er\SpecialChar \menuseparator + +\bar under +A +\bar default +ctualizar\SpecialChar \menuseparator + +\bar under +D +\bar default +VI +\family default + (ou +\family sans +\SpecialChar \menuseparator +Pos +\bar under +t +\bar default +scritp +\family default + ou +\family sans +\SpecialChar \menuseparator +PD +\bar under +F +\family default +\bar default +) para ver o novo aspeito do documento. +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Itemize +Imprima usando +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator +im +\bar under +p +\bar default +rimir\SpecialChar \@. + +\end_layout + +\begin_layout Standard +Parabéns! Escrebeu e imprimiu o seu primeiro documento en LyX. + O resto son pequenos detalles que se tratan no resto do +\emph on +Tutorial +\emph default +, no +\emph on +Guia do usuário +\emph default + e no manual de +\emph on +Funcións avanzadas +\emph default + ! +\end_layout + +\begin_layout Subsection +Operacións sinxelas +\end_layout + +\begin_layout Standard +Loxicamente o LyX permite-lle realizar a maioria das cousas que está afeito + a facer con un procesador de texto. + Vai engadir novas liñas cando for necesário, e identar parágrafos automaticamen +te. + A seguir inclui-se unha breve descrición de como realizar algunhas operacións + sinxelas. +\end_layout + +\begin_layout Description +Desfacer O LyX ten múltiplos níveis de desfacer, o que significa que poderia + desfacer todo o que fixo desde o início da sesión seleccionando +\family sans +\bar under +E +\bar default +ditar\SpecialChar \menuseparator + +\bar under +D +\bar default +esfacer +\family default + unha e outra vez. + Caso se pasar desfacendo, pode refacer as accións desfeitas seleccionando + +\family sans +\bar under +E +\bar default +ditar\SpecialChar \menuseparator + +\bar under +R +\bar default +efacer. +\end_layout + +\begin_deeper +\begin_layout Standard +Actualmente, o comando +\family sans +Desfacer +\family default + está limitado a 100 pasos, e ademais non funciona para +\emph on +todo +\emph default +, como por exemplo para mudanzas no formato do documento. + Estes son un par de defeitos do LyX, que ainda non están solucionados. +\end_layout + +\end_deeper +\begin_layout Description +Cortar/Colar/Copiar Use +\family sans +\bar under +E +\bar default +ditar\SpecialChar \menuseparator +Cortar +\family default + (ou Crtl+X), +\family sans +\bar under +E +\bar default +ditar\SpecialChar \menuseparator +Colar +\family default + (ou Crtl+V), e +\family sans +\bar under +E +\bar default +ditar\SpecialChar \menuseparator +Copiar (ou Crtl+C) +\family default + para cortar, colar e copiar. + Outra posibilidade consiste en colar o texto seleccionado (mesmo noutros + programas) clicando no +\emph on +botón central +\emph default + do rato. +\end_layout + +\begin_layout Description +Procurar/Substituir Utilice +\family sans +\bar under +E +\bar default +ditar\SpecialChar \menuseparator + +\bar under +P +\bar default +rocurar +\begin_inset space ~ +\end_inset + +e +\begin_inset space ~ +\end_inset + +Substituir +\family default +, isto vai lanzar unha caixa de diálogo que lle permite +\family sans +Procurar +\family default + un dado texto, Substitui-lo por outro +\begin_inset Foot +status open + +\begin_layout Plain Layout +Cando rematar pode fechar a xanela, ou deixa-la aberta, segundo lle resulte + mais cómodo. + A maioria das caixas de diálogo no LyX — incluindo as correspondentes a + +\family sans +\bar under +P +\bar default +rocurar +\begin_inset space ~ +\end_inset + +e +\begin_inset space ~ +\end_inset + +substituir +\family default +, +\family sans +\bar under +T +\bar default +áboa +\begin_inset space ~ +\end_inset + +de +\begin_inset space ~ +\end_inset + +contidos +\family default +, e +\family sans +\bar under +C +\bar default +onfiguración +\family default + (do documento), asi como os vários diálogos matemáticos — son xanelas que + poden deixar-se abertas, ou minimizadas, en vez de fechadas. + Uns poucos diálogos, como o +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator + +\bar under +A +\bar default +brir +\family default +, non lle permiten porén escreber nada na xanela principal do LyX, até os + fechar. + Asegure-se de manter en foco a xanela axeitada, ao tentar escreber na xanela + principal do LyX ou ao executar un comando noutra caixa de diálogo. +\end_layout + +\end_inset + +, podendo-se facer a procura sensíbel a maiúsculas/minúsculas, a palabras + completas o partes de palabras, e permitindo avanzar ou recuar no documento. +\end_layout + +\begin_layout Description +Formato +\begin_inset space ~ +\end_inset + +de +\begin_inset space ~ +\end_inset + +carácteres Pode +\emph on +enfatizar +\emph default + o texto (xeralmente converte os carácteres a itálica), pór en +\series bold +negrito +\series default +, ou en +\noun on + +\begin_inset Quotes eld +\end_inset + +Versalete +\begin_inset Quotes erd +\end_inset + + +\noun default + (normalmente pequenas maiúsculas, usado para nomes de persoas) no diálogo + +\family sans +\bar under +E +\bar default +ditar\SpecialChar \menuseparator + +\bar under +E +\bar default +stilo +\begin_inset space ~ +\end_inset + +do +\begin_inset space ~ +\end_inset + +texto. +\end_layout + +\begin_layout Description +Barra +\begin_inset space ~ +\end_inset + +de +\begin_inset space ~ +\end_inset + +Ferramentas Mesmo abaixo dos menus ha como mínimo unha barra chea de botóns + que lle permiten efectuar directamente algunhas das funcións mais populares: + +\family sans +Colar, Imprimir, Inserir +\begin_inset space ~ +\end_inset + +formula\SpecialChar \ldots{} + +\family default + Se mantiver o ponteiro do rato por riba dun deses botóns un par de segundos + aparecerá unha pequena nota amarela informando sobre a función do botón. +\end_layout + +\begin_layout Standard +Por agora ainda non escrebeu abondo para que estas funcións sexan úteis, + mas á medida que for escrebendo tente desfacer, colar, etc. +\end_layout + +\begin_layout Subsection +WYSIWYM: Espazos en branco no LyX +\end_layout + +\begin_layout Standard +Unha das cousas que mais estraña ao novo usuário é a forma como o LyX xere + os espazos en branco. + Pode premer repetidamente o +\family sans +Return +\family default +, mais só obterá unha liña en branco; ou premer veces sen conta a +\family sans +barra espazadora +\family default +, e só obterá un espazo. + Nunha liña en branco, o LyX non permite nen introducir tan sequer un espazo + en branco. + A tecla +\family sans +Tab +\family default + non engade o consabido espazos de tubulazón, de facto non +\emph on +existen +\emph default + tais espazos, nen existe regra na parte superior da páxina que lle permita + estabelecer +\family sans +tabuladores, +\family default + nen tampouco alterar as marxes. +\end_layout + +\begin_layout Standard +Moitos procesadores de texto comerciais basean-se na filosofia WYSIWYG +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +WYSIWYG: +\begin_inset Quotes eld +\end_inset + +What You See Is What You Get +\begin_inset Quotes erd +\end_inset + + . +\end_layout + +\end_inset + + (o que vé e o que obtén), porén o LyX ten filosofia própria: WYSIWYM +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +WYSIWYM: +\series bold + +\lang english +W +\series default +hat +\series bold +Y +\series default +ou +\series bold +S +\series default +ee +\series bold +I +\series default +s +\series bold +W +\series default +hat +\series bold +Y +\series default +ou +\series bold +M +\series default +ean. +\end_layout + +\end_inset + + (o que vé é o que pretende facer). + O usuário especifica o que pretende obter, sendo o LyX o que se preocupa + da composición tipográfica, dando lugar a unha saída con cualidade profisional. + Gramaticalmente un +\family sans +Return +\family default + separa parágrafos, entanto un espazo en branco separa palabras, polo que + non ha razón para ter vários seguidos nunha liña; un +\family sans +espazo de tabulado +\family default + non ten nengunha función gramatical, e portanto o LyX non o considera. + Ao traballar co LyX, investirá máis tempo preocupando-se do +\emph on +contido +\emph default + dos documentos, e menos preocupando-se do +\emph on +formato +\emph default + dos mesmos +\emph on +. + +\emph default + Na +\emph on +Introdución +\emph default + pode ver mais información sobre a filosofia WYSIWYM. +\end_layout + +\begin_layout Standard +Contodo, no LyX tamén existen (moitas) maneiras de afinar manualmente o + formato dos documentos. + Ao fin e ao cabo é posíbel que o LyX non acerte coa composición tipográfica + exacta que o autor tiña en mente. + Estas formas de afinar o formato aparecen descritas no +\emph on +Guia do Usuário +\emph default +, incluindo entre outras espazados horizontal e vertical máis potentes e + versáteis que os espazos ou as liñas en branco — e formas para especificar + manualmente o tamaño e o tipo de fonte, e o aliñamentos dos parágrafos. + Agora ben, o que pretenden os autores do LyX é que o usuário poda despreocupar- +se do formato, prestando-lle atención só ao final. + Evitando algo que ocorre con frecuéncia cos procesadores de texto tradicionais; + que o usuário dedica mais tempo e esforzo a forma do que ao contido do + documento. +\end_layout + +\begin_layout Section +Ambientes +\end_layout + +\begin_layout Standard +En LyX o texto, en función do seu propósito no documento, clasifica-se en + +\emph on +ambientes +\emph default +. + Usualmente nun documento a maioria do texto non ten un formato especial, + é texto normal, mais é usual que estexa divido en capítulos, seccións \SpecialChar \ldots{} + + e que cada unha desas partes teña un título que lle permiten dan unha idea + ao leitor do que vai ser tratado a seguir. + O texto normal, o título dunha sección, o nome do autor, son exemplos de + ambientes que aparecen en moitos documentos. + Ha tamén alguns ambientes que son específicos dun tipo de documento determinado +: o resumo dun artigo, o enderezo do remitente dunha carta, etc. +\end_layout + +\begin_layout Standard +Os ambientes son unha peza importante a hora de implementar a filosofia + WYSIWYM no LyX. + Os vários ambientes teñen en xeral diferente aspeito, o título dun capítulo + ten que diferenciar-se do título dunha subsección ou da bibliografia, e + para os distinguir empregan-se: fontes diferentes (família, tamaño, tipo), + espazamento entre liñas diferentes, etc. + O asunto ainda pode ser mais complicado, asi por exemplo cada xornal científico + adoita ter as suas preferéncias de formato para os distintos ambientes: + un editor pode querer títulos de sección con unha fonte de 18 pontos, en + negrito, e o texto centrado, entanto outro teña por norma utilizar outra + fonte de 15 pontos, en itálico, e o texto xustificado á esquerda; e desde + logo moi dificilmente van estar de acordo nos formatos da bibliografia. + O LyX está deseñado para lle permitir lidar dignamente con estas complexidades, + sen necesidade de lle prestar atención de mais aos diferentes estilos de + formatación. +\end_layout + +\begin_layout Standard +A caixa de +\family sans +Ambientes +\family default + fica na esquerda da barra de ferramentas (xusto por baixo do menu +\family sans +\bar under +F +\bar default +icheiro +\family default +). + Nesta caixa ha un menu despregueábel que permite escoller o ambiente, indicando + en todo momento en que tipo de ambiente se acha o cursor. + Asi no seu primeiro documento até o momento indicou sempre +\family sans +Normal, +\family default + que é o ambiente predefinido, mais agora é tempo de experimentar outros + ambientes, para o cal só ha que clicar na caixa de +\family sans +Ambientes +\family default + e escoller algun dos que aparecen no menu. +\end_layout + +\begin_layout Subsection +Seccións e Subseccións +\end_layout + +\begin_layout Standard +Escreba a palabra +\family typewriter +Introdución +\family default + na primeira liña do seu ficheiro LyX, e seleccione +\family sans +Sección +\family default + no menu +\family sans +Ambientes +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Non precisa +\emph on +seleccionar +\emph default + a liña. + Se non ha nada seleccionado, o LyX muda o ambiente do parágrafo onde se + acha o cursor. + Mais tamén é posíbel mudar o ambiente de vários parágrafos; seleccionando-os + antes de escoller o ambiente. +\end_layout + +\end_inset + +. + +\family default + Asegure-se de escoller o ambiente +\family sans +Sección +\family default + e +\emph on +non +\emph default + +\family sans +Sección*, +\family default + do que xa falaremos máis tarde. + O LyX etiqueta a sección con un +\family sans + +\begin_inset Quotes eld +\end_inset + +1 +\begin_inset Quotes erd +\end_inset + + +\family default + escrebendo o cabezallo (título) nunha fonte maior. + Prema agora a tecla +\family sans +Return +\family default +, e observe que a caixa de +\family sans +Ambientes +\family default + troca de +\family sans +Sección +\family default + a +\family sans +Normal +\family default +. + Na maior parte dos ambientes, incluído o cabezallo dunha sección, LyX asume + que o ambiente remata ao teclear +\family sans +Return. + +\family default + Escreba a introdución do documento: +\end_layout + +\begin_layout LyX-Code +Esta é a introdución do meu primeiro documento en LyX. +\end_layout + +\begin_layout Standard +Prema a tecla Return e seleccione novamente +\family sans +Sección +\family default + no menu +\family sans +Ambientes +\family default +. + O LyX escrebe un +\begin_inset Quotes eld +\end_inset + +2 +\begin_inset Quotes erd +\end_inset + + e agarda que o usuário dixite o título desta nova sección. + Dixite +\family typewriter +Mais cousas +\family default +, e verá que o LyX o escrebe coa tipografia própria do título dunha sección. +\end_layout + +\begin_layout Standard +Imos mellorando. + Volte ao final da +\begin_inset Quotes eld +\end_inset + +Sección +\begin_inset space ~ +\end_inset + +1 +\begin_inset Quotes erd +\end_inset + + (tras de +\begin_inset Quotes eld +\end_inset + +primeiro documento en LyX +\begin_inset Quotes erd +\end_inset + +), prema novamente a tecla +\family sans +Return +\family default +, e seleccione +\family sans +Sección +\family default + no menu de +\family sans +Ambientes +\family default +. + O LyX escrebe un +\begin_inset Quotes eld +\end_inset + +2 +\begin_inset Quotes erd +\end_inset + + e agarda que o usuário dixite un título. + Dixite +\family typewriter +Acerca deste documento +\family default +. + A sección +\begin_inset space ~ +\end_inset + + +\begin_inset Quotes eld +\end_inset + +Mais cousas +\begin_inset Quotes erd +\end_inset + +, que estaba antes como +\begin_inset Quotes eld +\end_inset + +Sección +\begin_inset space ~ +\end_inset + +2 +\begin_inset Quotes erd +\end_inset + +, é renumerada automaticamente como +\begin_inset Quotes eld +\end_inset + +Sección +\begin_inset space ~ +\end_inset + +3 +\begin_inset Quotes erd +\end_inset + + ! Aplicando a filosofia WYSIWYM, ao identificar un anaco de texto como + título da sección, o LyX encarrega-se automaticamente da sua numeración + e tipografia. +\end_layout + +\begin_layout Standard +Prema +\family sans +Return +\family default + para voltar ao ambiente +\family sans +Normal +\family default +, e escreba as seguintes cinco liñas: +\end_layout + +\begin_layout LyX-Code +As seccións e as subseccións descreben-se a seguir. +\end_layout + +\begin_layout LyX-Code +Descrición da sección +\end_layout + +\begin_layout LyX-Code +As seccións son maiores que as subseccións. +\end_layout + +\begin_layout LyX-Code +Descrición da subsección +\end_layout + +\begin_layout LyX-Code +As subseccións son menores que as seccións. +\end_layout + +\begin_layout LyX-Code + +\end_layout + +\begin_layout Standard +Clique na segunda liña e seleccione +\family sans +Subsección +\family default + no menu de +\family sans +Ambientes +\family default +. + O LyX etiqueta a subsección con +\begin_inset Quotes eld +\end_inset + +2.1 +\begin_inset Quotes erd +\end_inset + +, e escrebe o título nunha fonte maior que o texto normal e menor que o + título da sección. + Mude tamén a cuarta liña para o ambiente +\family sans +Subsección +\family default +. + Como seguramente xa esperaba, o LyX asignou-lle automaticamente a etiqueta + +\begin_inset Quotes eld +\end_inset + +2.2 +\begin_inset Quotes erd +\end_inset + +. + Se adiciona agora outra sección antes da +\begin_inset Quotes eld +\end_inset + +Sección 2 +\begin_inset Quotes erd +\end_inset + +, esta será renumerada para +\begin_inset Quotes eld +\end_inset + +Sección 3 +\begin_inset Quotes erd +\end_inset + +, e con ela as sua subseccións, que pasarán a ser a +\begin_inset Quotes eld +\end_inset + +3.1 +\begin_inset Quotes erd +\end_inset + + e a +\begin_inset Quotes eld +\end_inset + +3.2 +\begin_inset Quotes erd +\end_inset + +. + +\end_layout + +\begin_layout Standard +O LyX contempla outros níveis de hierarquia: +\family sans +Subsubsección +\family default +, +\family sans +Parágrafo +\family default +, e +\family sans +Subparágrafo +\family default +. + Anime-se e experimente con eles. + Pode observar que os cabezallos do parágrafo e subparágrafo non están numerados + por defeito, e que os subparágrafos están identados; porén como se explica + no +\emph on +Guia do Usuário +\emph default + é posíbel alterar estes comportamentos. + O nível mais alto da hierarquia corresponde aos +\family sans +Capítulos, +\family default + mais este ambiente só se pode empregar nalguns tipos ( +\emph on +clases +\emph default +) de documentos LyX (vexa-se a Sección +\begin_inset space ~ +\end_inset + + +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:clases_de_documentos" + +\end_inset + +). + +\end_layout + +\begin_layout Standard +Finalmente, tamén existen ambientes para seccións ou subseccións non numeradas. + Se trocar un dos cabezallos de +\family sans +Sección +\family default + a +\family sans +Sección* +\family default +, o LyX usará a mesma tipografia, mais sen numeración. + Outros ambientes similares son +\family sans +Capítulo*, Subsección* +\family default + e +\family sans +Subsubsección* +\family default +. + Probe a trocar algunhas das suas seccións ou subseccións para ambientes + non numerados, i.e. + con +\begin_inset Quotes eld +\end_inset + +* +\begin_inset Quotes erd +\end_inset + +, e observe como isto afecta á numeración das restantes seccións. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Arranxe os cabezallos de seccións e subseccións no arquivo de testes +\family typewriter +exemplo_bruto.lyx +\family default +. + +\end_layout + +\begin_layout Subsection +Listas e sub-listas +\end_layout + +\begin_layout Standard +O LyX oferece diferentes ambientes para elaborar listas. + Estes ambientes liberan-no de premer a tecla +\family sans +Tab +\family default + veces sen conta ao escreber un esquema, ou de renumerar inteiramente unha + lista cando quer adicionar un ponto no meio dela, permitindo-lle concentrar-se + no seu contido +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Desculpe que teimemos en subliñar este ponto ao longo do +\emph on +Tutorial +\emph default +, mais +\emph on +é +\emph default + o ponto principal da filosofia na que se basea o LyX. +\end_layout + +\end_inset + +. + Os diferentes tipos de documentos requeren, loxicamente, diferentes tipos + de lista: +\end_layout + +\begin_layout Itemize +Nas apresentación son usuais as listas, como esta, onde cada ítem vai precedido + dunha marca (ponto, asterisco\SpecialChar \ldots{} +), que se poden elaborar facilmente en LyX + co ambiente +\family sans +Listapontuada +\family default +. +\end_layout + +\begin_layout Itemize +Un esquema estrutura-se comodamente co ambiente +\family sans +Enumeración +\family default +, que facilita escreber listas ordenadas por números e letras. + +\end_layout + +\begin_layout Itemize +Un documento descrebendo pacotes de software pode empregar o ambiente +\family sans +Descrición +\family default +, onde cada ítem na lista comeza con unha palabra en negrito. + +\end_layout + +\begin_layout Itemize +O ambiente +\family sans +Lista +\family default + (próprio do LyX, i.e. + non existe en LaTeX) é unha forma levemente diferente do ambiente +\family sans +Descrición +\family default +. +\end_layout + +\begin_layout Standard +Escrebamos unha lista de razóns polas cais o LyX é mellor que os outros + procesadores de texto. + Algures no seu documento escreba: +\end_layout + +\begin_layout Standard + +\family typewriter +O LyX é mellor que os outros procesadores de texto porque: +\end_layout + +\begin_layout Standard +\noindent +e prema +\family sans +Return +\family default +. + Agora seleccione +\family sans +Listapontuada +\family default + no menu de +\family sans +Ambientes +\family default +. + O LyX engade á liña unha +\begin_inset Quotes eld +\end_inset + +marca +\begin_inset Quotes erd +\end_inset + +, na realidade un asterisco, que será convertido nun ponto gordo na (pré)impresi +ón. + Escreba as suas razóns: +\end_layout + +\begin_layout LyX-Code +O programa encarrega-se da composición tipográfica. +\end_layout + +\begin_layout LyX-Code +A escritura de fórmulas matemáticas é WYSIWYG. +\end_layout + +\begin_layout LyX-Code +É moi sinxelo elaborar listas! +\end_layout + +\begin_layout Standard +Os ambientes de lista, a diferenza dos cabezallos, non terminan ao premer + a tecla +\family sans +Return +\family default +. + As avesas, o LyX asume que o usuário quer continuar a engadir ítens á lista, + de maneira que ao premer +\family sans +Return +\family default + engade outro ítem a lista. + Asi o resultado do exercício anterior será unha lista de tres ítens. + Para obter un ítem con mais dun parágrafo pode-se utilizar un +\family sans +Return +\begin_inset space ~ +\end_inset + +Protexido +\family default +, que se obtén ao premer +\family sans +Ctrl-Return +\family default +. + E para rematar unha lista, precisa-se escoller o ambiente +\family sans +Normal +\family default + (o cal se pode obter coa combinación de teclas, +\family sans +M-p +\begin_inset space ~ +\end_inset + +p +\family default +). +\end_layout + +\begin_layout Standard +Ten xa unha fermosa lista pontuada, e pode visualizar cal será o seu aspeito + no documento impreso indo a +\family sans +\bar under +\noun on +V +\bar default +\noun default +er\SpecialChar \menuseparator + +\bar under +D +\bar default +VI +\family default + (ou +\family sans +\bar under +\noun on +V +\bar default +\noun default +er\SpecialChar \menuseparator +PostScript +\family default + ou +\family sans +\bar under +\noun on +V +\bar default +\noun default +er\SpecialChar \menuseparator +PD +\bar under +F +\family default +\bar default +)\SpecialChar \@. + Mais se cadra muda de idea e quer que a lista sexa numerada, non ten mais + que seleccionar toda a lista +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +O LyX non lle permite seleccionar a primeira marca sen seleccionar tamén + o parágrafo +\emph on +anterior +\emph default + á lista, o que probabelmente non quererá facer. + Do mesmo xeito, tampouco é posíbel seleccionar o número nun título de sección, + mais isto non o debe preocupar. +\end_layout + +\end_inset + + e escoller +\family sans +Enumeración +\family default + no menu de +\family sans +Ambientes +\family default + e voilá!. + E como xa vimos, se agora quixera engadir ou eliminar un ítem da lista, + o LyX encarregaria-se de manter coerente a numeración. +\end_layout + +\begin_layout Standard +Coa lista ainda seleccionada, pode trocar o ambiente, escollendo un dos + outros dous ambientes de lista, +\family sans +Descrición +\family default + e +\family sans +List +\family default +a, e observar asi o seu formato. + Neses dous ambientes, cada ítem da lista consta de un termo, a primeira + palabra do ítem, seguida por unha definición, o resto do parágrafo (até + premer a tecla +\family sans +Return +\family default +). + O termo pode ser escrito en negrito ( +\family sans +Descrición +\family default +) ou separado por un Tabulador +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Mais non un +\family sans +Tabulador +\family default + de máquina de escreber, patético, ríxido e fixo, senón un tabulador de + composición tipográfica, que se alterará para se axustar ao tamaño do maior + termo. +\end_layout + +\end_inset + + ( +\family sans +List +\family default +a) do resto do parágrafo. + Se quixer ter mais dunha palabra na definición, una as palabras con +\family sans +Espazos +\begin_inset space ~ +\end_inset + +Protexidos +\family default + +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Pode-se obter un espazo protexido coa combinación de teclas +\family sans +Crtl-Space +\end_layout + +\end_inset + +. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Arranxe a lista no +\family typewriter +exemplo_bruto.lyx +\end_layout + +\begin_layout Standard +É posíbel encaixar +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +[N.T.] En inglés utilizan as palabras +\emph on +to nest +\emph default +, e +\emph on +nested +\emph default +, para falar de listas, e outros ambientes que se encaixan uns noutros como + bonecas rusas. + Sen excesivo convencimento traducin por +\emph on +encaixar +\emph default +, +\emph on +encaixado/a +\emph default +. +\end_layout + +\end_inset + + listas unhas nas outras, de múltiplas e interesantes maneiras, o que permite + por exemplo escreber esquemas elaborados e asemade claros. + As listas elaboradas e pontuadas teñen diferentes tipos de numeración e + marcas nos diferentes níveis da hierarquia, sendo tais tipos e marcas modificáb +eis polo usuário. + No +\emph on +Guia do Usuário +\emph default + descrebe-se polo miúdo os diferentes tipos de listas, mostrando exemplos + onde se enguedellan estes diferentes tipos. +\end_layout + +\begin_layout Subsection +Outros Ambientes +\end_layout + +\begin_layout Standard +Para separar un texto citado do resto poden-se utilizar dous ambientes: + +\family sans +Cita +\family default +, para pequenos textos, e +\family sans +Citación +\family default +, para textos maiores. + Pensado para reproducir o código fonte de programas, o ambiente +\family sans +Código-LyX +\family default + usa a fonte monoespazada +\family typewriter +typewriter +\family default +, sendo este o único ambiente onde é posíbel empregar espazos en branco + múltiplos, necesários para identar código. + Se en vez de escreber programas prefere escreber poesia, conta co ambiente + +\family sans +Verso +\family default +, no cal se usa a tecla +\family sans +Return +\family default + para separar estrofes, e +\family sans +Ctrl-Return +\family default + para separar liñas nunha estrofe. + No +\emph on +Guia do Usuário +\emph default + incluen-se as descricións completas de todos os ambientes disponíbeis no + LyX. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Use os ambientes +\family sans +Cita, +\family default + +\family sans +Código-LyX, +\family default + e +\family sans +Verso +\family default + para mellorar +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +linebreak +\end_layout + +\end_inset + + +\family typewriter +exemplo_bruto.lyx +\end_layout + +\begin_layout Chapter +Escrebendo documentos +\end_layout + +\begin_layout Standard +Esperamos que o capítulo anterior servise para facilitar os seus primeiros + pasos en LyX. + Agora xa sabe escreber texto simples, coñece algunhas operacións de edición, + e os úteis ambientes, mais seguramente espera poder escreber documentos + mais completos, e complexos, tais como: artigos, libros, manuais ou cartas. + Este capítulo esta escrito pensando en axudar-lle nesta tarefa, apresentando + primeiramente as clases de documentos, que permiten escreber comodamente + os distintos tipos de documentos, e a seguir moitas das cousas que tornan + o texto nun documento, tais como os títulos, as notas de rodapé, as referéncias + cruzadas, a bibliografia e os índices. +\end_layout + +\begin_layout Section +Clases de documentos +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:clases_de_documentos" + +\end_inset + +Os distintos tipos de documentos requeren distinta composición tipográfica; + asi por exemplo, nos libros usualmente ha leves diferenzas na composición + das duas páxinas dunha folla, entanto nos artigos normalmente non existe + esa diferenza. + Ademais moitos tipos de documentos conteñen ambientes específicos; nas + cartas usan-se alguns ambientes, tais como a morada do remetente ou a sinatura, + que non sen senso nun libro ou nun artigo. + As +\emph on +clases de documentos +\family sans +\emph default + +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +[N.T.] Na versión orixinal, en inglés, usan +\emph on +text class +\emph default + , supoño que para diferenciar-se un pouco da +\emph on +document class +\emph default + do LaTeX. + Sendo ambos conceitos equivalentes. + De facto os nomes das clases de documentos non están traducidos, por se + utilizar os de LaTeX. +\end_layout + +\end_inset + + +\family default + do LyX ocupan-se destas diferenzas a grande escala entre os diferentes + tipos de documento. + Este +\emph on +Tutorial +\emph default +, por exemplo, está escrito usando a clase Book (libro). + As +\emph on +clases de documentos +\emph default + son outra peza importante da filosofia WYSIWYM; grazas a elas o LyX sabe + cal é a tipografia axeitada para o documento, e o usuário pode despreocupar-se + dese aspeito. +\end_layout + +\begin_layout Standard +Probabelmente o seu documento de proba é da clase +\family sans +Article (artigo) +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Esta é usualmente a clase predefinida +\family typewriter +. +\end_layout + +\end_inset + +, +\family default + experimente a trocar de clase (na caixa de diálogo +\family sans +\bar under +D +\bar default +ocumento\SpecialChar \menuseparator + +\bar under +C +\bar default +onfiguración +\family default +) para ver como varia a tipografia. + Unha das cousas que muda ao trocar de clase de documento é o conxunto de + ambientes que se poden usar, e para ver os que permite unha determinada + clase, basta consultar o menu de +\family sans +Ambientes +\family default +. + Asi se trocar o seu documento para a clase +\family sans +Book +\family default + e observar o menu de +\family sans +Ambientes +\family default +, comprobará que se ben apenas ha variación nos ambientes permitidos, agora + pode utilizar o ambiente +\family sans +Capítulo +\family default +. + +\end_layout + +\begin_layout Standard +Tamaños das fontes, unha ou duas colunas, e cabezallos das páxinas son algunhas + das características que diferencian as composicións tipográficas dos diferentes + xornais. + Ao ir avanzando na era da computación, os xornais pasaron a aceitar artigos + submetidos electronicamente, para o cal definen os seus próprios ficheiros + de estilo en LaTeX, de maneira que os autores podan enviar os seus artigos + xa coa tipografia axeitada. + Estes ficheiros de estilo poden adaptar-se facilmente para o LyX, e unha + boa chea deles xa o están. + +\end_layout + +\begin_layout Standard +Na seguinte táboa apresenta-se unha breve referéncia de algunhas clases + de documentos. + Mais pode achar-se moita mais información relativa as ditas clases no +\emph on +Guia do Usuário +\emph default +, sección +\emph on +Tipos de Documentos +\emph default + ( +\emph on +Document Types +\emph default +), e no manual de +\emph on +Funcións avanzadas +\emph default +, sección +\emph on +Clases de documentos especiais +\emph default + ( +\emph on +Special Document Clases +\emph default +). +\end_layout + +\begin_layout Standard +\begin_inset VSpace 0.3cm +\end_inset + + +\end_layout + +\begin_layout Standard +\align center +\begin_inset Tabular + + + + + + +\begin_inset Text + +\begin_layout Plain Layout +Nome +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +Notas +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +article (artigo) +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +unha cara +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +As duas caras dunha folla teñen as mesmas características. +\end_layout + +\end_inset + +, sen capítulos +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +article (AMS) +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +composición & ambientes para a American Math Society +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +report (relatório) +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +máis extenso que o artigo, duas caras +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +A cara anterior e a posterior dunha mesma folla diferen levemente. +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +book (libro) +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +relatório + capa e contracapa +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +slides (apresentación) +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +transparéncias (tamén inclui FoilTeX) +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +letter (carta) +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +ambientes específicos para enderezos, sinatura\SpecialChar \ldots{} + +\end_layout + +\end_inset + + + + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset VSpace 0.3cm +\end_inset + + +\end_layout + +\begin_layout Section +Modelos: escrebendo unha carta +\end_layout + +\begin_layout Standard +Todos os dias escreben-se inumeras cartas no mundo. + En LyX pode-se escreber unha carta criando un ficheiro novo, +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator + +\bar under +N +\bar default +ovo, +\family default + e escollendo +\family sans +Letter +\family default + no menu +\family sans +\bar under +C +\bar default +lase do documento +\family default + da caixa de diálogo +\family sans +\bar under +D +\bar default +ocumento\SpecialChar \menuseparator + +\bar under +C +\bar default +onfiguración +\family default +. + Mais esta non é a opción mais cómoda. + Calquer carta comercial debe incluir o enderezo do remitente e o do recipendári +o, a sinatura, etc. + O LyX facilita a escritura das cartas fornecendo ao usuário con un +\emph on +modelo +\emph default + para cartas, do cal partir para escreber unha. +\end_layout + +\begin_layout Standard +Abra un novo ficheiro con +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator +Novo +\begin_inset space ~ +\end_inset + +desde +\begin_inset space ~ +\end_inset + + +\bar under +m +\bar default +odelo, +\family default + seleccione +\family typewriter +letter.lyx +\family default + como modelo, guarde o novo ficheiro con o nome que mellor lle praza, e + visualice como vai ser impreso o documento para ver a tipografia dos ambientes + incluídos. + +\end_layout + +\begin_layout Standard +Se abre o menu de +\family sans +Ambientes +\family default + verá vários ambientes, como o +\family sans +Meu +\begin_inset space ~ +\end_inset + +enderezo +\family default + que non existe na maioria das outras clases de documentos +\family sans +. + +\family default + Outras, como +\family sans +Enumeración e +\family default + +\family sans +Descrición +\family default +, son máis comuns +\family sans +. + +\family default + Fedelle un rato con eles para ver os que ha, e como funcionan. + Notará que por exemplo ao seleccionar o ambiente +\family sans +Sinatura +\family default + aparece a palabra +\begin_inset Quotes eld +\end_inset + +Signature: +\begin_inset Quotes eld +\end_inset + + en vermello antes da sinatura propriamente dita. + O texto en vermello non vai ser impreso, mais indica o sítio onde debe + escreber-se a sinatura. + Tamén poderá comprobar que, ainda que a sinatura debe escreber-se antes + da apertura ( +\begin_inset Quotes eld +\end_inset + +Opening +\begin_inset Quotes erd +\end_inset + +), na versión escrita aparecerá ao final da carta, como é usual. +\end_layout + +\begin_layout Standard +Como vimos anteriormente ao seleccionar o menu +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator +Novo +\begin_inset space ~ +\end_inset + +desde +\begin_inset space ~ +\end_inset + + +\bar under +m +\bar default +odelo +\family default + aparece un diálogo onde se poden escoller unha série de modelos fornecidos + polo LyX. + Agora ben, neste diálogo pode-se navegar polas diversas directórias do + seu computador, e portanto escoller calquer ficheiro lyx, que entón servirá + como +\family sans +modelo. + +\family default + Asi por exemplo pode gravar a carta coa que esta a experimentar, na cal + xa escrebeu nos campos correspondentes o seu nome, enderezo e sinatura, + con un nome axeitado, ex. + +\family typewriter +miña_carta.lyx +\family default +, e na sua directória. + Este ficheiro servira-lle como modelo sempre que o abra indo ao menu +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator +Novo +\begin_inset space ~ +\end_inset + +desde +\begin_inset space ~ +\end_inset + + +\bar under +m +\bar default +odelo, +\family default + e navegando até a sua directória. + No novo ficheiro aberto, sen nome ainda, xa aparecerán escritos de princípio + os seus nome, enderezo e sinatura. + O próximo exercício é obvio: escreba unha carta a alguén! +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Unha adverténcia: se estiver a escreber a partir dun +\family sans +modelo +\family default + e eliminar todo o texto dun ambiente dado— por exemplo, se eliminar todo + o campo +\family sans +Meu +\begin_inset space ~ +\end_inset + +Enderezo +\family default + para o substituir co seu próprio texto — e entón move o cursor sen escreber + algo, o ambiente pode desaparecer, xa que a maior parte dos ambientes non + poden existir sen texto. + Para recuperar o ambiente basta seleccioná-lo do menu +\family sans +de Ambientes +\family default + . +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +O uso de +\family sans +modelos +\family default + permite aforrar moito tempo, sendo aconsellábel o seu emprego, sempre que + posíbel. + Outro uso dos modelos é como ferramenta didáctica; tanto a aprendizaxe + individual, pois facilita aprender a tirar-lle partido as diferentes clases + de documentos, como para o ensino a un grupo de persoas, xa que permite + ao profesor guiar a aprendizaxe. +\end_layout + +\begin_layout Section +Títulos dos documentos +\end_layout + +\begin_layout Standard +O LyX (tal como o LaTeX) considera o título — que pode conter o próprio + título, o autor, a data e mesmo o resumo dun artigo — como unha parte separada + do documento. + +\end_layout + +\begin_layout Standard +Volte ao seu ficheiro de proba, que se non lle mudou de nome chamara-se + +\family typewriter +newfile.lyx, +\family default + e asegure-se de usar a clase de documento +\family sans +Article +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Para esta parte non se pode usar a clase de documento +\family sans +Letter, +\family default + xa que non permite o uso do ambiente +\family sans +Título +\family default +. +\end_layout + +\end_inset + +. + +\family default + Escreba un título na primeira liña e escolla o ambiente +\family sans +Título +\family default +. + Na liña seguinte escreba o seu nome e troque de ambiente para +\family sans +Autor +\family default +. + Nunha nova liña dixite a data, e escolla o ambiente +\family sans +Data +\family default +. + Por último escolla o ambiente +\family sans +Resumo +\family default + e nel escreba un parágrafo ou dous con un sumário do seu documento. + É o momento de ver que aspeito terá unha vez impreso. + +\end_layout + +\begin_layout Standard +Se agora troca a clase de documento para +\family sans +Book +\family default +, o título aparecerá nunha páxina separada, como a primeira páxina deste + tutorial, mais antes terá que trocar de ambiente o resumo, xa que ese ambiente + non existe en +\family sans +Book +\family default +. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Arranxe o título, data e autor no ficheiro +\family typewriter +exemplo_bruto.lyx +\end_layout + +\begin_layout Section +Etiquetas e referéncias cruzadas +\end_layout + +\begin_layout Standard +É posíbel etiquetar partes do documento, como seccións, subseccións, figuras, + táboas\SpecialChar \ldots{} + para posteriormente facer referéncia a esas partes en calquer lugar + do seu documento. + Este tipo de referéncias, coñecidas como referéncias cruzadas, poden ser + tanto directamente ao texto etiquetado, número da sección, número da táboa, + etc., como a páxina onde aparece o elemento etiquetado. + E tal como coas seccións ou coas notas de rodapé, o usuário non precisa + de se preocupar cos detalles do manexo das referéncias cruzadas, basta + etiquetar e referir-se a etiqueta, en calquer orde e en calquer momento, + e o LyX ocupa-se do resto. + O manexo flexíbel e fiábel das etiquetas e das referéncias cruzadas por + parte do LyX (e do LaTeX), constitui un dos seu pontos fortes en comparación + cos procesadores de texto convencionais. +\end_layout + +\begin_layout Subsection* +A sua primeira etiqueta +\end_layout + +\begin_layout Standard +É tempo de colocar a sua primeira etiqueta, por exemplo na segunda sección + do seu documento de proba, esa cuxo título é +\begin_inset Quotes eld +\end_inset + +Acerca deste documento +\begin_inset Quotes erd +\end_inset + +. + Clique no fin da liña do título da sección e seleccione +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator + +\bar under +E +\bar default +tiqueta +\family default +, abrirá-se entón unha caixa de diálogo con unha suxestión para o nome da + etiqueta, suxestión que loxicamente pode aceitar ou ignorar. + Unha vez conforme co nome da etiqueta clique OK, co cal se fechará a caixa + de diálogo e aparecerá unha caixa cincenta co nome da etiqueta onde estaba + o cursor. +\end_layout + +\begin_layout Standard +As referéncias de sección referen-se á sección ou subsección na cal fica + a etiqueta, asi que poderia ter colocado a etiqueta en calquer lugar da + sección. + Mais inserir a etiqueta no título da sección, ou na liña a seguir, asegura + que ao referir o número de páxina, esta sexa a correspondente ao título + da sección. +\end_layout + +\begin_layout Standard +Se agora imprimir o documento non notará nengunha diferenza, xa que as etiquetas + en si non aparecen impresas. + Mais unha etiqueta pode ser referenciada, e as referéncias cruzadas si + aparecen no documento impreso. +\end_layout + +\begin_layout Subsection* +A sua primeira referéncia cruzada +\end_layout + +\begin_layout Standard +Coloque o cursor nalgunha parte da Sección +\begin_inset space ~ +\end_inset + +3 do seu documento, e escreba: +\end_layout + +\begin_layout LyX-Code +Se quer saber máis acerca deste documento, vexa +\begin_inset Newline newline +\end_inset + +a Sección , que se acha na páxina . +\end_layout + +\begin_layout Standard +Agora, co cursor xusto despois da palabra +\begin_inset Quotes eld +\end_inset + +sección +\begin_inset Quotes erd +\end_inset + +, escolla +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator + +\bar under +R +\bar default +eferéncia +\begin_inset space ~ +\end_inset + +cruzada +\family default +. + Xurdirá entón a caixa de diálogo +\family sans +Referéncia +\begin_inset space ~ +\end_inset + +cruzada, +\family default + mostrando unha série de posíbeis etiquetas que pode referir. + Na verdade neste momento debe haber só unha, a sua primeira etiqueta. + Seleccione-a (se non está xa pré-seleccionada) e clique en +\family sans +\bar under +A +\bar default +plicar +\family default +. + Posicione agora o cursor xusto despois da palabra +\begin_inset Quotes eld +\end_inset + +páxina +\begin_inset Quotes erd +\end_inset + +, e repita o procedimento anterior, mais trocando de formato, escollendo + , na vez do que aparece predefinido, . + Para que o proceso sexa totalmente correcto deberá inserir un +\family sans +espazo +\begin_inset space ~ +\end_inset + +protexido (Crtl-Space) +\family default + entre a referéncia e a palabra anterior. +\end_layout + +\begin_layout Standard +O LyX coloca a referéncia nunha caixa cincenta onde estaba o cursor. + No documento impreso esta caixa vai ser substituída polo número da sección + ou da páxina (dependendo do formato escollido no diálogo +\family sans +Referéncia +\begin_inset space ~ +\end_inset + +cruzada +\family default +). + Obteña unha pré-impresión ( +\family sans +\bar under +\noun on +V +\bar default +\noun default +er\SpecialChar \menuseparator + +\bar under +A +\bar default +ctualizar\SpecialChar \menuseparator + +\bar under +D +\bar default +VI +\family default + ou +\family sans +\bar under +\noun on +V +\bar default +\noun default +er\SpecialChar \menuseparator + +\bar under +A +\bar default +ctualizar\SpecialChar \menuseparator +Pos +\bar under +t +\bar default +scritp +\family default + ou +\family sans +\bar under +\noun on +V +\bar default +\noun default +er\SpecialChar \menuseparator + +\bar under +A +\bar default +ctualizar\SpecialChar \menuseparator +PD +\bar under +F +\family default +\bar default +) para ver como son substituídas as referéncias. +\end_layout + +\begin_layout Standard +Ademais as referéncias facilitan a vida do usuário funcionando como hiper-ligazó +ns á hora de editar documentos en LyX; clicando nunha xurde o diálogo +\family sans +Referéncia +\begin_inset space ~ +\end_inset + +cruzada +\family default +, onde se pode seleccionar o botón +\family sans +\bar under +I +\bar default +r á etiqueta +\family default +, que leva o cursor á etiqueta referida. + O atallo +\family sans +Crtl-< +\family default + devolve o cursor a caixa coa referéncia. +\end_layout + +\begin_layout Subsection* +Un pouco mais de xogo +\end_layout + +\begin_layout Standard +Dixemos anteriormente que o LyX se encarrega do manexo das referéncias cruzadas; + chegou o momento de ver como!. + Insira unha nova sección antes da Sección +\begin_inset space ~ +\end_inset + +2, volte a visualizar como vai sair o documento impreso, e — voilà! — a + referéncia cruzada da sección pasou a: +\begin_inset Quotes eld +\end_inset + +3 +\begin_inset Quotes erd +\end_inset + +! Troque o ambiente de +\begin_inset Quotes eld +\end_inset + +Acerca deste Documento +\begin_inset Quotes erd +\end_inset + + para +\family sans +sub-sección +\family default +, e verá como a referéncia cruzada refere agora Subsección +\begin_inset space ~ +\end_inset + +2.1 en vez de Sección +\begin_inset space ~ +\end_inset + +3. + Por outra banda a referéncia da páxina non se vé alterada, xa que a sección + tornou-se subsección, mais non mudou de páxina. +\end_layout + +\begin_layout Standard +Se quixer praticar un pouco máis tente inserir unha nova etiqueta onde colocou + a sua primeira referéncia cruzada, e refira esa etiqueta noutra parte calquer + do documento. + Para comprobar que o LyX manexa correctamente as referéncias cruzadas en + documentos mais extensos, copie algunhas páxinas do +\emph on +Guia do Usuário +\emph default + e cole-as no seu documento +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Observe que copiar o título dun capítulo dá lugar a unha adverténcia, pois + os capítulos non están previstos na clase +\family sans +Article +\family default +., e a que os títulos de capítulo troquen de ambiente para o +\family sans +normal +\family default +. + Se non entende porque acontece isto, consulte a Sección +\begin_inset space ~ +\end_inset + + +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:clases_de_documentos" + +\end_inset + +. + +\end_layout + +\end_inset + +. +\end_layout + +\begin_layout Standard +Se vai inserir referéncias cruzadas con frecuéncia (por exemplo ao escreber + un artigo académico), pode entón ser-lle máis cómodo deixar aberta a caixa + de diálogo +\family sans +Referéncia +\begin_inset space ~ +\end_inset + +cruzada +\family default +. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Arranxe as referéncias no ficheiro +\family typewriter +exemplo_bruto.lyx +\end_layout + +\begin_layout Section +Notas de rodapé e á marxe +\end_layout + +\begin_layout Standard +É posíbel inserir notas de rodapé ben desde a barra de tarefas +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +O botón mostra unha páxina con unha nota de rodapé. +\end_layout + +\end_inset + + ou através do menu +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator +Nota de roda +\bar under +p +\bar default +é +\family default +\SpecialChar \@. + Situe o cursor no fin da palabra +\begin_inset Quotes eld +\end_inset + +LyX +\begin_inset Quotes eld +\end_inset + + na introdución do seu documento de proba, para a seguir inserir unha nota + de rodapé por algun dos métodos antes vistos. + Xurdirá entón unha caixa en branco para a nota, precedida dun botón de + fondo cincento e coa palabra +\begin_inset Quotes eld +\end_inset + +rodapé +\begin_inset Quotes erd +\end_inset + + en vermello. + Na caixa en branco escreba +\end_layout + +\begin_layout LyX-Code +O Lyx é un procesador tipográfico de texto +\end_layout + +\begin_layout Standard +e clique sobre o botón cincento. + Ao clicar desaparecerá a caixa co texto da nota, ficando somente o botón + sinalando que aí ha unha nota de rodapé. + Chamamos a isto cobrir a nota de rodapé. + Podendo-se descobrir a nota en calquer momento, para a ler ou a editar, + sen mais que clicar sobre o botón cincento. +\end_layout + +\begin_layout Standard +Pode perguntar-se porque no botón da nota aparece escrito +\begin_inset Quotes eld +\end_inset + +rodapé +\begin_inset Quotes erd +\end_inset + + e non un número ou outra marca mais esclarecedora de como vai aparecer + no texto impreso. + A resposta é que o LyX ocupa-se automaticamente da numeración das notas + de rodapé, de maneira que pode inserir notas de rodapé en calquer lugar + do documento e en calquer momento, e o programa as renumera convenientemente. + +\end_layout + +\begin_layout Standard +As notas de rodapé poden-se cortadas e coladas como se foran texto normal, + non ha mais que seleccionar o botón rodapé +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Se cadra é-lle máis sinxelo seleccioná-lo usando o teclado. + Pois ao tentar usar o rato pode abrir sen querer a nota. +\end_layout + +\end_inset + + e +\family sans +Cortar +\family default + e +\family sans +Colar +\family default +. + É tamén posíbel converter texto normal en nota de rodapé; basta seleccionar + o texto e facer o mesmo que para inserir unha nota de rodapé valeira, ben + ir ao menu +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator +Nota de roda +\bar under +p +\bar default +é +\family default +, ben clicar no botón +\begin_inset Graphics + filename ../../images/footnote-insert.png + scale 85 + +\end_inset + + da barra de ferramentas. + O proceso inverso tamén é posíbel, basta colocar o cursor no início da + nota e premer a tecla +\family sans +Backspace, +\family default + ou alternativamente colocar o cursor no fin da nota e premer a tecla +\family sans +Supr +\family default +. + Se non o fixo xa é hora de experimentar un pouco coas notas de rodapé antes + de seguir adiante. +\end_layout + +\begin_layout Standard +As notas á marxe poden inserir-se ben desde o botón +\begin_inset Graphics + filename ../../images/marginalnote-insert.png + scale 85 + +\end_inset + + da barra de tarefas ou através do menu +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator +Nota á +\family default + +\family sans +\bar under +m +\bar default +arxe +\family default +\SpecialChar \@. + Esta notas son semellantes ás anteriores agás no seguinte: +\end_layout + +\begin_layout Itemize +no botón que as sinaliza di +\begin_inset Quotes eld +\end_inset + +marxe +\begin_inset Quotes erd +\end_inset + +. +\end_layout + +\begin_layout Itemize +no texto impreso estas notas aparecerán loxicamente na marxe, e non no rodapé. +\end_layout + +\begin_layout Itemize +as notas á marxe non están numeradas. +\end_layout + +\begin_layout Standard +No seu documento de proba troque unha nota de rodapé para texto normal, + a seguir seleccione ese texto e converta-o en nota á marxe. + Por último vaia ao menu +\family sans +\bar under +V +\bar default +er +\family default + para averiguar como son impresas as notas á marxe. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Arranxe a nota de rodapé no ficheiro +\family typewriter +exemplo_bruto.lyx +\family default +. +\end_layout + +\begin_layout Section +Bibliografia +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:bibliografias" + +\end_inset + +As bibliografias, cando menos en ciéncias, son semellantes as referéncias + cruzadas. + A bibliografia contén unha série de referéncias no fin do documento, que + poden ser referidas en calquer parte do mesmo. + LyX e LaTeX numeran automanticamente as entradas bibliográficas, encarregando-s +e en todo momento de manter correcta tal numeración, sexan cais sexan as + mudanzas que se fagan na mesma. +\end_layout + +\begin_layout Standard +Vaia ao fin do documento e troque o ambiente para +\family sans +Bibliografia +\family default +. + Agora, cada novo parágrafo será unha referéncia bibliográfica. + Como primeira referéncia escreba: +\family typewriter +O Tutorial do Lyx, pola Equipa de documentación do LyX +\family default +. + Observe que o LyX insere automaticamente unha caixa cincenta e numerada + antes de cada referéncia. + Clicando na caixa xurde o diálogo +\family sans +Configuración +\begin_inset space ~ +\end_inset + +de +\begin_inset space ~ +\end_inset + +entrada +\begin_inset space ~ +\end_inset + +bibliográfica, +\family default + con dous campos. + O primeiro, a chave, usa-se para identificar a referéncia no documento, + sendo por omisión a palabra +\family sans +key +\family default + seguida dun número. + Mude a chave para +\begin_inset Quotes eld +\end_inset + +tutorial-lyx +\begin_inset Quotes erd +\end_inset + +, que é mais fácil de lembrar. +\end_layout + +\begin_layout Standard +É hora de inserir unha cita bibliográfica no seu documento; coloque o cursor + onde lle pareza oportuno, e vaia ao menu +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator + +\bar under +C +\bar default +itación, +\family default + que fai xurdir un par de caixas de diálogo superpostas. + En primeiro plano aparece o diálogo +\family sans +Engadir cita +\family default +, que permite escoller entre as distintas entradas que ha na bibliografia + unha para citar neste ponto, para o cal cumpre seleccioná-la e premer no + botón +\family sans +\bar under +E +\bar default +ngadir +\family default +. + Premido o botón fica só o diálogo +\family sans +Citación +\family default +, que permite organizar as referéncias que van ser citadas, xa que é posíbel + facer várias citas no mesmo ponto. + Neste momento probabelmente só haxa unha entrada bibliográfica, +\begin_inset Quotes eld +\end_inset + +tutorial-lyx +\begin_inset Quotes erd +\end_inset + +, seleccione-a, e verá como no seu documento aparece unha caixa cincenta + coa dita entrada. + No documento impreso aparecerá un número entre parénteses, referindo a + entrada bibliográfica correspondente no fin do documento. +\end_layout + +\begin_layout Standard +As referéncias mediante números son moi comuns, mais existen outras posibilidade +s. + Por exemplo alguns xornais prescreben usar +\begin_inset Quotes eld +\end_inset + +[Castelao1944] +\begin_inset Quotes erd +\end_inset + + para se referiren a unha publicazón de Castelao do ano 1944. + E para isto é que serve o campo +\family sans +Etiqueta +\family default + da caixa de diálogo +\family sans +Configuración +\begin_inset space ~ +\end_inset + +de +\begin_inset space ~ +\end_inset + +entrada +\begin_inset space ~ +\end_inset + +bibliográfica. + +\family default + Consulte o +\emph on +Guia do usuário +\emph default + para mais detalles. +\end_layout + +\begin_layout Standard +É posíbel tamén completar a referéncia bibliográfica con mais información, + como o(s) capitulo(s) ou a(s) páxina(s) de interese no documento citado. + Isto consegue-se engadindo tal información no campo +\family sans +Texto +\family default + +\family sans +\bar under +d +\bar default +espois +\family default + do diálogo +\family sans +Citación +\family default +. + A información adicional aparecerá dentro dos parénteses e após a referéncia. +\end_layout + +\begin_layout Standard + +\series bold +Exercício: +\series default + Arranxe a bibliografia e a cita no ficheiro +\family typewriter +exemplo_bruto.lyx +\end_layout + +\begin_layout Section +Índices +\end_layout + +\begin_layout Standard +Nalgunhas ocasións pode desexar incluir un índice no seu documento, ben + no início ben no fin. + Co LyX isto é moi doado; prema +\family sans +Return +\family default + entre o título e a primeira sección do seu documento e escolla +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator +L +\bar under +i +\bar default +sta +\begin_inset space ~ +\end_inset + +/ +\begin_inset space ~ +\end_inset + +Indices\SpecialChar \menuseparator + +\bar under +I +\bar default +ndice +\begin_inset space ~ +\end_inset + +xeral +\family default +, e onde estaba o cursor aparecerá un botón onde di +\begin_inset Quotes eld +\end_inset + +Índice Xeral +\begin_inset Quotes erd +\end_inset + + . + A primeira vista non parece que gañará moito, mais se actualiza a vista + do documento como vai ser impreso verá que se acabou de xerar un índice + coas seccións e subseccións do documento. +\end_layout + +\begin_layout Standard +Á primeira vista todo isto lle pode parecer pouco útil. + No entanto, se for dar unha espreitadela á pré-impresión, pode verificar + que acabou de xerar un índice onde se encontran listadas as várias seccións + e sub-seccións do seu documento. + Se en calquer momento reordena as seccións ou cria seccións novas, o LyX + encarrega-se de manter todo en orde. +\end_layout + +\begin_layout Standard +O índice xeral non pode ser editado directamente, e por iso non aparece + listado no documento, porén se clicar no botón correspondente xurdirá unha + xanela cos contidos do dito índice. + Outra maneira de aceder aos ditos contidos é mediante o menu Navegar, que + se pode usar sen necesidade de inserir un índice xeral no documento. + Grazas a este menu poderá mover-se facilmente entre as distintas seccións + e subseccións do documento. +\end_layout + +\begin_layout Standard +O botón do índice, e con el o índice, pode eliminar-se da mesma maneira + que unha letra calquer. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Arranxe o índice do ficheiro +\family typewriter +exemplo_bruto.lyx +\end_layout + +\begin_layout Chapter +Escrebendo fórmulas +\end_layout + +\begin_layout Standard +Moitos cientistas usan LaTeX porque a composición tipográfica que permite + obter, especialmente coas fórmulas matemáticas, ten moi boa cualidade, + dando unha aparéncia profisional aos documentos que non se obtén cos procesador +es de texto estándar e os seus editores matemáticos. + Agora ben, escreber ecuacións en LaTeX asemella-se mais á programazón do + que á escrita, razón pola que ha tamén moitos outros cientistas que non + o usan, a pesar dos magníficos resultados. + +\end_layout + +\begin_layout Standard +O LyX é unha moi boa solución neste caso, xa que permite escreber fórmulas + facilmente, a sua filosofia WYSIWYM é especialmente axeitada para esta + tarefa, e os resultados son iguais de bons que co LaTeX. + Se está afeito a escreber con LaTeX poderá seguir a empregar os seus úteis + mas incómodos comandos, mais con unha intuitiva visualización WYSIWYM. + Se, por outro lado, nunca usou LaTeX, non teña medo, o +\family sans +Painel +\begin_inset space ~ +\end_inset + +matemático +\family default + permitirá-lle escreber rápida e facilmente ecuacións con un aspeito profisional +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Polo momento o LyX non garante que as suas fórmulas estexa correctas, mais + si un bon resultado estético. + +\end_layout + +\end_inset + +. +\end_layout + +\begin_layout Section +Modo matemático +\end_layout + +\begin_layout Standard +Algures no seu documento de proba escreba: +\end_layout + +\begin_layout LyX-Code +Gosto da famosa fórmula de Einstein, E=mc^2, pola sua simplicidade. +\end_layout + +\begin_layout Standard +A ecuación asi escrita non ten moi boa aparéncia, mesmo na forma impresa; + as variábeis e o sinal de igualdade están xuntos de mais, e o cadrado poderia + estar mellor representado. + A pésima composición tipográfica debe-se a ter utilizado texto normal para + escreber a fórmula, en vez de usar o modo matemático. +\end_layout + +\begin_layout Standard +Para criar unha fórmula vaia a barra de ferramentas e clique no botón +\begin_inset Graphics + filename ../../images/math-mode.png + scale 85 + +\end_inset + +. + Isto dá lugar a aparición onde ficaba o cursor dun pequeno rectángulo azul + dentro doutro rectángulo púrpura, que representa unha fórmula matemática + valeira. + Ademais o cursor moveu-se ao interior do rectángulo. + Dixite novamente E=mc^2, verá que é escrito en azul, e que o cadrado azul + desaparece. + Para sair do modo matemático pode ben premer a tecla Esc, ben premer duas + veces a tecla coa frecha para direita, +\begin_inset Formula $\rightarrow$ +\end_inset + +. + O rectángulo purpura desaparece, deixando o cursor á direita da fórmula, + e se agora escrebe algo xa será texto normal. +\end_layout + +\begin_layout Standard +Consulte a pré-impresión e verá como a fórmula ten agora moito mellor aspeito, + con espazos a ambos lados do signo de igualdade, o +\begin_inset Quotes eld +\end_inset + +2 +\begin_inset Quotes erd +\end_inset + + co tamaño e a posición dun expoente, e as letras, que se asume son variábeis, + en itálico. + Os números son só números. +\end_layout + +\begin_layout Standard +O editor matemático é outro exemplo da filosofia WYSIWYM. + En LaTeX, usan-se comandos tais como +\family typewriter + +\backslash +sqrt +\family default + ou +\family typewriter + +\backslash +frac +\family default + para escreber as fórmulas matemáticas, de maneira que se a expresión é + un pouco complexa non é fácil visualizá-la mentalmente. + Sendo preciso compilar o ficheiro latex para poder visualizá-la realmente + nunha pré-impresión. + Por outra banda cumpre ter moito cuidado ao escreber para non cometer erros + como a falta dalgun parénteses, ou a inclusión dalgun termo indebido dentro + dunha raiz. +\end_layout + +\begin_layout Standard +O LyX non trata de visualizar exactamente cal vai ser o resultado impreso + da fórmula (WYSIWYG), mais dá unha idea aproximada, que con un pouco de + experiéncia resulta moi fiábel. + Na imensa maioria das veces o resultado final vai ser satisfactório sen + necesidade de preocupar-se dos pequenos detalles; tamaño dalgunha variábel, + posición dun determinado signo, etc. + Isto permite ao usuário, e sabemos que nos repetimos, concentrar-se no + contido das fórmulas, sen necesidade de esforzar-se na sua forma. +\end_layout + +\begin_layout Section +Navegando nas ecuacións +\end_layout + +\begin_layout Standard +Vamos modificar agora a fórmula +\begin_inset Formula $E=mc^{2}$ +\end_inset + + para obter +\begin_inset Formula $E=1+mc^{2}$ +\end_inset + +. + As teclas con frechas serven para mover o cursor, tanto en texto normal + como no modo matemático. + Leve o cursor até a fórmula, e observe que ao entrar nela aparece novamente + o rectángulo púrpura, indicando que está en modo matemático. + Situe o cursor após o signo igual, coas teclas con frechas ou co rato, + e insira +\begin_inset Quotes eld +\end_inset + +1+ +\begin_inset Quotes erd +\end_inset + +. + Despois, pode usar as teclas con frechas ou +\family sans +Esc +\family default + para sair da fórmula, o que fará desaparecer o rectángulo púrpura novamente. + +\end_layout + +\begin_layout Standard +Alén das teclas especiais descritas mais abaixo, a edición en modo matemático + é similar a edición en texto normal. + Use +\family sans +Supr +\family default + (ou +\family sans +Backspace +\family default +) para eliminar carácteres, seleccione texto coas teclas con frechas ou + co rato, corte, copie e cole normalmente +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Pode cortar ou copiar parte dunha fórmula e colá-la dentro da mesma fórmula, + ou noutra fórmula distinta, mais loxicamente non pode colá-la no texto + normal. +\end_layout + +\end_inset + +, e lembre que en caso de erro sempre pode +\family sans +\bar under +D +\bar default +esfacer +\family default + ou +\family sans +\bar under +R +\bar default +efacer +\family default + no menu +\family sans +\bar under +E +\bar default +ditar +\family default +. + Adverténcia: se o cursor estiver xunto a unha fórmula, mais fora dela, + premer +\family sans +Supr +\family default + (ou +\family sans +Backspace +\family default +) elimina-a toda ela. + Nese caso pode empregar +\family sans +\bar under +E +\bar default +ditar\SpecialChar \menuseparator + +\bar under +D +\bar default +esfacer +\family default + para a recuperar. +\end_layout + +\begin_layout Standard +E se agora quixer mudar o expoente de +\begin_inset Formula $E=mc^{2}$ +\end_inset + +, por exemplo para +\begin_inset Formula $E=mc^{2.5}$ +\end_inset + + ? Pode situar o rato e clicar no sítio axeitado, ou pode empregar as teclas + das frechas. + Coas teclas +\begin_inset Formula $\rightarrow$ +\end_inset + + e +\begin_inset Formula $\leftarrow$ +\end_inset + + situe primeiramente o cursor após o +\begin_inset Quotes eld +\end_inset + +c +\begin_inset Quotes erd +\end_inset + + e antes do +\begin_inset Quotes eld +\end_inset + +2 +\begin_inset Quotes erd +\end_inset + +, prema entón na tecla +\begin_inset Formula $\uparrow$ +\end_inset + + e verá como o cursor se pasa ao nível do expoente, xusto antes do +\begin_inset Quotes eld +\end_inset + +2 +\begin_inset Quotes erd +\end_inset + +. + Mova-se agora coa tecla +\begin_inset Formula $\rightarrow$ +\end_inset + + e engada o +\begin_inset Quotes eld +\end_inset + +.5 +\begin_inset Quotes erd +\end_inset + +. + Para baixar de nível pode loxicamente premer a tecla +\begin_inset Formula $\downarrow$ +\end_inset + +, ou como está no fin do nível superior a tecla +\begin_inset Formula $\rightarrow$ +\end_inset + +. + En todo caso, ao premer a tecla +\begin_inset Formula $\downarrow$ +\end_inset + + o cursor baixa de nível e situa-se na posición +\emph on +após +\emph default + o expoente, con independéncia da sua posición anterior no expoente. +\end_layout + +\begin_layout Section +Expoentes e índices +\end_layout + +\begin_layout Standard +É posíbel inserir un expoente desde o +\family sans +Painel +\begin_inset space ~ +\end_inset + +Matemático +\family default +, como se verá a seguir, porén é mais rápido inserir un acento circunflexo + +\begin_inset Quotes eld +\end_inset + +^ +\begin_inset Quotes erd +\end_inset + + e premer a tecla de espazo. + Isto dá lugar a aparición dun pequeno rectángulo azul nunha posición levemente + superior, a correspondente aos expoentes, sendo posíbel escreber no dito + rectángulo o que se quixer, que aparecerá nun tamaño de letra menor. + Todo o que escreber nel, até premer a tecla espazo, a tecla +\begin_inset Formula $\rightarrow$ +\end_inset + + ou +\family sans +Esc +\family default + (para sair de vez do modo matemático) +\family sans +, +\family default + tornará-se parte do expoente. +\end_layout + +\begin_layout Standard +Os índices (sub-índices) teñen un tratamento semellante, iniciando-se neste + caso ao inserir un +\family sans +trazo +\begin_inset space ~ +\end_inset + +baixo +\family default + ( +\begin_inset Quotes eld +\end_inset + +_ +\begin_inset Quotes eld +\end_inset + +). + É posíbel inserir índices e expoentes dentro doutros índices e expoentes, + como por exemplo: +\begin_inset Formula $A_{a_{0}+b^{2}}+C^{a_{0}+b^{2}}$ +\end_inset + +. + +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Transforme a ecuación 1 do +\family typewriter +exemplo_bruto.lyx +\family default + ao modo matemático. +\end_layout + +\begin_layout Section +O +\family sans +Painel matemático +\end_layout + +\begin_layout Standard +O +\family sans +Painel +\begin_inset space ~ +\end_inset + +matemático +\family default + permite inserir facilmente símbolos ou comandos matemáticos. + Tamén existen atallos de teclado que permiten inserir moitos símbolos e + comandos, mais para aprender as posibilidades. + que oferece o editor matemático do LyX o mais fácil e didáctico é usar + o +\family sans +Painel +\begin_inset space ~ +\end_inset + +matemático +\family default +. + Posteriormente poderá ver noutros manuais os atallos de teclado correspondentes. + Abra entón o painel desde o menu con +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator + +\bar under +F +\bar default +ormula\SpecialChar \menuseparator + +\bar under +P +\bar default +ainel +\begin_inset space ~ +\end_inset + +matemático +\family default + e deixe-o aberto entanto le esta sección. + Outra forma de abrir o painel é clicando no botón direito do rato en calquer + fórmula. +\end_layout + +\begin_layout Subsection +Símbolos +\end_layout + +\begin_layout Standard +Na parte direita do painel ha un recadro con un conxunto de símbolos. + Na parte superior do recadro ha un menu despregueábel que permite escoller + entre distintos conxuntos de símbolos: operadores, relacións, letras gregas, + frechas \SpecialChar \ldots{} + Non ten mais que clicar en calquer deses símbolos para os incluir + no seu texto, ou nas suas fórmulas. + Na parte inferior do recadro, por riba do botón de +\family sans +\bar under +F +\bar default +echar +\family default +, ha outro botón , +\family sans +\bar under +S +\bar default +eparar painel +\family default +, que loxicamente permite ter paineis independentes para os distintos conxuntos + de símbolos. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Escreba no se documento de proba: +\begin_inset Quotes eld +\end_inset + +Eu +\begin_inset Formula $\heartsuit$ +\end_inset + + LyX +\begin_inset Quotes erd +\end_inset + +. +\end_layout + +\begin_layout Subsection +Raices e fraccións +\end_layout + +\begin_layout Standard +Prema no botón +\begin_inset Graphics + filename ../../images/math/sqrt-square.png + scale 85 + +\end_inset + + do painel matemático e verá como se abre un menu despregueábel que lle + permite escoller entre vários tipos de raiz. + Ao escoller, por exemplo, a raiz cúbica inserirá-se no texto o típico signo + da raiz, con un 3 na parte superior esquerda, e con un rectángulo azul + dentro da raiz. + O cursor fica dentro do dito rectángulo, no cal poderá escreber números, + variábeis, outras raices ou o que desexar. + Verá que ao ir adicionando ou eliminando carácteres a raiz vai-se redimensionan +do para abranxer todo o que for escrito dentro. +\end_layout + +\begin_layout Standard +A mesma facilidade existe para traballar coas fraccións. + No painel matemático ha un botón con unha fracción con un rectángulo azul + no numerador e outro no denominador. + Clicando nel insere-se unha fracción no texto con dous pontos de insercións, + no numerador e no denominador, podendo-se pasar dun ao outro coas frechas + ou co rato. + Insira unha fracción no seu ficheiro de proba, verá que o cursor aparece + no nominador, escreba un +\begin_inset Quotes eld +\end_inset + +1 +\begin_inset Quotes erd +\end_inset + + e pase despois ao denominador e escreba un +\begin_inset Quotes eld +\end_inset + +2 +\begin_inset Quotes erd +\end_inset + + . + Xa ten unha fracción, sinxela mais unha fracción. + Porén é posíbel escreber fraccións moito mais complicadas, xa que tanto + no denominador como no numerador pode escreber calquer expresión matemática: + variábeis, raices, outras fraccións, etc. +\end_layout + +\begin_layout Subsection +Acentos e delimitadores +\end_layout + +\begin_layout Standard +O LyX permite usar un bon número de +\begin_inset Quotes eld +\end_inset + +acentos +\begin_inset Quotes erd +\end_inset + + matemáticos, cos que é posíbel acentuar calquer carácter ( +\begin_inset Formula $\overrightarrow{v}$ +\end_inset + +) ou grupo de carácteres ( +\begin_inset Formula $\overrightarrow{a+b}$ +\end_inset + +). + Estes acentos seleccionan-se na sección +\family sans +Decoración +\family default +, do menu despregueábel que ha no recadro +\family sans +Símbolos +\family default +, á direita do painel. + Verá que ha acentos longos, que se expanden co texto acentuado, e outros + curtos, que manteñen o seu tamaño sexa cal sexa o texto acentuado. + Loxicamente o texto acentuado é o que se escrebe no rectángulo azul que + aparece ben por baixo, ben por riba do acento. +\end_layout + +\begin_layout Standard +Os delimitadores, como parénteses curvos, parénteses rectos ou chaves, inseren-s +e desde un painel que se lanza ao premer o botón +\begin_inset Graphics + filename ../../images/math/delim.png + scale 85 + +\end_inset + +. + O par de delimitadores seleccionados mostra-se na parte inferior. + Por defeito ten-se un par de parénteses curvos, mais é posíbel escoller + calquer par de delimitadores; unha chave esquerda e un paréntese recto + direito, duas chaves esquerdas, o mesmo un dos delimitadores valeiro, para + obter algo como +\begin_inset Quotes eld +\end_inset + + +\begin_inset Formula $a=\left\langle 7\right.$ +\end_inset + + +\begin_inset Quotes erd +\end_inset + + (o delimitador valeiro mostra-se como unha liña a trazos en LyX, mais non + aparecerá no documento impreso). +\end_layout + +\begin_layout Standard +É posíbel dixitar directamente parénteses no modo matemático, o cal é mais + cómodo que usar o painel matemático, mais estes parénteses terán o tamaño + do texto normal, e non van modificá-lo ao introducir fraccións ou matrices + entre os delimitadores. + O resultado estético será normalmente moi pobre. + Pola contra os delimitadores do painel matemático mudan o seu tamaño en + función do que haxa entre eles, e o resultado estético está garantido. +\end_layout + +\begin_layout Standard +Tamén é posíbel aplicar delimitadores, raices ou acentos a texto escrito + previamente. + Basta con seleccionar a porción da fórmula que se quer modificar e clicar + no botón respectivo do +\family sans +Painel +\begin_inset space ~ +\end_inset + +matemático +\family default +. + Probe a mudar a segunda lei de Newton da forma escalar para a forma vectorial + ( +\begin_inset Formula $f=ma$ +\end_inset + + para +\begin_inset Formula $\overrightarrow{f}=m\overrightarrow{a}$ +\end_inset + +). + A operación inversa, i.e. + eliminar uns delimitadores, unha raiz ou un acento dunha porción de texto, + realiza-se colocando o cursor no início da dita porción e premendo a tecla + +\family sans +Backspace +\family default + (a tecla que elimina o carácter anterior ao cursor). +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Arranxe a ecuación 2 do +\family typewriter +exemplo_bruto.lyx +\family default +. +\end_layout + +\begin_layout Subsection +Modo TeX: Limites, log, sin e outros +\end_layout + +\begin_layout Standard +No modo matemático asume-se que as letras son variábeis, de maneira que + se escreber sen mais o nome dunha función, por exemplo +\begin_inset Quotes eld +\end_inset + +cos +\begin_inset Quotes erd +\end_inset + +, o LyX pensará que está a escreber o produto de várias variábeis, neste + caso tres: +\begin_inset Formula $c$ +\end_inset + +, +\begin_inset Formula $o$ +\end_inset + +, e +\begin_inset Formula $s$ +\end_inset + +. + Para diferenciar as variábeis das funcións o LaTeX escrebe as primeiras + en itálico, e as segundas en +\family sans +Roman, +\family default + ademais introduz un pequeno espazo entre unha función e a variábel corresponden +te. + Ou sexa escrebe +\begin_inset Quotes eld +\end_inset + + +\begin_inset Formula $\cos x$ +\end_inset + + +\begin_inset Quotes erd +\end_inset + + e non +\begin_inset Quotes eld +\end_inset + + +\begin_inset Formula $cosx$ +\end_inset + + +\begin_inset Quotes erd +\end_inset + +. + +\end_layout + +\begin_layout Standard +Na parte esquerda do +\family sans +Painel +\begin_inset space ~ +\end_inset + +matemático +\family default + listan-se as funcións matemáticas mais comuns. + Clique en +\begin_inset Quotes eld +\end_inset + +cos +\begin_inset Quotes erd +\end_inset + +, e verá como se insere a función +\begin_inset Quotes eld +\end_inset + +cos +\begin_inset Quotes erd +\end_inset + + no texto. + Ainda que a función fica dentro dunha fórmula o texto aparece escrito en + negro e en letra normal (non inclinada). + Mais non é texto normal, toda a palabra é tratada como un único signo, + de maneira que se preme en +\family sans +Backspace +\family default + eliminará toda a palabra, e se fai recuar o cursor verá como aparece o + rectángulo purpura que arrodea as ecuacións. + Coloque agora o cursor a direita da función, mais dentro do rectángulo, + e escreba +\begin_inset Quotes eld +\end_inset + +x +\begin_inset Quotes erd +\end_inset + +. + Tal e como é de esperar no modo matemático a variábel +\begin_inset Quotes eld +\end_inset + +x +\begin_inset Quotes erd +\end_inset + + escrebe-se en azul e en itálico. + Vexa agora a pré-impresión para comprobar o resultado final. +\end_layout + +\begin_layout Standard +Ás funcións predefinidas polo LyX, como a calquer outro texto, pode-se-lle + engadir índices e expoentes, o que permite escreber expresións tais como + +\begin_inset Quotes eld +\end_inset + + +\begin_inset Formula $\cos^{2}\theta$ +\end_inset + + +\begin_inset Quotes erd +\end_inset + + ou +\begin_inset Quotes eld +\end_inset + + +\begin_inset Formula $\lim_{n\rightarrow\infty}$ +\end_inset + + +\begin_inset Quotes erd +\end_inset + +. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Transforme a ecuación 3 do +\family typewriter +exemplo_bruto.lyx +\family default + no modo matemático. +\end_layout + +\begin_layout Subsection +Matrices +\end_layout + +\begin_layout Standard +O botón +\begin_inset Graphics + filename ../../images/math/matrix.png + scale 85 + clip + +\end_inset + + do +\family sans +Painel +\begin_inset space ~ +\end_inset + +matemático +\family default + serve loxicamente para inserir matrices. + Ao clicar nese botón abre-se o diálogo +\family sans +Matriz matemática +\family default + que permite escoller o número de liñas e de colunas que vai ter a matriz. + Escolla 2 liñas e 3 colunas e feche o diálogo. + O LyX inserirá unha matriz de +\begin_inset Formula $2\times3$ +\end_inset + + rectángulos azuis, nos que poderá escreber calquer expresión matemática + (raices cúbicas, fraccións, logaritmos, outras matrices\SpecialChar \ldots{} +), mesmo pode deixar + algun dos rectángulos valeiro. + Pode mover-se entre os elementos da matriz coa tecla +\family sans +Tab +\family default + e as teclas con frechas. + +\end_layout + +\begin_layout Standard +Ao colocar o cursor nunha matriz matemática, no menu principal +\family sans +\bar under +E +\bar default +ditar +\family default + aparecen un par de novos epígrafes, un dos cais, +\family sans +\bar under +F +\bar default +ilas e colunas, +\family default + permite engadir ou eliminar filas e colunas, e modificar os seus aliñamentos + horizontal e vertical. + +\end_layout + +\begin_layout Standard +Lembre que é posíbel debuxar uns delimitadores axeitados para a matriz seleccion +ando-a e escollendo os delimitadores no +\family sans +Painel +\begin_inset space ~ +\end_inset + +matemático +\family default +. +\end_layout + +\begin_layout Standard +Por último cumpre-nos asinalar que non é recomendábel utilizar matrices + matemáticas para escreber texto. + Para iso son moito mellores as táboas. +\end_layout + +\begin_layout Subsection +Fórmulas independentes +\end_layout + +\begin_layout Standard +Até o momento escrebemos fórmulas que ficaban na mesma liña que o texto + que viña antes e despois delas, polo que receben o nome de fórmulas en + liña. + As fórmulas en liña usan-se normalmente cando son curtas e simples, mais + con expresións longas e complexas, ou cando se desexa salientaren no texto + usan-se as fórmulas independentes. + Ademais só as fórmulas independentes poden seren etiquetadas e numeradas, + e as ecuacións multi-liña teñen que ser obrigatoriamente independentes + (vexa o +\emph on +Guia do usuário +\emph default +). +\end_layout + +\begin_layout Standard +Clique no botón +\family sans + +\begin_inset Graphics + filename ../../images/math-display.png + +\end_inset + + +\family default + do +\family sans +Painel +\begin_inset space ~ +\end_inset + +matemático +\family default + e verá como aparece no texto unha fórmula valeira independente, i.e. + centrada nunha nova liña. + Escreba agora unha expresión matemática e lance unha pré-impresión para + ver o aspeito final. + Se o cursor está xa nunha expresión matemática o botón +\family sans + +\begin_inset Graphics + filename ../../images/math-display.png + +\end_inset + + +\family default + troca entre formula en liña e independente, i.e. + se inicialmente ten-se unha fórmula en liña pasa-se a ser independente + e vice-versa. +\end_layout + +\begin_layout Standard +As fórmulas independentes apresentan algunhas diferenzas a respeito das + en liña: +\end_layout + +\begin_layout Itemize +O tamaño da letra é maior nalguns símbolos, como +\begin_inset Formula $\sum$ +\end_inset + + e +\begin_inset Formula $\int$ +\end_inset + +. +\end_layout + +\begin_layout Itemize +Os índices e os expoentes para límites e somatórios (mais non para integrais) + escreben-se por baixo dos símbolos, e non a continuación deles. +\end_layout + +\begin_layout Itemize +O texto está centrado. +\end_layout + +\begin_layout Standard +Fora destas diferenzas as fórmulas en liña e independentes son moi similares. +\end_layout + +\begin_layout Standard +Finalmente unha nota sobre a colocación das fórmulas independentes no texto. + Se quer que unha fórmula independente fique dentro dun parágrafo entón + non prema o +\family sans +Return +\family default + ao sair dela. + Mais se xa o fixo non ten mais que situar o cursor no início da frase, + que segue á fórmula, e premer +\family sans +Backspace +\family default +. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Faga independentes as várias fórmulas do +\family typewriter +exemplo_bruto.lyx +\family default + e vexa o seu aspeito nunha pré-impresión. +\end_layout + +\begin_layout Standard + +\series bold +Exercício +\series default +: Usando as várias ferramentas que aprendeu nesta sección, escreba unha + ecuación como esta +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Despois de facé-lo desde zero probe con +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator + +\bar under +F +\bar default +ormula\SpecialChar \menuseparator +Entorno +\family default + +\family sans +\bar under +c +\bar default +asos +\end_layout + +\end_inset + +: +\begin_inset Formula \[ +f(x)=\left\{ \begin{array}{cc} +\log_{8}x & x>0\\ +0 & x=0\\ +\sum_{i=1}^{5}\alpha_{i}+\sqrt{-\frac{1}{x}} & x<0 +\end{array}\right.\] + +\end_inset + + +\end_layout + +\begin_layout Section +Mais cuestións matemáticas +\end_layout + +\begin_layout Standard +No editor matemático pode-se facer moitas mais cousas. + Porén consideramos que o mais básico xa foi explicado, e encamiñamos ao + leitor ao +\emph on +Guia do usuário +\emph default + para ver como: +\end_layout + +\begin_layout Itemize +Etiquetar e numerar as ecuacións. +\end_layout + +\begin_layout Itemize +Escreber ecuacións multiliña +\end_layout + +\begin_layout Itemize +Trocar de tipo de letra, por exemplo para usar negrito nunha fórmula. +\end_layout + +\begin_layout Itemize +Facer un axuste fino no tamaño da letra e no espazamento dentro das fórmulas. + (Non se preocupe disto até a versión final do texto do seu documento!) +\end_layout + +\begin_layout Itemize +Escreber macros. + Poden ser moi úteis, basta defini-los unha vez no início do documento e + poden utilizar-se en calquer parte. + Se muda a definición do macro, as referéncias ao macro serán modificadas + en todo o documento. + Os macros poden mesmo tomar argumentos. +\end_layout + +\begin_layout Itemize +Facer moitas outras cousas que nen se mencionan neste +\emph on +Tutorial +\emph default +. +\end_layout + +\begin_layout Chapter +Miscelánea +\end_layout + +\begin_layout Section +Outras importantes funcionalidades do LyX +\end_layout + +\begin_layout Standard +Neste tutorial non se pretende documentar todos os posíbeis comandos do + LyX, para iso están o +\emph on +Guia do Usuário +\emph default + e o manual de +\emph on +Funcións avanzadas +\emph default +. + Mais para nos despedir apresentamos algunhas das funcionalidades do LyX + das cais ainda non falamos: +\end_layout + +\begin_layout Itemize +tratamento WYSIWYM de táboas. + As táboas poden inserir-se ben desde o menu principal, +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator + +\bar under +T +\bar default +áboa, +\family default + ben clicando no botón +\begin_inset Graphics + filename ../../images/tabular-insert.png + scale 85 + clip + +\end_inset + + da barra de ferramentas. + Clicando na táboa co +\emph on +botón direito +\emph default + abre-se o diálogo +\family sans +Configuración +\begin_inset space ~ +\end_inset + +da +\begin_inset space ~ +\end_inset + +táboa +\family default +, que permite editar a táboa polo miúdo. +\end_layout + +\begin_layout Itemize +inclusión, e manexo, de imaxe nos documentos, (con +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator + +\family default + +\family sans +Ima +\bar under +x +\bar default +e +\family default + ou clicando no botón +\begin_inset Graphics + filename ../../images/dialog-show-new-inset_graphics.png + scale 85 + +\end_inset + +). + +\begin_inset Quotes eld +\end_inset + +De fabrica +\begin_inset Quotes erd +\end_inset + + o LyX entende vários formatos vectoriais: PostScript®, PostScript Encapsulado + (EPS), Scalable Vector Graphics (SVG) e LaTeX puro, e os formatos bitmap + mais usuais (png, jpeg, tif, bmp, \SpecialChar \ldots{} +), mais é posíbel configurá-lo para utilizar + praticamente calquer formato. + Tanto as táboas como as figuras pode ser acompañadas de lexendas, sendo + posíbel criar automaticamente listas de táboas e/ou figuras. +\end_layout + +\begin_layout Itemize +controlo de versións, mediante RCS ( +\family typewriter +man rcsintro +\family default + para máis información). +\end_layout + +\begin_layout Itemize +altamente personalizábel. + Ha moitas cousas que o usuário pode mudar no LyX, desde o aspeito visual + da xanela principal até os comandos para exportar documentos. + Moitas destas mudanzas poden-se facer desde o menu, +\family sans +Ferramentas +\family default + +\family sans +\SpecialChar \menuseparator +Pre +\bar under +f +\bar default +éncias, +\family default + outras son menos acesíbeis e para as facer cumpre ler o manual de +\emph on +Personalización +\family sans +\emph default +\SpecialChar \@. + +\end_layout + +\begin_layout Itemize +poliglota. + O LyX está é desenvolvido por unha equipa de programadores distribuída + pelos cinco continentes. + Por iso entende moitas línguas, podendo-se escreber documentos en distintos + alfabetos, e con escritas tanto de esquerda->direita como direita->esquerda. + Ten ademais os menus e documentación traducidos a várias línguas, e estamos + desexosos de receber novas traducións. + +\end_layout + +\begin_layout Itemize +corrección ortográfica disponíbel en ducias de línguas. + +\family sans +\bar under +F +\bar default +erramentas\SpecialChar \menuseparator + +\bar under +C +\bar default +orrector ortográfico +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Note-se que a corrección ortográfica comeza a partir do cursor. +\end_layout + +\end_inset + +. +\end_layout + +\begin_layout Itemize +navegación dos menus co teclado. + O LyX ten atallos de teclado que permite non ter que utilizar continuamente + o rato, e que poden ser personalizados polo usuário (vexa-se o manual de + +\emph on +Personalización +\emph default +). + +\end_layout + +\begin_layout Itemize +importación de documentos LaTeX. + Vexa-se a sección +\begin_inset space ~ +\end_inset + + +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:tex2lyx" + +\end_inset + +. +\end_layout + +\begin_layout Itemize +Minibuffer. + Na parte inferior da xanela principal ha unha liña cincenta na que se mostra + diversa información; o tipo de fonte usada ou o atallo de teclado correspondent +e a acción que se acaba de executar. + Sobre esta liña é posíbel abrir unha caixa de texto chamada minibuffer + (nome tomado dunha función similar en +\family sans +emacs +\family default +), que dá aceso a todo tipo de interesantes funcionalidades, incluindo algunhas + que permiten escangallar de vez o documento. + Polo que non debe escreber no minibuffer se non sabe o que está a facer. +\end_layout + +\begin_layout Section +O LyX para usuários de LaTeX +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:usuarioslatex" + +\end_inset + +Non é necesário saber nada de LaTeX para empregar o LyX, mais ter unha certa + idea permite aproveitá-lo mellor. + En todo caso moitos dos novos usuário de LyX teñen alguns coñecimentos + básico de LaTeX, e esta sección está pensada para eles. + +\end_layout + +\begin_layout Standard +Unha cuestión que se lle ocorre ao usuário de LaTeX que está a considerar + en usar o LyX, é se neste programa poderá conseguir facer todo o que o + LaTeX permite facer. + A resposta é afirmativa, dunha forma ou doutra, o LyX permite realizar + practicamente o mesmo que o LaTeX, mais simplificando grandemente o proceso + de escrita. + +\end_layout + +\begin_layout Standard +Co intuito de manter un Tutorial breve só se mencionan nel as cousas mais + básicas, as que os novos usuário do LyX precisan para comezar. + Mais no manual +\emph on +Funcións avanzadas +\emph default +, especificamente no capítulo +\emph on +\lang english +Secrets of the LaTeX Masters +\emph default +\lang galician + (Secretos dos mestres do LaTeX), trata-se en profundidade as diferenzas + entre o LyX e o LaTeX, e como usar vários truques do LaTeX no LyX. +\end_layout + +\begin_layout Subsection +Modo TeX +\end_layout + +\begin_layout Standard +O LyX implementa moitos comandos do LaTeX, mais non todos. + No seu defeito oferece o modo TeX, que permite utilizar calquer comando + de LaTeX, sempre que o usuário o coñeza. + Para entrar neste modo pode-se ben clicar no botón +\color none + +\color red + +\begin_inset Graphics + filename ../../images/ert-insert.png + scale 85 + clip + +\end_inset + + +\color none + na barra de ferramentas, ou seleccionar no menu +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator +Códi +\bar under +g +\bar default +o +\begin_inset space ~ +\end_inset + +TeX. + +\family default + Abre-se entón unha caixa vermella precedida por un botón que pon en vermello + ERT +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +[N.T] Evil Red Text = Malvado texto vermello. + O nome fai referéncia a que o texto no modo TeX aparece escrito en vermello, + e que unha das tarefas da equipa desenvolvedora do LyX e facer desaparecer + a necesidade de usar ese texto vermello. +\end_layout + +\end_inset + +. + A caixa é loxicamente para escreber comandos TeX (LaTeX), que o LyX vai + pasar directamente ao LaTeX. + Todo o escrito na caixa vai aparecer en vermello, para asi diferenciá-lo + claramente. + +\end_layout + +\begin_layout Standard +No modo matemático basta con dixitar a barra invertida, +\begin_inset Quotes eld +\end_inset + + +\backslash + +\begin_inset Quotes erd +\end_inset + +, para entrar no modo TeX. + Entanto estexa no modo TeX o texto será escrito en vermello, saindo-se + del premendo na barra espazadora ou calquer outra tecla non alfabética: + un número, un paréntese, etc. + Unha vez abandonado o modo TeX, se o LyX coñece o comando escrito, vai-no + representar no xeito WYSIWYM. + Asi se nunha formula escreber o comando +\backslash +gamma, ao premer a barra espazadora o LyX trocará o texto +\family sans +\shape italic +\color red +gamma +\family default +\shape default +\color none + en vermello por un +\color blue + +\begin_inset Formula $\gamma$ +\end_inset + + +\color none + en azul. + Este método funciona con case todos os macros matemáticos non complicados, + sendo mais rápido que utilizar o +\family sans +Painel +\begin_inset space ~ +\end_inset + +Matemático +\family default +, especialmente para os usuários experientes do LaTeX. +\end_layout + +\begin_layout Standard +Constantemente están a aparecer novos pacotes de LaTeX, con novas funcionalidade +s e sen pedir permiso a unha autoridade central. + O LyX permite utilizar calquer deles sen mais que escreber +\family typewriter + +\backslash +usepackage{nome_do_pacote} +\family default + no preámbulo (vexa-se a Sección +\begin_inset space ~ +\end_inset + + +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:preambulo" + +\end_inset + +), mais sen suporte WYSIMYM para as funcionalidades do pacote. +\end_layout + +\begin_layout Subsection +Importando de LaTeX — +\family typewriter +tex2lyx +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:tex2lyx" + +\end_inset + +Para importar un documento LaTeX seleccione +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator + +\bar under +I +\bar default +mportar\SpecialChar \menuseparator +LaTeX (plain) +\family default + no menu principal. + Isto dá lugar a que o LyX chame o comando +\family typewriter +tex2lyx +\family default +, responsábel da tradución de LaTeX a LyX, crie un ficheiro co mesmo nome + que o orixinal, en latex, mais coa extensión +\family typewriter +lyx +\family default +, e abra este ficheiro lyx. + Se o proceso non for ben sucedido, tente executar o +\family typewriter +tex2lyx +\family default + na liña de comandos variando as opcións do programa. +\end_layout + +\begin_layout Standard + +\family typewriter +tex2lyx +\family default + entende e traduz a maior parte dos comandos e ambientes LaTeX, mais non + todos. + Usualmente deixa inalteradas as partes que non entende, en modo TeX. + Portanto tras importar un ficheiro LaTeX é bon procurar as partes non traducida +s, en vermello, e editá-las manualmente. + Se ben, en moitos casos, un documento con partes en modo TeX pode dar lugar + a un texto impreso de boa cualidade. + Ainda que no LyX non sexa facilmente lexíbel, perdendo-se o espirito do + WYSIWYM. +\end_layout + +\begin_layout Standard + +\family typewriter +tex2lyx +\family default + ten o seu próprio manual, ao que se acede con +\family typewriter +man tex2lyx +\family default +. + Lea-o para aprender que comandos e ambientes LaTeX non están soportados, + os seus erros (e como contorná-los), e as diferentes opcións coas que se + pode executar. +\end_layout + +\begin_layout Subsection +Exportando a LaTeX +\end_layout + +\begin_layout Standard +O LyX permite exportar directamente a LaTeX, escollendo +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator + +\bar under +E +\bar default +xportar\SpecialChar \menuseparator +LaTeX (plain) +\family default + no menu xerará-se un ficheiro LaTeX co nome igual ao documento lyx, mais + coa extensión +\family typewriter +.tex. + +\family default + É tamén posíbel tamén xerar un ficheiro LaTeX especialmente deseñado para + compilar con pdflatex, en vez de con latex, escollendo +\family sans +\bar under +F +\bar default +icheiro\SpecialChar \menuseparator + +\bar under +E +\bar default +xportar\SpecialChar \menuseparator +LaTeX (pdflatex) +\family default + no menu. + Para visualizar pré-impresións, ou para imprimir, o LyX xera ficheiros + temporários en LaTeX, portanto ten que ser bon xerando documentos con este + formato. +\end_layout + +\begin_layout Subsection +Configuración do documento +\end_layout + +\begin_layout Subsubsection + +\emph on +Clase +\emph default + do documento +\end_layout + +\begin_layout Standard +Indo a +\family sans +\bar under +D +\bar default +ocumento\SpecialChar \menuseparator + +\bar under +C +\bar default +onfiguración +\family default + abre-se unha caixa de diálogo que serve loxicamente para configurar o documento +, permitindo especificar moitas das opcións que se poden incluir no comando + +\family typewriter + +\backslash +documentclass +\family default + de LaTeX. + Asi pode-se mudar a +\emph on +clase +\emph default + do documento, o tipo e tamaño da fonte base, o tamaño do papel, as marxes, + a língua etc. + Ademais calquer opción extra para o comando +\family typewriter + +\backslash +documentclass +\family default + pode ser engadida no campo +\family sans +Opcións +\family default + da +\family sans +Configuración de clase +\family default + no apartado +\family sans +Clase do documento +\family default +. +\end_layout + +\begin_layout Subsubsection +Preámbulo LaTeX +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:preambulo" + +\end_inset + +Na caixa de diálogo +\family sans +Configuración do documento +\family default +, que se veu no parágrafo anterior, existe unha sección chamada +\family sans +Preámbulo LaTeX +\family default +, onde se poden incluir directamente comandos en LaTeX que afectarán a todo + o documento. + +\end_layout + +\begin_layout Subsection +BibTeX +\end_layout + +\begin_layout Standard +O LyX permite utilizar o BibTeX, un pacote para construir bases de dados + con referéncias bibliográficas, que poden ser usadas en diferentes documentos. + Seleccione +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator +Lista +\begin_inset space ~ +\end_inset + +/ +\begin_inset space ~ +\end_inset + +Indice\SpecialChar \menuseparator + +\bar under +B +\bar default +ibliografia BibTeX +\family default + para incluir un ficheiro +\family typewriter +bib +\family default +. + Clique no botón resultante +\begin_inset Quotes eld +\end_inset + +Bibliografia Xerada BibTeX +\begin_inset Quotes erd +\end_inset + + e xurdirá a caixa de diálogo +\family sans +Bibliografia BibTeX +\family default +. + No campo +\family sans +Banco +\begin_inset space ~ +\end_inset + +de +\begin_inset space ~ +\end_inset + +dados +\family default +, escreba o que escreberia entre as chaves do comando +\family typewriter + +\backslash +bibliography{} +\family default + +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Do mesmo xeito que en LaTeX, se ha várias bibliografias estas deben ir separadas + por vírgulas, sen espazos en branco. +\end_layout + +\end_inset + +. + Analogamente, escreba no campo +\family sans +Estilo +\family default + o que escreberia entre as chaves do comando +\family typewriter + +\backslash +bibliographystyle{} +\family default +. +\end_layout + +\begin_layout Standard +Após disto pode citar de calquer das bibliografias incluídas mediante o + comando +\family sans +\bar under +I +\bar default +nserir\SpecialChar \menuseparator +C +\bar under +i +\bar default +tación +\family default + (vexa a sección +\begin_inset space ~ +\end_inset + + +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:bibliografias" + +\end_inset + +). + A execución do BibTeX fica a cargo do LyX. +\end_layout + +\begin_layout Section +Erros ! +\end_layout + +\begin_layout Standard +Ás veces, ao tentar imprimir ou ver unha pré-impresión do documento, o LaTeX + topa con algo que non comprende. + Nestes casos o LyX abrirá a caixa de diálogo +\family sans +LyX: latex Erros +\family default + onde se listan os erros atopados. + Ao clicar nun erro determinado neste diálogo move-se o cursor até o ponto + que dá lugar ao dito erro, e mostra-se en detalle a mensaxe de erro que + produz o latex, na parte inferior da caixa de diálogo. +\end_layout + +\end_body +\end_document diff --git a/lib/doc/hu/Tutorial.lyx b/lib/doc/hu/Tutorial.lyx index da00b459cf..482fb60544 100644 --- a/lib/doc/hu/Tutorial.lyx +++ b/lib/doc/hu/Tutorial.lyx @@ -1,5679 +1,5679 @@ -#LyX 2.0.0svn created this file. For more info see http://www.lyx.org/ -\lyxformat 404 -\begin_document -\begin_header -\textclass book -\begin_preamble -% DO NOT ALTER THIS PREAMBLE!!! -% -%This preamble is designed to ensure that the document prints -% out as advertised. If you mess with this preamble, -% parts of the document may not print out as expected. If you -% have problems LaTeXing this file, please contact -% the documentation team -% email: lyx-docs@lists.lyx.org - -\usepackage{ifpdf} % part of the hyperref bundle -\ifpdf % if pdflatex is used - - % set fonts for nicer pdf view - \IfFileExists{lmodern.sty}{\usepackage{lmodern}}{} - -\fi % end if pdflatex is used - -% the pages of the TOC is numbered roman -% and a pdf-bookmark for the TOC is added -\let\myTOC\tableofcontents -\renewcommand\tableofcontents{% - \frontmatter - \pdfbookmark[1]{\contentsname}{} - \myTOC - \mainmatter } - -% redefine the \LyX macro for PDF bookmarks -\def\LyX{\texorpdfstring{% - L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@} - {LyX}} -\end_preamble -\use_default_options false -\maintain_unincluded_children false -\language magyar -\inputencoding auto -\fontencoding global -\font_roman default -\font_sans default -\font_typewriter default -\font_default_family default -\use_xetex false -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics none -\default_output_format default -\output_sync 0 -\bibtex_command default -\index_command default -\paperfontsize 12 -\spacing single -\use_hyperref true -\pdf_title "The LyX Tutorial" -\pdf_author "LyX Team" -\pdf_subject "LyX-documentation Tutorial" -\pdf_keywords "LyX, documentation" -\pdf_bookmarks true -\pdf_bookmarksnumbered true -\pdf_bookmarksopen true -\pdf_bookmarksopenlevel 1 -\pdf_breaklinks false -\pdf_pdfborder false -\pdf_colorlinks true -\pdf_backref false -\pdf_pdfusetitle false -\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false" -\papersize default -\use_geometry false -\use_amsmath 0 -\use_esint 0 -\use_mhchem 1 -\use_mathdots 1 -\cite_engine basic -\use_bibtopic false -\use_indices false -\paperorientation portrait -\suppress_date false -\use_refstyle 0 -\index Tárgymutató -\shortcut idx -\color #008000 -\end_index -\secnumdepth 3 -\tocdepth 2 -\paragraph_separation indent -\paragraph_indentation default -\quotes_language polish -\papercolumns 1 -\papersides 2 -\paperpagestyle headings -\tracking_changes false -\output_changes false -\html_math_output 0 -\html_be_strict false -\end_header - -\begin_body - -\begin_layout Title -A LyX tankönyv -\end_layout - -\begin_layout Author -Készítette: a LyX csapat -\begin_inset Foot -status open - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ezen dokumentum formális karbantartója: -\noun on -Amir Karger -\noun default -. - Amennyiben megjegyzése vagy hibajavítási javaslatai lennének, kérem küldje - őket a LyX dokumentációs levelezési listára -\family typewriter -lyx-docs@lists.lyx.org -\family default -, vagy közvetlenül a kérdéses dokumentum fordítójának. -\end_layout - -\end_inset - - -\begin_inset Newline newline -\end_inset - - -\shape italic -\size small -Fordította: Szőke Sándor -\end_layout - -\begin_layout Standard -\begin_inset CommandInset toc -LatexCommand tableofcontents - -\end_inset - - -\end_layout - -\begin_layout Chapter -Bevezetés -\end_layout - -\begin_layout Section -Üdvözöljük a LyX-ben! -\end_layout - -\begin_layout Standard -Ez a tankönyv azok számára készült, akik még sohasem hallottak a LaTeX-ről - vagy nem ismerik azt elég jól. - De ne essen pánikba, nem kell megtanulnia a LaTeX-et ahhoz, hogy használni - tudja a LyX-et. - Tulajdonképpen a LyX lényege éppen ez: egy majdnem WYSIWYG -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Fordító megjegyzése: -\begin_inset Quotes pld -\end_inset - -What You See Is What You Get -\begin_inset Quotes prd -\end_inset - - – -\begin_inset Quotes pld -\end_inset - -azt kap amit lát -\begin_inset Quotes prd -\end_inset - - – a továbbiakban röviden WYSIWYG -\end_layout - -\end_inset - - kezelőfelület a LaTeX-hez. - Azonban van néhány dolog, amit érdemes megtanulnia a LyX eredményes használatáh -oz. -\end_layout - -\begin_layout Standard -Valószínűleg, sokan azért kezdték olvasni ezt a dokumentumot, mert megpróbáltak - több szóközt tenni a -\begin_inset Quotes pld -\end_inset - -. -\begin_inset Quotes prd -\end_inset - - után vagy 3 sort kihagyni két bekezdés között. - Sok-sok csalódás után be kellett látniuk, hogy valamiért ez nem sikerül. - Ráadásul azt is tapasztalhatják, hogy a legtöbb ügyes trükk, amit megszokhattak - az eddig használt szövegszerkesztőknél, az nem működik a LyX-ben. - Ez azért van, mert a korábban használt szövegszerkesztők engedték, hogy - manuálisan állítsa be a betűméreteket, kihagyásokat, oldaltöréseket, stb. - Szóval önnek kellett elvégezni a dokumentum megírásán kívül a szedését - is. - A LyX következetesen végzi el ön helyett a szöveg szedését és tördelését, - így önnek csak az írásának tartalmára kell koncentrálnia. -\end_layout - -\begin_layout Standard -Szóval tartson velünk és folytassa az olvasást. - Biztosíthatjuk önt, hogy ezen tankönyv végigolvasása határozottan jó befektetés - lesz. -\end_layout - -\begin_layout Section -Mire -\emph on -jó -\emph default - ez a Tankönyv, és mire -\emph on -nem -\emph default -? -\end_layout - -\begin_layout Standard -Mielőtt belefognánk ebbe a részbe, szeretnénk valamit tisztázni. - A -\emph on -Tankönyv -\emph default - a -\emph on -Bevezetés -\emph default --ben vázolt jelöléseket használja. - Ha ön rögtön ezzel a dokumentummal kezdte az olvasást, javasoljuk először - olvassa el a -\emph on -Bevezetés -\emph default --t. - Igen, most! -\end_layout - -\begin_layout Standard -Most, hogy már tudja melyik betűtípus mit jelent, nézzük meg mire is lesz - jó ez a -\emph on -Tankönyv -\emph default -. -\end_layout - -\begin_layout Subsection -A tankönyv lényegének elsajátítása -\end_layout - -\begin_layout Standard -Ez a tankönyv példákból és feladatokból áll. - Ahhoz, hogy az itt leírtakat elsajátítsa, az egész dokumentumot el kell - olvasnia. - Be kell gépelnie az összes apró idétlen dolgot, amit mi itt leírtunk és - ki kell próbálnia az összes példát ahhoz, hogy lássa működnek. - Ahhoz, hogy mindez kényelmesebb legyen ki is nyomtathatja a dokumentum - PostScript -\begin_inset ERT -status open - -\begin_layout Plain Layout - - -\backslash -textregistered -\end_layout - -\end_inset - - -\begin_inset space ~ -\end_inset - -változatát. -\end_layout - -\begin_layout Standard -Ha ön már ismeri a LaTeX-et valószínűleg gyorsabban tudja elolvasni a -\emph on -Tankönyv -\emph default --et, mivel a legtöbb LyX-es dolog tulajdonképpen egy elrejtett LaTeX parancs. - Azonban a LyX-nek van néhány olyan egyéni sajátossága -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -vagy optimistábban -\begin_inset Quotes pld -\end_inset - -előnyös tulajdonsága -\begin_inset Quotes prd -\end_inset - - -\end_layout - -\end_inset - -, amit érdemes megtanulni. - Ha mégsem szeretné végigolvasni a teljes -\emph on -Tankönyv -\emph default --et, mindenképpen javasoljuk, hogy nézze át az -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:latexusers" - -\end_inset - - -\begin_inset space ~ -\end_inset - -részt, amit a gyakorlott LaTeX felhasználóknak szántunk. -\end_layout - -\begin_layout Subsection -Ami -\emph on -nem fog -\emph default - megtalálni: -\end_layout - -\begin_layout Itemize -A LyX összes jellemzőjének részletes magyarázata. -\end_layout - -\begin_deeper -\begin_layout Standard -A -\emph on -Felhasználói kézikönyv -\emph default --et szeretné kétszer? -\end_layout - -\begin_layout Standard -Komolyra fordítva a szót, mi most azt szeretnénk, hogy gyorsan el tudjon - indulni, a továbblépéshez ott a -\emph on -Felhasználói kézikönyv -\emph default -. - Ha megpróbálnánk leírni mindent itt is, ez a -\emph on -Tankönyv -\emph default - felesleges, túlságosan hosszú, valamint mindig elavult lenne. - E dokumentumnak az a feladata, hogy ízelítőt adjon a lehetőségekből. - Megfigyelheti, minden szakasz végén a -\begin_inset Quotes pld -\end_inset - -lásd a -\emph on -Felhasználói kézikönyv -\emph default --ben -\begin_inset Quotes prd -\end_inset - - utalást. -\end_layout - -\end_deeper -\begin_layout Itemize -Részletes útmutató a LaTeX-hez -\end_layout - -\begin_deeper -\begin_layout Standard -Szükségtelen. - Ha ön kiváncsi arra, milyen ügyes trükköket lehet megcsinálni a LaTeX-el, - bármikor vehet egy jó LaTeX könyvet. - Sok jó könyvet talál a boltokban. - Nincs rá szükség, hogy feltaláljuk a spanyolviaszt\SpecialChar \ldots{} - -\end_layout - -\end_deeper -\begin_layout Standard -Hát bátor olvasó, ideje továbblépni. - Eljött az idő az első dokumentum elkészítéséhez\SpecialChar \ldots{} - -\end_layout - -\begin_layout Chapter -Kezdő lépések -\end_layout - -\begin_layout Section -Az első LyX dokumentuma -\end_layout - -\begin_layout Standard -Szuper, látom már készen áll arra, hogy elkezdjük. - Mielőtt folytatnánk van pár dolog, amit meg kell említenünk, ezek remélhetőleg - jobbá, hasznosabbá és szórakoztatóbbá teszik a -\emph on -Tankönyv -\emph default --et. -\end_layout - -\begin_layout Standard -Mivel nem árasszuk el temérdek információval, a -\emph on -legfontosabb -\emph default - dolog, hogy megtalálja a többi súgó fájlt. - Szerencsére mindez nagyon egyszerű. - Indítsa el a LyX-et, majd válassza a -\emph on -Felhasználói kézikönyv -\emph default --et a -\family sans -\bar under -S -\bar default -egítség -\family default - menüből. - Valószínűleg meg fogja nyitni a -\emph on -Tankönyv -\emph default --et is (amennyiben nem a képernyőről olvasná). - Így bármikor, bármelyikbe bele tud nézni a dokumentumának készítése közben -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ezek jó példaként is szolgálnak, hogyan használja ki a LyX lehetőségeit. -\end_layout - -\end_inset - -. - Miután több dokumentumot is megnyitott, a -\family sans -Né -\bar under -z -\bar default -et -\family default - menüpontban vagy a dokumentum füleken választhatja ki, hogy éppen melyik - legyen az aktuális. - A -\emph on -Tankönyv -\emph default - nem részletez olyan dolgokat, amelyeket megtalál más LyX kézikönyvekben. - Ez kezdetben megnehezíti a dolgát, de a -\emph on -Tankönyv -\emph default - csak így lehet rövid, másrészt pedig rutint szerezhet ezen kézikönyvek - használatában, amivel később sok időt takaríthat meg. -\end_layout - -\begin_layout Standard -Ez a tankönyv feltételezi, hogy önnek a következő alkalmazások tökéletesen - működőképesek: LyX, LaTeX, -\family typewriter -xdvi -\family default - vagy egyéb dvi megjelenítő, -\family typewriter -dvips -\family default - vagy egyéb program, ami -\family typewriter -dvi -\family default --ből PostScript -\begin_inset ERT -status collapsed - -\begin_layout Plain Layout - - -\backslash -textregistered -\end_layout - -\end_inset - --et készít, valamint egy működő nyomtató. - Ez elég sok feltételezés, de ha önnek ezek közül valamelyik is hiányzik - vagy nem működik, akkor önnek (vagy egy barátságos rendszergazdának) be - kell a felsoroltakat állítania. - Ezek telepítéséről és beállításáról más a kézikönyvekben lesz szó. - -\end_layout - -\begin_layout Standard -Végül megtalálja az -\family typewriter -example-raw.lyx -\family default - nevű fájlt, amit azért készítettünk, hogy gyakorolhassa a LyX használatát. - Ezt a fájlt egy a LyX-hez egyáltalán nem értő személy gépelte be. - Ahogy megismer egy-egy új LyX funkciót, javasoljuk javítsa ki a -\family typewriter -example-raw.lyx -\family default - fájl idevágó részeit. - Ez a fájl sok-sok megjegyzést is tartalmaz, amelyek az aktuális részek - kijavításához adnak némi tanácsot -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ezek egy sárga -\begin_inset Quotes pld -\end_inset - -megjegyzés -\begin_inset Quotes prd -\end_inset - - feliratú betétben találhatóak. - Az elolvasásukhoz csak rájuk kell kattintani. -\end_layout - -\end_inset - -. - Ha puskázni szeretne (vagy csak le szeretné ellenőrizni, amit csinált), - talál egy -\family typewriter -example_lyxified.lyx -\family default - nevű fájlt is, ami ugyanazt a szöveget tartalmazza, de azt egy a LyX-hez - profi szinten értő személy készítette. -\end_layout - -\begin_layout Standard -A példa fájlok az -\family typewriter -examples/ -\family default - könyvtárban találhatóak, amit a -\family sans -\bar under -F -\bar default -ájl\SpecialChar \menuseparator -Meg -\bar under -n -\bar default -yitás -\family default - menüből úgy érhet el, majd a -\family sans -\bar under -P -\bar default -éldák -\family default - feliratú gombra kattint. - Nyissa meg a nyers dokumentumot ( -\family typewriter -example-raw.lyx -\family default -), majd mentse el a -\family sans -\bar under -F -\bar default -ájl\SpecialChar \menuseparator -Men -\bar under -t -\bar default -és -\begin_inset space ~ -\end_inset - -másként\SpecialChar \ldots{} - -\family default - kiválasztásával a saját munkakönyvtárába, hogy dolgozhasson rajta. - Ahogy sorban javítgatja a fájlt, mindig nézze meg hogyan változik a nyomtatott - forma. - -\end_layout - -\begin_layout Standard -Egyébként az -\family typewriter -examples/ -\family default - könyvtár sok más példát is tartalmaz. - Amelyek különböző jópofa dolgokat mutatnak be. - Ezek főleg olyan dolgok, amelyek nem fértek bele (helyigényük miatt) a - dokumentációkba. - Miután elolvasta a -\emph on -Tankönyvet -\emph default - vagy összezavarodott hogyan kell megcsinálni bizonyos dolgokat, vessen - egy pillantást ezekre a példákra. -\end_layout - -\begin_layout Subsection -Gépelés, megnézés és nyomtatás -\end_layout - -\begin_layout Itemize -Nyisson meg egy fájlt a -\family sans -\bar under -F -\bar default -ájl\SpecialChar \menuseparator -Ú -\bar under -j -\family default -\bar default - menüponttal -\end_layout - -\begin_layout Itemize -Gépeljen be egy mondatot, például ezt: -\family typewriter -Ez az első LyX dokumentumom! -\end_layout - -\begin_layout Itemize -Mentse el a dokumentumot a -\family sans -\bar under -F -\bar default -ájl\SpecialChar \menuseparator -Men -\bar under -t -\bar default -és -\begin_inset space ~ -\end_inset - -másként\SpecialChar \ldots{} - -\family default - menüpont használatával -\end_layout - -\begin_layout Itemize -Futtassa a LaTeX-et a dvi fájl létrehozásához a -\family sans -Né -\bar under -z -\bar default -et\SpecialChar \menuseparator - -\bar under -D -\bar default -VI -\family default - menüpont választásával. - Mindenféle szöveget láthat abban a konzol ablakban ahonnan a -\family typewriter -lyx -\family default - parancsot futtatta. - Ezek a LaTeX üzenetei, amyelyeket most nyugodtan figyelmen kívül hagyhat. - Ezután a LyX el fogja indítani az -\family typewriter -xdvi -\family default - (vagy egy másik -\family typewriter -dvi -\family default - megjelenítő programot), ami egy új ablakban fog megjelenni és úgy látja - benne a művét, ahogy az a papíron is megjelenik -\begin_inset Foot -status open - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Időt spórolhat meg azzal, ha ezt az ablakot nyitva hagyja és később csak - a -\family sans -Né -\bar under -z -\bar default -et\SpecialChar \menuseparator -Fr -\bar under -i -\bar default -ssít\SpecialChar \menuseparator - -\bar under -D -\bar default -VI -\family default - menüpontra kattint, majd az -\family typewriter -xdvi -\family default - ablakára kattint miután a LaTeX lefutott. -\end_layout - -\end_inset - -. -\end_layout - -\begin_layout Itemize -Nyomtassa ki a fájlt a -\family sans -\bar under -F -\bar default -ájl\SpecialChar \menuseparator -Ny -\bar under -o -\bar default -mtatás\SpecialChar \ldots{} - -\family default - menüpont használatával. -\end_layout - -\begin_layout Standard -Gratulálunk! Ön elkészítette és kinyomtatta az első LyX dokumentumát. - Minden egyéb, amit a -\emph on -Tankönyv -\emph default - hátralévő részeben, a -\emph on -Felhasználói kézikönyv -\emph default --ben, valamint a -\emph on -Haladó szolgáltatások -\emph default --ban talál, csak apró részletek. -\end_layout - -\begin_layout Subsection -Alapműveletek -\end_layout - -\begin_layout Standard -A LyX természetesen képes azokra a dolgokra is, amiket megszokhatott akármelyik - szövegszerkesztőben. - Sortörést végez, automatikusan behúzza a bekezdéseket, stb. - Íme egy gyors leírás néhány alapvető dologról. -\end_layout - -\begin_layout Description -Visszavonás A LyX-ben az összes elvégzett művelet visszavonható egészen - a fájl megnyitásáig visszamenőleg, ami azt jelenti, hogy minden amit csinált, - azt vissza tudja vonni a -\family sans -Sz -\bar under -e -\bar default -rkesztés \SpecialChar \menuseparator - Visszavo -\bar under -n -\bar default -ás -\family default - menüpont ismételt kiválasztásával. - Ha túl sokat vont volna vissza, akkor a -\family sans -Sz -\bar under -e -\bar default -rkesztés \SpecialChar \menuseparator - -\family default - -\family sans -\bar under -M -\bar default -égis -\begin_inset space ~ -\end_inset - -alkalmaz -\family default - menüpontot kell használnia. -\end_layout - -\begin_deeper -\begin_layout Standard -Pillanatnyilag ez le van korlátozva 100 műveletig. - Valamint nem lehet -\emph on -mindent -\emph default - visszavonni, például a dokumentum formátumának változásait. - Ezek mind a LyX hibái. -\end_layout - -\end_deeper -\begin_layout Description -Kivágás/Beillesztés/Másolás Használja a -\family sans -Sz -\bar under -e -\bar default -rkesztés \SpecialChar \menuseparator - -\family default - -\family sans -Kivágás -\family default -, -\family sans -Sz -\bar under -e -\bar default -rkesztés \SpecialChar \menuseparator - Beillesztés -\family default - és a -\family sans -Sz -\bar under -e -\bar default -rkesztés\SpecialChar \menuseparator -Másolás -\family default - menüpontokat ezekhez a műveletekhez vagy automatikusan illessze be a kiválaszto -tt szöveget (más programokat is beleértve) a -\emph on -középső egérgomb -\emph default - használatával. -\end_layout - -\begin_layout Description -Keresés -\begin_inset space ~ -\end_inset - -és -\begin_inset space ~ -\end_inset - -Csere Használja a -\family sans -Sz -\bar under -e -\bar default -rkesztés\SpecialChar \menuseparator -Keresés -\begin_inset space ~ -\end_inset - -és -\begin_inset space ~ -\end_inset - - -\bar under -c -\bar default -sere -\family default - menüpontokat a dokumentumban való kereséshez. - A dialógusablakban használhatja a -\family sans -\bar under -K -\bar default -övetkező\SpecialChar \ldots{} - -\family default - gombot a kereséséhez, valamint a keresett szöveg kicseréléshez a -\family sans -Cse -\bar under -r -\bar default -él -\family default - gombot -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Becsukhatja a dialógusablakot amint befejezte a keresést, de nyitva is hagyhatja - ha az kényelmesebb. - A legtöbb dialógusablak – beleértve a -\family sans -Keresés -\begin_inset space ~ -\end_inset - -és -\begin_inset space ~ -\end_inset - -csere -\family default -, -\family sans -Tartalomjegyzék -\family default -, -\family sans -Formátum -\family default - ablakokat, valamint néhány képletszerkesztő ablakot is ideértve, képes - így működni. - Néhány dialógusablak mint például a -\family sans -\bar under -F -\bar default -ájl\SpecialChar \menuseparator -Meg -\bar under -n -\bar default -yitás\SpecialChar \ldots{} - -\family default - nem engedi, hogy bármit is írjon a dokumentumba amíg be nem csukja azt. - Bizonyosodjon meg minden esetben, milyen az éppen használt dialógusablak - fókusza vagy hajtson végre egy parancsot egy másik dialógusablakban. -\end_layout - -\end_inset - -. - A keresés lehet kis- és nagybetű érzékeny, beállíthatja csak egész szavak - keresését, valamint kereshet a dokumentumban visszafelé is. -\end_layout - -\begin_layout Description -Betűformátum -\emph on -Kiemelhet -\emph default - szöveget (ami általában dőlt szöveget eredményez), -\series bold -félkövérre -\series default - állíthatja azt vagy éppen -\noun on -Kiskapitális -\noun default --ra (rendszerint személyek neveihez használjuk) módosíthatja a váltóbillentyűkke -l a -\family sans -Sz -\bar under -e -\bar default -rkesztés\SpecialChar \menuseparator - -\bar under -S -\bar default -zöveg -\begin_inset space ~ -\end_inset - -stílus\SpecialChar \ldots{} - -\family default - dialógusablakban. -\end_layout - -\begin_layout Description -Eszköztár Van egy eszközár (a menüsor alatt) amely a sűrűn használt parancsokat - tartalmazza, mint pl. - a -\family sans -Beillesztés -\family default - vagy -\family sans -Nyomtatás -\family default -. -\end_layout - -\begin_layout Standard -Természetesen még nem írt eleget ahhoz, hogy ezeket a funkciókat hasznosnak - találja. - Írás közben gyakorolja a használatukat, próbálja ki a visszavonást, beillesztés -t, stb. -\end_layout - -\begin_layout Subsection -WYSIWYM: Szóközök a LyX-ben -\end_layout - -\begin_layout Standard -Az egyik legnehezebb dolog kezdő LyX felhasználóknak, a szóközök és kihagyások - használatának elsajátítása. - Akárhányszor leütheti a -\family sans -Return -\family default - billentyűt, csak egyetlen üres sort tud létrehozni. - Ugyanígy, akárhányszor is üti le a -\family sans -Szóköz -\family default - billentyűt, csak egyetlen szóközt tud begépelni. - Egy új sort pedig egyáltalán nem tud szóközzel kezdeni. - A -\family sans -Tab -\family default - billentyű nem fogja odébb vinni a kurzort egy tabulátor pozícióval, sőt - egyáltalán -\emph on -nincsenek -\emph default - tabulátor pozíciók. - Sőt, nincs vonalzó sem a lap tetején, amin be tudná állítani a margókat - vagy a tabulátorokat. -\end_layout - -\begin_layout Standard -A legtöbb kereskedelmi szövegszerkesztő program a WYSIWYG filozófiára épül, - ami annyit tesz mint: -\begin_inset Quotes pld -\end_inset - -What You See Is What You Get -\begin_inset Quotes prd -\end_inset - - -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ford. - megj.: ALAKHŰ - -\begin_inset Quotes pld -\end_inset - -Amit Lát Azt Kapja HŰen -\begin_inset Quotes prd -\end_inset - - -\end_layout - -\end_inset - -, ellenben a LyX filozófiája: -\begin_inset Quotes pld -\end_inset - -What You See Is What You -\emph on -Mean -\emph default - -\begin_inset Quotes prd -\end_inset - - -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ford. - megj.: -\begin_inset Quotes pld -\end_inset - -Amit Lát Arra Gondol -\begin_inset Quotes prd -\end_inset - - -\end_layout - -\end_inset - -. - Ön begépeli a szöveget annak logikai felépítésében, majd a LyX elvégzi - a szöveg szedését ön helyett úgy, hogy a nyomtatott forma jól nézzen ki. - A -\family sans -Return -\family default - billentyű a bekezdéseket, a -\family sans -Szóköz -\family default - pedig a szavakat választja el egymástól, így ezekből nem állhat több egymás - mellett. - A -\family sans -Tab -\family default - billentyűnek nyelvtani jelentése nincs emiatt a LyX nem támogatja azt. - A LyX-et használva ön több időt fog a dokumentumának -\emph on -tartalmára -\emph default - fordítani, mint a -\emph on -kinézetére -\emph default -. - Olvassa el a -\emph on -Bevezetés -\emph default --t újra, ha már nem emlékszik mi is az a WYSIWYM. - -\end_layout - -\begin_layout Standard -A LyX-ben számos lehetősége nyílik a szövegtördelés finomhangolására, mivel - lehet hogy a LyX nem pont úgy szed, ahogy azt ön -\emph on -akarja -\emph default -. - Erről bővebben a -\emph on -Felhasználói kézikönyv -\emph default --ben olvashat. - Olvashat ott a vízszintes és függőleges kitöltésről, amelyek sokkal hasznosabba -k és rugalmasabbak, mint a szóköz vagy üres sorok használata. - Egyebek között megtalálja a betűméretek, betűstílusok, bekezdések, manuális - igazítások használatára vonatkozó leírásokat is. - Az alapötlet az, hogy a tartalomra koncentrálva készíti el a dokumentumát, - majd miután elkészült végzi el a finomhangolást. - Egy hagyományos szövegszerkesztőben viszont önnek egyszerre kell a dokumentumát - írnia és formáznia. -\end_layout - -\begin_layout Section -Környezetek -\end_layout - -\begin_layout Standard -A dokumentum különböző részeinek különböző céljai vannak; ezeket -\emph on -környezeteknek -\emph default - nevezzük. - A dokumentum legnagyobb része normál szöveg. - Szakasz (fejezet, alszakasz, stb.) címek tudatják az olvasóval, hogy egy - új téma vagy altéma tárgyalása következik. - Bizonyos dokumentum típusoknak különleges környezetei vannak. - Egy folyóirat cikknek van egy kivonata és egy címe, egy levélnél ezek nincsenek -, ellenben valószinűleg van neki egy olyan környezete, ahová az író címét - írhatjuk. -\end_layout - -\begin_layout Standard -A környezetek, a -\begin_inset Quotes pld -\end_inset - -What You See Is What You Mean -\begin_inset Quotes prd -\end_inset - - filozófia és a LyX szerves részei. - Egy adott környezet bizonyos betűtípust, betűméretet, behúzást, sortávolságot - és még sok mindent jelenthet. - Ez a probléma fokozódik, mivel a végleges formázás egy adott környezetnél - változhat: egy folyóiratnál a szakaszcímekhez félkövér 18 pont magas középre - igazított betűk szükségesek, amíg a másiknál: balraigazított dőlt, 15 pont - magas. - Különböző nyelveknél a behúzás szabályai is mások lehetnek, az irodalomjegyzék - formátuma is nagyon eltérő lehet. - A LyX segítségével elkerülheti ezen formázási szabályok megtanulását. - -\end_layout - -\begin_layout Standard -A -\family sans -Környezetek -\family default - legördülőlistát az eszköztár bal szélén találjuk (rögtön a -\family sans -\bar under -F -\bar default -ájl -\family default - menü alatt). - Megmutatja milyen környezetben dolgozik jelenleg. - Mialatt az első dokumentumát készítette, azt mutatta: -\begin_inset Quotes pld -\end_inset - -Normál szöveg -\begin_inset Quotes prd -\end_inset - -, ami az alapértelmezett szövegkörnyezet. - Most sok környezetet fogja beépíteni új dokumentumába, ezáltal megismeri - működésük módját. - Mindezt, a -\family sans -Környezetek -\family default - menüvel fogja megcsinálni, amit a -\begin_inset Quotes pld -\end_inset - -le nyíl -\begin_inset Quotes prd -\end_inset - --ra kattintással tud kinyitni, a -\family sans -Környezetek -\family default - menü jobb oldalán. -\end_layout - -\begin_layout Subsection -Szakaszok és alszakaszok -\end_layout - -\begin_layout Standard -Írja be a -\family typewriter -Bevezetés -\family default - szót LyX dokumentumának első sorába és válassza ki a -\family sans -Szakasz -\family default --t a -\family sans -Környezetek -\family default - menüből -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Nem kell -\emph on -kijelölnie -\emph default - a sort. - Amennyiben nincs semmi sem kijelölve, a LyX az aktuális bekezdést módosítja - a kiválasztott környezetre. - Több bekezdés környezetét is módosíthatjuk, ha kijelöljük őket a környezetválas -ztás előtt. -\end_layout - -\end_inset - -. - Bizonyosodjon meg abban, hogy a -\family sans -Szakaszt -\family default - használája és -\emph on -nem -\emph default - a -\family sans -Szakasz* -\family default --ot, amit hamarosan bemutatunk. - A LyX beszámozza a szakaszt -\begin_inset Quotes pld -\end_inset - -1. -\begin_inset Quotes prd -\end_inset - --nek, valamint a szakaszcímet nagyobb betűkészlettel fogja megjeleníteni. - Most üsse le a -\family sans -Return -\family default --t. - Figyelje meg, hogy a -\family sans -Környezet -\family default - menü a -\begin_inset Quotes pld -\end_inset - -Szakasz -\begin_inset Quotes prd -\end_inset - --ról visszavált -\begin_inset Quotes pld -\end_inset - -Normál szöveg -\begin_inset Quotes prd -\end_inset - --re. - A szakaszcímek, ahogy a legtöbb egyéb környezet is, a -\family sans -Return -\family default - következő leütéséig tartanak. - Most pedig írja be a bevezetés szövegét: -\end_layout - -\begin_layout LyX-Code - -\family typewriter -Ez a bevezetés az első LyX dokumentumomhoz. -\end_layout - -\begin_layout Standard -Üsse le megint a -\family sans -Return -\family default --t és válassza ki a -\family sans -Szakasz -\family default --t a -\family sans -Környezetek -\family default - menüből. - A LyX kiírja, hogy -\begin_inset Quotes pld -\end_inset - -2. -\begin_inset Quotes prd -\end_inset - - és várja, hogy megadja a szakasz címét. - Írja be -\family typewriter -További dolgok -\family default - és azt fogja látni, hogy a szöveg egy címként fog megjelenni. -\end_layout - -\begin_layout Standard -Ez egyre jobb. - Menjen az első szakasz végére (közvetlenül az -\begin_inset Quotes pld -\end_inset - -első LyX dokumentumom -\begin_inset Quotes prd -\end_inset - - után) és üsse le újra a -\family sans -Return -\family default --t, valamint válassza ki újra a -\family sans -Szakasz -\family default --t a -\family sans -környezetek -\family default - közül. - A LyX kiírja hogy -\begin_inset Quotes pld -\end_inset - -2. -\begin_inset Quotes prd -\end_inset - - és várja, hogy megadja a szakasz címét. - Írja be -\family typewriter -Erről a dokumentumról -\family default -. - A -\begin_inset Quotes pld -\end_inset - -További dolgok -\begin_inset Quotes prd -\end_inset - - szakasz, ami az előbb még a 2. -\begin_inset space ~ -\end_inset - -szakasz volt, automatikusan átszámozódott 3. -\begin_inset space ~ -\end_inset - -szakasszá! A valódi WYSIWYM filozófiában, önnek csak be kell azonosítania - a szakaszícmeket alkotó szöveget, a LyX fog gondoskodni a szakaszok számozásáró -l és a szakaszcímek szedéséről. -\end_layout - -\begin_layout Standard -Üsse le a -\family sans -Return -\family default --t a -\family sans -Normál -\begin_inset space ~ -\end_inset - -szöveg -\family default --hez való visszatéréshez és írja be a következő öt sort: -\end_layout - -\begin_layout LyX-Code - -\family typewriter -Szakaszok és alszakaszok leírása lentebb. -\end_layout - -\begin_layout LyX-Code - -\family typewriter -Szakasz leírás -\end_layout - -\begin_layout LyX-Code - -\family typewriter -Szakaszok nagyobbak, mint az alszakaszok. -\end_layout - -\begin_layout LyX-Code - -\family typewriter -Alszakasz leírás -\end_layout - -\begin_layout LyX-Code - -\family typewriter -Az alszakaszok kisebbek, mint a szakaszok. -\end_layout - -\begin_layout Standard -Kattintson a második sorra és válassza az -\family sans -Alszakasz -\family default --t a -\family sans -Környezetek -\family default - menüből. - A LyX beszámozza azt -\begin_inset Quotes pld -\end_inset - -2.1 -\begin_inset Quotes prd -\end_inset - --re, ekkor a LyX olyan betűkészletűre módosítja a sort, amit nagyobb, mint - a normál szöveg, de kisebb mint a szakaszcím. - Váloztassa át a negyedik sort is -\family sans -Alszakasz -\family default --ra. - Ahogy várta, a LyX automatikusan beszámozta azt -\begin_inset Quotes pld -\end_inset - -2.2 -\begin_inset Quotes prd -\end_inset - --re. - Ha beszúr egy másik szakaszt a 2. -\begin_inset space ~ -\end_inset - -szakasz elé, akkor az átszámozódik 3. -\begin_inset space ~ -\end_inset - -szakasszá és az alszakaszok átszámozódnak -\begin_inset Quotes pld -\end_inset - -3.1 -\begin_inset Quotes prd -\end_inset - - és -\begin_inset Quotes pld -\end_inset - -3.2 -\begin_inset Quotes prd -\end_inset - --re. - -\end_layout - -\begin_layout Standard -A szakaszra bontás további szintjei tartlmazzák az -\family sans -Alalszakasz -\family default --t, a -\family sans -Bekezdés -\family default --t és az -\family sans -Albekezdés -\family default --t. - Mindjárt játszhat velük egy keveset. - Észreveheti, hogy a bekezdés és az albekezdés címek nem számozódnak alapból, - és az albekezdések be vannak húzva. - A -\emph on -Felhasználói kézikönyv -\emph default -ben megtalálja, hogyan változtasson ezen. - A -\family sans -Fejezet -\family default - cím, a szakaszra tördelés legmagasabb szintje a -\family sans -Szakasz -\family default - után, de csak bizonyos típusú (szöveg osztályú) LyX dokumentumoknál használható - (Lásd -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:textclasses" - -\end_inset - -. -\begin_inset space ~ -\end_inset - -szakasz). -\end_layout - -\begin_layout Standard -Végül szókságe lehet olyan szakaszokra vagy alszakaszokra amelyek nincsenek - számozva. - Erre a célra is vannak környezetek. - Ha megváltoztatja az egyik szakasz címének környezetét -\family sans -Szakasz* -\family default --ra (lehet hogy görgetnie kell a -\family sans -Környezetek -\family default - menüt hogy megtalálja), a LyX azonos betűméretet fog használni, de nem - fogja megszámozni azt. - Következetesen vannak -\begin_inset Quotes pld -\end_inset - -csillagos -\begin_inset Quotes prd -\end_inset - - környezetek az -\family sans -Alaszakasz -\family default --okhoz és az -\family sans -Alalszakasz -\family default --okhoz is. - Próbálja megváltoztatni a szakaszait a csillagos környezetre és figyelje - meg hogyan változik a számozás. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: javítsa ki a szakasz és alszakasz címeket a -\family typewriter -example_raw.lyx -\family default - fájban. - -\end_layout - -\begin_layout Subsection -Felsorolások és részlisták -\end_layout - -\begin_layout Standard -A LyX több különböző környezettel rendelkezik felsorolások szedéséhez. - Ezek a különböző környezetek mentesek a -\family sans -Tab -\family default - számtalan leütésétől. - Miközben a vázlatot készíti vagy amikor átszámozza a felsorolást, mert - valahova középre beszúrt egy új elemet. - A szerkesztés közben a felsorolás tartalmára koncentrálhat -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Igen, azt hiszem eléggi kihangsúlyoztuk ezt a -\emph on -Bevezetés -\emph default -ben. - De ez a -\emph on -fő -\emph default -filozófiája a LyX-nek, ezért kérjük bocsásson meg nekünk. -\end_layout - -\end_inset - -. - Különböző dokumentumtípusok különböző felsorolás-típusokat igényelnek: -\end_layout - -\begin_layout Itemize -Egy prezentáció használhatja a -\family sans -Felsorolás -\family default - környezetet jelölt listaként, különböző dolgok leírásához. -\end_layout - -\begin_layout Itemize -Egy vázlathoz inkább a -\family sans -Számozott felsorolás -\family default - környezetet használjuk (valamint betűkkel jelölt allistákat). -\end_layout - -\begin_layout Itemize -Néhány szofver csomagot bemutató dokumentum a -\family sans -Leírás -\family default - környezetet használhatja. - Ahol a lista minden eleme félkövérrel szedetten jelenik meg. -\end_layout - -\begin_layout Itemize -A -\family sans -Lista -\family default - környezet – nincs a LaTeX-ben – egy kicsit különbözik a -\family sans -Leírás -\family default -tól. -\end_layout - -\begin_layout Standard -Készítsünk egy listát arról, hogy a LyX miért jobb, mint a többi szövegszerkeszt -ő. - A dokumentumában valahol írja be: -\end_layout - -\begin_layout Standard - -\family typewriter -A LyX jobb, mint a többi szövegszerkesztő, mert: -\end_layout - -\begin_layout Standard -és üsse le a -\family sans -Return -\family default --t. - Most válassza a -\family sans -Felsorolás -\family default -t a -\family sans -Környezet -\family default -ek menüből. - A LyX a sor elejére tesz egy -\begin_inset Quotes pld -\end_inset - -jelölőt -\begin_inset Quotes prd -\end_inset - - (ami most egy csillag, de a kimenetben egy kerek körré lesz átalakítva). - Írja be az okokat: -\end_layout - -\begin_layout Standard - -\family typewriter -A szövegszedést elvégzi helyettünk -\end_layout - -\begin_layout Standard - -\family typewriter -A képletszerkesztő ALAKHŰ -\end_layout - -\begin_layout Standard - -\family typewriter -Könnyű felsorolásokat készíteni -\end_layout - -\begin_layout Standard -A felsorolások, nem úgy mint a címek, nem érnek véget amit leüti a -\family sans -Return -\family default - billentyűt. - Helyette, a LyX úgy gondolja, hogy a következő elemet fogja begépelni. - Ezért a fenti eredménye, egy három soros felsorolás. - Amennyiben, több mint egy bekezdést szeretne egy -\emph on -elemen -\emph default - belül, használhatja a -\family sans -Védett -\begin_inset space ~ -\end_inset - -Sortörés -\family default --t, amit a -\family sans -C-Return -\family default - leütésével érhet el. - Ahhoz, hogy a felsorolásból kikerüljön ki kell választania a -\family sans -Normál -\begin_inset space ~ -\end_inset - -szöveg -\family default - környezetet (vagy használja a -\family sans -M-p -\begin_inset space ~ -\end_inset - -s -\family default - billentyűkombinációt). -\end_layout - -\begin_layout Standard -Kapott egy gyönyörű felsorolást. - Lehet hogy futtatni akarja a LaTeX-et hogy meggyőződjöm arról, hogyan néz - ki mindez nyomtatásban. - De mi lenne, ha meg szeretné számozni az okokat? Nos, csak jelölje ki a - teljes felsorolást -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Az első felsorolás jelét nem tudja kijelölni, kivéve ha kijelöli az -\emph on -előző -\emph default - bekezdést is, amit valószinűleg nem akar. - Hasonlóan, nem tudja kiválasztani az első szakaszcím számát sem. - De nem aggódjon emiatt! -\end_layout - -\end_inset - - és válassza a -\family sans -Számozott -\begin_inset space ~ -\end_inset - -felsorolás -\family default --t a -\family sans -Környezet -\family default -ek menüből. - Hoppá! Ahogy korábban említettük, amint hozzáad vagy töröl egy elemet a - LyX azonnal korrigálni fogja a számozást. -\end_layout - -\begin_layout Standard -Amíg a felsorolás ki van jelölve, átválthat a másik két felsorolás környezetre - is, ahhoz hogy megtudja hogyan néznek ki: -\family sans -Leírás -\family default - és -\family sans -Lista -\family default -. - Ebben a két környezetben, minden listaelem két részből áll: egy kifejezés, - ez az első szó, és annak definíciója, a bekezdés többi része (a -\family sans -Return -\family default - leütéséig). - A kifejezés szedhető felkövérre ( -\family sans -Leírás -\family default -) vagy csak el van választva egy -\begin_inset Quotes pld -\end_inset - -Tabulátor -\begin_inset Quotes prd -\end_inset - --ral -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -De ez a tabulátor a leghosszabb kifejezés hosszúságára lesz méretezve, nem - pedig a patetikus, merev, változtathatatlan írógép -\family sans -Tabulátor -\family default --ra -\end_layout - -\end_inset - - (Lista) többi részétől. - Ha több mint egy szót szeretne a kifejezésben, a szavakat a -\family sans -Védett -\begin_inset space ~ -\end_inset - -szóköz -\family default -zel válassza el . -\end_layout - -\begin_layout Standard - -\series bold -Feladat: -\series default - alakítsa át a listát az -\family typewriter -example_raw.lyx -\family default - fájlban. -\end_layout - -\begin_layout Standard -Egymásba is tud ágyazni különböző felsorolásokat, sokféle variációban. - A nyilvánvaló példa erre vázlatok készítése. - A számozott listáknak és felsorolásoknak különböző jelölésrendszere lehet - az allistákhoz. - Lásd a -\emph on -Felhasználói készikönyv -\emph default -et a különböző felsorolások részleteiért, és az egymásba ágyazás példái - miatt is. -\end_layout - -\begin_layout Subsection -Egyéb környezetek: Vers, Idézetek és a többi -\end_layout - -\begin_layout Standard -Két környezet is a rendelkezésre áll, hogy az idézeteket elkülönítsük a - környező szövegtől. - -\family sans -Idézet -\family default - a rövid idézetekhez és -\family sans -Idézet -\begin_inset space ~ -\end_inset - -(hosszú) -\family default - a hosszabbakhoz. - Programlistákhoz (a -\family sans -LyX-kód -\family default - környezetet használtuk a -\emph on -Bevezetés -\emph default -ben, a hosszabb gépelési példákban) -\family typewriter -írógép -\family default - betűkészlettel íródtak; ez az egyetlen környezet a LyX-ben, ahol egymás - mellé le lehet ütni több szóközt is, amivel úgye pozícionálni lehet. - De készíthet költeményt is a -\family sans -Vers -\family default - stílussal, a -\family sans -Return -\family default --t használva a versszakok elválasztásához és a -\family sans -C-Return -\family default --t használva a verszakon belüli sorok elkülönítéséhez. - Lásd a -\emph on -Felhasználói kézikönyv -\emph default -et az elérhető környezetek kimerítő részletezéséhez. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: Javítsa a -\family sans -Idézet -\family default -, -\family sans -LyX-kód -\family default - és -\family sans -Vers -\family default - részeket a -\family typewriter -example_raw.lyx -\family default - fájlban. -\end_layout - -\begin_layout Chapter -Dokumentumok készítése -\end_layout - -\begin_layout Standard -Az előző fejezet segítségével remélhetőleg már el tud kezdeni írni a LyX-el. - Bemutattuk a LyX elemi szerkesztési műveleteit, csak úgy, mint a környezetek - használatának hatékonyságát. - Habár a legtöbb ember, aki a LyX-et használja, a következő típusokat dokumentum - szeretné elkészíteni: publikációk, cikkek, könyvek, kézikönyvek vagy levelek. - Ebben a fejezetben az olvasó a szavak beírásától eljut egy teljes dokumentum - elkészítéséig. - Be fogjuk mutatni a szövegosztályokat, amelyek segítségével különböző típusú - dokumentumokat készíthetünk. - Ezentúl, megmutatunk további sok apróságot, amelyek a szöveget dokumentummá - teszik, mint pl. - címek, lábjegyzetek, kereszt-referenciák, irodalomjegyzék, valamint tartalomjeg -yzék. -\end_layout - -\begin_layout Section -Szövegosztályok -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:textclasses" - -\end_inset - - -\end_layout - -\begin_layout Standard -A különböző típusú dokumentumokat különbözőképpen kell elkészíteni. - Például, a könyveket rendszerint kétoldalasan nyomtatjuk, amíg a cikkeket - egyoldalasan. - Továbbá, sokféle dokumentum tartalmaz különleges környezeteket, pl. - levelek tartalmazzák a küldő címét és aláírását, amit persze nem használunk - egy könyv esetében. - A LyX -\emph on -szövegosztály -\emph default - -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -LaTeX felhasználóknak: ez megegyezik a LaTeX dokumentum osztállyal -\end_layout - -\end_inset - - tartja kézben, a sok dokumentumtípus miatt meglévő különbséget. - Ezt a -\emph on -Kézikönyv -\emph default -et, a -\family sans -Book -\family default - szövegosztállyal készítettük. - A szövegosztályok, a WYSIWYM filozófia szerves részei. - Ezek közlik a LyX-el, hogyan kell szednie a dokumentumot, amit önnek nem - kell észben tartania. -\end_layout - -\begin_layout Standard -Az ön dokumentuma valószínűleg az -\family sans -Article -\family default - -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ford. - megj.: Ez megfelel az -\begin_inset Quotes pld -\end_inset - -Újságcikk -\begin_inset Quotes prd -\end_inset - - szövegosztálynak. -\end_layout - -\end_inset - - szövegosztályban -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Rendszerint ez, az alapértelmezett szövegosztály -\end_layout - -\end_inset - - fog elkészülni. - Próbáljon meg átváltani egy másik osztályra (a -\family sans -\bar under -D -\bar default -okumentum\SpecialChar \menuseparator - -\bar under -B -\bar default -eállítások -\family default -\SpecialChar \ldots{} - dialógusban), a különböző szedés megismeréséhez. - Amennnyiben módosítja a dokumentumának a szövegosztályát -\family sans -Book -\family default --ra -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ford. - megj.: jelentése -\begin_inset Quotes pld -\end_inset - -Könyv -\begin_inset Quotes prd -\end_inset - - -\end_layout - -\end_inset - -, és megnézi a -\family sans -Környezet -\family default - menüt. - Azt fogja látni, hogy a használható környezetek többnyire azonosak. - Habár, mostmár használhatja a -\family sans -Fejezet -\family default - környezetet is. - Amennyiben bizonytalan, hogy melyik szövegosztályban, milyen környezeteket - használhat, ellenőrizze azt a -\family sans -Környezet -\family default - menüben. -\end_layout - -\begin_layout Standard -Betűméretek, egy- vagy kéthasábos nyomtatás vagy oldalcímek, csak néhány - apróság amiben az egyes folyóiratok szedési módja különbözik. - Ahogy a számítógépek korába léptünk, a folyóiratok elkezdték a cikkeket - elektromos formában is elfogadni, LaTeX -\begin_inset Quotes pld -\end_inset - -stílus fájlokat -\begin_inset Quotes prd -\end_inset - - készítve, ezáltal a szerzők a megfelelő formában tudják elkészíteni a cikküket. - A LyX támogatja ezt a formát. - A LyX például támogatja az American Mathematics Society folyóirat szedését - (és extra környezeteit) az -\family sans -Article -\begin_inset space ~ -\end_inset - -(AMS) -\family default - szövegosztály segítségével. -\end_layout - -\begin_layout Standard -Íme egy gyors referencia néhány szövegosztályról. - Lásd a -\emph on -Speciális Dokumentum osztályok -\emph default - szakaszt a -\emph on -Haladó szolgáltatások -\emph default - kézikönyvben a további részletekért. -\end_layout - -\begin_layout Standard -\align center -\begin_inset Tabular - - - - - - -\begin_inset Text - -\begin_layout Plain Layout -Név -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -Megjegyzés -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -article -\begin_inset Foot -status open - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ford.megj.: Jelentése -\begin_inset Quotes pld -\end_inset - -Újságcikk -\begin_inset Quotes prd -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -egyoldalas, nincsenek fejezetek -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -article (AMS) -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -elrendezés és környezetek az American Math Society folyóirathoz -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -report -\begin_inset Foot -status open - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ford.megj.: Jelentése -\begin_inset Quotes pld -\end_inset - -Jelentés -\begin_inset Quotes prd -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -kétoldalas, hosszabb mint az article -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -book -\begin_inset Foot -status open - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ford.megj.: Jelentése -\begin_inset Quotes pld -\end_inset - -Könyv -\begin_inset Quotes prd -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -report + elő- és utószó -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -slides -\begin_inset Foot -status open - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ford.megj.: Jelentése -\begin_inset Quotes pld -\end_inset - -Prezentáció -\begin_inset Quotes prd -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -írásvetítő fóliákhoz (tartalmazza a FoilTeX-et) -\end_layout - -\end_inset - - - - -\begin_inset Text - -\begin_layout Plain Layout -letter -\begin_inset Foot -status open - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ford.megj.: Jelentése -\begin_inset Quotes pld -\end_inset - -Levél -\begin_inset Quotes prd -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\begin_inset Text - -\begin_layout Plain Layout -sok extra környezet címhez, aláíráshoz\SpecialChar \ldots{} - -\end_layout - -\end_inset - - - - -\end_inset - - -\end_layout - -\begin_layout Section -Sablonok: levél írása -\end_layout - -\begin_layout Standard -Az egyik legnépszerűbb szövegosztály a -\family sans -Levél -\family default -. - El lehet kezdeni egy levél írását, azzal hogy létrehozunk egy új fájlt, - és kiválasztjuk a -\family sans -Levél -\family default - szövegosztályt a -\family sans -\bar under -D -\bar default -okumentum \SpecialChar \menuseparator - -\family default - -\family sans -\bar under -B -\bar default -eállítások -\family default - dialógus-ablakban. - Bár ez a legkézenfekvőbb módja a levélírásnak azért, igényel egy kis többlet - munkát. - Ahányszor csak írni szeretne egy üzleti levelet, mindig bele fogja írni - a saját címét valamint a címzettét, a levél törzsét, aláírás helyét, stb. - Ezért a LyX rendelkezik egy -\emph on -sablonnal -\emph default -, amely tartalmaz egy minta levelet, amelynek minden részét egyszerűen csak - felül kell írnia, ahányszor csak elkezd egy levelet. -\end_layout - -\begin_layout Standard -Válassza a -\family sans -\bar under -F -\bar default -ájl \SpecialChar \menuseparator - Új, sab -\bar under -l -\bar default -on alapján\SpecialChar \ldots{} - -\family default -menüpontot. - Válassza ki a -\family typewriter -letter.lyx -\family default --et a sablonként. - Mentse el és nyomtassa ki a fájlt ahhoz, hogy az egyes környezetek szedését - megértse. -\end_layout - -\begin_layout Standard -Amennyiben megfigyeli a -\family sans -Környezetek -\family default - menüt, találni fog különböző környezeteket, mint pl. - a -\family sans -Címem -\family default - környezet, ami nem létezik semmilyen más szövegosztályban sem. - A többi mint pl. - az -\family sans -Leírás -\family default - már ismerősek. - Ismerkedjem meg az egyek környezetekkel, és azzal hogyan működnek. - Fel fog figyelni arra, hogy pl az -\family sans -Aláírás -\family default - környezet tartalmazza pirossal a -\begin_inset Quotes pld -\end_inset - -Signature: -\begin_inset Quotes prd -\end_inset - - szót, az aláírás tényleges szövege előtt. - Ez a szó nem jelenik meg a nyomtatásban (ha megpróbálja kinyomtatni a levelet), - mindössze tudatja önnel hova kell írnia az aláírást. - Figyelje meg lényegtelen, hogy a fájlban hol helyezkedik el az -\family sans -Aláírás -\family default - sor. - Emlékezzen a LyX WYSIWYM egy program, bárhol elhelyezheti az -\family sans -Aláírás -\family default - környezetet, a LyX tudja mit hová kell raknia, az aláírásnak pontosan a - levél végére kell kerülnie! -\end_layout - -\begin_layout Standard -A sablon egy normális LyX fájl. - Ez azt jelenti, hogy beleírhatja a saját címét és aláírását és elmentheti - a fájlt sablonként. - Mostantól, bármikor használhatja az új sablonját levél írásához, használja - a sablon hogy idő takarítson meg. - Mi itt most nem adunk egy -\begin_inset Quotes pld -\end_inset - -feladatot -\begin_inset Quotes prd -\end_inset - -, csak írjon egy levelet valakinek -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Egy figyelmeztetés, arra az esetre ha sablonból dolgozik. - Amennyiben egy környezet minden szövegét kitörli – például a -\family sans -Címem -\family default - mező teljes tartalmát kitörli, hogy beleírja a sajátját – és a kurzort - elmozdítja szöveg beírása néllkül, a környezet eltünhet. - Ez azért van, mert egyes környezetek létének feltétele a tartalmuk. - A visszaállításhoz csak válassza ki a környezetet a -\family sans -Környezetek -\family default - menüből. -\end_layout - -\end_inset - -! -\end_layout - -\begin_layout Standard -A sablonokkal nagyon sok időt takaríthatunk meg, ezért javasoljuk hogy használja - őket amikor csak tudja. - Továbbá használatukkal könyebbé tehetjük a komplexebb szövegoszályok megismerés -ét. - Végül hasznos lehet annak, aki sok számítógépre állítja be a LyX-et olyanoknak, - akik nem nagyon értenek a számítógéphez. - Amikor ők először tanulják a LyX-et sokkal kevésbé fognak megrémülni, amennyibe -n pl. - a levélsablon már a cégüknek megfelelően be van állítva. -\end_layout - -\begin_layout Section -Dokumentum címek -\end_layout - -\begin_layout Standard -A LyX (mint a LaTeX) a címet – ami a dokumentum címét, a szerző nevét, a - dátumot és még a kivonatot is tartalmazza – a dokumentum egy különálló - részének tekinti. -\end_layout - -\begin_layout Standard -Térjen vissza a -\family typewriter -newfile.lyx -\family default - dokumentumhoz és bizonyosodjon meg arról, hogy az az -\family sans -Article -\family default - szövegosztályt használja -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Most már nem a levelet kell használnia. - Mivel a -\family sans -Levél -\family default - szövegosztály nem engedi meg a címek használatát. -\end_layout - -\end_inset - -. - Írja be a címet az első sorba és módosítas a környezetet -\family sans -Cím -\family default --re. - A következő sorba írja be a nevét és váltson a -\family sans -Szerző -\family default - környezetre. - A következő sorba írja be a dátumot, a -\family sans -Dátum -\family default - környezetet használatáva. - Írjon egy vagy két bekezdést, összegezve a dokumentum tartalmát a -\family sans -Kivonat -\family default - környezet használatával. - Most pedig nézze meg, hogyan néz ki mindez nyomtatásban. - Ha a dokumentum formátumát átváltja -\family sans -Book -\family default --ra, egy különálló címlapot fog kapni, mint ezen tankönyv első oldala. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: Javítsa ki a címet, a dátumot és a szerzőt a -\family typewriter -example_raw.lyx -\family default - dokumentumban. -\end_layout - -\begin_layout Section -Címkék és kereszt referenciák -\end_layout - -\begin_layout Standard -Felcímkézheti a dokumentumának egy szakaszát (vagy alszakaszát, ritkábban - valamely szövegrészét). - Amint ezt megteszi, a dokumentum bármely részében hivatkozhat rá a keresztrefer -enciák segítségével. - Hivatkozhat a szakasz számára, vagy arra, hogy melyik oldalon található. - Csak úgy mint a szakaszokról és a lábjegyzetekről, a LyX gondoskodik a - kereszthivatkozásokról is. - Automatikus címkék és keresztreferenciák a LyX (és persze a LaTeX) egyik - legnagyobb előnye a konvencionális szövegszerkesztőkkel szemben. -\end_layout - -\begin_layout Subsection* -Az első címkém -\end_layout - -\begin_layout Standard -Jelöljük meg a második szakaszunkat, amelynek címe -\begin_inset Quotes pld -\end_inset - -Erről a dokumentumról -\begin_inset Quotes prd -\end_inset - -. - Kattintson a szakaszcím sorának a végére és válassza ki a -\family sans -\bar under -B -\bar default -eszúrás \SpecialChar \menuseparator - Cí -\bar under -m -\bar default -ke -\family default -\SpecialChar \ldots{} -. - Egy dialógusablak jelenik meg a címke nevét kérve, egy cím-javaslattal. - Miután kattint az -\family sans -OK -\family default --ra, a címke egy betétben bekerül a szakasz címe mellé. -\end_layout - -\begin_layout Standard -Mellesleg, a szakaszban bárhova elhelyezheti a címkét, mivel a szakaszreferenciá -k mindig az utolsó szakaszra vagy alszakaszra fognak hivatkozni. - Mindig arra amelyik a címke előtti utolsó. - Az, hogy a szakaszcím sorába helyeztük a címkét (esetleg a következő bekezdés - első sorába) biztosítja azt, hogy az oldalhivatkozás, mindig a szakasz - kezdetére fog mutatni. -\end_layout - -\begin_layout Standard -Mivel gyakorlatilag semmit sem tett – a -\family typewriter -dvi -\family default - fájl ugyanúgy fog kinézni, mivel a címkék a nyomtatásban nem jelennek meg. - Most, hogy beszúrt egy címkét, erre a címkére a kereszthivatkozásokkal - tud hivatkozni. - Amit a következő részben ismertetünk. -\end_layout - -\begin_layout Subsection* -Az első kereszthivatkozásunk -\end_layout - -\begin_layout Standard -Helyezze a kurzort dokumentumában valahova a 2. - szakaszba majd, írja be: -\end_layout - -\begin_layout LyX-Code -Amennyiben szeretne többet megtudni erről a dokumentumról, -\end_layout - -\begin_layout LyX-Code -nézze meg a . - szakaszt, amit a . - oldalon talál meg. -\end_layout - -\begin_layout Standard -Most – helyezze a kurzort közvetlen a -\begin_inset Quotes pld -\end_inset - -. -\begin_inset space ~ -\end_inset - -szakasz -\begin_inset Quotes prd -\end_inset - - szó elé – válassza a -\family sans -\bar under -B -\bar default -eszúrás \SpecialChar \menuseparator - Ke -\bar under -r -\bar default -eszthivatkozás -\family default -\SpecialChar \ldots{} --t -\family sans -. - -\family default - A -\family sans -Kereszthivatkozás -\family default - dialógusablak fog megjelenni. - Mutatva azokat a hivatkozásokat amelyekre már hivatkozhat. - Jelenleg csak egyet lát: -\begin_inset Quotes pld -\end_inset - -sec:Erről-a-dokumentumról -\begin_inset Quotes prd -\end_inset - -. - Válassza ezt (lehet, hogy már alapból ki van választva), és kattintson - az -\family sans -Alkalmaz -\family default --on. - Ezután helyezze a kurzort a -\begin_inset Quotes pld -\end_inset - -. -\begin_inset space ~ -\end_inset - -oldalon -\begin_inset Quotes prd -\end_inset - - szó elé, majd változtassa meg a referencia típusát, hogy az, az oldal számát - mutassa és kattintson az -\family sans -Alkalmaz -\family default --on. - (Hogy pontos legyek, egy -\family sans -Védett -\begin_inset space ~ -\end_inset - -szóköz -\family default --t kell a szakasz és a hivatkozás közé elhelyeznie. - Ugyanez vonatkozik az oldalszámhivatkozásra is.) -\end_layout - -\begin_layout Standard -A hivatkozásokat, a LyX egy betétbe helyezi el oda ahol a kurzor áll. - A nyomtatott dokumentumban, ez a hivatkozás ki lesz cserélve a megfelelő - típusúra, legyen az oldalszám vagy a szakasz száma (attól függően, hogy - mit választott ki a -\family sans -Kereszthivatkozás -\family default - dialógusablakban). - Válassza a -\family sans -Né -\bar under -z -\bar default -et \SpecialChar \menuseparator - Fr -\bar under -i -\bar default -ssítés \SpecialChar \menuseparator - -\family default - -\family sans -\bar under -D -\bar default -VI -\family default - parancsot, ahhoz hogy megtekintse, hogyan néz ki a két hivatkozás az utolsó - oldalon, ahol hivatkozunk a -\begin_inset Quotes pld -\end_inset - -2. -\begin_inset space ~ -\end_inset - -szakaszra -\begin_inset Quotes prd -\end_inset - - és az -\begin_inset Quotes pld -\end_inset - -1. -\begin_inset space ~ -\end_inset - -oldalon -\begin_inset Quotes prd -\end_inset - - (vagy bármely oldalon, ahol is a 2. -\begin_inset space ~ -\end_inset - -szakasz található). -\end_layout - -\begin_layout Standard -A kényelem kedvéért, a kereszthivatkozások hiperhivatkozásként működnek - a dokumentum szerkesztése közben. - Rájuk kattintva a -\family sans -Kereszthivatkozás -\family default - dialógusablak jelenik meg, ahol a -\family sans -Címkére -\begin_inset space ~ -\end_inset - - -\bar under -u -\bar default -grás -\family default --ra kattintva, a kurzor a kiválasztott címkére urgik. - -\end_layout - -\begin_layout Subsection* -További játék a címkékkel -\end_layout - -\begin_layout Standard -Ahogy már említettük, a LyX kezeli a kereszthivatkozások számozását; mindjárt - le is tesztelheti ezt. - Írjon be egy új szakaszt a 2. -\begin_inset space ~ -\end_inset - -szakasz elé. - Futtasa újra a LaTeX-et ( -\family sans -Né -\bar under -z -\bar default -et\SpecialChar \menuseparator -Fr -\bar under -i -\bar default -ssítés\SpecialChar \menuseparator - -\bar under -D -\bar default -VI -\family default -) és – lám! – és a hivatkozás megváltozott -\begin_inset Quotes pld -\end_inset - -3 -\begin_inset Quotes prd -\end_inset - --ra! Módosítsa az -\begin_inset Quotes pld -\end_inset - -Erről a dokumentumról -\begin_inset Quotes prd -\end_inset - - cím típusát alszakaszra, ekkor nem a -\begin_inset Quotes pld -\end_inset - -3 -\begin_inset Quotes prd -\end_inset - - fog megjelenni, hanem -\begin_inset Quotes pld -\end_inset - -2.1 -\begin_inset Quotes prd -\end_inset - -. - Az oldalszám hivatkozása nem fog változni, hacsak nem írt be egy teljesen - új oldalnyi szöveget a szakasz elé. -\end_layout - -\begin_layout Standard -Amennyiben több tapasztalatot szeretne szerezni a kereszthivatkozásokkal, - próbáljon egy új címkét rakni oda, ahol az első kereszthivatkozása van - és hivatkozzon rá dokumentum egy másik részéből. - Ha sűrűn használja a kereszt-hivatkozásokat (pl. - egy újságcikket ír), kényelmes lehet, ha a -\family sans -Kereszthivatkozás -\family default - dialógusablakot nyitva hagyja. -\end_layout - -\begin_layout Standard -Amennyiben meg akar róla bizonyosodni, hogy az oldalszámozás helyes lesz - nagyméretű dokumentumok esetén is, -\family sans -másoljon ki -\family default - pár oldal szöveg a -\emph on -Felhasználói kézikönyv -\emph default -ből a vágólapra; majd -\family sans -illessze be -\family default - a lopott szöveget a dokumentumába -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Vigyázat, a fejezetcímek másolása hibát eredményezhet, mivel az article - dokumentum-osztályban a nincsenek fejezetek. - Ha ilyen hiba történne, egyszerűen törölje ki a fejezetcímet. - Amennyiben többet szeretne erről a témáról megtudni, kérem nézze meg a - -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:textclasses" - -\end_inset - - -\begin_inset space ~ -\end_inset - -szakaszt. -\end_layout - -\end_inset - -. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: Javítsa ki a hivatkozásokat a -\family typewriter -example_raw.lyx -\family default - dokumentumban. -\end_layout - -\begin_layout Section -Lábjegyzetek és széljegyzetek -\end_layout - -\begin_layout Standard -Az eszköztáron -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -A gombon pár sor fekete szöveg alatt 2 sor piros szöveg látható. -\end_layout - -\end_inset - - található -\family sans -Lábjegyzet -\begin_inset space ~ -\end_inset - -beszúrása -\family default - gomb segítségével vagy a -\family sans -\bar under -B -\bar default -eszúrás \SpecialChar \menuseparator - -\family default - -\family sans -Lá -\bar under -b -\bar default -jegyzet -\family default - parancscsal szúrhatunk be lábjegyzeteket. - Kattintson a dokumentumában valahol egy szó -\begin_inset Quotes pld -\end_inset - -LyX -\begin_inset Quotes prd -\end_inset - - szó mögé és kattintson a -\family sans -Lábjegyzet -\begin_inset space ~ -\end_inset - -beszúrása -\family default - gombra. - Egy lábjegyzet betét fog megjelenni, ahova be tudja írni a lábjegyzet szövegét. - LyX a kurzort a lábjegyzet elejére helyezi. - Gépelje be a következőt: -\end_layout - -\begin_layout LyX-Code -A LyX egy szövegszedő szövegszerkesztő. -\end_layout - -\begin_layout Standard -Most kattintson a szövegben, az imént létrehozott -\begin_inset Quotes pld -\end_inset - -lábjegyzet -\begin_inset Quotes prd -\end_inset - - nevű gombra. - A lábjegyzet kerete eltűnik, meghagyva a gombot, amely azon a helyen jelenik - meg, ahol a lábjegyzet jelölő a nyomtatott szövegben is meg fog jelenni. - Ezt nevezzük a -\begin_inset Quotes pld -\end_inset - -lábjegyzet -\begin_inset Quotes prd -\end_inset - - becsukásának. - Bármikor ki tudja nyitni a lábjegyzetet, azzal ha rákattint a gombra – - ekkor átírhatja a szövegét – majd amennyiben újra rákattint, becsukhatja - azt. -\end_layout - -\begin_layout Standard -Csodálkozhat azon miért lábjegyzet gomb van és miért nem egy szám. - A válasz az, hogy a LyX gondoskodik a lábjegyzetek számozásáról a nyomtatott - szövegben. - Mindebben Ön is meggyőződhet a -\family typewriter -dvi -\family default - fájl megtekintésével (vagy a nyomtatásával). - Ha további lábjegyzetet szúr be, a LyX át fogja őket számozni. - Mivel a LyX (nos, ténylegesen a LaTeX) gondoskodik a sorszámozásról, ezért - nincs rá szükség, hogy ezzel is növeljük a LyX fájl méretét. -\end_layout - -\begin_layout Standard -A lábjegyzetet ugyanúgy ki lehet vágni és be lehet illeszteni, mint bármilyen - szöveget. - Gyerünk, próbálja ki! Csak annyit kell tennie, hogy kijelöl egy lábjegyzet - gombot -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -A billyentyűzet segítségével lehet, hogy mindez egyszerűbb. - Amennyiben az egérrel kattog a gomb körül, ahelyett hogy kijelölné, könnyen - kinyithatja azt. -\end_layout - -\end_inset - -, majd -\family sans -Kivágás -\family default - és -\family sans -Beillesztés. - -\family default - Továbbá, a normál szöveget át is változtathatja lábjegyzetté azzal, hogy - kijelöli majd rákattint a -\family sans -Lábjegyzet -\begin_inset space ~ -\end_inset - -beszúrása -\family default - gombra. - A lábjegyzetet vissza is alakíthatja normál szöveggé, a -\family sans -Backspace -\family default --t leütve, amikor a kurzor a lábjegyzet betét első pozíciójában van, vagy - a -\family sans -Delete -\family default - gombot leütve amikor a kuzrzor a betét utolsó pozíciójában van. -\end_layout - -\begin_layout Standard -Széljegyzetet az eszköztár gombjával (a sok szöveg mellett lévő kevés szöveget - jelképező ikon (azaz valaminek a széle), ami közvetlen a -\family sans -Lábjegyzet -\begin_inset space ~ -\end_inset - -beszúrása -\family default - gomb mellett található) vagy a -\family sans -\bar under -B -\bar default -eszúrás \SpecialChar \menuseparator - -\family default - -\family sans -Szélj -\bar under -e -\bar default -gyzet -\family default - parancs kiválasztásával szúrhat be. - A széljegyzetek ugyanolyanok mint a lábjegyzetek, kivéve hogy: -\end_layout - -\begin_layout Itemize -a gombok felirata -\begin_inset Quotes pld -\end_inset - -széljegyezet -\begin_inset Quotes prd -\end_inset - - a -\begin_inset Quotes pld -\end_inset - -lábjegyzet -\begin_inset Quotes prd -\end_inset - - helyett, -\end_layout - -\begin_layout Itemize -a jegyzetek a szöveg mellé kerlünek, nem pedig alá, -\end_layout - -\begin_layout Itemize -nincsenek megszámozva. -\end_layout - -\begin_layout Standard -Változtassa vissza szöveggé a lábjegyzetét, azután jelölje ki és változtassa - széljegyzetté. - Futassa le a LaTeX-et, és nézze meg hogyan néz ki. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: Javítsa ki a lábjegyzetet a -\family typewriter -example_raw.lyx -\family default - dokumentumban. -\end_layout - -\begin_layout Section -Irodalomjegyzék -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:bibliographies" - -\end_inset - -Az irodalomjegyzék (tudományos életben legalábbis) olyan, mint a kereszthivatkoz -ás. - A dokumentum végén elhelyezett irodalomjegyzék egy listát tartalmaz, amelyekre - a dokumentumban hivatkozhatunk. - Csak úgy mint a szakaszcímek, a LyX és a LaTeX könnyűvé teszi a munkát - a azáltal, hogy automatikusan beszámozza az irodalomjegyzék elemeket és - megváltoztatja a számozást amikor az elemek számozása változik. -\end_layout - -\begin_layout Standard -Menjen a dokumentum végére és váltson át az -\family sans -Irodalomjegyzék -\family default - környezetre. - A most begépelt minden egyes bekezdés, egy-egy hivatkozás lesz. - Írja be -\family typewriter -A LyX kézikönyv, a LyX dokumentációs csapat készítésében -\family default - mint első hivatkozást. - Figyelje meg, hogy a LyX minden egyes hivatkozás elé szögletes zárójelben - egy számot tesz. - Kattintson a betétben lévő számra, és az -\family sans -Irodalomjegyzék -\begin_inset space ~ -\end_inset - -elem -\family default - dialógus ablak jelenik meg. - Az első mező a -\family sans -Kulcs -\family default -, a segítségével tudunk hivatkozni erre az elemre a dokumentumban. - Alapértelmezésben ez egy szám. - Módosítsa a -\family sans -Kulcs -\family default - mezőt -\begin_inset Quotes pld -\end_inset - -lyxkezikonyv -\begin_inset Quotes prd -\end_inset - --re, amit könnyebb megjegyezni. -\end_layout - -\begin_layout Standard -Most menjen oda a dokumentumban, ahol be szeretne szúrni egy hivatkozást - erre az elemre. - Szúrja be a -\family sans -\bar under -B -\bar default -eszúrás \SpecialChar \menuseparator - Idézet -\family default -\SpecialChar \ldots{} -. - Az -\family sans -Idézet -\family default - dialógus ablak fog megjelenni. - Az ablak jobb oldalán láthatjuk az összes irodalomjegyzék elemet, itt kell - kiválasztanunk, melyik elem(ek)re szeretnénk hivatkozni. - Válassza ki a -\begin_inset Quotes pld -\end_inset - -lyxkezikonyv -\begin_inset Quotes prd -\end_inset - --et (most csak ez az egyetlen elem az irodalomjegyzékben), kattintson a - -\family sans -Hozzáa -\bar under -d -\bar default -ás -\family default - gombra, majd az -\family sans -Ok -\family default - gombra a beszúráshoz. - (Ki lehet választani egyszerre több elemet is, ezáltal a zárójelben több - szám fog megjelenni.) Akkor most futtassa a LaTeX-et és ellenőrizze hogyan - jelenik meg az irodalomjegyzék elem hivatkozva a dokumentum végén elhelyezett - listára. -\end_layout - -\begin_layout Standard -Hogyan használjuk a többi mezőt? Az -\family sans -Idézet -\family default - dialógusablakban, a -\family sans -Szöveg -\begin_inset space ~ -\end_inset - -utána -\family default - mező egy megjegyzést (ami lehet egy hivatkozás egy bizonyos oldalra vagy - fejezetre a hivatkozott könyvben vagy cikkben) helyez el a zárójelben a - szám után. - Amennyiben azt szertné, hogy a hivatkozás ne szám, hanem szöveg legyen - a nyomtatásban (például néhány folyóirat -\begin_inset Quotes pld -\end_inset - -[Smi95] -\begin_inset Quotes prd -\end_inset - --t használja hivatkozásként egy munkára, amit Smith 1995-ben készített), - használja a -\family sans -Címke -\family default - mezőt az -\family sans -Irodalomjegyzék -\begin_inset space ~ -\end_inset - -elem -\family default - dialógusablakban. - A további részleteket megtalálja a -\emph on -Felhasználói kézikönyv -\emph default -ben. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: Javítsa ki az irodalomjegyzéket és a hivatkozásokat a -\family typewriter -example_raw.lyx -\family default - dokumentumban. -\end_layout - -\begin_layout Section -Tartalomjegyzék -\end_layout - -\begin_layout Standard -A tartalomjegyzéket elhelyezheti a dokumentumának elejére. - A LyX ezt eléggé megkönnyíti. - Csak üsse le a -\family sans -Return -\family default - billentyűt a dokumentum címe után és persze még az első szakasz előtt válassza - a -\family sans -\bar under -B -\bar default -eszúrás\SpecialChar \menuseparator -Listá -\bar under -k -\bar default - -\begin_inset space ~ -\end_inset - -és -\begin_inset space ~ -\end_inset - -tartalomjegyzék\SpecialChar \menuseparator - -\bar under -T -\bar default -artalomjegyzék -\family default - menüelemet. - Az előbbi művelet eredményeként a dokumentum első sorában egy betétben - a -\begin_inset Quotes pld -\end_inset - -Tartalomjegyzék -\begin_inset Quotes prd -\end_inset - - szó fog megjelenni. -\end_layout - -\begin_layout Standard -Ez nem tűnik valami nagyon hasznosnak. - Azonban, amennyiben megnézi a -\family typewriter -dvi -\family default - fájlt, látni fogja, hogy a betét helyett a valódi tartalomjegyzék jelenik - meg, tartalmazva a dokumentum szakaszait és alszakaszait. - Amennyiben megcserél egyes szakaszokat vagy újakat hoz létre, a változásokat - a -\family typewriter -dvi -\family default - fájlt frissítésekor fogja megtapasztalni. -\end_layout - -\begin_layout Standard -A tartalomjegyzék nem jelenik meg a maga valójában a dokumentum szerkesztése - közben, mivel azt közvetlenül nem szerkeszthető. - Habár megjelenítheti azt egy különálló ablakban, amennyiben rákattint dokumentu -mban a tartomjegyzék gombra. - A parancs akkor is működni fog amennyiben nincs egyetlen elem sem a tartalomjeg -yzékben. - Ez egy nagyon hatékony segédeszköz. - Használhatja ezt a -\family sans -Tartalomjegyzék -\family default - ablakot arra, hogy gyorsan mozogjon a dokumentumban. - Rákattintva az egyik (al)szakasz címére, az kijelölődik és a kurzor a(z) - (al)szakasz első sorába kerül (természetesen a LyX szerkesztő ablakában). - Használhatja a kurzor billentyűket is a tartalomjegyzékben való mozgásra. - Ezen oknál fogva kényelmesnek találhatja a használatát és nyitva is tarthatja - ezt az ablakot a dokumentum szerkesztése közben. - Hasonló funkciót érhet el a -\family sans -\bar under -N -\bar default -avigáció -\family default - menüvel, ahol a tartalomjegyzék automatikusan jelenik meg. - -\end_layout - -\begin_layout Standard -A tartalomjegyzék eltávolításához mindössze azt a betétet kell kitörölnie, - csakúgy mint a bármilyen szöveget. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: Javítsa ki az tartalomjegyzéket a -\family typewriter -example_raw.lyx -\family default - dokumentumban. -\end_layout - -\begin_layout Chapter -Képletek használata -\end_layout - -\begin_layout Standard -Nagyon sok tudós használja a LaTeX-et, mivel nagyszerűen kezeli a képleteket, - elkerülve a szövegszerkesztők vezérlő karaktereinek vagy képletszerkesztőinek - használatát. - Ezen tudósok nagy része azonban egy kicsit csalódott, mivel a képletek - elkészítése a LaTeX-el inkább programozás, mintsem írás. - Szerencsére, a LyX WYSIWYM támogatással rendelkezik a képletek elkészítéséhez. - Amennyiben használt már LaTeX-et, azt tapasztalhatja, hogy a LaTeX parancsokat - bármikor begépelheti, és azok eredményei a WYSIWYM filozófiának megfelelően - fognak megjelenni. - Azonban amennyiben még sohasem készített képletet LaTeX-el, a -\family sans -Képletszerkesztő -\family default -vel gyorsan és könnyedén fog professzionális megjelenésű képleteket készíteni -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Sajnos, a LyX nem tudja eldönteni, hogy a bevitt képletek -\emph on -helyesek -\emph default - vagy sem. -\end_layout - -\end_inset - -. -\end_layout - -\begin_layout Section -Képlet mód -\end_layout - -\begin_layout Standard -A LyX dokumentumában valahva írja be: -\end_layout - -\begin_layout LyX-Code -Tetszik ami Einstein mondott, E=mc^2, mert nagyon egyszerű. - -\end_layout - -\begin_layout Standard -Ez a képlet nem néz ki valami jól, még a -\family typewriter -dvi -\family default - fájlban sem, nincs hely az egyenlőségjel és a betűk között, valamint a - -\begin_inset Quotes pld -\end_inset - -2 -\begin_inset Quotes prd -\end_inset - --t a felső indexbe kellene írni. - Ez a rossz szedés azért történhetett, mert nem tudattuk a LyX-nek, hogy - egy matematikai kifejezést -\begin_inset Quotes pld -\end_inset - -képletet -\begin_inset Quotes prd -\end_inset - - készítünk. - Ezért a képletet normális szövegnek vette. - -\end_layout - -\begin_layout Standard -Képletet kell létrehoznunk ahhoz, hogy a szedés megfelelő legyen. - A képlet létrehozásához kattintson az eszköztár kékkel írt -\begin_inset Formula $\frac{a+b}{c}$ -\end_inset - - gombjára. - A LyX be fog szúrni egy kis kék négyzetet, ami egy üres képlet. - A LyX, a kurzort ebbe a kis négyzetbe rakja, így csak újra be kell írnia - -\family typewriter -E=mc^2 -\family default -. - A kifejezés kékkel fog megjelenni és a kék négyzet el fog tünni, amint - a képlet nem üres. - Most üsse le az -\family sans -Esc -\family default --et az egyenlet befejezéséhez. - A lila jelölők eltünnek, a kurzor a kifejezéstől jobbra fog megjelenni - és amit ezután gépel az normál szövegként fog megjelenni. -\end_layout - -\begin_layout Standard -Futtassa a LaTeX-et, és nézze meg a -\family typewriter -dvi -\family default - fájlt. - Vegye észre, hogy a kifejezés megjelenése milyen szép lett, az egyenlőségjel - és az egyes betűk közé szóközök kerültek, valamint a a -\begin_inset Quotes pld -\end_inset - -2 -\begin_inset Quotes prd -\end_inset - - a felső indexben van. - A betűket képlet módban változónak tételezi fel a program, ezért mutatja - őket dölttel. - A számok azok számok maradnak. -\end_layout - -\begin_layout Standard -A képletszerksztő, csak egy másik példája a WYSIWYM filozófiának. - A LaTeX-ben a matematikai kifejezéseket szöveggel és parancsokkal, mint - pl. - az -\family typewriter - -\backslash -sqrt -\family default - adjuk meg. - Ez nehézkes lehet, mivel nem tudja hogyan néz ki az egész kifejezés, amíg - le nem futtatja a LaTeX-et. - Sok időt tölthet el hiányzó zárójelek vagy -\begin_inset Quotes pld -\end_inset - -egyéb -\begin_inset Quotes prd -\end_inset - - hibák keresésével. - Egyébként a LyX nem próbálja meg a legtökéletesebben megjeleníteni a kifejezést - (WYSIWYG), de segít abban, hogy láthassuk milyen lesz a kifejezés. - A LaTeX fog gondoskodni a professzionális szedésről. - Az esetek 99%-ban semmilyen változtatást nem kell eszközölni a betűméreteken - vagy a térközökön. - Ezáltal (elnézést az ismétlésért) ön a képleteinek a -\emph on -tartalmára -\emph default - tud koncentrálni, nem kell a megjelenéssel foglalkoznia. -\end_layout - -\begin_layout Section -Nagiváció a képletben -\end_layout - -\begin_layout Standard -Változtassuk meg a -\begin_inset Formula $E=mc^{2}$ -\end_inset - --t ilyenre: -\begin_inset Formula $E=1+mc^{2}$ -\end_inset - -. - Használja a nyíl billentyűket a kurzor képletbe történő mozgatásához. - Figyelje meg, hogy amint belép a képletbe, lila jelölők jelennek meg a - képlet körül, jelezve képletet szerkeszt. - Most használhatja a -\family sans -Balra -\family default - és -\family sans -Jobbra -\family default - gombokat, hogy a kurzort az egyenlőségjelen túlra mozgassa és írja be -\begin_inset Quotes pld -\end_inset - -1+ -\begin_inset Quotes prd -\end_inset - -. - A képletből való kilépéshez használhatja a nyíl billentyűket vagy az -\family sans -Esc -\family default --et. -\end_layout - -\begin_layout Standard -Az említett speciális billentyűket kivéve, az írás képletszerkesztés közben - olyan, mintha normál szöveget írna. - Használja a -\family sans -Delete -\family default - (vagy -\family sans -Backspace -\family default -) gombokat a törléshez. - Kijelölhet szöveget, mind a kurzorral vagy az egérrel egyaránt. - Az -\family sans -Sz -\bar under -e -\bar default -rkesztés\SpecialChar \menuseparator -Visszavo -\bar under -n -\bar default -ás -\family default - működik képlet módban, csakúgy, mint a kivágás vagy a beillesztés. - Egyetlen dolgora hívom fel csak a figyelmet: ha a képlet jobb oldalán kivül - áll a kurzor, egyetlen -\family sans -Delete -\family default - (vagy -\family sans -Backspace -\family default -) leütésével kitörölheti a teljes kifejezést. - Szerencsére, használhatja a -\family sans -Visszavonást -\family default - a visszahozatalához. -\end_layout - -\begin_layout Standard -Mi történik, ha módosítani akarja a -\begin_inset Formula $E=mc^{2}$ -\end_inset - --t erre: -\begin_inset Formula $E=mc^{2.5}+1$ -\end_inset - -? Használhatja az egeret, ahhoz hogy a megfelelő helyre kattintson, de használha -tja a nyíl billentyűket is. - Ha a kurzor közvetlen a -\begin_inset Quotes pld -\end_inset - -c -\begin_inset Quotes prd -\end_inset - - után áll, persze még a -\begin_inset Quotes pld -\end_inset - -2 -\begin_inset Quotes prd -\end_inset - - előtt, a -\family sans -Fel -\family default - lenyomásával a kurzor a felsőindex szintjére kerül, de még a -\begin_inset Quotes pld -\end_inset - -2 -\begin_inset Quotes prd -\end_inset - - elé. - Írja be a -\begin_inset Quotes pld -\end_inset - -.5 -\begin_inset Quotes prd -\end_inset - --t. - A -\family sans -Le -\family default - leütésével a kurzor a normális szintre kerül vissza. - Amennyiben a felsőindex-ben bárhol leüti a -\family sans -Le -\family default - billentyűt a kurzor a közvetlen a felsőindex -\emph on -utánra -\emph default - kerül (tehát beírhatja a -\begin_inset Quotes pld -\end_inset - -+1 -\begin_inset Quotes prd -\end_inset - --et). -\end_layout - -\begin_layout Section -Kitevők és indexek -\end_layout - -\begin_layout Standard -Egy kitevőt a -\family sans -Képletszerkesztő -\family default --vel is beírhatunk (lásd lentebb), de valójában könnyebb a hiányjellel -\begin_inset Quotes pld -\end_inset - -^ -\begin_inset Quotes prd -\end_inset - -. - A LyX egy másik kis kék négyzetet fog megjeleníteni a felső indexben, bármit - amit most fog írni, az ide fog kerülni persze kisebb betűmérettel. - Minden amit a -\family sans -Szóköz -\family default - leütéséig beír (vagy az -\family sans -Esc -\family default - leütéséig, amivel a képletszerkesztésből kilépünk) a felső index-be fog - kerülni. -\end_layout - -\begin_layout Standard -Alsó index készítése szintén ilyen egyszerű – az elkezdéséhez az aláhúzás - jelet -\begin_inset Quotes pld -\end_inset - -_ -\begin_inset Quotes prd -\end_inset - - kell használnia. - Használhatja az alsóindexet és a felsőindex-et mind alsóindexekben, mind - felsőindexekben, mint ez a példa: -\begin_inset Formula $A_{a_{0}+b^{2}}+C^{a_{0}+b^{2}}$ -\end_inset - -. - -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: A -\family typewriter -example_raw.lyx -\family default - dokumentum első képletét tegye képlet módba. -\end_layout - -\begin_layout Section -A -\family sans -Képletszerkesztő -\end_layout - -\begin_layout Standard -A -\family sans -Képletszerkesztő -\family default - egy kényelmes segédeszköz szimbólumok beírásához vagy bonyolult képletszerkeszt -ési feladatok elvégzéséhez. - Ezen funkciók nagy része elérhető a billentyűzetről vagy a -\family sans -Sz -\bar under -e -\bar default -rkesztés \SpecialChar \menuseparator - Ké -\bar under -p -\bar default -let -\family default - illetve a -\family sans -\bar under -B -\bar default -eszúrás -\bar under - \SpecialChar \menuseparator - -\bar default - Kép -\bar under -l -\bar default -et -\family default - menük segítségével. - Azonban mi most csak a -\family sans -Képletszerkesztő -\family default - használatára fogunk koncentrálni, hogy megtudhassa mire számíthat; a gyorsbille -ntyűket később is megtanulhatja a többi kézikönyvből. - Nyissa meg a -\family sans -\bar under -B -\bar default -eszúrás -\bar under - \SpecialChar \menuseparator - -\bar default - Kép -\bar under -l -\bar default -et -\family default - -\family sans -\bar under -\SpecialChar \menuseparator - -\bar default - Kép -\bar under -l -\bar default -etszerkesztő -\begin_inset space ~ -\end_inset - -eszköztár -\begin_inset space ~ -\end_inset - -mutatása/elrejtése -\family default - segítségével és hagyja nyitva amíg ezt a fejezetet olvassa. - A képletszerkesztő eszköztárat a -\family sans -Né -\bar under -z -\bar default -et -\bar under -\SpecialChar \menuseparator - -\bar default - Esz -\bar under -k -\bar default -öztárak -\bar under -\SpecialChar \menuseparator - -\bar default - Képlet -\family default - paranccsal is elérheti. -\end_layout - -\begin_layout Subsection -Görög és egyéb szimbólumok -\end_layout - -\begin_layout Standard -A -\family sans -Képletszerkesztő -\family default - segítségével a matematikában használt szimbólumok hatalmas választékát - érhetjük el: különböző nyilak, relációs- és műveleti jeleket, összegzőket - valamint intergrátorokat. - Az alsó- és felsőindexbe való írás segítségével írhatunk alsó és felső - határokat a összegző és integrál jelekhez. -\end_layout - -\begin_layout Standard -\begin_inset Quotes pld -\end_inset - -Nincs olyan, amit meg ne tehetne\SpecialChar \ldots{} - -\begin_inset Formula $\heartsuit$ -\end_inset - -. -\begin_inset Quotes prd -\end_inset - - -\end_layout - -\begin_layout Subsection -Gyökjelek, ékezetek és határoló jelek -\end_layout - -\begin_layout Standard -Egy gyökjel beviteléhez, csak kattintson a gyökjelet szimbólumot tartalmazó - gombra. - Egy gyökjel fog megjelenni, a kurzor pedig a gyökjel alá kerül. - Ahova beírhat változókat, számokat esetleg másik gyökjeleket, törteket - vagy bármit amit szeretne. - A LyX mindig úgy fogja átméretezni a gyökjelet, hogy az fedje az alatta - lévőket. -\end_layout - -\begin_layout Standard -Egy jel fölé ( -\begin_inset Formula $\overrightarrow{v}$ -\end_inset - -) vagy jelek csoportja fölé ( -\begin_inset Formula $\overrightarrow{a+b}$ -\end_inset - -) hasonlóan helyezhetünk ékezeteket. - A -\family sans -Keret -\begin_inset space ~ -\end_inset - -díszítőelemek -\family default - egy panelen keresztül érhetőek el. - Kattintson egy ilyen elemre a LyX erre be fogja azt szúrni, az aktuális - elem alá vagy fölé, hogy a hozzá tartozó szöveget bevihessük. - Két fajta ilyen elemkészlet létezik: az egyik mérete a hozzá tartozó szöveggel - együtt nő vagy csökken, amíg a másik fix méretű mindössze egyetlen betűhöz - tartozhat. -\end_layout - -\begin_layout Standard -A határolójelek, mint pl. - a kapcsos-, szögletes- vagy normál-zárójelek hasonlóan működnek, egy kicsit - azért bonyolultabban. - Kattintson a -\family sans -Határolójelek -\family default - gombra (amin egy kék négyzet szögletes zárójelben látható), hogy megjelenítse - a -\family sans -Határolójelek -\family default - dialógusablakot. - A kiválasztott határolójel látható az ablakban. - Alapértelmezésben egy rendes-zárójel-pár, de választhat másmilyen zárójel - párt is, vagy szögletest netán kapcsosat, esetleg válassza ki az üreset, - hogy valami hasonlót kapjon -\begin_inset Quotes pld -\end_inset - - -\begin_inset Formula $a=\left\langle 7\right.$ -\end_inset - - -\begin_inset Quotes prd -\end_inset - - (az üres határoló jel szaggatott vonalként jelenik meg a LyX-ben, de nem - fog megjelenni a kimenetben). -\end_layout - -\begin_layout Standard -Amenniyben lusta, begépelheti a zárójeleket a billentyűzetről is, nem használva - a -\family sans -Határolójelek -\family default - ablakot. - Azonban ezek a zárójelek a normál szöveggel azonos méretűek lesznek, ami - nem fog jól mutatni, ha pl. - egy nagy tört vagy mátrix lesz a zárójelen belül. - A -\family sans -Határolójelek -\family default - ablak használatával garantáljuk, hogy a zárójelek méretei minden esetben - igazodni fognak azok tartalmához. -\end_layout - -\begin_layout Standard -Tehet határolót jelet vagy gyökjelet vagy díszítőelemet egy már létező szöveghez - is. - Válassza ki a módosítandó képlet részt, és kattintson a -\family sans -Képletszerkesztő -\family default - megfelelő gombjára. - Próbálja megváltoztatni Newton második törvényét skaláris alakról ( -\begin_inset Formula $f=ma$ -\end_inset - -), vektor alakra ( -\begin_inset Formula $\overrightarrow{f}=m\overrightarrow{a}$ -\end_inset - -). - Miután megismerte a mátrixokat meg fogja látni ilyen módon tud zárójelet - rakni köréjük. -\end_layout - -\begin_layout Subsection -Törtek -\end_layout - -\begin_layout Standard -A törtek nagyon egyszerűen hozhatóak létre képlet módban. - Csak kattintson a -\family sans -Képletszerkesztő -\family default --ben a -\family sans -Törtek -\family default - gombra, arra ami egy fekete törtvonalat mutat egy-egy kék négyzettel a - számlálóban és a nevezőben. - A LyX létrehoz két kék négyzetet a törtben. - A várakozásnak megfelelően a nyíl billentyűkkel vagy az egér használatával - mozoghat a törtön belül. - Kattintson a felső kék négyzetbe és írja be -\begin_inset Quotes pld -\end_inset - -1 -\begin_inset Quotes prd -\end_inset - -. - Most üsse le a -\family sans -Le -\family default - gombot és írja be -\begin_inset Quotes pld -\end_inset - -2 -\begin_inset Quotes prd -\end_inset - -. - Hoppá! Elkészítette első törtjét. - Természetesen bármit beírhat a kék négyzetekbe: változókat kitevőkkel, - gyököket, esetleg másik törteket vagy ami az eszébe jut. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: A -\family typewriter -example_raw.lyx -\family default - dokumentum második képletét tegye képlet módba. -\end_layout - -\begin_layout Subsection -TeX mód: határok, log, sin és a többiek -\end_layout - -\begin_layout Standard -Mivel képlet módban bevitt betűket változóknak tételezi fel a program, amennyibe -n képlet módban azt írja be -\begin_inset Quotes pld -\end_inset - -sin -\begin_inset Quotes prd -\end_inset - -, a LyX azt hiszi, hogy ön a három -\begin_inset Formula $s$ -\end_inset - -, -\begin_inset Formula $i$ -\end_inset - - és -\begin_inset Formula $n$ -\end_inset - - változó szorzatára gondol. - Emiatt a három változót dölttel fogja szedni, annak ellenére, hogy ön a - -\begin_inset Quotes pld -\end_inset - -sin -\begin_inset Quotes prd -\end_inset - --t szerette volna Román betűtípussal. - Továbbá, a LyX nem tesz szóközt a -\begin_inset Quotes pld -\end_inset - -sin -\begin_inset Quotes prd -\end_inset - - szó és -\begin_inset Quotes pld -\end_inset - -x -\begin_inset Quotes prd -\end_inset - - közé (a -\family sans -Szóköz -\family default - leütésére kilép képlet módból). - Felmerül a kérdés: Hogyan kaphatok -\begin_inset Quotes pld -\end_inset - - -\begin_inset Formula $\sin x$ -\end_inset - - -\begin_inset Quotes prd -\end_inset - --et -\begin_inset Quotes pld -\end_inset - - -\begin_inset Formula $sinx$ -\end_inset - - -\begin_inset Quotes prd -\end_inset - - helyett? -\end_layout - -\begin_layout Standard -Kattintson a -\begin_inset Quotes pld -\end_inset - -sin -\begin_inset Quotes prd -\end_inset - --ra a -\family sans -Képletszerkesztő -\family default - eszköztáron a -\family sans -Függvények -\family default - gombra. - A -\begin_inset Quotes pld -\end_inset - -sin -\begin_inset Quotes prd -\end_inset - - feketével és álló román betűstílussal fog megjelenni. - A program a teljes szót egyetlen szimbólunként fogja kezelni, amennyiben - leüti a -\family sans -Backspace -\family default - billentyűt, törölni fogja a szimbólumot. - Akkor most írja be -\begin_inset Quotes pld -\end_inset - -x -\begin_inset Quotes prd -\end_inset - -, ami dölten kékkel fog megjelenni, éppen úgy ahogy az képletmódban várható. - A kifejezés a -\family typewriter -dvi -\family default - fájlban megfelelően fog látszódni. - Ellenőrizze le! -\end_layout - -\begin_layout Standard -A képlet módban bevihető függvények, melyeket a -\family sans -Függvények -\family default - listából vihet be, tartalmazhatják a trigonumetrikus műveleteket azok inverzeit -, a hiperbolikus függvényeket, logaritmusokat, határokat valamint sok egyéb - függvényt is. - Ezen függvényeknek lehet alsó vagy felső index-ű operátoruk, mint pl. - -\begin_inset Quotes pld -\end_inset - - -\begin_inset Formula $\cos^{2}\theta$ -\end_inset - - -\begin_inset Quotes prd -\end_inset - - vagy -\begin_inset Quotes pld -\end_inset - - -\begin_inset Formula $\lim_{n\rightarrow\infty}$ -\end_inset - - -\begin_inset Quotes prd -\end_inset - -. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: A -\family typewriter -example_raw.lyx -\family default - dokumentum harmadik képletét tegye képlet módba. -\end_layout - -\begin_layout Subsection -Mátrixok -\end_layout - -\begin_layout Standard -Kattintson a -\family sans -Képletszerkesztő -\family default - a -\family sans -Mátrix -\begin_inset space ~ -\end_inset - -beszúrása -\family default - gombjára. - A megjelenő dialógusablakban kiválaszthatjuk mennyi sora és oszlopa legyen - a beszúrandó mátrixnak. - Válasszon két sort és három oszlopot üsse le a -\family sans -OK -\family default - gombot. - A LyX be fog szúrni 6 kék négyzetet egy -\begin_inset Formula $2\times3$ -\end_inset - - mátrixban. - Ahogy azt már megszokhatta ezekbe a négyzetekbe bármilyen matematikai kifejezés -ket beírhat (pl. - gyökjeles, másik mátrix, stb.). - Amennyiben valamelyik kék négyzetet üresen akarja hagyni, az nem jelent - problémát. -\end_layout - -\begin_layout Standard -Az oszlopok közötti mozgáshoz felhasználhatja a -\family sans -Tab -\family default - billentyűt. - Egyébként a nyíl billentyűket használhatja a mozgáshoz, egy cella jobb - szélén a -\family sans -Jobbra -\family default - leütése a következő cellába mozgatja a kurzort. - A -\family sans -Le -\family default - hatására a következő sorba kerül a kurzor, stb. - -\end_layout - -\begin_layout Standard -Amennyiben úgy találja, hogy további sorokat vagy oszlopokat kell beszúrnia, - használja a -\family sans -Sz -\bar under -e -\bar default -rkesztés \SpecialChar \menuseparator - So -\bar under -r -\bar default -ok -\begin_inset space ~ -\end_inset - -és -\begin_inset space ~ -\end_inset - -oszlopok \SpecialChar \menuseparator - Oszlop -\begin_inset space ~ -\end_inset - - -\bar under -h -\bar default -ozzáadása -\family default - vagy -\family sans -Sor -\begin_inset space ~ -\end_inset - -hozzá -\bar under -a -\bar default -dása -\family default - parancsokat. - Ezek beszúrnak egy új sort vagy oszlopot az aktuális pozícióba. - Ha túl sokat szúrt be? Használja a -\family sans -Oszlop -\begin_inset space ~ -\end_inset - -törlése -\family default - vagy -\family sans -Sor -\begin_inset space ~ -\end_inset - -törlése -\family default - parancsokat ugyanebből a menüből. -\end_layout - -\begin_layout Standard -A -\emph on -Felhasználói kézikönyv -\emph default --ben megtalálja hogyan változtassa meg az egyes oszlopok igazítását és azt, - hogyan változtassa meg a teljes mátrix függőleges pozícióját. - Amennyiben szöveget tartalmazó táblázatot szeretne készíteni, érdemes a - LyX nagyszerű táblázatkezelőjét használnia, mátrixok használata helyett. - -\end_layout - -\begin_layout Subsection -Megjelenítési mód -\end_layout - -\begin_layout Standard -Az eddig készített összes képlet vagy matematikai kifejezés a normál szöveggel - egy sorba került, ezeket beszúrt képleteknek nevezzük. - Ez nagyszerű rövid, egyszerű kifejezések elkészítéséhez, azonban ha egy - nagyot szeretne készíteni vagy azt szeretné, hogy a képlet különüljön el - a szövegtől, a képlet megjelenítés módját meg kell változtatnia (megjelenített- -mód). - Továbbá amennyiben címkézni és számozni (lásd a -\emph on -Felhasználói kézikönyv -\emph default -ben) szeretné, esetleg többsoros kifejezést szeretne, a képletnek megjelenített - módban kell lennie. -\end_layout - -\begin_layout Standard -Kattintson a -\family sans -Képletszerkesztő -\family default - eszköztár -\family sans -Megjelenítés -\begin_inset space ~ -\end_inset - -módjának -\begin_inset space ~ -\end_inset - -váltása -\family default - gombjára, amelynek megjelenése: egy kék négyzet alatta és fölötte két vonalalla -l. - A képlet megjelenési módja megváltozik, az új sorba kerül középre igazítva. - Most vigyen be egy képletet majd futtasa le a LaTeX-et és nézze meg hogyan - néz ki. - A -\family sans -Megjelenítés -\begin_inset space ~ -\end_inset - -módjának -\begin_inset space ~ -\end_inset - -váltása -\family default - gomb a két megjelenítés között vált, változtasson meg néhány kifejezést - oda és vissza. -\end_layout - -\begin_layout Standard -A megjelenített mód pár dologban eltér a beszúrt módtól: -\end_layout - -\begin_layout Itemize -Az alap betűkészlet nagyobb néhány szimbólum esetében, mint a -\begin_inset Formula $\sum$ -\end_inset - - és -\begin_inset Formula $\int$ -\end_inset - - -\end_layout - -\begin_layout Itemize -Az alsó- és felsőindexek a határok és az összegek esetében (kivéve az integrálok -) a szimbólumok alá kerülnek nem pedig melléjük -\end_layout - -\begin_layout Itemize -A szöveg középre van igazítva -\end_layout - -\begin_layout Standard -Ezken az eltéréseken kívül, a megjelenített és beszúrt képletek nagyon hasonlóak. -\end_layout - -\begin_layout Standard -Egy utolsó megjegyzés a megjelenített képletek szedésével kapcsolatban: - vigyázzon, nehogy a képletét egy új bekezdésbe rakja. - Ha a képlete egy mondat vagy egy bekezdés közepén van, ne üsse le a -\family sans -Return -\family default --t. - Amennyiben mégis megteszi ezt, a képlet -\emph on -utáni -\emph default - szöveg egy új bekezdésbe fog kerülni. - Emiatt a szöveg lehet, hogy be lesz húzva, amit feltehetőleg nem szeretne. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: A -\family typewriter -example_raw.lyx -\family default - dokumentum különböző kifejezéseit tegye megjelenített módba és nézze meg - hogyan változik a szedésük. -\end_layout - -\begin_layout Standard - -\series bold -Feladat -\series default -: Különböző - ebben a szakaszban tanult - eszközök felhasználásával mostantól - képes lehet hasonló képletek elkészítésére -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Miután a bonyolultabb módon elkészítette, miért nem próbálja ki a -\family sans -\bar under -B -\bar default -eszúrás\SpecialChar \menuseparator -Kép -\bar under -l -\bar default -et\SpecialChar \menuseparator -E -\bar under -s -\bar default -etek -\begin_inset space ~ -\end_inset - -környezet -\family default - parancsot? -\end_layout - -\end_inset - -: -\end_layout - -\begin_layout Standard -\begin_inset Formula \[ -f(x)=\left\{ \begin{array}{cc} -\log_{8}x & x>0\\ -0 & x=0\\ -\sum_{i=1}^{5}\alpha_{i}+\sqrt{-\frac{1}{x}} & x<0 -\end{array}\right.\] - -\end_inset - - -\end_layout - -\begin_layout Section -További képletes dolgok -\end_layout - -\begin_layout Standard -A Képlet-módban sokkal több mindent meg tud csinálni. - Most már ismeri az alapokat, ezért most is csak a -\emph on -Felhasználói kézikönyv -\emph default --re hivatkozunk hogy hogyan tudja megcsinálni a: -\end_layout - -\begin_layout Itemize -Kifejezések felcímkézése és számozása, -\end_layout - -\begin_layout Itemize -Többsoros kifejezések, -\end_layout - -\begin_layout Itemize -Betűtípus megváltoztatása, pl. - félkövér használata egy képleten belül, -\end_layout - -\begin_layout Itemize -Betűméret és térközök finomhangolása egy képleten belül. - (Ne aggódjon emiatt az utolsó vázlatáig!) -\end_layout - -\begin_layout Itemize -Makrók írása. - Nagyon hasznosak és hatékonyak tunak lenni, mert a dokumentum elején csak - egyszer kell definiálnia őket és felhasználhatóak a teljes dokumentumban. - Ha megváltoztatja a makró definícióját, a hivatkozások erre a makróra a - teljes dokumentumban meg fognak változni. - Képesek paramétert is fogadni. -\end_layout - -\begin_layout Itemize -Maradt még sok egyéb dolog, ezeket idő hiányában fel sem tudjuk sorolni - ebben a -\emph on -Tankönyv -\emph default --ben. -\end_layout - -\begin_layout Chapter -Egyéb dolgok -\end_layout - -\begin_layout Section -Egyéb fontos LyX jellemzők -\end_layout - -\begin_layout Standard -Nem néztük át az összes lehetséges LyX parancsot, nem is terveztük. - A részletekért szokás szerint lásd a -\emph on -Felhasználói kézikönyv -\emph default --et. - Most is csak megemlítünk néhány további fontos dolgot, amit használhat - a LyX-ben: -\end_layout - -\begin_layout Itemize -A LyX támogatja a táblázatokat WYSIWYM módon. - Használja a -\family sans -\bar under -B -\bar default -eszúrás \SpecialChar \menuseparator - -\bar under - T -\bar default -áblázat\SpecialChar \ldots{} - -\family default - parancsot, táblázat beszúrásához. - Kattintson -\emph on -jobb -\emph default - -\emph on -gombbal -\emph default - a táblázaton a -\family sans -Táblázat -\begin_inset space ~ -\end_inset - -beállítása -\family default - dialógusablak eléréséhez, amiben szinte mindent beállíthat. -\end_layout - -\begin_layout Itemize -A LyX támogatja képek beszúrását számos formátumban (beleértve JPEG-et, - és bitmap formátumokat, a PostScript -\begin_inset ERT -status collapsed - -\begin_layout Plain Layout - - -\backslash -textregistered -\end_layout - -\end_inset - --et és nyers LaTeX-et) a dokumentumba. - (Ahogy kitalálhatta: -\family sans -\bar under -B -\bar default -eszúrás \SpecialChar \menuseparator - -\bar under - G -\bar default -rafika -\family default -\SpecialChar \ldots{} -. - Ezután kattintson a képre a fájl megadásához, a kép elforgatásához, méretezéséh -ez, stb.) A táblázatoknak és ábráknak lehet címkéjük, a LyX automatikusan - elkészíti a táblázatok és képek listáját. -\end_layout - -\begin_layout Itemize -A verziókövetés szintén támogatott RCS használatával (további információkért - olvassa el a -\family typewriter -man rcsintro -\family default --t). -\end_layout - -\begin_layout Itemize -A LyX nagymértékben beállítható. - A LyX ablak kinézetétől kezdve, hogy a kimenet hogyan keletkezik, mindez - számtalan módon beállítható. - Sok beállítás az -\family sans -Esz -\bar under -k -\bar default -özök \SpecialChar \menuseparator - -\bar under - B -\bar default -eállítások -\family default -\SpecialChar \ldots{} --on keresztül valósul meg. - További információért olvassa el a -\family sans -\bar under -S -\bar default -egítség \SpecialChar \menuseparator - T -\bar under -e -\bar default -streszabás -\family default --t. -\end_layout - -\begin_layout Itemize -A LyX fejlesztését öt kontinensen található programozók csoportja végzi. - Ezért a LyX jobb támogatással rendelkezik nem angol nyelvekhez (mint, pl. - a holland, német, francia, görög, cseh, török\SpecialChar \ldots{} -) mint a többi szövegszerkesztő. - Még néhány jobbról-balra író nyelvet is, mint a Héber vagy az Arab támogat. - Írhat dokumentumot más nyelveken, de beállíthatja a LyX-et úgy, hogy a - menük és az üzenetek egy másik nyelven jelenjenek meg. -\end_layout - -\begin_layout Itemize -A LyX menük tartalmaznak gyorsító elemeket. - Ez azt jelenti, hogy a -\family sans -\bar under -F -\bar default -ájl \SpecialChar \menuseparator - Meg -\bar under -n -\bar default -yitás -\family default -\SpecialChar \ldots{} - elérhető az -\family sans -M-F -\family default - után az -\family sans -N -\family default - lenyomásával vagy a menüelem mellett látható gyorsbillentyűvel (ami alapból - C-O). - A gyorsbillentyűk szintén beállíthatóak, további információkért kérem olvassa - el a -\family sans -\bar under -S -\bar default -egítség \SpecialChar \menuseparator - T -\bar under -e -\bar default -streszabás -\family default --t. -\end_layout - -\begin_layout Itemize -A LyX be tudja olvasni a LaTeX dokumentumokat. - Lásd a -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:relyx" - -\end_inset - - -\begin_inset space ~ -\end_inset - -szakaszt. -\end_layout - -\begin_layout Itemize -Helyesírás-ellenőrzés és tézaurusz lehetőségek szintén elérhetőek. -\end_layout - -\begin_layout Itemize -A LyX ablak alsó részén látható szövegmező neve minibuffer (az -\family typewriter -emacs -\family default - hasonló eszköze alapján). - Ez hozzáférhetővé tesz mindenfajta érdekes funkciókat, beleértve azokat - is amivel tönkreteheti a dokumentumát. - Azaz csak akkor írjon a minibuffer-be, ha tudja mit csinál. -\end_layout - -\begin_layout Section -LyX a LaTeX felhasználóknak -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:latexusers" - -\end_inset - -Ha semmit sem tud a LaTeX-ről, nem kell elolvasnia ezt a szakaszt. - Lehet, hogy szeretne valamit -\emph on -tanulni -\emph default - a LaTeX-ről, és el olvassa ezt a fejezetet. - Sok ember aki a LyX-et most kezdi el használni, már ismeri a LaTeX-et. - Ha ön egy ilyen ember, jogosan kérdezheti hogyan képes a LyX mindarra amire - a LaTeX. - A rövid válasz az, hogy a LyX meglehetősen sokmindenre képes amit a LaTeX - ilyen vagy olyan formában. - Valamint minden bizonnyal egyszerüsíti egy LaTeX dokumentum elkészítését. - A segédeszközt – aminek segítségével a LaTeX dokumentumokat átalakíthatjuk - LyX által feldolgozható formára – teljesen újraírtuk a LyX 1.4 változatához. - Mostmár képesnek kell lennie a könnyedén lekezelni a LaTeX nagy részét. - -\end_layout - -\begin_layout Standard -Mivel ez csak egy tankönyv, azért csak azokat a dolgokat említjuk meg, amelyek - a kezdő felhasználót érdekelhetnek. - Azért, hogy a -\emph on -Tankönyv -\emph default - rövid legyen, csak a legszükségesebb információkat írjuk itt le. - A -\emph on -Haladó szolgáltatások -\emph default - kézikönyvben, különösen a -\emph on -LaTeX mesterek titkai (Secrets of the LaTeX Masters -\emph default -) fejezetben találhat sok-sok információt a LyX és a LaTeX különbségéről, - valamint arról, hogyan valósíthat meg egyes LaTeX trükköket LyX-ben. -\end_layout - -\begin_layout Subsection -TeX-mód -\end_layout - -\begin_layout Standard -Bármi, amit TeX-módban ír be, azt a LaTeX közvetlen (változtatás nélkül) - kapja meg, a képernyőn pirossal fog megjelenni. - A TeX parancsok beviteléhez válassza a -\family sans -\bar under -B -\bar default -eszúrás \SpecialChar \menuseparator - Te -\bar under -X -\family default -\bar default - menüt. - A parancs létrehoz egy betétet, amit ebbe a betétbe beírunk közvetlen átadásra - kerül a LaTeX-nek. -\end_layout - -\begin_layout Standard -Képleten belül a TeX-mód kicsit másként működik. - A TeX módba lépéshez a visszafeleperjel -\begin_inset Quotes pld -\end_inset - -backslash -\begin_inset Quotes prd -\end_inset - - karaktert kell leütnie. - A perjel nem kerül a képernyőre, de amit utána beírunk az pirossal fog - megjelenni. - A TeX-módból való kilépéshez üüse le a -\family sans -Szóköz- -\family default -t vagy egy nem betű karaktert, mint pl. - szám, aláhúzás, hiányjel, zárójel. - Miután kilépett a TeX-módból, amennyiben a LyX ismeri a bevitt TeX parancsot, - át fogja alakítani azt a WYSIWYM formába. - Azaz, ha egy képletben beírja -\backslash -gamma valamint leüti a -\family sans -Szóköz -\family default --t, a LyX a piros -\begin_inset Quotes pld -\end_inset - -gamma -\begin_inset Quotes prd -\end_inset - - szöveget kék -\begin_inset Quotes pld -\end_inset - - -\begin_inset Formula $\gamma$ -\end_inset - - -\begin_inset Quotes prd -\end_inset - --ra cseréli. - Ez működik majdnem minden, nem túl bonyolult képlet-makróra. - Ezáltal gyorsabban lehet dolgozni, mint a -\family sans -Képletszerkesztő -\family default --vel, és persze nagyon kényelmes a tapasztalt LaTeX felhasználóknak. - -\end_layout - -\begin_layout Standard -Amennyiben TeX-módan egy speciális esetben beír egy zárójelet, mind a nyitó - -\emph on -és -\emph default - záró pár pirosban fog megjelenni, a rendszer kilép TeX módból és kurzor - a két zárójel közé kerül. - Ezzel kényelmesebbé teszi olyan parancsok beírását, amiket a LyX nem ismeri. -\end_layout - -\begin_layout Standard -A LyX (egyenlőre) nem képes mindarra amire a LaTeX. - Valamely funkciókat jelenleg egyáltalán nem támogat, van ami működik, de - nem a WYSIWYM-nak megfelelően. - A TeX-mód segítségével kiaknázhatjuk a LaTeX összes lehetőségét, miközben - kényelmesen kihasználjuk a LyX által nyújtott szolgáltatásokat, mint pl. - WYSIWYM képletek, táblázatok és szerkesztés. - A LyX sohasem lesz képes az összes LaTeX csomag támogatására. - Azonban, ha beírja a -\family typewriter - -\backslash -usepackage{foo}-t -\family default - a preambulumba (lásd a -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:preamble" - -\end_inset - -. -\begin_inset space ~ -\end_inset - -szakaszt), olyan csomagot használ, amilyet csak akar – azonban nem lesz - WYSIWYM támogatás a csomag jellemzőihez. -\end_layout - -\begin_layout Subsection -LaTeX dokumentumok importálása – -\family typewriter -tex2lyx -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:relyx" - -\end_inset - -Importálhat LaTeX fájlokat a -\family sans -\bar under -F -\bar default -ájl \SpecialChar \menuseparator - -\bar under - I -\bar default -mportálás \SpecialChar \menuseparator - -\bar under - L -\bar default -aTeX -\family default - parancs segítségével. - Ez a -\family typewriter -tex2lyx -\family default - porgramot hívja meg, ami létre fogja hozni a -\family typewriter -valami.lyx -\family default - fájlt, a -\family typewriter -valami.tex -\family default --ből, ezután természetesen megnyitja a lyx fájlt. - Amennyiben az átalakítás valamilyen oknál fogva sikertelen, megpróbálhatja - a -\family typewriter -tex2lyx -\family default - futtatását a parancssorból valószínűleg szakszerűbb kapcsolókat használva. -\end_layout - -\begin_layout Standard - -\family typewriter -tex2lyx -\family default - a LaTeX jelentős részét le tudja fordítani, de mégsem mindent. - Amit nem ért meg azt TeX módban fogja hagyni, ezért miután lefordította - a fájlt -\family typewriter -tex2lyx -\family default --el, meg kell keresnie a piros szövegrészeket és ki kell azokat javítania. -\end_layout - -\begin_layout Standard -A -\family typewriter -tex2lyx -\family default --nek van saját kézikönyvoldala. - Érdemes elolvasnia ahhoz, hogy megtudja mely, LaTeX parancsokat és környezeteke -t nem támogatja a program, ismerteti a hibáit (és azt hogyan lehet megkerülni - őket), valamint miként használjunk bizonyos kapcsolókat. -\end_layout - -\begin_layout Subsection -LyX dokumentumok átalakítása LaTeX-re -\end_layout - -\begin_layout Standard -LyX dokumentumát lehet, hogy át akarja alakítani LaTeX formátumba. - Például, egy segítőnek vagy szerzőtársnak, aki nem rendelkezik LyX-el és - el szeretné olvasni a művét. - Ezt nagyon könnyedén meg tudja csinálni. - Válassza a -\family sans -\bar under -F -\bar default -ájl \SpecialChar \menuseparator - E -\bar under -x -\bar default -portálás \SpecialChar \menuseparator - -\bar under - L -\bar default -aTeX -\family default - menüpontot. - Ez létre fogja hozni a -\family typewriter -valami.tex -\family default - fájlt, a -\family typewriter -valami.lyx -\family default - fájlból, amit éppen szerkeszt. - A LyX minden esetben ideiglenes LaTeX fájlokat hoz létre, mindahányszor - megnézzük a dokumentumunk kimenetet vagy ki szeretnénk azt nyomtatni, emiatt - nagyon jó LaTeX fájl készítésben. -\end_layout - -\begin_layout Subsection -LaTeX Preambulum -\end_layout - -\begin_layout Subsubsection -Dokumentum osztály -\end_layout - -\begin_layout Standard -A -\family sans -\bar under -D -\bar default -okumentum \SpecialChar \menuseparator - -\bar under - B -\bar default -eállítások\SpecialChar \ldots{} - -\family default - dialógusablak tartalmazza mindazokat a beállításokat amiket a -\family typewriter - -\backslash -documentclass -\family default - paranccsal elérhetünk. - Itt lehet megváltoztatni a dokumentumosztály alap betűméretet valamint - a papírméretet is. - Megadhatja a -\family typewriter - -\backslash -documentclass -\family default - parancs további beállításait a -\family sans -\bar under -K -\bar default -apcsolók -\family default - mezőben. - -\end_layout - -\begin_layout Subsubsection -Egyéb szedési beállítások – Other Preamble Matter -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:preamble" - -\end_inset - - Amennyiben valamilyen speciális beállításokat használ a LaTeX fájl preambulumáb -an, azokról a LyX dokumentum esetén sem kell lemondania. - Válassza a -\family sans -\bar under -D -\bar default -okumentum \SpecialChar \menuseparator - -\bar under - B -\bar default -eállítások -\bar under - -\bar default -\SpecialChar \menuseparator - -\bar under - -\bar default -LaTeX -\begin_inset space ~ -\end_inset - -Preambulum -\family default --ot és írja be a megjelenő dialógusablakba. - Bármi amit begépel, (csak úgy mint TeX módban) azt a LaTeX közvetlen fogja - feldolgozni. -\end_layout - -\begin_layout Subsection -BibTeX -\end_layout - -\begin_layout Standard -A LyX támogatja a BibTeX használatát, amely segítségével irodalomjegyzék - adatbázisokat építhetünk fel, ezáltal azokat több dokumentumban is felhasználha -tjuk. - Válassza a -\bar under -B -\family sans -\bar default -eszúrás \SpecialChar \menuseparator - Listák -\begin_inset space ~ -\end_inset - -és -\begin_inset space ~ -\end_inset - -tartal -\bar under -o -\bar default -mjegyzék \SpecialChar \menuseparator - -\bar under - B -\bar default -ibTeX -\begin_inset space ~ -\end_inset - -irodalomjegyzék -\family default --et egy -\family typewriter -bib -\family default - fájl használatához. - Kattintson a megjelenő -\begin_inset Quotes pld -\end_inset - -BibTeX -\begin_inset space ~ -\end_inset - -által -\begin_inset space ~ -\end_inset - -létrehozott -\begin_inset space ~ -\end_inset - -irodalomjegyzék -\begin_inset Quotes prd -\end_inset - - gombra és megjelenik a -\family sans -BibTeX -\family default - dialgusablak. - Az -\family sans -Adatbázis -\family default - mezőbe írja be amit a -\family typewriter - -\backslash -bibliography{} -\family default - parancs zárójelébe írna -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Mint a LaTeX-nél, több irodalomjegyzék elemet is megadhatunk vesszővel elválaszt -va, szóközök nélkül -\end_layout - -\end_inset - -. - Hasonlóan, a -\family sans -Stílus -\family default - mezőbe írja be, amit a -\family typewriter - -\backslash -bibliographystyl{} -\family default - parancs zárójelébe írna. -\end_layout - -\begin_layout Standard -Miután mindezekkel elkészült, használhatja a hivatkozásokat bármelyik irodalomje -gyzék elemre a -\family sans -\bar under -B -\bar default -eszúrás \SpecialChar \menuseparator - -\bar under - I -\bar default -dézet -\family default -\SpecialChar \ldots{} - paranccsal (lásd -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:bibliographies" - -\end_inset - -. -\begin_inset space ~ -\end_inset - -szakasz). - A LyX fogja futtatni a BibTeX-et. - Az -\family sans -Idézet -\family default - dialógusablakban lévő felsorolás, tartalmazni fogja a -\family typewriter -bib -\family default - fájlban lévő összes irodalomjegyzék elemet. -\end_layout - -\begin_layout Section -Hibák! -\end_layout - -\begin_layout Standard -Néha, miközben feldolgozzuk a dokumentumunkat, hibák léphetnek fel, amelyeket - a LyX vagy a LaTeX nem ért meg. - Amikor ez történik, a hibák egy ablakban fognak megjelenni. - Rájuk kattintva a kurzor a megfelelő szövegrészhez ugrik, valamint egy - magyarázó ablakban megjelenik a LaTeX által adott hibaüzenet. - Azt azért meg kell jegyezni, hogy ezek a hibaüzenetek nem minden esetben - kielégítőek. -\end_layout - -\end_body -\end_document +#LyX 2.0.0svn created this file. For more info see http://www.lyx.org/ +\lyxformat 404 +\begin_document +\begin_header +\textclass book +\begin_preamble +% DO NOT ALTER THIS PREAMBLE!!! +% +%This preamble is designed to ensure that the document prints +% out as advertised. If you mess with this preamble, +% parts of the document may not print out as expected. If you +% have problems LaTeXing this file, please contact +% the documentation team +% email: lyx-docs@lists.lyx.org + +\usepackage{ifpdf} % part of the hyperref bundle +\ifpdf % if pdflatex is used + + % set fonts for nicer pdf view + \IfFileExists{lmodern.sty}{\usepackage{lmodern}}{} + +\fi % end if pdflatex is used + +% the pages of the TOC is numbered roman +% and a pdf-bookmark for the TOC is added +\let\myTOC\tableofcontents +\renewcommand\tableofcontents{% + \frontmatter + \pdfbookmark[1]{\contentsname}{} + \myTOC + \mainmatter } + +% redefine the \LyX macro for PDF bookmarks +\def\LyX{\texorpdfstring{% + L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@} + {LyX}} +\end_preamble +\use_default_options false +\maintain_unincluded_children false +\language magyar +\inputencoding auto +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\use_xetex false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics none +\default_output_format default +\output_sync 0 +\bibtex_command default +\index_command default +\paperfontsize 12 +\spacing single +\use_hyperref true +\pdf_title "The LyX Tutorial" +\pdf_author "LyX Team" +\pdf_subject "LyX-documentation Tutorial" +\pdf_keywords "LyX, documentation" +\pdf_bookmarks true +\pdf_bookmarksnumbered true +\pdf_bookmarksopen true +\pdf_bookmarksopenlevel 1 +\pdf_breaklinks false +\pdf_pdfborder false +\pdf_colorlinks true +\pdf_backref false +\pdf_pdfusetitle false +\pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false" +\papersize default +\use_geometry false +\use_amsmath 0 +\use_esint 0 +\use_mhchem 1 +\use_mathdots 1 +\cite_engine basic +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\use_refstyle 0 +\index Tárgymutató +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 2 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language polish +\papercolumns 1 +\papersides 2 +\paperpagestyle headings +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Title +A LyX tankönyv +\end_layout + +\begin_layout Author +Készítette: a LyX csapat +\begin_inset Foot +status open + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ezen dokumentum formális karbantartója: +\noun on +Amir Karger +\noun default +. + Amennyiben megjegyzése vagy hibajavítási javaslatai lennének, kérem küldje + őket a LyX dokumentációs levelezési listára +\family typewriter +lyx-docs@lists.lyx.org +\family default +, vagy közvetlenül a kérdéses dokumentum fordítójának. +\end_layout + +\end_inset + + +\begin_inset Newline newline +\end_inset + + +\shape italic +\size small +Fordította: Szőke Sándor +\end_layout + +\begin_layout Standard +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\end_layout + +\begin_layout Chapter +Bevezetés +\end_layout + +\begin_layout Section +Üdvözöljük a LyX-ben! +\end_layout + +\begin_layout Standard +Ez a tankönyv azok számára készült, akik még sohasem hallottak a LaTeX-ről + vagy nem ismerik azt elég jól. + De ne essen pánikba, nem kell megtanulnia a LaTeX-et ahhoz, hogy használni + tudja a LyX-et. + Tulajdonképpen a LyX lényege éppen ez: egy majdnem WYSIWYG +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Fordító megjegyzése: +\begin_inset Quotes pld +\end_inset + +What You See Is What You Get +\begin_inset Quotes prd +\end_inset + + – +\begin_inset Quotes pld +\end_inset + +azt kap amit lát +\begin_inset Quotes prd +\end_inset + + – a továbbiakban röviden WYSIWYG +\end_layout + +\end_inset + + kezelőfelület a LaTeX-hez. + Azonban van néhány dolog, amit érdemes megtanulnia a LyX eredményes használatáh +oz. +\end_layout + +\begin_layout Standard +Valószínűleg, sokan azért kezdték olvasni ezt a dokumentumot, mert megpróbáltak + több szóközt tenni a +\begin_inset Quotes pld +\end_inset + +. +\begin_inset Quotes prd +\end_inset + + után vagy 3 sort kihagyni két bekezdés között. + Sok-sok csalódás után be kellett látniuk, hogy valamiért ez nem sikerül. + Ráadásul azt is tapasztalhatják, hogy a legtöbb ügyes trükk, amit megszokhattak + az eddig használt szövegszerkesztőknél, az nem működik a LyX-ben. + Ez azért van, mert a korábban használt szövegszerkesztők engedték, hogy + manuálisan állítsa be a betűméreteket, kihagyásokat, oldaltöréseket, stb. + Szóval önnek kellett elvégezni a dokumentum megírásán kívül a szedését + is. + A LyX következetesen végzi el ön helyett a szöveg szedését és tördelését, + így önnek csak az írásának tartalmára kell koncentrálnia. +\end_layout + +\begin_layout Standard +Szóval tartson velünk és folytassa az olvasást. + Biztosíthatjuk önt, hogy ezen tankönyv végigolvasása határozottan jó befektetés + lesz. +\end_layout + +\begin_layout Section +Mire +\emph on +jó +\emph default + ez a Tankönyv, és mire +\emph on +nem +\emph default +? +\end_layout + +\begin_layout Standard +Mielőtt belefognánk ebbe a részbe, szeretnénk valamit tisztázni. + A +\emph on +Tankönyv +\emph default + a +\emph on +Bevezetés +\emph default +-ben vázolt jelöléseket használja. + Ha ön rögtön ezzel a dokumentummal kezdte az olvasást, javasoljuk először + olvassa el a +\emph on +Bevezetés +\emph default +-t. + Igen, most! +\end_layout + +\begin_layout Standard +Most, hogy már tudja melyik betűtípus mit jelent, nézzük meg mire is lesz + jó ez a +\emph on +Tankönyv +\emph default +. +\end_layout + +\begin_layout Subsection +A tankönyv lényegének elsajátítása +\end_layout + +\begin_layout Standard +Ez a tankönyv példákból és feladatokból áll. + Ahhoz, hogy az itt leírtakat elsajátítsa, az egész dokumentumot el kell + olvasnia. + Be kell gépelnie az összes apró idétlen dolgot, amit mi itt leírtunk és + ki kell próbálnia az összes példát ahhoz, hogy lássa működnek. + Ahhoz, hogy mindez kényelmesebb legyen ki is nyomtathatja a dokumentum + PostScript +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +textregistered +\end_layout + +\end_inset + + +\begin_inset space ~ +\end_inset + +változatát. +\end_layout + +\begin_layout Standard +Ha ön már ismeri a LaTeX-et valószínűleg gyorsabban tudja elolvasni a +\emph on +Tankönyv +\emph default +-et, mivel a legtöbb LyX-es dolog tulajdonképpen egy elrejtett LaTeX parancs. + Azonban a LyX-nek van néhány olyan egyéni sajátossága +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +vagy optimistábban +\begin_inset Quotes pld +\end_inset + +előnyös tulajdonsága +\begin_inset Quotes prd +\end_inset + + +\end_layout + +\end_inset + +, amit érdemes megtanulni. + Ha mégsem szeretné végigolvasni a teljes +\emph on +Tankönyv +\emph default +-et, mindenképpen javasoljuk, hogy nézze át az +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:latexusers" + +\end_inset + + +\begin_inset space ~ +\end_inset + +részt, amit a gyakorlott LaTeX felhasználóknak szántunk. +\end_layout + +\begin_layout Subsection +Ami +\emph on +nem fog +\emph default + megtalálni: +\end_layout + +\begin_layout Itemize +A LyX összes jellemzőjének részletes magyarázata. +\end_layout + +\begin_deeper +\begin_layout Standard +A +\emph on +Felhasználói kézikönyv +\emph default +-et szeretné kétszer? +\end_layout + +\begin_layout Standard +Komolyra fordítva a szót, mi most azt szeretnénk, hogy gyorsan el tudjon + indulni, a továbblépéshez ott a +\emph on +Felhasználói kézikönyv +\emph default +. + Ha megpróbálnánk leírni mindent itt is, ez a +\emph on +Tankönyv +\emph default + felesleges, túlságosan hosszú, valamint mindig elavult lenne. + E dokumentumnak az a feladata, hogy ízelítőt adjon a lehetőségekből. + Megfigyelheti, minden szakasz végén a +\begin_inset Quotes pld +\end_inset + +lásd a +\emph on +Felhasználói kézikönyv +\emph default +-ben +\begin_inset Quotes prd +\end_inset + + utalást. +\end_layout + +\end_deeper +\begin_layout Itemize +Részletes útmutató a LaTeX-hez +\end_layout + +\begin_deeper +\begin_layout Standard +Szükségtelen. + Ha ön kiváncsi arra, milyen ügyes trükköket lehet megcsinálni a LaTeX-el, + bármikor vehet egy jó LaTeX könyvet. + Sok jó könyvet talál a boltokban. + Nincs rá szükség, hogy feltaláljuk a spanyolviaszt\SpecialChar \ldots{} + +\end_layout + +\end_deeper +\begin_layout Standard +Hát bátor olvasó, ideje továbblépni. + Eljött az idő az első dokumentum elkészítéséhez\SpecialChar \ldots{} + +\end_layout + +\begin_layout Chapter +Kezdő lépések +\end_layout + +\begin_layout Section +Az első LyX dokumentuma +\end_layout + +\begin_layout Standard +Szuper, látom már készen áll arra, hogy elkezdjük. + Mielőtt folytatnánk van pár dolog, amit meg kell említenünk, ezek remélhetőleg + jobbá, hasznosabbá és szórakoztatóbbá teszik a +\emph on +Tankönyv +\emph default +-et. +\end_layout + +\begin_layout Standard +Mivel nem árasszuk el temérdek információval, a +\emph on +legfontosabb +\emph default + dolog, hogy megtalálja a többi súgó fájlt. + Szerencsére mindez nagyon egyszerű. + Indítsa el a LyX-et, majd válassza a +\emph on +Felhasználói kézikönyv +\emph default +-et a +\family sans +\bar under +S +\bar default +egítség +\family default + menüből. + Valószínűleg meg fogja nyitni a +\emph on +Tankönyv +\emph default +-et is (amennyiben nem a képernyőről olvasná). + Így bármikor, bármelyikbe bele tud nézni a dokumentumának készítése közben +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ezek jó példaként is szolgálnak, hogyan használja ki a LyX lehetőségeit. +\end_layout + +\end_inset + +. + Miután több dokumentumot is megnyitott, a +\family sans +Né +\bar under +z +\bar default +et +\family default + menüpontban vagy a dokumentum füleken választhatja ki, hogy éppen melyik + legyen az aktuális. + A +\emph on +Tankönyv +\emph default + nem részletez olyan dolgokat, amelyeket megtalál más LyX kézikönyvekben. + Ez kezdetben megnehezíti a dolgát, de a +\emph on +Tankönyv +\emph default + csak így lehet rövid, másrészt pedig rutint szerezhet ezen kézikönyvek + használatában, amivel később sok időt takaríthat meg. +\end_layout + +\begin_layout Standard +Ez a tankönyv feltételezi, hogy önnek a következő alkalmazások tökéletesen + működőképesek: LyX, LaTeX, +\family typewriter +xdvi +\family default + vagy egyéb dvi megjelenítő, +\family typewriter +dvips +\family default + vagy egyéb program, ami +\family typewriter +dvi +\family default +-ből PostScript +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +textregistered +\end_layout + +\end_inset + +-et készít, valamint egy működő nyomtató. + Ez elég sok feltételezés, de ha önnek ezek közül valamelyik is hiányzik + vagy nem működik, akkor önnek (vagy egy barátságos rendszergazdának) be + kell a felsoroltakat állítania. + Ezek telepítéséről és beállításáról más a kézikönyvekben lesz szó. + +\end_layout + +\begin_layout Standard +Végül megtalálja az +\family typewriter +example-raw.lyx +\family default + nevű fájlt, amit azért készítettünk, hogy gyakorolhassa a LyX használatát. + Ezt a fájlt egy a LyX-hez egyáltalán nem értő személy gépelte be. + Ahogy megismer egy-egy új LyX funkciót, javasoljuk javítsa ki a +\family typewriter +example-raw.lyx +\family default + fájl idevágó részeit. + Ez a fájl sok-sok megjegyzést is tartalmaz, amelyek az aktuális részek + kijavításához adnak némi tanácsot +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ezek egy sárga +\begin_inset Quotes pld +\end_inset + +megjegyzés +\begin_inset Quotes prd +\end_inset + + feliratú betétben találhatóak. + Az elolvasásukhoz csak rájuk kell kattintani. +\end_layout + +\end_inset + +. + Ha puskázni szeretne (vagy csak le szeretné ellenőrizni, amit csinált), + talál egy +\family typewriter +example_lyxified.lyx +\family default + nevű fájlt is, ami ugyanazt a szöveget tartalmazza, de azt egy a LyX-hez + profi szinten értő személy készítette. +\end_layout + +\begin_layout Standard +A példa fájlok az +\family typewriter +examples/ +\family default + könyvtárban találhatóak, amit a +\family sans +\bar under +F +\bar default +ájl\SpecialChar \menuseparator +Meg +\bar under +n +\bar default +yitás +\family default + menüből úgy érhet el, majd a +\family sans +\bar under +P +\bar default +éldák +\family default + feliratú gombra kattint. + Nyissa meg a nyers dokumentumot ( +\family typewriter +example-raw.lyx +\family default +), majd mentse el a +\family sans +\bar under +F +\bar default +ájl\SpecialChar \menuseparator +Men +\bar under +t +\bar default +és +\begin_inset space ~ +\end_inset + +másként\SpecialChar \ldots{} + +\family default + kiválasztásával a saját munkakönyvtárába, hogy dolgozhasson rajta. + Ahogy sorban javítgatja a fájlt, mindig nézze meg hogyan változik a nyomtatott + forma. + +\end_layout + +\begin_layout Standard +Egyébként az +\family typewriter +examples/ +\family default + könyvtár sok más példát is tartalmaz. + Amelyek különböző jópofa dolgokat mutatnak be. + Ezek főleg olyan dolgok, amelyek nem fértek bele (helyigényük miatt) a + dokumentációkba. + Miután elolvasta a +\emph on +Tankönyvet +\emph default + vagy összezavarodott hogyan kell megcsinálni bizonyos dolgokat, vessen + egy pillantást ezekre a példákra. +\end_layout + +\begin_layout Subsection +Gépelés, megnézés és nyomtatás +\end_layout + +\begin_layout Itemize +Nyisson meg egy fájlt a +\family sans +\bar under +F +\bar default +ájl\SpecialChar \menuseparator +Ú +\bar under +j +\family default +\bar default + menüponttal +\end_layout + +\begin_layout Itemize +Gépeljen be egy mondatot, például ezt: +\family typewriter +Ez az első LyX dokumentumom! +\end_layout + +\begin_layout Itemize +Mentse el a dokumentumot a +\family sans +\bar under +F +\bar default +ájl\SpecialChar \menuseparator +Men +\bar under +t +\bar default +és +\begin_inset space ~ +\end_inset + +másként\SpecialChar \ldots{} + +\family default + menüpont használatával +\end_layout + +\begin_layout Itemize +Futtassa a LaTeX-et a dvi fájl létrehozásához a +\family sans +Né +\bar under +z +\bar default +et\SpecialChar \menuseparator + +\bar under +D +\bar default +VI +\family default + menüpont választásával. + Mindenféle szöveget láthat abban a konzol ablakban ahonnan a +\family typewriter +lyx +\family default + parancsot futtatta. + Ezek a LaTeX üzenetei, amyelyeket most nyugodtan figyelmen kívül hagyhat. + Ezután a LyX el fogja indítani az +\family typewriter +xdvi +\family default + (vagy egy másik +\family typewriter +dvi +\family default + megjelenítő programot), ami egy új ablakban fog megjelenni és úgy látja + benne a művét, ahogy az a papíron is megjelenik +\begin_inset Foot +status open + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Időt spórolhat meg azzal, ha ezt az ablakot nyitva hagyja és később csak + a +\family sans +Né +\bar under +z +\bar default +et\SpecialChar \menuseparator +Fr +\bar under +i +\bar default +ssít\SpecialChar \menuseparator + +\bar under +D +\bar default +VI +\family default + menüpontra kattint, majd az +\family typewriter +xdvi +\family default + ablakára kattint miután a LaTeX lefutott. +\end_layout + +\end_inset + +. +\end_layout + +\begin_layout Itemize +Nyomtassa ki a fájlt a +\family sans +\bar under +F +\bar default +ájl\SpecialChar \menuseparator +Ny +\bar under +o +\bar default +mtatás\SpecialChar \ldots{} + +\family default + menüpont használatával. +\end_layout + +\begin_layout Standard +Gratulálunk! Ön elkészítette és kinyomtatta az első LyX dokumentumát. + Minden egyéb, amit a +\emph on +Tankönyv +\emph default + hátralévő részeben, a +\emph on +Felhasználói kézikönyv +\emph default +-ben, valamint a +\emph on +Haladó szolgáltatások +\emph default +-ban talál, csak apró részletek. +\end_layout + +\begin_layout Subsection +Alapműveletek +\end_layout + +\begin_layout Standard +A LyX természetesen képes azokra a dolgokra is, amiket megszokhatott akármelyik + szövegszerkesztőben. + Sortörést végez, automatikusan behúzza a bekezdéseket, stb. + Íme egy gyors leírás néhány alapvető dologról. +\end_layout + +\begin_layout Description +Visszavonás A LyX-ben az összes elvégzett művelet visszavonható egészen + a fájl megnyitásáig visszamenőleg, ami azt jelenti, hogy minden amit csinált, + azt vissza tudja vonni a +\family sans +Sz +\bar under +e +\bar default +rkesztés \SpecialChar \menuseparator + Visszavo +\bar under +n +\bar default +ás +\family default + menüpont ismételt kiválasztásával. + Ha túl sokat vont volna vissza, akkor a +\family sans +Sz +\bar under +e +\bar default +rkesztés \SpecialChar \menuseparator + +\family default + +\family sans +\bar under +M +\bar default +égis +\begin_inset space ~ +\end_inset + +alkalmaz +\family default + menüpontot kell használnia. +\end_layout + +\begin_deeper +\begin_layout Standard +Pillanatnyilag ez le van korlátozva 100 műveletig. + Valamint nem lehet +\emph on +mindent +\emph default + visszavonni, például a dokumentum formátumának változásait. + Ezek mind a LyX hibái. +\end_layout + +\end_deeper +\begin_layout Description +Kivágás/Beillesztés/Másolás Használja a +\family sans +Sz +\bar under +e +\bar default +rkesztés \SpecialChar \menuseparator + +\family default + +\family sans +Kivágás +\family default +, +\family sans +Sz +\bar under +e +\bar default +rkesztés \SpecialChar \menuseparator + Beillesztés +\family default + és a +\family sans +Sz +\bar under +e +\bar default +rkesztés\SpecialChar \menuseparator +Másolás +\family default + menüpontokat ezekhez a műveletekhez vagy automatikusan illessze be a kiválaszto +tt szöveget (más programokat is beleértve) a +\emph on +középső egérgomb +\emph default + használatával. +\end_layout + +\begin_layout Description +Keresés +\begin_inset space ~ +\end_inset + +és +\begin_inset space ~ +\end_inset + +Csere Használja a +\family sans +Sz +\bar under +e +\bar default +rkesztés\SpecialChar \menuseparator +Keresés +\begin_inset space ~ +\end_inset + +és +\begin_inset space ~ +\end_inset + + +\bar under +c +\bar default +sere +\family default + menüpontokat a dokumentumban való kereséshez. + A dialógusablakban használhatja a +\family sans +\bar under +K +\bar default +övetkező\SpecialChar \ldots{} + +\family default + gombot a kereséséhez, valamint a keresett szöveg kicseréléshez a +\family sans +Cse +\bar under +r +\bar default +él +\family default + gombot +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Becsukhatja a dialógusablakot amint befejezte a keresést, de nyitva is hagyhatja + ha az kényelmesebb. + A legtöbb dialógusablak – beleértve a +\family sans +Keresés +\begin_inset space ~ +\end_inset + +és +\begin_inset space ~ +\end_inset + +csere +\family default +, +\family sans +Tartalomjegyzék +\family default +, +\family sans +Formátum +\family default + ablakokat, valamint néhány képletszerkesztő ablakot is ideértve, képes + így működni. + Néhány dialógusablak mint például a +\family sans +\bar under +F +\bar default +ájl\SpecialChar \menuseparator +Meg +\bar under +n +\bar default +yitás\SpecialChar \ldots{} + +\family default + nem engedi, hogy bármit is írjon a dokumentumba amíg be nem csukja azt. + Bizonyosodjon meg minden esetben, milyen az éppen használt dialógusablak + fókusza vagy hajtson végre egy parancsot egy másik dialógusablakban. +\end_layout + +\end_inset + +. + A keresés lehet kis- és nagybetű érzékeny, beállíthatja csak egész szavak + keresését, valamint kereshet a dokumentumban visszafelé is. +\end_layout + +\begin_layout Description +Betűformátum +\emph on +Kiemelhet +\emph default + szöveget (ami általában dőlt szöveget eredményez), +\series bold +félkövérre +\series default + állíthatja azt vagy éppen +\noun on +Kiskapitális +\noun default +-ra (rendszerint személyek neveihez használjuk) módosíthatja a váltóbillentyűkke +l a +\family sans +Sz +\bar under +e +\bar default +rkesztés\SpecialChar \menuseparator + +\bar under +S +\bar default +zöveg +\begin_inset space ~ +\end_inset + +stílus\SpecialChar \ldots{} + +\family default + dialógusablakban. +\end_layout + +\begin_layout Description +Eszköztár Van egy eszközár (a menüsor alatt) amely a sűrűn használt parancsokat + tartalmazza, mint pl. + a +\family sans +Beillesztés +\family default + vagy +\family sans +Nyomtatás +\family default +. +\end_layout + +\begin_layout Standard +Természetesen még nem írt eleget ahhoz, hogy ezeket a funkciókat hasznosnak + találja. + Írás közben gyakorolja a használatukat, próbálja ki a visszavonást, beillesztés +t, stb. +\end_layout + +\begin_layout Subsection +WYSIWYM: Szóközök a LyX-ben +\end_layout + +\begin_layout Standard +Az egyik legnehezebb dolog kezdő LyX felhasználóknak, a szóközök és kihagyások + használatának elsajátítása. + Akárhányszor leütheti a +\family sans +Return +\family default + billentyűt, csak egyetlen üres sort tud létrehozni. + Ugyanígy, akárhányszor is üti le a +\family sans +Szóköz +\family default + billentyűt, csak egyetlen szóközt tud begépelni. + Egy új sort pedig egyáltalán nem tud szóközzel kezdeni. + A +\family sans +Tab +\family default + billentyű nem fogja odébb vinni a kurzort egy tabulátor pozícióval, sőt + egyáltalán +\emph on +nincsenek +\emph default + tabulátor pozíciók. + Sőt, nincs vonalzó sem a lap tetején, amin be tudná állítani a margókat + vagy a tabulátorokat. +\end_layout + +\begin_layout Standard +A legtöbb kereskedelmi szövegszerkesztő program a WYSIWYG filozófiára épül, + ami annyit tesz mint: +\begin_inset Quotes pld +\end_inset + +What You See Is What You Get +\begin_inset Quotes prd +\end_inset + + +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ford. + megj.: ALAKHŰ - +\begin_inset Quotes pld +\end_inset + +Amit Lát Azt Kapja HŰen +\begin_inset Quotes prd +\end_inset + + +\end_layout + +\end_inset + +, ellenben a LyX filozófiája: +\begin_inset Quotes pld +\end_inset + +What You See Is What You +\emph on +Mean +\emph default + +\begin_inset Quotes prd +\end_inset + + +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ford. + megj.: +\begin_inset Quotes pld +\end_inset + +Amit Lát Arra Gondol +\begin_inset Quotes prd +\end_inset + + +\end_layout + +\end_inset + +. + Ön begépeli a szöveget annak logikai felépítésében, majd a LyX elvégzi + a szöveg szedését ön helyett úgy, hogy a nyomtatott forma jól nézzen ki. + A +\family sans +Return +\family default + billentyű a bekezdéseket, a +\family sans +Szóköz +\family default + pedig a szavakat választja el egymástól, így ezekből nem állhat több egymás + mellett. + A +\family sans +Tab +\family default + billentyűnek nyelvtani jelentése nincs emiatt a LyX nem támogatja azt. + A LyX-et használva ön több időt fog a dokumentumának +\emph on +tartalmára +\emph default + fordítani, mint a +\emph on +kinézetére +\emph default +. + Olvassa el a +\emph on +Bevezetés +\emph default +-t újra, ha már nem emlékszik mi is az a WYSIWYM. + +\end_layout + +\begin_layout Standard +A LyX-ben számos lehetősége nyílik a szövegtördelés finomhangolására, mivel + lehet hogy a LyX nem pont úgy szed, ahogy azt ön +\emph on +akarja +\emph default +. + Erről bővebben a +\emph on +Felhasználói kézikönyv +\emph default +-ben olvashat. + Olvashat ott a vízszintes és függőleges kitöltésről, amelyek sokkal hasznosabba +k és rugalmasabbak, mint a szóköz vagy üres sorok használata. + Egyebek között megtalálja a betűméretek, betűstílusok, bekezdések, manuális + igazítások használatára vonatkozó leírásokat is. + Az alapötlet az, hogy a tartalomra koncentrálva készíti el a dokumentumát, + majd miután elkészült végzi el a finomhangolást. + Egy hagyományos szövegszerkesztőben viszont önnek egyszerre kell a dokumentumát + írnia és formáznia. +\end_layout + +\begin_layout Section +Környezetek +\end_layout + +\begin_layout Standard +A dokumentum különböző részeinek különböző céljai vannak; ezeket +\emph on +környezeteknek +\emph default + nevezzük. + A dokumentum legnagyobb része normál szöveg. + Szakasz (fejezet, alszakasz, stb.) címek tudatják az olvasóval, hogy egy + új téma vagy altéma tárgyalása következik. + Bizonyos dokumentum típusoknak különleges környezetei vannak. + Egy folyóirat cikknek van egy kivonata és egy címe, egy levélnél ezek nincsenek +, ellenben valószinűleg van neki egy olyan környezete, ahová az író címét + írhatjuk. +\end_layout + +\begin_layout Standard +A környezetek, a +\begin_inset Quotes pld +\end_inset + +What You See Is What You Mean +\begin_inset Quotes prd +\end_inset + + filozófia és a LyX szerves részei. + Egy adott környezet bizonyos betűtípust, betűméretet, behúzást, sortávolságot + és még sok mindent jelenthet. + Ez a probléma fokozódik, mivel a végleges formázás egy adott környezetnél + változhat: egy folyóiratnál a szakaszcímekhez félkövér 18 pont magas középre + igazított betűk szükségesek, amíg a másiknál: balraigazított dőlt, 15 pont + magas. + Különböző nyelveknél a behúzás szabályai is mások lehetnek, az irodalomjegyzék + formátuma is nagyon eltérő lehet. + A LyX segítségével elkerülheti ezen formázási szabályok megtanulását. + +\end_layout + +\begin_layout Standard +A +\family sans +Környezetek +\family default + legördülőlistát az eszköztár bal szélén találjuk (rögtön a +\family sans +\bar under +F +\bar default +ájl +\family default + menü alatt). + Megmutatja milyen környezetben dolgozik jelenleg. + Mialatt az első dokumentumát készítette, azt mutatta: +\begin_inset Quotes pld +\end_inset + +Normál szöveg +\begin_inset Quotes prd +\end_inset + +, ami az alapértelmezett szövegkörnyezet. + Most sok környezetet fogja beépíteni új dokumentumába, ezáltal megismeri + működésük módját. + Mindezt, a +\family sans +Környezetek +\family default + menüvel fogja megcsinálni, amit a +\begin_inset Quotes pld +\end_inset + +le nyíl +\begin_inset Quotes prd +\end_inset + +-ra kattintással tud kinyitni, a +\family sans +Környezetek +\family default + menü jobb oldalán. +\end_layout + +\begin_layout Subsection +Szakaszok és alszakaszok +\end_layout + +\begin_layout Standard +Írja be a +\family typewriter +Bevezetés +\family default + szót LyX dokumentumának első sorába és válassza ki a +\family sans +Szakasz +\family default +-t a +\family sans +Környezetek +\family default + menüből +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Nem kell +\emph on +kijelölnie +\emph default + a sort. + Amennyiben nincs semmi sem kijelölve, a LyX az aktuális bekezdést módosítja + a kiválasztott környezetre. + Több bekezdés környezetét is módosíthatjuk, ha kijelöljük őket a környezetválas +ztás előtt. +\end_layout + +\end_inset + +. + Bizonyosodjon meg abban, hogy a +\family sans +Szakaszt +\family default + használája és +\emph on +nem +\emph default + a +\family sans +Szakasz* +\family default +-ot, amit hamarosan bemutatunk. + A LyX beszámozza a szakaszt +\begin_inset Quotes pld +\end_inset + +1. +\begin_inset Quotes prd +\end_inset + +-nek, valamint a szakaszcímet nagyobb betűkészlettel fogja megjeleníteni. + Most üsse le a +\family sans +Return +\family default +-t. + Figyelje meg, hogy a +\family sans +Környezet +\family default + menü a +\begin_inset Quotes pld +\end_inset + +Szakasz +\begin_inset Quotes prd +\end_inset + +-ról visszavált +\begin_inset Quotes pld +\end_inset + +Normál szöveg +\begin_inset Quotes prd +\end_inset + +-re. + A szakaszcímek, ahogy a legtöbb egyéb környezet is, a +\family sans +Return +\family default + következő leütéséig tartanak. + Most pedig írja be a bevezetés szövegét: +\end_layout + +\begin_layout LyX-Code + +\family typewriter +Ez a bevezetés az első LyX dokumentumomhoz. +\end_layout + +\begin_layout Standard +Üsse le megint a +\family sans +Return +\family default +-t és válassza ki a +\family sans +Szakasz +\family default +-t a +\family sans +Környezetek +\family default + menüből. + A LyX kiírja, hogy +\begin_inset Quotes pld +\end_inset + +2. +\begin_inset Quotes prd +\end_inset + + és várja, hogy megadja a szakasz címét. + Írja be +\family typewriter +További dolgok +\family default + és azt fogja látni, hogy a szöveg egy címként fog megjelenni. +\end_layout + +\begin_layout Standard +Ez egyre jobb. + Menjen az első szakasz végére (közvetlenül az +\begin_inset Quotes pld +\end_inset + +első LyX dokumentumom +\begin_inset Quotes prd +\end_inset + + után) és üsse le újra a +\family sans +Return +\family default +-t, valamint válassza ki újra a +\family sans +Szakasz +\family default +-t a +\family sans +környezetek +\family default + közül. + A LyX kiírja hogy +\begin_inset Quotes pld +\end_inset + +2. +\begin_inset Quotes prd +\end_inset + + és várja, hogy megadja a szakasz címét. + Írja be +\family typewriter +Erről a dokumentumról +\family default +. + A +\begin_inset Quotes pld +\end_inset + +További dolgok +\begin_inset Quotes prd +\end_inset + + szakasz, ami az előbb még a 2. +\begin_inset space ~ +\end_inset + +szakasz volt, automatikusan átszámozódott 3. +\begin_inset space ~ +\end_inset + +szakasszá! A valódi WYSIWYM filozófiában, önnek csak be kell azonosítania + a szakaszícmeket alkotó szöveget, a LyX fog gondoskodni a szakaszok számozásáró +l és a szakaszcímek szedéséről. +\end_layout + +\begin_layout Standard +Üsse le a +\family sans +Return +\family default +-t a +\family sans +Normál +\begin_inset space ~ +\end_inset + +szöveg +\family default +-hez való visszatéréshez és írja be a következő öt sort: +\end_layout + +\begin_layout LyX-Code + +\family typewriter +Szakaszok és alszakaszok leírása lentebb. +\end_layout + +\begin_layout LyX-Code + +\family typewriter +Szakasz leírás +\end_layout + +\begin_layout LyX-Code + +\family typewriter +Szakaszok nagyobbak, mint az alszakaszok. +\end_layout + +\begin_layout LyX-Code + +\family typewriter +Alszakasz leírás +\end_layout + +\begin_layout LyX-Code + +\family typewriter +Az alszakaszok kisebbek, mint a szakaszok. +\end_layout + +\begin_layout Standard +Kattintson a második sorra és válassza az +\family sans +Alszakasz +\family default +-t a +\family sans +Környezetek +\family default + menüből. + A LyX beszámozza azt +\begin_inset Quotes pld +\end_inset + +2.1 +\begin_inset Quotes prd +\end_inset + +-re, ekkor a LyX olyan betűkészletűre módosítja a sort, amit nagyobb, mint + a normál szöveg, de kisebb mint a szakaszcím. + Váloztassa át a negyedik sort is +\family sans +Alszakasz +\family default +-ra. + Ahogy várta, a LyX automatikusan beszámozta azt +\begin_inset Quotes pld +\end_inset + +2.2 +\begin_inset Quotes prd +\end_inset + +-re. + Ha beszúr egy másik szakaszt a 2. +\begin_inset space ~ +\end_inset + +szakasz elé, akkor az átszámozódik 3. +\begin_inset space ~ +\end_inset + +szakasszá és az alszakaszok átszámozódnak +\begin_inset Quotes pld +\end_inset + +3.1 +\begin_inset Quotes prd +\end_inset + + és +\begin_inset Quotes pld +\end_inset + +3.2 +\begin_inset Quotes prd +\end_inset + +-re. + +\end_layout + +\begin_layout Standard +A szakaszra bontás további szintjei tartlmazzák az +\family sans +Alalszakasz +\family default +-t, a +\family sans +Bekezdés +\family default +-t és az +\family sans +Albekezdés +\family default +-t. + Mindjárt játszhat velük egy keveset. + Észreveheti, hogy a bekezdés és az albekezdés címek nem számozódnak alapból, + és az albekezdések be vannak húzva. + A +\emph on +Felhasználói kézikönyv +\emph default +ben megtalálja, hogyan változtasson ezen. + A +\family sans +Fejezet +\family default + cím, a szakaszra tördelés legmagasabb szintje a +\family sans +Szakasz +\family default + után, de csak bizonyos típusú (szöveg osztályú) LyX dokumentumoknál használható + (Lásd +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:textclasses" + +\end_inset + +. +\begin_inset space ~ +\end_inset + +szakasz). +\end_layout + +\begin_layout Standard +Végül szókságe lehet olyan szakaszokra vagy alszakaszokra amelyek nincsenek + számozva. + Erre a célra is vannak környezetek. + Ha megváltoztatja az egyik szakasz címének környezetét +\family sans +Szakasz* +\family default +-ra (lehet hogy görgetnie kell a +\family sans +Környezetek +\family default + menüt hogy megtalálja), a LyX azonos betűméretet fog használni, de nem + fogja megszámozni azt. + Következetesen vannak +\begin_inset Quotes pld +\end_inset + +csillagos +\begin_inset Quotes prd +\end_inset + + környezetek az +\family sans +Alaszakasz +\family default +-okhoz és az +\family sans +Alalszakasz +\family default +-okhoz is. + Próbálja megváltoztatni a szakaszait a csillagos környezetre és figyelje + meg hogyan változik a számozás. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: javítsa ki a szakasz és alszakasz címeket a +\family typewriter +example_raw.lyx +\family default + fájban. + +\end_layout + +\begin_layout Subsection +Felsorolások és részlisták +\end_layout + +\begin_layout Standard +A LyX több különböző környezettel rendelkezik felsorolások szedéséhez. + Ezek a különböző környezetek mentesek a +\family sans +Tab +\family default + számtalan leütésétől. + Miközben a vázlatot készíti vagy amikor átszámozza a felsorolást, mert + valahova középre beszúrt egy új elemet. + A szerkesztés közben a felsorolás tartalmára koncentrálhat +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Igen, azt hiszem eléggi kihangsúlyoztuk ezt a +\emph on +Bevezetés +\emph default +ben. + De ez a +\emph on +fő +\emph default +filozófiája a LyX-nek, ezért kérjük bocsásson meg nekünk. +\end_layout + +\end_inset + +. + Különböző dokumentumtípusok különböző felsorolás-típusokat igényelnek: +\end_layout + +\begin_layout Itemize +Egy prezentáció használhatja a +\family sans +Felsorolás +\family default + környezetet jelölt listaként, különböző dolgok leírásához. +\end_layout + +\begin_layout Itemize +Egy vázlathoz inkább a +\family sans +Számozott felsorolás +\family default + környezetet használjuk (valamint betűkkel jelölt allistákat). +\end_layout + +\begin_layout Itemize +Néhány szofver csomagot bemutató dokumentum a +\family sans +Leírás +\family default + környezetet használhatja. + Ahol a lista minden eleme félkövérrel szedetten jelenik meg. +\end_layout + +\begin_layout Itemize +A +\family sans +Lista +\family default + környezet – nincs a LaTeX-ben – egy kicsit különbözik a +\family sans +Leírás +\family default +tól. +\end_layout + +\begin_layout Standard +Készítsünk egy listát arról, hogy a LyX miért jobb, mint a többi szövegszerkeszt +ő. + A dokumentumában valahol írja be: +\end_layout + +\begin_layout Standard + +\family typewriter +A LyX jobb, mint a többi szövegszerkesztő, mert: +\end_layout + +\begin_layout Standard +és üsse le a +\family sans +Return +\family default +-t. + Most válassza a +\family sans +Felsorolás +\family default +t a +\family sans +Környezet +\family default +ek menüből. + A LyX a sor elejére tesz egy +\begin_inset Quotes pld +\end_inset + +jelölőt +\begin_inset Quotes prd +\end_inset + + (ami most egy csillag, de a kimenetben egy kerek körré lesz átalakítva). + Írja be az okokat: +\end_layout + +\begin_layout Standard + +\family typewriter +A szövegszedést elvégzi helyettünk +\end_layout + +\begin_layout Standard + +\family typewriter +A képletszerkesztő ALAKHŰ +\end_layout + +\begin_layout Standard + +\family typewriter +Könnyű felsorolásokat készíteni +\end_layout + +\begin_layout Standard +A felsorolások, nem úgy mint a címek, nem érnek véget amit leüti a +\family sans +Return +\family default + billentyűt. + Helyette, a LyX úgy gondolja, hogy a következő elemet fogja begépelni. + Ezért a fenti eredménye, egy három soros felsorolás. + Amennyiben, több mint egy bekezdést szeretne egy +\emph on +elemen +\emph default + belül, használhatja a +\family sans +Védett +\begin_inset space ~ +\end_inset + +Sortörés +\family default +-t, amit a +\family sans +C-Return +\family default + leütésével érhet el. + Ahhoz, hogy a felsorolásból kikerüljön ki kell választania a +\family sans +Normál +\begin_inset space ~ +\end_inset + +szöveg +\family default + környezetet (vagy használja a +\family sans +M-p +\begin_inset space ~ +\end_inset + +s +\family default + billentyűkombinációt). +\end_layout + +\begin_layout Standard +Kapott egy gyönyörű felsorolást. + Lehet hogy futtatni akarja a LaTeX-et hogy meggyőződjöm arról, hogyan néz + ki mindez nyomtatásban. + De mi lenne, ha meg szeretné számozni az okokat? Nos, csak jelölje ki a + teljes felsorolást +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Az első felsorolás jelét nem tudja kijelölni, kivéve ha kijelöli az +\emph on +előző +\emph default + bekezdést is, amit valószinűleg nem akar. + Hasonlóan, nem tudja kiválasztani az első szakaszcím számát sem. + De nem aggódjon emiatt! +\end_layout + +\end_inset + + és válassza a +\family sans +Számozott +\begin_inset space ~ +\end_inset + +felsorolás +\family default +-t a +\family sans +Környezet +\family default +ek menüből. + Hoppá! Ahogy korábban említettük, amint hozzáad vagy töröl egy elemet a + LyX azonnal korrigálni fogja a számozást. +\end_layout + +\begin_layout Standard +Amíg a felsorolás ki van jelölve, átválthat a másik két felsorolás környezetre + is, ahhoz hogy megtudja hogyan néznek ki: +\family sans +Leírás +\family default + és +\family sans +Lista +\family default +. + Ebben a két környezetben, minden listaelem két részből áll: egy kifejezés, + ez az első szó, és annak definíciója, a bekezdés többi része (a +\family sans +Return +\family default + leütéséig). + A kifejezés szedhető felkövérre ( +\family sans +Leírás +\family default +) vagy csak el van választva egy +\begin_inset Quotes pld +\end_inset + +Tabulátor +\begin_inset Quotes prd +\end_inset + +-ral +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +De ez a tabulátor a leghosszabb kifejezés hosszúságára lesz méretezve, nem + pedig a patetikus, merev, változtathatatlan írógép +\family sans +Tabulátor +\family default +-ra +\end_layout + +\end_inset + + (Lista) többi részétől. + Ha több mint egy szót szeretne a kifejezésben, a szavakat a +\family sans +Védett +\begin_inset space ~ +\end_inset + +szóköz +\family default +zel válassza el . +\end_layout + +\begin_layout Standard + +\series bold +Feladat: +\series default + alakítsa át a listát az +\family typewriter +example_raw.lyx +\family default + fájlban. +\end_layout + +\begin_layout Standard +Egymásba is tud ágyazni különböző felsorolásokat, sokféle variációban. + A nyilvánvaló példa erre vázlatok készítése. + A számozott listáknak és felsorolásoknak különböző jelölésrendszere lehet + az allistákhoz. + Lásd a +\emph on +Felhasználói készikönyv +\emph default +et a különböző felsorolások részleteiért, és az egymásba ágyazás példái + miatt is. +\end_layout + +\begin_layout Subsection +Egyéb környezetek: Vers, Idézetek és a többi +\end_layout + +\begin_layout Standard +Két környezet is a rendelkezésre áll, hogy az idézeteket elkülönítsük a + környező szövegtől. + +\family sans +Idézet +\family default + a rövid idézetekhez és +\family sans +Idézet +\begin_inset space ~ +\end_inset + +(hosszú) +\family default + a hosszabbakhoz. + Programlistákhoz (a +\family sans +LyX-kód +\family default + környezetet használtuk a +\emph on +Bevezetés +\emph default +ben, a hosszabb gépelési példákban) +\family typewriter +írógép +\family default + betűkészlettel íródtak; ez az egyetlen környezet a LyX-ben, ahol egymás + mellé le lehet ütni több szóközt is, amivel úgye pozícionálni lehet. + De készíthet költeményt is a +\family sans +Vers +\family default + stílussal, a +\family sans +Return +\family default +-t használva a versszakok elválasztásához és a +\family sans +C-Return +\family default +-t használva a verszakon belüli sorok elkülönítéséhez. + Lásd a +\emph on +Felhasználói kézikönyv +\emph default +et az elérhető környezetek kimerítő részletezéséhez. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: Javítsa a +\family sans +Idézet +\family default +, +\family sans +LyX-kód +\family default + és +\family sans +Vers +\family default + részeket a +\family typewriter +example_raw.lyx +\family default + fájlban. +\end_layout + +\begin_layout Chapter +Dokumentumok készítése +\end_layout + +\begin_layout Standard +Az előző fejezet segítségével remélhetőleg már el tud kezdeni írni a LyX-el. + Bemutattuk a LyX elemi szerkesztési műveleteit, csak úgy, mint a környezetek + használatának hatékonyságát. + Habár a legtöbb ember, aki a LyX-et használja, a következő típusokat dokumentum + szeretné elkészíteni: publikációk, cikkek, könyvek, kézikönyvek vagy levelek. + Ebben a fejezetben az olvasó a szavak beírásától eljut egy teljes dokumentum + elkészítéséig. + Be fogjuk mutatni a szövegosztályokat, amelyek segítségével különböző típusú + dokumentumokat készíthetünk. + Ezentúl, megmutatunk további sok apróságot, amelyek a szöveget dokumentummá + teszik, mint pl. + címek, lábjegyzetek, kereszt-referenciák, irodalomjegyzék, valamint tartalomjeg +yzék. +\end_layout + +\begin_layout Section +Szövegosztályok +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:textclasses" + +\end_inset + + +\end_layout + +\begin_layout Standard +A különböző típusú dokumentumokat különbözőképpen kell elkészíteni. + Például, a könyveket rendszerint kétoldalasan nyomtatjuk, amíg a cikkeket + egyoldalasan. + Továbbá, sokféle dokumentum tartalmaz különleges környezeteket, pl. + levelek tartalmazzák a küldő címét és aláírását, amit persze nem használunk + egy könyv esetében. + A LyX +\emph on +szövegosztály +\emph default + +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +LaTeX felhasználóknak: ez megegyezik a LaTeX dokumentum osztállyal +\end_layout + +\end_inset + + tartja kézben, a sok dokumentumtípus miatt meglévő különbséget. + Ezt a +\emph on +Kézikönyv +\emph default +et, a +\family sans +Book +\family default + szövegosztállyal készítettük. + A szövegosztályok, a WYSIWYM filozófia szerves részei. + Ezek közlik a LyX-el, hogyan kell szednie a dokumentumot, amit önnek nem + kell észben tartania. +\end_layout + +\begin_layout Standard +Az ön dokumentuma valószínűleg az +\family sans +Article +\family default + +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ford. + megj.: Ez megfelel az +\begin_inset Quotes pld +\end_inset + +Újságcikk +\begin_inset Quotes prd +\end_inset + + szövegosztálynak. +\end_layout + +\end_inset + + szövegosztályban +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Rendszerint ez, az alapértelmezett szövegosztály +\end_layout + +\end_inset + + fog elkészülni. + Próbáljon meg átváltani egy másik osztályra (a +\family sans +\bar under +D +\bar default +okumentum\SpecialChar \menuseparator + +\bar under +B +\bar default +eállítások +\family default +\SpecialChar \ldots{} + dialógusban), a különböző szedés megismeréséhez. + Amennnyiben módosítja a dokumentumának a szövegosztályát +\family sans +Book +\family default +-ra +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ford. + megj.: jelentése +\begin_inset Quotes pld +\end_inset + +Könyv +\begin_inset Quotes prd +\end_inset + + +\end_layout + +\end_inset + +, és megnézi a +\family sans +Környezet +\family default + menüt. + Azt fogja látni, hogy a használható környezetek többnyire azonosak. + Habár, mostmár használhatja a +\family sans +Fejezet +\family default + környezetet is. + Amennyiben bizonytalan, hogy melyik szövegosztályban, milyen környezeteket + használhat, ellenőrizze azt a +\family sans +Környezet +\family default + menüben. +\end_layout + +\begin_layout Standard +Betűméretek, egy- vagy kéthasábos nyomtatás vagy oldalcímek, csak néhány + apróság amiben az egyes folyóiratok szedési módja különbözik. + Ahogy a számítógépek korába léptünk, a folyóiratok elkezdték a cikkeket + elektromos formában is elfogadni, LaTeX +\begin_inset Quotes pld +\end_inset + +stílus fájlokat +\begin_inset Quotes prd +\end_inset + + készítve, ezáltal a szerzők a megfelelő formában tudják elkészíteni a cikküket. + A LyX támogatja ezt a formát. + A LyX például támogatja az American Mathematics Society folyóirat szedését + (és extra környezeteit) az +\family sans +Article +\begin_inset space ~ +\end_inset + +(AMS) +\family default + szövegosztály segítségével. +\end_layout + +\begin_layout Standard +Íme egy gyors referencia néhány szövegosztályról. + Lásd a +\emph on +Speciális Dokumentum osztályok +\emph default + szakaszt a +\emph on +Haladó szolgáltatások +\emph default + kézikönyvben a további részletekért. +\end_layout + +\begin_layout Standard +\align center +\begin_inset Tabular + + + + + + +\begin_inset Text + +\begin_layout Plain Layout +Név +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +Megjegyzés +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +article +\begin_inset Foot +status open + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ford.megj.: Jelentése +\begin_inset Quotes pld +\end_inset + +Újságcikk +\begin_inset Quotes prd +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +egyoldalas, nincsenek fejezetek +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +article (AMS) +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +elrendezés és környezetek az American Math Society folyóirathoz +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +report +\begin_inset Foot +status open + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ford.megj.: Jelentése +\begin_inset Quotes pld +\end_inset + +Jelentés +\begin_inset Quotes prd +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +kétoldalas, hosszabb mint az article +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +book +\begin_inset Foot +status open + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ford.megj.: Jelentése +\begin_inset Quotes pld +\end_inset + +Könyv +\begin_inset Quotes prd +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +report + elő- és utószó +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +slides +\begin_inset Foot +status open + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ford.megj.: Jelentése +\begin_inset Quotes pld +\end_inset + +Prezentáció +\begin_inset Quotes prd +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +írásvetítő fóliákhoz (tartalmazza a FoilTeX-et) +\end_layout + +\end_inset + + + + +\begin_inset Text + +\begin_layout Plain Layout +letter +\begin_inset Foot +status open + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ford.megj.: Jelentése +\begin_inset Quotes pld +\end_inset + +Levél +\begin_inset Quotes prd +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset Text + +\begin_layout Plain Layout +sok extra környezet címhez, aláíráshoz\SpecialChar \ldots{} + +\end_layout + +\end_inset + + + + +\end_inset + + +\end_layout + +\begin_layout Section +Sablonok: levél írása +\end_layout + +\begin_layout Standard +Az egyik legnépszerűbb szövegosztály a +\family sans +Levél +\family default +. + El lehet kezdeni egy levél írását, azzal hogy létrehozunk egy új fájlt, + és kiválasztjuk a +\family sans +Levél +\family default + szövegosztályt a +\family sans +\bar under +D +\bar default +okumentum \SpecialChar \menuseparator + +\family default + +\family sans +\bar under +B +\bar default +eállítások +\family default + dialógus-ablakban. + Bár ez a legkézenfekvőbb módja a levélírásnak azért, igényel egy kis többlet + munkát. + Ahányszor csak írni szeretne egy üzleti levelet, mindig bele fogja írni + a saját címét valamint a címzettét, a levél törzsét, aláírás helyét, stb. + Ezért a LyX rendelkezik egy +\emph on +sablonnal +\emph default +, amely tartalmaz egy minta levelet, amelynek minden részét egyszerűen csak + felül kell írnia, ahányszor csak elkezd egy levelet. +\end_layout + +\begin_layout Standard +Válassza a +\family sans +\bar under +F +\bar default +ájl \SpecialChar \menuseparator + Új, sab +\bar under +l +\bar default +on alapján\SpecialChar \ldots{} + +\family default +menüpontot. + Válassza ki a +\family typewriter +letter.lyx +\family default +-et a sablonként. + Mentse el és nyomtassa ki a fájlt ahhoz, hogy az egyes környezetek szedését + megértse. +\end_layout + +\begin_layout Standard +Amennyiben megfigyeli a +\family sans +Környezetek +\family default + menüt, találni fog különböző környezeteket, mint pl. + a +\family sans +Címem +\family default + környezet, ami nem létezik semmilyen más szövegosztályban sem. + A többi mint pl. + az +\family sans +Leírás +\family default + már ismerősek. + Ismerkedjem meg az egyek környezetekkel, és azzal hogyan működnek. + Fel fog figyelni arra, hogy pl az +\family sans +Aláírás +\family default + környezet tartalmazza pirossal a +\begin_inset Quotes pld +\end_inset + +Signature: +\begin_inset Quotes prd +\end_inset + + szót, az aláírás tényleges szövege előtt. + Ez a szó nem jelenik meg a nyomtatásban (ha megpróbálja kinyomtatni a levelet), + mindössze tudatja önnel hova kell írnia az aláírást. + Figyelje meg lényegtelen, hogy a fájlban hol helyezkedik el az +\family sans +Aláírás +\family default + sor. + Emlékezzen a LyX WYSIWYM egy program, bárhol elhelyezheti az +\family sans +Aláírás +\family default + környezetet, a LyX tudja mit hová kell raknia, az aláírásnak pontosan a + levél végére kell kerülnie! +\end_layout + +\begin_layout Standard +A sablon egy normális LyX fájl. + Ez azt jelenti, hogy beleírhatja a saját címét és aláírását és elmentheti + a fájlt sablonként. + Mostantól, bármikor használhatja az új sablonját levél írásához, használja + a sablon hogy idő takarítson meg. + Mi itt most nem adunk egy +\begin_inset Quotes pld +\end_inset + +feladatot +\begin_inset Quotes prd +\end_inset + +, csak írjon egy levelet valakinek +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Egy figyelmeztetés, arra az esetre ha sablonból dolgozik. + Amennyiben egy környezet minden szövegét kitörli – például a +\family sans +Címem +\family default + mező teljes tartalmát kitörli, hogy beleírja a sajátját – és a kurzort + elmozdítja szöveg beírása néllkül, a környezet eltünhet. + Ez azért van, mert egyes környezetek létének feltétele a tartalmuk. + A visszaállításhoz csak válassza ki a környezetet a +\family sans +Környezetek +\family default + menüből. +\end_layout + +\end_inset + +! +\end_layout + +\begin_layout Standard +A sablonokkal nagyon sok időt takaríthatunk meg, ezért javasoljuk hogy használja + őket amikor csak tudja. + Továbbá használatukkal könyebbé tehetjük a komplexebb szövegoszályok megismerés +ét. + Végül hasznos lehet annak, aki sok számítógépre állítja be a LyX-et olyanoknak, + akik nem nagyon értenek a számítógéphez. + Amikor ők először tanulják a LyX-et sokkal kevésbé fognak megrémülni, amennyibe +n pl. + a levélsablon már a cégüknek megfelelően be van állítva. +\end_layout + +\begin_layout Section +Dokumentum címek +\end_layout + +\begin_layout Standard +A LyX (mint a LaTeX) a címet – ami a dokumentum címét, a szerző nevét, a + dátumot és még a kivonatot is tartalmazza – a dokumentum egy különálló + részének tekinti. +\end_layout + +\begin_layout Standard +Térjen vissza a +\family typewriter +newfile.lyx +\family default + dokumentumhoz és bizonyosodjon meg arról, hogy az az +\family sans +Article +\family default + szövegosztályt használja +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Most már nem a levelet kell használnia. + Mivel a +\family sans +Levél +\family default + szövegosztály nem engedi meg a címek használatát. +\end_layout + +\end_inset + +. + Írja be a címet az első sorba és módosítas a környezetet +\family sans +Cím +\family default +-re. + A következő sorba írja be a nevét és váltson a +\family sans +Szerző +\family default + környezetre. + A következő sorba írja be a dátumot, a +\family sans +Dátum +\family default + környezetet használatáva. + Írjon egy vagy két bekezdést, összegezve a dokumentum tartalmát a +\family sans +Kivonat +\family default + környezet használatával. + Most pedig nézze meg, hogyan néz ki mindez nyomtatásban. + Ha a dokumentum formátumát átváltja +\family sans +Book +\family default +-ra, egy különálló címlapot fog kapni, mint ezen tankönyv első oldala. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: Javítsa ki a címet, a dátumot és a szerzőt a +\family typewriter +example_raw.lyx +\family default + dokumentumban. +\end_layout + +\begin_layout Section +Címkék és kereszt referenciák +\end_layout + +\begin_layout Standard +Felcímkézheti a dokumentumának egy szakaszát (vagy alszakaszát, ritkábban + valamely szövegrészét). + Amint ezt megteszi, a dokumentum bármely részében hivatkozhat rá a keresztrefer +enciák segítségével. + Hivatkozhat a szakasz számára, vagy arra, hogy melyik oldalon található. + Csak úgy mint a szakaszokról és a lábjegyzetekről, a LyX gondoskodik a + kereszthivatkozásokról is. + Automatikus címkék és keresztreferenciák a LyX (és persze a LaTeX) egyik + legnagyobb előnye a konvencionális szövegszerkesztőkkel szemben. +\end_layout + +\begin_layout Subsection* +Az első címkém +\end_layout + +\begin_layout Standard +Jelöljük meg a második szakaszunkat, amelynek címe +\begin_inset Quotes pld +\end_inset + +Erről a dokumentumról +\begin_inset Quotes prd +\end_inset + +. + Kattintson a szakaszcím sorának a végére és válassza ki a +\family sans +\bar under +B +\bar default +eszúrás \SpecialChar \menuseparator + Cí +\bar under +m +\bar default +ke +\family default +\SpecialChar \ldots{} +. + Egy dialógusablak jelenik meg a címke nevét kérve, egy cím-javaslattal. + Miután kattint az +\family sans +OK +\family default +-ra, a címke egy betétben bekerül a szakasz címe mellé. +\end_layout + +\begin_layout Standard +Mellesleg, a szakaszban bárhova elhelyezheti a címkét, mivel a szakaszreferenciá +k mindig az utolsó szakaszra vagy alszakaszra fognak hivatkozni. + Mindig arra amelyik a címke előtti utolsó. + Az, hogy a szakaszcím sorába helyeztük a címkét (esetleg a következő bekezdés + első sorába) biztosítja azt, hogy az oldalhivatkozás, mindig a szakasz + kezdetére fog mutatni. +\end_layout + +\begin_layout Standard +Mivel gyakorlatilag semmit sem tett – a +\family typewriter +dvi +\family default + fájl ugyanúgy fog kinézni, mivel a címkék a nyomtatásban nem jelennek meg. + Most, hogy beszúrt egy címkét, erre a címkére a kereszthivatkozásokkal + tud hivatkozni. + Amit a következő részben ismertetünk. +\end_layout + +\begin_layout Subsection* +Az első kereszthivatkozásunk +\end_layout + +\begin_layout Standard +Helyezze a kurzort dokumentumában valahova a 2. + szakaszba majd, írja be: +\end_layout + +\begin_layout LyX-Code +Amennyiben szeretne többet megtudni erről a dokumentumról, +\end_layout + +\begin_layout LyX-Code +nézze meg a . + szakaszt, amit a . + oldalon talál meg. +\end_layout + +\begin_layout Standard +Most – helyezze a kurzort közvetlen a +\begin_inset Quotes pld +\end_inset + +. +\begin_inset space ~ +\end_inset + +szakasz +\begin_inset Quotes prd +\end_inset + + szó elé – válassza a +\family sans +\bar under +B +\bar default +eszúrás \SpecialChar \menuseparator + Ke +\bar under +r +\bar default +eszthivatkozás +\family default +\SpecialChar \ldots{} +-t +\family sans +. + +\family default + A +\family sans +Kereszthivatkozás +\family default + dialógusablak fog megjelenni. + Mutatva azokat a hivatkozásokat amelyekre már hivatkozhat. + Jelenleg csak egyet lát: +\begin_inset Quotes pld +\end_inset + +sec:Erről-a-dokumentumról +\begin_inset Quotes prd +\end_inset + +. + Válassza ezt (lehet, hogy már alapból ki van választva), és kattintson + az +\family sans +Alkalmaz +\family default +-on. + Ezután helyezze a kurzort a +\begin_inset Quotes pld +\end_inset + +. +\begin_inset space ~ +\end_inset + +oldalon +\begin_inset Quotes prd +\end_inset + + szó elé, majd változtassa meg a referencia típusát, hogy az, az oldal számát + mutassa és kattintson az +\family sans +Alkalmaz +\family default +-on. + (Hogy pontos legyek, egy +\family sans +Védett +\begin_inset space ~ +\end_inset + +szóköz +\family default +-t kell a szakasz és a hivatkozás közé elhelyeznie. + Ugyanez vonatkozik az oldalszámhivatkozásra is.) +\end_layout + +\begin_layout Standard +A hivatkozásokat, a LyX egy betétbe helyezi el oda ahol a kurzor áll. + A nyomtatott dokumentumban, ez a hivatkozás ki lesz cserélve a megfelelő + típusúra, legyen az oldalszám vagy a szakasz száma (attól függően, hogy + mit választott ki a +\family sans +Kereszthivatkozás +\family default + dialógusablakban). + Válassza a +\family sans +Né +\bar under +z +\bar default +et \SpecialChar \menuseparator + Fr +\bar under +i +\bar default +ssítés \SpecialChar \menuseparator + +\family default + +\family sans +\bar under +D +\bar default +VI +\family default + parancsot, ahhoz hogy megtekintse, hogyan néz ki a két hivatkozás az utolsó + oldalon, ahol hivatkozunk a +\begin_inset Quotes pld +\end_inset + +2. +\begin_inset space ~ +\end_inset + +szakaszra +\begin_inset Quotes prd +\end_inset + + és az +\begin_inset Quotes pld +\end_inset + +1. +\begin_inset space ~ +\end_inset + +oldalon +\begin_inset Quotes prd +\end_inset + + (vagy bármely oldalon, ahol is a 2. +\begin_inset space ~ +\end_inset + +szakasz található). +\end_layout + +\begin_layout Standard +A kényelem kedvéért, a kereszthivatkozások hiperhivatkozásként működnek + a dokumentum szerkesztése közben. + Rájuk kattintva a +\family sans +Kereszthivatkozás +\family default + dialógusablak jelenik meg, ahol a +\family sans +Címkére +\begin_inset space ~ +\end_inset + + +\bar under +u +\bar default +grás +\family default +-ra kattintva, a kurzor a kiválasztott címkére urgik. + +\end_layout + +\begin_layout Subsection* +További játék a címkékkel +\end_layout + +\begin_layout Standard +Ahogy már említettük, a LyX kezeli a kereszthivatkozások számozását; mindjárt + le is tesztelheti ezt. + Írjon be egy új szakaszt a 2. +\begin_inset space ~ +\end_inset + +szakasz elé. + Futtasa újra a LaTeX-et ( +\family sans +Né +\bar under +z +\bar default +et\SpecialChar \menuseparator +Fr +\bar under +i +\bar default +ssítés\SpecialChar \menuseparator + +\bar under +D +\bar default +VI +\family default +) és – lám! – és a hivatkozás megváltozott +\begin_inset Quotes pld +\end_inset + +3 +\begin_inset Quotes prd +\end_inset + +-ra! Módosítsa az +\begin_inset Quotes pld +\end_inset + +Erről a dokumentumról +\begin_inset Quotes prd +\end_inset + + cím típusát alszakaszra, ekkor nem a +\begin_inset Quotes pld +\end_inset + +3 +\begin_inset Quotes prd +\end_inset + + fog megjelenni, hanem +\begin_inset Quotes pld +\end_inset + +2.1 +\begin_inset Quotes prd +\end_inset + +. + Az oldalszám hivatkozása nem fog változni, hacsak nem írt be egy teljesen + új oldalnyi szöveget a szakasz elé. +\end_layout + +\begin_layout Standard +Amennyiben több tapasztalatot szeretne szerezni a kereszthivatkozásokkal, + próbáljon egy új címkét rakni oda, ahol az első kereszthivatkozása van + és hivatkozzon rá dokumentum egy másik részéből. + Ha sűrűn használja a kereszt-hivatkozásokat (pl. + egy újságcikket ír), kényelmes lehet, ha a +\family sans +Kereszthivatkozás +\family default + dialógusablakot nyitva hagyja. +\end_layout + +\begin_layout Standard +Amennyiben meg akar róla bizonyosodni, hogy az oldalszámozás helyes lesz + nagyméretű dokumentumok esetén is, +\family sans +másoljon ki +\family default + pár oldal szöveg a +\emph on +Felhasználói kézikönyv +\emph default +ből a vágólapra; majd +\family sans +illessze be +\family default + a lopott szöveget a dokumentumába +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Vigyázat, a fejezetcímek másolása hibát eredményezhet, mivel az article + dokumentum-osztályban a nincsenek fejezetek. + Ha ilyen hiba történne, egyszerűen törölje ki a fejezetcímet. + Amennyiben többet szeretne erről a témáról megtudni, kérem nézze meg a + +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:textclasses" + +\end_inset + + +\begin_inset space ~ +\end_inset + +szakaszt. +\end_layout + +\end_inset + +. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: Javítsa ki a hivatkozásokat a +\family typewriter +example_raw.lyx +\family default + dokumentumban. +\end_layout + +\begin_layout Section +Lábjegyzetek és széljegyzetek +\end_layout + +\begin_layout Standard +Az eszköztáron +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +A gombon pár sor fekete szöveg alatt 2 sor piros szöveg látható. +\end_layout + +\end_inset + + található +\family sans +Lábjegyzet +\begin_inset space ~ +\end_inset + +beszúrása +\family default + gomb segítségével vagy a +\family sans +\bar under +B +\bar default +eszúrás \SpecialChar \menuseparator + +\family default + +\family sans +Lá +\bar under +b +\bar default +jegyzet +\family default + parancscsal szúrhatunk be lábjegyzeteket. + Kattintson a dokumentumában valahol egy szó +\begin_inset Quotes pld +\end_inset + +LyX +\begin_inset Quotes prd +\end_inset + + szó mögé és kattintson a +\family sans +Lábjegyzet +\begin_inset space ~ +\end_inset + +beszúrása +\family default + gombra. + Egy lábjegyzet betét fog megjelenni, ahova be tudja írni a lábjegyzet szövegét. + LyX a kurzort a lábjegyzet elejére helyezi. + Gépelje be a következőt: +\end_layout + +\begin_layout LyX-Code +A LyX egy szövegszedő szövegszerkesztő. +\end_layout + +\begin_layout Standard +Most kattintson a szövegben, az imént létrehozott +\begin_inset Quotes pld +\end_inset + +lábjegyzet +\begin_inset Quotes prd +\end_inset + + nevű gombra. + A lábjegyzet kerete eltűnik, meghagyva a gombot, amely azon a helyen jelenik + meg, ahol a lábjegyzet jelölő a nyomtatott szövegben is meg fog jelenni. + Ezt nevezzük a +\begin_inset Quotes pld +\end_inset + +lábjegyzet +\begin_inset Quotes prd +\end_inset + + becsukásának. + Bármikor ki tudja nyitni a lábjegyzetet, azzal ha rákattint a gombra – + ekkor átírhatja a szövegét – majd amennyiben újra rákattint, becsukhatja + azt. +\end_layout + +\begin_layout Standard +Csodálkozhat azon miért lábjegyzet gomb van és miért nem egy szám. + A válasz az, hogy a LyX gondoskodik a lábjegyzetek számozásáról a nyomtatott + szövegben. + Mindebben Ön is meggyőződhet a +\family typewriter +dvi +\family default + fájl megtekintésével (vagy a nyomtatásával). + Ha további lábjegyzetet szúr be, a LyX át fogja őket számozni. + Mivel a LyX (nos, ténylegesen a LaTeX) gondoskodik a sorszámozásról, ezért + nincs rá szükség, hogy ezzel is növeljük a LyX fájl méretét. +\end_layout + +\begin_layout Standard +A lábjegyzetet ugyanúgy ki lehet vágni és be lehet illeszteni, mint bármilyen + szöveget. + Gyerünk, próbálja ki! Csak annyit kell tennie, hogy kijelöl egy lábjegyzet + gombot +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +A billyentyűzet segítségével lehet, hogy mindez egyszerűbb. + Amennyiben az egérrel kattog a gomb körül, ahelyett hogy kijelölné, könnyen + kinyithatja azt. +\end_layout + +\end_inset + +, majd +\family sans +Kivágás +\family default + és +\family sans +Beillesztés. + +\family default + Továbbá, a normál szöveget át is változtathatja lábjegyzetté azzal, hogy + kijelöli majd rákattint a +\family sans +Lábjegyzet +\begin_inset space ~ +\end_inset + +beszúrása +\family default + gombra. + A lábjegyzetet vissza is alakíthatja normál szöveggé, a +\family sans +Backspace +\family default +-t leütve, amikor a kurzor a lábjegyzet betét első pozíciójában van, vagy + a +\family sans +Delete +\family default + gombot leütve amikor a kuzrzor a betét utolsó pozíciójában van. +\end_layout + +\begin_layout Standard +Széljegyzetet az eszköztár gombjával (a sok szöveg mellett lévő kevés szöveget + jelképező ikon (azaz valaminek a széle), ami közvetlen a +\family sans +Lábjegyzet +\begin_inset space ~ +\end_inset + +beszúrása +\family default + gomb mellett található) vagy a +\family sans +\bar under +B +\bar default +eszúrás \SpecialChar \menuseparator + +\family default + +\family sans +Szélj +\bar under +e +\bar default +gyzet +\family default + parancs kiválasztásával szúrhat be. + A széljegyzetek ugyanolyanok mint a lábjegyzetek, kivéve hogy: +\end_layout + +\begin_layout Itemize +a gombok felirata +\begin_inset Quotes pld +\end_inset + +széljegyezet +\begin_inset Quotes prd +\end_inset + + a +\begin_inset Quotes pld +\end_inset + +lábjegyzet +\begin_inset Quotes prd +\end_inset + + helyett, +\end_layout + +\begin_layout Itemize +a jegyzetek a szöveg mellé kerlünek, nem pedig alá, +\end_layout + +\begin_layout Itemize +nincsenek megszámozva. +\end_layout + +\begin_layout Standard +Változtassa vissza szöveggé a lábjegyzetét, azután jelölje ki és változtassa + széljegyzetté. + Futassa le a LaTeX-et, és nézze meg hogyan néz ki. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: Javítsa ki a lábjegyzetet a +\family typewriter +example_raw.lyx +\family default + dokumentumban. +\end_layout + +\begin_layout Section +Irodalomjegyzék +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:bibliographies" + +\end_inset + +Az irodalomjegyzék (tudományos életben legalábbis) olyan, mint a kereszthivatkoz +ás. + A dokumentum végén elhelyezett irodalomjegyzék egy listát tartalmaz, amelyekre + a dokumentumban hivatkozhatunk. + Csak úgy mint a szakaszcímek, a LyX és a LaTeX könnyűvé teszi a munkát + a azáltal, hogy automatikusan beszámozza az irodalomjegyzék elemeket és + megváltoztatja a számozást amikor az elemek számozása változik. +\end_layout + +\begin_layout Standard +Menjen a dokumentum végére és váltson át az +\family sans +Irodalomjegyzék +\family default + környezetre. + A most begépelt minden egyes bekezdés, egy-egy hivatkozás lesz. + Írja be +\family typewriter +A LyX kézikönyv, a LyX dokumentációs csapat készítésében +\family default + mint első hivatkozást. + Figyelje meg, hogy a LyX minden egyes hivatkozás elé szögletes zárójelben + egy számot tesz. + Kattintson a betétben lévő számra, és az +\family sans +Irodalomjegyzék +\begin_inset space ~ +\end_inset + +elem +\family default + dialógus ablak jelenik meg. + Az első mező a +\family sans +Kulcs +\family default +, a segítségével tudunk hivatkozni erre az elemre a dokumentumban. + Alapértelmezésben ez egy szám. + Módosítsa a +\family sans +Kulcs +\family default + mezőt +\begin_inset Quotes pld +\end_inset + +lyxkezikonyv +\begin_inset Quotes prd +\end_inset + +-re, amit könnyebb megjegyezni. +\end_layout + +\begin_layout Standard +Most menjen oda a dokumentumban, ahol be szeretne szúrni egy hivatkozást + erre az elemre. + Szúrja be a +\family sans +\bar under +B +\bar default +eszúrás \SpecialChar \menuseparator + Idézet +\family default +\SpecialChar \ldots{} +. + Az +\family sans +Idézet +\family default + dialógus ablak fog megjelenni. + Az ablak jobb oldalán láthatjuk az összes irodalomjegyzék elemet, itt kell + kiválasztanunk, melyik elem(ek)re szeretnénk hivatkozni. + Válassza ki a +\begin_inset Quotes pld +\end_inset + +lyxkezikonyv +\begin_inset Quotes prd +\end_inset + +-et (most csak ez az egyetlen elem az irodalomjegyzékben), kattintson a + +\family sans +Hozzáa +\bar under +d +\bar default +ás +\family default + gombra, majd az +\family sans +Ok +\family default + gombra a beszúráshoz. + (Ki lehet választani egyszerre több elemet is, ezáltal a zárójelben több + szám fog megjelenni.) Akkor most futtassa a LaTeX-et és ellenőrizze hogyan + jelenik meg az irodalomjegyzék elem hivatkozva a dokumentum végén elhelyezett + listára. +\end_layout + +\begin_layout Standard +Hogyan használjuk a többi mezőt? Az +\family sans +Idézet +\family default + dialógusablakban, a +\family sans +Szöveg +\begin_inset space ~ +\end_inset + +utána +\family default + mező egy megjegyzést (ami lehet egy hivatkozás egy bizonyos oldalra vagy + fejezetre a hivatkozott könyvben vagy cikkben) helyez el a zárójelben a + szám után. + Amennyiben azt szertné, hogy a hivatkozás ne szám, hanem szöveg legyen + a nyomtatásban (például néhány folyóirat +\begin_inset Quotes pld +\end_inset + +[Smi95] +\begin_inset Quotes prd +\end_inset + +-t használja hivatkozásként egy munkára, amit Smith 1995-ben készített), + használja a +\family sans +Címke +\family default + mezőt az +\family sans +Irodalomjegyzék +\begin_inset space ~ +\end_inset + +elem +\family default + dialógusablakban. + A további részleteket megtalálja a +\emph on +Felhasználói kézikönyv +\emph default +ben. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: Javítsa ki az irodalomjegyzéket és a hivatkozásokat a +\family typewriter +example_raw.lyx +\family default + dokumentumban. +\end_layout + +\begin_layout Section +Tartalomjegyzék +\end_layout + +\begin_layout Standard +A tartalomjegyzéket elhelyezheti a dokumentumának elejére. + A LyX ezt eléggé megkönnyíti. + Csak üsse le a +\family sans +Return +\family default + billentyűt a dokumentum címe után és persze még az első szakasz előtt válassza + a +\family sans +\bar under +B +\bar default +eszúrás\SpecialChar \menuseparator +Listá +\bar under +k +\bar default + +\begin_inset space ~ +\end_inset + +és +\begin_inset space ~ +\end_inset + +tartalomjegyzék\SpecialChar \menuseparator + +\bar under +T +\bar default +artalomjegyzék +\family default + menüelemet. + Az előbbi művelet eredményeként a dokumentum első sorában egy betétben + a +\begin_inset Quotes pld +\end_inset + +Tartalomjegyzék +\begin_inset Quotes prd +\end_inset + + szó fog megjelenni. +\end_layout + +\begin_layout Standard +Ez nem tűnik valami nagyon hasznosnak. + Azonban, amennyiben megnézi a +\family typewriter +dvi +\family default + fájlt, látni fogja, hogy a betét helyett a valódi tartalomjegyzék jelenik + meg, tartalmazva a dokumentum szakaszait és alszakaszait. + Amennyiben megcserél egyes szakaszokat vagy újakat hoz létre, a változásokat + a +\family typewriter +dvi +\family default + fájlt frissítésekor fogja megtapasztalni. +\end_layout + +\begin_layout Standard +A tartalomjegyzék nem jelenik meg a maga valójában a dokumentum szerkesztése + közben, mivel azt közvetlenül nem szerkeszthető. + Habár megjelenítheti azt egy különálló ablakban, amennyiben rákattint dokumentu +mban a tartomjegyzék gombra. + A parancs akkor is működni fog amennyiben nincs egyetlen elem sem a tartalomjeg +yzékben. + Ez egy nagyon hatékony segédeszköz. + Használhatja ezt a +\family sans +Tartalomjegyzék +\family default + ablakot arra, hogy gyorsan mozogjon a dokumentumban. + Rákattintva az egyik (al)szakasz címére, az kijelölődik és a kurzor a(z) + (al)szakasz első sorába kerül (természetesen a LyX szerkesztő ablakában). + Használhatja a kurzor billentyűket is a tartalomjegyzékben való mozgásra. + Ezen oknál fogva kényelmesnek találhatja a használatát és nyitva is tarthatja + ezt az ablakot a dokumentum szerkesztése közben. + Hasonló funkciót érhet el a +\family sans +\bar under +N +\bar default +avigáció +\family default + menüvel, ahol a tartalomjegyzék automatikusan jelenik meg. + +\end_layout + +\begin_layout Standard +A tartalomjegyzék eltávolításához mindössze azt a betétet kell kitörölnie, + csakúgy mint a bármilyen szöveget. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: Javítsa ki az tartalomjegyzéket a +\family typewriter +example_raw.lyx +\family default + dokumentumban. +\end_layout + +\begin_layout Chapter +Képletek használata +\end_layout + +\begin_layout Standard +Nagyon sok tudós használja a LaTeX-et, mivel nagyszerűen kezeli a képleteket, + elkerülve a szövegszerkesztők vezérlő karaktereinek vagy képletszerkesztőinek + használatát. + Ezen tudósok nagy része azonban egy kicsit csalódott, mivel a képletek + elkészítése a LaTeX-el inkább programozás, mintsem írás. + Szerencsére, a LyX WYSIWYM támogatással rendelkezik a képletek elkészítéséhez. + Amennyiben használt már LaTeX-et, azt tapasztalhatja, hogy a LaTeX parancsokat + bármikor begépelheti, és azok eredményei a WYSIWYM filozófiának megfelelően + fognak megjelenni. + Azonban amennyiben még sohasem készített képletet LaTeX-el, a +\family sans +Képletszerkesztő +\family default +vel gyorsan és könnyedén fog professzionális megjelenésű képleteket készíteni +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Sajnos, a LyX nem tudja eldönteni, hogy a bevitt képletek +\emph on +helyesek +\emph default + vagy sem. +\end_layout + +\end_inset + +. +\end_layout + +\begin_layout Section +Képlet mód +\end_layout + +\begin_layout Standard +A LyX dokumentumában valahva írja be: +\end_layout + +\begin_layout LyX-Code +Tetszik ami Einstein mondott, E=mc^2, mert nagyon egyszerű. + +\end_layout + +\begin_layout Standard +Ez a képlet nem néz ki valami jól, még a +\family typewriter +dvi +\family default + fájlban sem, nincs hely az egyenlőségjel és a betűk között, valamint a + +\begin_inset Quotes pld +\end_inset + +2 +\begin_inset Quotes prd +\end_inset + +-t a felső indexbe kellene írni. + Ez a rossz szedés azért történhetett, mert nem tudattuk a LyX-nek, hogy + egy matematikai kifejezést +\begin_inset Quotes pld +\end_inset + +képletet +\begin_inset Quotes prd +\end_inset + + készítünk. + Ezért a képletet normális szövegnek vette. + +\end_layout + +\begin_layout Standard +Képletet kell létrehoznunk ahhoz, hogy a szedés megfelelő legyen. + A képlet létrehozásához kattintson az eszköztár kékkel írt +\begin_inset Formula $\frac{a+b}{c}$ +\end_inset + + gombjára. + A LyX be fog szúrni egy kis kék négyzetet, ami egy üres képlet. + A LyX, a kurzort ebbe a kis négyzetbe rakja, így csak újra be kell írnia + +\family typewriter +E=mc^2 +\family default +. + A kifejezés kékkel fog megjelenni és a kék négyzet el fog tünni, amint + a képlet nem üres. + Most üsse le az +\family sans +Esc +\family default +-et az egyenlet befejezéséhez. + A lila jelölők eltünnek, a kurzor a kifejezéstől jobbra fog megjelenni + és amit ezután gépel az normál szövegként fog megjelenni. +\end_layout + +\begin_layout Standard +Futtassa a LaTeX-et, és nézze meg a +\family typewriter +dvi +\family default + fájlt. + Vegye észre, hogy a kifejezés megjelenése milyen szép lett, az egyenlőségjel + és az egyes betűk közé szóközök kerültek, valamint a a +\begin_inset Quotes pld +\end_inset + +2 +\begin_inset Quotes prd +\end_inset + + a felső indexben van. + A betűket képlet módban változónak tételezi fel a program, ezért mutatja + őket dölttel. + A számok azok számok maradnak. +\end_layout + +\begin_layout Standard +A képletszerksztő, csak egy másik példája a WYSIWYM filozófiának. + A LaTeX-ben a matematikai kifejezéseket szöveggel és parancsokkal, mint + pl. + az +\family typewriter + +\backslash +sqrt +\family default + adjuk meg. + Ez nehézkes lehet, mivel nem tudja hogyan néz ki az egész kifejezés, amíg + le nem futtatja a LaTeX-et. + Sok időt tölthet el hiányzó zárójelek vagy +\begin_inset Quotes pld +\end_inset + +egyéb +\begin_inset Quotes prd +\end_inset + + hibák keresésével. + Egyébként a LyX nem próbálja meg a legtökéletesebben megjeleníteni a kifejezést + (WYSIWYG), de segít abban, hogy láthassuk milyen lesz a kifejezés. + A LaTeX fog gondoskodni a professzionális szedésről. + Az esetek 99%-ban semmilyen változtatást nem kell eszközölni a betűméreteken + vagy a térközökön. + Ezáltal (elnézést az ismétlésért) ön a képleteinek a +\emph on +tartalmára +\emph default + tud koncentrálni, nem kell a megjelenéssel foglalkoznia. +\end_layout + +\begin_layout Section +Nagiváció a képletben +\end_layout + +\begin_layout Standard +Változtassuk meg a +\begin_inset Formula $E=mc^{2}$ +\end_inset + +-t ilyenre: +\begin_inset Formula $E=1+mc^{2}$ +\end_inset + +. + Használja a nyíl billentyűket a kurzor képletbe történő mozgatásához. + Figyelje meg, hogy amint belép a képletbe, lila jelölők jelennek meg a + képlet körül, jelezve képletet szerkeszt. + Most használhatja a +\family sans +Balra +\family default + és +\family sans +Jobbra +\family default + gombokat, hogy a kurzort az egyenlőségjelen túlra mozgassa és írja be +\begin_inset Quotes pld +\end_inset + +1+ +\begin_inset Quotes prd +\end_inset + +. + A képletből való kilépéshez használhatja a nyíl billentyűket vagy az +\family sans +Esc +\family default +-et. +\end_layout + +\begin_layout Standard +Az említett speciális billentyűket kivéve, az írás képletszerkesztés közben + olyan, mintha normál szöveget írna. + Használja a +\family sans +Delete +\family default + (vagy +\family sans +Backspace +\family default +) gombokat a törléshez. + Kijelölhet szöveget, mind a kurzorral vagy az egérrel egyaránt. + Az +\family sans +Sz +\bar under +e +\bar default +rkesztés\SpecialChar \menuseparator +Visszavo +\bar under +n +\bar default +ás +\family default + működik képlet módban, csakúgy, mint a kivágás vagy a beillesztés. + Egyetlen dolgora hívom fel csak a figyelmet: ha a képlet jobb oldalán kivül + áll a kurzor, egyetlen +\family sans +Delete +\family default + (vagy +\family sans +Backspace +\family default +) leütésével kitörölheti a teljes kifejezést. + Szerencsére, használhatja a +\family sans +Visszavonást +\family default + a visszahozatalához. +\end_layout + +\begin_layout Standard +Mi történik, ha módosítani akarja a +\begin_inset Formula $E=mc^{2}$ +\end_inset + +-t erre: +\begin_inset Formula $E=mc^{2.5}+1$ +\end_inset + +? Használhatja az egeret, ahhoz hogy a megfelelő helyre kattintson, de használha +tja a nyíl billentyűket is. + Ha a kurzor közvetlen a +\begin_inset Quotes pld +\end_inset + +c +\begin_inset Quotes prd +\end_inset + + után áll, persze még a +\begin_inset Quotes pld +\end_inset + +2 +\begin_inset Quotes prd +\end_inset + + előtt, a +\family sans +Fel +\family default + lenyomásával a kurzor a felsőindex szintjére kerül, de még a +\begin_inset Quotes pld +\end_inset + +2 +\begin_inset Quotes prd +\end_inset + + elé. + Írja be a +\begin_inset Quotes pld +\end_inset + +.5 +\begin_inset Quotes prd +\end_inset + +-t. + A +\family sans +Le +\family default + leütésével a kurzor a normális szintre kerül vissza. + Amennyiben a felsőindex-ben bárhol leüti a +\family sans +Le +\family default + billentyűt a kurzor a közvetlen a felsőindex +\emph on +utánra +\emph default + kerül (tehát beírhatja a +\begin_inset Quotes pld +\end_inset + ++1 +\begin_inset Quotes prd +\end_inset + +-et). +\end_layout + +\begin_layout Section +Kitevők és indexek +\end_layout + +\begin_layout Standard +Egy kitevőt a +\family sans +Képletszerkesztő +\family default +-vel is beírhatunk (lásd lentebb), de valójában könnyebb a hiányjellel +\begin_inset Quotes pld +\end_inset + +^ +\begin_inset Quotes prd +\end_inset + +. + A LyX egy másik kis kék négyzetet fog megjeleníteni a felső indexben, bármit + amit most fog írni, az ide fog kerülni persze kisebb betűmérettel. + Minden amit a +\family sans +Szóköz +\family default + leütéséig beír (vagy az +\family sans +Esc +\family default + leütéséig, amivel a képletszerkesztésből kilépünk) a felső index-be fog + kerülni. +\end_layout + +\begin_layout Standard +Alsó index készítése szintén ilyen egyszerű – az elkezdéséhez az aláhúzás + jelet +\begin_inset Quotes pld +\end_inset + +_ +\begin_inset Quotes prd +\end_inset + + kell használnia. + Használhatja az alsóindexet és a felsőindex-et mind alsóindexekben, mind + felsőindexekben, mint ez a példa: +\begin_inset Formula $A_{a_{0}+b^{2}}+C^{a_{0}+b^{2}}$ +\end_inset + +. + +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: A +\family typewriter +example_raw.lyx +\family default + dokumentum első képletét tegye képlet módba. +\end_layout + +\begin_layout Section +A +\family sans +Képletszerkesztő +\end_layout + +\begin_layout Standard +A +\family sans +Képletszerkesztő +\family default + egy kényelmes segédeszköz szimbólumok beírásához vagy bonyolult képletszerkeszt +ési feladatok elvégzéséhez. + Ezen funkciók nagy része elérhető a billentyűzetről vagy a +\family sans +Sz +\bar under +e +\bar default +rkesztés \SpecialChar \menuseparator + Ké +\bar under +p +\bar default +let +\family default + illetve a +\family sans +\bar under +B +\bar default +eszúrás +\bar under + \SpecialChar \menuseparator + +\bar default + Kép +\bar under +l +\bar default +et +\family default + menük segítségével. + Azonban mi most csak a +\family sans +Képletszerkesztő +\family default + használatára fogunk koncentrálni, hogy megtudhassa mire számíthat; a gyorsbille +ntyűket később is megtanulhatja a többi kézikönyvből. + Nyissa meg a +\family sans +\bar under +B +\bar default +eszúrás +\bar under + \SpecialChar \menuseparator + +\bar default + Kép +\bar under +l +\bar default +et +\family default + +\family sans +\bar under +\SpecialChar \menuseparator + +\bar default + Kép +\bar under +l +\bar default +etszerkesztő +\begin_inset space ~ +\end_inset + +eszköztár +\begin_inset space ~ +\end_inset + +mutatása/elrejtése +\family default + segítségével és hagyja nyitva amíg ezt a fejezetet olvassa. + A képletszerkesztő eszköztárat a +\family sans +Né +\bar under +z +\bar default +et +\bar under +\SpecialChar \menuseparator + +\bar default + Esz +\bar under +k +\bar default +öztárak +\bar under +\SpecialChar \menuseparator + +\bar default + Képlet +\family default + paranccsal is elérheti. +\end_layout + +\begin_layout Subsection +Görög és egyéb szimbólumok +\end_layout + +\begin_layout Standard +A +\family sans +Képletszerkesztő +\family default + segítségével a matematikában használt szimbólumok hatalmas választékát + érhetjük el: különböző nyilak, relációs- és műveleti jeleket, összegzőket + valamint intergrátorokat. + Az alsó- és felsőindexbe való írás segítségével írhatunk alsó és felső + határokat a összegző és integrál jelekhez. +\end_layout + +\begin_layout Standard +\begin_inset Quotes pld +\end_inset + +Nincs olyan, amit meg ne tehetne\SpecialChar \ldots{} + +\begin_inset Formula $\heartsuit$ +\end_inset + +. +\begin_inset Quotes prd +\end_inset + + +\end_layout + +\begin_layout Subsection +Gyökjelek, ékezetek és határoló jelek +\end_layout + +\begin_layout Standard +Egy gyökjel beviteléhez, csak kattintson a gyökjelet szimbólumot tartalmazó + gombra. + Egy gyökjel fog megjelenni, a kurzor pedig a gyökjel alá kerül. + Ahova beírhat változókat, számokat esetleg másik gyökjeleket, törteket + vagy bármit amit szeretne. + A LyX mindig úgy fogja átméretezni a gyökjelet, hogy az fedje az alatta + lévőket. +\end_layout + +\begin_layout Standard +Egy jel fölé ( +\begin_inset Formula $\overrightarrow{v}$ +\end_inset + +) vagy jelek csoportja fölé ( +\begin_inset Formula $\overrightarrow{a+b}$ +\end_inset + +) hasonlóan helyezhetünk ékezeteket. + A +\family sans +Keret +\begin_inset space ~ +\end_inset + +díszítőelemek +\family default + egy panelen keresztül érhetőek el. + Kattintson egy ilyen elemre a LyX erre be fogja azt szúrni, az aktuális + elem alá vagy fölé, hogy a hozzá tartozó szöveget bevihessük. + Két fajta ilyen elemkészlet létezik: az egyik mérete a hozzá tartozó szöveggel + együtt nő vagy csökken, amíg a másik fix méretű mindössze egyetlen betűhöz + tartozhat. +\end_layout + +\begin_layout Standard +A határolójelek, mint pl. + a kapcsos-, szögletes- vagy normál-zárójelek hasonlóan működnek, egy kicsit + azért bonyolultabban. + Kattintson a +\family sans +Határolójelek +\family default + gombra (amin egy kék négyzet szögletes zárójelben látható), hogy megjelenítse + a +\family sans +Határolójelek +\family default + dialógusablakot. + A kiválasztott határolójel látható az ablakban. + Alapértelmezésben egy rendes-zárójel-pár, de választhat másmilyen zárójel + párt is, vagy szögletest netán kapcsosat, esetleg válassza ki az üreset, + hogy valami hasonlót kapjon +\begin_inset Quotes pld +\end_inset + + +\begin_inset Formula $a=\left\langle 7\right.$ +\end_inset + + +\begin_inset Quotes prd +\end_inset + + (az üres határoló jel szaggatott vonalként jelenik meg a LyX-ben, de nem + fog megjelenni a kimenetben). +\end_layout + +\begin_layout Standard +Amenniyben lusta, begépelheti a zárójeleket a billentyűzetről is, nem használva + a +\family sans +Határolójelek +\family default + ablakot. + Azonban ezek a zárójelek a normál szöveggel azonos méretűek lesznek, ami + nem fog jól mutatni, ha pl. + egy nagy tört vagy mátrix lesz a zárójelen belül. + A +\family sans +Határolójelek +\family default + ablak használatával garantáljuk, hogy a zárójelek méretei minden esetben + igazodni fognak azok tartalmához. +\end_layout + +\begin_layout Standard +Tehet határolót jelet vagy gyökjelet vagy díszítőelemet egy már létező szöveghez + is. + Válassza ki a módosítandó képlet részt, és kattintson a +\family sans +Képletszerkesztő +\family default + megfelelő gombjára. + Próbálja megváltoztatni Newton második törvényét skaláris alakról ( +\begin_inset Formula $f=ma$ +\end_inset + +), vektor alakra ( +\begin_inset Formula $\overrightarrow{f}=m\overrightarrow{a}$ +\end_inset + +). + Miután megismerte a mátrixokat meg fogja látni ilyen módon tud zárójelet + rakni köréjük. +\end_layout + +\begin_layout Subsection +Törtek +\end_layout + +\begin_layout Standard +A törtek nagyon egyszerűen hozhatóak létre képlet módban. + Csak kattintson a +\family sans +Képletszerkesztő +\family default +-ben a +\family sans +Törtek +\family default + gombra, arra ami egy fekete törtvonalat mutat egy-egy kék négyzettel a + számlálóban és a nevezőben. + A LyX létrehoz két kék négyzetet a törtben. + A várakozásnak megfelelően a nyíl billentyűkkel vagy az egér használatával + mozoghat a törtön belül. + Kattintson a felső kék négyzetbe és írja be +\begin_inset Quotes pld +\end_inset + +1 +\begin_inset Quotes prd +\end_inset + +. + Most üsse le a +\family sans +Le +\family default + gombot és írja be +\begin_inset Quotes pld +\end_inset + +2 +\begin_inset Quotes prd +\end_inset + +. + Hoppá! Elkészítette első törtjét. + Természetesen bármit beírhat a kék négyzetekbe: változókat kitevőkkel, + gyököket, esetleg másik törteket vagy ami az eszébe jut. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: A +\family typewriter +example_raw.lyx +\family default + dokumentum második képletét tegye képlet módba. +\end_layout + +\begin_layout Subsection +TeX mód: határok, log, sin és a többiek +\end_layout + +\begin_layout Standard +Mivel képlet módban bevitt betűket változóknak tételezi fel a program, amennyibe +n képlet módban azt írja be +\begin_inset Quotes pld +\end_inset + +sin +\begin_inset Quotes prd +\end_inset + +, a LyX azt hiszi, hogy ön a három +\begin_inset Formula $s$ +\end_inset + +, +\begin_inset Formula $i$ +\end_inset + + és +\begin_inset Formula $n$ +\end_inset + + változó szorzatára gondol. + Emiatt a három változót dölttel fogja szedni, annak ellenére, hogy ön a + +\begin_inset Quotes pld +\end_inset + +sin +\begin_inset Quotes prd +\end_inset + +-t szerette volna Román betűtípussal. + Továbbá, a LyX nem tesz szóközt a +\begin_inset Quotes pld +\end_inset + +sin +\begin_inset Quotes prd +\end_inset + + szó és +\begin_inset Quotes pld +\end_inset + +x +\begin_inset Quotes prd +\end_inset + + közé (a +\family sans +Szóköz +\family default + leütésére kilép képlet módból). + Felmerül a kérdés: Hogyan kaphatok +\begin_inset Quotes pld +\end_inset + + +\begin_inset Formula $\sin x$ +\end_inset + + +\begin_inset Quotes prd +\end_inset + +-et +\begin_inset Quotes pld +\end_inset + + +\begin_inset Formula $sinx$ +\end_inset + + +\begin_inset Quotes prd +\end_inset + + helyett? +\end_layout + +\begin_layout Standard +Kattintson a +\begin_inset Quotes pld +\end_inset + +sin +\begin_inset Quotes prd +\end_inset + +-ra a +\family sans +Képletszerkesztő +\family default + eszköztáron a +\family sans +Függvények +\family default + gombra. + A +\begin_inset Quotes pld +\end_inset + +sin +\begin_inset Quotes prd +\end_inset + + feketével és álló román betűstílussal fog megjelenni. + A program a teljes szót egyetlen szimbólunként fogja kezelni, amennyiben + leüti a +\family sans +Backspace +\family default + billentyűt, törölni fogja a szimbólumot. + Akkor most írja be +\begin_inset Quotes pld +\end_inset + +x +\begin_inset Quotes prd +\end_inset + +, ami dölten kékkel fog megjelenni, éppen úgy ahogy az képletmódban várható. + A kifejezés a +\family typewriter +dvi +\family default + fájlban megfelelően fog látszódni. + Ellenőrizze le! +\end_layout + +\begin_layout Standard +A képlet módban bevihető függvények, melyeket a +\family sans +Függvények +\family default + listából vihet be, tartalmazhatják a trigonumetrikus műveleteket azok inverzeit +, a hiperbolikus függvényeket, logaritmusokat, határokat valamint sok egyéb + függvényt is. + Ezen függvényeknek lehet alsó vagy felső index-ű operátoruk, mint pl. + +\begin_inset Quotes pld +\end_inset + + +\begin_inset Formula $\cos^{2}\theta$ +\end_inset + + +\begin_inset Quotes prd +\end_inset + + vagy +\begin_inset Quotes pld +\end_inset + + +\begin_inset Formula $\lim_{n\rightarrow\infty}$ +\end_inset + + +\begin_inset Quotes prd +\end_inset + +. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: A +\family typewriter +example_raw.lyx +\family default + dokumentum harmadik képletét tegye képlet módba. +\end_layout + +\begin_layout Subsection +Mátrixok +\end_layout + +\begin_layout Standard +Kattintson a +\family sans +Képletszerkesztő +\family default + a +\family sans +Mátrix +\begin_inset space ~ +\end_inset + +beszúrása +\family default + gombjára. + A megjelenő dialógusablakban kiválaszthatjuk mennyi sora és oszlopa legyen + a beszúrandó mátrixnak. + Válasszon két sort és három oszlopot üsse le a +\family sans +OK +\family default + gombot. + A LyX be fog szúrni 6 kék négyzetet egy +\begin_inset Formula $2\times3$ +\end_inset + + mátrixban. + Ahogy azt már megszokhatta ezekbe a négyzetekbe bármilyen matematikai kifejezés +ket beírhat (pl. + gyökjeles, másik mátrix, stb.). + Amennyiben valamelyik kék négyzetet üresen akarja hagyni, az nem jelent + problémát. +\end_layout + +\begin_layout Standard +Az oszlopok közötti mozgáshoz felhasználhatja a +\family sans +Tab +\family default + billentyűt. + Egyébként a nyíl billentyűket használhatja a mozgáshoz, egy cella jobb + szélén a +\family sans +Jobbra +\family default + leütése a következő cellába mozgatja a kurzort. + A +\family sans +Le +\family default + hatására a következő sorba kerül a kurzor, stb. + +\end_layout + +\begin_layout Standard +Amennyiben úgy találja, hogy további sorokat vagy oszlopokat kell beszúrnia, + használja a +\family sans +Sz +\bar under +e +\bar default +rkesztés \SpecialChar \menuseparator + So +\bar under +r +\bar default +ok +\begin_inset space ~ +\end_inset + +és +\begin_inset space ~ +\end_inset + +oszlopok \SpecialChar \menuseparator + Oszlop +\begin_inset space ~ +\end_inset + + +\bar under +h +\bar default +ozzáadása +\family default + vagy +\family sans +Sor +\begin_inset space ~ +\end_inset + +hozzá +\bar under +a +\bar default +dása +\family default + parancsokat. + Ezek beszúrnak egy új sort vagy oszlopot az aktuális pozícióba. + Ha túl sokat szúrt be? Használja a +\family sans +Oszlop +\begin_inset space ~ +\end_inset + +törlése +\family default + vagy +\family sans +Sor +\begin_inset space ~ +\end_inset + +törlése +\family default + parancsokat ugyanebből a menüből. +\end_layout + +\begin_layout Standard +A +\emph on +Felhasználói kézikönyv +\emph default +-ben megtalálja hogyan változtassa meg az egyes oszlopok igazítását és azt, + hogyan változtassa meg a teljes mátrix függőleges pozícióját. + Amennyiben szöveget tartalmazó táblázatot szeretne készíteni, érdemes a + LyX nagyszerű táblázatkezelőjét használnia, mátrixok használata helyett. + +\end_layout + +\begin_layout Subsection +Megjelenítési mód +\end_layout + +\begin_layout Standard +Az eddig készített összes képlet vagy matematikai kifejezés a normál szöveggel + egy sorba került, ezeket beszúrt képleteknek nevezzük. + Ez nagyszerű rövid, egyszerű kifejezések elkészítéséhez, azonban ha egy + nagyot szeretne készíteni vagy azt szeretné, hogy a képlet különüljön el + a szövegtől, a képlet megjelenítés módját meg kell változtatnia (megjelenített- +mód). + Továbbá amennyiben címkézni és számozni (lásd a +\emph on +Felhasználói kézikönyv +\emph default +ben) szeretné, esetleg többsoros kifejezést szeretne, a képletnek megjelenített + módban kell lennie. +\end_layout + +\begin_layout Standard +Kattintson a +\family sans +Képletszerkesztő +\family default + eszköztár +\family sans +Megjelenítés +\begin_inset space ~ +\end_inset + +módjának +\begin_inset space ~ +\end_inset + +váltása +\family default + gombjára, amelynek megjelenése: egy kék négyzet alatta és fölötte két vonalalla +l. + A képlet megjelenési módja megváltozik, az új sorba kerül középre igazítva. + Most vigyen be egy képletet majd futtasa le a LaTeX-et és nézze meg hogyan + néz ki. + A +\family sans +Megjelenítés +\begin_inset space ~ +\end_inset + +módjának +\begin_inset space ~ +\end_inset + +váltása +\family default + gomb a két megjelenítés között vált, változtasson meg néhány kifejezést + oda és vissza. +\end_layout + +\begin_layout Standard +A megjelenített mód pár dologban eltér a beszúrt módtól: +\end_layout + +\begin_layout Itemize +Az alap betűkészlet nagyobb néhány szimbólum esetében, mint a +\begin_inset Formula $\sum$ +\end_inset + + és +\begin_inset Formula $\int$ +\end_inset + + +\end_layout + +\begin_layout Itemize +Az alsó- és felsőindexek a határok és az összegek esetében (kivéve az integrálok +) a szimbólumok alá kerülnek nem pedig melléjük +\end_layout + +\begin_layout Itemize +A szöveg középre van igazítva +\end_layout + +\begin_layout Standard +Ezken az eltéréseken kívül, a megjelenített és beszúrt képletek nagyon hasonlóak. +\end_layout + +\begin_layout Standard +Egy utolsó megjegyzés a megjelenített képletek szedésével kapcsolatban: + vigyázzon, nehogy a képletét egy új bekezdésbe rakja. + Ha a képlete egy mondat vagy egy bekezdés közepén van, ne üsse le a +\family sans +Return +\family default +-t. + Amennyiben mégis megteszi ezt, a képlet +\emph on +utáni +\emph default + szöveg egy új bekezdésbe fog kerülni. + Emiatt a szöveg lehet, hogy be lesz húzva, amit feltehetőleg nem szeretne. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: A +\family typewriter +example_raw.lyx +\family default + dokumentum különböző kifejezéseit tegye megjelenített módba és nézze meg + hogyan változik a szedésük. +\end_layout + +\begin_layout Standard + +\series bold +Feladat +\series default +: Különböző - ebben a szakaszban tanult - eszközök felhasználásával mostantól + képes lehet hasonló képletek elkészítésére +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Miután a bonyolultabb módon elkészítette, miért nem próbálja ki a +\family sans +\bar under +B +\bar default +eszúrás\SpecialChar \menuseparator +Kép +\bar under +l +\bar default +et\SpecialChar \menuseparator +E +\bar under +s +\bar default +etek +\begin_inset space ~ +\end_inset + +környezet +\family default + parancsot? +\end_layout + +\end_inset + +: +\end_layout + +\begin_layout Standard +\begin_inset Formula \[ +f(x)=\left\{ \begin{array}{cc} +\log_{8}x & x>0\\ +0 & x=0\\ +\sum_{i=1}^{5}\alpha_{i}+\sqrt{-\frac{1}{x}} & x<0 +\end{array}\right.\] + +\end_inset + + +\end_layout + +\begin_layout Section +További képletes dolgok +\end_layout + +\begin_layout Standard +A Képlet-módban sokkal több mindent meg tud csinálni. + Most már ismeri az alapokat, ezért most is csak a +\emph on +Felhasználói kézikönyv +\emph default +-re hivatkozunk hogy hogyan tudja megcsinálni a: +\end_layout + +\begin_layout Itemize +Kifejezések felcímkézése és számozása, +\end_layout + +\begin_layout Itemize +Többsoros kifejezések, +\end_layout + +\begin_layout Itemize +Betűtípus megváltoztatása, pl. + félkövér használata egy képleten belül, +\end_layout + +\begin_layout Itemize +Betűméret és térközök finomhangolása egy képleten belül. + (Ne aggódjon emiatt az utolsó vázlatáig!) +\end_layout + +\begin_layout Itemize +Makrók írása. + Nagyon hasznosak és hatékonyak tunak lenni, mert a dokumentum elején csak + egyszer kell definiálnia őket és felhasználhatóak a teljes dokumentumban. + Ha megváltoztatja a makró definícióját, a hivatkozások erre a makróra a + teljes dokumentumban meg fognak változni. + Képesek paramétert is fogadni. +\end_layout + +\begin_layout Itemize +Maradt még sok egyéb dolog, ezeket idő hiányában fel sem tudjuk sorolni + ebben a +\emph on +Tankönyv +\emph default +-ben. +\end_layout + +\begin_layout Chapter +Egyéb dolgok +\end_layout + +\begin_layout Section +Egyéb fontos LyX jellemzők +\end_layout + +\begin_layout Standard +Nem néztük át az összes lehetséges LyX parancsot, nem is terveztük. + A részletekért szokás szerint lásd a +\emph on +Felhasználói kézikönyv +\emph default +-et. + Most is csak megemlítünk néhány további fontos dolgot, amit használhat + a LyX-ben: +\end_layout + +\begin_layout Itemize +A LyX támogatja a táblázatokat WYSIWYM módon. + Használja a +\family sans +\bar under +B +\bar default +eszúrás \SpecialChar \menuseparator + +\bar under + T +\bar default +áblázat\SpecialChar \ldots{} + +\family default + parancsot, táblázat beszúrásához. + Kattintson +\emph on +jobb +\emph default + +\emph on +gombbal +\emph default + a táblázaton a +\family sans +Táblázat +\begin_inset space ~ +\end_inset + +beállítása +\family default + dialógusablak eléréséhez, amiben szinte mindent beállíthat. +\end_layout + +\begin_layout Itemize +A LyX támogatja képek beszúrását számos formátumban (beleértve JPEG-et, + és bitmap formátumokat, a PostScript +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +textregistered +\end_layout + +\end_inset + +-et és nyers LaTeX-et) a dokumentumba. + (Ahogy kitalálhatta: +\family sans +\bar under +B +\bar default +eszúrás \SpecialChar \menuseparator + +\bar under + G +\bar default +rafika +\family default +\SpecialChar \ldots{} +. + Ezután kattintson a képre a fájl megadásához, a kép elforgatásához, méretezéséh +ez, stb.) A táblázatoknak és ábráknak lehet címkéjük, a LyX automatikusan + elkészíti a táblázatok és képek listáját. +\end_layout + +\begin_layout Itemize +A verziókövetés szintén támogatott RCS használatával (további információkért + olvassa el a +\family typewriter +man rcsintro +\family default +-t). +\end_layout + +\begin_layout Itemize +A LyX nagymértékben beállítható. + A LyX ablak kinézetétől kezdve, hogy a kimenet hogyan keletkezik, mindez + számtalan módon beállítható. + Sok beállítás az +\family sans +Esz +\bar under +k +\bar default +özök \SpecialChar \menuseparator + +\bar under + B +\bar default +eállítások +\family default +\SpecialChar \ldots{} +-on keresztül valósul meg. + További információért olvassa el a +\family sans +\bar under +S +\bar default +egítség \SpecialChar \menuseparator + T +\bar under +e +\bar default +streszabás +\family default +-t. +\end_layout + +\begin_layout Itemize +A LyX fejlesztését öt kontinensen található programozók csoportja végzi. + Ezért a LyX jobb támogatással rendelkezik nem angol nyelvekhez (mint, pl. + a holland, német, francia, görög, cseh, török\SpecialChar \ldots{} +) mint a többi szövegszerkesztő. + Még néhány jobbról-balra író nyelvet is, mint a Héber vagy az Arab támogat. + Írhat dokumentumot más nyelveken, de beállíthatja a LyX-et úgy, hogy a + menük és az üzenetek egy másik nyelven jelenjenek meg. +\end_layout + +\begin_layout Itemize +A LyX menük tartalmaznak gyorsító elemeket. + Ez azt jelenti, hogy a +\family sans +\bar under +F +\bar default +ájl \SpecialChar \menuseparator + Meg +\bar under +n +\bar default +yitás +\family default +\SpecialChar \ldots{} + elérhető az +\family sans +M-F +\family default + után az +\family sans +N +\family default + lenyomásával vagy a menüelem mellett látható gyorsbillentyűvel (ami alapból + C-O). + A gyorsbillentyűk szintén beállíthatóak, további információkért kérem olvassa + el a +\family sans +\bar under +S +\bar default +egítség \SpecialChar \menuseparator + T +\bar under +e +\bar default +streszabás +\family default +-t. +\end_layout + +\begin_layout Itemize +A LyX be tudja olvasni a LaTeX dokumentumokat. + Lásd a +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:relyx" + +\end_inset + + +\begin_inset space ~ +\end_inset + +szakaszt. +\end_layout + +\begin_layout Itemize +Helyesírás-ellenőrzés és tézaurusz lehetőségek szintén elérhetőek. +\end_layout + +\begin_layout Itemize +A LyX ablak alsó részén látható szövegmező neve minibuffer (az +\family typewriter +emacs +\family default + hasonló eszköze alapján). + Ez hozzáférhetővé tesz mindenfajta érdekes funkciókat, beleértve azokat + is amivel tönkreteheti a dokumentumát. + Azaz csak akkor írjon a minibuffer-be, ha tudja mit csinál. +\end_layout + +\begin_layout Section +LyX a LaTeX felhasználóknak +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:latexusers" + +\end_inset + +Ha semmit sem tud a LaTeX-ről, nem kell elolvasnia ezt a szakaszt. + Lehet, hogy szeretne valamit +\emph on +tanulni +\emph default + a LaTeX-ről, és el olvassa ezt a fejezetet. + Sok ember aki a LyX-et most kezdi el használni, már ismeri a LaTeX-et. + Ha ön egy ilyen ember, jogosan kérdezheti hogyan képes a LyX mindarra amire + a LaTeX. + A rövid válasz az, hogy a LyX meglehetősen sokmindenre képes amit a LaTeX + ilyen vagy olyan formában. + Valamint minden bizonnyal egyszerüsíti egy LaTeX dokumentum elkészítését. + A segédeszközt – aminek segítségével a LaTeX dokumentumokat átalakíthatjuk + LyX által feldolgozható formára – teljesen újraírtuk a LyX 1.4 változatához. + Mostmár képesnek kell lennie a könnyedén lekezelni a LaTeX nagy részét. + +\end_layout + +\begin_layout Standard +Mivel ez csak egy tankönyv, azért csak azokat a dolgokat említjuk meg, amelyek + a kezdő felhasználót érdekelhetnek. + Azért, hogy a +\emph on +Tankönyv +\emph default + rövid legyen, csak a legszükségesebb információkat írjuk itt le. + A +\emph on +Haladó szolgáltatások +\emph default + kézikönyvben, különösen a +\emph on +LaTeX mesterek titkai (Secrets of the LaTeX Masters +\emph default +) fejezetben találhat sok-sok információt a LyX és a LaTeX különbségéről, + valamint arról, hogyan valósíthat meg egyes LaTeX trükköket LyX-ben. +\end_layout + +\begin_layout Subsection +TeX-mód +\end_layout + +\begin_layout Standard +Bármi, amit TeX-módban ír be, azt a LaTeX közvetlen (változtatás nélkül) + kapja meg, a képernyőn pirossal fog megjelenni. + A TeX parancsok beviteléhez válassza a +\family sans +\bar under +B +\bar default +eszúrás \SpecialChar \menuseparator + Te +\bar under +X +\family default +\bar default + menüt. + A parancs létrehoz egy betétet, amit ebbe a betétbe beírunk közvetlen átadásra + kerül a LaTeX-nek. +\end_layout + +\begin_layout Standard +Képleten belül a TeX-mód kicsit másként működik. + A TeX módba lépéshez a visszafeleperjel +\begin_inset Quotes pld +\end_inset + +backslash +\begin_inset Quotes prd +\end_inset + + karaktert kell leütnie. + A perjel nem kerül a képernyőre, de amit utána beírunk az pirossal fog + megjelenni. + A TeX-módból való kilépéshez üüse le a +\family sans +Szóköz- +\family default +t vagy egy nem betű karaktert, mint pl. + szám, aláhúzás, hiányjel, zárójel. + Miután kilépett a TeX-módból, amennyiben a LyX ismeri a bevitt TeX parancsot, + át fogja alakítani azt a WYSIWYM formába. + Azaz, ha egy képletben beírja +\backslash +gamma valamint leüti a +\family sans +Szóköz +\family default +-t, a LyX a piros +\begin_inset Quotes pld +\end_inset + +gamma +\begin_inset Quotes prd +\end_inset + + szöveget kék +\begin_inset Quotes pld +\end_inset + + +\begin_inset Formula $\gamma$ +\end_inset + + +\begin_inset Quotes prd +\end_inset + +-ra cseréli. + Ez működik majdnem minden, nem túl bonyolult képlet-makróra. + Ezáltal gyorsabban lehet dolgozni, mint a +\family sans +Képletszerkesztő +\family default +-vel, és persze nagyon kényelmes a tapasztalt LaTeX felhasználóknak. + +\end_layout + +\begin_layout Standard +Amennyiben TeX-módan egy speciális esetben beír egy zárójelet, mind a nyitó + +\emph on +és +\emph default + záró pár pirosban fog megjelenni, a rendszer kilép TeX módból és kurzor + a két zárójel közé kerül. + Ezzel kényelmesebbé teszi olyan parancsok beírását, amiket a LyX nem ismeri. +\end_layout + +\begin_layout Standard +A LyX (egyenlőre) nem képes mindarra amire a LaTeX. + Valamely funkciókat jelenleg egyáltalán nem támogat, van ami működik, de + nem a WYSIWYM-nak megfelelően. + A TeX-mód segítségével kiaknázhatjuk a LaTeX összes lehetőségét, miközben + kényelmesen kihasználjuk a LyX által nyújtott szolgáltatásokat, mint pl. + WYSIWYM képletek, táblázatok és szerkesztés. + A LyX sohasem lesz képes az összes LaTeX csomag támogatására. + Azonban, ha beírja a +\family typewriter + +\backslash +usepackage{foo}-t +\family default + a preambulumba (lásd a +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:preamble" + +\end_inset + +. +\begin_inset space ~ +\end_inset + +szakaszt), olyan csomagot használ, amilyet csak akar – azonban nem lesz + WYSIWYM támogatás a csomag jellemzőihez. +\end_layout + +\begin_layout Subsection +LaTeX dokumentumok importálása – +\family typewriter +tex2lyx +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:relyx" + +\end_inset + +Importálhat LaTeX fájlokat a +\family sans +\bar under +F +\bar default +ájl \SpecialChar \menuseparator + +\bar under + I +\bar default +mportálás \SpecialChar \menuseparator + +\bar under + L +\bar default +aTeX +\family default + parancs segítségével. + Ez a +\family typewriter +tex2lyx +\family default + porgramot hívja meg, ami létre fogja hozni a +\family typewriter +valami.lyx +\family default + fájlt, a +\family typewriter +valami.tex +\family default +-ből, ezután természetesen megnyitja a lyx fájlt. + Amennyiben az átalakítás valamilyen oknál fogva sikertelen, megpróbálhatja + a +\family typewriter +tex2lyx +\family default + futtatását a parancssorból valószínűleg szakszerűbb kapcsolókat használva. +\end_layout + +\begin_layout Standard + +\family typewriter +tex2lyx +\family default + a LaTeX jelentős részét le tudja fordítani, de mégsem mindent. + Amit nem ért meg azt TeX módban fogja hagyni, ezért miután lefordította + a fájlt +\family typewriter +tex2lyx +\family default +-el, meg kell keresnie a piros szövegrészeket és ki kell azokat javítania. +\end_layout + +\begin_layout Standard +A +\family typewriter +tex2lyx +\family default +-nek van saját kézikönyvoldala. + Érdemes elolvasnia ahhoz, hogy megtudja mely, LaTeX parancsokat és környezeteke +t nem támogatja a program, ismerteti a hibáit (és azt hogyan lehet megkerülni + őket), valamint miként használjunk bizonyos kapcsolókat. +\end_layout + +\begin_layout Subsection +LyX dokumentumok átalakítása LaTeX-re +\end_layout + +\begin_layout Standard +LyX dokumentumát lehet, hogy át akarja alakítani LaTeX formátumba. + Például, egy segítőnek vagy szerzőtársnak, aki nem rendelkezik LyX-el és + el szeretné olvasni a művét. + Ezt nagyon könnyedén meg tudja csinálni. + Válassza a +\family sans +\bar under +F +\bar default +ájl \SpecialChar \menuseparator + E +\bar under +x +\bar default +portálás \SpecialChar \menuseparator + +\bar under + L +\bar default +aTeX +\family default + menüpontot. + Ez létre fogja hozni a +\family typewriter +valami.tex +\family default + fájlt, a +\family typewriter +valami.lyx +\family default + fájlból, amit éppen szerkeszt. + A LyX minden esetben ideiglenes LaTeX fájlokat hoz létre, mindahányszor + megnézzük a dokumentumunk kimenetet vagy ki szeretnénk azt nyomtatni, emiatt + nagyon jó LaTeX fájl készítésben. +\end_layout + +\begin_layout Subsection +LaTeX Preambulum +\end_layout + +\begin_layout Subsubsection +Dokumentum osztály +\end_layout + +\begin_layout Standard +A +\family sans +\bar under +D +\bar default +okumentum \SpecialChar \menuseparator + +\bar under + B +\bar default +eállítások\SpecialChar \ldots{} + +\family default + dialógusablak tartalmazza mindazokat a beállításokat amiket a +\family typewriter + +\backslash +documentclass +\family default + paranccsal elérhetünk. + Itt lehet megváltoztatni a dokumentumosztály alap betűméretet valamint + a papírméretet is. + Megadhatja a +\family typewriter + +\backslash +documentclass +\family default + parancs további beállításait a +\family sans +\bar under +K +\bar default +apcsolók +\family default + mezőben. + +\end_layout + +\begin_layout Subsubsection +Egyéb szedési beállítások – Other Preamble Matter +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:preamble" + +\end_inset + + Amennyiben valamilyen speciális beállításokat használ a LaTeX fájl preambulumáb +an, azokról a LyX dokumentum esetén sem kell lemondania. + Válassza a +\family sans +\bar under +D +\bar default +okumentum \SpecialChar \menuseparator + +\bar under + B +\bar default +eállítások +\bar under + +\bar default +\SpecialChar \menuseparator + +\bar under + +\bar default +LaTeX +\begin_inset space ~ +\end_inset + +Preambulum +\family default +-ot és írja be a megjelenő dialógusablakba. + Bármi amit begépel, (csak úgy mint TeX módban) azt a LaTeX közvetlen fogja + feldolgozni. +\end_layout + +\begin_layout Subsection +BibTeX +\end_layout + +\begin_layout Standard +A LyX támogatja a BibTeX használatát, amely segítségével irodalomjegyzék + adatbázisokat építhetünk fel, ezáltal azokat több dokumentumban is felhasználha +tjuk. + Válassza a +\bar under +B +\family sans +\bar default +eszúrás \SpecialChar \menuseparator + Listák +\begin_inset space ~ +\end_inset + +és +\begin_inset space ~ +\end_inset + +tartal +\bar under +o +\bar default +mjegyzék \SpecialChar \menuseparator + +\bar under + B +\bar default +ibTeX +\begin_inset space ~ +\end_inset + +irodalomjegyzék +\family default +-et egy +\family typewriter +bib +\family default + fájl használatához. + Kattintson a megjelenő +\begin_inset Quotes pld +\end_inset + +BibTeX +\begin_inset space ~ +\end_inset + +által +\begin_inset space ~ +\end_inset + +létrehozott +\begin_inset space ~ +\end_inset + +irodalomjegyzék +\begin_inset Quotes prd +\end_inset + + gombra és megjelenik a +\family sans +BibTeX +\family default + dialgusablak. + Az +\family sans +Adatbázis +\family default + mezőbe írja be amit a +\family typewriter + +\backslash +bibliography{} +\family default + parancs zárójelébe írna +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Mint a LaTeX-nél, több irodalomjegyzék elemet is megadhatunk vesszővel elválaszt +va, szóközök nélkül +\end_layout + +\end_inset + +. + Hasonlóan, a +\family sans +Stílus +\family default + mezőbe írja be, amit a +\family typewriter + +\backslash +bibliographystyl{} +\family default + parancs zárójelébe írna. +\end_layout + +\begin_layout Standard +Miután mindezekkel elkészült, használhatja a hivatkozásokat bármelyik irodalomje +gyzék elemre a +\family sans +\bar under +B +\bar default +eszúrás \SpecialChar \menuseparator + +\bar under + I +\bar default +dézet +\family default +\SpecialChar \ldots{} + paranccsal (lásd +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:bibliographies" + +\end_inset + +. +\begin_inset space ~ +\end_inset + +szakasz). + A LyX fogja futtatni a BibTeX-et. + Az +\family sans +Idézet +\family default + dialógusablakban lévő felsorolás, tartalmazni fogja a +\family typewriter +bib +\family default + fájlban lévő összes irodalomjegyzék elemet. +\end_layout + +\begin_layout Section +Hibák! +\end_layout + +\begin_layout Standard +Néha, miközben feldolgozzuk a dokumentumunkat, hibák léphetnek fel, amelyeket + a LyX vagy a LaTeX nem ért meg. + Amikor ez történik, a hibák egy ablakban fognak megjelenni. + Rájuk kattintva a kurzor a megfelelő szövegrészhez ugrik, valamint egy + magyarázó ablakban megjelenik a LaTeX által adott hibaüzenet. + Azt azért meg kell jegyezni, hogy ezek a hibaüzenetek nem minden esetben + kielégítőek. +\end_layout + +\end_body +\end_document diff --git a/lib/examples/cs/splash.lyx b/lib/examples/cs/splash.lyx index e30bd0c6f2..8b127f1330 100644 --- a/lib/examples/cs/splash.lyx +++ b/lib/examples/cs/splash.lyx @@ -1,166 +1,166 @@ -#LyX 1.6.2svn created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass article -\use_default_options false -\language czech -\inputencoding auto -\font_roman default -\font_sans default -\font_typewriter default -\font_default_family default -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize default -\spacing single -\use_hyperref false -\papersize default -\use_geometry false -\use_amsmath 0 -\use_esint 0 -\cite_engine basic -\use_bibtopic false -\paperorientation portrait -\secnumdepth 3 -\tocdepth 3 -\paragraph_separation indent -\defskip medskip -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle default -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Title -Vítejte v LyXu ! -\end_layout - -\begin_layout Section* -Co byste měli vědět pro používání LyXu -\end_layout - -\begin_layout Enumerate -LyX přichází s -\size largest -\noun off -\color none - -\size default -\noun default -\color inherit -výbornou dokumentací—prosíme používejte ji! Český úvod můžete najít v menu - -\family sans -Nápověda\SpecialChar \menuseparator -Průvodce -\begin_inset space ~ -\end_inset - -LyXem -\family default -. - -\end_layout - -\begin_layout Enumerate -LyX nazýváme -\begin_inset Quotes eld -\end_inset - -editorem dokumentů. -\begin_inset Quotes erd -\end_inset - - Svým návrhem je odlišný od klasického textového editoru—způsobem, který - činí psaní dokumentů mnohem jednodušší. - Ale nelekejte se, je odlišný jenom trochu. - Průvodce vám v tom udělá jasno. -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Už jsme se zmínili o tom, že byste si mohli přečíst dokumnetaci? -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Enumerate -Výstup z LyXu vypadá skvěle! Zkuste vybrat v menu -\family sans -Prohlížet\SpecialChar \menuseparator -DVI -\family default -, ať se přesvědčíte na vlastní oči. -\end_layout - -\begin_layout Enumerate -LyX umí napodobit (téměř) veškerou funkcionalitu LaTeXu. - A ano, LyX umí importovat LaTeXové soubory. - Zkušení uživatelé LaTeXu mohou jen zbežně prolétnout začátek -\emph on -Průvodce -\emph default -, a pak si přečíst kapitolu -\begin_inset Quotes eld -\end_inset - -LyX pro uživatele LaTeXu -\begin_inset Quotes erd -\end_inset - -. - (Ostatní se nemusíte znepokojovat: nepotřebujete znát LaTeX pro používání - LyXu.) -\end_layout - -\begin_layout Enumerate -LyX nabízí mnoho možností lidem, kteří čtou a píší jiným jazykem, nežli - je angličtina. - Navíc jsou klávesové zkratky, nástrojová lišta a i další vlasnosti dobře - konfigurovatelné. - Viz -\family sans -Nápověda\SpecialChar \menuseparator -Přizpůsobení -\family default - LyXu. -\end_layout - -\begin_layout Enumerate -Domácí stránka LyXu je na -\family typewriter - -\begin_inset Flex URL -status collapsed - -\begin_layout Plain Layout - -http://www.lyx.org/ -\end_layout - -\end_inset - - -\family default -. - Můžete zde najít další informace, přihlásit se do konference, udělat si - grafickou výpravu do Lyxu (Graphical Tour) a najít spousty rad a triků - v rámci wiki. -\end_layout - -\end_body -\end_document +#LyX 1.6.2svn created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass article +\use_default_options false +\language czech +\inputencoding auto +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 0 +\use_esint 0 +\cite_engine basic +\use_bibtopic false +\paperorientation portrait +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Title +Vítejte v LyXu ! +\end_layout + +\begin_layout Section* +Co byste měli vědět pro používání LyXu +\end_layout + +\begin_layout Enumerate +LyX přichází s +\size largest +\noun off +\color none + +\size default +\noun default +\color inherit +výbornou dokumentací—prosíme používejte ji! Český úvod můžete najít v menu + +\family sans +Nápověda\SpecialChar \menuseparator +Průvodce +\begin_inset space ~ +\end_inset + +LyXem +\family default +. + +\end_layout + +\begin_layout Enumerate +LyX nazýváme +\begin_inset Quotes eld +\end_inset + +editorem dokumentů. +\begin_inset Quotes erd +\end_inset + + Svým návrhem je odlišný od klasického textového editoru—způsobem, který + činí psaní dokumentů mnohem jednodušší. + Ale nelekejte se, je odlišný jenom trochu. + Průvodce vám v tom udělá jasno. +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Už jsme se zmínili o tom, že byste si mohli přečíst dokumnetaci? +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Enumerate +Výstup z LyXu vypadá skvěle! Zkuste vybrat v menu +\family sans +Prohlížet\SpecialChar \menuseparator +DVI +\family default +, ať se přesvědčíte na vlastní oči. +\end_layout + +\begin_layout Enumerate +LyX umí napodobit (téměř) veškerou funkcionalitu LaTeXu. + A ano, LyX umí importovat LaTeXové soubory. + Zkušení uživatelé LaTeXu mohou jen zbežně prolétnout začátek +\emph on +Průvodce +\emph default +, a pak si přečíst kapitolu +\begin_inset Quotes eld +\end_inset + +LyX pro uživatele LaTeXu +\begin_inset Quotes erd +\end_inset + +. + (Ostatní se nemusíte znepokojovat: nepotřebujete znát LaTeX pro používání + LyXu.) +\end_layout + +\begin_layout Enumerate +LyX nabízí mnoho možností lidem, kteří čtou a píší jiným jazykem, nežli + je angličtina. + Navíc jsou klávesové zkratky, nástrojová lišta a i další vlasnosti dobře + konfigurovatelné. + Viz +\family sans +Nápověda\SpecialChar \menuseparator +Přizpůsobení +\family default + LyXu. +\end_layout + +\begin_layout Enumerate +Domácí stránka LyXu je na +\family typewriter + +\begin_inset Flex URL +status collapsed + +\begin_layout Plain Layout + +http://www.lyx.org/ +\end_layout + +\end_inset + + +\family default +. + Můžete zde najít další informace, přihlásit se do konference, udělat si + grafickou výpravu do Lyxu (Graphical Tour) a najít spousty rad a triků + v rámci wiki. +\end_layout + +\end_body +\end_document diff --git a/lib/examples/gl/exemplo_bruto.lyx b/lib/examples/gl/exemplo_bruto.lyx index 3d80963cf3..f7be01a14c 100644 --- a/lib/examples/gl/exemplo_bruto.lyx +++ b/lib/examples/gl/exemplo_bruto.lyx @@ -1,379 +1,379 @@ -#LyX 1.6.5svn created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass article -\use_default_options false -\language galician -\inputencoding auto -\font_roman default -\font_sans default -\font_typewriter default -\font_default_family default -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize 12 -\spacing single -\use_hyperref false -\papersize default -\use_geometry false -\use_amsmath 0 -\use_esint 0 -\cite_engine basic -\use_bibtopic false -\paperorientation portrait -\secnumdepth 3 -\tocdepth 3 -\paragraph_separation indent -\defskip medskip -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle plain -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Standard -ESTE É O TÍTULO DO DOCUMENTO -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Dica: O título deberia semellar-se mais a un título -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -por Pepe LyX -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Dica: Pepe é o AUTOR -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -12 de Xuño de 1972 -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Dica: Esta é unha data -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -Táboa de contidos -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Comentário: Agradeceria-se non ter que escreber a táboa de contidos explicitamen -te. -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -1. - Filosofia básica..................1 -\end_layout - -\begin_layout Standard -1.1 Como o traballa o LyX...............1 -\end_layout - -\begin_layout Standard -1.2 Por que o LyX é mellor...............1 -\end_layout - -\begin_layout Standard -2. - Características de LyX -\end_layout - -\begin_layout Standard -3. - Tentativas eivadas de usar mais facilidades do LyX -\end_layout - -\begin_layout Standard -4. - Cuestións matemáticas -\end_layout - -\begin_layout Standard ---------------------------------------------------- -\end_layout - -\begin_layout Standard -1. - Filosofia básica -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Observación: Probabelmente os títulos das seccións deberian salientar máis. -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -A filosofia básica de LyX é conseguir que o usuário só se deba preocupar - do contido do documento e non do formato. -\end_layout - -\begin_layout Standard -1.1 Como o traballa o LyX -\end_layout - -\begin_layout Standard -LyX basea-se no LaTeX, un sistema de preparación de documentos deseñado - por Leslie Lamport en 1985. - Por sua vez o LaTeX elaborou-se sobre unha linguaxe tipográfica chamada - TeX, criada por Donald Knuth en 1984. - Por outra banda a filosofia do LaTeX é similar á de LyX. - Leslie Lamport dixo (ver referéncia [1]) -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Observación: Probabelmente, esta referéncia non deberia estar escrita directamen -te. - Que acontecerá se inserimos outro iten na bibliografia antes do libro de - Lamport. -\end_layout - -\end_inset - - : -\end_layout - -\begin_layout Standard -"A función do deseño tipográfico é axudar ao leitor a comprender as ideas - do autor. - Para un documento ser de fácil leitura, a sua estrutura visual debe reflectir - a sua estrutura lóxica. - As citas e os programas de computador, sendo elementos estruturalmente - diferentes, deberian distinguir-se visualmente un de outro [...] Como LaTeX - non pode entender directamente o sentido do seu texto, debe indicar-lle - a estrutura lóxica mediante comandos especiais [...] Entanto escrebe o documento, - deberia preocupar-se da sua estrutura lóxica, non da sua aparéncia." -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Dica: esta é unha cita -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -1.2 Por que o LyX é mellor -\end_layout - -\begin_layout Standard -LyX pode ser útil a mais xente que LaTeX. - É considerabelmente mais doado de aprender, pois non é como LaTeX unha - linguaxe de programazón. - LyX é basicamente como outros procesadores de texto "WYSIWYG (o que vé - é o que obtén), agás que o LyX realmente é WYSIWYM (o que vé é o que pretende - facer). - De maneira que combina a facilidade de uso dos procesadores de texto coa - poténcia do LaTeX. - O cal é unha boa cousa. - Ademais, o formato de arquivo é independente do sistema operativo. - E o mellor de todo, é LIBRE! -\end_layout - -\begin_layout Standard -2. - Características do LyX -\end_layout - -\begin_layout Standard -LyX posui moitas características que facilitan a escrita de documentos. - (Senón, porque o ia querer usar? -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Dica: Esta frase entre parénteses ficaria mellor nunha nota de rodapé. -\end_layout - -\end_inset - -) E a min AGRADA-ME -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Dica: enfatizar -\end_layout - -\end_inset - - moito poder falar delas. - Eis unha pequena lista: -\end_layout - -\begin_layout Standard -* O LyX encarrega-se sen intervención do usuário das marxes e a numeración - das notas de rodapé. -\end_layout - -\begin_layout Standard -* LyX facilita a escrita e edición de fórmulas matemáticas. -\end_layout - -\begin_layout Standard -Para unha discusión mais filosófica de por que LyX é mellor que a competéncia - vexa a sección 1.2, que se acha na páxina 1. -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Observación: Probabelmente esta REFERÉNCIA-CRUZADA non debia estar escrita - directamente, que pasará se mudarmos o número da sección? -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -3. - Tentivas eivadas de empregar máis facilidades do LyX -\end_layout - -\begin_layout Standard -O outro dia escrebin un programa, algo asi como: -\end_layout - -\begin_layout Standard -5 REMARK O MEU MAGNIFICO PROGRAMA -\end_layout - -\begin_layout Standard -10 PRINT "SON INIGUALÁBEL!" -\end_layout - -\begin_layout Standard -20 GOTO 10 -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Dica: Isto é código fonte dun programa -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -Após desta inxente lavoura informática, arrebatou-me unha vea poética e - escrebin este haiku: -\end_layout - -\begin_layout Standard -LyX, veloz palilleira -\end_layout - -\begin_layout Standard -teces as miñas palabras -\end_layout - -\begin_layout Standard -nunha fermosa renda de letras. -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Dica: Se cadra non é moi boa poesia, mais non deixa de estar en VERSO -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -4. - Cuestións matemáticas -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Dica: Semella lóxico escreber fórmulas no modo matemático! -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -A miña ecuación favorita é a solución da ecuación de segundo grau. - Se ax^2+bx+c=0 (ec.1), entón x= -b + ou menos a raiz cadrada de b^2-4ac, - todo dividido por 2a (ec. - 2). -\end_layout - -\begin_layout Standard -Outra das miñas ecuacións favoritas é base do cálculo: f'(x) define-se como - o limite cando deltax tende a zero de f(x+deltax) - f(x) dividido por deltax - (ec. - 3). -\end_layout - -\begin_layout Standard ------------------------------------------------- -\end_layout - -\begin_layout Standard -REFERÉNCIAS -\end_layout - -\begin_layout Standard -[1] Lamport, Leslie. - LaTeX: A Document Preparation System. - Addison-Wesley, Reading, Massachusetts, segunda edición, 1994. - -\end_layout - -\end_body -\end_document +#LyX 1.6.5svn created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass article +\use_default_options false +\language galician +\inputencoding auto +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize 12 +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 0 +\use_esint 0 +\cite_engine basic +\use_bibtopic false +\paperorientation portrait +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle plain +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Standard +ESTE É O TÍTULO DO DOCUMENTO +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Dica: O título deberia semellar-se mais a un título +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +por Pepe LyX +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Dica: Pepe é o AUTOR +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +12 de Xuño de 1972 +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Dica: Esta é unha data +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Táboa de contidos +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Comentário: Agradeceria-se non ter que escreber a táboa de contidos explicitamen +te. +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +1. + Filosofia básica..................1 +\end_layout + +\begin_layout Standard +1.1 Como o traballa o LyX...............1 +\end_layout + +\begin_layout Standard +1.2 Por que o LyX é mellor...............1 +\end_layout + +\begin_layout Standard +2. + Características de LyX +\end_layout + +\begin_layout Standard +3. + Tentativas eivadas de usar mais facilidades do LyX +\end_layout + +\begin_layout Standard +4. + Cuestións matemáticas +\end_layout + +\begin_layout Standard +--------------------------------------------------- +\end_layout + +\begin_layout Standard +1. + Filosofia básica +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Observación: Probabelmente os títulos das seccións deberian salientar máis. +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +A filosofia básica de LyX é conseguir que o usuário só se deba preocupar + do contido do documento e non do formato. +\end_layout + +\begin_layout Standard +1.1 Como o traballa o LyX +\end_layout + +\begin_layout Standard +LyX basea-se no LaTeX, un sistema de preparación de documentos deseñado + por Leslie Lamport en 1985. + Por sua vez o LaTeX elaborou-se sobre unha linguaxe tipográfica chamada + TeX, criada por Donald Knuth en 1984. + Por outra banda a filosofia do LaTeX é similar á de LyX. + Leslie Lamport dixo (ver referéncia [1]) +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Observación: Probabelmente, esta referéncia non deberia estar escrita directamen +te. + Que acontecerá se inserimos outro iten na bibliografia antes do libro de + Lamport. +\end_layout + +\end_inset + + : +\end_layout + +\begin_layout Standard +"A función do deseño tipográfico é axudar ao leitor a comprender as ideas + do autor. + Para un documento ser de fácil leitura, a sua estrutura visual debe reflectir + a sua estrutura lóxica. + As citas e os programas de computador, sendo elementos estruturalmente + diferentes, deberian distinguir-se visualmente un de outro [...] Como LaTeX + non pode entender directamente o sentido do seu texto, debe indicar-lle + a estrutura lóxica mediante comandos especiais [...] Entanto escrebe o documento, + deberia preocupar-se da sua estrutura lóxica, non da sua aparéncia." +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Dica: esta é unha cita +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +1.2 Por que o LyX é mellor +\end_layout + +\begin_layout Standard +LyX pode ser útil a mais xente que LaTeX. + É considerabelmente mais doado de aprender, pois non é como LaTeX unha + linguaxe de programazón. + LyX é basicamente como outros procesadores de texto "WYSIWYG (o que vé + é o que obtén), agás que o LyX realmente é WYSIWYM (o que vé é o que pretende + facer). + De maneira que combina a facilidade de uso dos procesadores de texto coa + poténcia do LaTeX. + O cal é unha boa cousa. + Ademais, o formato de arquivo é independente do sistema operativo. + E o mellor de todo, é LIBRE! +\end_layout + +\begin_layout Standard +2. + Características do LyX +\end_layout + +\begin_layout Standard +LyX posui moitas características que facilitan a escrita de documentos. + (Senón, porque o ia querer usar? +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Dica: Esta frase entre parénteses ficaria mellor nunha nota de rodapé. +\end_layout + +\end_inset + +) E a min AGRADA-ME +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Dica: enfatizar +\end_layout + +\end_inset + + moito poder falar delas. + Eis unha pequena lista: +\end_layout + +\begin_layout Standard +* O LyX encarrega-se sen intervención do usuário das marxes e a numeración + das notas de rodapé. +\end_layout + +\begin_layout Standard +* LyX facilita a escrita e edición de fórmulas matemáticas. +\end_layout + +\begin_layout Standard +Para unha discusión mais filosófica de por que LyX é mellor que a competéncia + vexa a sección 1.2, que se acha na páxina 1. +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Observación: Probabelmente esta REFERÉNCIA-CRUZADA non debia estar escrita + directamente, que pasará se mudarmos o número da sección? +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +3. + Tentivas eivadas de empregar máis facilidades do LyX +\end_layout + +\begin_layout Standard +O outro dia escrebin un programa, algo asi como: +\end_layout + +\begin_layout Standard +5 REMARK O MEU MAGNIFICO PROGRAMA +\end_layout + +\begin_layout Standard +10 PRINT "SON INIGUALÁBEL!" +\end_layout + +\begin_layout Standard +20 GOTO 10 +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Dica: Isto é código fonte dun programa +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Após desta inxente lavoura informática, arrebatou-me unha vea poética e + escrebin este haiku: +\end_layout + +\begin_layout Standard +LyX, veloz palilleira +\end_layout + +\begin_layout Standard +teces as miñas palabras +\end_layout + +\begin_layout Standard +nunha fermosa renda de letras. +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Dica: Se cadra non é moi boa poesia, mais non deixa de estar en VERSO +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +4. + Cuestións matemáticas +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Dica: Semella lóxico escreber fórmulas no modo matemático! +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +A miña ecuación favorita é a solución da ecuación de segundo grau. + Se ax^2+bx+c=0 (ec.1), entón x= -b + ou menos a raiz cadrada de b^2-4ac, + todo dividido por 2a (ec. + 2). +\end_layout + +\begin_layout Standard +Outra das miñas ecuacións favoritas é base do cálculo: f'(x) define-se como + o limite cando deltax tende a zero de f(x+deltax) - f(x) dividido por deltax + (ec. + 3). +\end_layout + +\begin_layout Standard +------------------------------------------------ +\end_layout + +\begin_layout Standard +REFERÉNCIAS +\end_layout + +\begin_layout Standard +[1] Lamport, Leslie. + LaTeX: A Document Preparation System. + Addison-Wesley, Reading, Massachusetts, segunda edición, 1994. + +\end_layout + +\end_body +\end_document diff --git a/lib/examples/gl/exemplo_lyxificado.lyx b/lib/examples/gl/exemplo_lyxificado.lyx index 9593eef8b8..925bd09413 100644 --- a/lib/examples/gl/exemplo_lyxificado.lyx +++ b/lib/examples/gl/exemplo_lyxificado.lyx @@ -1,314 +1,314 @@ -#LyX 1.6.5svn created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass article -\use_default_options false -\language galician -\inputencoding auto -\font_roman default -\font_sans default -\font_typewriter default -\font_default_family default -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize 12 -\spacing single -\use_hyperref false -\papersize default -\use_geometry false -\use_amsmath 0 -\use_esint 0 -\cite_engine basic -\use_bibtopic false -\paperorientation portrait -\secnumdepth 3 -\tocdepth 3 -\paragraph_separation indent -\defskip medskip -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle plain -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Title -ESTE É O TÍTULO DO DOCUMENTO -\end_layout - -\begin_layout Author -por Pepe LyX -\end_layout - -\begin_layout Date -12 de Xuño de 1972 -\end_layout - -\begin_layout Standard -\begin_inset CommandInset toc -LatexCommand tableofcontents - -\end_inset - - -\end_layout - -\begin_layout Section -Filosofia básica -\end_layout - -\begin_layout Standard -A filosofia básica de LyX é conseguir que o usuário só se deba preocupar - do contido do documento e non do formato. -\end_layout - -\begin_layout Subsection -Como o traballa o LyX -\end_layout - -\begin_layout Standard -LyX basea-se no LaTeX, un sistema de preparación de documentos deseñado - por Leslie Lamport en 1985. - Por sua vez o LaTeX elaborou-se sobre unha linguaxe tipográfica chamada - TeX, criada por Donald Knuth en 1984. - Por outra banda a filosofia do LaTeX é similar á de LyX. - Leslie Lamport dixo (ver referéncia -\begin_inset CommandInset citation -LatexCommand cite -key "Lamport" - -\end_inset - -) : -\end_layout - -\begin_layout Quote -"A función do deseño tipográfico é axudar ao leitor a comprender as ideas - do autor. - Para un documento ser de fácil leitura, a sua estrutura visual debe reflectir - a sua estrutura lóxica. - As citas e os programas de computador, sendo elementos estruturalmente - diferentes, deberian distinguir-se visualmente un de outro [...] Como LaTeX - non pode entender directamente o sentido do seu texto, debe indicar-lle - a estrutura lóxica mediante comandos especiais [...] Entanto escrebe o documento, - deberia preocupar-se da sua estrutura lóxica, non da sua aparéncia." -\end_layout - -\begin_layout Subsection -Por que o LyX é mellor -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sub:LyX-mellor" - -\end_inset - -LyX pode ser útil a mais xente que LaTeX. - É considerabelmente mais doado de aprender, pois non é como LaTeX unha - linguaxe de programazón. - LyX é basicamente como outros procesadores de texto "WYSIWYG (o que vé - é o que obtén), agás que o LyX realmente é WYSIWYM (o que vé é o que pretende - facer). - De maneira que combina a facilidade de uso dos procesadores de texto coa - poténcia do LaTeX. - O cal é unha boa cousa. - Ademais, o formato de arquivo é independente do sistema operativo. - E o mellor de todo, é LIBRE! -\end_layout - -\begin_layout Section -Características do LyX -\end_layout - -\begin_layout Standard -LyX posui moitas características que facilitan a escrita de documentos -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Senón, porque o ia querer usar? -\end_layout - -\end_inset - -. - E a min -\emph on -agrada-me -\emph default - moito poder falar delas. - Eis unha pequena lista: -\end_layout - -\begin_layout Itemize -O LyX encarrega-se sen intervención do usuário das marxes e a numeración - das notas de rodapé. -\end_layout - -\begin_layout Itemize -LyX facilita a escrita e edición de fórmulas matemáticas. -\end_layout - -\begin_layout Standard -Para unha discusión mais filosófica de por que LyX é mellor que a competéncia - vexa a sección -\begin_inset CommandInset ref -LatexCommand ref -reference "sub:LyX-mellor" - -\end_inset - -, que se acha na páxina -\begin_inset CommandInset ref -LatexCommand pageref -reference "sub:LyX-mellor" - -\end_inset - -. -\end_layout - -\begin_layout Section -Tentivas eivadas de empregar máis facilidades do LyX -\end_layout - -\begin_layout Standard -O outro dia escrebin un programa, algo asi como: -\end_layout - -\begin_layout LyX-Code -5 REMARK O MEU MAGNIFICO PROGRAMA -\end_layout - -\begin_layout LyX-Code -10 PRINT "SON INIGUALÁBEL!" -\end_layout - -\begin_layout LyX-Code -20 GOTO 10 -\end_layout - -\begin_layout Standard -Após desta inxente lavoura informática, arrebatou-me unha vea poética e - escrebin este haiku: -\end_layout - -\begin_layout Verse -LyX, veloz palilleira -\begin_inset Newline newline -\end_inset - -teces as miñas palabras -\begin_inset Newline newline -\end_inset - -nunha fermosa renda de letras. -\end_layout - -\begin_layout Section -Cuestións matemáticas -\end_layout - -\begin_layout Standard -A miña ecuación favorita é a solución da ecuación de segundo grau. - Se -\begin_inset Formula $a^{2}+bx+c=0$ -\end_inset - - (ec. - 1), entón -\begin_inset Formula $x=\frac{-b\pm\sqrt{b^{2}-4ac}}{2a}$ -\end_inset - - (ec. - 2). - -\end_layout - -\begin_layout Standard -Outra das miñas ecuacións favoritas é base do cálculo: -\begin_inset Formula $f'(x)\equiv\lim_{\Delta x\rightarrow0}\frac{f(x+\Delta x)-f(x)}{\Delta x}$ -\end_inset - - (ec. - 3). -\end_layout - -\begin_layout Section -Notes -\end_layout - -\begin_layout Standard -Tres cousiñas sobre este ficheiro: -\end_layout - -\begin_layout Itemize -Eliminei as liñas a trazos que separaban o título e a bibliografia do resto - do documento. - O LyX (LaTeX) xa separa tais partes do documento con os espazos axeitados. -\end_layout - -\begin_layout Itemize -Non coloquei as fórmulas en liñas independentes, nen usei a numeración automátic -a que fornece o LyX, porque non se descreben no -\emph on -Tutorial -\emph default -. -\end_layout - -\begin_layout Itemize -Non é necesário dixitar a palabra -\begin_inset Quotes eld -\end_inset - -References -\begin_inset Quotes erd -\end_inset - - que vai a seguir, xa que o LyX a escrebe automaticamente (ou ben a palabra - -\begin_inset Quotes eld -\end_inset - -Bibliography, -\begin_inset Quotes erd -\end_inset - - segundo a clase de documento) ao seleccionar o ambiente -\family sans -Bibliografia -\family default -. -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "Lamport" - -\end_inset - -Lamport, Leslie. - -\emph on -LaTeX: A Document Preparation System. - -\emph default - Addison-Wesley, Reading, Massachusetts, second edition, 1994. -\end_layout - -\end_body -\end_document +#LyX 1.6.5svn created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass article +\use_default_options false +\language galician +\inputencoding auto +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize 12 +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 0 +\use_esint 0 +\cite_engine basic +\use_bibtopic false +\paperorientation portrait +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle plain +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Title +ESTE É O TÍTULO DO DOCUMENTO +\end_layout + +\begin_layout Author +por Pepe LyX +\end_layout + +\begin_layout Date +12 de Xuño de 1972 +\end_layout + +\begin_layout Standard +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\end_layout + +\begin_layout Section +Filosofia básica +\end_layout + +\begin_layout Standard +A filosofia básica de LyX é conseguir que o usuário só se deba preocupar + do contido do documento e non do formato. +\end_layout + +\begin_layout Subsection +Como o traballa o LyX +\end_layout + +\begin_layout Standard +LyX basea-se no LaTeX, un sistema de preparación de documentos deseñado + por Leslie Lamport en 1985. + Por sua vez o LaTeX elaborou-se sobre unha linguaxe tipográfica chamada + TeX, criada por Donald Knuth en 1984. + Por outra banda a filosofia do LaTeX é similar á de LyX. + Leslie Lamport dixo (ver referéncia +\begin_inset CommandInset citation +LatexCommand cite +key "Lamport" + +\end_inset + +) : +\end_layout + +\begin_layout Quote +"A función do deseño tipográfico é axudar ao leitor a comprender as ideas + do autor. + Para un documento ser de fácil leitura, a sua estrutura visual debe reflectir + a sua estrutura lóxica. + As citas e os programas de computador, sendo elementos estruturalmente + diferentes, deberian distinguir-se visualmente un de outro [...] Como LaTeX + non pode entender directamente o sentido do seu texto, debe indicar-lle + a estrutura lóxica mediante comandos especiais [...] Entanto escrebe o documento, + deberia preocupar-se da sua estrutura lóxica, non da sua aparéncia." +\end_layout + +\begin_layout Subsection +Por que o LyX é mellor +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sub:LyX-mellor" + +\end_inset + +LyX pode ser útil a mais xente que LaTeX. + É considerabelmente mais doado de aprender, pois non é como LaTeX unha + linguaxe de programazón. + LyX é basicamente como outros procesadores de texto "WYSIWYG (o que vé + é o que obtén), agás que o LyX realmente é WYSIWYM (o que vé é o que pretende + facer). + De maneira que combina a facilidade de uso dos procesadores de texto coa + poténcia do LaTeX. + O cal é unha boa cousa. + Ademais, o formato de arquivo é independente do sistema operativo. + E o mellor de todo, é LIBRE! +\end_layout + +\begin_layout Section +Características do LyX +\end_layout + +\begin_layout Standard +LyX posui moitas características que facilitan a escrita de documentos +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Senón, porque o ia querer usar? +\end_layout + +\end_inset + +. + E a min +\emph on +agrada-me +\emph default + moito poder falar delas. + Eis unha pequena lista: +\end_layout + +\begin_layout Itemize +O LyX encarrega-se sen intervención do usuário das marxes e a numeración + das notas de rodapé. +\end_layout + +\begin_layout Itemize +LyX facilita a escrita e edición de fórmulas matemáticas. +\end_layout + +\begin_layout Standard +Para unha discusión mais filosófica de por que LyX é mellor que a competéncia + vexa a sección +\begin_inset CommandInset ref +LatexCommand ref +reference "sub:LyX-mellor" + +\end_inset + +, que se acha na páxina +\begin_inset CommandInset ref +LatexCommand pageref +reference "sub:LyX-mellor" + +\end_inset + +. +\end_layout + +\begin_layout Section +Tentivas eivadas de empregar máis facilidades do LyX +\end_layout + +\begin_layout Standard +O outro dia escrebin un programa, algo asi como: +\end_layout + +\begin_layout LyX-Code +5 REMARK O MEU MAGNIFICO PROGRAMA +\end_layout + +\begin_layout LyX-Code +10 PRINT "SON INIGUALÁBEL!" +\end_layout + +\begin_layout LyX-Code +20 GOTO 10 +\end_layout + +\begin_layout Standard +Após desta inxente lavoura informática, arrebatou-me unha vea poética e + escrebin este haiku: +\end_layout + +\begin_layout Verse +LyX, veloz palilleira +\begin_inset Newline newline +\end_inset + +teces as miñas palabras +\begin_inset Newline newline +\end_inset + +nunha fermosa renda de letras. +\end_layout + +\begin_layout Section +Cuestións matemáticas +\end_layout + +\begin_layout Standard +A miña ecuación favorita é a solución da ecuación de segundo grau. + Se +\begin_inset Formula $a^{2}+bx+c=0$ +\end_inset + + (ec. + 1), entón +\begin_inset Formula $x=\frac{-b\pm\sqrt{b^{2}-4ac}}{2a}$ +\end_inset + + (ec. + 2). + +\end_layout + +\begin_layout Standard +Outra das miñas ecuacións favoritas é base do cálculo: +\begin_inset Formula $f'(x)\equiv\lim_{\Delta x\rightarrow0}\frac{f(x+\Delta x)-f(x)}{\Delta x}$ +\end_inset + + (ec. + 3). +\end_layout + +\begin_layout Section +Notes +\end_layout + +\begin_layout Standard +Tres cousiñas sobre este ficheiro: +\end_layout + +\begin_layout Itemize +Eliminei as liñas a trazos que separaban o título e a bibliografia do resto + do documento. + O LyX (LaTeX) xa separa tais partes do documento con os espazos axeitados. +\end_layout + +\begin_layout Itemize +Non coloquei as fórmulas en liñas independentes, nen usei a numeración automátic +a que fornece o LyX, porque non se descreben no +\emph on +Tutorial +\emph default +. +\end_layout + +\begin_layout Itemize +Non é necesário dixitar a palabra +\begin_inset Quotes eld +\end_inset + +References +\begin_inset Quotes erd +\end_inset + + que vai a seguir, xa que o LyX a escrebe automaticamente (ou ben a palabra + +\begin_inset Quotes eld +\end_inset + +Bibliography, +\begin_inset Quotes erd +\end_inset + + segundo a clase de documento) ao seleccionar o ambiente +\family sans +Bibliografia +\family default +. +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "Lamport" + +\end_inset + +Lamport, Leslie. + +\emph on +LaTeX: A Document Preparation System. + +\emph default + Addison-Wesley, Reading, Massachusetts, second edition, 1994. +\end_layout + +\end_body +\end_document diff --git a/lib/examples/gl/splash.lyx b/lib/examples/gl/splash.lyx index d19dc75805..0ea624ca89 100644 --- a/lib/examples/gl/splash.lyx +++ b/lib/examples/gl/splash.lyx @@ -1,165 +1,165 @@ -#LyX 1.6.2svn created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass article -\use_default_options false -\language galician -\inputencoding default -\font_roman default -\font_sans default -\font_typewriter default -\font_default_family default -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize default -\spacing single -\use_hyperref false -\papersize default -\use_geometry false -\use_amsmath 0 -\use_esint 0 -\cite_engine basic -\use_bibtopic false -\paperorientation portrait -\secnumdepth 3 -\tocdepth 3 -\paragraph_separation indent -\defskip medskip -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle default -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Title -Ben-vido ao LyX! -\end_layout - -\begin_layout Section* -O primeiro que debe saber para empregar o LyX -\end_layout - -\begin_layout Enumerate -LyX ven con unha excelente documentación —use-a, por favor! Comece con -\family sans -Axuda\SpecialChar \menuseparator -Introdución -\family default -, onde se apresenta a filosofia que guia o LyX, e a sua documentación. - A seguir é o momento de ler o tutorial, -\family sans -Axuda\SpecialChar \menuseparator -Tutorial -\family default -, para aprender as cuestións mais básicas. -\end_layout - -\begin_layout Enumerate -LyX é o que nos chamamos un -\begin_inset Quotes eld -\end_inset - -procesador de documentos -\begin_inset Quotes erd -\end_inset - -. - Non está moi lonxe dos procesadores de texto comuns, mais parte dunha filosofia - diferente, facilitando a escrita de documentos, sobre todo os complexos. - A documentación permitira-lle ver as diferéncias, e a forma de sacar proveito - das características únicas do LyX. -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -Mencionamos xa que debe ler a documentación? -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Enumerate -O resultado ao imprimir os documentos no LyX é excelente! Seleccione -\family sans -Arquivo\SpecialChar \menuseparator -Ver -\begin_inset space ~ -\end_inset - -Postcript -\family default - para comproba-lo por si mesmo. -\end_layout - -\begin_layout Enumerate -Si, LyX pode reproducir (case todas) as funcionalidades do LaTeX. - E si, LyX pode importar arquivos do LaTeX. - Os usuários experientes do LaTeX deben ler o capítulo -\begin_inset Quotes eld -\end_inset - -LyX para usuários de LaTeX -\begin_inset Quotes erd -\end_inset - - do -\emph on -Tutorial, -\emph default - e ler por riba o resto do documento. - (O resto dos mortais non teñen por que se preocupar, non é preciso coñecer - LaTeX para usar o LyX.) -\end_layout - -\begin_layout Enumerate -LyX incorpora diversos recursos para os que non escrebemos en inglés. - As teclas de atallo, barra de ferramentas, e moitas outras características - son altamente configurábeis (a maioria editando o seu arquivo -\family typewriter -lyxrc -\family default -). - Vexa -\family sans -Axuda\SpecialChar \menuseparator -Personalización -\family default - para máis detalles. -\end_layout - -\begin_layout Enumerate -A páxina na internet do LyX é -\family typewriter - -\begin_inset Flex URL -status collapsed - -\begin_layout Plain Layout - -http://www.lyx.org/ -\end_layout - -\end_inset - - -\family default -. - Nela pode obter mais información sobre o programa, inscreber-se na(s) lista(s) - de discusión, ver a Turnê Gráfica etc. -\end_layout - -\end_body -\end_document +#LyX 1.6.2svn created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass article +\use_default_options false +\language galician +\inputencoding default +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 0 +\use_esint 0 +\cite_engine basic +\use_bibtopic false +\paperorientation portrait +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Title +Ben-vido ao LyX! +\end_layout + +\begin_layout Section* +O primeiro que debe saber para empregar o LyX +\end_layout + +\begin_layout Enumerate +LyX ven con unha excelente documentación —use-a, por favor! Comece con +\family sans +Axuda\SpecialChar \menuseparator +Introdución +\family default +, onde se apresenta a filosofia que guia o LyX, e a sua documentación. + A seguir é o momento de ler o tutorial, +\family sans +Axuda\SpecialChar \menuseparator +Tutorial +\family default +, para aprender as cuestións mais básicas. +\end_layout + +\begin_layout Enumerate +LyX é o que nos chamamos un +\begin_inset Quotes eld +\end_inset + +procesador de documentos +\begin_inset Quotes erd +\end_inset + +. + Non está moi lonxe dos procesadores de texto comuns, mais parte dunha filosofia + diferente, facilitando a escrita de documentos, sobre todo os complexos. + A documentación permitira-lle ver as diferéncias, e a forma de sacar proveito + das características únicas do LyX. +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Mencionamos xa que debe ler a documentación? +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Enumerate +O resultado ao imprimir os documentos no LyX é excelente! Seleccione +\family sans +Arquivo\SpecialChar \menuseparator +Ver +\begin_inset space ~ +\end_inset + +Postcript +\family default + para comproba-lo por si mesmo. +\end_layout + +\begin_layout Enumerate +Si, LyX pode reproducir (case todas) as funcionalidades do LaTeX. + E si, LyX pode importar arquivos do LaTeX. + Os usuários experientes do LaTeX deben ler o capítulo +\begin_inset Quotes eld +\end_inset + +LyX para usuários de LaTeX +\begin_inset Quotes erd +\end_inset + + do +\emph on +Tutorial, +\emph default + e ler por riba o resto do documento. + (O resto dos mortais non teñen por que se preocupar, non é preciso coñecer + LaTeX para usar o LyX.) +\end_layout + +\begin_layout Enumerate +LyX incorpora diversos recursos para os que non escrebemos en inglés. + As teclas de atallo, barra de ferramentas, e moitas outras características + son altamente configurábeis (a maioria editando o seu arquivo +\family typewriter +lyxrc +\family default +). + Vexa +\family sans +Axuda\SpecialChar \menuseparator +Personalización +\family default + para máis detalles. +\end_layout + +\begin_layout Enumerate +A páxina na internet do LyX é +\family typewriter + +\begin_inset Flex URL +status collapsed + +\begin_layout Plain Layout + +http://www.lyx.org/ +\end_layout + +\end_inset + + +\family default +. + Nela pode obter mais información sobre o programa, inscreber-se na(s) lista(s) + de discusión, ver a Turnê Gráfica etc. +\end_layout + +\end_body +\end_document diff --git a/lib/examples/hu/example_lyxified.lyx b/lib/examples/hu/example_lyxified.lyx index 3b9de8c28e..bb4a10cb0c 100644 --- a/lib/examples/hu/example_lyxified.lyx +++ b/lib/examples/hu/example_lyxified.lyx @@ -1,345 +1,345 @@ -#LyX 1.6.5svn created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass article -\begin_preamble -%\def\magyarOptions{defaults=over-1.4,footnote=huplain} -\usepackage{indentfirst} -\frenchspacing -\end_preamble -\use_default_options false -\language magyar -\inputencoding auto -\font_roman default -\font_sans default -\font_typewriter default -\font_default_family default -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize 12 -\spacing single -\use_hyperref false -\papersize default -\use_geometry false -\use_amsmath 1 -\use_esint 0 -\cite_engine basic -\use_bibtopic false -\paperorientation portrait -\secnumdepth 3 -\tocdepth 3 -\paragraph_separation indent -\defskip medskip -\quotes_language polish -\papercolumns 1 -\papersides 1 -\paperpagestyle plain -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Title -Ez a dokumentum címe -\end_layout - -\begin_layout Author -készítette egy LyX-es -\end_layout - -\begin_layout Date -1972. - június 12 -\end_layout - -\begin_layout Standard -\begin_inset CommandInset toc -LatexCommand tableofcontents - -\end_inset - - -\end_layout - -\begin_layout Section -Alap filozófia -\end_layout - -\begin_layout Standard -A LyX alapfilozófiája az, hogy csak arra kell koncentrálnia amit le akarni - írni, nem arra hogyan fog kinézni. -\end_layout - -\begin_layout Subsection -Hogyan valósítja meg ezt a LyX -\end_layout - -\begin_layout Standard -A LyX a LaTeX-et használja, ami egy dokumentum elkészítő rendszer, amit - 1985-ben készített Leslie Lamport. - Ezt egy TeX nevű írásszedő rendszerre építette, amit Donald Knuth készített - 1984-ben. - A LaTeX-et, a LyX-hez hasonló filozófia miatt készítették. - Leslie Lamport egyszer azt mondta (lásd a hivatkozásban -\begin_inset CommandInset citation -LatexCommand cite -key "lamport" - -\end_inset - -): -\end_layout - -\begin_layout Quote -A tipográfiai tervezés célja az, hogy segítsen az olvasónak megérteni a - szerző mondanivalóját. - Ahhoz, hogy egy művet könnyen el lehessen olvasni, a vizuális szerkezetének - követnie kell a logikai felépítését. - Az idézetek és számítógépprogramok teljesen különálló logikai elemek, ezért - meg kell tudni őket egymásól különböztetni\SpecialChar \ldots{} - Mivel a LyX nem érti az írott - szöveget, ezért világosan meg kell adnia a logikai struktúrát bizonyos - parancsok használatával\SpecialChar \ldots{} - Miközben művét készíti, a logikai felépítésével - kell törődnie, nem a megjelenésével. -\end_layout - -\begin_layout Subsection -Miért jobb a LyX -\end_layout - -\begin_layout Standard -\begin_inset CommandInset label -LatexCommand label -name "sec:lyxbetter" - -\end_inset - -A LyX sokkal több embernek lehet hasznos, mint a LaTeX. - Meglehetősen könnyebb megtanulni, mivel nem kell megtanulni a LaTeX-et - (ami gyakorlatilag egy programozási nyelv). - A LyX alapvetően egy másik -\begin_inset Quotes pld -\end_inset - -azt kapod amit látsz -\begin_inset Quotes prd -\end_inset - - szövegszerkesztő, bár inkább -\begin_inset Quotes pld -\end_inset - -amit lát arra gondol -\begin_inset Quotes prd -\end_inset - - típusú. - Ezáltal a word típusú szövegszerkesztők könnyű használatát kombinálja, - a LaTeX hatékonyságával. - Ez egy jó dolog. - A fájl formátuma platform független. - De legfőképpen, ingyenes! -\end_layout - -\begin_layout Section -A LyX jellemzői -\end_layout - -\begin_layout Standard -A LyX rengeteg olyan jellemzővel rendelkezik, amelyek megkönnyítik az írást. -\begin_inset Foot -status open - -\begin_layout Plain Layout -\begin_inset space ~ -\end_inset - -Ezek után, miért ne akarná használni? -\end_layout - -\end_inset - - -\shape italic -Nagyon igazgatott -\shape default - vagyok, hogy beszélhessek róluk. - Íme közülük néhány. -\end_layout - -\begin_layout Itemize -A LyX gondoskodik a margókról és a lábjegyzetek számozásáról -\end_layout - -\begin_layout Itemize -A LyX-el könnyen készíthet és szerkeszthet képleteket -\end_layout - -\begin_layout Standard -A filozófiai értekezést, hogy miért jobb a LyX a többi szövegszerkesztőnél, - megtalálja a -\begin_inset CommandInset ref -LatexCommand ref -reference "sec:lyxbetter" - -\end_inset - -. - szakaszban, amit a -\begin_inset CommandInset ref -LatexCommand pageref -reference "sec:lyxbetter" - -\end_inset - -. - oldalon talál. -\end_layout - -\begin_layout Section -Gyenge próbálkozások más LyX-es cuccok használatához -\end_layout - -\begin_layout Standard -Egy nap írtam egy programot. - Így nézett ki. -\end_layout - -\begin_layout LyX-Code -5 REMARK A FELEMETES PROGRAMOM -\end_layout - -\begin_layout LyX-Code -10 PRINT -\begin_inset Quotes eld -\end_inset - -FELEMETES VAGYOK! -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout LyX-Code -20 GOTO 10 -\end_layout - -\begin_layout Standard -A tudományos gondolkodás után, teljesen művészien éreztem magam, és írtam - egy haiku-t -\end_layout - -\begin_layout Verse -A LyX egy nagyon szuper -\begin_inset Newline newline -\end_inset - -Szövegszedő szövegszerkesztő -\begin_inset Newline newline -\end_inset - -Sok időt takarít meg -\end_layout - -\begin_layout Section -Képletes dolgok -\end_layout - -\begin_layout Standard -A kedvenc egyenletem a másodfokú egyenlet megoldóképlete. - Ha -\begin_inset Formula $ax^{2}+bx+c=0$ -\end_inset - - (1. - képlet), akkor -\begin_inset Formula $x=\frac{-b\pm\sqrt{b^{2}-4ac}}{2a}$ -\end_inset - - (2. - képlet). -\end_layout - -\begin_layout Standard -A másik kedvenc képletem egy elemi kalkulus: -\begin_inset Formula $f'(x)\equiv\lim_{\Delta x\rightarrow0}\frac{f(x+\Delta x)-f(x)}{\Delta x}$ -\end_inset - - (3. - képlet). -\end_layout - -\begin_layout Section -Megjegyzések -\end_layout - -\begin_layout Standard -Pár megjegyzés a fájl lyx-esítéséről: -\end_layout - -\begin_layout Itemize -Ki tudtam szedni a kötőjeles sorokat. - Amelyek egyszerűen elválasztották a címet és a hivatkozást a dokumentum - többi részétől. - A LyX (LaTeX) elég sokat tud arról, hogyan kell ezt az elkülönítést elvégezni. -\end_layout - -\begin_layout Itemize -Nem zavartam be a képlet megjelenítési módjával. - Valamint nem használtam az automatikus képlet számozást sem, mivel az nincs - leírva a -\emph on -Tankönyvben -\emph default -. -\end_layout - -\begin_layout Itemize -Nem kellett begépelnem a -\begin_inset Quotes pld -\end_inset - -Hivatkozások -\begin_inset Quotes prd -\end_inset - - szót lentebb. - A LyX magától odaírta nekem (vagy az -\begin_inset Quotes pld -\end_inset - -Irodalomjegyzék -\begin_inset Quotes prd -\end_inset - - szót, függően a szövegosztálytól) -\end_layout - -\begin_layout Bibliography -\begin_inset CommandInset bibitem -LatexCommand bibitem -key "lamport" - -\end_inset - -Lamport, Leslie. - -\emph on -LaTeX: A Document Preparation System. - -\emph default - Addison-Wesley, Reading, Massachusetts, második kiadás, 1994. -\end_layout - -\end_body -\end_document +#LyX 1.6.5svn created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass article +\begin_preamble +%\def\magyarOptions{defaults=over-1.4,footnote=huplain} +\usepackage{indentfirst} +\frenchspacing +\end_preamble +\use_default_options false +\language magyar +\inputencoding auto +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize 12 +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 0 +\cite_engine basic +\use_bibtopic false +\paperorientation portrait +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language polish +\papercolumns 1 +\papersides 1 +\paperpagestyle plain +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Title +Ez a dokumentum címe +\end_layout + +\begin_layout Author +készítette egy LyX-es +\end_layout + +\begin_layout Date +1972. + június 12 +\end_layout + +\begin_layout Standard +\begin_inset CommandInset toc +LatexCommand tableofcontents + +\end_inset + + +\end_layout + +\begin_layout Section +Alap filozófia +\end_layout + +\begin_layout Standard +A LyX alapfilozófiája az, hogy csak arra kell koncentrálnia amit le akarni + írni, nem arra hogyan fog kinézni. +\end_layout + +\begin_layout Subsection +Hogyan valósítja meg ezt a LyX +\end_layout + +\begin_layout Standard +A LyX a LaTeX-et használja, ami egy dokumentum elkészítő rendszer, amit + 1985-ben készített Leslie Lamport. + Ezt egy TeX nevű írásszedő rendszerre építette, amit Donald Knuth készített + 1984-ben. + A LaTeX-et, a LyX-hez hasonló filozófia miatt készítették. + Leslie Lamport egyszer azt mondta (lásd a hivatkozásban +\begin_inset CommandInset citation +LatexCommand cite +key "lamport" + +\end_inset + +): +\end_layout + +\begin_layout Quote +A tipográfiai tervezés célja az, hogy segítsen az olvasónak megérteni a + szerző mondanivalóját. + Ahhoz, hogy egy művet könnyen el lehessen olvasni, a vizuális szerkezetének + követnie kell a logikai felépítését. + Az idézetek és számítógépprogramok teljesen különálló logikai elemek, ezért + meg kell tudni őket egymásól különböztetni\SpecialChar \ldots{} + Mivel a LyX nem érti az írott + szöveget, ezért világosan meg kell adnia a logikai struktúrát bizonyos + parancsok használatával\SpecialChar \ldots{} + Miközben művét készíti, a logikai felépítésével + kell törődnie, nem a megjelenésével. +\end_layout + +\begin_layout Subsection +Miért jobb a LyX +\end_layout + +\begin_layout Standard +\begin_inset CommandInset label +LatexCommand label +name "sec:lyxbetter" + +\end_inset + +A LyX sokkal több embernek lehet hasznos, mint a LaTeX. + Meglehetősen könnyebb megtanulni, mivel nem kell megtanulni a LaTeX-et + (ami gyakorlatilag egy programozási nyelv). + A LyX alapvetően egy másik +\begin_inset Quotes pld +\end_inset + +azt kapod amit látsz +\begin_inset Quotes prd +\end_inset + + szövegszerkesztő, bár inkább +\begin_inset Quotes pld +\end_inset + +amit lát arra gondol +\begin_inset Quotes prd +\end_inset + + típusú. + Ezáltal a word típusú szövegszerkesztők könnyű használatát kombinálja, + a LaTeX hatékonyságával. + Ez egy jó dolog. + A fájl formátuma platform független. + De legfőképpen, ingyenes! +\end_layout + +\begin_layout Section +A LyX jellemzői +\end_layout + +\begin_layout Standard +A LyX rengeteg olyan jellemzővel rendelkezik, amelyek megkönnyítik az írást. +\begin_inset Foot +status open + +\begin_layout Plain Layout +\begin_inset space ~ +\end_inset + +Ezek után, miért ne akarná használni? +\end_layout + +\end_inset + + +\shape italic +Nagyon igazgatott +\shape default + vagyok, hogy beszélhessek róluk. + Íme közülük néhány. +\end_layout + +\begin_layout Itemize +A LyX gondoskodik a margókról és a lábjegyzetek számozásáról +\end_layout + +\begin_layout Itemize +A LyX-el könnyen készíthet és szerkeszthet képleteket +\end_layout + +\begin_layout Standard +A filozófiai értekezést, hogy miért jobb a LyX a többi szövegszerkesztőnél, + megtalálja a +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:lyxbetter" + +\end_inset + +. + szakaszban, amit a +\begin_inset CommandInset ref +LatexCommand pageref +reference "sec:lyxbetter" + +\end_inset + +. + oldalon talál. +\end_layout + +\begin_layout Section +Gyenge próbálkozások más LyX-es cuccok használatához +\end_layout + +\begin_layout Standard +Egy nap írtam egy programot. + Így nézett ki. +\end_layout + +\begin_layout LyX-Code +5 REMARK A FELEMETES PROGRAMOM +\end_layout + +\begin_layout LyX-Code +10 PRINT +\begin_inset Quotes eld +\end_inset + +FELEMETES VAGYOK! +\begin_inset Quotes erd +\end_inset + + +\end_layout + +\begin_layout LyX-Code +20 GOTO 10 +\end_layout + +\begin_layout Standard +A tudományos gondolkodás után, teljesen művészien éreztem magam, és írtam + egy haiku-t +\end_layout + +\begin_layout Verse +A LyX egy nagyon szuper +\begin_inset Newline newline +\end_inset + +Szövegszedő szövegszerkesztő +\begin_inset Newline newline +\end_inset + +Sok időt takarít meg +\end_layout + +\begin_layout Section +Képletes dolgok +\end_layout + +\begin_layout Standard +A kedvenc egyenletem a másodfokú egyenlet megoldóképlete. + Ha +\begin_inset Formula $ax^{2}+bx+c=0$ +\end_inset + + (1. + képlet), akkor +\begin_inset Formula $x=\frac{-b\pm\sqrt{b^{2}-4ac}}{2a}$ +\end_inset + + (2. + képlet). +\end_layout + +\begin_layout Standard +A másik kedvenc képletem egy elemi kalkulus: +\begin_inset Formula $f'(x)\equiv\lim_{\Delta x\rightarrow0}\frac{f(x+\Delta x)-f(x)}{\Delta x}$ +\end_inset + + (3. + képlet). +\end_layout + +\begin_layout Section +Megjegyzések +\end_layout + +\begin_layout Standard +Pár megjegyzés a fájl lyx-esítéséről: +\end_layout + +\begin_layout Itemize +Ki tudtam szedni a kötőjeles sorokat. + Amelyek egyszerűen elválasztották a címet és a hivatkozást a dokumentum + többi részétől. + A LyX (LaTeX) elég sokat tud arról, hogyan kell ezt az elkülönítést elvégezni. +\end_layout + +\begin_layout Itemize +Nem zavartam be a képlet megjelenítési módjával. + Valamint nem használtam az automatikus képlet számozást sem, mivel az nincs + leírva a +\emph on +Tankönyvben +\emph default +. +\end_layout + +\begin_layout Itemize +Nem kellett begépelnem a +\begin_inset Quotes pld +\end_inset + +Hivatkozások +\begin_inset Quotes prd +\end_inset + + szót lentebb. + A LyX magától odaírta nekem (vagy az +\begin_inset Quotes pld +\end_inset + +Irodalomjegyzék +\begin_inset Quotes prd +\end_inset + + szót, függően a szövegosztálytól) +\end_layout + +\begin_layout Bibliography +\begin_inset CommandInset bibitem +LatexCommand bibitem +key "lamport" + +\end_inset + +Lamport, Leslie. + +\emph on +LaTeX: A Document Preparation System. + +\emph default + Addison-Wesley, Reading, Massachusetts, második kiadás, 1994. +\end_layout + +\end_body +\end_document diff --git a/lib/examples/hu/example_raw.lyx b/lib/examples/hu/example_raw.lyx index 85495398d1..9c7504e774 100644 --- a/lib/examples/hu/example_raw.lyx +++ b/lib/examples/hu/example_raw.lyx @@ -1,424 +1,424 @@ -#LyX 1.6.5svn created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass article -\begin_preamble -%\def\magyarOptions{defaults=over-1.4,footnote=huplain} -\usepackage{indentfirst} -\frenchspacing -\end_preamble -\use_default_options false -\language magyar -\inputencoding auto -\font_roman default -\font_sans default -\font_typewriter default -\font_default_family default -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize 12 -\spacing single -\use_hyperref false -\papersize default -\use_geometry false -\use_amsmath 1 -\use_esint 0 -\cite_engine basic -\use_bibtopic false -\paperorientation portrait -\secnumdepth 3 -\tocdepth 3 -\paragraph_separation indent -\defskip medskip -\quotes_language polish -\papercolumns 1 -\papersides 1 -\paperpagestyle plain -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Standard -EZ A DOKUMENTUM CÍME -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: a címnek jobban CÍMNEK kell látszania -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -készítette egy LyX-es -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: ide kerül a SZERZŐ -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -1972. - június 12 -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: ez lesz a DÁTUM -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -Tartalomjegyzék -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: jó lenne nem kellene külön begépelni a tartalomjegyzéket -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -1. - Alap filozófia..................1 -\end_layout - -\begin_layout Standard -1.1 Hogyan valósítja meg ezt a LyX...............1 -\end_layout - -\begin_layout Standard -1.2 Miért jobb a LyX ...............1 -\end_layout - -\begin_layout Standard -2. - A LyX jellemzői -\end_layout - -\begin_layout Standard -3. - Gyenge próbálkozások más LyX-es cuccok használatához -\end_layout - -\begin_layout Standard -4. - Képletes dolgok -\end_layout - -\begin_layout Standard ---------------------------------------------------- -\end_layout - -\begin_layout Standard -1. - Alap filozófia -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: a szakaszcímnek jobban ki kellene tűnnie -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -A LyX alapfilozófiája az, hogy csak arra kell koncentrálnia amit le akarni - írni, nem arra hogyan fog kinézni. -\end_layout - -\begin_layout Standard -1.1 Hogyan valósítja meg ezt a LyX -\end_layout - -\begin_layout Standard -A LyX a LaTeX-et használja, ami egy dokumentum elkészítő rendszer, amit - 1985-ben készített Leslie Lamport. - Ezt egy TeX nevű írásszedő rendszerre építette, amit Donald Knuth készített - 1984-ben. - A LaTeX-et, a LyX-hez hasonló filozófia miatt készítették. - Leslie Lamport egyszer azt mondta (lásd a [2] hivatkozásban): -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: valószínűleg ennek az IDÉZET HIVATKOZÁSNAK nem kellene be betonozva - lennie. - Mi lenne, ha Lamport könyve a második elem lenne az irodalomjegyzéknek? -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Quotes pld -\end_inset - -A tipográfiai tervezés célja az, hogy segítsen az olvasónak megérteni a - szerző mondanivalóját. - Ahhoz, hogy egy művet könnyen el lehessen olvasni, a vizuális szerkezetének - követnie kell a logikai felépítését. - Az idézetek és számítógépprogramok teljesen különálló logikai elemek, ezért - meg kell tudni őket egymásól különböztetni... - Mivel a LyX nem érti az írott szöveget, ezért világosan meg kell adnia - a logikai struktúrát bizonyos parancsok használatával\SpecialChar \ldots{} - Miközben művét készíti, - a logikai felépítésével kell törődnie, nem a megjelenésével. -\begin_inset Quotes prd -\end_inset - - -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: ez egy IDÉZET -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -1.2 Miért jobb a LyX -\end_layout - -\begin_layout Standard -A LyX sokkal több embernek lehet hasznos, mint a LaTeX. - Meglehetősen könnyebb megtanulni, mivel nem kell megtanulni a LaTeX-et - (ami gyakorlatilag egy programozási nyelv). - A LyX alapvetően egy másik -\begin_inset Quotes pld -\end_inset - -azt kapod amit látsz -\begin_inset Quotes prd -\end_inset - - szövegszerkesztő, bár inkább -\begin_inset Quotes pld -\end_inset - -amit lát arra gondol -\begin_inset Quotes prd -\end_inset - - típusú. - Ezáltal a word típusú szövegszerkesztők könnyű használatát kombinálja, - a LaTeX hatékonyságával. - Ez egy jó dolog. - A fájl formátuma platform független. - De legfőképpen, ingyenes! -\end_layout - -\begin_layout Standard -2. - A LyX jellemzői -\end_layout - -\begin_layout Standard -A LyX rengeteg olyan jellemzővel rendelkezik, amelyek megkönnyítik az írást. - (Ezek után, miért ne akarná használni? -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: a zárójelben lévő sokkal jobban mutatna a LÁBJEGYZETben -\end_layout - -\end_inset - -). - -\shape italic -\emph on -NAGYON IZGATOTT -\shape default -\emph default - -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: KIEMELÉS! -\end_layout - -\end_inset - - vagyok, hogy beszélhessek róluk. - Íme közülük néhány. -\end_layout - -\begin_layout Standard -*A LyX gondoskodik a margókról és a lábjegyzetek számozásáról -\end_layout - -\begin_layout Standard -*A LyX-el könnyen készíthet és szerkeszthet képleteket -\end_layout - -\begin_layout Standard -A filozófiai értekezést, hogy miért jobb a LyX a többi szövegszerkesztőnél, - megtalálja a 1.2 szakaszban, amit az 1. - oldalon talál. -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: ennek a KERESZT-HIVATKOZÁSNAK nem kellene fixnek lennie. - Mi történik, ha megváltoztatjuk a szakaszszámozást? -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -3. - Gyenge próbálkozások más LyX-es cuccok használatához -\end_layout - -\begin_layout Standard -Egy nap írtam egy programot. - Így nézett ki. -\end_layout - -\begin_layout Standard -5 REMARK A FELEMETES PROGRAMOM -\end_layout - -\begin_layout Standard -10 PRINT -\begin_inset Quotes eld -\end_inset - -FELEMETES VAGYOK! -\begin_inset Quotes erd -\end_inset - - -\end_layout - -\begin_layout Standard -20 GOTO 10 -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: ez egy PROGRAM-KÓD -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -A tudományos gondolkodás után, teljesen művészien éreztem magam, és írtam - egy haiku-t -\end_layout - -\begin_layout Standard -A LyX egy nagyon szuper -\begin_inset Newline newline -\end_inset - -Szövegszedő szövegszerkesztő -\begin_inset Newline newline -\end_inset - -Sok időt takarít meg -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: ez így nem túl jó mivel egy költemény, azaz egy VERS -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -4. - Képletes dolgok -\begin_inset Note Note -status collapsed - -\begin_layout Plain Layout -Tanács: ezek a képletek normális módon kellene hogy megjelenjenek. -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -A kedvenc egyenletem a másodfokú egyenlet megoldóképlete. - Ha ax^2+bx+c=0 (1. - képlet), akkor x= -b plusz vagy mínusz a b^2-4ac négyzetgyöke, majd mindez - osztva 2a-val (2. - képlet). -\end_layout - -\begin_layout Standard -A másik kedvenc képletem egy elemi kalkulus: f'(x) határérték, amikor [f(x+delta -x)- f(x)]-ben deltax tart a nullához és az egész osztva deltax-el (3. - képlet). -\end_layout - -\begin_layout Standard ------------------------------------------------- -\end_layout - -\begin_layout Standard -HIVATKOZÁSOK -\end_layout - -\begin_layout Standard -[1] Lamport, Leslie. - -\emph on -LaTeX: A Document Preparation System. - -\emph default - Addison-Wesley, Reading, Massachusetts, második kiadás, 1994. -\end_layout - -\end_body -\end_document +#LyX 1.6.5svn created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass article +\begin_preamble +%\def\magyarOptions{defaults=over-1.4,footnote=huplain} +\usepackage{indentfirst} +\frenchspacing +\end_preamble +\use_default_options false +\language magyar +\inputencoding auto +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize 12 +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 0 +\cite_engine basic +\use_bibtopic false +\paperorientation portrait +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\defskip medskip +\quotes_language polish +\papercolumns 1 +\papersides 1 +\paperpagestyle plain +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Standard +EZ A DOKUMENTUM CÍME +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: a címnek jobban CÍMNEK kell látszania +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +készítette egy LyX-es +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: ide kerül a SZERZŐ +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +1972. + június 12 +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: ez lesz a DÁTUM +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Tartalomjegyzék +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: jó lenne nem kellene külön begépelni a tartalomjegyzéket +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +1. + Alap filozófia..................1 +\end_layout + +\begin_layout Standard +1.1 Hogyan valósítja meg ezt a LyX...............1 +\end_layout + +\begin_layout Standard +1.2 Miért jobb a LyX ...............1 +\end_layout + +\begin_layout Standard +2. + A LyX jellemzői +\end_layout + +\begin_layout Standard +3. + Gyenge próbálkozások más LyX-es cuccok használatához +\end_layout + +\begin_layout Standard +4. + Képletes dolgok +\end_layout + +\begin_layout Standard +--------------------------------------------------- +\end_layout + +\begin_layout Standard +1. + Alap filozófia +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: a szakaszcímnek jobban ki kellene tűnnie +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +A LyX alapfilozófiája az, hogy csak arra kell koncentrálnia amit le akarni + írni, nem arra hogyan fog kinézni. +\end_layout + +\begin_layout Standard +1.1 Hogyan valósítja meg ezt a LyX +\end_layout + +\begin_layout Standard +A LyX a LaTeX-et használja, ami egy dokumentum elkészítő rendszer, amit + 1985-ben készített Leslie Lamport. + Ezt egy TeX nevű írásszedő rendszerre építette, amit Donald Knuth készített + 1984-ben. + A LaTeX-et, a LyX-hez hasonló filozófia miatt készítették. + Leslie Lamport egyszer azt mondta (lásd a [2] hivatkozásban): +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: valószínűleg ennek az IDÉZET HIVATKOZÁSNAK nem kellene be betonozva + lennie. + Mi lenne, ha Lamport könyve a második elem lenne az irodalomjegyzéknek? +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Quotes pld +\end_inset + +A tipográfiai tervezés célja az, hogy segítsen az olvasónak megérteni a + szerző mondanivalóját. + Ahhoz, hogy egy művet könnyen el lehessen olvasni, a vizuális szerkezetének + követnie kell a logikai felépítését. + Az idézetek és számítógépprogramok teljesen különálló logikai elemek, ezért + meg kell tudni őket egymásól különböztetni... + Mivel a LyX nem érti az írott szöveget, ezért világosan meg kell adnia + a logikai struktúrát bizonyos parancsok használatával\SpecialChar \ldots{} + Miközben művét készíti, + a logikai felépítésével kell törődnie, nem a megjelenésével. +\begin_inset Quotes prd +\end_inset + + +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: ez egy IDÉZET +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +1.2 Miért jobb a LyX +\end_layout + +\begin_layout Standard +A LyX sokkal több embernek lehet hasznos, mint a LaTeX. + Meglehetősen könnyebb megtanulni, mivel nem kell megtanulni a LaTeX-et + (ami gyakorlatilag egy programozási nyelv). + A LyX alapvetően egy másik +\begin_inset Quotes pld +\end_inset + +azt kapod amit látsz +\begin_inset Quotes prd +\end_inset + + szövegszerkesztő, bár inkább +\begin_inset Quotes pld +\end_inset + +amit lát arra gondol +\begin_inset Quotes prd +\end_inset + + típusú. + Ezáltal a word típusú szövegszerkesztők könnyű használatát kombinálja, + a LaTeX hatékonyságával. + Ez egy jó dolog. + A fájl formátuma platform független. + De legfőképpen, ingyenes! +\end_layout + +\begin_layout Standard +2. + A LyX jellemzői +\end_layout + +\begin_layout Standard +A LyX rengeteg olyan jellemzővel rendelkezik, amelyek megkönnyítik az írást. + (Ezek után, miért ne akarná használni? +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: a zárójelben lévő sokkal jobban mutatna a LÁBJEGYZETben +\end_layout + +\end_inset + +). + +\shape italic +\emph on +NAGYON IZGATOTT +\shape default +\emph default + +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: KIEMELÉS! +\end_layout + +\end_inset + + vagyok, hogy beszélhessek róluk. + Íme közülük néhány. +\end_layout + +\begin_layout Standard +*A LyX gondoskodik a margókról és a lábjegyzetek számozásáról +\end_layout + +\begin_layout Standard +*A LyX-el könnyen készíthet és szerkeszthet képleteket +\end_layout + +\begin_layout Standard +A filozófiai értekezést, hogy miért jobb a LyX a többi szövegszerkesztőnél, + megtalálja a 1.2 szakaszban, amit az 1. + oldalon talál. +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: ennek a KERESZT-HIVATKOZÁSNAK nem kellene fixnek lennie. + Mi történik, ha megváltoztatjuk a szakaszszámozást? +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +3. + Gyenge próbálkozások más LyX-es cuccok használatához +\end_layout + +\begin_layout Standard +Egy nap írtam egy programot. + Így nézett ki. +\end_layout + +\begin_layout Standard +5 REMARK A FELEMETES PROGRAMOM +\end_layout + +\begin_layout Standard +10 PRINT +\begin_inset Quotes eld +\end_inset + +FELEMETES VAGYOK! +\begin_inset Quotes erd +\end_inset + + +\end_layout + +\begin_layout Standard +20 GOTO 10 +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: ez egy PROGRAM-KÓD +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +A tudományos gondolkodás után, teljesen művészien éreztem magam, és írtam + egy haiku-t +\end_layout + +\begin_layout Standard +A LyX egy nagyon szuper +\begin_inset Newline newline +\end_inset + +Szövegszedő szövegszerkesztő +\begin_inset Newline newline +\end_inset + +Sok időt takarít meg +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: ez így nem túl jó mivel egy költemény, azaz egy VERS +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +4. + Képletes dolgok +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Tanács: ezek a képletek normális módon kellene hogy megjelenjenek. +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +A kedvenc egyenletem a másodfokú egyenlet megoldóképlete. + Ha ax^2+bx+c=0 (1. + képlet), akkor x= -b plusz vagy mínusz a b^2-4ac négyzetgyöke, majd mindez + osztva 2a-val (2. + képlet). +\end_layout + +\begin_layout Standard +A másik kedvenc képletem egy elemi kalkulus: f'(x) határérték, amikor [f(x+delta +x)- f(x)]-ben deltax tart a nullához és az egész osztva deltax-el (3. + képlet). +\end_layout + +\begin_layout Standard +------------------------------------------------ +\end_layout + +\begin_layout Standard +HIVATKOZÁSOK +\end_layout + +\begin_layout Standard +[1] Lamport, Leslie. + +\emph on +LaTeX: A Document Preparation System. + +\emph default + Addison-Wesley, Reading, Massachusetts, második kiadás, 1994. +\end_layout + +\end_body +\end_document diff --git a/lib/examples/sweave.lyx b/lib/examples/sweave.lyx index 3f082915f5..4831fe6049 100644 --- a/lib/examples/sweave.lyx +++ b/lib/examples/sweave.lyx @@ -1,361 +1,361 @@ -#LyX 1.6.1 created this file. For more info see http://www.lyx.org/ -\lyxformat 345 -\begin_document -\begin_header -\textclass article -\use_default_options true -\begin_modules -sweave -\end_modules -\language english -\inputencoding auto -\font_roman default -\font_sans default -\font_typewriter default -\font_default_family default -\font_sc false -\font_osf false -\font_sf_scale 100 -\font_tt_scale 100 - -\graphics default -\paperfontsize default -\spacing single -\use_hyperref false -\papersize default -\use_geometry false -\use_amsmath 1 -\use_esint 1 -\cite_engine basic -\use_bibtopic false -\paperorientation portrait -\secnumdepth 3 -\tocdepth 3 -\paragraph_separation skip -\defskip medskip -\quotes_language english -\papercolumns 1 -\papersides 1 -\paperpagestyle default -\tracking_changes false -\output_changes false -\author "" -\author "" -\end_header - -\begin_body - -\begin_layout Title -A Test File -\end_layout - -\begin_layout Author -Friedrich Leisch -\begin_inset Foot -status collapsed - -\begin_layout Plain Layout -LyX -\begin_inset Quotes eld -\end_inset - -port -\begin_inset Quotes erd -\end_inset - - by Gregor Gorjanc -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -A simple example that will run in any S engine: The integers from 1 to 10 - are -\end_layout - -\begin_layout Chunk -<>= -\begin_inset Newline newline -\end_inset - -1:10 -\begin_inset Newline newline -\end_inset - -<>= -\begin_inset Newline newline -\end_inset - -print(1:20) -\begin_inset Newline newline -\end_inset - -@ % the above is just to ensure that 2 code chunks can follow each other -\end_layout - -\begin_layout Standard -We can also emulate a simple calculator: -\end_layout - -\begin_layout Chunk -<>= -\begin_inset Newline newline -\end_inset - -1 + 1 -\begin_inset Newline newline -\end_inset - -1 + pi -\begin_inset Newline newline -\end_inset - -sin(pi/2) -\begin_inset Newline newline -\end_inset - -@ -\end_layout - -\begin_layout Standard -Now we look at Gaussian data: -\end_layout - -\begin_layout Chunk -<<>>= -\begin_inset Newline newline -\end_inset - -library(stats) -\begin_inset Newline newline -\end_inset - -x <- rnorm(20) -\begin_inset Newline newline -\end_inset - -print(x) -\begin_inset Newline newline -\end_inset - -print(t1 <- t.test(x)) -\begin_inset Newline newline -\end_inset - -@ -\end_layout - -\begin_layout Standard -Note that we can easily integrate some numbers into standard text: The third - element of vector -\family typewriter -x -\family default - is -\begin_inset Flex S/R expression -status collapsed - -\begin_layout Plain Layout - -x[3] -\end_layout - -\end_inset - -, the -\begin_inset Formula $p$ -\end_inset - --value of the test is -\begin_inset Flex S/R expression -status collapsed - -\begin_layout Plain Layout - -format.pval(t1$p.value) -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard - -\family roman -\series medium -\shape up -\size normal -\emph off -\bar no -\noun off -\color none -Now we look at a summary of the famous iris dataset, and we want to see - the commands in the code chunks: -\end_layout - -\begin_layout Standard -\begin_inset Flex Sweave Options -status open - -\begin_layout Plain Layout - -echo=true,keep.source=true -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Chunk -<>= -\begin_inset Newline newline -\end_inset - -# A comment -\begin_inset Newline newline -\end_inset - -data(iris) -\begin_inset Newline newline -\end_inset - -summary(iris) -\begin_inset Newline newline -\end_inset - -@ % def -\end_layout - -\begin_layout Standard -\begin_inset Float figure -placement tbph -wide false -sideways false -status collapsed - -\begin_layout Chunk -\align center -<>= -\begin_inset Newline newline -\end_inset - -library(graphics) -\begin_inset Newline newline -\end_inset - -pairs(iris) -\begin_inset Newline newline -\end_inset - -@ -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -Pairs plot of the iris data. -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Standard -\begin_inset Float figure -placement tbph -wide false -sideways false -status collapsed - -\begin_layout Chunk -\align center -<>= -\begin_inset Newline newline -\end_inset - -boxplot(Sepal.Length~Species,data=iris) -\begin_inset Newline newline -\end_inset - -@ -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -Boxplot of sepal length grouped by species. -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\begin_layout Chunk -<>= -\begin_inset Newline newline -\end_inset - -function.that.comes.only.with.Splus(x) -\begin_inset Newline newline -\end_inset - -@ -\end_layout - -\begin_layout Standard -\begin_inset Float figure -wide false -sideways false -status open - -\begin_layout Chunk -\align center -<>= -\begin_inset Newline newline -\end_inset - -boxplot(Sepal.Length~Species,data=iris) -\begin_inset Newline newline -\end_inset - -@ -\end_layout - -\begin_layout Plain Layout -\begin_inset Caption - -\begin_layout Plain Layout -Boxplot of sepal length grouped by species -\end_layout - -\end_inset - - -\end_layout - -\end_inset - - -\end_layout - -\end_body -\end_document +#LyX 1.6.1 created this file. For more info see http://www.lyx.org/ +\lyxformat 345 +\begin_document +\begin_header +\textclass article +\use_default_options true +\begin_modules +sweave +\end_modules +\language english +\inputencoding auto +\font_roman default +\font_sans default +\font_typewriter default +\font_default_family default +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 + +\graphics default +\paperfontsize default +\spacing single +\use_hyperref false +\papersize default +\use_geometry false +\use_amsmath 1 +\use_esint 1 +\cite_engine basic +\use_bibtopic false +\paperorientation portrait +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation skip +\defskip medskip +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\author "" +\author "" +\end_header + +\begin_body + +\begin_layout Title +A Test File +\end_layout + +\begin_layout Author +Friedrich Leisch +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +LyX +\begin_inset Quotes eld +\end_inset + +port +\begin_inset Quotes erd +\end_inset + + by Gregor Gorjanc +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +A simple example that will run in any S engine: The integers from 1 to 10 + are +\end_layout + +\begin_layout Chunk +<>= +\begin_inset Newline newline +\end_inset + +1:10 +\begin_inset Newline newline +\end_inset + +<>= +\begin_inset Newline newline +\end_inset + +print(1:20) +\begin_inset Newline newline +\end_inset + +@ % the above is just to ensure that 2 code chunks can follow each other +\end_layout + +\begin_layout Standard +We can also emulate a simple calculator: +\end_layout + +\begin_layout Chunk +<>= +\begin_inset Newline newline +\end_inset + +1 + 1 +\begin_inset Newline newline +\end_inset + +1 + pi +\begin_inset Newline newline +\end_inset + +sin(pi/2) +\begin_inset Newline newline +\end_inset + +@ +\end_layout + +\begin_layout Standard +Now we look at Gaussian data: +\end_layout + +\begin_layout Chunk +<<>>= +\begin_inset Newline newline +\end_inset + +library(stats) +\begin_inset Newline newline +\end_inset + +x <- rnorm(20) +\begin_inset Newline newline +\end_inset + +print(x) +\begin_inset Newline newline +\end_inset + +print(t1 <- t.test(x)) +\begin_inset Newline newline +\end_inset + +@ +\end_layout + +\begin_layout Standard +Note that we can easily integrate some numbers into standard text: The third + element of vector +\family typewriter +x +\family default + is +\begin_inset Flex S/R expression +status collapsed + +\begin_layout Plain Layout + +x[3] +\end_layout + +\end_inset + +, the +\begin_inset Formula $p$ +\end_inset + +-value of the test is +\begin_inset Flex S/R expression +status collapsed + +\begin_layout Plain Layout + +format.pval(t1$p.value) +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard + +\family roman +\series medium +\shape up +\size normal +\emph off +\bar no +\noun off +\color none +Now we look at a summary of the famous iris dataset, and we want to see + the commands in the code chunks: +\end_layout + +\begin_layout Standard +\begin_inset Flex Sweave Options +status open + +\begin_layout Plain Layout + +echo=true,keep.source=true +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Chunk +<>= +\begin_inset Newline newline +\end_inset + +# A comment +\begin_inset Newline newline +\end_inset + +data(iris) +\begin_inset Newline newline +\end_inset + +summary(iris) +\begin_inset Newline newline +\end_inset + +@ % def +\end_layout + +\begin_layout Standard +\begin_inset Float figure +placement tbph +wide false +sideways false +status collapsed + +\begin_layout Chunk +\align center +<>= +\begin_inset Newline newline +\end_inset + +library(graphics) +\begin_inset Newline newline +\end_inset + +pairs(iris) +\begin_inset Newline newline +\end_inset + +@ +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +Pairs plot of the iris data. +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset Float figure +placement tbph +wide false +sideways false +status collapsed + +\begin_layout Chunk +\align center +<>= +\begin_inset Newline newline +\end_inset + +boxplot(Sepal.Length~Species,data=iris) +\begin_inset Newline newline +\end_inset + +@ +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +Boxplot of sepal length grouped by species. +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Chunk +<>= +\begin_inset Newline newline +\end_inset + +function.that.comes.only.with.Splus(x) +\begin_inset Newline newline +\end_inset + +@ +\end_layout + +\begin_layout Standard +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Chunk +\align center +<>= +\begin_inset Newline newline +\end_inset + +boxplot(Sepal.Length~Species,data=iris) +\begin_inset Newline newline +\end_inset + +@ +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption + +\begin_layout Plain Layout +Boxplot of sepal length grouped by species +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_body +\end_document diff --git a/src/frontends/qt4/InsetParamsDialog.cpp b/src/frontends/qt4/InsetParamsDialog.cpp index 698cf899bf..00aa01c9d5 100644 --- a/src/frontends/qt4/InsetParamsDialog.cpp +++ b/src/frontends/qt4/InsetParamsDialog.cpp @@ -1,286 +1,286 @@ -/** - * \file InsetParamsDialog.cpp - * This file is part of LyX, the document processor. - * Licence details can be found in the file COPYING. - * - * \author Abdelrazak Younes - * - * Full author contact details are available in file CREDITS. - */ - -#include - -#include "InsetParamsDialog.h" - -#include "GuiBox.h" -#include "GuiBranch.h" -#include "GuiBibitem.h" -#include "GuiERT.h" -#include "GuiHSpace.h" -#include "GuiHyperlink.h" -#include "GuiInfo.h" -#include "GuiLabel.h" -#include "GuiLine.h" -#include "GuiNomenclature.h" -#include "GuiPrintNomencl.h" -#include "GuiTabular.h" -#include "GuiVSpace.h" -#include "FloatPlacement.h" - -#include "InsetParamsWidget.h" -#include "qt_helpers.h" - -#include "Buffer.h" -#include "buffer_funcs.h" -#include "BufferParams.h" -#include "BufferView.h" -#include "Cursor.h" -#include "FuncRequest.h" -#include "FuncStatus.h" -#include "LyX.h" - -#include "support/debug.h" -#include "support/lstrings.h" - -using namespace std; -using namespace lyx::support; - -namespace lyx { -namespace frontend { - -///////////////////////////////////////////////////////////////// -// -// InsetParamsDialog::Private -// -///////////////////////////////////////////////////////////////// - -struct InsetParamsDialog::Private -{ - Private() : widget_(0), inset_(0), changed_(false) {} - /// - InsetParamsWidget * widget_; - /// The inset that was used at last Restore or Apply operation. - Inset const * inset_; - /// Set to true whenever the dialog is changed and set back to - /// false when the dialog is applied or restored. - bool changed_; -}; - -///////////////////////////////////////////////////////////////// -// -// InsetParamsDialog -// -///////////////////////////////////////////////////////////////// - -InsetParamsDialog::InsetParamsDialog(GuiView & lv, InsetParamsWidget * widget) - : DialogView(lv, toqstr(insetName(widget->insetCode())), - toqstr(insetName(widget->insetCode()))), d(new Private) -{ - setupUi(this); - setInsetParamsWidget(widget); - synchronizedViewCB->setChecked(false); - on_synchronizedViewCB_stateChanged(false); - setFocusProxy(widget); -} - -InsetParamsDialog::~InsetParamsDialog() -{ - delete d; -} - - -bool InsetParamsDialog::initialiseParams(std::string const & data) -{ - if (!d->widget_->initialiseParams(data)) - on_restorePB_clicked(); - return true; -} - - -void InsetParamsDialog::setInsetParamsWidget(InsetParamsWidget * widget) -{ - d->widget_ = widget; - stackedWidget->addWidget(widget); - stackedWidget->setCurrentWidget(widget); - connect(d->widget_, SIGNAL(changed()), this, SLOT(onWidget_changed())); -} - - -void InsetParamsDialog::on_restorePB_clicked() -{ - updateView(true); - restorePB->setEnabled(false); - d->changed_ = false; - d->inset_ = inset(d->widget_->insetCode()); -} - - -void InsetParamsDialog::on_okPB_clicked() -{ - Inset const * i = inset(d->widget_->insetCode()); - if (i) - applyView(); - else - newInset(); - hide(); -} - - -void InsetParamsDialog::newInset() -{ - docstring const argument = d->widget_->dialogToParams(); - dispatch(FuncRequest(d->widget_->creationCode(), argument)); -} - - -void InsetParamsDialog::on_newPB_clicked() -{ - newInset(); -} - - -void InsetParamsDialog::on_applyPB_clicked() -{ - applyView(); -} - - -void InsetParamsDialog::on_closePB_clicked() -{ - hide(); -} - - -void InsetParamsDialog::on_synchronizedViewCB_stateChanged(int state) -{ - checkWidgets(state == Qt::Checked); -} - - -docstring InsetParamsDialog::checkWidgets(bool synchronized_view) -{ - bool const widget_ok = d->widget_->checkWidgets(); - Inset const * ins = inset(d->widget_->insetCode()); - docstring const argument = d->widget_->dialogToParams(); - bool valid_argument = !argument.empty(); - if (ins) - valid_argument &= ins->validateModifyArgument(argument); - FuncCode const code = synchronized_view - ? d->widget_->creationCode() : LFUN_INSET_MODIFY; - bool const lfun_ok = lyx::getStatus(FuncRequest(code, argument)).enabled(); - bool const read_only = buffer().isReadonly(); - - okPB->setEnabled(!synchronized_view && widget_ok && !read_only && valid_argument); - bool const can_be_restored = !synchronized_view && !read_only - && ins && (ins != d->inset_ || d->changed_); - restorePB->setEnabled(can_be_restored); - applyPB->setEnabled(lfun_ok && widget_ok && !read_only && valid_argument); - d->widget_->setEnabled(!read_only); - return argument; -} - - -void InsetParamsDialog::onWidget_changed() -{ - d->changed_ = true; - docstring const argument = checkWidgets(synchronizedViewCB->isChecked()); - if (synchronizedViewCB->isChecked()) - dispatch(FuncRequest(LFUN_INSET_MODIFY, argument)); -} - - -void InsetParamsDialog::applyView() -{ - docstring const argument = checkWidgets(synchronizedViewCB->isChecked()); - dispatch(FuncRequest(LFUN_INSET_MODIFY, argument)); - d->changed_ = false; - d->inset_ = inset(d->widget_->insetCode()); - updateView(true); -} - - -void InsetParamsDialog::updateView(bool update_widget) -{ - if (update_widget) { - Inset const * i = inset(d->widget_->insetCode()); - if (i) { - d->widget_->blockSignals(true); - d->widget_->paramsToDialog(i); - d->widget_->blockSignals(false); - } - } - checkWidgets(synchronizedViewCB->isChecked()); -} - - -void InsetParamsDialog::updateView() -{ - updateView(synchronizedViewCB->isChecked()); -} - - -Dialog * createDialog(GuiView & lv, InsetCode code) -{ - InsetParamsWidget * widget; - switch (code) { - case ERT_CODE: - widget = new GuiERT; - break; - case FLOAT_CODE: - widget = new FloatPlacement(true); - break; - case BIBITEM_CODE: - widget = new GuiBibitem; - break; - case BRANCH_CODE: - widget = new GuiBranch; - break; - case BOX_CODE: - widget = new GuiBox; - break; - case HYPERLINK_CODE: - widget = new GuiHyperlink; - break; - case INFO_CODE: - widget = new GuiInfo; - break; - case LABEL_CODE: - widget = new GuiLabel; - break; - case LINE_CODE: - widget = new GuiLine; - break; - case MATH_SPACE_CODE: - widget = new GuiHSpace(true); - break; - case NOMENCL_CODE: - widget = new GuiNomenclature; - break; - case NOMENCL_PRINT_CODE: - widget = new GuiPrintNomencl; - break; - case SPACE_CODE: - widget = new GuiHSpace(false); - break; - case TABULAR_CODE: - widget = new GuiTabular; - break; - case VSPACE_CODE: - widget = new GuiVSpace; - break; - default: return 0; - } - InsetParamsDialog * dialog = new InsetParamsDialog(lv, widget); - return dialog; -} - - -Dialog * createDialog(GuiView & lv, string const & name) -{ - return createDialog(lv, insetCode(name)); -} - -} // namespace frontend -} // namespace lyx - -#include "moc_InsetParamsDialog.cpp" +/** + * \file InsetParamsDialog.cpp + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author Abdelrazak Younes + * + * Full author contact details are available in file CREDITS. + */ + +#include + +#include "InsetParamsDialog.h" + +#include "GuiBox.h" +#include "GuiBranch.h" +#include "GuiBibitem.h" +#include "GuiERT.h" +#include "GuiHSpace.h" +#include "GuiHyperlink.h" +#include "GuiInfo.h" +#include "GuiLabel.h" +#include "GuiLine.h" +#include "GuiNomenclature.h" +#include "GuiPrintNomencl.h" +#include "GuiTabular.h" +#include "GuiVSpace.h" +#include "FloatPlacement.h" + +#include "InsetParamsWidget.h" +#include "qt_helpers.h" + +#include "Buffer.h" +#include "buffer_funcs.h" +#include "BufferParams.h" +#include "BufferView.h" +#include "Cursor.h" +#include "FuncRequest.h" +#include "FuncStatus.h" +#include "LyX.h" + +#include "support/debug.h" +#include "support/lstrings.h" + +using namespace std; +using namespace lyx::support; + +namespace lyx { +namespace frontend { + +///////////////////////////////////////////////////////////////// +// +// InsetParamsDialog::Private +// +///////////////////////////////////////////////////////////////// + +struct InsetParamsDialog::Private +{ + Private() : widget_(0), inset_(0), changed_(false) {} + /// + InsetParamsWidget * widget_; + /// The inset that was used at last Restore or Apply operation. + Inset const * inset_; + /// Set to true whenever the dialog is changed and set back to + /// false when the dialog is applied or restored. + bool changed_; +}; + +///////////////////////////////////////////////////////////////// +// +// InsetParamsDialog +// +///////////////////////////////////////////////////////////////// + +InsetParamsDialog::InsetParamsDialog(GuiView & lv, InsetParamsWidget * widget) + : DialogView(lv, toqstr(insetName(widget->insetCode())), + toqstr(insetName(widget->insetCode()))), d(new Private) +{ + setupUi(this); + setInsetParamsWidget(widget); + synchronizedViewCB->setChecked(false); + on_synchronizedViewCB_stateChanged(false); + setFocusProxy(widget); +} + +InsetParamsDialog::~InsetParamsDialog() +{ + delete d; +} + + +bool InsetParamsDialog::initialiseParams(std::string const & data) +{ + if (!d->widget_->initialiseParams(data)) + on_restorePB_clicked(); + return true; +} + + +void InsetParamsDialog::setInsetParamsWidget(InsetParamsWidget * widget) +{ + d->widget_ = widget; + stackedWidget->addWidget(widget); + stackedWidget->setCurrentWidget(widget); + connect(d->widget_, SIGNAL(changed()), this, SLOT(onWidget_changed())); +} + + +void InsetParamsDialog::on_restorePB_clicked() +{ + updateView(true); + restorePB->setEnabled(false); + d->changed_ = false; + d->inset_ = inset(d->widget_->insetCode()); +} + + +void InsetParamsDialog::on_okPB_clicked() +{ + Inset const * i = inset(d->widget_->insetCode()); + if (i) + applyView(); + else + newInset(); + hide(); +} + + +void InsetParamsDialog::newInset() +{ + docstring const argument = d->widget_->dialogToParams(); + dispatch(FuncRequest(d->widget_->creationCode(), argument)); +} + + +void InsetParamsDialog::on_newPB_clicked() +{ + newInset(); +} + + +void InsetParamsDialog::on_applyPB_clicked() +{ + applyView(); +} + + +void InsetParamsDialog::on_closePB_clicked() +{ + hide(); +} + + +void InsetParamsDialog::on_synchronizedViewCB_stateChanged(int state) +{ + checkWidgets(state == Qt::Checked); +} + + +docstring InsetParamsDialog::checkWidgets(bool synchronized_view) +{ + bool const widget_ok = d->widget_->checkWidgets(); + Inset const * ins = inset(d->widget_->insetCode()); + docstring const argument = d->widget_->dialogToParams(); + bool valid_argument = !argument.empty(); + if (ins) + valid_argument &= ins->validateModifyArgument(argument); + FuncCode const code = synchronized_view + ? d->widget_->creationCode() : LFUN_INSET_MODIFY; + bool const lfun_ok = lyx::getStatus(FuncRequest(code, argument)).enabled(); + bool const read_only = buffer().isReadonly(); + + okPB->setEnabled(!synchronized_view && widget_ok && !read_only && valid_argument); + bool const can_be_restored = !synchronized_view && !read_only + && ins && (ins != d->inset_ || d->changed_); + restorePB->setEnabled(can_be_restored); + applyPB->setEnabled(lfun_ok && widget_ok && !read_only && valid_argument); + d->widget_->setEnabled(!read_only); + return argument; +} + + +void InsetParamsDialog::onWidget_changed() +{ + d->changed_ = true; + docstring const argument = checkWidgets(synchronizedViewCB->isChecked()); + if (synchronizedViewCB->isChecked()) + dispatch(FuncRequest(LFUN_INSET_MODIFY, argument)); +} + + +void InsetParamsDialog::applyView() +{ + docstring const argument = checkWidgets(synchronizedViewCB->isChecked()); + dispatch(FuncRequest(LFUN_INSET_MODIFY, argument)); + d->changed_ = false; + d->inset_ = inset(d->widget_->insetCode()); + updateView(true); +} + + +void InsetParamsDialog::updateView(bool update_widget) +{ + if (update_widget) { + Inset const * i = inset(d->widget_->insetCode()); + if (i) { + d->widget_->blockSignals(true); + d->widget_->paramsToDialog(i); + d->widget_->blockSignals(false); + } + } + checkWidgets(synchronizedViewCB->isChecked()); +} + + +void InsetParamsDialog::updateView() +{ + updateView(synchronizedViewCB->isChecked()); +} + + +Dialog * createDialog(GuiView & lv, InsetCode code) +{ + InsetParamsWidget * widget; + switch (code) { + case ERT_CODE: + widget = new GuiERT; + break; + case FLOAT_CODE: + widget = new FloatPlacement(true); + break; + case BIBITEM_CODE: + widget = new GuiBibitem; + break; + case BRANCH_CODE: + widget = new GuiBranch; + break; + case BOX_CODE: + widget = new GuiBox; + break; + case HYPERLINK_CODE: + widget = new GuiHyperlink; + break; + case INFO_CODE: + widget = new GuiInfo; + break; + case LABEL_CODE: + widget = new GuiLabel; + break; + case LINE_CODE: + widget = new GuiLine; + break; + case MATH_SPACE_CODE: + widget = new GuiHSpace(true); + break; + case NOMENCL_CODE: + widget = new GuiNomenclature; + break; + case NOMENCL_PRINT_CODE: + widget = new GuiPrintNomencl; + break; + case SPACE_CODE: + widget = new GuiHSpace(false); + break; + case TABULAR_CODE: + widget = new GuiTabular; + break; + case VSPACE_CODE: + widget = new GuiVSpace; + break; + default: return 0; + } + InsetParamsDialog * dialog = new InsetParamsDialog(lv, widget); + return dialog; +} + + +Dialog * createDialog(GuiView & lv, string const & name) +{ + return createDialog(lv, insetCode(name)); +} + +} // namespace frontend +} // namespace lyx + +#include "moc_InsetParamsDialog.cpp" diff --git a/src/frontends/qt4/InsetParamsDialog.h b/src/frontends/qt4/InsetParamsDialog.h index 2406e13df6..0d6e784d71 100644 --- a/src/frontends/qt4/InsetParamsDialog.h +++ b/src/frontends/qt4/InsetParamsDialog.h @@ -1,71 +1,71 @@ -// -*- C++ -*- -/** - * \file InsetParamsDialog.h - * This file is part of LyX, the document processor. - * Licence details can be found in the file COPYING. - * - * \author Abdelrazak Younes - * - * Full author contact details are available in file CREDITS. - */ - -#ifndef INSET_PARAMS_DIALOG_H -#define INSET_PARAMS_DIALOG_H - -#include "DialogView.h" -#include "ui_InsetParamsUi.h" - -#include "qt_i18n.h" - -namespace lyx { - -class Inset; - -namespace frontend { - -class InsetParamsWidget; - -class InsetParamsDialog : public DialogView, public Ui::InsetParamsUi -{ - Q_OBJECT -public: - InsetParamsDialog(GuiView & lv, InsetParamsWidget * widget); - ~InsetParamsDialog(); - - /// - void setInsetParamsWidget(InsetParamsWidget * widget); - -protected Q_SLOTS: - void onWidget_changed(); - void applyView(); - void on_restorePB_clicked(); - void on_newPB_clicked(); - void on_okPB_clicked(); - void on_applyPB_clicked(); - void on_closePB_clicked(); - void on_synchronizedViewCB_stateChanged(int state); - -private: - /// \name DialogView inherited methods - //@{ - void updateView(); - void dispatchParams() {} - bool isBufferDependent() const { return true; } - bool canApply() const { return true; } - bool initialiseParams(std::string const &); - //@} - /// - void newInset(); - /// - void updateView(bool update_widget); - /// - docstring checkWidgets(bool synchronized_view); - /// pimpl - struct Private; - Private * d; -}; - -} // namespace frontend -} // namespace lyx - -#endif // INSET_PARAMS_DIALOG_H +// -*- C++ -*- +/** + * \file InsetParamsDialog.h + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author Abdelrazak Younes + * + * Full author contact details are available in file CREDITS. + */ + +#ifndef INSET_PARAMS_DIALOG_H +#define INSET_PARAMS_DIALOG_H + +#include "DialogView.h" +#include "ui_InsetParamsUi.h" + +#include "qt_i18n.h" + +namespace lyx { + +class Inset; + +namespace frontend { + +class InsetParamsWidget; + +class InsetParamsDialog : public DialogView, public Ui::InsetParamsUi +{ + Q_OBJECT +public: + InsetParamsDialog(GuiView & lv, InsetParamsWidget * widget); + ~InsetParamsDialog(); + + /// + void setInsetParamsWidget(InsetParamsWidget * widget); + +protected Q_SLOTS: + void onWidget_changed(); + void applyView(); + void on_restorePB_clicked(); + void on_newPB_clicked(); + void on_okPB_clicked(); + void on_applyPB_clicked(); + void on_closePB_clicked(); + void on_synchronizedViewCB_stateChanged(int state); + +private: + /// \name DialogView inherited methods + //@{ + void updateView(); + void dispatchParams() {} + bool isBufferDependent() const { return true; } + bool canApply() const { return true; } + bool initialiseParams(std::string const &); + //@} + /// + void newInset(); + /// + void updateView(bool update_widget); + /// + docstring checkWidgets(bool synchronized_view); + /// pimpl + struct Private; + Private * d; +}; + +} // namespace frontend +} // namespace lyx + +#endif // INSET_PARAMS_DIALOG_H diff --git a/src/frontends/qt4/InsetParamsWidget.cpp b/src/frontends/qt4/InsetParamsWidget.cpp index 5eae61c9ca..317ad50234 100644 --- a/src/frontends/qt4/InsetParamsWidget.cpp +++ b/src/frontends/qt4/InsetParamsWidget.cpp @@ -1,64 +1,64 @@ -// -*- C++ -*- -/** - * \file InsetParamsWidget.cpp - * This file is part of LyX, the document processor. - * Licence details can be found in the file COPYING. - * - * \author Abdelrazak Younes - * - * Full author contact details are available in file CREDITS. - */ - -#include - -#include "InsetParamsWidget.h" - -#include "qt_helpers.h" - -#include - -namespace lyx { - -namespace frontend { - -CheckedWidget::CheckedWidget(QLineEdit * input, QWidget * label) - : input_(input), label_(label) -{ -} - - -bool CheckedWidget::check() const -{ - bool const valid = input_->hasAcceptableInput(); - // Visual feedback. - setValid(input_, valid); - if (label_) - setValid(label_, valid); - return valid; -} - - - -InsetParamsWidget::InsetParamsWidget(QWidget * parent) : QWidget(parent) -{ -} - - -void InsetParamsWidget::addCheckedWidget(QLineEdit * input, QWidget * label) -{ - checked_widgets_.append(CheckedWidget(input, label)); -} - - -bool InsetParamsWidget::checkWidgets() const -{ - bool valid = true; - Q_FOREACH(CheckedWidget const & le, checked_widgets_) - valid &= le.check(); - return valid; -} - -} // namespace frontend -} // namespace lyx - -#include "moc_InsetParamsWidget.cpp" +// -*- C++ -*- +/** + * \file InsetParamsWidget.cpp + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author Abdelrazak Younes + * + * Full author contact details are available in file CREDITS. + */ + +#include + +#include "InsetParamsWidget.h" + +#include "qt_helpers.h" + +#include + +namespace lyx { + +namespace frontend { + +CheckedWidget::CheckedWidget(QLineEdit * input, QWidget * label) + : input_(input), label_(label) +{ +} + + +bool CheckedWidget::check() const +{ + bool const valid = input_->hasAcceptableInput(); + // Visual feedback. + setValid(input_, valid); + if (label_) + setValid(label_, valid); + return valid; +} + + + +InsetParamsWidget::InsetParamsWidget(QWidget * parent) : QWidget(parent) +{ +} + + +void InsetParamsWidget::addCheckedWidget(QLineEdit * input, QWidget * label) +{ + checked_widgets_.append(CheckedWidget(input, label)); +} + + +bool InsetParamsWidget::checkWidgets() const +{ + bool valid = true; + Q_FOREACH(CheckedWidget const & le, checked_widgets_) + valid &= le.check(); + return valid; +} + +} // namespace frontend +} // namespace lyx + +#include "moc_InsetParamsWidget.cpp" diff --git a/src/frontends/qt4/InsetParamsWidget.h b/src/frontends/qt4/InsetParamsWidget.h index 8e5098803f..00286c9b21 100644 --- a/src/frontends/qt4/InsetParamsWidget.h +++ b/src/frontends/qt4/InsetParamsWidget.h @@ -1,87 +1,87 @@ -// -*- C++ -*- -/** - * \file InsetParamsWidget.h - * This file is part of LyX, the document processor. - * Licence details can be found in the file COPYING. - * - * \author Abdelrazak Younes - * - * Full author contact details are available in file CREDITS. - */ - -#ifndef INSET_PARAMS_WIDGET_H -#define INSET_PARAMS_WIDGET_H - -#include "insets/InsetCode.h" - -#include "FuncCode.h" - -#include "support/strfwd.h" - -#include - -class QLineEdit; - -namespace lyx { - -class Inset; - -namespace frontend { - -/// CheckedWidget -// FIXME: Get rid of CheckedLineEdit in ButtonController and rename this one -// to it. -class CheckedWidget -{ -public: - CheckedWidget(QLineEdit * input, QWidget * label = 0); - /// - bool check() const; - -private: - // non-owned - QLineEdit * input_; - QWidget * label_; -}; - - -typedef QList CheckedWidgets; - -class InsetParamsWidget : public QWidget -{ - Q_OBJECT - -Q_SIGNALS: - void changed(); -public: - InsetParamsWidget(QWidget * parent); - /// This is a base class; destructor must exist and be virtual. - virtual ~InsetParamsWidget() {} - /// - virtual InsetCode insetCode() const = 0; - /// - virtual FuncCode creationCode() const = 0; - /// - virtual void paramsToDialog(Inset const *) = 0; - /// - virtual docstring dialogToParams() const = 0; - /// - virtual bool initialiseParams(std::string const & /*data*/) - { return false; } - - /// \return true if all CheckedWidgets are in a valid state. - virtual bool checkWidgets() const; - -protected: - /// Add a widget to the list of all widgets whose validity should - /// be checked explicitly when the buttons are refreshed. - void addCheckedWidget(QLineEdit * input, QWidget * label = 0); -private: - /// - CheckedWidgets checked_widgets_; -}; - -} // namespace frontend -} // namespace lyx - -#endif // INSET_PARAMS_WIDGET_H +// -*- C++ -*- +/** + * \file InsetParamsWidget.h + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author Abdelrazak Younes + * + * Full author contact details are available in file CREDITS. + */ + +#ifndef INSET_PARAMS_WIDGET_H +#define INSET_PARAMS_WIDGET_H + +#include "insets/InsetCode.h" + +#include "FuncCode.h" + +#include "support/strfwd.h" + +#include + +class QLineEdit; + +namespace lyx { + +class Inset; + +namespace frontend { + +/// CheckedWidget +// FIXME: Get rid of CheckedLineEdit in ButtonController and rename this one +// to it. +class CheckedWidget +{ +public: + CheckedWidget(QLineEdit * input, QWidget * label = 0); + /// + bool check() const; + +private: + // non-owned + QLineEdit * input_; + QWidget * label_; +}; + + +typedef QList CheckedWidgets; + +class InsetParamsWidget : public QWidget +{ + Q_OBJECT + +Q_SIGNALS: + void changed(); +public: + InsetParamsWidget(QWidget * parent); + /// This is a base class; destructor must exist and be virtual. + virtual ~InsetParamsWidget() {} + /// + virtual InsetCode insetCode() const = 0; + /// + virtual FuncCode creationCode() const = 0; + /// + virtual void paramsToDialog(Inset const *) = 0; + /// + virtual docstring dialogToParams() const = 0; + /// + virtual bool initialiseParams(std::string const & /*data*/) + { return false; } + + /// \return true if all CheckedWidgets are in a valid state. + virtual bool checkWidgets() const; + +protected: + /// Add a widget to the list of all widgets whose validity should + /// be checked explicitly when the buttons are refreshed. + void addCheckedWidget(QLineEdit * input, QWidget * label = 0); +private: + /// + CheckedWidgets checked_widgets_; +}; + +} // namespace frontend +} // namespace lyx + +#endif // INSET_PARAMS_WIDGET_H diff --git a/src/insets/InsetPreview.cpp b/src/insets/InsetPreview.cpp index 265329bc52..eddf0a55ed 100644 --- a/src/insets/InsetPreview.cpp +++ b/src/insets/InsetPreview.cpp @@ -1,166 +1,166 @@ -/** - * \file InsetPreview.cpp - * This file is part of LyX, the document processor. - * Licence details can be found in the file COPYING. - * - * \author Vincent van Ravesteijn - * - * Full author contact details are available in file CREDITS. - */ -#include "config.h" - -#include "InsetPreview.h" - -#include "Buffer.h" -#include "BufferParams.h" -#include "BufferView.h" -#include "Cursor.h" -#include "Lexer.h" -#include "LyXRC.h" -#include "MetricsInfo.h" -#include "OutputParams.h" -#include "RenderPreview.h" - -#include "frontends/Painter.h" - -#include "graphics/PreviewImage.h" - -#include - -using namespace std; - -namespace lyx { - - -InsetPreview::InsetPreview(Buffer * buf) - : InsetText(buf), - preview_(new RenderPreview(this)), use_preview_(true) -{ - setAutoBreakRows(true); - setDrawFrame(true); - setFrameColor(Color_previewframe); -} - - -InsetPreview::~InsetPreview() -{} - - -InsetPreview::InsetPreview(InsetPreview const & other) - : InsetText(other) -{ - preview_.reset(new RenderPreview(*other.preview_, this)); -} - - -void InsetPreview::write(ostream & os) const -{ - os << "Preview" << "\n"; - text().write(os); -} - - -void InsetPreview::addPreview(DocIterator const & inset_pos, - graphics::PreviewLoader &) const -{ - preparePreview(inset_pos); -} - - -void InsetPreview::preparePreview(DocIterator const & pos) const -{ - odocstringstream str; - OutputParams runparams(&pos.buffer()->params().encoding()); - latex(str, runparams); - docstring const snippet = str.str(); - preview_->addPreview(snippet, *pos.buffer()); -} - - -bool InsetPreview::previewState(BufferView * bv) const -{ - if (!editing(bv) && (RenderPreview::status() == LyXRC::PREVIEW_ON || - RenderPreview::status() == LyXRC::PREVIEW_NO_MATH)) { - graphics::PreviewImage const * pimage = - preview_->getPreviewImage(bv->buffer()); - return pimage && pimage->image(); - } - return false; -} - - -void InsetPreview::reloadPreview(DocIterator const & pos) const -{ - preparePreview(pos); - preview_->startLoading(*pos.buffer()); -} - - -void InsetPreview::draw(PainterInfo & pi, int x, int y) const -{ - use_preview_ = previewState(pi.base.bv); - - if (use_preview_) { - // one pixel gap in front - preview_->draw(pi, x + 1 + TEXT_TO_INSET_OFFSET, y); - setPosCache(pi, x, y); - return; - } - InsetText::draw(pi, x, y); -} - - -void InsetPreview::edit(Cursor & cur, bool front, EntryDirection entry_from) -{ - cur.push(*this); - InsetText::edit(cur, front, entry_from); -} - - -Inset * InsetPreview::editXY(Cursor & cur, int x, int y) -{ - if (use_preview_) { - edit(cur, true, ENTRY_DIRECTION_IGNORE); - return this; - } - cur.push(*this); - return InsetText::editXY(cur, x, y); -} - - -void InsetPreview::metrics(MetricsInfo & mi, Dimension & dim) const -{ - if (previewState(mi.base.bv)) { - preview_->metrics(mi, dim); - mi.base.textwidth += 2 * TEXT_TO_INSET_OFFSET; - - dim.wid = max(dim.wid, 4); - dim.asc = max(dim.asc, 4); - - dim.asc += TEXT_TO_INSET_OFFSET; - dim.des += TEXT_TO_INSET_OFFSET; - dim.wid += TEXT_TO_INSET_OFFSET; - dim_ = dim; - dim.wid += TEXT_TO_INSET_OFFSET; - // insert a one pixel gap - dim.wid += 1; - // Cache the inset dimension. - setDimCache(mi, dim); - Dimension dim_dummy; - MetricsInfo mi_dummy = mi; - InsetText::metrics(mi_dummy, dim_dummy); - return; - } - InsetText::metrics(mi, dim); -} - - -bool InsetPreview::notifyCursorLeaves(Cursor const & old, Cursor & cur) -{ - reloadPreview(old); - cur.screenUpdateFlags(Update::Force); - return InsetText::notifyCursorLeaves(old, cur); -} - - -} // namespace lyx +/** + * \file InsetPreview.cpp + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author Vincent van Ravesteijn + * + * Full author contact details are available in file CREDITS. + */ +#include "config.h" + +#include "InsetPreview.h" + +#include "Buffer.h" +#include "BufferParams.h" +#include "BufferView.h" +#include "Cursor.h" +#include "Lexer.h" +#include "LyXRC.h" +#include "MetricsInfo.h" +#include "OutputParams.h" +#include "RenderPreview.h" + +#include "frontends/Painter.h" + +#include "graphics/PreviewImage.h" + +#include + +using namespace std; + +namespace lyx { + + +InsetPreview::InsetPreview(Buffer * buf) + : InsetText(buf), + preview_(new RenderPreview(this)), use_preview_(true) +{ + setAutoBreakRows(true); + setDrawFrame(true); + setFrameColor(Color_previewframe); +} + + +InsetPreview::~InsetPreview() +{} + + +InsetPreview::InsetPreview(InsetPreview const & other) + : InsetText(other) +{ + preview_.reset(new RenderPreview(*other.preview_, this)); +} + + +void InsetPreview::write(ostream & os) const +{ + os << "Preview" << "\n"; + text().write(os); +} + + +void InsetPreview::addPreview(DocIterator const & inset_pos, + graphics::PreviewLoader &) const +{ + preparePreview(inset_pos); +} + + +void InsetPreview::preparePreview(DocIterator const & pos) const +{ + odocstringstream str; + OutputParams runparams(&pos.buffer()->params().encoding()); + latex(str, runparams); + docstring const snippet = str.str(); + preview_->addPreview(snippet, *pos.buffer()); +} + + +bool InsetPreview::previewState(BufferView * bv) const +{ + if (!editing(bv) && (RenderPreview::status() == LyXRC::PREVIEW_ON || + RenderPreview::status() == LyXRC::PREVIEW_NO_MATH)) { + graphics::PreviewImage const * pimage = + preview_->getPreviewImage(bv->buffer()); + return pimage && pimage->image(); + } + return false; +} + + +void InsetPreview::reloadPreview(DocIterator const & pos) const +{ + preparePreview(pos); + preview_->startLoading(*pos.buffer()); +} + + +void InsetPreview::draw(PainterInfo & pi, int x, int y) const +{ + use_preview_ = previewState(pi.base.bv); + + if (use_preview_) { + // one pixel gap in front + preview_->draw(pi, x + 1 + TEXT_TO_INSET_OFFSET, y); + setPosCache(pi, x, y); + return; + } + InsetText::draw(pi, x, y); +} + + +void InsetPreview::edit(Cursor & cur, bool front, EntryDirection entry_from) +{ + cur.push(*this); + InsetText::edit(cur, front, entry_from); +} + + +Inset * InsetPreview::editXY(Cursor & cur, int x, int y) +{ + if (use_preview_) { + edit(cur, true, ENTRY_DIRECTION_IGNORE); + return this; + } + cur.push(*this); + return InsetText::editXY(cur, x, y); +} + + +void InsetPreview::metrics(MetricsInfo & mi, Dimension & dim) const +{ + if (previewState(mi.base.bv)) { + preview_->metrics(mi, dim); + mi.base.textwidth += 2 * TEXT_TO_INSET_OFFSET; + + dim.wid = max(dim.wid, 4); + dim.asc = max(dim.asc, 4); + + dim.asc += TEXT_TO_INSET_OFFSET; + dim.des += TEXT_TO_INSET_OFFSET; + dim.wid += TEXT_TO_INSET_OFFSET; + dim_ = dim; + dim.wid += TEXT_TO_INSET_OFFSET; + // insert a one pixel gap + dim.wid += 1; + // Cache the inset dimension. + setDimCache(mi, dim); + Dimension dim_dummy; + MetricsInfo mi_dummy = mi; + InsetText::metrics(mi_dummy, dim_dummy); + return; + } + InsetText::metrics(mi, dim); +} + + +bool InsetPreview::notifyCursorLeaves(Cursor const & old, Cursor & cur) +{ + reloadPreview(old); + cur.screenUpdateFlags(Update::Force); + return InsetText::notifyCursorLeaves(old, cur); +} + + +} // namespace lyx diff --git a/src/insets/InsetPreview.h b/src/insets/InsetPreview.h index b221d50b60..b398c89b8f 100644 --- a/src/insets/InsetPreview.h +++ b/src/insets/InsetPreview.h @@ -1,95 +1,95 @@ -// -*- C++ -*- -/** - * \file InsetPreview.h - * This file is part of LyX, the document processor. - * Licence details can be found in the file COPYING. - * - * \author Vincent van Ravesteijn - * - * Full author contact details are available in file CREDITS. - */ - -#ifndef INSETPREVIEW_H -#define INSETPREVIEW_H - -#include "InsetText.h" - -#include "Dimension.h" - -#include - -namespace lyx { - -class RenderPreview; - -namespace graphics { - class PreviewLoader; -} - -/// An inset with an instant preview -class InsetPreview : public InsetText { - -public: - /// - InsetPreview(Buffer *); - /// - ~InsetPreview(); - /// - InsetPreview(InsetPreview const & other); - - /// \name Methods inherited from Inset class - //@{ - Inset * clone() const { return new InsetPreview(*this); } - - bool neverIndent() const { return true; } - - InsetCode lyxCode() const { return PREVIEW_CODE; } - - docstring name() const { return from_ascii("Preview"); } - - bool descendable(BufferView const & /*bv*/) const { return true; } - - docstring contextMenu(BufferView const &, int, int) const - { return from_ascii("context-preview"); } - - void metrics(MetricsInfo & mi, Dimension & dim) const; - - Inset * editXY(Cursor & cur, int x, int y); - - void draw(PainterInfo & pi, int x, int y) const; - - void addPreview(DocIterator const & inset_pos, - graphics::PreviewLoader & ploader) const; - - bool notifyCursorLeaves(Cursor const & old, Cursor & cur); - - void write(std::ostream & os) const; - - void edit(Cursor & cur, bool front, EntryDirection entry_from); - //@} - -protected: - /// Retrieves the preview state. Returns true if preview - /// is enabled and the preview image is availabled. - bool previewState(BufferView * bv) const; - /// Recreates the preview if preview is enabled. - void reloadPreview(DocIterator const & pos) const; - /// Prepare the preview if preview is enabled. - void preparePreview(DocIterator const & pos) const; - - /// - boost::scoped_ptr preview_; - /// - mutable bool use_preview_; - -private: - /// - mutable Dimension dim_; -}; - - -} // namespace lyx - - -#endif - +// -*- C++ -*- +/** + * \file InsetPreview.h + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author Vincent van Ravesteijn + * + * Full author contact details are available in file CREDITS. + */ + +#ifndef INSETPREVIEW_H +#define INSETPREVIEW_H + +#include "InsetText.h" + +#include "Dimension.h" + +#include + +namespace lyx { + +class RenderPreview; + +namespace graphics { + class PreviewLoader; +} + +/// An inset with an instant preview +class InsetPreview : public InsetText { + +public: + /// + InsetPreview(Buffer *); + /// + ~InsetPreview(); + /// + InsetPreview(InsetPreview const & other); + + /// \name Methods inherited from Inset class + //@{ + Inset * clone() const { return new InsetPreview(*this); } + + bool neverIndent() const { return true; } + + InsetCode lyxCode() const { return PREVIEW_CODE; } + + docstring name() const { return from_ascii("Preview"); } + + bool descendable(BufferView const & /*bv*/) const { return true; } + + docstring contextMenu(BufferView const &, int, int) const + { return from_ascii("context-preview"); } + + void metrics(MetricsInfo & mi, Dimension & dim) const; + + Inset * editXY(Cursor & cur, int x, int y); + + void draw(PainterInfo & pi, int x, int y) const; + + void addPreview(DocIterator const & inset_pos, + graphics::PreviewLoader & ploader) const; + + bool notifyCursorLeaves(Cursor const & old, Cursor & cur); + + void write(std::ostream & os) const; + + void edit(Cursor & cur, bool front, EntryDirection entry_from); + //@} + +protected: + /// Retrieves the preview state. Returns true if preview + /// is enabled and the preview image is availabled. + bool previewState(BufferView * bv) const; + /// Recreates the preview if preview is enabled. + void reloadPreview(DocIterator const & pos) const; + /// Prepare the preview if preview is enabled. + void preparePreview(DocIterator const & pos) const; + + /// + boost::scoped_ptr preview_; + /// + mutable bool use_preview_; + +private: + /// + mutable Dimension dim_; +}; + + +} // namespace lyx + + +#endif +