photoshop乗り換えた

短めです。



今、adobephotoshop ccとlightroomがセットで980円/月(年間契約)の爆安プランがでてた。



デザインやらないけど、仕事でどーしても使わざる場面がでてきて、先月くらいに単体サブスクリプションで使ってたんですが、ビンボーな私にとって月2200円は痛くて...



マジ助かりました。



期間限定とか書いてあるけど、いつまでってのが見当たらなかった。



ムムッ!

fuelphpでhaml導入したった

またfuelphpネタです。



fuelphphamlつかおうって話になり、とりまいれることになったんだけど、なんでこんなつまづいたのか...



無力すぎて泣ける... orz



ドキュメント読んでわかんなかったところなど、なかなかつまづいたのでメモ。




まず、公式ドキュメントではhaml使うなら、ドライバーなんもないからcomposerから"必要なやつ"入れてね!的なことが書いてあったので、pakagistにあるmthamlをいれた。



まずここ。



mthaml使おうとしたとき、 既存のものだとParser\View_HamlTwigをつかうことになりーの、自ずとtwigも一緒に使うことになると。



Parser\View_HamlTwigって、継承関係が Parser\View < Parser\View_Twig < Parser\View_HamlTwig になってる。



Parser\View_Hamlあるんだけど、こいつ使うなら、fuel/package/config/parser.phpをみると、PHamlPを使わないとあかんらしい。(Parser\View_Haml != Parser\View_HamlTwig?)



mthamlの方が、packagistにあるし、twigも勉強できる良い機会!とか無理矢理ポジティブに考えて、Parser\View_HamlTwigを使う事に。



次。


sample.mthamlとかいうviewファイルがあったとする。
デフォではviewファイルの拡張子 .mthamlのやつがあれば、 Parser\View_HamlTwig::forge("sample")で表示してくれるような雰囲気を感じていたのですが。。。



で、できね。。。orz



とりま最低限表示されるところまでいこうと思い、やった対策。



1. Parser\View_HamlTwig::forge("sample.mthaml")のように、拡張子もちゃんと書く。



2. fuel/app/configにparser.phpを追加。

<?php
return array(
    'extensions' => array(
        'mthaml' => 'View_HamlTwig', // ① default: 'mthaml' => array('class' => 'View_HamlTwig', 'extension' => 'twig'),
    ),
    'View_HamlTwig' => array(
        'environment' => array( // ② default: true
            'auto_escaper' => false,
            'escape_html' => false,
            'escape_attrs' => false,
        ),
    ),
);


デフォのまんまだと、
① 内部でsample.twigを探しにいって、んなもんねーよでオワタ

② html系の文字がエスケープ処理されて、えらいもん表示される



以上。



動いてよかった(´・ω・`)




P.S. fuelphpでtwig使うとき、Twig_Fuel_Extensionがデフォってて、

<?= Asset::img("sample"); ?>

てのが

{{ asset_img("sample") }}

とか、使えるようになってる!!
すばらしかー


...と、思いきや、Twig_Fuel_Extensionの中身みると、足らないメソッドがある。。。orz(ex. Form::csrf()とか)

ここらへんの設定方法が、詳細に書かれているブログを発見しますた!

参考:
FuelPHPでTwig Extension #FuelPHPAdvent2013


ありがとうございます!

Vimで最短一致

vimで最短一致が思うようにいかなかった。

例えば、

```
spring-android-showcase - The showcase contains client and server apps, and illustrates the features of Spring for Android.

spring-android-news-reader - The news reader highlights the use of the Android ROME Feed Reader by retrieving RSS and Atom news feeds.

spring-android-twitter-search - The Twitter search app demonstrates an Android project including Spring for Android jars without the use of Maven's dependency management.

spring-android-twitter-client - A Twitter client demonstrating Spring Social on Android

spring-android-facebook-client - A Facebook client demonstrating Spring Social on Android

spring-android-basic-auth - These client and server applications show how to make Basic Auth requests using RestTemplate on Android and connecting to a Spring MVC site.
```

上記の文章で、spring-android-????-を抜きたいとき、

before:
/spring-android-.*?-/

とやろうとしたらうまく行かない。

エスケープだろうとごにょごにょしたら、

after:
/spring-android-.*\\\?-/

でうまくいった。

エスケープ、大杉蓮ですな (´・ω・`)

調べたところ、vimで最短一致は若干特殊な記法があったった。

before:
/spring-android-.*?-/

after:
/spring-android-.\{-}-/

