1# @(#)autowrite 8.3 (Berkeley) 2/17/95 2 3Vi autowrite behavior, the fields with *'s are "don't cares". 4 5=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 6Commands that are affected only by autowrite: 7 8Command File Autowrite? Action: 9 modified? 10----------------------------------------------- 11^Z Y Y Write file and suspend. 12^Z Y N Suspend. 13^Z N * Suspend. 14 15# This behavior is NOT identical to :edit. 16^^ Y Y Write file and jump. 17^^ Y N Error. 18^^ N * Jump. 19 20# The new nvi command ^T (:tagpop) behaves identically to ^]. 21# This behavior is identical to :tag, :tagpop, and :tagpush with 22# force always set to N. 23^] Y Y Write file and jump. 24^] Y N Error. 25^] N * Jump. 26 27# There's no way to specify a force flag to the '!' command. 28:! Y Y Write file and execute. 29:! Y N Warn (if warn option) and execute. 30:! N * Execute. 31 32=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 33Commands that are affected by both autowrite and force: 34 35NOTE: the "force" flag is never passed on, i.e. the write 36to the file caused by the autowrite flag is never forced. 37 38Command File Autowrite? Force? Action: 39 modified? (!) 40------------------------------------------------------- 41# The first rule (YYY) is historic practice, but seems wrong. 42# In nvi, :next and :prev commands behave identically to :rewind. 43:next Y Y Y Write changes and jump. 44:next Y Y N Write changes and jump. 45:next Y N Y Abandon changes and jump. 46:next Y N N Error. 47:next N * * Jump. 48 49:rewind Y Y Y Abandon changes and jump. 50:rewind Y Y N Write changes and jump. 51:rewind Y N Y Abandon changes and jump. 52:rewind Y N N Error. 53:rewind N * * Jump. 54 55# The new nvi commands, :tagpop and :tagtop, behave identically to :tag. 56# Note, this behavior is the same as :rewind and friends, as well. 57:tag Y Y Y Abandon changes and jump. 58:tag Y Y N Write changes and jump. 59:tag Y N Y Abandon changes and jump. 60:tag Y N N Error. 61:tag N * * Jump. 62 63# The command :suspend behaves identically to :stop. 64:stop Y Y Y Suspend. 65:stop Y Y N Write changes and suspend. 66:stop Y N Y Suspend. 67:stop Y N N Suspend. 68:stop N * * Suspend. 69 70=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= 71Commands that might be affected by autowrite, but aren't: 72 73Command File Autowrite? Force? Action: 74 modified? (!) 75------------------------------------------------------- 76#:ex, and :vi (executed while in vi mode) behave identically to :edit. 77:edit Y * Y Abandon changes and jump. 78:edit Y * N Error. 79:edit N * * Jump. 80 81:quit Y * Y Quit. 82:quit Y * N Error. 83:quit N * * Quit. 84 85:shell * * * Execute shell. 86 87:xit Y * * Write changes and exit. 88:xit N * * Exit. 89