From: IWAMURO Motonori Date: 1998-02-18T22:06:06+09:00 Subject: [ruby-list:6512] Re: call for scripts 岩室@富士通です。 さいん本狙いで一本でっち上げてみました(^^; ほんとーに使いもんになる かはわかりませんですけど……(^^;;; # 使い方がみょーにややこしーのがちょっと今いちかも……。 あと、正規表現の「(?: ...)」に関するバグらしきもの。1.1b7で、 a = "abcdefghi" print /abc(?:.|\n)*ghi/ =~ a, "\n" print /abc(.|\n)*ghi/ =~ a, "\n" print /abc(?:\n|.)*ghi/ =~ a, "\n" print /abc(\n|.)*ghi/ =~ a, "\n" print /abc(?:.|\s)*ghi/ =~ a, "\n" print /abc(.|\s)*ghi/ =~ a, "\n" print /abc(?:\s|.)*ghi/ =~ a, "\n" print /abc(\s|.)*ghi/ =~ a, "\n" を実行すると、 false 0 false 0 false 0 0 0 となりました。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ◎簡易HTMLリンクメンテナンスツール mkhref ○使い方 「」と「」の間にある 文字列を、COMMANDに従って書き換えるツールです。COMMANDには現在のところ 以下のようなものがあります。 ・link: - FILEがHTMLファイルの場合: 指定のファイルからTITLEタグに対応する文字列を拾ってきて、 TITLE というアンカーを生成します。 - FILEがHTMLファイルでない場合: FILE というアンカーを生成します。supress=NUMが指定されている場合、NUMの 数だけ拡張子を削除します。 FILEはワイルドカードも指定することができます。この場合、ソートしたと きの最後の要素に対するアンカーを生成します。 ・list: FILE1, FILE2, ...のそれぞれに対してlinkと同様の処理を行い、さらに prefixとsuffixに指定した文字列を個々の先頭と終端に付加してリスティン グします。prefixは省略時「
  • 」、suffixは省略時空文字列となります。 なお、FILEは`,'でも区切れますが、この場合はFILEの順序をソートしてア ンカーを生成します。また、ワイルドカードの指定もでき、ワイルドカード を展開した結果が全てリスティングされます。 ・title: 同一ファイル中のTITLEタグと同じ文字列を埋め込みます。 ・mailto: 設定ファイル(ホームディレクトリの`.mkhrefrc'もしくはカレントディレク トリの`mkhref.conf')中に「$address = "EMAIL_ADDRESS"」という記 述があると、 EMAIL_ADDRESS というアンカーを生成します。 ・その他: 設定ファイル(ホームディレクトリの`.mkhrefrc'もしくはカレントディレク トリの`mkhref.conf')中に「$NAME = VALUE」という記述があると、VALUEを 埋め込みます。例えば、mailtoが使える状態で、 と記述すると、 EMAIL_ADDRESS となります。 ○設定ファイル mkhrefは起動時にホームディレクトリの`.mkhrefrc'及びカレントディレク トリの`mkhref.conf'を読み込みます。これは単にloadしているだけなので、 rubyで記述してください(^^; ○サンプルデータ テスト用のサンプルデータといっしょにアーカイブしてます。htmlの下にあ るmk.shを実行してみてください。なお、mkhref.rb本体はhtml/comp/rubyの下 にあります。 BEGIN---BEGIN---BEGIN---BEGIN---BEGIN---BEGIN---BEGIN---BEGIN---BEGIN begin 644 sample.tar.gz M'XL(`$/8ZC0``^U;S7/;UA'WE?P7WT*YTVT[C)H=/&;NLFA_:83GK*1WM)/@@+5M);+*9%CMC$7S8W;=O/WYO\0AWO9Z9.S9=@J5\I52"8P!0+!?] M3RW//P7E`^]^(&G-DZ?PY>O'SJW-GG05)RN;,;6Z=SN?6M=7XGE]O8E.KI&B5) M'6I=IK?PFV=X)JN???FY\Y="WGRZ1K M#;MUDS1I]=J]!T[9#A68ANNM-NU>/\?PLK_(+YU!XR:J2D=:T0R2\_76]%;+8:X;LZ.G M&Z9G3Q@2L'$]T.WV/!=TUX.>W3+:!FM5X676@M.L`=HR%+1J<:6* MF?[=2UN@K:PLQQ6@Q_V_T]*8+YS!]GL9N7^L6ZB_J7K/+7!PMU`_=Z4^HN-^V#]W;0R5GL&W8 MLF,Z`&JF4:]A'V%;G?H+UL!52NJ26BX_DSF5V5S;77_E&?D4R)/M!F"[D:W6 MDEWFO0H=FL=!;R@ZJKO!E+9A M,O"RM1PQQ31=.'T[8V:N9BJ93N8[<_.D+;ZBZ3Q!WVPV)[K-+'I\9R;5.*& MU;8/NX5ZGGT6U@U71_UP@SD-VV70P^Y+[S"5;O-9+/N&@4B`MCC^@*D['::0 M*J[47\+*\F(%E\`_`B!#[<_U^^9-("^XX-G@]EF3]VX0BKMH'_:KO9Z.39J) M:0JH?M!#$UW55^/WH<)TN=D29O@#BDX--8*2PEGWNN0FT;GR)["7HW? MI!R;%HQ_8XKPGPY+IW,(^'7.?RJ5"IW_).=_,Z*)^/>N=QW65IW&TYP#]__' MQ;]<*98FXE\LE?#1^,_G'G[=$]^>U/WWMS^,.JDDVW M6!M,6V_M-FVK;700_Z]L;+YT13ISX?R&M`,+(.54?P:G*2V")&8C;FE'97JS M"_NW?-E;?/,PVB"?QEUGB[F>2COZ2=F_C5CO(9B+'8;F#&[P(6:U\/,@39]H M]OU?_NJ?#[X8OC'\9/0.FO[>Z+-[7PX_)ZOOOC]\BYN-.](N/Z>26[JGDQ:: M.R>.O+;=$[*LWMJVL@LGL_BEMBU.OG*&#:NW@=O?_S;=^]\/_S^ M@S_\?#B\\_KP;\-?#'\T_-.8U.]0S?#^\"?#OP_?#P;_\.OAY\.[PP?##XY`;Z2$.T)A/L+CR2.RS4^K3V;(\W.W.4?,\W%7IP,Y M$D!#[3ZSQ'(DA_N=GZM%$2L@4Y0')*7205YV+*:"DVSQ+WD`+7?@^"'D8DW3 M=J/YQXP2$8V'8/3ZZ(O1&UA+[XQ^//S]_0_>?&OXUO`S'@PRMZ!;S:[M'!X) MM,AOAX55K%8I5DVQ\>A7 M`RD=#\Y$J4[.'+CPJV98Z#FII@,AQ>JV-+]/[`?;4GU^GXL?U')Z73JDB"2R M!JX)@>-@V?B,;0^LEC1>6W<_>?-?/[U[]^,__IM[W+`,;]<'IA`*,%P1;CR@ MHL/!3'PY<>@((OS!Z)/11Q15+D"Z6ZR)#Q^[?=W1>Z[L>HYA<<#B`[O4F*,Z M?UAU^Z;A":`@'M'R+_K,&C)&4JK;-=I>(+)*I50(];K(NB\)<0E6ZY$JR=?% M!_W+@S%K`DCF(SXB7V+&8,"?BE2$80V\$%4 MPPL`)H=YOF)FFT9=$B445G14M@B9@144,X:>%P3",3 MLWA3^&`AL-#/FECF^`J#T/B_B8P'QQ^+A8?]+;HL`$(Z`Y.>]EDA6O!K;>-H#TT0_=O$V MX97*7NO3&F@HE`9`.`\8\)*.".5`,!O&I=G%>S+^\X>B.29V0"$8[H)\`D0N M9`CW/#%\&!CRF#8'3+!;+TO&X=]_@\,>1MX\,Q*258PZAF MP]0@KXL=)MP_)W;0:/>A^7GW-(>M!/U8A7T87R-"I*R>X'T9'ZQG_5;MQ,F` M#55$-S&U85],%1:NZ-1B-9A9"G@"$!U'[TPA6$=P&!/57`"V.^/3+(B8I%+` M$!/E@&]W?E]<'019ZS="006AMV$3@[[A.+9#XORT955HR43B));B^>Z?9?AM M6(I'LFWSB7EO12-M3''_:AZDR]9UR]Z+#I:N477SQ6P'5FY+.P?'):X#(Q)8 M1S\5!E4;ENMX\O&T==A8UBY&B8^E?CO,B4.7:8QQU'U#W@S>/^S0%B@%9+WOV9$00.[*J$#UEJ,65B^ MV+DWS4%#M1WUE;[TKEF$_J?Q8T M/\=/_=UN^I#?`4`][*