"github.com/zyedidia/tcell"
)
-var bindings map[Key][]func(*View) bool
+var bindings map[Key][]func(*View, bool) bool
var helpBinding string
-var bindingActions = map[string]func(*View) bool{
+var bindingActions = map[string]func(*View, bool) bool{
"CursorUp": (*View).CursorUp,
"CursorDown": (*View).CursorDown,
"CursorPageUp": (*View).CursorPageUp,
"DeleteWordLeft": (*View).DeleteWordLeft,
"SelectToStartOfLine": (*View).SelectToStartOfLine,
"SelectToEndOfLine": (*View).SelectToEndOfLine,
- "InsertEnter": (*View).InsertEnter,
+ "InsertNewline": (*View).InsertNewline,
"InsertSpace": (*View).InsertSpace,
"Backspace": (*View).Backspace,
"Delete": (*View).Delete,
"NextTab": (*View).NextTab,
"NextSplit": (*View).NextSplit,
"PreviousSplit": (*View).PreviousSplit,
+
+ // This was changed to InsertNewline but I don't want to break backwards compatibility
+ "InsertEnter": (*View).InsertNewline,
}
var bindingKeys = map[string]tcell.Key{
// InitBindings initializes the keybindings for micro
func InitBindings() {
- bindings = make(map[Key][]func(*View) bool)
+ bindings = make(map[Key][]func(*View, bool) bool)
var parsed map[string]string
defaults := DefaultBindings()
}
// findAction will find 'action' using string 'v'
-func findAction(v string) (action func(*View) bool) {
+func findAction(v string) (action func(*View, bool) bool) {
action, ok := bindingActions[v]
if !ok {
// If the user seems to be binding a function that doesn't exist
}
actionNames := strings.Split(v, ",")
- actions := make([]func(*View) bool, 0, len(actionNames))
+ actions := make([]func(*View, bool) bool, 0, len(actionNames))
for _, actionName := range actionNames {
actions = append(actions, findAction(actionName))
}
"CtrlDown": "CursorEnd",
"CtrlShiftUp": "SelectToStart",
"CtrlShiftDown": "SelectToEnd",
- "Enter": "InsertEnter",
+ "Enter": "InsertNewline",
"Space": "InsertSpace",
"Backspace": "Backspace",
"Backspace2": "Backspace",
"CtrlT": "AddTab",
"CtrlRightSq": "PreviousTab",
"CtrlBackslash": "NextTab",
- "Home": "Start",
- "End": "End",
+ "Home": "StartOfLine",
+ "End": "EndOfLine",
"PageUp": "CursorPageUp",
"PageDown": "CursorPageDown",
"CtrlG": "ToggleHelp",