| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
use it properly for overlays_at.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
(Fadd_text_properties, copy_text_properties): Likewise.
|
| |
|
|
|
|
| |
rid of all properties of a string.
|
| |
|
|
|
|
|
|
| |
Fnext_single_property_change, Fprevious_property_change,
Fprevious_single_property_change, copy_text_properties): Don't use XFASTINT as
an lvalue.
|
|
|
|
|
|
|
|
| |
property_change_between_p, Fnext_single_property_change,
Fprevious_property_change, Fprevious_single_property_change,
Fadd_text_properties, Fset_text_properties, Fremove_text_properties,
Ftext_property_any, Ftext_property_not_all, Ferase_text_properties): Use new
accessor macros instead of calling XSET directly.
|
|
|
|
|
|
| |
Fnext_property_change, Fnext_single_property_change,
Fprevious_property_change, Fprevious_single_property_change,
Ftext_property_any, Ftext_property_not_all): Use type test macros.
|
|
|
|
|
| |
(Fset_text_properties): Don't let validate_interval_range
increment START and END twice.
|
|
|
|
| |
(NULL): Define if not defined.
|
|
|
|
|
|
| |
Fnext_property_change, Fnext_single_property_change,
Fprevious_property_change, Fprevious_single_property_change): Fix Lisp_Object
vs. int problems.
|
| |
|
| |
|
|
|
|
| |
Return early if buffer has no intervals and PROPS is nil.
|
| |
|
|
|
|
| |
for edge effects.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
(Fprevious_single_property_change): Likewise.
|
| |
|
|
|
|
|
|
|
|
|
| |
the case where there are no intervals.
(Fprevious_single_property_change, Fprevious_property_change)
Extra arg LIMIT. Return value was off by 1.
(Fnext_single_property_change, Fnext_property_change):
Extra arg LIMIT.
(Fnext_single_property_change): Require at least 2 args.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
in loop, before looking at next->position.
|
|
|
|
|
|
|
|
|
| |
(syms_of_textprop): Set them up.
(Qhidden): New variable.
(syms_of_textprop): Set up Qhidden.
(property_change_between_p): New function.
|
| |
|
|
|
|
|
| |
(Qinsert_behind_hooks): Moved to buffer.c.
(syms_of_textprop): Lisp vars setup deleted.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
OFFSET argument of these functions to be origin 0, not origin 1.
This is what all the callers currently want.
* intervals.c, textprop.c: All callers changed.
* textprop.c (Ftext_property_not_all): Renamed from
Ftext_property_all, and changed sense of return value, so that it
returns useful information if not all characters have properties
EQ to value. Now all the existential and universal questions can
be asked.
* textprop.c (syms_of_textprop): Don't forget defsubr for
Stext_property_all.
* textprop.c (Ftext_property_any, Ftext_property_all): Use EQ to
compare property values, not Fequal.
* textprop.c (Ftext_property_any, Ftext_property_all): New
functions, from David Gillespie.
* intervals.h (Ftext_property_any, Ftext_property_all): Declare them.
|
|
|
|
|
|
|
|
| |
(syms_of_textprop): Set them up.
(set_properties): Call modify_region.
(remove_properties): Call modify_region before record_property_change.
(add_properties): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
validate_interval_range; that function increments its arguments,
which isn't what we want.
* intervals.c (find_interval): Consistently treat POSITION as an
actual buffer position, i.e. origin 1. The old code seemed
undecided on this point. Treat the end of the buffer as being
part of the rightmost interval.
(adjust_intervals_for_insertion): Consistently treat POSITION as
origin 1.
(interval_deletion_adjustment): The exception: FROM should be
origin zero here. Consistently treat it as such. Simplify code
which shrinks and possibly deletes intervals.
(adjust_intervals_for_deletion): Treat start as origin 1; our
caller does.
(set_point): Use buffer positions throughout, not a mix of buffer
posns and origin zero posns.
(get_local_map): Remove special case for POSITION at end of buffer;
find_interval handles that case correctly.
(verify_interval_modification): Remove special case for START at
end of buffer.
* textprop.c (validate_interval_range): End-of-buffer/string
positions no longer need special handling.
* textprop.c (copy_text_properties): New function, from David
Gillespie.
* intervals.h: Declare copy_text_properties.
* fns.c: #include "intervals.h".
(Fsubstring): Copy text properties to result string.
(concat): Copy text properties to result string.
* ymakefile (fns.o): Note that this depends on INTERVAL_SRC.
|
|
|
|
|
| |
* intervals.c (intervals_equal): Call EQ, not Fequal.
* textprop.c (interval_has_all_properties, add_properties): Same.
|
|
|
|
|
| |
*begin and *end if they point to the same thing.
(validate_plist): Call QUIT while scanning LIST.
|
|
|
|
|
|
|
|
| |
new properties. Only record old property values for those
properties whose values have changed.
* textprop.c (set_properties): Don't try to make undo records if
OBJECT is a string.
|