2012-01-28

「floating menu」のサイト

Python関係の検索していて「floating menu」を実施しているサイトを拝見した。<frame>を用いていると思ったが違うようだ:その記事を見ていたら;
と言う事らしい。このサイトは部分的にも「Pyhton-Django」を用いているらしい。

自分も取りあえず「Python-WSGI」から手を出してみたいものだ。

「floating menu」が出来れば、昔のPerlのWikiが再現できるかもしれない。


ーーーー このポストの履歴
  1. 開始 2012-01-28 (土) 20:39



2012-01-27

Rubyのオンライン・マニュアル

このところ「初めてのRuby」をかじっている。そのp19に検索のコマンド「ri」の紹介が在る。このコマンドで「クラス名やメソッド名を入力するとリファレンス(英語)が引ける」ようです。

そこで「man ri」を打つとマニュアルがでるものの、実例を打っても意味ある回答がでません。

div-mm:~ u1$ ri String
Nothing known about String 

どうも、「ri」が表示すべきデータは「rdoc」コマンドで生成する必要があるようです。

どうせなら日本語のオンライン・マニュアルが欲しいので、検索すると;
上記の「Ruby 1.8.7/1.9.2リファレンスマニュアル」をダウンロードしてダブルクリックすると,下記のように解凍される;

div-mm:~/Downloads/ruby-refm-1.9.2-dynamic-20110729 u1$ ll
total 3000
drwxr-xr-x@ 22 u1  staff      748  7 29 22:41 bitclust/
drwxr-xr-x@  9 u1  staff      306  7 29 22:42 db-1_8_7/
drwxr-xr-x@  9 u1  staff      306  7 29 22:42 db-1_9_2/
-rw-r--r--   1 u1  staff     1012  7 29 22:42 readme.html
-rwxr-xr-x@  1 u1  staff       98  7 29 22:42 refe-1_8_7*
-rw-r--r--@  1 u1  staff      102  7 29 22:42 refe-1_8_7.cmd
-rwxr-xr-x@  1 u1  staff       98  7 29 22:42 refe-1_9_2*
-rw-r--r--@  1 u1  staff      102  7 29 22:42 refe-1_9_2.cmd
-rw-r--r--@  1 u1  staff  1503232  7 29 22:41 server.exe
-rw-r--r--@  1 u1  staff     5724  7 29 22:41 server.exy
-rwxr-xr-x@  1 u1  staff      316  7 29 22:42 server.rb*
div-mm:~/Downloads/ruby-refm-1.9.2-dynamic-20110729 u1$

この内、「*.cmd, *.exe, *.exy」はMacでは不要である。 上のディレクトリは「~/myLocal/ruby_references/ruby-refm-1.9.2-dynamic-20110729/」に移動し、これを$PATHに登録している「~/myLocal/bin/」に修正したシェル・スクリプトを置いた;
div-mm:~ u1$ cd myLocal/
div-mm:~/myLocal u1$ ll
total 0
drwxr-xr-x  7 u1  staff  238  1 27 23:49 bin/
drwxr-xr-x  5 u1  staff  170  1 27 23:53 ruby_references/
div-mm:~/myLocal u1$ ll bin/
total 24
-rwxr-xr-x  1 u1  staff  141  1 27 20:51 refe18*
-rwxr-xr-x  1 u1  staff  141  1 27 21:18 refe19*
-rwxr-xr-x  1 u1  staff   92  1 27 22:48 refers*
drwxr-xr-x  3 u1  staff  102  1 27 23:35 test/
div-mm:~/myLocal u1$ ll ruby_references/
total 0
drwxr-xr-x  11 u1  staff  374  1 27 12:33 Wib_Info/
drwxr-xr-x@ 10 u1  staff  340  1 27 22:33 ruby-refm-1.9.2-dynamic-20110729/
div-mm:~/myLocal u1$ ll ruby_references/ruby-refm-1.9.2-dynamic-20110729/
total 32
drwxr-xr-x@ 22 u1  staff   748  7 29  2011 bitclust/
drwxr-xr-x@  9 u1  staff   306  7 29  2011 db-1_8_7/
drwxr-xr-x@  9 u1  staff   306  7 29  2011 db-1_9_2/
-rw-r--r--   1 u1  staff  1012  7 29  2011 readme.html
-rwxr-xr-x@  1 u1  staff    98  7 29  2011 refe-1_8_7*
-rwxr-xr-x@  1 u1  staff    98  7 29  2011 refe-1_9_2*
-rwxr-xr-x   1 u1  staff   316  7 29  2011 server.rb*
div-mm:~/myLocal u1$ cd bin
div-mm:~/myLocal/bin u1$ cat refe18
#!/bin/sh
cd ~/myLocal/ruby_references/ruby-refm-1.9.2-dynamic-20110729/
exec ruby -Ke -I bitclust/lib bitclust/bin/refe.rb -d db-1_8_7 "$@"
div-mm:~/myLocal/bin u1$ 
div-mm:~/myLocal/bin u1$ cat refe19
#!/bin/sh
cd ~/myLocal/ruby_references/ruby-refm-1.9.2-dynamic-20110729/
exec ruby -Ke -I bitclust/lib bitclust/bin/refe.rb -d db-1_9_2 "$@"
div-mm:~/myLocal/bin u1$ 
div-mm:~/myLocal/bin u1$ cat refers
#!/bin/sh
cd ~/myLocal/ruby_references/ruby-refm-1.9.2-dynamic-20110729/
exec ruby server.rbdiv-mm:~/myLocal/bin u1$ 

