diff options
author | Luc Teirlinck <teirllm@auburn.edu> | 2003-11-30 17:08:28 +0000 |
---|---|---|
committer | Luc Teirlinck <teirllm@auburn.edu> | 2003-11-30 17:08:28 +0000 |
commit | 97a1bc6376397911333f1decc764379fce397728 (patch) | |
tree | 2ee4ffc846e87171cc37104676433a986a7a1fe5 /src/textprop.c | |
parent | 9f8a930d980e626fdd627694143b11f29ecd4f24 (diff) | |
download | emacs-97a1bc6376397911333f1decc764379fce397728.tar.gz |
(Fget_char_property_and_overlay): New function.
(syms_of_textprop): Defsubr it.
Diffstat (limited to 'src/textprop.c')
-rw-r--r-- | src/textprop.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/textprop.c b/src/textprop.c index a243eb6c917..4f13aefb1be 100644 --- a/src/textprop.c +++ b/src/textprop.c @@ -703,6 +703,30 @@ overlays are considered only if they are associated with OBJECT. */) { return get_char_property_and_overlay (position, prop, object, 0); } + +DEFUN ("get-char-property-and-overlay", Fget_char_property_and_overlay, + Sget_char_property_and_overlay, 2, 3, 0, + doc: /* Like `get-char-property', but with extra overlay information. +Return a cons whose car is the return value of `get-char-property' +with the same arguments, that is, the value of POSITION's property +PROP in OBJECT, and whose cdr is the overlay in which the property was +found, or nil, if it was found as a text property or not found at all. +OBJECT is optional and defaults to the current buffer. OBJECT may be +a string, a buffer or a window. For strings, the cdr of the return +value is always nil, since strings do not have overlays. If OBJECT is +a window, then that window's buffer is used, but window-specific +overlays are considered only if they are associated with OBJECT. If +POSITION is at the end of OBJECT, both car and cdr are nil. */) + (position, prop, object) + Lisp_Object position, object; + register Lisp_Object prop; +{ + Lisp_Object overlay; + Lisp_Object val + = get_char_property_and_overlay (position, prop, object, &overlay); + return Fcons(val, overlay); +} + DEFUN ("next-char-property-change", Fnext_char_property_change, Snext_char_property_change, 1, 2, 0, @@ -2277,6 +2301,7 @@ rear-nonsticky properties of the character overrides NONSTICKINESS. */); defsubr (&Stext_properties_at); defsubr (&Sget_text_property); defsubr (&Sget_char_property); + defsubr (&Sget_char_property_and_overlay); defsubr (&Snext_char_property_change); defsubr (&Sprevious_char_property_change); defsubr (&Snext_single_char_property_change); |