[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/idlwave b1fdd8b0e0 026/360: Integrated changes from GNU
From: |
ELPA Syncer |
Subject: |
[elpa] externals/idlwave b1fdd8b0e0 026/360: Integrated changes from GNU Emacs CVS, but had to undo |
Date: |
Sun, 28 Apr 2024 00:59:04 -0400 (EDT) |
branch: externals/idlwave
commit b1fdd8b0e036ebb0f27576e66d85c35cde8eb58f
Author: jdsmith <jdsmith>
Commit: jdsmith <jdsmith>
Integrated changes from GNU Emacs CVS, but had to undo
make-local-variable changes. Also worked around define-abbrev argument
change.
Fixed continuation line routine matching.
Added abbrev's, and wrote `idlwave-define-abbrev' to accomodate Emacs 21.
---
idlwave.el | 277 +++++++++++++++++++++++++++++++------------------------------
1 file changed, 143 insertions(+), 134 deletions(-)
diff --git a/idlwave.el b/idlwave.el
index c0a964fa11..68a86773ef 100644
--- a/idlwave.el
+++ b/idlwave.el
@@ -2,10 +2,10 @@
;; Copyright (c) 1999, 2000, 2001 Free Software Foundation
;; Author: Carsten Dominik <dominik@astro.uva.nl>
-;; Chris Chase <chase@att.com>
-;; Maintainer: J.D. Smith <jdsmith@alum.mit.edu>
+;; Chris Chase <chase@att.com>
+;; Maintainer: J.D. Smith <jdsmith@as.arizona.edu>
;; Version: VERSIONTAG
-;; Date: $Date: 2002/01/14 23:58:15 $
+;; Date: $Date: 2002/04/23 20:53:54 $
;; Keywords: languages
;; This file is part of GNU Emacs.
@@ -476,7 +476,7 @@ definition is displayed instead."
(defface idlwave-help-link-face
'((((class color)) (:foreground "Blue"))
- (t (:bold t)))
+ (t (:weight bold)))
"Face for highlighting links into IDLWAVE online help."
:group 'idlwave-online-help)
@@ -723,7 +723,7 @@ with this font in order to remind the user that this arrow
is special."
(defcustom idlwave-function-completion-adds-paren t
"*Non-nil means, completion automatically adds `(' after completed function.
-Nil means, don't add anything.
+nil means, don't add anything.
A value of `2' means, also add the closing parenthesis and position cursor
between the two."
:group 'idlwave-completion
@@ -956,7 +956,7 @@ See help on `idlwave-action-and-binding' for examples.")
")
"*A list (PATHNAME STRING) specifying the doc-header template to use for
summarizing a file. If PATHNAME is non-nil then this file will be included.
-Otherwise STRING is used. If NIL, the file summary will be omitted.
+Otherwise STRING is used. If nil, the file summary will be omitted.
For example you might set PATHNAME to the path for the
lib_template.pro file included in the IDL distribution.")
@@ -1643,135 +1643,144 @@ Capitalize system variables - action only
;;; space is inserted (this is the space typed by the user to expanded
;;; the abbrev).
;;;
+(defvar idlwave-mode-abbrev-table nil
+ "Abbreviation table used for IDLWAVE mode")
+(define-abbrev-table 'idlwave-mode-abbrev-table ())
+
+(defun idlwave-define-abbrev (name expansion hook &optional table)
+ "Define-abbrev with backward compatibility."
+ (let ((abbrevs-changed nil) ;; mask the current value to avoid save
+ (args (list (or table idlwave-mode-abbrev-table)
+ (concat idlwave-abbrev-start-char name)
+ expansion
+ hook)))
+ (condition-case nil
+ (apply 'define-abbrev (append args '(0 t)))
+ (error (apply 'define-abbrev args)))))
(condition-case nil
(modify-syntax-entry (string-to-char idlwave-abbrev-start-char)
"w" idlwave-mode-syntax-table)
(error nil))
-(defvar idlwave-mode-abbrev-table nil
- "Abbreviation table used for IDLWAVE mode")
-(define-abbrev-table 'idlwave-mode-abbrev-table ())
-(let ((abbrevs-changed nil) ;; mask the current value to avoid save
- (tb idlwave-mode-abbrev-table)
- (c idlwave-abbrev-start-char))
- ;;
- ;; Templates
- ;;
- (define-abbrev tb (concat c "c") "" (idlwave-code-abbrev idlwave-case))
- (define-abbrev tb (concat c "sw") "" (idlwave-code-abbrev idlwave-switch))
- (define-abbrev tb (concat c "f") "" (idlwave-code-abbrev idlwave-for))
- (define-abbrev tb (concat c "fu") "" (idlwave-code-abbrev idlwave-function))
- (define-abbrev tb (concat c "pr") "" (idlwave-code-abbrev
idlwave-procedure))
- (define-abbrev tb (concat c "r") "" (idlwave-code-abbrev idlwave-repeat))
- (define-abbrev tb (concat c "w") "" (idlwave-code-abbrev idlwave-while))
- (define-abbrev tb (concat c "i") "" (idlwave-code-abbrev idlwave-if))
- (define-abbrev tb (concat c "elif") "" (idlwave-code-abbrev idlwave-elif))
- ;;
- ;; Keywords, system functions, conversion routines
- ;;
- (define-abbrev tb (concat c "b") "begin" (idlwave-keyword-abbrev 0
t))
- (define-abbrev tb (concat c "co") "common" (idlwave-keyword-abbrev 0
t))
- (define-abbrev tb (concat c "cb") "byte()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "cx") "fix()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "cl") "long()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "cf") "float()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "cs") "string()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "cc") "complex()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "cd") "double()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "e") "else" (idlwave-keyword-abbrev 0
t))
- (define-abbrev tb (concat c "ec") "endcase" 'idlwave-show-begin)
- (define-abbrev tb (concat c "es") "endswitch" 'idlwave-show-begin)
- (define-abbrev tb (concat c "ee") "endelse" 'idlwave-show-begin)
- (define-abbrev tb (concat c "ef") "endfor" 'idlwave-show-begin)
- (define-abbrev tb (concat c "ei") "endif else if" 'idlwave-show-begin)
- (define-abbrev tb (concat c "el") "endif else" 'idlwave-show-begin)
- (define-abbrev tb (concat c "en") "endif" 'idlwave-show-begin)
- (define-abbrev tb (concat c "er") "endrep" 'idlwave-show-begin)
- (define-abbrev tb (concat c "ew") "endwhile" 'idlwave-show-begin)
- (define-abbrev tb (concat c "g") "goto," (idlwave-keyword-abbrev 0
t))
- (define-abbrev tb (concat c "h") "help," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "k") "keyword_set()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "n") "n_elements()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "on") "on_error," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "oi") "on_ioerror," (idlwave-keyword-abbrev 0
1))
- (define-abbrev tb (concat c "ow") "openw," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "or") "openr," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "ou") "openu," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "p") "print," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "pt") "plot," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "re") "read," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "rf") "readf," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "ru") "readu," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "rt") "return" (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "sc") "strcompress()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "sn") "strlen()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "sl") "strlowcase()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "su") "strupcase()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "sm") "strmid()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "sp") "strpos()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "st") "strput()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "sr") "strtrim()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "t") "then" (idlwave-keyword-abbrev 0
t))
- (define-abbrev tb (concat c "u") "until" (idlwave-keyword-abbrev 0
t))
- (define-abbrev tb (concat c "wu") "writeu," (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "ine") "if n_elements() eq 0 then"
- (idlwave-keyword-abbrev 11))
- (define-abbrev tb (concat c "inn") "if n_elements() ne 0 then"
- (idlwave-keyword-abbrev 11))
- (define-abbrev tb (concat c "np") "n_params()" (idlwave-keyword-abbrev 0))
- (define-abbrev tb (concat c "s") "size()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "wi") "widget_info()" (idlwave-keyword-abbrev 1))
- (define-abbrev tb (concat c "wc") "widget_control," (idlwave-keyword-abbrev
0))
+;;
+;; Templates
+;;
+(idlwave-define-abbrev "c" "" (idlwave-code-abbrev idlwave-case))
+(idlwave-define-abbrev "sw" "" (idlwave-code-abbrev idlwave-switch))
+(idlwave-define-abbrev "f" "" (idlwave-code-abbrev idlwave-for))
+(idlwave-define-abbrev "fu" "" (idlwave-code-abbrev idlwave-function))
+(idlwave-define-abbrev "pr" "" (idlwave-code-abbrev idlwave-procedure))
+(idlwave-define-abbrev "r" "" (idlwave-code-abbrev idlwave-repeat))
+(idlwave-define-abbrev "w" "" (idlwave-code-abbrev idlwave-while))
+(idlwave-define-abbrev "i" "" (idlwave-code-abbrev idlwave-if))
+(idlwave-define-abbrev "elif" "" (idlwave-code-abbrev idlwave-elif))
+;;
+;; Keywords, system functions, conversion routines
+;;
+(idlwave-define-abbrev "ap" "arg_present()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "b" "begin" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "co" "common" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "cb" "byte()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "cx" "fix()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "cl" "long()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "cf" "float()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "cs" "string()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "cc" "complex()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "cd" "double()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "e" "else" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "ec" "endcase" 'idlwave-show-begin)
+(idlwave-define-abbrev "es" "endswitch" 'idlwave-show-begin)
+(idlwave-define-abbrev "ee" "endelse" 'idlwave-show-begin)
+(idlwave-define-abbrev "ef" "endfor" 'idlwave-show-begin)
+(idlwave-define-abbrev "ei" "endif else if" 'idlwave-show-begin)
+(idlwave-define-abbrev "el" "endif else" 'idlwave-show-begin)
+(idlwave-define-abbrev "en" "endif" 'idlwave-show-begin)
+(idlwave-define-abbrev "er" "endrep" 'idlwave-show-begin)
+(idlwave-define-abbrev "ew" "endwhile" 'idlwave-show-begin)
+(idlwave-define-abbrev "g" "goto," (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "h" "help," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "k" "keyword_set()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "n" "n_elements()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "on" "on_error," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "oi" "on_ioerror," (idlwave-keyword-abbrev 0 1))
+(idlwave-define-abbrev "ow" "openw," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "or" "openr," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "ou" "openu," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "p" "print," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "pt" "plot," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "re" "read," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "rf" "readf," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "ru" "readu," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "rt" "return" (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "sc" "strcompress()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "sn" "strlen()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "sl" "strlowcase()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "su" "strupcase()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "sm" "strmid()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "sp" "strpos()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "st" "strput()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "sr" "strtrim()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "t" "then" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "u" "until" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "wu" "writeu," (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "iap" "if arg_present()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "ik" "if keyword_set() then" (idlwave-keyword-abbrev 6))
+(idlwave-define-abbrev "ine" "if n_elements() eq 0 then"
(idlwave-keyword-abbrev 11))
+(idlwave-define-abbrev "inn" "if n_elements() ne 0 then"
(idlwave-keyword-abbrev 11))
+(idlwave-define-abbrev "np" "n_params()" (idlwave-keyword-abbrev 0))
+(idlwave-define-abbrev "s" "size()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "wi" "widget_info()" (idlwave-keyword-abbrev 1))
+(idlwave-define-abbrev "wc" "widget_control," (idlwave-keyword-abbrev 0))
- ;; This section is reserved words only. (From IDL user manual)
- ;;
- (define-abbrev tb "and" "and" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "begin" "begin" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "break" "break" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "case" "case" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "common" "common" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "continue" "continue" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "do" "do" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "else" "else" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "end" "end" 'idlwave-show-begin-check)
- (define-abbrev tb "endcase" "endcase" 'idlwave-show-begin-check)
- (define-abbrev tb "endelse" "endelse" 'idlwave-show-begin-check)
- (define-abbrev tb "endfor" "endfor" 'idlwave-show-begin-check)
- (define-abbrev tb "endif" "endif" 'idlwave-show-begin-check)
- (define-abbrev tb "endrep" "endrep" 'idlwave-show-begin-check)
- (define-abbrev tb "endswitch" "endswitch" 'idlwave-show-begin-check)
- (define-abbrev tb "endwhi" "endwhi" 'idlwave-show-begin-check)
- (define-abbrev tb "endwhile" "endwhile" 'idlwave-show-begin-check)
- (define-abbrev tb "eq" "eq" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "for" "for" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "function" "function" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "ge" "ge" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "goto" "goto" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "gt" "gt" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "if" "if" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "le" "le" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "lt" "lt" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "mod" "mod" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "ne" "ne" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "not" "not" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "of" "of" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "on_ioerror" "on_ioerror" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "or" "or" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "pro" "pro" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "repeat" "repeat" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "switch" "switch" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "then" "then" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "until" "until" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "while" "while" (idlwave-keyword-abbrev 0 t))
- (define-abbrev tb "xor" "xor" (idlwave-keyword-abbrev 0 t)))
+;; This section is reserved words only. (From IDL user manual)
+;;
+(idlwave-define-abbrev "and" "and" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "begin" "begin" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "break" "break" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "case" "case" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "common" "common" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "continue" "continue" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "do" "do" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "else" "else" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "end" "end" 'idlwave-show-begin-check)
+(idlwave-define-abbrev "endcase" "endcase" 'idlwave-show-begin-check)
+(idlwave-define-abbrev "endelse" "endelse" 'idlwave-show-begin-check)
+(idlwave-define-abbrev "endfor" "endfor" 'idlwave-show-begin-check)
+(idlwave-define-abbrev "endif" "endif" 'idlwave-show-begin-check)
+(idlwave-define-abbrev "endrep" "endrep" 'idlwave-show-begin-check)
+(idlwave-define-abbrev "endswitch" "endswitch" 'idlwave-show-begin-check)
+(idlwave-define-abbrev "endwhi" "endwhi" 'idlwave-show-begin-check)
+(idlwave-define-abbrev "endwhile" "endwhile" 'idlwave-show-begin-check)
+(idlwave-define-abbrev "eq" "eq" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "for" "for" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "function" "function" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "ge" "ge" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "goto" "goto" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "gt" "gt" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "if" "if" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "le" "le" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "lt" "lt" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "mod" "mod" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "ne" "ne" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "not" "not" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "of" "of" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "on_ioerror" "on_ioerror" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "or" "or" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "pro" "pro" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "repeat" "repeat" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "switch" "switch" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "then" "then" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "until" "until" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "while" "while" (idlwave-keyword-abbrev 0 t))
+(idlwave-define-abbrev "xor" "xor" (idlwave-keyword-abbrev 0 t))
(defvar imenu-create-index-function)
(defvar extract-index-name-function)
(defvar prev-index-position-function)
(defvar imenu-extract-index-name-function)
(defvar imenu-prev-index-position-function)
-;; defined later - so just make the compiler shut up
+;; defined later - so just make the compiler hush
(defvar idlwave-mode-menu)
(defvar idlwave-mode-debug-menu)
@@ -1952,10 +1961,12 @@ The main features of this mode are
'idlwave-prev-index-position)
;; Make a local post-command-hook and add our hook to it
+ ;; NB: `make-local-hook' needed for older/alternative Emacs compatibility
(make-local-hook 'post-command-hook)
(add-hook 'post-command-hook 'idlwave-command-hook nil 'local)
;; Make local hooks for buffer updates
+ ;; NB: `make-local-hook' needed for older/alternative Emacs compatibility
(make-local-hook 'kill-buffer-hook)
(add-hook 'kill-buffer-hook 'idlwave-kill-buffer-update nil 'local)
(make-local-hook 'after-save-hook)
@@ -2321,7 +2332,9 @@ non-nil."
;; Split the string.
(progn (insert (setq beg (char-after beg)) " + "
idlwave-continuation-char beg)
- (backward-char 1))
+ (backward-char 1)
+ (newline-and-indent)
+ (forward-char 1))
;; Do not split the string.
(beep)
(message "Warning: continuation inside string!!")
@@ -2329,8 +2342,8 @@ non-nil."
;; Not splitting a string.
(if (not (member (char-before) '(?\ ?\t)))
(insert " "))
- (insert idlwave-continuation-char))
- (newline-and-indent))
+ (insert idlwave-continuation-char)
+ (newline-and-indent)))
(indent-new-comment-line))
;; Indent previous line
(setq beg (- (point-max) (point)))
@@ -5634,9 +5647,9 @@ ARROW: Location of the arrow"
(idlwave-start-of-substatement 'pre)
(setq string (buffer-substring (point) pos))
(if (string-match
- "\\`[ \t]*\\([a-zA-Z][a-zA-Z0-9$_]*\\)[ \t]*\\(,\\|\\'\\)" string)
- (setq pro (match-string 1 string)
- pro-point (+ (point) (match-beginning 1)))
+ "\\`\\(.*&\\)?[ \t]*\\([a-zA-Z][a-zA-Z0-9$_]*\\)[ \t]*\\(,\\|\\'\\)"
string)
+ (setq pro (match-string 2 string)
+ pro-point (+ (point) (match-beginning 2)))
(if (and (idlwave-skip-object)
(setq string (buffer-substring (point) pos))
(string-match
@@ -7895,12 +7908,8 @@ This function was written since `list-abbrevs' looks
terrible for IDLWAVE mode."
(set-buffer "*Help*")
(setq truncate-lines t)))
-;; Add .pro files to speedbar for support, catching errors
-(condition-case nil
- (progn
- (require 'speedbar)
- (speedbar-add-supported-extension ".pro"))
- (error nil))
+;; Add .pro files to speedbar for support, if it's loaded
+(eval-after-load "speedbar" '(speedbar-add-supported-extension ".pro"))
;; Try to load online help, but catch any errors.
(condition-case nil
- [elpa] externals/idlwave 49dd267fe8 010/360: *** empty log message ***, (continued)
- [elpa] externals/idlwave 49dd267fe8 010/360: *** empty log message ***, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 670c190429 012/360: Many new sections, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 42cf467142 014/360: Numerous doc fixes. paragraph-separate includes delimiter lines, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave da92ecff2e 015/360: (idlwave-fix-keywords): Removed vestigial alternate name testing., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave bd76e3f62f 018/360: (idlwave-skip-label-or-case): Avoids explicit class names like a->b::c,, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave e6ba22fb39 021/360: Copyright date update., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 66b53adf45 022/360: distfile depends on $(DISTFILES), ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave ddc340b38a 024/360: Fixed stupid idlwave-explicit-class-listed bug., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 7a9726a4f7 035/360: Hand install of info files., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave e129ebc0ef 023/360: Cleaned up speedbar `require' to support XEmacs, which doesn't like a 3, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave b1fdd8b0e0 026/360: Integrated changes from GNU Emacs CVS, but had to undo,
ELPA Syncer <=
- [elpa] externals/idlwave 98bbd6d2b7 027/360: Fixed race in make-temp-name, by using make-temp-file., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave f1096c874b 031/360: A few special matchers added for newly found mistakes on the manual., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 10f0e958c5 032/360: Moved some popup function to idlwave.el for common use., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave c559027c0b 037/360: New download dir., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 6996f933d1 041/360: Minor doc changes., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave fec3dde101 048/360: Fixed filename for emacs compliance, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave f261965c37 051/360: (idlwave-determine-class): Wrapped put-text-property in a, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave e471942dae 053/360: Added advice to make comint prompt read-only., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave aa94f6baec 057/360: (idlwave-statement-type): Relaxed the definition of, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave c710b76b34 059/360: (idlwave-do-context-help1): Shuffle the order and, ELPA Syncer, 2024/04/28