From 0e6c966c96290f53f281016c6e40c7404daf759b Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Tue, 12 Dec 2006 02:36:38 +0000 Subject: [PATCH] (syntax-ppss-toplevel-pos): New fun. --- lisp/ChangeLog | 4 ++++ lisp/emacs-lisp/syntax.el | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 0b5cdc4a2fe..a75bfaf9191 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,7 @@ +2006-12-12 Stefan Monnier + + * emacs-lisp/syntax.el (syntax-ppss-toplevel-pos): New fun. + 2006-12-11 Juanma Barranquero * subr.el (unread-command-char): Reformat obsolescence info. diff --git a/lisp/emacs-lisp/syntax.el b/lisp/emacs-lisp/syntax.el index 695d7877b38..f290db42c04 100644 --- a/lisp/emacs-lisp/syntax.el +++ b/lisp/emacs-lisp/syntax.el @@ -52,6 +52,14 @@ (defsubst syntax-ppss-depth (ppss) (nth 0 ppss)) +(defun syntax-ppss-toplevel-pos (ppss) + "Return the last preceding position at toplevel. +\"At toplevel\" means that it is outside of any syntactic entity: +outside of any parentheses, or comments, or strings. +Returns nil iff PPSS itself corresponds to a toplevel position." + (or (car (nth 9 ppss)) + (nth 8 ppss))) + (defsubst syntax-ppss-context (ppss) (cond ((nth 3 ppss) 'string) -- 2.39.5