diff options
author | kvik <kvik@a-b.xyz> | 2020-05-31 22:39:46 +0200 |
---|---|---|
committer | kvik <kvik@a-b.xyz> | 2020-05-31 22:39:46 +0200 |
commit | 8918bd598190b8c467746524f1886cc40be0b617 (patch) | |
tree | 816d5d531138eb95f1d59d490b979181b6549960 /sys/src/cmd/acme | |
parent | 5cd7f7b0ec0df483bb5fd768ed59829e44849ed3 (diff) |
acme: implement 'scratch' ctl command (thanks Drew DeVault)
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).
Diffstat (limited to 'sys/src/cmd/acme')
-rw-r--r-- | sys/src/cmd/acme/xfid.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/src/cmd/acme/xfid.c b/sys/src/cmd/acme/xfid.c index 2a8e17bdb..2feb438b2 100644 --- a/sys/src/cmd/acme/xfid.c +++ b/sys/src/cmd/acme/xfid.c @@ -759,6 +759,10 @@ out: 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; |