• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/emacs-92/emacs/lisp/textmodes/

Lines Matching +defs:previous +defs:search +defs:string

81   :type '(repeat string))
85 If this is a string, use it as the initial field text.
89 (string :tag "Initial text")
100 :type '(repeat (group (string :tag "Field")
101 (string :tag "Comment")
103 (const nil) string function)))))
161 See also `bibtex-sort-ignore-string-entries'."
183 (repeat :tag "Entry name" string))))
196 (defcustom bibtex-sort-ignore-string-entries t
229 ("journal" "Name of the journal (use string, remove braces)")
234 ("month" "Month of the publication as a string (remove braces)")
239 ("journal" "Name of the journal (use string, remove braces)")
243 ("month" "Month of the publication as a string (remove braces)")
256 ("month" "Month of the publication as a string (remove braces)")
268 ("month" "Month of the publication as a string (remove braces)")
275 ("month" "Month of the publication as a string (remove braces)")
291 ("month" "Month of the publication as a string (remove braces)")
307 ("month" "Month of the publication as a string (remove braces)")
324 ("month" "Month of the publication as a string (remove braces)")
340 ("month" "Month of the publication as a string (remove braces)")
353 ("month" "Month of the publication as a string (remove braces)")
367 ("month" "Month of the publication as a string (remove braces)")
377 ("month" "Month of the publication as a string (remove braces)")
387 ("month" "Month of the publication as a string (remove braces)")
394 ("month" "Month of the publication as a string (remove braces)")
404 ("month" "Month of the publication as a string (remove braces)")
415 ("month" "Month of the publication as a string (remove braces)")
427 ("month" "Month of the publication as a string (remove braces)")
433 (("month" "Month of the publication as a string (remove braces)")
455 :type '(repeat (group (string :tag "Entry name")
457 (group (string :tag "Field")
458 (string :tag "Comment")
460 (const nil) string function))
465 (group (string :tag "Field")
466 (string :tag "Comment")
468 (const nil) string function)))))
471 (group (string :tag "Field")
472 (string :tag "Comment")
474 (const nil) string function))
479 (group (string :tag "Field")
480 (string :tag "Comment")
482 (const nil) string function)))))))))
488 :type 'string)
508 "Alist of month string definitions used in the BibTeX style files.
511 :type '(repeat (cons (string :tag "Month abbreviation")
512 (string :tag "Month expansion"))))
537 "Alist of string definitions used in the BibTeX style files.
540 :type '(repeat (cons (string :tag "String")
541 (string :tag "String expansion"))))
543 (defcustom bibtex-string-files nil
544 "List of BibTeX files containing string definitions.
546 to the directories specified in `bibtex-string-file-path'."
550 (defvar bibtex-string-file-path (getenv "BIBINPUTS")
551 "*Colon separated list of paths to search for `bibtex-string-files'.")
564 "*Colon separated list of paths to search for `bibtex-files'.")
571 (defcustom bibtex-autokey-prefix-string ""
575 :type 'string)
597 :type 'string)
641 (string :tag "New"))))
669 :type 'string)
737 (string :tag "New"))))
748 (string :tag "New"))))
762 :type 'string)
768 :type 'string)
774 :type 'string)
784 and must return a string (the key to use)."
833 :type '(repeat string))
860 are passed through `format' using STRING as format control string.
864 REPLACE can be a string, or a number (which selects the corresponding
883 (string :tag "BibTeX field")
888 (string :tag "Format control string")
890 (list (string :tag "BibTeX field")
892 (choice (string :tag "Replacement")
896 (list (string :tag "BibTeX field")
898 (choice (string :tag "Replacement")
925 ;; Keys cannot have = in them (wrong font-lock of @string{foo=bar}).
946 (define-key km "\C-c\C-p" 'bibtex-pop-previous)
1016 ["Snatch from Similar Preceding Field" bibtex-pop-previous t]
1076 (defvar bibtex-pop-previous-search-point nil
1077 "Next point where `bibtex-pop-previous' starts looking for a similar entry.")
1079 (defvar bibtex-pop-next-search-point nil
1102 (bibtex-parse-strings (bibtex-string-files-init))))
1103 "Completion table for BibTeX string keys.
1104 Initialized from `bibtex-predefined-strings' and `bibtex-string-files'.")
1140 (defvar bibtex-reformat-previous-options nil
1143 (defvar bibtex-reformat-previous-reference-keys nil
1193 (defconst bibtex-string-type "^[ \t]*\\(@[ \t]*String\\)[ \t]*[({][ \t\n]*"
1196 (defconst bibtex-string-maybe-empty-head
1197 (concat bibtex-string-type "\\(" bibtex-reference-key "\\)?")
1231 (defvar bibtex-string-empty-key nil
1232 "If non-nil, `bibtex-parse-string' accepts empty key.")
1256 "Parse a string of the format <left-hand-side = right-hand-side>.
1295 (defconst bibtex-braced-string-syntax-table
1308 (defconst bibtex-quoted-string-syntax-table
1315 (defun bibtex-parse-field-string ()
1316 "Parse a BibTeX field string enclosed by braces or quotes.
1317 If a syntactically correct string is found, a pair containing the start and
1318 end position of the field string is returned, nil otherwise.
1323 (with-syntax-table bibtex-quoted-string-syntax-table
1328 (with-syntax-table bibtex-braced-string-syntax-table
1336 The text part is either a string, or an empty string, or a constant followed
1337 by one or more <# (string|constant)> pairs. If a syntactically correct text
1345 ((setq boundaries (bibtex-parse-field-string))
1376 (defun bibtex-search-forward-field (name &optional bound)
1379 the boundaries of the name and text parts of the field. The search
1380 is limited by optional arg BOUND. If BOUND is t the search is limited
1387 (case-fold-search t) bounds)
1391 (re-search-forward regexp nil t))
1404 ;; Bounded search or bound is nil (i.e. we cannot overshoot).
1405 ;; Indeed, the search is bounded when `bibtex-search-forward-field'
1408 (case-fold-search t) left right)
1410 (re-search-forward name-part bound t))
1417 (defun bibtex-search-backward-field (name &optional bound)
1420 the boundaries of the name and text parts of the field. The search
1421 is limited by the optional arg BOUND. If BOUND is t the search is
1427 (case-fold-search t) left right)
1430 (when (search-backward "," bound t)
1438 (re-search-backward name-part bound t))
1453 (string-match "\\`\\(OPT\\|ALT\\)" name))
1460 by removing field delimiters and concatenating the resulting string.
1469 (let ((mtch (match-string-no-properties 0)))
1471 (cdr (assoc-string mtch (bibtex-strings) t)))
1474 (let ((bounds (bibtex-parse-field-string)))
1478 (re-search-forward "\\=[ \t\n]*#[ \t\n]*" nil t))
1490 (bounds (bibtex-search-forward-field field end)))
1494 (setq bounds (bibtex-search-forward-field
1502 (defun bibtex-parse-string-prefix ()
1503 "Parse the prefix part of a BibTeX string entry, including reference key.
1504 If the string prefix is found, return a triple consisting of the position of
1507 If `bibtex-string-empty-key' is non-nil accept empty string key."
1508 (let ((case-fold-search t))
1509 (if (looking-at bibtex-string-type)
1517 ((and bibtex-string-empty-key
1522 (defun bibtex-parse-string-postfix ()
1523 "Parse the postfix part of a BibTeX string entry, including the text.
1524 If the string postfix is found, return a triple consisting of the position of
1526 character of the string entry. Move point past BibTeX string entry."
1527 (let* ((case-fold-search t)
1537 (defun bibtex-parse-string (&optional empty-key)
1538 "Parse a BibTeX string entry beginning at the position of point.
1542 (let ((bibtex-string-empty-key empty-key))
1543 (bibtex-parse-association 'bibtex-parse-string-prefix
1544 'bibtex-parse-string-postfix)))
1546 (defun bibtex-search-forward-string (&optional empty-key)
1547 "Search forward to find a BibTeX string entry.
1549 the reference key and text parts of the string is returned.
1553 (let ((case-fold-search t) bounds)
1555 (search-forward-regexp bibtex-string-type nil t))
1557 (setq bounds (bibtex-parse-string empty-key))))
1560 (defun bibtex-reference-key-in-string (bounds)
1561 "Return the key part of a BibTeX string defined via BOUNDS"
1565 (defun bibtex-text-in-string (bounds &optional content)
1566 "Get text in BibTeX string field defined via BOUNDS.
1568 by removing field delimiters and concatenating the resulting string.
1572 (defsubst bibtex-start-of-text-in-string (bounds)
1574 (defsubst bibtex-end-of-text-in-string (bounds)
1576 (defsubst bibtex-end-of-string (bounds)
1587 (or (match-string-no-properties bibtex-key-in-head)
1593 (let ((case-fold-search t))
1597 (bibtex-parse-string-postfix))))
1602 (defsubst bibtex-string= (str1 str2)
1624 (let ((case-fold-search t) end)
1649 beginning of previous valid one. A valid entry is a syntactical correct one
1651 `bibtex-sort-ignore-string-entries' is nil, a syntactical correct string
1655 (let ((case-fold-search t)
1661 (and (not bibtex-sort-ignore-string-entries)
1662 (setq bounds (bibtex-parse-string))
1664 (bibtex-end-of-string bounds))))))
1665 (backward (re-search-backward "^[ \t]*@" nil 'move))
1666 (t (if (re-search-forward "\n\\([ \t]*@\\)" nil 'move)
1675 see regexp `bibtex-entry-head'. If `bibtex-sort-ignore-string-entries'
1677 (let ((case-fold-search t)
1688 If FLAG is a string, the message is initialized (in this case a
1711 "Return a string dependent on `bibtex-field-delimiters'."
1717 "Return a string dependent on `bibtex-field-delimiters'."
1723 "Return a string dependent on `bibtex-entry-delimiters'."
1729 "Return a string dependent on `bibtex-entry-delimiters'."
1736 (let ((case-fold-search t)
1765 (re-search-forward "^[ \t]*[@\n]" nil 'move)
1771 If `bibtex-sort-ignore-string-entries' is non-nil, @String entries
1790 (let ((bounds (bibtex-search-backward-field bibtex-field-name t)))
1833 (let ((case-fold-search t)
1845 (or (re-search-forward bibtex-entry-type nil t)
1849 (setq entry-list (assoc-string (buffer-substring-no-properties
1870 (field (assoc-string "crossref" fields-alist t)))
1881 field (assoc-string (car rfield) fields-alist t))
1903 (opt-alt (string-match "OPT\\|ALT"
1919 (let ((field (assoc-string
1959 (bibtex-string= field-name "pages")
1968 (bibtex-string= field-name "booktitle")
1982 (bibtex-string= field-name "title"))
1992 (assoc-string field-name req-field-list t))
1997 (let ((fname (car (assoc-string
2057 (defun bibtex-autokey-abbrev (string len)
2064 (<= (length string) (abs len)))
2065 string)
2069 (substring string 0 (abs len)))
2070 (t (let* ((case-fold-search t)
2071 (abort-char (string-match "[^aeiou]" string (1- len))))
2073 (substring string 0 (1+ abort-char))
2074 string)))))
2077 "Get content of BibTeX field FIELD. Return empty string if not found.
2083 case-fold-search)
2086 (setq content (replace-regexp-in-string (car pattern)
2093 Return the names as a concatenated string obeying `bibtex-autokey-names'
2098 (if (string= "" names)
2100 (let* ((case-fold-search t)
2102 (split-string names "[ \t\n]+and[ \t\n]+")))
2119 (let* (case-fold-search
2120 (name (cond ((string-match "\\([[:upper:]][^, ]*\\)[^,]*," fullname)
2124 (match-string 1 fullname))
2125 ((string-match "\\([^, ]*\\)," fullname)
2128 (match-string 1 fullname))
2129 ((string-match "\\(\\<[[:lower:]][^ ]* +\\)+\\([[:upper:]][^ ]*\\)"
2134 (match-string 2 fullname))
2135 ((string-match "\\([^ ]+\\) *\\'" fullname)
2138 (match-string 1 fullname))
2144 "Return year field contents as a string obeying `bibtex-autokey-year-length'."
2151 Return the result as a string"
2152 (let ((case-fold-search t)
2157 (if (string-match bibtex-autokey-title-terminators titlestring)
2166 (string-match "\\b\\w+" titlestring))
2167 (setq word (match-string 0 titlestring)
2173 (not (string-match (concat "\\`\\(?:" (car lst)
2185 (unless (string-match "\\b\\w+" titlestring)
2194 (let ((case-fold-search t)
2197 (not (string-match (concat "\\`\\(?:" (caar alist) "\\)\\'")
2224 names with the string `bibtex-autokey-name-separator' between any two.
2226 part, append the string `bibtex-autokey-additional-names'.
2256 the string `bibtex-autokey-titleword-separator' between any two.
2259 1. Concatenate `bibtex-autokey-prefix-string', the name part, the year
2266 key as the argument. Use the return value of this function (a string)
2273 (autokey (concat bibtex-autokey-prefix-string
2308 (defun bibtex-read-string-key (&optional key)
2309 "Read BibTeX string key from minibuffer using default KEY."
2330 (let ((case-fold-search t)
2334 (while (re-search-forward re nil t)
2345 ((assoc-string (bibtex-type-in-head)
2354 (bibtex-sort-ignore-string-entries t)
2365 (if (and (setq bounds (bibtex-search-forward-field "crossref" end))
2378 "Set `bibtex-strings' to the string definitions in the whole buffer.
2391 (dolist (string add)
2392 (unless (assoc-string (car string) strings t)
2393 (push string strings))))
2395 (while (setq bounds (bibtex-search-forward-string))
2400 (setq key (bibtex-reference-key-in-string bounds))
2401 (unless (assoc-string key strings t)
2402 (push (cons key (bibtex-text-in-string bounds t))
2404 (goto-char (bibtex-end-of-text-in-string bounds)))
2411 (bibtex-parse-strings (bibtex-string-files-init))))
2413 (defun bibtex-string-files-init ()
2415 Use `bibtex-predefined-strings' and BibTeX files `bibtex-string-files'."
2417 (let ((dirlist (split-string (or bibtex-string-file-path default-directory)
2419 (case-fold-search)
2420 string-files fullfilename compl bounds found)
2421 ;; collect absolute file names of valid string files
2422 (dolist (filename bibtex-string-files)
2423 (unless (string-match "\\.bib\\'" filename)
2428 (push filename string-files)
2433 (push fullfilename string-files)
2436 (error "File %s not in paths defined via bibtex-string-file-path"
2438 ;; parse string files
2439 (dolist (filename string-files)
2443 (while (setq bounds (bibtex-search-forward-string))
2444 (push (cons (bibtex-reference-key-in-string bounds)
2445 (bibtex-text-in-string bounds t))
2447 (goto-char (bibtex-end-of-string bounds)))))
2458 (strings-init (bibtex-string-files-init)))
2482 (let ((file-path (split-string (or bibtex-file-path default-directory) ":+"))
2489 ((progn (unless (string-match "\\.bib\\'" file)
2529 (let* ((case-fold-search t)
2531 (re-search-backward "[ \t{\"]")
2541 ((not (string= part-of-word completion))
2553 (defun bibtex-complete-string-cleanup (str compl)
2554 "Cleanup after inserting string STR.
2560 (assoc-string str compl t)))))
2607 (if (not (string= "" (cdr arg)))
2616 Generic function used by `bibtex-pop-previous' and `bibtex-pop-next'."
2625 ;; if executed several times in a row, start each search where
2628 (goto-char (if (eq direction 'previous)
2629 bibtex-pop-previous-search-point
2630 bibtex-pop-next-search-point)))
2631 ((eq direction 'previous)
2634 ;; Search for arg'th previous/next similar field
2637 ;; The search of BibTeX fields is not bounded by entry boundaries
2638 (if (eq direction 'previous)
2639 (if (setq bounds (bibtex-search-backward-field field-name))
2642 (if (setq bounds (bibtex-search-forward-field field-name))
2647 (if (eq direction 'previous) "previous" "next"))
2660 (setq bibtex-pop-previous-search-point (marker-position nbeg)
2661 bibtex-pop-next-search-point (marker-position nend))))))
2672 (re-search-backward field-reg nil t))))
2675 "Font-lock for URLs. BOUND limits the search."
2676 (let ((case-fold-search t)
2682 (prog1 (re-search-forward bibtex-font-lock-url-regexp bound t)
2683 (setq field (match-string-no-properties 1)))
2697 (setq found (and (bibtex-string= field (car url))
2698 (re-search-forward (cdr url) end t)
2706 "Font-lock for crossref fields. BOUND limits the search."
2707 (let ((case-fold-search t)
2714 (re-search-forward crossref-reg bound t))
2771 The names of optional fields start with the string OPT, and are thus ignored
2773 start with the string ALT. The OPT or ALT string may be removed from
2819 (set (make-local-variable 'fill-prefix) (make-string (+ bibtex-entry-offset
2840 imenu-case-fold-search t)
2841 (make-local-variable 'choose-completion-string-functions)
2854 (let ((e (assoc-string entry-type bibtex-entry-field-alist t))
2933 (setq required (delete (assoc-string fname required t) required)
2934 optional (delete (assoc-string fname optional t) optional))
2935 (when (string-match "\\`[0-9]+\\'"
2980 (case-fold-search t)
2981 (bibtex-sort-ignore-string-entries t)
2985 ;; First see whether to use the previous or the next entry
2991 (bibtex-string= type (bibtex-type-in-head))
3000 (bibtex-string= type (bibtex-type-in-head))
3014 (let ((text (assoc-string (bibtex-name-in-field bounds t)
3027 (_ (if (string-match "[0-9]+\\'" prefix)
3031 (while (re-search-backward (regexp-quote other-suffix) key-end 'move)
3040 (if (string-match "@" field)
3041 (cond ((bibtex-string= field "@string")
3043 ((bibtex-string= field "@preamble")
3046 (let* ((case-fold-search t)
3052 (comment (assoc-string field (append (car field-list)
3059 FIELD is either a string or a list of the form
3098 (unless (stringp init) (error "`%s' is not a string" init)))
3111 beginning of the previous entry. If point is ahead of all BibTeX entries
3117 (re-search-backward "^[ \t]*@" nil 'move)
3123 of the previous entry. Do not move if ahead of first entry.
3126 (let ((case-fold-search t)
3132 ((setq bounds (or (bibtex-parse-string t) (bibtex-parse-preamble)))
3133 (goto-char (bibtex-end-of-string bounds)))
3146 (re-search-forward "[\n\C-m]" nil 'end (1- arg))
3177 (defun bibtex-count-entries (&optional count-string-entries)
3184 (bibtex-sort-ignore-string-entries (not count-string-entries)))
3203 (bibtex-search-forward-field "abstract" t))))
3223 (let ((case-fold-search t))
3224 (if (re-search-forward bibtex-entry-maybe-empty-head nil t)
3228 ;; Don't search CROSSREF-KEY if we don't need it.
3230 (let ((bounds (bibtex-search-forward-field
3258 (or (string-lessp (nth 1 index1) (nth 1 index2))
3259 (and (string-equal (nth 1 index1) (nth 1 index2))
3260 (string-lessp (nth 0 index1) (nth 0 index2))))
3261 (not (string-lessp (nth 0 index2) (nth 1 index1))))
3263 (string-lessp (nth 0 index1) (nth 1 index2))
3264 (string-lessp (nth 0 index1) (nth 0 index2)))))
3274 (string-lessp (car index1) (car index2))))))
3276 (string-lessp (car index1) (car index2)))))
3282 affected. If `bibtex-sort-ignore-string-entries' is non-nil, @String entries
3296 If `bibtex-files' is non-nil, search all these files.
3297 Otherwise the search is limited to the current buffer.
3310 (let ((bounds (bibtex-search-forward-field "crossref" t)))
3343 With prefix arg GLOBAL non-nil, search KEY in `bibtex-files'.
3344 Otherwise the search is limited to the current buffer.
3345 Optional arg START is buffer position where the search starts.
3346 If it is nil, start search at beginning of buffer.
3357 (if (cdr (assoc-string key bibtex-reference-keys))
3369 (let* ((case-fold-search t)
3372 (if (re-search-forward (concat "^[ \t]*\\("
3390 search to look for place for KEY. This requires that buffer is sorted,
3398 (string-equal key ""))
3402 ;; if key-exist is non-nil due to the previous cond clause
3406 (let* ((case-fold-search t)
3414 ;; Binary search
3453 (let* ((case-fold-search t)
3463 (while (setq end (re-search-forward "^[ \t]*@" nil t))
3468 ((setq bounds (or (bibtex-parse-string)
3470 (goto-char (bibtex-end-of-string bounds)))
3484 (let (previous current key-list)
3490 (cond ((not previous))
3496 (not (bibtex-lessp previous current)))
3501 (setq previous current)))
3510 (cdr (assoc-string (car key) bibtex-reference-keys)))
3520 (let ((bibtex-sort-ignore-string-entries t))
3524 (let* ((entry-list (assoc-string (bibtex-type-in-head)
3532 (if (and (bibtex-string= field-name "month")
3535 (not (or (string-match "\\`[\"{].+[\"}]\\'" month)
3536 (assoc-string
3542 (setq field (assoc-string field-name req t)
3544 creq (delete (assoc-string field-name creq t) creq))
3551 (if (bibtex-string= field-name "crossref")
3613 (while (re-search-forward bibtex-entry-head nil t)
3616 (if (or (and strings (bibtex-string= entry-type "string"))
3617 (assoc-string entry-type bibtex-entry-field-alist t))
3632 (when (assoc-string key current-keys)
3647 (dolist (err (sort error-list 'string-lessp)) (insert err))
3666 (if (assoc-string (car bounds) '("@String" "@Preamble") t)
3673 (re-search-forward bibtex-any-entry-maybe-empty-head nil t))
3703 is a BibTeX string constant. Return value is nil if field or entry head
3712 (case-fold-search t)
3713 name start-text end-text end failure done no-sub string-const)
3721 ((setq bounds (bibtex-parse-string t))
3722 (if (<= pnt (bibtex-end-of-string bounds))
3724 start-text (bibtex-start-of-text-in-string bounds)
3725 end-text (bibtex-end-of-text-in-string bounds)
3726 end (bibtex-end-of-string bounds))
3730 (if (<= pnt (bibtex-end-of-string bounds))
3732 start-text (bibtex-start-of-text-in-string bounds)
3733 end-text (bibtex-end-of-text-in-string bounds)
3734 end (bibtex-end-of-string bounds))
3740 (re-search-forward "\\=[ \t\n]*," nil t)))
3742 (setq name (match-string-no-properties bibtex-type-in-head)
3758 string-const t))
3759 (prog1 (setq bounds (bibtex-parse-field-string))
3761 string-const nil)))
3770 (list name start-text end-text end string-const))
3776 "Remove the string starting optional/alternative fields.
3780 (let ((case-fold-search t)
3787 (search-forward "=")
3793 (search-forward "=")
3816 (let* ((case-fold-search t)
3847 (let* ((case-fold-search t)
3850 (if (re-search-forward
3886 With no argument, the previous kill is inserted.
3887 With argument N, insert the Nth previous kill.
3912 (defun bibtex-pop-previous (arg)
3913 "Replace text of current field with the similar field in previous entry.
3917 (bibtex-pop arg 'previous))
3922 intermixed with \\[bibtex-pop-previous] (bibtex-pop-previous)."
3940 (let ((case-fold-search t)
3947 (cond ((bibtex-string= entry-type "preamble")
3950 ((bibtex-string= entry-type "string")
3951 (setq entry-type 'string))
3952 ;; (bibtex-format-string)
3957 ;; Sometimes bibtex-generate-autokey returns an empty string
3958 (if (or bibtex-autokey-edit-before-use (string= "" key))
3959 (setq key (if (eq entry-type 'string)
3960 (bibtex-read-string-key key)
3963 (re-search-forward (if (eq entry-type 'string)
3964 bibtex-string-maybe-empty-head
3974 (if (re-search-forward
3985 (not (and bibtex-sort-ignore-string-entries
3986 (eq entry-type 'string))))
3999 (if (cdr (assoc-string key bibtex-reference-keys))
4003 (cond ((eq entry-type 'string)
4006 (push (cons key (bibtex-text-in-string
4007 (bibtex-parse-string) t))
4044 (re-search-forward "[ \t\n]*=" end-field)
4099 (let ((case-fold-search t)
4106 (while (re-search-forward entry-type nil t)
4111 (when (re-search-forward bibtex-entry-type nil t)
4120 With \\[universal-argument] \\[universal-argument] prefix argument, reuse previous answers (if any) again.
4124 (use-previous-options
4126 (or bibtex-reformat-previous-options
4127 bibtex-reformat-previous-reference-keys)))
4130 (if use-previous-options
4131 bibtex-reformat-previous-options
4132 (setq bibtex-reformat-previous-options
4154 (if use-previous-options
4155 bibtex-reformat-previous-reference-keys
4156 (setq bibtex-reformat-previous-reference-keys
4158 (bibtex-sort-ignore-string-entries t)
4204 \(including a String or Preamble definition) perform string completion
4209 (case-fold-search t)
4216 compl (cond ((bibtex-string= name "crossref")
4219 ((bibtex-string= name "month")
4225 (cond ((setq bounds (bibtex-parse-string t))
4229 (setq compl 'string))
4231 ((and (>= pnt (bibtex-start-of-text-in-string bounds))
4232 (<= pnt (bibtex-end-of-text-in-string bounds)))
4236 (if (and (>= pnt (bibtex-start-of-text-in-string bounds))
4237 (<= pnt (bibtex-end-of-text-in-string bounds)))
4251 (setq choose-completion-string-functions nil)
4259 ;; a completion, `choose-completion-string-functions' is still
4260 ;; non-nil. Therefore, `choose-completion-string-functions' is
4264 (setq choose-completion-string-functions
4266 (setq choose-completion-string-functions nil)
4267 (choose-completion-string choice buffer base-size)
4269 t)) ; needed by choose-completion-string-functions
4273 ((eq compl 'string)
4274 ;; string key completion: no cleanup needed
4275 (setq choose-completion-string-functions nil)
4280 ;; string completion
4282 (setq choose-completion-string-functions
4284 (setq choose-completion-string-functions nil)
4285 (choose-completion-string choice buffer base-size)
4286 (bibtex-complete-string-cleanup choice ',compl)
4287 t)) ; needed by choose-completion-string-functions
4288 (bibtex-complete-string-cleanup (bibtex-complete-internal compl)
4291 (t (setq choose-completion-string-functions nil)
4361 (interactive (list (bibtex-read-string-key)))
4363 (unless bibtex-sort-ignore-string-entries
4411 (case-fold-search t)
4415 (when (and (setq field (cdr (assoc-string (caar scheme)
4417 (string-match (cdar scheme) field))
4420 url (if (null scheme) (match-string 0 field)
4424 (setq field (cdr (assoc-string (car step) fields-alist t)))
4425 (if (string-match (nth 1 step) field)
4429 (match-string (nth 2 step) field))