はてブロ@ama-ch

https://twitter.com/ama_ch

KarmaでTDD + Travis CI + Coverallsなイケてるワークフロー

巷でAngularJSが盛り上がっているのを横目に、最近は黙々とKarmaを触っていました。Karmaはかなりよくできていて素晴らしいと思うんですが、具体的な使い方はあまり見ないので紹介したいと思います。 Karmaについて http://karma-runner.github.io/ Karmaは…

Closure Linterが神アップデート!MAX_LINE_LENGTHが設定可能に!

久しぶりにClosure Linterのリポジトリを確認してみたらバージョンが2.3.10に上がっていて、色々と機能が追加されていました。 更新内容を確認していたら、なんと MAX_LINE_LENGTHが設定可能になっていて、さらにエラーが個別に制御できるようになっています…

WEB+DB PRESS Vol.74でJavaScriptのメモリリークについて書きました!

WEB+DB PRESSで連載中の「JavaScript活用最前線」が2年目に突入しました! 第7回目となる今回は、JavaScriptのメモリリークとChrome Developer Toolsのヒーププロファイラを使った解析方法を書きました。 WEB+DB PRESS Vol.74作者: 井上誠一郎,奥野幹也,田中…

JSHint+Closure Linter+Gruntで最強のLint環境を目指してみた

先日JSHint 1.1.0がリリースされ、そのリリースノートに気になる記述がありました。 Adds new option gcl to make JSHint style checks compatible with Google Closure Linter. うそーまじでーなにそれヤバイ! 普段は仕事でClosureにどっぷりなせいもあっ…

WEB+DB PRESS Vol.72のJavaScript連載でChrome Developer Toolsの解説を書きました

連載「JavaScript活用最前線」第5回目でChrome Developer Toolsの解説を書きました。 WEB+DB PRESS Vol.72作者: 近藤宇智朗,生井智司,久保達彦,道井俊介,飯田祐基,中村知成,規世やよい,後藤秀宣,天野祐介,奥野幹也,Dr.Kein,tokuhirom,森田創,中島聡,堤智代,A…

oh-my-zshとhomesickを使ってdotfilesをGitHubで管理するようにした

今までdotfilesは会社で使ってるものがメインで、家やノートPCで使うものはそこからコピペしたりして使ってました。たまにDropboxで同期させてシンボリックリンクを作ったりもしていたけど、結局面倒であまりメンテしていませんでした。 そんな感じでなんと…

はてなブログはじめました

Markdownに対応したと聞いて! とりあえず使ってみます よさげなら乗り換えようかなー てすと // コードスニペット var hoge = 'abc'; console.log(hoge); // ハイライトはできない? html直書き

WEB+DB PRESS Vol.70にClosure Compiler/Linterの記事を書きました

連載「JavaScript活用最前線 ── 大規模開発の現場から」第3回目の記事を書きました。今回はClosure CompilerとClosure Linterの紹介と、コンパイル時の警告をもとにコードチェックツールとして利用する方法を解説しました。 最近は割とClosure Compilerを使…

サイボウズ技術説明会 for students でフロントエンドについて話します

6/14(木)にエンジニア志望の学生向けに「サイボウズ技術説明会 for students」というイベントが開催されます。サイボウズ本社のエンジニア3人が登壇し、使っている技術やトレンドを紹介します。僕からはフロントエンドのお仕事についてお話します。 今のとこ…

社内勉強会でクライアントサイドMVCについて話しました

こんにちは。日曜から盲腸で入院中のama-chです。 普段は不健康の代名詞みたいに扱われていますが、これでも小学校は修学旅行の日以外は皆勤だったし、入院するのも初めてなんです。 退屈な入院生活ですが、PCとモバイル通信環境があると一気に世界が開けま…

WEB+DB PRESS Vol.68からJavaScriptの連載を始めました

表題の通りですが、WEB+DB PRESS Vol.68 からJavaScriptの連載を書かせていただくことになりました。 連載タイトルは「JavaScript活用最前線 ── 大規模開発の現場から」です。WEB+DB PRESS Vol.68作者: 名村卓,三宅陽一郎,小野修司,中島聡,森田創,小飼弾,田…

作業効率が10倍アップする Chrome Developer Tools の使い方

というタイトルで社内勉強会を開きました。 その時の資料を公開します。 「作業効率が10倍アップする」かどうかは個人差があるのでご注意ください。 最近のChrome Developer Toolsは本当に高機能ですごいですね!僕も資料を作っていて新しい発見が沢山ありま…

MacBook Air を買ったので感想とかやったことを書くよー

Mac

