From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eric Abrahamsen Newsgroups: gmane.emacs.help Subject: Re: Speeding up Emacs load time Date: Sun, 30 Jun 2013 08:45:32 +0800 Message-ID: <8738s0qvdf.fsf@ericabrahamsen.net> References: <87y59urnfn.fsf@VLAN-3434.student.uu.se> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1372553150 18193 80.91.229.3 (30 Jun 2013 00:45:50 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 30 Jun 2013 00:45:50 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Sun Jun 30 02:45:51 2013 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Ut5m0-0006fY-SZ for geh-help-gnu-emacs@m.gmane.org; Sun, 30 Jun 2013 02:45:48 +0200 Original-Received: from localhost ([::1]:36423 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ut5m0-0001q0-HX for geh-help-gnu-emacs@m.gmane.org; Sat, 29 Jun 2013 20:45:48 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:49763) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ut5lg-0001pe-5L for help-gnu-emacs@gnu.org; Sat, 29 Jun 2013 20:45:30 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Ut5ld-0004Ts-Jk for help-gnu-emacs@gnu.org; Sat, 29 Jun 2013 20:45:28 -0400 Original-Received: from plane.gmane.org ([80.91.229.3]:46941) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Ut5ld-0004Tn-DG for help-gnu-emacs@gnu.org; Sat, 29 Jun 2013 20:45:25 -0400 Original-Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1Ut5lZ-0006NC-TD for help-gnu-emacs@gnu.org; Sun, 30 Jun 2013 02:45:21 +0200 Original-Received: from 114.250.134.4 ([114.250.134.4]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sun, 30 Jun 2013 02:45:21 +0200 Original-Received: from eric by 114.250.134.4 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Sun, 30 Jun 2013 02:45:21 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 38 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 114.250.134.4 User-Agent: Gnus/5.130008 (Ma Gnus v0.8) Emacs/24.3 (gnu/linux) Cancel-Lock: sha1:3Y80To54oS67gJFxp7JqstjFNCc= X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 80.91.229.3 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:91864 Archived-At: Rustom Mody writes: > On Saturday, June 29, 2013 10:34:05 AM UTC+5:30, Eric Abrahamsen wrote: >> Emanuel Berg writes: >> > Bob Proulx writes: >> >> I looked at your .emacs file. It is rather extensive. Time >> >> consuming parts are usually anytime you (require 'foo) or (load >> >> "foo"). Do you really need all of those executed each and every >> >> time you start emacs? Probably not. >> > >> >> > OK, this is one way to think. There is another way to think. The >> > other way to think is: one second at x does not equal one second >> > at y. When you start Emacs, you are not in a rush. > >> +1 -- I used to do a bunch of autoload/eval-after-load stuff, but later >> came to the same conclusion. > > I agree with both these viewpoints -- One second of x is not the same at y. > But not repeatedly restarting emacs is not an option. > > The problem is that emacs invites tinkering with my elisp settings. > And elisp is such an imperative language that I habitually get silly things wrong. eg > > I am hacking an elisp function called foo > For some reason I change its name to bar > I change (what I think are) all refs to foo to bar. > It (seems to) run > The next time I start emacs it does not run because I find that I had not renamed all foo-references to bar. > > So the only remedy (I know) is that first check if the elisp works and if it seems to then check again after restarting emacs. > > And that means that elisp-hacking means frequent restarts of emacs. Very true! I have to admit that my "solution" to this problem is knowing which few blocks of code in my init take the longest to load, and manually commenting them out when I know I'm in for multiple restarts. Not very wizardy.