From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Tim X Newsgroups: gmane.emacs.help Subject: Re: how to keep .emacs files in synch Date: Thu, 04 Oct 2007 19:53:58 +1000 Organization: Posted via Supernews, http://www.supernews.com Message-ID: <87abqz2ojt.fsf@lion.rapttech.com.au> References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1191494443 15282 80.91.229.12 (4 Oct 2007 10:40:43 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 4 Oct 2007 10:40:43 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Thu Oct 04 12:40:41 2007 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1IdO86-0004H8-Bx for geh-help-gnu-emacs@m.gmane.org; Thu, 04 Oct 2007 12:40:30 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1IdO81-00038X-Hn for geh-help-gnu-emacs@m.gmane.org; Thu, 04 Oct 2007 06:40:25 -0400 Original-Path: shelby.stanford.edu!newsfeed.stanford.edu!postnews.google.com!news4.google.com!sn-xt-sjc-04!sn-xt-sjc-01!sn-post-sjc-02!sn-post-sjc-01!supernews.com!corp.supernews.com!not-for-mail Original-Newsgroups: gnu.emacs.help User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1.50 (gnu/linux) Cancel-Lock: sha1:ft8XTzB3vlX9mFynCYl6xFcbYS0= Original-X-Complaints-To: abuse@supernews.com Original-Lines: 47 Original-Xref: shelby.stanford.edu gnu.emacs.help:152604 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:48112 Archived-At: kj writes: > I regularly work on various systems, and it's a bit of a chore to > keep my .emacs files in synch. I've tried various approaches, none > entirely satisfactory. The two issues that give me the most > headaches are 1) to automate the process whereby changes to one > system's .emacs file gets reflected on the .emacs files on other > systems; and 2) to manage those modifications that are applicable > to only one or a subset of the systems. > > I'd be interested to read how others solve this problem. > I just use one emacs! Actually, thats a bit of a lie. I use one emacs at work. All editing is done through that emacs via tramp over an ssh connection. I run a separate emacs at home. I do maintain only a single .emacs file, which is under version control. I have a SYSTEM_PROFILE environment variable, which is set to either home, work, work-laptop, home-laptop (there is actually only one laptop, whihc I may use at home or work). nearly all my emacs settings are constant, but I do have some specific settings that depend on whether I'm at home, work or on the laptop at home or work. For these profile specific sections, I just put my bits of elisp inside an if, cond, unless etc test which looks at the value of the envrioinment variable. Not very sophisticated, but it works well and isn't so complicated as to break everytime something changes or gets updated. The version control is a subversion repository which I can access from home or work. When I make a change, I commit them to the repository. When I'm on another system, I can update from the repository to get the latest changes. Another approach I've used for environments where I don't have a dedicated desktop or laptop is to NFS my home directory so that no matter what host I log into directly, my home directory (and hence my .emacs) is there. Of course, there are some risks and you need to keep in mind that NFS can be slow and is not good for things like mail folders (probably ok for maildir style, but not mbox). if the NFS export host goes down, then your pretty much stuffed on all systems. Tim -- tcross (at) rapttech dot com dot au