Macbook Air の新しいやつ買っちゃいました!わーーーい まだ触って数日ですが、触ってみた感想やらやった設定などを書いておきます。後半のソフトの紹介は MacBookAir 11インチを買って導入したソフト ~サーバエンジニア編~ こちらの内容と結構かぶっている…

IEでoffsetHeightがとれないときの対処方法

ご無沙汰しています。 最近はもっぱら JavaScript ばかり書いているため、偽物臭がかつてないほど強くなっているあまちゃんです。実に1年半ぶりのエントリーです! 最近 IE8 で要素の offsetHeight が取得できなくて困ったので、その対処方法を書いておきま…

MacのDropboxクライアントがたまにCPUを消費しまくるっていう

バージョンアップのおかげか、メモリ使用量が問題になることはほとんどなくなったDropboxちゃん。いいぞいいぞ、でもたまにCPUをどか食いするのは何故なの>< ぐぐってみたら、結構同じような症状はあるみたい。mac dropbox cpu - Google 検索CPU使用率が高…

シェルの処理順序

詳解 シェルスクリプト作者: Arnold Robbins,Nelson H. F. Beebe,日向あおい出版社/メーカー: オライリージャパン発売日: 2006/01/16メディア: 大型本購入: 6人 クリック: 193回この商品を含むブログ (37件) を見る 今読んでる詳解シェルスクリプトにシェル…

便乗してPythonでやってみた

簡単な問があったのでPythonでやってみた - 牌語備忘録 元の問題は、10分でコーディング|プログラミングに自信があるやつこい!!からです。 とりあえず10分目標で何も考えずに書いたのがこれ。 #!usr/bin/env python # -*- coding: utf-8 -*- def cards(…

目的のプロセスをコマンド一発で見つける方法