参考
http://webtech-walker.com/archive/2009/01/22160435.html

ec2にphpGOGO!

前回に続き、phpネタです・

AmazonLinuxでphp5.5系いれたい!

php55をいれると、macと違って、mongo.soがデフォってた。

[Path]
/usr/lib64/php/5.5/modules/


しかし、mysqlがなひ。

やったこと。
1. $ yum install mysql
2. $ yum install php55-pdo
dep1. $ yum install re2c
dep2. $ yum install mysql-devel

(いるの?) $ yum install php55-mysqlnd

3. $ pecl install pdo_mysql。。。


で、こけた。

configure: error: Cannot find php_pdo_driver.h.

なので、
手動で落としてきて、

phpizeして
./configure --with-pdo-mysql=
すると、pdo_mysql.soができる。

。。。といろんな方々がおっしゃってました。

実際、pdo_mysql.soができたにはできたのだけど、pecl install pdo_mysqlで未だこける。

どのタイミングでできたんだ...


P.S.
古いphpでいれたmongo.soはphpだけ新しくても、pecl install mongoで
新しいのあるから無理っしょ。
と、返されるので、uninstall->installやり直し!

以下、追加で入れたモジュール群
==================
re2c
mysql
mysql-devel
php55-mysqlnd
php55-pdo
php55-mbstring
php55-gd
==================

PullToRefresh と SSLPeerUnverifiedException にはまった話

1. Android-PullToRefreshが非推奨になって、ActionBar-PullToRefreshを使わないといけないって話で、こけた。


ActionBarでTabを制御してた際、AsyncHttpClientのコールバックメソッド内でUIをいじると、現在触れてない他のTabのfragmentが動き出した。。


ただ動くならいいんだけど、PullToRefreshLayoutAttacher.addHeaderView~:594がヌルポとか・・・orz


とりあえず、諦めました。。



2. javax.net.ssl.SSLPeerUnverifiedException: No peer certificate


うさんくさいエラーに悩まされた。。


原因わかんなくてググってたら、証明書エラーを搔い潜る方法があがってたりしたけど、
主原因は、まさかの、端末時刻ズレズレで認証はじかれてたとかw


恥。


参考 -> http://mizoguche.info/2012/06/androidssl通信するとsslpeerunverifiedexception-no-peer-certificate/


ありがとうございました m(_ _)m

MacでFuel+MongoDB

MarvericsでデフォのPHPは5.4.17。

PHP5.5系入れたい。。。
Mongoも入れたい。。。
そこで登場、Homebrew。
Mongoはいつもどおり。
PHPはtapでリポジトリ追加する手間はあるものの、いつも通りスラーって入れられる。

で、ここからめんどくさい設定ラッシュ。

まずApache(httpd.conf)の設定。

1. PHPの設定
# LoadModule php5_module libexec/apache2/libphp5.so

コメントアウトされてるっていう。
そして、モジュールのパス。
[Default]
/usr/libexec/apache2/libphp5.so
[Homebrew]
/usr/local/Cellar/php55/5.5.8/libexec/apache2/libphp5.so

2. DocumentRoot

publicフォルダまでいれたろう。

3. <Directory />

AllowOverride All
Allow from all

4. <Directory "<workspace>">

追加。

続いて、php.iniに追記(/usr/local/etc/php/5.5/php.ini)

date.timezone = Asia/Tokyo (最初コメントアウトされてる)
extension=mongo.so

(※ もし標準のPHPを使用する場合、下記の処理が必要
$ sudo cp /etc/php.ini.default /etc/php.ini(権限も一緒に))

最後に、mongoのphp driverのインストール。

$ sudo pecl install mongo

ここで、mongo.soが配置される場所に注意!

[Default]
/usr/lib/php/extensions/no-debug-non-zts-20100525/mongo.so
[Homebrew]
/usr/local/Cellar/php55/5.5.8/lib/php/extensions/mongo.so


どのPHPを使って、どこに何が保存されているか、常に把握していないとあとで事故る。

そして、今日事故った。

なので、備忘録。





P.S.

db.phpMAMPMySQL使用するときに、

<?php
return array(
  'dsn' => 'dbname=fuel_dev;unix_socket=/Applications/MAMP/tmp/mysql/mysql.sock'
);

と記述するとおもうのですが、パラメータ間のセミコロンはあくまでデリミタであって、ステップ終了のセミコロンではありません。

故に、勢い余って最後にセミコロン入れたもんなら、No such file とかでエラーでまくって事故ります。

お気をつけて!