Browse Source

Show actual shortcuts in editor menu.

Key emulation in editor was removed. Default key emulation
is stored in misc/mc.keymap.default file. Emacs key emulation
is stored in misc/mc.keymap.emacs.
Editor options dialog was redesigned.
Shortcut parser was fixed.
Fixes after rebase to recent master.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Andrew Borodin 15 years ago
parent
commit
7e33c12685
10 changed files with 136 additions and 559 deletions
  1. 4 1
      edit/edit-impl.h
  2. 0 2
      edit/edit-widget.h
  3. 7 10
      edit/edit.c
  4. 0 7
      edit/edit.h
  5. 6 6
      edit/editkeys.c
  6. 70 194
      edit/editmenu.c
  7. 22 39
      edit/editoptions.c
  8. 25 2
      edit/editwidget.c
  9. 2 0
      misc/Makefile.am
  10. 0 298
      misc/mc.keymap

+ 4 - 1
edit/edit-impl.h

@@ -33,6 +33,7 @@
 #include <stdio.h>
 
 #include "../src/dialog.h"	/* cb_ret_t */
+#include "../src/keybind.h"	/* global_keymap_t */
 
 #include "../edit/edit.h"
 
@@ -151,7 +152,6 @@ int edit_drop_hotkey_menu (WEdit *e, int key);
 void edit_menu_cmd (WEdit *e);
 void edit_init_menu (struct WMenuBar *menubar);
 cb_ret_t edit_menu_execute (int command);
-void edit_reload_menu (void);
 void menu_save_mode_cmd (void);
 int edit_translate_key (WEdit *edit, long x_key, int *cmd, int *ch);
 int edit_get_byte (WEdit * edit, long byte_index);
@@ -305,6 +305,9 @@ extern edit_stack_type edit_history_moveto [MAX_HISTORY_MOVETO];
 extern WEdit *wedit;
 extern struct WMenuBar *edit_menubar;
 
+extern const global_keymap_t *editor_map;
+extern const global_keymap_t *editor_x_map;
+
 extern int option_line_state_width;
 
 typedef enum {

+ 0 - 2
edit/edit-widget.h

@@ -126,8 +126,6 @@ struct WEdit {
 
     /* user map stuff */
     GIConv converter;
-    const global_keymap_t *user_map;
-    const global_keymap_t *user_x_map;
 
     /* line break */
     LineBreaks lb;

+ 7 - 10
edit/edit.c

@@ -61,12 +61,6 @@
 #include "../src/main.h"	/* source_codepage */
 #include "../src/learn.h"	/* learn_keys */
 
-/*
-   what editor are we going to emulate? one of EDIT_KEY_EMULATION_NORMAL
-   or EDIT_KEY_EMULATION_EMACS
- */
-int edit_key_emulation = EDIT_KEY_EMULATION_NORMAL;
-
 int option_word_wrap_line_length = 72;
 int option_typewriter_wrap = 0;
 int option_auto_para_formatting = 0;
@@ -123,6 +117,8 @@ const char VERTICAL_MAGIC[] = {'\1', '\1', '\1', '\1', '\n'};
  * fin.
  */
 
+const global_keymap_t *editor_map;
+const global_keymap_t *editor_x_map;
 
 static void user_menu (WEdit *edit);
 
@@ -723,12 +719,13 @@ edit_purge_widget (WEdit *edit)
 static void
 edit_set_keymap (WEdit *edit)
 {
-    edit->user_map = default_editor_keymap;
+    editor_map = default_editor_keymap;
     if (editor_keymap && editor_keymap->len > 0)
-        edit->user_map = (global_keymap_t *) editor_keymap->data;
-    edit->user_x_map = default_editor_x_keymap;
+	editor_map = (global_keymap_t *) editor_keymap->data;
+
+    editor_x_map = default_editor_x_keymap;
     if (editor_x_keymap && editor_x_keymap->len > 0)
-        edit->user_x_map = (global_keymap_t *) editor_x_keymap->data;
+	editor_x_map = (global_keymap_t *) editor_x_keymap->data;
 }
 
 

+ 0 - 7
edit/edit.h

@@ -39,10 +39,6 @@
 struct WEdit;
 typedef struct WEdit WEdit;
 
-#define EDIT_KEY_EMULATION_NORMAL 0
-#define EDIT_KEY_EMULATION_EMACS  1
-#define EDIT_KEY_EMULATION_USER   2
-
 extern int option_word_wrap_line_length;
 extern int option_typewriter_wrap;
 extern int option_auto_para_formatting;
@@ -58,9 +54,6 @@ extern int option_save_position;
 extern int option_syntax_highlighting;
 extern char *option_backup_ext;
 
-/* what editor are we going to emulate? */
-extern int edit_key_emulation;
-
 extern int edit_confirm_save;
 
 extern int visible_tabs;

+ 6 - 6
edit/editkeys.c

@@ -146,16 +146,16 @@ edit_translate_key (WEdit *edit, long x_key, int *cmd, int *ch)
     /* Commands specific to the key emulation */
     if (edit->extmod) {
         edit->extmod = 0;
-        for (i = 0; edit->user_x_map[i].key; i++) {
-            if (x_key == edit->user_x_map[i].key) {
-                command = edit->user_x_map[i].command;
+        for (i = 0; editor_x_map[i].key; i++) {
+            if (x_key == editor_x_map[i].key) {
+                command = editor_x_map[i].command;
                 break;
             }
         }
     } else {
-        for (i = 0; edit->user_map[i].key != 0; i++) {
-            if (x_key == edit->user_map[i].key) {
-                command = edit->user_map[i].command;
+        for (i = 0; editor_map[i].key != 0; i++) {
+            if (x_key == editor_map[i].key) {
+                command = editor_map[i].command;
                 break;
             }
         }

+ 70 - 194
edit/editmenu.c

@@ -65,43 +65,20 @@ create_file_menu (void)
 {
     GList *entries = NULL;
 
-    entries = g_list_append (entries, menu_entry_create (_("&Open file..."),         CK_Load));
-    entries = g_list_append (entries, menu_entry_create (_("&New              C-n"), CK_New));
+    entries = g_list_append (entries, menu_entry_create (_("&Open file..."),    CK_Load));
+    entries = g_list_append (entries, menu_entry_create (_("&New"),             CK_New));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Save              F2"), CK_Save));
-    entries = g_list_append (entries, menu_entry_create (_("Save &as...       F12"), CK_Save_As));
+    entries = g_list_append (entries, menu_entry_create (_("&Save"),            CK_Save));
+    entries = g_list_append (entries, menu_entry_create (_("Save &as..."),      CK_Save_As));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Insert file...   F15"), CK_Insert_File));
-    entries = g_list_append (entries, menu_entry_create (_("Copy to &file...  C-f"), CK_Save_Block));
+    entries = g_list_append (entries, menu_entry_create (_("&Insert file..."),  CK_Insert_File));
+    entries = g_list_append (entries, menu_entry_create (_("Cop&y to file..."), CK_Save_Block));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&User menu...     F11"), CK_User_Menu));
+    entries = g_list_append (entries, menu_entry_create (_("&User menu..."),    CK_User_Menu));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("A&bout...            "), CK_About));
+    entries = g_list_append (entries, menu_entry_create (_("A&bout..."),        CK_About));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Quit             F10"), CK_Quit));
-
-    return entries;
-}
-
-static GList *
-create_file_menu_emacs (void)
-{
-    GList *entries = NULL;
-
-    entries = g_list_append (entries, menu_entry_create (_("&Open file..."),         CK_Load));
-    entries = g_list_append (entries, menu_entry_create (_("&New            C-x k"), CK_New));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Save              F2"), CK_Save));
-    entries = g_list_append (entries, menu_entry_create (_("Save &as...       F12"), CK_Save_As));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Insert file...   F15"), CK_Insert_File));
-    entries = g_list_append (entries, menu_entry_create (_("Copy to &file...     "), CK_Save_Block));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&User menu...     F11"), CK_User_Menu));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("A&bout...            "), CK_About));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Quit             F10"), CK_Quit));
+    entries = g_list_append (entries, menu_entry_create (_("&Quit"),            CK_Quit));
 
     return entries;
 }
@@ -111,59 +88,28 @@ create_edit_menu (void)
 {
     GList *entries = NULL;
 
-    entries = g_list_append (entries, menu_entry_create (_("&Toggle Mark       F3"), CK_Mark));
-    entries = g_list_append (entries, menu_entry_create (_("&Mark Columns    S-F3"), CK_Column_Mark));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Toggle &ins/overw Ins"), CK_Toggle_Insert));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Copy              F5"), CK_Copy));
-    entries = g_list_append (entries, menu_entry_create (_("&Move              F6"), CK_Move));
-    entries = g_list_append (entries, menu_entry_create (_("&Delete            F8"), CK_Remove));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("C&opy to clipfile         C-Ins"), CK_XStore));
-    entries = g_list_append (entries, menu_entry_create (_("C&ut to clipfile          S-Del"), CK_XCut));
-    entries = g_list_append (entries, menu_entry_create (_("&Paste from clipfile      S-Ins"), CK_XPaste));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Toggle bookmar&k            M-k"), CK_Toggle_Bookmark));
-    entries = g_list_append (entries, menu_entry_create (_("&Next bookmark              M-j"), CK_Next_Bookmark));
-    entries = g_list_append (entries, menu_entry_create (_("Pre&v bookmark              M-i"), CK_Prev_Bookmark));
-    entries = g_list_append (entries, menu_entry_create (_("&Flush bookmark             M-o"), CK_Flush_Bookmarks));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Undo                       C-u"), CK_Undo));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Beginning     C-PgUp"), CK_Beginning_Of_Text));
-    entries = g_list_append (entries, menu_entry_create (_("&End           C-PgDn"), CK_End_Of_Text));
-
-    return entries;
-}
-
-static GList *
-create_edit_menu_emacs (void)
-{
-    GList *entries = NULL;
-
-    entries = g_list_append (entries, menu_entry_create (_("&Toggle mark                 F3"), CK_Mark));
-    entries = g_list_append (entries, menu_entry_create (_("Mar&k columns              S-F3"), CK_Column_Mark));
+    entries = g_list_append (entries, menu_entry_create (_("&Toggle mark"),         CK_Mark));
+    entries = g_list_append (entries, menu_entry_create (_("&Mark columns"),        CK_Column_Mark));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Toggle &ins/overw           Ins"), CK_Toggle_Insert));
+    entries = g_list_append (entries, menu_entry_create (_("Toggle &ins/overw"),    CK_Toggle_Insert));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Copy                        F5"), CK_Copy));
-    entries = g_list_append (entries, menu_entry_create (_("&Move                        F6"), CK_Move));
-    entries = g_list_append (entries, menu_entry_create (_("&Delete                      F8"), CK_Remove));
+    entries = g_list_append (entries, menu_entry_create (_("&Copy"),                CK_Copy));
+    entries = g_list_append (entries, menu_entry_create (_("&Move"),                CK_Move));
+    entries = g_list_append (entries, menu_entry_create (_("&Delete"),              CK_Remove));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("C&opy to clipfile           M-w"), CK_XStore));
-    entries = g_list_append (entries, menu_entry_create (_("C&ut to clipfile            C-w"), CK_XCut));
-    entries = g_list_append (entries, menu_entry_create (_("&Paste from clipfile        C-y"), CK_XPaste));
+    entries = g_list_append (entries, menu_entry_create (_("C&opy to clipfile"),    CK_XStore));
+    entries = g_list_append (entries, menu_entry_create (_("C&ut to clipfile"),     CK_XCut));
+    entries = g_list_append (entries, menu_entry_create (_("&Paste from clipfile"), CK_XPaste));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Toggle bookmar&k               "), CK_Toggle_Bookmark));
-    entries = g_list_append (entries, menu_entry_create (_("&Next bookmark                 "), CK_Next_Bookmark));
-    entries = g_list_append (entries, menu_entry_create (_("Pre&v bookmark                 "), CK_Prev_Bookmark));
-    entries = g_list_append (entries, menu_entry_create (_("&Flush bookmark                "), CK_Flush_Bookmarks));
+    entries = g_list_append (entries, menu_entry_create (_("Toggle bookmar&k"),     CK_Toggle_Bookmark));
+    entries = g_list_append (entries, menu_entry_create (_("&Next bookmark"),       CK_Next_Bookmark));
+    entries = g_list_append (entries, menu_entry_create (_("Pre&v bookmark"),       CK_Prev_Bookmark));
+    entries = g_list_append (entries, menu_entry_create (_("&Flush bookmark"),      CK_Flush_Bookmarks));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Undo                       C-u"), CK_Undo));
+    entries = g_list_append (entries, menu_entry_create (_("&Undo"),                CK_Undo));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Beginning               C-PgUp"), CK_Beginning_Of_Text));
-    entries = g_list_append (entries, menu_entry_create (_("&End                     C-PgDn"), CK_End_Of_Text));
+    entries = g_list_append (entries, menu_entry_create (_("&Beginning"),           CK_Beginning_Of_Text));
+    entries = g_list_append (entries, menu_entry_create (_("&End"),                 CK_End_Of_Text));
 
     return entries;
 }
@@ -173,9 +119,9 @@ create_search_replace_menu (void)
 {
     GList *entries = NULL;
 
-    entries = g_list_append (entries, menu_entry_create (_("&Search...         F7"), CK_Find));
-    entries = g_list_append (entries, menu_entry_create (_("Search &again     F17"), CK_Find_Again));
-    entries = g_list_append (entries, menu_entry_create (_("&Replace...        F4"), CK_Replace));
+    entries = g_list_append (entries, menu_entry_create (_("&Search..."),    CK_Find));
+    entries = g_list_append (entries, menu_entry_create (_("Search &again"), CK_Find_Again));
+    entries = g_list_append (entries, menu_entry_create (_("&Replace..."),   CK_Replace));
 
     return entries;
 }
@@ -185,73 +131,35 @@ create_command_menu (void)
 {
     GList *entries = NULL;
 
-    entries = g_list_append (entries, menu_entry_create (_("&Go to line...            M-l"), CK_Goto));
-    entries = g_list_append (entries, menu_entry_create (_("Toggle li&ne state        M-n"), CK_Toggle_Line_State));
-    entries = g_list_append (entries, menu_entry_create (_("Go to matching &bracket   M-b"), CK_Match_Bracket));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Find declaration      A-Enter"), CK_Find_Definition));
-    entries = g_list_append (entries, menu_entry_create (_("Back from declaration     M--"), CK_Load_Prev_File));
-    entries = g_list_append (entries, menu_entry_create (_("Forward to declaration    M-+"), CK_Load_Next_File));
-#ifdef HAVE_CHARSET
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Encod&ing...             M-e"), CK_SelectCodepage));
-#endif
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Insert &literal...       C-q"),  CK_Insert_Literal));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Refresh screen          C-l"),  CK_Refresh));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Start record macro      C-r"),  CK_Begin_Record_Macro));
-    entries = g_list_append (entries, menu_entry_create (_("&Finish record macro...  C-r"),  CK_End_Record_Macro));
-    entries = g_list_append (entries, menu_entry_create (_("&Execute macro...   C-a, KEY"),  CK_Execute_Macro));
-    entries = g_list_append (entries, menu_entry_create (_("Delete macr&o...            "),  CK_Delete_Macro));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Insert &date/time           "),  CK_Date));
-    entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Format p&aragraph        M-p"),  CK_Paragraph_Format));
-    entries = g_list_append (entries, menu_entry_create (_("'ispell' s&pell check    C-p"),  CK_Pipe_Block (1)));
-    entries = g_list_append (entries, menu_entry_create (_("Sor&t...                 M-t"),  CK_Sort));
-    entries = g_list_append (entries, menu_entry_create (_("Paste o&utput of...      M-u"),  CK_ExtCmd));
-    entries = g_list_append (entries, menu_entry_create (_("E&xternal Formatter      F19"),  CK_Pipe_Block (0)));
-    entries = g_list_append (entries, menu_entry_create (_("&Mail...                    "),  CK_Mail));
-
-    return entries;
-}
-
-static GList *
-create_command_menu_emacs (void)
-{
-    GList *entries = NULL;
-
-    entries = g_list_append (entries, menu_entry_create (_("&Go to line...            M-l"), CK_Goto));
-    entries = g_list_append (entries, menu_entry_create (_("Toggle li&ne state        M-n"), CK_Toggle_Line_State));
-    entries = g_list_append (entries, menu_entry_create (_("Go to matching &bracket   M-b"), CK_Match_Bracket));
+    entries = g_list_append (entries, menu_entry_create (_("&Go to line..."),          CK_Goto));
+    entries = g_list_append (entries, menu_entry_create (_("Toggle li&ne state"),      CK_Toggle_Line_State));
+    entries = g_list_append (entries, menu_entry_create (_("Go to matching &bracket"), CK_Match_Bracket));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Find declaration      A-Enter"), CK_Find_Definition));
-    entries = g_list_append (entries, menu_entry_create (_("Back from declaration     M--"), CK_Load_Prev_File));
-    entries = g_list_append (entries, menu_entry_create (_("Forward to declaration    M-+"), CK_Load_Next_File));
+    entries = g_list_append (entries, menu_entry_create (_("Find declaration"),        CK_Find_Definition));
+    entries = g_list_append (entries, menu_entry_create (_("Back from declaration"),   CK_Load_Prev_File));
+    entries = g_list_append (entries, menu_entry_create (_("Forward to declaration"),  CK_Load_Next_File));
 #ifdef HAVE_CHARSET
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Encod&ing...             C-t"), CK_SelectCodepage));
+    entries = g_list_append (entries, menu_entry_create (_("Encod&ing..."),            CK_SelectCodepage));
 #endif
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Insert &literal...       C-q"), CK_Insert_Literal));
+    entries = g_list_append (entries, menu_entry_create (_("Insert &literal..."),      CK_Insert_Literal));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Refresh screen          C-l"), CK_Refresh));
+    entries = g_list_append (entries, menu_entry_create (_("&Refresh screen"),         CK_Refresh));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("&Start record macro      C-r"), CK_Begin_Record_Macro));
-    entries = g_list_append (entries, menu_entry_create (_("&Finish record macro...  C-r"), CK_End_Record_Macro));
-    entries = g_list_append (entries, menu_entry_create (_("&Execute macro... C-x e, KEY"), CK_Execute_Macro));
-    entries = g_list_append (entries, menu_entry_create (_("Delete macr&o...            "), CK_Delete_Macro));
+    entries = g_list_append (entries, menu_entry_create (_("&Start record macro"),     CK_Begin_Record_Macro));
+    entries = g_list_append (entries, menu_entry_create (_("&Finish record macro..."), CK_End_Record_Macro));
+    entries = g_list_append (entries, menu_entry_create (_("&Execute macro..."),       CK_Execute_Macro));
+    entries = g_list_append (entries, menu_entry_create (_("Delete macr&o..."),        CK_Delete_Macro));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Insert &date/time           "), CK_Date));
+    entries = g_list_append (entries, menu_entry_create (_("Insert &date/time"),       CK_Date));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Format p&aragraph        M-p"), CK_Paragraph_Format));
-    entries = g_list_append (entries, menu_entry_create (_("'ispell' s&pell check    M-$"), CK_Pipe_Block (1)));
-    entries = g_list_append (entries, menu_entry_create (_("Sor&t...                 M-t"), CK_Sort));
-    entries = g_list_append (entries, menu_entry_create (_("Paste o&utput of...      M-u"), CK_ExtCmd));
-    entries = g_list_append (entries, menu_entry_create (_("E&xternal Formatter      F19"), CK_Pipe_Block (0)));
-    entries = g_list_append (entries, menu_entry_create (_("&Mail...                    "), CK_Mail));
+    entries = g_list_append (entries, menu_entry_create (_("Format p&aragraph"),       CK_Paragraph_Format));
+    entries = g_list_append (entries, menu_entry_create (_("'ispell' s&pell check"),   CK_Pipe_Block (1)));
+    entries = g_list_append (entries, menu_entry_create (_("Sor&t..."),                CK_Sort));
+    entries = g_list_append (entries, menu_entry_create (_("Paste o&utput of..."),     CK_ExtCmd));
+    entries = g_list_append (entries, menu_entry_create (_("E&xternal formatter"),     CK_Pipe_Block (0)));
+    entries = g_list_append (entries, menu_entry_create (_("&Mail..."),                CK_Mail));
 
     return entries;
 }
@@ -262,86 +170,54 @@ create_options_menu (void)
     GList *entries = NULL;
 
     entries = g_list_append (entries, menu_entry_create (_("&General...  "),           CK_Edit_Options));
-    entries = g_list_append (entries, menu_entry_create (_("&Save mode..."),           CK_Edit_Save_Mode));
-    entries = g_list_append (entries, menu_entry_create (_("Learn &Keys..."),          CK_LearnKeys));
-    entries = g_list_append (entries, menu_entry_create (_("Syntax &Highlighting..."), CK_Choose_Syntax));
+    entries = g_list_append (entries, menu_entry_create (_("Save &mode..."),           CK_Edit_Save_Mode));
+    entries = g_list_append (entries, menu_entry_create (_("Learn &keys..."),          CK_LearnKeys));
+    entries = g_list_append (entries, menu_entry_create (_("Syntax &highlighting..."), CK_Choose_Syntax));
     entries = g_list_append (entries, menu_separator_create ());
     entries = g_list_append (entries, menu_entry_create (_("S&yntax file"),            CK_Load_Syntax_File));
     entries = g_list_append (entries, menu_entry_create (_("&Menu file"),              CK_Load_Menu_File));
     entries = g_list_append (entries, menu_separator_create ());
-    entries = g_list_append (entries, menu_entry_create (_("Save setu&p..."),          CK_SaveSetupCmd));
+    entries = g_list_append (entries, menu_entry_create (_("&Save setup"),             CK_SaveSetupCmd));
 
     return entries;
 }
 
-static void
-edit_init_menu_normal (struct WMenuBar *menubar)
-{
-    menubar_add_menu (menubar, create_menu (_(" &File "),      create_file_menu (),           "[Internal File Editor]"));
-    menubar_add_menu (menubar, create_menu (_(" &Edit "),      create_edit_menu (),           "[Internal File Editor]"));
-    menubar_add_menu (menubar, create_menu (_(" &Sear/Repl "), create_search_replace_menu (), "[Internal File Editor]"));
-    menubar_add_menu (menubar, create_menu (_(" &Command "),   create_command_menu (),        "[Internal File Editor]"));
-    menubar_add_menu (menubar, create_menu (_(" &Options "),   create_options_menu (),        "[Internal File Editor]"));
-}
-
-static void
-edit_init_menu_emacs (struct WMenuBar *menubar)
-{
-    menubar_add_menu (menubar, create_menu (_(" &File "),      create_file_menu_emacs (),     "[Internal File Editor]"));
-    menubar_add_menu (menubar, create_menu (_(" &Edit "),      create_edit_menu_emacs (),     "[Internal File Editor]"));
-    menubar_add_menu (menubar, create_menu (_(" &Sear/Repl "), create_search_replace_menu (), "[Internal File Editor]"));
-    menubar_add_menu (menubar, create_menu (_(" &Command "),   create_command_menu_emacs (),  "[Internal File Editor]"));
-    menubar_add_menu (menubar, create_menu (_(" &Options "),   create_options_menu (),        "[Internal File Editor]"));
-}
-
 void
 edit_init_menu (struct WMenuBar *menubar)
 {
-    switch (edit_key_emulation) {
-    default:
-    case EDIT_KEY_EMULATION_NORMAL:
-	edit_init_menu_normal (menubar);
-	break;
-    case EDIT_KEY_EMULATION_EMACS:
-	edit_init_menu_emacs (menubar);
-	break;
-    }
-}
-
-void
-edit_reload_menu (void)
-{
-    menubar_set_menu (edit_menubar, NULL);
-    edit_init_menu (edit_menubar);
+    menubar_add_menu (menubar, create_menu (_("&File"),    create_file_menu (),           "[Internal File Editor]"));
+    menubar_add_menu (menubar, create_menu (_("&Edit"),    create_edit_menu (),           "[Internal File Editor]"));
+    menubar_add_menu (menubar, create_menu (_("&Search"),  create_search_replace_menu (), "[Internal File Editor]"));
+    menubar_add_menu (menubar, create_menu (_("&Command"), create_command_menu (),        "[Internal File Editor]"));
+    menubar_add_menu (menubar, create_menu (_("&Options"), create_options_menu (),        "[Internal File Editor]"));
 }
 
-
 static void
 edit_drop_menu_cmd (WEdit *e, int which)
 {
-    if (edit_menubar->is_active)
-	return;
-    edit_menubar->is_active = TRUE;
-    edit_menubar->is_dropped = (drop_menus != 0);
-    if (which >= 0)
-	edit_menubar->selected = which;
-
-    edit_menubar->previous_widget = e->widget.parent->current->dlg_id;
-    dlg_select_widget (edit_menubar);
+    if (!edit_menubar->is_active) {
+	edit_menubar->is_active = TRUE;
+	edit_menubar->is_dropped = (drop_menus != 0);
+	if (which >= 0)
+	    edit_menubar->selected = which;
+
+	edit_menubar->previous_widget = e->widget.parent->current->dlg_id;
+	dlg_select_widget (edit_menubar);
+    }
 }
 
-void edit_menu_cmd (WEdit * e)
+void
+edit_menu_cmd (WEdit *e)
 {
     edit_drop_menu_cmd (e, -1);
 }
 
