home *** CD-ROM | disk | FTP | other *** search
- From: walker@hpl-opus.hpl.hp.com (Rick Walker)
- Date: Thu, 12 Nov 1992 20:45:51 GMT
- Subject: new HELP macro for vi
- Message-ID: <62420036@hpl-opus.hpl.hp.com>
- Organization: HP Labs, High Speed Electronics Dept., Palo Alto, CA
- Path: sparky!uunet!ferkel.ucsb.edu!taco!rock!stanford.edu!agate!usenet.ins.cwru.edu!magnus.acs.ohio-state.edu!zaphod.mps.ohio-state.edu!wupost!sdd.hp.com!hpscit.sc.hp.com!scd.hp.com!hpscdm!hplextra!hpl-opus!walker
- Newsgroups: comp.editors
- Lines: 196
-
-
- I collected so many nifty vi macros that I eventually forgot what each
- key did. So here is a way that I organized my .exrc to keep everything
- documented, and to create an on-line help reference.
-
- First thing is to put a descriptive line above every macro.
- Each descriptive line starts with the string: <"HINT:>.
-
- Here's a snippet of my .exrc:
-
-
- --------------start of a few examples --------------------
- " ------------------------------------------------------------
- "HINT:'F' Formats a paragraph
- "
- map F !}fmt ^[
- " ------------------------------------------------------------
- "HINT:'#' toggles between numbered editing and non-numbered
- "
- map @NU@ :set nu^M:map # @NONU@^M:^M
- map @NONU@ :set nonu^M:map # @NU@^M:^M
- map # @NU@
- " ------------------------------------------------------------
- --------------end of a few examples --------------------
-
-
-
- Next, you create a macro that collects out the "HINT: lines and
- puts them on the screen for your perusal:
-
-
-
- " -------------------------------------------------------------
- "HINT:'H' print helpful hints
- map H :! clear; sed -n -e "s/^\"HINT://p" ~/.exrc^M
- " -------------------------------------------------------------
-
-
- Now, I can just hit 'H' from command mode and get the following
- reminder screen:
-
- ------------------------------------------------------------------
- 'H' print helpful hints
- '^Z' background editor in input mode. autowrite is set.
- '^O' begin a C-style block, leaving in insert mode
- '^}' take you past end of block, leaving in insert mode
- '<ext>=' inserts comment during insert mode
- '<ext>=' comments current line during command mode
- '<ext>-' deletes comment characters during command mode
- 'F' Formats a paragraph
- '#' toggles between numbered editing and non-numbered
- '^I' toggles between autoindent and noautoindent
- 'T' command will toggle between 4 stop and 8 stop tabs...
- 'S' spell checks an entire document using ispell
- '^X' executes the current line of text
- '^P' Sort by paragraphs...
- 'X' make and delete ruler line (toggle)
- 'V' add modelines to top of file
- Kompletion macros...
- type partial word followed by ^K, and choices of
- completed words will be offered. ^N is next ^P previous...
- ------------------------------------------------------------------
-
- Typing <return> puts me back in vi.
-
- You could also put a bunch of <HELP:> lines in the file to remind
- you of other infrequently used built-in commands.
-
- Have fun!
- --
- Rick
-
-
- Attached is a uuencoded copy of my .exrc:
-
- -------------------- cut here -----------------------------
- begin 664 .exrc.new
- M(B M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM"B)(24Y4.@HB2$E.5#H*(B M+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM"B)(24Y4.B=()PD)<')I;G0@:&5L<&9U;"!H:6YT<R *;6%P($@@
- M.B$@8VQE87([('-E9" M;B M92 B<R]>7")(24Y4.B\O<"(@?B\N97AR8PT*
- M(B M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM"F%B('=T('<A("]N9G,O>6%Z+W1M<"]V:2YR
- M:6-K:G5N:PIA8B!R="!R(" O;F9S+WEA>B]T;7 O=FDN<FEC:VIU;FL*(@ET
- M;R!E87-I;'D@<V%V92!A;F0@<F5A9"!T;R!A('1E;7!F:6QE(&9O<B!C=70O
- M<&%S=&4@8F5T=V5E;B!F:6QE<PHB('-E="!T86)S=&]P/30*(@IS970@<VAI
- M9G1W:61T:#TT( HB"G-E="!A=71O:6YD96YT"B()<V\@:2!D;VXG="!H879E
- M('1O('1A8B!I;@IS970@=W)A<&UA<F=I;CTT"B()=W)A<"!W:&5N979E<B!W
- M:71H:6X@-"!C:&%R86-T97)S(&]F('1H92!R:6=H="!M87)G:6X*<V5T(&UO
- M9&5L:6YE<PHB(" @<V\@=&AA="!W92!S<&]T(&QI;F5S(&QI:V4@+RH@=FDZ
- M<V5T('1A8G-T;W!S/3,@*B\*(B @(&%T('1H92!T;W @;V8@82!F:6QE+"!K
- M:6YD82!L:6ME(&9I;&4M<W!E8VEF:6,@97AR8R!C;VUM86YD<PHB"G-E="!R
- M97!O<G0],2 *(B @('-O('=E(&]U<B!T;VQD('=H96YE=F5R('=E(&%F9F5C
- M="!M;W)E('1H86X@,2!L:6YE( HB('-E="!T97)S92 *(B @(&)E8V%U<V4@
- M=V4@<')E9F5R('1E<G-E(&5R<F]R(&UE<W-A9V5S+ IS970@=W)I=&5A;GD@
- M875T;W=R:71E"B(@("!B96-A=7-E('=E('=A;G0@=&\@=W)I=&4@;W5T(&]U
- M<B!F:6QE('=H96YE=F5R('=E(&-A;BP*(B @(&QI:V4@;VX@82 Z=&%G+" Z
- M<W1O<"P@;W(@.FYE>'0*(B M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T*(B @($IO8B!"86-K
- M9W)O=6YD:6YG($UA8W)O<PHB"B)(24Y4.B=>6B<)"6)A8VMG<F]U;F0@961I
- M=&]R(&EN(&EN<'5T(&UO9&4N(&%U=&]W<FET92!I<R!S970N"FUA<"$@&B ;
- M.G-T;W -"B)M87 A( $@&SIS=&]P(0T*(B @('=I;&P@<W1O<"!M92!W:71H
- M;W5T('=R:71I;F<N"B)M87 @ 2 Z<W1O<"$-"B(@("!U;F-O;F1I=&EO;F%L
- M('-T;W *(@HB("TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+0HB(" @26YP=70@;6%C<F]S( HB
- M"FUA<"$@"R 6&T\*(@EN96=A=&EV92!C87)R:6%G92!R971U<FX@:6X@:6YP
- M=70@;6]D92X*(FUA<"$@ B ;8FD*(@EN;VXM9&5S=')U8W1I=F4@%PHB;6%P
- M(2 &(!M%80HB(" @86YD(&ET<R!I;G9E<G-E"B(@+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M"B(@;6%P("<@8 HB(" @<V\@=V4@<F5T=7)N('1O(&5X86-T('!O<VET:6]N
- M+"!N;W0@:G5S=" @;VX@)V$@;W(@)R<*(B M+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T*(B @
- M($),3T-+($U!0U)/4R M+2!T:&5S92!M86ME('L@86YD('T@:&]T(&ME>7,@
- M:6X@:6YS97)T(&UO9&4*(DA)3E0Z)UY/)PD)8F5G:6X@82!#+7-T>6QE(&)L
- M;V-K+"!L96%V:6YG(&EN(&EN<V5R="!M;V1E"B)(24Y4.B=>?2<)"71A:V4@
- M>6]U('!A<W0@96YD(&]F(&)L;V-K+"!L96%V:6YG(&EN(&EN<V5R="!M;V1E
- M"FUA<"$@#R 6%A9[#186%GT@%AM/% IM87 A(!T@%ALO%A86?18-80HB("TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+0HB(" @0T]-345.5$E.1R!-04-23U,@+2T@=&AE<V4@
- M87)E(&%C='5A;&QY('!R971T>2!A;6%Z:6YG"B(*(DA)3E0Z)SQE>'0^/2<)
- M:6YS97)T<R!C;VUM96YT(&1U<FEN9R!I;G-E<G0@;6]D90IM87 A(/X@(!M!
- M("\J(" J+QL("&D*(@HB2$E.5#HG/&5X=#X])PEC;VUM96YT<R!C=7)R96YT
- M(&QI;F4@9'5R:6YG(&-O;6UA;F0@;6]D90IM87 @_B ;7FDO*B ;02 J+QM>
- M(" *(@HB2$E.5#HG/&5X=#XM)PED96QE=&5S(&-O;6UE;G0@8VAA<F%C=&5R
- M<R!D=7)I;F<@8V]M;6%N9"!M;V1E"FUA<"#V(#IS+%PO7"H@7"A;7BI=*EPI
- M7"I<+RQ<,2P;"B(*(B M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T*(B @($%24D]7($U!0U)/
- M4R!N97AT(&9O=7(@;&5T(&%R<F]W<R!K97ES('=O<FL@:6X@:6YS97)T(&UO
- M9&4["B(*;6%P(2 6&T]!(!8;:V$*;6%P(2 6&T]"(!8;:F$*;6%P(2 6&T]#
- M(!8;;&QI"FUA<"$@%AM/1" 6&VD*(@HB"B(@("!7:&\@<V%Y<R!Y;W4@8V%N
- M)W0@96UU;&%T92!E;6%C<R!I;B!V:3\@.BTI"B(*;6%P(2 "(!8;:0IM87 A
- M( 8@%AML;&D*;6%P(2 !(!8;20IM87 A( 4@%AM!"B(@+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM"B(@5&AE<V4@;F5X="!L:6YE<R!A<F4@=V]R:RUA<F]U;F1S(&9O<B!T
- M:&4@=FD@8G5G('1H870@:&]M97,@=&AE(&-U<G-O<@HB(&EF('EO=2!H:70@
- M=&AE("=H)R!K97D@=VET:&EN(#$@<V5C(&]F(&%N(&5S8V%P92X*(@IM87 @
- M&V@@&PIM87 A(!MH(!L*=6YM87 @&V@*=6YM87 A(!MH"B(@+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM"B)(24Y4.B=&)PD)1F]R;6%T<R!A('!A<F%G<F%P: HB"FUA<"!&
- M("%]9FUT(!L*(B M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T*(DA)3E0Z)R,G"0ET;V=G;&5S
- M(&)E='=E96X@;G5M8F5R960@961I=&EN9R!A;F0@;F]N+6YU;6)E<F5D"B(*
- M;6%P($!.54 @.G-E="!N=0TZ;6%P(",@0$Y/3E5 #3H-"FUA<"! 3D].54 @
- M.G-E="!N;VYU#3IM87 @(R! 3E5 #3H-"FUA<" C($!.54 *(B M+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2T*(DA)3E0Z)UY))PD)=&]G9VQE<R!B971W965N(&%U=&]I;F1E
- M;G0@86YD(&YO875T;VEN9&5N= HB( IM87 @0$%)0" Z<V5T(&%I#3IM87 @
- M22! 3D]!24 -.@TZ(BTM+2T@875T;VEN9&5N="!/3B M+2TM(@T*;6%P($!.
- M3T%)0" Z<V5T(&YO86D-.FUA<"!)($!!24 -.@TZ(BTM+2T@875T;VEN9&5N
- M="!/1D8@+2TM+2(-"FUA<"!)($!.3T%)0 HB("TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+0HB
- M2$E.5#HG5"<)"6-O;6UA;F0@=VEL;"!T;V=G;&4@8F5T=V5E;B T('-T;W @
- M86YD(#@@<W1O<"!T86)S+BXN"B(*;6%P($!44S1 (#IS970@=',]- TZ<V5T
- M('-W/30-.FUA<"!4($!44SA #3H-.B(M+2TM(%1A8G,@<V5T('1O(&9O=7(@
- M*#0I("TM+2TB#0IM87 @0%13.$ @.G-E="!T<STX#3IS970@<W<]. TZ;6%P
- M(%0@0%13-$ -.@TZ(BTM+2T@5&%B<R!S970@=&\@96EG:'0@*#@I("TM+2TB
- M#0IM87 @5"! 5%,T0 HB("TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+0HB2$E.5#HG4R<)"7-P
- M96QL(&-H96-K<R!A;B!E;G1I<F4@9&]C=6UE;G0@=7-I;F<@:7-P96QL"B(*
- M;6%P(%,@.C$L)'<A("]T;7 O<F-W<W!E;&P-.B%I<W!E;&P@+W1M<"]R8W=S
- M<&5L; T-.C$L)&0-.G(@+W1M<"]R8W=S<&5L; T*(B M+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2T*(DA)3E0Z)UY8)PD)97AE8W5T97,@=&AE(&-U<G)E;G0@;&EN92!O9B!T
- M97AT"B(*;6%P(!@@(GID9$!Z"FUA<"$@&" B>F1D0'H*(@HB("TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+0HB2$E.5#HG7E G"0E3;W)T(&)Y('!A<F%G<F%P:',N+BX*;6%P
- M(! ).B4A<&5R;" M,# @+64@)W!R:6YT('-O<G0@/#XG#2 *(B M+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2T*(DA)3E0Z)U@G"0EM86ME(&%N9"!D96QE=&4@<G5L97(@;&EN
- M92 H=&]G9VQE*0IM87 @0%)50"!/&VDM+2TM*RTM+2TQ+2TM+2LM+2TM,BTM
- M+2TK+2TM+3,M+2TM*RTM+2TT+2TM+2LM+2TM-2TM+2TK+2TM+38M+2TM*RTM
- M+2TW+2TM+2LM+2TM.!L6#3IM87 @6"! 3E) #3H-"B(*(FUA<"! 3E) (#IG
- M+UXM+2TM*RTM+2TQ+2TM+2LM+2TM,BTM+2TK+2TM+3,M+2TM*RTM+2TT+2TM
- M+2LM+2TM-2TM+2TK+2TM+38M+2TM*R]D#3IM87 @6"! 4E5 #3H-"FUA<"!
- M3E) (&UZ.F<O7BTM+2TK+2TM+3$M+2TM*RTM+2TR+2TM+2LM+2TM,RTM+2TK
- M+2TM+30M+2TM*RTM+2TU+2TM+2LM+2TM-BTM+2TK+V0-8'H-.FUA<"!8($!2
- M54 -.@T*;6%P(%@@0%)50 HB("TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2T*(DA)3E0Z)U8G
- M"0EA9&0@;6]D96QI;F5S('1O('1O<"!O9B!F:6QE"FUA<"!6(#HQ#6DN7")V
- M:3IS970@=',].#H-&VL*(B M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM"B)(24Y4.DMO;7!L
- M971I;VX@;6%C<F]S+BXN"B)(24Y4.@ET>7!E('!A<G1I86P@=V]R9"!F;VQL
- M;W=E9"!B>2!>2RP@86YD(&-H;VEC97,@;V8*(DA)3E0Z"6-O;7!L971E9"!W
- M;W)D<R!W:6QL(&)E(&]F9F5R960N("!>3B!I<R!N97AT(%Y0('!R979I;W5S
- M+BXN"B(*;6%P(2 +(!MA+AMB;6UI/UP\&S)H(GID="Y >@UY=VUX8&U08F5A
- M(!MD=V)I81LB>F1T+GA >@IM87 A( X@&V$N&V)D=V!X+PUY=VUX8&U08F5A
- M(!MD=V)I81LB>F1T+GA >@IM87 A(! @&V$N&V)D=V!X/PUY=VUX8&U08F5A
- M(!MD=V)I81LB>F1T+GA >@HB("TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+0HB2$E.5#H*(DA)
- M3E0Z"B(@+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
- 7+2TM+2TM+2TM+2TM+2TM+2TM+2TM+0HM
-
- end
-
-
-