Hatena::ブログ(Diary)

ドナドナごとごと Twitter

2015-01-10

Kinesisキーボード設定

23:08 | Kinesisキーボード設定を含むブックマーク Kinesisキーボード設定のブックマークコメント

会社で、他の方の利用していないKinesisを一ヶ月程度利用した。

使いやすかったので、自分で購入しました。自分の初回設定をメモする


## キーボード電子音off

`Program + -` と `Program + \`

前者がCapsLock時などの切替音、後者はタイプ音

## mac モードへの切替

`= + m` でmac modeへ切替

エディタなどを開いて下記コマンドで、現在のモードを確認。

`= + s`


macモードであれば `v3.2[]` というように表示される

## Remap

`Program + F12` で切替、真ん中のランプが点滅するので、`Remapしたいキー`、`そのキーをRemapする箇所`という順番で入力。

その後、再度 `Program + F12` で終了。

### Remapしたキー

  • Commandキー to Delete
  • Ctrl to Backspace
  • Esc to RightCtrl

2013-08-28

AWSのSecurityGrouopのroleを当てられるcapistranoプラグインcapistrano-ec2group

02:18 |  AWSのSecurityGrouopのroleを当てられるcapistranoプラグインcapistrano-ec2groupを含むブックマーク  AWSのSecurityGrouopのroleを当てられるcapistranoプラグインcapistrano-ec2groupのブックマークコメント

awscapistrano

通常capistranoでroleを定義する際には下記のように記述するわけですが、インスタンス数に変更があった場合

追加したり削除したりがめんどくさいです。

set :app,  "app-ip-address"
set :web, "web-ip-address"

上記のような問題を解決するプラグインcapistrano-ec2groupです。

GitHub - logandk/capistrano-ec2group: Capistrano plugin for deploying to Amazon EC2 instances by security groups

インストール

gem install capistrano-ec2group

コード

deploy.rbに以下の様に追記します。

このように指定するだけで、"web"roleには"securitygroup1"に所属するインスタンス

"app"roleには"securitygroup2"に所属するインスタンスが対象となります。

require 'capistrano/ec2group'

set :aws_access_key_id, 'your_access_key'
set :aws_secret_access_key, 'your_secret_access_key'

set :aws_pvt_dns, true # capistranoをec2インスタンスから実行する場合に設定します
set :aws_params, :region => 'ap-northeast-1'

group :securitygroup1, :web
group :securitygroup2, :app

2013-08-14

Vagrant+Ansible触ってみた

22:49 |  Vagrant+Ansible触ってみたを含むブックマーク  Vagrant+Ansible触ってみたのブックマークコメント

vagrantansible?

chefが余りにも取っ付きにくかったため、下記エントリを読み、Ansibleを触ってみることにしました。

Chefがつらい人のためのAnsibleのはなし - ゆううきブログ

Vagrant準備

Vagrantのお作法もよくわかってないですが、二つディレクトリを作成し、それぞれのディレクトリでVagrantfileを作成した。

VMIPアドレスをセットする場合は、Vagrantfileに下記のように追記します。

  config.vm.network :private_network, ip: "192.168.50.10"

二つVMを立ち上げ、片方からもう片方にssh接続できるようにします。

片方VMで鍵作成してもう片方のVMの~/.ssh/authorized_keyに公開鍵を突っ込みます

$ssh-keygen -t rsa
$cat ~/.ssh/id_rsa.pub # これを適当にコピる

Ansibleインストール

$sudo apt-get update
$sudo apt-get install ansible

Ansibleで対象ホストを指定する

ANSIBLE_HOSTSに指定されたファイルを見に行くため、パスを通す

export ANSIBLE_HOSTS=~/hosts

ファイル自体の中身はこんな感じに書きます。webserverというグループにVMを追加するイメージです。

~/hosts

[webserver]
vm-ip-address

適当なyamlを書いてみる

redisをインストールするだけのyamlです。

VMはUbuntu12.10なのですが、12.10の場合、redisのバージョンが2.4と古いため、

最新のredisをインストールできるようにします。

さらにUbuntu12.10には初期状態では"apt-add-repository"コマンドがないため、

それを利用するために"software-properties-common"をインストールします。

http://www.ansibleworks.com/docs/modules.html#packaging

~/test.yml

- hosts: webserver
  user: vagrant
  sudo: yes
  tasks:
    - name: install software-properties-common for apt-add-repository
      apt: pkg=software-properties-common update_cache=yes
    - name: add repo for redis
      apt_repository: repo='deb http://ppa.launchpad.net/chris-lea/redis-server/ubuntu quantal main' state=present
    - name: add repo for redis2
      apt_repository: repo='deb-src http://ppa.launchpad.net/chris-lea/redis-server/ubuntu quantal main' state=present
    - name: apt-get update
      apt: update_cache=yes
    - name: install redis
      apt: pkg=redis-server update_cache=yes

実行します。

$ansible-playbook test.yml

対象VMでredisが正しくインストールされたか確認

vagrant@quantal64:~$ redis-server -v
Redis server v=2.6.14 sha=00000000:0 malloc=jemalloc-3.4.0 bits=64

yamlの書き方とか正しいのかよくわからないけどできてた!!

なんかVagrantからAnsibleを使うのがあるらしいね!!

Ansible - Provisioning - Vagrant by HashiCorp

2013-07-03

Unityでタップとかスワイプとかを簡単に実装できてしまうFingerGestures買った

02:51 |  Unityでタップとかスワイプとかを簡単に実装できてしまうFingerGestures買ったを含むブックマーク  Unityでタップとかスワイプとかを簡単に実装できてしまうFingerGestures買ったのブックマークコメント

unity

FingerGestures for Unity by William Ravaine

タイトルの通りAssetStoreでFingerGesturesを買いました。$55です。

Unity iOS/Android無償化されてもAssetStoreに課金しています。

そう。まるでソーシャルゲームのように。

上下左右のスワイプイベントを受け取るサンプルを作成したので手順を紹介致します。

HierarchyにFingerGesturesプレハブを配置


FingerGesturesをimportするとAssets/Plugins/FingerGestures/Prefabs以下にFingerGesturesという名前のプレハブがあるのでそれを突っ込みます

スワイプイベントを起こしたいオブジェクトを作成する


適当にオブジェクトを作成します。NGUIばかり使ってる私はSpriteを作成しました。

そのオブジェクトに対して、"Swipe Recognizer"と"Screen Raycaster"というコンポーネントを追加します。

ScreenRaycasterの要素である"Cameras->Size"を1に変更し、"Cameras->Element 0"に対して、Hierarchyに存在する"Camera"オブジェクトD&Dで持ってきます。


これで後はSwipeを受け取った時の処理を書くだけです。


Swipeイベントを受け取った際の処理を記述する


今回は上下左右のスワイプイベントを処理するため、以下のようなコードを書きました。

SimpleSwipe.cs

上記で作成したオブジェクトに追加します。

"swipeReceiver"は下記の"SwipeReceiverImpl.cs"を追加したオブジェクトを指定します。

今回であれば、作成したオブジェクトです。


using UnityEngine;
using System.Collections;

public class SimpleSwipe : MonoBehaviour {

    public GameObject swipeReceiver;

    void OnSwipe(SwipeGesture gesture) {
        FingerGestures.SwipeDirection direction = gesture.Direction;
        switch(direction) {
            case FingerGestures.SwipeDirection.Right:
                swipeReceiver.SendMessage("RightSwipe");
                break;
            case FingerGestures.SwipeDirection.Left:
                swipeReceiver.SendMessage("LeftSwipe");
                break;
            case FingerGestures.SwipeDirection.Up:
                swipeReceiver.SendMessage("UpSwipe");
                break;
            case FingerGestures.SwipeDirection.Down:
                swipeReceiver.SendMessage("DownSwipe");
                break;
            default:
                break;
        }
    }

}

ISwipeReciever.cs
using UnityEngine;
using System.Collections;

public class ISwipeReceiver : MonoBehaviour {

    public virtual void LeftSwipe() {}
    public virtual void RightSwipe() {}
    public virtual void UpSwipe() {}
    public virtual void DownSwipe() {}

}

SwipeReceiverImpl.cs

これも上記で作成したオブジェクトに追加します。

using UnityEngine;
using System.Collections;

public class SwipeReceiverImpl : ISwipeReceiver {

    public override void LeftSwipe() {
        print("left swipe");
    }

    public override void RightSwipe() {
        print("right swipe");
    }

    public override void UpSwipe() {
        print("up swipe");
    }
    public override void DownSwipe() {
        print("down swipe");
    }

}

たったこれだけで単純なスワイプイベントの処理が可能になります。

2013-07-02

俺もUnityでアプリ作って猫にまっしぐらされたい

21:21 |  俺もUnityでアプリ作って猫にまっしぐらされたいを含むブックマーク  俺もUnityでアプリ作って猫にまっしぐらされたいのブックマークコメント

unity


女性のためのUnityハンズオン初心者勉強会・第2回目「Unityで猫もまっしぐら!」 #unijo #andronjo on Zusaar


ぐわー!!俺も猫に囲まれながら猫のためにアプリつくりたいよぉぉぉおおおお!!!

猫好きのためのUnityハンズオンってないんですかね。


ただ猫触るだけでもいいです。猫カフェ行きます。