emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: "Staying in the same place"


From: Drew Adams
Subject: RE: "Staying in the same place"
Date: Mon, 4 Apr 2016 17:36:29 -0700 (PDT)

> Basically, a "fuzzy position" is three things:
> 
>     Some internal value, potentially unique to each mode
>     A method to return such a value based on point
>     A method to restore point based on such a value
> 
> Seeing this as an abstract data type, the default would be:
> 
>     #<marker>, point-marker, goto-char

Actually, the default for a bookmark is:

1. A general context, such as a file or buffer (e.g. an absolute
   file name or a buffer name).

2. A position within that context (e.g. a buffer position).

3. Some context text immediately after the position.

4. Some context text immediately before the position.

5. A handler function that accepts the bookmark as argument
   and returns point to the place that was bookmarked.

The default handler goes first to the recorded position.
It then searches forward for the after-position context text.
It then searches backward for the before-position context text.

The point is to try to accommodate changes to the file or buffer
text, i.e., to return to the most appropriate place that can be
found.

Special kinds of bookmarks (Info, Dired, `man', etc.) use special
handler functions.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]