SlideShare a Scribd company logo
1 of 15
Download to read offline
View Customize Plugin
for Redmine
コードでRedmineをカスタマイズ
2015.02.19 社内勉強会
onozaty
View Customize Plugin
Author: onozaty
onozaty/redmine-view-customize - GitHub
作ったきっかけ
個人が使っている
Redmine用のステキなUserScriptを
プロジェクト全員に適用できないか?
※UserScriptとは、画面ロード時に任意のJavaScriptを実行して
画面カスタマイズを行えるブラウザの機能
(FirefoxのGreasemonkeyとか)
いろいろ難しそう
• UserScriptをメンバ全員に確実にインス
トールする方法がない(個人任せになって
しまう)
• UserScriptをアップデートするたびに、各
メンバに反映してもらうのが大変
• UserScriptって何?IEはどうする?
じゃぁ、Redmine側を
カスタマイズすればよいのでは?
Redmineのカスタマイズ方法
• Redmineのコードを変更する
• Pluginを作る
手っ取り早いけど、メンテナンス性考えると後々面倒
(Redmineのバージョンアップ時に、どこに手を加えた
のかを追わなければならない)
といっても、ちょっとした変更毎にPlugin作ったり、
Plugin修正するのは面倒
UserScript のように
自由にスクリプトを
実行できる機能をRedmineに!
View Customize Plugin
• Redmineの画面をカスタマイズするための
Plugin
• 変更したい画面に対してJavaScript、CSS
を埋め込み、実行することにより、画面
を変更する
設定方法
コードを実行するパス。
正規表現で記載。
実行するコード。
JavaScript または
StyleSheet(CSS)で書く。
Redmineの画面で使用
されているJQueryも使
える。(Redmineのバー
ジョンによってライブ
ラリが違うので注意)
実行
パスが一致すると、コードが埋め込まれて、実行される
できること
• UserScriptで対応可能なことは、ほとんど
できるはず(UserScript特有の機能を使って
いない限り、移行も簡単)
• JavaScriptとCSSを埋め込めるので、画面
上で完結することは、コードさえかけれ
ば、なんでもできる
例
• プロジェクト毎に背景色を変える
• http://onozaty.hatenablog.com/entry/2014/07/05/000000
• 自分の名前を強調して表示する
• http://onozaty.hatenablog.com/entry/2014/07/07/000000
• サイドバーを非表示にする
• http://onozaty.hatenablog.com/entry/2014/08/08/000000
• チケット画面で履歴をショートカットで
移動する
• http://onozaty.hatenablog.com/entry/2015/02/08/000000
ちょっとコードを書けば
Redmineを変えられる
ぜひあなたのコードで
プロジェクトのみんなをハッピーに
おわり

More Related Content

Viewers also liked

Viewers also liked (10)

講演1 redmineの簡易crmとしての活用事例r2
講演1 redmineの簡易crmとしての活用事例r2講演1 redmineの簡易crmとしての活用事例r2
講演1 redmineの簡易crmとしての活用事例r2
 
Redmineのバージョンアップに追従していくための一工夫
Redmineのバージョンアップに追従していくための一工夫Redmineのバージョンアップに追従していくための一工夫
Redmineのバージョンアップに追従していくための一工夫
 
Unofficial Redmine Cooking 闇鍋_デモ環境への発展
Unofficial Redmine Cooking 闇鍋_デモ環境への発展Unofficial Redmine Cooking 闇鍋_デモ環境への発展
Unofficial Redmine Cooking 闇鍋_デモ環境への発展
 
RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集
 
はじめる! Redmine (2015)
はじめる! Redmine (2015)はじめる! Redmine (2015)
はじめる! Redmine (2015)
 
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
Redmineチューニングの実際と限界(旧資料) - Redmine performance tuning(old), See Below.
 
20171117 redminetokyo13
20171117 redminetokyo1320171117 redminetokyo13
20171117 redminetokyo13
 
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
 
The AI Rush
The AI RushThe AI Rush
The AI Rush
 
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
 

More from onozaty

Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
onozaty
 
業務で使うIRC
業務で使うIRC業務で使うIRC
業務で使うIRC
onozaty
 

More from onozaty (20)

チームで開発するための環境を整える
チームで開発するための環境を整えるチームで開発するための環境を整える
チームで開発するための環境を整える
 
Selenium入門(2023年版)
Selenium入門(2023年版)Selenium入門(2023年版)
Selenium入門(2023年版)
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
 
Java8から17へ
Java8から17へJava8から17へ
Java8から17へ
 
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
 
Redmine issue assign notice plugin の紹介
Redmine issue assign notice plugin の紹介Redmine issue assign notice plugin の紹介
Redmine issue assign notice plugin の紹介
 
最近作ったもの
最近作ったもの最近作ったもの
最近作ったもの
 
Selenium入門
Selenium入門Selenium入門
Selenium入門
 
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
 
「伝わるチケット」の書き方
「伝わるチケット」の書き方「伝わるチケット」の書き方
「伝わるチケット」の書き方
 
View customize plugin for Redmineの紹介 (2019年版)
View customize plugin for Redmineの紹介 (2019年版)View customize plugin for Redmineの紹介 (2019年版)
View customize plugin for Redmineの紹介 (2019年版)
 
View customize1.2.0の紹介
View customize1.2.0の紹介View customize1.2.0の紹介
View customize1.2.0の紹介
 
WebSocketでカメラの映像を共有してみた
WebSocketでカメラの映像を共有してみたWebSocketでカメラの映像を共有してみた
WebSocketでカメラの映像を共有してみた
 
Lombokの紹介
Lombokの紹介Lombokの紹介
Lombokの紹介
 
Spring Bootを触ってみた
Spring Bootを触ってみたSpring Bootを触ってみた
Spring Bootを触ってみた
 
30歳過ぎてもエンジニアでいるためにやったこと
30歳過ぎてもエンジニアでいるためにやったこと30歳過ぎてもエンジニアでいるためにやったこと
30歳過ぎてもエンジニアでいるためにやったこと
 
技術書のススメ
技術書のススメ技術書のススメ
技術書のススメ
 
課題管理と情報共有のためのツール群
課題管理と情報共有のためのツール群課題管理と情報共有のためのツール群
課題管理と情報共有のためのツール群
 
お試し用のLinux環境を作る
お試し用のLinux環境を作るお試し用のLinux環境を作る
お試し用のLinux環境を作る
 
業務で使うIRC
業務で使うIRC業務で使うIRC
業務で使うIRC
 

Recently uploaded

Recently uploaded (10)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 

View Customize Plugin for Redmine