すえひろがりっっっっ! このページをアンテナに追加 RSSフィード

2016-03-23

Redmine で Github のように絵文字を入力できるプラグインを作った

f:id:suer:20160323215745p:image

チケットの内容は簡潔に書くのがいいと思うが、簡潔に書きすぎると冷たい印象になったりしてよくない。

一方、同じような issue 管理機能でも Github では ":"(コロン) で囲った一定の文字列で絵文字が手早く書けるので、簡潔に内容を書きながら、ちょっとした感情を含めることができて冷たい感じになりにくい。

Redmine でも同じことがしたいのでプラグインを作ってみた。

環境

Redmine 3.0 以降

リポジトリ

https://github.com/suer/redmine_emoji

インストール

1. 以下のようにプラグインインストールする。

$ cd $RAILS_ROOT/plugins
$ git clone https://github.com/suer/redmine_emoji.git
$ cd $RAILS_ROOT
$ bundle install

2. Redmine再起動

機能

Wiki 記法が効くところならどこでも :xxxx: 形式の Github の絵文字を認識し、画像と差し替える。

no title



また、先頭マッチでサジェストを行う。

f:id:suer:20160323215744p:image


似たプラグイン

当然同じようなことを考えている人はいるようで、同じ目的のプラグインは既にある。

https://github.com/tmy/redmine_gemoji

こちらは Textile のみの対応となっており、Markdown で使えないのと、サジェストする機能がなかったので新たに作った。

2015-07-13

Redmine で Github のように草を生やすプラグインを作った

f:id:suer:20150712204534p:image:w500

Redmine 内での活動を Github のように表示するプラグインです。

「活動」タブで見れる情報が対象となります。

プロジェクト全体の活動が見れるほか、担当者毎の活動も可視化できます。

環境

Redmine 3.0.x

リポジトリ

https://github.com/suer/redmine_glanceyear

インストール

1. 以下のようにプラグインインストールする。

$ cd $RAILS_ROOT/plugins
$ git clone https://github.com/suer/redmine_glanceyear.git

2. Redmine再起動

2015-06-03

管理者権限でログインしているかどうかをひと目で分かるようにする Redmine プラグインを作った

Redmine管理者と一般ユーザを分けていると、よくある失敗として、

管理者権限でログインしたままでいることを忘れたままチケットを作成・更新してしまう、

ということがあります。

そうすると、チケットの更新者が自分じゃなくて管理者ユーザになってしまって悲しい思いをします。

そういった事故を減らすために管理者ログインしているかどうかをテーマでひと目で分かるようにするプラグインを作りました。

環境

Redmine 3.0.0

ソースコード

https://github.com/suer/redmine_admin_class

機能

管理者ユーザでログインしている時のみ <body> タグの class に "admin" を追加します。

この class を利用したテーマを自作することで管理者と一般ユーザの画面の見た目を切り替えることができるようになります。

利用手順

テーマを作成します。

例えば、public/themes/admin/stylesheets/application.css を以下のように作成します。

@import url(../../../stylesheets/application.css);
body.admin #top-menu { background-color: #f0908d; }
body.admin #header { background-color: #f2a0a1; }

管理画面で作成したテーマを指定します。

f:id:suer:20150603232342p:image:w400


この例の場合は、一般ユーザでログインした場合は通常の画面

f:id:suer:20150603232344p:image:w400

管理者ログインした場合は別の見た目になります。

f:id:suer:20150603232345p:image:w400

これで誤ったアカウントでチケットを更新する事故をかなり防げるようになります。

まとめ

2014-12-07

Spotlight から素早く Things にタスクを追加する Flashlight プラグインを作った

Spotlightプラグインシステム Flashlight を使って、Things にタスクを追加する Spotlight プラグインを作りました。

https://github.com/suer/flashlight-things-plugin

環境

セットアップ

1. Flashlightインストール

2. プラグインインストールする

    $ git clone https://github.com/suer/flashlight-things-plugin.git ~/Library/FlashlightPlugins/things.bundle

3. Flashlight を有効にする

f:id:suer:20141206225639p:image:w500

タスクを追加してみる

Spotlight を起動し、th もしくは things の後ろに追加したいタスクを記入する。

f:id:suer:20141206225637p:image:w500

クイック入力のビューが表示されるので、適宜補完して保存する。

f:id:suer:20141206225638p:image

まとめ

Flashlight を使えば、Spotlight に簡単に機能を追加できて便利。

2014-03-11

Redmine 2.5 + Ruby 1.8 環境下で TLS でメールが送れなくなった場合の対処

Ruby 1.8 の環境下で Redmine を 2.5 に上げたら TLS でメールが送れなくなりました。

logs/production.log を見てみると以下のようなメッセージが出力されています。

 wrong argument (NilClass)! (Expected kind of OpenSSL::SSL::SSLContext)

原因と以前の対処

これは Redmine 2.3 の頃から同様だった気がするのですが、Ruby 1.8 + mail gem 2.5.4 以上 + SSL は相性が悪いことが判明。

Problem with ssl context for smtp ? Issue #548 ? mikel/mail ? GitHub

そこで、Redmine 2.4 では Redmine の Gemfile に

gem 'mail', '2.5.3'

とバージョンを明示して対処していました。

Redmine 2.5 では・・・

Rails のバージョンが 3.2.17 に上がりました。

このバージョンが依存している actionmailer 3.2.17 が mail gem 2.5.4 に依存するようになってしまいました。

このため、mail gem 2.5.3 を指定するとバージョンが衝突してインストールできません。

Redmine 2.5 での対処

この問題に対処してくれている fork がありました。

Problem with ssl context for smtp ? Issue #548 ? mikel/mail ? GitHub

これにより、Redmine の Gemfile の

source 'https://rubygems.org'

の直後に以下の行を追加して bundle install すれば動きます。

gem 'mail', '= 2.5.4', :git => 'https://github.com/sofatutor/mail', :branch => '2.5.4-with-fix-548' # see https://github.com/mikel/mail/issues/548

結論

さっさと Ruby のバージョンを上げよう