emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/emacs-lisp/lisp-mode.el [lexbind]


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/lisp/emacs-lisp/lisp-mode.el [lexbind]
Date: Tue, 06 Jul 2004 07:09:57 -0400

Index: emacs/lisp/emacs-lisp/lisp-mode.el
diff -c emacs/lisp/emacs-lisp/lisp-mode.el:1.134.4.7 
emacs/lisp/emacs-lisp/lisp-mode.el:1.134.4.8
*** emacs/lisp/emacs-lisp/lisp-mode.el:1.134.4.7        Tue Jul  6 09:14:20 2004
--- emacs/lisp/emacs-lisp/lisp-mode.el  Tue Jul  6 09:31:50 2004
***************
*** 239,244 ****
--- 239,245 ----
      (set-keymap-parent emacs-lisp-mode-map lisp-mode-shared-map)
      (define-key emacs-lisp-mode-map "\e\t" 'lisp-complete-symbol)
      (define-key emacs-lisp-mode-map "\e\C-x" 'eval-defun)
+     (define-key emacs-lisp-mode-map "\e\C-q" 'indent-pp-sexp)
      (define-key emacs-lisp-mode-map [menu-bar] (make-sparse-keymap))
      (define-key emacs-lisp-mode-map [menu-bar emacs-lisp]
        (cons "Emacs-Lisp" map))
***************
*** 355,360 ****
--- 356,369 ----
    (setq imenu-case-fold-search t)
    (set-syntax-table lisp-mode-syntax-table)
    (run-mode-hooks 'lisp-mode-hook))
+ (put 'lisp-mode 'find-tag-default-function 'lisp-find-tag-default)
+ 
+ (defun lisp-find-tag-default ()
+   (let ((default (find-tag-default)))
+     (when (stringp default)
+       (if (string-match ":+" default)
+           (substring default (match-end 0))
+           default))))
  
  ;; Used in old LispM code.
  (defalias 'common-lisp-mode 'lisp-mode)
***************
*** 369,374 ****
--- 378,384 ----
    (let ((map (make-sparse-keymap)))
      (set-keymap-parent map lisp-mode-shared-map)
      (define-key map "\e\C-x" 'eval-defun)
+     (define-key map "\e\C-q" 'indent-pp-sexp)
      (define-key map "\e\t" 'lisp-complete-symbol)
      (define-key map "\n" 'eval-print-last-sexp)
      map)
***************
*** 460,466 ****
          (cond
           ((memq c '(?\; ?\( ?\) ?\{ ?\} ?\[ ?\] ?\" ?\' ?\\)) (string ?\\ c))
           ((eq c 127) "\\C-?")
!          (t (string c)))))))
  
  (defun eval-last-sexp-1 (eval-last-sexp-arg-internal)
    "Evaluate sexp before point; print value in minibuffer.
--- 470,479 ----
          (cond
           ((memq c '(?\; ?\( ?\) ?\{ ?\} ?\[ ?\] ?\" ?\' ?\\)) (string ?\\ c))
           ((eq c 127) "\\C-?")
!          (t
!           (condition-case nil
!               (string c)
!             (error nil))))))))
  
  (defun eval-last-sexp-1 (eval-last-sexp-arg-internal)
    "Evaluate sexp before point; print value in minibuffer.
***************
*** 532,544 ****
                         (prin1-to-string value)))
        (print-length eval-expression-print-length)
        (print-level eval-expression-print-level)
-       (char-string (prin1-char value))
        (beg (point))
        end)
      (prog1
        (prin1 value)
!       (if (and (eq standard-output t) char-string)
!         (princ (concat " = " char-string)))
        (setq end (point))
        (when (and (bufferp standard-output)
                 (or (not (null print-length))
--- 545,556 ----
                         (prin1-to-string value)))
        (print-length eval-expression-print-length)
        (print-level eval-expression-print-level)
        (beg (point))
        end)
      (prog1
        (prin1 value)
!       (let ((str (eval-expression-print-format value)))
!       (if str (princ str)))
        (setq end (point))
        (when (and (bufferp standard-output)
                 (or (not (null print-length))
***************
*** 1092,1097 ****
--- 1104,1122 ----
        (indent-sexp endmark)
        (set-marker endmark nil))))
  
+ (defun indent-pp-sexp (&optional arg)
+   "Indent each line of the list or, with prefix ARG, pretty-printify the 
list."
+   (interactive "P")
+   (if arg
+       (save-excursion
+         (save-restriction
+           (narrow-to-region (point) (progn (forward-sexp 1) (point)))
+           (pp-buffer)
+           (goto-char (point-max))
+           (if (eq (char-before) ?\n)
+               (delete-char -1)))))
+   (indent-sexp))
+ 
  ;;;; Lisp paragraph filling commands.
  
  (defcustom emacs-lisp-docstring-fill-column 65




reply via email to

[Prev in Thread] Current Thread [Next in Thread]