管理 | 差分 || 新規作成 || カテゴリ一覧 | ページ一覧 | 更新履歴 | 差分履歴 || アンテナ || PUT || more≫ ≫omit
shortcut: FrontPage || WikiLab | StoreRoom/最新 | 日々の泡 | むず痒いパソコン日記/最新 || HelpPage ||[edit]
category: WikiLab/WorkReport

WikiLab/WorkReport/Wal4 - Wal4 の改造工事作業メモ。本当に個人メモなので、参考になることは何も書いてないです。多分。

LastModified : Sun Jun 15 13:47:59 2003
[管理]

Wal4 の改造工事作業メモ。本当に個人メモなので、参考になることは何も書いてないです。多分。

2003/06/02(Mon)

[TOP↑] [管理]
  1. FrontPage を編集可能に。
  2. 一覧表示。
    1. 数字リストに。
    2. 編集可マーク表示。
  3. カテゴリ機能。
    1. カテゴリ一覧ページ。
    2. <h1>部分、ページ名検索へのリンク。
  4. タイムスタンプ挿入。
  5. ヘッダ・フッタの HTML 部分(メニューの並びとか、最終更新日時とかの表示)。
  6. 脚注機能。
  7. 各種、アホのような勝手 Wikirule の追加。本日の日付検索。

宿題。

[TOP↑] [管理]

2003/06/03(Tue)

[TOP↑] [管理]

ああああ。なんか集中力がない…。
そんな現在、2003/06/03(Tue) 09:51:13

継続中の宿題。

[TOP↑] [管理]

新たな宿題。

[TOP↑] [管理]

2003/06/04(Wed)

[TOP↑] [管理]

宿題整理。

[TOP↑] [管理]
  1. 残っている大物(これができないと表に出せないのよ問題)。
    1. 検索の<h4> + notoc<h1>〜<h4>問題。
      1. 検索結果表示で、見出し勝手ルールが整形されない問題(wal3 ではできてるけど、何をやったか思い出せない)。
    2. 部分編集の<h4> + notoc<h1>〜<h4>問題。
    3. make_link 画像のフロート表示。 [済] 2003/06/04(Wed)
    4. make_link フラグメント識別子。
    5. <span class="date">二重入れ子問題。 [済] 2003/06/04(Wed)
  2. 小物(できなくたって構わないのよ問題)
    1. 検索フォームをページ内に表示。print_searchform のフォームを呼び出したりできるのでしょうか。
    2. ページ先頭の Index を Div でくくる。
    3. その他テキストボックスの大きさとか、細かい修正。
  3. 番外1。
    1. 1行内に six single quote が二つあると<em class=" ">に返還される問題。
      quote4つで<em class=" ">としてしまったせい(だと思ってたん)だけど。きれいに書き直したら("きれいに"って何だよ。余計なところに余計なものを書いてたような…)、直った。
    2. その他、1行内に2つ書くと巧く置換がされない勝手ルールを修正する問題。
  4. 番外2。ソースのコメントを整理すること。
  5. 番外3。WalRack のソートを名前順にすること。

初日の宿題が全然減っていないような気がするのは、気のせい? 気のせいなのね?

そしてまた、新しいルール増やしてるし。といっても、name から id に移行したいので、とりあえず id のルールを作っただけだけど。データを後で一括で置換して、name のルールを消そう。

宿題 [済] リスト。

[TOP↑] [管理]

ということでやっとスタートラインに立てた…
そんな現在、2003/06/04(Wed) 12:48:59

宿題会議。

[TOP↑] [管理]

InterWiki と画像の表示の整理。

[TOP↑] [管理]

…画像のフロート、出来たような気がするんだけど、ど…どうなんだろう…ドキドキ。なんか意味が判らないまま、前の改造を貼り付けたら出来てしまったのですが、これでいいのでしょうか…。2003/06/04(Wed) 14:28:58

フラグメント識別子。

