It seems that nobody cares about compatibility with GNU Emacs. Besides
this behaviour is annoying because when I set a mark, scroll a buffer,
and decide to go to the end of buffer that overwrites my mark and I have
to start over. Also besides that you have to figure out this behavior
because manpage just says:
```
M-< beginning-of-buffer
M-> end-of-buffer
```
Should we consider this documentation bug and patch a manpage?
On Thu, Feb 14, 2019 at 04:46:21PM +0200, Leonid Bobrov wrote:
> Ping.
>
> On Wed, Feb 06, 2019 at 11:29:47PM +0200, Leonid Bobrov wrote:
> > Hi!
> >
> > Going to end and begging of buffer doesn't set marks in Emacs.
> >
> > Index: basic.c
> > ===================================================================
> > RCS file: /cvs/src/usr.bin/mg/basic.c,v
> > retrieving revision 1.47
> > diff -u -p -u -p -r1.47 basic.c
> > --- basic.c 10 Oct 2015 09:13:14 -0000 1.47
> > +++ basic.c 6 Feb 2019 21:18:34 -0000
> > @@ -122,7 +122,6 @@ forwchar(int f, int n)
> > int
> > gotobob(int f, int n)
> > {
> > - (void) setmark(f, n);
> > curwp->w_dotp = bfirstlp(curbp);
> > curwp->w_doto = 0;
> > curwp->w_rflag |= WFFULL;
> > @@ -140,7 +139,6 @@ gotoeob(int f, int n)
> > {
> > struct line *lp;
> >
> > - (void) setmark(f, n);
> > curwp->w_dotp = blastlp(curbp);
> > curwp->w_doto = llength(curwp->w_dotp);
> > curwp->w_dotline = curwp->w_bufp->b_lines;
> > Index: region.c
> > ===================================================================
> > RCS file: /cvs/src/usr.bin/mg/region.c,v
> > retrieving revision 1.37
> > diff -u -p -u -p -r1.37 region.c
> > --- region.c 9 Sep 2016 06:05:51 -0000 1.37
> > +++ region.c 6 Feb 2019 21:18:34 -0000
> > @@ -405,6 +405,7 @@ markbuffer(int f, int n)
> > {
> > if (gotoeob(f,n) == FALSE)
> > return (FALSE);
> > + (void) setmark(f, n);
> > if (gotobob(f,n) == FALSE)
> > return (FALSE);
> > return (TRUE);
> >
>