従って、ターミナル使用中にレファレンス・マニュアルを書き出しが可能となる。;
  • $ refe18 複数キーワード:Ruby 1.8.7のリファレンス・マニュアル(日本語) 
  • $ refe19 複数キーワード:Ruby 1.9.2のリファレンス・マニュアル(日本語) 
またブラウザでローカルなリファレンス・マニュアルを出すには;
  • ターミナルで「$ refers」と打って、マニュアル・サーバを準備して、
  • ブラウザで「http://localhost:10080/」を開く。
ここら辺はもう少し工夫をすれば、スマートになるだろう。
ーーーー このポストの履歴
  1. 開始 2012-01-27  (金) 01:59
  2. 修正 2012-01-28  (土) 00:06

2012-01-25

図書紹介#006:「初めてのRuby」

このところ「Ruby on Rails」いらいHomebrewとかRuby関連を使う機会が多そうだ。そこで、検索するとこの本の評判がいい。自分の歴史の中で「Fortran, C, HP-BASIC, Visual Basic, Perl」に続いて、「Ruby, Python」をWeb絡みで勉強したいこのごろ。

  • 「初めてのRuby」
    •  Yugui(ゆぐい)/園田 裕貴・著
    • オライリー・ジャパン
    • 2011-07, 初版 第7刷
本屋からの帰り、電車で見たが、確かに通常のプログラムの感じではなさそう。時間が空いたときに、この本を見ながら叩いてみるかな。


ーーーー このポストの履歴
  1. 開始 2012-01-25 (水) 20:13





2012-01-24

図書紹介#005:「入門Git」

「Ruby on Rails」の導入時に、HomebrewとかGitとかにであった。本屋でこの本「入門Git(にゅうもんギット)」が目に飛び込んで来たので購入した。PythonやRubyの練習で実際に使ってみたい。

  • 「入門Git」
    • 濱野 純・著
    • 秀和システム、2011-07,  第1版5刷
    • ISBN978-4-7980-2380-9
【追伸:2012-02-06  (月) 】
  • 我がLionには「git version 1.7.4.4」が入っているようだ。

ーーーー このポストの履歴
  1. 開始 2012-01-24 (火) 12:48
  2. 追伸 2012-02-06  (月) 16:39

2012-01-23

「Lion 10.7.2」での「Pythonの複数ヴァージョン」の確認

以前の記事、図書紹介#004:「Go言語プログラミング入門 on Google App Engine」を見ていると、Lionには複数のヴァージョンのPythonがプリンストールされている様です。

ネット上で検索するも、意外と情報がありません。常道として「man python」を眺めていると、まずプリインストールされているのは;
  • Python 2.5
  • Python 2.6
  • Python 2.7
のようです。これのヴァージョンを直接インタプリタとして動作確認が出来る様です。

div-mm:~ u1$ python
Python 2.7.1 (r271:86832, Jun 25 2011, 05:09:01) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**10
1024
>>> exit()
div-mm:~ u1$ python2.5
Python 2.5.6 (r256:88840, Jul 31 2011, 19:30:45) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**5
32
>>> ^D
div-mm:~ u1$ python2.6
Python 2.6.7 (r267:88850, Jul 31 2011, 19:30:54) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**6+0.7
64.700000000000003
>>> ^D
div-mm:~ u1$ python2.7
Python 2.7.1 (r271:86832, Jun 25 2011, 05:09:01) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**7
128
>>> ^D
div-mm:~ u1$ 

