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. 08 Oct, 2014 1 commit
  2. 04 Oct, 2014 1 commit
    • Joao Tavora's avatar
      Buffer compilation arms sly-stickers too · 224535c4
      Joao Tavora authored
      * sly.el (sly-region-for-defun-at-point): Accept POS as default point.
      
      * contrib/sly-stickers.el
      (sly-stickers-compile-region-aware-of-stickers-1): New helper
      function. Accept `callback'. Accept `sync', `flash` and `fallback`
      as boolean kwargs.
      (sly-stickers-compile-region-aware-of-stickers): Make use of
      `sly-stickers-compile-region-aware-of-stickers-1'
      (sly-stickers-after-buffer-compilation): Implemented, makes use of
      `sly-stickers-compile-region-aware-of-stickers-1'.
      
      * contrib/slynk-stickers.lisp (defpackage :slynk-stickers): Export slyfuns
      explicitly to appease sbcl.
      (compile-for-stickers): Add docstring. Only return PROBE if it was
      a successful compilation. Return nil if no ORIGINAL-STRING was
      given.
      
      * test/sly-stickers-tests.el (stickers-in-a-file): New test.
      (stickers-record-stuff): Fix FIXME.
      224535c4
  3. 27 Sep, 2014 2 commits
    • João Távora's avatar
      Navigate REPL buttons and add some tests · 9b0e87fa
      João Távora authored
      * sly.el (sly-macroexpansion-minor-mode-map): Use defvar.
      (sly-show-notes): Use `sly-button-flash'.
      
      * contrib/sly-mrepl.el (sly-mrepl-mode-map): Define more interesting
      bindings for M-p and M-n, also C-M-p, C-M-n.
      (sly-mrepl--make-result-button): Assign `sly-button-search-id' to
      new button.
      (sly-mrepl-previous-input-or-button)
      (sly-mrepl-next-input-or-button): New functions.
      
      * contrib/sly-stickers.el (sly-stickers--echo-sticker): Use new `sly-button-flash'
      (sly-stickers--flash-sticker): Removed.
      (sly-stickers-fetch): Use new `sly-button-flash'
      
      * lib/sly-buttons.el (sly-button-at): Use `button-type-subtype-p'
      (sly-button): Set a basic `sly-button-search-id' here.
      (sly-button-flash): New function.
      (sly-button-echo-part): Flash buttons by default.
      (sly-button--overlays-starting-at): Renamed to
      `sly-button--searchable-buttons-starting-at'
      (sly-button--searchable-buttons-at): Consider text buttons.
      (sly-button-search): Use `sly-button--searchable-buttons-at'
      (sly-button-search): Error instead of message.
      
      * test/sly-mrepl-tests.el (sly-mrepl-tests--assert-prompt): More
      interesting search for prompt.
      (sly-mrepl-tests--with-basic-repl-setup): New macro.
      (repl-values-and-button-navigation): New test.
      9b0e87fa
    • João Távora's avatar
      Don't bother user about stickers on buffer compile if there were none · e336576b
      João Távora authored
      * sly-stickers.el (sly-stickers-after-buffer-compilation): Check for `stickers'
      e336576b
  4. 23 Sep, 2014 1 commit
    • João Távora's avatar
      Fix bug in stickers/notes interaction · 9866a39e
      João Távora authored
      * contrib/sly-stickers.el (sly-stickers--stickers-between)
      (sly-stickers--stickers-at, sly-stickers--stickers-between)
      (sly-stickers--stickers-exactly-at): Resurrected abstractions.
      (sly-stickers--sticker, sly-stickers--sticker-substickers)
      (sly-stickers-clear-region-stickers)
      (sly-stickers-delete-sticker-at-point)
      (sly-stickers-maybe-add-sticker)
      (sly-stickers-compile-region-aware-of-stickers)
      (sly-stickers-after-buffer-compilation): Use sticker-specific abstractions.
      
      * lib/sly-buttons.el (sly-button--overlays-in)
      (sly-button--overlays-between, sly-button--overlays-exactly-at)
      (sly-button--overlays-at): Take optional `filter' arg.
      (sly-button--searchable-buttons-at): Use `sly-button--overlays-at'.
      9866a39e
  5. 19 Sep, 2014 3 commits
    • João Távora's avatar
      Fix sticker tests · 59d74a90
      João Távora authored
      * contrib/sly-stickers.el (sly-stickers-exited-non-locally-face):
      Fix docstring.
      (sly-stickers-fetch): Check all stickers in the "CL_USER" package.
      
      * test/sly-stickers-tests.el (sly-stickers--call-with-fixture):
      Don't need find-file-literally.
      (stickers-record-stuff): Return a symbol, not a keyword from BAR
      in fixture. Fix expectation. Comment out a part, needs work still
      59d74a90
    • João Távora's avatar
      Fix some sly-stickers bugs in code and tests · 3b811cab
      João Távora authored
      * contrib/sly-stickers.el (sly-stickers--last-value-desc): New function.
      (sly-stickers--populate-sticker)
      (sly-stickers--mark-empty-sticker): Use it.
      
      * test/sly-stickers-tests.el (sly-stickers--call-with-fixture):
      Use :CL explicitly.
      (stickers-basic-navigation, stickers-should-stick)
      (stickers-when-invalid-dont-stick): Don't need the defpackage
      forms here. Fix doncstrings.
      3b811cab
    • João Távora's avatar
      Small refactoring and add sly-stickers tests · 401d2ac4
      João Távora authored
      * sly.el (sly-flash-inhibit): New variable.
      (sly-flash-region): Use it.
      
      * contrib/sly-stickers.el (top): Require 'sly-buttons
      (sly-stickers--stickers-in, sly-stickers--stickers-between)
      (sly-stickers--stickers-exactly-at, sly-stickers--stickers-at)
      (sly-stickers--sticker-priority): Move to sly-buttons.el.
      (sly-stickers--set-face, sly-stickers--sticker)
      (sly-stickers--sticker-substickers)
      (sly-stickers--decrease-prio, sly-stickers--increase-prio)
      (sly-stickers-clear-region-stickers)
      (sly-stickers-delete-sticker-at-point)
      (sly-stickers-maybe-add-sticker)
      (sly-stickers-compile-region-aware-of-stickers)
      (sly-stickers-after-buffer-compilation): Use `sly-button-*' functions.
      (sly-stickers--populate-sticker): Also record case when no values were returned.
      
      * lib/sly-buttons.el (sly-button--overlays-in)
      (sly-button--overlays-between, sly-button--overlays-exactly-at)
      (sly-button--overlays-at, sly-button--overlay-priority): New functions.
      
      * lib/sly-tests.el (defun): No need to check for ert.el.
      
      * test/sly-stickers-test.el (sly-stickers): New file.
      401d2ac4
  6. 18 Sep, 2014 1 commit
    • João Távora's avatar
      Refactor common functionality in note and sticker navigation · 98a6c1f7
      João Távora authored
      * sly.el (sly-highlight-face): Don't need this face.
      (sly-flash-region): Use `highlight' as the default flashing face.
      (sly-last-visited-note-buttons): Removed.
      (sly--note-buttons-at): Removed.
      (sly--search-note): Removed.
      (sly-next-note): Alias to `sly-button-forward'
      (sly-previous-note): Alias to `sly-button-backward'
      (sly-goto-first-note): use `sly-next-node'
      (sly-show-notes): Consider more than one button. Fancy flash
      notes.
      (sly-in-buffer-note): Add `sly-button-echo' property.
      (sly--add-in-buffer-note): Add `sly-button-search-id' property.
      (sly--compilation-note-group-button): Notes property is now
      `sly-notes-group'
      (sly--add-in-buffer-note): Notes property is now `sly-note'
      (sly-note-filter-function): New variable.
      (sly-next-note):
      
      * contrib/sly-stickers.el (sly-stickers-prefix-map): Deleted.
      (sly-stickers-mode-map): Restore previous simpler keybindings.
      (sly-stickers--sticker): Use `sly-button-echo' property.
      (sly-stickers--echo-sticker): Accept more stickers but assert they
      are not there.
      (sly-stickers--sticker): Add `sly-button-search-id' property.
      (sly-stickers-next-sticker, sly-stickers-prev-sticker): Use
      `sly-button-search'
      
      * lib/sly-buttons.el (sly-action, sly-part): New `sly-button-echo'
      property.
      (sly-button-echo-button, sly-button-echo-part): New functions.
      (sly-button--next-search-id, sly-button-next-search-id)
      (sly-button--searchable-buttons-at, sly-button-search)
      (sly-button-filter-function, sly-button-forward)
      (sly-button-backward): New functions.
      
      * lib/sly-tests.el (sly-test--compile-defun): Call
      `sly-previous-note' interactively.
      98a6c1f7
  7. 17 Sep, 2014 1 commit
    • João Távora's avatar
      Navigate stickers with keybindings · f9871ec2
      João Távora authored
      Also minor tweaks to the way stickers are displayed.
      
      Also update NEWS.md file.
      
      * NEWS.md: Update with new bits about sly-stickers contrib. Add
      entry about MELPA availability.
      
      * contrib/sly-stickers.el (sly-stickers-prefix-map): New keymap.
      (sly-stickers-mode-map): Just has the prefix, which is now `C-c
      C-s`, not the simplest `C-c`
      (sly-stickers--stickers-at): Remove useless interactive spec.
      (sly-stickers--set-tooltip): Save bare message in a property.
      (sly-stickers--echo-sticker): New functino.
      (sly-stickers--flash-sticker): Don't flash stickers with the
      'highlight face.
      (sly-stickers--sticker): Assign sticker ids on creation.
      (sly-stickers--arm-sticker): Not here.
      (sly-stickers--briefly-describe-sticker): New helper.
      (sly-stickers--sticker-modified)
      (sly-stickers-delete-sticker-at-point)
      (sly-stickers-maybe-add-sticker): Use it.
      (sly-stickers-next-sticker, sly-stickers-prev-sticker): New
      functions.
      f9871ec2
  8. 16 Sep, 2014 4 commits
    • João Távora's avatar
      Erradicate compiler warnings · dec2ae99
      João Távora authored
      Actually leave one in contrib/sly-cl-indent.el that I have to analyse.
      
      * sly.el: Replace functions from 'cl with their cl-lib
      counterparts.
      (require): Don't require 'cl, not even when compiling.
      (sly-read-symbol-name): Move down to avoid compiler warning.
      (sly-def-connection-var): Use gv-define-setter, not defsetf.
      (sly--this-inspector-name): Move up to avoid compiler warning.
      
      * contrib/sly-mrepl.el: Replace functions from 'cl with their cl-lib
      counterparts.
      
      * contrib/sly-stickers.el: Replace functions from 'cl with their cl-lib
      counterparts.
      dec2ae99
    • João Távora's avatar
      Preparatory work for sly-stickers buffer compilation support · 13d1f0d5
      João Távora authored
      * sly.el (sly-temp-message): New function.
      (sly-compilation-finished-hook): Default value is now a list.
      
      * contrib/sly-stickers.el (sly-stickers): Add to `sly-compilation-finished-hook'
      (sly-stickers--disarm-sticker): Disarmed sticker perhaps was never pre-armed.
      (sly-stickers-after-buffer-compilation): New function.
      13d1f0d5
    • João Távora's avatar
      Improve sly-sticker's documentation · bcd290e2
      João Távora authored
      * contrib/sly-stickers.el (sly-stickers-clear-defun-stickers)
      (sly-stickers-clear-buffer-stickers)
      (sly-stickers-clear-region-stickers)
      (sly-stickers-delete-sticker-at-point)
      (sly-stickers-maybe-add-sticker): Add docstring.
      (sly-stickers-maybe-add-sticker): Add a hint in the echo area.
      (sly-stickers-fetch)
      (sly-stickers-compile-region-aware-of-stickers): Add doctring.
      
      * NEWS.md: describe `sly-stickers' a little more.
      bcd290e2
    • João Távora's avatar
      9f313cba
  9. 15 Sep, 2014 2 commits
    • João Távora's avatar
      Cleaner implementation of sly-stickers hookage · bee4f91e
      João Távora authored
      Also revise faces and consider stickers that exited non-locally.
      
      * sly.el (sly-after-compile-functions)
      (sly-before-compile-functions): Removed.
      (sly-compilation-finished-hook): Change interface and document.
      (sly-compilation-finished-hook): Removed
      `sly-create-compilation-log' and `sly-maybe-list-compiler-notes'
      (sly-compile-file): Just call `sly-compilation-finished'.
      (sly-compile-region-function): New indirection.
      (sly-compile-region-as-string): New function, default value for
      `sly-compile-region-function'.
      (sly-compile-string): Don't take hook arg.
      (sly-compilation-finished): Take optional `message' arg.
      (sly-maybe-show-xrefs-for-notes, sly-maybe-show-compilation-log)
      (sly-show-compilation-log): Conform to new
      `sly-compileation-finished' protocol.
      (sly-create-compilation-log): Removed.
      (sly-maybe-show-compilation-log): Much simplified.
      (sly--insert-compilation-log): Renamed from
      `sly-insert-compilation-log'
      (sly-xref-recompilation-cont): Call `sly-compilation-finished'
      with second arg.
      
      * contrib/sly-stickers.el (sly-stickers): Use new
      `sly-compile-region-function'
      (sly-stickers-compile-region-aware-of-stickers): Renamed and
      redone from `sly-stickers-commit-stickers'.
      
      * contrib/sly-stickers.el (sly-stickers-fetch): Handle zombie
      stickers.
      
      * contrib/sly-stickers.el (sly-stickers-exited-non-locally-face): New face.
      (nil): New debug section to nullify face specs.
      (sly-stickers--populate-sticker): Consider aborted stickers.
      (sly-stickers--mark-empty-sticker, sly-stickers-fetch): Rename
      internal var `last-values-desc'
      (sly-stickers-placed-face, sly-stickers-armed-face)
      (sly-stickers-recordings-face): Better face defaults perhaps.
      
      * contrib/slynk-stickers.lisp (:slynk-stickers): Import
      COMPILE-STRING-FROM-EMACS.
      (compile-for-stickers): Try to compile with stickers first.
      
      * contrib/slynk-stickers.lisp (kill-stickers): New slyfun.
      bee4f91e
    • João Távora's avatar
      Tweaks to the sly-stickers contrib · 9d3aa106
      João Távora authored
      * sly-stickers.el (sly-stickers-empty-face): New face.
      (sly-stickers-recordings-face): Renamed from `sly-stickers-lit-face'
      (sly-stickers-mode-map): Simplify keymap.
      (sly-stickers--arm-sticker): Use `sly-stickers--last-values-list'
      (sly-stickers--disarm-sticker): Don't remhash here.
      (sly-stickers--populate-sticker): Adapt to new fetched values.
      (sly-stickers--mark-empty-sticker): New function.
      (sly-stickers--bring-out-yer-dead): Actually bring out the dead.
      (sly-stickers--delete): Leave in hash table.
      (sly-stickers-dwim): Simplify.
      (sly-stickers-fetch): Adapt to new protocol.
      
      * slynk-stickers.lisp (sticker): New class.
      (record): No need for so many gensyms.
      (check-stickers): Return less info.
      (inspect-sticker-values): Sticker is now its own class.
      9d3aa106
  10. 14 Sep, 2014 5 commits
    • João Távora's avatar
      Implement `sly-button-inspect' for stickers and fix bugs. · 9d93bb7b
      João Távora authored
      * sly-stickers.el (sly-stickers--sticker): Implement `sly-button-inspect' action
      
      * slynk-stickers.lisp (find-sticker-or-lose): New function.
      (inspect-sticker-values): New function.
      (compile-for-stickers): Dead stickers are dead.
      9d93bb7b
    • João Távora's avatar
      Stabilize `sly-stickers-dwim' behaviour · 4e4b9e11
      João Távora authored
      Also fix a ton of bugs
      
      * sly-stickers.el (sly-stickers--stickers-exactly-at): New function.
      (sly-stickers--sticker-map): Get rid of
      `sly-stickers-operate-on-sticker'
      (sly-stickers--sticker): Error when trying to make a sticker for same coordinates
      (sly-stickers--sticker-substickers): Check invariants.
      (sly-stickers-clear-region-stickers): New interactive function.
      (sly-stickers-clear-buffer-stickers): Use -region variant.
      (sly-stickers-clear-defun-stickers): Use -region variant.
      (sly-stickers-dwim): Improve and document.
      (sly-stickers-operate-on-sticker): Remove.
      (sly-stickers--delete): Remove from hashtable too.
      (sly-stickers-commit-stickers): Temporary stickers buffer is hidden.
      (sly-stickers--set-tooltip): New function.
      (sly-stickers--sticker, sly-stickers--arm-sticker)
      (sly-stickers--disarm-sticker, sly-stickers--populate-sticker):
      Use it.
      
      * slynk-stickers.lisp (check-stickers): Correctly iterate value
      lists.
      4e4b9e11
    • João Távora's avatar
      Improve sly-stickers · c829afbb
      João Távora authored
      The single `sly-stickers-dwim' keybinding needs more work.
      
      * sly-stickers.el (sly-stickers--flash-sticker): Flash stickers.
      (sly-stickers--sticker): Behave correctly when setting stickers
      from region.
      (sly-stickers--set-sticker-piority): New helper.
      (sly-stickers--increase-prio, sly-stickers--decrease-prio): Use it.
      (sly-stickers-dwim): Deactivate mark after setting from region.
      (sly-stickers-operate-on-sticker): "No stickers at point" is an
      error.
      (sly-stickers-commit-stickers): Use a second set of overlays.
      (sly-stickers-fetch): Flash all stickers, but populate only the
      ones with values.
      
      * sly.el (sly-with-popup-buffer): New :hidden option for existing
      `select' parameter.
      (sly-with-popup-buffer): Add edebug spec.
      (sly-flash-region): Make into cl-defun, and can flash multiple times.
      (sly--highlight-line): Adjust call to sly-flash-region.
      c829afbb
    • João Távora's avatar
      sly-stickers uses sly-buttons like everything else · 0cd60e60
      João Távora authored
      * contrib/sly-stickers.el (sly-stickers-mouse-hover-face): Don't need this.
      (sly-stickers-mode-map): Bind "C-c C-s S" to `sly-stickers--fetch'
      (sly-stickers--stickers-between): New.
      (sly-stickers--sticker): New button type.
      (sly-stickers--set-face): New function.
      (sly-stickers--sticker): Create a sticker button.
      (sly-stickers--arm-sticker, sly-stickers--sticker-id)
      (sly-stickers--disarm-sticker, sly-stickers--populate-sticker): Use buttons.
      (sly-stickers--decrease-prio, sly-stickers--increase-prio): New
      fucntions.
      (sly-stickers--sticker-priority): New function.
      (sly-stickers--delete): Improve to understand priorities.
      (sly-stickers--sticker-modified): New hook.
      (sly-stickers-operate-on-sticker): The "operate on existing
      sticker" part is taken to the sticker's own keymap.
      (sly-stickers-fetch): Don't warn too much.
      (sly-stickers-commit-stickers): Ensure current package.
      (sly-stickers-commit-stickers): Ensure a good sorting.
      0cd60e60
    • João Távora's avatar
      WIP sly-stickers contribs · fef22304
      João Távora authored
      Still some way to go, but already workable.
      
      * sly.el (sly-compilation-position): Factor out of sly-compile-string.
      (sly-after-compile-functions): New variable.
      (sly-before-compile-functions): Change semantics slightly.
      (sly-compile-file): Call with current buffer.
      (sly-compile-region): Pass hook to `sly-compile-string' so
      `sly-after-compile-functions' can be called.
      
      * slynk.asd (:slynk-stickers): Add system.
      
      * contrib/sly-stickers.el (sly-stickers): Add slynk-dependencies.
      (sly-stickers-mode-map): Use C-c C-s as a prefix map.
      (sly-stickers--stickers, sly-stickers--sticker-keymap)
      (sly-stickers--make-sticker, sly-stickers--sticker-id)
      (sly-stickers--arm-sticker, sly-stickers--disarm-sticker)
      (sly-stickers--populate-sticker)
      (sly-stickers--bring-out-your-dead): New.
      (sly-stickers-dwim): Use `sly-stickers--make-sticker'
      (sly-stickers-fetch): New function.
      (sly-stickers-commit-stickers): Redesign.
      
      * contrib/sly-stickers.el (sly-stickers-mouse-hover-face): New face.
      fef22304
  11. 13 Sep, 2014 2 commits
    • João Távora's avatar
      Improve sly-stickers contrib, which becomes minimally useful · 4c6ea611
      João Távora authored
      * sly.el (sly-flash-region): Accept optional `face' arg.
      
      * sly-fancy.el (sly-fancy): Activate `sly-stickers' by default.
      
      * sly-stickers.el (sly-stickers): Name contrib `sly-stickers', not sticker.
      (sly-parse): Require `sly-parse'
      (sly-stickers-clear-defun-stickers, sly-stickers-dwim)
      (sly-stickers--stickers-at-point): New functions.
      
      * slynk-trace-dialog.lisp (instrument): Just error when setf expanding.
      4c6ea611
    • João Távora's avatar
      Experimental sly-sticker.el contrib · 99ed5370
      João Távora authored
      99ed5370