<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>Web scratch &#187; Git</title> <atom:link href="http://efcl.info/tag/git/feed/" rel="self" type="application/rss+xml" /><link>http://efcl.info</link> <description>フリーソフトやFirefoxなどについて、web全般なサイト</description> <lastBuildDate>Sat, 21 Jan 2012 23:30:41 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>gistページにraw masterへのリンクを追加するGreasemonkey</title><link>http://efcl.info/2011/0615/res2874/</link> <comments>http://efcl.info/2011/0615/res2874/#comments</comments> <pubDate>Tue, 14 Jun 2011 16:45:23 +0000</pubDate> <dc:creator>azu</dc:creator> <category><![CDATA[Greasemonkey]]></category> <category><![CDATA[gist]]></category> <category><![CDATA[Git]]></category> <category><![CDATA[URL]]></category><guid
isPermaLink="false">http://efcl.info/?p=2874</guid> <description><![CDATA[gistに置いたファイルの最新版を常に参照するraw masterなURLが最近変更されたり、昔使えた方法が使えなくなっています。 詳細は以下を参考に Gist の raw ファイルの URL が変わった: 「わ」の日記 [...]]]></description> <content:encoded><![CDATA[<p>gistに置いたファイルの最新版を常に参照するraw masterなURLが最近変更されたり、昔使えた方法が使えなくなっています。</p><p>詳細は以下を参考に</p><li><a
href="http://wa.cocolog-enshu.com/pseudodiary/2011/06/gist-raw-url-72.html">Gist の raw ファイルの URL が変わった: 「わ」の日記もどき</a></li><p>以前はURLに.txtとつければよかったので、特に何もしなくても不便はしなかったのですが、2011年6月15日現在はraw masterなURLへのURLにするにはちょっと書き換える量が多いのでGreasemonkeyを書きました。</p><p>gistのページのファイル名の横にraw master URLへのリンクを追加するGreasemonkeyです。 <br
/>Scriptishの場合は、リンクをクリックするだけでクリップボードにURLをコピーします。</p><p><code><a
href="http://efcl.info/wp-content/uploads/2011/06/2011-06-14-ss1.png"><img
style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="2011-06-14-ss1" border="0" alt="2011-06-14-ss1" src="http://efcl.info/wp-content/uploads/2011/06/2011-06-14-ss1_thumb.png" width="240" height="209" /></a></code></p><li><a
href="http://userscripts.org/scripts/show/104764">gist: raw master URL for Greasemonkey</a></li><p>この仕様変更により、Greasemonkeyで.txtでrequireしてたりするスクリプトは新しくインストールすると死んでいると思うので確認が必要になるかもしれません。</p>]]></content:encoded> <wfw:commentRss>http://efcl.info/2011/0615/res2874/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Windowsでのコマンドライン環境はConsole2+nyaosで</title><link>http://efcl.info/2011/0501/res2717/</link> <comments>http://efcl.info/2011/0501/res2717/#comments</comments> <pubDate>Sat, 30 Apr 2011 15:31:49 +0000</pubDate> <dc:creator>azu</dc:creator> <category><![CDATA[software]]></category> <category><![CDATA[インストール設定]]></category> <category><![CDATA[console]]></category> <category><![CDATA[Git]]></category> <category><![CDATA[Windows]]></category> <category><![CDATA[ソフトウェア]]></category> <category><![CDATA[設定]]></category><guid
isPermaLink="false">http://efcl.info/?p=2717</guid> <description><![CDATA[この記事は主にConsole2の紹介とnyoasのLua拡張についての話です。 Windowsのコマンドプロンプトはとても使いづらいので、コマンドプロンプト代替ツールとしてckwと拡張性が優れたNYAOS(昔はnyacu [...]]]></description> <content:encoded><![CDATA[<p>この記事は主にConsole2の紹介とnyoasのLua拡張についての話です。</p><p>Windowsのコマンドプロンプトはとても使いづらいので、コマンドプロンプト代替ツールとしてckwと拡張性が優れた<a
href="http://www.nyaos.org/index.cgi?p=FrontPage.ja">NYAOS</a>(昔はnyacus)などのシェルを合わせて使ってる人もいると思います。 <br
/>自分も少し前までは<a
href="http://deflis.github.com/ckw-mod/">ckw-mod</a>+<a
href="http://www.nyaos.org/index.cgi?p=FrontPage.ja">NYAOS</a>を使っていました。</p><ul><li><a
href="http://narazaka.blog109.fc2.com/blog-entry-100.html">【DOS窓】NYAOS CKW+α【便利化】-奈良北部のなにか</a></li></ul><p>現在はタイトル通り<a
href="http://sourceforge.net/projects/console/">Console2</a>+<a
href="http://www.nyaos.org/index.cgi?p=FrontPage.ja">NYAOS</a>にしています。 <br
/>ckwやConsole2はターミナルに該当するソフトウェアで、nyaosやgitbashなどはシェルに該当するソフトウェアです。</p><ul><li><a
href="http://nyaos.org/d/index.cgi?p=%282010.11.04%29#p1">NYAOS はターミナルではない！シェル！</a></li></ul><p>Console2でnyaosを使うのは簡単で、Settings&gt;ConsoleのShell(またはタブ毎の設定)にnyoas.exeのパスを入れるだけで完了です。</p><p><a
href="http://efcl.info/wp-content/uploads/2011/05/image.png"><img
style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://efcl.info/wp-content/uploads/2011/05/image_thumb.png" border="0" alt="image" width="240" height="69" /></a></p><h3>Console2の機能紹介</h3><h4>タブ</h4><p>Console2の特徴しては<strong>タブ</strong>を持っていることがあげられると思います。 <br
/><a
href="http://efcl.info/wp-content/uploads/2011/05/image1.png"><img
style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://efcl.info/wp-content/uploads/2011/05/image_thumb1.png" border="0" alt="image" width="240" height="196" /></a></p><p>また、タブ毎に設定を行う事ができ、色や背景画像の設定やシェル(nyaosなど)に使うソフトウェアの指定をタブ毎に決定することができます。</p><p><a
href="http://efcl.info/wp-content/uploads/2011/05/image2.png"><img
style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://efcl.info/wp-content/uploads/2011/05/image_thumb2.png" border="0" alt="image" width="226" height="240" /></a></p><h4>日本語表示</h4><p>以前は日本語がダメだったようですが、現在ver2ではフォントを日本語のものにすれば、日本語の表示も問題なく行えます。(フォントによってはおかしくなるけど)</p><ul><li><a
href="http://d.hatena.ne.jp/k_maru/20080412/1207985095">Console2 ! &#8211; k_maruの思うところ</a>(今はやらなくていい設定、Console2のフォントだけ設定すればOK)</li><li><a
href="http://d.hatena.ne.jp/owlcamp/20110305/1299319367">Console2とnayosの組み合わせが使いやすい &#8211; アウルキャンプ・ラボダイアリー</a> (設定方法)</li></ul><h4>ウィンドウの透過</h4><p>ckwでよく紹介されてる機能としてウィンドウの透過機能があると思います。 <br
/>Console2でもウィンドウの透過機能があります。</p><p><a
href="http://efcl.info/wp-content/uploads/2011/05/image3.png"><img
style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://efcl.info/wp-content/uploads/2011/05/image_thumb3.png" border="0" alt="image" width="240" height="150" /></a></p><p>この透過機能はアクティブ、インアクティブの時それぞれの透明度を設定できるので、フォーカス外れているときだけ透過するなどもできます。</p><p><a
href="http://efcl.info/wp-content/uploads/2011/05/image4.png"><img
style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://efcl.info/wp-content/uploads/2011/05/image_thumb4.png" border="0" alt="image" width="240" height="182" /></a></p><h4>マウスやホットキーの設定</h4><p>Console2はホットキーだけではなくて、マウスの動作、左クリックや修飾キーとマウスの組み合わせなどの挙動も設定できるので、結構細かい動作を決められると思います。 <br
/>WIndowsのデフォルトであるようなCtrl+Cでコピー、Ctrl+Vでペーストなどの設定もできるので便利です</p><p><a
href="http://efcl.info/wp-content/uploads/2011/05/image5.png"><img
style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://efcl.info/wp-content/uploads/2011/05/image_thumb5.png" border="0" alt="image" width="235" height="240" /></a><a
href="http://efcl.info/wp-content/uploads/2011/05/image6.png"><img
style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" src="http://efcl.info/wp-content/uploads/2011/05/image_thumb6.png" border="0" alt="image" width="235" height="240" /></a></p><p>これで簡単なConsole2の機能紹介は終わりです。設定はかなり豊富なので自分好みにできると思います。 <br
/>まあタブがあるだけでもかなり魅力的なターミナルです。</p><h3>nyoasの設定</h3><p><a
href="http://www.nyaos.org/index.cgi?p=FrontPage.ja">nyaos</a>はUNIXライクな日本語拡張コマンドラインシェルで、とても軽くて、作者さんは日本人(@<a
href="http://twitter.com/zetamatta">zetamatta</a>)の方なので日本語の扱いも問題ありません。</p><ul><li><a
href="http://childs.squares.net/program/nyaos/index.html">NYAOS を使おう！</a> (ちょっと内容古いけど)</li></ul><p>キーバインドやコマンドのエイリアスなどを設定して、入力履歴を残せるを保持できるようにするだけでも十分使い勝手がよくなります。</p><ul><li><a
href="http://dangan-state.blogspot.com/2011/02/windowsnyaos_28.html">弾丸state: Windowsコマンドラインシェル「Nyaos」をもっと便利にする方法</a></li></ul><p>それに加えて、nyaos 3.xの特徴として<a
href="http://www.lua.org/">Lua</a>言語でのカスタマイズ機能あります(シェルスクリプトが書ける)</p><p>Lua拡張は_nyaのconfigファイルにもLua_eを使って書くこともできますが、拡張と設定は別ファイルに分けた方がいいと思います。(エスケープの問題とか面倒だし)</p><p>自分の場合は<a
href="https://gist.github.com/908117">_nya_git.lua</a>という感じで拡張毎のluaファイルを作成して、_nyaコンフィグファイルからsourceコマンドで読み込んで使っています。(拡張のテストするときもsourceで再度読み込めば適応されるのでデバッグしやすい)</p><div><pre id="codeSnippet" class="csharpcode">source D:\Software\nyaos\_nya_git.lua</pre></div><div><a
href="https://gist.github.com/908117">_nya_git.lua</a>の内容は名前のようにgit関係のコマンドやgitコマンドの補完を作ったものを入れています。 <br
/>gitのサブモジュールの削除が一発でできるようにgit submodule rmというコマンドを勝手に足したり、<a
href="http://d.hatena.ne.jp/wantora/20100612/1276302763">NYAOS 3000でいろんなコマンドのサブコマンドを補完する &#8211; メモ@wantora</a>にgitコマンドを追加したものなどが入っています。</div><p><a
href="http://efcl.info/wp-content/uploads/2011/05/image7.png"><img
style="background-image: none; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" src="http://efcl.info/wp-content/uploads/2011/05/image_thumb7.png" border="0" alt="image" width="240" height="149" /></a></p><p>Lua自体はコンパクトな言語で、若干JavaScriptに似てる感じもあるので調べながらやればなんとか書けるものだと思います</p><ul><li><a
href="http://www.mokehehe.com/assari/index.php?Lua">Lua &#8211; assari</a></li><li><a
href="http://handasse.blogspot.com/2010/02/lua.html">良いもの。悪いもの。: Lua基礎文法最速マスター</a>(最初これ見るといいかも)</li><li><a
href="http://efcl.info/adiary/096">WindowsでLuaの環境構築 &#8211; prog*sig</a></li></ul><p>nyaosのLua拡張の書き方は以下を参考にしました。</p><ul><li><strong>Readme.txt(</strong>nyaos_ja.txt)</li><li><a
href="http://nyaos.org/d/">MHI 3.1</a></li><li><a
href="http://d.hatena.ne.jp/wantora/searchdiary?word=%2A%5Bnyaos%5D">[nyaos] &#8211; メモ@wantora</a></li></ul><p>これで<a
href="http://sourceforge.net/projects/console/">Console2</a>+<a
href="http://www.nyaos.org/index.cgi?p=FrontPage.ja">NYAOS</a>の紹介は終わりです。</p><p>Windowsのコマンドライン環境自体はこんな感じで比較的いい感じにできると思いますが、実行できるコマンドの方が貧弱なのでそっちでVMでLinuxを使うみたいな事もあるかもしれません…(まさに自分…<a
href="http://efcl.info/2011/0420/res2588/">WindowsからVM上のLinuxをSSH経由で利用する開発環境の構築 | Web scratch</a>)</p> ]]></content:encoded> <wfw:commentRss>http://efcl.info/2011/0501/res2717/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>WindowsからVM上のLinuxをSSH経由で利用する開発環境の構築</title><link>http://efcl.info/2011/0420/res2588/</link> <comments>http://efcl.info/2011/0420/res2588/#comments</comments> <pubDate>Wed, 20 Apr 2011 14:42:07 +0000</pubDate> <dc:creator>azu</dc:creator> <category><![CDATA[インストール設定]]></category> <category><![CDATA[Git]]></category> <category><![CDATA[Node.js]]></category> <category><![CDATA[VM]]></category> <category><![CDATA[Windows]]></category> <category><![CDATA[セキュリティ]]></category> <category><![CDATA[設定]]></category> <category><![CDATA[開発環境]]></category><guid
isPermaLink="false">http://efcl.info/?p=2588</guid> <description><![CDATA[VirtualBox orVMWare PlayerでLinux環境をWindows 7&#215;64に構築するメモ 今回はVirtualBoxとTurnkey Linux coreを使って構築した。 と見せかけて、最 [...]]]></description> <content:encoded><![CDATA[<p><a
href="http://www.virtualbox.org/">VirtualBox</a> or<a
href="http://www.vmware.com/products/player/">VMWare Player</a>でLinux環境をWindows 7&#215;64に構築するメモ <br
/>今回は<a
href="http://www.virtualbox.org/">VirtualBox</a>と<a
href="http://www.turnkeylinux.org/core">Turnkey Linux core</a>を使って構築した。</p><p><strong>と見せかけて、最終的には<a
href="http://www.ubuntu.com/business/server/overview">Ubuntu Server</a>使う事にしたので途中まで飛ばしていいです。</strong></p><p>なんでVMを使ってまでやるかというと <br
/>WIndowsでのCUIは<a
href="http://sourceforge.net/projects/console/">Console</a>+<a
href="http://www.nyaos.org/">NYAOS</a>でコンソールとしていいのですが、node.jsなど実行できないものが出てきたので、VM上に環境を作ることにしました。 <br
/>Cygwin : 食わず嫌いでしたが、食ったら嫌いでした。 <br
/>coLinux : <a
href="http://colinux.wikia.com/wiki/Dashboard_for_developing_a_64_bit_coLinux">64 bit</a>が非対応でした。 <br
/> <br
/>必要なもの</p><ul><li><a
href="http://www.virtualbox.org/">VirtualBox</a>(仮想化ソフトウェア）</li><li><a
href="http://www.turnkeylinux.org/core">TurnKey Core</a>(サーバー、そこら辺の便利なソフトが入ってる感じのディストリビューション)</li><li><a
href="http://nanno.dip.jp/softlib/man/rlogin/">RLogin</a>(SSHクライアント)</li></ul><p>Turnkey Linux coreはVM向けにovf形式でも配布してるので、OVFと書かれてるリンクからturnkey-core-バージョン-lucid-x86-ovf.zipをダウンロードして使う。</p><p><a
href="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss11.png"><img
style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="2011-04-20-ss11" border="0" alt="2011-04-20-ss11" src="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss11_thumb.png" width="640" height="153" /></a></p><p>VirtualBoxを起動してメニューの仮想アプライアンスのインポートから、先ほどのovfをインポートすると自動でTurnKey Coreが仮想マシン一覧に並ぶ。(設定するのは仮想マシンの名前ぐらい）</p><p><a
href="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss8.png"><img
style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="2011-04-20-ss8" border="0" alt="2011-04-20-ss8" src="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss8_thumb.png" width="240" height="170" /></a></p><p>起動するとパスワードの設定などがあって、パスワード以外はEnter押してればいいと思う。 <br
/>設定が終わると起動して下のようなメニュー画面が表示される。</p><p><a
href="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss12.png"><img
style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="2011-04-20-ss12" border="0" alt="2011-04-20-ss12" src="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss12_thumb.png" width="240" height="209" /></a> <br
/>メニューを終了させると、CUIで操作できるけどキーやマウスの関係で扱いにくいのでSSHからアクセスして操作する。</p><p><a
href="http://nanno.dip.jp/softlib/man/rlogin/">RLogin</a>を起動して、サーバの接続から新規追加して、プロトコロルにSSH、アドレスにはLinuxサーバーのIPアドレス、ユーザーはrootで、パスワードは最初の起動時に設定したものを入力して接続する</p><p><a
href="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss13.png"><img
style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="2011-04-20-ss13" border="0" alt="2011-04-20-ss13" src="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss13_thumb.png" width="226" height="240" /></a></p><p><a
href="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss9.png"><img
style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="2011-04-20-ss9" border="0" alt="2011-04-20-ss9" src="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss9_thumb.png" width="240" height="141" /></a></p><p>こっからはサーバー{ゲスト側(Ubuntu)}の設定</p><p>まずはrootだとあんまりよくないので、ユーザー(azuという例で)を追加、そのユーザーのパスワードを設定する。</p><div><pre id="codeSnippet" class="csharpcode">root@core ~<span class="rem"># useradd -m -s /bin/bash azu</span>
<span class="rem"># ユーザーazuを追加する。mオプションがないとHOMEディレクトリが追加されなかった</span>
root@core ~<span class="rem"># ls /home/     </span>
azu/
<span class="rem"># HOMEディレクトリがあるのを確認</span>
root@core ~<span class="rem"># passwd azu</span>
<span class="rem"># パスワードの設定</span>
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully</pre></div><div>useraddの-sオプションでログインシェルを決めないとかなり不自由な感じになります。 <br
/>後からログインシェルを決める場合はchsh -s /bin/bash などとする。</div><div>と、このままTurnkey Linuxを使おうと思っていたんだけど、ファイル共有でどうしても上手くGuest Additionsのインストールが上手くできないのと、なんかroot前提なような環境で他とは少し違った感じで躓く事がありそうだったので、<a
href="http://www.ubuntu.com/business/server/overview">Ubuntu Server</a>に切り替えました。</div><div>&#160;</div><h3><a
href="http://www.ubuntu.com/business/server/overview"><strong>Ubuntu Server</strong></a><strong>を使って環境構築(改めて)</strong></h3><div>(ちょこちょログにTurnkeyが出てくるのはそのときの名残です。プロンプトの文字は無視してください)</div><div>(Turnkey Linuxの事は忘れてください)</div><div>必要なもの</div><ul><li><a
href="http://www.virtualbox.org/">VirtualBox</a>(仮想化ソフトウェア）</li><li><a
href="http://www.ubuntu.com/business/server/overview">Ubuntu Server</a> (ゲストOS)</li><li><a
href="http://nanno.dip.jp/softlib/man/rlogin/">RLogin</a>(SSHクライアント)</li></ul><div><table
border="0" cellspacing="0" cellpadding="2" width="400"><tbody><tr><td
valign="top" width="200"><p>ホストOS</p></td><td
valign="top" width="200"><p>ゲストOS</p></td></tr><tr><td
valign="top" width="200"><p>Windows 7 64bit</p></td><td
valign="top" width="200"><p>Ubuntu Server</p></td></tr></tbody></table></div><div>で環境を作っていきます。</div><div><a
href="http://www.ubuntu.com/business/server/overview">Ubuntu Server</a>のisoをダウンロードしてきて、新規仮想マシン作成から適当な配分で仮想マシンを作りますが、<strong>ネットワークをブリッジ接続</strong>に変更しないとUbuntu ServerのIPアドレスが10.0.2.25とかいう感じになってSSH接続できなかったので、ネットワークをブリッジ接続に変更して作成しました。</div><div><a
href="http://efcl.info/wp-content/uploads/2011/04/image.png"><img
style="background-image: none; border-right-width: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://efcl.info/wp-content/uploads/2011/04/image_thumb.png" width="240" height="186" /></a></div><div><strong>追記</strong>: ネットワークがNATでもポートフォワーディングすればSSH接続できました(こっちの方がいいかも)</div><div>ネットワークの設定をNATにしてから、高度の設定でポートフォワーディングにホストには任意のポート、ゲストにはUbuntu側に設定したSSHのポート番号(デフォルト22)を設定します。</div><div><a
href="http://efcl.info/wp-content/uploads/2011/04/2011-04-23-ss1.png"><img
style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="2011-04-23-ss1" border="0" alt="2011-04-23-ss1" src="http://efcl.info/wp-content/uploads/2011/04/2011-04-23-ss1_thumb.png" width="240" height="120" /></a></div><div>この状態で、RLoginに接続IPアドレスに127.0.0.1 or localhost で、ポート番号にはホストに設定したポート番号を入力すればSSH接続できます。 <br
/>任意のポートだけを開く感じで使えるのでこっちの方がいい気がします。同様の方法でWebのポートである8080もポートフォワーディングに設定しました。</div><ul><li><a
href="http://d.hatena.ne.jp/replication/20110423/1303525759">VirtualBox + CentOSでNAT接続のポートフォワーディングを行う方法 &#8211; 大人になったら肺呼吸</a></li><li><a
href="http://d.hatena.ne.jp/sdhr/20110219/1298111849">VirtualBox4.04にCentOS5.5をインストール &#8211; sdhrの日記</a></li><li><a
href="http://chocokanpan.net/archives/374">VirtualBox 4.0.2のゲストにsshで接続してみる。 « chocokanpan BLOG</a></li></ul><p>&#160;</p><div>仮想マシンを起動したUbuntu Serverのインストール画面でユーザーアカウントの作成ができるので、下のガイドに従って入力していくだけで先ほどのTurnkey Linux でのユーザーアカウント追加までと同じ事ができます。</div><ul><li><a
href="http://studio-bey.chicappa.jp/dougubako/ubuntu_server/269">どうぐばこ » ubuntu server インストール ガイド</a></li></ul><p>注意点としては<em>１８．サーバーソフトウェアの選択画面</em>でOpenSSH SERVERを選択してSSHでつなげるようにしておくと楽でいいです(スペースキーで選択チェックが入る)</p><p>忘れた場合でも</p><div><pre id="codeSnippet" class="csharpcode">sudo apt-get install openssh-server</pre></div><div>とすればいいだけなので、そこまで問題ないです。</div><div>Ubuntu Serverはそのまま使うと<a
href="http://hamamuratakuo.blog61.fc2.com/blog-entry-400.html">文字化け</a>して扱いにくいので、<a
href="http://nanno.dip.jp/softlib/man/rlogin/">RLogin</a>を使ってアクセスすれば文字化け対策をしなくてもいいので、最初から<a
href="http://nanno.dip.jp/softlib/man/rlogin/">RLogin</a>を使って作業します。<br
/>サーバのIPアドレスは</div><pre>ifconfig</pre><p>で、わかると思います。 <br
/>初期設定なら、インストール時に入力したアカウントとパスワードでログインできると思います。<strong></strong></p><p><strong> <br
/>SSHで鍵を使って接続</strong></p><p>セキュリティ的にパスワードではなく鍵でSSHをつなぐのが普通だと思うので、SSHの鍵設定をします。</p><div><pre id="codeSnippet" class="csharpcode">root@core ~<span class="rem"># cd /home/azu/</span>
<span class="rem"># ユーザのHOMEへ</span>
root@core /home/azu<span class="rem"># mkdir .ssh</span>
root@core /home/azu<span class="rem"># cd .ssh</span>
<span class="rem"># .sshディレクトリを作って移動</span>
root@core azu/.ssh<span class="rem"># ssh-keygen -t rsa</span>
<span class="rem"># 鍵を生成する</span>
Generating public/<span class="kwrd">private</span> rsa key pair.
Enter file <span class="kwrd">in</span> which to save the key (/root/.ssh/id_rsa): turnkey <span class="rem"># ファイル名は適当に</span>
Enter passphrase (empty <span class="kwrd">for</span> no passphrase): 
Enter same passphrase again: 
Your identification has been saved <span class="kwrd">in</span> turnkey.
Your public key has been saved <span class="kwrd">in</span> turnkey.pub.
root@core azu/.ssh<span class="rem"># ls</span>
turnkey  turnkey.pub
<span class="rem"># .sshディレクトリに秘密鍵と暗号鍵が生成される</span>
root@core azu/.ssh<span class="rem"># mv turnkey.pub authorized_keys</span>
<span class="rem"># turnkey.pub を authorized_keysにリネームする</span>
root@core azu/.ssh<span class="rem"># ls</span>
authorized_keys  turnkey</pre></div><div>鍵は生成して公開鍵(authorized_keys)の登録ができたので、秘密鍵をホスト側のPCに転送します。 <br
/><a
href="http://nanno.dip.jp/softlib/man/rlogin/">RLogin</a>にファイル転機能がついてるので、.sshディレクトリにある秘密鍵(turnkey)をホスト側に移動させます。<br
/>ゲスト側(Ubuntu)に秘密鍵は置いておく必要はないので、秘密鍵(turnkey)は転送したら削除します。</div><div><a
href="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss15.png"><img
style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="2011-04-20-ss15" border="0" alt="2011-04-20-ss15" src="http://efcl.info/wp-content/uploads/2011/04/2011-04-20-ss15_thumb.png" width="240" height="115" /></a></div><div>次にSSHの設定で、鍵以外でのログインはできないように/etc/ssh/sshd_configを書き換えます。</div><div
id="codeSnippetWrapper"><pre id="codeSnippet" class="csharpcode"><span class="rem"># それぞれをnoに書き換える </span>
PermitRootLogin no  
PasswordAuthentication no  
UsePAM no
# 面倒だったので一度rebootした</pre><p>自分はportも22から適当なものに変更しました。</p></div><div>後はRLoginに秘密鍵を登録してSSHログインするだけです。</div><div>SSH Identity keyに転送した秘密鍵をセットして、ポートを変えた場合はポートも任意のものに設定してから接続します。</div><ul><li><a
href="http://d.hatena.ne.jp/Fiore/20080228/1204174833">Ubuntuでsshdの設定をしてリモートから接続できるようにする &#8211; そ、そんなことないんだから！</a></li><li><a
href="http://blog.myfinder.jp/2010/09/vpsssh.html">myfinder&#8217;s blog: さくらのVPSを借りたら真っ先にやるべきssh設定</a></li></ul><div><strong>共有フォルダの設定</strong></div><div>Ubuntu Server にはGUIがないので、Guest AdditionsのインストールもCUIで行わないといけません。</div><div>ここで結構はまりました</div><ul><li><a
href="http://amis-annex.posterous.com/virtualbox-4xguest-ubuntu-server">virtualbox 4.x/Guest ubuntu-server で共有フォルダを使う &#8211; As mind is suitable&#8230;</a></li><li><a
href="http://blog.brettalton.com/2010/04/28/installing-guest-additions-in-virtualbox-for-an-ubuntu-server-guest/">Articles • brettalton.com</a></li></ul><p>が大変参考になった。</p><p>まずは適当な共有フォルダを設定しておく。</p><p><a
href="http://efcl.info/wp-content/uploads/2011/04/image1.png"><img
style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://efcl.info/wp-content/uploads/2011/04/image_thumb1.png" width="240" height="214" /></a></p><p>そして、起動してるVMのメニューにある”<em>Guest Additionsのインストール</em>”を押しておく。<br
/>何にも起きてないように見えるが、CDドライブにCDが入った感じになる。</p><pre id="codeSnippet" class="csharpcode">sudo apt-get install build-essential linux-headers-`uname -r`
sudo apt-get install xserver-xorg xserver-xorg-core
<span class="rem">#必要なものを先にインストールしておく</span>
<span class="rem">###################</span>
<span class="rem"># ここまでにGuest Additionsのインストールを押してマウントの準備が必要</span>
<span class="rem">###################</span>
mkdir /tmp/cdrom
sudo mount /dev/sr0 /tmp/cdrom
<span class="rem"># Guest Additionsのディスクをマウントする</span>
cd /tmp/cdrom
sudo bash VBoxLinuxAdditions.run  --nox11
sudo addgroup --system --quiet vboxsf
sudo usermod -a -G vboxsf azu <span class="rem"># ユーザーをvboxsfグループに加える</span>
sudo reboot
# リブート

azu@ubuntu:/media$ ls
cdrom&#160; sf_azu</pre><div>自動マウントするためにはユーザーをvboxsfグループというグループに加える必要があることに注意。 <br
/>リブートすると/media以下にsf_フォルダ名が現れてアクセスできるようになる。</div><div>大体ここまで基礎的な環境ができあがるので、後は好きなソフトを入れていく感じになると思います。(一応スナップショットをとっておきました)</div><div>Ubuntu Server + VirtualBox GUIありでメモリ使用量は45MBぐらい、VBoxHeadless.exeで画面表示なしで起動させると30MBになって結構メモリ使用量は少ない。 <br
/>VirtualBoxをタスクトレイに入れて管理するには<a
href="http://www.toptensoftware.com/VBoxHeadlessTray/">VBoxHeadlessTray</a>がおすすめ。ヘッドレスモードやシャットダウンとなどの操作もタスクトレイで行えるのでとてもいい。</div><p>ついでにNode.jsの環境も作ってみる <br
/>Node.jsは直接入れるよりもバージョン管理するツールから入れるのがいいらしいので、naveかnvmを使う事にした。<br
/><a
href="https://github.com/isaacs/nave">nave</a>は何かインストールが面倒だったので、<a
href="https://github.com/creationix/nvm">nvm</a>を使う事にした。<br
/>nvmは自動でnpmもインストールしてくれるので便利。</p><div
id="codeSnippetWrapper"><pre id="codeSnippet" class="csharpcode">azu@ubuntu:~$ sudo apt-get install build-essential libssl-dev git-core 
azu@ubuntu:~$ sudo apt-get install curl
<span class="rem"># 必要なものを先にインストールしておく</span>
azu@ubuntu:~$ git clone git://github.com/creationix/nvm.git ~/.nvm          
azu@ubuntu:~$ cd .nvm/
azu@ubuntu:~$ bash ./nvm.sh
azu@ubuntu:~$ nvm install latest
<span class="rem"># 最新のnodeをインストールする</span>
azu@ubuntu:~$ node -v           
v0.4.5</pre></div><p>毎回 bash ./nvm.sh 実行するのは手間なので。 <br
/>.bashrc を編集して、</p><div
id="codeSnippetWrapper"><pre id="codeSnippet" class="csharpcode">. ~/.node/nvm.sh
nvm use latest</pre></div><p>を書き加えておきます。</p><ul><li><a
href="http://blog.summerwind.jp/archives/1464">SummerWind &#8211; Node.jsの管理はnvmで</a></li><li><a
href="http://www.atmarkit.co.jp/fwcr/rensai2/nodejs02/01.html">naveでNode.jsのバージョン管理＆イベントループ詳説（1/3）- ＠IT</a></li><li><a
href="http://d.hatena.ne.jp/t_43z/20110304/1299222231">Amazon EC2 MicroインスタンスのAmazon LinuxにNodeをインストールした &#8211; 自分の感受性くらい</a></li></ul><p><strong>雑記</strong></p><p>VMWareはスタートアップにいろんなもの生やすし、ダウンロードも登録必要で面倒なので、VMWareよりもVirtualBoxの方が好みでした。</p><p>目標としては、<a
href="http://d.hatena.ne.jp/takuya_1st/20110214/1297688680">Cygwin Here</a>みたくWindowsのエクスプローラー上のコンテキストメニューから、SSHクライアントを開いてそのときに同時に共有フォルダのsf_azu以下にある同じフォルダまで移動したいのだけど、お客様の中でよい方法をお知りな方がいらしゃったらお願いします。<br
/>e.g)<br
/>windows : C:\Users\azu\Downloads のコンテキストメニューからSSHクライアントを開く<br
/>Ubuntu&#160;&#160; : 渡されたパスを元に /media/sf_azu/Downloads をカレントディレクトリにする</p><p>SSHクライアントのマクロみたいので実現するのかな。</p><div
style="position: absolute; width: 1px; height: 1px; overflow: hidden; top: 1680px; left: -10000px" id="_mcePaste" class="mcePaste">Turnkey Linuxの</div>]]></content:encoded> <wfw:commentRss>http://efcl.info/2011/0420/res2588/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>今使っているWebStormプラグイン</title><link>http://efcl.info/2011/0413/res2550/</link> <comments>http://efcl.info/2011/0413/res2550/#comments</comments> <pubDate>Wed, 13 Apr 2011 14:28:27 +0000</pubDate> <dc:creator>azu</dc:creator> <category><![CDATA[software]]></category> <category><![CDATA[CoffeeScript]]></category> <category><![CDATA[Git]]></category> <category><![CDATA[IDE]]></category> <category><![CDATA[WebStorm]]></category> <category><![CDATA[プラグイン]]></category> <category><![CDATA[設定]]></category><guid
isPermaLink="false">http://efcl.info/?p=2550</guid> <description><![CDATA[PHPStorm/WebStormプラグインはまだ余り数がないので拡張性はそこまで高くないのですが(JetBrains製IDEで互換性があれば良いのに)、幾つかプラグインを入れてるので紹介プラグインはSetting-&#038;g [...]]]></description> <content:encoded><![CDATA[<p>PHPStorm/WebStormプラグインはまだ余り数がないので拡張性はそこまで高くないのですが(JetBrains製IDEで互換性があれば良いのに)、幾つかプラグインを入れてるので紹介<br
/>プラグインはSetting-&gt;Pluginから検索すれば全部出ると思います</p><ul><li><a
href="http://plugins.intellij.net/plugin/?id=5970">Markdown</a><br
/>名前の通りMarkdown記法のシンタックスハイライトに対応するプラグイン。<br
/>WebStorm内でプレビューも行えるため、Githubのreadme.mdを書くときにものすごく便利<br
/>デフォルトだとFile Typeに*.mdがないため(今は入ってるかもしれない)、mdファイルを開いても有効にならないことあるので、File Typeで*.mdがを追加すると有効になる。<br
/><a
href="http://efcl.info/wp-content/uploads/2011/04/ss-2011-04-13-1.png"><img
class="alignnone size-medium wp-image-2551" title="ss-2011-04-13-1" src="http://efcl.info/wp-content/uploads/2011/04/ss-2011-04-13-1-300x199.png" alt="" width="300" height="199" /></a></li><li><a
href="http://plugins.intellij.net/plugin/?webide&amp;id=5940">FavoriteFolders</a><br
/>WebStormはJava製なためかファイルダイアログがOS標準とは違うため、目的のフォルダまで移動するのが面倒くさい。<br
/>FavoriteFoldersはファイルダイアログに任意のフォルダまでのショートカットを付けてくれるプラグイン。</li><li><a
href="http://plugins.intellij.net/plugin/?webide&amp;id=4428">Scratch</a><br
/>Alt+C, Alt+Cで一時的に何か書いておけるtxtファイルを開いてくれる。<br
/>わざわざファイルを追加するのは面倒だし、そこにファイルが残ってしまうので地味に便利</li><li><a
href="http://plugins.intellij.net/plugin/?webide&amp;id=5920">CoffeeBrew</a><br
/>CoffeeScriptに対応してくれるプラグイン<br
/>シンタックスハイライトなどは対応してるけど、補完などはできないのでちょっといまいち</li><li><a
href="http://plugins.intellij.net/plugin/?webide&amp;id=4954">Pomodoro-tm</a><br
/><a
href="http://stack3.com/old/pomodoro_technique.html">Pomodoro Technique</a>的なタイマープラグイン。<br
/>25分タイマーで計って5分Breakタイムのような設定ができるぐらいで普通のタイマーと変わらないです。<br
/>時間忘れていじってしまうのを防止<br
/><div
id="attachment_2552" class="wp-caption alignnone" style="width: 310px"><a
href="http://efcl.info/wp-content/uploads/2011/04/ss-2011-04-13-2.png"><img
class="size-medium wp-image-2552" title="ss-2011-04-13-2" src="http://efcl.info/wp-content/uploads/2011/04/ss-2011-04-13-2-300x182.png" alt="" width="300" height="182" /></a><p
class="wp-caption-text">設定画面</p></div></li></ul><p>今のところこれぐらいです。　(あまり数がないのもあるけど)デフォルトでもかなり機能的に優秀なのでそこまで不便はしないですね。</p><p>おまけ</p><p><a
href="http://www.jetbrains.com/webstorm/buy/"><img
class="alignnone size-full wp-image-2554" title="WS_SpringOffer_2" src="http://efcl.info/wp-content/uploads/2011/04/WS_SpringOffer_2.jpg" alt="" width="210" height="180" /></a></p><p>WebStormが今春のキャンペーン中で半額で購入できるようになってるみたいです。(今回は他のIDEはなってなかった)<br
/>是非この機会に触ってみるといいかもしれません。</p><dl><dt><strong>WebStorm &amp; PhpStorm Blog » Blog Archive » 50% OFF personal WebStorm licensesi</strong></dt><dd><a
title="WebStorm &amp; PhpStorm Blog » Blog Archive » 50% OFF personal WebStorm licenses" href="http://blogs.jetbrains.com/webide/2011/04/50-off-on-personal-webstorm-licenses/">http://blogs.jetbrains.com/webide/2011/04/50-off-on-personal-webstorm-licenses/</a></dd></dl><div
id="_mcePaste" class="mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">JetBrains</div> ]]></content:encoded> <wfw:commentRss>http://efcl.info/2011/0413/res2550/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>WindowsでV8 JavaScriptエンジンをコンパイルする</title><link>http://efcl.info/2011/0329/res2449/</link> <comments>http://efcl.info/2011/0329/res2449/#comments</comments> <pubDate>Tue, 29 Mar 2011 11:11:52 +0000</pubDate> <dc:creator>azu</dc:creator> <category><![CDATA[javascript]]></category> <category><![CDATA[Git]]></category> <category><![CDATA[python]]></category> <category><![CDATA[vista]]></category> <category><![CDATA[Windows]]></category> <category><![CDATA[ソフトウェア]]></category><guid
isPermaLink="false">http://efcl.info/?p=2449</guid> <description><![CDATA[Windows VistaでV8を使いたかったのでビルドしたときのメモ 準備編 Pythonをインストール(ActivePythonでもいいけど) SConsをインストール(PythonのMakeみたいなものらしい) V [...]]]></description> <content:encoded><![CDATA[<p>Windows Vistaで<a
href="http://code.google.com/p/v8/">V8</a>を使いたかったのでビルドしたときのメモ</p><p>準備編</p><ol><li><a
href="http://www.python.org/">Python</a>をインストール(<a
href="http://www.activestate.com/activepython">ActivePython</a>でもいいけど)</li><li><a
href="http://www.scons.org/">SCons</a>をインストール(PythonのMakeみたいなものらしい)</li><li><a
href="https://www.microsoft.com/express/Downloads/#2010-Visual-CPP">Visual C++ 2010 Express</a>をインストール(本当はSConsだけでもいいけど、必要な<a
href="http://msdn.microsoft.com/ja-jp/windows/bb980924.aspx">Windows SDK</a>が内蔵されてるので楽)</li><li>git か svnがあるとV8のダウンロードが楽</li></ol><p>実践編<br
/>(X / _ / X &lt;は$みたいなプロンプトです)<br
/>バージョンの確認コマンドも打ってますが、<a
href="http://code.google.com/intl/ja/apis/v8/build.html">How to Download and Build V8 &#8211; V8 JavaScript Engine &#8211; Google Code</a>でソフトウェアの必要なバージョンが載っています。</p><p>多くの例ではsvnで</p><pre>svn checkout http://v8.googlecode.com/svn/trunk/ v8</pre><p>としてv8をダウンロードしているみたいですが、githubに公式ミラーがあるので今回はそれを利用しました。</p><ul><li><a
href="https://github.com/v8/v8">v8/v8 &#8211; GitHub</a></li></ul><pre>X / _ / X &#60; git clone git://github.com/v8/v8.git v8
Initialized empty Git repository in D:/Software/v8/.git/
remote: Counting objects: 53075, done.
remote: Compressing objects: 100% (7672/7672), done.
remote: Total 53075 (delta 46205), reused 51859 (delta 45179)
Receiving objects: 100% (53075/53075), 25.18 MiB | 749 KiB/s, done.
Resolving deltas: 100% (46205/46205), done.
Checking out files: 100% (1426/1426), done.
X / _ / X &#60; python -V
Python 2.6.4
X / _ / X &#60; scons --version
SCons by Steven Knight et al.:
 engine: v2.0.1.r5134, 2010/08/16 23:02:40, by bdeegan on cooldog
Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 The SCons Foundation</pre><p>ここまでで準備は終わり、次はビルドとテスト<br
/>sconsの引数はよく分からなかったので<a
href="http://code.google.com/intl/ja/apis/v8/build.html#build">Build</a>を見てscons d8としました。</p><pre>X / _ / X &#60; cd v8
X / _ / X &#60; scons d8
#ビルド
X / _ / X &#60; tools\test.py
#テスト
&#91;13:26|% 100|+ 4599|-   3&#93;: Done
</pre><p>特に環境パスの引数なしでも通ったのでシンプルにしていますが、手動でパスを通す場合は大変なので&#8221;C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat&#8221;などのbatファイルを使うとよいかもしれないです。</p><ul><li><a
href="http://d.hatena.ne.jp/hiront_at_nagoya/20080913/1221303731">v8をビルドしてみました &#8211; とりあえずメモメモ。</a></li><li><a
href="http://evadeflow.com/2011/03/compiling-v8-on-windows-7/">Compiling v8 on Windows 7</a></li><li><a
href="http://code.google.com/p/v8/wiki/BuildingOnWindows">BuildingOnWindows &#8211; v8 &#8211; Detailed instructions for building V8 on Windows. &#8211; V8 JavaScript Engine &#8211; Google Project Hosting</a></li></ul><p>最後にベンチマークを取ってみて終了</p><pre>X / _ / X &#60; cd benchmarks\
X / _ / X &#60; ../d8 run.js
Richards: 7311
DeltaBlue: 9098
Crypto: 8762
RayTrace: 6707
EarleyBoyer: 12664
RegExp: 1440
Splay: 2193
----
Score (version 6): 5521</pre><p>これで、Windows上で使えるV8(d8)のバイナリ作成ができたので終わり<br
/>毎回d8.exeまでのパスを入力するのは大変なので、バイナリの場所まで<a
href="http://www.forest.impress.co.jp/lib/sys/wincust/registry/redmondpath.html">Redmond Path</a>を使ってパスを通しています。</p> ]]></content:encoded> <wfw:commentRss>http://efcl.info/2011/0329/res2449/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>BPStudy#41のアウトラインメモ</title><link>http://efcl.info/2011/0130/res2258/</link> <comments>http://efcl.info/2011/0130/res2258/#comments</comments> <pubDate>Sat, 29 Jan 2011 17:02:00 +0000</pubDate> <dc:creator>azu</dc:creator> <category><![CDATA[javascript]]></category> <category><![CDATA[イベント]]></category> <category><![CDATA[Git]]></category> <category><![CDATA[アウトライン]]></category><guid
isPermaLink="false">http://efcl.info/?p=2258</guid> <description><![CDATA[BPStudy#41に参加してきたのでメモってた内容。 TwitterはTogetter &#8211; 「BPStudy#41 まとめ」にまとまっています。 ^文殊堂 第一部 &#8211; RequireJSとeve [...]]]></description> <content:encoded><![CDATA[<p><a
title="BPStudy#41 : ATND" href="http://atnd.org/events/11755">BPStudy#41</a>に参加してきたのでメモってた内容。<br
/> Twitterは<a
title="Togetter - 「BPStudy#41 まとめ」" href="http://togetter.com/li/94663">Togetter &#8211; 「BPStudy#41 まとめ」</a>にまとまっています。</p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">^</span><span
style="font-family: &amp;amp;amp;" lang="ja">文殊堂</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-weight: bold; font-family: &amp;amp;amp;" lang="ja">第一部</span><span
style="font-weight: bold; font-family: Verdana;" lang="en-US"> &#8211; RequireJS</span><span
style="font-weight: bold; font-family: &amp;amp;amp;" lang="ja">と</span><span
style="font-weight: bold; font-family: Verdana;" lang="en-US">event</span><span
style="font-weight: bold; font-family: &amp;amp;amp;" lang="ja">と</span><span
style="font-weight: bold; font-family: Verdana;" lang="en-US">UI</span><span
style="font-weight: bold; font-family: &amp;amp;amp;" lang="ja">コンポーネント</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-weight: bold;" lang="ja"> </span></p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;"><a
href="http://d.hatena.ne.jp/monjudoh/20110128/1296205331">BPStudy#41 RequireJSとeventとUIコンポーネント &#8211; 文殊堂</a></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">RequireJS</span><span
style="font-family: &amp;amp;amp;" lang="ja">実践編</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">jQuery </span><span
style="font-family: &amp;amp;amp;" lang="ja">カスタムイベント応用編</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">粗結合の</span><span
style="font-family: Verdana;" lang="en-US">UI</span><span
style="font-family: &amp;amp;amp;" lang="ja">コンポーネントの作成について</span></p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;"> </p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-weight: bold; font-family: Verdana;" lang="en-US">RequireJS</span><span
style="font-weight: bold; font-family: &amp;amp;amp;" lang="ja">実践編</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">RequireJS</span><span
style="font-family: &amp;amp;amp;" lang="ja">とは何か</span><span
style="font-family: Verdana;" lang="en-US">?</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">AMD</span><span
style="font-family: &amp;amp;amp;" lang="ja">のブラウザ向けの実装</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">RequireJS module</span><span
style="font-family: &amp;amp;amp;" lang="ja">について</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">define</span><span
style="font-family: &amp;amp;amp;" lang="ja">でモジュールを定義する。</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">require</span><span
style="font-family: &amp;amp;amp;" lang="ja">は</span><span
style="font-family: Verdana;" lang="en-US">main</span><span
style="font-family: &amp;amp;amp;" lang="ja">関数みたいなもの。</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">define &#8211; </span><span
style="font-family: &amp;amp;amp;" lang="ja">第一引数に依存してるモジュール、第二引数に中身<br
/> </span><span
style="font-family: Verdana;" lang="en-US">(</span><span
style="font-family: &amp;amp;amp;" lang="ja">第一引数に関数オブジェクトを渡すと関数の返値になってしまう</span><span
style="font-family: Verdana;" lang="en-US">)</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">module</span><span
style="font-family: &amp;amp;amp;" lang="ja">の用途</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">関数を返す</span><span
style="font-family: Verdana;" lang="en-US">module</span><span
style="font-family: &amp;amp;amp;" lang="ja">を定義すれば、関数として使える</span><span
style="font-family: Verdana;" lang="en-US">module</span><span
style="font-family: &amp;amp;amp;" lang="ja">が作れる。</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">副作用<br
/> </span><span
style="font-family: Verdana;" lang="en-US"><span> </span></span><span
style="font-family: &amp;amp;amp;" lang="ja">何も返さない</span><span
style="font-family: Verdana;" lang="en-US">module</span><span
style="font-family: &amp;amp;amp;" lang="ja">も有効利用できる</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">jQuery</span><span
style="font-family: &amp;amp;amp;" lang="ja">を</span><span
style="font-family: Verdana;" lang="en-US">extend</span><span
style="font-family: &amp;amp;amp;" lang="ja">してる</span><span
style="font-family: Verdana;" lang="en-US">module</span><span
style="font-family: &amp;amp;amp;" lang="ja">を作れば、</span><span
style="font-family: Verdana;" lang="en-US">require</span><span
style="font-family: &amp;amp;amp;" lang="ja">したときにその拡張してるという保証が存在するため有用になる。</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">RequireJS</span><span
style="font-family: &amp;amp;amp;" lang="ja">本体の前に</span><span
style="font-family: Verdana;" lang="en-US">require</span><span
style="font-family: &amp;amp;amp;" lang="ja">というグローバル変数があると、</span><span
style="font-family: Verdana;" lang="en-US">RequireJS</span><span
style="font-family: &amp;amp;amp;" lang="ja">の設定として認識される</span></p><p
style="margin: 0in 0in 0in 0.375in; font-family: Verdana; font-size: 10pt;" lang="en-US">baseurl</p><p
style="margin: 0in 0in 0in 0.75in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">module</span><span
style="font-family: &amp;amp;amp;" lang="ja">名は</span><span
style="font-family: Verdana;" lang="en-US">path</span><span
style="font-family: &amp;amp;amp;" lang="ja">から拡張子をのぞいたものだけど、</span><span
style="font-family: Verdana;" lang="en-US">path</span><span
style="font-family: &amp;amp;amp;" lang="ja">の基底を変更できる</span></p><p
style="margin: 0in 0in 0in 0.375in; font-family: Verdana; font-size: 10pt;" lang="en-US">paths</p><p
style="margin: 0in 0in 0in 0.75in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">path</span><span
style="font-family: &amp;amp;amp;" lang="ja">を探す場所を</span><span
style="font-family: Verdana;" lang="en-US">key-value</span><span
style="font-family: &amp;amp;amp;" lang="ja">で決められる</span></p><p
style="margin: 0in 0in 0in 0.375in; font-family: Verdana; font-size: 10pt;" lang="en-US">urlArgs</p><p
style="margin: 0in 0in 0in 0.75in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">読み込む</span><span
style="font-family: Verdana;" lang="en-US">js</span><span
style="font-family: &amp;amp;amp;" lang="ja">ファイルに指定したパラメーターをつけることができる。</span><span
style="font-family: Verdana;" lang="en-US">(</span><span
style="font-family: &amp;amp;amp;" lang="ja">キャッシュ対策</span><span
style="font-family: Verdana;" lang="en-US">)</span></p><p
style="margin: 0in 0in 0in 0.375in; font-family: Verdana; font-size: 10pt;" lang="en-US">deps</p><p
style="margin: 0in 0in 0in 0.75in; font-family: &amp;amp;amp; font-size: 10pt;">最初から読み込んでおきたいファイルを決めておける</p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;" lang="en-US">text plugin</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">文字列として取得できる<br
/> テンプレート的な利用</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;"> </p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-weight: bold; font-family: Verdana;" lang="en-US">jQuery </span><span
style="font-weight: bold; font-family: &amp;amp;amp;" lang="ja">カスタムイベント応用編</span></p><p
style="margin: 0in; font-family: &amp;amp;amp; font-size: 10pt;">カスタムイベントはブラウザ定義ではなく独自定義のイベント</p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">jQuery</span><span
style="font-family: &amp;amp;amp;" lang="ja">は</span><span
style="font-family: Verdana;" lang="en-US">trigger,triggerHandler</span><span
style="font-family: &amp;amp;amp;" lang="ja">などで、イベントの発火ができる</span><span
style="font-family: Verdana;" lang="en-US">(dispatch event)</span></p><p
style="margin: 0in; font-family: &amp;amp;amp; font-size: 10pt;">カスタムイベントは豊かな表現が行える</p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">jQuery</span><span
style="font-family: &amp;amp;amp;" lang="ja">は</span><span
style="font-family: Verdana;" lang="en-US">bind</span><span
style="font-family: &amp;amp;amp;" lang="ja">でイベント名とイベントハンドラをくっつける</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">triger</span><span
style="font-family: &amp;amp;amp;" lang="ja">の第二引数に配列を渡すと展開されて渡した状態でイベントハンドラを実行する</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">data(&#8220;</span><span
style="font-family: &amp;amp;amp;" lang="ja">属性</span><span
style="font-family: Verdana;" lang="en-US">&#8221; , &#8220;</span><span
style="font-family: &amp;amp;amp;" lang="ja">値</span><span
style="font-family: Verdana;" lang="en-US">&#8220;)</span><span
style="font-family: &amp;amp;amp;" lang="ja">をつけられる</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">イベントハンドラの</span><span
style="font-family: Verdana;" lang="en-US">$(this)==evt.target</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">カスタムイベントで</span><span
style="font-family: Verdana;" lang="en-US">Class</span><span
style="font-family: &amp;amp;amp;" lang="ja">を定義する</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">live</span><span
style="font-family: &amp;amp;amp;" lang="ja">を利用する。<br
/> </span><span
style="font-family: Verdana;" lang="en-US">live</span><span
style="font-family: &amp;amp;amp;" lang="ja">は要素ではなくて、</span><span
style="font-family: Verdana;" lang="en-US">CSS</span><span
style="font-family: &amp;amp;amp;" lang="ja">セレクタに紐づけることができる。</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">カスタムイベントで</span><span
style="font-family: Verdana;" lang="en-US">mixin</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">live</span><span
style="font-family: &amp;amp;amp;" lang="ja">を使ってるので、</span><span
style="font-family: Verdana;" lang="en-US">class</span><span
style="font-family: &amp;amp;amp;" lang="ja">を追加するとメソッドを生える</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">カスタムイベントで</span><span
style="font-family: Verdana;" lang="en-US">callback</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">live</span><span
style="font-family: &amp;amp;amp;" lang="ja">を登録して、</span><span
style="font-family: Verdana;" lang="en-US">callback</span><span
style="font-family: &amp;amp;amp;" lang="ja">を</span><span
style="font-family: Verdana;" lang="en-US">call</span><span
style="font-family: &amp;amp;amp;" lang="ja">する代わりに</span><span
style="font-family: Verdana;" lang="en-US">tirger</span><span
style="font-family: &amp;amp;amp;" lang="ja">でイベントを発火させる。</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">カスタムイベントで</span><span
style="font-family: Verdana;" lang="en-US">mixout</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">class</span><span
style="font-family: &amp;amp;amp;" lang="ja">を追加することで</span><span
style="font-family: Verdana;" lang="en-US">mixin</span><span
style="font-family: &amp;amp;amp;" lang="ja">になるため、</span><span
style="font-family: Verdana;" lang="en-US">class</span><span
style="font-family: &amp;amp;amp;" lang="ja">を除去すれば</span><span
style="font-family: Verdana;" lang="en-US">mixout</span><span
style="font-family: &amp;amp;amp;" lang="ja">できる。</span></p><p
style="margin: 0in; font-family: &amp;amp;amp; font-size: 10pt;">カスタムイベントで同名の関数を呼び出す</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">存在しない関数も呼んで大丈夫</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">好きなだけ定義できる</p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;"> </p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-weight: bold; font-family: &amp;amp;amp;" lang="ja">第二部</span><span
style="font-weight: bold; font-family: Verdana;" lang="en-US"> </span></p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;"><span
style="font-weight: bold;" lang="ja">マスタリング非同期読み込み</span><span
style="font-weight: bold;" lang="en-US"> &#8211; os0x</span></p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;"><a
href="http://ss-o.net/event/js20110128/">マスタリング非同期読み込み BPStudy#41</a></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">Twitter</span><span
style="font-family: &amp;amp;amp;" lang="ja">でも非同期処理やってるけど、本文が表示されるのが最後なので遅い感じがする。</span></p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;" lang="en-US">LAB.js</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">部分的な導入が難しい。<br
/> 全体を書き換える必要がある。</p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;" lang="en-US">ControllJS</p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;">&lt;script type=&#8221;text/cjs&#8221;&gt;&lt;/script&gt;としてtypeを変えて読み込</span><span
style="font-family: &amp;amp;amp;">む。</span></p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">Controll</span><span
style="font-family: &amp;amp;amp;" lang="ja">側で評価する</span></p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;" lang="en-US">RequireJS</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">依存がネストすると非同期にできない。</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">依存関係が複雑だと、読み込み待ちが発生する。</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">解決方法として、テキストとして読み込んでおいて評価する。とか</p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;" lang="en-US">whatwgのwikiにいろいろな手法が乗っている。</p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;" lang="en-US"> </p><p
style="margin: 0in; font-family: &amp;amp;amp; font-size: 10pt;"><span
style="font-weight: bold;">第三部</span></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-weight: bold; font-family: Verdana;" lang="en-US">git</span><span
style="font-weight: bold; font-family: &amp;amp;amp;" lang="ja">の歴史改変について</span><span
style="font-weight: bold; font-family: Verdana;" lang="en-US"> &#8211; </span><span
style="font-weight: bold; font-family: &amp;amp;amp;" lang="ja">神速</span></p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;"><a
href="http://d.hatena.ne.jp/sinsoku/20110130/1296317041?utm_source=twitterfeed&amp;utm_medium=twitter">BPStudy#41で発表しました #bpstudy &#8211; アジャイルSEを目指すブログ</a></p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">分散</span><span
style="font-family: Verdana;" lang="en-US">SCM</span><span
style="font-family: &amp;amp;amp;" lang="ja">の基本的なこと</span></p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">ネットワーク環境がなくても作業できる</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">誰かが壊しても問題ない</p><p
style="margin: 0in; font-family: &amp;amp;amp; font-size: 10pt;">歴史改変でできること</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">不要な変更のコミット修正</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">コミットメッセージの修正</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">作業途中のコミット</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">適当なコミットを行える</p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;" lang="en-US">git add -p</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">部分変更を記録するコマンド</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">対話式で部分コミットを行える</p><p
style="margin: 0in; font-family: Verdana; font-size: 10pt;" lang="en-US">git rebase -I</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">コミットの変更、結合、削除とか</p><p
style="margin: 0in; font-family: &amp;amp;amp; font-size: 10pt;">歴史改変の実践編</p><p
style="margin: 0in 0in 0in 0.375in; font-size: 10pt;"><span
style="font-family: Verdana;" lang="en-US">bisect </span><span
style="font-family: &amp;amp;amp;" lang="ja">テストが失敗してるところを２分探索するコマンド</span></p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">ﾃﾞﾓ</p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">間違いを打ち消す</span><span
style="font-family: Verdana;" lang="en-US"> git revert</span></p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">過去のコミットを打ち消す</p><p
style="margin: 0in; font-size: 10pt;"><span
style="font-family: &amp;amp;amp;" lang="ja">改変世界からの復帰</span><span
style="font-family: Verdana;" lang="en-US"> &#8211; reflog</span></p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">コミットを移動させたり</p><p
style="margin: 0in; font-family: &amp;amp;amp; font-size: 10pt;">歴史を変えてはいけないコミット</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">人のは変えてはいけない</p><p
style="margin: 0in 0in 0in 0.375in; font-family: &amp;amp;amp; font-size: 10pt;">自分の黒歴史だけ</p><p><strong>感想</strong></p><p>椅子オンリーだったので、膝上PCつらい。<br
/> 途中で<a
href="http://twitter.com/azu_re/statuses/30948258725494784">キーボードがトラブった</a>。<br
/> カスタムイベントは何か冗長だけど、今後よく使う方向になりそうな予感がするのでいろんな使い方がでてきそう。<br
/> また機会があったら参加したいですね。</p>]]></content:encoded> <wfw:commentRss>http://efcl.info/2011/0130/res2258/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Node.jsで動作するHTML5+JavaScript製のIDE「Cloud9」</title><link>http://efcl.info/2010/0926/res1960/</link> <comments>http://efcl.info/2010/0926/res1960/#comments</comments> <pubDate>Sun, 26 Sep 2010 08:29:04 +0000</pubDate> <dc:creator>azu</dc:creator> <category><![CDATA[javascript]]></category> <category><![CDATA[Git]]></category> <category><![CDATA[IDE]]></category> <category><![CDATA[Node.js]]></category><guid
isPermaLink="false">http://efcl.info/?p=1960</guid> <description><![CDATA[Node.jsで動作しブラウザから使用できるJavaScript IDEである「Cloud9 IDE」 alpha版が公開されました。ブラウザから使用できるので、クラウドとかありきたりな名前が付いてる気がします。(+Pl [...]]]></description> <content:encoded><![CDATA[<p>Node.jsで動作しブラウザから使用できるJavaScript IDEである「<a
href="http://www.cloud9ide.com/">Cloud9 IDE</a>」 alpha版が公開されました。<br
/>ブラウザから使用できるので、クラウドとかありきたりな名前が付いてる気がします。(+Plan9?)<br
/>Win/Linux/Macで動作するようです。</p><h3>インストール方法(Windows)</h3><p>詳しい使い方は<a
href="http://github.com/ajaxorg/cloud9">ajaxorg&#8217;s cloud9 at master &#8211; GitHub</a>に書いてあるので読むといいです。<br
/>まずはダウンロードですが、githubではzipでソースをダウンロードできますが、それではなくgit cloneしてダウンロードする必要があるみたいです。<br
/>というわけで、gitをインストールした状態でコマンドプロンプトから</p><pre>$ git clone git://github.com/ajaxorg/cloud9.git
</pre><p>するとcloud9のディレクトリができるので、binフォルダに入っている<strong>cloud9-win32.bat</strong>を実行すると必要なファイルをどんどんダウンロードしてくれます。(インストーラーみたいで面白い)<br
/>ダウンロードが終わってもう一度cloud9-win32.batを実行すると <a
href="http://localhost:3000">http://localhost:3000</a> にアクセスするように促されるので、FirefoxやChromeなどでhttp://localhost:3000にアクセスすればCloud9 IDEが使用できます。(別途にNode.jsをインストールしてなくても動作した)</p><p><a
href="http://efcl.info/wp-content/uploads/2010/09/4131eae1696573feef9fe1e72bf86c80.png"></a><a
href="http://efcl.info/wp-content/uploads/2010/09/4131eae1696573feef9fe1e72bf86c80.png"><img
class="alignnone size-medium wp-image-1961" title="4131eae1696573feef9fe1e72bf86c80" src="http://efcl.info/wp-content/uploads/2010/09/4131eae1696573feef9fe1e72bf86c80-300x221.png" alt="" width="300" height="221" /></a></p><p>まだα版なので、ファイル管理とエディタとコンソールぐらいしかありませんが、ブラウザ上でこういうものが動いてるのは面白いです。エディタはBespinとかと同じく日本語入力が残念仕様です。<br
/>最近Bespinは<span
id="text25572274759" class="status">Skywriterというプロジェクトへと移行したので、そのうちエディタに変化が起きるかも知れませんね。<br
/>入力したコードはNode.js上で実行されてるような気がします。JavaScriptを書いてその場で実行やデバッグができるのは普通のIDEとしてはよくありますが、JavaScriptなIDEとしては面白いですね。</span></p><p><span
class="status">通常のソフトウェアとしてのJavaScript IDEを使いたい人は</span><a
href="http://efcl.info/2010/0920/res1952/">JavaScript対応のIDEをまとめてみた | Web scratch</a>を参照するとよいと思います。(今<a
href="http://www.jetbrains.com/webstorm/index.html">WebStorm</a>凄いよ状態でいろいろ試しています)</p><div
id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;"><a
href="http://www.cloud9ide.com/">Cloud9 IDE &#8211; Ajax.org</a></div> ]]></content:encoded> <wfw:commentRss>http://efcl.info/2010/0926/res1960/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>gistへGreasemonkeyを貼るときに自動でファイル名を入力するスクリプト</title><link>http://efcl.info/2010/0320/res1614/</link> <comments>http://efcl.info/2010/0320/res1614/#comments</comments> <pubDate>Sat, 20 Mar 2010 14:31:57 +0000</pubDate> <dc:creator>azu</dc:creator> <category><![CDATA[Greasemonkey]]></category> <category><![CDATA[Git]]></category><guid
isPermaLink="false">http://efcl.info/?p=1614</guid> <description><![CDATA[GistにGreasemonkeyスクリプトをペーストする時に、自動でファイル名を入力してくれるGreasemonkeyを書きました。 入力されるファイル名は@nameの要素+.user.jsとなるので、コードをペースト [...]]]></description> <content:encoded><![CDATA[<p><a
href="http://gist.github.com/">Gist</a>にGreasemonkeyスクリプトをペーストする時に、自動でファイル名を入力してくれるGreasemonkeyを書きました。<br
/> 入力されるファイル名は@nameの要素+.user.jsとなるので、コードをペーストするだけでRawからインストールできるようになります。</p><pre id="source">// @name           gist fill in fileName automatically</pre><p>という感じで書いてあったなら、gist fill in fileName automatically.user.jsというファイル名が勝手に入力されます。</p><p>Add another file…で追加したテキストエリアにも対応させてあります。</p><p><a
href="http://efcl.info/wp-content/uploads/2010/03/sshot-2010-03-20-1.png"><img
class="aligncenter size-medium wp-image-1615" title="sshot-2010-03-20-1" src="http://efcl.info/wp-content/uploads/2010/03/sshot-2010-03-20-1-300x226.png" alt="" width="300" height="226" /></a></p><ul><li><a
href="http://userscripts.org/scripts/show/71914">gist fill in fileName automatically</a></li></ul><p>gistのトップページ( http://gist.github.com/ ) <span
style="text-decoration: line-through;">と編集ページ</span>で動作します。</p><dl><dt><strong>gist fill in fileName automatically for Greasemonkey</strong></dt><dd><a
title="gist fill in fileName automatically for Greasemonkey" href="http://userscripts.org/scripts/show/71914">http://userscripts.org/scripts/show/71914</a></dd></dl><p><span
id="more-1614"></span><strong>技術的な動作<br
/> </strong></p><pre class="brush:javascript;">var fileExtension = ".user.js";
var addAutoEvent = function(fileID){
    var editArea = document.getElementsByName("file_contents&#91;gistfile"+fileID+"&#93;")&#91;0&#93;;
    var editFileName = document.getElementsByName("file_name&#91;gistfile"+fileID+"&#93;")&#91;0&#93;;
    editArea.addEventListener("paste", function(e){
        // この瞬間はまだtargetのvalueが空である。
        var obj = e.target;
        obj.addEventListener('input', function(evt){
            // クリップボードの内容がinputされた
            evt.currentTarget.removeEventListener(evt.type, arguments.callee, false);
            var pasteValue = obj.value;
            var m = pasteValue.match(/@name\s+(&#91;\w\s&#93;+)\n/i);
                m = m &amp;&amp; m&#91;1&#93;;
            if(m &amp;&amp; !editFileName.value){
               m = m.replace(/\s+$/ , "");
               // m = m.replace(" " , "_" , "g");// 第３引数 繰り返し
               editFileName.value = m + fileExtension;
               // console.log(m + fileExtension);
               editFileName.focus();
            }
        }, false);
    }, false);
};
// 追加されたテキストエリアにもイベントをつける
var addButton = document.getElementById("add-gist");
addButton.addEventListener("click",function(){
    document.getElementById("files").addEventListener("DOMNodeInserted",function(e) {
        // テキストエリアが追加された         
        e.currentTarget.removeEventListener(e.type, arguments.callee, false);
        var editAreaLength = document.getElementsByClassName("file").length;
        addAutoEvent(editAreaLength);
    } ,false);
}  ,false);
// 最初から表示されているテキストエリアにイベントをつける
addAutoEvent(1);</pre><p><a
href="http://twitter.com/Griever2">Griever</a>さんが書いてくれた<a
href="http://twitter.com/Griever2/statuses/10767886150">ヒント</a>を元にしてます。</p><pre>addEventListener("paste" , ...);
</pre><p>でペーストに対してイベントリスナーを付け加えることができるのですが、この瞬間に</p><pre>e.target.value
</pre><p>としても内容は空(もしくは元からそこに書いてあったもの)となり、期待するテキストエリアの文字列は取得できません。<br
/> なので、pasteのイベントリスナー内で</p><pre>    editArea.addEventListener("paste", function(e){
        // この瞬間はまだtargetのvalueが空である。
        var obj = e.target;
        obj.addEventListener('input', function(evt){...

</pre><p>のように、inputイベントをつけると、実際に文字列がテキストエリアに入った瞬間にinputイベントが動くので、<br
/> inputイベント内で</p><pre>obj.value
</pre><p>を見るととテキストエリア内の文字列が取得できます。<br
/> (ペーストされた部分のみを扱いたい場合は<a
href="http://gist.github.com/338606">gist: 338606 &#8211; GitHub</a>を参考に)<br
/> 後は、inputのイベントはそのまま残っているとジャマなので自身を参照してremoveEventListenerしておいて、やりたかったことをやる。</p><p>追加されたテキストエリアにもイベントを加えるのもほとんど同じ形をしています。<br
/> まず、addボタンに対してclickイベント付け加えます。<br
/> gistでは元々addボタンに対してclickイベントがつけられていて、複数のclickイベントがあったときはつけられた順に実行されるので、元々あったclickイベント→Greasemonkeyでつけたclickイベントの順に実行される。<br
/> しかし、元々あったclickイベントではxmlhttprequestを使って非同期にテキストエリアを追加しているので、<br
/> テキストエリアを追加(gist側)→テキストエリアにイベントをつける(Greasemonkey) ということをやりたい場合にテキストエリアが追加されるまで待たないといけません。<br
/> JavaScriptではそういうときにsetIntervalで回したり、watch(IEでは動かない)でプロパティを監視したりできると思いますが、<br
/> 今回は<a
href="https://developer.mozilla.org/ja/DOM_Events#DOMNodeInserted">DOMNodeInserted</a>を使ってDOMに要素が追加されたら発火するイベントをつけることにした。</p><pre>var addButton = document.getElementById("add-gist");
addButton.addEventListener("click",function(){
    document.getElementById("files").addEventListener("DOMNodeInserted",function(e) { ...
</pre><p>#files 要素内に新しいテキストエリアが追加されると、DOMNodeInsertedイベントが発火するので、非同期で追加されたテキストエリアに関しても、最初に作成したpasteイベントをつけることができる。<br
/> この時に前と同様にDOMNodeInserted内で自分自身をremoveEventListenerしておく。<br
/> DOMNodeInsertedとかドキュメントがあんまり見当たらない。</p><dl><dt><strong>DOMNodeInserted event JavaScript</strong></dt><dd><a
title="DOMNodeInserted event JavaScript" href="http://help.dottoro.com/ljmcxjla.php">http://help.dottoro.com/ljmcxjla.php</a></dd></dl><dl><dt><strong>DOM Mutation Events は非同期にして使おう &#8211; JavaScriptで遊ぶよ &#8211; g:javascript</strong></dt><dd><a
title="DOM Mutation Events は非同期にして使おう - JavaScriptで遊ぶよ - g:javascript" href="http://javascript.g.hatena.ne.jp/edvakf/20100204/1265312155">http://javascript.g.hatena.ne.jp/edvakf/20100204/1265312155</a></dd></dl><p>偶然にもpaste→input、click→DOMNodeInsertedという感じで両方とも、イベントリスナー内でaddEventListenerという形になった。<br
/> 以上</p>]]></content:encoded> <wfw:commentRss>http://efcl.info/2010/0320/res1614/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Gitでレポジトリのclone</title><link>http://efcl.info/2009/1010/res1334/</link> <comments>http://efcl.info/2009/1010/res1334/#comments</comments> <pubDate>Sat, 10 Oct 2009 13:00:57 +0000</pubDate> <dc:creator>azu</dc:creator> <category><![CDATA[webサービス]]></category> <category><![CDATA[Git]]></category> <category><![CDATA[設定]]></category><guid
isPermaLink="false">http://efcl.info/?p=1334</guid> <description><![CDATA[前回Gitを導入できたのでどのように使うのかをメモっておく。 Gitを始めるまでにやったことのまとめ &#124; Web scratch http://efcl.info/2009/0919/res1311/ レポジトリのclo [...]]]></description> <content:encoded><![CDATA[<p>前回Gitを導入できたのでどのように使うのかをメモっておく。</p><dl><dt><strong>Gitを始めるまでにやったことのまとめ | Web scratch</strong></dt><dd><a
title="Gitを始めるまでにやったことのまとめ | Web scratch" href="../2009/0919/res1311/">http://efcl.info/2009/0919/res1311/</a></dd></dl><h3>レポジトリのclone</h3><dl><dt><strong>gitでforkなどを経験してみた(またはwassr2twitterを導入) &#8211; ただのにっき(2009-05-14)</strong></dt><dd><a
title="gitでforkなどを経験してみた(またはwassr2twitterを導入) - ただのにっき(2009-05-14)" href="http://sho.tdiary.net/20090514.html">http://sho.tdiary.net/20090514.html</a></dd></dl><p>gitで他人のレポジトリをcloneするには&#8221;fork&#8221;ボタンを押してforkをする必要がある。<br
/> そうしたらこんな感じでYour Clone URLというのが表示されるので、そのコマンドを実行すればローカルにcloneできる。<br
/> <a
href="http://efcl.info/wp-content/uploads/sshot-2009-09-19-15-47-24.png"><img
class="alignnone size-medium wp-image-1335" title="sshot-2009-09-19-[15-47-24]" src="http://efcl.info/wp-content/uploads/sshot-2009-09-19-15-47-24-300x72.png" alt="sshot-2009-09-19-[15-47-24]" width="300" height="72" /></a></p><div><blockquote
title="Gitを使いこなすための20のコマンド - SourceForge.JP Magazine" cite="http://sourceforge.jp/magazine/09/03/16/0831212/2"><p>たとえば最新リビジョンだけを取得したい場合、「&#8211;depth 1」と指定する。 <br
/> $ git clone &#8211;depth 1 ＜複製したいリポジトリのURL＞</p></blockquote><blockquote
title="Gitを使いこなすための20のコマンド - SourceForge.JP Magazine" cite="http://sourceforge.jp/magazine/09/03/16/0831212/2"><p><cite><a
href="http://sourceforge.jp/magazine/09/03/16/0831212/2">Gitを使いこなすための20のコマンド &#8211; SourceForge.JP Magazine</a></cite></p></blockquote></div><p>depthを決めることでリビジョン(今までにコミットされた更新履歴)の深さを指定できる。<br
/> ここでcloneしたもののpush先は自分のレポジトリが設定されているので、自由にpushできる。<br
/> 元々のレポジトリの管理者に自分のパッチを取り込んでもらうなら、自分のリポジトリページから「pull request」をおしてリクエストするという仕組みらしい。</p><p>他人とのやりとりは以下のが参考になる。</p><dl><dt><strong>アリスとボブのコラボレーション、gitをちゃんと理解したい！ &#8211; ザリガニが見ていた&#8230;。</strong></dt><dd><a
title="アリスとボブのコラボレーション、gitをちゃんと理解したい！ - ザリガニが見ていた...。" href="http://d.hatena.ne.jp/zariganitosh/20080908/1220881938">http://d.hatena.ne.jp/zariganitosh/20080908/1220881938</a></dd></dl><p><br
class="spacer_" /></p>]]></content:encoded> <wfw:commentRss>http://efcl.info/2009/1010/res1334/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Gitを始めるまでにやったことのまとめ</title><link>http://efcl.info/2009/0919/res1311/</link> <comments>http://efcl.info/2009/0919/res1311/#comments</comments> <pubDate>Fri, 18 Sep 2009 15:04:09 +0000</pubDate> <dc:creator>azu</dc:creator> <category><![CDATA[まとめ]]></category> <category><![CDATA[Git]]></category> <category><![CDATA[Greasemonkey]]></category> <category><![CDATA[エクスプローラ]]></category> <category><![CDATA[日本語]]></category> <category><![CDATA[設定]]></category><guid
isPermaLink="false">http://efcl.info/?p=1311</guid> <description><![CDATA[Gitをというよりバージョン管理システム自体をちゃんとやった事がなかったのでGitを導入してみることにした。 Gitは分散型バージョン管理システムで最近流行っているそうだ。 WindowsでのGit環境構築とその注意点  [...]]]></description> <content:encoded><![CDATA[<p>Gitをというよりバージョン管理システム自体をちゃんとやった事がなかったのでGitを導入してみることにした。<br
/> Gitは分散型バージョン管理システムで最近流行っているそうだ。</p><p><span
id="more-1311"></span></p><dl><dt><strong>WindowsでのGit環境構築とその注意点 &#8211; SourceForge.JP Magazine</strong></dt><dd><a
title="WindowsでのGit環境構築とその注意点 - SourceForge.JP Magazine" href="http://sourceforge.jp/magazine/09/02/12/0530242">http://sourceforge.jp/magazine/09/02/12/0530242</a></dd></dl><p>上を参考にmsysgitをインストールした。<br
/> git-guiは正直微妙なので、下を参考にTortoiseGitをインストールした。</p><dl><dt><strong>実用レベルに達したWindows向けGitクライアント「TortoiseGit」でGitを始めよう &#8211; SourceForge.JP Magazine</strong></dt><dd><a
title="実用レベルに達したWindows向けGitクライアント「TortoiseGit」でGitを始めよう - SourceForge.JP Magazine" href="http://sourceforge.jp/magazine/09/06/19/0340248">http://sourceforge.jp/magazine/09/06/19/0340248</a></dd></dl><p>もう基本的な機能はそろってる感じで、フォントを変えれば日本語も表示はできる。<br
/> 日本語ファイル名は異なる環境が参照する場合はまだ問題があるらしい。</p><dl><dt><strong>Gitの基礎練習</strong></dt><dd><a
title="Gitの基礎練習" href="http://hyuki.com/techinfo/gitinit.html">http://hyuki.com/techinfo/gitinit.html</a></dd></dl><p>上はgitコマンドの練習。gitの流れでローカルまでの範囲をわかりやすく書かれている</p><pre>  git init //初期化
  git add README //ファイルをgitの管理下に加える
  git commit -m 'first commit' // 変更点をコミットする
ここまではまだローカルの範囲
ここからはgithub.comなど外部と連携する
  git remote add origin git@github.com:azu/test.git //どこのレポジトリと連携するかを設定
  git push origin master // ローカルの状態をサーバにpush(反映させる)する
pushして初めてサーバに反映するので、commitしただけはローカルにしか反映はしてない。
</pre><h3>次にGitHubにpushする方法を学ぶ</h3><p><a
href="http://gist.github.com/">GitHub</a>でアカウントを作って、<a
href="http://github.com/repositories/new">Create a New Repository</a>からレポジトリを作成する。<br
/> 作成してそのレポジトリにアクセスするとGlobal setup: … Next steps:のように実行する事が書いてあるのでGit Bashを立ち上げる。<br
/> <a
href="http://code.google.com/p/msysgit/">mysgit</a>をインストールしたときに</p><div
class="quote"><blockquote
title="WindowsでのGit環境構築とその注意点 - SourceForge.JP Magazine" cite="http://sourceforge.jp/magazine/09/02/12/0530242/2"><p>Run Git and included Unix tools from the Windows Command Prompt</p></blockquote><cite><a
href="http://sourceforge.jp/magazine/09/02/12/0530242/2">WindowsでのGit環境構築とその注意点 &#8211; SourceForge.JP Magazine</a></cite></div><p>を選択してるなら、コマンドプロンプトでもgitコマンドが打てるようになっているので、その場合はコマンドプロンプトや<br
/> <a
href="http://nyaos.org/index.cgi?p=FrontPage.ja">NYAOS</a>などのコマンドラインシェルでもいいはず。(コマンドプロンプトのコマンドと競合するらしいがパスを変えることで<a
href="http://twitter.com/hell2u/statuses/4041333625">大丈夫になる</a>とか)</p><p>setupなどをする前にgitHubにアクセスできるようにするため、gitHubにパブリックキーの登録をしないといけません</p><dl><dt><strong>Using Git and Github for the Windows for newbies &#8211; Guides &#8211; GitHub</strong></dt><dd><a
title="Using Git and Github for the Windows for newbies - Guides - GitHub" href="http://github.com/guides/using-git-and-github-for-the-windows-for-newbies">http://github.com/guides/using-git-and-github-for-the-windows-for-newbies</a></dd></dl><dl><dt><strong>windowsでgit用にSSH鍵を作る手順 &#8211; Guyon Diary</strong></dt><dd><a
title="windowsでgit用にSSH鍵を作る手順 - Guyon Diary" href="http://d.hatena.ne.jp/guyon/20081021/1224683687">http://d.hatena.ne.jp/guyon/20081021/1224683687</a></dd></dl><dl><dt><strong>Big Sky :: SSHポートが通らなくてもgithub.comにpushする方法</strong></dt><dd><a
title="Big Sky :: SSHポートが通らなくてもgithub.comにpushする方法" href="http://mattn.kaoriya.net/software/20081029172540.htm">http://mattn.kaoriya.net/software/20081029172540.htm</a> <br
/> これがわかりやすい</dd></dl><p>上の二つを参考にssh-keygenを実行すると、以下の場所にid_rsa.pubが生成されるので、それの中身を<a
href="https://github.com/account">Your Account &#8211; GitHub</a>のSSH Public Keysに登録する。(タイトルは適当でいい)</p><div
id="attachment_1329" class="wp-caption alignnone" style="width: 310px"><a
href="http://efcl.info/wp-content/uploads/sshot-2009-09-18-23-19-34.png"><img
class="size-medium wp-image-1329" title="sshot-2009-09-18-[23-19-34]" src="http://efcl.info/wp-content/uploads/sshot-2009-09-18-23-19-34-300x71.png" alt="SSH Public Keysに登録" width="300" height="71" /></a><p
class="wp-caption-text">SSH Public Keysに登録</p></div><p><code>Xp : C:\Documents and Settings\YourNameHere\.ssh\</code><br
/> <code>Vista : C:\Users\YourNameHere\.ssh\</code></p><h3>実際にgitHubにpushする</h3><p>では実際にレポジトリを作ったときに表示されているコマンドを上からやっていくと、自分の環境では<a
href="http://www.twitlonger.com/show/h6s4">git pushするとエラー</a>になってしまった。<br
/> これは先ほどの<a
href="http://mattn.kaoriya.net/software/20081029172540.htm">Big Sky :: SSHポートが通らなくてもgithub.comにpushする方法</a>を参考にgithub.comへのssh接続にすることで解決できました。<br
/> <a
href="http://www.google.co.jp/search?q=git+site%3Amattn.kaoriya.net&amp;ie=utf-8&amp;oe=utf-8&amp;aq=t&amp;rls=org.mozilla:ja:official&amp;client=firefox-a">Big Sky</a>さんのブログは結構躓くところの解決法が多くあるので読んでおくといいかも。</p><p>.sshフォルダのconfigファイルは以下のように設定しました。(次の事を考えて<span
class="Constant"><span
class="ColorResultsClass">gist</span>.github.comも入れてあります。)</span></p><pre>Host github.com
    User git
    Hostname ssh.github.com
    Port 443
    IdentityFile ~/.ssh/id_rsa
Host gist.github.com
    User git
    Hostname ssh.github.com
    Port 443
    IdentityFile ~/.ssh/id_rsa
    TCPKeepAlive yes
    IdentitiesOnly yes
</pre><p>これでやっとgit remoteしてgit pushするというサーバとの連携ができるようになりました。<br
/> gitコマンドはかなり数があるので、そのうち勉強する。</p><p><a
href="http://sheephead.homelinux.org/2009/07/21/1431/">gitやめてmercurialとtortoiseHGをインストール</a> にある種Gitの特徴が書かれてる。</p><h3>gist.github.comでコードペーストしたものをローカルにダウンロードする方法</h3><p><a
href="http://gist.github.com/">Gist &#8211; GitHub</a> は使い捨てのコードを公開したりすることができGreasemonkeyなども相性がよいため、よく利用してる。<br
/> 今まで、貼り付けたものをまとめてローカルに保存するにはgistyというrubyでできたコマンドを使う事でできる。<br
/> gistyはgist(コードペーストサービスの事)を便利に使うためのツール</p><dl><dt><strong>gistコマンドよりちょっと便利なgisty &#8211; SWDYH</strong></dt><dd><a
title="gistコマンドよりちょっと便利なgisty - SWDYH" href="http://d.hatena.ne.jp/swdyh/20081207/1228655198">http://d.hatena.ne.jp/swdyh/20081207/1228655198</a></dd></dl><p>gistyを使うにはActive Rubyでもいいので入れておいてから、管理者権限でコマンドプロンプト(or git bash)を起動して必要なものをインストールする。</p><pre>gem sources -a http://gems.github.com
gem install nokogiri
gem install swdyh-gisty
</pre><p>windowsで</p><pre>export GISTY_DIR="$HOME/dev/gists"</pre><p>をやってもなぜか記憶されなかったので、C:\Program Files\Git\etcのprofileというファイルの最後に<br
/> export GISTY_DIR=/d/gists という感じでデータフォルダを入れる。</p><div
class="quote"><div><blockquote
title="WindowsでのGit環境構築とその注意点 - SourceForge.JP Magazine" cite="http://sourceforge.jp/magazine/09/02/12/0530242/3"><p>このとき、テキストエディタのパス中の「\」は「/」に、「C:」は「/c」に置き換えて指定する。たとえば「C:\Program Files\xyzzy/xyzzy.exe」というエディタを使用したい場合は次のように指定する。</p></blockquote><p><cite><a
href="http://sourceforge.jp/magazine/09/02/12/0530242/3">WindowsでのGit環境構築とその注意点 &#8211; SourceForge.JP Magazine</a></cite></p></div></div><p>を参考にした</p><pre>git config --global github.user your_id
git config --global github.token your_token</pre><p>上を各自のものに変えて実行してトークンを登録する。C:\Users\ユーザー名\.gitconfigに記録される。</p><h3>実際にgist.github.comからpullする</h3><p>上の環境設定が済んでるならば、Gist bash上で</p><pre>gisty
</pre><p>と打てば、使えるコマンドが表示されると思います。<br
/> gist.github.comから自分がコードペーストしたものをローカルに持ってくるには、<br
/> gisty pull_all か gisty sync をすれば自動的にすべてpullしてきてくれます。<br
/> しかし、この時ひとつpullする毎にパスフレーズを要求されてしまったので、<strong>ssh-agent</strong>を使ってパスワード認証をなしにしてからpull_allをする。</p><pre>$ eval `ssh-agent`
$ ssh-add ~/.ssh/id_rsa
</pre><dl><dt><strong>パスワードなしで pull/push</strong></dt><dd><a
title="パスワードなしで pull/push" href="http://www.pshared.net/diary/20090418.html">http://www.pshared.net/diary/20090418.html</a></dd></dl><pre></pre><h3>オマケ</h3>gisty postするときにmacはブラウザで開いてくれるわけではないので、クリップボードにポストしたgistのURLを取得するようにしてみた。  C:\Ruby\lib\ruby\gems\1.8\gems\swdyh-gisty-0.0.14\lib\gisty.rb とからへんにあるの置き換える。<ul><li><a
href="http://gist.github.com/188278">gisty.rb</a></li></ul>windowsAPIを使ってるみたいなのでwindowsだけ対応で、<pre>gem install win32-clipboard
</pre><p>をインストールする必要がある。</p><h3>感想</h3><p>ホントに導入が面倒。<br
/> 情報が思ったようにでてこない(特にWindows系)ので大変。<br
/> エクスプローラプラグインなどを持っているエディタからはTortoiseGitが使えるので大変便利。<br
/> ショートカット(.lnk)からgistyでpostしたいけど、やり方がよく分からなかった。<br
/> Emeditorから編集してるファイルをgistyでポストしたかった。</p><p>以下、参考したところ<br
class="spacer_" /></p><ul
id="list"><li
id="id_4607881"><div
class="title"><p><strong> <a
class="item" href="http://mattn.kaoriya.net/software/20090106180947.htm" target="_blank">Big Sky :: Windowsでもssh-askpassを使う</a> </strong></p></div></li><li
id="id_18639302"><div
class="title"><p><strong> <a
class="item" href="http://mattn.kaoriya.net/software/20081106192615.htm" target="_blank">Big Sky :: Windowsでもssh-agentとssh-addを使ってパスフレーズ入力を省略する。</a> </strong></p></div></li><li
id="id_15718544"><div
class="title"><p><strong> <a
class="item" href="http://www.atmarkit.co.jp/flinux/rensai/linuxtips/447nonpassh.html" target="_blank">＠IT：sshでパスワードなしにログインするには</a> </strong></p></div></li><li
id="id_18628535"><div
class="title"><p><strong> <a
class="item" href="http://www.pshared.net/diary/20090418.html" target="_blank">指定したディレクトリ以下にだけあるディレクトリ一覧のパスを取得する, パスワードなしで pull/push &#8211; Ussy Diary(2009-04-</a> </strong></p></div></li><li
id="id_18628367"><div
class="title"><p><strong> <a
class="item" href="http://d.hatena.ne.jp/LukeSilvia/20090418/p1" target="_blank">git 環境のセットアップと簡単なチュートリアル &#8211; Slow Dance</a> </strong></p></div></li><li
id="id_18628133"><div
class="title"><p><strong> <a
class="item" href="http://bw28.blog5.fc2.com/?tag=git" target="_blank">オレのメモ</a> </strong></p></div></li><li
id="id_18628083"><div
class="title"><p><strong> <a
class="item" href="http://www.clear-code.com/blog/2009/7/8.html" target="_blank">TortoiseGitでOpenSSHの鍵を使う &#8211; ククログ(2009-07-08)</a> </strong></p></div></li><li
id="id_18595686"><div
class="title"><p><strong> <a
class="item" href="http://ok-lab.org/blog/archives/522" target="_blank">oklablog &#8211; TortoiseGit で plink.exe を使ってリモートリポジトリにpushする</a> </strong></p></div><p><small> <a
id="m18627871" class="check"></a></small></p></li><li
id="id_12001842"><div
class="title"><p><strong> <a
class="item" href="http://sourceforge.jp/magazine/09/02/12/0530242/3" target="_blank">WindowsでのGit環境構築とその注意点 &#8211; SourceForge.JP Magazine</a> </strong></p></div></li><li
id="id_18612908"><div
class="title"><p><strong> <a
class="item" href="http://d.hatena.ne.jp/Seasons/20090329/1238340961" target="_blank">GitとDYNAの連携で幸せになるショートカット &#8211; Seasons.NET</a> </strong></p></div></li><li
id="id_16904299"><div
class="title"><p><strong> <a
class="item" href="http://www.hyuki.com/techinfo/gitinit.html" target="_blank">Gitの基礎練習</a> </strong></p></div></li><li
id="id_18607925"><div
class="title"><p><strong> <a
class="item" href="http://blog.digital-squad.net/article/109547754.html" target="_blank">git (msysgit)をWindowsにインストール｜WEBデザイン Tips</a> </strong></p></div></li><li
id="id_3404034"><div
class="title"><p><strong> <a
class="item" href="http://d.hatena.ne.jp/swdyh/20081207/1228655198" target="_blank">gistコマンドよりちょっと便利なgisty &#8211; SWDYH</a> </strong></p></div></li><li
id="id_18580154"><div
class="title"><p><strong> <a
class="item" href="http://mattn.kaoriya.net/software/20081029172540.htm" target="_blank">Big Sky :: SSHポートが通らなくてもgithub.comにpushする方法</a> </strong></p></div></li><li
id="id_6494823"><div
class="title"><p><strong> <a
class="item" href="http://sourceforge.jp/magazine/09/02/12/0530242" target="_blank">WindowsでのGit環境構築とその注意点 &#8211; SourceForge.JP Magazine</a> </strong></p></div></li><li
id="id_6111342"><div
class="title"><p><strong> <a
class="item" href="http://sourceforge.jp/magazine/09/02/02/0655246" target="_blank">分散バージョン管理システムGit入門 &#8211; SourceForge.JP Magazine</a> </strong></p></div></li><li
id="id_18542789"><div
class="title"><p><strong> <a
class="item" href="http://drewblas.com/2008/06/27/setting-up-git-and-github-on-windows/" target="_blank">Setting up Git and Github on Windows « Drew Blas – The life and code of a p</a> </strong></p></div></li><li
id="id_18538117"><div
class="title"><p><strong> <a
class="item" href="http://d.hatena.ne.jp/stellaqua/searchdiary?word=%2a%5bGit%5d" target="_blank">[Git] &#8211; Stellaqua &#8211; ＴＯＭの技術日記</a> </strong></p></div><p><small> <em
class="domain"> </em></small></p></li><li
id="id_18537953"><div
class="title"><p><strong> <a
class="item" href="http://d.hatena.ne.jp/stellaqua/20081110/1226298802" target="_blank">Gitを触ってみるよ その2「WindowsでGitを使いやすくする」 &#8211; Stellaqua &#8211; ＴＯＭの技術日記</a> </strong></p></div></li><li
id="id_12001463"><div
class="title"><p><strong> <a
class="item" href="http://yakinikunotare.boo.jp/orebase/index.php?Git%2F%B0%EC%BF%CD%A4%C7%BB%C8%A4%C3%A4%C6%A4%DF%A4%EB%A1%CAmsysgit%CA%D4%A1%CB" target="_blank">Git/一人で使ってみる（msysgit編） &#8211; 俺の基地</a> </strong></p></div></li><li
id="id_18525733"><div
class="title"><p><strong> <a
class="item" href="http://wp.graphact.com/2008/08/09/382" target="_blank">github を Windows で使ってみる | Numb.</a></strong></p><strong> </strong></div> <small> <em
class="domain"> </em></small></li></ul><div
id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px;">&lt;ul id=&#8221;list&#8221;&gt;<br
/> &lt;li id=&#8221;id_4607881&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://mattn.kaoriya.net/software/20090106180947.htm&#8221; target=&#8221;_blank&#8221;&gt;Big Sky :: Windowsでもssh-askpassを使う&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18639302&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://mattn.kaoriya.net/software/20081106192615.htm&#8221; target=&#8221;_blank&#8221;&gt;Big Sky :: Windowsでもssh-agentとssh-addを使ってパスフレーズ入力を省略する。&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_15718544&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://www.atmarkit.co.jp/flinux/rensai/linuxtips/447nonpassh.html&#8221; target=&#8221;_blank&#8221;&gt;＠IT：sshでパスワードなしにログインするには&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18628535&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://www.pshared.net/diary/20090418.html&#8221; target=&#8221;_blank&#8221;&gt;指定したディレクトリ以下にだけあるディレクトリ一覧のパスを取得する, パスワードなしで pull/push &#8211; Ussy Diary(2009-04-&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18628367&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://d.hatena.ne.jp/LukeSilvia/20090418/p1&#8243; target=&#8221;_blank&#8221;&gt;git 環境のセットアップと簡単なチュートリアル &#8211; Slow Dance&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18628133&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://bw28.blog5.fc2.com/?tag=git&#8221; target=&#8221;_blank&#8221;&gt;オレのメモ&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18628083&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://www.clear-code.com/blog/2009/7/8.html&#8221; target=&#8221;_blank&#8221;&gt;TortoiseGitでOpenSSHの鍵を使う &#8211; ククログ(2009-07-08)&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18595686&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://ok-lab.org/blog/archives/522&#8243; target=&#8221;_blank&#8221;&gt;oklablog &#8211; TortoiseGit で plink.exe を使ってリモートリポジトリにpushする&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> &lt;small&gt; &lt;em class=&#8221;domain&#8221;&gt; &lt;a href=&#8221;http://ok-lab.org/&#8221;&gt;ok-lab.org&lt;/a&gt; &lt;/em&gt; | &lt;/span&gt; &lt;a class=&#8221;text&#8221; href=&#8221;http://readitlaterlist.com/text/18627871/?t=unread&amp;amp;p=1&#8243;&gt;Text View&lt;/a&gt; | &lt;/span&gt;&lt;a id=&#8221;m18627871&#8243; class=&#8221;check&#8221;&gt;Mark as Read&lt;/a&gt;&lt;/small&gt;&lt;/li&gt;<br
/> &lt;li id=&#8221;id_12001842&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://sourceforge.jp/magazine/09/02/12/0530242/3&#8243; target=&#8221;_blank&#8221;&gt;WindowsでのGit環境構築とその注意点 &#8211; SourceForge.JP Magazine&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18612908&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://d.hatena.ne.jp/Seasons/20090329/1238340961&#8243; target=&#8221;_blank&#8221;&gt;GitとDYNAの連携で幸せになるショートカット &#8211; Seasons.NET&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_16904299&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://www.hyuki.com/techinfo/gitinit.html&#8221; target=&#8221;_blank&#8221;&gt;Gitの基礎練習&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18607925&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://blog.digital-squad.net/article/109547754.html&#8221; target=&#8221;_blank&#8221;&gt;git (msysgit)をWindowsにインストール｜WEBデザイン Tips&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_3404034&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://d.hatena.ne.jp/swdyh/20081207/1228655198&#8243; target=&#8221;_blank&#8221;&gt;gistコマンドよりちょっと便利なgisty &#8211; SWDYH&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18580154&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://mattn.kaoriya.net/software/20081029172540.htm&#8221; target=&#8221;_blank&#8221;&gt;Big Sky :: SSHポートが通らなくてもgithub.comにpushする方法&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_6494823&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://sourceforge.jp/magazine/09/02/12/0530242&#8243; target=&#8221;_blank&#8221;&gt;WindowsでのGit環境構築とその注意点 &#8211; SourceForge.JP Magazine&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_6111342&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://sourceforge.jp/magazine/09/02/02/0655246&#8243; target=&#8221;_blank&#8221;&gt;分散バージョン管理システムGit入門 &#8211; SourceForge.JP Magazine&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18542789&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://drewblas.com/2008/06/27/setting-up-git-and-github-on-windows/&#8221; target=&#8221;_blank&#8221;&gt;Setting up Git and Github on Windows « Drew Blas – The life and code of a p&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18538117&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://d.hatena.ne.jp/stellaqua/searchdiary?word=%2a%5bGit%5d&#8221; target=&#8221;_blank&#8221;&gt;[Git] &#8211; Stellaqua &#8211; ＴＯＭの技術日記&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> &lt;small&gt; &lt;em class=&#8221;domain&#8221;&gt; &lt;a href=&#8221;http://d.hatena.ne.jp/&#8221;&gt;d.hatena.ne.jp&lt;/a&gt; &lt;/em&gt;&lt;/small&gt;&lt;/li&gt;<br
/> &lt;li id=&#8221;id_18537953&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://d.hatena.ne.jp/stellaqua/20081110/1226298802&#8243; target=&#8221;_blank&#8221;&gt;Gitを触ってみるよ その2「WindowsでGitを使いやすくする」 &#8211; Stellaqua &#8211; ＴＯＭの技術日記&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_12001463&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://yakinikunotare.boo.jp/orebase/index.php?Git%2F%B0%EC%BF%CD%A4%C7%BB%C8%A4%C3%A4%C6%A4%DF%A4%EB%A1%CAmsysgit%CA%D4%A1%CB&#8221; target=&#8221;_blank&#8221;&gt;Git/一人で使ってみる（msysgit編） &#8211; 俺の基地&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;li id=&#8221;id_18525733&#8243;&gt;<br
/> &lt;div class=&#8221;title&#8221;&gt;&lt;strong&gt; &lt;a class=&#8221;item&#8221; href=&#8221;http://wp.graphact.com/2008/08/09/382&#8243; target=&#8221;_blank&#8221;&gt;github を Windows で使ってみる | Numb.&lt;/a&gt; &lt;/strong&gt;&lt;/div&gt;<br
/> &lt;small&gt; &lt;em class=&#8221;domain&#8221;&gt; &lt;a href=&#8221;http://wp.graphact.com/&#8221;&gt;wp.graphact.com&lt;/a&gt; &lt;/em&gt;&lt;/small&gt;&lt;/li&gt;<br
/> <br
/> <br
/> &lt;/li&gt;<br
/> &lt;/ul&gt;</div>]]></content:encoded> <wfw:commentRss>http://efcl.info/2009/0919/res1311/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: enhanced
Database Caching 1/46 queries in 0.103 seconds using disk: basic
Object Caching 792/902 objects using disk: basic

Served from: efcl.info @ 2012-02-10 05:37:02 -->
