Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 6 Sep 2006 16:36:47 -0400
From:      Garance A Drosehn <gad@FreeBSD.org>
To:        Doug Barton <dougb@FreeBSD.org>, Julian Elischer <julian@elischer.org>
Cc:        freebsd-current@FreeBSD.org, Peter Jeremy <peterjeremy@optushome.com.au>
Subject:   Attempt #3, adding a new command 'sfilter'
Message-ID:  <p06230942c124de77d7de@[128.113.24.47]>
In-Reply-To: <44FDF36A.3010608@FreeBSD.org>
References:  <200608281545.k7SFjn6l063922@lurza.secnetix.de> <p06230928c11e2298ca97@[128.113.24.47]> <200609020956.54008.Lucas.James@ldjcs.com.au> <20060902031247.GE749@turion.vk2pj.dyndns.org> <20060904192006.GA3292@turion.vk2pj.dyndns.org> <p06230937c122c6983e00@[128.113.24.47]> <44FD994C.70104@errno.com> <44FDEE7C.9060104@FreeBSD.org> <44FDF245.9000302@elischer.org> <44FDF36A.3010608@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
--============_-1054547485==_============
Content-Type: text/plain; charset="us-ascii" ; format="flowed"

At 3:00 PM -0700 9/5/06, Doug Barton wrote:
>Julian Elischer wrote:
>
>>  then there will be a bikeshed about adding a new tool
>
>... which can safely be ignored, even if it occurs, because
>creating new and potentially useful tools always creates less drama
>then mucking about with old (or really old) ones. I haven't heard
>anyone say, "No such functionality should exist in FreeBSD," but I
>have heard several people say "Don't bastardize the Unix model."
>I even like Sam's proposed name.

For what it's worth, I've improved my previous update so that the
value of time is cached, thus avoiding unnecessary calls to
localtime() and strftime().

At the moment this still exists as an update to `cat', just so
the diff-output is readable.  But I'd certainly be willing to
install the result as a separate new command if that would work
better.  If there is support for that, I would install it as an
`sfilter' command.  Simple Filter.

