emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: mapcdi@me.com
To: John Hendy <jw.hendy@gmail.com>
Cc: emacs-orgmode <emacs-orgmode@gnu.org>
Subject: Re: fold paragraphs, export only contents of a node, hiding the 'node heading text'
Date: Wed, 04 Sep 2013 02:20:38 +0200	[thread overview]
Message-ID: <A0DEF516-F811-4902-ABDC-6D0147A630D1@me.com> (raw)
In-Reply-To: <CA+M2ft9KHmCNVEQWU110WRYA4hn-vf-s28x9jH_AprCFTL0oHw@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 12545 bytes --]




It works for me now!
If now I could only know how to hide just the  DONE  keywords! I know it's:
#+OPTIONS: todo: toggle on/off DONE so the word is not exported, kind of  thing, but couldn't find it.


Here's my .emacs:

(require 'org-latex) ;; It works because my version is < 8.0
(unless (boundp 'org-export-latex-classes)
  (setq org-export-latex-classes nil))
(add-to-list 'org-export-latex-classes
             '("article"
               "\\documentclass{article}"
               ("\\section{%s}" . "\\section*{%s}")
               ("\\subsection{%s}" . "\\subsection*{%s}")
               ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
               ("\\paragraph{%s}" . "\\paragraph*{%s}")
               ("\\subparagraph{%s}" . "\\subparagraph*{%s}")))




And here's my doc.org:
________________________________________________________
#+TITLE:     Hiding the \texttt{paragraph} formatting works fine
#+AUTHOR:
#+DATE:
#+OPTIONS:   H:5 num:t toc:2 \n:nil @:t ::t |:t ^:nil -:t f:t *:t <:t
#+LATEX_HEADER:   \usepackage{titlesec}
#+LATEX_HEADER:   \titleformat{\subsubsection}[runin]{\normalfont\normalsize}{}{}{}[ \mbox{}]
#+LATEX_HEADER:   \titlespacing{\subsubsection}{10pt}{0ex plus 0ex minus 0ex}{0pt}
#+LATEX_HEADER:   \titleformat{\paragraph}[runin]{\normalfont\normalsize}{}{}{}[ \mbox{}]
#+LATEX_HEADER:   \titlespacing{\paragraph}{10pt}{0ex plus 0ex minus 0ex}{0pt}

* Section
** subsection
*** Subsubsection.
Although as demonstrated in this subsubsection, it can work for other headings.
**** It works out fine now for paragraphs.
As intended. I would normally not set the
\texttt{titlesec} 'trick' for headings other than
paragraphs.
**** This trick, I found it here:
http://latex-community.org/forum/viewtopic.php?f=5&t=20169.
So thanks. And also thanks to the great package by none other than Javier
Bezos. Great stuff!

* Section
** subsection
*** Subsubsection. See! Subsubections come out as paragraphs now!
**** My paragraph to start the story.
I would like to start by saying this much.
It was all about being able to \emph{do the folding}.
**** TODO I can even have a paragraph without much text.
**** DONE This next paragraph develops the story a little more.
I would like to continue saying what the story is all
about. Now is not the time to give up the mysterious
\emph{folding}. End of doc.org.
___________________________________________________




I'm posting my solution because I think some more people could find it interesting in this solution.
It could work wonders for structuring your ideas and shuffling them easily as paragraphs in your texts.
Since that's what org-mode is all about here's also my vote for such a feature request.

Thanks to John Hendy.


Best regards,
Mark



El 03/09/2013, a las 21:17, John Hendy <jw.hendy@gmail.com> escribió:

> On Tue, Sep 3, 2013 at 9:48 AM,  <mapcdi@me.com> wrote:
>> So, now that I can hide all the headings I need a way to hide ONLY SOME
>> headings, like those with a todo-like specific text: say UNFINISHEDPAR for
>> unfinished paragraphs and FINISHEDPAR for the ones finished.
>> 
> 
> I haven't used them, but I believe filters might be the way to go for this:
> - http://orgmode.org/worg/dev/org-export-reference.html#filter-system
> 
> That way, you could tag a headline with something and either apply the
> mapcdi-org-latex-headline-function or the default one (which would
> show the headline).
> 
> #+begin_src
> 
> * headline 1   :done:
> 
> This text would not show a headline since it's complete.
> 
> * headline 2 :inProgress:
> 
> This headline would appear since you're still working on it.
> 
> #+end_src
> 
> Something like that.
> - Or doing the same via todo keywords.
> - Or perhaps a per-subtree definition of the org headline format
> function. If #+bind is allowed as a property at the headline level
> (vs. for the whole file), that would be an easy way.
> 
> I think others like Nicolas who are more familiar with the inner
> workings of the export engine could help you better than I. I'm sure
> it's possible in some manner.
> 
> 
> Good luck,
> John
> 
>> 
>> Is it possible given the current (.emacs/test-file.org) working setup, as a
>> reminder:
>> 
>> ;; change path to point to your org/lisp directory
>> (add-to-list 'load-path "~/.elisp/org.git/lisp/")
>> 
>> (setq org-export-allow-bind-keywords t)
>> 
>> (defun mapcdi-org-latex-headline-function (todo todo-type priority text
>> tags)
>> "The docstring of my function."
>> (concat
>>  (and todo (format "{}" todo))
>>  (and priority (format "{} " ))
>>  (and text (format "{\\vspace{-\\baselineskip}}" ))
>>  (and tags
>>       (format "\\hfill{}\\textit{}" (mapconcat 'identity tags ":")))))
>> 
>> 
>> 
>> 
>> Thanks,
>> 
>> Mark
>> 
>> 
>> 
>> 
>> El 03/09/2013, a las 09:16, mapcdi@me.com escribió:
>> 
>> <LaTeX_output_PDF_ImageCapture.png>
>> 
>> 
>> It works all right!
>> I had org version 7.9 which seems the current 'bundled' version for Emacs,
>> which I recently installed (being a newbie, as I am, for Emacs/Org-mode). I
>> updated via
>> M-x package-install RET org
>> as in http://orgmode.org/org.html#Installation
>> 
>> 
>> and now I have 8.0.7. I compiled with your .emacs/.org example files, except
>> I needed to add:
>> 
>> (setenv "PATH" (concat (getenv "PATH") ":/usr/texbin"))
>>    (setq exec-path (append exec-path '("/usr/texbin")))
>> 
>> or it wouldn't compile the PDF,
>> and there's the output: success!
>> 
>> 
>> So, I will start tinkering myself with some settings like:
>> http://tex.stackexchange.com/questions/39227/no-indent-in-the-first-paragraph-in-a-section
>> 
>> 
>> By the way, do you know how I could eliminate my needed line,  in my .emacs:
>> (setenv "PATH" (concat (getenv "PATH") ":/usr/texbin"))
>>    (setq exec-path (append exec-path '("/usr/texbin")))
>> by way of setting things to a default setting so I don't need to update my
>> path every time via .emacs.
>> 
>> 
>> Thanks!
>> 
>> Mark
>> 
>> 
>> 
>> El 03/09/2013, a las 03:32, John Hendy <jw.hendy@gmail.com> escribió:
>> 
>> 
>> 
>> 
>> On Mon, Sep 2, 2013 at 4:53 PM, <mapcdi@me.com> wrote:
>>> 
>>> <OrgMode_LaTeX_output_PDF_ImageCapture.png>
>>> 
>>> 
>>> 
>>> After I compile:  C-c    C-e    d (… to open PDF file).
>>> It asks:
>>> 'Allow BIND values in this buffer? (yes or no) '
>>> I answer 'yes' and the PDF is opened. I have attached the resulting PDF
>>> screen capture.
>>> Thanks.
>>> 
>> 
>> What is your orgmode version (paste the output of `M-x org-version`)? I
>> decided to just give a whirl with a minimal config and I don't think that
>> Org 8+ asks for allowing bind keywords anymore, or at least it isn't asking
>> me with 8.0.7. From my tinkering, it looks like it ignores them or you need
>> to explictly allow them:
>> 
>> M-x customize-variable RET org-export-allow-bind-keywords RET
>> 
>> Hide Org Export Allow Bind Keywords: Toggle  on (non-nil)
>>    State : CHANGED outside Customize.
>>   Non-nil means BIND keywords can define local variable values. Hide
>>   This is a potential security risk, which is why the default value
>>   is nil.  You can also allow them through local buffer variables.
>> 
>> I could be wrong, but the "toggle" button (vs. stating possible values)
>> implies that it's either on or off.
>> 
>> Actually, in just searching now, it seems that this is, indeed, the case
>> since 8.0.3:
>> 
>> http://orgmode.org/Changes.html#sec-1-5-1
>> 
>> In any case, I am now using this for my minimal config and it works
>> successfully:
>> 
>> #+begin_src
>> 
>> ;; change path to point to your org/lisp directory
>> (add-to-list 'load-path "~/.elisp/org.git/lisp/")
>> 
>> (setq org-export-allow-bind-keywords t)
>> 
>> (defun mapcdi-org-latex-headline-function (todo todo-type priority text
>> tags)
>> "The docstring of my function."
>> (concat
>>  (and todo (format "{}" todo))
>>  (and priority (format "{} " ))
>>  (and text (format "{\\vspace{-\\baselineskip}}" ))
>>  (and tags
>>       (format "\\hfill{}\\textit{}" (mapconcat 'identity tags ":")))))
>> 
>> #+end_src
>> 
>> And this is the file I'm using (I removed anything non-essential to
>> eliminate other possible causes):
>> 
>> #+begin_src
>> 
>> #+options: num:nil
>> #+bind: org-latex-format-headline-function
>> mapcdi-org-latex-headline-function
>> 
>> 
>> 
>> * headline 1
>> 
>> blah blah blah.
>> 
>> * headline 2
>> 
>> blah blah blah
>> 
>> * headline 3
>> 
>> A couple of separate paragraphs to see how far apart two paragraphs would be
>> normally. We'll add enough to line break just to make it interesting.
>> 
>> A couple of separate paragraphs to see how far apart two paragraphs would be
>> normally. We'll add enough to line break just to make it interesting.
>> 
>> #+end_src
>> 
>> 
>> I attached a screenshot of the result!
>> 
>> 
>> Let me know if that helps,
>> John
>> 
>> 
>>> 
>>> My test-file, OrgMode.org:
>>> 
>>> #+TITLE:     My file is OrgMode.org
>>> #+AUTHOR:
>>> #+EMAIL:
>>> #+DATE:
>>> #+DESCRIPTION:
>>> #+KEYWORDS:
>>> #+LANGUAGE:  en
>>> #+BIND: org-latex-format-headline-function
>>> mapcdi-org-latex-headline-function
>>> #+OPTIONS:   H:3 num:nil toc:t \n:nil @:t ::t |:t ^:t
>>> #+OPTIONS:   -:t f:t *:t <:t tasks:nil
>>> #+OPTIONS:   pri:nil tags:not-in-toc
>>> #+OPTIONS:   TeX:t LaTeX:t skip:nil d:nil todo:t
>>> #+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0
>>> path:http://orgmode.org/org-info.js
>>> #+EXPORT_SELECT_TAGS: export
>>> #+EXPORT_EXCLUDE_TAGS: noexport
>>> #+LINK_UP:
>>> #+LINK_HOME:
>>> #+XSLT:
>>> 
>>> * TODO headline 1       :test:
>>> 
>>> blah blah blah.
>>> 
>>> * headline 2
>>> 
>>> blah blah blah
>>> 
>>> * headline 3
>>> 
>>> A couple of separate paragraphs to see how far apart two paragraphs would
>>> be
>>> normally. We'll add enough to line break just to make it interesting.
>>> 
>>> A couple of separate paragraphs to see how far apart two paragraphs would
>>> be
>>> normally. We'll add enough to line break just to make it interesting.
>>> 
>>> 
>>> 
>>> 
>>> ____________________________________________________________________
>>> My .emacs file
>>> 
>>> (custom-set-variables
>>> ;; custom-set-variables was added by Custom.
>>> ;; If you edit it by hand, you could mess it up, so be careful.
>>> ;; Your init file should contain only one such instance.
>>> ;; If there is more than one, they won't work right.
>>> '(adaptive-fill-mode nil)
>>> '(blink-cursor-mode nil)
>>> '(column-number-mode t)
>>> '(current-language-environment "Spanish")
>>> '(debug-on-error t)
>>> '(debug-on-quit t)
>>> '(display-battery-mode t)
>>> '(display-time-mode t)
>>> '(fill-column 56)
>>> '(left-margin 0)
>>> '(ns-alternate-modifier (quote meta))
>>> '(ns-command-modifier (quote super))
>>> '(ns-function-modifier (quote none))
>>> '(ns-right-alternate-modifier (quote none))
>>> '(ns-right-command-modifier (quote left))
>>> '(org-agenda-files (quote ("~/Documents/OrgMode.org")))
>>> '(save-place t nil (saveplace))
>>> '(size-indication-mode t)
>>> '(text-mode-hook (quote (turn-on-auto-fill text-mode-hook-identify)))
>>> '(truncate-lines t))
>>> (custom-set-faces
>>> ;; custom-set-faces was added by Custom.
>>> ;; If you edit it by hand, you could mess it up, so be careful.
>>> ;; Your init file should contain only one such instance.
>>> ;; If there is more than one, they won't work right.
>>> '(default ((t (:inherit nil :stipple nil :background "White" :foreground
>>> "Black" :inverse-video nil :box nil :strike-through nil :overline nil
>>> :underline nil :slant normal :weight normal :height 180 :width normal
>>> :foundry "apple" :family "Monaco"))))
>>> '(set-face-attribute (quote default) nil :height))
>>> 
>>> (setenv "PATH" (concat (getenv "PATH") ":/usr/texbin"))
>>>    (setq exec-path (append exec-path '("/usr/texbin")))
>>> 
>>> (defun mapcdi-org-latex-headline-function (todo todo-type priority text
>>> tags)
>>> "The docstring of my function."
>>> (concat
>>>  (and todo (format "{}" todo))
>>>  (and priority (format "{} " ))
>>>  (and text (format "{\\vspace{-\\baselineskip}}" ))
>>>  (and tags
>>>       (format "\\hfill{}\\textit{}" (mapconcat 'identity tags ":")))))
>> 
>> 
>> <2013-09-02_203154.png>
>> 
>> 
>> 


[-- Attachment #2.1: Type: text/html, Size: 15376 bytes --]

[-- Attachment #2.2: PDF.png --]
[-- Type: image/png, Size: 49186 bytes --]

  reply	other threads:[~2013-09-04  0:21 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-01 21:17 fold paragraphs, export only contents of a node, hiding the 'node heading text' . .
2013-09-01 23:51 ` John Hendy
2013-09-02 16:00   ` . .
     [not found]     ` <CA+M2ft8GPHzEierLmMpJQxtRv=iLQ=dfXXFaqguZmOXi4ykk6A@mail.gmail.com>
     [not found]       ` <C7F63B6F-D5C7-49D5-A7EE-4F0082882901@me.com>
2013-09-03  1:32         ` John Hendy
     [not found]           ` <4702F1A4-113B-4171-B949-2B9EE14EEAA9@me.com>
2013-09-03 14:48             ` mapcdi
2013-09-03 19:17               ` John Hendy
2013-09-04  0:20                 ` mapcdi [this message]
2013-09-03 19:10             ` John Hendy

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=A0DEF516-F811-4902-ABDC-6D0147A630D1@me.com \
    --to=mapcdi@me.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=jw.hendy@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).