Keyboard shortcuts: Difference between revisions

From FreeMind
Jump to navigationJump to search
(→‎Custom shortcuts: vim-like editing is buggy)
(+explicit section for limitations)
Line 79: Line 79:
* Move node up              - Ctrl+UP
* Move node up              - Ctrl+UP
* Move node down            - Ctrl+DOWN
* Move node down            - Ctrl+DOWN
==Limitations==
* Side effects when assigning "B" instead of "Control + B" to boldface, or "D" instead of "DELETE" to deletion of a node[http://sourceforge.net/tracker/?func=detail&aid=3021695&group_id=7118&atid=107118]


==Development==
==Development==

Revision as of 09:26, 26 June 2010

Custom shortcuts

You can assign custom keyboard shortcuts in the section Keystrokes of the preferences dialog, accessible from menu Tools > Preferences.

To assign keyboard shortcuts that do not use modifiers such as control and alt, it is useful that you disable editing of a node upon typing outside of an editor. This you can do in the preferences dialog (menu Tools > Preferences), in the section Behavior > Key Typing, by checking the check box "Disable Key Type". This makes it possible to assign keyboard shortcuts on the model of the text editor Vim. In addition, in the preferences dialog, you have to enter the single letters capitalized by holding shift, so "B" instead of "b". And yet, assignment of "B" instead of "control + B" to boldface leads to a buggy behavior.

Current shortcuts

File commands:

  • New map - Ctrl+N
  • Open map - Ctrl+O
  • Save map - Ctrl+S
  • Save as - Ctrl+A
  • Print - Ctrl+P
  • Close - Ctrl+W
  • Quit - Ctrl+Q
  • Previous map - Ctrl+LEFT
  • Next Map - Ctrl+RIGHT
  • Export file to HTML - Ctrl+E
  • Export branch to HTML - Ctrl+H
  • Export branch to new MM file - Alt+A
  • Open first file in history - Ctrl+Shift+W

Edit commands:

  • Find - Ctrl+F
  • Find next - Ctrl+G
  • Cut - Ctrl+X
  • Copy - Ctrl+C
  • Copy single - Ctrl+Y
  • Paste - Ctrl+V

Mode commands:

  • MindMap mode - Alt+1
  • Browse mode - Alt+2
  • File mode - Alt+3

Node formatting commands:

  • Italicize - Ctrl+I
  • Bold - Ctrl+B
  • Cloud - Ctrl+Shift+B
  • Change node color - Alt+C
  • Blend node color - Alt+B
  • Change node edge color - Alt+E
  • Increase node font size - Ctrl+L
  • decrease node font size - Ctrl+M
  • Increase branch font size - Ctrl+Shift+L
  • Decrease branch font size - Ctrl+Shift+M

Node navigation commands:

  • Go to root - ESCAPE
  • Move up - UP
  • Move down - DOWN
  • Move left - LEFT
  • Move right - RIGHT
  • Follow link - Ctrl+ENTER
  • Zoom out - Alt+UP
  • Zoom in - Alt+DOWN

New node commands:

  • Add sibling node - ENTER
  • Add child node - INSERT
  • Add sibling before - Shift+ENTER

Node editing commands:

  • Edit selected node - F2
  • Edit long node - Alt+ENTER
  • Join nodes - Ctrl+J
  • Toggle folded - SPACE
  • Toggle children folded - Ctrl+SPACE
  • Set link by filechooser - Ctrl+Shift+K
  • Set link by text entry - Ctrl+K
  • Set image by filechooser - Alt+K
  • Move node up - Ctrl+UP
  • Move node down - Ctrl+DOWN

Limitations

  • Side effects when assigning "B" instead of "Control + B" to boldface, or "D" instead of "DELETE" to deletion of a node[1]

Development

Types of shortcuts:

  • Mnemonics: Alt + the mnemonic letter visible in the menu. Also accessible by pressing F10 first. (Windows)
  • Shortcuts like Control + C

Methods for the developers of choosing shortcuts to assign to functions:

  • Stick to existing conventions, like IBM Common User Access, meaning use Control + C for copying and the like.
  • Modifier key:
    • Use Control + letter where available.
    • Avoid Alt.
      • It is used for mnemonics.
    • Use Control + Alt.
      • Accessible using one modifier key: AltGr.
      • Used in Eclipse.

More shortcuts for one function: Currently, each function has at most one key assigned. But, it should be the other way around; the keys should have functions assigned, rather than functions key. For instance, it would be valuable to have both insert and tab assigned to new node function. (Actually on MS Windows it is right now not possible at all to bind anything to tab.)

Links