If I do install it as a separate command, then I would be
extremely tempted to also add in 'unix2dos' and 'dos2unix'
capability.  Yes, I know everyone is rolling their eyes at this
point, but if you look at the actual code already in `cat', it
would require very few bytes of additional code to support that.

If I were to install these ideas as a separate new command, would
that be "acceptable-enough" for a new utility in the base OS?

-- 
Garance Alistair Drosehn     =               drosehn@rpi.edu
Senior Systems Programmer               or   gad@FreeBSD.org
Rensselaer Polytechnic Institute;             Troy, NY;  USA
--============_-1054547485==_============
Content-Id: <p06230942c124de77d7de@[128.113.24.47].0.0>
Content-Type: application/octet-stream; name="cat-date.diff"
	; x-mac-type="00000000" ; x-mac-creator="00000000"
Content-Disposition: attachment; filename="cat-date.diff"
	; modification-date="Wed, 6 Sep 2006 16:34:17 -0400"
Content-Transfer-Encoding: x-uuencode

begin 644 cat-date.dif
M/R!C870M9&%T92YC"DEN9&5X.B!C870N,0H]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]"E)#4R!F:6QE.B`O:&]M92]N8W9S+W-R8R]B:6XO8V%T+V-A="XQ+'8*
M<F5T<FEE=FEN9R!R979I<VEO;B`Q+C(U"F1I9F8@+74@+7(Q+C(U(&-A="XQ
M"BTM+2!C870N,0DQ-B!*86X@,C`P-2`Q-CHT,3HU-2`M,#`P,`DQ+C(U"BLK
M*R!C870N,0DV(%-E<"`R,#`V(#(P.C,T.C$W("TP,#`P"D!`("TS,BPW("LS
M,BPW($!`"B`N7"(@("`@($`H(REC870N,0DX+C,@*$)E<FME;&5Y*2`U+S(O
M.34*("Y<(B`D1G)E94)31#H@<W)C+V)I;B]C870O8V%T+C$L=B`Q+C(U(#(P
M,#4O,#$O,38@,38Z-#$Z-34@<G4@17AP("0*("Y<(@HM+D1D($UA<F-H(#(Q
M+"`R,#`T"BLN1&0@4V5P=&5M8F5R(#8L(#(P,#8*("Y$="!#050@,0H@+D]S
M"B`N4V@@3D%-10I`0"`M-#$L-B`K-#$L-R!`0`H@+E-H(%-93D]04TE3"B`N
M3FT*("Y/<"!&;"!B96YS='5V"BLN3W`@1FP@1"!!<B!D871E7V9O<FUA=`H@
M+D]P($%R"B`N4V@@1$530U))4%1)3TX*(%1H90I`0"`M-S,L-B`K-S0L,S$@
M0$`*("Y";"`M=&%G("UW:61T:"!I;F1E;G0*("Y)="!&;"!B"B!.=6UB97(@
M=&AE(&YO;BUB;&%N:R!O=71P=70@;&EN97,L('-T87)T:6YG(&%T(#$N"BLN
M270@1FP@1"!!<B!D871E7V9O<FUA=`HK4')E9FEX(&5A8V@@;W5T<'5T(&QI
M;F4@=VET:"!A('-T<FEN9R!T:&%T(&EN9&EC871E<R!T:&4@9&%T92!A;F0O
M;W(**W1I;64@=VAE;B!T:&%T(&QI;F4@=V%S(')E860@8GD@=&AE"BLN3FT*
M*W5T:6QI='DN"BM4:&4@<F5S;VQU=&EO;B!U<V5D(&9O<B!T:&%T('1I;64@
M=VEL;"!B92!T;R!T:&4@;F5A<F5S="!S96-O;F0N"BM4:&4@9F]R;6%T(&]F
M('1H870@<')E9FEX(&ES('-P96-I9FEE9"!B>2!T:&4@=F%L=64@;V8**RY!
M<B!D871E7V9O<FUA="`N"BM4:&4**RY!<B!D871E7V9O<FUA=`HK87)G=6UE
M;G0@;6%Y(&-O;G1A:6X@86YY(&]F('1H92!C;VYV97)S:6]N('-P96-I9FEC
M871I;VYS(&1E<V-R:6)E9"!I;B!T:&4**RY8<B!S=')F=&EM92`S"BMM86YU
M86P@<&%G92P@87,@=V5L;"!A<R!A;GD@87)B:71R87)Y('1E>'0N"BM.;R!S
M97!A<F%T;W(@=VEL;"!B92!I;G-E<G1E9"!B971W965N('1H92!G96YE<F%T
M960@<')E9FEX(&%N9"!T:&4**W)E;6%I;F1E<B!O9B!T:&4@;W5T<'5T(&QI
M;F4L('-O(&EF(&$@<V5P87)A=&]R(&ES(&1E<VER960@=&AE;@HK=&AE('9A
M;'5E(&9O<@HK+D%R(&1A=&5?9F]R;6%T"BMS:&]U;&0@96YD('=I=&@@82!S
M<&%C92!O<B!T:&4@8V]N=F5R<VEO;B!S<&5C:69I97(@;V8**RY$<2!,:2`E
M="`N"BM4:&4**RY&;"!T"BMA;F0**RY&;"!V"BMO<'1I;VYS(&1O(&YO="!A
M9F9E8W0@86YY(&-H87)A8W1E<G,@9V5N97)A=&5D(&)Y('1H90HK+D%R(&1A
M=&5?9F]R;6%T("X*("Y)="!&;"!E"B!$:7-P;&%Y(&YO;BUP<FEN=&EN9R!C
M:&%R86-T97)S("AS964@=&AE"B`N1FP@=@I`0"`M,34R+#8@*S$W."PR-"!`
M0`H@=VAE;B!I="!E;F-O=6YT97)E9"!T:&4@9FER<W0*("Y1;"!<)BT*(&]P
M97)A;F0N"BLN4'`**U1H92!C;VUM86YD.@HK+E!P"BLN1&P@(F-O;6UA;F0@
M?"!C870@+40@)R5&("54("<B"BLN4'`**W=I;&P@<')E<&5N9"!T:&4@8W5R
M<F5N="!D871E+W1I;64@:6X@=&AE(&9O<FT**RY$<2!,:2!965E9+4U-+41$
M($A(.DU-.E-3("P**V9O;&QO=V5D(&)Y(&$@<W!A8V4L('1O(&5A8V@@;&EN
M92!O9B!T:&4@<W1D;W5T(&9R;VT**RY.;2!C;VUM86YD("X**U1H:7,@:7,@
M=7-E9G5L(&9O<B!T:6UE<W1A;7!I;F<@;W5T<'5T+"!E<W!E8VEA;&QY(&EF
M"BLN3FT@8V]M;6%N9`HK=VEL;"!B92!R=6YN:6YG(&9O<B!A(&QO;F<@<&5R
M:6]D(&]F('1I;64L(&%N9"!Y;W4@=V%N="!T;R!K;F]W('=H96X**V5A8V@@
M;W5T<'5T(&QI;F4@=V%S('=R:71T96XN"BM.;W1E('1H870**RY.;2!C;VUM
M86YD"BMM=7-T(&AA=F4@=6YB=69F97)E9"!O<B!L:6YE+6)U9F9E<F5D(&]U
M='!U="!F;W(@=&AE"BLN1FP@1`HK;W!T:6]N('1O('!R;V1U8V4@86-C=7)A
M=&4@=&EM97-T86UP<RX*("Y3:"!3144@04Q33PH@+EAR(&AE860@,2`L"B`N
M6'(@;6]R92`Q("P*0$`@+3$V,"PW("LR,#0L."!`0`H@+EAR('1A:6P@,2`L
M"B`N6'(@=FES(#$@+`H@+EAR('IC870@,2`L"BTN6'(@<V5T8G5F(#,**RY8
M<B!S971B=68@,R`L"BLN6'(@<W1R9G1I;64@,PH@+E)S"B`N)4$@4F]B(%!I
M:V4*("XE5"`B54Y)6"!3='EL92P@;W(@8V%T("UV($-O;G-I9&5R960@2&%R
M;69U;"(*0$`@+3$W-2PW("LR,C`L-R!`0`H@<W!E8VEF:6-A=&EO;BX*("Y0
M<`H@5&AE(&9L86=S"BTN3W`@1FP@8F5N<W1V"BLN3W`@1FP@8D1E;G-T=@H@
M87)E(&5X=&5N<VEO;G,@=&\@=&AE('-P96-I9FEC871I;VXN"B`N4V@@2$E3
M5$]260H@00I`0"`M,3DY+#,@*S(T-"PY($!`"B!O<@H@+D9L('8*(&]P=&EO
M;B!I<R!I;B!E9F9E8W0N"BLN4'`**U1H90HK+DYM"BMU=&EL:71Y(&1O97,@
M;F]T(&-O<G)E8W1L>2!H86YD;&4@;75L=&EB>71E(&-H87)A8W1E<G,@:6X@
M=&AE"BMA<F=U;65N="!T;PHK+D9L($0@+@I);F1E>#H@8V%T+F,*/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]/3T]
M/3T]/3T]/3T]/3T]/3T]/0I20U,@9FEL93H@+VAO;64O;F-V<R]S<F,O8FEN
M+V-A="]C870N8RQV"G)E=')I979I;F<@<F5V:7-I;VX@,2XS,@ID:69F("UU
M("UR,2XS,B!C870N8PHM+2T@8V%T+F,),3`@2F%N(#(P,#4@,#@Z,SDZ,C`@
M+3`P,#`),2XS,@HK*RL@8V%T+F,)-B!397`@,C`P-B`R,#HS-#HQ-R`M,#`P
M,`I`0"`M-C0L,3,@*S8T+#$Y($!`"B`C:6YC;'5D92`\=6YI<W1D+F@^"B`C
M:6YC;'5D92`\<W1D9&5F+F@^"B`**R-D969I;F4)1$%415!&6%]-05A,14X)
M,3`R-`HK"B!I;G0@8F9L86<L(&5F;&%G+"!N9FQA9RP@<V9L86<L('1F;&%G
M+"!V9FQA9SL*(&EN="!R=F%L.PHK<W1A=&EC('1I;65?="!P<F5V7W1I;64[
M"BMS=&%T:6,@8V]N<W0@8VAA<B`J9&%T969M=#L**W-T871I8R!C:&%R("ID
M871E<&9X.PH@8V]N<W0@8VAA<B`J9FEL96YA;64["B`*('-T871I8R!V;VED
M('5S86=E*'9O:60I.PH@<W1A=&EC('9O:60@<V-A;F9I;&5S*&-H87(@*F%R
M9W9;72P@:6YT(&-O;VME9"D["B!S=&%T:6,@=F]I9"!C;V]K7V-A="A&24Q%
M("HI.PHK<W1A=&EC('9O:60@<V5T7V1A=&5P9G@H=F]I9"D["B!S=&%T:6,@
M=F]I9"!R87=?8V%T*&EN="D["B`*("-I9FYD968@3D]?541/35]355!03U)4
M"D!`("TX-"PQ,2`K.3`L,30@0$`*(`H@"7-E=&QO8V%L92A,0U]#5%E012P@
M(B(I.PH@"BT)=VAI;&4@*"AC:"`](&=E=&]P="AA<F=C+"!A<F=V+"`B8F5N
M<W1U=B(I*2`A/2`M,2D**PEW:&EL92`H*&-H(#T@9V5T;W!T*&%R9V,L(&%R
M9W8L(")B1#IE;G-T=78B*2D@(3T@+3$I"B`)"7-W:71C:"`H8V@I('L*(`D)
M8V%S92`G8B<Z"B`)"0EB9FQA9R`](&YF;&%G(#T@,3L)+RH@+6(@:6UP;&EE
M<R`M;B`J+PH@"0D)8G)E86L["BL)"6-A<V4@)T0G.@HK"0D)9&%T969M="`]
M(&]P=&%R9SL**PD)"6)R96%K.PH@"0EC87-E("=E)SH*(`D)"65F;&%G(#T@
M=F9L86<@/2`Q.PDO*B`M92!I;7!L:65S("UV("HO"B`)"0EB<F5A:SL*0$`@
M+3$Q,BPW("LQ,C$L,3<@0$`*(`D)?0H@"6%R9W8@*ST@;W!T:6YD.PH@"BT)
M:68@*&)F;&%G('Q\(&5F;&%G('Q\(&YF;&%G('Q\('-F;&%G('Q\('1F;&%G
M('Q\('9F;&%G*0HK"2\J"BL)("H@268@+40@=V%S('-P96-I9FEE9"P@=&AE
M;B!M86ME(&%N(&EN:71I86P@8V%L;"!T;R!S970@=&AE('!R969I>"X**PD@
M*B!4:&ES(&UE86YS('1H870@:68@=&AE(&9O<FUA="!I<R!L:6ME;'D@=&\@
M9V5N97)A=&4@86X@97)R;W(L('1H90HK"2`J('5S97(@=VEL;"!S964@=&AA
M="!E<G)O<B!I;6UE9&EA=&5L>2!I;G-T96%D(&]F('=A:71I;F<@=6YT:6P*
M*PD@*B!A9G1E<B!T:&4@9FER<W0@;&EN92!I<R!R96%D(&EN+@HK"2`J+PHK
M"6EF("AD871E9FUT("$]($Y53$PI"BL)"7-E=%]D871E<&9X*"D["BL**PEI
M9B`H8F9L86<@?'P@969L86<@?'P@;F9L86<@?'P@<V9L86<@?'P@=&9L86<@
M?'P@=F9L86<@?'P**PD)9&%T969M="`A/2!.54Q,*0H@"0ES8V%N9FEL97,H
M87)G=BP@,2D["B`)96QS90H@"0ES8V%N9FEL97,H87)G=BP@,"D["D!`("TQ
M,C4L-R`K,30T+#<@0$`*('-T871I8R!V;VED"B!U<V%G92AV;VED*0H@>PHM
M"69P<FEN=&8H<W1D97)R+"`B=7-A9V4Z(&-A="!;+6)E;G-T=79=(%MF:6QE
M("XN+EU<;B(I.PHK"69P<FEN=&8H<W1D97)R+"`B=7-A9V4Z(&-A="!;+6)E
M;G-T=79=(%LM1"!D871E9FUT72!;9FEL92`N+BY=7&XB*3L*(`EE>&ET*#$I
M.PH@"2\J($Y/5%)%04-(140@*B\*('T*0$`@+3$Y."PV("LR,3<L,3(@0$`*
M(`D)"0EI9B`H9F5R<F]R*'-T9&]U="DI"B`)"0D)"6)R96%K.PH@"0D)?0HK
M"0D):68@*&1A=&5F;70@(3T@3E5,3"D@>PHK"0D)"7-E=%]D871E<&9X*"D[
M"BL)"0D)*'9O:60I9G!U=',H9&%T97!F>"P@<W1D;W5T*3L**PD)"0EI9B`H
M9F5R<F]R*'-T9&]U="DI"BL)"0D)"6)R96%K.PHK"0D)?0H@"0E]"B`)"6EF
M("AC:"`]/2`G7&XG*2!["B`)"0EI9B`H969L86<@)B8@<'5T8VAA<B@G)"<I
M(#T]($5/1BD*0$`@+3(V,2PV("LR.#8L,S`@0$`*(`E]"B!]"B`**W-T871I
M8R!V;VED"BMS971?9&%T97!F>"AV;VED*0HK>PHK"6EN="!R97-L96X["BL)
M=&EM95]T(&YO=SL**PHK"6EF("AD871E<&9X(#T]($Y53$PI"BL)"61A=&5P
M9G@@/2!M86QL;V,H1$%415!&6%]-05A,14XI.PHK"BL)+RH**PD@*B!!=F]I
M9"!T:&4@8V%L;',@=&\@;&]C86QT:6UE(&%N9"!S=')F=&EM92!I9B!T:&4@
M8W5R<F5N="!S96-O;F0**PD@*B!I<R!T:&4@<V%M92!A<R!T:&4@<V5C;VYD
M('=H96X@=&AE('!R979I;W5S(&QI;F4@=V%S(')E860@:6XN"BL)("HO"BL)
M;F]W(#T@=&EM92A.54Q,*3L**PEI9B`H;F]W(#T]('!R979?=&EM92D**PD)
M<F5T=7)N.PHK"7!R979?=&EM92`](&YO=SL**PHK"7)E<VQE;B`]('-T<F9T
M:6UE*&1A=&5P9G@L($1!5$501EA?34%83$5.+"!D871E9FUT+"!L;V-A;'1I
M;64H)FYO=RDI.PHK"6EF("AR97-L96X@/3T@,"D**PD)97)R>"@Q+"`B1F]R
M;6%T('-P96-I9FEE9"!B>2`M1"!R97-U;'1S(&EN('!R969I>"`^("5D(&)Y
M=&5S+B(L"BL)"2`@("!$051%4$987TU!6$Q%3BD["BM]"BL*("-I9FYD968@
>3D]?541/35]355!03U)4"B`*('-T871I8R!I;G0*
`
end

--============_-1054547485==_============--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?p06230942c124de77d7de>