少なくとも、ヴァージョン番号をつければ、該当するインタプリタが呼び出される様です。その他の方法でも出来るらしい;

div-mm:~ u1$ defaults write com.apple.versioner.python Version 2.5
div-mm:~ u1$ python
Python 2.5.6 (r256:88840, Jul 31 2011, 19:30:45) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**5+.6
32.600000000000001
>>> ^D
div-mm:~ u1$ python
Python 2.5.6 (r256:88840, Jul 31 2011, 19:30:45) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**5+.06
32.060000000000002
>>> ^D
div-mm:~ u1$ defaults write com.apple.versioner.python Version 2.6
div-mm:~ u1$ python
Python 2.6.7 (r267:88850, Jul 31 2011, 19:30:54) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**6+.007
64.007000000000005
>>> ^D
div-mm:~ u1$ defaults write com.apple.versioner.python Version 2.7
div-mm:~ u1$ python
Python 2.7.1 (r271:86832, Jun 25 2011, 05:09:01) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**7+.0001
128.0001
>>> ^D
div-mm:~ u1$ echo "-----------------------------"
-----------------------------
div-mm:~ u1$ export VERSIONER_PYTHON_VERSION=2.5
div-mm:~ u1$ python
Python 2.5.6 (r256:88840, Jul 31 2011, 19:30:45) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**5+0.6
32.600000000000001
>>> ^D
div-mm:~ u1$ 

で、実際にGAEに対応させる場合、ディフォールトでpython2.5.6をコールしたいわけである。そこで実際のコマンドを調べてみた;

div-mm:~ u1$ 
div-mm:~ u1$ which python
/usr/bin/python
div-mm:~ u1$ ll /usr/bin/py*
-rwxr-xr-x  6 root  wheel    925  9 18 15:47 /usr/bin/pydoc*
lrwxr-xr-x  1 root  wheel     74  9 18 15:47 /usr/bin/pydoc2.5@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.5/bin/pydoc2.5
lrwxr-xr-x  1 root  wheel     74  9 18 15:47 /usr/bin/pydoc2.6@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.6/bin/pydoc2.6
lrwxr-xr-x  1 root  wheel     74  9 18 15:47 /usr/bin/pydoc2.7@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.7/bin/pydoc2.7
-rwxr-xr-x  2 root  wheel  62752  9 18 15:47 /usr/bin/python*
-rwxr-xr-x  6 root  wheel    925  9 18 15:47 /usr/bin/python-config*
lrwxr-xr-x  1 root  wheel     75  9 18 15:47 /usr/bin/python2.5@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.5/bin/python2.5
lrwxr-xr-x  1 root  wheel     82  9 18 15:47 /usr/bin/python2.5-config@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.5/bin/python2.5-config
lrwxr-xr-x  1 root  wheel     75  9 18 15:47 /usr/bin/python2.6@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6
lrwxr-xr-x  1 root  wheel     82  9 18 15:47 /usr/bin/python2.6-config@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6-config
lrwxr-xr-x  1 root  wheel     75  9 18 15:47 /usr/bin/python2.7@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
lrwxr-xr-x  1 root  wheel     82  9 18 15:47 /usr/bin/python2.7-config@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7-config
-rwxr-xr-x  2 root  wheel  62752  9 18 15:47 /usr/bin/pythonw*
lrwxr-xr-x  1 root  wheel     76  9 18 15:47 /usr/bin/pythonw2.5@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.5/bin/pythonw2.5
lrwxr-xr-x  1 root  wheel     76  9 18 15:47 /usr/bin/pythonw2.6@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.6/bin/pythonw2.6
lrwxr-xr-x  1 root  wheel     76  9 18 15:47 /usr/bin/pythonw2.7@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.7/bin/pythonw2.7
div-mm:~ u1$ ll /System/Library/Frameworks/Python.framework/Versions/
total 8
drwxr-xr-x   7 root  wheel  238  9 18 15:48 2.3/
drwxr-xr-x  11 root  wheel  374 10 13 10:55 2.5/
drwxr-xr-x  11 root  wheel  374 10 13 10:55 2.6/
drwxr-xr-x  11 root  wheel  374 10  1 11:57 2.7/
lrwxr-xr-x   1 root  wheel    3  9 18 15:47 Current@ -> 2.7
div-mm:~ u1$ 

だから、少なくとも
  • /System/Library/Frameworks/Python.framework/Versions/Current@ -> 2.5
