トップ 差分 一覧 Farm ソース 検索 ヘルプ RSS ログイン

サポート掲示板

ページの作成や編集にはユーザ登録が必要です。

FSWikiサポート掲示板

  • 設置に関するトラブルや要望などがあれば書き込んでください。
  • 記事のタイトル一覧をサポート掲示板一覧で見る事ができます。それ以前の過去ログは[サポート掲示板]から参照できます。
  • 投稿する前に
    • Tips、FAQ、サポート掲示板の過去ログに同様の内容がないかを確認してください。
    • バグ報告に関してはバグトラックのほうにお願いします。
    • 機能拡張のためのパッチやプラグインの投稿はプラグイン投稿にお願いします。
      • パッチは本体にあてるものの場合はGPL、プラグインにあてるものの場合はプラグインのライセンスにしたがうものとします。
    • 開発に関するご意見、質問等はメーリングリストにお願いします。
  • FSWikiとは無関係と思われる投稿、コメントに関しては削除させていただきますのでご了承ください。
  • 特定の設置環境でのみ発生するトラブルがいくつかあります。トラブル報告の際には、「どんな設定の」「どのサーバ/レンタルスペースに」「どうやって」設置したかを詳しく書くと、返事がもらいやすいですよ
  • どういうことを書けば回答を得やすいか判らない方は、こちらのページをご一読ください。
お名前
件名
本文

ページ内アンカーの自動生成について - SK (2007年08月21日 22時07分02秒)

PukiWikiやMediaWikiなどでは、見出しを作成すれば、自動的にもくじが作成されますが。FSwikiでは如何すれば、これは実現するのでしょうか?

BugTrackerのページを見ている限り、実現できているようなので、可能に見えますが・・・。BugTrack-plugin/195が怪しいと思ったのですが、どうも違うみたいですので。。。(このプラグインは手動でアンカーつけるんですよね?)

  • { {outline} }のことでしょうか? - あき (2007年08月21日 22時13分46秒)
  • それです!ありがとうございました! - SK (2007年08月22日 01時12分41秒)
お名前: コメント:

検索機能 - さとる (2007年08月18日 09時08分47秒)

SEARCHプラグインをログインしたユーザーのみ使用できるようにはできないでしょうか?というのも、検索機能で「か」などと検索するとほとんどのページが表示されてしまうからです。デフォルトでだれでも閲覧できるようにしているのですが、閲覧されてまずいページもあるかもしれないので、検索機能を制限したいのですが。

  • それはSEARCHプラグインの機能を変更するのではなく、「閲覧されてまずいページ」のアクセス権限をユーザもしくは管理者に変更すれば良い話でしょう。ログインしていない人が検索をしても、アクセス権限が無いページは検索結果に出てきません。そもそも「閲覧されてまずいページ」というのがありながら、そのページを「だれでも閲覧できる」というデフォルト状態のままにしているのが不自然な状態です。 - ?? (2007年08月18日 10時17分52秒)
  • そのとおりですね。閲覧されては困るページは、そのページの編集の際に、『ページの参照・更新権限』にて『ユーザのみ』または『管理者のみ』を選択して『参照権限を変更』ボタンをクリックするようにして下さい。過去に作成したページの参照権限を一括変更したい場合は、管理者メニューの『ページ管理』画面にて、操作できます。 - あき (2007年08月18日 10時56分36秒)
  • アクセス権限をすればいいのは承知しているのですが、できれば、検索機能を制限したいのです。ページが多すぎて権限を変更するのが大変なのです。 - さとる (2007年08月18日 11時36分59秒)
  • 動機が納得しかねるのですが…。ま、動機はともかくそうしたいということは理解できました。方法ですが、plugin/search/SearchForm.pmとplugin/search/SearchHandler.pmのそれぞれ32行目辺りに、「return "" unless(defined $wiki->get_login_info);」を挿入してみてください。BugTrack-plugin/235とかを利用されている場合は同様の箇所の修正が必要です。 - あき (2007年08月18日 12時00分50秒)
  • 禁じ手っぽいですが、./config/showlevel.logをいじって参照権限を一括置換するというのは。うまく置換できれば何千ページあっても楽勝だと思いますが。 - すいません (2007年08月18日 12時35分37秒)
お名前: コメント:

無題 - AAA (2007年08月15日 20時07分35秒)

改行したいのですがどうすればいいのですか?あと最近更新されたものをMenuに表示させたいのですがどうすればよいですか?

  • 改行は、とりあえず、管理者でログインすると表示される管理メニューの、環境設定、動作設定にある、「改行の処理」を「無視する」から「BRタグに変換する」にすればOKではないでしょうか。 - 名無しさん (2007年08月15日 20時48分47秒)
  • 本サイトのメニューの「最新」の部分に表示されているのはrecentdaysプラグインです。 - 名無しさん (2007年08月15日 20時49分49秒)
お名前: コメント:

履歴/2006-7-3のページの記載がなくなった - 名無しさん (2007年08月15日 18時33分35秒)

本サイトの、履歴/2006-7-3のページの記載がなくなっちゃってるのですが、復元できませんか。内容はVer3.6.2のリリースの案内だと思うのですが。

お名前: コメント:

ヘルプのkeyword箇所の使い方が良くわからないのですが・・・ - たった (2007年08月15日 01時19分27秒)

ヘルプにあるkeywordの説明箇所を何回も何回も読んで理解しようとしているのですが、行なおうとしてる事というのは、ヘルプのリンクの説明に対する一つの実例なのかな・・・と思えてしまうのです。

私の勘違い&理解不足かと存じますが、ヘルプのkeyword箇所で説明されている事というのは、リンク個所で説明している事を更に突っ込んでkeywordというページを作って下記のように記述するとリンクが張られますよ。。という実例の解説に思えてしまうのですが、使い方としてリンク集以外の使い方以外に実の所どのように使うのでございますでしょうか。

※管理画面の設定により、FSwiki内の任意のテキストHP内で存在するページに対しての文字列がヒットした場合、その文字にたいして自動的にリンクが張られるというのは確認したのですがkeywordという名前のページにヘルプの説明にあるように記述し、任意のテキストページ内でgoogleと入力保存しても自動的にgoogleという文字列に対してリンクは張られない事からkeywordの箇所の説明に関しては、その事を言ってるのではないようで、そうするとヘルプのkeyword箇所の解説というのは私の理解力の無さから何を伝えようとしてるのか良く分からずにおります。

折角このような素晴らしいツールをご提供されているので、是非キチンと理解したいと思い、恥を忍んで質問させて頂いております。是非ご教授頂けます様宜しくお願い致します。

  • 「keywordという名前のページにヘルプの説明にあるように記述し」と書かれていますが、その通りでしょうか? だとすると動きません。"Keyword"(←1文字目は大文字)という名前のページに記述する必要があります。 - むめ (2007年08月15日 15時06分55秒)
  • むめ様、サポートありがとうございます。質問時は小文字でしたがFSwiki内では、ヘルプの説明にあります通りKeywordと大文字でKeywordページを作成しております。 - たった (2007年08月15日 17時51分21秒)
  • たとえば本サイトのKeywordというページには、GoogleCPANなどという単語が記述されているため、ごらんのように勝手にリンクがはられますよ。 - 名無しさん (2007年08月15日 18時19分33秒)
  • はい。質問でも申しておりますがKeywordページに記載されている記述方法はヘルプのリンクの所で解説されている事と同じ事だと思うのですが、Keywordにリンクの記述をするだけですと単なるリンク集という扱いかと存じますが、他の使い方などがあるようでしたらご教授頂きますようお願い致します。 - たった (2007年08月17日 02時00分17秒)
  • キーワードとなる語句の意味や説明を書いたページを Keywordに記述しておけば、Wikipediaのように他のページで そのキーワードが出ているとき、自動的にその説明ページへのリンクになる(この「自動的に」がポイント)」ので、関連語句の説明が分かりやすいドキュメントになる・・とかなんだけど、使い道を思いつかないのなら無理に使わなくてもいいのでは。もう少し、他のWikiなどを見てから質問してみてはどうですか? - ううん・・ (2007年08月17日 05時09分13秒)
  • 質問の日本語が変ですね。「keywordという名前のページにヘルプの説明にあるように記述し、任意のテキストページ内でgoogleと入力保存しても自動的にgoogleという文字列に対してリンクは張られない事から」とあるため、てっきりKeywordになんか書いてもリンクが張られないことを問題視されているのだと思いましたが、そうではないと。Wikiページ名でもない単語に勝手に(外部への)リンクが張られることの意味が理解できないのであれば、単なるリンク集でいいのではないかと思います。 - 名無しさん (2007年08月17日 06時07分18秒)
  • この問題については解決致しました。人騒がせして申し訳ございませんでした。私の勘違いだったのですが、ヘルプのKeyword箇所にある通りKeywordというページに大文字でGoogleのリンクを記述し、任意のwikiページ内にて大文字でGoogleと入力する事でリンクが張られる事が確認できました。私が確認していたのは、ヘルプにもありますように大文字でリンクを張り頭文字を小文字でgoogleとし、確認していた為、意図した動作をしていなかったのでございます。という訳でヘルプのリンクの箇所とKeyword箇所の意味の区別が理解できました。大変お騒がせして申し訳ありませんでした。むめさん他、ううんさん、名無しさん、サポート頂きましてありがとうございました。 今後もわからない点など質問させて頂くかと存じますがその際はまたよろしくお願い致します。- たった (2007年08月17日 12時22分19秒)
  • わたしは二度と回答しません。 - ごめんなさい (2007年08月17日 13時40分39秒)
お名前: コメント:

