ctrl+M で enter
これが凄く快適です。
returnを押すとどうしても「ッターン!」の瞬間に思考の空白ができてしまうので。
打鍵音もかなり小さくなって、今日はキーボードを打っているのかどうか分からないくらいにまで抑えられたかな、と思います。
vimやiTermでは標準でこの仕様なのですが、mac全体でもこれでいきたいという事で、KeyRemap4MacBookのEmacs Modeというやつで全体的に変えてみました。
あと、ctrl+lでtabもいけるみたいなんですけど、こっちのキーはiTermでは画面のクリーンに対応してるし、ちょっと微妙かもしれないですね。tabはreturnほど遠くないのであまり気にならないですし。
新言語Swift
いや〜熱いですね。
一応ドキュメントは無料で手には入るんですがNDA的な関係で内容をどこまで書いていいのか。
パッと見はObjective-Cとはまるで違いますね。
自分はObjective-Cからプログラミングに入ったのでObjective-Cが母国語というか、やっぱ読みやすいと思っちゃうんですが慣れなんでしょう。
セミコロンも付けなくていいみたいだし、書くのがとても楽になりそうでテンション上がります。
とりあえずHello Worldしてみました。
更新滞ってる
ちょっと忙しくて更新が・・。
「入門 Webゲーム開発」買った。JavaScriptがまるで分かっていないのでとりあえず動くものを作ってみて流れを感じてみようという事で。 フレームワークの力も感じられそう。
早く写経したい・・・!
- 作者: Evan Burchard,永井勝則
- 出版社/メーカー: オライリージャパン
- 発売日: 2014/03/22
- メディア: 大型本
- この商品を含むブログ (3件) を見る
iOS NSStringで絵文字を含んでいるかを判定
こちらから、絵文字のNSCharacterSet+EmojisAdditionカテゴリを使わせてもらった。
#import "NSString+isContainAddition.h" #import "NSCharacterSet+EmojisAddition.h" @implementation NSString (isContainAddition) - (BOOL)isContainEmoji { NSCharacterSet *emojiSet = [NSCharacterSet emojiCharacterSet]; return ([self rangeOfCharacterFromSet:emojiSet].location != NSNotFound) ? YES : NO; } - (BOOL)isContainCharacterString:(NSString *)str { NSString *specialCharacterString = str; NSCharacterSet *specialCharacterSet = [NSCharacterSet characterSetWithCharactersInString:specialCharacterString]; return ([self rangeOfCharacterFromSet:specialCharacterSet].location != NSNotFound) ? YES : NO; } @end
おまけとして、isContainCharacterString:という判定したい文字を入れた文字列を渡して含んでいるか見るメソッドも作った。
使用
NSLog(@"ss abcde : %@", @([@"ss" isContainCharacterString:@"abcde"])); NSLog(@"ssc abcde : %@", @([@"ssc" isContainCharacterString:@"abcde"])); NSLog(@"ssC abcde : %@", @([@"ssC" isContainCharacterString:@"abcde"])); NSLog(@"888 9654 : %@", @([@"888" isContainCharacterString:@"9654"])); NSLog(@"4 9654 : %@", @([@"4" isContainCharacterString:@"9654"]));
結果
ss abcde : 0 ssc abcde : 1 ssC abcde : 0 888 9654 : 0 4 9654 : 1
まあ、正規表現を使わなくても良い簡単な判定で使えるかな。
UIPageViewControllerでpage内にセットしたvcのviewが37pt縮む件
何の事は無い、画面下部にpageControllerが表示されていたんですね。
こちらでみてなるほどと。
自分の方ではpageControllerの○の色が見えなくて、ずっと原因が分からず悩んでいました。なんで、中のviewが縮むんだよ、と思って色々試行錯誤し、Transition Styleをscrollからcurlに変えてみたら縮む現象が消えたのでそこから解決に至りました。
しかし、デリゲートメソッドを実装すると出現する(そして中のvcのviewを縮める)とか、そんなの考えに無かったです。ずっと、UIPageViewControllerに何かpropertyがあったりするのかなと持ってその辺で悩んでいました。
デリゲートメソッドを削除したら消えました。
iOS端末の中に入っているprovisioning profileに関してキャッシュ的なことが起こった
アプリのテストなどで一度アプリインストール時にprovisioning profileを端末内に入れると、そのままだと、大元のiOS dev centerでそのprovisioning profileをeditしたりして更新したとしても、古いやつがずっと使われる。
さらに、たとえ大元で新しくprovisioning profileを作って、それで同じアプリを新しくビルドしたとしても、インストール直後に古いprovisioning profileを使ってアプリ起動しようとする。
そしてさらに、(多分)古いprovisioning profileを端末上から消しても、そのまますぐに新しくビルドしたアプリを起動しようとすると古いprovisioning profileが使われる。(多分)
なので、解決法としては古いprovisioning profileを消して、いったん再起動してから、新しいprovisioning profileでビルドされたipaをインストールする。
自分は、ipaを作る際のprovisioning profileが自動的に使われると思い込んでいたので、とてもつまづいた。 起きた現象としては、
端末を登録していないprovisioning profileでアプリを立ち上げようとする
-> アプリが起動しない
-> dev cen でprovisioning profile編集し、端末を追加登録 -> ビルド&インストール
-> 起動しない
-> 違う名前で新しくprovisioning profile作成、ビルド&インストール
-> 起動しない
-> 端末内provisioning profile消去 & インストール
-> 起動しない
-> 端末内provisioning profile消去 & 再起動 & インストール
-> 起動
結論: provisioning profile という言葉が長くて使いづらい
いや〜、思い込みは良くない。
しかし、端末内のやつを消して再起動しなければ古いやつが使われるとは思っていなかった。
何か認識違いなどしてるかもしれないんでその場合つっこんでもらえるとありがたいです。