Typescriptのpackage managerとしてtsdを使用しています。
がこれに乗ってないライブラリがちらほらあったりするので
追加する方法を備忘録的にメモを残しておきます。
1.git clone する
git clone https://github.com/Diullei/tsd.git
2.repo_dataにjsonファイルを追加します。
※他のライブラリのやつを参考にすればOK
3.npm installでnode_moduleをインストールする。
4.gruntでrepository.jsonを作成する。repoディレクトリ以下に作成される。
5.tsdコマンドを実行するディレクトリで
tsd ncfg
を実行しコンフィングファイルを作成する
6.repositoryTypeを0にuriを先ほどビルドしたrepository.jsonのpathを設定する。
※tsd search 追加したライブラリ名
で先ほど追加したファイル名が出てくればOK
ついでにpull reqしておくと他の人が楽できますが、だいぶ放置されているのか
pull requestが承認されない模様。
2013年9月14日土曜日
2013年3月26日火曜日
Grunt.jsでファイルを更新したらCoffeeScriptを自動compiileする
下の作業メモとは違うけどgrunt.jsのsample projectはこちら
https://github.com/float1251/grunt-sample-project
とりあえず作業ログを残します。
作業ログはcoffeescriptですが、githubはtypescriptでもやってます。
業務ではプラスしてjsとcssのminimifyとかもやるようにしました。
https://github.com/float1251/grunt-sample-project
とりあえず作業ログを残します。
作業ログはcoffeescriptですが、githubはtypescriptでもやってます。
業務ではプラスしてjsとcssのminimifyとかもやるようにしました。
Grunt.jsでcoffeescriptをcompileする
# grunt-cliをinstall
npm install -g grunt-cli
# sample-projectを作成する
mkdir ~/sample-grunt
# 作成したdirectoryに移動する
cd ~/sample-grunt
# package.jsonを作成する
# あとで編集できるので全部変更しないでOK
# あとで編集できるので全部変更しないでOK
npm init
#以下のコマンドを実行する
#--save-devとつけることでpackage.jsonにdevdepencyが追加される。
#そのため次からはnpm installコマンドで環境が設定できる。
npm install grunt --save-dev
npm install grunt-contrib-coffee --save-dev
# Gruntfile.jsを作成する
# URLからサンプルを持ってきて作成する.
# http://gruntjs.com/sample-gruntfile
# 今回はcoffeescriptで作成したが,jsのほうがいいかもしれない。
# json形式でのerror回避がcoffeescriptだと若干めんどくさい
# http://gruntjs.com/sample-gruntfile
# 今回はcoffeescriptで作成したが,jsのほうがいいかもしれない。
# json形式でのerror回避がcoffeescriptだと若干めんどくさい
module.exports = (grunt)->
grunt.initConfig {
pkg: grunt.file.readJSON("package.json"),
coffee:{
glob_to_multiple:{
expand:true,
cwd:"./coffee",
src:["*.coffee"],
dest:"js/",
ext:".js"
}
}
}
grunt.loadNpmTasks "grunt-contrib-coffee"
grunt.registerTask("default",["coffee"])
# testのためcoffee
mkdir coffee
echo console.log\("Hello Grunt"\); > coffee/test.coffee
# coffee以下にファイルができていることを確認
ls coffee/
>test.coffee
# 以下を実行してErrorがなければOk
grunt
ファイルが更新されたらcoffeescriptをcompiliする
# grunt-contrib-watchを試す
npm install grunt-contrib-watch --save-dev
# Gruntfileに以下を追加する
grunt.loadNpmTasks "grunt-contrib-watch"
watch:{
files:["coffee/*.cofffee"],
tasks:["coffee"]
}
# 以下を実行して watchされていることを確認
grunt
# coffee以下のファイルを修正して、jsファイルが出力されていることを確認する
※base_pathやcwdにはsrcに記載しているファイル名までのPathを記述する。
これを記述しないと
src:"src/*.coffee"
dest:"js/"
のときに
js/src/*.js
という形式になってしまう。
2013年3月6日水曜日
enchant.jsでまたも適当につくってみました
というわけでまたパズルゲームです。
今度はキーボードを押したらブロックが伸びていくタイプのものです。
前回の反省を生かして、
QUnitを導入し、単体テストを実施しました。
また前回はバージョン管理してなかったのでgitでバージョン管理を行いました。
commitのタイミングはチケットの作業が終わるくらいで一回行うように心がけました。
■反省点
・チケットの作業が終わってもcommitし忘れることがあった。
本当はredmineとgitを連携させたいんだが、ちょっと面倒。。。
・単体テストの粒度が甘く、本格的に結合していくときにバグが発生することがあった。
もうちょっとテストの粒度を細かする。というかしっかりと境界値やテストに漏れがないか確認する。
・前回に比べればだいぶ綺麗だが、DRYっぽくなってない部分があったり、
一部メソッドの行数が長かったりするのは不満。どっかのタイミングでこれでもやろうかな
・何かJavascrioptというかcoffeescriptっぽく書けてないような気がする。
どっかのOSSとかを読んで見たほうがよいと思った(小並感)
次あたりからUnityで何かつくろうか、それともまたenchant.jsで何かつくるか、
はたまたAndEngineで何かつくるかは考え中。。。
○2013/03/07 追記
・作業時間は5時間弱でした。業後に2日かけて作りました。
これの半分くらいの時間で作れるようになりたいかな。
・ドキュメント残すようにする。
引数が何の型を想定して作っているのかよくわからなくなるので。
調べたらYUIDocというのがあるらしいので次はこれを導入してみる。
今度はキーボードを押したらブロックが伸びていくタイプのものです。
前回の反省を生かして、
QUnitを導入し、単体テストを実施しました。
また前回はバージョン管理してなかったのでgitでバージョン管理を行いました。
commitのタイミングはチケットの作業が終わるくらいで一回行うように心がけました。
■反省点
・チケットの作業が終わってもcommitし忘れることがあった。
本当はredmineとgitを連携させたいんだが、ちょっと面倒。。。
・単体テストの粒度が甘く、本格的に結合していくときにバグが発生することがあった。
もうちょっとテストの粒度を細かする。というかしっかりと境界値やテストに漏れがないか確認する。
・前回に比べればだいぶ綺麗だが、DRYっぽくなってない部分があったり、
一部メソッドの行数が長かったりするのは不満。どっかのタイミングでこれでもやろうかな
・何かJavascrioptというかcoffeescriptっぽく書けてないような気がする。
どっかのOSSとかを読んで見たほうがよいと思った(小並感)
次あたりからUnityで何かつくろうか、それともまたenchant.jsで何かつくるか、
はたまたAndEngineで何かつくるかは考え中。。。
○2013/03/07 追記
・作業時間は5時間弱でした。業後に2日かけて作りました。
これの半分くらいの時間で作れるようになりたいかな。
・ドキュメント残すようにする。
引数が何の型を想定して作っているのかよくわからなくなるので。
調べたらYUIDocというのがあるらしいので次はこれを導入してみる。
2013年3月5日火曜日
ライフゲームをさくっとつくった
ライフゲームなんてあるんですね。知らなかったです。
基本ルール
誕生
死んでいるセルに隣接する生きたセルがちょうど3つあれば、次の世代が誕生する。
生存
生きているセルに隣接する生きたセルが2つか3つならば、次の世代でも生存する。
過疎
生きているセルに隣接する生きたセルが1つ以下ならば、過疎により死滅する。
過密
生きているセルに隣接する生きたセルが4つ以上ならば、過密により死滅する。
(Wikipediaより引用)
参考URL
http://ja.wikipedia.org/wiki/%E3%83%A9%E3%82%A4%E3%83%95%E3%82%B2%E3%83%BC%E3%83%A0
http://www.daily-labo.com/ygg18.html
ルールはすごい簡単なんでさくっと作ってみました。
すごい不思議な動きをするなぁと思いました(小並感)。
基本ルール
誕生
死んでいるセルに隣接する生きたセルがちょうど3つあれば、次の世代が誕生する。
生存
生きているセルに隣接する生きたセルが2つか3つならば、次の世代でも生存する。
過疎
生きているセルに隣接する生きたセルが1つ以下ならば、過疎により死滅する。
過密
生きているセルに隣接する生きたセルが4つ以上ならば、過密により死滅する。
(Wikipediaより引用)
参考URL
http://ja.wikipedia.org/wiki/%E3%83%A9%E3%82%A4%E3%83%95%E3%82%B2%E3%83%BC%E3%83%A0
http://www.daily-labo.com/ygg18.html
ルールはすごい簡単なんでさくっと作ってみました。
すごい不思議な動きをするなぁと思いました(小並感)。
coffeescriptでテトリスつくってみた
バグがあるがそれなりに形になったので。
・CoffeeScriptというかJavaScriptでハマった。
・単体テストやらずに実装してたらバグが出た時にかなり困った。
・Cellとかもクラス化しとけばよかった。
また作りが悪いのでリファクタしたくても単体テストがないのでやる気にならなかった。
・redmineでチケット切りながらやったけどMTVが保てるのでいいと思った(小並感)
・最後の最後にQUnitを導入。UnitTestがあるとやはり不具合修正のスピードは全然違う。
QunitでCoffeeScriptでコンパイルしたjsを使用するには-bをつけてコンパイルする。
・ブロックの定義は4x4の配列よりもx,yを中心にどの位置に配置するかのほうがよかった。
ex:(x,y)=(1,1)のT字ブロックの際はx=1,y=1 type=[[1,0],[0,1],[0,-1]]みたいに。
反省は次回に生かさないとね。
また気が向いたら作ってみますよ( ̄ー ̄)
・CoffeeScriptというかJavaScriptでハマった。
・単体テストやらずに実装してたらバグが出た時にかなり困った。
・Cellとかもクラス化しとけばよかった。
また作りが悪いのでリファクタしたくても単体テストがないのでやる気にならなかった。
・redmineでチケット切りながらやったけどMTVが保てるのでいいと思った(小並感)
・最後の最後にQUnitを導入。UnitTestがあるとやはり不具合修正のスピードは全然違う。
QunitでCoffeeScriptでコンパイルしたjsを使用するには-bをつけてコンパイルする。
・ブロックの定義は4x4の配列よりもx,yを中心にどの位置に配置するかのほうがよかった。
ex:(x,y)=(1,1)のT字ブロックの際はx=1,y=1 type=[[1,0],[0,1],[0,-1]]みたいに。
反省は次回に生かさないとね。
また気が向いたら作ってみますよ( ̄ー ̄)
2013年3月2日土曜日
適当につくっています
めっちゃ適当に作ってます。
enchant.jsは手軽につくれるので個人的に気に入ってます。
ただcoffeescriptというかjavascriptにイライラしてます。
とりあえず、最低限の機能すら実装できてないのでもっとちゃんと実装しないとなー
そしてUnityでのゲーム開発も進めないとだし。。。
時間が足りなすぎる^^;
herokuにredmineをdeployした
作業メモ。
一部漏れありますが、手順をそのまま残してます。
・最初最新版(2.2.3?)入れようとしたが、エラーが出たので速攻諦めて
記事通り2.2.2でやりなおした。
2.3でもいけたかもしれないが、どうだろう。
見やすく編集しなおそうかとおもたが面倒になったのでこのままでw
■Heroku上にRedMineをinstallする
環境
Mac moutain lion
参考URL
http://d.hatena.ne.jp/rochefort/20130107/p1
http://railsguides.net/2012/04/28/how-to-deploy-redmine-to-heroku/
・Heroku
herokuToolbelt for Mac OS
をDLしてインストールする
ターミナルを起動して
heroku login
Email:xxxxx
Password:xxxxx
を入力。
SSH Public Key は Yでおk
bundlerをinstall
sudo gem install bundler
git clone git://github.com/redmine/redmine.git
cd redmine
cp config/database.yml.example config/database.yml
>Could not find gem 'rails (= 3.2.12) ruby' in the gems available on this machine.
>Run `bundle install` to install missing gems.
と出たので
bundle install
を実行。
bundle install でerrorが出たので
errorに書かれていたとおり、
sudo gem install rmagick -v '2.13.2'
を実行。成功したら改めてbundle installを実行
->mkmf.logを見ると
Can't find magick-configと見えます。
http://d.hatena.ne.jp/ireiz/20110816/1313478957
http://stackoverflow.com/questions/164307/installing-rmagick-on-mac-os-x-with-macports
HomeBrewのインストール
http://mxcl.github.com/homebrew/
の下にあるコマンドをコピペして終了
brew doctor
>Your system is raring to brew.
brew install imagemagick
sudo gem install rmagick
でredmineのディレクトリに移動して改めて
bundle install
またError
wand/MagickWand.h......noとのこと
http://stackoverflow.com/questions/10063051/bundle-cant-install-rmagick-gem-on-mac-osx-10-7
をみて
mdfind MagicWand.h
でMagicWand.hのPathを確認
C_INCLUDE_PATH=/MagicWand.hのPath sudo gem install rmagick
でrmagic
http://www.pistolfly.jp/weblog/2011/03/centosimagemagick.html
http://www.pistolfly.jp/weblog/2010/07/sudopath.html
pkg-config command not found
brew install pkg-config
*正直色々やりすぎてどれが効果的だったかはよくわかりません。
とりあえず、pkg-configが入っていなかった。というのが一番と思われます。
これら以外にもbundle install しろやカスと怒られたので何度かbundle install してます。
これは明らかに私の手順が甘いからです。
-----
.gitignoreから下記を削除
Gemfile.lock
Gemfile.local
public/plugin_assets
config/initializers/session_store.rb
config/initializers/secret_token.rb
config/configuration.yml
config/email.yml
bundle install
rake generate_secret_token
なんかmysql2がたりんと言われましたがシカトしました(*ノω・*)テヘ
heroku create
git add -A
git commit -m "prepare for heroku"
git push heroku master
-----
結局できなかった。
herokuにdeployまでしたがapplictionErorrになって動かない。
redmineのバージョンを下げて実行する
2.2.2でやりましょう。
-----
■2.2.2で試している
brew install postgresql
bundle install
sudo gem install pg -v '0.14.1'
>can't find libpq
http://www.uponmyshoulder.com/blog/2011/cant-find-the-postgresql-client-library-libpq/
sudo su
env ARCHFLAGS="-arch x86_64" gem install pg
これでbundle install はOK
rake generate_secret_token
heroku create
git add -A
git commit -m "prepare for heroku"
git push heroku master
->SQLite3でエラーってる
GemFilesでSQLITE3の部分をコメントアウト
GemFiles.lockでも同様に行う
#コメントアウトしたらcommitするのを忘れずに
#configの修正
config/application.rbを修正
config.assets.initialize_on_precompile = false
config/environment.rbを修正
warningが出るので、exit 1をコメントアウト
heroku run:detached rake db:migrate
heroku run:detached rake redmine:load_default_data
heroku restart
heroku open
これでherokuにredmineがキタ━━━━(゚∀゚)━━━━!!
登録:
投稿 (Atom)