From 4de7bd8010fbd7f2696dce625453b6d84f19fabb Mon Sep 17 00:00:00 2001 From: Daniel Carl Date: Thu, 20 Dec 2012 14:47:49 +0100 Subject: [PATCH] Added commands inputtabopen and inputtabpencurrent. --- doc/config | 2 ++ src/command.c | 83 ++++++++++++++++++++++++++------------------------- src/hints.c | 4 +-- 3 files changed, 47 insertions(+), 42 deletions(-) diff --git a/doc/config b/doc/config index cf5089e..27fe492 100644 --- a/doc/config +++ b/doc/config @@ -2,7 +2,9 @@ nmap gf source nmap input nmap o inputopen +nmap t inputtabopen nmap O inputopencurrent +nmap T inputtabopencurrent nmap d quit nmap back nmap forward diff --git a/src/command.c b/src/command.c index 453a132..aa226b9 100644 --- a/src/command.c +++ b/src/command.c @@ -29,46 +29,49 @@ extern const char *inputbox_fg[2]; extern const char *inputbox_bg[2]; static CommandInfo cmd_list[] = { - /* command function arg mode */ - {"open", command_open, {VP_TARGET_CURRENT, ""}, VP_MODE_NORMAL}, - {"input", command_input, {0, ":"}, VP_MODE_COMMAND}, - {"inputopen", command_input, {0, ":open "}, VP_MODE_COMMAND}, - {"inputopencurrent", command_input, {VP_INPUT_CURRENT_URI, ":open "}, VP_MODE_NORMAL}, - {"quit", command_close, {0}, VP_MODE_NORMAL}, - {"source", command_view_source, {0}, VP_MODE_NORMAL}, - {"back", command_navigate, {VP_NAVIG_BACK}, VP_MODE_NORMAL}, - {"forward", command_navigate, {VP_NAVIG_FORWARD}, VP_MODE_NORMAL}, - {"reload", command_navigate, {VP_NAVIG_RELOAD}, VP_MODE_NORMAL}, - {"reload!", command_navigate, {VP_NAVIG_RELOAD_FORCE}, VP_MODE_NORMAL}, - {"stop", command_navigate, {VP_NAVIG_STOP_LOADING}, VP_MODE_NORMAL}, - {"jumpleft", command_scroll, {VP_SCROLL_TYPE_JUMP | VP_SCROLL_DIRECTION_LEFT}, VP_MODE_NORMAL}, - {"jumpright", command_scroll, {VP_SCROLL_TYPE_JUMP | VP_SCROLL_DIRECTION_RIGHT}, VP_MODE_NORMAL}, - {"jumptop", command_scroll, {VP_SCROLL_TYPE_JUMP | VP_SCROLL_DIRECTION_TOP}, VP_MODE_NORMAL}, - {"jumpbottom", command_scroll, {VP_SCROLL_TYPE_JUMP | VP_SCROLL_DIRECTION_DOWN}, VP_MODE_NORMAL}, - {"pageup", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_TOP | VP_SCROLL_UNIT_PAGE}, VP_MODE_NORMAL}, - {"pagedown", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_DOWN | VP_SCROLL_UNIT_PAGE}, VP_MODE_NORMAL}, - {"halfpageup", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_TOP | VP_SCROLL_UNIT_HALFPAGE}, VP_MODE_NORMAL}, - {"halfpagedown", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_DOWN | VP_SCROLL_UNIT_HALFPAGE}, VP_MODE_NORMAL}, - {"scrollleft", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_LEFT | VP_SCROLL_UNIT_LINE}, VP_MODE_NORMAL}, - {"scrollright", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_RIGHT | VP_SCROLL_UNIT_LINE}, VP_MODE_NORMAL}, - {"scrollup", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_TOP | VP_SCROLL_UNIT_LINE}, VP_MODE_NORMAL}, - {"scrolldown", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_DOWN | VP_SCROLL_UNIT_LINE}, VP_MODE_NORMAL}, - {"nmap", command_map, {VP_MODE_NORMAL}, VP_MODE_NORMAL}, - {"imap", command_map, {VP_MODE_INSERT}, VP_MODE_NORMAL}, - {"cmap", command_map, {VP_MODE_COMMAND}, VP_MODE_NORMAL}, - {"hmap", command_map, {VP_MODE_HINTING}, VP_MODE_NORMAL}, - {"nunmap", command_unmap, {VP_MODE_NORMAL}, VP_MODE_NORMAL}, - {"iunmap", command_unmap, {VP_MODE_INSERT}, VP_MODE_NORMAL}, - {"cunmap", command_unmap, {VP_MODE_COMMAND}, VP_MODE_NORMAL}, - {"hunmap", command_unmap, {VP_MODE_HINTING}, VP_MODE_NORMAL}, - {"set", command_set, {0}, VP_MODE_NORMAL}, - {"complete", command_complete, {0}, VP_MODE_COMMAND | VP_MODE_COMPLETE}, - {"complete-back", command_complete, {1}, VP_MODE_COMMAND | VP_MODE_COMPLETE}, - {"inspect", command_inspect, {0}, VP_MODE_NORMAL}, - {"hint-link", command_hints, {HINTS_MODE_LINK, "."}, VP_MODE_HINTING}, - {"hint-link-new", command_hints, {HINTS_MODE_LINK_NEW, ","}, VP_MODE_HINTING}, - {"hint-focus-next", command_hints_focus, {0}, VP_MODE_HINTING}, - {"hint-focus-prev", command_hints_focus, {1}, VP_MODE_HINTING}, + /* command function arg mode */ + {"open", command_open, {VP_TARGET_CURRENT, ""}, VP_MODE_NORMAL}, + {"tabopen", command_open, {VP_TARGET_NEW, ""}, VP_MODE_NORMAL}, + {"input", command_input, {0, ":"}, VP_MODE_COMMAND}, + {"inputopen", command_input, {0, ":open "}, VP_MODE_COMMAND}, + {"inputtabopen", command_input, {0, ":tabopen "}, VP_MODE_COMMAND}, + {"inputopencurrent", command_input, {VP_INPUT_CURRENT_URI, ":open "}, VP_MODE_COMMAND}, + {"inputtabopencurrent", command_input, {VP_INPUT_CURRENT_URI, ":tabopen "}, VP_MODE_COMMAND}, + {"quit", command_close, {0}, VP_MODE_NORMAL}, + {"source", command_view_source, {0}, VP_MODE_NORMAL}, + {"back", command_navigate, {VP_NAVIG_BACK}, VP_MODE_NORMAL}, + {"forward", command_navigate, {VP_NAVIG_FORWARD}, VP_MODE_NORMAL}, + {"reload", command_navigate, {VP_NAVIG_RELOAD}, VP_MODE_NORMAL}, + {"reload!", command_navigate, {VP_NAVIG_RELOAD_FORCE}, VP_MODE_NORMAL}, + {"stop", command_navigate, {VP_NAVIG_STOP_LOADING}, VP_MODE_NORMAL}, + {"jumpleft", command_scroll, {VP_SCROLL_TYPE_JUMP | VP_SCROLL_DIRECTION_LEFT}, VP_MODE_NORMAL}, + {"jumpright", command_scroll, {VP_SCROLL_TYPE_JUMP | VP_SCROLL_DIRECTION_RIGHT}, VP_MODE_NORMAL}, + {"jumptop", command_scroll, {VP_SCROLL_TYPE_JUMP | VP_SCROLL_DIRECTION_TOP}, VP_MODE_NORMAL}, + {"jumpbottom", command_scroll, {VP_SCROLL_TYPE_JUMP | VP_SCROLL_DIRECTION_DOWN}, VP_MODE_NORMAL}, + {"pageup", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_TOP | VP_SCROLL_UNIT_PAGE}, VP_MODE_NORMAL}, + {"pagedown", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_DOWN | VP_SCROLL_UNIT_PAGE}, VP_MODE_NORMAL}, + {"halfpageup", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_TOP | VP_SCROLL_UNIT_HALFPAGE}, VP_MODE_NORMAL}, + {"halfpagedown", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_DOWN | VP_SCROLL_UNIT_HALFPAGE}, VP_MODE_NORMAL}, + {"scrollleft", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_LEFT | VP_SCROLL_UNIT_LINE}, VP_MODE_NORMAL}, + {"scrollright", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_RIGHT | VP_SCROLL_UNIT_LINE}, VP_MODE_NORMAL}, + {"scrollup", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_TOP | VP_SCROLL_UNIT_LINE}, VP_MODE_NORMAL}, + {"scrolldown", command_scroll, {VP_SCROLL_TYPE_SCROLL | VP_SCROLL_DIRECTION_DOWN | VP_SCROLL_UNIT_LINE}, VP_MODE_NORMAL}, + {"nmap", command_map, {VP_MODE_NORMAL}, VP_MODE_NORMAL}, + {"imap", command_map, {VP_MODE_INSERT}, VP_MODE_NORMAL}, + {"cmap", command_map, {VP_MODE_COMMAND}, VP_MODE_NORMAL}, + {"hmap", command_map, {VP_MODE_HINTING}, VP_MODE_NORMAL}, + {"nunmap", command_unmap, {VP_MODE_NORMAL}, VP_MODE_NORMAL}, + {"iunmap", command_unmap, {VP_MODE_INSERT}, VP_MODE_NORMAL}, + {"cunmap", command_unmap, {VP_MODE_COMMAND}, VP_MODE_NORMAL}, + {"hunmap", command_unmap, {VP_MODE_HINTING}, VP_MODE_NORMAL}, + {"set", command_set, {0}, VP_MODE_NORMAL}, + {"complete", command_complete, {0}, VP_MODE_COMMAND | VP_MODE_COMPLETE}, + {"complete-back", command_complete, {1}, VP_MODE_COMMAND | VP_MODE_COMPLETE}, + {"inspect", command_inspect, {0}, VP_MODE_NORMAL}, + {"hint-link", command_hints, {HINTS_MODE_LINK, "."}, VP_MODE_HINTING}, + {"hint-link-new", command_hints, {HINTS_MODE_LINK_NEW, ","}, VP_MODE_HINTING}, + {"hint-focus-next", command_hints_focus, {0}, VP_MODE_HINTING}, + {"hint-focus-prev", command_hints_focus, {1}, VP_MODE_HINTING}, }; static void command_write_input(const gchar* str); diff --git a/src/hints.c b/src/hints.c index ea4f58b..818d654 100644 --- a/src/hints.c +++ b/src/hints.c @@ -342,8 +342,8 @@ static void hints_fire(const gulong num) webkit_dom_element_remove_attribute(hint->elem, "target"); } - /* remove the hint filter input */ - vp_clean_input(); + /* remove the hint filter input and witch to normal mode */ + vp_set_mode(VP_MODE_NORMAL, TRUE); } hints_clear(); } -- 2.20.1