User:Dan Polansky

From FreeMind

Revision as of 15:11, 6 January 2010 by Dan Polansky (Talk | contribs)
Jump to: navigation, search

Daniel Polansky was FreeMind's director. Switching to I form.

I release all my contributions to this FreeMind wiki into public domain.




File format in 0.9.0

File format - changes in 0.9.0 against 0.8.0:

  • HTML nodes — HTML text of nodes is stored directly in the XML in the element "richcontent" of the element "node", instead of being stored with escaped special character such as "<b>boldfaced text</b>" in the attribute "text" of the element "node"
  • Hyperlinks — hyperlinks to local files whose names contain spaces are stored differently, using "%20"; also applies to the "%" character I guess
  • Attributes — elements for attributes have been added: "attributes" and "attribute" within "node", and also some at the beginning of the mind map; see also Attribute#Storage_in_XML
  • ... more?


  • Scripts are stored in the attributes of hte attribute function, so require no new XML elements beyond those of attributes.


Hierarchical or tree FreeMind versus network, general graph or DAG FreeMind:


Word processing

Word processing with FreeMind:

FreeMind can be used as a simple word processor, instead of MS Word or OOo Writer. FreeMind lacks many features of traditional word processors, yet has some features of its own to add. FreeMind lacks spell-checking, cannot embed other documents such as spreadsheets and presentations, and the rich text editing available in 0.9.0 series is still quirky. However, FreeMind has an excellent folding ability, not matched even by MS Word's outline mode, by my judgment anyway. Its search is a breadth-first one, meaning that articles and sections are usually found before body text; that, however, depends on the level of nesting, so sometimes a body text can be found before a section heading. The search can be restricted only to a branch, meaning a particular folder, article or a section, by placing the cursor to the root of the branch before starting the search function. The lack of additional features prevents distraction. FreeMind lets you edit one chunk of information at a time, preventing accidental edits to unrelated parts of the document: you can only edit a node in a separate window. An accidental keystroke pressed while editing the current node has no effect on other nodes. Chunks of information are as if preselected to be moved around. In a traditional word processor, you have to select a text freely before you move it somewhere else; nothing prevents you from accidentally omitting the first character in the paragraph that you are selecting with the mouse. In FreeMind, it is the whole nodes and branches that are ready to be moved; several paragraphs can be not only easily but also confidently selected before they are moved somewhere else, which is equally valid of sections, chapters and articles.

The mind map files created by FreeMind are very transparent: they are plain unzipped XML files. They are easy to generate programmatically, and easy to read in a plain text editor. Technically-minded users can store FreeMind mind maps in a revision control system—a piece of software that keeps the history of changes of a plain text file and can show differences between subsequent revisions of the given file. Examples of such programs include CVS, Subversion, Bazaar and Git.

The way I use FreeMind, one mind map corresponds to a folder of documents rather than a single document. FreeMind handles even large mind maps well as long as most of the content is folded; my largest mind map has 30 MB. I have a short node per folder or category of articles, a short node per article, and a short node per section of an article; long nodes are body text and include paragraphs, bullet lists and numbered lists, and tables. I do not use notes.

To spell check, I export an article or its section to HTML, copy it to OOo Writer, and spell check there. Alternatively, I open the exported HTML document in the open source HTML editor Kompozer, and spell-check there. This is a workaround and a rather inconvenient one, but it does the job.

For finishing, an individual article can be exported to HTML by pressing Control + H, and copied and pasted to MS Word or OOo Writer.

I print articles by exporting them to HTML, and printing the result from a web browser, getting nice results in this way. However, there is no support for headers and footers, unlike in traditional word processors.


Customization of MediaWiki in FreeMind wiki, mostly in the file "LocalSettings.php":

  • Spam
    • Spam configuration filter in LocalSettings.php:
    • $wgSpamRegex = "/[^\x{0020}-\x{3dff}\s]|display:none|freeiconsweb|overflow:\s*auto;\s*height:\s*[0-4]px;/iu";
  • Lexical color highlighting
    • The "GeSHiHighlight" extension for highlighting Groovy scripts:
    • include("extensions/GeSHiHighlight.php");
  • require("extensions/FreeMind.php");
  • $wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'mm' );
  • Squid caching[1]
    • $wgUseSquid = true;
    • $wgSquidServers = array('');


Personal tools