とする必要がありそうだ。まだ外にも必要な設定がありそうな気がする。その後、
という論議の最後で、Alexさんが「Apr 22 '11」のコメントで;
cd /Library/Frameworks/Python.framework/Versions
sudo rm Current
sudo ln -s /Library/Frameworks/Python.framework/Versions/3.0 Current
と指摘されている。

ーーーー このポストの履歴
  1. 開始 2012-01-23 (月) 20:36
  2. 追加 2012-01-25  (水) 13:19  Alexさんが「Apr 22 '11」のコメント


2012-01-20

「Ruby on Rails」のLionへのインストール

PythonのWeb関連のMac向けの本はなかなか気に入ったものはない。今日、渋谷の紀伊国屋でみていたら「Ruby on Rails」の本が数冊でていた。でも、すべてWindows関係だった。

いっそのことウェブ資料は無いかとみていたら、「ruby on rails mac os x lion」の一番最初に、次ぎに紹介する「初心者のLionユーザ」にぴったりのサイトを見つけた;

  • Ruby on Rails 3.1 を Mac OS X にインストールする手順をかなり丁寧に説明してみました OIAXさんのサイト 
    • 私の「Mac min(Lin10.7.2)」にはXcode4.1が既にインストールしてあるので「Homebrewのインストール」から 「動作確認」までを行った。自分の環境は;
      1. Mac mini(mid 2011), Lion10.7.2
      2. Xcode 4.1
      3. Ruby 1.8.7
      4. インストールの結果:Rails 3.1.3 
        • 当面これで練習し、
        • LionにXcode4.2などが動けるようになる頃に、Ruby,Railsのヴァージョンを上げれば良いかな。
    • Windowsユーザだけの資料が多い中、Mac初心者でLionユーザに丁寧な解説をくださっているこのサイトのオーナである、株式会社オイアクス・黒田努さんに感謝します。

ただし残念な事に、「node.js のインストール」が巧く行かなかったが、メイルで問い合わせたら、すぐにヒントを頂けた。其れに従ってインストールは完了した。これについては、後ほどメモを追加したい。

当面はRubyをXcode上で動かす練習をしてみるかな。

「Homebrew」は「MacPort」よりも使い良さそうだなぁ。Lionでは「MacPort」は使わないことにしよう。

【「node.js のインストール」の別法:メモ】


OIAXさんのサイトの「node.js のインストール」に習ってコマンド「brew install node」を実行したターミナルの記録を書き出しますと;
div-mm:~ u1$ date
2012年 1月19日 木曜日 17時34分43秒 JST
div-mm:~ u1$ brew install node
==> Downloading http://nodejs.org/dist/v0.6.7/node-v0.6.7.tar.gz
######################################################################## 100.0%
==> ./configure --prefix=/usr/local/Cellar/node/0.6.7 --without-npm
==> make install
==> Caveats
Homebrew has NOT installed npm. We recommend the following method of
installation:
  curl http://npmjs.org/install.sh | sh

After installing, add the following path to your NODE_PATH environment
variable to have npm libraries picked up:
  /usr/local/lib/node_modules
==> Summary
/usr/local/Cellar/node/0.6.7: 80 files, 7.6M, built in 3.1 minutes
div-mm:~ u1$ date
2012年 1月19日 木曜日 17時38分56秒 JST
div-mm:~ u1$

この3行目のコマンド「brew install node」は「Caveats(警告、注意)」にあるように、
  • Homebrewがnpmをインストールにできなかった。我々としてはつぎのシェル・コマンド「curl http://npmjs.org/install.sh | sh」を使う事をお勧めする。
  •  
  • その次のNODE_PATHの設定が判らなかったので、OIAXさんのサイトに質問しヘルプを頂いた;
    • ~/.bash_prifileに「export NODE_PATH=/usr/local/lib/node_modules」を追加するべしとの事だった。
シェル・コマンド「curl http://npmjs.org/install.sh | sh」の結果は;

2012年 1月19日 木曜日 19時08分13秒 JST
div-mm:~ u1$ curl http://npmjs.org/install.sh | sh
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  7881  100  7881    0     0  10624      0 --:--:-- --:--:-- --:--:-- 23385
tar=/usr/bin/tar
version:
bsdtar 2.8.3 - libarchive 2.8.3
install npm@1.1
fetching: http://registry.npmjs.org/npm/-/npm-1.1.0-2.tgz
0.6.7
1.1.0-2
cleanup prefix=/usr/local

All clean!
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@1.1.0-2 /usr/local/lib/node_modules/npm 
It worked
div-mm:~ u1$ cd /usr/local/lib/
div-mm:/usr/local/lib u1$ ll
total 0
drwxr-xr-x  3 u1  admin  102  1 19 17:37 node/
drwxr-xr-x  3 u1  admin  102  1 19 19:08 node_modules/

