[pywin32-bugs] [ pywin32-Patches-1446700 ] 4 (+1) Patches to speed up edit-help-debug-run-cycle
OLD project page for the Python extensions for Windows
Brought to you by:
mhammond
From: SourceForge.net <no...@so...> - 2007-01-03 14:19:08
|
Patches item #1446700, was opened at 2006-03-09 20:32 Message generated for change (Comment added) made by kxroberto You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=551956&aid=1446700&group_id=78018 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: kxroberto (kxroberto) Assigned to: Nobody/Anonymous (nobody) Summary: 4 (+1) Patches to speed up edit-help-debug-run-cycle Initial Comment: Patches: 4 (+1) Patches to speed up the edit-help-debug-run-cycle significantly ================================ pywin.framework.interact : * Ctrl-RETURN in interactive window executes the command directly in debugger ( very nice to speedup edit-run-cycle 2x; don't know how to live without; very helpful also to enter quickly into source code of imported modules ) pywin.scintilla.view : * Ctrl-E : "Execute region" : runs code snippet (auto-unindented), which is marked currently in editor, in interactive namespace ( very nice to speedup edit-run-cycle 2x; don't know how to live without; ) ( similar to Python mode in XEmacs: "Execute Region" ) ( executes currently in __main__.__dict__ ; to be consistent during debugging the current interp-namespace should be used; found no easy link to get this namespace ) * Ctrl-Y : context senitive Python help for smartly guessed words/funcs around cursor in "c:/python23/Doc/Python23.chm" ( is hardwired as of now :-( . should take the CHM-location out of registry ) ( should be put to Ctrl-F1 and maybe to a framework module; Don't know how to bind keys like Ctrl-F1 ) * Ctrl-Q : context senitive PythonWin help for smartly guessed words/funcs around cursor parallel in hf= "c:/python23/lib/site-packages/pywin32.chm" and hf=r"C:\Programme\Microsoft Visual Studio\MSDN98\98VSa\1033\msdnvs6a.col" (hard wiring still to be virtualized; ) ( win32help.HtmlHelp doesn't raise if file non-existing, but returns 0; not checked/no error action as of now ) pywin.mfc.docview , pywin.framework.intpyapp : * repairs the fatal call from pywin.mfc.docview.DocTemplate._SetupSharedMenu_ into a framework module ( that problem crashed py2exe'd apps without Pythonwin framework, but which use the DocTemplate ) ================= apply: cd C:/python23/lib/site-packages/pythonwin/pywin patch -b -p 4 <pywrk.diff created with: diff -ur . /iBase/python/pywin-framework-patched-files >pywrk.diff ---------------------------------------------------------------------- >Comment By: kxroberto (kxroberto) Date: 2007-01-03 15:19 Message: Logged In: YES user_id=972995 Originator: YES pywin32_rkdev2.patch is updated & more clean. It loads the help files already as configured in the registry etc. The "Ctrl-RETURN debugger" (from interactive statement), and the "execute region" functions are more stable and clear now. Still not done are the keybindings for Ctrl-F1/Ctrl-Shift-F1 .. - as I have difficulties to figure out how to get this. Feature Request: Maybe there could be a new * Menu\\Interactive which has the * Menu\\Interactive\\History Back\tCtrl-Up * Menu\\Interactive\\History Forward\tCtrl-Down * Menu\\Interactive\\Debug Statement\tCtrl-RETURN * Menu\\Interactive\\--- * Menu\\Interactive\\Execute Marked Code Region/Line\tCtrl-E * Menu\\Interactive\\Interact Marked Code Region/Line\tCtrl-K and * Menu\\Help\\Python Manuals\tF1 * Menu\\Help\\PythonWin Reference\tShift-F1 * Menu\\Help\\Context Help Python\tCtrl-F1 * Menu\\Help\\Context Help PythonWin\tCtrl-Shift-F1 (mostly in order to announce the key bindings comfortably.) PS: And a strange frequent framework bug (around "SCIMarkerDeleteAll") is addressed though I don't know why "getattr(self.GetEditorView(),'SCIMarkerDeleteAll',None)" can at all return a None - but it actually did so. File Added: pywin32_rkdev2.patch ---------------------------------------------------------------------- Comment By: Mark Hammond (mhammond) Date: 2006-03-22 23:28 Message: Logged In: YES user_id=14198 OK, thanks. I'll try and get back to this - I obviously have a lot on my plate though, and getting this ready to check in isn't going to be an insignificant amount of time. ---------------------------------------------------------------------- Comment By: kxroberto (kxroberto) Date: 2006-03-22 12:59 Message: Logged In: YES user_id=972995 I'll probably not enhance the patch myself. The main remaining difficulties are to get the right key bindings (Ctrl-F1/Ctrl-Shitf-F1 ..) work and for Ctrl-ENTER-debug to get the virtual interactive globals from somewhere. I didn't grasp the required concepts in reasonable time. ======== Ctrl-Shift-Enter : also acceptable - but pressing [Ctrl]+[Enter] for '\'+'n' - thats a habit or :-) ========= help files from registry: found its just 2 lines: import regutil hf = regutil.GetRegisteredHelpFile("Main Python Documentation") import regutil hf = regutil.GetRegisteredHelpFile("Pythonwin Reference") ========== launching 2 helpfiles Pywin & MSDN in a row: thats maybe not a regular behavior, just practical for me: I often need to lookup the windows constants and other basics in parallel, as they are not in the pywin CHM. For a streamlined pythonwin: Maybe just drop the call to MSDN helpfile - or later a more expensive solution: menu item "Menu/help/Context sensitive help .." to add/see user definable key+helpfile pairs. ---------------------------------------------------------------------- Comment By: Mark Hammond (mhammond) Date: 2006-03-22 11:00 Message: Logged In: YES user_id=14198 Interesting - this has potential! :) * I'm not that keen on adopting Ctrl+Enter - that is what I personally use for 'insert \n into code' - how about Ctrl+Shift+Enter * OnKeyCtrlE - print statements should be removed, but a nice concept! * hf="c:/python23/Doc/Python23.chm" etc - as you say, "hard wiring still to be virtualized" - please do! :) The block: + else: + hf=r"C:\Programme\Microsoft Visual Studio\MSDN98\98VSa\1033\msdnvs6a.col" + win32help.HtmlHelp(0, hf, win32help.HH_DISPLAY_INDEX, word) + hf= "c:/python23/lib/site-packages/pywin32.chm" + win32help.HtmlHelp(0, hf, win32help.HH_DISPLAY_INDEX, word) doesn't look right as it calls HtmlHelp twice. It would be great to work out how to do that help properly! * re "repairs the fatal call from pywin.mfc.docview.DocTemplate._SetupSharedMenu_" - can you be more specific about the problem you see? I'm not that happy with that patch - a patch that just changes all refernces to _SetupSharedMenu, rather than "injecting" it, would be preferred. I'm happy to see the interest, and hope you can update your patch! Just the .diff file is fine (.patch is my preference, but either is fine :) - no need to .zip, nor to attach the modified files. Cheers, Mark ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=551956&aid=1446700&group_id=78018 |