[TOP↑] [管理]
my $part = $& if ($chunk =~ s/#[^#]+$//);
return qq(<a title="$subject" href="$url_cgi?$cookedchunk$part">$escapedchunk</a>);
return qq(<a title="$escapedchunk" href="$url_cgi?$cookedchunk$part">$escapedchunk</a>);

のはずだったのですが…。

なんかリンクの動作が変わっている?

wal3 では エイリアスを指定しないとリンクができなかったんだけど、ブラケットで括っただけで、リンクになる。 で、ブラケットで括っただけでも、エイリアスを書いても URL が http://***/index.cgi?FrontPage#1d01#id01 こんな感じに、#id01 の部分がダブったものになってしまう。最初の # %23 になっているけども。

my $part = $& if ($chunk =~ s/#[^#]+$//);

を入れたときの動作が wal3 とは違うようよ。$cookedchunk だけで %23*** になるってことは…。 もともと上の1行の意味が判ってないので途方に暮れてみよう。2003/06/04(Wed) 15:44:54

検索会議。

[TOP↑] [管理]

<h4> はできた。@ で始まる見出しもできた。ただ、[@***] の部分が表示されてみっともない。 wal3 ではこれが表示されてなくて、自分で修正したような気がするんだけど、どこなのか判らない…。 だからほら、ちゃんとコメント書いたりメモしておかないから。 2003/06/04(Wed) 17:11:41

2003/06/05(Thu)

[TOP↑] [管理]

ふと気が付くと、「これができないと表に出せないのよ問題」はほぼ片付いた。 もう差し替えても差し支えないけど、せっかくだから全部やってからにしよう。 あとは検索結果の表示が整形済みにならない問題と、割とどうでもいい部分だけ。

教えて下さった皆様のおかげです。
そんな現在、2003/06/05(Thu) 10:56:03

検索結果の勝手ルール見出し表示。

[TOP↑] [管理]

う〜ん、wal3 ではちゃんと整形済みで表示されるんだけど。WikiLab/WorkRepot には書いてないなぁ。でもアテになんないからなぁ、細かく書いてないことは沢山あるし。@*** とかの見苦しい表示を見た覚えがあるので、自分で修正したような気もするけど、\* とか @\* で wal3 を検索してもそれらしい場所が見つからない。最初から平気だったのかなぁ。

<li><b><a href="${url_cgi}?${cooked_page}${part}">${title}</a></b> ${text}</li>

${text} のところはできたようだ。

my $title = ($i == 0) ? $resource{pagetoptitle} : ($parts[$i] =~ /^[\*@]*\s*([^\x0A\x0D]+)/) ? &toc_escape($1) : '';

こう? すごくデタラメな気分なんですが。検索結果が変わったりしないかな? 大丈夫かな? 一応大丈夫みたいだけど、やっぱりすごくデタラメな気分。でも宿題リスト消しちゃえ。 これで大物リストは制覇かな。本当かな。

自分でやったところはやっぱりとてもデタラメな気分。
そんな現在 2003/06/05(Thu) 12:44:27

2003/06/06(Fri)

[TOP↑] [管理]

言い訳。やらなくてもいい「別件」に執念燃やして尽きました。

とうとう、ちょっと宿題を残したまま差し替えてしまいました。
そんな現在、2003/06/06(Fri) 15:26:36

そんでもって部分編集てすとん。

宿題済みリスト。

[TOP↑] [管理]
  1. 番外3。WalRack のソートを名前順にすること。
  2. 追加宿題2。HelpPage の修正。

それにしても、Wiki をいじるのは楽しいけど、Help とか、各ページの説明を書き換えなくてはいけないのが面倒(笑)。 常々、ソフトを配布している皆さんはえらいなぁ、と思っていたけど。

残りの宿題リスト。2003/06/06(Fri) から。

[TOP↑] [管理]
  1. Wal4 関連。
    1. ページ内検索フォームができない…。 2003/06/08(Sun) 19:51:37 [済]
    2. wal4.3(half?) から wal4.3 に差し替える。 2003/06/09(Mon) 23:04:10 [済]
    3. 追加宿題1。検索の表示・先頭のインデックスで勝手ルールが未整形で表示される問題。これって、前は勝手に整形されてた気がするのは、気のせい? 見出し部分は修正したけど、検索結果の text のところが、どこなのか判らない。正規表現を間違えて置換されないだけだった…(だってこのところ「場所間違い」ばかりやらかしてたんだもん…)。直せるけど、面倒くさいから後でね。 2003/06/10(Tue) [済]
    4. ページ先頭に index しない見出しを $header_level に対応。 2003/06/11(Wed) 04:40:53 [済]
  1. WikiLab/ToDo からのついで。
    1. 編集画面からページへのリンク。部分編集してるときに、他の部分を参照したいことがあるので。 2003/06/08(Sun) 14:12:32 [済]
    2. 1行内に2つ書くとタグが不正になる勝手ルールを修正する問題。 2003/06/10(Tue) 09:48:40 [済]
  2. 番外。
    1. ソースのコメントを整理すること。 2003/06/09(Mon) 23:04:10 [済]
    2. category:WikiLab/BeginnerGuidance 近辺を整理すること。

ページ内検索フォーム。

[TOP↑] [管理]
    print <<"EOD";
Content-type: text/html; charset=$charset
# ----- 略 -----
EOD
    # ----- add start -----
    @{[ $admineditable
        ? qq(@{[&print_searchform("")]})
        : qq()
    ]};
    # ----- add end -----

    print <<"EOD";    # add
</div>
# ----- 略 -----
EOD

最初、$admineditable$editable として巧くいかなくてしばらく悩んでしまった。 当然凍結ページとそれ以外の別は最初に考えたんだけど、なぜか変な空間にはまっていたらしく、「編集可」のページを開いているつもりで、凍結ページを開いて、「表示されない」と小一時間悩んでしまったらしい…。

で、とりあえず、発想の転換。

    print <<"EOD";
Content-type: text/html; charset=$charset
# ----- 略 -----
EOD

    &print_searchform("");    #add

    print <<"EOD";    # add
</div>
# ----- 略 -----
EOD

こんな感じで全てのページに検索フォームを表示して、逆に検索ページから検索フォームを消すことを考えた。 検索ページは、「結果の表示用」みたいな感じで。

sub do_searchform {
    &print_header($SearchPage);
#    &print_searchform("");
    &print_footer($SearchPage);
}
sub do_search {
    my $word = &escape($form{mymsg});
    &print_header($SearchPage);
#    &print_searchform($word);
sub print_header {
    my $word = &escape($form{mymsg});    #add
# ----- 略 -----
    print <<"EOD";
Content-type: text/html; charset=$charset
# ----- 略 -----
EOD
# ----- 略 -----
    &print_searchform($word);    #add
# ----- 略 -----
    print <<"EOD";    # add
</div>
# ----- 略 -----
EOD

…こうか? 合ってるか。まぁ、いいや。やらないから。あんまり余計なところをこれ以上いじるのはやめるって決めたんだもん。 2003/06/08(Sun) 19:42:35


ちょっとめも。

[TOP↑] [管理]

2003/06/02(Mon)

[TOP↑] [管理]

今回は改造全てにコメントを埋めております。 コメントをちゃんと埋めて、もしも、マトモな改造ができたら、cgi を txt で見えるようして置いておこうかと思っています。ええと、「私家版の配布」ではなく、あくまでも「参考になりますか版ご笑覧ください」ということで。 これまでは、検索の改造にアホアホな部分があったのと、あまりにも汚いソースなのとで、出せなかったの。

あれ、ここに書いたんじゃなかったかな。「もし、間違ってるかもしれないけど、動くからいいんだ」という乱暴な部分をつぶせたら、という条件もあったのでした。で、どうやらムリなのでした。 2003/06/07(Sat)

2003/06/06(Fri)

[TOP↑] [管理]

整形済みテキストの置換、動作がちょっと変わっている? 前は行頭スペースの次の行、空行を一行開けないと整形済みで表示されてしまったけど、空行がなくても行頭にスペースがなければ通常のテキストとして扱われる。 そんなわけで、ところどころに行頭スペース入れ忘れがあるのが発覚している。

2003/06/05(Thu)

[TOP↑] [管理]
1852 if ($line =~ /^\*{1,$header_level}[^\*]/) { push @parts, $line; }

も [header level] ? 4>4.2 の差分だから書いてないだけかな。

2003/06/07(Sat)

[TOP↑] [管理]

行頭に*が4つあった場合(というか、my $header_level の設定より多い場合?)に、部分編集の位置がずれるようです。ちょっと注意が必要かも。

2003/06/10(Tue)

[TOP↑] [管理]

検索の結果表示、整形すると検索結果も変わるのか。時々整形ルールで検索することもあるんだけど。 とりあえず、{{key :*}} は key :* で検索することになっているので、[key :] に置換。 他にまだ少し変なところがあるかも(細かい変なのは、ほっとく)。

でもエイリアスのリンクは逆リンク検索できるので、何か間違ってるんだろうなぁ。でも面倒なのでしばらくほっとく。


コメント欄相談会。

[TOP↑] [管理]
# Walrus add [allow comment in frozen] start
} elsif ($allow_comment_in_frozen and $form{'mycmd'} eq 'comment' and not $willbefrozen) {
    $form{myfrozen} = $isfrozen;      # この行を追加
    return 0;
# Walrus add [allow comment in frozen] end
sub embedded_to_html {
    my ($embedded) = @_;
    my $escapedmypage = &escape($form{mypage});
    if ($embedded eq $embed_comment or $embedded eq $embed_rcomment) {
        my $lastmodified = &get_info($form{mypage}, $info_LastModified);
        $comment_no++;                                             # yakty add [multi comment]
        return <<"EOD";
<form action="$url_cgi" method="post">
    <input type="hidden" name="mycmd" value="comment">
    <input type="hidden" name="mypage" value="$escapedmypage">
    <input type="hidden" name="myLastModified" value="$lastmodified">
    <input type="hidden" name="mytouch" value="on">
    <input type="hidden" name="mycmtno" value="$comment_no"> <!-- # yakty add [multi comment] -->
    $resource{yourname}
    <input type="text" name="myname" value="" size="10">
    <input type="text" name="mymsg" value="" size="40">
    <input type="submit" value="$resource{commentbutton}">
</form>

なんですが。


&main;                # sub main()を実行します。
exit(0);              # リターンコード0でスクリプトから抜けます。(笑)
my $comment_no = -1;  # 辿り着けません(T_T)

ですね♪ - yakty

フォントサイズ相談会。

[TOP↑] [管理]

フラグメント識別子相談会

[TOP↑] [管理]

です。…また書く場所を間違えたんでしょうか…。rica

       # Walrus add [alias link] start
       my $part = $& if ($chunk =~ s/#[^#]+$//);                                                      # add [fragment]
       $cookedchunk = &encode($chunk);
       $escapedchunk = &escape($chunk);
       $escapedname = &escape($name);
       $escapedchunk = $escapedname;

ですか? 一応動いたのですが、おっしゃってることをよく理解してないので、適当にやったらたまたま動いただけで間違いだったりしますか? rica

終焉。だと思う。

[TOP↑] [管理]

再開。セクションリンク相談会 _

[TOP↑] [管理]

WikiName編。

[TOP↑] [管理]

部分編集の後、ページ頭ではなく編集したセクションに戻るのはムリなのかと思ったり。ちょっとめも 2003/06/05(Thu)

修正見落とし(ボケナス)編。

[TOP↑] [管理]

InterWikiName ページ編。

[TOP↑] [管理]
    if(&is_bracket_name($chunk)){
        $chunk = &unarmor_name($chunk);
        ($chunk, $part) = ($1, '#' . &encode($2)) if($chunk =~ /^(.+?)#(.+)$/);
        $chunk = &armor_name($chunk) if($chunk ne $InterWikiName);
    } elsif($chunk !~ /^(http|https|ftp|mailto):/){                              # 追加
        ($chunk, $part) = ($1, '#' . &encode($2)) if($chunk =~ /^(.+?)#(.+)$/);  # 追加
    }
    if(&is_bracket_name($chunk)){
        $chunk = &unarmor_name($chunk);
        ($chunk, $part) = ($1, '#' . &encode($2)) if($chunk =~ /^(.+?)#(.+)$/);
        $chunk = &armor_name($chunk) if($chunk ne $InterWikiName);
    } elsif($chunk =~ /^$wiki_name/){                              # 追加 # 変更
        ($chunk, $part) = ($1, '#' . &encode($2)) if($chunk =~ /^(.+?)#(.+)$/);  # 追加
    }
shortcut: FrontPage || WikiLab | StoreRoom/最新 | 日々の泡 | むず痒いパソコン日記/最新 || HelpPage || [edit]
select css: default | sakura | mono | greenheck | snow | NN4.x用(多分) || LinuZau!! | VikiWiki!? || others |

管理 | 差分 || 新規作成 || カテゴリ一覧 | ページ一覧 | 更新履歴 | 差分履歴 || PUT