1. 13 Sep, 2019 1 commit
    • Gemini Lasswell's avatar
      Improve print output options commands in backtrace-mode (bug#36566) · 2093395d
      Gemini Lasswell authored
      * lisp/emacs-lisp/backtrace.el (backtrace-view): Mention
      :print-gensym in docstring.
      (backtrace-mode-map): Add keyboard binding for
      backtrace-toggle-print-gensym.  Add menu entries for
      backtrace-toggle-print-circle and backtrace-toggle-print-gensym.
      (backtrace--with-output-variables): Bind print-gensym with value
      of :print-gensym found in view plist.
      (backtrace-toggle-print-circle): Remove description of
      implementation details from docstring.
      (backtrace-toggle-print-gensym): New command.
      (backtrace--toggle-feature): Add echo area message describing result
      of command.
      
      * test/lisp/emacs-lisp/backtrace-tests.el
      (backtrace-tests--print-circle): New test.
      
      * doc/lispref/debugging.texi (Backtraces): Document keyboard
      binding for backtrace-toggle-print-gensym.
      2093395d
  2. 03 Aug, 2019 2 commits
  3. 01 Jan, 2019 1 commit
  4. 28 Aug, 2018 1 commit
  5. 03 Aug, 2018 5 commits
    • Gemini Lasswell's avatar
      Fix some documentation formatting nits · 95b2ab3d
      Gemini Lasswell authored
      * doc/misc/ert.texi (Running Tests Interactively): Correct
      Elisp manual titile in xref.
      * doc/lispref/edebug.texi (Edebug Misc): Use single argument
      form of xref.
      * doc/lispref/debugging.texi (Backtraces): Add comma and
      period after xref braces.
      (Backtraces): Correct Emacs manual title.
      (Internals of Debugger): Add a space before period.
      95b2ab3d
    • Gemini Lasswell's avatar
      Move 'backtrace' from subr.el to backtrace.el · 83af893f
      Gemini Lasswell authored
      * lisp/subr.el (backtrace, backtrace--print-frame): Remove functions.
      * lisp/emacs-lisp/backtrace.el (backtrace-backtrace): Remove function.
      (backtrace): New function.
      (backtrace-to-string): Make argument optional.
      * doc/lispref/debugging.texi (Internals of Debugger): Update
      description of 'backtrace' function.
      83af893f
    • Gemini Lasswell's avatar
      Add new command to expand all "..."s in a backtrace frame · a3ba34ae
      Gemini Lasswell authored
      * doc/lispref/debugging.texi (Backtraces): Document new keybinding.
      * lisp/emacs-lisp/backtrace.el (backtrace-line-length): Add the
      option of unlimited line length.
      (backtrace--match-ellipsis-in-string): Add a comment to explain
      why this function is necessary.
      (backtrace-mode-map): Add keybinding for 'backtrace-expand-ellipses'.
      (backtrace-expand-ellipsis): Use 'cl-print-to-string-with-limit'.
      (backtrace-expand-ellipses): New command.
      (backtrace-print-to-string): Use 'cl-print-to-string-with-limit'.
      Tag the printed forms with a gensym instead of the values of
      print-length and print-level.
      (backtrace--print): Add 'stream' argument.
      * test/lisp/emacs-lisp/backtrace-tests.el
      (backtrace-tests--expand-ellipsis): Make the test less dependent
      on the implementation.
      (backtrace-tests--expand-ellipses): New test.
      
      Move the fitting of a printed representation into a limited number of
      characters using appropriate values of print-level and print-length
      from 'backtrace-print-to-string' to cl-print.el for future use by
      other parts of Emacs.
      * lisp/emacs-lisp/cl-print.el (cl-print-to-string-with-limit): New
      function.
      * test/lisp/emacs-lisp/cl-print-tests.el
      (cl-print-tests-print-to-string-with-limit): New test.
      a3ba34ae
    • Gemini Lasswell's avatar
      Change keybinding for backtrace-collapse from '=' to '-' · 2ede75c4
      Gemini Lasswell authored
      '+' and '-' make a more intuitive pair of keybindings for
      backtrace-pretty-print and backtrace-collapse than '+' and '='.
      * lisp/emacs-lisp/backtrace.el (backtrace-mode-map):
      * doc/lispref/debugging.texi (Backtraces): Change
      keybinding for backtrace-collapse.
      2ede75c4
    • Gemini Lasswell's avatar
      Add backtrace-mode and use it in the debugger, ERT and Edebug · e09120d6
      Gemini Lasswell authored
      * doc/lispref/debugging.texi (Using Debugger): Remove explanation of
      backtrace buffer.  Refer to new node.
      (Backtraces): New node.
      (Debugger Commands): Refer to new node.  Remove 'v'.
      * doc/lispref/edebug.texi (Edebug Misc): Refer to new node.
      * doc/misc/ert.texi (Running Tests Interactively): Refer to new node.
      
      * lisp/emacs-lisp-backtrace.el: New file.
      * test/lisp/emacs-lisp/backtrace-tests.el: New file.
      
      * lisp/emacs-lisp/debug.el: (debugger-buffer-state): New cl-defstruct.
      (debugger--restore-buffer-state): New function.
      (debug): Use a debugger-buffer-state object to save and restore buffer
      state.  Fix bug#15749 by leaving an unused buffer in debugger-mode,
      empty, instead of in fundamental-mode, and then when reusing a buffer,
      not calling debugger-mode if the buffer is already in debugger-mode.
      (debugger-insert-backtrace): Remove.
      (debugger-setup-buffer): Use backtrace-mode.
      (debugger--insert-header): New function.
      (debugger-continue, debugger-return-value): Change check for flags to
      use backtrace-frames.
      (debugger-frame-number): Determine backtrace frame number from
      backtrace-frames.
      (debugger--locals-visible-p, debugger--insert-locals)
      (debugger--show-locals, debugger--hide-locals)
      (debugger-toggle-locals): Remove.
      (debugger-mode-map): Make a child of backtrace-mode-map.  Move
      navigation commands to backtrace-mode-map.  Bind 'q' to debugger-quit
      instead of top-level.  Make Help Follow menu item call
      backtrace-help-follow-symbol.
      (debugger-mode): Derive from backtrace-mode.
      (debug-help-follow): Remove.  Move body of this function to
      'backtrace-help-follow-symbol' in backtrace.el.
      (debugger-quit): New function.
      
      * lisp/emacs-lisp/edebug.el (edebug-unwrap-results): Remove warning
      in docstring about circular results.
      (edebug-unwrap): Use pcase.
      (edebug-unwrap1): New function to unwrap circular objects.
      (edebug-unwrap*): Use it.
      (edebug--frame): New cl-defstruct.
      (edebug-backtrace): Call the buffer *Edebug Backtrace* and use
      backtrace-mode.  Get the frames from edebug--backtrace-frames.
      (edebug--backtrace-frames, edebug--unwrap-and-add-info)
      (edebug--symbol-not-prefixed-p): New functions.
      
      * lisp/emacs-lisp/lisp-mode.el
      (lisp-el-font-lock-keywords-for-backtraces)
      (lisp-el-font-lock-keywords-for-backtraces-1)
      (lisp-el-font-lock-keywords-for-backtraces-2): New constants.
      
      * lisp/emacs-lisp/ert.el (ert--print-backtrace): Remove.
      (ert--run-test-debugger): Use backtrace-get-frames.
      (ert-run-tests-batch): Use backtrace-to-string.
      (ert-results-pop-to-backtrace-for-test-at-point): Use backtrace-mode.
      (ert--insert-backtrace-header): New function.
      
      * tests/lisp/emacs-lisp/ert-tests.el (ert-test--which-file):
      Use backtrace-frame slot accessor.
      e09120d6
  6. 07 Jul, 2018 1 commit
    • Eli Zaretskii's avatar
      Improve indexing of 'eval-defun' in ELisp manual · fdd7e7d8
      Eli Zaretskii authored
      * doc/lispref/display.texi (Defining Faces):
      * doc/lispref/debugging.texi (Explicit Debug):
      * doc/lispref/customize.texi (Variable Definitions):
      * doc/lispref/variables.texi (Defining Variables): Add index
      entries for 'eval-defun'.  (Bug#32066)
      fdd7e7d8
  7. 17 Feb, 2018 2 commits
    • Eli Zaretskii's avatar
      Improve documentation of Profiling features · d8917eba
      Eli Zaretskii authored
      * doc/lispref/debugging.texi (Profiling): Improve the description
      of elp.el.  Improve wording of the rest of the section.  (Bug#30491)
      
      * lisp/emacs-lisp/elp.el (elp-instrument-list): Make the
      interactive invocation work.  Doc fix.
      d8917eba
    • Eli Zaretskii's avatar
      Improve indexing of "performance" in ELisp manual · b228839a
      Eli Zaretskii authored
      * doc/lispref/debugging.texi (Profiling):
      * doc/lispref/edebug.texi (Coverage Testing): Improve indexing of
      features useful for performance analysis.  (Bug#30490)
      b228839a
  8. 31 Jan, 2018 1 commit
  9. 28 Jan, 2018 1 commit
    • Martin Rudalics's avatar
      Fix some issues in the emacs/lispref manuals · 8d450008
      Martin Rudalics authored
      * doc/emacs/basic.texi (Continuation Lines):
      * doc/emacs/building.texi (GDB User Interface Layout):
      * doc/emacs/dired.texi (Misc Dired Features):
      * doc/emacs/maintaining.texi (Identifier Search):
      * doc/emacs/mark.texi (Using Region):
      * doc/emacs/misc.texi (Document View, DocView Conversion):
      * doc/emacs/modes.texi (Major Modes):
      * doc/emacs/mule.texi (Input Methods, Unibyte Mode):
      * doc/emacs/sending.texi (Mail Methods): Replace @code by
      @kbd.
      * doc/emacs/frames.texi (Text-Only Mouse):
      * doc/lispref/maps.texi (Standard Keymaps): Replace @kbd by
      @key.
      * doc/lispref/compile.texi (Compiler Errors): Write
      non-@code{nil} instead of non-nil.
      * doc/lispref/debugging.texi (Internals of Debugger):
      'backtrace' is not a command.  'debugger-stack-frame-as-list'
      is an option.
      * doc/lispref/display.texi (Size of Displayed Text):
      'window-lines-pixel-dimensions' has a last argument 'left'.
      * doc/lispref/display.texi (Attribute Functions):
      'set-face-underline' and 'set-face-inverse-video' are
      commands.
      (Tooltips): 'tooltip-frame-parameters' is an option.
      (Bidirectional Display): 'bidi-paragraph-direction' is an
      option.
      * doc/lispref/frames.texi (Cursor Parameters): 'cursor-type'
      is an option.
      (Input Focus): Argument FRAME of 'x-focus-frame' is not
      optional.
      (Child Frames): Both arguments of 'frame-ancestor-p' are
      non-optional.  'iconify-child-frame' is an option.
      * doc/lispref/os.texi (Killing Emacs):
      'kill-emacs-query-functions' is an option.
      * doc/lispref/windows.texi (Mouse Window Auto-selection):
      'mouse-autoselect-window' is an option.
      8d450008
  10. 15 Jan, 2018 1 commit
  11. 13 Jan, 2018 1 commit
  12. 01 Jan, 2018 1 commit
  13. 10 Oct, 2017 1 commit
  14. 01 Jan, 2017 1 commit
  15. 12 Dec, 2016 1 commit
    • Clément Pit--Claudel's avatar
      Move backtrace to ELisp using a new mapbacktrace primitive · 27cada03
      Clément Pit--Claudel authored
      * src/eval.c (get_backtrace_starting_at, backtrace_frame_apply)
      (Fmapbacktrace, Fbacktrace_frame_internal): New functions.
      (get_backtrace_frame, Fbacktrace_debug): Use `get_backtrace_starting_at'.
      
      * lisp/subr.el (backtrace--print-frame): New function.
      (backtrace): Reimplement using `backtrace--print-frame' and `mapbacktrace'.
      (backtrace-frame): Reimplement using `backtrace-frame--internal'.
      
      * lisp/emacs-lisp/debug.el (debugger-setup-buffer): Pass a base to
      `mapbacktrace' instead of searching for "(debug" in the output of
      `backtrace'.
      
      * test/lisp/subr-tests.el (subr-test-backtrace-simple-tests)
      (subr-test-backtrace-integration-test): New tests.
      
      * doc/lispref/debugging.texi (Internals of Debugger): Document
      `mapbacktrace' and missing argument BASE of `backtrace-frame'.
      27cada03
  16. 03 Dec, 2016 1 commit
    • Noam Postavsky's avatar
      Document watchpoints · 56c81783
      Noam Postavsky authored
      * doc/lispref/debugging.texi (Variable Debugging):
      * doc/lispref/variables.texi (Watching Variables): New section.
      * etc/NEWS: Add entry for watchpoints
      56c81783
  17. 22 Oct, 2016 1 commit
  18. 04 Oct, 2016 1 commit
    • Philippe Vaucher's avatar
      Restore 'command-debug-status' functionality · f2144eef
      Philippe Vaucher authored
      * src/callint.c (Fcall_interactively): Bind command-debug-status
      to nil.  This restores functionality inadvertently removed in
      Emacs 25.1.  (Bug#24555)
      
      * lisp/subr.el (command-debug-status): Declare obsolete.
      
      * doc/lispref/debugging.texi (Internals of Debugger): Document
      that 'command-debug-status' is obsolete.
      f2144eef
  19. 30 Sep, 2016 1 commit
    • Vasilij Schneidermann's avatar
      New user option 'debugger-stack-frame-as-list' · d1890a3a
      Vasilij Schneidermann authored
      * src/eval.c (syms_of_eval) <debugger-stack-frame-as-list>: New
      variable.
      * lisp/cus-start.el (standard): Add debugger-stack-frame-as-list.
      * lisp/emacs-lisp/debug.el (debugger-setup-buffer): Adjust
      backtrace processing for the value of debugger-stack-frame-as-list.
      * lisp/emacs-lisp/edebug.el (edebug-backtrace): Adjust backtrace
      processing for the value of debugger-stack-frame-as-list.
      * doc/lispref/debugging.texi (Internals of Debugger): Document
      debugger-stack-frame-as-list.
      * etc/NEWS: Mention 'debugger-stack-frame-as-list'.
      d1890a3a
  20. 29 Jul, 2016 1 commit
  21. 01 Feb, 2016 1 commit
    • Martin Rudalics's avatar
      Some corrections in Elisp manual · e639e10a
      Martin Rudalics authored
      * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
      argument POSITION.
      * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
      is an option.
      * doc/lispref/display.texi (Refresh Screen): Describe optional
      argument FRAME of `redraw-frame'.
      (Attribute Functions): Describe optional argument CHARACTER of
      `face-font'.
      (Defining Images): `image-load-path' is an option.
      (Beeping): `ring-bell-function' is an option.
      * doc/lispref/frames.texi (Size and Position): The PIXELWISE
      argument of `set-frame-size' is optional.
      (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
      is optional.
      * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
      `set-transient-map'.
      * doc/lispref/minibuf.texi (Text from Minibuffer):
      `read-regexp-defaults-function' is an option.
      (Minibuffer Contents): `delete-minibuffer-contents' is a command.
      * doc/lispref/modes.texi (Mode Line Variables):
      `mode-line-position' and `mode-line-modes' are variables, not
      options.
      * doc/lispref/strings.texi (Creating Strings): The START argument
      of `substring' is optional.
      * doc/lispref/text.texi (Buffer Contents): Describe optional
      argument NO-PROPERTIES of `thing-at-point'.
      (User-Level Deletion): Both arguments of
      `delete-trailing-whitespace' are optional.
      (Margins): Use @key{RET} instead of @kbd{RET}.
      * doc/lispref/windows.texi (Display Action Functions): Write
      non-@code{nil} instead of non-nil.
      (Choosing Window Options): The WINDOW arg of
      `split-window-sensibly' is optional.
      (Choosing Window Options): Write non-@code{nil} instead of
      non-nil.
      (Window Start and End): Both args of `window-group-end' are
      optional.
      
      * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
      to POSITION to keep consisteny with doc-string.
      e639e10a
  22. 01 Jan, 2016 1 commit
  23. 15 Sep, 2015 1 commit
    • Paul Eggert's avatar
      Quote less in manuals · ef7dbdf5
      Paul Eggert authored
      The manuals often used quotes ``...'' when it is better to use @dfn or
      @code or capitalized words or no quoting at all.  For example, there is
      no need for the `` and '' in “if a variable has one effect for
      @code{nil} values and another effect for ``non-@code{nil}'' values”.
      Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
      unnecessary quoting like this, and to use @dfn etc. instead when called
      for (Bug#21472).
      ef7dbdf5
  24. 16 May, 2015 1 commit
  25. 01 Jan, 2015 2 commits
  26. 23 Dec, 2014 1 commit
    • Eli Zaretskii's avatar
      Improve indexing on the chapter/section/subsection levels. · 20cfd248
      Eli Zaretskii authored
       doc/lispref/windows.texi (Recombining Windows): Index subject of sections.
       doc/lispref/variables.texi (Variables with Restricted Values)
       (Generalized Variables): Index subject of sections.
       doc/lispref/text.texi (Buffer Contents, Examining Properties)
       (Changing Properties, Property Search, Substitution): Index
       subject of sections.
       doc/lispref/syntax.texi (Motion and Syntax, Parsing Expressions)
       (Motion via Parsing, Position Parse, Control Parsing): Index
       subject of sections.
       doc/lispref/strings.texi (Predicates for Strings, Creating Strings)
       (Modifying Strings, Text Comparison): Index subject of sections.
       doc/lispref/searching.texi (Syntax of Regexps, Regexp Special)
       (Regexp Functions, Regexp Functions): Index subject of sections.
       doc/lispref/processes.texi (Subprocess Creation, Process Information): Index
       subject of sections.
       doc/lispref/positions.texi (Screen Lines): Index subject of sections.
       doc/lispref/nonascii.texi (Scanning Charsets, Specifying Coding Systems):
       Index subject of sections.
       doc/lispref/minibuf.texi (Text from Minibuffer, Object from Minibuffer)
       (Multiple Queries, Minibuffer Contents): Index subject of
       sections.
       doc/lispref/markers.texi (Predicates on Markers, Creating Markers)
       (Information from Markers, Moving Markers): Index subject of
       sections.
       doc/lispref/macros.texi (Defining Macros, Problems with Macros): Index
       subject of sections.
       doc/lispref/loading.texi (Loading Non-ASCII, Where Defined): Index subject
       of sections.
       doc/lispref/lists.texi (List-related Predicates, List Variables, Setcar)
       (Setcdr, Plist Access): Index subject of sections.
       doc/lispref/keymaps.texi (Controlling Active Maps, Scanning Keymaps)
       (Modifying Menus): Index subject of sections.
       doc/lispref/help.texi (Accessing Documentation, Help Functions): Index
       subject of sections.
       doc/lispref/hash.texi (Hash Access): Index subject of sections.
       doc/lispref/functions.texi (Core Advising Primitives)
       (Advising Named Functions, Porting old advices): Index subject of
       sections.
       doc/lispref/frames.texi (Creating Frames, Initial Parameters)
       (Position Parameters, Buffer Parameters, Minibuffers and Frames)
       (Pop-Up Menus, Drag and Drop): Index subject of sections.
       doc/lispref/files.texi (Visiting Functions, Kinds of Files)
       (Unique File Names): Index subject of sections.
       doc/lispref/display.texi (Refresh Screen, Echo Area Customization)
       (Warning Variables, Warning Options, Delayed Warnings)
       (Temporary Displays, Managing Overlays, Overlay Properties)
       (Finding Overlays, Size of Displayed Text, Defining Faces)
       (Attribute Functions, Displaying Faces, Face Remapping)
       (Basic Faces, Font Lookup, Fontsets, Replacing Specs)
       (Defining Images, Showing Images): Index subject of sections.
       doc/lispref/debugging.texi (Debugging, Explicit Debug)
       (Invoking the Debugger, Excess Open, Excess Close): Index subject
       of sections.
       doc/lispref/customize.texi (Defining New Types, Applying Customizations)
       (Custom Themes): Index subject of sections.
       doc/lispref/control.texi (Sequencing, Combining Conditions)
       (Processing of Errors, Cleanups): Index subject of sections.
       doc/lispref/compile.texi (Eval During Compile): Index subject of sections.
       doc/lispref/commands.texi (Using Interactive, Distinguish Interactive)
       (Command Loop Info, Classifying Events, Event Mod)
       (Invoking the Input Method): Index subject of sections.
       doc/lispref/buffers.texi (Buffer List, Buffer Gap): Index subject of sections.
       doc/lispref/backups.texi (Making Backups, Numbered Backups, Backup Names)
       (Reverting): Index subject of sections.
       doc/lispref/abbrevs.texi (Abbrev Tables, Defining Abbrevs, Abbrev Files)
       (Abbrev Expansion, Standard Abbrev Tables, Abbrev Properties)
       (Abbrev Table Properties): Index subject of sections.
       doc/lispref/os.texi (Time of Day, Time Conversion, Time Parsing)
       (Time Calculations, Idle Timers): Index subject of sections.
      20cfd248
  27. 08 Jul, 2014 1 commit
  28. 13 Feb, 2014 1 commit
    • Glenn Morris's avatar
      Small doc updates for debugging · 47a73eb0
      Glenn Morris authored
      * doc/lispref/debugging.texi (Debugger Commands): Tiny edits.
      
      * lisp/jit-lock.el (jit-lock-mode): Doc fix.
      
      * etc/NEWS: Related edits.
      47a73eb0
  29. 01 Jan, 2014 1 commit
  30. 22 Dec, 2013 1 commit
  31. 03 Jul, 2013 1 commit
    • Glenn Morris's avatar
      Fix some doc/ cross-references · a944db14
      Glenn Morris authored
      * doc/lispintro/emacs-lisp-intro.texi (edebug):
      * doc/lispref/debugging.texi (Debugging):
      * doc/lispref/files.texi (File Attributes, Changing Files):
      * doc/misc/bovine.texi (top):
      * doc/misc/cc-mode.texi (AWK Mode Font Locking):
      * doc/misc/mh-e.texi (Preface):
      * doc/misc/url.texi (URI Parsing):
      Fix cross-references to other manuals.
      
      * doc/lispref/package.texi (Package Archives): Fix @url call.
      a944db14
  32. 01 Jan, 2013 1 commit
  33. 21 Nov, 2012 1 commit