2016年3月27日日曜日

便利なショートカット一覧

iCloud Numbersで表の一番下までジャンプする
・option + fn + ↓ 
・ヘルプではoption + page downとなっているが、MacBook系のキーボードではpage down == fn + ↓ なので、上のようになる。
・ちなみに、Google driveのスプレッドシートはcommand + ↓で一番下までジャンプする。

Terminalで、カーソルより左側を一気に削除する
・control + u

2016年2月6日土曜日

アカウント名等の入ったソースをGitHubにアップしないようにする工夫

アカウント名などをベタ書きで指定している場合に、誤ってGitHubにその部分のソースを公開しないようにするための工夫。

→Parameters.swiftのようなクラスを作って、そのソースだけを.gitignoreで管理対象外にしています。これだとリモートリボジトリ上のソースだけではビルドが通らないのですが、うっかり公開してしまう恐れは減ります。

Parameters.swiftで

class Parameter: NSObject {
    static var sharedManager: Parameter = {
        return Parameter()
    }()
    private override init() {

    }
    let username = "user123"
}

のようにしておいて、

使いたい場所で、
let string = Parameter.sharedManager.username
のようにして取り出します。


terminalを開いて
$ touch .gitignore
$ vim .gitignore
i
Parameters.swift
[esc]
: wq
とすると、コミットを作るときにParameters.swiftを選択できなくなっています。

ファイルとして見えないのであれ?作れたのかな?と不安になりますが、vimで開いて保存されていれば実体としては保存できていると納得できますね。

Parameters.swiftだけを共同作業者に共有してプロジェクトに追加してもらえば、通常どおりビルドできるという流れになります。

最終的にはKeychainで管理することになるかと思いますが、デバッグ中はベタ書きで済ますことが多いと思うので、簡易手段としてこんなやり方をしています。

Parameterの中でKeychainの取得操作を行うようにアップデートすることで、後で文字列をセットする部分を書き直ししなくてよいというメリットもありますね。

El CapitanでCarthageを導入する手順

El Capitan上の開発環境でCocoaライブラリ管理ツールのCarthageを導入しました。

CocoaPodsよりもビルド時間を短縮できることがメリットです。Podsの場合はビルド毎にライブラリ分もビルドするため、ちょっとしたコードの修正を行って再ビルドしたときでもトータルの時間がかかってしまいます。Cartageは一度ビルドすれば、それを再利用できるので、そこの時間をカットできるのです。
開発期間中はおびただしい回数のビルドを行うので、ちょっとした時間の短縮でも大きなメリットになります。


さて、導入手順ですが、基本的には下記の記事で説明されている通りに進めました。

・ HomebrewはEl Capitanへアップグレートする前に入れておく

・Carthageを使ってビルド時間を短縮しよう

全体の流れとしては、Homebrewのインストール/アップデート→Carhtageの導入という流れになります。

まず、Homebrewの準備からです。

El Capitanのインストール後にHomebrewをupdateしたかったのですが、一発で出来なかったので、次のように作業しました。

brew updateを実行すると、
Error: The /usr/local directory is not writable.
というメッセージが出ました。

権限の修正。
sudo chown $(whoami):admin /usr/local && sudo chown -R $(whoami):admin /usr/local
もう一度、
brew updateを実行

brew install carthageを実行すると、
Warning: carthage-0.12 already installed, it's just not linked

"not liked"!?

brew doctorでヒントを表示。
brew link carthage
brew prune /usr/local/bin/apm
brew prune /usr/local/bin/atom
を実行。
おしまい。

次に、Carthageの準備です。

Run scriptで、Run script only when installingに✔を入れて、
Embeded frameworkにもフレームワークを登録しました。
これでビルドが通りました。

実際にビルドをしてみると、とても快適です。メジャーなOSSは、Carthageに対応しているようなので、今後はCarthageを積極的に使っていこうと考えています。

2015年7月27日月曜日

【iPhoneのUSBテザリングでお困りのかたへ】意図しないテザリングを防ぐOS Xのネットワーク設定方法



【MacBook-iPhoneユーザに向けて書いた記事です】

MacBookを使っていると、iPhoneのインターネット共有(いわゆるテザリング)をオンにしたまま自宅・オフィスでネットを使ってしまって、7GBの転送量制限にかかりそうになった...という経験が時々あります。


私はこれを「いつの間にかテザリングしていた問題」と名付けています...


まめにテザリングをオフにすればよいのですが、煩わしいので忘れてしまいます。



突然届く157からのメッセージ。月末が近づくとそんなに使ってしまったのかと毎回驚く...

じつは、この問題は、OS Xの設定によってスマートに解決できるそうです。


すなわち、ネットワークの接続順位を設定変更してやるのです。


しかも1分程度で終わります。一度やってしまうと、凄く安心できるのでオススメです。


やりかた


手順1、→ネットワーク設定→ネットワーク環境設定と進みます。

手順2、下の画像の矢印のところから、テザリングよりもWi-Fiが優先使用されるように設定します。





手順3、iPhone USBがWi-Fiより下にドラッグします。



手順は以上です。

これで、Wi-Fiがつながるスポットに入りさえすれば、Wi-Fiが優先的に接続されて、意図せずテザリングされてしまう問題を解決できるわけですね。


安心してネットを利用できるようになります。MacBookユーザのご家族、友人、同僚にも教えて差し上げるとよいと思います。


注意すべきこと


Wi-Fiをオフにしていると、テザリングが適用されてしまいます。Wi-Fiのつもりで自宅で動画を見ていたら、思いっきりテザリングで接続していた!というトラブルの可能性は残ります。基本的にはこの設定は念のために行うものとして、まめにインターネット共有を「オフ」にして対応するのが無難のようです。


私はこう思った


UXを大切にするAppleは、もっと設定周りを「やさしく」設計してほしい。少なくとも、iPhone USB > Wi-Fiのような形になっている場合は、「意図しないテザリングが発生して転送量が超過するリスクが高まります。よろしいですか? Y/N」みたいなダイアログを表示してほしいと思いました。


最後になりましたが、この設定方法について教えてくださった Innoface 株式会社 代表取締役の平井さんに感謝です。ありがとうございました。


---

impactive.linkでは、生活を10倍良くなるネタ、プレスリリースを募集しています。@hsylifeにメンションしていただくか、直接メールでも大歓迎です。info@ge-nie.co.jp