毎回忘れてググってるので俺用まとめ。
以下の記事とか参考に。
HTML4から変化したHTML5のマークアップ ここが違う!サンプルで見るHTML5(2)
http://codezine.jp/article/detail/5600
40分で覚える!jQuery速習講座
http://ascii.jp/elem/000/000/498/498710/
HTML5のマークアップは以下のように。
jQueryを使おうと思った場合はこう。
jquery-1.4.4.js の部分を http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js に変えるとjQueryをダウンロードしたりしなくても使える。
2010年12月29日水曜日
2010年12月21日火曜日
【Mac】LaTeXを導入
書こうと思ったら以下の記事が最高にまとまってたので書くことなかった。
TeXShop - Mac OS X 10.6 Snow Leopard に TeX/LaTeX を導入
http://idita.blog11.fc2.com/blog-entry-185.html
僕は以前にもなんか色々やったりMacPortsでpTeX入れたりとか寄り道していたけど、たぶんこれ(↑)をやるだけでちゃんと動く。というかそれ以外しなくていい。
テスト用のHello Worldだけ書いておくと
をTeXShopに書いて「タイプセット」をクリックして、しばらくしてPDFが生成されればちゃんとできてます。
できなかったらドンマイなので頑張ってください。
TeXShop - Mac OS X 10.6 Snow Leopard に TeX/LaTeX を導入
http://idita.blog11.fc2.com/blog-entry-185.html
僕は以前にもなんか色々やったりMacPortsでpTeX入れたりとか寄り道していたけど、たぶんこれ(↑)をやるだけでちゃんと動く。というかそれ以外しなくていい。
テスト用のHello Worldだけ書いておくと
をTeXShopに書いて「タイプセット」をクリックして、しばらくしてPDFが生成されればちゃんとできてます。
できなかったらドンマイなので頑張ってください。
2010年12月4日土曜日
SinatraでSlimを使う
前々回、前回ときて、今度はSlimをSinatraで使う。
まずインストール
SinatraにSlimが搭載されるのは次のリリースかららしいので、以下が必要。
で、中身。
helloslim.rb
views/layout.slim
views/index.slim
まずインストール
gem install slim
SinatraにSlimが搭載されるのは次のリリースかららしいので、以下が必要。
require 'slim'
module Sinatra
module Templates
def slim(template, options={}, locals={})
render :slim, template, options, locals
end
end
end
で、中身。
helloslim.rb
views/layout.slim
views/index.slim
views/hello.slim
sassも使えるらしい。
SinatraでHamlを別ファイルに書く
前回書いたhello_haml.rbのビュー部分を別ファイルに書く。
本体となるhello.rbと、viewsフォルダに分ける。
viewsフォルダの中には
layout.haml
index.haml
hello.haml
それぞれ以下のように書いてやればいい。
hello.rb
views/layout.haml
views/index.haml
views/hello.haml
前回のhello_haml.rbを含む全体をまとめたものとをgithubに上げておいた。
https://github.com/zakuni/hellohaml
本体となるhello.rbと、viewsフォルダに分ける。
viewsフォルダの中には
layout.haml
index.haml
hello.haml
それぞれ以下のように書いてやればいい。
hello.rb
views/layout.haml
views/index.haml
views/hello.haml
前回のhello_haml.rbを含む全体をまとめたものとをgithubに上げておいた。
https://github.com/zakuni/hellohaml
Sinatra,erbのHello WorldをHamlを使って書き直す
Slimというよさげなものが出てきて、是非とも流行ってほしいところですが、Sinatraに搭載されるのは次のリリースかららしいですし、僕はまずHamlをSinatraで使うのも覚束ないので、練習がてらに、
ここ↓に載ってるSinatraとerbを使ってのHello Worldのerb部分をHamlで書き直してみた。
http://gihyo.jp/dev/serial/01/ruby/0009?page=2
これが元のコード
そしてこれがHamlを使って書き直したもの。
「template :layout」には、htmlタグとかみたいな、各ページに共通する、まさにテンプレ部分を書くらしい。
ページによって無効にしたいときは、「haml :layout => false」してやればいいようだ。
ちなみに各タグに¥nとかの改行コードをつけてやれば、erbみたいに1行で書くこともできるけど、やってみたら気持ち悪い&見辛かった、のでこういう風にした。
インデントは全体的にちょっと気持ち悪いけど、Hamlはインデントに意味を持たせてるから下手にいじるとエラーが出ちゃう。
SinatraでHamlを使うときは、きちんと別ファイルを作ってやるとかしたほうがよさげなのかな。
追記:
別ファイルに作ってやった
http://zakuni.blogspot.com/2010/12/sinatrahaml.html
ここ↓に載ってるSinatraとerbを使ってのHello Worldのerb部分をHamlで書き直してみた。
http://gihyo.jp/dev/serial/01/ruby/0009?page=2
これが元のコード
そしてこれがHamlを使って書き直したもの。
「template :layout」には、htmlタグとかみたいな、各ページに共通する、まさにテンプレ部分を書くらしい。
ページによって無効にしたいときは、「haml :layout => false」してやればいいようだ。
ちなみに各タグに¥nとかの改行コードをつけてやれば、erbみたいに1行で書くこともできるけど、やってみたら気持ち悪い&見辛かった、のでこういう風にした。
インデントは全体的にちょっと気持ち悪いけど、Hamlはインデントに意味を持たせてるから下手にいじるとエラーが出ちゃう。
SinatraでHamlを使うときは、きちんと別ファイルを作ってやるとかしたほうがよさげなのかな。
追記:
別ファイルに作ってやった
http://zakuni.blogspot.com/2010/12/sinatrahaml.html
2010年11月25日木曜日
[Mac]rb-appscriptでカーソルキーを叩く
app('System Events').keystroke('k')
とかやるとキーボードのkを叩けるが、カーソルキーはちょっと特殊で
keystroke(28.chr) # 左
keystroke(29.chr) # 右
keystroke(30.chr) # 上
keystroke(31.chr) # 下
とやってやればいい。
2010年11月4日木曜日
Objective-Cの文法とMacRubyでの書き方(続き)
続き
Cocoaに、NSMutableStringというクラスがある。
リファレンスを見ると、
などと書かれているが、これはNSStringを継承しているということなので、NSStringのインスタンス変数やメソッドは全て使えるということ。
なので、NSStringのstringWithString:メソッドも使える。
書き方は、こう
MacRubyで書くとしたら
となる。
NSStringで作ったインスタンスの文字列は変更ができない。NSMutableStringのインスタンスでならできる。
で、文字列を後ろに追加するメソッドとかもある。
これをObjective-Cで使ってさっきのインスタンスに文字列を追加すると
MacRubyでは
となる。
あとは、MacRubyのチュートリアルにも載っているNSWindowのinitWithContentRect:styleMask:backing:defer:メソッド
リファレンスで見ると
とかなってて一見意味不明だが、これも引数とかが増えただけで基本的に同じ。
コロンの数と引数の数が同じになることを覚えておくと多少わかりやすい。
Objective-Cで使うときは
MacRubyで使うときは
とかになる。改行してる部分を半角スペースにして一行で書いても同じはず。
Cocoaに、NSMutableStringというクラスがある。
リファレンスを見ると、
inherits from NSString : NSObject
などと書かれているが、これはNSStringを継承しているということなので、NSStringのインスタンス変数やメソッドは全て使えるということ。
なので、NSStringのstringWithString:メソッドも使える。
書き方は、こう
NSMutableString* boku = [NSMutableString stringWithString:@"Doraemon"];
MacRubyで書くとしたら
boku = NSMtableString.stringWithString "Doraemon"
となる。
NSStringで作ったインスタンスの文字列は変更ができない。NSMutableStringのインスタンスでならできる。
で、文字列を後ろに追加するメソッドとかもある。
- (void)appendString:(NSString*)string
これをObjective-Cで使ってさっきのインスタンスに文字列を追加すると
[boku appendString:@"desu"];
MacRubyでは
boku.appendString "desu"
となる。
あとは、MacRubyのチュートリアルにも載っているNSWindowのinitWithContentRect:styleMask:backing:defer:メソッド
リファレンスで見ると
- (id)initWithContentRect:(NSRect)contentRect styleMask:(NSUInteger)windowStyle backing:(NSBackingStoreType)bufferingType defer:(BOOL)deferCreation
とかなってて一見意味不明だが、これも引数とかが増えただけで基本的に同じ。
- (返り値型)メソッド名:(引数型)引数名 ラベル:(引数型)引数名: ラベル(引数型)引数名: ラベル(引数型)引数名
コロンの数と引数の数が同じになることを覚えておくと多少わかりやすい。
Objective-Cで使うときは
NSWindow *window = [[NSWindow alloc] initWithContentRect:frame
styleMask:NSBorderlessWindowMask
backing:NSBackingStoreBuffered
defer:false];
MacRubyで使うときは
window = NSWindow.alloc.initWithContentRect frame,
styleMask:NSBorderlessWindowMask,
backing:NSBackingStoreBuffered,
defer:false
とかになる。改行してる部分を半角スペースにして一行で書いても同じはず。
Objective-Cの文法とMacRubyでの書き方
リファレンスの見方とかよくわかってなかったので自分用まとめ。間違ってるとこなどあれば教えてください。
Cocoaには、NSStringというクラスがあり、NSStringには、文字列を作成するstringWithString:というメソッドがある。
リファレンスを見ると
と書かれているが、これは
ということ。
最初の「+」は、クラスメソッドであることを示し、「-」になっているものは、インスタンスメソッドであることを示す。
これを実際に使って、obakeという変数に"Qtaro"という文字列を入れるには
とか書く。
NSString* obake; ってのは、int i; みたいなものでNSStringクラスのインスタンスのための変数を確保するという、まあとにかくObjective-Cではそう書くものだと思っていればいいもの。「*」が必要。
の部分が、Objective-C的なメソッドの呼び出し方で、
になってる。インスタンスメソッドの場合は [インスタンス名 メソッド名:引数] になる。
上は二行で書いたけど、
って一行で書くほうがたぶん普通なんでしょう。
で、これをMacRuby的文法で書こうと思ったら、
ってなる。
長いので続く
Cocoaには、NSStringというクラスがあり、NSStringには、文字列を作成するstringWithString:というメソッドがある。
リファレンスを見ると
+ (id)stringWithString:(NSString *)aString
と書かれているが、これは
+ (返り値型)メソッド名:(引数型)引数
ということ。
最初の「+」は、クラスメソッドであることを示し、「-」になっているものは、インスタンスメソッドであることを示す。
これを実際に使って、obakeという変数に"Qtaro"という文字列を入れるには
NSString* obake;
obake = [NSString stringWithString:@"Qtaro"];
とか書く。
NSString* obake; ってのは、int i; みたいなものでNSStringクラスのインスタンスのための変数を確保するという、まあとにかくObjective-Cではそう書くものだと思っていればいいもの。「*」が必要。
obake = [NSString stringWithString:@"Qtaro"];
の部分が、Objective-C的なメソッドの呼び出し方で、
返り値 = [クラス名 メソッド名:引数];
になってる。インスタンスメソッドの場合は [インスタンス名 メソッド名:引数] になる。
上は二行で書いたけど、
NSString* obake = [NSString stringWithString:@"Qtaro"];
って一行で書くほうがたぶん普通なんでしょう。
で、これをMacRuby的文法で書こうと思ったら、
obake = NSString.stringWithString "Qtaro"
ってなる。
長いので続く
2010年10月31日日曜日
2010年10月21日木曜日
sshでエラーが出たけどなんとかなった
sshでログインしようとしたらこんなんが出た。(若干編集してあります)
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
**************.
Please contact your system administrator.
Add correct host key in /Users/***/.ssh/known_hosts to get rid of this message.
Offending key in /Users/***/.ssh/known_hosts:3
RSA host key for ***.com has changed and you have requested strict checking.
Host key verification failed.
つまりはRSA host keyってのが変わったか何かしたから、直すなりなんなりしろってことらしい。
cyberduck使ったら普通に入れたし、頭にsudo付けて再度ログインしてもいけたけど、それじゃ解決してないし。
ググったら、known_hostsの該当部分を消してやり直したら解決できたという話が。
というわけでやってみると、以下のメッセージ
ググったら、known_hostsの該当部分を消してやり直したら解決できたという話が。
というわけでやってみると、以下のメッセージ
The authenticity of host '******.com (***.**.**.**)' can't be established.
RSA key fingerprint is ******************.
Are you sure you want to continue connecting (yes/no)?
yesして、出来た。
なんか初歩の初歩っぽくて恥ずかしいけど気にしない。
2010年10月15日金曜日
rvmでインストールしたRubyをアップデート
なんかググッてもあんまり出てこないので。
rvm upgradeというコマンドを使えばできるみたい。
例えば既にインストールしてあるruby-1.8を1.9にしたいときは
みたいにしてやればできる。
gemも引き継がれるので(確か引き継ぐかどうかも選択できる)、gemsetをexportしたりとかする必要もない。
もとのやつ(上の例だとruby-1.8)を消すか残すかも選択できるっぽいので、gemそのままでruby1.9をインストールしたいときとかも使えるのかも。
rvm install ruby-headとかでインストールしたものをアップデートするにはどうするんだろう。
rvm upgradeというコマンドを使えばできるみたい。
例えば既にインストールしてあるruby-1.8を1.9にしたいときは
rvm upgrade ruby-1.9 ruby-1.8
みたいにしてやればできる。
gemも引き継がれるので(確か引き継ぐかどうかも選択できる)、gemsetをexportしたりとかする必要もない。
もとのやつ(上の例だとruby-1.8)を消すか残すかも選択できるっぽいので、gemそのままでruby1.9をインストールしたいときとかも使えるのかも。
rvm install ruby-headとかでインストールしたものをアップデートするにはどうするんだろう。
2010年10月14日木曜日
rb-appscriptでRubyからAppleScriptを使う
参照: http://appscript.sourceforge.net/
まずはrb-appscriptというgemをインストール
で、実際使うときは
require 'rb-appscript'じゃないのね。
include Appscriptはどうも本来必要ないっぽいのだけど、僕の環境では書いてないとエラーが出た。
あとはAppleScriptのコードをRubyな感じで書くだけ
例として、Firefoxを起動してカーソルキーの下を一回押すには
まずはrb-appscriptというgemをインストール
sudo gem install rb-appscript
で、実際使うときは
require 'rubygems'
require 'appscript'
include Appscript
require 'rb-appscript'じゃないのね。
include Appscriptはどうも本来必要ないっぽいのだけど、僕の環境では書いてないとエラーが出た。
あとはAppleScriptのコードをRubyな感じで書くだけ
例として、Firefoxを起動してカーソルキーの下を一回押すには
app('Firefox,app').activate
app('System Events').keystroke(31.chr)
で、できるはず。
から、各アプリケーションが持ってるActionScriptを出力できるASDictionaryと、AppleScriptのコードをRubyとかPythonとかの文法に翻訳してくれるASTranlateがダウンロードできる。
2010年9月17日金曜日
TokyoCabinetをインストール
インストールばっかりしてますが。
http://fallabs.com/tokyocabinet/
ここから落としてきたtokyocabinet-1.4.46.tar.gzを解凍し
で、Rubyで使いたいので
おしまい。
http://fallabs.com/tokyocabinet/
ここから落としてきたtokyocabinet-1.4.46.tar.gzを解凍し
cd tokyocabinet-1.4.46
./configure
make
sudo make install
で、Rubyで使いたいので
gem install tokyocabinet
おしまい。
2010年9月15日水曜日
zeromqをインストール
ØMQとかいうカッコイイ名前のものが、「いいよ、すごいよ、便利だよ」とshokaiさんに教えてもらったので入れた。
http://www.zeromq.org/
のダウンロードページから zeromq-2.0.9.tar.gz を落としてきて解凍
インストールされた。
あとrubyはgemで
で、インストールできた。
http://www.zeromq.org/
のダウンロードページから zeromq-2.0.9.tar.gz を落としてきて解凍
cd zeromq-2.0.9
./configure
make
sudo make install
インストールされた。
あとrubyはgemで
gem install zmq
で、インストールできた。
2010年9月9日木曜日
zshを使う
Terminalで使うログインシェルをzshに変更しました。
続いて若干の設定。
.zshrcに
起動しなおすたびにコマンド履歴がリセットされているみたいだったので
ついでに
あとは、なんか強力な補完機能らしいので以下も記述しておきました。
環境設定 → 起動 → 開くシェル でコマンドのほうにして、パスを /bin/zsh にするもしくは
sudo dscl . -create /Users/ユーザ名 UserShell /bin/zshというコマンドを実行してTerminalを起動すればシェルがzshになります。
続いて若干の設定。
.zshrcに
RPROMPT="[%/]"を記述すると、右にカレントディレクトリのパスが表示されます。
起動しなおすたびにコマンド履歴がリセットされているみたいだったので
HISTFILE=~/.zsh_history
HISTSIZE=10000
SAVEHIST=10000
setopt hist_ignore_dups
setopt share_historyを追加したら記憶されるようになりました。
ついでに
autoload history-search-end
zle -N history-beginning-search-backward-end history-search-end
zle -N history-beginning-search-forward-end history-search-end
bindkey "^P" history-beginning-search-backward-end
bindkey "^N" history-beginning-search-forward-endとして、履歴が複数行のときにCtrl nと Ctrl pで履歴の移動を、矢印の上下でコマンドの行の移動をできるように。
あとは、なんか強力な補完機能らしいので以下も記述しておきました。
autoload -U compinit
compinit
2010年9月8日水曜日
RVMでJRubyをインストール
http://d.hatena.ne.jp/shokai/20100629/1277794269
↑を参考にJRubyをインストールしようとしていたのですが、RVMというものに興味がわいたのでそっちでやってみました。
RVMをgemでインストールして
これだけじゃ駄目らしく、次のコマンドも実行。
そして、.zshrcや.bashrcに以下を記述。
これでRVMが使えるようになるみたいです。
そしてJRubyをインストール。
bashだかzshだかでシェルを開きなおして
これでインストールされるので、終わったら
とやってやればjrubyが使えるようです。
↑を参考にJRubyをインストールしようとしていたのですが、RVMというものに興味がわいたのでそっちでやってみました。
RVMをgemでインストールして
$ sudo gem install rvm
これだけじゃ駄目らしく、次のコマンドも実行。
$ rvm-install
そして、.zshrcや.bashrcに以下を記述。
if [[ -s $HOME/.rvm/scripts/rvm ]] ; then source $HOME/.rvm/scripts/rvm ; fi
これでRVMが使えるようになるみたいです。
そしてJRubyをインストール。
bashだかzshだかでシェルを開きなおして
$ rvm install jruby
これでインストールされるので、終わったら
$ rvm use jruby 1.5.2
とやってやればjrubyが使えるようです。
Snow Leopardにwgetをインストール
wgetって今までにも使ったことあるような気がしていたのですが、どうやら気のせいだったらしいです。
MacPortsを使って入れたので
これだけです。
MacPortsを使って入れたので
$ sudo port install wget
これだけです。
2010年8月3日火曜日
登録:
投稿 (Atom)