FreeMind


The information on this page is outdated and may not be accurate anymore, since I have given up on Freemind given its poor UI and usability.

FreeMind is a Java-based mind-mapping application that stores maps as a XML dialect and can also run as an applet:

Standard Mac OS X keybindings

If, like me, you absolutely loathe the default key bindings (which use Ctrl instead of Command), find your user.properties file (it is in the freemind folder, inside your home directory - a major Mac OS X no-no that I'll let pass for now) and change the Keystrokes section to look like this:

## {{{ Keystrokes
##
## These are the accelerators for the menu items. Valid modifiers are:
## shift | control | alt | meta | button1 | button2 | button3
## Valid keys should be all that are defined in java.awt.event.KeyEvent
## (without the "VK_" prefix), but I found this buggy. All normal char's should work.
#
## The standard keybindings use control instead of command - which is
## unspeakably evil for Mac users, so here's an alternative:
#
##Commands for the program
keystroke_newMap = meta N
keystroke_open = meta O
keystroke_save = meta S
keystroke_saveAs = meta A
keystroke_print = meta P
keystroke_close = meta W
keystroke_quit = meta Q
keystroke_export_to_html = meta E
keystroke_export_branch_to_html = meta H
keystroke_open_first_in_history = meta shift W

keystroke_previousMap = meta LEFT
keystroke_nextMap = meta RIGHT

keystroke_mode_MindMap = alt 1
keystroke_mode_Browse = alt 2
keystroke_mode_File = alt 3

keystroke_node_toggle_italic = meta I
keystroke_node_toggle_boldface = meta B
keystroke_node_toggle_underlined = meta U
keystroke_node_toggle_cloud = meta shift B

keystroke_undo = meta Z
keystroke_redo = meta Y
keystroke_delete_child = DELETE

##Node editing commands
keystroke_cut = meta X
keystroke_copy = meta C
keystroke_copy_single = meta shift C
keystroke_paste = meta V
keystroke_remove = none
keystroke_add_arrow_link_action=meta L
keystroke_add_local_link_action=meta shift L

## Unline with control X, the node you remove with action remove cannot be
## pasted again. Therefore, we do not provide any quick shortcut. We suggest
## that you use cut instead of remove.
#
##Node navigation commands
keystroke_moveToRoot = ESCAPE
keystroke_move_up = W
keystroke_move_down = S
keystroke_move_left = A
keystroke_move_right = D
keystroke_follow_link = control ENTER

##New node commands
keystroke_add = ENTER
keystroke_add_child = INSERT
## on mac, there is no INSERT key, so use TAB instead.
keystroke_add_child_mac = TAB
keystroke_add_sibling_before = shift ENTER

##Node editing commands
#keystroke_edit = F2
#keystroke_edit_long_node = alt ENTER
#keystroke_join_nodes = control J
#keystroke_toggle_folded = SPACE
#keystroke_toggle_children_folded = control SPACE
keystroke_set_link_by_filechooser = meta shift K
keystroke_set_link_by_textfield = meta K
keystroke_set_image_by_filechooser = meta alt K
keystroke_node_up = meta UP
keystroke_node_down = meta DOWN
keystroke_node_increase_font_size = meta PLUS
keystroke_node_decrease_font_size = meta MINUS
keystroke_branch_increase_font_size = meta shift PLUS
keystroke_branch_decrease_font_size = meta shift MINUS
keystroke_export_branch = meta A
##
keystroke_node_color = meta alt F
keystroke_node_color_blend = meta shift B
keystroke_edge_color = meta E

keystroke_find = meta F
keystroke_find_next = meta G
#
## Apply patterns
#
## There is no limiting number of the pattern, you can have as many
## keystrokes for patterns as you want.
#
## The reason I do not follow to F10 and further in this default is that
## F10 has special function on Windows.
#
#keystroke_apply_pattern_1  = F1
#keystroke_apply_pattern_2  = control shift N
#keystroke_apply_pattern_3  = F3
#keystroke_apply_pattern_4  = F4
#keystroke_apply_pattern_5  = F5
#keystroke_apply_pattern_6  = F6
#keystroke_apply_pattern_7  = F7
#keystroke_apply_pattern_8  = F8
#keystroke_apply_pattern_9  = F9
#keystroke_apply_pattern_10 = control F1
#keystroke_apply_pattern_11 = control F2
#keystroke_apply_pattern_12 = control F3
#keystroke_apply_pattern_13 = control F4
#keystroke_apply_pattern_14 = control F5
#keystroke_apply_pattern_15 = control F6
#keystroke_apply_pattern_16 = control F7
#keystroke_apply_pattern_17 = control F8
#keystroke_apply_pattern_18 = control F9
#
#keystroke_zoom_out = alt UP
#keystroke_zoom_in = alt DOWN
#
##
## }}}

See Also: