aboutsummaryrefslogtreecommitdiffstats
path: root/menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'menu.c')
-rw-r--r--menu.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/menu.c b/menu.c
index 1a156e0..50c49f1 100644
--- a/menu.c
+++ b/menu.c
@@ -1,4 +1,4 @@
-/* $Id: menu.c,v 1.43 2004/08/02 15:40:50 ukai Exp $ */
+/* $Id: menu.c,v 1.44 2006/04/05 14:18:54 inu Exp $ */
/*
* w3m menu.c
*/
@@ -590,7 +590,6 @@ action_menu(Menu *menu)
*item.variable = item.value;
if (item.type & MENU_FUNC) {
CurrentKey = -1;
- CurrentKeyData = NULL;
CurrentCmdData = item.data;
(*item.func) ();
CurrentCmdData = NULL;
@@ -1738,6 +1737,23 @@ initMenu(void)
}
}
+DEFUN(interpretAsMenu, INTERPRET_AS_MENU, "Interpret current document as menu-definition")
+{
+ FILE *mf;
+ MenuList *list;
+
+ if ((mf = fopen(Currentbuf->sourcefile, "r")) != NULL) {
+ interpret_menu(mf);
+ fclose(mf);
+
+ for (list = w3mMenuList; list->id != NULL; list++) {
+ if (list->item == NULL)
+ continue;
+ new_menu(list->menu, list->item);
+ }
+ }
+}
+
int
setMenuItem(MenuItem *item, char *type, char *line)
{