CSVとテーブル作成 - 使用者 (2007年08月14日 19時31分52秒)

仮に「あ〜ん」が割り振られた1行目があり、それぞれの文字に対応した数字が2行に書かれてるエクセル等のデータが有るとします。それをWIKI内のデータベースとして、WIKIのメニュー欄のあ〜おというリンクをクリックするとあ〜おと数字の書かれた
文字 数字
1
1
3
1
2
この様なテーブルを右のメインに表示し、なおかつテーブルの一番上にある数字をクリックすると数字順にソートし
文字 数字
1
1
1
2
3
というテーブルを表示するという事をしたいのですが、やはり基本セットでは無理ですか?プラグインを追加したら出来るというのでしたら、何かお勧めのプラグインはないでしょうか。

  • おすすめはBugTrack-plugin/215です。お望みの動作は残念ながらできそうにありませんが、ソート順の記述を変えたページを複数作ることでそれっぽい動作ができるのではないかと思います。あとはご自分で試行錯誤するのが楽しいのでは。 - 名無しさん (2007年08月15日 18時28分04秒)
お名前: コメント:

Headerにoutlineを記述してみましたが何も起きません - たった (2007年08月12日 20時05分04秒)

お世話になります。

Headerというページに下記

を記述して保存してみたのですが、何も起きません。これはどのように使うのでしょうか。ご教授頂けますようお願い致します。

  • そのまんまで良いはずなんですが…。何も起きませんか? - あき (2007年08月15日 22時49分42秒)
  • outlineは「ページ内の見出しへのリンクを書き出すもの」だから、見出し(!,!!,!!!)が無いページに書いて何も出なかったと予測。というか、どんな機能だと思っているのかなあ・・。・・あ、でも、outlineのヘルプだけでは分からなくて当然かも・・。 - 通りすがり (2007年08月15日 23時13分21秒)
  • 見出しがある場合、それ(!!!,!!,!)に対してそれを拾って表示すると言う機能だったんですね。確認する事ができました。ありがとうございます。 - たった (2007年08月17日 12時50分44秒)
お名前: コメント:

InterWikiNameの使い方がわかりません。 - たった (2007年08月12日 20時02分36秒)

InterWikiNameの使い方がわからないのですが、どのように使うのでしょうか。

ヘルプにあります通り、InterWikiNameというページを作成し、ヘルプにある下記2行を記述し保存

適当なページに下記3行をそのまま保存。YukiWiki:PerlGoogle:Perl

Googleで検索

その適当なページを表示した際、デフォルトでバックグラウンドが黄色い文字で、YukiWiki:Perl?Google:Perl?

Googleで検索?

と表示されたまま、意味がわからずにいます。サポート頂けますと幸いです。

  • 使い方分かりました。CSSでリンクの色を黒にしていた為、単なる文字列かと思っていましたが、マウスを乗せるとリンクになっていたので、1日空けてですがようやく分かりました。お騒がせ致しました。 - たった (2007年08月13日 21時32分15秒)
お名前: コメント:

Shift_JISで運用したいのですが、 - たった (2007年08月12日 00時01分26秒)

お世話になります。題名にあります通り、JavaScriptを使う為、その関係でFSWikiをShift_JISで運用出来ればと思い、下記の試みを行ないましたが、文字化けしてしまいました。wiki.cgiの315行目をprint "Content-Type: text/html;charset=EUC-JP\n";↓print "Content-Type: text/html;charset=Shift_JIS\n";に変更。

default.tmpl内の下記部分を変更<meta http-equiv="Content-Type" content="text/html; charset=EUC-JP">↓<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">のように変更してみたのですが、ページを表示した際、文字化けして見るに見かねる状態でした。

この改造自体あきらめた方が良いのでしょうか。アドバイス頂けますと幸いです。

  • その部分の変更だけじゃ駄目ですね。その部分は、ブラウザに「このページの文字コードは○○ですよ」と教える働きしかありませんので…。Shift_JISで表現するには文字コード自体をShift_JISに変換してから出力してやる必要があります。で、それだけであれば適当なところで「&Jcode::convert(\$output,"sjis");」という行を挟んでやれば良いのですが、運用を考えた場合、ページの更新(編集)にも対応する必要があります。そのためにはlib/CGI2.pmのparamメソッドで上記とは逆の「&Jcode::convert(\$value,"euc");」を挟んでやる必要があります。ですが、それでもおそらく完璧ではないです。Shift_JISは、いろいろと文字化けを起こす原因を孕んでますので、オススメできかねます。 - あき (2007年08月15日 23時25分08秒)
  • そのような理由からShift_JISでの運用はお薦めできかねるという事なんですね。そうですかぁ・・。あき様、貴重な情報ありがとうございます。 - たった (2007年08月17日 12時58分40秒)
お名前: コメント:

sage機能が効きません。 - すなぷ (2007年08月11日 14時13分01秒)

