From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nick Dokos Subject: Re: odt export not working Date: Tue, 07 May 2013 16:02:16 -0400 Message-ID: <87obcmpnhz.fsf@pierrot.dokosmarshall.org> References: <20130421154204.29323d38@arcor.com> <87txn0neix.fsf@ericabrahamsen.net> <20130421163157.25e33c90@arcor.com> <878v3qevq8.fsf@gmail.com> <87ip2udbyw.fsf@gmail.com> <87fvxylphy.fsf@pierrot.dokosmarshall.org> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([208.118.235.92]:55227) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZo5w-00020n-T7 for emacs-orgmode@gnu.org; Tue, 07 May 2013 16:02:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UZo5s-0007h4-2Z for emacs-orgmode@gnu.org; Tue, 07 May 2013 16:02:40 -0400 Received: from plane.gmane.org ([80.91.229.3]:41159) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UZo5r-0007h0-SM for emacs-orgmode@gnu.org; Tue, 07 May 2013 16:02:36 -0400 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1UZo5m-0004jd-0C for emacs-orgmode@gnu.org; Tue, 07 May 2013 22:02:30 +0200 Received: from pool-108-7-96-134.bstnma.fios.verizon.net ([108.7.96.134]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 07 May 2013 22:02:29 +0200 Received: from ndokos by pool-108-7-96-134.bstnma.fios.verizon.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 07 May 2013 22:02:29 +0200 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org John Hendy writes: > #+begin_quote > > 3 Installation > > PPPPPPPPPPPPPP > > There are two ways to install export back-ends. > > 1. You may customize `org-export-backends' variable. It contains the > list of back-ends that should always be available. > > 2. You can also simply require the back-end libraries (e.g. `(require > 'ox-icalendar)' for the iCalendar back-end). Note that with method 1, > the back-ends will be loaded only when the export framework is used > for the first time. > > #+end_quote > > [1] http://article.gmane.org/gmane.emacs.orgmode/65574 > > If you customize =org-export-backends=, the actual backend is not > loaded until you export for the first time per new Emacs session. > > ... > > Repeat the steps above and note the difference. If you want to do any > customizing or (like me) use =C-h v= or =M-x help= to remember the > name of the variable you're looking for, you won't get auto-completion > as Org isn't aware of the variable until you actually use the exporter > the first time (use the first minimal config, export to ODT, and then > repeat the steps described and you'll see that the variables are now > known). > > Anyway, just wanted to make sure this was well known. I've taken to > using a =(require 'ox-backend)= line for every exporter I want vs. the > org-export-backends variable for this reason. > This is the usual trade-off between convenience and speed and is certainly not specific to this case: you can either load into emacs the kitchen sink at startup time and wait for all of that to finish before you can start work, or you can initialize things on demand (or do something in between: see below). That's exactly the difference between ``require'' (or load-file/load-library) and ``autoload''. If you have a simple initialization file and/or a fast machine and/or you start emacs once in a blue moon and keep it running, choosing the "load the kitchen sink" approach might make sense. If not, you can autoload everything (fastest init but emacs will not know about things it has not loaded yet until you use them). Or you can ``require'' the things that you *know* you are going to use and let the rest be autoloaded (slower init, but more convenience - the case John describes above). So there is almost a continuum of choices: which one you use is entirely up to you. Nick