USKey Macのキーリマップ (Karabiner使用)

Mac上のVMのキー設定でハマったのでメモ。

 

■環境
      OS:   Mac OS X 10.10.2 (Yosemite)
      VM:   Parallels Desktop 10 for Mac
      Keyboard:   USKey
      IME:  Google IME (<--今回は関係ない)
      KeyRemap Tool:   Karabiner
      ---------
      OS on VM:   Windows 7
      IME on VM:  MSOffice2010

 

■やりたいこと
      VM上のWindowsで "⌘+space" で "英数<-->ひらがな" 変換を有効にする

 

■方法
      Mac側:
          1. MacのキーリマップアプリのKarabinerをインストール
          2. Karabiner_AXNotifier.appのコンピュータ制御を許可する
                 システム環境設定 > セキュリティとプライバシー > プライバシー > アクセシビリティにて、チェックボックスを有効にする
          3. Karabiner.appを起動し, Command_L to Control_L (only in virtual machine, RDC)にチェック

              f:id:capmeee:20150311160850p:plain

 

      Windows(VM上)側:
          4. 下記のように設定
                 IME環境設定 > 全般 > Microsoft Office IME 2010 > プロパティ 

                 > 全般 > 編集操作 > 変更 > キー設定 > "Ctrl+SPACE"行 > "入力/変換済み文字なし"カラム > IME-オン/オフ

               f:id:capmeee:20150311160945p:plain

 

      以上で設定は完了。

 

■なぜハマったか?

      ・Mac側のコンピュータ制御の設定で"Karabiner_AXMotifier.app"を許可していなかった
      ・Karabiner.appの設定で、"AXNotifierタブのEnable AXNotifier (Default: On)"のチェックボックスを無効にしていた
               # Notifierなので鬱陶しい通知が来るだろうってことですぐOffに変更してしまっていた

               # 同設定画面に、"Be careful"と書いていたみたいだが・・・

                  f:id:capmeee:20150311161101p:plain

 

     つまり、特定のアプリのみキーの挙動を変更する場合にAXNotifierを使用するらしい
               # 特定のアプリ = Parallels (今回のケース)

Gitを使用した開発・運用

git add <更新対象ディレクトリ(およびファイル)>

      ・更新したファイルのあるディレクトリをGitのトラック対象にする

      ・例えば、git add dev/ とした場合、dev以下の更新のあるファイルがトラックされる

      ・この場合、変更の無いファイルはトラックされない

 

git commit -m

      ・コミットする (リポジトリを更新)

      ・-m はコメントをコミット時につけるオプション (git commit -m "コメント")

 

git add . 

      ・後で行うpush時に、含みたくないファイルをトラックする

        # ちなみに、1回目のaddでは、push時に含みたいファイルをaddし、commitしている

      ・ビルド時に環境毎に異なるファイルを自動生成するような場合、複数人で開発する場合に邪魔(容量とか)になるため、2回目のaddを行う

 

git reset --hard HEAD^1

      ・1つ前のリビジョンにHEAD(currentで指している場所)を変更する

        # こうすることで、2回目のaddによってトラックされたファイルを削除することが可能

 

git push

      ・結果、リビジョンをcommitに更新し、かつ邪魔なファイルを含まない形になる

IBM Bluemixを使ってみた備考録

■Bluemixとは


Bluemix


・Cloud foundryをベースにしたIBMのPaaS

・DBやPush通知, IOTなど様々な機能を「サービス」としてアプリケーションに追加することで, 簡単にミドルウェア周りを整えられるPaaS

・アプリそのものは自分でコーディングしないといけないので, アプリ開発者が対象のよう

 

■アプリのデプロイ方法

1. EclipseにBluemixプラグインを導入して, プロジェクトをドラッグ&ドロップでデプロイ

2. CLIコマンド (cf ~~~)を使用してデプロイ

3. JazzHub (DevOps Service)というプロジェクト管理サービスからのデプロイ

 

CLIの使い方

まずはインストール


Releases · cloudfoundry/cli · GitHub

 

cf api https://api.ng.bluemix.net

