• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.10/emacs-93/emacs/lisp/progmodes/

Lines Matching +refs:meta +refs:complete +refs:list

111 ;; the TexInfo documentation or see a complete .emacs available at the
118 ;; Numerics, Inc. is growing less and less complete as the two
398 and it is turned on by default. However, when you have a complete library
409 \(...) A list of circumstances. Allowed members are:
438 files. The shell will only be asked for a list of paths when this
439 variable is nil. The value is a list of directories. A directory
487 whenever the path-list changes as a result of shell-query, etc., it is
511 "Association list setting the case of completed words.
558 (defcustom idlwave-complete-empty-string-as-lower-case nil
568 "Obsolete variable. See `idlwave-complete-empty-string-as-lower-case' and
616 On XEmacs, a full list of classes will also be placed into a `help-echo'
617 property on the competion items, so that the list of classes for the current
633 "Association list governing specification of object classes for completion.
635 When IDLWAVE tries to complete object-oriented methods, it usually
637 to provide the user with a correct list of methods or keywords, it
656 - for example to complete the method. Keywords to the method can
673 :type '(list
688 `idlwave-routine-info' and `idlwave-complete', depending upon the
739 When completion is not unique, Emacs displays a list of completions.
815 definitions, use the command `list-abbrevs', for abbrevs that move
873 See documentation for `idlwave-do-action' for a complete description of
884 `idlwave-do-action' for a complete description of the action lists.
898 (list nil
960 "*A list (PATHNAME STRING) specifying the doc-header template to use for
1015 "*A list of command line options for calling the IDL program.
1017 this should be a list of strings like '(\"-rt=file\" \"-nw\") with a separate
1041 are `control', `meta', `super', `hyper', `alt', and `shift'."
1045 (const meta)
1075 is everything and level 2 is specified by this list.
1077 a list of symbols, the following symbols are allowed.
1135 ;; To update this regexp, update the list of keywords and
1234 (list pros-and-functions batch-files)
1242 (list pros-and-functions
1342 (list
1347 (cons 'end (list idlwave-end-block-reg nil))
1357 (cons 'call (list (concat "\\(" idlwave-variable "\\) *= *"
1361 (cons 'call (list (concat
1365 (cons 'assign (list (concat
1368 "Associated list of statement matching regular expressions.
1371 type. The associated value is a list. The first element of this list
1373 identifying the statement type. The second element of this list is a
1377 list order matters since matching an assignment statement exactly is
1414 Otherwise ARGS forms a list that is evaluated."
1479 function of no arguments or a list to be evaluated. CMD is bound to
1511 (set table (append (eval table) (list (cons table-key cmd)))))))
1520 (list (if (listp cmd)
1522 (list cmd)))))))
1538 (define-key idlwave-mode-map [(meta control h)] 'idlwave-mark-subprogram)
1565 (vector (append mods-noshift (list (if shift ?C ?c))))
1568 (vector (append mods-noshift (list (if shift ?B ?b))))
1571 (vector (append mods-noshift (list (if shift ?E ?e))))
1584 (define-key idlwave-mode-map "\C-c\C-b" 'idlwave-list-buffer-load-path-shadows)
1600 (define-key idlwave-mode-map [(control meta ?\?)]
1603 (define-key idlwave-mode-map [(meta tab)] 'idlwave-complete)
1604 (define-key idlwave-mode-map [?\e?\t] 'idlwave-complete)
1605 (define-key idlwave-mode-map "\M-\C-i" 'idlwave-complete)
1647 (args (list (or table idlwave-mode-abbrev-table)
1842 \\[idlwave-complete] completes the names of procedures, functions
1865 For a full list, use \\[idlwave-list-abbrevs]. Some templates also
1866 have direct keybindings - see the list of keybindings below.
1898 Here is a list of all keybindings of this mode.
1950 ;; Set tag table list to use IDLTAGS as file name.
1952 (add-to-list 'tag-table-alist '("\\.pro$" . "IDLTAGS")))
1972 (add-to-list 'hs-special-modes-alist
1973 (list 'idlwave-mode
2047 "If non-nil, a list that can be evaluated using `eval'.
2090 (setq idlwave-command-hook (list 'backward-char (1+ arg)))
2547 (list name type class)))))
2708 list not just the type symbol. Returns nil if not an identifiable
2864 "Perform an action repeatedly on a line. ACTION is a list (REG
2866 to be called with `funcall' or a list to be evaluated with `eval'.
3873 "Return a list of substrings of STRING which are separated by PATTERN.
3906 Buffers in this list may be killed by `idlwave-kill-autoloaded-buffers'.")
3912 (if why (add-to-list 'idlwave-outlawed-buffers (cons buf why)))
3952 (let* ((list (copy-sequence idlwave-outlawed-buffers))
3955 (while (setq entry (pop list))
4001 the list of directories specified in the minibuffer. Directories may be
4011 ;; Read list of directories
4048 (setq files (list (concat dir "/*.pro"))))
4169 do (if (not (consp (symbol-value var))) (set var (list nil))))
4244 (defun idlwave-sintern-keyword-list (kwd-list &optional set)
4248 (cdr kwd-list))
4249 kwd-list)
4251 (defun idlwave-sintern-rinfo-list (list &optional set default-dir)
4256 (while list
4257 (setq entry (car list)
4258 list (cdr list)
4285 (setq source (list source-type source-file source-dir source-lib)))
4289 (idlwave-sintern-keyword-list x set))
4292 ;; Build a canonicalized list
4293 (setq new (nconc (list name type class source call) kwds)
4307 (set var nil) ; initial value of the association list
4365 "Provide a list of IDL routines.
4422 (args (list "-batch"
4451 ;; complete filepath, in which case DIR is unnecessary. HELPFILE can
4461 and by `idlwave-complete' (\\[idlwave-complete]) to provide information
4467 3. A list which covers the IDL system routines.
4468 4. A list which covers the prescanned library files.
4480 lists, but instead wait for the shell query to complete and
4626 ;; From a list of syntax statments, shorten with %s and group with "or"
4640 ;; Create a class list entry from the xml parsed list., returning a
4670 (if get (push (list pname plink) get-props))
4671 (if set (push (list pname plink) set-props))
4672 (if init (push (list pname plink) init-props))))
4689 (nconc (idlwave-xml-create-rinfo-list pelem class extra-kwds)
4701 (list class (append '(inherits) inherits) (list 'link link))
4702 (list class (list 'link link))))
4705 (defun idlwave-xml-create-rinfo-list (xml-entry &optional class extra-kws)
4706 ;; Create correctly structured list elements from ROUTINE or METHOD
4707 ;; XML list structures. Return a list of list elements, with more
4708 ;; than one sub-list possible if a routine can serve as both
4716 syntax kwd klink pref-list kwds pelem ptype entry props result type)
4741 (setq pref-list
4744 (loop for x in pref-list do
4745 (push (list (concat x kwd) klink) kwds)))
4746 (push (list kwd klink) kwds)))
4767 (push (append (list name (if (eq idx 0) 'pro 'fun)
4776 ;; Group keywords by link file, as a list with elements
4787 (push (list link (cons kwd anchor)) linkfiles))
4794 (push (list master-link) linkfiles))))
4807 ;; Duplicate and trim original routine aliases from rinfo list
4809 (let (alias remove-list new parts all-parts)
4825 (unless (memq alias remove-list) (push alias remove-list))
4829 (loop for x in remove-list do
4833 ;; Duplicate and trim original routine aliases from rinfo list
4835 (let (alias remove-list new parts all-parts)
4838 (unless (memq alias remove-list) (push alias remove-list))
4842 (loop for x in remove-list do
4847 ;; Create a sysvar list entry from the xml parsed list.
4869 (list sysvar (if tags (cons 'tags tags)) (list 'link link)))))
4954 (setq routines (idlwave-xml-create-rinfo-list elem))
5017 (idlwave-sintern-rinfo-list idlwave-system-routines 'sys))
5046 (idlwave-sintern-rinfo-list
5083 (idlwave-sintern-rinfo-list idlwave-system-routines 'sys))
5107 (idlwave-sintern-rinfo-list
5125 (reverse (buffer-list)))))
5135 (list (current-buffer))))))))
5138 (idlwave-sintern-rinfo-list res 'set))))
5171 (push (list class) idlwave-class-alist)))
5196 (idlwave-sintern-rinfo-list
5198 (list (current-buffer))) 'set))))
5205 (let ((list idlwave-buffer-routines)
5207 (while list
5211 (if (eq (idlwave-routine-source-file (nth 3 (car list))) file)
5213 (setcar list nil)
5217 (setq list nil)))
5218 (setq list (cdr list)))
5243 routine-list string entry)
5256 (push entry routine-list))))
5257 routine-list))
5295 (list name
5299 (list 'buffer (buffer-file-name)))
5304 ; (list 'lib))
5306 (t (list 'user (file-name-nondirectory (buffer-file-name))
5318 (cons nil (mapcar 'list keywords)) ;No help file
5374 (list x))))
5376 (mapcar 'list (idlwave-expand-path idlwave-library-path)))))
5419 (defun idlwave-display-user-catalog-widget (dirs-list)
5424 (unless dirs-list
5445 (let ((path-list (widget-get idlwave-widget :path-dirs)))
5449 path-list)
5450 (idlwave-display-user-catalog-widget path-list)))
5456 (let ((path-list (widget-get idlwave-widget :path-dirs)))
5459 path-list)
5460 (idlwave-display-user-catalog-widget path-list)))
5477 dirs-list))
5481 (list 'item
5484 (car x)))) dirs-list)))
5485 (widget-put idlwave-widget :path-dirs dirs-list)
5546 (list (current-buffer)))
5561 ;; Define the routine info list
5605 ;; Define the variable which contains a list of all scanned directories
5619 ;; Expand parts of path starting with '+' recursively into directory list.
5631 (setq path1 (append (idlwave-recursive-directory-list dir) path1))
5637 (defun idlwave-recursive-directory-list (dir)
5638 ;; Return a list of all directories below DIR, including DIR itself
5639 (let ((path (list dir)) path1 file files)
5691 (idlwave-sintern-rinfo-list
5809 t = [''] ; get tag list
5882 (defvar idlwave-complete-special nil)
5884 (defun idlwave-complete (&optional arg module class)
5890 - after a `(' or `,' in the argument list of a function or procedure,
5894 When several completions are possible, a list will be displayed in the
5895 *Completions* buffer. If this list is too long to fit into the
5897 \\[idlwave-complete].
5933 (let* ((where-list
5937 (idlwave-make-force-complete-where-list arg module class)
5939 (what (nth 2 where-list))
5941 (completion-regexp-list
5943 (list (read-string (concat "Completion Regexp: "))))))
5952 (eq (car-safe last-command) 'idlwave-display-completion-list)
5960 (idlwave-complete-filename))
5963 ((and idlwave-complete-special
5964 (idlwave-call-special idlwave-complete-special)))
5967 (error "Nothing to complete here"))
5972 (idlwave-complete-class))
5976 (let* ((cw-list (nth 3 where-list))
5977 (class-selector (idlwave-determine-class cw-list 'pro))
5978 (super-classes (unless (idlwave-explicit-class-listed cw-list)
5983 (list 'routine nil type-selector class-selector nil super-classes))
5984 (idlwave-complete-in-buffer
5999 (let* ((cw-list (nth 3 where-list))
6000 (class-selector (idlwave-determine-class cw-list 'fun))
6001 (super-classes (unless (idlwave-explicit-class-listed cw-list)
6006 (list 'routine nil type-selector class-selector nil super-classes))
6007 (idlwave-complete-in-buffer
6022 (idlwave-complete 3))
6026 (let* ((where (nth 3 where-list))
6037 (list (idlwave-entry-keywords entry 'do-link)))
6041 (setq list (idlwave-fix-keywords name 'pro class list
6043 (unless list (error "No keywords available for procedure %s"
6046 (list 'keyword name type-selector class-selector entry super-classes))
6047 (idlwave-complete-in-buffer
6048 'keyword 'keyword list nil
6051 (if (or (member '("_EXTRA") list)
6052 (member '("_REF_EXTRA") list))
6059 (let* ((where (nth 3 where-list))
6070 (list (idlwave-entry-keywords entry 'do-link))
6075 (setq list (idlwave-fix-keywords name 'fun class list
6083 (unless list (error "No keywords available for function %s"
6086 (list 'keyword name type-selector class-selector nil super-classes))
6087 (idlwave-complete-in-buffer
6088 'keyword 'keyword list nil
6090 (if (or (member '("_EXTRA") list)
6091 (member '("_REF_EXTRA") list))
6096 (t (error "This should not happen (idlwave-complete)")))))
6098 (defvar idlwave-complete-special nil
6102 should use `idlwave-complete-in-buffer' to do some completion and
6104 complete other contexts will be done. If the function returns nil,
6116 (defun idlwave-make-force-complete-where-list (what &optional module class)
6118 ;; routine to complete a specific item independent of context.
6119 ;; WHAT is the prefix arg of `idlwave-complete', see there for details.
6122 (let* ((what-list '(("procedure") ("procedure-keyword")
6133 "Complete what? " what-list nil t))))
6135 (setq what (intern (car (nth (1- what) what-list)))))
6138 (assoc (symbol-name what) what-list))
6141 (nil-list '(nil nil nil nil))
6142 (class-list (list nil nil (or class t) nil)))
6147 (list nil-list nil-list 'procedure nil-list nil))
6157 (list nil-list nil-list 'procedure-keyword
6158 (list pro nil nil nil) nil)))
6161 (list nil-list nil-list 'function nil-list nil))
6171 (list nil-list nil-list 'function-keyword
6172 (list func nil nil nil) nil)))
6175 (list nil-list nil-list 'procedure class-list nil))
6178 (let* ((class (idlwave-determine-class class-list 'pro))
6187 (list nil-list nil-list 'procedure-keyword
6188 (list pro nil class nil) nil)))
6191 (list nil-list nil-list 'function class-list nil))
6194 (let* ((class (idlwave-determine-class class-list 'fun))
6203 (list nil-list nil-list 'function-keyword
6204 (list func nil class nil) nil)))
6207 (list nil-list nil-list 'class nil-list nil))
6221 (defun idlwave-complete-filename ()
6222 "Use the comint stuff to complete a file name."
6232 (comint-dynamic-complete-filename)))
6238 (defun idlwave-rinfo-assoc (name type class list)
6242 type (idlwave-sintern-class class) list))
6244 (defun idlwave-rinfo-assq (name type class list)
6248 (while (setq match (assq name list))
6253 (setq list (cdr (memq match list)))))))
6255 (defun idlwave-rinfo-assq-any-class (name type class list)
6256 ;; Return the first matching method on the inheritance list
6260 (if (setq rtn (idlwave-rinfo-assq name type (pop classes) list))
6264 (defun idlwave-best-rinfo-assq (name type class list &optional with-file
6271 (idlwave-rinfo-assq-any-class name type class list)
6272 list))
6289 (defun idlwave-best-rinfo-assoc (name type class list &optional with-file
6294 type (idlwave-sintern-class class) list with-file keep-system))
6297 "Does the entry list ENTRIES contain a syslib entry?
6309 (defun idlwave-all-assq (key list)
6310 "Return a list of all associations of Key in LIST."
6312 (while (setq elt (assq key list))
6314 (setq list (cdr (memq elt list))))
6348 (defun idlwave-members-only (list club)
6349 "Return list of all elements in LIST which are also in CLUB."
6351 (while list
6352 (if (member (car list) club)
6353 (setq rtn (cons (car list) rtn)))
6354 (setq list (cdr list)))
6357 (defun idlwave-nonmembers-only (list club)
6358 "Return list of all elements in LIST which are not in CLUB."
6360 (while list
6361 (if (member (car list) club)
6363 (setq rtn (cons (car list) rtn)))
6364 (setq list (cdr list)))
6381 ;; INFO is the `cw-list' structure as returned by idlwave-where.
6434 (mapcar 'list (idlwave-all-method-classes (car info) type)))
6487 The return value is a list with the following stuff:
6554 ; ;; FIXME: I am sure there can be more in this list
6566 (list (list pro pro-point pro-class pro-arrow)
6567 (list func func-point func-class func-arrow)
6569 (list cw-mod cw-point cw-class cw-arrow)
6581 ;; Find out if point is within the argument list of a function.
6599 (progn (up-list -1) t)
6616 (list
6624 ;; Find out if point is within the argument list of a procedure.
6651 (list (idlwave-sintern-routine-or-method pro class)
6678 (forward-list 1)
6713 (defvar idlwave-complete-after-success-form nil
6715 (defvar idlwave-complete-after-success-form-force nil
6720 (defun idlwave-complete-in-buffer (type stype list selector prompt isa
6733 (unless list
6741 idlwave-complete-after-success-form
6742 (list 'idlwave-after-successful-completion
6743 (list 'quote type) slash beg)
6744 idlwave-complete-after-success-form-force
6745 (list 'idlwave-after-successful-completion
6746 (list 'quote type) slash (list 'quote 'force))))
6752 completion (try-completion part list selector)
6765 idlwave-complete-empty-string-as-lower-case)
6769 (if (eq t (try-completion completion list selector))
6776 (all-completions part list
6780 ;; This is already complete
6782 (message "%s is already the complete %s" part isa)
6785 ;; We cannot add something - offer a list.
6786 (message "Making completion list...")
6794 list))
6795 (let* ((list all-completions)
6796 ;; "complete" means, this is already a valid completion
6797 (complete (memq spart all-completions))
6803 (setq list (sort list (lambda (a b)
6806 (setq list (funcall prepare-display-function list)))
6809 idlwave-complete-empty-string-as-lower-case)
6811 (setq list (mapcar (lambda (x)
6816 list)))
6817 (idlwave-display-completion-list list prompt beg complete))
6820 (defun idlwave-complete-class ()
6823 ;; Call `idlwave-routines' to make sure the class list will be available
6836 ;; Do the completion, using list gathered from `idlwave-routines'
6837 (idlwave-complete-in-buffer
6840 '(lambda (list) ;; Push it to help-links if system help available
6847 list)))))
6849 (defun idlwave-attach-classes (list type show-classes)
6850 ;; Attach the proper class list to a LIST of completion items.
6860 list
6869 (lmax (if do-dots (apply 'max (mapcar 'length list))))
6877 (list
6910 (list x class-info)
6912 list))))
6914 (defun idlwave-attach-method-classes (list)
6916 (idlwave-attach-classes list 'method idlwave-completion-show-classes))
6917 (defun idlwave-attach-keyword-classes (list)
6919 (idlwave-attach-classes list 'kwd idlwave-completion-show-classes))
6920 (defun idlwave-attach-class-tag-classes (list)
6922 (idlwave-attach-classes list 'class-tag idlwave-completion-show-classes))
6934 (defun idlwave-popup-select (ev list title &optional sort)
6937 sort the list before displaying"
6940 (cond ((null list))
6941 ((= 1 (length list))
6942 (setq rtn (car list)))
6944 (if sort (setq list (sort list (lambda (a b)
6947 (append (list title)
6948 (mapcar (lambda (x) (vector x (list 'idlwave-pset
6950 list)))
6955 (if sort (setq list (sort list (lambda (a b)
6958 (list
6959 (append (list "")
6960 (mapcar (lambda(x) (cons x x)) list)))))
6972 (menu (list title))
7033 (eval idlwave-complete-after-success-form))
7038 (defun idlwave-display-completion-list (list &optional message beg complete)
7046 (idlwave-display-completion-list-xemacs
7047 list)
7048 (idlwave-display-completion-list-emacs list))
7050 ;; Store a special value in `this-command'. When `idlwave-complete'
7052 (setq this-command (list 'idlwave-display-completion-list message complete))
7059 (consp (car list)))
7066 (message (or message "Making completion list...done")))
7080 (eval idlwave-complete-after-success-form-force))
7085 (if (eq (car-safe last-command) 'idlwave-display-completion-list)
7112 ;; Need to make new list
7149 keys-alist (cons (list char help name) keys-alist))
7162 keys-alist (cons (list char help name) keys-alist))
7175 keys-alist (cons (list char help name) keys-alist))
7180 keys-alist (cons (list char help name) keys-alist))))
7201 "Keymap for completion-list-mode with idlwave-complete.")
7203 (defun idlwave-display-completion-list-xemacs (list &rest cl-args)
7205 (apply 'display-completion-list list
7232 (defun idlwave-display-completion-list-emacs (list)
7233 "Display completion list and install the choose wrappers."
7235 (display-completion-list list))
7289 "Return a list of all tags in the structure defined at point.
7301 (if (and (condition-case nil (progn (up-list -1) t) (error nil))
7317 "Return a list of all `inherits' names in the struct at point.
7336 (if (and (condition-case nil (progn (up-list -1) t) (error nil))
7358 (condition-case nil (forward-list 1)
7400 (let (list entry)
7417 (setq list idlwave-class-info)
7418 (while (setq entry (pop list))
7440 (let ((case-fold-search t) end-lim list name)
7490 (list this-class
7494 (setq entry (nconc entry (list (cons 'found-in class)))))
7510 "Return a list of native and inherited tags in CLASS."
7520 "Return a list of all superclasses of CLASS (recursively expanded).
7521 The list is cached in `idlwave-class-info' for faster access."
7547 (nconc info (list (cons 'all-inherits all-inherits)))
7556 (lambda (key-list)
7557 (let ((file (car key-list)))
7572 (push (list key) kwds)))
7573 (cdr key-list))))
7581 (lambda (key-list)
7582 (let ((file (car key-list))
7583 (kwd (assoc keyword (cdr key-list))))
7604 (add-to-list 'idlwave-complete-special 'idlwave-complete-class-structure-tag)
7607 (defun idlwave-complete-class-structure-tag ()
7626 (list 'idlwave-complete-class-structure-tag-help
7631 (idlwave-complete-in-buffer
7649 (list (idlwave-sintern-class-tag x 'set)))
7663 (add-to-list 'idlwave-complete-special 'idlwave-complete-sysvar-or-tag)
7668 (defun idlwave-complete-sysvar-or-tag ()
7677 (setq idlwave-completion-help-info '(idlwave-complete-sysvar-help))
7678 (idlwave-complete-in-buffer 'sysvar 'sysvar
7696 (list 'idlwave-complete-sysvar-tag-help var))
7697 (idlwave-complete-in-buffer 'sysvartag 'sysvartag
7706 (defun idlwave-complete-sysvar-help (mode word)
7716 (defun idlwave-complete-sysvar-tag-help (mode word)
7754 (defun idlwave-complete-class-structure-tag-help (mode word)
7803 (let ((list idlwave-system-variables-alist) entry tags)
7804 (while (setq entry (pop list))
7832 (cons (list var
7858 (defun idlwave-uniquify (list)
7859 (let ((ht (make-hash-table :size (length list) :test 'equal)))
7865 list))))
7914 point is on a routine name or in the argument list of a routine, help
7932 "Display a routines calling sequence and list of keywords. When
7933 point is on the name a function or procedure, or in the argument list
8008 (list 'idlwave-shell-send-command
8034 (list
8041 (list
8050 (assoc default list))
8053 list))
8132 (list
8152 (list this-word 'pro
8162 (list this-word 'fun
8170 (list this-word 'fun nil))
8172 (list func 'fun (idlwave-determine-class (nth 1 where) 'fun)))
8174 (list pro 'pro (idlwave-determine-class (nth 0 where) 'pro)))
8184 (list (car module)
8213 (setq module (list (idlwave-sintern-method "Init")
8220 "Update a list of keywords.
8223 demand _EXTRA in the keyword list."
8281 (mapcar (lambda (k) (add-to-list 'keywords k))
8285 ;; Return the final list
8294 If KEYWORD is an abbreviation of several keywords, a list of all possible
8381 (data (list name type class (current-buffer) nil initial-class))
8407 (setq props (list 'mouse-face 'highlight
8418 (add-text-properties beg (point) (list 'face 'bold))
8423 (setq props (list 'mouse-face 'highlight
8427 (if html-file (setq props (append (list 'face face 'link html-file)
8451 props (list 'mouse-face 'highlight
8456 (if system (setq props (append (list 'face face) props)))
8463 ;; Here entry is (key file (list of type-conses))
8465 (setq props (list 'mouse-face 'highlight
8468 'source (list (car (car (nth 2 entry))) ;type
8568 (add-text-properties beg (point) (list 'face 'bold)))
8572 (if (featurep 'xemacs) (list file t) (list file))))
8635 (list (list name type class source ""))))
8658 (if idlwave-complete-empty-string-as-lower-case
8677 (defun idlwave-list-buffer-load-path-shadows (&optional arg)
8682 (idlwave-list-load-path-shadows
8687 (defun idlwave-list-shell-load-path-shadows (&optional arg)
8701 (idlwave-list-load-path-shadows nil idlwave-compiled-routines
8704 (defun idlwave-list-all-load-path-shadows (&optional arg)
8707 (idlwave-list-load-path-shadows nil nil "globally"))
8709 (defun idlwave-list-load-path-shadows (arg &optional special-routines loc)
8731 (props (list 'mouse-face 'highlight
8766 (message "Compiling list...( 0%%)")
8773 (message "Compiling list...(%2d%%)" (/ (* n 100) nroutines)))
8775 ;; Get a list of all twins
8792 (setq props1 (append (list 'find-args
8793 (list (nth 0 routine)
8821 (defun idlwave-routine-twins (entry &optional list)
8825 ENTRY will also be returned, as the first item of this list."
8829 (candidates (idlwave-all-assq name (or list (idlwave-routines))))
8845 the `idlwave-system-routines' list, we omit the latter as
8873 ;; append the type-cons to the type list.
8876 (push (list key file (list type-cons)) alist)))
8937 (list (file-truename afile) afile (list atype))
8938 (list atype afile (list atype)))
8940 (list (file-truename bfile) bfile (list btype))
8941 (list btype bfile (list btype))))
8974 ;; measure the tail of the path list
9017 (defun idlwave-count-eq (elt list)
9019 (length (delq nil (mapcar (lambda (x) (eq x elt)) list))))
9038 (defun idlwave-path-alist-add-flag (list-entry flag)
9039 "Add a flag to the path list entry, if not set."
9040 (let ((flags (cdr list-entry)))
9041 (add-to-list 'flags flag)
9042 (setcdr list-entry flags)))
9044 (defun idlwave-path-alist-remove-flag (list-entry flag)
9045 "Remove a flag to the path list entry, if set."
9046 (let ((flags (delq flag (cdr list-entry))))
9047 (setcdr list-entry flags)))
9078 ;; (pop-up a list of IDL units in the current file).
9185 ["Complete" idlwave-complete t]
9187 ["1 Procedure Name" (idlwave-complete 'procedure) t]
9188 ["2 Procedure Keyword" (idlwave-complete 'procedure-keyword) t]
9190 ["3 Function Name" (idlwave-complete 'function) t]
9191 ["4 Function Keyword" (idlwave-complete 'function-keyword) t]
9193 ["5 Procedure Method Name" (idlwave-complete 'procedure-method) t]
9194 ["6 Procedure Method Keyword" (idlwave-complete 'procedure-method-keyword) t]
9196 ["7 Function Method Name" (idlwave-complete 'function-method) t]
9197 ["8 Function Method Keyword" (idlwave-complete 'function-method-keyword) t]
9199 ["9 Class Name" idlwave-complete-class t]))
9218 ["Check Current Buffer" idlwave-list-buffer-load-path-shadows t]
9219 ["Check Compiled Routines" idlwave-list-shell-load-path-shadows t]
9220 ["Check Everything" idlwave-list-all-load-path-shadows t])
9238 ["Abbreviation List" idlwave-list-abbrevs t]
9314 (defun idlwave-list-abbrevs (arg)
9319 The function does *not* list abbrevs which replace a word with itself
9323 With arg, list all abbrevs with the corresponding hook.
9325 This function was written since `list-abbrevs' looks terrible for IDLWAVE mode."
9348 (setq abbrevs (cons (list str rpl func) abbrevs)))))))
9350 ;; sort the list
9366 (lambda (list)
9367 (setq str (car list)
9368 rpl (nth 1 list)
9369 func (nth 2 list))
9384 ;;;###autoload (add-to-list 'auto-mode-alist '("\\.[Pp][Rr][Oo]\\'" . idlwave-mode))