tex/vym.tex
author insilmaril
Mon, 23 May 2005 15:28:20 +0000
changeset 103 c810a11d11d9
parent 102 dba9303a1a5c
child 104 270593ab83b2
permissions -rw-r--r--
1.6.6 Exclusive flags added
     1 \documentclass{article}
     2 \usepackage{a4}
     3 \usepackage[latin1]{inputenc}
     4 \usepackage{verbatim}
     5 \usepackage{hyperref}
     6 \usepackage{graphicx}
     7 \usepackage{longtable}
     8 
     9 
    10 %\input{udmath}
    11 
    12 
    13 \hypersetup{bookmarks, bookmarksopen,
    14   pdftitle={VYM - a tool for visual thinking },
    15   pdfauthor={Uwe Drechsel},    
    16   pdfsubject={map},
    17   pdfkeywords={map, tool},
    18   pdfpagemode={UseOutlines},                                 
    19   bookmarksopenlevel={1},   
    20   colorlinks={true},     
    21   linkcolor={blue},
    22   urlcolor={green},
    23   citecolor={red}} 
    24 
    25 
    26 \newcommand{\vym}{{\sc vym }}
    27 \newcommand{\ra}{$\longrightarrow$}
    28 \newcommand{\la}{$\longleftarrow$}
    29 \newcommand{\ua}{$\uparrow$}
    30 \newcommand{\da}{$\downarrow$}
    31 \newcommand{\key}[1]{[#1]}
    32 
    33 \begin{document}
    34 \title{VYM \\ -- \\View Your Mind}
    35 \author{\textcopyright Uwe Drechsel  }
    36 %\date{September 26, 2002}
    37 
    38 \maketitle
    39 
    40 \tableofcontents
    41 
    42 \newpage
    43 
    44 \section{Introduction}
    45 \subsection{What is a \vym map?}
    46 A \vym map (in short words {\em map}) is a tree like structure:
    47 \begin{center}
    48 	\includegraphics[width=12cm]{example1.png}
    49 \end{center}
    50 Such maps can be drawn by hand on paper or a flip chart and help to
    51 structure your thoughs. While a tree like structure like above can be
    52 drawn by hand or any drawing software \vym offers
    53 much more features to work with such maps. \vym is not another drawing
    54 software, but a tool to store and modify information in an intuitive
    55 way. For example you can reorder parts of the map by pressing a key or
    56 add various information like a complete email by a simple mouse click.
    57 
    58 \subsection{Why should I use maps? Time, Space and your Brain.}
    59 \subsubsection*{Space}
    60 A map can concentrate a very complex content on little space e.g. a
    61 piece of paper. It helps to use both sides of your brain: the logical
    62 side and also your creative side (e.g. by using pictures, colors and
    63 keywords in a map, so called {\em anchors}).  It is a technique to
    64 organize the way you think: It can help you by developing, sorting and
    65 memorizing your thoughts. 
    66 
    67 \subsubsection*{Time}
    68 Because you just use keywords and drawings, it is much faster than good
    69 old fashioned notes. Your brain memorizes things by associating them to
    70 other things -- a map makes use of those connections and stimulates
    71 new asccociations. 
    72 
    73 \subsubsection*{Your Brain}
    74 In 1960 the Prof. {\sc Roger Sperry} discovered that both hemispheres
    75 of the human brain have different tasks (of course both of them
    76 basically {\em can} do the same): The left side is specialised in 
    77 \begin{itemize}
    78    \item verbal speech and writing 
    79    \item numbers
    80    \item logical thinking
    81    \item analyzing and details
    82    \item science
    83    \item linear thinking
    84    \item concept of time
    85 \end{itemize}
    86 while the right side of the human brain is specialised in
    87 \begin{itemize}
    88     \item body language
    89     \item visual thinking, day dreams
    90     \item intuition and emotion
    91     \item overview of things
    92     \item creativity
    93     \item art, music, dancing
    94     \item non-linear thinking, connecting things
    95     \item spatial awareness
    96 \end{itemize}    
    97 In our science oriented society we have learned to mainly rely on our
    98 left side of the brain, the "rational" one. In other cultures,
    99 especially like the native americans and other "old" cultures, the right
   100 side is much more important. maps are just one way to stimulate the
   101 other side and make use of additional ressources we all have.
   102 
   103 
   104 \subsection{Where could I use a map?}
   105 Here are some examples, how you can use those maps
   106 \begin{itemize}
   107     \item to prepare articles, papers, books, talks, \ldots
   108     \item to sort complex data
   109     \item to memorize facts, persons, vocabulary, \ldots
   110     \item to sort emails, files and bookmarks on your computer
   111     \item to moderate conferences
   112 \end{itemize}
   113 
   114 \subsection{What you shouldn't do with a map...}
   115 A map drawn by somebody shows the way the author thinks. There is
   116 no right or wrong in the way it is drawn, so there is no way to critize
   117 it. "It is, what it is" ({\sc F.~Lehmann}).
   118 
   119 %\section{Tutorials}
   120 %TODO
   121 
   122 \section{Concept}
   123 
   124 %TODO may add a general introduction here...
   125 
   126 \vym uses two windows: an editor for the map itself and another one for
   127 notes, which are part of the map. Let's call them {\em mapeditor} and
   128 {\em noteeditor}: 
   129 \begin{center}
   130 	\includegraphics[width=8cm]{windows.png}
   131 \end{center}
   132 Usually you will work in the {\em mapeditor} by just adding new
   133 branches, moving around and reordering them. The various ways to do this
   134 will be explained in \ref{mapeditor}. You can store additional
   135 information e.g. the content of a email easily in a {\em branch}: Just
   136 type or copy\&paste it into the {\em noteeditor}. Working with notes is
   137 explained in \ref{noteeditor}
   138 
   139 The map itself has always a {\em mapcenter}.  The
   140 mapcenter has {\em branches} just like the trunk of a tree. Each branch
   141 in turn may have branches again.
   142 \begin{center}
   143 	\includegraphics[width=10cm]{branches.png}
   144 \end{center}
   145 We will call a branch directly connected to the mapcenter a {\em
   146 mainbranch}, because it determines the position of all its child
   147 branches.
   148 
   149 The mapcenter and the branches all have a {\em heading}. This is the
   150 text you see in the mapeditor. Usually it should just be one or a few
   151 words, so that one can easily keep track of the whole map.
   152 
   153 
   154 In the toolbar above the mapeditor you see various symbols.
   155 \begin{center}
   156 	\includegraphics[width=8cm]{default-flags.png}
   157 \end{center}
   158 These are called {\em flags} and can be used to mark branches in the
   159 map, e.g. if something is important or questionable. 
   160 There are also more flags set by \vym automatically to show additional
   161 information, e.g. when a  exists for a  particular branch.
   162 
   163 \section{Mapeditor} \label {mapeditor}
   164 \subsection{Start a new map}
   165 After \vym is started two windows will open: the mapeditor and the
   166 noteditor. Usually you will work in both windows, but at the moment we
   167 will just need the mapeditor. 
   168 
   169 Select the mapcenter "New map" in the middle of the mapeditor by
   170 left-clicking with the mouse. It will turn yellow to show that is
   171 selected. There are several ways to add a new branch to the center:
   172 \begin{itemize}
   173 	\item Using the mouse: Open the context meny by clicking with the
   174 	right mouse button (CTRL-Click on Mac) onto the
   175 	mapcenter and choose Add \ra Add as child
   176 	\item Press \key{Ins} or \key{A}
   177 \end{itemize}
   178 A new branch will appear and you will be able to type the heading of the
   179 branch. Finish adding the new branch by pressing \key{Enter}.
   180 %tipp
   181 Sometimes it comes handy to add a new branch above or below the current
   182 one. Use \key{Ins} together with \key{Shift} or \key{Ctrl}. 
   183 
   184 \subsection{Navigate through a map}
   185 \subsubsection*{Select branches}
   186 To select branches you can use the left button of your mouse or also the
   187 arrow keys. Depending on the {\em orientation} of a branch type
   188 \key{\la} or \key{\ra} to get nearer to the mapcenter or deeper
   189 down into the branches. Within a set of branches, let's call them a 
   190 {\em subtree}, you can use \key{\ua} and \key{\da} to go up and down. You can
   191 also use \key{Pos1} and \key{End} to select the first and last branch.
   192 
   193 
   194 \subsubsection*{Zoom a map}
   195 While adding more and more branches the size of the map may become
   196 bigger than the mapeditor window. You can use the scrollbars on the
   197 right and the bottom of your mapeditor window to scroll, but it is
   198 easier to just scroll using the left mouse button: Click onto the {\em
   199 canvas} itself, the empty space somewhere between the branches. The
   200 mouse pointer will change from an arrow to a hand, now move the visible
   201 part of the map to show the desired part.
   202 
   203 If you select branches using the arrow keys, the map will scroll
   204 to ensure that the selected branch is always visible.
   205 
   206 Working with huge maps, the {\em zoom}-function comes in handy: You can
   207 use 
   208 \begin{itemize}
   209 	\item from the menu View \ra Zoom
   210 	\item the toolbar buttons 
   211 		\begin{center}
   212 			\includegraphics[width=3cm]{zoom-buttons.png}
   213 		\end{center}	
   214 \end{itemize}	
   215 The crossed magnifying lens resets the zoomed view to its original size.
   216 
   217 
   218 \subsubsection*{Find Function} \label{findwindow}
   219 With huge maps there is the need to have a
   220 find function. Choose Edit \ra Find to open the Find Window:
   221 \begin{center}
   222 	\includegraphics[width=6cm]{find-window.png}
   223 \end{center}	
   224 The text you enter here will be searched in all the headings and also in
   225 notes. Everytime you press the "Find"-button it will look for the next
   226 occurence, which then will be selected automatically. If the search
   227 fails, there will appear a short message "Nothing found" or a few
   228 seconds in the {\em statusbar} on the bottom of the mapeditor.
   229 
   230 \subsubsection*{Scroll a part of the map}
   231 A very big subtree of a map e.g. a branch with hundreds of childs makes
   232 it very hard to keep an overview over the whole map. You can hide all
   233 the childs of a branch by {\em scrolling} it -- this function is also
   234 often called {\em folding}. Think of the whole subtree as painted onto a
   235 big newspaper. You can scroll the paper to a small roll, leaving just
   236 the headline readable.
   237 
   238 To scroll or unscroll a branch and its childs, press the
   239 \begin{itemize}
   240 	\item \key{Scroll} key or  \key{S}
   241 	\item press the middle-mouse button or
   242 	\item choose the little scroll from the toolbar.
   243 \end{itemize}
   244 If you select parts of a scrolled branch e.g. using the find function or
   245 by using the arrow-keys, it will unscroll temporary. This is shown as a
   246 scroll with a little hour glass. If the temporary unscrolled part is not
   247 longer needed, it will be hidden again automatically. It is also
   248 possible to unscroll all branches using "Edit\ra Unscroll all scrolled
   249 branches".
   250 
   251 
   252 
   253 \subsection{Modify and move branches}
   254 \subsubsection*{Modify the heading of a branch}
   255 You can edit the heading by selecting the branch and then
   256 \begin{itemize}
   257 	\item pressing \key{Enter}
   258 	\item double-clicking with left mouse.
   259 \end{itemize}
   260 Just type the new heading (or edit the old one) and press \key{Enter}.
   261 
   262 \subsubsection*{Move a branch}
   263 The easiest way to move a branch is to select it with left-mouse and
   264 drag it to the destination while keeping the mouse button pressed.
   265 Depending on the branch  it will be
   266 \begin{itemize}
   267 	\item moved to the destination or
   268 	\item {\em linked} to a new {\em parent} (mapcenter or branch)
   269 \end{itemize}
   270 If you drag the branch over another one or over the mapcenter, you will
   271 notice that the  link connecting it to the old parent will be changed to
   272 lead to the  new parent which is now under your mousepointer. 
   273 If you release the button now, the branch will be relinked.
   274 
   275 If you release the button in the middle of nowhere, the result will
   276 depend on the type of branch you are releasing:
   277 \begin{itemize}
   278 	\item A mainbranch is directly connected to the mapcenter.
   279 		It will stay on its new position.
   280 	\item An ordinary branch will "jump" back to its original position.	
   281 \end{itemize}
   282 Thus you can easily rearrange the layout of the mainbranches to avoid
   283 overlapping of their subtrees.
   284 There is another convenient way to move branches, especially if you want
   285 to {\em reorder} a subtree: You can move a branch up or down in a
   286 subtree by
   287 \begin{itemize}
   288 	\item pressing \key{\ua} and \key {\da}
   289 	\item selecting Edit \ra Move branch
   290 	\item clicking on the toolbar buttons:
   291 		\begin{center}
   292 			\includegraphics[width=1.5cm]{move-buttons.png}
   293 		\end{center}	
   294 \end{itemize}
   295 %tipp
   296 There is yet another way to move branches: If you press \key{Shift} or
   297 \key{Ctrl} while moving with the mouse, the branch will be added above
   298 or below the one the mouse pointer is over. This helps also to reorder a
   299 map.
   300 
   301 \subsection{The right side of your brain - colors and images}
   302 \subsubsection*{Change color of a heading}
   303 You can also use colors to put more information into a map, e.g. use
   304 red, green and more colors to prioritize tasks. Again you can
   305 \begin{itemize}
   306 	\item use the menu and choose e.g Format \rq Set Color
   307 	\item use the toolbar
   308 		\begin{center}
   309 			\includegraphics[width=3cm]{color-buttons.png}
   310 		\end{center}	
   311 \end{itemize}
   312 The first button (black in the graphic above) shows the actual color.
   313 Clicking on it let's you choose another color. You can also "pick"
   314 another color by selecting a branch with the desired color and using the
   315 "pick color" button. Both of the buttons showing a bucket actually put
   316 the current color to the selected branch. While the first one just
   317 colors the heading of the selection, the last one also colors all the
   318 childs of the selected branch.
   319 
   320 %tipp
   321 A very useful function is the "copy color" using the mouse: Select the
   322 branch which should get the new color, then press \key{Ctrl} and
   323 simultanously click with left-mouse on another branch to copy its color
   324 to the first one. Here the childs of the selection also will get the new
   325 color, if you just want to color the selection itself, additionally
   326 press \key{Shift}.
   327 
   328 \subsubsection*{Use flags}
   329 \vym provides various flags. You see them in the toolbar on top of the
   330 mapeditor window. (Note: Like all toolbars you can also move them to the
   331 left or the right side of the window or even detach them. Just grab the
   332 very left "dotted" part of the toolbar with your left-mouse button.) 
   333 \begin{center}
   334 	\includegraphics[width=8cm]{default-flags.png}
   335 \end{center}
   336 If you have a branch selected, you can set any number of flags by
   337 clicking them in the toolbar. The toolbar buttons change their state and
   338 always reflect the flags set in the selected branch.
   339 
   340 Presently \vym uses two kinds of flags: {\em System Flags} and {\em
   341 Standard Flags}. The standard flags are those shown in the toolbar.
   342 System flags are set by \vym to indicate e.g. that there is additional
   343 information in a note (more on this in \ref{noteeditor}). Later versions
   344 of \vym may have another kind of flags, which may be edited by the user.
   345 
   346 \subsubsection*{Images}
   347 You can add a image to a branch or the mapcenter by clicking with the
   348 right-mouse button. A context menu will open, choose "Add Image". A
   349 dialog window lets you choose the image to load. 
   350 \footnote{Supported image types are: PNG, BMP, XBM, XPM and PNM. It may
   351 	also support JPEG, MNG and GIF, if specially configured during
   352 	compilation (as done when \vym is part of SUSE LINUX).}
   353 While an image is selected in the dialog, you can see a preview of the
   354 image.	
   355 
   356 You can position the image anywhere you want, just drag it with left
   357 mouse. To relink it to another branch, press \key{Shift} while moving
   358 it. To delete it, press \key{Del}. 
   359 
   360 If you right-click onto an image, a context menu will open which let's
   361 you first choose one of several image formats. Then a file dialog opens
   362 to save the image. Hint: This is used to "export" the image, it will be
   363 saved anyway in the map itself! You can also cut and
   364 copy images, but it is not possible to add objects to an image\footnote{
   365 	Images are regarded as "extra feature". It would make working with
   366 	the map much more complex if e.g. images could be linked to images.}
   367 
   368 The option \lq{\bf Use for export} \rq controls the output of exports
   369 e.g. to HTML: If set to no, the image won't appear in the {\em text}
   370 part of the output. This is useful for large images or if images are
   371 used as a kind of frame e.g. the famous cloud symbol around a part of
   372 the map. Those shouldn't appear in the middle of the text.
   373 
   374 At the moment image support is preliminary: Images will be saved
   375 together with all the other data of a map in the {\tt .vym}-file.
   376 Later versions will include more functionality like resizing the images,
   377 changing its z-value (put it into background) etc.
   378 
   379 \subsubsection*{Frames}
   380 A frame can be added to a branch by clicking with the
   381 right-mouse button.  A context menu will open, where you can choose the
   382 frame. At the moment just a rectangle resp. "No Frame" will be offered,
   383 nevertheless you can use images as frames. Have a look at the demo map
   384 {\tt todo.vym} as an example, where the mapcenter is a cloud. You can
   385 use an external drawing program like {\tt gimp} to create an image,
   386 preferable with an transparency channel, so that you can design frames
   387 which don't use a rectangular borderline, just like the cloud.
   388 
   389 
   390 \subsection{Background design}
   391 The design of the background of a map and also of the links connecting
   392 various parts of the map can be changed by
   393 \begin{itemize}
   394 	\item Selecting Format from the menu
   395 	\item Right clicking onto the canvas, which will open a context menu
   396 \end{itemize}
   397 
   398 \subsubsection*{Background color}
   399 The color is set (and also displayed) as "Set background color".
   400 
   401 \subsubsection*{Link color}
   402 Links connecting branches can be colored in one of the following ways:
   403 \begin{itemize}
   404 	\item use the color of the heading of the branch the links is
   405 	\item use {\em one} color for all links. The default color is blue.
   406 	leading to.
   407 \end{itemize}
   408 The latter can be set with "Set link color". Check or uncheck the "Use
   409 color of heading for link" option to choose one of the two designs for
   410 your map.
   411 
   412 \subsubsection*{Link style}
   413 \vym offers four different styles for the appearences of links:
   414 \begin{itemize}
   415 	\item Line
   416 	\item Parabel
   417 	\item Thick Line
   418 	\item Thick Parabel
   419 \end{itemize}
   420 The "thick" styles only draw links starting at mapcenter thick, the rest
   421 of the map is always painted "thin".
   422 
   423 
   424 \subsection{Link to other documents}
   425 Presently \vym supports two kind of links:
   426 \begin{itemize}
   427 	\item Document, which will be opened in an external webbrowser
   428 	\item \vym map, which will be opened in \vym itself
   429 \end{itemize}
   430 
   431 \subsubsection*{Webbrowser}
   432 Modern Webbrowsers like {\tt konqueror} are able to display various
   433 types of files, both local or in the internet. To enter the URL of
   434 any document, right-click  onto a branch or use the Edit Menu
   435 and choose "Edit URL". Enter the path to your document (or copy and
   436 paste it from your browser). Examples for valid paths are:
   437 \begin{verbatim}
   438 	http://www.insilmaril.de/vym/index.html
   439 	file:/usr/share/doc/packages/vym/doc/vym.pdf
   440 \end{verbatim}
   441 If an URL was entered, a little globe will appear in the branch. By
   442 clicking on the globe in the toolbar or the context menu an external
   443 browser\footnote{
   444 	The browser can be changed in the Settings Menu.}
   445 will be started.
   446 \begin{center}
   447 	\includegraphics[width=0.5cm]{flag-url.png}
   448 \end{center}
   449 If you want to keep bookmarks in a map, you may want to copy the heading
   450 as URL: Right click onto the branch and select "Use heading for URL".
   451 
   452 \subsubsection*{\vym map}
   453 To link to to another map right click on a branch or choose "Edit \ra
   454 Enter \vym link". A file dialog opens where you can choose the map. A
   455 branch with a link is marked with 
   456 \begin{center}
   457 	\includegraphics[width=0.5cm]{flag-vymlink.png}
   458 \end{center}
   459 Clicking this flag in the toolbar or in the context menu of a branch
   460 will open the map in another tab (see \ref{tabs} for working with
   461 multiple maps). To delete an existing link, just press the "Cancel"
   462 button.
   463 
   464 Technical note: Internally \vym uses absolute paths, to avoid opening
   465 several tabs containing the same map. When a map is saved, this path is
   466 converted to a relative one (e.g. {\tt /home/user/vym.map} might become
   467 {\tt ./vym.map}. This makes it fairly easy to use multiple maps on
   468 different computers or export them to HTML in future.
   469 
   470 \subsection{Multiple maps} \label{tabs}
   471 You can work on multiple maps at the same time. Each new map is opened
   472 in another {\em tab}. The available tabs are shown just above the
   473 mapeditor. You can use the normal cut/copy/paste functions to
   474 copy data from one map to another.
   475 
   476 %todo
   477 
   478 %TODO
   479 %\subsubsection{Menus}
   480 %\subsubsection{Keyboard shortcuts}
   481 
   482 % Settings
   483 % Images
   484 % Copy & Paste
   485 % Working with tabs (multiple maps)
   486 % Exporting
   487 % Scrolling
   488 
   489 \section{Noteeditor} \label {noteeditor}
   490 If you want to save more text in a branch e.g. a complete email, a
   491 cooking recipe, or the whole source code of a software project, you can
   492 use the noteeditor. Since version 1.4.7 \vym supports formatted text in
   493 the noteeditor.
   494 
   495 \subsubsection*{States}
   496 Before you can type or paste text into it, you have
   497 to select a branch in the mapeditor. Note that the background color
   498 of the noteeditor indicates its state:
   499 \begin{itemize}
   500 	\item black: no branch selected
   501 	\item grey: no text entered yet
   502 	\item white: text is already available
   503 \end{itemize}	
   504 To show you in the mapeditor itself that there is a note with more
   505 information for a particular branch, a little note flag will appear next
   506 to the heading of the branch. See the lower branch on the right side:
   507 \begin{center}
   508 	\includegraphics[width=8cm]{branches-flags.png}
   509 \end{center}
   510 
   511 \subsubsection*{Import and export notes}
   512 The note is always saved automatically within the \vym file itself.
   513 Nevertheless sometimes it is nice to import a note from an external file
   514 or write it. Use "File\ra~Import" and "File\ra~Export" to do so. 
   515 
   516 \subsubsection*{Edit and print note}
   517 Editing works like in any simple texteditor, including undo and redo
   518 functions. You can delete the complete note by clicking the
   519 trashcan. Only the note itself is printed by clicking the printer icon.
   520 
   521 When pasting into the editor using the X11 copy\&paste mechanism, the
   522 editor will create a paragraph for each new line. Usually this is not
   523 wanted, so there you can convert all paragraphs into linebreaks by using
   524 Edit~\ra~Remove~Paragraphs or \key{ALT-X}.
   525 
   526 \subsubsection*{Fonts}
   527 The noteeditor is ment to be used for simple notes, not really as full
   528 featured text editor. Because of many requests \vym supports now
   529 formatted text in the noteeditor\footnote{
   530 	\vym uses the QRichtText format, which is basically a subset of the
   531 	formatting provided in HTML.}
   532 Two default fonts are supported which can be set in the Settings menu.
   533 One is a fixed width font, the other has variable width. The fixed font
   534 is usually used for emails, source code etc.\ while the variable font is
   535 used for simple notes, where one doesn't need fixed character widths.
   536 Both fonts can easily switched using the following symbol from the
   537 toolbar:
   538 \begin{center}
   539 	\includegraphics[width=0.5cm]{formatfixedfont.png}
   540 \end{center}
   541 In the Settings menu both fonts can be set and also which font should be
   542 used for default. 
   543 
   544 Additionally to the default fonts any font installed on your system can
   545 be used. Please note, that the chosen font also will be used for HTML
   546 exports, so you should only use fonts which are available generally.
   547 
   548 \subsubsection*{Colors and formatted text}
   549 Colors and text attributes (e.g. italic, bold) can 
   550 be set with the buttons above the text. 
   551 The text itself is divided in paragraphs. For each paragraph the format
   552 can be set (e.g. centered, right). A paragraph is ended when a
   553 \key{Return} is entered. If you just want to begin a new line, press
   554 \key{CTRL-Return}.
   555 
   556 \subsubsection*{Finding text}
   557 The noteeditor itself has no Find function, use Find in the mapeditor,
   558 which will also search all notes (see \ref{findwindow}).
   559 
   560 \subsubsection*{Pasting text into note editor}
   561 Often you will paste text into the editor from another application e.g.
   562 an email. Normally \vym will generate a new paragraph for each new line.
   563 This usually is not what you want, so you can choose from the menu
   564 
   565 \paragraph{Edit \ra Convert Paragraphs:}
   566 This turns paragraphs in selected text (or all text, if nothing is
   567 selected) into linebreaks. This is especially useful for snippets of
   568 source code.
   569 
   570 \paragraph{Edit \ra Join Lines:}
   571 Tries to format text, so that empty lines are used to delimit
   572 paragraphs. This is done for selected text (or all text, if nothing is
   573 selected). Especially useful for text like emails, meeting minutes etc.
   574 
   575 \section{Hello world}
   576 \vym can export its maps in various formats and can import data from
   577 outside (though import is still limited at the moment).
   578 
   579 \subsection{Export}
   580 The format in which the map will be exported can be chosen with
   581 \begin{itemize}
   582 	\item File \ra Export \ra {\em format}
   583 \end{itemize}
   584 \vym offers both HTML and ASCII export.
   585 
   586 \subsubsection*{Image}
   587 \vym supports all image formats which are natively supported by the
   588 QT~toolkit:
   589 BMP, JPEG, PBM, PGM, PNG, PPN, XPM, and XBM.
   590 For use in websites and for sending images by email PNG is a good
   591 recommodation regarding quality and size of the image. \vym uses QTs
   592 default options for compressing the images.
   593 
   594 \subsubsection*{ASCII}
   595 Exporting an image as text is somewhat experimental at the moment. Later
   596 this will probably done using stylesheets. So the output may change in
   597 future versions of \vym.
   598 
   599 \subsubsection*{HTML}
   600 Before a map is exported as HTML, it will be first written as XML into a
   601 directory (see \ref{xmlexport}). Then the external program {\tt
   602 xsltproc}\footnote{On SUSE Linux {\tt xsltproc} is installed by
   603 default.}
   604 will be called to process the XML file and generate HTML code.
   605 %A script then will transform the XML
   606 %version. 
   607 A dialog allows to set various options:
   608 \begin{itemize}
   609 	\item {\bf Include image:} If set, \vym will creat an image map at
   610 	the top of the HTML output. Clicking on a branch in the map will
   611 	jump to the corresponding section in the output.
   612 
   613 	\item {\bf Colored headings:}
   614 	If set to yes, \vym will color the headings in the text part  with the
   615 	same colors like in the map.
   616 	\item {\bf Show Warnings:}
   617 	If set to yes, \vym will ask before overwriting data.
   618 	\item {\bf Show output:}
   619 	This is useful mainly for debugging. It will show how the processing of
   620 	the XML file works by calling the external {\tt xsltproc}.
   621 \end{itemize}
   622 Additionally the paths to the CSS and XSL stylesheets can be set. By
   623 default on SUSE~Linux they will be in {\tt /usr/share/vym/styles}.
   624 
   625 %\paragraph{WIKI style:} This is very useful for easy design of webpages.
   626 %Here is a short overview:
   627 %\begin{verbatim}
   628 %Lines:
   629 %	+ Big headlines start with the '+' character.
   630 %	- Small headlines start with the '-' character.
   631 %	  Normal text doesn't have any starting notation.
   632 %	! Notes start with an exclamation.
   633 %	. Indented text starts with a dot.
   634 %	? Questions start with a question-mark, and
   635 %	= Answers starts with the equal-sign.
   636 %	* Points for a item-list
   637 %	# clues
   638 %	
   639 %Links:
   640 %	use '{...}' or '{(vym homepage) http://www.insilmaril.de/vym/}'
   641 %	for external links.
   642 %	
   643 %Markup:
   644 %	|This is bold| text, while 
   645 %	|/this text is italic|, 
   646 %	|*this is pre-formatted|, and 
   647 %	|!this is a note|
   648 %\end{verbatim}
   649 %
   650 %\paragraph{Show output:} This is used for debugging. \vym uses an
   651 %the external script {\tt vym2html.sh} to preprocess the XML-data. Then
   652 %\vym calls {\tt xsltproc} to generate the HTML page by using various
   653 %{\tt .xsl} stylesheets and {\tt wireframe.css}. If you run into problems
   654 %here, changing paths in {\tt $\sim$/.qt/vymrc} might help.
   655 
   656 \subsubsection*{XML} \label{xmlexport}
   657 The map is written into a directory both as an image and as XML. The
   658 directory is set in a file dialog. If the directory is not empty, you
   659 will be questioned if you risk to overwrite its contents.
   660 
   661 It is possible to export different maps into the same directory. Each
   662 file generated will have the map's name as prefix, e.g. {\tt todo.vym}
   663 becomes {\tt todo.xml}, {\tt todo.png}, {\tt todo-image-1.png} and so
   664 on. This is useful if e.g. for a website several combined maps have to
   665 be stored in the same directory.
   666 
   667 \subsection{Import} 
   668 At the moment \vym can read a directory structure. This is mainly for
   669 testing \vym e.g. to easily create huge maps used for benchmarks (yes,
   670 there is still room to optimize \vym ;-)
   671 
   672 Many other applications meanwhile can export their data using XML, so
   673 volunteers to write import filters are welcome.
   674 
   675 \subsection{File format}
   676 \vym maps usually have the postfix "{\tt .vym}" and represent a
   677 compressed archive of data. If you want to have a
   678 closer look into the data structure, just uncompress the map manually
   679 using
   680 \begin{verbatim}
   681 	unzip vymfile.vym
   682 \end{verbatim}
   683 A directory named {\tt vymfile} will be created containing further
   684 directories both for {\tt images} and {\tt flags}. In the {\tt vymfile}
   685 directory you will find the map itself, usually named {\tt vymfile.xml}.
   686 
   687 This file can be loaded directly into \vym, it does not have to be
   688 compressed. If you want to compress all the data yourself, use
   689 \begin{verbatim}
   690 	cd vymfile
   691 	zip -r vymfile.vym .
   692 \end{verbatim}
   693 
   694 
   695 %TODO
   696 %\subsubsection{Menus}
   697 %\subsubsection{Keyboard shortcuts}
   698 %Where does vym save its settings? -> ~/.qt/vymrc
   699 
   700 \section{History of \vym}
   701 \subsection{Future}
   702 There are lots of features which might find their way into \vym.
   703 Together with \vym you should have received a directory with example
   704 maps e.g. on SUSE~LINUX this is
   705 \begin{center}
   706 	{\tt /usr/share/doc/packages/vym/demos}
   707 \end{center}
   708 where you find the map {\tt todo.vym}. It lists quite a lot of things to
   709 be done in future. If you have more ideas, contact the author at
   710 {\tt vym@insilmaril.de}.
   711 
   712 \subsection{Past}
   713 \begin{center}
   714 \begin{longtable}{|lcp{8cm}l|} \hline
   715 Version	&	&	Comment								& Date	\\ \hline \hline \endhead
   716 	\hline \endfoot
   717 1.6.6	& -	&	Exclusive standard flags			& 2005-05-23 \\
   718 1.6.5	& -	&	removing a branch and keeping its childs	& 2005-05-19 \\
   719         & -	&	removing childs of a branch			& \\
   720         & -	&	insert branch and make selection its child& \\
   721         & -	&	restructured branch context menu	& \\
   722 				in a basic version (straight line)	& 2005-04-15\\
   723         & -	&	New shortcuts  for use on Mac OS X	& \\
   724         & -	&	Importing directories generates vymlinks now & \\
   725         & -	&	Bugfix: Changing linkstyle now automatically redraws all
   726 				links again& \\
   727         & -	&	Bugfix: Paste icon is disabled if clipboard is empty &\\
   728 1.6.4	& -	&	xLinks (arbitrary connection between 2 branches) works
   729 				in a basic version (straight line)	& 2005-04-15\\
   730 1.6.3	& -	&	Bugfix: Saving of selection to a vym part (.vyp)	&2005-03-30\\
   731 		& - &	Bugfix: Closing the noteeditor by closing its window now
   732 				also toggles the responding toolbar button. &\\
   733 1.6.2	& -	&	Introduced Modifier modes: color, link, copy &2005-03-24\\
   734       & -	&	Linking branches is basically possible, though it can't
   735 				be edited/saved yet &\\
   736 1.6.1	& -	&	Optimized moving of branches: much faster especially 
   737 				with huge subtrees					&2005-01-30\\
   738 		& -	&	Bugfix: Segfault when loading vym part &\\
   739 		& -	&	Bugfix: ugly unitialized lines, when 
   740 				temporary drawn link was moved from a 
   741 				temporary parent back to canvas		& \\ 
   742 1.6.0 	& -	&	Added saving of xhtml settings in map& 2004-12-14 \\ 
   743 1.5.2 	& -	&	Added Import of maps with two modes: 
   744 				add/replace							& 2004-12-13 \\ 
   745 		& - &	Added export of part of maps		& \\
   746 		& - &	Added joining of paragraphs in text editor		& \\
   747 		& - &	Optimized undo: Only relevant parts are saved, which
   748 				dramatically improves e.g. moving branches up/down 
   749 				in most maps & \\
   750 		& -	&	Bugfix: QTextEdit generates invalid XML code, which
   751 				could lead to a parse error, if font name contains a \& &  \\ 
   752 		& -	&	Bugfix: Wrong order of mainbranches in Export	&  \\ 
   753 		& -	&	Bugfix: zip archive was not deleted before save, which
   754 				could lead to much bigger files, e.g. 
   755 				when working on older \vym maps or deleted images&  \\ 
   756 		& -	&	Bugfix: Printing in Texteditor      &  \\ 
   757 		& -	&	Bugfix: Wrong URLs in xhtml output				&  \\
   758       	& -	&	Bugfix: Segfault fixed at Cursor left/right in empty map&  \\
   759 1.5.1 	& -	&	More options in xhtml export: external scripts 	& 2004-10-01 \\
   760 1.5.0 	& -	&	Public release of all changes since 1.4.1      	& 2004-09-26 \\
   761       	& -	&	New function to replace paragraphs in note editor
   762 				by linebreaks, this makes pasted text much nicer& \\
   763       	& -	&	New option to toggle exporting of of floatimages& \\
   764       	& -	&	z-plane of floatimages can be set (manually only)& \\
   765 		& - &	Bugfix: Wrong ordering of branches, if mainbranch is
   766 				exactly left of center& \\
   767 1.4.7 	& -	&	New Export to HTML by Thomas Schraitle.	& 2004-09.24 \\
   768 		& - &	Bugfix: vymLink&	\\
   769 		& - &	Bugfix: spaces and dots in filenames	& \\
   770 		& - &	Bugfix: Error message if xsltproc is not installed& \\
   771 1.4.6 	& -	&	New file format: notes are saved as part of the .xml file
   772 			& 2004-09-15	\\
   773 		& - &	Note Editor supports Rich Text now.&\\
   774 		& - &	Parser now also nows {\tt standardflag} (all letters
   775 				lowercase)&\\
   776 1.4.5 	& -	&	Correct handling of font size in Heading			& 2004-08-23	\\
   777 1.4.4 	& -	&	Selecting with cursor now works between subtrees	& 2004-07-29	\\
   778 		& - &	Bugfix: vymLink was set to temporary dir in 1.4.3	& \\
   779 		& - &	Bugfix: & \\
   780 1.4.3 	& -	&	Optimisation: Reduced canvas objects by only
   781 				creating objects for used flags		& 2004-07-19 \\ 
   782 		& - &	Better visualization of moving branch above/below target&\\		
   783 		& - &	Find Window informs with dialog, if the search failed&\\
   784 		& - &	System Flags are clickable now		&\\
   785 		& - &	Reworked CSS and XST stylsheets (comments, indent, browser
   786 				compatibility)						&\\
   787 		& - &	vymLinks are shown in statusbar		&\\
   788 		& - &	current directory is save			&\\
   789 		& - &	Rewritten load/save to improve multimap handling and
   790 				unzipped files&\\
   791 		& - &	Bugfix: vymLinks don't get deleted 
   792 				when Cancel is pressed				&\\		
   793       	& -	&	Bugfix: Fixed a bunch of bugs in XSL for HTML export&            \\ 
   794       	& -	&	Bugfix: More toolbar buttons disabled, if action not
   795 				possible&            \\ 
   796 		& - &	Bugfix: Renaming .vymfile now works&\\		
   797 		& - &	Bugfix: mapChanged set when toggling flags&\\		
   798 		& - &	Bugfix: CTRL-N was used twice		&\\
   799 		& - &	Bugfix: Del didn't work on floatimage &\\
   800 1.4.2 	& -	&	Bugfix: Float image could not be deleted& \\ 
   801 1.4.1 	& -	&	Bugfix: Color of branch not saved	& 2004-05-25 \\ 
   802       	& -	&	Bugfix: wrong path at HTML export	&            \\ 
   803 		& -	&	Bugfix: map is not save with special characters in path&  \\ 
   804 1.4.0 	& -	&	Ask for confirmation before opening 
   805 				a map in multiple editors			& 2004-05-17 \\
   806 		& - &	Save state of note editor (visible/minimized)& \\
   807 		& - &	Export to HTML						& \\
   808 		& - &	Author and Comment is saved in map	& \\
   809 		& - &	Stats are shown in Edit MapInfo		& \\
   810 		& - &	Changes for OS X port (QCursor, QContextMenuEvent)	& \\
   811 		& - &	Bugfix: Fonts from note editor are save now			&\\
   812 		& - &	Bugfix: invisible image when parent is scrolled		&\\
   813 		& - &	Bugfix: Segfault pressing "enter" for floatimage	&\\
   814 		& - &	Bugfix: Images can't be outside of exported area
   815 				anymore.& \\
   816 		& - &	Bugfix: Filenames with blanks		& \\
   817 		& - &	Bugfix: Old maplink is shown when editing maplink& \\
   818 		& - &	Bugfix: always show cursor while editing heading & \\
   819 1.3.5 	& -	&	Export map to dir					& 2004-04-16 \\
   820 		& - &	Export to any of QTs image formats	& \\
   821 		& - &	Also right side of selection is always visible now.& \\
   822 1.3.4 	& -	&	Load last maps in file menu         & 2004-04-07 \\
   823 		& - &	save last image path for loading	& \\
   824 		& - &	Also export standard flags to dir.	& \\
   825 1.3.3 	& -	&	Enabled <br> in headings as manual linebreak	& 2004-03-26 \\
   826 		& -	&	Heading can be copied to URL		&\\
   827 		& -	&	Bugfix: GIFs are automatically converted to PNG now&\\
   828 1.3.2 	& -	&	Add and move branches above/below selection, Texteditor copy all,& 2004-03-26 \\
   829 1.3.1 	& -	&	Export to directory, changed naming in .vym& 2004-03-25 \\
   830 1.3.0 	& -	&	Bugfix: Check if map can be saved at all& 2004-03-23 \\
   831 1.2.12	& -	&	Select image format before saving image	& 2004-03-22 \\
   832 1.2.11	& -	&	Selecting mainbranches by up/down	& 2004-03-18 \\
   833 		& -	&	Export ASCII (experimental)			&			\\
   834 		& -	&	Each map can be saved individually at quit	&	\\
   835 		& -	&	Bugfix: Opening VymLink crashes QT	&			\\
   836 		& -	&	Bugfix: 50\% less objects on canvas	&			\\
   837 		& -	&	Bugfix: Ignoring LANG, now always written as UTF8&\\
   838 1.2.10	& -	&	Sort Mainbranches by angle to y-axis& 2004-03-16 \\
   839 		& -	&	Import directory structure			&			\\
   840 		& - &	Fix: Set FrameType of MapCenter while loading map &\\
   841 1.2.9	& -	&	Jump to another vym map		        & 2004-03-12 \\
   842      	& -	&	Mainbranches are alwas ordered clockwise   &     \\
   843 1.2.8	& -	&	Change frame types in context menu  & 2004-03-03 \\
   844 1.2.7	& -	&	Copy / Paste and save Floatimages & 2004-02-25 \\
   845 1.2.6	& -	&	Closing vym in KDE now asks for save, too	& 2004-02-24 \\
   846 		& -	&	Context menu for branches					&  \\
   847 		& -	&	Selection is saved in .vym file				&  \\
   848 1.2.5	& -	&	URLs to external links can be added & 2004-02-18 \\
   849 		& - &	All actions are deactived if not possible & \\
   850 1.2.4	& -	&	Images: Can be loaded, saved, relinked to other parents
   851 & 2004-02-16 \\
   852 1.2.3	& -	&	Zoom: Reset and finer steps shrinking/enlarging	& 2004-01-27 \\
   853 1.2.2	& -	&	Editing of links (style and color)	& 2004-01-27 \\
   854 1.2.1	& -	&	Bugfix: LineEdit when adding branch has correct position
   855 				again.								& 2004-01-27 \\
   856 1.2.0	& -	&	Scrolled parts are automatically unscrolled when
   857 				selected and scrolled again later.				& 2004-01-23 \\
   858 		& - &	Bugfix: Save flag is updated when multiple maps are opened& \\
   859 		& - &	Bugfix: Moving of branches is faster and more accurat
   860 				when adding to mapcenter& \\
   861 1.1.7	& -	&	Bugfix: Remember filename of note in noteeditor	& 2003-12-04 \\
   862 1.1.6	& -	&	Find Text also in Notes.	& 2003-12-02 \\
   863 1.1.5	& -	&	Bugfix: Correct setting and positioning when relinking branches	& 2003-11-07 \\
   864 1.1.4	& -	&	Scroll mode added (folding of subtrees).		& 2003-11-03 \\
   865 		& - &	Bugfix: Wrong position of linedit in zoomed view& \\
   866 1.1.3	& -	&	Added clear button in find window, bugfixes    & 2003-10-09 \\ 
   867 1.1.2	& -	&	Links can be colored with color of heading     & 2003-10-07 \\ 
   868 1.1.1	& -	&	Improved visualization of linking to new branch& 2003-09-26 \\ 
   869 1.1.0	& -	&	Find Function							& 2003-09-25 \\ 
   870 		& -	&	Selection always stays in view		& \\ \hline
   871 1.0.1	& -	&	Find function scrolls to result now	& 2003-09-18\\
   872      	& -	&	Bugfix: Adding branch with midmouse	&  \\
   873 		& -	&	Bugfix: multiple repositioning of map, 
   874 				when noteeditor was changed (speedup)	& \\
   875 		& -	&	New Linestyles (still hardcoded)		&	\\ \hline
   876 1.0.0	& -	&	First public stable release			& 2003-09-16 \\	 \hline	
   877 0.9.0	& -	&	added quick color picker (CTRL + Left Mouse) & ?	\\ \hline
   878 0.8.0	& - &	added automatic canvas resizer, removed manual resizing of
   879 				canvas & \\
   880 
   881 	& - &	added settings option to paste text into new branch	& \\
   882 	& - &	simplified code	& \\
   883 	& - &	Added heart flag	& \\
   884 	& - &	Choose and switch between fixed and variable width fonts& \\
   885 	& - &	note editor		& \\
   886 	& -	&	Fixed segfault caused by undo and a call of updateNoteFlag of
   887 			note editor	& \\
   888 	& - &	Added settings menu to configure autoselect \& autoedit mode	& \\
   889 	& - &	autoedit \& autoselect mode	& \\
   890 	& - &	Fixed ugly display problem with QT Palette (Klaas Freitag)& \\
   891 	& - &	Reduced temporary directories from 4 to 1	& \\
   892 	& - &	Added wordwrap in printing of notes	& \\
   893 	& - &	New toolbar buttons in texteditor	& \\
   894 	& - &	Set background color	& \\
   895 	& - &	Fixed bug: Flags in toolbar not updated when selecting map center	& \\ \hline
   896 0.7.0	& - & No more segfault, when an object is deleted while being edited & \\
   897 	& - & Keep focus constant when zooming in/out & \\
   898 	& - & Export as png graphic & \\
   899 	& - & Keep Center of map where it is while zooming & \\
   900 	& - & Added Standard Flags (Smiley, Hook, Stopsign, ...) & \\
   901 	& - & MDI: Multi Document Interface enables working on several
   902 		maps simultanously & \\
   903 	& - & Enabled creating a new map via argument on commandline & \\
   904 	& - & Changed file extension from .mmap to .vym & \\
   905 	& - & noteeditor changes color, if empty or nothing is selected & \\
   906 	& - & Changes in NoteEditor window are recognized by main window,
   907 		too, thus preventing loosing data when quitting the program. & \\ \hline
   908 0.6.0	& - &	New rendering engine: Faster, no flickering & \\ \hline
   909 0.5.0	& - & Changed printing to use maximum space on paper& \\ 
   910 	& - & Note editor is hidden, too, when mapeditor is minimized& \\ 
   911 	& - & New (compressed) file format& \\ \hline
   912 0.4.0    & - & Size of map is saved& \\ 
   913     & - & Multi Line Headings & \\ 
   914     & - & Reworked Rendering Engine: Much faster now.& \\ 
   915     & - & Reworked Undo: Much faster now.& \\ 
   916     & - & Enabled moving of map center& \\ 
   917     & - & Multi-line headings & \\ \hline
   918 0.3.0    & - & Introduced Undo& \\ 
   919     & - & Fixed some bugs & \\  \hline
   920 0.2.0    & - & Moving view of map improved:& \\ 
   921 	& - & New handling (acrobat reader style)& \\ 
   922 	& - & New mousepointer& \\ 
   923     & - & Several tools to color a map& \\ \hline
   924 0.1.0 & - & Inital version, basic map layout & \\ 
   925     & - & Data is stored in XML& \\ 
   926 \end{longtable}
   927 \end{center}
   928 
   929 
   930 % INDEX
   931 % mapeditor
   932 % noteditor
   933 % branch
   934 % mapcenter
   935 % heading
   936 % flag
   937 % orientation 
   938 % zoom
   939 % orientation
   940 % Toolbar
   941 % Zoom
   942 % Find
   943 % statusbar
   944 % link
   945 % mainbranch
   946 % subtree
   947 % reorder
   948 % scroll
   949 % fold
   950 
   951 
   952 
   953 \end{document}