[slime-devel] comma shortcut doesn't work always

Helmut Eller e9626484 at stud3.tuwien.ac.at
Thu Apr 22 12:51:48 UTC 2004


Edi Weitz <edi at agharta.de> writes:

> I tried to debug this but I'm stuck. From my playing around I gather
> that when this happens slime-repl-mode-map isn't used at all[1] but I
> have no idea why this should be the case.

I suspect this has something to do with funny property inheritance
near the prompt.  Do the symptoms go a away if you try this?

(defun slime-repl-insert-prompt (result &optional time)
  "Goto to point max, insert RESULT and the prompt.  Set
slime-output-end to start of the inserted text slime-input-start to
end end."
  (slime-flush-output)
  (goto-char (point-max))
  (let ((start (point)))
    (unless (bolp) (insert "\n"))
    (slime-insert-propertized '(face slime-repl-result-face) result)
    (unless (bolp) (insert "\n"))
    (let ((prompt-start (point)))
      (slime-propertize-region
          '(face slime-repl-prompt-face
                 read-only t
                 intangible t
                 slime-repl-prompt t
                 ;; emacs stuff
                 rear-nonsticky t
                 ;; xemacs stuff
                 start-open t end-open t)
        (insert (slime-lisp-package) "> "))
      (set-marker slime-output-end start)
      (set-marker slime-repl-prompt-start-mark prompt-start)
      (slime-mark-input-start)
      (let ((time (or time 0.2)))
        (cond ((zerop time)
               (slime-repl-move-output-mark-before-prompt (current-buffer)))
              (t 
               (run-at-time time nil 'slime-repl-move-output-mark-before-prompt
                            (current-buffer))))))))





More information about the slime-devel mailing list