Home | History | Annotate | Line # | Download | only in internals
      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