GUI世代のためのCUI入門以前 ー Vim導入方法
勝手にGUI世代のシリーズを書いていますが、今回はVimについてです。
VimはUNIX系OSやLinuxに、最近ではほぼ標準搭載されているCUIテキストエディタです。世の中にはたくさんのGUIテキストエディタがありますが、どれも同じようなもので、細かなことができない場面がたびたびあります。
また、サーバーのファイルを編集をしたりする際にはとても便利です。
それから僕のように、操作感が気に入って使う人も結構多いです。移動や置換、検索や保管などを自由自在に行えて、自分のための開発環境を自分好みに整えることができる気持ちの良さはなかなか無視できません。
CUIテキストエディタとしては他にEmacsがありますが、僕はVim派なので今回はVimの紹介をします。
続きを読むGUI世代のためのCUI入門以前 ー MacPorts導入方法
Macは使うけどTerminal.appはあまり開かない、というプログラマーがいるとすれば、それはあまりに勿体無いです。
最近、AppleはCUIからの脱却を図ろうとしている、なんて話も聞きますが、CUIは使いこなせば強力な武器になりますし、なにより蓄積された膨大な遺産があります。これを使わない手はありません。
なにはともあれ昨日紹介したiTermに続き、CUI厨を増やすが如く、今日はMacPortsを紹介します。
日本のMacPorts Wiki(http://macwiki.sourceforge.jp/wiki/index.php/MacPorts)によると
MacPorts http://www.macports.org/ は MacOSX 上で利用可能なパッケージシステムの一つで、 主に UNIX 向けに開発されたオープンソース・ソフトウェアを手軽にインストールすることができます。
だそうです。つまり、コマンドでプログラムを簡単にインストールすることができるパッケージ管理システムなんですが…とは言われてもわからないと思いますので、ひとつプログラムを使えるところまで今日は説明したいと思います。
続きを読むiTermの紹介
Mac OSXにはTerminal.appが最初からインストールされていますが、ANSIカラーの変更ができないので、vimのカラースキームの一部が変な色になってしまうことがあります。
それをささっと解決してくれるのがiTermです。
iTerm ー http://iterm.sourceforge.net/
iTermではANSIカラーを簡単に設定したり、キーマッピングを簡単に設定したりすることができます。透過も設定できます。また、ブックマーク機能を使えば頻繁に使うサーバーへの接続も簡単です。(aliasを使ってもいいですが、、)
コマンドラインでの作業が楽しくなること間違いなしです。ぜひ一度お試し下さい。
(Terminal.appでも TerminalColoreopardを使えばANSIカラーの変更が可能です。こちらもどうぞ)
MacとWindows間でファイル共有をする方法
Snow Leopardをクリーンインストールするためにバックアップを取っていたらHDDの容量が足りなくなってしまい、昔使っていたWindows機にバックアップを取るしか無くなってしまったときに方法を調べたので書き残しておきたいと思います。
例のごとく今回も方法は簡単です。特別なソフトをダウンロードしたりインストールしたりする必要もありません。
CakephpのControllerの備忘録
データベーステーブルを作らずにコントローラーを作成する
コントローラーオブジェクトを生成する際には、同時にモデルオブジェクトも生成されます。
そのモデルオブジェクトはデータベースに同名のテーブルを必要とするので、同名のテーブルを作成していない場合エラーが吐かれます。
このエラーは、コントローラーの "uses" プロパティを null にセットしておくことで回避できます。
<?php class PostsController extends AppController { public $name = 'Posts'; public $uses = null; }
任意のレイアウトファイルを使う
cakephpをダウンロードしてきた状態では、用意されているレイアウトファイルが使用されます。
また、”APP/views/layouts/default.ctp” を作成すると、特に指定しない場合にはこれが使用されます。
任意のレイアウトファイルを使用したい場合には、コントローラーの "layout" プロパティを設定します。
<?php class PostsController extends AppController { public $name = 'Posts'; public $uses = null; public $layout = 'mylayout'; # => APP/views/layouts/mylayout.ctp }
ちなみに、"default.ctp" の中には、
<?php echo $content_for_layout; ?>
が必要です。"$content_for_layout" は cakephp によって自動的にセットされます。その内容に関しては次項に記述します。