====== Emacs 24.3でp4.elを使う ====== ===== 能書き ===== 仕事でPerforceを使うことになったので、EmacsからPerforceを操作出来るようにしてみる。 Subversionとは違い、Perforceはロック指向のVCSで、ファイルを編集する場合は「チェックアウト」して編集中であることを明示しなければならない。ワークスペース(svnで言うところの作業コピー)のファイルは基本的に読み取り専用属性がついており、チェックアウトして初めて書き込みが可能になるという仕組み。故に、エディタとp4が連携してないと非常に使いづらい。 Emacsで使えるPerfoce拡張は以下の2種類があるようだ。 * vc-p4.el * p4.el **vc-p4.el**はPerforce公式?の拡張で、EmacsのVersion Controlシステムに則ったものだそうだ。 対する**p4.el**はPerforceを熟知したユーザー向けの拡張で、Perforceの機能をフルに使えるのが特徴となっている。 今回はp4.elの方使ってみたいと思う。 ===== 試した環境 ===== * Windows 7 Professional (x64) * [[http://cha.la.coocan.jp/doc/NTEmacs.html|NTEmacs 24.3.1]] * Perforce Rev. P4/NTX64/2013.1/821990 * 特に確認はしてないが、コマンドライン版のp4クライアントが入ってる必要があると思う。 ===== インストール ===== MELPAから一発インストール可能。M-x list-packagesしてp4で検索すると出てくる。 尚、MELPAの設定についてはこっち→[[emacs_24.3_using_melpa]] ===== 設定 ===== == 環境変数 == ユーザー環境変数 **P4FCONFIG** を **p4config** に設定。 == p4config == p4configファイルにデポへの接続設定を記述し、ローカルのワークスペースのルートに置いとくと、現在のワークスペースに合わせてp4クライアントが勝手に使い分けてくれる模様。 P4PORT=プロトコル:サーバ:ポート P4USER=ユーザー名 P4CLIENT=ワークスペース名 P4CHARSET=文字コード Unicodeを使っている場合は、デポに繋ごうとすると「unicode server permits only unicode clients」というエラーが出るのでP4CHARSETの指定が必須。 ===== 参考サイト ===== * [[http://www.emacswiki.org/emacs/PerforceSCM|EmacsWiki: Perforce SCM]]