WebStorm 6.0からの機能:File Watchers
コンパイルする系の言語の扱いが非常に便利になったみたい。
CoffeeScriptの場合
「Settings → File Watchers」からCoffeeScript作成。(CoffeeScriptプラグインが入ってればデフォルトで多分入っている)
参考
MacにRuby環境構築
インストール
※brewが入っていることが前提
brew updateする brewが最新でないといろいろダメなことがあるので。
brew update
opensslとreadlineも入れておいたほうがいいみたい。
brew install openssl brew install readline
rbenbいれる
brew install rbenv
ruby-buildいれる
brew install ruby-build
.bashrcに環境変数設定
export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init -)"
bashrc変更したら、
source ~/.bashrc
を忘れずに。rubyのインストール インストール可能なrubyのバージョン一覧が以下のコマンドで見れる。
rbenv install -l
Rubyのインストール opensslとreadlineはbrewで入れたものを使いたいのでそのパスを指定する。
CONFIGURE_OPTS="--with-readline-dir=/usr/local --with-openssl-dir=/usr/local" rbenv install 1.9.3-p392
Rubyのバージョン切り替え
現在のversionの確認
braitom-no-Mac-mini:~ braitom$ rbenv version
system (set by /Users/braitom/.rbenv/version)
braitom-no-Mac-mini:~ braitom$ ruby -v
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
システム全体でしようするRubyのバージョンを指定
rbenv global 1.9.3-p392
その後、rehash実行
rbenv rehash
もう一度、バージョンを確認し、変更されていることを確認
braitom-no-Mac-mini:~ braitom$ rbenv version 1.9.3-p392 (set by /Users/braitom/.rbenv/version) braitom-no-Mac-mini:~ braitom$ ruby -v ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-darwin12.2.1]
参考
Mac OS X 10.7.5 (LION) へrbenv + ruby-buildを利用してRuby実行環境を構築する | 完熟トマト
Homebrew + rbenv + ruby-buildでruby 2.0.0-p0をインストール #Ruby - Qiita
Sublime Text 2の設定など
行った設定、入れたプラグイン等を随時メモしていきます。 Package Controlはいれている前提。
Settings -User
{
"color_scheme": "Packages/Color Scheme - Default/Monokai.tmTheme",
"font_size": 14.0,
"highlight_modified_tabs": true,
"scroll_past_end": true,
"highlight_line": true
}
AutoFileName
jsやらCSSやらimgのファイルパス名を補完してくれる。
sublime-closure-linter
事前にClosure Linterを入れておく必要があります。インストール方法はここ。How to Use Closure Linter - Closure Tools — Google Developers
Closure Linterの実行は、 ctrl+shift+j
Fix JavaScript Styleの実行は、 ctrl+alt+shift+j
/bin/sh: fixjsstyle: command not found
とか出たら正しいパスを設定してあげればOK。
Preferences > Package Settings > Closure Linter > Settings – User
Macならデフォルトだとこんな感じ。
{
"gjslint_path": "/usr/local/bin/gjslint",
"fixjsstyle_path": "/usr/local/bin/fixjsstyle"
}
JsFormat
その名の通り。
CSScomb
CSSプロパティを綺麗にソートしてくれる。
デフォルト設定では、ctr + shift + c でフォーマット。
BracketHighlighter
括弧、カンマ、HTMLタグのペアをハイライトしてくれる。
ハイライト色の設定は以下のリンクが参考になる。
Sublime Text 2: Bracket Highlighter
Markdown Preview
その名の通り。プレビューを見るのはあくまでもでブラウザで表示。公式のReedMeにあるようにショートカットを割りあてておくのがおすすめ。
LiveReloadも一緒に入れておけばファイルをセーブするとそのままブラウザ上のプレビューに反映されるので便利。
Markdown Editing
Markdownの編集をちょっと便利にしてくれる。
SideBar Enhancements
その名の通り。サイドバーを拡張する。右クリックでいろいろできるようになる。
SublimeCodeIntel
ctrl + space を押さなくても入力中に補完候補を出してくれる。
Local History
ファイルを保存するたびに履歴を保存してくれる。差分表示も可能。便利。
SublimeLinter
lint系詰め合わせ。リアルタイムチェックも可能。細かいことはGithubのReedMe見るべし。
JavaScriptについては以下が参考になる。
macのテキストエディタ Sublime Text2でJavaScriptのシンタックスエラーチェックをリアルタイムで行う方法
Mac OS X + SublimeLinterでJavascriptの日本語エラーを回避する方法
Tag
HTMLをフォーマットしてくれる。他にも指定した要素を消したりなどHTMLに対していろいろできる。
Terminal
開いているファイルをカレントディレクトリにしてTerminal開いてくれる。
command + shift + t で開いているファイルのディレクトリでTerminal開く。
command + shift + option + t でプロジェクトフォルダでTerminal開く
HTML5
jQuery
jQueryの関数を補完
Clipboard History
コピーしたものを保存してくれる。
Macだとデフォルトで「Command + option + control + v」でクリップボード履歴表示。
CoffeeScript
CoffeeScriptのシンタックスハイライトとか
CoffeeCompile
.coffeeファイルをコンパイルして表示できる
ConvertToUTF8
SublimeOnSaveBuild
保存時に自動的にビルドを走らせることができる。
参考
macでの.bashrc
すぐ忘れるのでメモ。
~/.bash_profileを作成して以下を記述。
if [ -f ~/.bashrc ] ; then
. ~/.bashrc
fi
で、~/.bashrcを作成してこれに記述。 例えばこんな感じ。
. ~/.nvm/nvm.sh
nvm use v0.8.2
最後に設定を反映させるために、
source ~/.bashrc
Metroアプリでライブタイルを実装するときに参考になるサイト
とりあえず公式のドキュメントで参考になるもの
・基本中の基本
Quickstart: Sending a tile update (Metro style apps using JavaScript and HTML)
・notification queueを使う時
上2つの左側のリンクに他にもいくつかチュートリアル的なものがある。
・Tileのテンプレートについて
Choosing a tile template (Metro style apps using JavaScript and HTML)
・Windows 8アプリ開発者ブログ
・サンプル
//NotificationQueueを使って更新する場合。定期的にテキストが更新される
Notifications.TileUpdateManager.createTileUpdaterForApplication().enableNotificationQueue(true);
var tileUpdateManager = Notifications.TileUpdateManager;
var data = Data.groups.dataSource.list._groupKeys;
for (var i = 0, len = data.length; i < len; i++) {
var template = tileUpdateManager.getTemplateContent(Notifications.TileTemplateType.tileSquareText03);
var tileAttribute = template.getElementsByTagName('text')[0];
tileAttribute.appendChild(template.createTextNode(data[i]));
var tileNotification = new Notifications.TileNotification(template);
tileUpdateManager.createTileUpdaterForApplication().update(tileNotification);
}