GPL V2. Added settings to documentation
1 \documentclass[12pt,a4paper]{article}
2 \usepackage[utf8]{inputenc}
6 %\usepackage{longtable}
8 \setlength{\headheight}{0cm}
9 \setlength{\headsep}{0cm}
10 \setlength{\topskip}{0cm}
11 \setlength{\topmargin}{-0.5cm}
13 \setlength{\parskip}{1.5ex}
14 \setlength{\parindent}{0cm}
15 \setlength{\oddsidemargin}{0cm}
16 \setlength{\textwidth}{16cm}
17 \setlength{\textheight}{27cm}
19 \newlength{\maximgwidth}
20 \setlength{\maximgwidth}{14cm}
21 \newcommand{\maximage}[1]{
23 \includegraphics[width=\maximgwidth]{#1}
26 \newcommand{\hint}[1]{
28 \begin{tabular}{|rp{12cm}|} \hline
29 {\bf Hint}:& #1\\ \hline
35 \newcommand{\vym}{{\sc vym }}
36 \newcommand{\ra}{$\longrightarrow$}
37 \newcommand{\la}{$\longleftarrow$}
38 \newcommand{\ua}{$\uparrow$}
39 \newcommand{\da}{$\downarrow$}
40 \newcommand{\key}[1]{[#1]}
42 \newenvironment{code}[1] { \verbatim #1}{\endverbatim }
44 \hypersetup{bookmarks, bookmarksopen,
45 pdftitle={VYM - a tool for visual thinking },
46 pdfauthor={Uwe Drechsel},
48 pdfkeywords={map, tool},
49 pdfpagemode={UseOutlines},
50 bookmarksopenlevel={1},
59 \includegraphics[width=8cm]{images/vym-logo-new.png}
61 VYM \\ -- \\View Your Mind\\ {\small Version 1.9.0}}
62 \author{\textcopyright Uwe Drechsel }
74 Many people have sent me their feedback and ideas, and all of that has
75 helped a lot to make \vym better. Thanks to all of you!
77 For this manual I would like to send some special thanks to
80 \item {\em Peter Adamson} for lots of feedback and proofreading of my
81 far from perfect english
82 \item The team of {\em AClibre (Academia y Conocimiento Libre)}
83 in Colombia for their translation of
84 the manual to spanish:
86 \begin{tabular}{|p{7cm}|p{5.5cm}|} \hline
87 Encargado & Actividad \\ \hline
89 \item Vanessa Carolina Guti\'errez Sanchez
90 \item Erika Tatiana Luque Melo
91 \item Jeffrey Steve Borb\'on Sanabria
92 \item John Edisson Ortiz Rom\'an
96 \item Revisi\'on y correcciones varias
97 \item Estructuraci\'on y exporte
98 \item Revisi\'on y correcciones varias
99 \end{itemize} \\ \hline
106 \section{Introduction}
107 \subsection{What is a \vym map?}
108 A \vym map (abbreviated below as {\em map}) is a tree like structure:
109 \maximage{images/example1.png}
110 Such maps can be drawn by hand on a sheet of paper or flip chart and help to
111 structure your thoughts. While a tree like structure like the illustration above can be
112 drawn manually \vym offers much more features to work with such maps.
113 \vym is not just another drawing software application, but a tool to store and modify
114 information in an intuitive way. For example you can reorder parts of
115 the map by pressing a key or add various pieces of information like a complete
116 email by a simple mouse click.
118 Once you have finished collecting and organising your ideas, you can
119 easily generate a variety of outputs including for example a
120 presentation in Open~Office based on a {\em map}.
122 \hint{You find the map shown above and others by clicking \begin{center}Help \ra Open vym
123 examples\end{center} in the menu bar.}
125 \subsection{Why should I use {\em maps}? Time, Space and your Brain.}
126 \subsubsection*{Space}
127 A {\em map} can concentrate very complex content in a small space such as a
128 piece of paper. It helps to use both sides of your brain: the logical
129 side and also your creative side (e.g. by using pictures, colours and
130 keywords in a map, often called {\em anchors}). It is a technique to help
131 organize the way you think and stimulate your creativity: It can help you by developing, sorting and helping to memorise your ideas.
133 \subsubsection*{Time}
134 Because you just use keywords and drawings, it is much faster than good
135 old fashioned 'notes'. Your brain memorizes things by associating them with
136 other things -- a {\em map} makes use of those connections and stimulates
140 \subsubsection*{Your Brain}
141 In 1960 Prof. {\sc Roger Sperry} discovered that both hemispheres
142 of the human brain undertake different tasks (of course both of them
143 basically {\em can} do the same):
145 \begin{tabular}{|p{5.5cm}|p{5.5cm}|} \hline
146 Left side & Right side \\ \hline
148 \item verbal speech and writing
150 \item logical thinking
151 \item analysing and details
153 \item linear thinking
154 \item concept of time
158 \item visual thinking, day dreams
159 \item intuition and emotion
160 \item overview of things
162 \item art, music, dancing
163 \item non-linear thinking, connecting things
164 \item spatial awareness
165 \end{itemize} \\ \hline
168 In our science oriented western society we have learned to mainly rely on our
169 left side of the brain, the "rational" one. In other cultures, such as the native americans and other "old" cultures, the right
170 side is much more important. {\em Map} are just one way to stimulate the
171 other side and make use of additional resources we all have.
174 \subsection{Where could I use a {\em map}?}
175 Here are some examples, how you can use those {\em maps}
177 \item to prepare articles, papers, books, talks, \ldots
178 \item to sort complex data
179 \item to memorize facts, peoples names, vocabulary, \ldots
180 \item to sort emails, files and bookmarks on your computer
181 \item to moderate conferences
182 \item to brainstorm solutions to problems
183 \item to record the tasks when planning a project
186 \subsection{What you shouldn't do with a {\em map}...}
187 A {\em map} drawn by somebody shows the way that the author thinks. There is
188 no question of right or wrong in the way it is drawn, so there is no way to criticise
189 it. "It is, what it is" ({\sc F.~Lehmann}).The tool will be of considerable use to the author and only very limited use to anyone else.
191 However, when groups share in creating a {\em map} all of the group will benefit from its use. An example of such use is when a Tutor develops a {\em map} with a group of students during instruction. Another group use is when a Project leader gathers a group of specialists to help {\em map} the tasks that will be required to deliver a project.
196 \subsection{Internet Ressources}
197 A good starting point to learn more about Mindmaps in general is Wikipedia:
200 \href{http://en.wikipedia.org/wiki/Mind_map}{http://en.wikipedia.org/wiki/Mind\_map}
202 \href{http://de.wikipedia.org/wiki/Mindmap}{http://de.wikipedia.org/wiki/Mindmap}
208 \section{The Concept of the \vym application}
209 %TODO may add a general introduction here...
210 \subsection{The Mainwindow and its satellites} \label{satellite}
211 \vym comes with several windows, the central one being the {\em
213 More windows, each having a special purpose, can be opened and arranged
214 around the mainwindow\footnote{
215 The advantage of having separate window instead of integrating them
216 in a combined workspace is flexibility in arranging the windows. For
217 example I usually have the {\em noteeditor} "behind" the {\em
218 mapeditor}. On Linux my windowmanager (KDE) allows me to enter text
219 into a small visible corner of the {\em noteeditor} withour clicking
220 the mouse button in it. I just push the mouse around to set the
221 window focus, a concept which is useful also working with
222 \href{http://www.gimp.org}{http://www.gimp.org}.
224 The image below shows the {\em mapeditor}
225 together with the often used {\em noteeditor}:
226 \maximage{images/windows.png}
227 Most of the time you will work in the {\em mapeditor} by just adding new
228 branches, moving around and reordering them. The various ways to do this
229 will be explained in \ref{mapeditor}. You can store additional
230 information e.g. the content of a email easily in a {\em branch}: Just
231 type or copy\&paste it into the {\em noteeditor}. Working with notes is
232 explained in \ref{noteeditor}
234 Here is a list of the available satellite windows:
236 \item Noteeditor (see \ref {noteeditor})
237 \item Historywindow (see \ref{historywindow})
238 \item Branch Property Window (see \ref{propwindow})
242 \subsection{Menus and Context menus}
243 At the top of each window you will find the menubar. The options provided there
244 are similar to those you are probably used to from other applications. Note that
245 many (and even more) options are availabe via {\em context menus}. Those
246 are available if you right-click onto an object in a map (on Mac~OS~X
249 \subsection{Toolbars}
250 The toolbars in the mainwindows give quick access to many functions and
251 also display the state of selected objects in the map. For example a
252 branch may show certain {\em flags}, the corresponding flags are also
255 \hint {You can reposition all toolbars by simply grabbing and
256 dragging them with the toolbar handle to a new position. For example you
257 can move the flags-toolbar from its original horizontal position on top
258 of the mapeditor to a vertical position on the right side. Or just
259 insert it again at its original position. Also hiding some of the
260 toolbars is possible by right-clicking on the toolbar handle.}
263 The {\em map} itself has always a {\em mapcenter}. The
264 mapcenter has {\em branches} radiating out from the centre just like the trunk
265 of a tree. Each branch in turn may have branches again.
266 \maximage{images/branches.png}
267 We will call a branch directly connected to the mapcenter a {\em
268 mainbranch}, because it determines the position of all its child
271 The mapcenter and the branches all have a {\em heading}. This is the
272 text you see in the mapeditor. Usually it should just be one or a few
273 key words, so that one can easily keep track of the whole map.
276 In the toolbar above the mapeditor you see various symbols.
277 \maximage{images/default-flags.png}
278 These are called {\em flags} and can be used to mark branches in the
279 {\em map}, e.g. if something is important or questionable.
280 There are also more flags set by \vym automatically to show additional
281 information, e.g. when a note is attached to a particular branch.
283 By default some of these flags are set exclusively e.g. when the
284 "thumb-up" flag is set, then the "thumb down" is reset and vice
285 versa. You can change this default behaviour in the settings menu.
287 \section{Mapeditor} \label {mapeditor}
288 \subsection{Start a new map}
289 After \vym is started two windows will open: the {\em mapeditor} and the {\em noteditor}. Usually you will work in both windows, but at the moment we
290 will just need the mapeditor.
292 Select the mapcenter "New map" in the middle of the mapeditor by
293 left-clicking with the mouse. It will be highlighted yellow to show that is
294 selected. There are several ways to add a new branch to the center:
296 \item Using the mouse: Open the context menu by clicking with the
297 right mouse button (CTRL-Click on Mac) onto the
298 mapcenter and choose Add \ra Add branch as child
299 \item Press \key{Ins} or \key{A}
301 A new branch will appear and you will be able to type the heading of the
302 branch. Finish adding the new branch by pressing \key{Enter}.
304 Sometimes it comes in handy to be able to add a new branch above or below the current
307 \item Use \key{Shift-A} to add a branch above the selected one or...
308 \item \key{Ctrl-A} to add one below.
311 possible to add a branch in such a way, that the current selection
312 becomes the child of the new branch, which is like inserting it {\em
313 before} the selection. This can be done using the context menu.
315 \hint{To delete a branch press \key{CTRL-X}. If enabled in the Settings
316 menu, you can also use the \key{Del} key.}
318 \subsection{Navigate through a map}
319 \subsubsection*{Select branches}
320 To select branches you can use the left button of your mouse or also the
321 arrow keys. Depending on the {\em orientation} of a branch tap
322 \key{\la} or \key{\ra} to move nearer to the mapcenter or deeper
323 down into the branches. Within a set of branches, let's call them a
324 {\em subtree}, you can use \key{\ua} and \key{\da} to go up and down. You can
325 also use \key{Home} and \key{End} to select the first and last branch.
328 \subsubsection*{Panning the view of a map}
329 While adding more and more branches the size of the map may become
330 larger than the mapeditor window. You can use the scrollbars on the
331 right and the bottom of your mapeditor window to scroll the view up or down or left or right. It is easier to just scroll using the left mouse button: Click anywhere on the {\em canvas} itself. Choose an empty space somewhere between the branches. The
332 mouse pointer will change from an arrow to a hand, now move or drag the visible
333 map to show the desired part.
335 If you select branches using the arrow keys, the map will scroll
336 to ensure that the selected branch is always visible.
338 \subsubsection*{Zooming the view of a map}
339 Working with huge maps, the {\em zoom}-function comes in handy: You can
342 \item from the menu: View \ra Zoom in, View \ra Zoom out, View \ra reset Zoom.
343 \item the toolbar buttons
345 \includegraphics[width=3cm]{images/zoom-buttons.png}
348 Clicking the crossed magnifying lens icon will reset the zoomed view to its original size.
351 \subsubsection*{Find Function} \label{findwindow}
352 With huge maps there is the need to have a
353 find function. Choose Edit \ra Find to open the Find Window:
355 \includegraphics[width=6cm]{images/find-window.png}
357 The find function will search for, the text you enter here, in all the branch headings and also in the associated notes. Everytime you press the "Find"-button it will look for the next occurence, which will then be selected automatically. If the search
358 fails, a short message "Nothing found" will appear for a few
359 seconds in the {\em statusbar} on the bottom of the mapeditor.
361 \subsubsection*{Keep the overview -- scroll a part of the map}
362 A very big subtree of a map e.g. a branch with hundreds of child branches would make
363 it very hard to keep an overview over the whole map. You can hide all
364 the children of a branch by {\em scrolling} it -- this function is often called {\em folding}. Think of the whole subtree as painted onto a
365 broadsheet newspaper. You can scroll or fold the paper to a small roll, leaving just
366 the headline visible.
368 To scroll or unscroll a branch and its children,
370 \item press either the \key{Scroll Lock} key or the \key{S}
371 \item press the middle-mouse button or
372 \item choose the scroll icon from the toolbar.
374 If you select parts of a scrolled branch e.g. using the find function or
375 by using the arrow-keys, it will unscroll temporary. This is shown as a
376 scroll with a little hour glass. If the temporary unscrolled part is no
377 longer needed, it will be hidden again automatically. It is also
378 possible to unscroll all branches using "Edit\ra Unscroll all scrolled
381 You can also hide parts of the map while exporting it e.g. to a webpage
382 or a presentation, see \ref{hideexport} for details.
384 \subsection{Modify and move branches}
385 \subsubsection*{Modify the heading}
386 You can edit the heading by selecting the branch and then
388 \item pressing \key{Enter}
389 \item pressing \key{F2}
390 \item double-clicking with left mouse.
392 Just type the new heading (or edit the old one) and press \key{Enter}.
394 \subsubsection*{Move a branch}
395 The easiest way to move a branch is to select it with left-mouse and
396 drag it to the destination while keeping the mouse button pressed.
397 Depending on the branch it will be
399 \item moved to the destination or
400 \item {\em linked} to a new {\em parent} (mapcenter or branch)
402 If you drag the branch over another one or over the mapcenter, you will
403 notice that the link connecting it to the old parent will be changed to
404 lead to the new parent which is now under your mousepointer.
405 If you release the button now, the branch will be relinked.
407 If you release the button in the middle of nowhere, the result will
408 depend on the type of branch you are releasing:
410 \item A mainbranch is directly connected to the mapcenter.
411 It will stay on its new position.
412 \item An ordinary branch will "jump" back to its original position.
414 Thus you can easily rearrange the layout of the mainbranches to avoid
415 overlapping of their subtrees.
416 There is another convenient way to move branches, especially if you want
417 to {\em reorder} a subtree: You can move a branch up or down in a
420 \item pressing \key{\ua} and \key {\da}
421 \item selecting Edit \ra Move branch
422 \item clicking on the toolbar buttons:
424 \includegraphics[width=1.5cm]{images/move-buttons.png}
428 There is yet another way to move branches: If you press \key{Shift} or
429 \key{Ctrl} while moving with the mouse, the branch will be added above
430 or below the one the mouse pointer is over. This can also be used to reorder branches in a map.
432 \subsection{Colours and Images - Using the right side of your brain}
433 \subsubsection*{Change colour of a heading}
434 You can also use colours to add more information to a map, e.g. use
435 red, green and more colours to prioritize tasks. Again you can
437 \item use the menu and choose e.g Format \ra Set Color
438 \item use the toolbar
440 \includegraphics[width=3cm]{images/color-buttons.png}
443 The first button (black in the graphic above) shows the current colour.
444 Clicking on it let's you choose another colour. You can also "pick"
445 another colour by selecting a branch with the desired colour and using the
446 "pick colour" button. Both of the icons showing a palette actually apply
447 the current colour to the selected branch. While the first one just
448 colours the heading of the selection, the last one also colours all the
449 children of the selected branch.
452 A very useful function is the "copy colour" using the mouse: Select the
453 branch which should get the new colour, then press \key{Ctrl} and
454 simultanously click with left-mouse on another branch to copy its colour
455 to the first one. Here the children of the selection also will get the new
456 colour, if you just want to colour the selection itself, additionally
459 \subsubsection*{Use flags}
460 \vym provides various flags. They are usually displayed in the toolbar on top of the
461 mapeditor window. (Note: Like all toolbars you can also move them to the
462 left or the right side of the window or even detach them. Just grab the
463 very left "dotted" part of the toolbar with your left-mouse button.)
464 \maximage{images/default-flags.png}
465 If you have a branch selected, you can set any number of flags by
466 clicking them in the toolbar. The toolbar buttons change their state and
467 always reflect the flags set in the selected branch. So, to remove a flag from a branch, select the branch and then click the highlighted flag on the toolbar.
469 At present \vym uses two kinds of flags: {\em System Flags} and {\em
470 Standard Flags}. The standard flags are those shown in the toolbar.
471 System flags are set by \vym to indicate e.g. that there is additional
472 information in a note (more on this in \ref{noteeditor}). Later versions
473 of \vym may have another kind of flags, which may be edited by the user.
475 \subsubsection*{Images}
476 The easiest way to add an image to a branch is by dragging it e.g. from a
477 webbrowser to the mapeditor while a branch is selected there.
479 You can also add an image to a branch by opening the context menu of the
480 branch. Right click the selected branch, choose "Add Image". A
481 dialog window enables you choose the image to load.
482 \footnote{Supported image types are: PNG, BMP, XBM, XPM and PNM. It may
483 also support JPEG, MNG and GIF, if specially configured during
484 compilation (as done when \vym is part of SUSE LINUX).}
485 While an image is selected in the dialog, a preview of the
486 image is displayed. It is also possible to select multiple images.
488 You can position the image anywhere you want, just drag it with left
489 mouse. To relink it to another branch, press \key{Shift} while moving
490 it. To delete it, press \key{Del}.
492 If you right-click onto an image, a context menu will open which let's
493 you first choose one of several image formats. Then a file dialog opens
496 Hint: This is used to "export" the image, it will be
497 saved anyway in the map itself! You can also cut and
498 copy images, but it is not possible to add objects to an image\footnote{
499 Images are regarded as "extra feature". It would make working with
500 the map much more complex if e.g. images could be linked to images.}
502 The option \lq{\bf Use for export} \rq controls the output of exports
503 e.g. to HTML: If set to no, the image won't appear in the {\em text}
504 part of the output. This is useful for large images or if images are
505 used as a kind of frame e.g. the famous cloud symbol around a part of
506 the map. Those shouldn't appear in the middle of the text.
508 At the moment image support is preliminary: Images will be saved
509 together with all the other data of a map in the {\tt .vym}-file.
510 Later versions will include more functionality like resizing the images,
511 changing its z-value (put it into background) etc.
513 \subsubsection*{Frames}
514 A frame can be added to a branch in the {\em property window} (see
516 Alternatively, you can use use images as frames. Have a look at the demo
517 map {\tt todo.vym} as an example, where the mapcenter is a cloud. You
518 can use an external drawing program like {\tt gimp} to create an image,
519 preferable with an transparency channel, so that you can design frames
520 which don't use a rectangular borderline, just like that cloud.
523 \subsection{Design of map background and connecting links }
524 The design of the background of a map and also of the links connecting
525 various parts of the map can be changed by
527 \item Selecting Format from the menu
528 \item Right clicking on the canvas, which will open a context menu
531 \subsubsection*{Background }
532 The colour is set (and also displayed) as "Set background colour".
533 Alternatevily you can set an background image, though this is not
534 recommended in general. Working on the map becomes slow and the image
535 currently cannot be positioned freely.
537 \subsubsection*{Link colour}
538 Links connecting branches can be coloured in one of two ways:
540 \item use the same colour for the heading and for the branch link line.
541 \item use {\em one} colour for all links and choose different colours for the branch headings text. The default colour for branch link lines is blue.
543 The latter can be set with "Set link colour". Check or uncheck the "Use
544 colour of heading for link" option to toggle between the two designs for
547 \subsubsection*{Link style}
548 \vym offers four different styles for the appearences of links:
555 The "thick" styles only apply to links starting at the mapcenter, link lines for the rest
556 of the map are always painted "thin".
559 \subsection{Links to other documents and webpages}
560 \vym supports two kind of external links:
562 \item Document, which will be opened in an external webbrowser
563 \item \vym map, which will be opened in \vym itself
565 In addition to the external links there also internal ones, leading from one
566 branch in a map to another one. Those are called {\em XLinks} and are explained
567 in section~\ref{xlinks}.
569 \subsubsection*{Webbrowser}
570 Modern Webbrowsers like {\tt konqueror and Firefox} are able to display various
571 types of files, both local or on the internet. To enter the URL of
572 any document, press \key{U} or right-click onto a branch to open the contextmenu then choose
573 "References\ra Edit URL". If you want to use a file dialog to
574 conveniently choose a local file you can use~\key{SHIFT-U}.
576 After an URL was entered, a little globe will appear in the branch. By
577 clicking on the globe in the toolbar or the context menu an external
579 The browser can be changed in the Settings Menu.}
582 \includegraphics[width=0.5cm]{images/flag-url.png}
584 For more information on working with bookmarks and webbrowsers see
585 section \ref{bookmarks}.
587 In the context menu there is also an option to open all URLs found
588 in the selected subtree of the map. That's useful to simultanously open
589 a collection of URLs in the webbrowser, especially if the browser can
590 open them in tabs (like Konqueror).
593 \subsubsection*{\vym map}
594 To link to to another map right click on a branch and choose "Edit \vym link". A file dialog opens where you can choose the map. A
595 branch with a link is marked with
597 \includegraphics[width=0.5cm]{images/flag-vymlink.png}
599 Clicking this flag beside the branch heading, in the toolbar or in the context menu of a branch will open the map in another tab (see \ref{tabs} for working with
600 multiple maps). To delete an existing link, just right click the branch and select "Delete \vym link".
602 In the context menu there is also an option to open all vymlinks found
603 in the selected subtree of the map. That's useful to simultanously open
604 a collection of related maps.
606 Technical note: Internally \vym uses absolute paths, to avoid opening
607 several tabs containing the same map. When a map is saved, this path is
608 converted to a relative one (e.g. {\tt /home/user/vym.map} might become
609 {\tt ./vym.map}. This makes it fairly easy to use multiple maps on
610 different computers or export them to HTML in future.
612 \subsection{Multiple maps} \label{tabs}
613 You can work on multiple maps at the same time. Each new map is opened
614 in another {\em tab}. The available tabs are shown just above the
615 mapeditor. You can use the normal cut/copy/paste functions to
616 copy data from one map to another.
621 %\subsubsection{Menus}
622 %\subsubsection{Keyboard shortcuts}
627 % Working with tabs (multiple maps)
631 \section{Noteeditor} \label {noteeditor}
632 If you want to attach more text to a branch e.g. a complete email, a
633 cooking recipe, or the whole source code of a software project, you can
635 \maximage{images/noteeditor.png}
636 This editor displays text associated with a branch selected in the mapeditor. The noteeditor
637 shows different background colours depending on whether text is associated with a selected branch.
640 Before you can type or paste text into it, you have
641 to select a branch in the mapeditor. Note that the background colour
642 of the noteeditor indicates its state:
644 \item grey: no text entered yet
645 \item white: some text has been entered
647 In the mapeditor itself, to signal that there is a note with more
648 information for a particular branch, a little "note" flag will appear next
649 to the heading of the branch. This is illustrated in the lower branch on the right hand side:
650 \maximage{images/branches-flags.png}
652 \subsection{Import and export notes}
653 The note is always saved automatically within the \vym map itself.
654 Nevertheless sometimes it is nice to import a note from an external file
655 or write it. In the Note Editor use "File\ra~Import" and "File\ra~Export" to do so.
657 \subsection{Edit and print note}
658 Editing works like in any simple texteditor, including undo and redo
659 functions. You can delete the complete note by clicking the
660 trashcan. Only the note itself is printed by clicking the printer icon.
662 \subsection{RichText: Colours, paragraphs and formatted text}
663 \vym supports formatted text (QT Rich Text) in the noteeditor since
664 version 1.4.7. Colours and text attributes (e.g. italic, bold) can be
665 set with the buttons above the text. The text itself is divided into
666 paragraphs. For each paragraph the format can be set (e.g. centered,
667 right). A paragraph is ended when a \key{Return} is entered. If you just
668 want to begin a new line, press \key{CTRL-Return}.
670 \subsection{Fonts and how to switch them quickly}
671 The noteeditor is designed to be used for simple notes, not really as a full
672 featured word processor. Because of many requests \vym supports
673 formatted text in the noteeditor\footnote{
674 \vym uses the QRichtText format, which is basically a subset of the
675 formatting provided in HTML.}
676 Two default fonts are supported which can be set in the Settings menu.
677 One is a fixed width font, the other has variable width. The fixed font
678 is usually used for emails, source code etc.\ while the variable font is
679 used for simple notes, where one doesn't need fixed character widths.
680 Both fonts can easily switched using the following symbol from the
683 \includegraphics[width=0.5cm]{images/formatfixedfont.png}
685 In the Settings menu both fonts can be set. The default font can also be toggled between the fixed and variable font by selecting or deselecting the "fixed font is default" menu item.
687 Additionally to the default fonts any font installed on your system can
688 be used. Please note, that the chosen font also will be used for HTML
689 exports, so if youy VYM mind map could ever be exported to a web or intranet page you should only use fonts which are available generally.
691 \subsection{Find text}
692 The noteeditor itself has no Find function, use Find in the mapeditor,
693 which will also search all notes (see \ref{findwindow}).
695 \subsection{Paste text into note editor}
696 Often you will paste text into the editor from another application e.g.
697 an email. Normally \vym will generate a new paragraph for each new line.
698 This usually is not what you want, so you can choose from the menu
701 \section{Hello world}
702 This section is about how \vym can interact with other applications.
703 Many applications can now read and write their data using XML, the
704 eXtensible Markup Language. \vym also uses XML to save its maps, see
705 \ref{fileformat} for a more detailed description.
707 So if you make use of another application that understands XML, chances are good that someone
708 could write import/export filters for \vym. Volunteers are always
711 \subsection{Import} \label{import}
713 \subsubsection*{KDE Bookmarks}
714 The integrated bookmark editor in KDE (Konqueror etc.) is somewhat limited, so why not
715 use \vym to maintain the bookmark mess? To create a new map containing
716 your current KDE bookmarks just choose
718 \item File \ra Import\ra KDE Bookmarks
721 \subsubsection*{Mind Manager}
722 \vym has currently a very basic import filter to convert maps created by
723 {\em Mind Manager}\footnote{Mind Manager is a commercial i.e. non free, software application by Mindjet for Windows and the Mac. Both names are registered trademarks by Mindjet. For more information see their website at
724 \href{http://mindjet.com}{http://mindjet.com}} into \vym maps. Notes and
725 pictures are not converted at the moment. You can import files with
727 \item File \ra Import\ra Mind Manager
731 \subsubsection*{Directory structure}
732 \vym can read a directory structure. This is mainly for
733 testing \vym e.g. to easily create huge maps used for benchmarks (yes,
734 there is still room to optimize \vym ;-)
739 \subsection{Export} \label{export}
741 Often you may not want to export the whole map, but just parts of it. For
742 example you may have additional info you want to talk about in a
743 presentation, while those parts should not be visible to the audience.
744 To achieve this you can "hide" parts of the map during exports by
745 setting the "hide in export" flag.
747 \includegraphics[width=0.5cm]{images/flag-hideexport.png}
749 You can toggle this flag in the toolbar or by pressing \key{H}.
750 Note that there is a global option in the settings menu to toggle the
751 use of this flag. By default the flag is enabled.
753 \subsubsection*{Open Office}
754 Open Office beginning with version~2 uses the so called "Open Document Format", which can be written by \vym. The options are
755 currently limited, but it possible to export presentations which can be
756 opened in Open Office Impress. By selecting
758 \item File \ra Export\ra Open Office
760 you get a file dialogue where you can choose the output file and the
762 \maximage{images/export-oo.png}
763 The file types represent various templates, which can be created with
764 some manual work from an existing Open Office document. The structure of
765 \vym map is then inserted into a template.
766 There are some limitations at the moment:
768 \item \vym can't take care of page lengths, so you have to check and
769 probably reedit in Open Office to avoid text running over the end of
771 \item Images and flags are not used at the moment
772 \item Notes are just written as plain text, without RichText
773 \item The full range of templates are not available in all distributions.
775 Some of the templates make use of {\em sections} i.e sections insert the
776 headings of mainbranches as chapters for sections into the presentation.
778 \subsubsection*{Image}
779 \vym supports all image formats which are natively supported by the
781 BMP, JPEG, PBM, PGM, PNG, PPN, XPM, and XBM.
782 For use in websites and for sending images by email PNG is a good
783 recommodation regarding quality and size of the image. \vym uses QTs
784 default options for compressing the images.
786 \subsubsection*{ASCII}
787 Exporting an image as text is somewhat experimental at the moment. Later
788 this will probably be done using stylesheets. So the output may change in
789 future versions of \vym.
791 \subsubsection*{\LaTeX}
792 \vym can generate an input file for \LaTeX. Currently this is considered
793 as experimental, there are no options (yet).
796 \item File \ra Export\ra \LaTeX
798 you will be asked in a file dialog for the name of the output file. This
799 file may then be included in a \LaTeX document using command:
801 \include{inputfile.tex}
804 \subsubsection*{KDE Bookmarks}
805 \vym will overwrite the KDE bookmarks file and then try to notify
806 running Konquerors via DCOP of the changed file. \vym does not create a
809 \item File \ra Export \ra KDE Bookmarks
813 \subsubsection*{XHTML (Webpages)}
815 This is the format to use if you wish to create a webpage. To see an example
816 visit the \vym homepage:
817 \href{http://www.InSilmaril.de/vym}{www.InSilmaril.de/vym}
819 Some explanation on how this works:
820 Before a map is exported as XHTML, it will be first written as XML into a
821 directory (see \ref{xmlexport}). Then the external program {\tt
822 xsltproc}\footnote{On SUSE Linux and some other distributions {\tt xsltproc} is installed by
824 will be called to process the XML file and generate HTML code.
825 A dialog allows the user to set various options:
827 \item {\bf Include image:} If set, \vym will creat an image map at
828 the top of the HTML output. Clicking on a branch in the map will
829 jump to the corresponding section in the output.
831 \item {\bf Colored headings:}
832 If set to yes, \vym will colour the headings in the text part with the
833 same colours used in the \vym map.
834 \item {\bf Show Warnings:}
835 If set to yes, \vym will ask before overwriting data.
836 \item {\bf Show output:}
837 This is useful mainly for debugging. It will show how the processing of
838 the XML file works by calling the external {\tt xsltproc}.
840 Additionally the paths to the CSS and XSL stylesheets can be set. By
841 default on SUSE~Linux they will be in {\tt /usr/share/vym/styles}.
844 \subsubsection*{XML} \label{xmlexport}
845 The map is written into a directory both as an image and as an XML file. The
846 directory is set in a file dialog. If the directory is not empty, you
847 will be warned and offered choices if you are at risk of overwriting existing contents.
849 It is possible to export different maps into the same directory. Each
850 file generated will have the map's name as prefix, e.g. {\tt todo.vym}
851 becomes {\tt todo.xml}, {\tt todo.png}, {\tt todo-image-1.png} and so
852 on. This is useful if, for example, a website comprises several combined maps that have to be stored in the same directory.
854 \subsubsection*{Export a part of a map}
855 Select a branch you want to export together with its children, then open
856 the context menu and choose {\em Save Selection}. This will create a
857 file with the suffix {\tt .vyp}, which is an abbreviation for \lq vym
861 \section{Advanced Editing}
863 \subsection{Properties of an object}
864 For any branch you can open a satellite window (see \ref{satellite}):
865 the {\em property window}:
867 \includegraphics[width=8cm]{images/propwindow.png}
870 %FIXME create screenshot
871 %FIXME explain the tabs
875 \item Link (see \ref{hideunselected})
876 \item Layout (see \ref{incimg})
879 \subsection{Changing the history: Undo and Redo}
880 \vym keeps track of all changes done in a map. The default number of
881 changes which can be undone is~75. The complete history can be seen in
882 the {\em historywindow}:
883 \maximage{images/historywindow.png}
884 \label{historywindow}
885 A single step back be undone or redone with \key{CTRL-Z} or \key{CTRL-Y},
886 or by using the buttons in the toolbar or the {\em historywindow}.
887 Inside the {\em historywindow}, you can click on a line to unwind all
888 actions done until that point in time -- or redo all changes by clicking
892 You can "paste from the past": Go back in time by e.g. with
893 \key{CTRL-Z}, then copy to clipboard by pressing \key{CTRL-C}.
895 Now do all actions again, e.g. by \key{CTRL-Y} or clicking on the
896 last action in {\em historywindow}. Now paste from the past with
900 \subsection{Macros} \label{macros}
901 Macros have been added to \vym in version~1.9.0.
902 So far they have a preliminary character, maybe they are going to be
903 replaced by full-featured scripting functionality later (though the
904 commands will be more or less the same).
907 \key{F1} to \key{F12} holds a macro, which is executed on the current
908 selection if the key is pressed. The default macros change the colour of
909 a subtree or set the frame of a branch:
911 \includegraphics[width=8cm]{images/macros.png}
913 Each macro is a \vym script, which is executed when the associated key
914 is pressed. The default location of the scripts can be changed in the
915 Settings menu. More information on using scripts in \vym is found in
916 appendix~\ref{scripts}.
918 \subsection{Bookmarks} \label{bookmarks}
919 \subsubsection*{Open new tabs instead of new windows}
920 If you use konqueror as your browser, \vym will remember the konqueror session which
921 was opened first by \vym. You can also press \key{Ctrl} and click to
922 open the link in a new tab.
924 \vym can also open a new tab in Mozilla or Firefox using the remote
925 command\footnote{\href{http://www.mozilla.org/unix/remote.html}{http://www.mozilla.org/unix/remote.html}}
928 \subsubsection*{Drag and Drop}
929 If you want to keep bookmarks in a map, select a branch where you want
930 to add the bookmark, then simply drag the URL from your browser to the
931 map. Also you could use an existing heading as URL: Right click onto the
932 branch and select "Use heading for URL".
935 \subsubsection*{Directly access bookmark lists of a browser}
936 Please see the sections \ref{import} and \ref{export} about
937 Import and Export filters.
939 \subsubsection*{Special URLs}
940 \vym can turn an existing heading of a branch into an URL. Currently
941 this works for Bugentries in the Novell Bugtracking system: Open the
942 context menu of a branch (usually by right-clicking it) and select
944 \item Create URL to Bugzilla
946 The URL will be build from the number in the heading.
948 \subsection{Associating images with a branch} \label{incimg}
949 The default setting for an image is for it to float "freely". Images can be
950 positioned anywhere on the canvas, but may end up in the same place as other
951 parts of the map obscuring that part of the map.
953 The solution is to insert or include them "into" a branch. This can be done via
954 the property window (see \ref{propwindow}):
956 \item Include images horizontally
957 \item Include images vertically
959 The image is still positioned relative to its parent branch, but the
960 heading and border of the branch frame adapt to the floating image, see below:
961 \maximage{images/includeImages.png}
963 \subsection{Modifier Modes}
964 Modifiers are for example the \key{Shift}- the \key{Ctrl}- ot the \key{Alt}-keys. When
965 pressed while applying mouse actions, they will cause \vym to use
966 a "modified" version of the action which usually would be done.
968 %\key{Ctrl} or \key{Alt}is pressed while releasing the branch, it will be
969 %added above/below the target, not as child of the target.
971 Without a modifier key pressed, the first mouse click on a branch just selects
972 it. For the behaviour of the \key{Ctrl} modifier there are several
973 options, which can be set from the modifier toolbar:
975 \includegraphics[width=3cm]{images/modmodes.png}
977 The default mode is to copy the colour from the clicked branch to the already
978 selected branch. The figure above shows the toolbar with the default modifier
979 selected. The second modifier
980 let's you easily copy a whole branch with a single click. The third
981 modifier lets you create links between branches called {\em xLinks}.
982 They will be explained in the next section \ref{xlinks}.
984 \subsection{Hide links of unselected objects} \label{hidelink}
985 Sometimes it would be useful to position a branch freely, just like a
986 mainbranch or an image. This is possible for all
987 branches, you can use a mainbranch and hide its connecting link to the
988 mapcenter or hide the link between a child branch and its parent. This can be used e.g. for legends or a collection of vymLinks
989 pointing to other maps:
991 \includegraphics[width=9cm]{images/hiddenlink.png}
993 To hide the link between a branch and its parent open the
994 \ref{propwindow} and check "Hide link if object is not selected" on
998 \subsection{XLinks} \label{xlinks}
999 So far all the data in the \vym map has been treelike. Using xLinks you
1000 can link one branch to any other, just like attaching a rope between two
1001 branches in a real tree. This is especially useful in complex maps,
1002 where you want to have crossreferences which can not be displayed on the same
1003 visible area of the {\em mapeditor} window. The following example map still fits on one screen, but shows how data can be crosslinked. In the graphics there is a link from a task (prepare a presentation) to general information:
1004 \maximage{images/xlink.png}
1005 Note that a xLink which points to a branch that is not visible (because
1006 it is scrolled), is just shown as a little horizontal arrow. In the
1007 screenshot above have a look at the \lq Tuesday\rq\ branch.
1009 \subsubsection*{Create a xLink}
1010 Choose the link mode from the modifier toolbar (by clicking the toolbar icon or pressing
1011 \key{L}). Select the branch, where the xLink should start. Press the
1012 modifier key \key{Ctrl} and then click on the selected branch where the
1013 link should start and drag the mouse pointer to the branch where the link is to end. (The link is drawn to follow the mouse pointer). When you release the mouse over a branch the xLink becomes permanent.
1015 \subsubsection*{Modify or delete a xLink}
1016 First select a branch at either end of the xLink. Then open the context
1017 menu and select \lq Edit xLink\rq. A submenu contains all the xLinks of
1018 the branch (if there are any). They are named like the branches, where
1019 they end. Choose one and the xLink dialogue opens, where you can set
1020 colour, width and also delete the xLink.
1022 \subsubsection*{Follow a xLink}
1023 In a complex \vym map it sometimes comes in handy to be able to jump to the other end
1024 of a xLink. You can do this by opening the context menu of the branch
1025 and clicking on \lq Goto xLink\rq and selecting the xLink you want to
1030 \subsection{Adding and removing branches}
1031 The context menu of a branch shows some more ways to add and delete data
1032 e.g. you can delete a branch while keeping its children. The children become
1033 linked to the parent of the previously removed branch.
1034 Similar branches can be inserted into existing maps. For keyboard
1035 shortcuts also have a look at the context menu.
1037 \subsection{Adding a whole map or a part of a map}
1038 Select a branch where you want to add a previously saved map ({\tt
1039 .vym})or a part of a map ({\tt .vyp}) , then open the context menu and
1040 choose {\em Add \ra Add Map (Insert)}. For the import you can choose
1041 between {\em Add Map (Insert)} and {\em Add Map (Replace)}: The imported
1042 data will be added after the selected branch.
1044 \section{\vym on Mac OS X}
1045 \subsection{Overview}
1046 Basically there are two ways to run \vym on Macs:
1047 \subsubsection*{QT Mac Edition:}
1048 \vym here provides the well known Mac look and feel. \vym is
1049 available as zipped Mac OS X application. It has been compiled and
1050 tested in Mac~OS~10.4. It is using the Mac version of Trolltechs QT library.
1051 \subsubsection*{X11}
1052 \vym can also be run using the Linux version, but then menus and
1053 handling will also be those of the Linux version e.g. The menu bar
1054 will look different.
1056 \subsection {Contextmenu and special keys}
1057 Most Macs unfortunatly just have a single mouse button. In order to show
1058 the context menu which usually would be opened with the right mouse
1059 button, you can click while pressing the \key{kommand}-key.
1061 Especially on Laptops some of the keys usually used on PC keyboards seem
1062 to be missing. The QT-Mac Edition of \vym has its own keyboard
1063 shortcuts. To find the shortcuts just have a look at all the menu
1064 entries, the shortcut is visible next to an entry. Toolbar buttons also
1065 may have shortcuts, just position the mouse pointer over a button and
1066 wait for the little help window to appear.
1068 \subsection {Viewing external links}
1069 \vym on Mac uses the system call {\tt /usr/bin/open} to view links.
1070 Mac~OS determines automatically if the link is a pdf or www page and
1071 opens the right browser.
1076 \section{\vym initialisation process and configuration}
1077 \subsection{Configuration file}
1078 On startup \vym will look for a configuration for user specific settings
1079 like window positions, toolbars etc. If this file does not already
1080 exist, it will be created. The file is located in the users home
1081 directory. The exact position depends on the platform:
1084 {\bf Platform} & {\bf Configuration file} \\ \hline
1085 Linux & {\tt $\sim$/.config/InSilmaril/vym.conf } \\
1086 Mac OS X & {\tt /Users/NAME/Library/Preferences/com.insilmaril.vym.plist } \\
1089 The file can be edited manually, or on Mac~OS~X with Property List
1090 Editor (installed with xtools).
1092 \subsection{Path to ressources}
1093 \vym will try to find its ressources (images, stylesheets, filters,
1094 etc.) in the following places:
1096 \item Path given by the environment variable {\tt VYMHOME}.
1097 \item If called with the local option (see \ref{options} below),
1098 \vym will look for its data in the current directory.
1099 \item {\tt /usr/share/vym}
1100 \item {\tt /usr/local/share/vym}
1103 \subsection{Command line options} \label{options}
1104 \vym has the following options:
1106 \begin{tabular}{cccp{8cm}}\\
1107 \bf Option & \bf Comment & \bf Argument & \bf Description \\ \hline
1108 v & version & & Show version and codename of \vym\\
1109 l & local & & Use local paths to stylesheets, translations, icons,
1110 etc. instead of system paths. Useful for testing\\
1111 h & help & & Show help\\
1112 r & run & filename & Load and run script\\
1113 q & quit & & Quit immediatly after startup. Useful for benchmarks.\\
1116 You can also give several filenames at the commandline to let \vym open
1117 several maps at once.
1120 \section{Scripts} \label{scripts} %FIXME
1122 TODO: This section of the \vym manual is not complete yet, sorry.
1124 \subsection{Example scripts}
1125 \subsubsection{Export a set of maps}
1127 \# Simple vym script to export images of various maps simultanously
1130 The script above can be used to export all maps in a directory
1131 automatically. If the script is named {\tt export-image.vys}, call \vym with
1133 \$ vym --quit --run export-image.vys *.vym
1137 \section{Contributing to \vym}
1138 So far I'd say I have written 98\% of the code on my own. No surprise,
1139 that \vym exactly fits my own needs. Nevertheless I would like to
1140 encourage all users of \vym to contribute. Maybe not only with feature
1141 requests, but also with code, new import/export filters, translations
1142 etc. In this appendix I'll try to show how easy it is to expand the
1143 things you can do already with \vym. I really look forward to hear from
1146 \subsection{Getting help}
1148 \subsubsection*{Frequently asked questions}
1149 Please refer to the FAQ available on the \vym website:
1151 \href{http://www.InSilmaril.de/vym/faq.html}{http://www.InSilmaril.de/vym/faq.html}
1154 \subsubsection*{Mailinglists}
1155 There are two mailinglists: {\tt vym-forum} is the \vym users forum to
1156 discuss various questions, while {\tt vym-devel} is intended for people
1157 interested in contributing to \vym. You can view the archives and
1160 \href{https://sourceforge.net/mail/?group_id=127802}{https://sourceforge.net/mail/?group\_id=127802}
1163 \subsubsection*{Contacting the author}\label{author}
1164 Especially for support questions please try the mailinglists first. If
1165 everything else fails you can contact the author Uwe Drechsel at
1167 \href{mailto:vym@InSilmaril.de}{vym@InSilmaril.de}
1172 \subsection{How to report bugs}
1173 Though Sourceforge has its own bugreporting system, I'd rather prefer if
1174 you contact me directly (see \ref{author}) or even better: You can file
1175 a bugreport in Bugzilla, the bugtracking system of openSUSE:
1177 \href{http://en.opensuse.org/Submit_a_bug}{http://en.opensuse.org/Submit\_a\_bug}
1179 I build \vym regulary for openSUSE, so you may report it against a
1180 recent version there, even if you use another Operating System.
1181 Please don't forget to tell me what you are using:
1183 \item the exact steps needed to reproduce the bug
1184 \item the version and build date of \vym (see the Help \ra About
1186 \item hardware and Operating System
1189 \subsection{Compiling from the sources}
1190 \subsubsection{Getting the sources} \label{getsources}
1191 You find the latest version of \vym at the project site:
1193 \href{https://sourceforge.net/projects/vym/}{https://sourceforge.net/projects/vym/}
1195 There you can check them out of the source repository (CVS):\\
1198 cvs -d:pserver:anonymous@cvs.sf.net:/cvsroot/vym checkout code
1201 \subsubsection{The Qt toolkit}
1202 Qt is C++ toolkit for multiplatform GUI and application development. It
1203 provides single-source portability across MS~Windows, Mac~OS~X, Linux
1204 and all major commercial Unix variants. Qt is also available for
1205 embedded devices. Qt is a Trolltech product. For more information see
1207 \href{http://www.trolltech.com/qt/}{www.trolltech.com/qt}
1211 \subsubsection{Compiling \vym }
1212 Make sure you have installed your Qt environment properly, see the Qt
1213 documentation for details. You need to have the Qt command {\tt qmake}
1214 in your {\tt PATH}-environment, then run
1220 The last command {\tt make install} needs root-permissions. Of course it
1221 may be omitted, if you just want to test \vym.
1223 %\subsubsection*{Compiling \vym on Macs}
1226 \subsection{\vym file format} \label{fileformat}
1227 \vym maps usually have the suffix "{\tt .vym}" and represent a
1228 compressed archive of data. If you want to have a
1229 closer look into the data structure map called "mapname.vym",
1230 just uncompress the map manually using
1232 \$ unzip mapname.vym
1234 This will create directories named {\tt images} and {\tt flags} in your
1235 current directory and also the map itself, usually named {\tt
1237 The XML structure of \vym is pretty self explaining, just have a look at
1240 This XML file can be loaded directly into \vym, it does not have to be
1241 compressed. If you want to compress all the data yourself, use
1243 \$ zip -r mapname.vym .
1245 to compress all data in your current directory.
1247 \subsection{New features}
1248 There are lots of features which might find their way into \vym.
1249 Together with \vym you should have received a directory with several
1250 example maps. You find them by clicking Help \ra Open~vym~example~maps.
1251 There you will find the map {\tt vym-projectplan.vym}. It lists quite a
1252 lot of things to be done in future. If you have more ideas, contact the
1253 development team at {\tt vym-devel@lists.sourceforge.net}.
1256 \subsection{New languages support}
1257 In order to add a new language to \vym you need
1258 the sources (see \ref{getsources}) and
1259 an installation of Trolltechs QT. A part of QT are the development
1260 tools, from those tools especially the translation tool "Linguist" is
1263 In some Linux distributions the development tools are in an extra package, e.g. on SUSE LINUX you should have installed:
1266 libqt4-devel-doc.rpm
1267 libqt4-devel-tools.rpm
1269 If you don't have QT in your system, you can get it from
1270 \href{http://www.trolltech.com}{http://www.trolltech.com} Once you
1271 are able to compile vym yourself, you can translate the text in vym
1272 itself by performing the following steps:
1274 \item Let's assume now your encoding is "NEW" instead of for example
1275 "de" for german or "en" for english
1277 \item Copy the file {\tt lang/vym\_en.ts} to l{\tt ang/vym\_NEW.ts} (The code
1278 itself contains the english version.)
1280 \item Add {\tt lang/vym\_NEW.ts} to the TRANSLATIONS section of vym.pro
1282 \item Run Linguist on {\tt vym\_NEW.ts} and do the translation
1284 \item Run {\tt lrelease} to create {\tt vym\_NEW.qm}
1286 \item Do a make install to install the new vym and check your translation
1289 If you feel brave, you can also translate the manual. It is written in
1290 LaTeX, you just have to change the file tex/vym.tex. (Linguist and QT
1291 are not needed, but it is useful to know how to work with LaTeX and esp.
1292 pdflatex to create the PDF.)
1294 Please mail me every translation you have done. I can also give you a
1295 developer access to the project, if you want to provide translations
1298 \subsection{New export/import filters}
1299 \vym supports various kinds of filters. Data can be written directly,
1300 inserted into templates or it can be written as XML data and then
1301 processed by XSL transformations.
1303 Most of the import/export functionality is available in the classes
1304 ImportBase and ExportBase and subclasses. All of them can be found in
1305 {\tt imports.h} and {\tt exports.h}.
1307 \subsubsection*{Direct import/export}
1308 An example for a direct export is the XML export. This method touches
1309 the implementation of nearly every object of \vym, so whenever possible
1310 you should better use a XSL transformation instead.
1312 If you still want to know how it is done, start looking at
1313 {\tt MapEditor::saveToDir} in {\tt mapeditor.cpp}.
1315 \subsubsection*{Templates}
1316 Templates have been introduced to export to opendoc format used e.g. by
1317 Open~Office. While I read the spec ($>$ 500 pages) about the format\footnote{
1318 \href{http://www.oasis-open.org/}{http://www.oasis-open.org/}}\
1319 I had the feeling that I did not want to write the export from scratch.
1320 It would be too complex to adapt the styles to your own wishes, e.g. the
1323 Instead I analyzed existing Open~Office documents. I found out that
1324 there are lots of redundant bits of information in a standard
1325 presentation, for example each list item is contained in its own list.
1326 In the end I came up with the default presentation style, which still
1327 could be simplified, just in case you have free time\ldots
1329 The existing templates are still work in progress, before you spend too
1330 much time developing your own style, please contact me. Basically the
1331 following steps are needed to build your own style:
1333 \item Create an example in Open Office. Use a title, authors name,
1334 page heading etc.\ which you can easily grep for in the output file.
1336 \item Unzip the Open Office document into a directory.
1338 \item The main file is called {\tt content.xml}. All data is in one
1339 single line. You can split the XML tags using the script {\tt
1340 scripts/niceXML}, which is part of the \vym distribution.
1342 \item Copy the output of {\tt niceXML} to {\tt
1343 content-template.xml}.
1345 \item Looking closer you will find lots of unused definitions, for
1346 example of styles. You can delete or simply ignore them.
1348 \item Try to find your title, authors name. \vym will replace the
1349 following strings while exporting:
1351 \begin{tabular}{lp{4cm}}
1352 {\tt <!-- INSERT TITLE -->} & title of map \\
1353 {\tt <!-- INSERT AUTHOR--> } & author \\
1354 {\tt <!-- INSERT COMMENT -->} & comment \\
1355 {\tt <!-- INSERT PAGES-->} & content of map \\
1358 The content itself is generated in a similar way by inserting lists
1359 into {\tt page-template}. Here the following substitutions are made:
1361 \begin{tabular}{lp{7cm}}
1362 {\tt <!-- INSERT PAGE HEADING-->} & heading of a page
1363 (mainbranch or child of mainbranch, depending on the use of
1365 {\tt <!-- INSERT LIST --> } & all childs of the branch above \\
1369 Currently images are exported and notes just will appear as text
1370 without formatting and colours.
1375 \subsubsection*{XSL Transformation}
1376 \vym uses XSL transformations while exporting (e.g. XHTML) and importing
1377 data (e.g. KDE bookmarks). There is a little code needed to provide the
1378 GUI, the rest is done using the {\tt .xsl} stylesheet and calling the
1379 {\tt xsltproc} processor, which is part of libxslt, the XSLT
1380 C library for GNOME.
1386 %\subsubsection{Menus}
1387 %\subsubsection{Keyboard shortcuts}
1388 %Where does vym save its settings? -> ~/.qt/vymrc