The new command marks the target window as a scratch window -- a window
whose state cannot be "dirtied" by changes made to its body, therefore
avoiding warnings about unsaved changes when deleting the window or
exiting acme.
Existing examples of scratch windows are error, directory, and guide
windows, whose scratchness is set internally.
With the new command users and programs alike can create their own
scratch windows. This is put to use in acme's own win(1).
wintagwrite(win, "Send Noscroll", 5+8);
ctlprint(win->ctl, "scroll");
+ ctlprint(win->ctl, "scratch");
snprint(buf, sizeof(buf), "/proc/%d/notepg", getpid());
notepg = open(buf, OWRITE);
.B Put
interactive command with no arguments; accepts no arguments.
.TP
+.B scratch
+Turn off tracking the `dirty' status, the window stays clean.
+.TP
.B scroll
Cancel a
.B noscroll
if(strncmp(p, "scroll", 6) == 0){ /* turn on automatic scrolling (writes to body only) */
w->noscroll = FALSE;
m = 6;
+ }else
+ if(strncmp(p, "scratch", 7) == 0){ /* mark as a scratch file */
+ w->isscratch = TRUE;
+ m = 7;
}else{
err = Ebadctl;
break;