@title pmCSTeX for EPM @if false *********************************************************** This is pmCSTeX.emxdoc, version 16. 4. 2000 Documentation to the "pmCSTeX for EPM" package, see http://www.sci.muni.cz/~mikulik/os2/pmCSTeX.html or pmcstex.zip on hobbes, leo and CTAN archives. Package pmCSTeX for EPM. Copyright 1996 Petr Mikulik ----------------------------- Package license: free-latex distributed under the same terms as LaTeX This program can be redistributed and/or modified under the terms of the LaTeX Project Public License Distributed from CTAN archives in directory macros/latex/base/lppl.txt; either version 1 of the License, or any later version. License meaning in short: use and distribution permitted, like any freeware. Package must be distributed together with the source code. Reuse of the source code or any part of it is allowed. Any changes or enhancement to this package must involve a change of name unless these changes are accepted by the author. You are welcome to submit your bugfixes, updates or new features. Because the program is licensed free of charge, there is no warranty for any of its component. You are responsible for any software, hardware, human or nature disaster resulting from installing and using of this package. Author's address: ----------------- Petr Mikul Department of Solid State Physics and Laboratory of Thin Films and Nanostructures Faculty of Science Kotlarska 2 (Kotl\'a\v rsk\'a 2) Masaryk University Brno Czech Republic mikulik@physics.muni.cz http://www.sci.muni.cz/~mikulik/ *********************************************************** @endif @format tty .exe .com .bat .awk .inf .cmd config.sys autoexec.bat .tex .sty .aux @if false @format bold TeX LaTeX pmCSTeX CSTeX emTeX em(TeX) (La)TeX @endif @format bold comp.os.os2.announce @format tty pm.zip unzip.exe vi config.sys ltx_inf.rme LaTeX2e.INF LaTeX2e.NDX @format tty READNDX CTINDX \batchmode dvipm dvipm.exe dvipm.cnf lj.cnf p6l.cnf @format tty dvips stdconst.e epmmac.zip latex.cmd tex386 .log plain.cmd cslatex.cmd @format tty LaTeX.cmd csLaTeX.cmd @format tty csplain.cmd cslatex209.cmd .e b.tex .dvi .ps dvihplj @format tty psview psview.cmd psview.bat gs312.ps psview.ps ps_view.ps gs.exe gsos2.exe @format tty emacs pmgraf e-ex.CS e-ex.NCS dvips.cnf kbdvio32.dll @format tty PATH LIBPATH DPATH BOOKSHELF HELP \UTILS @format tty .h .cpp .c gvpm .cls .dtx .latex pm4EPM Czech.E Czech_PM.E @format tty MyCNF.e MyCNF.ex \APPS\EPM\MyCNF.e sampactn.e sampactn.ex @format tty MYCNF.SMP EPMCFG.SMP CKEYS.E @format tty EMTEXOPT XFree86 Xfig TeXcad Qfig PageDraw \EMTEX\BOOK \EMTEX\DOC @format tty \begin{equation} \begin{eqnarray} \begin{align} @format tty \end{equation} \end{eqnarray} \end{align} @format tty \begin{equation*} \begin{eqnarray*} \begin{align*} @format tty \end{equation*} \end{eqnarray*} \end{align*} @format tty US.dct UK.dct FR.dct UK.adl US.dic UK.dic GR.dic CZ.dic @format tty FR.adl FR.dic francais.dic CZ.DIC SK.DIC @format tty PM_DICTIONARIES EPM_DICTIONARIES @format tty BibTeX MakeIndex csBibTeX csMakeIndex @format tty pmmerge.dll keyboard.dcp lexam.adl EPMPATH @format tty dvi-out2 dvi-out2.exe vlnka2.exe %EMTEX%\bin csdvips.cmd @format tty \OS2\APPS \APPS\EPM\CSTeX \APPS\EPM\CSTEX \APPS\EPM @format tty F:\OS2\APPS E:\APPS\EPM\CSTeX E:\APPS\EPM\CSTEX E:\APPS\EPM @format tty light_magenta TEX_EXTENSIONS TEX_FILETYPES @format tty AltP4TeX.e AltP4TeX.ex assist.e assist.ex @format tty tags.e tags.ex TeXtags.e TeXtags.ex epm.ex EPM.ex epm.e EPM.e @format tty stdkeys.e stdprocs.e EPMMAC EPMGCNF.SMB @format tty *.aux *.log *.dlg *.dvi *.toc *.lot *.lof *.blg @format tty *.idx *.ind *.glo *.gls *.hp *.mfj *.pri *.bak @format tty pmCSTeX.zip pm_erx.zip l2e_ndx.zip pm_bins.zip @format tty pm4EPM.e pm4EPM.ex CSTeX.e CSTeX.ex pm_keys.e pm_keys.ex @format tty pm_hilit.zip gpatch @format tty example.tex inc.tex pmTeXit.cmd CSTeX_.e CSTeX_.ex @format tty Profile.erx MyKeys.E cstocs.exe cs2cs.exe cs2cs os2.zip @format tty actions.lst pmCSTeX.INF pmCSTeX.inf pmCSTeX.src pmCSTeX.emxdoc @format tty CSTeX.* Czech_PM.zip @if false *********************************************************** @endif @h1 Introduction Welcome to @bf{pmCSTeX for EPM}, version 16. 4. 2000. @minitoc @h2 Abstract @bf{pmCSTeX for EPM} is a macro package for the OS/2 editor EPM. It adds CSTeX menu into the EPM's menu, hotkeys as well as some buttons on the EPM toolbar, allowing many of (em)TeX-related actions (TeXing, dvi-previewing, dvipsing, BibTeXing...) to be easily accessed. The aim of this work was the implementation of a pleasant emTeX menu system for OS/2. Editor EPM has been chosen since it provides wonderful programming capabilities, and, what it is the most important for the Czech users, there is a programmable Czech keyboard implemented by Z. Wagner (you can get it anonymously from ftp.icpf.cas.cz). (It should be noted that the keyboard that IBM includes in Warp is nearly unusable for programmers, who mostly prefer a reasonable combination of the US and Czech keyboard layouts, and not the standard Czech typing machine layout. It is really bad that IBM does not provide (nor in Merlin!) a configurable keyboard driver or the source code for pmmerge.dll and keyboard.dcp). This package is called @bf{pmCSTeX} since it is related to the CSTeX distribution of TeX and because it was worked out by me (@bf{pm}). CSTeX (Czech and Slovak TeX) is being released since 1993 and it is based on the TeX implementation by Eberhard Mattes (the famous emTeX). In addition to the standard emTeX distribution, the CSTeX distribution contains styles and some programs that support TeX typesetting in the Czech and Slovak languages. CSTeX includes an installation program (which is missing in emTeX) and a very pleasant menu system for DOS. Nowadays, CSTeX covers Czech specials for unixes as well. @bf{The pmCSTeX package does not require CSTeX installation; you can use it with any (em)TeX distribution.} @bf{Note:} The coincidence of the abbreviation of my name and the abbreviation of the Presentation Manager is just accidental. Unfortunately, IBM does not pay me any royalties. Thus even this package is free, you are welcome to send me donations :-) Joking... postcards are welcome, but sending a short e-mail is easier and more rapid. @if false Statistics: till 11. 11. 1997, I have got a lot of e-mails, and one postcard. Thank You! @endif @h2 Motivation Working on the @tt{pmCSTeX for EPM}, the author was motivated by the following packages: @itemize @item @tt{CSTeX MNU for DOS}: TeX menu system for DOS, included in the CSTeX distribution. Author: Petr Ol @item @tt{TeXshell}: Turbo Vision TeX developing system (for DOS and DOS window in OS/2). I liked it very much (I like Borland-like environments, on-line help etc.), it is programmable in a wonderful way. However, it's just DOS and it has many disadvantages coming from the Turbo Vision library: it has 64KB limit on file sizes, it crashes from time to time (in my OS/2 window), and there is no "Undo" function. Author: Juergen Schlegelmilch @item @tt{EPMTeX}: TeX menu system for editor EPM. Good, but it does not fulfilled my high expectations I got accustomed to in TeXshell (late 1995), e.g. it always appended the Master file at the command line. I accepted its First line syntax (Master:, Format: etc.). Authors: Jon Hacker and Rodney Korte @item @tt{WETeX}: actions and icons are defined for texing, previewing and more for a document. Based on WPS and EAs, not Master: notation. I did not use it because of not having enough RAM to work under WPS (I had 12 MB RAM and I preferred @tt{Program Commander/2} @tt{RUNWORKPLACE} replacement). Author: Zden k Wagner @item emacs: well, I never used this editor except for very simple editing (I prefer @tt{vi} on unix). However, I was always amazed by its feature "(La)TeX current paragraph"---therefore I implemented it in the pmCSTeX for EPM too. Authors: GNU @item pmgraf: that's my integrated Turbo Vision environment for plotting the 2d and 3d graphs (see my WWW page for more details). The build-in editor (the same as that in the TeXshell) contains the hotkeys for pull-down menus for LaTeX environments and font sizes, and a Greek keyboard. Thus I implemented these features into EPM as well. Author: Petr Mikul @enditemize Note: in 1998, there appeared a package called @tt{epmtfe: EPM TeX Front End} (distributed as @tt{epmtfe.zip}) by Walter Schmidt. Unfortunately, the author reeinvets the functionality of @bf{pmCSTeX for EPM}. Even though I immediately asked him not to duplicate the work and make a collaborate together, this has not happened so that nowadays you may find both our packages on the net. In my humble opinion, I still believe that my @bf{pmCSTeX} is superiour to @tt{epmtfe}, profiting from its two-year advance and writing my thesis as well as many other documents with it. @h2 License @label License @label license @bf{Package pmCSTeX for EPM.} @break @bf{Copyright 1996 Petr Mikulik} @break @bf{___________________________} @break @bf{Package license: free-latex distributed under the same terms as LaTeX} This program can be redistributed and/or modified under the terms of the LaTeX Project Public License Distributed from CTAN archives in directory macros/latex/base/lppl.txt; either version 1 of the License, or any later version. License meaning in short: use and distribution permitted, like any freeware. Package must be distributed together with the source code. Reuse of the source code or any part of it is allowed. Any changes or enhancement to this package must involve a change of name unless these changes are accepted by the author. You are welcome to submit your bugfixes, updates or new features. Because the program is licensed free of charge, there is no warranty for any of its component. You are responsible for any software, hardware, human or nature disaster resulting from installing and using of this package. I am not responsible for any of your problem --- I am not EPM programmer, I'm physicist. @h2 Author @bf{Petr Mikul Address: Department of Solid State Physics, and Laboratory of Thin Films and Nanostructures, Faculty of Science, Masaryk University, Kotlarska 2, 611 37 Brno, Czech Republic Katedra fyziky pevn ze a Laborato tenk ch vrstev a nanostruktur, rodov fakulta, Masarykova univerzita, Kotl 2, 611 37 Brno e-mail: @tt{mikulik@physics.muni.cz} URL: @tt{http://www.sci.muni.cz/~mikulik/} @h2 Download Homepage of @bf{pmCSTeX for EPM} is @verbatim http://www.sci.muni.cz/~mikulik/os2/pmCSTeX.html @endverbatim @bf{pmCSTeX for EPM} is available on @tt{hobbes.nmsu.edu} (directory @tt{/pub/os2/apps/editors/epm}), on @tt{ftp.leo.org} (directory @tt{pub/comp/os/os2/emTeX/contrib}) and on @tt{CTAN} mirrors (directory @tt{CTAN/systems/os2/pmcstex}). Online documentation and the up-to-date bug fix list (if needed) is available on my WWW page. Further, for Czech/Slovak users only: @bf{pmCSTeX for EPM} is included in my os2.zip modul in the CSTeX distribution, see @tt{http://math.feld.cvut.cz/olsak/cstex/}. @if false *********************************************************** @endif @h1 Installation @label Installation The installation instructions are described in the subsections. This package was developed and tested on EPM 6.03 and EPM 6.03b. Get the latest version of EPM if you have an older one, i.e. EPM 5.51 shipped with OS/2 Warp 3.0. OS/2 Warp 4.0 (Merlin) ships with EPM 6.03b; however, for compiling the macros yourself you need the whole EPM distribution from the Net. @ipfminitoc @h2 Information for Warp 3.0 users @label Installation on Warp 3.0 Get the EPM 6.03b (or later) from the Net and install it into the directory @tt{\APPS\EPM} (or choose another directory if you like, but then change all the following information accordingly). @h2 Information for Merlin users @label Installation on Warp 4.0 EPM 6.03b is a part of the @bf{OS/2 Warp 4.0 (Merlin)}. This operating system ships a localized version of EPM, which consists of the files @tt{\OS2\APPS\*epm*}, @tt{\OS2\APPS\DLL\epm*}, @tt{\OS2\APPS\DLL\etk*} and @tt{\OS2\HELP\EPM*} (at least in my Merlin CZ it is like that). Consequently, you have these possibilities of installing and running EPM: 1. Use the shipped EPM. Install pmCSTeX as explained further (into @tt{\APPS\EPM\CSTeX}), but do not forget to keep EPMPATH pointing also to the \OS2\APPS directory @tt{(SET EPMPATH=...;E:\OS2\APPS)}. Then look which files in the directory \APPS\EPM\CSTeX are found before those of the same name in the directory \OS2\APPS (actions.lst, for instance). 2. Use the shipped EPM, but move it into the directory @tt{\APPS\EPM} in order to avoid the confusion of having several files of the same name in different directories on the hard disk: Create the directory @tt{\APPS\EPM}. Move all files @tt{\OS2\APPS\*epm*} and @tt{\OS2\APPS\DLL\epm*}, @tt{\OS2\APPS\DLL\etk*} and @tt{\OS2\HELP\EPM*} to @tt{\APPS\EPM}. Then install pmCSTeX as explained further. 3. Let the shipped localized EPM in its @tt{\OS2\APPS} directories. Install the EPM from the Net (this is a US version) into @tt{\APPS\EPM}, thus you will get the whole documentation, the sources for all macros etc. Finally, install pmCSTeX as explained further. Any time, you will be able to start the localized EPM from the command line @tt{\OS2\APPS\epm.exe} or from an associated icon. I use the method 3. @h2 Upgrading pmCSTeX for EPM @label Upgrading pmCSTeX Upgrading pmCSTeX from the release 1996 requires complete reinstallation (but nobody is still using this version I hope). If you have a working configuration from 1997 or later, then instead of the full installation make the upgrade discussed in this section. Replace the old files by their current version, or read the documentation as mentioned below: @itemize @item Updated EPM macros: CSTeX.e, CSTeX.ex, pm4EPM.e, pm4EPM.ex, pm_keys.e, pm_keys.ex, Profile.erx @item Updated documentation: pmCSTeX.INF, pmCSTeX.emxdoc @item MyCNF.e and MyCNF.ex have been taken away from the <=1997 releases (its @tt{defload} routine for @hpt{syntax highlighting} has been moved to pm_keys.e; thus also @tt{'link MyCNF'} has been taken away from the Profile.erx @item @hpt{Installation of advanced macros} with many additions for fine TeX et al. files writing has been newly written. Its corresponding macro files are in the directory @tt{install\advanced} @item There are no new changes to config.sys @item LaTeX2e.INF of the version 1.6 is available from the directory @tt{install\l2e_ndx}, and LaTeX2e.NDX has been updated as well @item Updated sampactn.e / sampactn.ex (see the reference to 29. 12. 1997 in @hpt{History}) @item Please move all files from @tt{install\dvips} directory into @tt{\EMTEX\data\dvips} directory. Then you can easily use @hpt{Double-side or slot 2 printing from dvips} @enditemize Please, see the @hpt{History} of pmCSTeX to track for the changes I made in pmCSTeX since your current version. @h2 Installation of pmCSTeX for EPM @label Installation of pmCSTeX I hope you already unzip-ed pmCSTeX.zip in an empty directory. Let us suppose you correctly installed EPM to the directory E:\APPS\EPM. Thus make directory E:\APPS\EPM\CSTeX (note: use your drive letters; I have applications on drive @tt{E:} and the operating system on drive @tt{F:}). Then @enumerate @item Move all files (not directories!) from the @tt{install} directory into @tt{\APPS\EPM\CSTeX}. Since you cannot move this pmCSTeX.INF while reading it, please exit it before the movement and then reload it back from @tt{\APPS\EPM\CSTeX}. @item Move @tt{CSTeX.*} from one of the @tt{install\e-ex} directories into @tt{\APPS\EPM\CSTeX}: the users of the CSTeX distribution use the directory e-ex.CS, all other world uses e-ex.NCS. [Note: @tt{install\e-ex.CS\CSTeX.e} is compiled with the option @tt{CSTEX_CSTEX = 1}, and @tt{install\e-ex.NCS\CSTeX.e} is compiled with the option @tt{CSTEX_CSTEX = 0}, see the section about the macro @hpt{recompiling}.) @item Move @tt{install\e-ex.CS\Profile.erx} or @tt{install\e-ex.NCS\Profile.erx} into @tt{\APPS\EPM} (this is an "@tt{autoexec.bat}" for each file loaded into EPM), but please take care when moving it: you may already have this file which you may have already modified---in that case only modify what is missing in your Profile.erx. At least you should add and @tt{'link pm4epm'} and @tt{'link CSTeX'}, and something more for @hpt{pm_keys}, Czech keyboard, syntax highliting, etc. @item Switch on the EPM option @tt{Settings/Misc/Rexx profile} so that EPM reads Profile.erx for each file being loaded. @item CSTeX distribution users should install the Czech keyboard driver for EPM (implemented by Z. Wagner) if they are not satisfied with the typing machine layout. If you already use the original czech.e and czech.ex, you have to replace it by the version compatible with pmCSTeX -- see also @hpt{Czech.E}. Therefore backup the original czech.e and czech.ex and replace them by moving the files @tt{install\e-ex.CS\czech.ex} and @tt{install\e-ex.CS\czech_PM.zip} into the directory \APPS\EPM\CSTeX. @item Move the file actions.lst from the directory @tt{install\apps-epm} into @tt{\APPS\EPM}. Be aware again---thi file can exist on your system, so: add only the changes of actions.lst, i.e. add the lines @tt{CSTeX} and @tt{pm4EPM}. @item Move all files from @tt{install\cmd.CS} or @tt{install\cmd.NCS} into your @tt{\EMTEX\bin} directory. You must replace these files if you had the previous version of pmCSTeX (because of introducing the keyword EMTEXOPT), except for the @tt{*dvips.cmd} files, that you may have modified yourself (sheet alignment can be introduced either here or in the dvips.cnf file). @item Please move all files from @tt{install\dvips} directory into @tt{\EMTEX\data\dvips} directory. Then you can easily use @hpt{Double-side or slot 2 printing from dvips}. @item CSTeX-distribution users should move the binary files @tt{install\exe.CS\vlnka2.exe} and @tt{install\exe.CS\dvi-out2.exe} into @tt{\EMTEX\bin} directory. The original Turbo Pascal sources were compiled by Speed Pascal for OS/2, so that kbdvio32.dll must be present somewhere on your LIBPATH (I prefer the directory \UTILS). If you are yet not using the @tt{cs2cs} convertor, then copy it somewhere on your PATH (I have it in the directory @tt{\UTILS}). The full package of this programs, accompanied by the documentation and the source code, is available from the author's (Ferdinand Prantl, Jr.) ftp site, @tt{ftp://aip1.fsv.cvut.cz/sys/pub/users/ferdi/cs2cs.zip}. @endenumerate Now, edit config.sys and change it like (use the letters of the partitions according to your hard disk, my system drive is @tt{F:}): @samplecode SET EPMPATH=E:\APPS\EPM;E:\APPS\EPM\CSTeX;...;F:\OS2\APPS;... @endsamplecode Further, @samplecode SET EMTEXOPT=/mt65000 /mp65000 @endsamplecode (this change together with the update of .cmd files is dated 19.5.1996, see @hpt{History}). Add the path to your dictionary files US.dic, UK.dic, FR.dic, GR.dic etc... (please, read about the @hpt{spell checker} for more details where to get these files and how to ensure that they are used for both EPM and IBM Works): @samplecode SET EPM_DICTIONARIES=e:\apps\epm\Dictionaries @endsamplecode [Note: it's now more then one year after the Czech IBM released their "localized" version of Warp, but they are still not able to produce CZ.dic :-(( This and many other small things make really bad impression on the wonderful Warp.) I'm quite sure you want the on-line hypertext help about the LaTeX2e commands. Thus move the files from the directory @tt{l2e_ndx} into the directory @tt{%EMTEXDIR%\BOOK\ENGLISH} (like @tt{E:\EMTEX\BOOK\ENGLISH}). You can read @tt{@CTINDX} (in Czech) or @tt{@READNDX} (in English) how I have created LaTeX2e.INF and LaTeX2e.NDX. If you follow the instructions there you find that you have to modify your config.sys: @samplecode SET BOOKSHELF=..;E:\EMTEX\BOOK\ENGLISH;... SET EPMPATH=...;E:\EMTEX\BOOK\ENGLISH;... SET HELPNDX=...+LaTeX2e.NDX @endsamplecode Now reboot your computer. When it is done, go to @tt{E:\APPS\EPM\CSTeX} and type @verbatim start epm @endverbatim A new menu item CSTeX should appear on the menu bar. If not, something was wrong and you should repair it (have a good chance!). Now install the CSTeX toolbar. Go to @tt{File/Settings/Toolbars}, use "Import" file @tt{E:\APPS\EPM\CSTeX\CSTeX.bar}, name it @bf{CSTeX toolbar} and then "Make current". Admire it. If you are not satisfied, change the toolbar as you wish (I encourage you to remove it the next day after well sleeping, since my toolbar is really good :-)) ... but I accept that you may like another one). Please, now verify that you can run from the command line commands latex (=latex2e), plaintex, latex209 etc. (CSTeX-distribution users should use cslatex, csplain, cslatex209 etc.). You should have installed emTeX in such a way, that you have latex.cmd, plain.cmd,... (or latex.cmd = cslatex.cmd, csplain.cmd, cslatex209.cmd,...) in @tt{%EMTEXDIR%\bin}, see above. So you should be able to recompile any LaTeX document typing the command (in an OS/2 window) @samplecode latex _any_latex_document_.tex @endsamplecode You should be able to start the previewer by @samplecode start dvipm @dvipm.cnf _any_tex_document_.dvi @endsamplecode (I supposed you copied lj.cnf or p6l.cnf or whatever resolution you want to the file dvipm.cnf). If the above does not work, configure emTeX properly. You find valuable information in files @tt{\EMTEX\BOOK} and @tt{\EMTEX\DOC}. Check the last lines of @tt{%EMTEXDIR%\bin\maketexp.cmd} file if you want that dvips generates fonts automatically (dvipm does that par definion). If you want to run (La)TeX over your document from the command line (without launching EPM), you can also use @tt{pmTeXit.cmd _your_file_.tex}. However, pmTeXit.cmd knows only about the @tt{Format:} keyword, so it is really better to run TeXing from the EPM, namely if you are using AMS-LaTeX and the @tt{Emtexopt:} keyword. See @hpt{to do}. Now you can customize your EPM: when installing EPM for my friends, I usually delete @tt{\OS2\epm.ini} and copy them my @tt{install\apps-epm\epm.ini} into the directory \APPS\EPM---you can do that too it if you like. You can play with the values in File/Settings/Misc., and read their documentation (I think you must have "REXX support" on; and I further prefer "Stream mode editing"). You may or may not want the automatic @hpt{syntax highlighting}. Read @hpt{Czech.E} if you want to use the Czech keyboard in pmCSTeX or go to @hpt{Tutorial}. Please don't forget to read about the @hpt{syntax} of the keywords on the first line of the Master file. @h2 Installing psview.cmd psview package is in the subdirectory psview. This is a nice small tool for rapid PostScript file visualisation. It is a keyboard-driven front-end to GhostScript (not mouseable as gvpm). Great for small PostScript files or for writing your own commands. Installation: unzip the package. Read and execute @tt{ReadMe}, which should result in the following: @itemize @item *.ps (i.e. gs312.ps and ps_view.ps) are in your GhostScript directory (e.g. @tt{E:\GS\gs4.03}) @item *.cmd (at least psview.cmd which is used by pmCSTeX for EPM), must be somewhere along your PATH @item finally insure that psview.cmd and gs.exe (=gsos2.exe) are on PATH; config.sys have sth. like (see the GS documentation) @tt{SET GS_LIB=E:\GS\gs4.03;E:\GS\gs4.03\fonts;.\} Note: there is already GhostScript 5.10 in December 1997. @enditemize @h2 Syntax highlighting @label syntax highlighting There are people that do like syntax highlighting (yes, I do) and those they do not like this colour circus. This section deals with the installation of this feature. If you have copied all files and @hpt{pm_keys} from the pmCSTeX distribution without changes, then it should work. Just try to download any .h or .cpp or .tex or ... file into EPM. I prefer the syntax highlighting as usually used in Turbo Vision---@em{yellow letters on blue background}. @bf{If you set those colours in the Settings of EPM}, then you may find worth to copy the files from the directory @tt{pm_hilit} to the directory \APPS\EPM to adjust the appropriate highlighting files for this colour scheme. Moreover, syntax highlighting for .log files (created by TeX) are supported by the @tt{epmkwds.log} file, so as the PostScript files (this is surely not complete; don't you have a list of all the postscript commands?) and @tt{awk} files (GNU @tt{awk} is a great and simple C/REXX-like scripting language). Please don't forget to backup the original files @tt{epmkwds.*} files before you overwrite them. Please see also @hpt{I cannot see \begin} FAQ. Now the installation (or the deinstallation if you proceed in the reversed order) of the colour highliting: In order to apply the colours into files listed on the command line after EPM has been started, add the following line to your Profile.erx file (done in its supplied version): @verbatim 'cstex_highlight_all S' @endverbatim To let the files loaded from within EPM (e.g. via menu) to be coloured, put the following code into any @tt{*.e} file and compile it---I have it in pm_keys.e (see @hpt{pm_keys}): @verbatim defload 'a_togl_hilit S' @endverbatim and recompile it. Files are highlighted according to their extension listed in sampactn.e file (and loaded from sampactn.ex) according to the colour scheme defined in the file like @tt{epmkwds._extension_}. The file @tt{epmkwds.c} contains the syntax of the colouring. Of course, you should have put the line @samplecode 'link sampactn' @endsamplecode into your Profile.erx (also done in the supplied Profile.erx). My sampactn.e and sampactn.ex included in the pmCSTeX distribution includes also .sty, .cls and .dtx extensions for being TeX-like coloured, and the .log file colour, and the fortran @tt{.f} files. If you want to recompile sampactn.e yourself, you need files @tt{english.e, stdconst.e} and @tt{menuhelp.h} from epmmac.zip. @h2 My config.sys @label my config.sys Occasionally problems appear when some global variables in config.sys are missing. Here is my config.sys if you want to have a look: @samplecode SET PATH=...;e:\apps\epm;F:\OS2\APPS;e:\emtex\bin;... SET DPATH=...;e:\apps\epm;F:\OS2\APPS;... LIBPATH=...;e:\apps\epm;F:\OS2\APPS\DLL;e:\emtex\dll;... SET BOOKSHELF=...;e:\apps\epm;e:\emtex\book\english;... rem Someone prefers german instead of english SET HELP=...;e:\emtex\help;... rem ******************** emTeX ********************************* SET EMTEXDRV=E SET EMTEXDIR=E:\EMTEX SET TEXINPUT=E:\EMTEX\TEXINPUT! rem For plain only; *tex*.cmd scripts redefine this SET EMTEXOPT=/mt65000 /mp65000 rem This you MUST have! SET DVIDRVINPUT=E:\EMTEX\DOC;E:\EMTEX\DOC\ENGLISH SET DVIDRVFONTS=E:\EMTEX\fonts rem In this case, I do not use the recommendation by E. Mattes to use \TEXFONTS directory rem I do not like too much directories in the root SET MFJOBOPT=/3 rem for using the mf386 version of MetaFont SET INDEXSTYLE=E:\EMTEX\texinput\latex2e rem sth like path for MakeIndex, .ist files? SET DVIPSHEADERS=E:\EMTEX\data\dvips SET TEXCONFIG=E:\EMTEX\data\dvips SET CSBIBALP=E:\EMTEX\data\csbibtex REM *** EPM SET EPMPATH=e:\apps\epm;e:\apps\epm\cstex;e:\apps\epm\epmmac;e:\apps\epm\epmmac2; e:\emtex\book\english;e:\emtex\book\czech;F:\OS2\APPS SET HELPNDX=EPMKWHLP.NDX+EMX.NDX+LaTeX2e.NDX REM *** pmCSTeX for EPM SET TEXFORMATDEFAULT=latex SET EPM_DICTIONARIES=e:\apps\epm\Dictionaries\ rem where are the dictionaries UK.dic, FR.dic, GR.dic etc. located @endsamplecode (Note: there is @tt{SET EPMPATH=...;F:\opendoc\bin} under Merlin and OpenDoc) @h2 Spell checking in EPM @label spell checker EPM comes with the US dictionary and synonym file (the EPM found on the Net, and the EPM enclosed in the "localized" Czech Merlin). If you want to proof text written in another language, it could be easy if you have BonusPak for other languages, because the IBM Works from your BonusPak uses the same dictionary files as the EPM. Thus go to the directory of IBM Works of the desired language version on your CD-ROM BonusPak (shipped with OS/2 Warp 3.0) and copy @tt{diction.@} file to your hard disc. Unpack it by the command @tt{unpack diction.@} and copy the dictionary files (US.dic, UK.dic, francais.dic (I renamed this to FR.dic), GR.dic) to the desired location (I prefer @tt{\apps\epm\Dictionaries}). Then type the dictionary filename into EPM Settings/Paths/Dictionary file and rename the default personal dictionary lexam.adl to something like UK.adl, FR.adl etc. There is/was another confusion: some versions of EPM called these files @tt{*.dct}; look at your hard disk, and delete it or rename it to @tt{*.dic}. Put into your config.sys: @samplecode SET EPM_DICTIONARIES=e:\apps\epm\Dictionaries\ @endsamplecode The same dictionary should be set up from the IBM Works settings if you have installed this package. Then you can use the menu @tt{CSTeX/Spell-Checker} to easily switch between the dictionaries of different languages, which saves your time and nerves for doing that in File/Settings/Paths/Dictionary Files and Personal Dictionary. The chosen dictionary is used until you exit EPM. You can make this change permanent by entering and closing the Settings. Note that your attempt to change the dictionary when Auto-spellcheck is on does not change the dictionary. Since it seems that there are people that don't have that BonusPak CD, I have put some dictionaries somewhere on our ftp server and linked it to my WWW page. Or have IBM put it somewhere? (Well, I was badly surprised that the Czech "localized" (!) version of OS/2 Warp 4.0 Merlin contains only the US (!) dictionary, even I complained about that in the beta-testing). @h2 Installation of advanced macros @label Installation of advanced macros If you are too tired of installing pmCSTeX, you may skip this section and read this section later. Otherwise, you may install the following features: @ipfminitoc These they are independent of the @tt{CSTeX} macro functionality, and included into the pmCSTeX package since they are fine when writing TeX files. See also: @hpt{recompiling EPM} @h3 TeX-aware paragraph reformatting @label Alt-P The hotkey @tt{Alt-P} is used for reformatting the current paragraph to the current margins (see also @tt{Alt-Z} in @hpt{pm_keys}). However, the default reflowing routine is not TeX-aware, i.e. it breaks lines with comments (text after the @tt{%} character) and reformats into lines also the @tt{\begin{sth} ... \end{sth}} LaTeX environments. I have modified the macros responsible for the reformatting process. If these are installed (see below), then the TeX-aware function is activated when editing @tt{*.tex, *.latex, *.sty, *.dtx, *.cls} files, see also the constant TEX_EXTENSIONS in @tt{install\advanced\PM_MyCNF.e}). If no text is marked and @tt{Alt-P} is pressed, then the paragraph reflowing stops at the first blank line (default) or at line containing: @itemize @item @tt{%} --- comment @item @tt{\begin} --- new environment @item @tt{\end} --- end of environment @item @tt{\item} --- new item @item @tt{\label} --- label @item @tt{\[, \], \(, \)} --- math environments @enditemize Notes: @enumerate @item For adding another TeX-reflow-stopping keyword (e.g. @tt{$ ... $}), change the @tt{pm_reflow_is_tex_endline} procedure in the source code. @item The usual reflow routine is used when reformatting block mark of text. A warning appears in that case. If you wish to modify this routine as well, you are welcome. I never needed that. @endenumerate @h- Installation There are the following two methods of installing the TeX-aware modifications: @enumerate @item @bf{Easy installation} which overlays the hotkey @tt{Alt-P} defined in epm.ex. To do that you need to put AltP4TeX.ex file somewhere in your EPMPATH and add the statement @verbatim 'link AltP4TeX' /* Paragraph reflow (Alt-P hotkey) is TeX aware */ @endverbatim to your Profile.erx. The source code is in file AltP4TeX.e. Both files are in the directory @tt{pmCSTeX\install\advanced\AltP\easy}. @item @bf{Advanced installation} which requires to @hpt{recompile EPM.ex}. Proceed in the following way: @itemize @item Save or move EPM.ex to something like @tt{epm_ex.00} @item Go to EPMMAC directory. Rename the original stdkeys.e and stdprocs.e to something like @tt{stdkeys_e.00 and stdprocs_e.00} @item Execute command @verbatim gpatch -p0 @tt{.ps}) the .dvi file, then only pages up to the page 123 are printed (makes no sense in example.tex anyway), @item @tt{ViewOpts} are passed into the full-screen previewer and to the printer drivers. @enditemize @if false *********************************************************** @endif @h1 Usage @label Usage Please go yourself through all the CSTeX menu options, icons and actions that you can icon-ify. This manual will probably never be too complete. You are welcome to contribute. However, it should not mine, since "ordinary" users will hardly change the code, and the programmers will do it easily. Anyway, you are welcome to have a look at .e files what's really inside. They are readable... @h2 Syntax of expansions @label Syntax of expansions @label Syntax of expansions: @label Syntax @label syntax You edit a file. It is called working file. If its first line contains @samplecode % ....... Master: b.tex ..... @endsamplecode then b.tex is its master file to which all actions like latexing, previewing etc. will be related. If there is no @tt{Master:} keyword on its first line, this file is both Working and Master. The first line of the Master file can contain other keywords which are expanded by pm4EPM.e. CSTeX.e reacts to the following keywords: @samplecode % .... Format: cslatex209 ..... @endsamplecode @samplecode % .... Format: plain ..... @endsamplecode This is used to texing the document. .cmd file of the same name as is that of the format is called to compile the document (in the above example, @tt{cslatex209.cmd} and @tt{plain.cmd} are called, respectively). If no @tt{Format:} is present, environmental variable @tt{LATEXFORMATDEFAULT} is searched. If that is not defined, default format @tt{latex} is used. Synonym to the @tt{Format: myformat} is @tt{%&myformat} starting the command line; this allows to accept cweb/unix style of format determination. @samplecode % .... EMTEXOPT: */mp85500* ..... @endsamplecode This keyword is added to the environmental variable EMTEXOPT before @tt{_format_.cmd} is started. The above option I use for AMS-LaTeX and AMS-fonts. Another example: if you want to get rid of the user interaction even in the CSTeX/(La)TeX document, then replace @tt{*/mp85500*} by @tt{*/mp85500 /b*} or by @tt{*/b*}. See the emTeX documentation for more details @tt{(\emtex\doc\(english or german)\tex.doc)}. @samplecode % .... dvips: *-p 3 -l 9 -A* ..... @endsamplecode This keyword enables passing parameters into dvips (in this case, only the odd pages between page 3 and 9 are postscripted). Look at @tt{dvips} documentation (or type @tt{dvips} at the command prompt) for more details. @samplecode % .... makeindex: * -s mystyle * ..... @endsamplecode Options that are passed into the MakeIndex program. See its documentation for more details. @samplecode % .... ViewOpts: */tr1 +zoom:4 +inverse* ..... @endsamplecode The string between those stars (*) or any pair of same chars is taken as the argument for printer/viewer command line. That means not for "Viewer document" (interactive dvipm), but for "Preview before print" and "Print". Consult @tt{\emtex\doc\english\dvidrv.doc} for more details about the available switches, or type @tt{/??} at the @tt{dvi*} prompt. If you are Editing settings of an icon on the toolbar, there is "Parameters" line related to "Action". This Parameter is expanded as described directly in the pm4EPM.e file. They are not used by CSTeX.e (yet). @h2 CSTeX menu items explanation @label CSTeX menu items explanation @h- (La)TeX document Compiles document on foreground: @tt{start /c /win /f cmd.exe /c %format.cmd %N} Abbreviation @tt{%N} expands to the master file in the Unix style and @tt{%format} to the format of the document. @h- (La)TeX document /b As above, but TeXing is started on the background. Well, in both cases, you should have used @tt{\batchmode} TeX command in the beginning of your file to force tex386 go smoothly over errors (you locate errors later using Shift-F12). @h- (La)TeX paragraph Compiles the current paragraph of the edited text. The paragraph is the text block between two blank lines, or a line block of text (marked by @tt{Alt-L} ... @tt{Alt-L}, for instance). A temporary file @tt{$cstex$.tex} is written, which contains everything from the first line to the @tt{\begin{document}} statement of the Master file, then the current paragraph, and the file is terminated by @tt{\end{document}}. After reLaTeXing, the .dvi and .log files are copied over those of the Master file. @h- Locate next error @bf{A. Error searching:} If .log file is loaded, then search for the next error. If .log file is not loaded, load it to the editor and search for the first error. If it is loaded, refresh it and start from the beginning. (Technical note: the above works fine for me; I think there is no need to implement in next_error to check the file on the harddisk whether it has changed or not every time when next_error function is invoked by the user.) @bf{B. Warning searching:} If you position the cursor in .log file on a line which is like one of these: @verbatim Overfull \hbox (19.0473pt too wide) detected at line 5 Overfull \hbox (19.94281pt too wide) in alignment at lines 95--104 Underfull \hbox (badness 10000) in paragraph at lines 356--373 LaTeX ...whatever, e.g. Warning: or Font Info:.... line 138. @endverbatim then the @bf{Locate next error} will find the location of the warning from that line. Otherwise the method @bf{A.} is in action, of course. That's what you use normally. @h- PostScript menus dvips will be used to convert .dvi -> .ps. Then you can launch either gvpm program (it is the GhostView for OS/2, available from any net server mirroring the ghostscript staff) or use the DOS previewer psview (available at ftp.muni.cz:pub/tex/local/postscript/psview.zip). If you print from dvips, then the output goes to the @tt{prn} port. See also the keyword @tt{dvips:} applicable for the Master's first line, which is described in the section @hpt{Syntax}. If you use the menu item dvips-it, then pmCSTeX will beep when it is finished, so that you can reload the file in GhostView or send it into a PostScript printer. You can switch this beep off, see @hpt{recompiling}. @h- Printing menus Menu for printing using dvihplj and 300 dpi was well tested. Others not. If you have other printer not listed explicitly in the menu, then .cmd script will be called with @tt{myprt1.cmd} or @tt{myprt2.cmd}. For previewing, @tt{myprt1.cnf} or @tt{myprt2.cnf} will be used. You should prepare them yourself, according to @tt{\emtex\bin\prt*.cmd} and @tt{\emtex\data\*.cnf} files. @h- Editor / Include The file whose name is under the cursor is included into the editor. The routine is implemented such that it looks to the current directory, then to @tt{..\units}, then to @tt{\emtex\texinput}, then to some of the @tt{\emx\include} directories. You can easily add your favourite directories to the source code of CSTeX.e and recompile the macros. Moreover, not only the file under cursor, but as well as those files with .h, .c, .cpp, .sty, .tex are searched. Try it and see. @h- CStoCS ( verze) Pokud nem te konverzn program cs2cs (dal jsem ho do modulu os2.zip?), tak si ho st mo od jeho autora: @tt{ftp://aip1.fsv.cvut.cz/users/ferdi/cs2cs.zip} @h- Spell / Czech,Slovak,English ( verze) Pravopis se oprav v DOSovsk m programu @tt{%EMTEXDIR%\cstug\texspell.exe}, kter je sou diskety CSTeXu pro registrovan leny CSTUGu. M smysl vat pouze pro opravy tiny i sloven tiny do t doby, ne m IBM laskav CZ.DIC anebo SK.DIC, bude-li to v bec n kdy. U by s t m taky mohli trochu pohnout, 1999: slovn ky, tedy alespo si soubory @tt{*.dic}, jsou sou Netscapu 4.61. Ov em zase nejdou st v EPM, cosi s nimi pad . See @hpt{bugs}. @h- Other TeX programs Drawing programs: TeXcad is well-known, Qfig probably less. But there are XFree86 ported to OS/2 (@tt{http://set.gmd.de/~veit/os2/xf86os2.html}) so I'm really glad that I can use Xfig for OS/2. Since you run XFree86 in a separate full-screen session, there is no item for it. PageDraw is a good tool for PostScript drawings---it runs in Win-OS2 session, so the author should be asked for a native OS/2 version. @h- TeXclean Deletes all files @tt{*.aux *.log *.dlg *.dvi *.toc *.lot *.lof *.blg *.idx *.ind *.glo *.gls *.hp *.mfj *.pri *.bak} @h2 Hotkeys in CSTeX @label hotkeys @label Hotkeys in CSTeX These hotkeys are defined: @h- Ctrl/1 It brings menu with paragraph, section, chapter... @h- Ctrl/3 It brings menu with LaTeX environments. If there is a line-mark, then surround the marked text block by the choosen environment; otherwise insert the environment and a blank line in between @h- Ctrl/4 It brings menu with AMSLaTeX environments If there is a line-mark, then surround the marked text block by the choosen environment; otherwise insert the environment and a blank line in between @h- Ctrl/5 It brings menu with LaTeX font sizes @h- Ctrl/6 It brings menu with @tt{textrm, textsf, texttt, textmd, textbf, textup, textit, textsl, textsc, emph, textnormal} @h- Ctrl/7 It brings menu with @tt{rmfamily, sffamily, ttfamily, mdseries, bfseries, upshape, itshape, slshape, scshape, em, normalfont} @h- Alt-G Switches the keyboard to the Greek keyboard. After pressing Alt-G and pressing a key, its Greek character (in TeX syntax) will be typeset instead. E.g. @tt{Alt-G a} produces @tt{\alpha}. Note: if the keyboard is not switched to the keyboard layout you was using before, then change the end of @tt{DEFPROC pm_TypeGreek()} according to any global flag your personal keyboard provides. And finally, here is the translation table: @table 5 4 3 5 7 3 5 3 4 3 5 6 2 2 a b c d e f g h i k l - - - D - F G - - - L alpha beta chi delta epsilon phi gamma eta iota kappa lambda @endtable @table 5 2 5 3 5 3 10 6 8 2 7 4 o q r s t u v w y O Q - S - - - - Y omega theta rho sigma tau varepsilon varphi vartheta upsilon zeta @endtable @h2 Hotkeys in pm_keys @label pm_keys There are some hotkeys you may or may not find useful. You can either add @verbatim 'link pm_keys' @endverbatim into Profile.erx, or copy the hotkey definitions into your MyKeys.E file (then recompile it). Currently, I use these definitions: @h- Ctrl/Y It deletes the current line (as Ctrl/BackSpace does). I'm used to this key sequence from Borland-like editors. @h- Alt-1 Generalizes / enhances the standard EPM file load hotkey, equivalent to @tt{CSTeX/Editor/Include}. @h- Alt-3 Inserts @tt{\begin{}} @h- Alt-4 Inserts @tt{\end{}} @h- Alt-5 Inserts @tt{\[ \]} @h- Alt-6 Inserts @tt{$$ $$} @h- Alt-Z It brings a dialog with margin setup. Easier then going to @tt{File/Settings...} @h- Alt-Q This hotkey provides either of the following two actions: 1. quickly makes \begin{equation} ... \end{equation} environment with two two comment lines above and below. Thus pressing @tt{Alt-Q} on this line would do: @verbatim \begin{equation} \end{equation} @endverbatim 2. If the line under the cursor contains only \begin{equation}, it changes it into \begin{eqnarray}. If there is \begin{eqnarray}, it is changed to \begin{align}, and if there is \begin{align}, it transforms back to \begin{equation}. The same rotation works for the \end{equation}, \end{eqnarray} and \end{align} lines too, as well as for the @tt{\begin} and @tt{\end} versions of @tt{equation*}, @tt{eqnarray*} and @tt{align*} environments. Note for future: this could be more powerful if this command would change both @tt{\begin{..}} and @tt{\end{..}} simultaneously. @if false *********************************************************** @endif @h1 Recompiling the macros @label recompiling @label recompile Your need stdconst.e from epmmac.zip (see hobbes.nmsu.edu:os2/editors). This file has to be on your EPMPATH. The following commands will compile CSTeX EPM macros: @samplecode etpm pm4EPM etpm CSTeX @endsamplecode You can recompile CSTeX.e into two menu schemes depending on the constant CSTEX_CSTEX: @h- CSTEX_CSTEX=1 This produces CSTeX for EPM that is distributed together with CSTeX'96 distribution. It includes support for all our favourite CS features and programs @h- CSTEX_CSTEX=0 This disables compilation of the features specific for CSTeX'96 distribution @h- CSTEX_CS2CS=1 Uses OS/2 program cs2cs.exe for Czech encodings conversion (this program does not come with CSTeX'96 distribution yet, get it from @tt{ftp://aip1.fsv.cvut.cz/users/ferdi/cs2cs.zip} @h- CSTEX_CS2CS=0 Uses DOS program cstocs.exe for Czech encodings conversion (included in CSTeX'96 distribution, but due to cs2cs.exe it became obsolete now) @h- PM_DICTIONARIES=1 Adds dictionary (language) menu for EPM spell checking+synonyms @h- CSTEX_USEMASTERDIR=1 The master file is firstly searched in the directory of the working file, then in the current directory; if @h- CSTEX_USEMASTERDIR=0 then the master file is searched in the current directory, i.e. in the directory where the EPM was started from. The choice =1 is much better if EPM runs permanently (@tt{EPM /i}). @h- Two options in DEFINIT routine in CSTeX.e @tt{cstex_true_tex_background=1} is default option that minimizes window of the background TeXing. Set @tt{cstex_true_tex_background=0} to get the whole window. @tt{cstex_background_beep=0} is default option to avoid beep when background texing has finished (dvipm can do it for you). Set @tt{cstex_background_beep=1} if you would prefer this beep. You can do the appropriate changes in both files---as you wish. In fact, you should changed the menus and related things if some build-in options do not suite your customs. I tried to write the code as simple as possible---I'm not professional EPM programmer. However, KEEP IN MIND that you can distribute the files derived from CSTeX ONLY IF the original distribution of pmCSTeX.zip comes with them! People need to know where that comes from, whom they can make donations to or who is the person to blame... @if false *********************************************************** @endif @h1 Conclusion This release of pmCSTeX for EPM works perfectly for me, but that need not be the case for you. If it does not work, please verify the installation of EPM, go again through the @hpt{Installation}, and read about @hpt{Bugs}. If this did not help, then let me know about your problems. You can also write me about your suggestions or even your solutions to your suggestions, what should be additionally included etc. Thanks. @h2 History @label History @description @item @bf{ 16. 4. 2000 } @itemize @item @hpt{License} explicitly added (required by (La)TeX packages catalogue). @item @hpt{Syntax of expansions:} synonym to the @tt{Format: myformat} is @tt{%&myformat} starting the command line; this allows to accept cweb/unix style of format determination. @item Installing all advanced features via diff files and @hpt{gpatch} instead of the distribution of modified source files. @item Added patch for @hpt{making backup copies of files before save}. @item Documented the idea of solving the red oval instability in the @hpt{bugs} section. @item Czech specific: added updated version of dvi-out2 (contributed by Jaromir Kuben). @item New @hpt{hotkeys} Alt-3,Alt-4, Alt-5, Alt-6. @item Czech specific: added updated version of vlnka (contributed by Jaromir Kuben). Previous vlnka2.exe removed, added new @tt{vlna.exe}. @item Czech specific: added EPM for TeX short guide @tt{EPMpopisJK.INF} by Jaromir Kuben. @item Added TeX @hpt{syntax assistance}, to save some keystrokes, by Vladimir Kisil (@tt{vk@cage.rug.ac.be}). See the directory @tt{install\advanced\TeXassist} for more details. @enditemize @item @bf{ 15. 3. 1999 } @itemize @item enhancement for @hpt{Ctrl-[ and Ctrl-]} hotkeys in order to search pair construct (La)TeX keywords @enditemize @item @bf{ 6. 3. 1999 } @itemize @item enhancement for Ctrl/3,4 @hpt{Hotkeys in CSTeX} for the inclusion of (AMS-)LaTeX environments: if a line-marked block (Alt-L) exists, then surround it by the choosen environment; otherwise environment inserted at the cursor position (as before) @enditemize @item @bf{ 14. 12. 1998 } @itemize @item Improvement: skipping text between @tt{Overfull/Underfull} and @tt{[]} (sometimes produced a warning about wrong number of corrupted .log file because of parenthesis) @item Improvement: skipping text from @tt{LaTeX Warning:} until blank line @enditemize @item @bf{ 18. 1. 1998 } @itemize @item Figured out how to make @hpt{Double-side or slot 2 printing from dvips} @item Bugfix: the greek keyboard was switching off Auto-spellcheck. @item Generalization of the @bf{Locate next error} function (available from the menu, as the toolbar icon or as hotkey Shift-F12). If you put the cursor in .log file on a line which is like @verbatim Overfull \hbox (19.0473pt too wide) detected at line 5 Overfull \hbox (19.94281pt too wide) in alignment at lines 95--104 Underfull \hbox (badness 10000) in paragraph at lines 356--373 LaTeX ...whatever, e.g. Warning: or Font Info:.... line 138. @endverbatim then the @bf{Locate next error} will find the location of the warning from that line. Otherwise, i.e. from non-@tt{.log} files or having there cursor on another line (which is usual when searching for true errors), the behaviour of this function is unchanged. @enditemize @item @bf{ 5. 1. 1998 } @itemize @item (La)TeXing the paragraph: now accepts the current paragraph as well as the line block of text, if selected; see @hpt{CSTeX menu items explanation} @item Bugfix in the Czech version: reversed parameters of Master and Options when calling @tt{csdvips} @item This documentation updated for the @hpt{Installation of advanced macros} @enditemize @item @bf{ 29. 12. 1997 } @itemize @item TeX->PS routine---thus you can use the action @tt{cstex_texit_and_dvips} for making a toolbar icon (now: only menu item @bf{(La)TeX and dvips document}) @item Change in sampactn.e (syntax highlighting): @tt{*.ps, *.eps} and @tt{*.pdx} files are coloured according to @tt{epmkwds.ps} @enditemize @item @bf{ 15. 12. 1997 } @itemize @item In the pm_keys.e, I have joined @tt{Alt-Q} and @tt{Ctrl-Q} into @tt{Alt-Q}, since I have found how the @tt{Ctrl-Q} and the @tt{ALL} command can be useful @item Moreover, the new version of @tt{Alt-Q} work on TeX-like files only (i.e. files with extension @tt{TEX, LATEX, STY, CLS} or @tt{DTX} @item View documentation menu item enhanced to browse pmCSTeX.INF and LaTeX2e.INF @enditemize @item @bf{ 11. 11. 1997 } @itemize @item Bug fix: EPM crashed when (La)TeXing a paragraph invoked from a very deep directory (this was caused by EPM's string length limitation) @item View documentation menu item added (note: this routine works if the EPM has been compiled with @tt{WANT_SEARCH_PATH}) @item Call of the macro @tt{already_in_ring} replaced by its expansion (did not work for two users who recompiled EPM without the E3EMUL support) @item @hpt{FAQ} added to the documentation @enditemize @item @bf{ 24. 9. 1997 } @itemize @item TeXing a paragraph was not working if another EPM session (or EPM server) on different partition was running simultaneously @enditemize @item @bf{ 16. 7. 1997 } @itemize @item @tt{Alt-1} (in @hpt{pm_keys}) load file hotkey in @hpt{pm_keys} accepts also absolute filenames as well as those in Unix format (forward slashes) @enditemize @item @bf{ 13. 4. 1997 } @itemize @item @tt{Alt-1} (in @hpt{pm_keys}) load file hotkey replaced by my generalization. @item Options for MakeIndex are now available. @item PostScript: psview.cmd added (i.e. psview.bat converted for OS/2 and changed its option in the menu). @item PostScript: dvips-it + pause added. @item Spell-checker: warning if the selected dictionary does not exist, Spain dictionary added. Greek keyboard: ksi->xi fixed. @item Other programs (CSTeX version): dvi-out2 works in current directory and shows the messages. @enditemize @item @bf{ 5. 2. 1997 } @itemize @item Bugfix for a typo in the previously updated version of the protection against damaged .log files. @enditemize @item @bf{ 30. 1. 1997 and 3. 2. 1997 } @itemize @item The oval over the mistakes found is now thicker and light_magenta, thus easier to distinguish @enditemize @item @bf{ 26. 1. 1997 } @itemize @item 'TeXclean' now deletes @tt{*.bak} files too @item 'Highlight all' now does correctly go back to the first file @enditemize @item @bf{ 15. 1. 1997 } @itemize @item Documentation rewritten, packed together in order to release the beta version of the pmCSTeX for EPM, the version for the year 1997 @enditemize @item @bf{ 4. 1. 1997 } @itemize @item The master file is firstly searched in the directory of the working file, then in the current directory (compilation option @tt{CSTEX_USEMASTERDIR}) @item Menu item "Cykl" taken away (well, it was there for some historical reasons and I never used it under EPM) @enditemize @item @bf{ 30. 11. 1996 } @itemize @item (Czech version): za ny dvi-out2.exe, vlnka2.exe (pascalsk zdroj ch DOSovsk ch program byly kone zkopilovan pro OS/2). Update se provede takto: tyhle dva nov e a nov csdvips.cmd se zkop %EMTEX%\bin @enditemize @item @bf{ 28. 10. 1996 } @itemize @item Dictionaries FR.dic, UK.dic, US.dic, etc. are taken from the directory defined by the EPM_DICTIONARIES environmental variable. If this does not exist, then from the directory \APPS\EPM. See also @hpt{spell checker} @enditemize @item @bf{ 22. 10. 1996 } @itemize @item For the CS version: separate BibTeX, MakeIndex and csBibTeX, csMakeIndex (csBibTeX has been compiled in 1994 and it is not compatible with the new emTeX directory structure) @enditemize @item @bf{ 9. 10. 1996 } @itemize @item CSTeX.e: in @tt{DEFC cstex_highlight_all} added @tt{nextfile} after the loop; but then taken away because of other link; I'll check it in future. @item Profile.erx: remarks should be enclosed in @tt{/* */} instead of only a semicolon prefix @enditemize @item @bf{ 22. 7. 1996 } @itemize @item Hotkeys Ctrl/1, Ctrl/6, Ctrl/7 added @enditemize @item @bf{ 11. 6. 1996 } @itemize @item Added dictionary (language) menu for EPM spell checking+synonyms. The corresponding compile option is PM_DICTIONARIES @enditemize @item @bf{ 8. 6. 1996 } @itemize @item Final release---upload to hobbes, leo and CTAN @enditemize @item @bf{ 7. 6. 1996 } @itemize @item Meaning of @tt{Alt-Q} changed, added @tt{Ctrl-Q} hot key; spell-checker discussion @enditemize @item @bf{ 28. 5. 1996 } @itemize @item TeXing action works even when you ask for it from within .log file @item 'Locate Next Error': oval drawing for ...long line with an error works now better @enditemize @item @bf{ 26. 5. 1996 } @itemize @item Typo/bug from 19. 5. corrected @item sampactn.e replaced according to new EPM 6.03b @enditemize @item @bf{ 19. 5. 1996 } @itemize @item EMTEXOPT keyword added (see @hpt{syntax}) so you don't need to change your .cmd files if you use AMS-LaTeX or memory consuming documents. Therefore EMTEXOPT environmental variable has to be established and it should contain fixed memory parameters (see @hpt{Installation}). These were previously in .cmd files and they have been changed in this release. Using this EMTEXOPT trick there is no more need to have @tt{\batchmode} command in the Master file. Document being (La)TeXed on background is iconified, but this can be changed (see @hpt{recompiling}) @enditemize @item @bf{ 16. 5. 1996 } @itemize @item Suggestions and minor changes reported by Wolfgang Kronberg (@tt{kroni@bite.shnet.org}) taken into account @item Section about @hpt{syntax highlighting} written @enditemize @item @bf{ 15. 5. 1996 } @itemize @item Annoying message "I think you re(La)TeXed..." taken away @item dvips option into pm4EPM (i.e. new expandable keyword dvips for the Master's first line included) @enditemize @item @bf{ 9. 5. 1996 } @itemize @item Odstran no zdvojen ~V v menu View a vlnka @enditemize @item @bf{ 6. 5. 1996 } @itemize @item Announcement in comp.os.os2.announce @item cstocs.exe replaced by cs2cs.exe @enditemize @item @bf{ 2. 5. 1996 } @itemize @item AMS-LaTeX environments support (@tt{Ctrl/4} hotkey in @hpt{pm_keys}) @enditemize @item @bf{ 28. 4. 1996 } @itemize @item Only small changes @enditemize @item @bf{ 1. 3. 1996 } @itemize @item First public announcement @enditemize @item @bf{ 6. 2. 1996 } @itemize @item Distribution for my colleagues @enditemize @item @bf{ 30. 1. 1996 } @itemize @item First useable version for myself @enditemize @enddescription @h2 FAQ---Frequently Asked Questions @label FAQ There are some Frequently Asked Questions listed here. @ipfminitoc @h3 How to run MetaFont, gnuplot, awk... on the edited file The syntax with the first line @tt{Format:} keyword makes it possible to run any command over the edited file. For instance, you are editing a @tt{mypic.mf}: @samplecode % Format: runmf ... some MetaFont code here... @endsamplecode A click on the @bf{TeXit} icon, or the Shift-F11 hotkey, will run the batchfile @tt{runmf.cmd} on the currently edited file (or even more, you can use Master:). Note that even the icon is called @bf{TeXit}, it can run whatever you write in the appropriate script, like @tt{mf386.exe}, or @tt{gnuplot.exe} if @tt{gp.cmd} states for @tt{@gnuplot %1 %2 %3 %4 %5 %6 %7 %8 %9}: @samplecode # Format: gp set title "Hello, gnuplot" set grid plot sin(x)/x pause -1 @endsamplecode Note: I use EPM to edit configuration files for my calculations in physics; the only necessity is to write a batch file that launches the correct application. Furthermore, writing a syntax highlighting file is a matter of maybe 10 minutes (well, someone could contribute the @tt{epmkwds.mf} file for MetaFont). @h3 Incorrection version A message like @tt{Incorrection version...} is displayed in the EPM status window. That means that you have started EPM earlier than 6.03b. Please verify your configuration, namely: @itemize @item Is @tt{\Apps\EPM} cited before @tt{\OS2\Apps} in @tt{PATH} and @tt{LIBPATH}? See @hpt{Installation of pmCSTeX} or @hpt{my config.sys}). Remember that Warp 3.0 is shipped with EPM 5.51, see @hpt{Installation on Warp 3.0}. @item Have you correctly installed EPM 6.03b? One user was convinced that he installed this product well, but he was reading the installation instructions by EPM 6.0 while installing EPM 6.03b into the same directory. Thus some .dll files were locked and they were not overwritten, he got a crazy mixture of two versions! Hint: backup previous version, delete it complete, install the new one. @enditemize @h3 How to read previous EPM messages? What has EPM written to the bottom status bar? Look at the menu: @tt{View/Messages}. @h3 I cannot see \begin etc. keywords @label I cannot see \begin The highlighting @tt{epmkwds} files enclosed in pmCSTeX are suited for the yellow&blue combination of foreground&background. Thus, if you prefer the default EPM setting of black&white, then do NOT use my epmkwds files, otherwise you will not see any TeX keyword. See also @hpt{syntax highlighting}. If you want to use my highlighting files for non-yellow&blue combination, then you should process them by a script for @tt{sed, awk, REXX,...} to convert the 2nd and 3rd column to a combination that pleases your eyes. @h3 You don't like my hotkeys You may redefine them or take completely away. Look at pm_keys.e, change/delete them, and @hpt{recompile} it. @h3 Nefunguje mi vesnice ti si, pros m, @hpt{Bugs}, zpr naspod. @h3 Double-side or slot 2 printing from dvips @label Double-side or slot 2 printing from dvips Finally, I have found the way how to print double side from dvips (17. 1. 1998!)! It uses the @tt{-h} option of @tt{dvips} and the correct header files. Thus, from within EPM, use: @verbatim % ... dvips: * -h 2sideP.ps * @endverbatim for double-side printing on portrait sheet, @verbatim % ... dvips: * -h 2sideL.ps * @endverbatim for double-side printing on landscape sheet, or @verbatim % ... dvips: * -h Slot2.ps * @endverbatim for printing on transparencies or on the paper deposited in the slot 2 of the postscript printer. @h- Installation: For use withing pmCSTeX, all should be prepared as described in sections @hpt{Installation of pmCSTeX} or @hpt{Upgrading pmCSTeX}. If you want to use this feature on another TeX installation/platform, then copy those files into your TeX directory tree and use them in commands like @verbatim dvips -h 2sideL.ps my_text.dvi @endverbatim @h3 Tags are fine, but are there "permanent" tags? Use the @tt{ALL *string_to_find*} command (invoke command line by @tt{Ctrl/I}). Then use (repeatedly) @tt{Ctrl/Q}. @h3 I have a question/I have found a bug... Ok, write me a mail. But please, be sure that you have read this manual completely, it is sometimes difficult to figure out what's wrong on your system. Remember that a lot of users have installed this product without problems. If you find a bug, please read the @hpt{Bugs} section first, and then let me know about it by e-mail if that insect has not been documented up to now. @h3 Renaming a file Instead of using the menu options, EPM offers a more direct way to change the name of the file your working on. Place the mouse pointer over the title bar and double-click the right mouse button. The title bar will change to an edit field so that you can change the file name. When you're done, click the mouse anywhere off the title bar. Source of this trick: @tt{http://ourworld.compuserve.com/homepages/luvabo/} @h3 Running EPM as a server Running @tt{epm /r /i} installs EPM as an editor server. All further downloads into it by @tt{epm /r myfile.dat} are much faster (e.g., you can setup an @em{Alternate editor} in @bf{File Commander/2} by @tt{epm /r} or by @tt{start epm /r /i}). @h3 Saving file with LF or CRLF line ends You can change miscellaneous default save options in Profile.erx. Among them, the following line saves the files in Unix `LF' convention: @verbatim 'universal default_save_options /u' @endverbatim Later on, if you want to save an edited file in the standard OS/2 `CRLF' format, then you can use the command @tt{save /o} @h3 Make a backup file copy before save Do you want to backup the previous version of your edited file before overwriting it by the @tt{Save} command? Well, this is described in the section @hpt{Making backup copies of files before save}. @h3 Automaticke vygenerovani pk fontu z ps fontu Prispel pan J. Kuben: Pokud jde o automaticke vygenerovani pk fontu z ps fontu, je to reseno pomoci dvips. To se zavola (pri nastaveni prvniho radku) @verbatim % dvips *-Pnic* @endverbatim Soubor @tt{emtex\data\dvips\nic.cfg} ukazuje na prazdny seznam ps fontu @tt{emtex\data\dvips\prazdny.map}. Davka @tt{emtex\exe\epm\csdvips.cmd} (musi byt v ceste) je upravena tak, ze nastavi @tt{set maketexpk=make_pk}. Tento soubor vola dvips a predava mu parametry (protoze mu bylo receno, ze nejsou ps fonty). Rexx soubor @tt{emtex\exe\make_pk.cmd} (musi byt v ceste) je treba naeditovat. V uvodni casti je treba nastavit cesty podle konkretni instalace (kde jsou ps fonty, konfiguracni soubory, kam se budou ukladat pk fonty). Ten pak prohlizi soubor @tt{emtex\data\dvips\adobe.sez}, kde je ulozen seznam ps fontu, ktere jsou k dispozici, nazev zdrojaku a parametry, s nimiz se vola @tt{ps2pk} (musi byt v ceste; pouzivam verzi 1.6). Tento soubor je mozne podle potreby rozsirovat. Parametry odpovidaji syntaxi z @tt{psfonts.map}. Pokud neni font v seznamu nalezen, vola se @tt{emtex\exe\maketexp.cmd}, a tudiz @tt{mfjob} (opet je treba nastavit cesty podle instalace). Dvipm ma pak pripravene pk fonty a pri dalsim volani dvips se smaze @tt{-Pnic}, aby se spravne pouzily ps fonty. @h3 What is gpatch? @label gpatch gpatch means GNU @tt{patch} program. It is usually called @tt{patch} on Unix system. Since there is already another @tt{\os2\patch.exe} program by IBM distributed with OS/2, it makes sense to call GNU patch @tt{gpatch.exe}. You can download the whole GNU @tt{patch} package as @tt{gnupatch.zip} from hobbes or leo. Note: diff-files enclosed in pmCSTeX were produced by @verbatim diff -uw xxx-original.e xxx-modified.e >xxx.diff @endverbatim @h3 Various .dic files from IBM There are several versions of the dictionary *.dic files from IBM all around. The latest are distributed together with Netscape 4.61 (April 2000). However, these are not compatible to the .dic files of EPM, obviously because of its @tt{oslexam.dll}. Anybody knows how to use the new dictionaries with EPM, mainly those for languages lacking an EPM dictionary? @h2 Known bugs and missing features @label Bugs @label bugs @bf{pmCSTeX for EPM} related bugs and missing features: @enumerate @item The command @tt{'link pm_keys'} must be the first one in the Profile.erx, otherwise Ctrl/Y will not work for @tt{*.c*} and @tt{*.h} files. This occured after 4.1.1997. Probably a clash with CKEYS.E keyset or whatever else, when I redefine those @tt{EDIT_KEYS}. @item The @tt{makeindex} first line keyword (see @hpt{Syntax of expansions}) was added according to demand of one person, but I've got no feedback. Whether this works or not for you, please let me know. @item Using "Next error", an error is found correctly but the current file (the file with the error) is switched off to .log file. I don't know why, this comes irregularly, is there something wrong what is on the stack of EPM? Because just before the return command the current file is correct. @item CSTEX distribution users: Jsou probl my s @tt{csbibtex}em, kter se do distribuce CSTEX'96 dostal z CSTEX'94: neakceptuje novou adres ovou strukturu emTeXu, nezn dlouh na .aux soubor @item Czech.E users: V prvn m okn ringu funguje vesnice bez probl em v dal ch ji nen spustit (p es @tt{Alt-[}). Mus se napsat koliv smeno (nap . @tt{Alt-G a}) a teprve potom d t @tt{Alt-[}. kdo, pro se to chov takto? @item pmTeXit.cmd: change it so that it accepts not only the @tt{Format:} keyword, but also the @tt{EmtexOpt:} and @tt{Master:} keywords. (This means, you are welcome to do that---I haven't used pmTeXit.cmd for more than one year, since I do everything from within the EPM). @item @tt{(La)TeX paragraph} is now targeted for use in LaTeX documents only. Plain TeX documents should end by @tt{\bye} command instead of @tt{\end{document}}. However, there was no demand for plain TeX paragraph TeXing until now, so there is no need to code this. @endenumerate General @bf{EPM} related bugs and missing features: @enumerate @item I could disable the menu of changing the dictionary file when the Auto-spellcheck is on. Just I would have to find/receive from you a trick how to detect it. @item Sometimes actions from the menu items cannot be fired, while toolbar and hotkeys action are still working normally. Any idea? I have a suspiction that this could be related to the EPM's string length limitation. @item Sometimes the syntax highliting stops working for the files newly loaded. Anyone knows why? @item The same problem of the instability of the red oval over the first error found in .log file as in EPMTEX occured if the syntax highlighting is on. The reason has been discovered recently: it is caused by @tt{defload} syntax highlighting method, since the the syntax highlighting is made AFTER ALL macros are finished, thus the oval is re-coloured. Workaround is not 'trivial'. However, I was hacking this in 1998 and I have figured out that this problem could be solved by patching routine @tt{ toggle_parse()} in stdctrl.e. pmCSTeX would set on global variables with the filename and oval positions, which will be executed at the end of the syntax colouring routine. If anybody is wishing to implement this idea, please submit the patch for inclusion into pmCSTeX. @item Netscape 4.61 contains new dictionaries; the most important are localized ones not available for EPM before (@tt{czech.dic}, for instance). However, these dictionaries do not work with EPM. Do you have an idea what to do? @endenumerate @h2 To do! @label to do @label To do @bf{Use EPM and (La)TeX every day! Have a nice day/night writing your beautiful documents.} @if false eof pmCSTeX.emxdoc @endif