Category Archive: etc…

[etc]新しいpc買って(windows8.1)でssh使ってcmdからgithubとかをcloneできるようにするのに悩んだときのメモ

ssh回り、いつも悩みながら適当に設定してなんとなく使えるようになっているのだけど、今回も相当悩んで、やっとなんとなく動くようになったので、今後同じことを繰り返すであろう未来の自分へのメモ。
(これの通りにやって動くようになるかはわからないので過度な期待しないように)


■SourceTreeのインストール

cmd使うから厳密にはいらないかもしれないけど、これを使った”おまじない”が必要となる。
そして、puttygen/pageant/plinkもここに含まれている。
(C:\Program Files (x86)\Atlassian\SourceTree\tools\putty)

■ssh用の公開鍵、秘密鍵を作る

puttygenを使って、公開鍵・秘密鍵なるものを作る
(C:\Program Files (x86)\Atlassian\SourceTree\tools\putty/puttygen.exe)
保存するときのファイル名(この名前が大切かもしれない)
秘密鍵:id_rsa.ppk
公開鍵:id_rsa.pub
※OpenSSH形式の秘密鍵・公開鍵に変換しておく必要があるかもしれないのでやっておく
→Conversions → Export OpenSSH key:id_rsa(拡張子なしとする)

参考 → SSH(PuTTY)設定

秘密鍵、公開鍵の保存場所はとても大事
例:C:\Users\393\.ssh\id_rsa.ppk
カレントユーザー直下に.sshフォルダを作ってそこに置く。
(※.sshフォルダは、cmdから、mkdirコマンドを使わないと作れない)

■githubにsshキーを設定する

githubにログインして、settings→SSH keys → Add SSH keyで、
key欄にはさっき作ったやつでputtygenに表示されているkeyをコピペする。

■Gitのインストール

gitfor windowsからDownload.
※インストール時のラジオボタンの設定はちょっと変更する。

・Adjusting your PATH environment > Use Git from the Command Pronmpt
→cmdで、gitコマンドが使えるように環境変数が設定される

・Choosing the SSH executable > Use(Tortoise)Plink
→sshのときplinkを使うように環境変数が設定される
(TortoiseってあるけどインスコしてないせいかplinkまでのpathはSourceTree内のplink.exeになってる)

・Configuring the line ending conversions > Checkout as-is,commit Unix-style line endings
→改行コードが変わる(ここはデフォルトでもいいかも)

cmdでgitをたたいてなんかでればうまくいっている

■pageantにprivate keyをadd

pageantを起動して上で作った秘密鍵をadd keyしておく。
(C:\Program Files (x86)\Atlassian\SourceTree\tools\putty/pageant.exe)
※スタートアップに登録しておくといちいち起動しなくていいから楽。

■githubのリポジトリをcmdからクローン(失敗するはず)

cmdを開いて、githubのリポジトリをcloneしてみる
例:git clone git@github.com:hoge/moja.git

こんなエラーがでるはず。
Disconnected: No supported authentication methods available (server sent: publickey..)

■SourceTreeでクローンしてみる

SourceTree上でsshパスを使って、githubのcloneを試みると、初回だけなんかの認証的なYes/noなポップアップがでる
↓こんなの
popup

Yesを選択する。(これが上に書いていた”おまじない”)
(設定に間違いはなければSourceTree上でもこのままcloneできる)

■githubのリポジトリをcmdからクローン

“おまじない”のおかげでさっきでたエラーはでなくなっている
githubに限らず、bitbucketとかbacklogでもSSHキーを登録したあと1発目のcmdからcloneしようとすると上述のエラーがでるので、SourceTreeでクローンしようとすると、認証のポップアップがでるから、それをOKしてやれば、その後、cmdからもcloneとかできるようになるっぽい。

■intellij IDEA上でのgit操作

上の設定ができてる前提で、
setting/VersionControl/Git/SSH executable:Buit-in
でいけた。

[ETC]ビデオコーデック:CUVCのaviファイルをAdobeMediaEncorderでエンコードしようとするとファイルが壊れていると怒られるときの対処方法