無事に「/usr/local/lib/node_modules」は出来たようだが、「/usr/local/lib/node」もある。タイム・スタンプからみで先の「brew install node」の絡みで出来たようだ。これらのlsを取ってみると;
div-mm:/usr/local/lib u1$ ll node
total 8
lrwxr-xr-x  1 u1  admin  41  1 19 17:37 wafadmin@ -> ../../Cellar/node/0.6.7/lib/node/wafadmin
div-mm:/usr/local/lib u1$ ll node_modules/
total 0
drwxr-xr-x  19 u1  staff  646  1 19 19:08 npm/
div-mm:/usr/local/lib u1$ ll node_modules/npm/
total 72
-rw-r--r--   1 u1  staff  2889  1 13 10:05 AUTHORS
-rw-r--r--   1 u1  staff  2677 12 18 01:23 LICENSE
-rw-r--r--   1 u1  staff  3719  1 17 03:05 Makefile
-rw-r--r--   1 u1  staff  8356  1 13 06:57 README.md
drwxr-xr-x   7 u1  staff   238  1 19 19:08 bin/
-rwxr-xr-x   1 u1  staff    48 12 18 01:23 cli.js*
-rwxr-xr-x   1 u1  staff   521 12 18 01:23 configure*
drwxr-xr-x   4 u1  staff   136  1 19 19:08 doc/
drwxr-xr-x  17 u1  staff   578  1 19 19:08 html/
drwxr-xr-x  50 u1  staff  1700  1 19 19:08 lib/
drwxr-xr-x   4 u1  staff   136  1 19 19:08 man/
drwxr-xr-x  23 u1  staff   782  1 19 19:08 node_modules/
-rw-r--r--   1 u1  staff  2024  1 17 03:23 package.json
drwxr-xr-x   7 u1  staff   238  1 19 19:08 scripts/
drwxr-xr-x   7 u1  staff   238  1 19 19:08 test/
div-mm:/usr/local/lib u1$

そこで$NODE_PATHを.bash_plofileに定義して、「source .bash_profile」を実行したあとに、ターミナルでマニュアルが見えるようになっている;

  • $ man npm
    • npm -- node package manager
  • $ man gem
    • RubyGems program


以後「作業フォルダの作成」からは、OIAXさんのサイトにしたがって順調にいきました。ターミナルの記録だけを参考に示しておきます。

div-mm:~/rrWork u1$ rails new foo --skip-bundle
      create  
      create  README
      create  Rakefile
      create  config.ru
      create  .gitignore
      create  Gemfile
      create  app
      create  app/assets/images/rails.png
      create  app/assets/javascripts/application.js
      create  app/assets/stylesheets/application.css
      create  app/controllers/application_controller.rb
      create  app/helpers/application_helper.rb
      create  app/mailers
      create  app/models
      create  app/views/layouts/application.html.erb
      create  app/mailers/.gitkeep
      create  app/models/.gitkeep
      create  config
      create  config/routes.rb
      create  config/application.rb
      create  config/environment.rb
      create  config/environments
      create  config/environments/development.rb
      create  config/environments/production.rb
      create  config/environments/test.rb
      create  config/initializers
      create  config/initializers/backtrace_silencers.rb
      create  config/initializers/inflections.rb
      create  config/initializers/mime_types.rb
      create  config/initializers/secret_token.rb
      create  config/initializers/session_store.rb
      create  config/initializers/wrap_parameters.rb
      create  config/locales
      create  config/locales/en.yml
      create  config/boot.rb
      create  config/database.yml
      create  db
      create  db/seeds.rb
      create  doc
      create  doc/README_FOR_APP
      create  lib
      create  lib/tasks
      create  lib/tasks/.gitkeep
      create  lib/assets
      create  lib/assets/.gitkeep
      create  log
      create  log/.gitkeep
      create  public
      create  public/404.html
      create  public/422.html
      create  public/500.html
      create  public/favicon.ico
      create  public/index.html
      create  public/robots.txt
      create  script
      create  script/rails
      create  test/fixtures
      create  test/fixtures/.gitkeep
      create  test/functional
      create  test/functional/.gitkeep
      create  test/integration
      create  test/integration/.gitkeep
      create  test/unit
      create  test/unit/.gitkeep
      create  test/performance/browsing_test.rb
      create  test/test_helper.rb
      create  tmp/cache
      create  tmp/cache/assets
      create  vendor/assets/stylesheets
      create  vendor/assets/stylesheets/.gitkeep
      create  vendor/plugins
      create  vendor/plugins/.gitkeep
