home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!gossip.pyramid.com!pyramid!unify!openlook!openlook-request
- From: scowles@ckm.ucsf.edu
- Newsgroups: comp.windows.open-look
- Subject: cm2cal: reformat Calendar Manager events for pcal or calendar
- Message-ID: <l3sc8z2@openlook.Unify.Com>
- Date: 10 Nov 92 04:09:19 GMT
- Sender: news@Unify.Com
- Distribution: world
- Lines: 215
-
-
- I built a utility that converts OW3 calendar manager entries to a
- format that is appropriate for calendar(1) and pcal(1L) usage. I've
- called it cm2cal and included it in a shar file following this
- description.
-
- While the OpenLook 3.0 Calendar Manager is very nice for merging time
- schedules among individuals, it can be difficult to work with when an
- OpenLook or X window session is not available (i.e. a character based
- tty). This utility converts the information entered via Calendar
- Manager to a form directly usable by calendar(1) or pcal(1L).
-
- Repeating entries are a special case in calendar manager. To handle
- these, cm2cal utilizes the getdate(1L) package submitted to
- alt.sources by Rich Salz in 1990. I have modified getdate to accept
- command line parameters so it can be used by cm2cal. In addition, no
- prompts are issued for input. I will mail a shar file of the modified
- version of getdate to interested parties.
-
- If getdate(1L) is not found, repeating events will not appear in the
- output generated by cm2cal. It is still useful for translating the
- single event entries from calendar manager, though.
-
- CREDITS for getdate(1L):
-
- Originally written by Steven M. Bellovin <smb@research.att.com> while
- at the University of North Carolina at Chapel Hill. Later tweaked by
- a couple of people on Usenet. Completely overhauled by Rich $alz
- <rsalz@bbn.com> and Jim Berets <jberets@bbn.com> in August, 1990; send
- any email to Rich. Posted to alt.sources in 1990 by Rich Salz.
- Modified by S. Cowles (scowles@ckm.ucsf.edu) for use with cm2cal.
-
- CREDITS for pcal(1L):
-
- The original calendar PostScript was Copyright (c) 1987 by Patrick
- Wood and Pipeline Associates, Inc. with permission to modify and
- redistribute. Many others have worked on it since; see the
- Orig.ReadMe file and topline comments in pcal.c.
-
- The following people contributed to Pcal v4.2 and v4.3:
-
- Overall coordinator: Joe Brownlee
- "nearest" keyword: Andy Fyfe
- "note/n" suggestion: Geoff Kuenning
- VMS support, moon phase algorithm: Richard Dyson
- "-c" suggestion, new SYNOPSIS for man page: Bruce Mohler
- Other C and PostScript code: Andrew Rogers
-
- EXAMPLE USAGES:
-
- With calendar(1):
- $ cat /usr/spool/calendar/callog.scowles | cm2cal > cm.cal
- $ cp cm.cal $HOME/calendar
- $ calendar
-
- With pcal(1L):
- $ cat /usr/spool/calendar/callog.scowles | cm2cal > cm.cal
- $ MN=1 YR=1993
- $ pcal -j -M -F sunday -c -f cm.cal $MN $YR > $HOME/calendar
-
- To just check the output:
- $ cm2cal -t
-
- --------------------------------------------------------------------
- sid cowles voice: +1-415-476-1582
- internet: uucp:
- scowles@ckm.ucsf.edu
- scowles@llnl.gov {backbone}!lll-winken!humpty!scowles
-
- #!/bin/sh
- # This is a shell archive (produced by shar 3.49)
- # To extract the files from this archive, save it to a file, remove
- # everything above the "!/bin/sh" line above, and type "sh file_name".
- #
- # made 11/10/1992 03:24 UTC by scowles@scheffer.lib.ucsf.edu
- # Source directory /sea1/scowles/tmp
- #
- # existing files will NOT be overwritten unless -c is specified
- #
- #
- #
- #
- # This shar contains:
- # length mode name
- # ------ ---------- ------------------------------------------
- # 7708 -r-xr-xr-x cm2cal
- #
- if test -r _shar_seq_.tmp; then
- echo 'Must unpack archives in sequence!'
- echo Please unpack part `cat _shar_seq_.tmp` next
- exit 1
- fi
- # ============= cm2cal ==============
- if test -f 'cm2cal' -a X"$1" != X"-c"; then
- echo 'x - skipping cm2cal (File already exists)'
- rm -f _shar_wnt_.tmp
- else
- > _shar_wnt_.tmp
- echo 'x - extracting cm2cal (Compressed)'
- sed 's/^X//' << 'SHAR_EOF' > _shar_tmp_.tmp &&
- begin 600 _shar_cmp_.tmp
- M'YV,(T*\$)/&S8LY:!2,`#&FC8PQ8=CH`,'PC1L[9>30`?'DR@R&$<NX(1-&
- M#H@V8=R$.9,1A$@Z<M*4F0."SAL09M[(0;DQ#!PX<MX`31.&3AF%.'6"9".2
- MI!P4,5*`2$D&!!R(;*`RD5IGSLHR+A0B%1)DR)(C4IY4<4)$!](K:-(PK8FF
- M#$<X(IF\>;,&Q`P7,$`,"3FR)(@F*;^:3$,3HYP\(-RD&6,WI\DV&<\4/(.4
- M3AK,(.:,J4NF#E.:8=I8/`/B3-`Z<.:P`)%F(T0W(,38)9/&C)G)IC?:!'%'
- M9]\[M1,NO%,7=\J[>??V58J%>$$R;^Z$GCDGC47:--V\Z6DGC-PP8N:B2.,"
- M[%2DHTN&&6/4I)@P<\I4I4,G3PH7%%$1%TUU>,9&;9"-89%C=-!4D&4\>8?;
- M2QGIAY0=1`E&F%.')<:22<.%D=1.('2%WEQB)+AA25!)I=15$6GUGU@+/0$%
- M%4D\X4003(`@11%15)'$CTT4X0054[BU$$MTD&24C."!($<9<=21QI3[W80&
- M57--B5=1F[F$D1L-XA14&QHR59@<2"&FTH<`@I"$&9&-EU0=(\WF91E@NL%:
- M&6.6B1P;;-39TT]\+H8;'74A]4:!<!0(@I,BFG$F78R5:"""<28!PI88G?0&
- M;[_IUUH9319E5XAC4`8''?"]T09*(X%PH!MVP2$?9O71I)1%NZEJ54NW5G;I
- M'$T6U*ES9/#FF44L("6>56>^BMJ4X,U1AZF6T>9&I'2$-0)20V!9&TW=PIA5
- M#%LI"8*`=NF4AF8J%8I54X9!\0:R4XP1TZO$X2>84'G$=`8:&Z$PAE0QY(##
- M#;E!!D51,8W1UQ5[D8$452!`D09>Q8(0Q!QSO#$&44;))J<;8P"('*/#[L18
- M=]\-IQJID'%L+K(QB5$@6&VF!-EX=<E!$ZAV%2?'&J9^5UMH!5&VPW:KUL61
- MP2Y(P2<9350FEUT<VP1'L;'.^I*#N*GK0LLTOFMU3H1F%R9>0LVE()D]_YQE
- MQUB!8`<-+L@P5:U_NS"#DDA1I+CB3S@6D;U[R<&;2C;),='BF&>N.>9*O&&7
- M$$'=X0931RVTN0BXEC03'2*`P'0>2I-Q^>:TUR[R2)`9D8<9I=..^GAEO.!&
- MZ]J>P1*R$LYN^_(4'5'&&[Z!L,2V;DCF9^*:6]'$%*'!!H=.=,RFVG=P;)G?
- M5&R<(2^C;2A?NQ23;2DY"$3D4;(;V&<N0@MC$%^'\:N3T&QPI9TI9,$)-II"
- M$KC7+5I9Y2ON`UT=*'.8-Z"!*6PRG>:>P*B6#&%P5=$7O_SU,=N,J@SN8QY%
- M@C"2*6E'"F_XT!S:5B[]G&M$ITK5D]B5`G<]P6`%>1QD[A`3_H@D8B"8@E'&
- M=!@`":$,<<,0;G@PAS:(`0A3RD])1N."HH1+06WP`7'BPI2-"<=J59",8[K3
- M'Q!`#P1.`!\:-!246XFH*(+9$LA`@`2YL"%.3%`5B.[`)Z95)44;JPALYO)&
- MNHTM7KBI0GYP%2Z*#$%6CS0*&X;FF"V9QE0I\E'\0$""B.@!*3PPFBF!(`8Q
- MN&%MLA(CQY3P&1`\<4IEXH$:=(/+.;#2E;`,H[=$]K^NA`\$#<L!#':`E$E6
- M16@N08E<:G(3^'&1(B(TRMXB$JZ2U4$.E$$;,G.@3"1:<XY3,*6X*D@JF1P2
- M,E,`T"7O<!H0H$`TV3D-$"S6!A=,<`YF:$]I4C"U_-C%1CC2$8]\!"0A$<E(
- M2!(74HJ`A2`T`0I,*`((JC"%(!RA"$E"RLOF>*\UM0AQ"R$!2#;R@J[(X2#?
- M>P,;7E!2I]#T<3%T`3[I.1,0\($A#NF;&!NRMH@@1:5C@`-0BUHH$B#A"46Z
- MJ9J<<M2EX"N#(DV.5;`B(W<A%8\MG<-+YQ#3F=:T)%)E0TYW6L^?-N0A$0'!
- M4/N)E:HVP0D]B`$(LB"%O))S!E55%PA:H(;!-F&P1NA>82##O\'2B:A](\%=
- M2<E7N9+RJ5$]*U87,APU&),A=;$87>(%J0*YZZU]:P&LQK40T8RA.[*C"!!0
- M,((4H#8B"8B!"VJ06QSH@`8VT,$,9)"`',C@!3&(P0M@D`,%-+,NA/);28B2
- M'KL4I#9$.9`>P&21.;AE"%#M`1CN,\G4V(4$,`"#`CCJT2+T0`0F8LGE2`#>
- MPVX!*VH]PQ=^PY0NB$`!5+BH$9*0T1Z\@`YM@,,+Z`M5%Y"`!,YM+:I*I-2F
- MN/&QLJ)55<;`E)3`QBTP\0D(1#"0@KR`1"V@$PD"#(4!9[1U@=&KX#X2@QI$
- M&+1E$&T8RG,>@ARHC6]DDI-0J(`@B+<_>,GAD-7;&Y?@`2@C)D$06C<1$;A`
- M!8:ZTTA:)\87D`%0PC--H63@`Q/$0`$=Q%\"/DH%(@2!"NY5`!3SHX`U%Z'-
- M;W8O&,KP9).(0,I4'O&5H\0%%%R9"RD0@7I_<^/1Y+@O!0&7MXSB&@2Y!<Y3
- MH$(/8*"`)F]AL'J(<@Q:UP4T-Z?.K4V6&]R2@"$T009#X)&+W;N__T+1TZ)N
- M70]&K%I2FUHD=<:TIL\\YZ,D8"$BHA1_B9R`3Z<XUR#H`@A,8`+!O#K63)CU
- M>TDP:I_^=`]U3D".T7"3/]=WOC&8R+*SG!,\D<$%7#:!#,(][G*3@+T?C?>\
- M$R!N/#QMWWU0`*.EE9W9Z(9>HZW(13)"LU=2I"MV@;BB)*V4E&V$4F'!]8I!
- M2H7!4@D$@2EUFNL,D8W0]]JR)G`1ZESO$=N:#71.0,E!P`,>M,`ET`LW"L+0
- MK!%385L@4()I*`*QY.H`!C`X>HS)*8/6O6XB$&-.4:I,R#*L89,G*0.J-L.%
- MX4T*5>:!>95;5QHY<'?5(*@!#9`>,^_$MCM^F@N9/C.3B00F#`4BM^5&S-:9
- M`$$T=?%-1EQP(#'X\[4!U4\=6N?%O*5L(BA`@0B$(@(6B$"9,*B\"$20`LF;
- M@0V:S[SE.2\5.JS$N_;<^4_>4!`$OP0$LXF*5'QB+=/382+S\4RHAE*>,>1A
- M(I%*SV1`D`*=\[PJ(KB"J81>*!#@`)E)1[K2QVE<IY?A]\X?X]1'7/6K0P8S
- M6_=3U\D.=KF@?O.3^N;9)Z)VMN,E)J.:2/>Q/G?,H+X&@L,[HW12Y;[[$O!E
- M('AR0'AI8'C_E'BEP7C\X7AUEWJ3!P>:AWF:QWF>!WJ6)WJ;EP*E=WJ0IWK?
- MTWJ802:PATP:.!4_T2"VAWOTD0:[%Q.]AWW!=R!C0'S&UW/)MWQ#!P(Y`'U*
- M-WW)U'2N<WT3\1%2=WO<IW7>EW7A=P;C]W6F9WYCEWYF]RQHUWZ!\7YN)W](
- M2'^>87_LEW]YQW]\IR`\]7^.)H`$:("()U"+-Q4+6(`_@WJ1]X`1B'03V'DB
- M\'FA=X<;>`9RZ(&L1R8AN!&Q5X*TAX+;EWLLF"LN.!\P6`?"-X/%QV\H,"6J
- M$2HW6!7,1Q$[&`/1]XG4!X1/YQ>3^#QF('!IX%,*D!]5<0)S\`)>@`*%=F@:
- M2`(OP`7*=0*J&`9WT!<G<&/7Y1D1D09Z`#1"4`1'D`1.``+@E@!5`CP@L&MD
- M%1-D8@:25P+],QLS0`.3B!)X\#K1.%AGE@`(!@?KMFLB<`(K)F`J=P+_E0!"
- M)BSHJ(YLYF9PYHX*$'!(H2M&8UU&T08T,1RZ,17-8BK#T4%N5%H;<2#($A;<
- M!@)^``(O<'POP(RHED,)!RBO-QI!(1[Y-1EQ]2`Z$2$6$18R]TW,<43H^(ZI
- MN&OCV!OW!(D\@P(DL!X@L`(D&'N%&(V[]HQ&D0+->))RT'TD`1G2*),P09,R
- M,!M+28KA-@;?I!ID,D>[1@*`Q6]0*3EA8)2D1`-/^4U=:!=5:6-8^4UYD"CA
- MJ"UB,),D8`,Z"0+<6&<!=VP/U(\)EY53(H(:*8*EP@9DX%UU9ADVN6LW,#6I
- MR`.[Y@1&8)@KL`)`&6Y+,F$(N9<;\3HFF0`P69-I(!4]@(Y/QWE!F0#@6)4V
- MB9-1$6ZB>7USL`6O(VTNB9HP"8YBY(VO\YC\QF^T>7WA^#JH.9?\AFPD,R^+
- M8C4<:1$W@7&H291;R9K7YYH,@9)(6)2H*96,PIQYX)Q929T)<9M%:9W8^4W2
- M>9MAZ9WAF)5AB9IG61+DN6M9F9YLPF^^&9EG9!>4*85G=YF9N1Z<B8YEMWZ@
- MB9K]287K24JE28+A%I\8.9F!\G6B\2]4>)E9683AN'GAEI^;R9/<MR6W]Y^W
- M"9-JR98%&A5O&148ZI-E8)NW*9B%M6NI:)I34UB("4>+"0)JT)@HVJ'6N*(L
- M>I,D&)JW&0<MZ2U?A@<TB0)JD`*S8:*3>)ME.90:FI9(^10U>:1)VJ+(-!MJ
- M<@:,4J1'*A4W!Z1+RJ0>&J5<BJ2V(A):B@9E:J8DVID@H*0^>IM%.*`?FI01
- MJJ%OF:5;>J=%X:6GR:2W*093$@9K@)JWZ9N'ZA(P9Q=QBIG66*=2:J1FJJ=J
- M.J4:N),AT)-U`#PWRJ1\NA'LB9)/VCJM8ZF&"I^*>CZ-F@!SVIKE*:IX1*K=
- MLY9)::EYBJ9;:JE>:J"`RF^"6DBGF@"("I^&BJB^B:!,DI$+BH6C@I_6J)G[
- M.6+,*CL<RF_3.J":R:-_*JR0F:!64Y_U-Q/.6J07ZJ:H$Y;>5:T)$*ZKZ:JD
- M::7;.I<!IX\+X2_[,@<M`#UT\F5,H4VT\8^`^9`1>6)E<(G!8Y%TR8_G@Y!X
- M^7KU*9"[`46HHA^L)IA!6IBT07.).:-I8*-!*9_*^GJ66:'/JI\8*@*?>:.O
- MLYK9:IHIX)R<1JS<&G!&0@0(.Q35*'D!46(&@1!=-WY2(4;EN&P7B;,;\2CS
- MZ2T0<G;#I"VU<2*5,9)%89*".9K(-#7@&*.YF0=8>WT>2[(HL++KZ9(W6J\+
- MDA$7IWY4:":RLAUW\Y?4)"K8`I7((BLE`1EX<BZ7Z:@H$*`2,K9^80-(UZE^
- M:Q$#6KAN0)X5.0."&QBM0V[?](ZH6FRT88V(2YYBQ+B#ZZ.7ZZ[V*:"NNKB-
- M.V*?\BA&([G"FJJ,:JB=VYSAV+K7*9$@(+BDVP8%$8>HJX^WR5EU<3ZJ`S5Q
- M%R^M\DTB04&4.0=["Y/7ZJ[H"'=GP!3J2I<-2R:;-!L(B;22MK0;P1BLMKM!
- M-W0XD`#*1P:S@4>>V(-(-QO=HELU4+K?A'K$L87?IW6>(7ZX`15,%Z8)8+36
- M*`(E0!/_FP#_6[X;,<`X]+^7\[_V5`)DD`+C-QM<<*K:Z9T0?*K=V9H5#*C*
- MF0<4#`(1#*CCB<$>;,%J^[<B_,%,VJK-F<%,ZI[DB<+\%J9]H+J5BP+Q:!0@
- MD*DN)Q7@9JB\.Q-@@RUM$!P?PTC#FY?&&RC(:ZC*FQ%N![@B0!)RD0?1*VYA
- M.:%%B;K\)A)U8$7A.(Z)2KE-#']D`,7S1\6=:L5T-Z'=I\7BY@9=+`9?7*PT
- M/,9/S+PC1A!G7,5;!QKHV'USX,9<[,6[MF]AO*@UO+RN:Z[:N4E\?,7HJ)V"
- M#,>$C$QT+,;6J,BQ:Z[NZ<AIW,=B.6+N.<EQ/,=,.L.4&Z>@/*%:/*S\*WEI
- MD%=`:UE#^S6&^LHBP!Q?`P*?1@*IV`)L4,!5T04/'!GHZIU!6Q,)1K1,BLO8
- M,<M"N\RVW,S42`?]ZP;BQ6=0YLL>C&4,#`;%/,ABD,RU7$;4W'K]&P;BI<#L
- M#,#N#`(*C),D@!O_"\[#P\*W><-E,!L;W,$3+,(7O,(C#,)TU\$N+,*@3,[2
- M;,ZWB<OY87)A`,W*;([3W-#5W+\MQP5_)CA6F0#<1L#PK#+=@L`4H<`T60,.
- M+`+%#,/\%L("#;M=P,\:BLRTO-#&9M'H#,O9W&>D!*_VS'DU3=$,;:T7+7G8
- M@2L27<XWS:TR.Z\*\(N=,2"A04(`PQ*X,H4]A9!#',Q%++Q96;STJ<3K-"55
- 6<B4]I<]0,AS8$1IO$!8(04HL-FO.!1*X
- `
- end
- SHAR_EOF
- echo 'uudecoding file cm2cal' &&
- uudecode < _shar_tmp_.tmp && rm -f _shar_tmp_.tmp &&
- echo 'uncompressing file cm2cal' &&
- compress -d < _shar_cmp_.tmp > 'cm2cal' && rm -f _shar_cmp_.tmp &&
- chmod 0555 cm2cal ||
- echo 'restore of cm2cal failed'
- Wc_c="`wc -c < 'cm2cal'`"
- test 7708 -eq "$Wc_c" ||
- echo 'cm2cal: original size 7708, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- exit 0
-