cf login (IBM IDやPWを入力)

cf push アプリ名(ユニーク) -p .warファイル -m メモリサイズ(M, Gなど付与)

# e.g. cf push SampleApp -p SampleApp.war -m 512M

 

■備考

・標準では, Libertyプロファイル(IBM WebSphere Application Serverの軽量ランタイム)がアプリケーション・サーバーとして使用される

・Node.jsやRuby on Railsなども使用可能

・課金体系は, クレジットカードで使用料に応じて

 

時間に余裕があれば, 既存アプリをBluemixのサービスを利用して拡張してみたい

USB型 4Gデータ通信カード (HWD12)をMacOSX Yosemiteで使うには?

以下を見れば即解決


Altiris Agent for Mac - Support for Mac OS X 10 Yosemite | Symantec Connect

 

一応内容を書くと,

> 状況,原因

HWD12のインストールには,次のファイルが必要らしい.

/usr/libexec/StartupItemContext

 

OSX 10.10 (Yosemite)からはデフォルトではこのファイルが存在しないため, HWD12のインストールが上手くいかない.

 

> 解決策

OSXからコピー or 新規作成

 

中身は以下

> StartupItemContext

----------------------------------------

#!/bin/sh

 

unset LAUNCHD_SOCKET

exec launchctl bsexec / "$@"

-----------------------------------------

# Permissionは755にしたり,sudo使ったり

 

Apple Storeでシリアライズ

Apple GeniusBarにて、シリアライズ

 

購入したMBPR13がシリアライズされておらず、「このMacについて」に「シリアル番号なし」と書かれていたため。

 

シリアライズはすぐに終了 (AppleStoreや工場にはシリアライズ用の機械があるため)

・しかし、「このMacについて」にMBP 13 Mid2014の情報が出なかった

・ロン毛のメガネの男性が非常に詳しく、解決 (かなりテクニカルにも詳しい印象)

 

要は、ロジックボードに記録した「シリアルID」にもとづいて、Appleのサーバーに接続し、「機種モデル情報など “MacBook Pro (Retina, 13-inch, Mid 2014)」を取得し、本体に反映させている様子。

 f:id:capmeee:20141130203315p:plain

 

 

