プラグインとしては Mojolicious::Plugin::Mount がある。短いコードなの読むと参考になる。 Mojoliciouアプリを埋め込む 追記:Mojolicious::Commandsを使う方法があるらしい。こっちの方が正統? $app->routes->any( '/sub' )->detour( app => Mojolicious::Commands->start_app('SubApp') ); Mojolicious::Liteのアプリをマウントする方法は日本語だと Mojolicious::Guides::Routing に書いてあ […]
1. Mojoliciousプラグインの雛形作成 $ mojo generate plugin MyPlugin カレントディレクトリに Mojolicious-Plugin-MyPlugin というディレクトリ名で雛形作成される。 2. ドキュメントにAuthor情報を追記する。 $ cd ./Mojolicious-Plugin-MyPlugin $ vi lib/MyPlugin.pm minillaではPODに書かれているAuthorが使われる。作成された雛形(MyPlugin.pm)のPODにはAuthorの項目がないので追記する。 vi lib/Mojolicious/Plugin […]
OSX El Capitan(10.11.5) MAMPのバージョン 3.0.7.3 ※1 MySQLのバージョン 5.5.38 MAMPだとWarning (mostly harmless): No library found for -lmysqlclientのエラーでインストール出来ない。 mysql.hが存在しないため、別途インストールする必要があるようだ。 検索しているとC++ で MAMP の MySQL に接続する : あかぎメモに まずこの記事の手順で、MySQL のヘッダファイルやライブラリを用意しておく。うまくいけば次のようなファイルができる。 /Applications/ […]
amon2-setup.pl --flavor=Large MyApp で作成したLarge flavorのAmon2アプリのリリース管理にMinillaを使ってみようとしらうまくいかなかったので試行錯誤してみた。 まずはMinillaに最適化 minil migrate Minillaで管理するのに必要なファイルの作成や.gitignoreに追加等してくれる。 必要なディレクトリに空ファイルを作成 Large flavorのアプリで言うと db ディレクトリが必要だが、amon2-setup.plで作成した状態だと、.gitignoreは下記の状態になっている。 db/.gitignore […]
Minillaでモジュールを作る練習として Amon2のロギングにLog::Handlerを使う で書いたコードをモジュール化してみる。 Amon2-Plugin-LogDispatch を参考に(ほぼforkしたもの)をgithubに上げるところまで出来た。 ソースコードは以下。 clicktx/p5-Amon2-Plugin-LogHandler test全く書いていない。 Amon2アプリで使う プラグイン読み込んで設定を書く。CPANに公開されていないモジュールだとcartonで管理するのよく分からないから、forkしてモジュール名を変更して使う。 該当コミットは以下。 Merge b […]
cpanm Minilla minil new My::Mod My-Modディレクトリが作られてその中にモジュールのテンプレートがさくせいされる。 githubにあたらしいリポジトリを作る App::phつかうと便利らしいので入れる。 ディレクトリ名でリポジトリが作られる p5-my-mod 等にディレクトリ名を変更しておくと吉 最近のバージョンなら最初から設定(minil.toml)にname="My-Mod"ってかいてあるっぽい 足りないモジュール入れる minil releaseする時に不足しているモジュール。cpanmで入れると良い。 Version::Next CPAN::Uplo […]
Amon2でログを取るにはLog::Minimalが推奨されている。 Logging — Amon2 6.11 documentation Log::Minimalが推奨されているけどファイルに書き出すのにコード書く必要があるっぽいので別のモジュールを探す。 ログモジュールのベンチマーク - Perl勉強メモ アルパカDiary出張版 hachiojipm/awesome-perl #Logging Log::Log4perlによるamon2のLogging - end0tknr's kipple - 新web写経開発 Awesome PerlにLog::Minimalの他にはLog::Dis […]
PhantomJSのインストール サクッと brew install phantomjs といきたいところだけど今現在(2015/12/15)まだパッケージがないらしい。 $ brew install phantomjs phantomjs: This formula either does not compile or function as expected on OS X versions newer than Yosemite due to an upstream incompatibility. Error: An unsatisfied requirement failed thi […]
plenvをhomebrewでインストールしたから? 新しいユーザー作成 gitでplenvインストール Web::Scraperインストール やはりscraperコマンド使えない...。 $ find ~/ -name scraper .cpanm/work/1437464088.4723/Web-Scraper-0.38/bin/scraper ソースはあるようなのだが...。しかたがないので手動で設置。 scraper コマンドを作成 ~/.plenv/shims に他のコマンドが置いてあるようなので、ここに設置。 $ cd ~/.plenv/shims $ touch scraper […]
Firefox OS アプリハンズオン supported by Gunma.web 2015-03-28(土)13:00 - 18:00 ハッシュタグ: #fxos #gunmaweb 今回はGunma.web初のスピンオフ勉強会となる、FirefoxOSのハンズオンに参加しました。 FirefoxOSで作るアプリはHTMLとJavaScriptで出来ている ≒ Webサイトという事で、開発に参加する敷居がとても低いのが特徴です。 アプリ作成に関して言えばネイティブコードでは作れないという、思い切りの良さ。JavaScriptで動いていても実行速度は早いというのも見逃せません。 また、ブラウ […]