div-mm:~/rrWork u1$ ll
total 0
drwxr-xr-x  18 u1  staff  612  1 19 22:58 foo/
div-mm:~/rrWork u1$ cd foo/
div-mm:~/rrWork/foo u1$ ll
total 48
-rw-r--r--   1 u1  staff   600  1 19 22:58 Gemfile
-rw-r--r--   1 u1  staff  9208  1 19 22:58 README
-rw-r--r--   1 u1  staff   268  1 19 22:58 Rakefile
drwxr-xr-x   8 u1  staff   272  1 19 22:58 app/
drwxr-xr-x  10 u1  staff   340  1 19 22:58 config/
-rw-r--r--   1 u1  staff   153  1 19 22:58 config.ru
drwxr-xr-x   3 u1  staff   102  1 19 22:58 db/
drwxr-xr-x   3 u1  staff   102  1 19 22:58 doc/
drwxr-xr-x   4 u1  staff   136  1 19 22:58 lib/
drwxr-xr-x   3 u1  staff   102  1 19 22:58 log/
drwxr-xr-x   8 u1  staff   272  1 19 22:58 public/
drwxr-xr-x   3 u1  staff   102  1 19 22:58 script/
drwxr-xr-x   8 u1  staff   272  1 19 22:58 test/
drwxr-xr-x   3 u1  staff   102  1 19 22:58 tmp/
drwxr-xr-x   4 u1  staff   136  1 19 22:58 vendor/
div-mm:~/rrWork/foo u1$ date
2012年 1月19日 木曜日 23時04分39秒 JST
div-mm:~/rrWork/foo u1$ bundle install
Fetching source index for http://rubygems.org/
Enter your password to install the bundled RubyGems to your system: 
Using rake (0.9.2.2) 
Using multi_json (1.0.4) 
Using activesupport (3.1.3) 
Using builder (3.0.0) 
Using i18n (0.6.0) 
Using activemodel (3.1.3) 
Using erubis (2.7.0) 
Using rack (1.3.6) 
Using rack-cache (1.1) 
Using rack-mount (0.8.3) 
Using rack-test (0.6.1) 
Using hike (1.2.1) 
Using tilt (1.3.3) 
Using sprockets (2.0.3) 
Using actionpack (3.1.3) 
Using mime-types (1.17.2) 
Using polyglot (0.3.3) 
Using treetop (1.4.10) 
Using mail (2.3.0) 
Using actionmailer (3.1.3) 
Using arel (2.2.1) 
Using tzinfo (0.3.31) 
Using activerecord (3.1.3) 
Using activeresource (3.1.3) 
Using bundler (1.0.21) 
Installing coffee-script-source (1.2.0) 
Installing execjs (1.2.13) 
Installing coffee-script (2.2.0) 
Using rack-ssl (1.3.2) 
Using json (1.6.5) 
Using rdoc (3.12) 
Using thor (0.14.6) 
Using railties (3.1.3) 
Installing coffee-rails (3.1.1) 
Installing jquery-rails (1.0.19) 
Using rails (3.1.3) 
Installing sass (3.1.12) 
Installing sass-rails (3.1.5) 
Installing sqlite3 (1.3.5) with native extensions 
Installing uglifier (1.2.2) 
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
div-mm:~/rrWork/foo u1$ 

div-mm:~/rrWork/foo u1$ rails g scaffold user name:string email:string
      invoke  active_record
      create    db/migrate/20120119151807_create_users.rb
      create    app/models/user.rb
      invoke    test_unit
      create      test/unit/user_test.rb
      create      test/fixtures/users.yml
       route  resources :users
      invoke  scaffold_controller
      create    app/controllers/users_controller.rb
      invoke    erb
      create      app/views/users
      create      app/views/users/index.html.erb
      create      app/views/users/edit.html.erb
      create      app/views/users/show.html.erb
      create      app/views/users/new.html.erb
      create      app/views/users/_form.html.erb
      invoke    test_unit
      create      test/functional/users_controller_test.rb
      invoke    helper
      create      app/helpers/users_helper.rb
      invoke      test_unit
      create        test/unit/helpers/users_helper_test.rb
      invoke  assets
      invoke    coffee
      create      app/assets/javascripts/users.js.coffee
      invoke    scss
      create      app/assets/stylesheets/users.css.scss
      invoke  scss
      create    app/assets/stylesheets/scaffolds.css.scss
