emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

address@hidden: vc-svn.el and "the underscore hack"]


From: AriT93
Subject: address@hidden: vc-svn.el and "the underscore hack"]
Date: Tue, 31 Oct 2006 08:57:31 -0600

Richard Stallman writes:
 > Would someone like to work on this?  There is a proposed patch
 > in the second message.

I have tested this now on both windows and Gentoo GNU/Linux and have
not encountered any issues.  However I have recently been using
psvn.el from http://www.xsteve.at/prg/emacs/psvn.el and in that file
they are using a defun to set the svn admin directory name. The
function checks for environment to determine which directory name to
use (.svn or _svn).  That looks like a better way to do it than what I
did in my patch.  I will attempt to make a similar change to vc-svn.el
and submit a patch if there are no objections.  

I do have one question, is this list the correct place to post that
patch or should it be sent to the subversion people.  vc-svn.el
indicates that this file is maintained here.  I just wanted to make
sure I send it to the right place.

--The following can be ignored if you are uninterested in the patch submitted--
 > 
 > ------- Start of forwarded message -------
 > From: AriT93 <address@hidden>
 > MIME-Version: 1.0
 > Content-Type: text/plain; charset=us-ascii
 > Date: Mon, 16 Oct 2006 08:20:59 -0500
 > To: address@hidden
 > Subject: vc-svn.el and "the underscore hack"
 > X-Spam-Status: No, score=2.7 required=5.0 tests=FORGED_YAHOO_RCVD,
 >      FROM_ENDS_IN_NUMS autolearn=no version=3.0.4
 > 
 > This change may be trivial to others but as my elisp is not that
 > strong I though I would submit this.  On the windows platform
 > subversion can be configured to create it's directories as "_svn"
 > instead of the standard ".svn" I believe the reason for this was to
 > ensure it worked with websites served by IIS.  
 > 
 > This setting causes problems with vc-svn on windows.  vc-mode does not
 > recognize these files as being under version control.  To handle this
 > I have just replaced ".svn" with "_svn" in vc-svn.el.  So far I have
 > not seen any negative side effects of making this change.  However it
 > occured to me that there should be a more effective way of handling
 > this.  In looking at the file it would seem that eiter a variable
 > could be used to determine the name of the svn directory or an "or"
 > statement could be used where if no ".svn" directory is found a "_svn"
 > directory could be sought.
 > 
 > As I said my elisp skills are pretty weak but I am trying to get the
 > or statement to work. If I am able to get something working I will
 > submit a patch.
 > 
 > Ari
 > - -- 
 > 
 > enjoy every sandwich
 > 
 >            -- W. Zevon
 > 
 > 
 > _______________________________________________
 > bug-gnu-emacs mailing list
 > address@hidden
 > http://lists.gnu.org/mailman/listinfo/bug-gnu-emacs
 > ------- End of forwarded message -------
 > 
 > From: AriT93 <address@hidden>
 > MIME-Version: 1.0
 > Content-Type: multipart/mixed; boundary="kyqG12eoF5"
 > Date: Mon, 16 Oct 2006 10:02:11 -0500
 > To: address@hidden
 > Subject: RE: vc-svn.el and "the underscore hack"
 > X-Spam-Status: No, score=2.7 required=5.0 tests=FORGED_YAHOO_RCVD,
 >      FROM_ENDS_IN_NUMS autolearn=no version=3.0.4
 > 
 > 
 > --kyqG12eoF5
 > Content-Type: text/plain; charset=us-ascii
 > Content-Description: message body text
 > Content-Transfer-Encoding: 7bit
 > 
 > 
 > Following up to my previous email.  here is a patch that seems to be
 > functioning.  As I said my elisp skills are pretty weak.  If there is
 > a better way to accomplish these changes I would be very interested in
 > them as a learning experience.  
 > 
 > 
 > --kyqG12eoF5
 > Content-Type: text/plain
 > Content-Description: vc-svn.patch
 > Content-Disposition: inline;
 >      filename="vc-svn.patch"
 > Content-Transfer-Encoding: 7bit
 > 
 > --- /cygdrive/c/temp/cvs/emacs/lisp/vc-svn.el        2006-02-08 
 > 21:47:00.000000000 -0600
 > +++ /cygdrive/c/emacs/lisp/vc-svn.el 2006-10-16 09:37:34.240209600 -0500
 > @@ -100,18 +100,25 @@ This is only meaningful if you don't use
 >  ;;;
 >  
 >  ;;;###autoload (defun vc-svn-registered (f)
 > -;;;###autoload   (when (file-readable-p (expand-file-name
 > -;;;###autoload                        ".svn/entries" (file-name-directory 
 > f)))
 > +;;;###autoload   (when (or (file-readable-p (expand-file-name
 > +;;;###autoload                        "_svn/entries" (file-name-directory 
 > f)))
 > +;;;###autoload           (file-readable-p (expand-file-name 
 > +;;;###autoload           ".svn/entries" (file-name-directory f))))
 >  ;;;###autoload       (load "vc-svn")
 >  ;;;###autoload       (vc-svn-registered f)))
 >  
 >  ;;;###autoload
 >  (add-to-list 'completion-ignored-extensions ".svn/")
 > +(add-to-list 'completion-ignored-extensions "_svn/")
 >  
 >  (defun vc-svn-registered (file)
 >    "Check if FILE is SVN registered."
 > -  (when (file-readable-p (expand-file-name ".svn/entries"
 > -                                       (file-name-directory file)))
 > +  ;;  (when (file-readable-p (expand-file-name "_svn/entries"
 > +  ;;                                           (file-name-directory file)))
 > +  (when (or(file-readable-p (expand-file-name ".svn/entries"
 > +                                                                            
 >           (file-name-directory file)))
 > +               (file-readable-p (expand-file-name "_svn/entries"
 > +                                                                            
 >           (file-name-directory file))))
 >      (with-temp-buffer
 >        (cd (file-name-directory file))
 >        (let ((status
 > @@ -206,12 +213,22 @@ COMMENT can be used to provide an initia
 >  the SVN command (in that order)."
 >    (apply 'vc-svn-command nil 0 file "add" (vc-switches 'SVN 'register)))
 >  
 > +;; (defun vc-svn-responsible-p (file)
 > +;;   "Return non-nil if SVN thinks it is responsible for FILE."
 > +;;   (file-directory-p (expand-file-name "_svn"
 > +;;                                (if (file-directory-p file)
 > +;;                                    file
 > +;;                                  (file-name-directory file)))))
 >  (defun vc-svn-responsible-p (file)
 >    "Return non-nil if SVN thinks it is responsible for FILE."
 > -  (file-directory-p (expand-file-name ".svn"
 > +  (or (file-directory-p (expand-file-name ".svn"
 >                                    (if (file-directory-p file)
 >                                        file
 > -                                    (file-name-directory file)))))
 > +                                    (file-name-directory file))))
 > +(file-directory-p (expand-file-name "_svn"
 > +                                  (if (file-directory-p file)
 > +                                      file
 > +                                    (file-name-directory file))))))
 >  
 >  (defalias 'vc-svn-could-register 'vc-svn-responsible-p
 >    "Return non-nil if FILE could be registered in SVN.
 > @@ -476,7 +493,8 @@ and that it passes `vc-svn-global-switch
 >      (let ((coding-system-for-read
 >         (or file-name-coding-system
 >             default-file-name-coding-system)))
 > -      (vc-insert-file (expand-file-name ".svn/entries" dirname)))
 > +      (or (vc-insert-file (expand-file-name ".svn/entries" dirname))
 > +              (vc-insert-file (expand-file-name "_svn/entries" dirname))))
 >      (goto-char (point-min))
 >      (when (re-search-forward
 >         ;; Old `svn' used name="svn:dir", newer use just name="".
 > 
 > --kyqG12eoF5
 > Content-Type: text/plain; charset=us-ascii
 > Content-Description: .signature
 > Content-Transfer-Encoding: 7bit
 > 
 > 
 > -- 
 > 
 > enjoy every sandwich
 > 
 >            -- W. Zevon
 > 
 > --kyqG12eoF5
 > Content-Type: text/plain; charset="us-ascii"
 > MIME-Version: 1.0
 > Content-Transfer-Encoding: 7bit
 > Content-Disposition: inline
 > 
 > _______________________________________________
 > bug-gnu-emacs mailing list
 > address@hidden
 > http://lists.gnu.org/mailman/listinfo/bug-gnu-emacs
 > 
 > --kyqG12eoF5--
 > 
 > 
 > 
 > 
 > 
 > _______________________________________________
 > Emacs-devel mailing list
 > address@hidden
 > http://lists.gnu.org/mailman/listinfo/emacs-devel

-- 

enjoy every sandwich

           -- W. Zevon




reply via email to

[Prev in Thread] Current Thread [Next in Thread]