2010年11月30日火曜日

asciicastsのsyntaxhighlighter

けっこうしつこい性格(のわりに面倒なことがきらいな大雑把野郎なんですけど)なので、asciicastsのsyntaxhighlighについて調べる。といってもソースを表示してみただけですが。

結果から言うと、やはりSyntaxHighlighterでした。ただし、rubyのコードにほぼ限定されるサイトなので、それ用にカスタマイズされた.jsと.cssを作ってますね。

なるほどなあ。

「ありがとう」って伝えたい無料アプリ50選(2010年版) : ライフハッカー[日本版]

「ありがとう」って伝えたい無料アプリ50選(2010年版) : ライフハッカー[日本版]

興味深く拝読。

知らないツールがたくさんあった。Notational Velocityとか。他のサイトでの説明丸投げにしているのはP2P系?

EverNote使用量

今月の「サイクル残り」ってつまり使い始めた日から「サイクル」が始まるということか。

とりあえずあと22日あって、使用量122K・・・(^^;)。Webクリップならあと270回程度できるということは、毎日10回以上Webクリップできるのか。問題はそんなにclipする情報に出会わないことだな。

達人たちはどんなふうにつかってるのかなあ。今度解説本でも立ち読みしますか。

herokuを使ってみるぞ計画

Lokkaのおかげでherokuって意外に簡単に使えるもんだ、ということがわかったので、自分でも何か作ってpushしたいな、と思っています。

これから12月の繁忙期を迎えるので、年末年始のお休みを利用して何かやってみようかな、と。

楽しいことばかりでありますな。ネットの上は。

Javascript版が正解か

rubyのSyntaxHighlightライブラリ(ツールもありますな)をあれこれ調べる。でも結局、Lokkaの場合ならテーマ側で出力するときに対応する必要があるわけで、やはりplugin化するならJavascriptを埋め込むのが正解みたいだ。

あとはスクリプト本体をpluginの中に置くか、ネット上の公開ソースを参照するか、程度の選択肢でしょうか。速さとスペースのどちらをとるか。ローカルで実行している限りはjavascriptをplugin内に持たせるとむちゃ速いですわね。

heroku上においたときはどうなるのかな。こんど実験してみよう。

NASA - NASA Sets News Conference on Astrobiology

NASA - NASA Sets News Conference on Astrobiology Discovery; Science Journal Has Embargoed Details Until 2 p.m. EST On Dec. 2

「実は我々は2年前から地球外生命体とコンタクトを取っていた・・・」とかだったら・・・すごいなあ。完全にSFじゃ。それでもってものすごい技術がすでに実用出来る状態になっていて、たとえばそれは「どこでもドア」だったりして、明日から宇宙の中のどこにでも瞬時に行けますよ、なんていう、「バラ色の大変化」が起きたら楽しいだろうなあ。

反対に「We are alone」だったりしたらそれまた大ショックですが。

とにかく楽しみです。

私は普段ほとんどTVを見ないし、リビングのTVにスイッチが入るのはたいてい夜の9時以降なんですが、この日だけは朝から見ようと思います。

2010年11月29日月曜日

なんてこったい

syntax highlight ruby
でググッたら、いろいろ出てくること・・・orz調べ方が足りなかった。


まだまだたくさん出てきそう。Javascript読み込むより、gemをinstallしてrubyで処理するほうがいいのかなあ。

ま、これも勉強ですね。

ちょいと勉強

ASCIIcastsのここここで、railsアプリでtwitter経由のログインを勉強してみる。

うむ、おもしろそうだからこんどやってみよう。

ASCIIcastsのsyntaxhighlightってすてきだな。

2010年11月28日日曜日

昼過ぎから暴風雪。すでに地面は真っ白。道路も凍結している模様。

いよいよ、冬が来るなあ。明日から靴を替えなきゃ。スニーカーだと寒すぎるし滑るので危険。コロンビアというメーカーの、−30度までは平気で過ごせる、というトレッキングシューズでこのところ過ごしている。足先や手先が冷たいのつらいからなあ。
現行モデルだとこれが一番近いかな。もうちょっと高かったような気がするけど。

ちなみのこの靴だと、どんなに冷え込んだ日でも犬の散歩に支障はない。サバイバルの基本は「足を濡らさないこと」だそうだ。冬の北海道で靴の中に雪を入れたらつらいよー。

DISQUS

たしかLokkaにDISQUSを入れた、という人がいたはずなんだけど・・・herokuから削除しているみたいですね。

ruby用のgemがすでにあって、
gem install disqus
でインストール。あとは
Disqus::defaults[:account]=MY_DISQUS_ACCOUNT
で基本の設定終了。って簡単すぎないか?あとはテーマのentry.hamlに
=disqus_thread
とか
= disqus_combo(:color => "blue", :hide_mods => false, :num_items => 20)
と書けばいいらしい。ためにし手元のローカルなLokkaでやってみましたが、DISQUSからのインストール作業をちゃんとやれていないためか、コメントへのリンクをクリックするとDISQUSのダッシュボードに飛ばされてしまいます。gemのdisqusには「developer」モードがあって、それをtrueにしておくとローカルでも動くという仕組み。

ま、こんなところまでやってみたけど、これ以上はいいか、という根気のない素人でございます。

Lokka SyntaxHighlighter plugin いちおう完成

というわけで、朝方目覚めた時からうつらうつらとpluginのことを考えてしまった。

LokkaのHelpersの「select_field」のソース、commentのform.hamlを読む。・・・うーん、つまり、モデルに対応していないselectを自分で作るしかないのか。