30分くらいはまってTwitterで偉い人から教えてもらえたのでメモメモ

まずそもそもaviファイル(動画ファイル)が再生できないことが多々ある。
VLCでは全く再生できず、WindowsMediaPlayerだと音は流れるけど絵がでない。
これは録画されたときのビデオコーデックが自分のPCに対応してないからだそうです。
というわけで、該当のファイルにあったビデオコーデックをインストールすればいいのですけど、世の中にはコーデックはたくさんあるようで、わけがわからんのです、はい。

まず対象のファイルのコーデックを知る必要があるのですけど、そこで役にたったのがこの記事。
ぶっ壊れて再生できないAVIファイルを修復して再生可能にするフリーソフト「DivFix++」

再生できない状態のままでもAdobeMediaEncorderでエンコードできればいいや、と試してみたら、「ファイルが壊れています」と怒られたのでまずはこれを試したのでした。
(これを試しても再生できないのは変わらずで、ファイルが壊れていますといわれる)
ただし、これを使うと途中でコーデックの識別情報が表示されます。
これでコーデックの種類がわかるので、なにをインストールすればいいのかがわかる。
(このソフトはDLしてzip解凍するだけで使えるからレジストリ汚さないっぽい)

で、今回の場合は、CUVCというコーデックでした。
このコーデックはTwitterできいた情報だとなんか多いらしい。
そしてこれに対応するには、これをPCにインストールすればOK。
Canopus Codec Option(無償版

DLしたファイルをダブルクリックすると、Cドライブ直下にセットアップ用のファイルの入ったフォルダが作られるので、その中の、setup.exeを実行すればインストールされます。
インストール後は再起動を促されるので、再起動してから、再生できなかったaviファイルをWindowsMediaPlayerで再生してみると、ちゃんと絵が表示されます。
(VLCではこれいれてもダメっぽいです)
そして、Adobe Media Encorderでも怒られずに開くことができるようになります。
ありがたやありがたや

[ETC]Flash制作に欠かせない3つのツール@393編

kayacさん発信の元、流行ってるようなので便乗。
といってもペーペーなので新しいことを提供できませんのでちょっとベクトルを変えて。

◆まずはキーボード。
2009_10140003
ThinkPlus USBトラベルキーボード ウルトラナビ付
ThinkPadキーボードがデスクトップPCでも使用できると優れもの。
私はトラックポイント(赤ポッチ)に慣れすぎていてこれがないと始まりません。
マウスもつないでますがほとんどトラックポイントで済ませてしまいます。
イラストレーターのベジェとかも全部これで操作。
マウスもつないでますが、ほとんど使わないですね。
ちなみにトラックパッドは使いにくいので全く使いません。
で、最近トラックパッドなしのモデルがでたので、そっちも欲しいす、安いし。

◆続いてモニター
2009_10140066
DELLの24インチと22インチのデュアルディスプレイ。
基本的にウィンドウを整理して作業していないので、広ければ広いほど嬉しかったりします。。
一面にFLASH IDE、もう一面にFLASH DEVELOPだったり、
上記二つを一面に押しこんでもう一面はフォトショやイラレを開いたりといった感じ。
とりあえず2枚ないと始まりません。
もう一枚欲しいくらい。。。

◆最後に椅子
2009_10140040
Embody Chair (エンボディチェア)
私の希望するデザインと機能性を満たしてくれた初めてのワークチェア。
肘掛の自由度も高く、リクライニングも2段機構になっていて、椅子に座りながら背伸びが可能。
まぁ背伸びなんて椅子降りてやればいいことですがこれがなかなか気持ちいい。
ただ当初のもくろみはリクライニングを倒してふんぞり返りながら作業しようと思っていましたが、これをすると腰に負担がかかってえらいことに。。。
長時間、後傾姿勢で作業するにはヘッドレストがないと無理なようです。
なので作業時はリクライニング固定で前傾姿勢で作業。
背伸びするときだけリクライニングオンといった感じでしょうか。
写真の足元に映っている白い箱は足置き台。
テーブルが少し高いので足置き台を使うことで正しい姿勢をキープ。
足がむくみにくくなるようです。
ちなみにこの足置き台はダイソーで買った子供用踏み台(420円)
結構気に入ってます。

というわけでFlashには直接関係ないツールでした。
まぁストレスなく作業できる環境を作ることが何においても重要だと考えてます。

[XP]hall.dllがみつかりませんと言われるとき

TrueImage Personal2を使ってCドライブをリストアすると毎回このエラー。
回復するための参考サイトは以下。
起動しなくなったXPを救う「Rebuild」コマンド

回復コンソールでのコマンド(半角スペース位置に注意)
attrib -h-r-s c:\boot.ini
delete c:\boot.ini
bootcfg /rebuild
fixboot

bootcfg /rebuildでboot.iniを作成するときは以下を参考
Bootcfg コマンドとその使用法について

その他、参考
[win2k] 起動と終了

[Fl]CS3とCS4でラジオボタンのフォーカスルールが違う?

コンポーネントのラジオボタンで気づいたこと。
まずステージに3個以上ラジオボタンを配置する。
TABキーでラジオボタンにフォーカスを当てることができる。
このときカーソルキーでラジオボタンのフォーカスを変えることができる。
(デフォルトではラジオボタンのプロパティのgroupNameはRadioButtonGroupになっているため)
カーソルの右を押して、フォーカスがあたる順番はステージに配置した順番になる。

ここまではCS3もCS4も一緒。

ではラジオボタンにインスタンス名とかラベル名をつけたらどうだろう。
カーソルの順番が変わるのだ。
具体的にどう設定したらどう変わるかというルールがよくわからんが、インスタンス名とかラベル名をつけると順番が変わった。

CS4はではインスタンス名とかラベル名をつけてもかわらなかったようだ。
これはこれでスッキリしていていい。

だけど、同じflaファイルでもCS3でパブリッシュしたときとCS4でパブリッシュしたときで順番が変わる可能性があるってことでした。
(ずばりそのような状況に陥ったでした・・・)
これは意外と気づかないから危険だと思う。

ちなみにWin環境のみで検証。(Mac無いので)
Macではまた違ったことが起きそうな気もしないでもないです。

[AS]ドキュメントクラスでのthisについて

ドキュメントクラスは、MovieClipかSpriteを継承していないといけない。
そのためどっちを継承したかでthisの性質が変わってくる模様。

以下、Spriteを継承しててはまったこと。
ステージにインスタンス名myMcのムービークリップを配置。
ドキュメントクラスをMain.as

//Main.as
public class Main extends Sprite {
public function Main() {
var main2:Main2 = new Main2(this);
}
}
//Main2.asのコンストラクタ
public function Main2(container) {
var container2:Sprite = container

trace(container2.myMc.x);
}

これだと、container2にmyMcなんてプロパティ無いよと起こられる。
おそらくSpriteはDynamicじゃないからってことかな?
でも、↓こう書けばSprite継承でも参照できるみたい。
trace(container2[“myMc”].x);
まぁcontainer2:Spriteとせずに、Mainとすれば問題ないけど。

最初からMainはMovieClipを継承してれば何の問題もない

//Main.as
public class Main extends MovieClip{
public function Main() {
var main2:Main2 = new Main2(this);
}
}
//Main2.asのコンストラクタ
public function Main2(container) {
var container2:MovieClip= container
trace(container2.myMc.x);
}

結論としては、ドキュメントクラスはMovieClipを継承しといた方が無難・・・

[etc]奥行きの考え方

【投影象の大きさ】:【オリジナルの大きさ】 = 【焦点距離】:【焦点距離+z方向距離】

投影像の大きさ = オリジナルの大きさ × 焦点距離 / (焦点距離 + z方向距離)

焦点距離をFとすると、投影面のxy座標は以下の公式であらわせる
x’ = x × F/(F+z)
y’ = y × F/(F+z)

最前面奥行き(z)を0にした場合。
F/(F+z) = 1
最背面奥行き(z)を1にした場合の最小比率をSとすると
F/(F+z) = S
F/(F+1) = S
F = S × (F + 1)
F = (1-S)/S