[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Re: function definition is void: cvs-edit



            こんにちは 伊藤@豊田織機 です。


後> diff-modeの良いところは
後>  * 色付けしてくれるので、変更部分を確認しやすい。
後>  * nやp(やNやP)でhunk/file単位の移動ができる。
後>  * C-m でソースの該当部分にジャンプできる。
後>    (なので、ジャンプ後に C-x 4 a としてChangeLogを書くのに非常に助かる)

 このdiff-modeってなぜか動かないのですが…
 そもそも使い方がいま一つ分って無い気もするのですが…^^;

 環境としては次の通りです。
 Meadow1.13b1/win98
 cygwin 1.1.7
 pcl-cvs v2.9.9
 diff-mode-1.8.el
 elib-1.0
 で.emacsには-----------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CVS/pcl-cvs
;; 1. cvsで管理するディレクトリは予めcheckoutしておく必要がある
;;    M-x cvs-checkoutで可能
;; 2. M-x cvs-stateでディレクトリを聞かれるのでcheckoutしたディ
;;    レクトリを指定する。
;; 3. 後は、表示されたファイルの上で'l'(log)、'c'(commit)など
;;    出来る(?でhelp見れる。diff'd'の場合'd?'で更に詳細help有り)
;;
;; elibはJDEでも使用するため?.??/site-lisp以下にある
;; pcl-cvs
(setq load-path 
      (append 
       (list "c:/usr/meadow/cvs/pcl-cvs-2.9.9") load-path))
(load-library "pcl-cvs-startup")
(add-hook 'cvs-mode-hook
          (lambda ()
            (collection-set-goal-column cvs-buffer-name 38)))
;; log はどのコードで書くか決めて、固定にしておかないと危険です 
;; (euc-japan でも sjis でも良いんけど)
(modify-coding-system-alist 'process "cvs" '(undecided . sjis))
;; pserver ではなく local repository を使うための設定。詳細は、
;; meadow-users-jp メーリングリストの
;; Subject: about pcl-cvs    X-ML-COUNT: 1870
;; Date: Sat, 29 Jan 2000 01:45:18 +0900   で始まる thread を参照のこと。
;;
(if (featurep 'meadow)
    (define-process-argument-editing
      "/cvs\\.exe\\'"
      (lambda (x)
        (let ((command (car x))
              (argument (cdr x)))
          (setq argument (cygnus-process-argument-quoting argument))
          (concat
           (unix-to-dos-filename command) " "
           (unix-to-dos-argument (mapconcat (function concat) argument " ")
                                 nil nil nil nil))))))
;; diff-mode-1.8.el
(autoload 'diff-mode "c:/usr/meadow/cvs/diff-mode-1.8" "Diff major mode" t)
(add-to-list 'auto-mode-alist '("\\.\\(diffs?\\|patch\\|rej\\)\\'" . diff-mode))
(setq cvs-diff-flags '("-u"))
 -----------------------------------
 としています(確か…小関さんのページの通り?^^;)。


 で、例えばM-x cvs-state→フォルダを聞かれるので~/tako/とかすると
---------------------------------------------------
PCL-CVS release v2_9_9

Repository       : /ito/CVSROOT
Working directory: c:/ito/tako/

In directory .:
              Up-To-Date  1.2         a.c
              Up-To-Date  1.1         toyota.txt

--------------------- End ---------------------
-- last cmd: cvs -f status -v --
---------------------------------------------------
 みたいに表示されます。"?"でmode-lineにhelpも出るし、"a"でadd、"c"で
 commit→コメント入力→C-cC-cでcommit、"l"で記入したコメントも表示さ
 れてます。
 ところが、例えばa.cの上にカーソルを動かし(C-n/p)、"="とかしても何も表
 示されません
 上記画面では"-- last cmd: cvs -f diff -u a.c --"の文が変わるぐらいで
 しょうか…

 私は、てっきりa.cの1.1と1.2の差分でも表示されるかと思っていたのですが…
---------------------------------------------------
bash-2.04$ cvs diff -r1.1 a.c
Index: a.c
===================================================================
RCS file: /ito/CVSROOT/tako/a.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -r1.1 -r1.2
1c1,4
< // $Id: a.c,v 1.1 2001/01/18 02:50:22 ito Exp $
---
> // $Id: a.c,v 1.2 2001/01/18 02:50:43 ito Exp $
> //
> //
> 
---------------------------------------------------
 こんな具合に…
 そー言う使い方が出来る物では無いのでしょうか?


         _  _ TOYOTA AUTOMATIC LOOM WORKS, LTD.
       /_/_(_)     Toru Ito (0566)27-5344
        /_/ Office mailto:ito@xxxxxxxxxxxxxxxxxxxxxxxxx