LINUX PICKS AND PANS

Freeplane: Solid Mind Mapping but You May Need a Map

Freeplane is an application for creating mind maps. A mind map is the doodling you draw with shapes and other symbols around words connected with lines to make charts representing your thoughts and ideas on a particular topic or project.It’s not often that productivity software makes the task at hand more difficult than old-fashioned methods, but in this case it might be easier to draw a mind map on paper than to do so using Freeplane.

Freeplane

A Freeplane mind map
(click image to enlarge)

It is a bit cumbersome to learn and is less intuitive than other mind-mapping gear I have used. These include VYM (View Your Mind), Semantik and Labyrinth Mind-Mapping.

First, you must get used to graphically thinking through complex ideas in a controlled and confined space on the computer screen. Then you must work through the software conventions to display what you created.

That first step is required with any mind-mapping application you select. The second step is more the result of Freeplane’s user interface.

To be clear, Freeplane is a solid mind-mapping tool. It gets the job done just fine. It just makes you work more to do so.

Gummy GUI

Any disappointment I have for Freeplane is rooted in its graphical user interface. I prefer a scheme that lets me click anywhere on the blank canvas and use the keyboard to throw thoughts in awaiting entry fields.

Once I have the words in place, I want to add lines to connect ideas and drag the graphical elements into different shapes and locations on the screen.

That approach should be fluid and not get in the way of the thought process. Freeplane does not do that. Instead, it has too much overhead to wade through in order to create the chart of my thoughts.

Stumbling Blocks

For example, two things got in the way when I started to use Freeplane. The extent to which they slowed me down was annoying.

One is getting the program to select the desired location when importing or inserting a file or image. The file picker’s behavior was counter-intuitive. It balked at letting me access external drives or folders on the hard drive that were not directly listed in Freeplane’s directory.

The other is Freeplane’s inability to resize an image in the workspace by dragging it. It takes too long to drill down a right-click menu to an image property panel in order to manually enter new parameters.

Other mind-mapping tools I have used more closely perform this and other image-manipulating tasks like image editing features in word processors and drawing applications. Instead, Freeplane relies on keyboard shortcuts and a series of buttons to display ideas on the screen.

Powerful Package

Freeplane’s documentation touts the app’s goal of maximum ease and speed of use. Maybe the code writers were too familiar with Freeplane’s design. The amount of time on task to get up to speed with Freeplane surprised me.

Once I adjusted to the conventions that Freeplane uses, I found this app a little easier to use. Freeplane is designed for non-programmers. It is a tool for creating branching diagrams without any professional skill. That target user base should be served with a shorter learning curve.

Freeplane boasts an ability to install packages of scripts, icons, images, language dictionaries for spell checking and other preferences including a different menu structure. Those are advanced features that non-programmers can also use if they have the fortitude to figure out how.

Other Features

One of the more impressive range of features is Freeplane’s propensity for exporting. It supports formats for HTML, HXTML in both JavaScript and Clickable Map Image versions, Java Applet and Flash, TASKS and Taskjuggler files, and TWIKI.

You can also export a mind map as PNG and JPEG files as well as an Open Office Document, PDF or SVG files. If you want one project to resume where a previous project ended, you can export a mind map with the Freeplane branch as a new map format.

A feature that I find particularly useful is the text editor panel that you can drag up from the bottom of the app’s window. This is much like a mini word processor. You can type content and then format it with font and point sizes, make words bold or italic or underlined. You can also change text color add bullets or numbers.

What It Does

It takes some learning time to master all that Freeplane can do beyond basic idea mapping. For instance, you can enhance the look of a mind map by adding a cloud image to any item. Feel free to display the cloud in any color or size. But the actual cloud shape is hard-wired.

You can click preset buttons in the tool bar rows to unfold or re-folding nodes. Also, click from a drop-down menu to select a variety of icons to enhance the look of the mind map.

You can even add images or local hyperlinks to your mind map. This lets you add the style of a wiki to an otherwise static mindmap image.

Using It

Click on the topic box labeled “New MindMap” to start entering main topics name. Click in the box that appears to enter the topic name.

Next, right-click on the main topic you created. This action opens a context menu that displays several options. Select the New child Node option from the context menu to begin to create spider branches to show secondary levels of thought and beyond.

Clicking the New Child Node menu option adds a sub topic to the main topic. Tool bar buttons also let you add sub topics and sub-sub topics to the main topic.

Another menu option lets you create new sibling nodes. The new sibling node is separate from creating a new child node. This helps you to present an additional degree of separation within nodes.

Bottom Line

FreePlane requires the current version of Java. Otherwise, it needs no dependencies satisfied and is readily available in many distro repositories. It installed without any trouble.

Mind-mapping software is not a productive tool for everybody. Idea charting requires a different mindset than other types of outlining and brainstorming. For those who desire computer-assisted idea mapping, Freeplane gets the job done once you get some hands-on experience with its interface.

Jack M. Germain has been writing about computer technology since the early days of the Apple II and the PC. He still has his original IBM PC-Jr and a few other legacy DOS and Windows boxes. He left shareware programs behind for the open source world of the Linux desktop. He runs several versions of Windows and Linux OSes and often cannot decide whether to grab his tablet, netbook or Android smartphone instead of using his desktop or laptop gear.

