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