github/gitignore github/gitignore githubが管理しているgitignoreのテンプレート。 あまり知らない言語だとgitignoreに何書くか?となるので、ありがたい。 何かの記事で見かけたのだけど、探すのに手こずったのでメモしとく。 元記事は下記。 Pythonにおける.gitignoreに追加するべきファイル - Qiita https://qiita.com/youichi_io/items/8b976119b1c1fa4b3b78 gitignore.io gitignore.io 前に見かけた記事はこっちのサービスを使っていたかも。使っている言語 […]
PDFのバージョン Portable Document Format - Wikipedia 全く意識したことがなかったけどPDFにはバージョンがあるらしい。今回の対象ファイルはPDF1.7となっていて比較的新しいバージョンのPDF。 PHPでこいつを読み込むのには有償版のFPDI(FPDI-Parser)が必要らしい。 FPDI-Parserからファイルチェックが出来る。 無償版で試す PDF1.7のファイルを無償版のパーサで読み込むとエラーになる。 有償版で試す 有償版にチェックを入れてRUNすると読み込める事が確認できる。 世の中知らない事って無限にある。 参考エントリー PHPでPDF […]
とある事情でMAMPのバージョンを上げざるを得なく、その影響でDBD::mysqlがインストール出来なくなった。 mampな環境のmacにdbdmysqlをインストールの手順だとエラーが出る。(正確に言うと、/tmpが残っている間は成功する) 上記手順でbuildしたものを削除してからcarton installした時のログ 実行環境 macOS Catalina 10.15.3 MAMP 3.5.2 MySQL 5.5.42 Searching DBD::mysql on mirror index /Users/clicktx/***/***/***/local/cache/modules/ […]
環境 macOS Catalina(10.15.3) MAMP 3.0.7.3 なぜMAMP3.x? MAMP4系以上はphp7が標準で、php5系を使うのが面倒そう。レガシー。 PHPのHTTPS通信、SSL暗号方式をTLS1.2に対応させてみた - ノラプログラマーの技術メモ にあるけど、 TLS1.2に対応するためには、cUrlのバージョンが7.34.0以上かつOpenSSLのバージョンが1.0.1以上でなければならない これに対応するだけのために2日間つぶした。 手順 大体以下のページの通り php - How to upgrade OpenSSL in MAMP - Stack Ov […]
Mojolicious::Validator::Validation - Perform validations - metacpan.org Mojolicious純正のフォームバリデーションを使う上で気を付ける点を書き留めておく。Mojolicious::Plugin::TagHelpersとも相性良いし(当たり前)、活用すべき。 my $validation = $c->validation; $validation->required('name')->like(qr/hoge/); $validation->optional('name2', 'trim')- […]
開発中に現在行っている作業とは別のバグや修正箇所を思いつき、忘れないようにとりあえずfeature-xxx branchを作成しておくって事をよくやる。 だけど、作業が終わって、作っておいたfeature-xxx branchの作業を始めようにもそのbranchが最新では無いので git merge master や git branch -d feature-xxx してから再度branchを作成したりしていた。 margeすると1コミット増えるし、branch削除→作成は面倒だし...と思っていたけど良い方法があるらしい。 git で master に追いつく?ブランチは都度closeする […]
今更ながらDBIx::Class(DBIC)に入門。使い始めてDBICの作法に翻弄されてる。 timestamp的なカラム、例えばupdated_atカラムを自動更新させるのにハマったのでメモ。 03日目: データモデル から抜粋 package Jobeet::Schema::ResultBase; use strict; use warnings; use parent 'DBIx::Class::Core'; __PACKAGE__->load_components(qw/InflateColumn::DateTime/); sub insert { my $self = shif […]
PerlのWebApplicationFrameworkであるMojoliciousでは様々なフックが用意されているのだけれど、actionの前後だけに実行したい場合は独自にフックポイントを追加しないといけない。 実装方法その1 一番単純な実装方法はaround_actionフックを使うのが良さそう。actionは$lastフラグが真の時に実行されるので前後に独自のフックをエミットする。 sub startup { my $self = shift; ... $self->hook( around_action => sub { my ( $next, $c, $action, $ […]
language-mojoliciousを導入する。 keymap.csonに以下を追記 'atom-text-editor[data-grammar="text html mojolicious"]:not([mini])': 'tab': 'emmet:expand-abbreviation-with-tab' タブで展開させるとlanguage-mojoliciousとカブるので emmetはcmd+shift+eにしてみる。 'atom-text-editor[data-grammar="text html mojolicious"]:not([mini])': 'cmd-shift- […]
Mojolicious::Plugin::LocaleTextDomainOO - I18N(GNU getext) for Mojolicious. - metacpan.org きっかけ Mojolicousで国際化するプラグインにはMojolicous::Plugin::I18Nというものがある。これは良く出来ていて、URLやドメイン名での振り分けが出来たりする。 国際化の部分はLocale::Maketextを使う。Locale::Maketext::Lexiconも使えばpoファイルなどもつかえる。 普通に使う分なら問題ないのだけど、GNU gettextのmsgctxtやtext […]