From heller at common-lisp.net Fri Jun 4 07:30:05 2010 From: heller at common-lisp.net (CVS User heller) Date: Fri, 04 Jun 2010 03:30:05 -0400 Subject: [slime-cvs] CVS slime Message-ID: Update of /project/slime/cvsroot/slime In directory cl-net:/tmp/cvs-serv8122 Modified Files: ChangeLog swank.lisp Log Message: Some *sldb-quit-restart* related fixes. * swank.lisp (*sldb-quit-restart*): Set to nil by default. (throw-to-toplevel, debug-in-emacs): Get rid of boundp tests. (format-restarts-for-emacs): Add a mark for *sldb-quit-restart*. (handle-requests): Always bind *emacs-connection*. (with-connection): Get rid of call-with-connection so that compilers can remove the call frame more easily. (repl-input-stream-read): Factored out from make-repl-input-stream. Bind a *sldb-quit-restart* here too; no need to restart the repl and a extra prompt for errors in Emacs requests. --- /project/slime/cvsroot/slime/ChangeLog 2010/05/28 13:55:30 1.2105 +++ /project/slime/cvsroot/slime/ChangeLog 2010/06/04 07:30:05 1.2106 @@ -1,3 +1,18 @@ +2010-06-04 Helmut Eller + + Some *sldb-quit-restart* related fixes. + + * swank.lisp (*sldb-quit-restart*): Set to nil by default. + (throw-to-toplevel, debug-in-emacs): Get rid of boundp tests. + (format-restarts-for-emacs): Add a mark for *sldb-quit-restart*. + (handle-requests): Always bind *emacs-connection*. + (with-connection): Get rid of call-with-connection so that + compilers can remove the call frame more easily. + (repl-input-stream-read): Factored out from + make-repl-input-stream. Bind a *sldb-quit-restart* here too; no + need to restart the repl and a extra prompt for errors in Emacs + requests. + 2010-05-28 Helmut Eller Fix last change. --- /project/slime/cvsroot/slime/swank.lisp 2010/05/27 14:48:12 1.717 +++ /project/slime/cvsroot/slime/swank.lisp 2010/06/04 07:30:05 1.718 @@ -569,17 +569,16 @@ (defmacro with-connection ((connection) &body body) "Execute BODY in the context of CONNECTION." - `(call-with-connection ,connection (lambda () , at body))) - -(defun call-with-connection (connection function) - (if (eq *emacs-connection* connection) - (funcall function) - (let ((*emacs-connection* connection) - (*pending-slime-interrupts* '())) - (without-slime-interrupts - (with-swank-error-handler (*emacs-connection*) - (with-io-redirection (*emacs-connection*) - (call-with-debugger-hook #'swank-debugger-hook function))))))) + `(let ((connection ,connection) + (function (lambda () . ,body))) + (if (eq *emacs-connection* connection) + (funcall function) + (let ((*emacs-connection* connection) + (*pending-slime-interrupts* '())) + (without-slime-interrupts + (with-swank-error-handler (connection) + (with-io-redirection (connection) + (call-with-debugger-hook #'swank-debugger-hook function)))))))) (defun call-with-retry-restart (msg thunk) (loop (with-simple-restart (retry "~a" msg) @@ -1022,10 +1021,8 @@ ;;;;; Event Processing -;; By default, this restart will be named "abort" because many people -;; press "a" instead of "q" in the debugger. -(define-special *sldb-quit-restart* - "The restart that will be invoked when the user calls sldb-quit.") +(defvar *sldb-quit-restart* nil + "The restart that will be invoked when the user calls sldb-quit.") ;; Establish a top-level restart and execute BODY. ;; Execute K if the restart is invoked. @@ -1043,14 +1040,14 @@ (defun handle-requests (connection &optional timeout) "Read and process :emacs-rex requests. The processing is done in the extent of the toplevel restart." - (cond ((boundp '*sldb-quit-restart*) - (assert *emacs-connection*) - (process-requests timeout)) - (t - (tagbody - start - (with-top-level-restart (connection (go start)) - (process-requests timeout)))))) + (with-connection (connection) + (cond (*sldb-quit-restart* + (process-requests timeout)) + (t + (tagbody + start + (with-top-level-restart (connection (go start)) + (process-requests timeout))))))) (defun process-requests (timeout) "Read and process requests from Emacs." @@ -1402,29 +1399,27 @@ (defun make-repl-input-stream (connection stdin) (make-input-stream - (lambda () - (log-event "pull-input: ~a ~a ~a~%" - (connection.socket-io connection) - (if (open-stream-p (connection.socket-io connection)) - :socket-open :socket-closed) - (if (open-stream-p stdin) - :stdin-open :stdin-closed)) - (loop - (let* ((socket (connection.socket-io connection)) - (inputs (list socket stdin)) - (ready (wait-for-input inputs))) - (cond ((eq ready :interrupt) - (check-slime-interrupts)) - ((member socket ready) - ;; A Slime request from Emacs is pending; make sure to - ;; redirect IO to the REPL buffer. - (with-io-redirection (connection) - (handle-requests connection t))) - ((member stdin ready) - ;; User typed something into the *inferior-lisp* buffer, - ;; so do not redirect. - (return (read-non-blocking stdin))) - (t (assert (null ready))))))))) + (lambda () (repl-input-stream-read connection stdin)))) + +(defun repl-input-stream-read (connection stdin) + (loop + (let* ((socket (connection.socket-io connection)) + (inputs (list socket stdin)) + (ready (wait-for-input inputs))) + (cond ((eq ready :interrupt) + (check-slime-interrupts)) + ((member socket ready) + ;; A Slime request from Emacs is pending; make sure to + ;; redirect IO to the REPL buffer. + (with-simple-restart (process-input "Continue reading input.") + (let ((*sldb-quit-restart* (find-restart 'process-input))) + (with-io-redirection (connection) + (handle-requests connection t))))) + ((member stdin ready) + ;; User typed something into the *inferior-lisp* buffer, + ;; so do not redirect. + (return (read-non-blocking stdin))) + (t (assert (null ready))))))) (defun read-non-blocking (stream) (with-output-to-string (str) @@ -2505,9 +2500,8 @@ (defun debug-in-emacs (condition) (let ((*swank-debugger-condition* condition) (*sldb-restarts* (compute-restarts condition)) - (*sldb-quit-restart* (if (boundp '*sldb-quit-restart*) - *sldb-quit-restart* - (find-restart 'abort))) + (*sldb-quit-restart* (and *sldb-quit-restart* + (find-restart *sldb-quit-restart*))) (*package* (or (and (boundp '*buffer-package*) (symbol-value '*buffer-package*)) *package*)) @@ -2578,10 +2572,11 @@ "Return a list of restarts for *swank-debugger-condition* in a format suitable for Emacs." (let ((*print-right-margin* most-positive-fixnum)) - (loop for restart in *sldb-restarts* - collect (list (princ-to-string (restart-name restart)) - (princ-to-string restart))))) - + (loop for restart in *sldb-restarts* collect + (list (format nil "~:[~;*~]~a" + (eq restart *sldb-quit-restart*) + (restart-name restart) ) + (princ-to-string restart))))) ;;;;; SLDB entry points @@ -2677,8 +2672,7 @@ (defslimefun throw-to-toplevel () "Invoke the ABORT-REQUEST restart abort an RPC from Emacs. If we are not evaluating an RPC then ABORT instead." - (assert (boundp '*sldb-quit-restart*)) ; bound by debug-in-emacs - (let ((restart (find-restart *sldb-quit-restart*))) + (let ((restart (and *sldb-quit-restart* (find-restart *sldb-quit-restart*)))) (cond (restart (invoke-restart restart)) (t (format nil "Restart not active [~s]" *sldb-quit-restart*))))) From heller at common-lisp.net Fri Jun 4 07:30:14 2010 From: heller at common-lisp.net (CVS User heller) Date: Fri, 04 Jun 2010 03:30:14 -0400 Subject: [slime-cvs] CVS slime Message-ID: Update of /project/slime/cvsroot/slime In directory cl-net:/tmp/cvs-serv9154 Modified Files: ChangeLog swank-allegro.lisp Log Message: * swank-allegro.lisp (socket-fd): Add support for allegro. --- /project/slime/cvsroot/slime/ChangeLog 2010/06/04 07:30:05 1.2106 +++ /project/slime/cvsroot/slime/ChangeLog 2010/06/04 07:30:13 1.2107 @@ -1,5 +1,9 @@ 2010-06-04 Helmut Eller + * swank-allegro.lisp (socket-fd): Add support for allegro. + +2010-06-04 Helmut Eller + Some *sldb-quit-restart* related fixes. * swank.lisp (*sldb-quit-restart*): Set to nil by default. --- /project/slime/cvsroot/slime/swank-allegro.lisp 2010/04/03 20:52:52 1.140 +++ /project/slime/cvsroot/slime/swank-allegro.lisp 2010/06/04 07:30:14 1.141 @@ -50,6 +50,9 @@ (setf (stream-external-format s) external-format)) s)) +(defimplementation socket-fd (stream) + (excl::stream-input-handle stream)) + (defvar *external-format-to-coding-system* '((:iso-8859-1 "latin-1" "latin-1-unix" "iso-latin-1-unix" From heller at common-lisp.net Fri Jun 4 07:30:18 2010 From: heller at common-lisp.net (CVS User heller) Date: Fri, 04 Jun 2010 03:30:18 -0400 Subject: [slime-cvs] CVS slime/contrib Message-ID: Update of /project/slime/cvsroot/slime/contrib In directory cl-net:/tmp/cvs-serv9217/contrib Modified Files: ChangeLog inferior-slime.el Log Message: * inferior-slime.el (inferior-slime-show-transcript): Update window point --- /project/slime/cvsroot/slime/contrib/ChangeLog 2010/05/29 05:40:18 1.389 +++ /project/slime/cvsroot/slime/contrib/ChangeLog 2010/06/04 07:30:18 1.390 @@ -3,6 +3,11 @@ * swank-fancy-inspector.lisp (emacs-inspect): Add [finalize] button for not finalized classes. +2010-06-04 Helmut Eller + + * inferior-slime.el (inferior-slime-show-transcript): Update + window point + 2010-05-28 Helmut Eller Call provide at the end of the file. --- /project/slime/cvsroot/slime/contrib/inferior-slime.el 2010/02/17 17:04:50 1.10 +++ /project/slime/cvsroot/slime/contrib/inferior-slime.el 2010/06/04 07:30:18 1.11 @@ -98,7 +98,9 @@ (defun inferior-slime-show-transcript (string) (remove-hook 'comint-output-filter-functions 'inferior-slime-show-transcript t) - (display-buffer (process-buffer (slime-inferior-process)) t)) + (with-current-buffer (process-buffer (slime-inferior-process)) + (let ((window (display-buffer (current-buffer) t))) + (set-window-point window (point-max))))) (defun inferior-slime-start-transcript () (let ((proc (slime-inferior-process))) From heller at common-lisp.net Fri Jun 4 07:30:26 2010 From: heller at common-lisp.net (CVS User heller) Date: Fri, 04 Jun 2010 03:30:26 -0400 Subject: [slime-cvs] CVS slime Message-ID: Update of /project/slime/cvsroot/slime In directory cl-net:/tmp/cvs-serv9268 Modified Files: ChangeLog swank.lisp Log Message: * swank.lisp: Move definition of LCONS before first use. Patch from Stelian Ionescu --- /project/slime/cvsroot/slime/ChangeLog 2010/06/04 07:30:13 1.2107 +++ /project/slime/cvsroot/slime/ChangeLog 2010/06/04 07:30:26 1.2108 @@ -1,3 +1,7 @@ +2010-06-04 Stelian Ionescu + + * swank.lisp: Move definition of LCONS before first use. + 2010-06-04 Helmut Eller * swank-allegro.lisp (socket-fd): Add support for allegro. --- /project/slime/cvsroot/slime/swank.lisp 2010/06/04 07:30:05 1.718 +++ /project/slime/cvsroot/slime/swank.lisp 2010/06/04 07:30:26 1.719 @@ -3290,6 +3290,52 @@ (list (to-string name) loc))) +;;;;; Lazy lists + +(defstruct (lcons (:constructor %lcons (car %cdr)) + (:predicate lcons?)) + car + (%cdr nil :type (or null lcons function)) + (forced? nil)) + +(defmacro lcons (car cdr) + `(%lcons ,car (lambda () ,cdr))) + +(defmacro lcons* (car cdr &rest more) + (cond ((null more) `(lcons ,car ,cdr)) + (t `(lcons ,car (lcons* ,cdr , at more))))) + +(defun lcons-cdr (lcons) + (with-struct* (lcons- @ lcons) + (cond ((@ forced?) + (@ %cdr)) + (t + (let ((value (funcall (@ %cdr)))) + (setf (@ forced?) t + (@ %cdr) value)))))) + +(defun llist-range (llist start end) + (llist-take (llist-skip llist start) (- end start))) + +(defun llist-skip (lcons index) + (do ((i 0 (1+ i)) + (l lcons (lcons-cdr l))) + ((or (= i index) (null l)) + l))) + +(defun llist-take (lcons count) + (let ((result '())) + (do ((i 0 (1+ i)) + (l lcons (lcons-cdr l))) + ((or (= i count) + (null l))) + (push (lcons-car l) result)) + (nreverse result))) + +(defun iline (label value) + `(:line ,label ,value)) + + ;;;; Inspecting (defvar *inspector-verbose* nil) @@ -3509,51 +3555,6 @@ (reset-inspector) (inspect-object (frame-var-value frame var)))) -;;;;; Lazy lists - -(defstruct (lcons (:constructor %lcons (car %cdr)) - (:predicate lcons?)) - car - (%cdr nil :type (or null lcons function)) - (forced? nil)) - -(defmacro lcons (car cdr) - `(%lcons ,car (lambda () ,cdr))) - -(defmacro lcons* (car cdr &rest more) - (cond ((null more) `(lcons ,car ,cdr)) - (t `(lcons ,car (lcons* ,cdr , at more))))) - -(defun lcons-cdr (lcons) - (with-struct* (lcons- @ lcons) - (cond ((@ forced?) - (@ %cdr)) - (t - (let ((value (funcall (@ %cdr)))) - (setf (@ forced?) t - (@ %cdr) value)))))) - -(defun llist-range (llist start end) - (llist-take (llist-skip llist start) (- end start))) - -(defun llist-skip (lcons index) - (do ((i 0 (1+ i)) - (l lcons (lcons-cdr l))) - ((or (= i index) (null l)) - l))) - -(defun llist-take (lcons count) - (let ((result '())) - (do ((i 0 (1+ i)) - (l lcons (lcons-cdr l))) - ((or (= i count) - (null l))) - (push (lcons-car l) result)) - (nreverse result))) - -(defun iline (label value) - `(:line ,label ,value)) - ;;;;; Lists (defmethod emacs-inspect ((o cons)) @@ -3601,7 +3602,6 @@ ;;;;; Hashtables - (defun hash-table-to-alist (ht) (let ((result '())) (maphash #'(lambda (key value) From heller at common-lisp.net Fri Jun 4 07:30:37 2010 From: heller at common-lisp.net (CVS User heller) Date: Fri, 04 Jun 2010 03:30:37 -0400 Subject: [slime-cvs] CVS slime Message-ID: Update of /project/slime/cvsroot/slime In directory cl-net:/tmp/cvs-serv9320 Modified Files: ChangeLog slime.el swank.lisp Log Message: * slime.el, swank.lisp: #'(lambda -> (lambda --- /project/slime/cvsroot/slime/ChangeLog 2010/06/04 07:30:26 1.2108 +++ /project/slime/cvsroot/slime/ChangeLog 2010/06/04 07:30:36 1.2109 @@ -1,3 +1,7 @@ +2010-06-04 Helmut Eller + + * slime.el, swank.lisp: #'(lambda -> (lambda + 2010-06-04 Stelian Ionescu * swank.lisp: Move definition of LCONS before first use. --- /project/slime/cvsroot/slime/slime.el 2010/05/28 13:55:30 1.1326 +++ /project/slime/cvsroot/slime/slime.el 2010/06/04 07:30:37 1.1327 @@ -3899,7 +3899,7 @@ (destructure-case (slime-location.position loc) ((:tag &rest tags) (visit-tags-table tags-file) - (mapcar #'(lambda (xref) + (mapcar (lambda (xref) (let ((old-dspec (slime-xref.dspec original-xref)) (new-dspec (slime-xref.dspec xref))) (setf (slime-xref.dspec xref) @@ -3960,7 +3960,7 @@ (defun slime-etags-definitions (name) "Search definitions matching NAME in the tags file. The result is a (possibly empty) list of definitions." - (mapcar #'(lambda (loc) + (mapcar (lambda (loc) (make-slime-xref :dspec (second (slime-location.hints loc)) :location loc)) (slime-etags-to-locations name))) @@ -5954,7 +5954,7 @@ (assert (memq initial-value slime-net-processes)) (flet ((connection-identifier (p) (format "%s (pid %d)" (slime-connection-name p) (slime-pid p)))) - (let ((candidates (mapcar #'(lambda (p) + (let ((candidates (mapcar (lambda (p) (cons (connection-identifier p) p)) slime-net-processes))) (cdr (assoc (completing-read prompt candidates --- /project/slime/cvsroot/slime/swank.lisp 2010/06/04 07:30:26 1.719 +++ /project/slime/cvsroot/slime/swank.lisp 2010/06/04 07:30:37 1.720 @@ -586,7 +586,7 @@ (defmacro with-retry-restart ((&key (msg "Retry.")) &body body) (check-type msg string) - `(call-with-retry-restart ,msg #'(lambda () , at body))) + `(call-with-retry-restart ,msg (lambda () , at body))) (defmacro with-struct* ((conc-name get obj) &body body) (let ((var (gensym))) @@ -2776,7 +2776,7 @@ (handler-bind ((compiler-condition (lambda (c) (push (make-compiler-note c) notes)))) (measure-time-interval - #'(lambda () + (lambda () ;; To report location of error-signaling toplevel forms ;; for errors in EVAL-WHEN or during macroexpansion. (with-simple-restart (abort "Abort compilation.") @@ -3604,8 +3604,8 @@ (defun hash-table-to-alist (ht) (let ((result '())) - (maphash #'(lambda (key value) - (setq result (acons key value result))) + (maphash (lambda (key value) + (setq result (acons key value result))) ht) result)) From heller at common-lisp.net Fri Jun 4 07:30:41 2010 From: heller at common-lisp.net (CVS User heller) Date: Fri, 04 Jun 2010 03:30:41 -0400 Subject: [slime-cvs] CVS slime/contrib Message-ID: Update of /project/slime/cvsroot/slime/contrib In directory cl-net:/tmp/cvs-serv9398/contrib Modified Files: ChangeLog Log Message: *** empty log message *** --- /project/slime/cvsroot/slime/contrib/ChangeLog 2010/06/04 07:30:18 1.390 +++ /project/slime/cvsroot/slime/contrib/ChangeLog 2010/06/04 07:30:41 1.391 @@ -1,13 +1,13 @@ -2010-05-29 Stas Boukarev - - * swank-fancy-inspector.lisp (emacs-inspect): Add [finalize] - button for not finalized classes. - 2010-06-04 Helmut Eller * inferior-slime.el (inferior-slime-show-transcript): Update window point +2010-05-29 Stas Boukarev + + * swank-fancy-inspector.lisp (emacs-inspect): Add [finalize] + button for not finalized classes. + 2010-05-28 Helmut Eller Call provide at the end of the file. From sboukarev at common-lisp.net Mon Jun 14 15:27:24 2010 From: sboukarev at common-lisp.net (CVS User sboukarev) Date: Mon, 14 Jun 2010 11:27:24 -0400 Subject: [slime-cvs] CVS slime/contrib Message-ID: Update of /project/slime/cvsroot/slime/contrib In directory cl-net:/tmp/cvs-serv5969 Modified Files: ChangeLog swank-asdf.lisp Log Message: * swank-asdf.lisp (asdf-central-registry): ASDF2 compatibility. Patch by Leo Liu. --- /project/slime/cvsroot/slime/contrib/ChangeLog 2010/06/04 07:30:41 1.391 +++ /project/slime/cvsroot/slime/contrib/ChangeLog 2010/06/14 15:27:24 1.392 @@ -1,3 +1,8 @@ +2010-06-14 Stas Boukarev + + * swank-asdf.lisp (asdf-central-registry): ASDF2 compatibility. + Patch by Leo Liu. + 2010-06-04 Helmut Eller * inferior-slime.el (inferior-slime-show-transcript): Update --- /project/slime/cvsroot/slime/contrib/swank-asdf.lisp 2010/01/08 10:59:46 1.27 +++ /project/slime/cvsroot/slime/contrib/swank-asdf.lisp 2010/06/14 15:27:24 1.28 @@ -69,7 +69,8 @@ (asdf:compile-error () nil))) (defun asdf-central-registry () - asdf:*central-registry*) + (append asdf:*central-registry* + #+asdf2 (car asdf::*source-registry*))) (defslimefun list-all-systems-in-central-registry () "Returns a list of all systems in ASDF's central registry." From sboukarev at common-lisp.net Tue Jun 15 08:50:29 2010 From: sboukarev at common-lisp.net (CVS User sboukarev) Date: Tue, 15 Jun 2010 04:50:29 -0400 Subject: [slime-cvs] CVS slime/contrib Message-ID: Update of /project/slime/cvsroot/slime/contrib In directory cl-net:/tmp/cvs-serv10791 Modified Files: ChangeLog swank-asdf.lisp Log Message: * swank-asdf.lisp (asdf-central-registry): Use an exported interface for ASDF2. --- /project/slime/cvsroot/slime/contrib/ChangeLog 2010/06/14 15:27:24 1.392 +++ /project/slime/cvsroot/slime/contrib/ChangeLog 2010/06/15 08:50:29 1.393 @@ -1,3 +1,8 @@ +2010-06-15 Stas Boukarev + + * swank-asdf.lisp (asdf-central-registry): Use an exported + interface for ASDF2. + 2010-06-14 Stas Boukarev * swank-asdf.lisp (asdf-central-registry): ASDF2 compatibility. --- /project/slime/cvsroot/slime/contrib/swank-asdf.lisp 2010/06/14 15:27:24 1.28 +++ /project/slime/cvsroot/slime/contrib/swank-asdf.lisp 2010/06/15 08:50:29 1.29 @@ -70,7 +70,7 @@ (defun asdf-central-registry () (append asdf:*central-registry* - #+asdf2 (car asdf::*source-registry*))) + #+asdf2 (asdf:ensure-source-registry))) (defslimefun list-all-systems-in-central-registry () "Returns a list of all systems in ASDF's central registry." From heller at common-lisp.net Fri Jun 18 12:31:44 2010 From: heller at common-lisp.net (CVS User heller) Date: Fri, 18 Jun 2010 08:31:44 -0400 Subject: [slime-cvs] CVS slime Message-ID: Update of /project/slime/cvsroot/slime In directory cl-net:/tmp/cvs-serv19564 Modified Files: ChangeLog slime.el Log Message: Don't use goto-line. * slime.el (slime-goto-line): New function as replacement without goto-line's cruft that we don't want. --- /project/slime/cvsroot/slime/ChangeLog 2010/06/04 07:30:36 1.2109 +++ /project/slime/cvsroot/slime/ChangeLog 2010/06/18 12:31:43 1.2110 @@ -1,3 +1,10 @@ +2010-06-18 Helmut Eller + + Don't use goto-line. + + * slime.el (slime-goto-line): New function as replacement without + goto-line's cruft that we don't want. + 2010-06-04 Helmut Eller * slime.el, swank.lisp: #'(lambda -> (lambda --- /project/slime/cvsroot/slime/slime.el 2010/06/04 07:30:37 1.1327 +++ /project/slime/cvsroot/slime/slime.el 2010/06/18 12:31:43 1.1328 @@ -4035,12 +4035,21 @@ (destructure-case what ((:filename file &key line column position) (find-file (slime-from-lisp-filename file)) - (when line (goto-line line)) + (when line (slime-goto-line line)) (when column (move-to-column column)) (when position (goto-char position))) ((:function-name name) (slime-edit-definition name))))) +(defun slime-goto-line (line-number) + "Move to line LINE-NUMBER (1-based). +This is similar to `goto-line' but without pushing the mark and +the display stuff that we neither need nor want." + (assert (= (buffer-size) (- (point-max) (point-min))) () + "slime-goto-line in narrowed buffer") + (goto-char (point-min)) + (forward-line (1- line-number))) + (defun slime-y-or-n-p (thread tag question) (slime-dispatch-event `(:emacs-return ,thread ,tag ,(y-or-n-p question)))) From heller at common-lisp.net Fri Jun 18 12:31:55 2010 From: heller at common-lisp.net (CVS User heller) Date: Fri, 18 Jun 2010 08:31:55 -0400 Subject: [slime-cvs] CVS slime Message-ID: Update of /project/slime/cvsroot/slime In directory cl-net:/tmp/cvs-serv19621 Modified Files: ChangeLog slime.el Log Message: * slime.el (slime-current-tlf-number,slime-current-form-path): Moved to contrib/slime-parse.el. --- /project/slime/cvsroot/slime/ChangeLog 2010/06/18 12:31:43 1.2110 +++ /project/slime/cvsroot/slime/ChangeLog 2010/06/18 12:31:54 1.2111 @@ -1,5 +1,10 @@ 2010-06-18 Helmut Eller + * slime.el (slime-current-tlf-number,slime-current-form-path): + Moved to contrib/slime-parse.el. + +2010-06-18 Helmut Eller + Don't use goto-line. * slime.el (slime-goto-line): New function as replacement without --- /project/slime/cvsroot/slime/slime.el 2010/06/18 12:31:43 1.1328 +++ /project/slime/cvsroot/slime/slime.el 2010/06/18 12:31:54 1.1329 @@ -3045,47 +3045,6 @@ (goto-char (point-min)) (slime-forward-source-path source-path)) -;;; The following two functions can be handy when inspecting -;;; source-location while debugging `M-.'. -;;; -(defun slime-current-tlf-number () - "Return the current toplevel number." - (interactive) - (let ((original-pos (car (slime-region-for-defun-at-point))) - (n 0)) - (save-excursion - ;; We use this and no repeated `beginning-of-defun's to get - ;; reader conditionals right. - (goto-char (point-min)) - (while (progn (slime-forward-sexp) - (< (point) original-pos)) - (incf n))) - n)) - -;;; This is similiar to `slime-enclosing-form-paths' in the -;;; `slime-parse' contrib except that this does not do any duck-tape -;;; parsing, and gets reader conditionals right. -(defun slime-current-form-path () - "Returns the path from the beginning of the current toplevel -form to the atom at point, or nil if we're in front of a tlf." - (interactive) - (let ((source-path nil)) - (save-excursion - ;; Moving forward to get reader conditionals right. - (loop for inner-pos = (point) - for outer-pos = (nth-value 1 (slime-current-parser-state)) - while outer-pos do - (goto-char outer-pos) - (unless (eq (char-before) ?#) ; when at #(...) continue. - (forward-char) - (let ((n 0)) - (while (progn (slime-forward-sexp) - (< (point) inner-pos)) - (incf n)) - (push n source-path) - (goto-char outer-pos))))) - source-path)) - (defun slime-forward-positioned-source-path (source-path) "Move forward through a sourcepath from a fixed position. The point is assumed to already be at the outermost sexp, making the From heller at common-lisp.net Fri Jun 18 12:31:55 2010 From: heller at common-lisp.net (CVS User heller) Date: Fri, 18 Jun 2010 08:31:55 -0400 Subject: [slime-cvs] CVS slime/contrib Message-ID: Update of /project/slime/cvsroot/slime/contrib In directory cl-net:/tmp/cvs-serv19621/contrib Modified Files: slime-parse.el Log Message: * slime.el (slime-current-tlf-number,slime-current-form-path): Moved to contrib/slime-parse.el. --- /project/slime/cvsroot/slime/contrib/slime-parse.el 2010/05/28 14:15:30 1.37 +++ /project/slime/cvsroot/slime/contrib/slime-parse.el 2010/06/18 12:31:55 1.38 @@ -396,4 +396,45 @@ (let ((state (slime-current-parser-state))) (or (nth 3 state) (nth 4 state)))) +;;; The following two functions can be handy when inspecting +;;; source-location while debugging `M-.'. +;;; +(defun slime-current-tlf-number () + "Return the current toplevel number." + (interactive) + (let ((original-pos (car (slime-region-for-defun-at-point))) + (n 0)) + (save-excursion + ;; We use this and no repeated `beginning-of-defun's to get + ;; reader conditionals right. + (goto-char (point-min)) + (while (progn (slime-forward-sexp) + (< (point) original-pos)) + (incf n))) + n)) + +;;; This is similiar to `slime-enclosing-form-paths' in the +;;; `slime-parse' contrib except that this does not do any duck-tape +;;; parsing, and gets reader conditionals right. +(defun slime-current-form-path () + "Returns the path from the beginning of the current toplevel +form to the atom at point, or nil if we're in front of a tlf." + (interactive) + (let ((source-path nil)) + (save-excursion + ;; Moving forward to get reader conditionals right. + (loop for inner-pos = (point) + for outer-pos = (nth-value 1 (slime-current-parser-state)) + while outer-pos do + (goto-char outer-pos) + (unless (eq (char-before) ?#) ; when at #(...) continue. + (forward-char) + (let ((n 0)) + (while (progn (slime-forward-sexp) + (< (point) inner-pos)) + (incf n)) + (push n source-path) + (goto-char outer-pos))))) + source-path)) + (provide 'slime-parse) From heller at common-lisp.net Tue Jun 22 10:02:50 2010 From: heller at common-lisp.net (CVS User heller) Date: Tue, 22 Jun 2010 06:02:50 -0400 Subject: [slime-cvs] CVS slime Message-ID: Update of /project/slime/cvsroot/slime In directory cl-net:/tmp/cvs-serv28334 Modified Files: ChangeLog swank-loader.lisp Log Message: * swank-loader.lisp (*architecture-features*): ECL uses :x86_64. --- /project/slime/cvsroot/slime/ChangeLog 2010/06/18 12:31:54 1.2111 +++ /project/slime/cvsroot/slime/ChangeLog 2010/06/22 10:02:49 1.2112 @@ -1,3 +1,7 @@ +2010-06-22 Helmut Eller + + * swank-loader.lisp (*architecture-features*): ECL uses :x86_64. + 2010-06-18 Helmut Eller * slime.el (slime-current-tlf-number,slime-current-form-path): --- /project/slime/cvsroot/slime/swank-loader.lisp 2010/05/10 05:27:55 1.105 +++ /project/slime/cvsroot/slime/swank-loader.lisp 2010/06/22 10:02:49 1.106 @@ -55,7 +55,7 @@ :unix)) (defparameter *architecture-features* - '(:powerpc :ppc :x86 :x86-64 :amd64 :i686 :i586 :i486 :pc386 :iapx386 + '(:powerpc :ppc :x86 :x86-64 :x86_64 :amd64 :i686 :i586 :i486 :pc386 :iapx386 :sparc64 :sparc :hppa64 :hppa :pentium3 :pentium4 :java-1.4 :java-1.5 :java-1.6 :java-1.7))