ver3.6.2の時点から動作がすでに怪しくなっていたのですが、ver3.6.3のプラグイン群に更新した段階で症状がはっきり出ました。タイムスタンプのsageのチェックを入れた更新はsageが効かず、チェックを入れない更新はScriptError The script did not produce proper HTTP headers. が出てリダイレクトされません。いずれも本文編集後の更新自体は問題なくされています。core/EditPage.pmと_ex_edit_buttonのJavaScript周辺とは思ったのですが、_ex_edit_buttonを使用しなくとも同じでした。また他にチェックポイントがありましたら挙げて下さいませんか。宜しくおねがいします。

  • BugTrack-plugin/306を入れなおしましたが変化なし。 - すなぷ (2007年08月11日 14時50分19秒)
  • BugTrack-plugin/282を入れなおしましたが変化なし。 - すなぷ (2007年08月11日 15時24分50秒)
  • BugTrack-plugin/337?をチェックしました。 - すなぷ (2007年08月11日 16時18分41秒)
  • libが怪しいと思い3.6.3のCGI2.pmとJcode.pmを入れ替えたところエラーが消えました。と思ったところconfig/modtime.datの属性が書き込み不可の状態で保存され、sageが効かない場合がある模様。様子見してみます。 - すなぷ
  • 解決しました。フロントエンドでタイムゾーンを独自に設定していたのが原因のようでした。Wiki.pmの$ENV{'TZ'}の部分を同じく変更した設定で試みたところいい様子。属性は関係なかった。レンタル中のサーバに負荷をかけまくっていたかも(汗 - すなぷ (2007年08月13日 07時31分23秒)
  • BugTrack-plugin/337? データ復旧ないのでしょうか。機能として有用だったので残念です。頭の中の時系列処理にエラーがでています。 - すなぷ (2007年11月22日 14時28分17秒)
  • 結局はRecentのLast-Modifiedセクションを付け加える改造で installファイルの「# ページの保存時、削除時にキャッシュを更新」の部分をコメントアウトしたところ、対処できた模様。xreaの仕様のようです。広告免除サービスの場合はまた違うかもしれません。当方なんとかいい使用感というところまでたどり着きました。ありがとうございます。 - すなぷ (2007年11月24日 17時23分45秒)
お名前: コメント:

不正なアクションです - たった (2007年08月10日 16時46分56秒)

FSWikiを設置して、まだまもないのでご教授お願い致します。

現在行なった事は、Menu,Footer,Headerのページを作っただけなのですが、一覧→Menu→右上の大きい文字のMenuをクリックすると、不正なアクションです。とエラーになってしまいます。同様に一覧にある他の項目(デフォルトであるHelp/FSWikiなど)をクリックしても「不正なアクションです。」となってしまいます。

これは、どういった意味でこうなるのでしょうか。ご教授宜しくお願い致します。

  • 設置環境や設置方法に問題があると思われます。どのようなサーバ環境で実行されてますでしょうか? HTTPサーバ名やバージョン、レンタルサーバでしたら業者名等を追記頂けると分かるかもしれません。(分かるという保障はありません) また、特殊な設定をされている場合はそれらの詳細も追記下さい。 - あき (2007年08月10日 17時07分34秒)
  • デフォルトのテーマで右上の大きい文字だと「ページ名による検索の機能」だと思います。プラグインでsearch機能を無効化しているとこのようなエラーになります。このプラグインを使いたくない場合は、wiki.cgi の160行付近「# ページのタイトルを決定」のあたりを弄る必要があります。 - A_M (2007年08月10日 18時11分05秒)
if($cgi->param('action') eq "" && $wiki->page_exists($cgi->param('page'))
 && $wiki->is_installed('search')){

確かめてはいませんが、このように条件式にプラグインのインストールを明示してみると良いかもしれません。- A_M (追記)

  • サポート頂きありがとうございました。管理画面からプラグインのsearch機能を有効にする事でエラーを回避できました。またwiki.cgiの160行付近をいじる事で期待通りの動作をさせられそうです。ありがとうございました。 - たった (2007年08月11日 16時07分01秒)
お名前: コメント:

背景画像の設定 - 名無しさん (2007年08月09日 19時27分39秒)

BugTrack-plugin/160 の「装飾用HTMLタグプラグイン」にて DIV を設定し、そこにCSSで背景画像をいれたいのですが、通常の div_begin の style 属性では出来ないようです。こういう場合どうすればよいのでしょうか?

  • 作者です。記憶が薄いのですが、XSS対策のため、style属性は無効にしてあったと思います。「誰でも編集が可能」というWikiの特性上、この安全対策はやむをえないものだとお考え下さい。代替案としてはHTML挿入プラグインのご使用が適当だと思われます。 - あき (2007年08月09日 20時51分13秒)
  • あき様、早速回答ありがとうございます。style属性であってもファイル指定の伴わないものは使えますが、ファイル名指定場合、リンクが処理されないのでうまくいかないようですね。代替案を試してみたいと思います。 - 名無しさん (2007年08月09日 21時13分32秒)
  • なるほど…。そうだったかもしれないです。style属性でurlを指定できるんですよね。そう、それが危険なんです。 - あき (2007年08月09日 23時20分35秒)
  • テーマの中(CSSファイル内)で、予め、特定のclass値で背景画像を指定したパターンを作っておくのも良いかも知れません。添付画像を差し込みたい場合は、別途プラグインを作成する必要があります。標準の添付プラグインで表示する画像ではなく、BugTrack-plugin/261で添付したものを表示するような手法でサーバ負荷の軽減を試みると良いかもしれません。 - A_M (2007年08月10日 18時28分59秒)

出力を次のHTMLのように想定して、CSSで予め、div.information { background :url() <X> <Y> <Repeat>; } を記述しておくことで、div_begin によるclass指定が出来ます。

<div class="information">
〜〜
</div>

class値は「information」に限らず、複数パターンを用意しておくとWiki編集者は、指示された記述を選ぶ事ができます。- A_M(追記)

お名前: コメント:

wordプラグイン - 初心者 (2007年08月07日 16時15分11秒)

はじめまして、Wikiはじめて間もない初心者です。

この度、wordプラグインを使用したく、インストール方法通りに「plugin」フォルダへ「word」フォルダを作成し、3つのファイルを格納したのですが、

「プラグイン」設定画面に「word」が現れません。

何か他に必要なものがあったりするのでしょうか?基本的な質問で申し訳ありません。

ちなみにFSWikiのバージョンは3.5.10です。

  • アップロードされたwordディレクトリはCGIから見て参照可能な設定になってますでしょうか?pluginディレクトリ内の他のディレクトリと権限(パーミッション)が同じであるか確認してみてください。 - あき (2007年08月07日 16時44分35秒)
  • 素早い返信ありがとうございます。編集しようとしてFSWikiは私自身が立てたものではないため、CGIの設定は権限(パーミッション)の確認方法が分かりません。勉強し直します。 - 初心者 (2007年08月07日 17時04分54秒)
お名前: コメント:

Software error:が出てしまいます。 - スギ (2007年07月27日 16時19分53秒)

Software error:No such file or directory at lib/CGI2.pm line 33.

For help, please send mail to this site's webmaster, giving this error message and the time and date of the error.

と出てしまうのですが、パーミッションの設定が問題なのでしょうか?

  • サーバ上に生成されるセッションファイルへのアクセスで存在しない旨のエラーです。正しくセッションファイルが生成されていないのが原因でしょうか。このようになる事例として、サーバー上のディスクスペースが一杯になっているなどがあります。 - A_M (2007年07月31日 14時41分54秒)
  • Software Error:と自分も出でしまうのですがどうしてでしょうか? - AAA (2007年08月09日 22時00分20秒)
  • AAAさん申し訳ありません。単に「Software error:」だけですと、判断いたしかねます。そこに続くメッセージ(上記、スギ氏の例であれば「No such file or directory at lib/CGI2.pm line 33.」)から、Wikiのどんな動作か確認して回答させていただいているのが現状です。ソースの確認位置を把握するために、エラーの「メッセージ部分」が重要です。全てに回答できるかどうかは分かりませんが、質問時の参考にしていただければ幸いです。 - A_M (2007年08月10日 18時59分45秒)
  • 後、セッションファイルを書き出すディレクトリにファイルを作成する権限がない時もこのエラーが出たような…。違ったかな? - あき (2007年08月15日 23時28分32秒)
お名前: コメント:

bugtrackをカテゴリ毎に... - kitta (2007年07月26日 16時58分40秒)

bugtrackをカテゴリ毎に表示出来る様にしたく BugTrackHandler.pmを

"*カテゴリ: {{category $category}}\n".

な感じで修正したんですが、これをすると buglist で見ると

カテゴリ 優先度 状態 投稿者 サマリ
BugTrack-XXX/1 プラグインは存在しません。 普通 提案 kitta bugtrackをカテゴリ毎に...

と、カテゴリプラグインが動作してない状態で表示されてしまいます。カテゴリプラグインを buglist で動作させる方法は無いでしょうか?宜しく御願い致します。

  • 修正の詳細がよくわからないのですが、buglistはHTMLを返すので、上記のような記載ではダメっぽい感じ。 - 名無しさん (2007年07月26日 17時22分04秒)
  • おすすめはBugTrack-plugin/215を使うこと。bugtrack同等以上のことができます。お望みのことも多分可能かと。 - 名無しさん (2007年07月26日 17時25分58秒)
  • BugList.pm の make_row を以下のように修正してみてください。 - KG (2007年07月26日 18時02分42秒)
  • ・・・ソースが貼り付けられない・・・(ToT) - KG (2007年07月26日 18時04分09秒)
#==============================================================================
# 1行分のデータを出力する内部用関数
#==============================================================================
sub make_row {
	my $wiki  = pop;
	my $color = pop;
	my @row   = sort {$b->{count}<=>$a->{count}} @_;
	my $buf = "";
	
	foreach(@row){
		my $category = $wiki->process_wiki($_->{category});
		$category =~ s/^<p>(.+)<\/p>$/$1/;
#		$category =~ s/^<p>(.+)>\[<(.+)>\]<(.+)<\/p>$/$1><$2><$3/;
		$buf .= "  <tr bgcolor=\"$color\">\n".
		        "    <td><a href=\"".$wiki->create_page_url($_->{page})."\">".&Util::escapeHTML($_->{page})."</a></td>\n".
		        "    <td>".$category."</td>\n".
		        "    <td>".&Util::escapeHTML($_->{priority})."</td>\n".
		        "    <td>".&Util::escapeHTML($_->{status})."</td>\n".
		        "    <td>".&Util::escapeHTML($_->{name})."</td>\n".
		        "    <td>".&Util::escapeHTML($_->{subject})."</td>\n".
		        "  </tr>\n";
		
		# フォームを表示する
		if($_->{form}){
		    my $page = $wiki->get_CGI->param("page");
		    my $source = $_->{page};
		    my $form = &plugin::bugtrack::BugState::make_form($wiki,$page,$source);
		    $buf .= "<tr bgcolor=\"$color\"><td colspan=\"6\">".$form."</td></tr>\n";
		}
	}
	return $buf;
}
  • 添付しました。中ほどにあるコメント部はカテゴリプラグインが出力する[]を抑制する為のものです。お好みにより直前の行と切り替えてご利用ください。 - KG (2007年07月26日 18時09分02秒)
  • おぉ〜 嬉しいです。明日やってみす。 - kitta (2007年07月26日 19時33分23秒)
  • 確認しました。有り難うございます。 - kitta (2007年07月27日 09時58分46秒)
お名前: コメント:

category_list - wiki (2007年07月10日 17時52分52秒)

categoriの一覧を出したい為「 category_listプラグインは存在しません。 」を使いましたが、何も表示されていないです。  プラグインの設定の所もちゃんと「category」のチェックを入れました。 この問題の解決方法がご存知の方は是非教えてください 

  • "{ {category XXX} }"を指定したページが一つも無いのでは? - べーやん (2007年07月10日 18時03分16秒)
  • 補足になりますが、追記時やカテゴリ変更時のページ保存では、タイムスタンプを更新するようにしてください。既存ページに反映されるための仕様となります。 - A_M (2007年07月11日 07時31分46秒)
  • ありがとうございました。ご指摘して頂いた通り、指定したページが無かったです。 因みに、更新履歴を参照するためrecentdaysプラグインは存在しません。を使うのですが、限定は何件が表示可能でしょうか?あまり、一杯表示しすぎちゃうと困りますが。。。。ご伝授程宜しくお願いいたします - wiki (2007年07月17日 11時07分46秒)
お名前: コメント:

先頭に何にも付かないリスト - take (2007年07月06日 18時52分38秒)

FSWiki、重宝させていただいてます。

リストについての質問なんですが、既出でしたらすいません。行を*ではじめると、先頭に・が付いたリストが作成されて、行を+ではじめると、先頭に数字が付いたリストが作成されますよね。で、この先頭に何にも付かないリスト(きちんと3段階までネストもできて)って可能ですか?文章をネストしたいんだけれども、先頭の記号は要らないってことがよくありますので。

  • これを使って - kitta (2007年07月08日 08時47分31秒)
{{div_begin style='list-style-type:none;'}}
*こんな感じで
*どうか
**な?
{{div_end}}
  • ↑これだとなぜかうまくいきません。。list-style-typeをnoneにしようがsquareにしようがdecimalにしようが黒丸(・)になってしまいます。。環境はPerl5.0.0.6のFSWiki3.6.2、テンプレートはdefault.css使ってます。 - take (2007年07月09日 11時40分04秒)
  • あ、本当だ... 適当な事書いちゃいましたね。ごめんなさい。これじゃ駄目ですね。 - kitta (2007年07月09日 15時49分12秒)

スタイル設定 ---> ユーザ定義スタイルへ以下を追記し

.liststyle_none li{list-style-type: none;}

任意のページへこう書き込む

{{div_begin class="liststyle_none"}}
*こんな感じで
*どうか
**な?
{{div_end}}

と、するとどうでしょう?

  • できました、ありがとうございます! - take (2007年07月09日 17時07分27秒)
お名前: コメント:

用語集の取り込みについて - wiki試行錯誤中 (2007年07月05日 23時12分27秒)

前略

PDFファイルの用語集があり、それをFSWikiに取り込んでwiki上の文章にそれらの単語が書かれた際、説明ページへのリンクが張られる様にしたいと思っています。PDFファイルからは

!!!あぁ探偵事務所
:あぁたんていじむしょ:ホームズandブルースリー好きにはたまらない漫画。
!!!愛
:あい:プライスレス?
!!!アウストラロピテクス
:あうすとらろぴてくす:猿と人の間、若干猿寄り。

という感じに、プレーンテキストのFSWiki書式に直すところまではしたのですが、自動でリンクを張る為には

『[あぁ探偵事務所]にてページを新規作成し、内容の二行をコピペして保存』『[愛]にてページを新規作成し、内容の二行をコピペして保存』『[アウストラロピテクス]にてページを新規作成し、内容の二行をコピペして保存』

と、用語の数だけ新規作成をして本文をコピペするという力仕事しか無いでしょうか?用語の数が多いので、なんとか楽をしたいと思っているのですが……

  • 前略、よくわかりませんが、Keywordじゃだめですか? - 名無しさん (2007年07月05日 23時40分55秒)
  • ださいですが、あぁ探偵事務所などの用語が「A」というページに上記のような書式で書かれているとすると、Keywordに以下のように書けばOKでは(当然URLは適切に変えるということで)。
*[あぁ探偵事務所|http://fswiki.org/wiki.cgi?page=A#p1]
*[愛|http://fswiki.org/wiki.cgi?page=A#p2]
*[アウストラロピテクス|http://fswiki.org/wiki.cgi?page=A#p3]

- 名無しさん (2007年07月06日 00時05分56秒)

  • 『[あぁ探偵事務所]にてページを新規作成し……』というのを自動でやればいいだけのような気もしますが。 - 名無しさん (2007年07月06日 00時11分37秒)
  • ありがとうございます。keywordはまだ使った事がありませんでした。ページ内の一部分へのリンクもできるんですね。 - wiki試行錯誤中 (2007年07月07日 16時12分39秒)
  • ……ぺージの作成って自動でできるんですか?よろしければ詳しくやり方を教えて下さいorz - wiki試行錯誤中 (2007年07月07日 16時13分17秒)
  • スクリプト書けば。ファイル名は!!!で始まる行をURIエンコードしたもので、内容は:で始まる行ということで。 - 名無しさん (2007年07月07日 17時27分50秒)
  • こちらのページでスクリプトを書いて220ページを新規作成してみましたが楽勝でした。Keyword方式より楽だと思います(元になるCSVファイルを作るのは大変でしたが)。 - 名無しさん (2007年07月09日 23時01分59秒)
お名前: コメント:

画像表示させる - wit (2007年07月02日 18時10分21秒)

wikiページにアップロードした画像を表示させる方法を教えてください

  • これで。 - 名無しさん (2007年07月02日 18時26分28秒)
  • こんなかんじ - 名無しさん (2007年07月02日 18時33分03秒)
  • TO:名無しさん ありがとうございました。イメージ名の後ろにページ名を指定するとの事で助かりました。今後とも宜しくお願いいたします。 - wit (2007年07月03日 12時07分45秒)
  • ↑新規に板が増えていましたので移動させていただきました。質問した場合は、コメント欄で解決報告もすると、質問スレッドだけにでき、閲覧者が質問から探せるようになります。こうした修正も出来るので、まとめサイトにも使いやすいのがWikiだと思います。 - A_M (2007年07月03日 13時02分05秒)
  • 画像を添付したページと表示するページが同じなら、「イメージ名の後ろにページ名を指定」しなくてもOK - 名無しさん (2007年07月03日 13時37分26秒)
お名前: コメント:

CORE::GLOBAL::exit のオーバライドとmod_perl環境 - tateisu (2007年06月28日 14時56分04秒)

fswiki3.6.2を試してみました。サーバ環境はx86 LinuxのApache/2.2.3 (Debian) mod_perl/2.0.2 Perl/v5.8.8 です。

他のスクリプトでもmod_perlを利用していて、同じインタプリタが他のスクリプトとFSWikiを動かしている状態で次の不具合がありました。

  • chdirはBEGIN時だけでは不十分。他スクリプトがchdirした後にFSWikiが実行された場合を考慮する必要がある。
  • 他スクリプトがexitを使うと safe_die というメッセージがApacheのエラーログに流れる。

そこでdie,exitのオーバライドを外してみると、今度は次の問題がありました。

  • リダイレクト直後に ModPerl::Util::Exit 云々というエラーがHTML出力される
  • _process_before_exit が呼ばれない

これらを踏まえて、wiki.cgiの前後にだけdie,exitのオーバライドを行うように変更してみました。

変更案A

wiki.cgiの$@より前のエラーはキャッチできないのだから、Util.pmでBEGIN中にオーバライドしてるのはあまり意味がない。wiki.cgiから_process_before_exitを呼び出すのは必要なので、スクリプト実行時にdie,exitをオーバライドするのは必要。ただしその状態のまま放置されるとmod_perl上の他スクリプトに良くない。そこで実行時に毎回オーバライドとリストアするようにしてみる

--- /home/tateisu/fswiki-orig/wiki.cgi	2006-07-02 18:09:56.000000000 +0900
+++ index.pl	2007-06-28 16:48:57.000000000 +0900
@@ -28,2 +28,3 @@
 if(exists $ENV{MOD_PERL}){
+	chdir($ENV{FSWIKI_HOME});
 	eval("use Digest::Perl::MD5;");
@@ -39,3 +40,3 @@
 my $cgi = $wiki->get_CGI();
-
+Util::override_die();
 eval {
@@ -321,4 +322,3 @@
 $wiki->_process_before_exit();
-
-if($msg && index($msg, 'safe_die')<0){
+if( $msg && index($msg, 'safe_die')<0 ){
 	$msg = Util::escapeHTML($msg);
@@ -328 +328,2 @@
 }
+Util::restore_die();
--- /home/tateisu/fswiki-orig/lib/Util.pm	2006-07-02 18:10:04.000000000 +0900
+++ lib/Util.pm	2007-06-28 16:50:11.000000000 +0900
@@ -10,4 +10,3 @@
 	require Util;
-	*CORE::GLOBAL::die = \&Util::_die;
-	*CORE::GLOBAL::exit = \&Util::_exit;
+	exists($ENV{MOD_PERL}) or override_die();
 }
@@ -694,2 +693,24 @@
 
+#===============================================================================
+# <p>
+#   dieとexitのオーバライド操作を行います。
+# </p>
+#===============================================================================
+sub override_die{
+	our @original_exit_handler;
+	@original_exit_handler or @original_exit_handler = (\&CORE::GLOBAL::die,\&CORE::GLOBAL::exit);
+	*CORE::GLOBAL::die = \&Util::_die;
+	*CORE::GLOBAL::exit = \&Util::_exit;
+}
+#===============================================================================
+# <p>
+#   dieとexitのオーバライド操作を解除します。
+# </p>
+#===============================================================================
+sub restore_die{
+	our @original_exit_handler;
+	*CORE::GLOBAL::die = $original_exit_handler[0];
+	*CORE::GLOBAL::exit = $original_exit_handler[1];
+}
+
 1;

ご確認の上オリジナルでも対応頂ければ幸いです。

関連項目

  • mod_perl環境だと同一のインタプリタが複数のスクリプトを扱うことがある。
  • mod_perl環境だとCORE::GLOBAL::exit は ModPerl::Util::exitを指すようになる
  • FSWikiがdieとexitをオーバライドするのは、eval後に _process_before_exit を呼び出すため。あとエラーメッセージをHTML出力するため。
  • mod_perlで動く他のスクリプトはModPerl::Util::exitのかわりに、FSWikiに汚染されたexitを使ってしまう。error.logに毎回safe_dieが出てしまう。

その他の問題

  • Util.pm はmod_perlだと名前空間の衝突が怖い気がする。
  • dieとexitの問題はそのとおりですね。対処したいと思います。ただ、restore_dieで@original_exit_handlerは初期化しなきゃまずい気がするんですが、どうでしょうか。mod_perlに慣れてないので勘違いしてる気もするんですけど。あと、chdirの件はcvsでは対処してあります。ほかに@INCも問題がでる場合があるのでその対応もしてます。http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/fswiki/fswiki/wiki.cgi?r1=1.40&r2=1.41 - typer (2007年06月28日 22時31分08秒)
  • そう言えば、今までourは使ってなかった気がする。そろそろ使っても良い頃でしょうかね - typer (2007年06月28日 22時33分54秒)
  • 連投ですが。localで行けるんじゃないかと言う気もする。ちなみにmod_perl側に何かフックとかあったりしないんですかね。 - typer (2007年06月28日 22時40分39秒)
  • 代入式なしのour宣言は、要するに関数の外で変数を宣言したのと同じ状態です。restore_dieは確実にoverride_dieの後に呼ばれ、その時点では@original_exit_handlerはカラではありません。まあもし @original_exit_handler がカラなら何もしない等してもいいかもですね。 - tateisu (2007年06月28日 23時36分14秒)
  • localとourは異なります。localで宣言した変数に退避したらダメです。宣言のスコープから出る時に消えちゃいます。 - tateisu (2007年06月28日 23時42分34秒)
  • restoreした後に@original_exit_handlerをクリアする必要があるのは、他に行儀の悪いプログラムがあるかもしれないならそうですね。実際には多くはないと思いますが。 - tateisu (2007年06月29日 00時12分23秒)
  • 早とちりしてました。2度目の実行時に退避されないけれど、通常なら対象が同じなので問題ないですね。localの件は、関数外で宣言してファイルスコープにしておけば復帰時にクリアする必要ないし、our使わなくてOKだなという事です。 - typer (2007年07月04日 00時27分37秒)
お名前: コメント:

[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 ]

最終更新時間:2011年08月03日 23時16分46秒