Hi All (and welcome back, Edward!).
I have muttered about this before but now think I have a concrete example to show. The behaviour of defined commands seems to change according to outline being edited...
Here are some step to reproduce.
1) my myleosettings.leo has some @command nodes, and some @shortcut nodes to define the keystrokes for these commands.
1a) you can sort-of see the effects of these by entering 'show-bindings' in the minibuffer. An extract of the output of this (when a normal outline, with no shortcut or commands, is being edited) is:
Plain keys...
M body: End crisp_end
M tree: End end-of-line
M body: Home crisp_home
M tree: Home back-to-home
M body: Insert paste-text
M tree: Insert insert-node
F all: Keypad++ crispKeypadPlus
F all: Keypad+- crispKeypadMinus
1c) The 'F' denotation seems a bit odd here; it is supposed to mean 'defined in the loaded .leo file'. In fact, this is not true, all of these are defined in myleosettings.leo
1d) The difference seems to be that the two 'F' commands are defined like
@command crispKeypadPlus @key=Keypad+plus
...
@command crispKeypadMinus @key=Keypad+minus
...
however this is a minor bug I think (although it confused me a bit)
2) if, however, I then create a new outline, the bindings in myleosettings.leo do not seem to be correctly applied. I would expect all of the above to be in place; however 'show-bindings' when editing the new outline gives (again, extracted)
M tree: End end-of-line
M tree: Home back-to-home
M body: Insert paste-text
M tree: Insert insert-node
D all: Keypad++ crispKeypadPlus
D all: Keypad+- crispKeypadMinus
That is:
- the bindings previous mis-denoted as 'F' are now mis-denoted as 'D' !
- I have lost the bindings:
M body: End crisp_end
M tree: End end-of-line
3) I have just now loaded an existing outline (ie. as well as the other outlines_, and now both this outline, and the 'new' outline, which was previously misbehaving, show the original correct bindings (albeit with the 'F' not 'M' buglet):
M body: End crisp_end
M tree: End end-of-line
M body: Home crisp_home
M tree: Home back-to-home
M body: Insert paste-text
M tree: Insert insert-node
F all: Keypad++ crispKeypadPlus
F all: Keypad+- crispKeypadMinus
I'm not misunderstanding things here, am I? With no @settings in an outline, or when creating a new outline, the bindings in myleosettings.leo should be the same across outlines?
Puzzling...
J^n