I went through just now and looked through the diff of "fixup", one of my
workspaces and perhaps the largest.
Following is an approximate list of the contents:
1. Cleanup configure, redo configure and various other code so that GTK and
X support are independent and both possible at once
2. HAVE_SHLIB -> HAVE_MODULES
3. has-modeline-p -> modeline-visible-p
4. Move set-extent-* accessors to Lisp
5. Sync font-lock with FSF 21.2
6. Create a "splash frame" that pops up early, before XEmacs loads the init
file, similar to the way many modern apps work; add hackery to support this
(e.g. "no-title-bar" frame property)
7. Add code to optionally install hyper-apropos as the standard help system
8. Add define-minor-mode and other constructs to
lisp-function-and-type-regexp
9. Load custom file before init file
10. define string-to-syntax as alias for syntax-string-to-code
11. Rewrite the text property implementation for speed (possibly not
finished); also implement FSF-compatible front-sticky, rear-nonsticky, etc.
+;; We used to create one extent for each distinct property; that is, if a
+;; range of text has two text-properties on it, there would be two extents.
+;; The problem is that the extent code gets much slower in this case,
+;; especially when you have one extent that straddles the entire buffer --
+;; and this is exactly what happens with lazy-lock, which sets
+;; `lazy-lock-fontified' to t on all regions that are up-to-date.
+
+;; Therefore, we now use just one extent to track all text properties in a
+;; region, and have *NO* overlapping text-property extents (#### Not
+;; actually true if duplicable and non-duplicable properties are mixed).
+;; The value of `text-prop' is a list indicating all properties being
+;; governed.
12. Mule-ize all of GTK code
13. Factor out duplicated X/GTK event key code into event-xlike.c; likewise
for duplicated gccache code
14. Add (unimplemented) stubs for (set-)char-table-parent
15. Add weak-list, extent(+substructures) usage to memory-usage stats
16. Use LISP_STRING_TO_SIZED_EXTERNAL and friends in place of generic
TO_EXTERNAL_FORMAT in many places
17. LIST_LOOP -> OLD_LIST_LOOP
18. Correct some places in device-x.c etc. that incorrectly use Qctext
19. doprnt can now take data from lisp or C string (why?)
20. implement insert-(before-markers-)and-inherit separate from insert
21. Factor out duplicated X/MSW/GTK XBM and XFACE code
22. Add function write_string_to_lstream (used where?)
23. Type-correct rewriting in various places (int->Bytecount, char->Ascbyte,
etc.)