create_line_mark
User_Mark create_line_mark (Integer c);
The function create_line_mark returns an object of the type
User_Mark.  This object contains information regarding the current
position and current buffer.  The parameter c is used to specify the
color to use when the line is displayed.
create_user_mark, set_color_object
create_user_mark
User_Mark create_user_mark ();
The function create_user_mark returns an object of the type
User_Mark. This object contains information regarding the current
position and current buffer.
move_user_mark, goto_user_mark, user_mark_buffer
dupmark
Integer dupmark ();
This function returns zero if the mark is not set or, if the mark is set, a duplicate of it is pushed onto the mark stack and a non-zero value is returned.
push_mark, markp, pop_mark
goto_user_mark
Void goto_user_mark (User_Mark mark);
This function returns to the position of the User Mark mark.  Before
this function may be called, the current buffer must be the buffer
associated with the makr.
move_user_mark, create_user_mark, user_mark_buffer
is_user_mark_in_narrow
Integer is_user_mark_in_narrow (User_Mark m);
This function returns non-zero if the user mark m refers to a
position that is within the current narrow restriction of the current
buffer.  It returns zero if the mark lies outside the restriction.
An error will be generated if m does not represent a mark for the current
buffer.
goto_user_mark, move_user_mark
is_visible_mark
is_visible_mark ();
This function may be used to test whether or not the mark is a visible
mark.  A visible mar is one which causes the region defined by it to
be highlighted.
It returns 1 is the mark is visible, or 0 if the mark
is not visible or does not exist.
markp, push_mark
markp
Void markp ();
This function returns a non-zero value if the mark is set; otherwise, it returns zero. If a mark is set, a region is defined.
push_mark, pop_mark, check_region, push_spot
move_user_mark
Void move_user_mark (User_Mark mark);
This function call takes a previously created User Mark, mark, and
moves it to the current position and buffer.  This means that if one
subsequently calls goto_user_mark with this mark as an argument, the
the position will be set to what it is prior to the call to
move_user_mark.
Note: This function call is not equivalent to simply using
        mark = create_user_mark ();
        variable mark1, mark2;
        setbuf ("first");
        mark1 = create_user_mark ();
        mark2 = mark1;
        setbuf ("second");
        move_user_mark (mark1);
mark1 and mark2 will be moved since they refer to
the same mark.
goto_user_mark, create_user_mark, user_mark_buffer
pop_mark
pop_mark (Integer g);
pop_mark pops the most recent mark pushed onto the mark stack.  If
the argument g is non-zero, the editing position will be moved to
the location of the mark.  However, if g is zero, the editing
position will be unchanged.
push_mark, pop_spot, markp, check_region, goto_user_mark
pop_spot
Void pop_spot ();
This function is used after a call to push_spot to return to the
editing position at the last call to push_spot in the current buffer.
push_spot, pop_mark
push_mark
Void push_mark();
This function marks the current position as the beginning of a region.
and pushes other marks onto a stack.  A region is defined by this
mark and the editing point.  The mark is removed from the stack only
when the function pop_mark is called.
For example,
        define mark_buffer ()
        {
          bob ();
          push_mark ();
          eob ();
        }
pop_mark, push_spot, markp, dupmark, check_region
push_spot
Void push_spot ();
push_spot pushes the location of the current buffer location onto a
stack.  This function does not set the mark.  The function push_mark
should be used for that purpose. The spot can be returned to using the
function pop_spot.
Note: Spots are local to each buffer.  It is not
possible to call push_spot from one buffer and then subsequently
call pop_spot from another buffer to return to the position in the
first buffer.  For this purpose, one must use user marks instead.
pop_spot, push_mark, create_user_mark
user_mark_buffer
String user_mark_buffer (User_Mark m);
This function returns the name of the buffer associated with the
User Mark specified by m.
goto_user_mark, create_user_mark, move_user_mark, is_user_mark_in_narrow