div-mm:~/rrWork/foo u1$ rake db:migrate
==  CreateUsers: migrating ====================================================
-- create_table(:users)
   -> 0.0012s
==  CreateUsers: migrated (0.0013s) ===========================================

div-mm:~/rrWork/foo u1$ ll
total 56
-rw-r--r--   1 u1  staff   600  1 19 22:58 Gemfile
-rw-r--r--   1 u1  staff  2537  1 19 23:06 Gemfile.lock
-rw-r--r--   1 u1  staff  9208  1 19 22:58 README
-rw-r--r--   1 u1  staff   268  1 19 22:58 Rakefile
drwxr-xr-x   8 u1  staff   272  1 19 22:58 app/
drwxr-xr-x  10 u1  staff   340  1 19 22:58 config/
-rw-r--r--   1 u1  staff   153  1 19 22:58 config.ru
drwxr-xr-x   6 u1  staff   204  1 20 00:19 db/
drwxr-xr-x   3 u1  staff   102  1 19 22:58 doc/
drwxr-xr-x   4 u1  staff   136  1 19 22:58 lib/
drwxr-xr-x   4 u1  staff   136  1 20 00:18 log/
drwxr-xr-x   8 u1  staff   272  1 19 22:58 public/
drwxr-xr-x   3 u1  staff   102  1 19 22:58 script/
drwxr-xr-x   8 u1  staff   272  1 19 22:58 test/
drwxr-xr-x   3 u1  staff   102  1 19 22:58 tmp/
drwxr-xr-x   4 u1  staff   136  1 19 22:58 vendor/
div-mm:~/rrWork/foo u1$ 
div-mm:~/rrWork/foo u1$ echo アプリケーションの起動
アプリケーションの起動
div-mm:~/rrWork/foo u1$ rails s
=> Booting WEBrick
=> Rails 3.1.3 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2012-01-20 00:22:47] INFO  WEBrick 1.3.1
[2012-01-20 00:22:47] INFO  ruby 1.8.7 (2010-01-10) [universal-darwin11.0]
[2012-01-20 00:22:47] INFO  WEBrick::HTTPServer#start: pid=2755 port=3000


Started GET "/users" for 127.0.0.1 at Fri Jan 20 00:23:54 +0900 2012
  Processing by UsersController#index as HTML
  User Load (0.1ms)  SELECT "users".* FROM "users" 
Rendered users/index.html.erb within layouts/application (1.8ms)
Compiled application.css  (1ms)  (pid 2755)
Compiled scaffolds.css  (54ms)  (pid 2755)
Compiled users.css  (1ms)  (pid 2755)
Compiled application.js  (4ms)  (pid 2755)
Compiled jquery.js  (5ms)  (pid 2755)
Compiled jquery_ujs.js  (0ms)  (pid 2755)
Compiled users.js  (102ms)  (pid 2755)
Completed 200 OK in 293ms (Views: 291.9ms | ActiveRecord: 0.1ms)


Started GET "/assets/application.css?body=1" for 127.0.0.1 at Fri Jan 20 00:23:55 +0900 2012
Served asset /application.css - 200 OK (0ms)


Started GET "/assets/scaffolds.css?body=1" for 127.0.0.1 at Fri Jan 20 00:23:55 +0900 2012
Served asset /scaffolds.css - 200 OK (2ms)


Started GET "/assets/users.css?body=1" for 127.0.0.1 at Fri Jan 20 00:23:55 +0900 2012
Served asset /users.css - 200 OK (2ms)


Started GET "/assets/jquery.js?body=1" for 127.0.0.1 at Fri Jan 20 00:23:55 +0900 2012
Served asset /jquery.js - 200 OK (2ms)


Started GET "/assets/jquery_ujs.js?body=1" for 127.0.0.1 at Fri Jan 20 00:23:55 +0900 2012
Served asset /jquery_ujs.js - 200 OK (2ms)


Started GET "/assets/users.js?body=1" for 127.0.0.1 at Fri Jan 20 00:23:55 +0900 2012
Served asset /users.js - 200 OK (1ms)


Started GET "/assets/application.js?body=1" for 127.0.0.1 at Fri Jan 20 00:23:55 +0900 2012
Served asset /application.js - 200 OK (0ms)


Started GET "/users/new" for 127.0.0.1 at Fri Jan 20 00:26:22 +0900 2012
  Processing by UsersController#new as HTML
Rendered users/_form.html.erb (6.1ms)
Rendered users/new.html.erb within layouts/application (9.2ms)
Completed 200 OK in 18ms (Views: 17.7ms | ActiveRecord: 0.2ms)


Started GET "/assets/application.css?body=1" for 127.0.0.1 at Fri Jan 20 00:26:22 +0900 2012
Served asset /application.css - 304 Not Modified (0ms)


Started GET "/assets/scaffolds.css?body=1" for 127.0.0.1 at Fri Jan 20 00:26:22 +0900 2012
Served asset /scaffolds.css - 304 Not Modified (0ms)

面白いのは「アプリケーションの起 ;-mm:~/rrWork/foo u1$ rails s ;行番号200
」の後で「ブラウザで http://localhost:3000/users を開きます。;行番号210以降」と、その実行内容が直接にターミナルに流れ込んで来ることである。

ここら辺がWeb開発に有効なのだろうな。

その後、泥縄で「Ruby, Rails」のサイトを見ていると、Ruby1.9.3が望ましそうである。また、幾つかのリビジョンをまとめて面倒見てくれる「RVM」というものがあるようだ。
ぼつぼつと眺めてみたいものだ。

ーーーー このポストの履歴
  1. 開始 2012-01-20 (金) 01:10
  2. 追加 2012-01-20  (金) 14:26 「node.js のインストール」の別法:メモ
  3. 追加 2012-01-21  (土) 15:17   RVM, Rubyを始めたい方向けまとめ(2011年秋版)


2012-01-13

DokuWiki(Angua)のインストール

昔にPerlベースのWikiをチューニングして使っていたが、悪戯に対抗できずにBloggerに移行しているが、手慣れたWikiの感触が忘れられない。取りあえず、Macで定評のあるDokuWikiをイントラネットで運用する為にインストールしてみた。

大雑把なところは下記の資料、
 に従ってインストールすればいいようだ。ただし、インストーラ(ブラウザでhttp://localhost/~your_username/dokuwiki/install.php)を起動すると、10個のディレクトリのパーミッションを書き換える(755 → 757)とする指示がでてくるが、それだけでは不十分の様です。一度設定をして、インストーラを削除(install.php  → install.php.back)としてwikiを起動すると、次の様なエラーメッセージ
  • 「media_attic」が書き込みできない
が出てきます。 そこで、「dokuwiki mac media_attic」で検索すると;
がありました。という事で、この2つのディレクトリのパーミッションも変更しました;
図 パーミッションを「757=rwxr-wrwx」に変えた12個のディレクトリ(濃い着色)。「ll=ls -l」のこと。
インストーラをアクティブに(install.php.back  → install.php)戻して、再度起動すると;
  • もう一度、インストールするには安全上の為に,「dokuwiki/conf/」ディレクトリの中に出来ている;
    • local.php, users.auth.php, acl.auth.php
  • を消去せよ、との警告がでたので、実行した。
こんどは、無事に動きました。ホッ。

その後、マニアルに従ってみたが、概ね納得できる。

ただ昔のWikiと違って、ページの階層構造を、ファイル・ネームに依存して作るのではなく、xmlの名前空間を利用して作るようである。Bloggerでxml、xslを勉強始めたところなので、丁度いい練習かもしれない。

PHP関連で、WorldPressの方がDokuWikiとの連携性が高いかもしれない。というか、Bloggerはベールに包まれて不明朗感が強いしなぁ。

ーーーー このポストの履歴
  1. 開始 2012-01-13 (金) 19:44
  2. 追加 2012-01-14  (土) 12:42 ページの階層構造、WorldPress

2012-01-06

図書紹介#004:「Go言語プログラミング入門 on Google App Engine」

昨日、八重洲ブック・センターで見かけた。LibreOfficeにPythonが使えたり、Google APIの開発にもPythonが使える様なので、Mac OS X系の解説があればとおもっていた。この本は、Linux, Mac OS Xに沿って説明しているので、手を出してみる事にした。

  • 「Go言語プログラミング入門 on Google App Engine」
    • 横山 隆司・著
    • 秀和システム、2011-12
    • ISBN978-4-7980-3180-4

ーーーー このポストの履歴
  1. 開始 2012-01-06 (金) 13:14

注目の投稿

Terminalでの、なんちゃってViモドキ

近頃、ようやくKarabiner-Elementsに慣れてきたので、 Terminalで動作する「擬似Vi-Mode」を作って見たので、ご紹介します。 『概要』 「擬似Vi-Mode」の所以は、方向キー「←↓↑→」を通常の「hjkl」ではなくて「jkil」としました。これ...