今回の件 (新規Macbook Pro Retina 13' Mid 2014を購入してから)で、Appleへの見方がかなり変わってしまった気がする。というかようやく気づいた、が正しいか。

 

昔から、「エンジニアのスペシャリストの方々の対応は神がかっていた」だっただけかも。

 

 

良い点:

・製品サポートがしっかりしている。(エンジニアまでつながればの話)

・基本的にエンジニアのスペシャリストは会話しやすい

・強い権限があるのか、「開発元への確認」を即座に実行してくれる

 

実際、今回Apple Careのサポートで対応いただいたエンジニアの方はすばらしかった。

今日Apple Storeで最後に対応いただいた方も良かった。

 

 

悪い点:

・スタッフによっては、知らないのに知っているフリの対応をする。(論外)

     ※GeniusBarと言えども要注意。「これは仕様です」は要注意

 

・Online Storeのエンジニア以外の方は丁寧なだけのことが多い

・だいたいの場合に、かなりの時間を要する上に解決しない

・矛盾が発生する

・言ってたことを実行しない、など色々と問題もある

 

・工場出荷時の初期不良

・再オーダー時のカスタムミス

・カスタマーサポートのメール返信無し、などもある

 

 

Appleは好きだけど、手薄になりつつある感じがなんとも悲しい。

Cordovaでエミュレータ指定など, エミュレータ関連のコマンド

- Cordovaでエミュレータを指定
cordova emulate --target=<AVD_NAME> android

 

- 使用可能なターゲット (API Level) を確認
android list target
==> 使用可能なターゲット (ID付) がリストされる

 

- 新規に任意のターゲットのAVD (エミュレータ) を作成
android create avd -n <AVD_NAME> -t <Target ID>
==> Target ID = 上記にリストされたIDを使用

Gitの基本的な操作


■基本
- リモートリポジトリをクローン
git clone http://xxx/git/yyy

 

- リモートのブランチをローカル環境コピー
git checkout <リモートのブランチ>

 

- リモートのブランチをローカル環境に任意の名前でコピー
git checkout -b <新規作成する任意のブランチ名> <リモートのブランチ(e.g. origin/development>

 

- リモートにローカルのブランチをプッシュ
git push <プッシュしたいブランチ>


- リモートの指定したブランチにローカルのブランチの内容を反映
git push <プッシュしたいブランチ>:<反映先のリモートのブランチ>

■その他

- ローカルに新規ブランチを作成
git branch <任意のブランチ名>

 

- ローカルに新規ブランチを作成し、そのブランチに移動(checkoutする)
git checkout -b <任意のブランチ名>

 

- .gitのあるローカルからアクセス可能なブランチを閲覧
git branch -a
# 下記が表示される
# ローカル環境のブランチ
# ローカル環境からアクセス可能なリモートブランチ

 

■削除

- ローカルのブランチを削除

git branch -d <ブランチ名>

 

- リモートのブランチを削除

git push origin :<ブランチ名>

# originを対象に、(空のブランチで):<削除対象のブランチ名> で上書きして削除するイメージ

 

■リセット / リバート

- 任意のリビジョン(commit)にHEADを移動させる (ローカル)

git reset --hard HEAD^1

# ^1: 現リビジョンから見て何世代戻るかを指定(今回は1世代)

# resetでは、戻ったリビジョン以降に行ったcommitは除去されてしまうため、複数人で開発している場合は注意が必要 (リモートでresetする場合)

 

- 任意のリビジョン(commit)を無視する

git revert <リビジョンID(commit ID)>

# 指定したリビジョンで行った変更などを無視し、指定リビジョン以降のリビジョン(commit)の変更を受け入れる方法

 

■stash

- 現在の作業領域を一時的に退避させる

git stash

git stash pop

# まさに作業中で git commit -a できないような時に有効

# popで戻せる

 

Cordovaを使用したAndroid開発環境の準備

 

  • 準備 (Android用)
    - Cordova の CLIをインストール
    npm i cordova -g

    - Android SDK
    コードを.apkにパッケージングする(=Android用にビルド)ために必要
    Androidエミュレータを使用するために必要
    > インストール方法
    パターン1: ADTをインストールして, 同梱されるSDKを使用
    パターン2: Android Studioをインストールして, 同梱されるSDKを使用

    > パスを通す
    編集ファイル: .bash_profile (~/ にある)
    export PATH=<SDKのインストールdir>/tools:$PATH
    export PATH=<SDKのインストールdir>/platform-tools:$PATH

    JAVA_HOME=$(/usr/libexec/java_home -v 1.7)

    - ant
    brew install ant

 

10.10 Yosemiteをインストール

会社用のMBPR13をYosemiteにアップデートした時の備考録

 

やったこと

  • Mavericks時点でTimeMachine(TimeCapsule上)でバックアップ生成
  • メインの全ユーザデータをiMac or MBAにバックアップ
    data以下, env以下, ParallelsVM, etc. (基本はDocuments以下)
  • Homebrew( +npm) でインストールしたものをアンインストール
    npm uninstall cordova -g
    brew uninstall npm
    brew uninstall git
    ※なぜかgitはアンインストールしてもグローバルで使えた・・・2箇所でインストールしてたのか?不明

 

これで数回再起動して無事Yosemiteにアップデート完了

所要時間は20分程度

 

PCが新しいこともあったが、事前に得ていた情報から「Homebrew関係をアンインストール」してからアップデート開始したのが良かったかもしれない。

 

ちなみに、Homebrew本体はアンインストールしていない。

 

pptで、「選択したオブジェクトをdeleteキーで削除できない」という記事もあったが問題なし。

 

 

 

初投稿

ゆるーく、「試してみた日記」を書こうと思う。

 

目的: 日々の成長を記録すること

記録を何に活用するかは考えていないけど、きっと役立つ。と思っている

 

まずやってみる、手を動かしてみる、を最近意識しているのでやってみよう。

2014年9月8日5時12分、スタート。