# HG changeset patch # User Richard M. Stallman # Date 1093707010 0 # Node ID c5624ad1554b4a2c9093c35910980d30c971bc09 # Parent dcd7b1b4690dd22dee421f0082a2a1f4f1411052 (find-tag-default): Moved from etags.el. diff -r dcd7b1b4690d -r c5624ad1554b lisp/subr.el --- a/lisp/subr.el Sat Aug 28 14:00:38 2004 +0000 +++ b/lisp/subr.el Sat Aug 28 15:30:10 2004 +0000 @@ -1969,6 +1969,27 @@ (setq parent (get parent 'derived-mode-parent)))) parent)) +(defun find-tag-default () + "Determine default tag to search for, based on text at point. +If there is no plausible default, return nil." + (save-excursion + (while (looking-at "\\sw\\|\\s_") + (forward-char 1)) + (if (or (re-search-backward "\\sw\\|\\s_" + (save-excursion (beginning-of-line) (point)) + t) + (re-search-forward "\\(\\sw\\|\\s_\\)+" + (save-excursion (end-of-line) (point)) + t)) + (progn (goto-char (match-end 0)) + (buffer-substring-no-properties + (point) + (progn (forward-sexp -1) + (while (looking-at "\\s'") + (forward-char 1)) + (point)))) + nil))) + (defmacro with-syntax-table (table &rest body) "Evaluate BODY with syntax table of current buffer set to TABLE. The syntax table of the current buffer is saved, BODY is evaluated, and the