Software
Combinatorial Data + Tex
IpeStyle: Style Sheets for Presentations and Latex Figures using Ipe
Ipe is an open-source drawing editor that is WYSIWYG and fully supports latex, graphs and modular creation of running examples. Best of all, it is not as likely to crash as Open- and LibreOffice for larger documents. Its only drawbacks are the initially steep learning curve and the somewhat rudimentary default style - everything has to be coded in order to use it. This is where these style sheets for creating presentations and for drawing latex figures come into play; feel free to use them under the terms of GNU GPLv3.
Installation of IpeStyle 1.1:
- Install Ipe (I used version 7.2.19)
- Download IpeStyle.zip and put all files into the corresponding subdirectories of the base installation directory of Ipe
- [Optional] Adapt the path "ipedir" (no German Umlaute, as ipescript does not read them) and executables in ipe2print.sh and "author" (your name) in jensprint.isy.
- [Optional] Add the "graphdrawing" ipelet and adapt the "pgf_gd_path" path variable within (however, this ipelet did not work for me on Windows so far)
Description:
- jens.lua: preferences
- After extraction, new documents will use the following stylesheets:
- jens.isy: presentation stylesheet
- Adds new decorations and symbols, colors, the theorem environment, extended itemize-environments...
- Uses sans-serif Carlito font (which is pretty close to Calibri) and sfmath / sansmathfonts for sans-serif math formulas (sans serif is better readable on slides).
- Alternatively, one may use the lmodern sans serif font "lmss" (better than cm-super) by installing the package cm-super in miktex (Ipe needs scalable fonts) and adding "\usepackage{lmodern}" and "\renewcommand\rmdefault{lmss}".
- jensprint.isy + ipe2print.sh: exports a print version of your presentation (e.g. to share on webspace)
- Adds author+date and deletes the ink-demanding "Background" header symbol by adding the addidional style-sheet "jensprint.isy", which overwrites this symbol.
- For every page, all views that are marked (checkbox directly right of view) are exported. If no view is marked on a page, only the last view is exported. The document source and notes are not exported.
- For removing the "Background" symbol on a single page (e.g. on the first page), add a layer called "BACKGROUND" to this page.
- ipe2print.sh requires an installed WSL environment for path conversion between linux and windows
- jenstex.isy: latex-figure stylesheet
- For using drawn pictures in latex, delete the style-sheet jens.isy (using ctrl-shift-s) and replace the style-sheet presentation.isy in the document with jenstex.isy.
- Uses lmodern sans font.
- Use scale=0.5 for label heights in figures that are similar to surrounding text.
Usage and short-cuts of Ipe (some are specific to IpeStyle):
- Select objects with ctrl-leftmouse:
- +shift adds to selection, +space iterates through all single objects
- When sliding mouse from left-top to right-bottom, only enclosed objects in the box are selected, otherwise all objects that intersect the box.
- Beware where you pick up the object, as the final grid position is dependent on the pick-up point.
- Ipelets->Select by type/attribute selects objects of the same type, e.g. vertices by type "mark", or by the currently shown properties on the left.
- Vertices may be selected at their boundary as well as at their middle control point.
- q picks properties like color etc. of the selection and shows these on top left; ctrl-q applies modified properties on the selection.
- Move objects with alt-leftmouse:
- t + shift-leftmouse moves axis-aligned
- ctrl-f and ctrl-b move objects to front and back, ctrl-shift-f and ctrl-shift-b move one step to front and back
- Graphs:
- m and p create unlabeled vertices (either "mark/fdisc" or "mark/circle") and edges, l creates text labels (use "scriptsize"; remember to either enclose every variable with $...$ manually or use shift-4 for math labels instead)
- Use move graph nodes (no short-cut available yet) to let edges follow vertex movements
- Insert new graph symbols vertexLabeled and edgeLabeled using "Ipelets->Symbols->Clone Symbol". However, this allows not to move nodes automatically: stretch them with e instead (and when horizontal rotate with r).
- Text:
- F10 adds a text box, ctrl-e edits it (and endpoints of edges; accept with "space") and ctrl-return finishes the text box
- Use \red, \green, \blue, \grayed for standard text colors, \colorbox{blue}{text} for coloring text background and \quotedblbase quote\textquotedblright{} for German quotation marks
- Use \checkmark and \crossmark for yes and no symbols, and $\cupdot$, $:=$, \Lightning for disjoint union, definition and contradiction
- Use \begin{thm}[Satz]{Hall~1935} for theorems (amsthm seems to add some extra-space before theorems, which renders decorations useless).
- Use decorations like yellowBox1/2 and grayBox1/2 by first grouping one or more elements (ctrl-g) and then "rightclick->decorations".
- ctrl-p sets page title
- ctrl-n inserts private notes to a page (e.g. for talks)
- g adds text box with multiple rows and fixed width (e.g. below an image), but has fixed width; alt-w changes width
- ctrl-l compiles all latex text in the document
- Insert html- or file-link by grouping an object and then adding the link
- Pages and layers:
- \ fits canvas to window size
- ctrl-i adds new page, ctrl-shift-i adds a new layer and new view
- pgup/pgdown iterates through views, shift-pgup/pgdown through pages
- ctrl-shift-a selects all objects in the active layer, ctrl-shift-m moves selected objects to active layer
- ctrl-shift-s shows the style-sheets that are stored in the document, ctrl-shift-u updates them from hard-drive