それなら、とやってみたのが以下のコード。
module Helpers
    def select_tag(name,select,values = [], options = {})
      attrs = ''
      options.each do |key, value|
        attrs += %Q( #{key}="#{value}")
      end

      html = %Q('
    end
  end
index.hamlから
= select_tag('theme',Option.sh_theme,[["shThemeDefault","default"],...
と呼び出して、
     app.put '/admin/plugins/syntaxhighlighter' do
        Option.sh_theme = params[:theme]
        flash[:notice] = 'Updated.'
        redirect '/admin/plugins/syntaxhighlighter'
      end
値を保存すれば、ちゃんと動きました。うーむ、うれしい。

2010年11月27日土曜日

コメントを

このblogのコメントを「DISQUS」にしてみた。
どんなことになるんだかよくわかんないだけど、Lokkaも「どーせDISQUSとか使うだろうからコメントは力が入ってない」と作者さんが言っているので、それなら使ってみようか、と。

このあとコメントの練習をしてみよう。

Lokkaのselect_field

そこでいよいよpluginの管理画面を作る。といってもsyntaxhighlighterのテーマファイルを指定するだけの機能しかない。

pluginそのものの有効無効の切替えはそのうちLokka本体のほうで対応するんだと思います。

inputでテーマ名を直接入力して切り替えるのはすぐできた。1文字でも間違えるとテーマがなくなるおそろしい仕様だけど。(^^;)

できればselectフィールドで選択できるようにしたい。というわけでLokkaのhelperに定義されているselect_fieldを使うことにしたんだけど、素人には厳しかった。まだできてません。今日はも無理。

.field
    %label{:for=>'theme_title'} Select Theme
    %br
    = select_field(Option,'sh_theme',[["shThemeDefaul","Default"],["shThemeDjango","Django"],["shThemeEclipse","Eclipse"]])
こんなふうに書いてみたら、ま、selectフィールドそのものは表示される。でも選択肢をかえても「Option.sh_theme」に反映されていないようなんだあ。
pugin本体側のsyntaxhighlighter.rbでは
def self.registered(app)
      app.get '/admin/plugins/syntaxhighlighter' do
        haml :"plugin/lokka-syntaxhighlighter/views/index", :layout => :"admin/layout"
      end
      app.put '/admin/plugins/syntaxhighlighter' do
        Option.sh_theme = params[:sh_theme]
        flash[:notice] = 'Updated.'
        redirect '/admin/plugins/syntaxhighlighter'
      end
とやっている。「app.put」の最初の
Option.sh_theme = params[:sh_theme]
でparams[:sh_theme]を拾っているわけですが、ここでselect_fieldの選択した値を拾えるようにしたい。でもどうやるか、よくわかんなかったです。

ま、また明日がんばってみよう。作者さんに直接聞くのが早いか。

Syntax Highlighterのautoloader

syntaxhighlighterのplugin化をシコシコとやってみる。

本家サイトでは


 

こんな感じで「autoloader」を使え、と書いてあるんですが、そのとおりやってもちゃんと動かない。
brushをずらずらと読み込ませるようにすると順調に動くんだけど・・・。しかし使わない言語のbrushを常に読み込むのは仕様としてかっこ悪いので、ここはautoloaderを使えるようにしたい。

本家のforumとかも調べてみたら、head部分に書いたらautoloaderはまともに動かない、と書いている人がいる。
では、ということで
content_for :footer do
 s
end

できた・・・。なんなんだろう、いったい。(^^;)
とりあえず、javascriptを読み込んでコードを見やすくハイライトするところまではOK。

2010年11月26日金曜日

lokkaも

シンタックスハイライタをいじっているけど、なんだか今日はダメダメの日でした。あんまり進まない。

autoloaderがうまく動かないのはなぜだろう・・・。

ま、brushをずらずら並べてもautoloaderを書いてもheaderに挿入されるコードの量はそうそう変わらないので、動く方法でいい、としよう。

次はadminのindex.hamlだなあ。これが・・・またまた私には難物だなあ。

redcar-0.9.0

redcarがupdate。0.9.0になった、と。

日本語を入力するとコードのハイライトが消えてしまう、というbugは相変わらず、日本語とロシア語だけで起こる現象のようなので、fixにも力が入らないのもうなずける。(^^;)

gemでinstallするんですが、その後に
redcar install
という手順を踏むので、15MばかりのJava関連のファイルが必ず落ちてくる。古いgemを消さないとけっこう容量食うなあ。

2010年11月25日木曜日

Lokka SyntaxHighlighter plugin化

とりあえずチャレンジということで、plugin化をやってみた。

結果的にまずは成功。


しかし・・・この程度のことにここまで時間がかかるか、という・・・orz
単に
module Lokka
  module Syntaxhighlighter
    def self.registered(app)
      app.before do
        s=''
        s+=''
        s+=''
        s+=''
        s+=''
 
        content_for :header do
          s
        end
      end
    end
  end
end
これだけ書いて無事動くようになるまで、今日の自由時間と寝酒時間のかなりを使ってしまった。
できれば管理画面でpluginの有効無効を切り替えるフォーム、それとcssを選ぶフォームを付け加えたいわけだけど、この分だといつできるのかわかんないなあ。

2010年11月24日水曜日

続きを読むの続き

本職の方のコードってきれいだなあ。とつくづく感心しました。

こんなふうにすぐ書けるようになりたいな。死ぬまで無理か、もう50だから(^^;)。

Lokka SyntaxHighlighter 試した

自前のコードだと効率が悪い(^^;)ので、SyntaxHighlighterをlayout.hamlに組み込む方針でとりあえず試してみた。

%script{:src => "#{@theme.path}/shjs/shCore.js" ,:type=>"text/javascript"}
    %link{:rel => 'stylesheet', :href => "#{@theme.path}/shcss/shCore.css",:type=>'text/css'}
    %link{:rel => 'stylesheet', :href => "#{@theme.path}/shcss/shThemeMidnight.css",:type=>'text/css'}
    %script{:src => "#{@theme.path}/shjs/shBrushRuby.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shAS3.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushApplescript.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushbash.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushCSharp.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushCpp.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushCss.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushDelphi.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushDiff.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushErlang.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushGroovy.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushJScript.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushJava.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushJavaFX.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushPhp.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushPlain.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushPowerShell.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushPython.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushSass.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushScala.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushSql.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushVb.js" ,:type=>"text/javascript"}
    %script{:src => "#{@theme.path}/shjs/shBrushXml.js" ,:type=>"text/javascript"}

    
    :javascript
      SyntaxHighlighter.defaults['toolbar']=true;
      SyntaxHighlighter.config.strings.viewSource ="copy to clipboard";
      SyntaxHighlighter.all();

こんなコードをlayoutに埋め込んでみる。
そうすると、

こんなふうに表示することができる。でもこれだとtheme内でしか表示できないので、plugin化したほうがいいような気がする。

作者さんの最近のblogに、theme側でheaderを持っていれば色々挿入できる、と書いてあるので、content_for :header doでjavascript埋め込んでやればplugin化ができるのかな。

明日以降のチャレンジということで。

2010年11月23日火曜日

coderay

rubyでプログラミングのコードをhighlightしてくれるライブラリ、CodeRay

Lokkaで使えるようにできないかなあ、と考えていたのを、本日のハイな状態でやってみました。(^^;)

ただ、Post全体を検索して、code部分をcoderayでscanして差し替える、というところまでは行き着いていないです。とりあえず、最初に出てくる「pre」tagをHpricotで抜き出して、それをCodeRay.highlightで処理する、というところまでです。

def coder(body)
      doc=Hpricot(body)
      coded=(doc/'pre').first.inner_text
      coded=CodeRay.highlight(coded,:ruby)
    end

書いたコードはたったこれだけ。で、viewの中で
= coder(post.body)
を記述してみると、

えーとこれは
coderay-stylesheet
で生成される.cssを適用している状態です。タブの入り方が変ですねえ。

自前でやるより、このサイトで使わせてもらっているhighlighterを組み込んだほうがいいような気がするなあ。

落ち込む

午前中はrailsをいじっていたというか、いじるために勉強をしていた。
しかし、いくらあちこち調べてもなんだかよくわからないし、勉強した結果を形にしたくてもうまく手が動かないし、いくら勉強してもそれが何かを生み出すこともなさそうだし、という思考の負のスパイラルに落ち込んだ。もういいや、rails使えるようにならなくても死なないし、とかふてくされていた。伊藤計劃の本でも読もう、と思った矢先に、twitter上でこんなRTを見てしまった。

何も成し遂げない人は「できるだろうかできないだろうか」と考える。成し遂げる人は「どうやったらできるか」しか考えない。(大意)

なるほどー。というわけで、午後から元気を出してLokkaをいじり始めたわけですね。どーせ素人だし、仕事じゃないんだし、その時一番おもしろい、と思えることをやればいいんですよね。

「続きを読む記法」も全然大したことじゃないし、世のため人のためにもならないけれど、「できた」と思えたときの充実感がすごいわけで、やはりヘタでもヘタレでもだめだめでもど素人でも、しばらくプログラミングの勉強を続けよう。

Lokkaをいじる

Lokkaのコミッタさんのひとり、nkmrshnさんの日記に触発されて、Lokkaで「続きを読む記法」ができるかどうか試してみた。

内容はLokkaサイトに書いておいたので省略。
pluginでhelper関数を準備しておいて、テーマ側で関数を呼び出す仕様なら、かなりあれこれできますね。

この前ちょこちょこやってみたサイドバーのカレンダー表示も、テーマのレイアアウトの中でplugin側のパーシャル呼び出すような感じでできるのでは、とつらつらと考える。む?よく考えるとまだちゃんと理解していないぞ、そのあたり。

2010年11月22日月曜日

ぜえぜえ

うーん、こんだけ書いてもこれくらいの分量にしかならないのか。

私は毎日、手書きで学級通信を書いています。原稿用紙でおよそ2枚程度。その日によりますがだいたい1000文字程度だと思います。

なるほど、それを書くのに実質30〜40分程度かかる。このblogの1アーティクルにかかる時間は10分以下だな。そうか、もっと時間をかけないと読み応えのある記事は書けないのか。

なんだか納得がいった。ちなみにこの記事は3分くらいですな。

セイバーへーゲン

フレッド・セイバーヘーゲンをご存知か。バーサーカー皆殺し軍団
バーサーカー皆殺し軍団 (ハヤカワ文庫 SF 126)
フレッド・セイバーヘーゲン
早川書房
売り上げランキング: 499738
が日本では一番有名な、北欧のSF作家でございます。

この作家の長編に「東の帝国」という3部作(日本で3分冊、というべきか。早川がよくこれをやります。デューンも本当は1冊なのに4分冊でしたっけ)があり、かなりマイナーな作品なのであまり話題にのぼることなく現在に至っていますが、私はこれが大好きでした。全編を彩る生頼範義氏のイラスト(ウルフガイもかくや、という)、一歩間違いえばバカSFと化すアイディアの数々、そしてけっこうだるいストーリィ展開、なかでも一番しびれたのが、古代の戦車を動かすために「魔法使い」のみなさんが、うんうんと何時間もうなって呪文を唱えるところですかね。

ネタバレにならないように(そんな心配いらないか(^^;))書けば、魔法使いは現代で言うところのプログラマでして、古代の戦車を動かすためにターミナルからコマンドを入力しているんですね、思考だけで。

このあたりのディテールの楽しさは読んでみないとわからないわけですが、えーとたしか高校生くらいの時に読んで、セイバーヘーゲンすごいじゃん!!としみじみわかったのが30過ぎてからでした。(^^;)実際にプログラミングしたことのある人にしかわからない苦しみと楽しさがあるわけで、そのへんを妙にリアルに描いていたようなきがします。

ちなみにamazonでも手に入らないみたいですね、SF文庫。

長文(について)

なぜかblogだとちゃっちゃっと書くくせがあって、あまり長文のアーティクルを書いたことがない。

その割に、読む方では読み応えのあるアーティクルが好き。書く分量が多いということは、言いたいことが多いということだからか。

だいたい寝酒をいっぱいやりながらblogの更新をするので、長い文章は無理だなあ。面倒くさくなるから。明日は休みだから、少し長めの文章を書けるようがんばってみようかな。

rails勉強する

手っ取り早くuserと小奇麗な見た目を得るためnifty-generatorsを使う。

userはemail関係の記述を削除して、名前とpassだけでloginできるようにした。それからeventのmodel追加。

routes.rbに
root :to => "events#index"
とかも追加しておく。

しかしnifty..が作ってくれるapplication.html.hamlでいろいろはまる。hamlまだ慣れていないから、どうもうまく使えない。ここはぐっと我慢してがんばる。

nifty..は--hamlオプションをつけるとviewを全部hamlで出力してくれて、デフォルトのcssもちゃんとpublic/css/sass/application.sassを作ってくれている。ありがたや。これを
sass-convert aplicastion.sass applivcation.scss
と打ち込んで.scssファイルに変換しておくとsass的最前線。

ま、ここからが本番なんですけどね。

2010年11月21日日曜日

休みの日は

朝の犬との散歩が終わったらiMacの電源を入れる。

で、あとは寝るまでずーっと電源が入りっぱなし。

さすがに少し熱くなりますな。背面あたりを触ると。昨日Win7上で動画の編集をして、いよいよファイルに書き出す、という処理でファンが回り始めました。ファンの音を聞くのは2回目かな。9月に買って以来。(1回目はすごく暑い日だった)これからは天然のクーラーが激しく効く季節なので(なんせマイナス20度までいく地方なんで)、ファンの音が次に聞けるのはいつだろう。

日報アプリ(細々)

現実的に考えると、朝の打ち合わせには技師さんや事務生さんも参加する。この人達にはデスク上のパソコン、なんてないから、パソコンで日報、は無理だなあ。やっぱり学校はまだアナログじゃ。

まあそれでもプログラミングの勉強をしているんだから、ちょぼちょぼつくりますか。

2010年11月20日土曜日

苦労しました

iMacでiMovieでお仕事ー、とはりきったのだけれど、なんとOSXでは.mpgファイルの扱いが面倒なのね。知らなかった。

普通、家庭向けビデオカメラは.mpgファイルでしょう。それをわざわざ使えないようにしておくとは無礼千万。(べっとプラグインを購入せよ、っていうのはどういう殿様商売。かなり頭に来ました)

結局Win7で編集しましたが、Vista時代にはデフォルトで入っていたムービーメーカーが別ダウンロードになっていたんですね。

そんなんで休日の半分はつぶれましたが、参観日用DVDが無事出来上がった。めでたいというべきか。

2010年11月19日金曜日

sugersync

5Gまで無料で利用出来るsugersyncにサインアップしてみる。専用ツールをダウンロードして、職場のXPノートにインストール。このツールがないと100Mを超えるファイルをupできないようです。

しかしアップロードに時間のかかること。仕方ありません、2G以上の動画データですからねー。

職場のデスクトップPCで一応、動画編集してはみた。断片的な動画をつなげ、場面転換時に効果もいれて編集は無事終了したのだけれど、エンコードを始めると0%から一向に進まない(^^;)。

というわけで、やはりsugersyncでファイルを自宅に持ち帰るのが一番いいみたい。

気づくとLokka

Lokkaのthemeをいじったり、その関係でソースを眺めてみたりしている自分を発見。(^^;)

うーん、なんだろうこれ、おもしろいなあ。

Lokkaにはデフォルトでmarkdownのpluginがあって、だからきっと内蔵のCLEditorでmarkdown記法ができるんだろう、と考えたのが運の尽き。

CLEditorそのものがwysiwygなわけで、そこでmarkdownが使えると思うことそのものがすでにどうよ?なんです。ま、それはおいておいて、最近のLokkaの更新でCLEDitorの「ソースを表示」で編集が楽にできるようになりました。WYSIWYG状態でない、HTMLで編集できるモードが有効になったと。HTMLで編集すると、変な<div>tagが入らないので、プレーンなテキストで保存されることがわかりました。

で、lokka-markdown内に
module Helpers
    def body_to_html(s)
      BlueFeather.parse(s)
    end
end
というなんちゃって関数をこしらえて、viewから呼んでみたら、無事markdown記法が有効になりました。

ついでにちょいと
ruby カレンダー
とかググってみて、出てきたこんなソースを
require 'date' 
def html_calender(year, month) 
  ret = ''     ret << (''       ret << "
SunMonTueWedThuFriSat'
(first = Date.new(year, month)).wday == 0 or ret << '
' * first.wday)
first.upto((first >> 1) - 1) do |day|
day.wday != 0 or ret << '
#{day.day}"
end
ret << '
' end
(出典はスラドです。)
ちょちょいと貼りつけてみる。

で、asideでhtml_calendar(原典はcalender)を呼ぶと
 こうなる、と。
見た目を整えることより、この後どーやって「データがある日はハイライトする」かを考えるのが吉、なんでしょうねえ。

2010年11月18日木曜日

Dropbox

dropboxはウルトラ便利ですが、無料だと1Gちゅーのが残念。

1年に1回だけですが、年末の参観日に「ビデオ鑑賞会」を開くと喜ばれるので、そろそろ作成しようと考えています。

職場にはHDDのビデオもあるので、けっこう手軽に撮影して、ノートパソコンに取り込んでおくことはできる。(やっぱHDDって偉大だな)

いざそれを編集しようとすると、XPノートだと「遅い(鈍い)」「(画面が)狭い」という二重苦でとてもやる気がおきない。そこで、家にデータともってこようと計画しています。iMacで編集すればきっと楽しいだろうなあ、と。(たとえ仕事でも(^^;))

しかしHDDからコピーしたデータ、たいした内容じゃないのに3Gもある・・・USBメモリは持ち込み禁止だし、DVDに焼くのもめんどうだし(焼きたい時は外付けDVDをもってこないといけない・・・これがまた職場のノートだと動作がむちゃくちゃ遅いんだなあ)、いっそdropbox以外のwebストレージサービスを使ってみよう、と考え中。最近、フリーで5G使えるサービスがあったはずなんだけど、その名前がどーしても思い出せない・・orz

WinとOSX

職場で支給されているのはXPのノート。(もうまもなく、Win7機に更新される予定ではある)パソコン室のパソコンもXPであります。

家でOSXを使っていて、かなりOSXに慣れてきました。慣れてきてとまどうのは、まずやっぱり「閉じる」ボタンの位置でしょうかね。ウィンドウの左側をうろうろ探して、あ、Winだった、と気づく、と。

それとctrlキーの位置、さらにcommandボタンの有無。この辺のキーボードの違いはけっこうキツい。iMacの日本語キーボード、ctrlが「A」の隣という極めて正当な場所にありますが、Win機のキーボードではめったにお目にかかれないですね。ちなみにDellのキーボードなら一番下段の一番左端と右端ですね。

小指や親指を彷徨わせながら、仕事をしています。

2010年11月17日水曜日

調べるだけ症候群

毎日いろいろ調べているけど、調べているだけで終わるってのがいやだなあ。orz

今日はHpricotとかnokogiriとか。deviseとかcancanとか。で、なぜかrailsでsyntax highlightingする方法とか。

いくら調べても読んでも、スキルも記憶も蓄積していかない中高年の悲しさ(TT)。

evernote 減らない

オフラインのブックマーク、という感じででevernoteを使ってみている。あ、これ後で参考にできそう、と思ったサイトのアーティクルをどんどんevernoteにコピーしていく、という感じ。

自分ではけっこうな量をためているような気がしても、「今月の使用量」は全然増えていかない。テキストってのは本当にコストパフォーマンスがいいな。

2010年11月16日火曜日

devise調べる

おお、ちゃんとdeviseでuserのroleが使えるみたい。
rails generate devise Admin
でadminか。

ふむふむ、cancanと連携も大丈夫・・・ってcancanは使ったことないから偉そうでした反省。ちなみにcancan、rails3にちゃんと対応していますね。

あまり複雑な役割やアクセス制限を考えてはいませんが、「adomi」、「教務」、「教頭」、「校長」くらいは必要かなあ。分掌ごとにrole作るのは・・不毛か。

RockMelt来た

Rockmeltから「ダウンロードしていいよ」メールが来た。早速zipをダウンロードして.appをアプリケーションフォルダに移動させて使ってみる。

・・・なんだ、chromeか。というのが感想です。FaceBookに特化したchromeというのが現在のRockMeltみたいですね。

他にもtwitterもブラウザと一体化できます、というか、たとえばtwitterのタイムラインウィンドウから画像のリンクをクリックするとブラウザに画像が表示されますね。

私があまりFaceBook使ってないので、これならchrome拡張のYoonoのほうが使い勝手がいいかも。

FaceBookってイマイチよくわかんないんですよねえ。リアルの友達があんまりいないんで。(^^;)

短期留学した娘と連絡をとるために使い始めたんですけど、娘が帰ってきた後は放置してあります。こういう機会にloginすると、娘のfreindが「もしかしたら友達かも」とか言って表示されるのでとてもこまってます。(^^;)

なお、RockMelt、3人までならご招待できるみたい。使ってみたい人はコメントでもしてくださいな。

2010年11月15日月曜日

構想を練る

いや、大した構想ではないけど。
日報アプリをそろそろ本気で作り始めよう。devise、haml、scssを使うということだけ決めて、後は自分でやってみよう。

  • event・・行事予定、管理者だけ入力、csvからの変換ができる
  • message・・その日の連絡、誰でも入力可能
  • comment・・event、messageに対するコメント
  • class_room・・担任にはその日の時間割などを表示する
この程度のmodelをつくって、ちょっとずつ実装していってみる。む?userにroleが必要ですな。deviseで出来たかな。

すぐ過ぎる

ちょいとrails関連の検索をしてあちこち読んでいたらあっという間に時間が過ぎる。

人生は短いよな、と最近つくづく思う。

仕事をして、楽しくプライベートを過ごしているんだから文句は言えないか。

2010年11月14日日曜日

日曜日

午前中はPTAの広報の編集。学校でやってもいいのだけれど、iMacのでかい液晶でA4版を見開き状態にして110%くらいの表示で編集すると、ものすごく快適。

テキストははりつけてあったので、あとは写真をひたすらDrag&Dropしてサイズ調整。こういう仕事は本当に退屈。教員の場合、事務仕事は楽しくないものが多い。

その点、授業はいい。子どもといっしょにあれこれやるのは楽しい。残された年月がだんだん少なくなってきた、とリアルの感じる年代だからこそ、なおその楽しさを感じる。

明日から学校、と思うと若い頃は憂鬱になったが、この頃は静かな心境であります。体は疲れますけどね。

午後からはLokkaのソースを眺めたり、ローカルで動かしてviewというかthemeの働きを確かめたりした。いつものとおり、穏やかな1日でございました。

明日から雪が降るらしい。激しくユーウツだ。

月、火と気温が低くなるけれど、その後はまた最高気温10度くらいまで回復するみたい。10度あったらいくら降っても積もりませんわな。

今年は雪の時期の始まりがちょっとおそいようだ。なんて言ってると、どかーんと降ってそのまま本格的な冬になったりするからなー。

2010年11月13日土曜日

Lokkaで遊ぶ

Lokkaで作ったblogでいろいろ研究。

テーマはerbやhamlで書かれているので、なるほどなあ、と感心しながら読む。

hamlの練習がてら、themeづくりに挑戦してみるのもいいかもしれない。そんなわけでローカルでもLokkaを起動して、ブラウザからいじってみる。

Lokka本体のSinatraを使ったソースも読んでみた。読んだからといって理解出来てるわけではないけど、
 get '/admin/posts/new' do
      login_required
      @post = Post.new(:created_at => DateTime.now)
      @categories = Category.all.map {|c| [c.id, c.title] }.unshift([nil, t.not_select])
      render_any :'posts/new'
    end
というふうに書かれてあるのをみて、なるほど1ファイルで完結する、と言われている理由がわかりますなあ。このurlのリクエストがきたらこうせよ、という。おもしろいなあ。

2010年11月12日金曜日

lokka

livedoorの自分のclip(ソーシャルブックマークですな)を眺めていて、holyppの日記 を再読。うーん、heirokuを実際に使ってみたい、と思って早速lokkaをインストールしました。

インストールというかデプロイというか、手順はとにかくholyppの日記の通りなので特に繰り返しませんが、簡単に使えるようになるものなのですね。

で、このblogの分家を作りました。

日暮れて道遠し by lokka

しばらく両方を更新していってみようと思います。そんなことしてたらrailsの勉強する時間がないじゃん>自分、ですけど、ま、おもしろそうなことは何でも試してみる、と。

2010年11月11日木曜日

virtualboxをインストール

ubuntu仮想化のためvirtualboxをインストール。

rubyやrailsの複数のバージョンを試すため、ubuntuを仮想化してみる。virtualboxそのものも、ubuntuの仮想化インストールも無事終了。意外と速いもんですね、iMac上の仮想化ubuntu。

デフォルトでのモニタ解像度が800x600と小さすぎるので、そこを解消するのにいろいろ調べてみる。ほとんどfaqだったらしくて、すぐに調べがつく。おかげで1360x768という、ちょっとしたnetbook並のウィンドウが開くようになった。

それでもiMacじょうだと「単なる1ウィンドウ」でしかないですな。iMac27インチよすぎです。

さて、ここからrubyとrvmをインストールするのに、いや苦労すること。apt-getするなら、とりあえずふつうにrubyだけにしないと(ruby1.9.1にしない、ということですな)苦労しますね。gemも1.8.7ならすぐにインストール出来るわけですが、まだ1.9系はdebian系のLinuxだと素人には厳しい。

ビルド系のパッケージをいろいろインストールして、やっと
rvm install ruby-1.9.2-head
が動き始めました。

最新版ならhobo使えるかな?ってそれだけのためにこんな苦労をしているのか・・・。ま、素人だから仕方ありません。

2010年11月10日水曜日

hobo 詰まる

チュートリアルによると、
hobo g model:resource
hobo g migration:resource
で自動生成されるファイル群の中に、views/モデル名というフォルダもあるはずなんだけど、どーも現在のhobo pre16では生成されないようだ。

ま、それはいいとして(自分でフォルダを切ればいいわけだから)、いくつかmodelをつくって遊んでいるうちに
super from singleton method that is defined to multiple classes is not supported; this will be fixed in 1.9.3 or later
というエラーが出るようになった。ググってみたら、とりあえずhoboは1.8.7で使え、というお答え。

うーん、やはり楽してはいけない、という神のお告げかしらん。

hamlの勉強にもどったほうがいいみたいですね。(^^;)

2010年11月9日火曜日

RockMelt

新しいブラウザ、RockMelt を試用するための手続きをしてみる。2、3日中にメールが届くのか?

redcarと日本語

redcarでファイル編集をしていて、ファイル中に日本語を入力するとキーワードのハイライトが消えてしまうことに気づいた。

えーとえーと、どこかでこの現象は読んだな、と思ってredcarのbugtrackerを探してみたところ、あったあった。これですね。作者さんが「すぐ直すよー」と答えているので本当になおっているか調べてみる。

https://github.com/redcar/redcar.git、ここからソースをclone。readmeのINSTALLING FROM SOURCEにある手順で0.9devをinstallして、起動してみたら・・・うーん、どうなんでしょう。

現行verの0.8だと、ハイライトがうまくいかない状態で一度redcarを終了して、もう1回起動しなおすといちおう直ります。0.9でも変わらないかなあ。
</msg1:>だけ白黒になっていますね。これは0.9devでも変わってません。changesにも記述がないから、やはりまだ直ってないのかしらん。orz

hoboチュートリアル

rapid-rails-with-hobo.pdf の100ページ付近から120ページくらいまで読んで、少しcodeをいじる。

プロジェクトのフォルダをよくよく見ると、
hobo g model:resource
したmodelのviewがないことに気づく。しかしcontrollerからindexやshowのactionはちゃんと動いている。この謎が本日わかった。

app/views/taglibs/auto/rapid/以下にcards、forms、pagesという3つのdrymlファイルがあって、これがテンプレートになっているらしい。(drymlはDon't repeat yourself markup language、だそうです)pages.drymlが<=yeild>にあたる部分、cards.drymlがデータ1つ分を描画するパーシャル、formsはform関連のパーシャル、という役割分担。
たとえばテキトーに作ったcommentというmodelなら、こんなふうに自動的にテンプレートが作られている。



  
    

    
      

New Comment
これがindexですね。このあと延々とShowやNewにあたるテンプレートが記述されてます。
このテンプレートは直接編集してはいけないくて、カスタマイズする場合はapp/views/taglibs/application.drymlに該当するビューの部分をコピーして編集するか、app/views/モデル名/action名.drymlを作って編集していくかのどちらかを選ぶ、と。デフォルトでよければ全然手間いらず、というrailsの思想が激しく貫かれておりますなあ。

現在、いよいよdrymlの書法についての勉強に入りました。けっこうhoboにハマってますな。

2010年11月8日月曜日

livedoor

ブックマークもアンテナもずっとはてなを使ってきました。RSSリーダはgoogle。

ただ、rails専用のブックマークやRSSリーダが欲しくて、最近はlivedoorのclipやReaderも使ってます。意外と(と、書いたら怒られか)いいですね、livedoor。

あまりカスタマイズはしたくない、とりあえずデフォルトの状態で、ブクマやRSSを追加していくだけでけっこう使えるサービスがいい、という需要に応えてくれてます。

railsのポータルとかアグリゲータってないのかしらん。「本家サイト」があるのはもちろん知ってますが。

Hobo modelを作ってみる

rapid-rails-with-hobo.pdf (ここからダウンロードできる詳細のチュートリアル兼ドキュメント)を読みながらちょっと作業してみる。すぐに忘れるから大急ぎでメモメモ。

ただしrails3用の1.3pre15を試用しているので、ドキュメント通りにはコマンド入力できないのがちょっとつらいところ。

普通「railsコマンド」を使うところで、hoboでは「hobo g ホニャララ」と打ちます。試しにmodelを作ってみる。
hobo g mode post title:string contents:text
これで「rails g」と同じようにmodelが出来上がります。migrateファイルは作ってくれないので、これは自分で生成させないといけないみたい。
hobo g migration
で、まだmigrateファイルが作られていないmodelのmigrateファイルを作ってくれます。(作るついでにrake db:migrateもやってくれます)

しかしscaffoldはないみたい。その代わり
hobo g model:resource comment title:string content:text
と入力すると、ほぼscaffoldと同じ働きをします。rails2用だと script/generate hobo_model_resourceですな。アンダースコアから「:」を使うようになった、と。rails3だと若干、ドキュメントを読み替えないといけないです。

iMac27:my_app $ hobo g migration
Hobo Command Line Interface 1.3.0.pre15

---------- Up Migration ----------
create_table :comments do |t|
  t.string   :title
  t.text     :content
  t.datetime :created_at
  t.datetime :updated_at
end
----------------------------------

---------- Down Migration --------
drop_table :comments
----------------------------------

What now: [g]enerate migration, generate and [m]igrate now or [c]ancel? m
  => "m"

Migration filename: [=hobo_migration_3|]: 
  => "hobo_migration_3"
      create  db/migrate/20101108125419_hobo_migration_3.rb
        rake  db:migrate

こんな感じで処理されていく。migrateファイルを触る必要がなくて、modelを修正したらもう一度
hobo g migration
すれば、migrationもやり直してくれます。

うむー、私のようなド素人にぴったりの使いやすさだなあ。もうちょっと勉強してみよう。

ちょっと気になるのがviewの遅さ。ローカルで実行していて、どのviewも描画に300msくらいかかりますなあ。いろいろ表示するようにしたとき、どのくらい遅くなるか、試してみたいところです。

2010年11月7日日曜日

BootCampってすごいな

Win7で仕事。とはいえWordや一太郎で作成されたファイルからパーソナル編集長にcut&pasteするだけの単純作業。

生原稿をパソコン上のファイルにするとき、素直にテキストに落としてくれれば一番後々の作業が楽なわけですが、ちょっとパソコンの操作に慣れている人に限ってちょこちょこ書式を追加していたりして激しくイラつく(^^;)。

一番げんなりするのは「原稿用紙モード」で入力してあるやつでしょうか。いや、ワープロの自動改行に任せず、自分で改行を入れているやつかな。パーソナル編集長に貼りつけたら、変なところで改行が入っていて泣けてくる。改行をひとつひとつ削除していくのはなかなかつらいです。

そういういらいらする作業をしながら、Win7で時々iMac側のHDDを覗いたりする。データ交換とか簡単にできるんだなあ。MacのHDDを自動でマウントしてくれるんだからBootCampかなり優秀。

27インチのiMacでなら、Win7もけっこう使いやすいことがわかりました。

hoboはいいかも

家族の用事やらなにやらをしながら、hoboプロジェクトが配布しているドキュメント rapid-rails-with-hobo.pdf を読む。使うかどうかわからないけれど、hoboはけっこう魅力的。

modelにデータ定義
自動生成されるmodelのコードの先頭はこんな感じになります。データベースの定義が記述されています。

class User < ActiveRecord::Base

  hobo_user_model # Don't put anything above this

  fields do
    name          :string, :required, :unique
    email_address :email_address, :login => true
    administrator :boolean, :default => false
    timestamps
  end

これを変更すると、hoboが自動的にmigrationファイルを再生成してデータベースを変更してくれる、と。
テキトーにmodelを作って、あ、あれを忘れた、とorzすることが多い自分にとってはかなり魅力的。validateも簡潔に記述できるのがいいですね。

controller
全部デフォルトの動作でいい、という場合、

class RecipesController < ApplicationController
hobo_model_controller
auto_actions :all
end
auto_actions :all、で済んでしまうというのがすごいところ。

英語を読むのに疲れて本日はこんなところ(^^;)。あれ?あまり魅力的ではないなあ。

2010年11月6日土曜日

DRYML

Hoboのviewの拡張子は全部dryml。これがまたこのpロジェクト専用のDSLらしく、くわしくはこのページに書かれている。
ふむー。こういう拡張を見ると、これを勉強したらこればっかり使うことになるのかあな、と一抹の不安を覚えますな。

Hobo

で、夜になってからHobo試しました。公式blogのとおりに一応作業してみる。
gem install hobo --pre
としてから
hobo new my_app

これで次のようなWizardの質問に答えると、あっというまにアプリの骨組みが出来上がる。
Hobo Setup Wizard 
  Do you want to start the Setup Wizard now?
(Choose 'no' if you need to manually customize any file before running the Wizard.
You can rerun it at any time with `hobo g setup_wizard` from the application root dir.) [y|n]

     Test Framework 
Do you want to customize the test_framework? [y|n] n

 Invite Only Option 
Do you want to add the features for an invite only website? [y|n] n

 User Resource 
Choose a name for the user resource [=user|]: 

Do you want to send an activation email to activate the user? [y|n] y

 Front Controller 
Choose a name for the front controller [=front|]: 

 Admin Subsite 
Do you want to add an admin subsite? [y|n] n
  => "n"

 DB Migration 
Initial Migration: [s]kip, [g]enerate migration file only, generate and [m]igrate [s|g|m]: m

 I18n 
The available Hobo internal locales are :en, :"es-DO", :it (please, contribute to more translations)
Do you want to set a default locale? Type the locale or  to skip: 

 Git Repository 
Do you want to initialize a git repository now? [y|n] n

けっこう適当に答えてできあがったプロジェクトでrails sすると、次のようになります。

少なくてもuser関連のあれこれをまとめて面倒みてくれて、テーマとかも簡単に切り替えられるらしい。

このplugin(よりももっと上の階層の振る舞いをするのかな)のすごいところは、ドキュメントがものすごく充実していることで、ここから本当に丁寧にStep by Stepなチュートリアルを記述してあるPDFの「本」がダウンロードできます。ざっと読んでみて、明日からしばらくこのチュートリアルをやってみようかな、と思わせる丁寧さです。

・・・でも結局今日も自分で何もコード書いてないなあ、と反省。(^^;)これじゃいつまでたっても何も始まらない。このままいくと、plugin紹介のblogになりそう。それでもいいけど。(^^;)

OSX雑感

Ubuntu、Win7、OSXと切り替えて使っていると、OSXの起動の速さ、使い勝手のよさがよくわかります。

共通で使うブラウザとかターミナルの挙動という点でも、OSXいいなあ、と思います。実はすごく優秀なOSだったんだなあ、というのが、今頃OSXを使い始めたおやぢの正直な感想です。

BootCamp

DellマシンでXp立ち上げて仕事の準備・・をしていたらやっぱりノレない。原因は20インチの液晶。ウスぼんやりしていてとても見づらい。iMacがよすぎて困るなあ。

じゃあ、BootCamp使えばいいじゃん、と思いついてさっそく実行した。Ubuntuいれてあるパーティションを削除すれば、Win7も簡単に入るだろう、と予測して作業に入る。

ところがiMac上でもrEFitのコンソールでも、Ubuntuパーティションが見えなくて困った。見えなければ削除もできないわけで、しばらく腕組み。

なんもことはない、rEFitがインストールしてあれば、とりあえずWin7のDVDでブートしてインストーラから、Uubntuのパーティションを削除できることが判明した。swapも削除して、そこに新しいパーティションを作ってWin7のインストール。簡単に終了して、rEFitの起動メニューも無事だった。

Win7をインストール後にBootCampをWin7上にインストールして無事Win7とのデュアルブート環境が出来上がった。

ここからあまりカスタマイズをがんばりすぎると時間を食うので、必須アプリのみをインストール。自分の必須アプリは
  • Lhaz
  • まめFile
  • chrome
くらいで ありますな(^^;)。後々使うだろうからMSOfficeもついでいれて、パーソナル編集長で完了。

で、出来心で仮想デスクトップのDexpotもいれて試してみる。けっこういけますね。Xp、Vista時代よりかなりこっちの方面でも進歩しているようです。たいていのソフトがフリーで手に入るのはWinのいいところですね。でもターミナルというかshellというかが貧弱なのがイタイですねえ。

明日からiMacの27インチ液晶で仕事をしよう。試しに起動してみたパーソナル編集長、A3が100%の倍率で表示できるのでものすごく快適。
Win7もなかなかきびきび動くのでおもしろいです。

休日出勤?

?マークがつくのはPTA行事だから。
学級とか学年の行事ならそれはもう仕事の一部なので気合も入るが、今日はP教養部主催の講演会だった。お休みの日の1時半から3時なので、正直、面倒だな、と思いつつ学校へむかった。

しかし講師の方のお話が素晴らしく面白かったので得した気分。どんな講師でどんな内容だったかまで書くと恐ろしくバレバレになるのでここでは触れない。(^^;)

教養部のみなさんの中にはうちの学級のお母さんもいて、土曜日だというのにスーツでかしこまって司会担当。ご苦労様です。(私はジーンズにパーカ・・・いかんなあ(^^;))

2010年11月5日金曜日

WinXP

仕事の都合でひさしぶりにDellマシンを起動。WinXPを使う。PTA広報を編集するのに、「パーソナル編集長」なる簡易DTPを使い慣れているため。

OSXでもこの手の「安くて低機能」なアプリがないかなあ。

さておよそ2ヶ月ぶりのXP、HDDのアクセス音が結構気になりますねえ。起動したあとずーっとゴリゴリいっている。

iMacだと全然音がしないので改めてびっくりしました。

このところすっかりiMacに慣れてしまってもう離れられない感じ。マカーな人たちの気持ちが初めてわかりました。こうなるとどこででもMacが使いたくなりますね。

rails magazine

rails magazineという存在を知る。どなたのblog経由だったか失念。

PDF版ならfreeなので、さっそくダウンロードをしてreaderで読んでみる。以前触れたように、100%の倍率でA42枚分楽々と閲覧できるのですごく快適。よかったiMac買って。これだけ電子書籍が快適に読めるなら、何か買ってみましょうか。村上龍の「歌うクジラ」とか。

もちろん英語なので全部理解できるわけではないが、おもしろそうな記事を拾い読む。で、知ったのがHoboというplugin。なんだか便利そう。簡単にサイトの基本的な部分を作ってくれるという、お便利系のpluginみたいです。

rails3にも対応中、ということなので明日あたり試してみますか。

毎日新しい知識がどんどん増えて、なんだか楽しいなあ。

2010年11月4日木曜日

softbank新製品

softbankからずいぶんsmartphoneの新製品が出ているようで。

よくよく見るとみんなandroidか。

私はiPhone3G(^^;)のユーザでして、来年の2月で無事2年の年季がきます。そのタイミングで新しい端末に替えようかな、と思っているわけですが・・・。6月までまって新しいiPhoneにするか、どんどん出ているandroidにするか、ちょっと迷いどころですね。

iPhone3GはそのままiPodとして使い続ければいい(・・・ってできるのか?>オレ)として、次もiPhoneにするべきかどうか。iPhone4は今ところ買う気はない。

おもしろそうな機種がたくさんあって、幸せですねー。

redcarの全セーブplugin

redcarを快調に使っています。ということはrailsのあれこれの操作はターミナルから、ということですね。NetBeansを使っていたので、まだ指が自然に動く、という状態になっていないのがつらい。

redcarには「変更があったファイルを全部保存」という機能がまだなくて(wishlistには先頭で上がってましたが)、たまにファイルの保存忘れをしてしまいます。IDEに慣れているとこの辺の用心深さに欠けてしまうかも。

viewやcontrollerなら実害はないけれど、migrationファイルを保存しないでrake db:migrateしたときはちょっと痛かった。そこでredcarの「Save All When Losing Focus」pluginを導入してみた。

install方法は簡単。.redcar/pluginsで
git clone https://github.com/rdp/redcar-save-all-on-lose-focus.git
と入力してredcarを再起動するだけです。

redcarのウィンドウがフォーカスを失うと、変更されているファイルを全部セーブしてくれる、ということなので期待してinstall。初回起動時に、フォーカスを移した途端redcarが落ちるという現象が発生してがっくりきましたが、その後は順調です。

もう少し使ってみて、おかしな現象が起きないか確かめてみよう、というところ。

とりあえずやってみる rails-i18nのことなど

あれこれ迷ってばかりいても仕方ない。次々と捨てprojectを作っているんだから今さら慎重になる必要もないので、まずは1週間分の行事や時間割を表示するアプリに挑戦する。viewができたらそれを使いまわせるんだから、どんどん作ってみるのが吉。

時間割を保存するclassroomの他に、行事を保存するeventをscaffold。それぞれ
rails g web_app_theme:themed event
などとしてweb_app-themeを適用してみる。見た目はこれでOK。

しかし調子に乗って日本語化してみたところ、
can't convert Symbol into String
というエラーに遭遇。ググってみたらi18n関連のほとんど定番のエラーでした。こちらの記述などを参照して、結局はrails-i18nからja.ymlをダウンロードすればいいことが判明しました。

ふーむ、いろいろなpluginを使いながらアプリを作るならi18nは避けて通れないところなので、いい勉強になった。
今のところこんな感じで日本語表示もできております。

こんどはこれを1週間表示にしていこう。いよいよhamlの勉強でありますな。

2010年11月3日水曜日

modelを考える

月別の行事予定を表示するところで、あれこれpluginを試し始めたのが運の尽きでした。(^^;)

とりあえず1週間分の行事予定と時間割を表示するmodel、controller、viewを作ってみようということでいろいろ考える。
行事予定をevent、時間割をclassroomとかにしてみる。時間割は配列ってわけにはいかないのでstring(^^;)。6時間なら国算図図生音とかになるしかないか。一文字ずつ切り分けて表示・・・うーん、どうしよう。

でもそれぞれのmodelにdateを持たせて、表示するときにcontroller側でfindして統合していくのってすごく時間の無駄のような気がする。

というわけで「特定の日付」をmodelにして、そこにhas_oneとかで関連付けていくってのはどーよ、とか馬鹿にみたいに考えて、結局考えただけで1日が終わった。うーん、素人。(TT)

実際にはonedayっていう日付情報だけのmodelを作ってみた、わけですが、そこから進まない。ルートがonedays、っていうすごく不合理な単語になるのが気になってしまって・・・(^^;)
eventはhas_many、時間割はhas_one、いや待てよ、複数の学年、クラスを表示する可能性もあるからhas_manyか?とかなんとか考えているうちに野茂のビデオを見てしまったのだな。

いかんいかん

いかんいかん、イチローや野茂のビデオをyoutubeで見ていたらあっという間に時間がたってしまった。

しかし野茂はかっこいいなあ
このビデオを観ていたら


次のおすすめの動画に笑ってしまった。

ナショジオかい、という。

2010年11月2日火曜日

休日前

もともと運動に縁もないし、健康にそれほど気をつけてもいないので、最近肉体疲労が蓄積して抜けない感じが強い。

年ですからね。(TT)このままだとあと10年、担任をして教員生活を送りたいという希望がかなわないかもしれないほど疲労感がひどいので、最近、通販生活で沖縄の黒酢というのを買って飲み始めた(^^;)。気分的に「効く」ような気がする。すくなくても、朝からぐったりした感じはしなくなった。

あと、いちおう次の日のためにマッサージ椅子で1セット(15分)揉み、犬の散歩ではかなり歩くようにしている。ジムで通うという手もあるけど、それだとますます自由時間がなくなるからなあ。

それでも平日はほとんどプログラミングする気力がわかないなあ。何かつくり始めて、ある程度形が見えてくると熱中できるんですけど。つくりはじめるまでがだんだん時間がかかるようになっているなあ。

ふむ、愚痴が多いかも、最近。

web-app-theme 日本語化・・ってほどでもないか

tって何よ、と昨日書いたのは、
これの「t("web-app-theme.profile", :default => "Profile") 」のtですな。
気になって調べたらいわゆるi18nなのね。config/localesに「ja.yml」を準備すればtのあとに日本語化されたリソースが表示される、はず。

それなら、と以下のようなja.ymlを準備。
ja:
  web-app-theme: 
    save: 保存
    cancel: キャンセル
    list: リスト
    edit: 編集
    new: 新規
    show: 閲覧
    delete: 削除
    confirm: 本当によろしいですか?
    created_at: 作成日時
    all: すべての
    profile: プロフィール
    settings: 設定
    logout: ログアウト
で、config/application.rbの31行目を
config.i18n.default_locale = :ja
にしてコメントをはずす。
これでサーバを起動すると以下のような画面になりました。へー。

けっこう簡単に日本語化できるもんですね。やり方はいろいろな方のblogに書いてあった気がしますが、自分で実際にやってみたのは初めてでした。

2010年11月1日月曜日

web-app-themeいじる

いろいろ楽できそうなのでweb-app-themeをいじってみた。
出力される.html.hamlファイルとかを眺める。このtってなによ、ですな。
sidebarを消してみたり、footerをmainの外に出してみたり、といったあたりで終了。今日は調子が出ないなあ。む?毎日調子はでてないか。(^^;)

admin画面、login、logout画面も作れるのか。deviseとかとうまく協調するのかどうか。調べて、やってみたいことだけはたくさんある。

青い月曜日

っていう題名の小説を開高健が書いていて、ひどい空腹を水で癒そうとするシーンだけやけに鮮やかに覚えている・・・はずなんだけど開高は同じ話をエッセイなどを含めてあちこちに書いているから、別の本かもしれない。(^^;)

いやー、今日はなんだか青かった。これといって変わったことがあったわけではないんだけれど、気分が沈みがちでありました。「友がみな我よりえらく見ゆる日よ」であります。50近くても、若い頃とあんまり変わりませんなあ、こういう青臭いところは。