This project is mirrored from https://gitee.com/mirrors/slime.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
  1. 02 Sep, 2014 3 commits
    • João Távora's avatar
      Tweak sylvester insertion · d2c2bce0
      João Távora authored
      * contrib/sly-mrepl.el (sly-mrepl-new): tweak sylvester insertion.
      (sly-mrepl-random-sylvester): Don't add "art by"
      
      * contrib/sylvesters.txt: Restore original signatures.
      d2c2bce0
    • João Távora's avatar
      Fix buggy sly-mrepl interaction with electric-pair-mode · 1def5f3e
      João Távora authored
      * sly-mrepl.el (sly-mrepl-mode): Set
      `parse-sexp-ignore-comments' to t
      1def5f3e
    • João Távora's avatar
      Add sylvesters · 72d73130
      João Távora authored
      * contrib/sly-mrepl.el (sly-mrepl): Add `sly-mrepl-on-connection' to `sly-connected-hook'
      (sly-mrepl-pop-sylvester): New variable.
      (sly-mrepl-on-connection): Renamed from `sly-mrepl-pop-to-mrepl'. Use `sly-mrepl-pop-sylvester'
      (sly-mrepl-new): Pop a sylvester sometimes.
      (sly-mrepl--sylvesters): New variable.
      (sly-mrepl-random-sylvester): New function.
      72d73130
  2. 01 Sep, 2014 1 commit
    • João Távora's avatar
      Wait for REPL to be setup in REPL-popping operations · a144541e
      João Távora authored
      * sly.el (sly-dispatch-event): Must be %s, not %d.
      
      * contrib/sly-mrepl.el (sly-mrepl--with-repl-for)
      (sly-mrepl--call-with-repl): New macro and helper function.
      (sly-mrepl--eval-for-repl)
      (sly-mrepl-sync-package-and-default-directory): Use
      `sly-mrepl--with-repl-for' macro.
      a144541e
  3. 29 Aug, 2014 1 commit
  4. 28 Aug, 2014 3 commits
    • João Távora's avatar
      Enable copy-to-repl for apropos buttons and other minor hacks · c0ad2715
      João Távora authored
      * sly.el (sly-read-from-minibuffer): Don't allow empty strings
      unless `allow-empty' is passed.
      (sly-read-from-minibuffer-for-swank): Pass `allow-empty' to
      `sly-read-from-minibuffer'.
      (sly-thread-control-mode): Ensure `sly-mode' is enterer.
      (sly-show-description, sly-thread-control-mode): Ensure
      popup-buffer is read-only
      * lib/lisp/swank.lisp (istate>elisp): Don't transmit :SERIAL while
      we don't know what to do with it.
      
      * contrib/sly-mrepl.el (sly-mrepl): Allow returning apropos
      symbols to REPL.
      (sly-mrepl-return): Shoosh warning.
      (sly-apropos-copy-symbol-to-repl): New function.
      c0ad2715
    • João Távora's avatar
      Fix another read bug · 55a55145
      João Távora authored
      * sly-mrepl.el (sly-mrepl-return): Go to end before
      submitting input to read, and don't save it in history.
      55a55145
    • João Távora's avatar
      Fix problems when reading from mREPL · 4c2337a2
      João Távora authored
      * contrib/sly-mrepl.el (sly-mrepl--accept-process-output): New function.
      (sly-mrepl--insert-prompt, :set-read-mode): Use it.
      (sly-mrepl--read-mode): Renamed from
      `sly-mrepl--expect-sexp-mode'
      (:set-read-mode): Unset then reset read-only when reading from
      user. Call `sly-mrepl--catch-up'.
      (sly-mrepl--insert-output, sly-mrepl-return): use
      `sly-mrepl--read-mode'
      4c2337a2
  5. 27 Aug, 2014 1 commit
    • João Távora's avatar
      Use normal `sly-rex' RPC when inspecting objects from MREPL · 28d882cc
      João Távora authored
      Also organize code in contrib/swank-mrepl.lisp
      
      * contrib/sly-mrepl.el (:inspect-object): Removed, replaced by
      usage of a slyfun.
      (sly-mrepl-part): Use `sly-eval-for-inspector'
      
      * contrib/swank-mrepl.lisp (eval-for-mrepl): New SLYFUN. Replaces
      `eval-in-mrepl'.
      (inspect-entry): New SLYFUN. Replaces the :inspect-object channel
      method.
      (:inspect-object): Deleted channel method.
      28d882cc
  6. 26 Aug, 2014 1 commit
  7. 25 Aug, 2014 2 commits
    • João Távora's avatar
      No longer trample REPLs · 657ce053
      João Távora authored
      * sly-mrepl.el (sly-mrepl--teardown): Slightly cleaner teardown.
      657ce053
    • João Távora's avatar
      Bring back compound completion · 6aa5d6af
      João Távora authored
      * NEWS.md: Update.
      
      * sly.el (sly-complete-symbol-function): "Compound style" option
      points to `sly-c-p-c-complete-symbol'
      
      * contrib/sly-fuzzy.el (sly-c-p-c-symbol-completions)
      (sly-c-p-c-char-name-completions, sly-c-p-c-complete-symbol): New function.
      
      * contrib/sly-mrepl.el (sly-mrepl-mode): Pass 1 to `sly-mode'
      6aa5d6af
  8. 23 Aug, 2014 2 commits
    • João Távora's avatar
      Consolidate buffer names · 519b51af
      João Távora authored
      * sly.el (sly-buffer-name): New implementation.
      (sly-compose): New function.
      (sly-process-available-input, sly-net-send): Pass process to
      `sly-log-event'
      (sly-handle-net-read-error): Pass process to `sly-buffer-name'
      (sly-set-connection-info): Commit the final events buffer name
      here.
      (sly-dispatch-event): Pass connection to `sly-buffer-name'
      (sly-log-event): Pass process to `sly-events-buffer'
      (sly-events-buffer): Store the buffer as a process property.
      (sly-list-threads, sly-with-xref-buffer, sly-show-apropos): Pass
      connection to `sly-buffer-name'
      (sldb-get-buffer): Use `sly-buffer-name'
      (sly-update-threads-buffer): Takes new arg `buffer'
      (sly--display-threads): Renamed from `sly-display-threads'
      (sly-inspector-buffer): Pass connectino to `sly-buffer-name'
      (sly-open-inspector): No need to set `sly-buffer-connection' here
      
      * contrib/sly-autodoc.el (sly-autodoc--fontify-string): Adapt to new `sly-buffer-name'
      
      * contrib/sly-mrepl.el (sly-mrepl--buffer-name): Use `sly-buffer-name'
      (sly-mrepl--find-buffer): Find shortest named REPL.
      (sly-mrepl): Pass connection to `sly-mrepl--find-create'
      (sly-mrepl-pop-to-mrepl): No need to call `pop-to-buffer'
      (sly-mrepl-new): Take `connection' and `handle' args. Prompt user
      for REPL nickname.
      
      * contrib/sly-trace-dialog.el (sly-trace-dialog--buffer-name): Use `sly-buffer-name'
      
      * lib/sly-tests.el (sly-inspector-visible-p): Pass connection to `sly-buffer-name'
      519b51af
    • João Távora's avatar
      Fix some sly-trace-dialog bugs and reorganize code · 9b108e16
      João Távora authored
      * sly.el (sly-inspector-mode-map, sldb-mode-map)
      (sly-xref-mode-map): Use `set-keymap-parent' and set
      `button-buffer-map' as the parent.
      
      * contrib/sly-trace-dialog.el (sly-trace-dialog-mode-map): Use
      `set-keymap-parent' and set `button-buffer-map' as the parent.
      (sly-trace-dialog-part, sly-trace-dialog-spec): Don't skip these buttons.
      (sly-trace-dialog--insert-trace): Skip just the "id string" button
      * contrib/swank-trace-dialog.lisp: Reorganized functions.
      (trace-part-or-lose, trace-or-lose): Renamed and reworked from
      FIND-TRACE-PART-OR-LOSE and FIND-TRACE
      9b108e16
  9. 22 Aug, 2014 4 commits
    • João Távora's avatar
      Add output-clearing commands to sly-mrepl · cbe0741a
      João Távora authored
      * contrib/sly-mrepl.el (:clear-repl-history):  New channel method.
      (sly-mrepl--insert-output): Propertize with field.
      (sly-mrepl--assert-mrepl): New helper.
      (sly-mrepl-insert-input): Use `sly-mrepl--assert-mrepl'
      (sly-mrepl-clear-repl, sly-mrepl-clear-recent-output): New
      interactive commands.
      (sly-mrepl--menu): Add new commands to menu.
      
      * contrib/swank-mrepl.lisp (:clear-repl-history): New channel method.
      cbe0741a
    • João Távora's avatar
      29aeb24b
    • João Távora's avatar
      Fix more newline bugs in sly-mrepl · a3d40563
      João Távora authored
      Need unit tests badly.
      
      * sly-mrepl.el (sly-mrepl--insert-output): Don't check for
      `sly-mrepl--busy-p'. Take optional `face' parameter. Use
      `sly-mrepl--break-output-p'
      (sly-mrepl--break-output-p): New function.
      (sly-mrepl--dedicated-stream-output-filter, :write-string): Insert
      output in `sly-mrepl-output-face'
      a3d40563
    • João Távora's avatar
      * sly-mrepl.el (sly-mrepl--insert-prompt): Wait a millisecond on W32 · c6774911
      João Távora authored
      This fixes an apparently buggy `accept-process-output' on Windows
      which sometimes leads to mixed output and return values in the mREPL.
      c6774911
  10. 21 Aug, 2014 1 commit
    • João Távora's avatar
      Polish faces and fix many small bugs · 4862b62a
      João Távora authored
      * sly-autoloads.el (sly-contribs): Default this variable to a list
      with `sly-fancy' as the sole argument.
      
      * sly.el (sly-inspectable-value-face): Removed.
      (define-sldb-faces): Removed unused faces
      (sly-mode-line): Better face inheritance.
      (sly--mode-line-format): Switch connection and package information.
      (sly-message): Protect against message bodies with format
      constructs.
      (sly-minibuffer-respecting-message): Resurrect. Needed by
      sly-fuzzy and sly-c-p-c contribs.
      (sly-apropos-symbol): Better face.
      (sly-apropos-insert-symbol): Better face.
      (sly-xref-face): Removed.
      (sly-xref): Use a proper `sly-part-button'
      (sly-insert-xrefs): Pass more args to `make-text-button'
      (sly-inspector-topline-face, sly-inspector-label-face)
      (sly-inspector-action-face, sly-inspector-type-face): Removed.
      
      * contrib/sly-c-p-c.el (sly-complete-symbol*): Don't call
      `sly-maybe-complete-as-filename'. It has been removed.
      
      * contrib/sly-fuzzy.el (sly-fuzzy): Insinuate into
      `sly-complete-symbol-function' on load.
      
      * contrib/sly-fuzzy.el (sly-fuzzy-insert): Don't error here, it's
      annoying.
      
      * contrib/sly-mrepl.el (sly-mrepl--insert-output): Use a face.
      (sly-mrepl--insert-prompt): Include "> " in the propertized prompt.
      (sly-mrepl-output-face): New face.
      (sly-mrepl-prompt-face): Better face.
      
      * contrib/sly-trace-dialog.el (sly-trace-dialog-part-button): Use a better
      label.
      (sly-trace-dialog--insert-trace): Use the normal face for
      `sly-part' buttons.
      
      * lib/sly-buttons.el (sly-action-face, sly-part-button-face): New faces.
      (sly-action): Use `sly-action-face'
      4862b62a
  11. 20 Aug, 2014 2 commits
  12. 19 Aug, 2014 1 commit
    • João Távora's avatar
      Redesigned mode-line fancyness · 40c64c95
      João Távora authored
      * sly.el (sly-modeline-string): Removed.
      (sly-mode-line): New face
      (sly-mode-line-format): New variable
      (sly--mode-line-format): New function
      (sly-modeline-state-string): Removed.
      (sly-cycle-connections): Handle more cases.
      (sly-dispatch-event): Update modeline more often.
      (sly-selector-methods, sly-selector-other-window, sly-selector)
      (def-sly-selector-method, etc): get rid of sly-selector.
      
      * contrib/sly-autodoc.el (sly-autodoc-mode): Don't clutter
      modeline with "Autodoc"
      
      * contrib/sly-mrepl.el (sly-mrepl-mode): Don't clutter modeline
      with dummy process status.
      (def-sly-selector-method ?m): Removed.
      
      * contrib/sly-scratch.el (sly-scratch): No :on-load section.
      
      * doc/slime.texi (Top): Remove `sly-selector' node.
      (Key bindings): Come up with another example.
      (sly-selector): Delete.
      (Multiple connections): Don't mention `sly-selector'
      40c64c95
  13. 18 Aug, 2014 1 commit
    • João Távora's avatar
      Use `sly-message' instead of `message' everywhere · 0b7b7e96
      João Távora authored
      Other uses of the minibuffer always prefix the message with
      "[sly]"
      
      * sly.el (sly-message): Redone.
      (sly-message-function, sly-background-message-function)
      (sly-background-message): Removed.
      (sly-error): New function.
      0b7b7e96
  14. 17 Aug, 2014 1 commit
  15. 16 Aug, 2014 1 commit
    • João Távora's avatar
      Clean up context menus of some sly-part buttons · b8c58f73
      João Távora authored
      * sly.el (sly-move-to-source-location): Document NOERROR and
      return nil in that case.
      (sly--display-source-location): New optional NOERROR param.
      (sly-xref-mode): Enter sly-mode and make buffer read-only
      (sldb-frame-map): RET bound to `sldb-toggle-details'.
      (sldb-frame-menu-map): Simpler menu.
      (sldb-local-variable-button, sldb-frame-button): Simpler label.
      (sly-inspector-mode-map): Bind D, not d, to
      `sly-inspector-describe-inspectee'
      (sly-inspector-part): Implement `sly-button-describe'
      (sly-inspector-part): Pass `noerror' to
      `sly--display-source-location'
      (sly-inspector-part-button): Simpler label.
      (sly-inspector-describe-inspectee): Add docstring and rename from
      `sly-inspector-describe'
      
      * sly-mrepl.el (sly-mrepl--make-result-button): Simpler button label.
      
      * lib/sly-buttons.el (sly-button-popup-part-menu): Fix label.
      
      * lib/lisp/swank.lisp (describe-inspector-part): New slyfun.
      (pprint-inspector-part): Fix docstring.
      b8c58f73
  16. 15 Aug, 2014 2 commits
    • João Távora's avatar
      Try to improve REPL prompt synchronization · 61424452
      João Távora authored
      * sly-mrepl.el (sly-mrepl--insert-prompt): Helper function for :prompt method.
      (define-channel-method :write-values): Don't `accept-process-output' here.
      (sly-mrepl-return): Do it here.
      61424452
    • João Távora's avatar
      Face tweaks in sly-mrepl and a shortcut to the debugger · 6c5296a2
      João Távora authored
      * contrib/sly-mrepl.el (define-channel-method :prompt): Insert a button to
      the associated debugger.
      (sly-mrepl--prompt-face): Removed.
      (sly-mrepl-prompt-face): Renamed from
      `sly-mrepl-normal-prompt-face'
      (sly-mrepl-errored-prompt-face): Removed.
      6c5296a2
  17. 14 Aug, 2014 5 commits
    • João Távora's avatar
    • João Távora's avatar
      Fix sly-mrepl's freezing/unfreezing logic · 9f2e8088
      João Távora authored
      * contrib/sly-mrepl.el (sly-mrepl-mode): Overlay should be pushed on
      insertion before.
      (sly-mrepl--insert-output): Another case for a "\n" isnertion.
      (sly-mrepl--stacked-errors, :freeze-prompt, :unfreeze-prompt):
      Delete.
      (:prompt): Takes new `error-level' and `condition' args.
      (sly-mrepl--prompt-face): Take `error-level' arg.
      
      * contrib/swank-mrepl.lisp (declass mrepl): New PENDING-ERRORS slot.
      (swank::drop-unprocessed-events): Don't SEND-PROMPT from here.
      (mrepl-eval): Redesigned and simplified (hopefully).
      (mrepl-eval-1): Renamed from MREAD-EVAL-1 (which was a typo)
      9f2e8088
    • João Távora's avatar
      Fixes to the "Copy Call to REPL" interface · 3285e13d
      João Távora authored
      * sly.el (sldb--guess-frame-name): New function.
      (sldb-frame-button): Use it.
      
      * contrib/sly-mrepl.el (define-sly-contrib sly-mrepl): Better keydindings.
      3285e13d
    • João Távora's avatar
      Fix some more contrib issues · 167cfc46
      João Távora authored
      * contrib/sly-fontifying-fu.el (sly-activate-font-lock-magic): Remove
      xemacs branch.
      
      * contrib/sly-mrepl.el (sly-mrepl--copy-objects-to-repl)
      (sly-mrepl-sync-package-and-default-directory)
      (sly-mrepl--insert-output): Simplify.
      
      * lib/sly-buttons.el (sly-part-button-keymap): Don't bind RET
      here.
      
      * lib/lisp/backend/swank-allegro.lisp (frame-restartable-p):
      Remove spurious and useless log.
      167cfc46
    • João Távora's avatar
      Improve "Copy Call to REPL" feature · 94c1e2e4
      João Távora authored
      * sly.el (sly-canonicalized-location, sly-choose-overlay-for-sexp)
      (sly--display-source-location, sly--pop-to-source-location)
      (sly-recompile-locations,sly-recompile-location): Use
      `sly-move-to-source-location'.
      (sly-move-to-source-location): Renamed from
      `sly--move-to-source-location'
      
      * sly.el (define-button-type sldb-frame): Default action is to
      toggle details.
      (sldb-frame-button): Extract spec and put it in the `part-args'
      property.
      
      * contrib/sly-mrepl.el (define-button-type sly-mrepl-part): rename
      `object-idx' to `entry-idx' for clarity.
      (sly-mrepl--copy-part-to-repl): New function just for copying REPL
      parts.
      (sly-mrepl--copy-to-repl-after): New buffer-local variable.
      (sly-mrepl--copy-objects-to-repl): New function for copying any
      object generically.
      (listener): Don't take `note' arg and execute
      `sly-mrepl--copy-objects-to-repl'
      (sly-mrepl--eval-for-repl): Better protocol.
      (sly-inspector-copy-part-to-repl, sldb-copy-part-to-repl)
      (sly-trace-dialog-copy-part-to-repl): Adapt to new protocol.
      (sly-mrepl--insert-call): Take a `spec' argument.
      (sly-trace-dialog-copy-call-to-repl): Use new protocol of
      `sly-mrepl--eval-for-repl'.
      (sly-mrepl-sync-package-and-default-directory): Set
      `sly-mrepl--copy-to-repl-after'.
      
      * contrib/sly-mrepl.el (:unfreeze-prompt): Remove frequently failing
      assertion assertion. Have to investigate.
      
      * contrib/sly-trace-dialog.el (sly-trace-dialog--shortcut-menu): Avoid compiler warning.
      (define-button-type sly-trace-dialog-spec): `part-args' property
      was simplified.
      
      * contrib/swank-mrepl.lisp (copy-values-to-repl): Don't take NOTE arg.
      (:sync-package-and-default-directory): Don't pass notes to
      COPY-VALUES-TO-REPL.
      (*saved-objects-note*): Removed.
      (globally-save-object): Don't set *SAVED-OBJECTS-NOTE*
      (:copy-to-repl): Simplified.
      
      * lib/lisp/swank-backend.lisp (frame-arguments): New interface.
      
      * lib/lisp/backend/swank-allegro.lisp (frame-arguments): New
      implementation of interface. Probably not very good.
      
      * lib/lisp/backend/swank-ccl.lisp (frame-call): Removed implementation.
      
      * lib/lisp/backend/swank-sbcl.lisp (frame-call): Removed implementation.
      94c1e2e4
  18. 13 Aug, 2014 1 commit
    • João Távora's avatar
      New M-S-RET "Copy call to REPL" action for sldb and trace-dialog · 788eb21f
      João Távora authored
      * sly.el (sldb-frame-map): Set `sly-part-button-keymap' as parent
      of `sly-frame-keymap'.
      (sldb-frame): Make this button type inherit from `sly-part', not
      `sly-button'.
      (sldb-frame-button): Add `part-args' and `part-label' props to
      `sldb-frame' buttons.
      
      * contrib/sly-mrepl.el (define-sly-contrib sly-mrepl): Define a new
      "part-action" `sly-mrepl-copy-call-to-repl'. Put this is
      `sldb-frame' and `sly-trace-dialog-spec' button types. Rename
      previous `sly-mrepl-copy-to-repl' action to
      `sly-mrepl-copy-part-to-repl'
      (sly-inspector-copy-part-to-repl): Renamed from
      `sly-inspector-copy-down-to-repl'
      (sldb-copy-part-to-repl): Renamed from `sldb-copy-down-to-repl'.
      (sly-trace-dialog-copy-part-to-repl): Renamed from
      `sly-trace-dialog-copy-down-to-repl'
      (sly-mrepl--insert-call, sldb-copy-call-to-repl)
      (sly-trace-dialog-copy-call-to-repl): New functions.
      
      * contrib/sly-trace-dialog.el (sly-trace-dialog-spec):
      `sly-button-inspect' method takes more (ignored) arguments.
      (sly-trace-dialog-spec-button): `sly-trace-dialog-spec' buttons
      have more props.
      (sly-trace-dialog--insert-trace): Pass trace to
      `sly-trace-dialog-spec-button'
      
      * contrib/swank-trace-dialog.lisp (trace-arguments): New function.
      788eb21f
  19. 12 Aug, 2014 3 commits
    • João Távora's avatar
      Fix some reading behaviour in sly-mrepl · 08d6e196
      João Távora authored
      * contrib/sly-mrepl.el (sly-mrepl--commiting-text): edebug and indent specs.
      (sly-mrepl--send-input-sexp): change name to clarify that this is
      only for sending sexps.
      (sly-mrepl-return): Use `comint-send-input' directly.
      (sly-mrepl--commiting-text): edebug spec.
      (sly-mrepl--send-input-sexp): change name to clarify that this is
      only for sending sexps.
      (sly-mrepl-return): Use `comint-send-input' directly.
      (sly-mrepl--pending-output): New variable.
      (sly-mrepl--insert-output): Insert or save pending output.
      (listener): Save pending output.
      (sly-mrepl-return, sly-mrepl-guess-package): Format messages with
      "[sly]". FIXME, use `sly-message'.
      
      * contrib/swank-mrepl.lisp (initialize-instance): Must init listener's
      SWANK::IN slot here.
      (create-mrepl): Not here.
      (mread-eval-1): Fix whitespace.
      08d6e196
    • João Távora's avatar
      More sly-mrepl fixes · df9d34f3
      João Távora authored
      * sly-mrepl.el (sly-mrepl-mode-map): Add "M-p" and "M-n"
      lost when `comint-mode-map' inheritance was broken.
      (sly-mrepl--insert-output): Ensure prettier insertion of
      unexpected async output.
      df9d34f3
    • João Távora's avatar
      Consolidate pull-down menus · 4b28547f
      João Távora authored
      Work in progress.
      
      * sly.el (sly-inspector-mode-map): Remove some invalid
      keybindings.
      (menubar-sly, menubar-sly-sldb): Removed.
      (sly-menu, sly-sldb-menu, sly-inspector-menu): New menus.
      (sly-sldb-easy-menu, sly-easy-menu): These variables are unneeded.
      (sly-add-easy-menu, sly-sldb-add-easy-menu): Removed.
      
      * contrib/sly-mrepl.el (sly-mrepl--last-prompt-overlay):
      Resurrected.
      (sly-mrepl-mode): Remove `sly-mrepl-mode-map' comint parent.
      (sly-mrepl--shortcut-menu, sly-mrepl--menu): New menus.
      
      * contrib/sly-trace-dialog.el (sly-trace-dialog--shortcut-menu)
      (sly-trace-dialog--menu): New menus.
      (sly-trace-dialog--menubar): Remove.
      4b28547f
  20. 11 Aug, 2014 2 commits
    • João Távora's avatar
      Improve sly-mrepl consistency · 9b5bb60d
      João Távora authored
      * contrib/sly-mrepl.el (:copy-to-repl, :evaluation-aborted): Use
      `sly-mrepl--insert-output' to insert notes.
      (:copy-to-repl): Simplify. Doesn't need to `mrepl--send-input'
      (:copy-to-repl, :evaluation-aborted, :write-string): Use
      `sly-mrepl--catch-up'
      (sly-mrepl--catch-up): New function.
      (sly-mrepl-insert-input): Fix error when getting input.
      9b5bb60d
    • João Távora's avatar
      Simplify "hung" logic in sly-mrepl · 329f40a3
      João Távora authored
      * contrib/sly-mrepl.el (sly-mrepl--stacked-errors): New buffer-local variable.
      (sly-mrepl--frozen-prompt-overlays): Remove
      (:freeze-prompt, :unfreeze-prompt): Simplify.
      (sly-mrepl-errored-prompt-face): New face.
      (sly-mrepl--prompt-face): Decides which face based on
      `sly-mrepl--stacked-errors'.
      329f40a3
  21. 10 Aug, 2014 1 commit
    • João Távora's avatar
      Finish SLDB simplification and conversion to sly-buttons.el · 99d3365d
      João Távora authored
      * sly.el (define-sldb-faces): Remove faces `restart-type' and
      `detailed-frame-line'.
      (sly-property-bounds): Removed.
      (sly--highlight-sexp, sly--highlight-line): Moved up here and made
      internal.
      (sly--display-source-location, sly--pop-to-source-location)
      (sly-goto-next-xref): Use `sly--highlight-sexp' and
      `sly--highlight-line'.
      (sldb-mode-map): Keep only generic keybindings applicable to all
      buffer points. Don't bind TAB to `sldb-cycle', but to
      `forward-button'.
      (sldb-mode): Update doc.
      (sldb-confirm-buffer-kill): New function.
      (sldb-setup): Add it to `kill-button-query-functions'. `frames'
      are now `frame-specs'.
      (sldb-insert-condition): No need for `sly-insert-propertized'
      (sldb-insert-restarts): Use action buttons.
      (sldb-insert-more-restarts, sldb-frame.string)
      (sldb-frame.number, sldb-frame.plist): Removed.
      (sldb-prune-initial-frames): Don't use frame-spec accessors.
      (sldb-insert-frames): Rewrite to use buttons.
      (sldb-compute-frame-face): Remove.
      (sldb-insert-frame): Rewrite.
      (sldb-fetch-more-frames, sldb-restart-at-point): Removed.
      (sldb-frame-number-at-point): Rewritten.
      (sldb-frame-map): New map.
      (sldb-previous-frame-number): Removed.
      (sldb-frame-region): Removed.
      (sldb-frame, sldb-frame-button): New button type and constructor.
      (sldb-forward-frame, sldb-backward-frame): Removed.
      (sldb-frame-button-near-point): New finder.
      (sly-save-coordinates, sly-coordinates, sly-restore-coordinate)
      (sly-count-lines, sldb-default-action)
      (sldb-default-action/mouse): Removed.
      (sldb-show-frame-source): Make interactive and replaces
      `sldb-show-source'.
      (sldb-show-source): Removed.
      (sldb-toggle-details, sldb-show-frame-details)
      (sldb-hide-frame-details): Rewritten to use buttons.
      (sldb-frame-details): Removed.
      (sldb-local-variable, sldb-local-variable-button): New button type
      and constructor.
      (sldb-frame-eval-interactive, sldb-pprint-eval-in-frame)
      (sldb-inspect-in-frame, sldb-eval-in-frame): Use `frame-number'
      not `frame'
      (sldb-down): More powerful and use buttons.
      (sldb-up): Use `sldb-down'
      (sldb-sugar-move): Rewrite to use buttons.
      (sldb-details-down, sldb-details-up): Use new `sldb-sugar-move'
      protocol.
      (sldb-invoke-restart): `restart-number` arg is mandatory.
      (sldb-step, sldb-next, sldb-out, sldb-break-on-return)
      (sldb-recompile-frame-source, sldb-return-from-frame)
      (sldb-restart-frame): Take `frame-number' as interactive arg.
      (sly-inspector-part-button): This is the constructor for
      `sly-inspector-part' buttons.
      
      * contrib/sly-mrepl.el (sly-mrepl): Use `sldb-local-variable', not
      `sldb-local-part' to insinuate M-RET.
      
      * lib/sly-buttons.el (sly-button-at): New function.
      (sly-button-at-point): Removed.
      (sly-button-define-part-action): Use `sly-button-at'
      (sly-button): New button type which is the supertype of all others
      sly-related.
      99d3365d
  22. 09 Aug, 2014 1 commit
    • João Távora's avatar
      Begin converting SLDB to more uniform emacs idioms · e21a7bc1
      João Távora authored
      * sly.el (sldb-mode): SLDB buffer must be read only.
      (sldb-var-number-at-point): Removed.
      (sldb-local-part): New button type and constructor.
      (sldb-inspect-var): Removed.
      (sldb-insert-locals): Insert a `sly-local-part' button.
      
      * contrib/sly-mrepl.el (sly-mrepl): Use `button-type-put' on
      `sldb-local-part' buttons as well.
      (sldb-copy-down-to-repl): No longer interactive.
      e21a7bc1