$ alias pfind='ps aux | grep ' Helpful alias to grep for the PID. | Command-line Fu こういう方法が紹介されていたけど、これだとgrep自身のプロセスが表示されちゃうから、こうした方が良いと思う。 function pfd(){ PSAUX=$(ps aux) echo $PSAUX | he…

Dropboxのメモリ消費量があまりにも鬼畜だったので監視して適宜殺すことにした

一応前回のエントリーGrowlで監視プロセスを通知してみよう - テックノート@ama-chからの続き。 Dropboxがいつの間にか落ちていてもGrowlさんが通知してくれるようになりすっかり安心した僕は、卒論も書かず元気に面白い動画を求めてニコニコ動画をさまよっ…

Growlで監視プロセスを通知してみよう

最近DropBoxのアプリケーションが頻繁に落ちてて、同期が実行されないことが多いんです>< プロセス監視して、DropBoxが落ちてたらコマンドから起動しようと思ったら % open -a Dropboxこれがうまく動かない>< あ、openはMac OS X固有のアプリケーション…

DropBoxを使ってUnix環境を同期させる方法

いつかやろうと思って忘れてた、DropBoxを使って、まっさらな環境から5分で継続的で快適な環境を作る方法 - a2c.get.diaryを実践してみました。 まずDropBoxにドットファイル置き場を作る。 % mkdir ~/Dropbox/dotfiles 同期させたいドットファイルをここに…

MacBookのメモリを増設した!

Mac

去年の春に購入した白MacBookちゃんのメモリを増設しました。 購入時に1GB→2GBに増設したものの、最近は色々立ち上げてるとメモリの空きが17MBとかになってやばい。これはどうにかしないと! メモリ選択のポイント といっても全然詳しくないのでテキトーに選…

コマンドからファイル印刷のまとめ

nkf + e2psを使ってファイルを印刷する方法。 e2psはテキストファイルをPostScriptに変換するツールなんだけど、UTF-8に対応していないのでnkfもインストールした。 nkfはMacPortsで。 % sudo port install nkf e2psをWtSeries : UNIXツールからダウンロード…

screenを縦に横に分割しまくろう

screenてデフォルトだと水平分割しかできないんですよね。MacBookのような横に長い画面だと、左右に分割した方が効率が良いのは明らかです。うーん何とかしたい! おしえて!google先生! 「screen 分割 左右」とか「screen 分割 (縦|垂直)」とか「screen vs…

cronで90分おきにコマンドを実行したい

crontabで○分おきにって00-59しか指定できないんですよね!*1 じゃあ90分おきに実行したい場合はどうしよう?と思って、crontabに */30 * * * * test $( expr $( date +%s ) % 5400 ) -eq 0 && hoge.zshと書いてみたけど動かない。。 しょうがないから、cron…

AppleScriptをコマンドラインから定期的に実行したい

マカーなら1度はAppleScriptのお世話になりますよね! 僕がよく使っているのは、あるアプリケーションを再起動するAppleScriptです。そのアプリケーションはよく不安定になるので、1日に何回も再起動しています。 終了→再起動の2ステップがスクリプト実行の1…

zsh覚え書き

Tabでファイルグロブを展開 ama-ch% echo *~ # ~で終わるファイルを確認 fudemame.py~ maimiku_search.py~ mymixi_diary.py~ output.txt~ search_diary.py~ test.py~ twitter-notifier.py~ ama-ch% rm *~ # ここでTabを押すと・・・ ama-ch% # ↓こうなるので…

pbcopyで日本語もコピーできるようにする

Mac OS Xの固有コマンドに「pbcopy」というものがあります。 これは % less hoge.txt | pbcopy のようにすると、コマンドの実行結果を直接クリップボードに送ることができる優れもののコマンドです。 とても便利なんですが、日本語を含む*1結果をパイプする…

Emacsでカーソル位置から行頭まで削除する方法

Emacsには、デフォルトでカーソル位置から行頭まで削除(キル)するキーバインドが設定されていません。 C-u 0 C-kとかM-0 C-kでできます*1が、個人的によく使う機能なので1ストロークでいきたいですね。 なんかやり方ないかなーと探していたら、こんな便利…

zshをMacPortsでアップデートする

zshは、以下のコマンドでバージョン確認ができます。 % zsh --version zsh 4.3.4 (powerpc-apple-darwin9.0) 現在のバージョン(最初からMacに入っていたもの)は4.3.4ですね。 MacPortsでzshを検索してみると・・・ % port search zsh [~] ctags @5.7 (deve…

zsh入門してみたら便利すぎて鼻息が抑えられない

「シェル?ターミナルでコマンド叩くだけでしょ。デフォルトのbashで十分」 そう思っていた僕ですが、漢のzshを見て考えが180度変わりました。zshスゴイ。愛してる。 zshはどうにも情報が得にくくて敬遠していたけど*1、漢のzshは分かりやすくて素晴らしい!…

iconvコマンドで使えるエンコード名

メモメモ。 $ iconv -l ANSI_X3.4-1968 ANSI_X3.4-1986 ASCII CP367 IBM367 ISO-IR-6 ISO646-US ISO_646.IRV:1991 US US-ASCII CSASCII UTF-8 UTF8 UTF-8-MAC UTF8-MAC ISO-10646-UCS-2 UCS-2 CSUNICODE UCS-2BE UNICODE-1-1 UNICODEBIG CSUNICODE11 UCS-2LE…

pyspa challenge 第1回やってみた

トラバ送っていきなり答えのリンク張ってしまうのはどうかな? と思ったので、リンクは張らないでおきます>< と思っていたけど、解答編からトラバがきたのでリンク張ります! 問題 pyspa challenge 第1回 - 西尾泰和のはてなダイアリー http://d.hatena.ne…

MacにFiremacsをインストールした

Emacs風キーバインドでFirefoxを操作できるアドオンFiremacsをインストールしました。 以下設定の個人的なメモ。 Option 「use Meta as "M-"」にチェックを入れると、Cmdキーで"M-"が入力できるようになる。Carbon Emacsと同じになるので便利! View j/hのス…

超セレブな携帯向け割り勘電卓をPythonで書いてみた

携帯電話向け「割り勘電卓」を公開します - 頭ん中 さんを見て、PythonでCGIを書く勉強に書いてみました。 本体: http://ama-ch.com/cgi-bin/warikan.cgi 均等割り電卓と同じ「ような」動作をします。携帯向けとか言いながら携帯向けにWebを作ったことなど…

便利なコマンドラインランチャをMac + Windowsで使おう その2

前回に引き続き、今回はWindowsのソフトをご紹介します。 僕はMac + VMWare Fusion + Windowsという組み合わせでシームレスにMacとWindowsを行き来しているので、WindowsでもLaunchBarとなるべく同じ機能・操作感になるようにしてみました。 Windows編 〜下…

便利なコマンドラインランチャをMac + Windowsで使おう その1

はじめに みんな大好きランチャソフト!ある程度使うアプリケーションの種類が増えてくると、みなさんランチャを使い始めますよね?色々なランチャを調べたり使い比べて、自分にとって1番良いものを選ぶと思います。 僕は長らくOrchisを使っていましたが、今…

入門GNU Emacs 第13章まとめ

13章 ヘルプシステム 詳細ヘルプコマンド キー操作 表示内容 C-h c このキー入力がどのコマンドを実行するのか C-h k このキー入力がどのコマンドを実行し、それが何をするのか C-h f この関数が何をするのか C-h v この変数がどんな意味で、その値は何か C-…

Emacsのスタートアップファイルの読み込み優先順位

入門GNU Emacs p.301より。 Emacsには.emacsや.emacs.elのようなスタートアップファイルがあり、次の優先順位で使う。 .emacs.elc .emacs.el .emacs このうち最初に見つかったファイルを使って起動を行う。 あーなるほど。.emacs.elと.emacsの2つに設定を書…

EmacsのシェルモードでPythonを起動すると違うとこから起動する

Emacsをめでたくフルスクリーンでも使えるようになり、 コード編集画面 実行・デバッグのためのシェルモード バッファ一覧など という感じで3つのウィンドウを配置するようになりました。 シェルモードのおかげでEmacs上で実行までできて便利だなーと思って…

入門GNU Emacs 第9章まとめ

8章のマークアップ言語編集は(少なくとも今は)使わないと思って飛ばしました。 9章 プログラミング言語の編集 コメント キー操作 動作 M-; カーソル位置の行へコメントを挿入 M-j コメントを次の行へ続ける M-x comment-region 選択したリージョンをコメン…

Carbon Emacsをフルスクリーンで使う

Carbon Emacsをフルスクリーンにしてみた。これはいい! やり方 ~/emacs.elに以下を書き込む ;; fullscreen (defun toggle-fullscreen () (interactive) (set-frame-parameter nil 'fullscreen (if (frame-parameter nil 'fullscreen) nil 'fullboth))) (glo…

入門GNU Emacs 第7章まとめ

7章 簡単なテキスト整形機能と特殊編集機能 タブをスペースに変更 C-x h M-x untabify Enter M-x untabifyはリージョンに対して動作するため、先にC-x hでバッファ全体をリージョンへ送る。 センタリング キー操作 動作 M-s カーソル位置の行がセンタリング…

Macで女の人に「おっぱい」って言わせまくるスクリプト書いた!!!

pbcopyでぐぐってMacWiki - OSXの固有コマンドを眺めていたら、素晴らしいコマンドがあった! say ... 英語を発音する http://macwiki.sourceforge.jp/wiki/index.php/%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89/say おいおいこんなコマンド見つけたら男がやるこ…

入門GNU Emacs 第6章まとめ

6章 マクロの記述 マクロの定義 キー操作 動作 F3 or C-x ( マクロ定義の開始 F4 or C-x ) マクロ定義の終了 F4 or C-x e 作成したマクロの実行 よいマクロを作るコツ 一般に、優れたマクロには次の3つの部分がある。 作業を開始する正しい位置を(通常は検…

Pythonで関数内からグローバルスコープ変数へアクセスする場合

スコープ関係で悩んだのでメモメモ。 Pythonでは*1、関数内からグローバル変数を参照することができます。 参照 >>> a = 3 # グローバル変数 >>> def test1(): ... print a ... >>> test1() 3 関数内からグローバル変数を参照・表示していることがわかります…

入門GNU Emacs 第5章まとめ

5章 作業環境としてのEmacs シェルバッファでのコマンドの実行 キー操作 動作 M-! シェルコマンドを1つずつ実行 M-| リージョンをコマンドの入力としてシェルコマンドを実行 コマンドの最初にC-uをつけると、カレントバッファに結果を出力 Shellモード キー…

入門GNU Emacs 第4章まとめ

4章 バッファとウィンドウおよびフレームの利用 バッファの切り替え キー操作 動作 C-x → 次のバッファへ移動 C-x ← 前のバッファへ移動 ウィンドウの取り扱い キー操作 動作 C-x 2 ウィンドウを上下に分割 C-x 4 f 別のウィンドウにファイルを読み込む C-M-…

入門GNU Emacs 第3章まとめ

第3章を読みました。検索・置換がメインです。 3章 検索と置換 様々な検索方法 キー操作 動作 C-s 前方インクリメンタルサーチ C-r 後方インクリメンタルサーチ C-s/C-r Enter C-w 単語検索 C-s/C-rで次を検索、Enterで検索を停止 単語検索は、論文を書く場…

入門GNU Emacs はじめに〜2章まで まとめ

入門 GNU Emacs 第3版作者: Debra Cameron,James Elliott,Marc Loy,Eric Raymond,Bill Rosenblatt,宮下尚,半田剣一,新井貴之,鈴木和也出版社/メーカー: オライリー・ジャパン発売日: 2007/03/12メディア: 大型本購入: 14人 クリック: 331回この商品を含むブ…