Enjoy Shift-F7 on Linux console!
- From: Pavel Roskin <proski gnu org>
- To: <mc-devel gnome org>
- Subject: Enjoy Shift-F7 on Linux console!
- Date: Sun, 22 Jul 2001 02:02:23 -0400 (EDT)
I've just fixed a nasty bug in MC that existed since MC was put on CVS in
1998. Keyboard settings from the generic file mc.lib have preference over
the user settings from ~.mc/ini.
mc.lib defines keys for the terminals: console, linux, xterm, xterm-color
and ibmpc3. The definitions for the "linux" terminals assume that
Shift-F1 is F11, Shift-F2 is F12 and so on, just like in xterm.
Unfortunately, some keyboard maps for Linux make Shift-F1 emit the
sequence that other vt100-like terminals would use for F13, and so on.
However, the terminal name is still "linux". On such terminals, pressing
e.g. Shift-F7 to continue search in the editor would invoke a message box
saying "You must first highlight a block of text".
Smart users went to "Learn keys" and MC gladly accepted the new keys ...
until it was restarted. Because mc.lib had preference over user settings.
* setup.c (load_keys_from_section): Give ~/.mc/ini preference
@@ -731,11 +731,15 @@ load_keys_from_section (char *terminal,
void load_key_defs (void)
char *libfile = concat_dir_and_file (mc_home, "mc.lib");
- load_keys_from_section (getenv ("TERM"), profile_name);
- load_keys_from_section ("general", profile_name);
+ * Load keys from mc.lib before ~/.mc/ini, so that the user
+ * definitions override global settings.
load_keys_from_section (getenv ("TERM"), libfile);
load_keys_from_section ("general", libfile);
+ load_keys_from_section (getenv ("TERM"), profile_name);
+ load_keys_from_section ("general", profile_name);
/* We don't want a huge database loaded in core */
The documentation will be fixed separately. The existing description of
mc.lib is too vague: "Settings in this file are global to any Midnight
] [Thread Prev