From d525a804e5e7c1394835b0baf2d0b53cd28b5b16 Mon Sep 17 00:00:00 2001 From: Jonathan Cairns Date: Tue, 13 Nov 2012 23:08:40 +0000 Subject: [PATCH] Visual eval key command moved to keymapping dictionary This is now user configurable --- plugin/python/vdebug/util.py | 2 +- plugin/vdebug.vim | 11 ++++++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/plugin/python/vdebug/util.py b/plugin/python/vdebug/util.py index ca947db8..96114174 100644 --- a/plugin/python/vdebug/util.py +++ b/plugin/python/vdebug/util.py @@ -8,7 +8,7 @@ class Keymapper: """Map and unmap key commands for the Vim user interface. """ - exclude = ["run","set_breakpoint"] + exclude = ["run","set_breakpoint","eval_visual"] def __init__(self): self.keymaps = vim.eval("g:vdebug_keymap") diff --git a/plugin/vdebug.vim b/plugin/vdebug.vim index 1fa716d9..a939c013 100644 --- a/plugin/vdebug.vim +++ b/plugin/vdebug.vim @@ -60,6 +60,7 @@ let g:vdebug_keymap_defaults = { \ "set_breakpoint" : "", \ "get_context" : "", \ "eval_under_cursor" : "", +\ "eval_visual" : "e" \} let g:vdebug_options_defaults = { @@ -80,6 +81,7 @@ let g:vdebug_options_defaults = { \ "continuous_mode" : 0 \} +" Different symbols for non unicode Vims if has('multi_byte') == 0 let g:vdebug_options_defaults["marker_default"] = '*' let g:vdebug_options_defaults["marker_closed_tree"] = '+' @@ -90,22 +92,25 @@ let g:vdebug_options = extend(g:vdebug_options_defaults,g:vdebug_options) let g:vdebug_keymap = extend(g:vdebug_keymap_defaults,g:vdebug_keymap) let g:vdebug_leader_key = "" +" Create the top dog python debugger = DebuggerInterface() +" Mappings allowed in non-debug mode exe "map ".g:vdebug_keymap["run"]." :python debugger.run()" exe "map ".g:vdebug_keymap["set_breakpoint"]." :python debugger.set_breakpoint()" -vnoremap e :python debugger.handle_visual_eval() +" Exceptional case for visual evaluation +exe "vnoremap ".g:vdebug_keymap["eval_visual"]." :python debugger.handle_visual_eval()" +" Commands command! -nargs=? Breakpoint python debugger.set_breakpoint() command! -nargs=? BreakpointRemove python debugger.remove_breakpoint() command! BreakpointWindow python debugger.toggle_breakpoint_window() - command! -nargs=? VdebugEval python debugger.handle_eval() +" Signs and highlighted lines for breakpoints, etc. sign define current text=-> texthl=DbgCurrent linehl=DbgCurrent sign define breakpt text=B> texthl=DbgBreakPt linehl=DbgBreakPt - hi DbgCurrent term=reverse ctermfg=White ctermbg=Red gui=reverse hi DbgBreakPt term=reverse ctermfg=White ctermbg=Green gui=reverse