--> -->
#blog2navi() *最新のtracでテンプレートプラグインを使う [#n5516515] 今時 [Trac https://trac.edgewall.org/] なんて使っている人はいないと思いますが、歴史的な経緯があって使わざるを得ない人もいると思います。 そして最新の Trac1.6 を入れると、[TracWysiWygPlugin https://trac-hacks.org/wiki/TracWysiwygPlugin]が動かなくなります。 ** 概要 [#w9bcf485] 今時 [[Trac:https://trac.edgewall.org/]] なんて使っている人はいないと思いますが、歴史的な経緯があって使わざるを得ない人もごく希にいるかもしれません。~ そして最新の Trac1.6 を入れると、[[TracTicketTemplatePlugin:https://trac-hacks.org/wiki/TracTicketTemplatePlugin]] が動かなくなります。~ ~ チケットのテンプレート機能が無いと内容が統一できないため、代わりに [[TicketStencilPlugin:https://trac-hacks.org/wiki/TicketStencilPlugin]] を入れる事にします。~ ただし、素のままだと日本語に対応していないので、ついでに日本語対応も行います。 ** プラグインのインストール [#h4ee3c8e] sudo /usr/local/bin/pip install svn+https://trac-hacks.org/svn/ticketstencilplugin/1.0 ** ファイルの編集 [#nd86b99d] + プラグインのインストールされたディレクトリに移動します。~ cd /usr/local/lib/python3.9/site-packages + pyファイルを編集します sudo vi ticketstencil.py #code("javascript","nooutline",40){{{ stencils = {} prefix_len = len('TicketStencil') all_types = [enum.name for enum in Type.select(self.env)] # Set defaults for remaining ticket types for ticket_type in all_types: stencils[ticket_type] = '' for name in self.wiki_system.get_pages('TicketStencil'): page = WikiPage(env = self.env, name = name) ticket_type = name[prefix_len:] }}} -- 上記5行目: 最後の方にあった &inlinecode(){stencils}; の初期化を上に持ってきます。こうしないと何故か最後に全てクリアされてしまいます。 -- 上記9行目: 不要な &inlinecode(){.lower()}; を削除します。~ ~ + jsファイルを編集します sudo vi htdocs/ticketstencil.js #code(javascript){{{ var new_type = $('#field-type option:selected').val(); }}} -- &inlinecode(){.lower()};を削除します。~ ~ + 最後にhttpdを再起動してプラグインは完了です。~ sudo systemctl reload httpd ** テンプレート定義 [#c7fa8ebe] TicketStencilはwikiのページでテンプレート定義をおこないます。~ &inlinecode(){/wiki/TicketStencilBug(バグ)};(「Bug(バグ)」部分はチケットの「種類」)のようなwikiページを作成すると、その種類を選択した場合にwikiページの内容が初期表示されます。 #htmlinsert(twitterbutton.html) RIGHT:Category: [[[Linux>日記/Category/Linux]]] - 16:20:26 ---- RIGHT:&blog2trackback(); #comment(above) #blog2navi()