jaredly / jaredly/vim-debug

[patch] Add support for passing args to the debugged script (python)

Open
#9 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
284
Forks
27
PR merge metrics
No merged PRs in 30d

Description

Example:

:Dbg ". hello world"

Executes the current script with "hello world" as arguments.

Patch supplied:

diff -Naur orig//commands.py new//commands.py

--- orig//commands.py 2011-01-27 13:19:39.366748310 -0300
+++ new//commands.py 2011-01-27 13:17:35.066748310 -0300
@@ -62,7 +62,7 @@
if debugger and debugger.started:
return
if url is not None:
- if url in ('.', '-'):
+ if url[0] in ('.', '-'):
pass
elif url.isdigit():
urls = load_urls()
@@ -81,11 +81,11 @@
debugger.init_vim()
global _commands
_commands = debugger.commands()
- if url == '.':
+ if url[0] == '.':
if not (os.path.exists(fname) and fname.endswith('.py')):
print 'Current file is not python (or doesn\'t exist on your hard drive)'
return
- debugger.start_py(fname)
+ debugger.start_py(fname + url[1:])
elif url == '-':
debugger.start()
else:
diff -Naur orig//new_debugger.py new//new_debugger.py
--- orig//new_debugger.py 2011-01-27 13:19:47.722748309 -0300
+++ new//new_debugger.py 2011-01-27 13:21:15.702748310 -0300
@@ -113,7 +113,7 @@
return self.start()

def start_py(self, fname):
- subprocess.Popen(('pydbgp.py', '-d', 'localhost:9000', fname), stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+ subprocess.Popen(('pydbgp.py', '-d', 'localhost:9000') + tuple(fname.split()), stdout=subprocess.PIPE, stderr=subprocess.PIPE)
self._type = 'python'
return self.start()

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the :Dbg handling in commands.py and the start_py entry point in new_debugger.py, then compare the supplied patch with the current files. Verify the example invocation runs the current Python script with the requested arguments and that the existing debugger behavior remains intact.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
devtools
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.