5 Comments

  • You and I have similar reactions to Freeplane, though we use it differently.

    I’ve used mind mapping software in the past (actually have some old ".mm" files lying about that I occasionally open to review the notes there), and have always found the linking and quick visual representation of the nodes to be helpful in thinking through a topic and seeing the relationships between items. I’ve used this to develop thoughts for books, outline martial arts curriculum, and more.

    In all of that, I’ve always worked very simply. No graphics, just changing colors of nodes, text, and connectors.

    That said, I also found Freeplane’s interface difficult to work with. Once I figured out how to add a node (not that difficult, but I’d expected the command to be in a menu, with the shortcut listed next to it), I was off and running. It was easy enough to create nodes and move them – all fairly intuitive with CTRL key combinations.

    Then I got to the connections. I suspect I would have been better off defining styles for the connections or some such (there seems to be an emphasis on styles), but I want to change them as I change which subsets I’m thinking through. Selecting multiple nodes was a bit touchier than I expected, and changing colors on connectors was a multi-click experience.

    In the end, I was able to outline the data pretty quickly, but I’ve stopped adding connections, and AM now looking for a simpler (and probably less robust) mind-mapping tool to complete the work. I think Freeplane is best suited for those wanting to use more of the advanced options, and is ill-suited for those of us who just need to use it to get our ideas out where we can look at them.

    • I just saw this posting, and I know it’s 2 years old, but I have to thank Dimitry and other freeplane developers.

      I’m a medical student and in this very moment, I’m using freeplane, as I have done for the past couple of months to organize medical knowledge that I need to memorize in a way that helps me.

      I know it’s not ideal, but it’s actually much much better than other competing programs, even the paid ones. It doesn’t look great, but once you spend 15 minutes to understand it, it’s much faster than other programs to work with.

      It’s a great program, and I hope the developers don’t stop improving it. For example, adding the "Node Clones" feature that freemind has. Freeplane is a solid program. It has most of the features I’ve ever needed, filtering, search, icons, etc, etc.

      • About Node Clones, if useful.

        Freeplane has a simple scripting environment using groovy (easier than java)associated with user-defined hotkeys. That combination allows to personalize the interface at will.

        For node clones for example, I have associated the script below to a hotkey (ctrl+2)

        So, while a node is selected, I can create a "clone" keying Ctrl+2, and move it elsewhere in the map.
        ///////////////////////////////////////////////

        import java.lang.*

        // duplicate the current nodes and add link/connector //

        //// to create the new node as a child of the parent of duplicated nodes (bring it last child)
        //nodeNew = node.getParent().createChild(node.text)
        //nodeNew = node.createChild(node.text)

        //// to create the new node as a sibling , a little more complicate
        int nodeposition = node.getParent().children.indexOf(node) // find the position of the current node in its parent list
        int newnodeposition = nodeposition + 1
        nodeNew = node.getParent().createChild(newnodeposition) // create a node at that position + 1
        nodeNew.text = node.text
        // nodeNew.attributes = node.attributes.map // copy the attributes, optional

        //// set the link, new created node link or/and connector to the original
        nodeNew.link.setNode(node) // link to the the old node
        //nodeNew.addConnectorTo(node)// link the new created node, optional

        // @ExecutionModes({ON_SELECTED_NODE})

        ///////////////////////////////////////////////

        • Thanks a lot, but this seems to duplicate the node right ? The feature I was talking about was one that freemind offers. It creates a clone, in the sense that whatever happens in the original node is automatically reflected in the new node. If you change the original, the clone changes and vice versa. This is very useful, when you want to refer to the same idea in multiple places, without having to navigate back and forth or repeatedly update all instances.

  • Hi Jack,

    thank you very much for paying attention to Freeplane and writing this review. As a Freeplane developer I would like to respond to some of your points. All of my comments relate to the current release version 1.2.18 or later.

    > "It is a bit cumbersome to learn and is less intuitive than other mind-mapping gear I have used. These include VYM (View Your Mind), Semantik and Labyrinth Mind-Mapping. First, you must get used to graphically thinking through complex ideas in a controlled and confined space on the computer screen. Then you must work through the software conventions to display what you created."

    I use the program differently. Main purpose of Freeplane is organizing lots of information. I never have a graphical vision starting a map. What counts for me is a logical hierarchical structure which also can be always easily changed. The layout is done automatically, and Freeplane comes with a plenty of tools formatting nodes depending on their position, content and context.

    > "Any disappointment I have for Freeplane is rooted in its graphical user interface. I prefer a scheme that lets me click anywhere on the blank canvas and use the keyboard to throw thoughts in awaiting entry fields.Once I have the words in place, I want to add lines to connect ideas and drag the graphical elements into different shapes and locations on the screen".

    Control + double-click at any free position in the map lets you enter a new floating node there. Later you can attach it to any place in the node hierarchy by clicking on a node, dragging and dropping.

    > "The other is Freeplane’s inability to resize an image in the workspace by dragging it. It takes too long to drill down a right-click menu to an image property panel in order to manually enter new parameters".

    There are two types of images. Historically there are images embedded anywhere in the node core. Your points are right only for them. There are also other images added as an additional node extension (Edit->Node extensions -> Add Image). The last can be scaled by dragging their right bottom corner.

    > "One is getting the program to select the desired location when importing or inserting a file or image. The file picker’s behavior was counter-intuitive. It balked at letting me access external drives or folders on the hard drive that were not directly listed in Freeplane’s directory".

    You can drag and drop external image files into any node. It is displayed where you drop it, and it creates an image which can be scaled as described above. The image is not saved with the map, just referenced.

    I hope that my comments can help to get more out of it.
    Kind regards,
    Dimitry

Leave a Comment

Please sign in to post or reply to a comment. New users create a free account.

LinuxInsider Channels