emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Tim Cross <theophilusx@gmail.com>
To: Nathan Neff <nathan.neff@gmail.com>
Cc: emacs-orgmode <emacs-orgmode@gnu.org>
Subject: Re: Org babel tangle: Don't export code
Date: Wed, 25 Sep 2019 11:19:36 +1000	[thread overview]
Message-ID: <87muetqijb.fsf@gmail.com> (raw)
In-Reply-To: <CAC=HedCoPE_uQXu+vrJrU2MNknu7VNP48jqPSd71N7LpwNRTtw@mail.gmail.com>


There are two different concepts - tangling and exporting. When you
tangle the file, code blocks are written out into code files (possibly
with evaluation etc). This is part of the 'literate programming' support
within org.

When you export a file, you are exporting the file
contents into a different format i.e PDF, HTML, markdown etc. By
default, code blocks are not evaluated during this process - they are
just exported 'as-is'. However, sometimes, these code blocks are used to
generate content in the file, so you do want them to be evaluated during
the export (for example, to create a 'results' section, generate an
image that is embedded in the file etc).

So, if you 'export' your emacs init org file as PDF, it will be exported
as a PDF file where the source blocks will appear as source listings in
the PDF file along with all the other non source block text. If on the
other hand, you tangle your emacs init org file, it will create an .el
file with only the source blocks.

Nathan Neff <nathan.neff@gmail.com> writes:

> Thanks Tim - I wanted to ask the list -- what does "
>
> By default, Org does not tangle the ‘src’ code block on export." mean in
> this web page:https://orgmode.org/manual/Extracting-source-code.html
> I mean, I have all of my begin_src emacs-lisp blocks with no explicit
> :tangle yesand they all are exported to the resulting *.el file.  What does
> the above statement mean?
>
> On Tue, Sep 24, 2019 at 6:14 PM Tim Cross <theophilusx@gmail.com> wrote:
>
>>
>> I just put :tangle no in the block header e.g.
>>
>> #+begin_src emacs-lisp :tangle no
>>
>> #+end_src
>>
>> This is how I turn off or remove blocks from my .emacs.d/init.el file,
>> which is tangled from an or file. You can also put a filename. This is
>> what I do for Emacs 27, which introduces the early-init.el file i.e.
>>
>> #+begin_src emacs-lisp :tangle early-init.el
>>
>> #+end_src
>>
>> #+begin_src emacs-lisp :tangle init.el
>>
>> #+end_src
>>
>> Nathan Neff <nathan.neff@gmail.com> writes:
>>
>> > Hello all,
>> >
>> > I use *.org files to configure my emacs and use org-babel-load-file
>> > to configure my org-mode using *.org files.  Love the feature.
>> >
>> > However sometimes I'm experimenting with code blocks, and want to simply
>> > "turn off" certain code blocks in my *.org files from being executed.
>> > Every time
>> > I go to do this, I search the web for 30-60 minutes and I'm frustrated
>> and
>> > confused by
>> > the myriad options and documentation.
>> >
>> > All I want to do is mark a source code block in my *.org files so that
>> the
>> > particular code block is:
>> >
>> > 1) Not exported to the resulting .el file when tangling
>> > Or
>> > 2) Not ran in the resulting .el files when tangling
>> >
>> > I recently spent 30 minutes to an hour trying to figure out how to simply
>> > "disable" or "prevent" or "exclude" or "quit" or "don't" or "stop" or
>> > "please don't do this"
>> > to a code block in my *.org files.  I don't want to mark the code block
>> as
>> > "text", unless there's really no other option.
>> >
>> > In my opinion, the documentation does not simply define how to do this
>> > relatively common task.
>> >
>> > Can someone please point me in the right direction?  Also I would be
>> > willing to submit a doc-fix or FAQ item if there is currently not an item
>> > to do so.  I'm lost and do not want to spend more time on this seemingly
>> > easy task.
>> >
>> > Thanks,
>> > --Nate
>>
>>
>> --
>> Tim Cross
>>
>>


--
Tim Cross

  reply	other threads:[~2019-09-25  1:19 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-24 21:18 Org babel tangle: Don't export code Nathan Neff
2019-09-24 23:07 ` Tim Cross
2019-09-25  0:46   ` Nathan Neff
2019-09-25  1:19     ` Tim Cross [this message]
2019-09-25  1:43       ` Nathan Neff
2019-09-25  5:53   ` Ken Mankoff
2019-09-25 11:41     ` Nathan Neff

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87muetqijb.fsf@gmail.com \
    --to=theophilusx@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=nathan.neff@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).