From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: AriT93 Newsgroups: gmane.emacs.devel Subject: [arit93@yahoo.com: vc-svn.el and "the underscore hack"] Date: Tue, 31 Oct 2006 08:57:31 -0600 Message-ID: <17735.25691.286000.488074@gargle.gargle.HOWL> References: NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1162306742 16939 80.91.229.2 (31 Oct 2006 14:59:02 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 31 Oct 2006 14:59:02 +0000 (UTC) Cc: spiegel@gnu.org, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Oct 31 15:58:59 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1Gev4K-0005xl-PJ for ged-emacs-devel@m.gmane.org; Tue, 31 Oct 2006 15:58:25 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Gev4K-0003Qz-Cd for ged-emacs-devel@m.gmane.org; Tue, 31 Oct 2006 09:58:24 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Gev43-0003NR-BF for emacs-devel@gnu.org; Tue, 31 Oct 2006 09:58:07 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Gev3x-0003Dz-Ra for emacs-devel@gnu.org; Tue, 31 Oct 2006 09:58:06 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Gev3x-0003Dk-K9 for emacs-devel@gnu.org; Tue, 31 Oct 2006 09:58:01 -0500 Original-Received: from [138.87.130.210] (helo=syssrv30.ad.ilstu.edu) by monty-python.gnu.org with esmtp (Exim 4.52) id 1Gev3A-0006so-4c; Tue, 31 Oct 2006 09:57:12 -0500 Original-Received: from SYS270307 ([138.87.130.16]) by syssrv30.ad.ilstu.edu with Microsoft SMTPSVC(6.0.3790.211); Tue, 31 Oct 2006 08:57:32 -0600 Original-To: rms@gnu.org In-Reply-To: X-Mailer: VM 7.19 under Emacs 22.0.50.1 X-OriginalArrivalTime: 31 Oct 2006 14:57:32.0837 (UTC) FILETIME=[E4DE4D50:01C6FCFC] X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:61475 Archived-At: 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 > MIME-Version: 1.0 > Content-Type: text/plain; charset=us-ascii > Date: Mon, 16 Oct 2006 08:20:59 -0500 > To: bug-gnu-emacs@gnu.org > 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 > bug-gnu-emacs@gnu.org > http://lists.gnu.org/mailman/listinfo/bug-gnu-emacs > ------- End of forwarded message ------- > > From: AriT93 > MIME-Version: 1.0 > Content-Type: multipart/mixed; boundary="kyqG12eoF5" > Date: Mon, 16 Oct 2006 10:02:11 -0500 > To: bug-gnu-emacs@gnu.org > 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 > bug-gnu-emacs@gnu.org > http://lists.gnu.org/mailman/listinfo/bug-gnu-emacs > > --kyqG12eoF5-- > > > > > > _______________________________________________ > Emacs-devel mailing list > Emacs-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-devel -- enjoy every sandwich -- W. Zevon