wiki 記法を増やしてみる。plugin 化したいけど ApplicationHelper にベタ書きされているので難しそう。メソッドをごっそり書き換えるなら可能に思えるが本体側の修正に取り残されるので微妙。
とりあえずやってみる。個別ブランチは feature
を頭に付けるルールになっているので、feature:hoge
と書いたら自分でホストしている gitlab 上の feature/hoge
ブランチへのリンクを貼るようにしてみる。
- app/helpers/application_helper.rb
ApplicationHelper#parse_redmine_links
def parse_redmine_links(text, default_project, obj, attr, only_path, options) text.gsub!(%r{<a( [^>]+?)?>(.*?)</a>|([\s\(,\-\[\>]|^)(!)?(([a-z0-9\-_]+):)?(feature|attachment|document|version|forum|news|message|project|commit|source|export)?(((#)|((([a-z0-9\-_]+)\|)?(r)))((\d+)((#note)?-(\d+))?)|(:)([^"\s<>][^\s<>]*?|"[^"]+?"))(?=(?=[[:punct:]][^A-Za-z0-9_/])|,|\s|\]|<|$)}) do |m|
elsif sep == ':' # removes the double quotes if any name = identifier.gsub(%r{^"(.*)"$}, "\\1") name = CGI.unescapeHTML(name) puts "name : " + name.to_s case prefix when 'feature' # host, group, project はそれぞれの環境による link = link_to("feature:#{name}", "http://#{host}/gitlab/#{group}/{project}/tree/feature/#{name}", target: 'blank')
どうせ外部リンクなんだし、URL を直接貼り付ければいいじゃんという感じに。