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. 11 Apr, 2014 5 commits
  2. 24 Mar, 2014 1 commit
    • João Távora's avatar
      Minor fix to sly-mrepl.el · 72a3568b
      João Távora authored
      * contrib/sly-mrepl.el (sly-mrepl-mode, sly-mrepl--insert-output): Make
      prompt read-only but inhibit when inserting output.
      72a3568b
  3. 21 Mar, 2014 1 commit
    • Joao Tavora's avatar
      Enhancements to prompting in sly-mrepl · bea5b077
      Joao Tavora authored
      * sly.el (sly-mode-map): Don't rebind `M-t'
      
      * contrib/sly-mrepl.el (sly-mrepl-new): Don't insert prompt here.
      (sly-mrepl--prompt): deleted.
      (:prompt): insert prompt here, but check if output is waiting to
      arrive.
      (sly-mrepl--prompt): Take prompt argument again.
      (:evaluation-aborted): Don't insert prompt here.
      
      * contrib/swank-mrepl.lisp (drop-unprocessed-events): Send prompt within
      channel bindings.
      (mrepl-eval): Reorganize to always send prompt.
      (read-eval): Don't print (renamed from READ-EVAL-PRINT)
      bea5b077
  4. 19 Mar, 2014 7 commits
    • Joao Tavora's avatar
      Minor tweaks to sly.el · 34a9059d
      Joao Tavora authored
      * sly.el (sldb-local-value-face): Make consistent with inspector.
      (sldb--display-in-prev-sldb-window): Remember to call
      `display-buffer-record-window'.
      34a9059d
    • Joao Tavora's avatar
      Add persistent history to sly-mrepl · 371e7b80
      Joao Tavora authored
      * contrib/sly-mrepl.el (sly-mrepl-mode): Set comint.el's history-related
      variables.
      (sly-mrepl-new): Read input ring from file.
      (sly-mrepl--merge-and-save-history): New function.
      (sly-mrepl--teardown): Call
      `sly-mrepl--merge-and-save-history'. Try to be nicer when errors
      happen.
      
      * contrib/swank-mrepl.lisp (mrepl-eval): Removed prompt optimization.
      (mrepl-eval): Replace HANDLER-CASE with HANDLER-BIND, otherwise
      errors never pop to user.
      (send-prompt): Always send *PACKAGE*.
      371e7b80
    • Joao Tavora's avatar
      Stability fixes in sly-mrepl · 84acffd2
      Joao Tavora authored
      * contrib/sly-mrepl.el: Fix top doc.
      (sly-mrepl): Don't list license and authord in contrib def.
      (sly-mrepl--prompt): `accept-process-output' here.
      (:write-values): Not here.
      (:evaluation-aborted): Print condition.
      
      * contrib/swank-mrepl.lisp (listener-channel): Remove DEDICATED slot, add
      IN and OUT.
      (initialize-instance): Make IN and OUT here, possibly blocking
      while waiting for Emacs to connect to OUT.
      (create-mrepl): Don't open DEDICATED here.
      (mrepl-eval): Use HANDLER-CASE to catch errors. Always flush
      streams.
      (flush-streams): New function.
      (send-prompt): Just send prompt.
      84acffd2
    • João Távora's avatar
      Imitate legacy REPL output mangling. · a06b4a01
      João Távora authored
      * contrib/sly-mrepl.el (sly-mrepl--output-mark)
      (sly-mrepl--dedicated-stream): New vars.
      (sly-mrepl-mode): Place `sly-mrepl--output-mark' and set its
      "stay" insertion type.
      (sly-mrepl--insert-output): New function just for inserting
      output.
      (sly-mrepl--prompt): Set `sly-mrepl--output-mark' between possible
      newline and actual prompt.
      (:write-values): Wait for some process output before prompt.
      (listener): Use `sly-mrepl--insert-output'.
      (sly-mrepl-return): Set `sly-mrepl--output-mark' here, too.
      (sly-mrepl--eval-for-repl): New function.
      (sly-inspector-copy-down-to-repl): Simplified.
      (sldb-copy-down-to-repl): Simplified (but broken).
      (sly-trace-dialog-copy-down-to-repl): Simplified.
      (sly-mrepl--dedicated-stream-output-filter): Use
      `sly-mrepl--insert-output'.
      
      * contrib/swank-mrepl.lisp (mrepl-eval): save bindings last.
      a06b4a01
    • João Távora's avatar
      Redirect other streams. · 1348d690
      João Távora authored
      Hopefully they will mingle correctly with the dedicated stream.
      
      * swank-mrepl.lisp (initial-listener-env): Redirect the other
      streams.
      1348d690
    • João Távora's avatar
      Fix mode byte-compiler warnings · 6d3f2270
      João Távora authored
      Contribs that requires `sly-repl' now require `sly-old-repl' instead.
      6d3f2270
    • Joao Tavora's avatar
      Some stability fixes for sly-mrepl · 769f391d
      Joao Tavora authored
      * sly.el (sly-attempt-connection): Fix minor whitespace.
      (sly-net-connect): Use `sly--net-connect-counter'
      (sly--net-connect-counter): New var.
      
      * contrib/sly-mrepl.el (sly-mrepl-new): Better naming for
      processes. Arrange order.
      (sly-mrepl--prompt): New local variable.
      (:prompt): This method only sets `sly-mrepl--prompt'.
      (sly-mrepl--prompt): Takes 0 arguments now.
      (:write-values): Call `sly-mrepl--prompt'.
      (sly-mrepl): Correctly find buffer.
      (sly-mrepl--open-dedicated-stream): Use better stream and buffer
      names.
      (sly-mrepl--teardown): Rearrange teardown order.
      
      * contrib/swank-mrepl.lisp (:compile-toplevel): Import some more functions
      from SWANK.
      (mrepl-eval): Track package, send prompt only if it changed. Send
      results only after sending prompt.
      (read-eval-print): Use SWANK:WITH-RETRY-RESTART.
      769f391d
  5. 18 Mar, 2014 5 commits
    • Joao Tavora's avatar
      Dedicated output streams for sly-mrepl (slightly broken still) · 9d7cdd72
      Joao Tavora authored
      * sly.el (sly-start-lisp, sly-net-connect): Call
      `set-process-query-on-exit-flag' inline.
      (sly-set-query-on-exit-flag): Delete it.
      
      * swank.lisp (:swank): Export SWANK:AUTHENTICATE-CLIENT and
      SWANK:*LOOPBACK-INTERFACE*.
      (spawn-worker-thread, list-threads): Better thread names for
      workers.
      
      * contrib/sly-mrepl.el (sly-mrepl-hook, sly-mrepl-runonce-hook): New
      hooks.
      (sly-mrepl-new): Name process slightly better. Set channel buffer
      and kill-buffer-hook even before ack. Run new hooks when ack'ed
      from lisp.
      (sly-mrepl--teardown): Moved to bottom. Delete dedicated stream
      and its buffer.
      (:write-string): Call `sly-mrepl--insert' inline.
      (sly-mrepl--write-string): Deleted.
      (sly-mrepl--dedicated-stream-output-filter): New function.
      (sly-mrepl--dedicated-stream-hooks): New hook.
      (sly-mrepl--open-dedicated-stream): New function.
      (sly-mrepl--dedicated-stream): New buffer-local var.
      (:open-dedicated-output-stream): New channel method.
      
      * contrib/swank-mrepl.lisp (:compile-toplevel): slight whitespace cleanup.
      (listener-channel): add slot for dedicated socket.
      (create-mrepl): Honour SWANK-MREPL::*USE-DEDICATED-OUTPUT-STREAM*
      before starting to serve requests.
      (initial-listener-env): Bind *STANDARD-OUTPUT* to channels
      dedicated socket if it exists.
      (spawn-listener-thread): Adjust indentation.
      (*use-dedicated-output-stream*, *dedicated-output-stream-port*)
      (*dedicated-output-stream-buffering*): New vars.
      (open-dedicated-output-stream): New function.
      9d7cdd72
    • Joao Tavora's avatar
      Fixes to sly-mrepl · faa1fa0e
      Joao Tavora authored
      * sly-mrepl.el (sly-mrepl-new): Set header-line-format to nil as
      soon as connection happens.
      (sly-mrepl): Check `sly-buffer-connection' when looking for a repl
      for the current connection.
      faa1fa0e
    • Joao Tavora's avatar
      Safely tear down mREPL buffers · c353d4d7
      Joao Tavora authored
      Local channel might be a non-structure, teardown message sending might
      fail, etc...
      
      * contrib/sly-mrepl.el (sly-mrepl--teardown): Ignore errors when tearing
      down.
      c353d4d7
    • João Távora's avatar
      Launch a mREPL when connected · 13224d56
      João Távora authored
      * contrib/sly-mrepl.el (sly-mrepl): Add `sly-mrepl-connected-hook' to
      `sly-connected-hook'.
      (sly-mrepl-new): Generate a buffer name like old REPL.
      (sly-mrepl-new): Don't set header line and insert a short banner.
      (sly-mrepl-connected-hook): New function, hides *inferior-lisp*
      buffer if it finds it.
      13224d56
    • João Távora's avatar
      Consolidate sly-mrepl button behaviour slightly · 7bf6c72f
      João Távora authored
      * contrib/sly-mrepl.el (:write-result): Keep for SLIME compatibility
      (sly): New button type (to move to sly.el)
      (:write-values): Each value written out is a button.
      
      * contrib/swank-mrepl.lisp (:inspect): Takes two arguments OBJECT-IDX and
      VALUE-IDX, uses them to index SWANK-MREPL:*HISTORY*
      (mrepl-eval): Sends :WRITE-VALUES message (not :WRITE-RESULT) to emacs
      (read-eval-print): Just MAPCARs SWANK::TO-LINE to each value.
      7bf6c72f
  6. 17 Mar, 2014 9 commits
    • Joao Tavora's avatar
      Spectacularly broken attempt at inspectable REPL objects · 1edebf70
      Joao Tavora authored
      * contrib/sly-mrepl.el (sly-mrepl--result-counter): Experiment with a
      result counter.
      (sly-mrepl-mode): Init some more comint vars and the result counter
      (:write-result): Make a button everytime non-comment output arrives.
      (:inspect-result): New channel method that opens inspector.
      (sly-mrepl--write-string): Don't go to process mark.
      (sly-inspector-copy-down-to-repl, sldb-copy-down-to-repl)
      (sly-trace-dialog-copy-down-to-repl): Insert newline before
      sending string.
      
      * contrib/swank-mrepl.lisp (*history*): New var.
      (initial-listener-env): Init it to an adjustable array.
      (:inspect): New channel method.
      (read-eval-print): Don't output newlines at the end.
      1edebf70
    • Joao Tavora's avatar
      More cleanup, remove inter-dependencies between contribs · 420a9c95
      Joao Tavora authored
      * contrib/sly-c-p-c.el (sly-c-p-c): Don't use `sly-editing-commands'.
      (sly-complete-symbol*-fancy): Remove.
      (sly-expand-abbreviations-and-complete): Don't use
      `sly-complete-symbol*-fancy'.
      (sly-complete-form): Don't close all parens.
      
      * contrib/sly-editing-commands.el: Removed file.
      
      * contrib/sly-fancy.el (sly-fancy): Don't require `sly-editing-commands'.
      
      * contrib/sly-old-repl.el: Moved from sly-repl.el.
      * contrib/sly-mrepl.el (sly-mrepl): On load, place copy-down-to-repl
      functions in other modes map.
      (sly-mrepl-mode-map): Make proper map.
      (sly-trace-dialog-copy-down-to-repl): Move it here.
      
      * contrib/sly-trace-dialog.el (sly-repl): Don't require sly-repl.
      (sly-trace-dialog): Don't add anything to `sly-repl-mode-map'
      (sly-trace-dialog-mode-map): Don't bind M-RET here.
      (sly-trace-dialog-copy-down-to-repl): Removed.
      420a9c95
    • Joao Tavora's avatar
      Rework README.md · 4fb10053
      Joao Tavora authored
      4fb10053
    • Joao Tavora's avatar
      Turn on `sly-mode' in `sly-mrepl-mode' · df310e91
      Joao Tavora authored
      * contrib/sly-mrepl.el (sly-mrepl-mode): Turn on `sly-mode'.
      df310e91
    • Joao Tavora's avatar
      Big cleanup in sly.el · ec192073
      Joao Tavora authored
      * sly-autoloads.el (sly-lisp-mode-hook): Autoload
      `sly-lisp-mode-hook'.
      (lisp-mode-hook): Add `sly-editing-hook'.
      
      * sly.el (sly-setup): Always add `sly-editing-mode' to
      `lisp-mode-hook'.
      (sly-lisp-modes): Removed variable.
      (sly-lisp-mode-hook): Removed.
      (sly-doc-map, sly-who-map, sly-prefix-map, sly-parent-map)
      (sly-mode-map, slime-editing-mode-map): Normal maps with defvars.
      (sly-keys, sly-nop, sly-who-bindings, sly-init-keymaps)
      (sly-init-keymap, sly-bind-keys): Removed.
      (sly-pre-command-actions, sly-pre-command-hook)
      (sly-setup-command-hooks): Removed.
      (sly-show-arglist): Bring it back.
      (sly-indent-and-complete-symbol): Use it, instead of
      `sly-echo-arglist'
      (sly-inspector-value-face): Removed.
      (sly-face-inheritance-possible-p): Removed.
      (sly-inspectable-value-face): New face.
      (sly-highlight-face, sly-inspector-action-face): Don't use
      `sly-face-inheritance-possible-p'.
      (sly-open-inspector, sly-inspector-insert-ispec): Use
      `sly-face-inheritance-possible-p'.
      
      * contrib/sly-fontifying-fu.el (sly-reader-conditional-face): Don't use
      `sly-face-inheritance-possible-p'.
      
      * contrib/sly-repl.el (sly-repl-prompt-face, sly-repl-output-face): Don't
      use `sly-face-inheritance-possible-p'.
      ec192073
    • Joao Tavora's avatar
      Remove everything presentation-related · aca95e40
      Joao Tavora authored
      aca95e40
    • João Távora's avatar
      37a3ceec
    • João Távora's avatar
      Some intermediate `sly-mrepl' cleanup · ea2bacd9
      João Távora authored
      * contrib/sly-mrepl.el Rename all internal variables and functions
      `sly-mrepl--*'.
      (sly-mrepl): Pops to buffer if called interactively.
      (sly-mrepl--send-pending): New functio.
      (sly-mrepl--send): Store pending requests.
      (sly-mrepl--pending-requests): New var.
      (sly-mrepl--expect-sexp-mode): Rename for clarity.
      (sly-mrepl-new): Send pending requests.
      (sly-mrepl--teardown): Reorganize for safety.
      ea2bacd9
    • João Távora's avatar
      Improve channel teardown for sly-mrepl · 7df61bfe
      João Távora authored
      * sly.el (sly-dispatch-event): Group channel-related
      events. Accept new `:invalid-channel' event.
      (sly-close-channel): Improve error message.
      
      * swank.lisp (:swank): Export SWANK:STOP-PROCESSING symbol.
      (process-requests): Catch SWANK:STOP-PROCESSING tag.
      (thread-for-evaluation): Shoosh compilers.
      (dispatch-event): Handle invalid channels.
      (close-channel): New function.
      (channel-send): Document generic.
      
      * contrib/sly-mrepl.el (sly-mrepl-mode): Don't add to `kill-buffer-hook' here.
      (sly-mrepl-new): Rather here when we're sure to have a remote channel.
      (sly-mrepl--delete-process): Delete it.
      (sly-mrepl--teardown): Delete process, teardown remote, close local.
      
      * contrib/swank-mrepl.lisp (:compile-toplevel): import SWANK:CLOSE-CHANNEL
      and SWANK:STOP-PROCESSING.
      (listener-channel): Use accessors.
      (initialize-instance): Fix whitespace.
      (create-mrepl): Give channel a name
      (drop-unprocessed-events): Add docstring.
      (spawn-listener-thread): Learn to teardown thread.
      (:teardown): New channel method.
      (mrepl-eval): Rewrite env-setting for clarity.
      7df61bfe
  7. 15 Mar, 2014 1 commit
    • João Távora's avatar
      Improve sly-mrepl slightly. · bfcdecd3
      João Távora authored
      * contrib/sly-mrepl.el: Use lexical-binding.
      (sly-mrepl-local-channel): new var.
      (sly-mrepl-mode): Don't setup process in mode function.
      (sly-mrepl-new): Setup buffer even before backend
      confirmation. Use pty. Setup header-line-format.
      (sly-mrepl--delete-process): Delete process on buffer quit.
      (sly-mrepl-input-sender, sly-mrepl-send-string): silence byte-compiler
      (sly-new-mrepl): Deleted.
      (sly-mrepl): Calls `sly-mrepl-new' if it can't find any live repl.
      
      * contrib/swank-mrepl.lisp (initial-listener-env): More vars in initial-listener-env.
      (drop-unprocessed-events): Move up.
      (mrepl-eval): Set ***, **, *, ///, //, /, +++, ++, +
      (read-eval-print): Rearrange loop.
      bfcdecd3
  8. 14 Mar, 2014 4 commits
  9. 13 Mar, 2014 2 commits
    • Joao Tavora's avatar
      All autodoc'ing uses contrib/slime-autodoc.el · 488cea6a
      Joao Tavora authored
      The simple arglists version on the sly.el side was removed. The SWANK
      interface stays, for backward/SLIME compatibility and for whoever
      wants to use it.
      
      * sly.el (sly-space, sly-echo-arglist-function, sly-echo-arglist)
      (sly-show-arglist, sly-operator-before-point-function)
      (sly-operator-before-point, sly-lisp-operator-before-point): Removed.
      
      * contrib/sly-autodoc.el: set lexical-binding to t.
      (sly-autodoc): Use just `sly-autodoc-mode'
      (sly-use-autodoc-mode): Remove this defcustom.
      (sly-autodoc--make-rpc-form, sly-autodoc--last-buffer-form)
      (sly-autodoc--last-autodoc, sly-autodoc--format): Rename.
      (sly-autodoc-mode): Use `define-minor-mode
      (sly-autodoc-maybe-enable): Removed.
      (eldoc-display-message-no-interference-p): `sly-bind-keys' call
      was kinda gross.
      488cea6a
    • Joao Tavora's avatar
      Removed sly-cheat-sheet. There are alternatives, like the manual. · 52a09dde
      Joao Tavora authored
      * sly.el (sly-cheat-sheet-table): Removed.
      (sly-cheat-sheet): Removed.
      52a09dde
  10. 12 Mar, 2014 4 commits
  11. 10 Mar, 2014 1 commit