2013年06月20日

FuelPHP用のEmacsのマイナーモードfuelphp-mode.el作ってる

ここ半年ぐらいお仕事でFuelPHPというPHPのMVCフレームワークを触ってる。

このFuelPHPというフレームワーク、 理由はよく分からないけど、どうやら日本で人気らしい。

人気らしいんだけども、 どうもいまいち開発をサポートしてくれる環境が見当たらない。

というかEmacsでのサポートが欲しかった。 欲しかったから、半年ぐらいサポート的な何かが出るのを待ち続けてみた。 出なかった。少なくとも見つけられなかった。

というわけでタイトルの通り、自作中。

とりあえずGithubに上げてます。 https://github.com/mugijiru/fuelphp-mode

というわけで以下説明。 ほぼREADMEのコピペ。

fuelphp-mode.el

概要

FuelPHP の開発をサポートするためのマイナーモード

インストール

fuelphp-mode.el をload-pathが通っているところに置いて

(require 'fuelphp-mode)

使い方

FuelPHPプロジェクト内のファイルをfind-fileで開くと自動的に有効になります。 また、FuelPHPプロジェクト内のファイルを開いている時に

M-x fuelphp-mode

を実行することによりよっても有効になります。

コマンド

FuelPHPマイナーモードが有効な時には以下のコマンドが使用できます。

コマンド機能
C-c . f mModelファイルを開く
C-c . f cControllerファイルを開く
C-c . f vViewファイルを開く
C-c . o sサーバを起動する
C-c . o cコンソールを起動する
C-c . gfuel/app内をgrepする

カスタマイズ変数

fuelphp-tags-file-name

FuelPHPプロジェクト内で利用しているタグファイルの名前。 プロジェクトROOT直下にこの変数で指定された名前のタグファイルがあるものとして検索されます。

デフォルト値: TAGS

posted by 麦汁 at 22:36 | Comment(0) | TrackBack(0) | emacs | このブログの読者になる | 更新情報をチェックする

2013年06月10日

SayKotoeri を使って喋らせるマイナーモード作った。

Cocoa な Emacs に日本語喋らせたいなあ とか思ってたら Macのsayコマンドに日本語を喋らせるための SayKotoeri という素敵なコマンドが落ちていた。

ってことで saykotoeri.el というマイナーモードを作った。

SayKotoeriとSayKanaに依存しているので 事前にそれらをインストールしていてください。

それが済んだら適当に

(auto-install-from-url "https://raw.github.com/mugijiru/saykotoeri-el/master/saykotoeri.el")

したらインストールはできる。

あとは

(add-to-list 'load-path (expand-file-name "~/path/to"))
(require 'saykotoeri)

とかで読み込んでおいて

M-x saykotoeri-mode

を実行したらsaykotoeri-modeというマイナーモードが有効になります。

saykotoeri-modeが有効な時にリージョン選択して

M-x saykotoeri-region

としたら、選択部分を読み上げてくれます。

saykotoeri-mode が有効でない時は saykotoeri-region は使えません。

そんだけ。

タグ:Emacs emacs lisp Mac
posted by 麦汁 at 21:19 | Comment(0) | TrackBack(0) | emacs | このブログの読者になる | 更新情報をチェックする

2013年06月01日

zsh「ふえぇ、麦汁さんのtypoの回数まで数えられるようになっちゃったよぉ……」

typoしたらzshに「ふえぇ」とか言わせるやつ、飽きてきたので機能追加した。 具体的にはその日何回目のtypoか数えておいて その回数で若干出力を変える感じ。 ますますえりっく氏のshellinfoのパクリ感出て来たけど気にしない。

とりあえずそのためのDBを作る。 Mac OS Xはsqlite3が入ってるのでそれを利用する。 あと単に使ってみたかった。

$ sqlite3 ~/.typo.db

んで、テーブル作る。 元Rails厨なので適当にそれっぽい感じに。

sqlite> create table typos(id    integer primary key autoincrement not null,
                           date  text unique not null,
                           count tinyint not null default 0);

あとは .zshrc で command_not_found_handler 関数をごにゃっとする。

command_not_found_handler() {
    date=`date +'%Y-%m-%d'`
    db="$HOME/.typo.db"
    n=`sqlite3 $db "select count from typos where date = '$date'"`
    if [ "$n" = "" ]; then
        n=1
        sqlite3 $db "insert into typos(count, date) values($n, '$date');"
        echo "zsh「ふえぇ、麦汁さんが今日も typo したよぉ……。$0 なんてコマンド存在しないよぉ……」" | tweet > /dev/null 2>&1 &
    else
        n=`expr $n + 1`
        sqlite3 $db "update typos set count = $n where date = '$date';"
        echo "zsh「ふえぇ、麦汁さんがまた typo したよぉ……。今日 $n 回目の typo だよぉ……。$0 なんてコマンド存在しないんだってばぁ……」" | tweet > /dev/null 2>&1 &
    fi
    return 127
}

これでOK。

ふえぇ、typo の回数まで数えられて恥ずかしいよぉ……。

posted by 麦汁 at 11:11 | Comment(0) | TrackBack(0) | zsh | このブログの読者になる | 更新情報をチェックする