From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Hendy Subject: Re: fold paragraphs, export only contents of a node, hiding the 'node heading text' Date: Tue, 3 Sep 2013 14:17:59 -0500 Message-ID: References: <4702F1A4-113B-4171-B949-2B9EE14EEAA9@me.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:43491) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VGw70-0004IV-IG for emacs-orgmode@gnu.org; Tue, 03 Sep 2013 15:18:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VGw6y-0001iH-G1 for emacs-orgmode@gnu.org; Tue, 03 Sep 2013 15:18:02 -0400 Received: from mail-ob0-x22b.google.com ([2607:f8b0:4003:c01::22b]:60396) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VGw6y-0001h2-9H for emacs-orgmode@gnu.org; Tue, 03 Sep 2013 15:18:00 -0400 Received: by mail-ob0-f171.google.com with SMTP id tb18so6389161obb.30 for ; Tue, 03 Sep 2013 12:17:59 -0700 (PDT) In-Reply-To: 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: ". ." Cc: emacs-orgmode On Tue, Sep 3, 2013 at 9:48 AM, 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 fo= r > 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=C3=B3: > > > > > 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, exc= ept > 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-parag= raph-in-a-section > > > By the way, do you know how I could eliminate my needed line, in my .ema= cs: > (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 m= y > path every time via .emacs. > > > Thanks! > > Mark > > > > El 03/09/2013, a las 03:32, John Hendy escribi=C3=B3= : > > > > > On Mon, Sep 2, 2013 at 4:53 PM, wrote: >> >> >> >> >> >> After I compile: C-c C-e d (=E2=80=A6 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 aski= ng > me with 8.0.7. From my tinkering, it looks like it ignores them or you ne= ed > 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 woul= d >> 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 woul= d >> 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" :foregroun= d >> "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> > > >