>>153 いやあ御指摘ありがとうございます。
その後いろいろ試行錯誤しまして、
関数 copyPath の中はいじらなくて良くて、
逆にいじると問題があるようです。
コンパイルをごちゃごちゃしてたら
こんがらがったようです。
修正しました。HTTP_REFERERについてですが、
':' キーでマークされた URL については
送られないようです。これで 2ch に迷惑がかからないですね。(w
お暇な方、お試し下さい。お騒がせしてすいません。
-----------------------------------------------
--- main.c.old Wed Mar 6 18:11:54 2002
+++ main.c Wed Mar 6 18:12:11 2002
@@ -4335,7 +4335,7 @@
chkURLBuffer(Buffer *buf)
{
static char *url_like_pat[] = {
- "https?://[a-zA-Z0-9][a-zA-Z0-9:%\\-\\./?=~_\\&+@#,\\$;]*[a-zA-Z0-9_/=]",
+ "h?ttps?://[a-zA-Z0-9][a-zA-Z0-9:%\\-\\./?=~_\\&+@#,\\$;]*[a-zA-Z0-9_/=]",
"file:/[a-zA-Z0-9:%\\-\\./=_\\+@#,\\$;]*",
#ifdef USE_GOPHER
"gopher://[a-zA-Z0-9][a-zA-Z0-9:%\\-\\./_]*",
@@ -4347,7 +4347,7 @@
#endif /* USE_NNTP */
"mailto:[^<> ][^<> ]*@[a-zA-Z0-9][a-zA-Z0-9\\-\\._]*[a-zA-Z0-9]",
#ifdef INET6
- "https?://[a-zA-Z0-9:%\\-\\./_@]*\\[[a-fA-F0-9:][a-fA-F0-9:\\.]*\\][a-zA-Z0-9:%\\-\\./?=~_\\&+@#,\\$;]*",
+ "h?ttps?://[a-zA-Z0-9:%\\-\\./_@]*\\[[a-fA-F0-9:][a-fA-F0-9:\\.]*\\][a-zA-Z0-9:%\\-\\./?=~_\\&+@#,\\$;]*",
"
ftp://[a-zA-Z0-9:%\\-\\./_@]*\\[[a-fA-F0-9:][a-fA-F0-9:\\.]*\\][a-zA-Z0-9:%\\-\\./=_+@#,\\$]*",
#endif /* INET6 */
NULL
--- url.c.old Wed Mar 6 18:23:29 2002
+++ url.c Wed Mar 6 18:22:27 2002
@@ -63,6 +63,7 @@
};
struct cmdtable schemetable[] = {
+ {"ttp", SCM_HTTP},
{"http", SCM_HTTP},
{"gopher", SCM_GOPHER},
{"ftp", SCM_FTP},
ついでなんで例のime.nuとやらを取っぱらうパッチも載せときます。
':'キーを押すことで
<a href="
http://ime.nu/hoge.com/">
http://hoge.com</a>
というリンクのime.nuを取っぱらうことができます。
上でも書きましたが、':'キーを押せばHTTP_REFERERは送られませんので
ご安心を。
-----------------------------------------------------------------
--- anchor.c.old Wed Mar 6 19:52:45 2002
+++ anchor.c Wed Mar 6 19:51:05 2002
@@ -302,10 +302,11 @@
matchedPosition(&p1, &p2);
spos = p1 - l->lineBuf;
epos = p2 - l->lineBuf;
- for (i = spos; i < epos; i++) {
+/* for (i = spos; i < epos; i++) {
if (l->propBuf[i] & (PE_ANCHOR | PE_FORM))
goto _next;
}
+*/
a = anchorproc(buf, p1, p2, l->linenumber, p1 - l->lineBuf);
a->end.line = l->linenumber;
a->end.pos = epos;