よく調べるものメモ
Excel
- 文字列は
"
で囲む - 文字列を連結するときは
&
で繋ぐ
MySQL
- 文字列連結は||
mysql> select -> '現在の時刻は' || current_timestamp || 'です' || '明日は晴れかな?' || '雨かな?' || '晴れたらいいな'; +----------------------------------------------------------------------------------------------------------------------------------+ | '現在の時刻は' || current_timestamp || 'です' || '明日は晴れかな?' || '雨かな?' || '晴れたらいいな' | +----------------------------------------------------------------------------------------------------------------------------------+ | 現在の時刻は2014-03-03 20:38:31です明日は晴れかな?雨かな?晴れたらいいな | +----------------------------------------------------------------------------------------------------------------------------------+
InnoDB Plugin
ROW_FORMAT=COMPACT;
がなんだか知りたい
InnoDB Plugin
- MySQL 5.5で置き換えられた次期バージョンInnoDBと言える存在
- innoDB Pluginで新しく追加された機能
- Performance and scalability enhancements
- Fast index creation
- Data compression
- New row format
- File format management
- INFORMATION_SCHEMA tables
InnoDB Pluginでは新たなファイルフォーマットが追加されている
- 指定できるフォーマット一覧
- Redundant(Antelope)
- Compact(Antelope)
- Dynamic(Barracuda)
- Compressed(Barracuda)
- デフォルトはCompact(従来のInnoDBのデフォルト値と同じ)
mysql > ALTER TABLE t ROW_FORMAT=Compressed;
- ファイルフォーマットのバージョンAntelope -> Barracudaの順に新しい
参考:http://nippondanji.blogspot.jp/2010/03/innodb-plugin.html
Sublime TextでRubyが文字化け
Terminalではちゃんと文字化けされずに表示されるのに、
Sublime textでは文字化けしちゃう問題の解消。
Ruby.sublime-build ```` { "shell_cmd": "ruby -u \"$file\"", "file_regex": "^[ ]File \"(...?)\", line ([0-9]*)", "selector": "source.pb", "env": {"LANG": "tr_TR.UTF-8"} }
by [Set default encoding for files and build output](http://sublimetext.userecho.com/topic/113346-set-default-encoding-for-files-and-build-output/) `"env": {"LANG": "tr_TR.UTF-8"}`お味噌らしいです。
Ruby on Rails でrakeが上手く行かなかったことのメモ
あるものを作りたくて、小学生でもわかるRuby on Rails通りに試してました。
でもコマンド一つ一つほぼ上手く行かなくて、あまりにも酷かったので未来の自分のためにメモ。 (この時の環境はMac OSX 10.9です。)
rake db:create
できない。
症状
$ rake db:create Could not find thread_safe-0.3.4 in any of the sources Run `bundle install` to install missing gems.
失敗 言われたままやってみた。
bundle install&&bundle update
rake db:create
$ rake db:create Could not find thread_safe-0.3.4 in any of the sources Run `bundle install` to install missing gems.
...状況変わらず。うそつき。
微妙な解決策 gem installで頑張る。
gem install thread_safe
rake db:create
$ rake db:create Could not find tzinfo-1.2.1 in any of the sources Run `bundle install` to install missing gems.
これが5,6パターン続く...。
bundle install
しろとか言われますけど、bundle update
も含めて10回くらいやったし、rails入れ直したり...
この辺りででようやくbundle install
で依存パッケージインストールしてくれてないんやな。ってことにやっと気づきました。
解決策 インストールディレクトリを指定
bundle install --path vendor/bundle
rake db:create
$ rake db:create Could not find rake-10.3.2 in any of the sources Run `bundle install` to install missing gems.
インストールディレクトリを指定することで依存パッケージはインストールできたみたいです。
bundle install
って何なの。
rake db:create
できない。その2
次はrakeが無いとか言われちゃいました。
いろいろやってるうちに変なことしちゃったのかもしれない(・ω<)
症状
$ rake db:create Could not find rake-10.3.2 in any of the sources Run `bundle install` to install missing gems.
およよ。これはどういうこと。
ここから半日さまよった。
解決策 rakeのダウングレード
Festus Tamakloeの解答がドンピシャ。
Remove all the versions of Rake ==>
gem uninstall rake
Remove Gemfile.lock ==>rm Gemfile.lock
Run bundle install ==>bundle install
gem install rake --version=10.0.2
if you still get the error then put this into your gemfile.
gem 'rake', '0.8.7'
http://stackoverflow.com/a/14486067
自分が実際に行った手順
- Gemfileに
gem 'rake', '10.0.2'
を追加 bundle update
bundle exec rake db:create
(gemで入れたrakeとverが違うため、こうしろって怒られた。)
$ bundle exec rake db:create db/development.sqlite3 already exists db/test.sqlite3 already exists
ふはっ。まあいいんだけど。
まとめ
node.js + express4.0.0 + Socket.IO
node.js + express4.0.0で、Socket.IOを使いたかった。
問題
- Socket.IO本家にある、Using with the Express web frameworkのソースをコピペして重複してるところを削除し、app.jsに追加。
npm start
してコンソールを確認すると下記エラー
Resource interpreted as Script but transferred with MIME type text/plain: "http://localhost:3000/socket.io/socket.io.js".
どうやらSocket.IOサーバーが起動していないみたい。
解決方法
google先生にお伺いを立てたところ、 express + socket.ioによるWebSocket実装方法についてという記事を発見しました。 結果app.jsではなく、/bin/wwwを編集するということが分かり、解決に至りました。
ここからは備忘録
上記記事に掲載されてるソースまるっとコピペで立ち上がる。
// add start var socketIO = require('socket.io'); // クライアントの接続を待つ(IPアドレスとポート番号を結びつけます) var io = socketIO.listen(server); // クライアントが接続してきたときの処理 io.sockets.on('connection', function(socket) { console.log("connection"); // メッセージを受けたときの処理 socket.on('message', function(data) { // つながっているクライアント全員に送信 console.log("message"); io.sockets.emit('message', { value: data.value }); }); // クライアントが切断したときの処理 socket.on('disconnect', function(){ console.log("disconnect"); }); });
var io = socketIO.listen(server);
のlistenの中身をserverにするのがミソっぽいです。
Ghost
GhostをNode.jsの勉強中に発見しましたので、早速使ってみることにしました。 TumblrからGhostへの以降ツールも発見したのでメモ。
テンプレートはSWAYZEを使用しました。 でも日本語フォントだけはちょっと細字のものに変える必要がありそうですね。
herokuで公開しているので、画像関連がちょっと恐い感じ。
ちなみにherokuでの公開手順は、以下のサイト様を参考にしました。
http://qiita.com/hissanova/items/80258a475060a548f2d6
http://www.howtoinstallghost.com/how-to-install-ghost-on-heroku/
TumblrからGhostへの以降ツールはTumblr to Ghostを使用しました。
こちらにアクセスして、テキストボックスにTumblrのドメインを入力すれば、Tumblrのデータをjson形式でダウンロードできます。
このときjsonファイルの中にある、"slug"の値が空の記事があったようで、Ghostにインポートしたときにエラーが出ました。
そこは適当な値を入れる必要があります。
しかし、記事の日本語が消失してしまいましたw
地道に直します。
また、ブラウザでText URL Linkerなど、ウェブページの文書中にURLに自動的にリンクを張ってくれるような拡張機能を使っていると、URLの存在する行が編集できなくなるっていうバグがありました。
まあいろいろ使ってみよう。
Terminalで 'fn' + 'Delete' が '~ (チルダ)' になった。
I was able to fix this by going to Terminal->Preferences->Advanced and choosing xterm-256color as the setting for "Declare Terminal As"
参考:OS X Terminal fn+delete doesn't work, prints ~
すれば良いだけ。ターミナルの宣言方法って何なんだろう。
種類が選べるってことでいいのかな。宣言…。
ここまでの経緯
HHKB Lite2 for macを購入しました。
ドライバを入れて早速使ってみたのですが、[fn] + [~]を押してもDeleteできない…
不良品かと思いつつ色々やってしまい、上記の問題に陥ってしまいました。
ターミナルの宣言方法って確かに途中触った記憶あるわ(゚∀゚)←
とりあえず、上記の手順をしてみた結果、全てうまく行きました。