1. Dignified FreeMind successor: Freeplane tool
The tool FreeMind which users have been using for almost twenty years, belongs to a group of applications for creating, editing, presenting and converting so-called mind maps . However, the development of FreeMind, which has even won several most useful software competitions, has virtually stopped at development version 1.1.0, which means, among other things, that some new features requested by users are not being added, including conversion filters for newer file formats. However, not all is lost because, based on FreeMind his fork originated Freeplane . And with some of the options Freeplan we will be acquainted with today’s article.
Figure 1: The Freeplane graphical user interface that will be described in the following chapters.
2. Thought Maps and Their Practical Meaning
Nowadays, we can see a relatively sharp change in the approach of the larger, but also some smaller technology companies to the development of new manufacturing processes and technologies. Previously quite common (and often very large) development departments, each of which dealt with a specific field, is slowly losing its importance. Instead, expert teams are involved which are temporarily created to solve some issues. After development or research, these teams are mostly disbanded and their members start to work (for example in another team) on other issues and / or other projects. These teams are often composed in such a way that there are professionals of many professions. It has its indisputable advantages, such as the fact that some ruts and “good practices”, which are typically gravitated by classically based development departments with a fixed hierarchy and procedures (“the leader is here for the longest and always right”), can leave some ruts. “This is how we always did it”).
Note: in this area we can see the name tiger teams (https://en.wikipedia.org/wiki/Tiger_team). Probably the most famous tiger team was founded to ensure the rescue of Apollo 13 members. Similar teams are set up to investigate major accidents, etc.
Figure 2: Using mind maps in brainstorming (a sample map provided with Freeplane).
On the other hand, there may be a problem with the transfer of information between people of many different professions and opinions – for this reason, procedures and techniques for improving and speeding up communication and for removing information noise have been sought.
Figure 3: Brainstorming to a real project.
The work of expert teams is also often somewhat different than it used to be in the past. Great emphasis is placed on the interaction between members – mostly team members meet at common meetings, where either uncontrolled or guided (moderated) discussion, often called a very popular term brainstorming managers, although they often do not know its exact meaning). In brainstorming, individual team members come up with ideas and ideas that are either directly developed or postponed for later discussion. With this principle of communication, where the pre-known curriculum is not followed, it is very important that the spoken ideas are recorded in an appropriate form, as quickly as possible, without undue delay on the research team. It is also necessary to be able to associate similar ideas, refer to previous information, etc.
Figure 4: Thought maps can help in preparing a presentation.
3. Mind maps as a form of nonlinear representation of information
So-called thought maps the principle of which was proposed by Tony Buzan, is one form of nonlinear notation (or representation) of information. The principle of mind maps is the free entry of keywords, entire texts, images, tables, hypertext links and other information. Importantly, these basic “information blocks” are interconnected by means of visual connections and thus form a graph – usually a tree (in terms of topology), but in some cases other links between graph nodes are allowed, which disrupt the pure tree structure . Thought maps greatly extend the capabilities of text editors in which only linear notation is allowed. hierarchical outline notation. As well as writing new information, it is an important feature of mind maps and how they are viewed. Indeed, it is possible to hide and unpack individual nodes. If a node is hidden, all its nodes are automatically hidden. Even with a very complex and extensive mind map, it is possible to manipulate on a relatively small screen.
Figure 5: Schedule the individual parts and chapters of the series.
However, the use of mind maps is not limited to brainstorming, because by hiding the nodes these maps are also useful for recording and sorting the thoughts of a single working or studying person (I have even seen their use in primary schools). For example, the use of mind maps for study is appropriate; classic notes become more inefficient in a more complex substance, information is gathered in the wrong way, information is drawn up, etc. Some companies also use the mind maps to record procedures for their technical staff – it is stated that the mind maps used in this way are unpacking and printing often an area of several square meters. Some users (including me) use mind map applications to create hierarchical information databases.
Figure 6: Freeplane can also display file system content.
At this point, it is advisable to realize the rather significant difference between the creation of mind maps (which are largely hierarchically organized) and, most of all, the chaotic writing of application-style notes One Note even though certainly its application. The advantage of mind maps is, among other things, that when they are created, the user is forced into a more precise breakdown of information – however, this initial effort is repeatedly returned during searching or further processing of information.
Figure 7: More Freeplane – attributes assigned to nodes.
4. Alternative Approach – So-called outline editors
Thought maps are a great tool, but it is not the only technology that can be used to store, edit, and present non-linear information. The alternative lying halfway between linear documents on the one hand and thought maps on the other is the so-called outline editors. In English, the term outline includes, but is not limited to, a contour or sketch, and in the figurative sense, this term also refers to the outline of a hierarchically structured document (instructions, article, scenario, etc.). This word also has several other meanings, but we will follow the translation sketch (document) and curriculum in the following text, because it most corresponds to the possibilities of the programs and macros described below.
Figure 8: Nowadays a useful application for creating mind maps.
Outline editor (abbreviated as Outliner ) is a program tool designed for creating, editing, and viewing hierarchically structured information, especially in text form. Since the document structure can be described by the general n tree, virtually every outline editor offers a view of that structure in the form of a tree whose branches can be expanded, collapsed, transferred and edited on the screen.
Figure 9: The difference between showing the same information in the form of mind map and outline.
Outline editors exist as computer software in three forms. Either it is a standalone program designed for making notes, databases or longer documents, or it is part of a larger program unit. The third case is the web application for making notes. For example, a simple outline editor is also built into Microsoft Word, although (at least according to my observations) it is not used by ordinary users, especially because of its ignorance of its capabilities.
Figure 10: The Vim Outliner plug-in can create a classic outline editor from Vim’s editor.
How can outline editors be used? Since they are very general tools, it is possible to use them for practically any text processing (ie they can at least partially replace text editors, word processors, note editors, etc.), to create simple databases with full-text search capability. to design modular and structured systems (software, industrial systems, company structure), prepare training or presentations, or even create entire web sites. There are many possibilities, and it is up to the user to decide to what extent the outline editor’s capabilities will be used.
Figure 11: Other Vim Outliner Options.
How can outline editors be used? Since
We will appreciate the advantage of structured text especially when writing various articles, technical reports or more extensive documentation. The difference between regular linear text (such as plain text or text-based text formatted text) and structured text roughly corresponds to the difference between a directory-based file system and a file system without these properties (for example, simple flat database file systems exist). Today, it is virtually unthinkable for a file system not to divide files into individual directories and thus build a hierarchy over them. A similar situation occurs when working with a longer and / or structured document, where it is very nice to work directly with the individual parts of the text, which can be logically separated from the other parts, while having some kind of relationship between those parts is part of . Unfortunately, many “modern” text editors and processors lack these options, and the user’s commands are limited to working with text at an unnecessarily low level (such as the formatting of individual characters or paragraphs) with available commands.
Figure 12: The famous Org Mode can also be used as an outline editor.
Note: the famous Org Mode in Emacs can be used as an outline editor. It offers users a wide range of data export and import options. It is possible to import information from relational databases, at least from databases that can create a text table listing. Another auxiliary external tool is known Pandoc which allows you to convert documents using different markup languages (Markdown, DocBook, LaTeX, rst) into a plug-in format Org Mode . It is also possible to work with applications that use iCalendar to export or import data. Export options are also significant, whether it is the production of final documents (including PDF), as well as cooperation with, for example, FreeMind (mentioned below, this is the predecessor of the application described today Freeplane ), an application designed for viewing and editing mind maps.
First outline editors began to be used in the early 1980s. In fact, it was a completely new kind of application at the time, which, like spreadsheets, had no real-world equivalent. For this reason, the creators of these applications have had considerable freedom to design the controls and user interface of these applications.
One of the first widely available outline editors was the program ThinkTank which was originally designed for Apple computers (specifically for the Apple II model) and was only rewritten to PC after 1985 after its success in this market. , of course, for DOS. This program was character-based, which is also apparent from the following illustration.
Figure 13: ThinkTank DOS version.
The vast majority of outline editors offer the user several important operations that enable and / or simplify work with hierarchical text. These characteristics include in particular:
- Entering one-line text – notes. Some simpler outline editors only offer the user work with a hierarchical tree without the ability to add paragraph text or other objects. Therefore, these editors are best suited for making notes or curriculum, but they are inappropriate for more complicated work (for example, a separate text preparation).
- Working with paragraph text. Most outline editors display information in two windows. The tree of the hierarchy is displayed in one window, the text of the selected tree node in the second window. For paragraph text you can usually use basic formatting commands, sometimes you can also change character properties (size, color, typeface, etc.). However, there are editors with three windows, respectively. more specifically, with one window divided into three areas. One of these areas displays the tree, the second lowest level of the hierarchy of the selected node, and the third already written directly.
- Movement of nodes and whole texts in a tree. This is a very important feature because when processing texts, it is necessary to regroup the information in different ways, to change their position in the hierarchy, etc. The better the tree work (clarity, keyboard shortcuts, etc.) is implemented in the outline editor, the more effective it is with the whole application work.
- Export text. Nowadays it is necessary to make the created texts as easy as possible to other users in electronic form. In the past, it was enough to use a printer; today, most of the outline editors can get text in multiple formats. Of course, it is plain text (this type of export has already been handled in almost perfect quality by the aforementioned ancient ThinkTank ), but mostly it is possible to export to HTML (styles, table design) and sometimes even to XML. Modern editors can then create a presentation from the text.
Figure 14: More Org Mode for Emacs.
5. Application for creating, editing and publishing mind maps
Now let’s get back to mind maps and applications designed to create, edit, and publish them. Even in the area of open source or. free software there is a relatively large number of available tools. These tools have been nicely described in the Thought Maps in Linux and Schema, Diagram and Mind Mapping tools, so let’s turn them out for completeness:
- The first of these tools is FreeMind which is discussed in more detail in the next chapter. This Java map editor has been created almost twenty years ago, and it is now possible to use its stable versions 0.9.0 and 1.0.0. development version 1.1.0.
- Another tool that often goes beyond FreeMind is an application called XMind . Can be used as a free version or. paid version (129 $ for one license).
- The third application is yEd . Again, it is a Java-programmed program, but yEd is not a “mere” mind map editor because it can work with UML, organization charts, classic flowcharts, etc.
- We can also mention the minimalist project Labyrinth which can be found at https://people.gnome.org/~dscorgie/labyrinth.html. This project is the only tool described in Python and not in Java.
Figure 15: The minimalist interface of the Labyrinth project.
6. FreeMind application
Let’s stop for a moment FreeMind . It is a mind mapping tool that is programmed in Java, and virtually any Java runtime environment ( JRE – Java Runtime Environment ) since version 6 is sufficient to run it. FreeMind it is relatively low on system resources and can be run quite smoothly on weak computers such as Asus EEE 1000 with Atom processor and 1GB of RAM (but note that it is better to disable display antialiasing when using this configuration, otherwise moves whole mind maps on this computer noticeably choppy).
Figure 16: Splashscreen of an older version of FreeMind (0.8.0).
It must be said that the development of FreeMind is currently quite slow (practically stopped), but the vast majority of functions found in FreeMind are also available from the application described below Freeplane . You can even easily open the original mind maps created at FreeMind directly at Freeplane (but not the other way around, but we can also move through a normal mailbox and, surprisingly, with very good results).
Figure 17: Splashscreen of a newer version of FreeMind (0.9.0).
7. Dignified FreeMind successor: Freeplane tool
As we have already said in the previous chapter, the further development of FreeMind is rather slow. However, his fork was named Freeplane which is being developed more actively, which is also evident when he glances at his graphical user interface. The important thing is that Freeplane can work with the original thought maps created at FreeMind (but reverse conversion doesn’t have to be done correctly – it’s better to transfer the entire map over the clipboard). In the following chapters we will describe some of the possibilities offered by Freeplan.
Figure 18: Freeplane logo.
Freeplane, which can be found at https://sourceforge.net/projects/freeplane/, requires JRE to run ( Java Runtime Environment ). Interestingly, JRE 6 (1.6.0) is required, which means Freeplane should work on very old operating systems.
8. Freeplane Graphical User Interface Brief Description
When the application Freeplane is launched, the main program window is displayed, divided into several areas. In the upper part, as in other graphical user interface applications, there are items from the main menu. Under the main menu, there are (in the default settings) three toolbars with commands designed to modify the formatting of nodes and text written in these nodes. On the left side is a toolbar with icons that can be inserted into a node along with the text. However, the workspace to which the horizontal and vertical scrollbars are associated occupies the largest portion of the main window. Application example Freeplane running on Linux with Fluxbox is shown the following image:
Figure 19: Freeplane Graphical User Interface.
Interesting is the possibility of changing the mind map. There are three ways to scroll the map in the application window:
- By pressing the left mouse button on the desktop (outside the nodes) and moving the mouse
- using the scroll wheel on the mouse (vertical shift) with the possible use of the key Shift (horizontal shift) or any mouse button
- using the sliders that are located on the right and bottom of the application workspace (if not displayed, can be enabled via View → Controls → Scrollbars )
Changing the scale of the displayed mind map is also possible in several ways. The easiest way to do this is to use a drop-down list located on the top toolbar, which can be expanded from several mind map magnifications. The second option is to use keyboard shortcuts that are Alt + Up Arrow to reduce the map and Alt + Down Arrow to enlarge it. And of course you can use the mouse scroll wheel together with the Ctrl key. The only disadvantage of scaling is the fact that it is necessary to wait for a while (even a few seconds) for large mind maps.
9. Basic operations with mind map nodes
Note: It is important that most editing operations can only be done using the keyboard, which is especially useful for users who use Freeplane very often and intensively.
One of the most important activities in the creation and subsequent modification of the mind map is the operation performed with individual map nodes. Freeplane uses the automatic node placement technique in the desktop, which means that the user only specifies the relationship of the newly created node to the other nodes. New nodes can be created in two places: either nodes at the same level as the node active, or a node, ie a node at a lower level. Once the nodes have been created, it is possible to start editing the mind map: nodes can be moved, their hierarchy (s) and style can be rewritten, parts of text in the nodes can be rewritten, hyperlinks and images can be rewritten, etc. All these options will be mentioned below.
Note: this does not mean that nodes cannot be moved after they are created. In this area, the user has great opportunities because they can move individual nodes virtually anywhere within the desktop.
Use the [Insert] key to create a new subnode. When you press this key, a new subnode is created, where you can immediately write new text or insert canned icons. The fact that text can be written to a node is symbolized by a text cursor that appears in the node. At this point, the node acts as a system text field, so it is possible, for example, to work from a clipboard, etc. A new node can also be created using the context menu from which to choose New Child Node . from the main menu Edit → New mode → New child mode .
A node at the same level in the map is created by pressing a key [Enter] . Also, after creating this node, it is possible to write information to it immediately. Pressing the key combination [Shift] + [Enter] will also create a new node at the same level in the hierarchy, but this node will be located above the active node, not below it.
If only the key [Enter] is pressed after writing a new text to the node, the new node will contain only one line of text. However, it is also possible to create nodes with longer (paragraph) texts – such nodes were called “long nodes” FreeMind (long nodes) and are created so that after entering the first [Alt] + [Enter] (Edit node core in dialog). After this command, a small window with a text box opens, where you can enter multiple lines of text. Paragraph text is because the end of a line must only be specified where a paragraph needs to be terminated. Indeed, the built-in text editor (created by the Java widget) automatically terminates the lines according to the width of the window, moving entire words to the next (image) lines, ie it is a known mode word wrap . Alternatively, you can use HTML to format the text in the node.
When writing text to a “long node”, either [Enter] or a key combination [Ctrl] + [Enter] is used to end each line. The specific behavior of the application depends on setting the “Enter confirms” checkbox, which, according to the user’s habit, overrides the meaning of keyboard shortcuts [Enter] [Enter] . The text in the “long node” can also include tabulation breakpoints, in this way it is possible to insert simple tables into the mind map without having to bind the mind map node to an external file. Texts inserted into nodes can also be transmitted via the clipboard (for example, from a text editor or web browser. In this case, each line of text is inserted into a new node.
Figure 20: Setting the Node Editor Behavior.
The key will take care of knocking out nodes [Delete] . By pressing this key you can also delete the whole subtree. On the other hand, the key [BackSpace] serves to erase text from the node and to switch the application to a mode where new text can be written to the currently active node. Given the confusion in key management [Delete] and [BackSpace] in Java applications running under (or above) X Window, the functions of these two keys can be swapped.
10. Editing Nodes in Mind Map
The basic edit command is, of course, a change to the text that is stored in the node. After selecting a node, the [F2] key can be pressed, after which the entire application switches to the node change text mode, which is symbolized by the text cursor that appears in the node. Now some key functions, especially the cursor shift keys