-int edit_drop_hotkey_menu (WEdit * e, int key)
+int
+edit_drop_hotkey_menu (WEdit *e, int key)
 {
     int m = 0;
     switch (key) {
     case ALT ('f'):
-	if (edit_key_emulation == EDIT_KEY_EMULATION_EMACS)
-	    return 0;
 	m = 0;
 	break;
     case ALT ('e'):

+ 22 - 39
edit/editoptions.c

@@ -38,16 +38,8 @@
 #include "../src/wtools.h"	/* QuickDialog */
 #include "../src/main.h"	/* option_tab_spacing */
 
-#define OPT_DLG_H 21
-#define OPT_DLG_W 72
-
-static const char *key_emu_str[] =
-{
-    N_("Intuitive"),
-    N_("Emacs"),
-    N_("User-defined"),
-    NULL
-};
+#define OPT_DLG_H 16
+#define OPT_DLG_W 74
 
 static const char *wrap_str[] =
 {
@@ -72,44 +64,42 @@ edit_options_dialog (void)
     char wrap_length[16], tab_spacing[16], *p, *q;
     int wrap_mode = 0;
     int old_syntax_hl;
-    int tedit_key_emulation = edit_key_emulation;
 
     QuickWidget quick_widgets[] =
     {
 	/*  0 */ QUICK_BUTTON (6, 10, OPT_DLG_H - 3, OPT_DLG_H, N_("&Cancel"), B_CANCEL, NULL),
 	/*  1 */ QUICK_BUTTON (2, 10, OPT_DLG_H - 3, OPT_DLG_H, N_("&OK"),     B_ENTER,  NULL),
-	/*  2 */ QUICK_LABEL (OPT_DLG_W / 2, OPT_DLG_W, OPT_DLG_H - 6, OPT_DLG_H, N_("Word wrap line length: ")),
-	/*  3 */ QUICK_INPUT (OPT_DLG_W / 2 + 24, OPT_DLG_W, OPT_DLG_H - 6, OPT_DLG_H,
+	/*  2 */ QUICK_LABEL (OPT_DLG_W / 2 + 1, OPT_DLG_W, 11, OPT_DLG_H,
+				N_("Word wrap line length: ")),
+	/*  3 */ QUICK_INPUT (OPT_DLG_W / 2 + 25, OPT_DLG_W, 11, OPT_DLG_H,
 				wrap_length, OPT_DLG_W / 2 - 4 - 24, 0, "edit-word-wrap", &p),
-	/*  4 */ QUICK_LABEL (OPT_DLG_W / 2, OPT_DLG_W, OPT_DLG_H - 7, OPT_DLG_H, N_("Tab spacing: ")),
-	/*  5 */ QUICK_INPUT (OPT_DLG_W / 2 + 24, OPT_DLG_W, OPT_DLG_H - 7, OPT_DLG_H,
-				tab_spacing, OPT_DLG_W / 2 - 4 - 24, 0, "edit-tab-spacing", &q),
-	/*  6 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H - 8, OPT_DLG_H,
+	/*  4 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, 10, OPT_DLG_H,
 				N_("Cursor beyond end of line"), &option_cursor_beyond_eol),
-	/*  7 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H -  9, OPT_DLG_H,
+	/*  5 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, 9, OPT_DLG_H,
 				N_("Pers&istent selection"), &option_persistent_selections),
-	/*  8 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H - 10, OPT_DLG_H,
+	/*  6 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, 8, OPT_DLG_H,
 				N_("Synta&x highlighting"), &option_syntax_highlighting),
-	/*  9 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H - 11, OPT_DLG_H,
+	/*  7 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, 7, OPT_DLG_H,
 				N_("Visible tabs"), &visible_tabs),
-	/* 10 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H - 12, OPT_DLG_H,
+	/*  8 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, 6, OPT_DLG_H,
 				N_("Visible trailing spaces"), &visible_tws),
-	/* 11 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H - 13, OPT_DLG_H,
+	/*  9 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, 5, OPT_DLG_H,
 				N_("Save file &position"), &option_save_position),
-	/* 12 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H - 14, OPT_DLG_H,
+	/* 10 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, 4, OPT_DLG_H,
 				N_("Confir&m before saving"), &edit_confirm_save),
-	/* 13 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H - 15, OPT_DLG_H,
-				N_("Fill tabs with &spaces"), &option_fill_tabs_with_spaces),
-	/* 14 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H - 16, OPT_DLG_H,
+	/* 11 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, 3, OPT_DLG_H,
 				N_("&Return does autoindent"), &option_return_does_auto_indent),
-	/* 15 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H - 17, OPT_DLG_H,
+	/* 12 */ QUICK_LABEL (3, OPT_DLG_W, 11, OPT_DLG_H, N_("Tab spacing: ")),
+	/* 13 */ QUICK_INPUT (3 + 24, OPT_DLG_W, 11, OPT_DLG_H,
+				tab_spacing, OPT_DLG_W / 2 - 4 - 24, 0, "edit-tab-spacing", &q),
+	/* 14 */ QUICK_CHECKBOX (3, OPT_DLG_W, 10, OPT_DLG_H,
+				N_("Fill tabs with &spaces"), &option_fill_tabs_with_spaces),
+	/* 15 */ QUICK_CHECKBOX (3, OPT_DLG_W, 9, OPT_DLG_H,
 				N_("&Backspace through tabs"), &option_backspace_through_tabs),
-	/* 16 */ QUICK_CHECKBOX (OPT_DLG_W / 2 + 1, OPT_DLG_W, OPT_DLG_H - 18, OPT_DLG_H,
+	/* 16 */ QUICK_CHECKBOX (3, OPT_DLG_W, 8, OPT_DLG_H,
 				 N_("&Fake half tabs"), &option_fake_half_tabs),
-	/* 17 */ QUICK_RADIO (5, OPT_DLG_W, OPT_DLG_H - 11, OPT_DLG_H, 3, wrap_str, &wrap_mode),
-	/* 18 */ QUICK_LABEL (4, OPT_DLG_W, OPT_DLG_H - 12, OPT_DLG_H, N_("Wrap mode")),
-	/* 19 */ QUICK_RADIO (5, OPT_DLG_W, OPT_DLG_H - 17, OPT_DLG_H, 3, key_emu_str, &tedit_key_emulation),
-	/* 10 */ QUICK_LABEL (4, OPT_DLG_W, OPT_DLG_H - 18, OPT_DLG_H, N_("Key emulation")),
+	/* 17 */ QUICK_RADIO (4, OPT_DLG_W, 4, OPT_DLG_H, 3, wrap_str, &wrap_mode),
+	/* 18 */ QUICK_LABEL (3, OPT_DLG_W, 3, OPT_DLG_H, N_("Wrap mode")),
 	QUICK_END
     };
 
@@ -123,7 +113,6 @@ edit_options_dialog (void)
     static gboolean i18n_flag = FALSE;
 
     if (!i18n_flag) {
-	i18n_translate_array (key_emu_str);
 	i18n_translate_array (wrap_str);
 	i18n_flag = TRUE;
     }
@@ -168,12 +157,6 @@ edit_options_dialog (void)
 	option_typewriter_wrap = 0;
     }
 
-    /* Reload menu if key emulation has changed */
-    if (edit_key_emulation != tedit_key_emulation) {
-	edit_key_emulation = tedit_key_emulation;
-	edit_reload_menu ();
-    }
-
     /* Load or unload syntax rules if the option has changed */
     if (option_syntax_highlighting != old_syntax_hl)
 	edit_load_syntax (wedit, NULL, option_syntax_type);

+ 25 - 2
edit/editwidget.c

@@ -49,6 +49,7 @@
 
 #include "../src/widget.h"		/* buttonbar_redraw() */
 #include "../src/menu.h"		/* menubar_new() */
+#include "../src/cmddef.h"
 
 WEdit *wedit;
 struct WMenuBar *edit_menubar;
@@ -57,6 +58,26 @@ int column_highlighting = 0;
 
 static cb_ret_t edit_callback (Widget *, widget_msg_t msg, int parm);
 
+static char *
+edit_get_shortcut (int command)
+{
+    const char *ext_map;
+    const char *shortcut = NULL;
+
+    ext_map = lookup_keymap_shortcut (editor_map, CK_Ext_Mode);
+
+    if (ext_map != NULL)
+	shortcut = lookup_keymap_shortcut (editor_x_map, command);
+    if (shortcut != NULL)
+	return g_strdup_printf ("%s %s", ext_map, shortcut);
+
+    shortcut = lookup_keymap_shortcut (editor_map, command);
+    if (shortcut != NULL)
+	return g_strdup (shortcut);
+
+    return NULL;
+}
+
 static int
 edit_event (Gpm_Event *event, void *data)
 {
@@ -189,9 +210,10 @@ edit_file (const char *_file, int line)
 	g_free (dir);
     }
 
-    if (!(wedit = edit_init (NULL, LINES - 2, COLS, _file, line))) {
+    wedit = edit_init (NULL, LINES - 2, COLS, _file, line);
+
+    if (wedit == NULL)
 	return 0;
-    }
 
     /* Create a new dialog and add it widgets to it */
     edit_dlg =
@@ -209,6 +231,7 @@ edit_file (const char *_file, int line)
     add_widget (edit_dlg, wedit);
 
     edit_dlg->menu_executor = edit_menu_execute;
+    edit_dlg->get_shortcut = edit_get_shortcut;
     edit_menubar = menubar_new (0, 0, COLS, NULL);
     add_widget (edit_dlg, edit_menubar);
     edit_init_menu (edit_menubar);

+ 2 - 0
misc/Makefile.am

@@ -15,6 +15,8 @@ LIBFILES_CONST = \
 	mc.lib \
 	filehighlight.ini \
 	mc.keymap \
+	mc.keymap.default \
+	mc.keymap.emacs \
 	mc.menu \
 	mc.menu.sr
 

+ 0 - 298
misc/mc.keymap

@@ -1,298 +0,0 @@
-[editor]
-EditXStore =
-EditXPaste =
-EditXCut =
-
-EditDeleteLine = ctrl-y
-EditDeleteToLineEnd = ctrl-k
-EditDeleteToLineBegin =
-
-EditLeft = left
-EditRight = right
-EditUp = up
-EditDown = down
-EditEnter = enter
-EditReturn =
-EditBackSpace = backspace
-EditDelete = delete
-EditPageUp = pgup
-EditPageDown = pgdn
-EditWordLeft = ctrl-left
-EditWordRight = ctrl-right
-EditHome = home
-EditEnd = end
-EditTab = tab
-EditUndo = ctrl-u
-EditBeginningOfText = ctrl-pgup
-EditEndOfText = ctrl-pgdn
-EditScrollUp = ctrl-up
-EditScrollDown = ctrl-down
-EditBeginPage = ctrl-home
-EditEndPage = ctrl-end
-EditDeleteWordLeft = alt-backspace
-EditDeleteWordRight = alt-d
-EditParagraphUp =
-EditParagraphDown =
-EditSave = f2
-EditLoad =
-EditNew =
-EditSaveas = f12
-EditMark = f3
-EditCopy = f5
-EditMove = f6
-EditRemove = f8
-EditUnmark =
-EditFind = f7
-
-EditPageUpHighlight = shift-pgup
-EditPageDownHighlight = shift-pgdn
-EditLeftHighlight = shift-left
-EditRightHighlight = shift-right
-EditWordLeftHighlight = ctrl-shift-left
-EditWordRightHighlight = ctrl-shift-right
-EditUpHighlight = shift-up
-EditDownHighlight = shift-down
-EditHomeHighlight = shift-home
-EditEndHighlight = shift-end
-EditBeginningOfTextHighlight = ctrl-shift-home
-EditEndOfTextHighlight  = ctrl-shift-end
-EditBeginPageHighlight  = ctrl-shift-pgup
-EditEndPageHighlight = ctrl-shift-pgdn
-EditScrollUpHighlight =
-EditScrollDownHighlight =
-EditParagraphUpHighlight =
-EditParagraphDownHighlight =
-
-EditPageUpAltHighlight = alt-pgup
-EditPageDownAltHighlight = alt-pgdn
-EditLeftAltHighlight = alt-left
-EditRightAltHighlight = alt-right
-EditWordLeftAltHighlight = ctrl-alt-left
-EditWordRightAltHighlight = ctrl-alt-right
-EditUpAltHighlight = alt-up
-EditDownAltHighlight = alt-down
-EditHomeAltHighlight = alt-home
-EditEndAltHighlight = alt-end
-EditBeginningOfTextAltHighlight = ctrl-alt-home
-EditEndOfTextHighlight  = ctrl-alt-end
-EditBeginPageHighlight  = ctrl-alt-pgup
-EditEndPageAltHighlight = ctrl-alt-pgdn
-EditScrollUpAltHighlight =
-EditScrollDownAltHighlight =
-EditParagraphUpAltHighlight =
-EditParagraphDownAltHighlight =
-
-EditSaveBlock = ctrl-f
-EditColumnMark = f13
-EditFindAgain = f17
-EditReplace = f4
-EditReplaceAgain = f14
-EditCompleteWord = alt-tab
-EditDebugStart =
-EditDebugStop =
-EditDebugToggleBreak =
-EditDebugClear =
-EditDebugNext =
-EditDebugStep =
-EditDebugBackTrace =
-EditDebugContinue =
-EditDebugEnterCommand =
-EditDebugUntilCurser =
-EditInsertFile = f15
-EditQuit = f10
-EditToggleInsert = ins
-EditHelp = f1
-EditDate =
-EditRefresh = ctrl-l
-EditGoto = alt-l
-EditManPage =
-EditSort = alt-t
-EditMail =
-EditCancel =
-EditComplete =
-
-EditParagraphFormat = alt-p
-EditUtil =
-EditTypeLoadPython =
-EditFindFile =
-EditCtags =
-EditMatchBracket = alt-b
-EditTerminal =
-EditTerminalApp =
-EditExtCmd = alt-u
-EditUserMenu = f11
-EditSaveDesktop =
-EditNewWindow =
-EditCycle =
-EditMenu = f9
-EditSaveAndQuit =
-EditRunAnother =
-EditCheckSaveAndQuit =
-EditMaximize =
-EditDeleteMacro =
-EditToggleBookmark = alt-k
-EditFlushBookmarks = alt-o
-EditNextBookmark = alt-j
-EditPrevBookmark = alt-i
-
-EditSelectionHistory =
-EditShell = ctrl-o
-EditInsertLiteral = ctrl-q
-EditExecuteMacro = ctrl-a
-EditBeginorEndMacro = ctrl-r
-EditBeginRecordMacro =
-EditEndRecordMacro =
-EditToggleLineState = alt-n
-EditToggleTabTWS = alt-underline
-EditToggleSyntax = ctrl-s
-
-EditFindDefinition = alt-enter
-EditLoadPrevFile = alt-minus
-EditLoadNextFile = alt-equal
-
-SelectCodepage = alt-e
-
-[viewer]
-ViewSearch = question; slash; f7
-ViewContinueSearch = ctrl-r; ctrl-s; f17
-ViewMoveToBol = home
-ViewMoveToEol = end
-ViewMoveLeft = h; left
-ViewMoveRight = l; right
-ViewMoveUp = k; y; insert; up
-ViewMoveDown = j; e; delete; down
-ViewMovePgDn = f; space; pgdn
-ViewMovePgUp = b; pgup
-ViewMoveHalfPgDn = d
-ViewMoveHalfPgUp = u
-ViewGotoBookmark = m
-ViewNewBookmark = r
-ViewNextFile = ctrl-f
-ViewPrevFile = ctrl-b
-ViewQuit = q; esc
-SelectCodepage = alt-e
-ShowCommandLine = ctrl-o
-ViewToggleRuler = alt-r
-
-[viewer:hex]
-HexViewToggleNavigationMode = tab
-ViewMoveToBol = ctrl-a; home
-ViewMoveToEol = ctrl-e; end
-ViewMoveLeft = b; left
-ViewMoveRight = f; right
-ViewMoveUp = k; y; up
-ViewMoveDown = j; delete; down
-
-[main]
-CmdUserMenu = f2
-CmdView = f3
-CmdViewFile = f13
-CmdEdit = f4
-CmdCopy = f5
-CmdRename = f6
-CmdMkdir = f7
-CmdDelete = f8
-CmdQuit = f10
-CmdMenuLastSelected = f19
-CmdQuietQuit = f20
-CmdFind = alt-question
-CmdQuickCd = alt-c
-CmdQuickChdir = ctrl-backslash
-CmdReread = ctrl-r
-CmdSingleDirsize = ctrl-space
-CmdSuspend = ctrl-z
-CmdSwapPanel = ctrl-u
-CmdHistory = alt-h
-CmdToggleListing = alt-t
-CmdToggleShowHidden = alt-dot
-ShowCommandLine = ctrl-o
-CmdCopyCurrentPathname = alt-a
-CmdCopyOtherPathname = alt-shift-a
-CmdFilteredView = alt-exclamation
-CmdSelect = kpplus
-CmdUnselect = kpminus
-CmdReverseSelection = alt-kpasterisk
-ExtMap1 = ctrl-x
-
-[main:xmap]
-CmdChmod = c
-CmdChown = o
-CmdCompareDirs = d
-CmdEditSymlink = ctrl-s
-CmdLink = l
-CmdSymlink = s
-CmdMenuInfo = i
-CmdMenuQuickView = q
-CmdExternalPanelize = exclamation
-CmdReselectVfs = a
-CmdJobs = j
-
-[panel]
-PanelStartSearch = ctrl-s; alt-s
-PanelMarkFile = ins; ctrl-t
-PanelMoveDown = down; ctrl-n
-PanelMoveUp = up; ctrl-p
-PanelMoveLeft = left
-PanelMoveRight = right
-PanelPrevPage = pgup; alt-v
-PanelNextPage = pgdn; ctrl-v
-PanelDoEnter = enter
-PanelChdirOtherPanel = alt-o
-PanelChdirToReadlink = alt-l
-PanelViewSimple = F13
-PanelEditNew = F14
-PanelCopyLocal = F15
-PanelRenameLocal = F16
-PanelDeleteLocal = F18
-PanelReverseSelection = alt-asterisk
-PanelSelect = alt-plus
-PanelUnselect = alt-minus
-PanelCtrlNextPage = ctrl-pgdn
-PanelCtrlPrevPage = ctrl-pgup
-PanelDirectoryHistoryList = alt-shift-h
-PanelDirectoryHistoryNext = alt-u
-PanelDirectoryHistoryPrev = alt-y
-PanelGotoBottomFile = alt-j
-PanelGotoMiddleFile = alt-r
-PanelSyncOtherPanel = alt-i
-PanelGotoTopFile = alt-g
-PanelSetPanelEncoding = alt-e
-PanelMoveHome = alt-lt; home
-PanelMoveEnd = alt-gt; end
-PanelSelectSortOrder=
-PanelToggleSortOrderPrev=
-PanelToggleSortOrderNext=
-PanelReverseSort=
-PanelSortOrderByName=
-PanelSortOrderByExt=
-PanelSortOrderBySize=
-PanelSortOrderByMTime=
-
-
-[panel:xmap]
-
-[input]
-InputBol = ctrl-a; alt-lt; home
-InputEol = ctrl-e; alt-gt; end
-InputMoveLeft = left; alt-left
-InputWordLeft = ctrl-left
-InputBackwardChar = ctrl-b
-InputBackwardWord = alt-b
-InputMoveRight = right; alt-right
-InputWordRight = ctrl-right
-InputForwardChar = ctrl-f
-InputForwardWord = alt-f
-
-InputBackwardDelete = backspace
-InputDeleteChar = delete
-InputKillWord = alt-d
-InputBackwardKillWord = alt-backspace
-InputSetMark = 
-InputKillRegion = ctrl-w
-InputKillSave = alt-w
-InputYank = ctrl-y
-InputKillLine = ctrl-k
-InputHistoryPrev = alt-p; ctrl-down
-InputHistoryNext = alt-n; ctrl-up
-InputHistoryShow = alt-h
-InputComplete = alt-tab

Some files were not shown because too many files changed in this diff