Merge from emacs-24; up to 2014-05-01T10:21:17Z!rgm@gnu.org
[bpt/emacs.git] / lisp / progmodes / idlw-shell.el
index d843de0..e7bf379 100644 (file)
@@ -1,12 +1,11 @@
 ;; idlw-shell.el --- run IDL as an inferior process of Emacs.
 
-;; Copyright (C) 1999-201 Free Software Foundation, Inc.
+;; Copyright (C) 1999-2014 Free Software Foundation, Inc.
 
 ;; Authors: J.D. Smith <jdsmith@as.arizona.edu>
 ;;          Carsten Dominik <dominik@astro.uva.nl>
 ;;          Chris Chase <chase@att.com>
 ;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu>
-;; Version: 6.1.22
 ;; Keywords: processes
 ;; Package: idlwave
 
@@ -48,7 +47,7 @@
 ;;
 ;; Follow the instructions in the INSTALL file of the distribution.
 ;; In short, put this file on your load path and add the following
-;; lines to your .emacs file:
+;; lines to your init file:
 ;;
 ;; (autoload 'idlwave-shell "idlw-shell" "IDLWAVE Shell" t)
 ;;
@@ -111,9 +110,7 @@ For example, \"^\r?IDL> \" or \"^\r?WAVE> \".
 The \"^\r?\" is needed, to indicate the beginning of the line, with
 optional return character (which IDL seems to output randomly).
 This variable is used to initialize `comint-prompt-regexp' in the
-process buffer.
-
-This is a fine thing to set in your `.emacs' file."
+process buffer."
   :group 'idlwave-shell-general-setup
   :type 'regexp)
 
@@ -183,12 +180,6 @@ so that the name will be unique among multiple Emacs processes."
   :group 'idlwave-shell-general-setup
   :type 'string)
 
-(defvar idlwave-shell-fix-inserted-breaks nil
-  "OBSOLETE VARIABLE, is no longer used.
-
-The documentation of this variable used to be:
-If non-nil then run `idlwave-shell-remove-breaks' to clean up IDL messages.")
-
 (defcustom idlwave-shell-prefix-key "\C-c\C-d"
   "The prefix key for the debugging map `idlwave-shell-mode-prefix-map'.
 This variable must already be set when idlwave-shell.el is loaded.
@@ -223,9 +214,6 @@ window, but is useful for stepping, etc."
 
 ;; (defcustom idlwave-shell-debug-modifiers... See idlwave.el
 
-(defvar idlwave-shell-activate-alt-keybindings nil
-  "Obsolete variable.  See `idlwave-shell-debug-modifiers'.")
-
 (defcustom idlwave-shell-use-truename nil
   "Non-nil means, use `file-truename' when looking for buffers.
 If this variable is non-nil, Emacs will use the function `file-truename' to
@@ -335,9 +323,6 @@ expression being examined."
           (string :tag "Label  ")
           (string :tag "Command"))))
 
-(defvar idlwave-shell-print-expression-function nil
-  "OBSOLETE VARIABLE, is no longer used.")
-
 (defcustom idlwave-shell-separate-examine-output t
   "Non-nil means, put output of examine commands in their own buffer."
   :group 'idlwave-shell-command-setup
@@ -493,7 +478,7 @@ line where IDL is stopped.  See also `idlwave-shell-mark-stop-line'."
 
 (defcustom idlwave-shell-electric-stop-line-face
   (prog1
-      (copy-face 'modeline 'idlwave-shell-electric-stop-line)
+      (copy-face 'mode-line 'idlwave-shell-electric-stop-line)
     (set-face-background 'idlwave-shell-electric-stop-line
                         idlwave-shell-electric-stop-color)
     (condition-case nil
@@ -520,9 +505,6 @@ t          Glyph when possible, otherwise face (same effect as 'glyph)."
          (const :tag "Display glyph (red dot)" glyph)
          (const :tag "Glyph or face." t)))
 
-(defvar idlwave-shell-use-breakpoint-glyph t
-  "Obsolete variable.  See `idlwave-shell-mark-breakpoints'.")
-
 (defcustom idlwave-shell-breakpoint-face 'idlwave-shell-bp
   "The face for breakpoint lines in the source code.
 Allows you to choose the font, color and other properties for
@@ -1464,10 +1446,10 @@ Otherwise just move the line.  Move down unless UP is non-nil."
 
 ;; Newer versions of comint.el changed the name of comint-filter to
 ;; comint-output-filter.
-(defun idlwave-shell-comint-filter (process string) nil)
-(if (fboundp 'comint-output-filter)
-    (fset 'idlwave-shell-comint-filter (symbol-function 'comint-output-filter))
-  (fset 'idlwave-shell-comint-filter (symbol-function 'comint-filter)))
+(defalias 'idlwave-shell-comint-filter
+  (if (fboundp 'comint-output-filter)
+      #'comint-output-filter
+    #'comint-filter))
 
 (defun idlwave-shell-is-running ()
   "Return t if the shell process is running."
@@ -2187,7 +2169,7 @@ args of an executive .run, .rnew or .compile."
   ;; CWD might have changed, resync, to set default directory
   (idlwave-shell-resync-dirs)
   (let ((comint-file-name-chars idlwave-shell-file-name-chars))
-    (comint-filename-completion)))
+    (comint-dynamic-complete-filename)))
 
 (defun idlwave-shell-executive-command ()
   "Return the name of the current executive command, if any."
@@ -4198,12 +4180,8 @@ Otherwise, just expand the file name."
          ([(        ?[)]   ?[   idlwave-shell-goto-previous-bp t t)
          ([(        ?])]   ?]   idlwave-shell-goto-next-bp t t)
          ([(control ?f)]   ?f   idlwave-shell-window)))
-       (mod (cond ((and idlwave-shell-debug-modifiers
-                       (listp idlwave-shell-debug-modifiers)
-                       (not (equal '() idlwave-shell-debug-modifiers)))
-                  idlwave-shell-debug-modifiers)
-                 (idlwave-shell-activate-alt-keybindings
-                  '(alt))))
+       (mod (and (listp idlwave-shell-debug-modifiers)
+                idlwave-shell-debug-modifiers))
        (shift (memq 'shift mod))
        (mod-noshift (delete 'shift (copy-sequence mod)))
        s k1 c2 k2 cmd electric only-buffer cannotshift)