2

私たちは現在、自己作成の問題追跡システムから Redmine への移行を進めています。古い形式を最適にサポートするために、プラグインを介して古いシステムの形式をテキスト形式として追加しました。古いシステムから新しいシステムにデータを 1 対 1 で移行する rake タスクを作成しました (つまり、形式を Textile に変更しません)。

移行後、問題を調べてみると、プラグインはうまく機能しているようです。HTML は、以前のシステムとほぼ同じように表示されます。

ただし、特定の機能が挿入される後処理段階が必要です。たとえば、#\d+課題へのリンクとしてのハッシュ ( ) の後の数値の書式設定などです。テキスト書式設定プラグインがそれを行わないことはわかっています。

問題は、この後処理段階で特定の HTML 要素が削除されているように見えることです。たとえば、テーブルは完全に消えます。私たちのパーサーは間違いなくテーブルを出力しますが、Redmine が表示する出力には、noror のどちら<table>も見つかりませ<td>ん。<tr>

ALLOWED_TAGS 機能をいじってみましたが、前述の HTML タグを許可しても、タグの削除は変わりません。

これに対する 3 つの質問:

  • これはどこかで設定可能ですか?
  • この後処理段階のソースはどこにありますか?
  • これについて言及しているドキュメントはどこにありますか?
4

1 に答える 1

0

わかりました、わかりました。

出力は、Redmine の内部処理によって解析されます。最初の立場は次のとおりです。lib/wiki_formatting/textile/formatter.rb 書式設定ルールは次のように定義されています。

RULES = [:textile, :block_markdown_rule, :inline_auto_link, :inline_auto_mailto]

実際には、これは settings.yml で定義されています。

text_formatting:
  default: textile

そして最後の場所。Redmine で表示されるすべてのテキストの近くを折り返すメソッド。ファイル:application_controller.rb メソッドdef textilizable

ラインtext = Redmine::WikiFormatting.to_html(Setting.text_formatting, text, :object => obj, :attribute => attr)

強制的な書式設定を取り除くために、任意の場所を微調整できます。Redmine の "magic" を完全に削除したい場合は、最後のものを変更するだけです。そうでない場合は、ルールを変更してください。

于 2013-06-20T00:26:09.560 に答える