diff runtime/doc/debugger.txt @ 7:3fc0f57ecb91 v7.0001

updated for version 7.0001
author vimboss
date Sun, 13 Jun 2004 20:20:40 +0000
parents
children 2f5a3b881ada
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/runtime/doc/debugger.txt
@@ -0,0 +1,135 @@
+*debugger.txt*  For Vim version 7.0aa.  Last change: 2001 Dec 22
+
+
+		  VIM REFERENCE MANUAL    by Gordon Prieur
+
+
+Debugger Support Features				*debugger-support*
+
+1. Debugger Features		|debugger-features|
+2. Vim Compile Options		|debugger-compilation|
+3. Integrated Debuggers		|debugger-integration|
+
+{Vi does not have any of these features}
+
+==============================================================================
+1. Debugger Features					*debugger-features*
+
+The following features are available for an integration with a debugger or
+an Integrated Programming Environment (IPE) or Integrated Development
+Environment (IDE):
+
+	Alternate Command Input				|alt-input|
+	Debug Signs					|debug-signs|
+	Debug Source Highlight				|debug-highlight|
+	Message Footer					|gui-footer|
+	Balloon Evaluation				|balloon-eval|
+
+These features were added specifically for use in the Motif version of gvim.
+However, the |alt-input| and |debug-highlight| were written to be usable in
+both vim and gvim. Some of the other features could be used in the non-GUI
+vim with slight modifications. However, I did not do this nor did I test the
+reliability of building for vim or non Motif GUI versions.
+
+
+1.1 Alternate Command Input				*alt-input*
+
+For Vim to work with a debugger there must be at least an input connection
+with a debugger or external tool. In many cases there will also be an output
+connection but this isn't absolutely necessary.
+
+The purpose of the input connection is to let the external debugger send
+commands to Vim. The commands sent by the debugger should give the debugger
+enough control to display the current debug environment and state.
+
+The current implementation is based on the X Toolkit dispatch loop and the
+XtAddInput() function call.
+
+
+1.2 Debug Signs						*debug-signs*
+
+Many debuggers mark specific lines by placing a small sign or color highlight
+on the line. The |:sign| command lets the debugger set this graphic mark. Some
+examples where this feature would be used would be a debugger showing an arrow
+representing the Program Counter (PC) of the program being debugged. Another
+example would be a small stop sign for a line with a breakpoint. These visible
+highlights let the user keep track of certain parts of the state of the
+debugger.
+
+This feature can be used with more than debuggers, too. An IPE can use a sign
+to highlight build errors, searched text, or other things. The sign feature
+can also work together with the |debug-highlight| to ensure the mark is
+highly visible.
+
+Debug signs are defined and placed using the |:sign| command.
+
+
+1.3 Debug Source Highlight				*debug-highlight*
+
+This feature allows a line to have a predominant highlight. The highlight is
+intended to make a specific line stand out. The highlight could be made to
+work for both vim and gvim, whereas the debug sign is, in most cases, limited
+to gvim. The one exception to this is Sun Microsystem's dtterm. The dtterm
+from Sun has a "sign gutter" for showing signs.
+
+
+1.4 Message Footer					*gui-footer*
+
+The message footer can be used to display messages from a debugger or IPE. It
+can also be used to display menu and toolbar tips. The footer area is at the
+bottom of the GUI window, below the line used to display colon commands.
+
+The display of the footer is controlled by the 'guioptions' letter 'F'.
+
+
+1.5 Balloon Evaluation					*balloon-eval*
+
+This feature allows a debugger, or other external tool, to display dynamic
+information based on where the mouse is pointing. The purpose of this feature
+was to allow Sun's Visual WorkShop debugger to display expression evaluations.
+However, the feature was implemented in as general a manner as possible and
+could be used for displaying other information as well.
+
+The Balloon Evaluation has some settable parameters too.  The font list and
+colors can be set via X resources (XmNballoonEvalFontList,
+XmNballoonEvalBackground, and XmNballoonEvalForeground).
+The 'balloondelay' option sets the delay before an attempt is made to show a
+balloon.
+The 'ballooneval' option needs to be set to switch it on.
+
+Balloon evaluation is only available when compiled with the |+balloon_eval|
+and |+sun_workshop| features.
+
+The Balloon evaluation functions are also used to show a tooltip for the
+toolbar.  The 'ballooneval' option does not need to be set for this.  But the
+other settings apply.
+
+==============================================================================
+2. Vim Compile Options					*debugger-compilation*
+
+The debugger features were added explicitly for use with Sun's Visual
+WorkShop Integrated Programming Environment (ipe). However, they were done
+in as generic a manner as possible so that integration with other debuggers
+could also use some or all of the tools used with Sun's ipe.
+
+The following compile time preprocessor variables control the features:
+
+    Alternate Command Input			ALT_X_INPUT
+    Debug Glyphs				FEAT_SIGNS
+    Debug Highlights				FEAT_SIGNS
+    Message Footer				FEAT_FOOTER
+    Balloon Evaluation				FEAT_BEVAL
+
+The first integration with a full IPE/IDE was with Sun Visual WorkShop. To
+compile a gvim which interfaces with VWS set the following flag, which sets
+all the above flags:
+
+    Sun Visual WorkShop				FEAT_SUN_WORKSHOP
+
+==============================================================================
+3. Integrated Debuggers					*debugger-integration*
+
+Currently the only fully integrated debugger/IPE/IDE is Sun's Visual WorkShop
+Integrated Programming Environment.
+
+ vim:tw=78:sw=4:ts=8:ft=help:norl: