Commit Graph

120 Commits

Author SHA1 Message Date
Nicolas Goaziou 3900155788 Implement `org-export-custom-protocol-maybe' and use it
* lisp/ox.el (org-export-custom-protocol-maybe): New function.
* contrib/lisp/ox-groff.el (org-groff-link):
* lisp/ox-ascii.el (org-ascii-link):
* lisp/ox-beamer.el (org-beamer-link):
* lisp/ox-html.el (org-html-link):
* lisp/ox-latex.el (org-latex-link):
* lisp/ox-man.el (org-man-link):
* lisp/ox-md.el (org-md-link):
* lisp/ox-odt.el (org-odt-link):
* lisp/ox-texinfo.el (org-texinfo-link): Use new function.

* testing/lisp/test-ox.el (test-org-export/custom-protocol-maybe): New
  test.
2015-01-04 22:16:36 +01:00
Nicolas Goaziou e1adb17ba5 Fix custom timestamps during export
* lisp/org.el (org-translate-time): Remove function.
(org-timestamp-translate): Rewrite function so it doesn't use the one
above.

* lisp/ox-ascii.el (org-ascii-clock, org-ascii-planning):
* lisp/ox-html.el (org-html-clock, org-html-planning, org-html-timestamp):
* lisp/ox-latex.el (org-latex-clock, org-latex-planning):
* lisp/ox-texinfo.el (org-texinfo-clock, org-texinfo-planning): Use
  `org-timestamp-translate' instead of `org-translate-time'.

* etc/ORG-NEWS: Document function removal.

Reported-by: Ian Barton <lists@wilkesley.net>
<http://permalink.gmane.org/gmane.emacs.orgmode/93127>
2014-12-03 17:18:16 +01:00
Nicolas Goaziou 7f97406542 Bump Emacs version
* lisp/ob-core.el (org-babel-examplize-region):
* lisp/ob-exp.el (org-babel-exp-inline-code-template):
* lisp/org-table.el (org-table-copy-increment):
(org-table-formula-create-columns):
* lisp/org.el (org-agenda-ignore-drawer-properties):
(org-agenda-ignore-properties):
* lisp/ox-ascii.el (org-ascii-list-margin):
* lisp/ox-html.el (org-html-format-headline-function):
(org-html-format-inlinetask-function):
* lisp/ox-latex.el (org-latex-hyperref-template):
(org-latex-custom-id-as-label):
(org-latex-format-inlinetask-function):
(org-latex-known-warnings):
* lisp/ox-odt.el (org-odt-format-headline-function):
(org-odt-format-inlinetask-function):
* lisp/ox-texinfo.el (org-texinfo-format-headline-function): Bump
  Emacs version.
2014-10-24 11:56:09 +02:00
Achim Gratz 1aa719cff2 ox-texinfo: fix bug in 3432681fbe
* lisp/ox-texinfo.el: Add missing argument to call of
  `org-element-property'.
2014-09-19 10:39:02 +02:00
Nicolas Goaziou 3432681fbe Parsing and exporting special blocks preserve case
* lisp/org-element.el (org-element-special-block-parser):
* lisp/ox-latex.el (org-latex-special-block):
* lisp/ox-html.el (org-html-special-block):
* lisp/ox-man.el (org-man-special-block):
* lisp/ox-odt.el (org-odt-special-block):
* lisp/ox-texinfo.el (org-texinfo-special-block):
* contrib/lisp/ox-groff.el (org-groff-special-block): Preserve case.

* testing/lisp/test-org-element.el (test-org-element/special-block-parser):
  Add test.
2014-09-17 20:52:54 +02:00
Nicolas Goaziou e3369c07f0 Revert "Merge export and special blocks within back-ends"
This reverts commit fbc7097ffa.

Conflicts:
	lisp/ox-texinfo.el
2014-09-08 11:57:27 +02:00
Nicolas Goaziou 5da35ee0ca Merge branch 'maint' 2014-08-28 01:04:01 +02:00
Nicolas Goaziou 42271d8c43 ox-texinfo: Fix link export
* lisp/ox-texinfo.el (org-texinfo--get-node): Return a node or anchor
  name.
(org-texinfo--sanitize-content): Fix regexp.
(org-texinfo-link): Fix various bugs in link export.
2014-08-28 00:57:29 +02:00
Nicolas Goaziou 258b572cd4 Merge branch 'maint' 2014-08-19 23:37:37 +02:00
Nicolas Goaziou f2ac6db0a6 ox-texinfo: Fix language case
* lisp/ox-texinfo.el (org-texinfo-template): Fix language and encoding
  case.

Thanks to Brian J. Carlson for reporting it and providing a patch.
http://permalink.gmane.org/gmane.emacs.orgmode/89965
2014-08-19 23:35:08 +02:00
Nicolas Goaziou cc6aa45f3b Merge branch 'maint'
Conflicts:
	lisp/ox-texinfo.el
2014-08-14 14:11:40 +02:00
Nicolas Goaziou 1adec31993 ox-texinfo: Fix parse tree corruption
* lisp/ox-texinfo.el (org-texinfo--normalize-headlines): Properly add
  a section to the contents.
2014-08-14 14:08:16 +02:00
Nicolas Goaziou 57644f7ebf ox-texinfo: Small refactoring
* lisp/ox-texinfo.el (org-texinfo--normalize-headlines): Do not set
  pre blanks since the value is now hard-coded.
(org-texinfo-headline): Force one blank line before contents, when non
empty.  Refactoring.
(org-texinfo-src-block): Refactor code.  Comply to predicate naming.
2014-08-14 14:06:48 +02:00
Nicolas Goaziou 644e602343 Merge branch 'maint' 2014-08-11 19:48:58 +02:00
Nicolas Goaziou e112f3c0df ox-texinfo: Fix corner case when fixing a node name
* lisp/ox-texinfo.el (org-texinfo--sanitize-node): Handle
  " (not)allowed" case.
2014-08-11 19:47:47 +02:00
Nicolas Goaziou 0a18095984 ox-texinfo: Do not sanitize sectioning titles
* lisp/ox-texinfo.el (org-texinfo-headline): Do not sanitize
  sectioning titles.
2014-08-11 15:46:21 +02:00
Nicolas Goaziou 2e98c7f43e Merge branch 'maint' 2014-08-11 15:45:35 +02:00
Nicolas Goaziou 7286925b7d ox-texinfo: Remove wrong code comments
* lisp/ox-texinfo.el (org-texinfo-headline): Remove wrong code
  comments.
2014-08-11 15:44:12 +02:00
Nicolas Goaziou 6400c9a8e5 Merge branch 'maint'
Conflicts:
	doc/org.texi
	lisp/ox-texinfo.el
2014-08-11 15:00:57 +02:00
Nicolas Goaziou 3c35300162 ox-texinfo: Remove `not-in-toc' case in headline export
* lisp/ox-texinfo.el (org-texinfo-headline): Remove `not-in-toc'
  special case for tags.

Check is useless for 2 reasons :

  1. there is no way to control @contents in the file header so
     sectioning name,

  2. menu entries provide their own title.  If it has to be handled,
     that should be elsewhere anyway.
2014-08-11 14:56:01 +02:00
Nicolas Goaziou 9f81c11d71 ox-texinfo: Remove left-over LaTeXism
* lisp/ox-texinfo.el (org-texinfo-headline): Remove LaTeXism (optional
  arguments within square brackets).
2014-08-11 14:56:01 +02:00
Nicolas Goaziou dcf5510053 ox-texinfo: Tiny refactoring
* lisp/ox-texinfo.el (org-texinfo-info-process): Fix docstring.
(org-texinfo-compile): Do not check for impossible cases (e.g., if the
previous variable contains a function).
2014-08-11 14:56:01 +02:00
Nicolas Goaziou d17cd9962f ox-texinfo: Fix a docstring
* lisp/ox-texinfo.el (org-texinfo-max-toc-depth): Fix docstring.
2014-08-11 14:56:00 +02:00
Nicolas Goaziou 4acfe1cba8 ox-texinfo: Remove unused internal functions
* lisp/ox-texinfo.el (org-texinfo--make-option-string,
  org-texinfo--sanitize-headline,
  org-texinfo--sanitize-headline-contents): Remove.
2014-08-11 14:56:00 +02:00
Nicolas Goaziou 6d75d708a1 ox-texinfo: Fix node names
* lisp/ox-texinfo.el (org-texinfo--sanitize-node): "@", "{" and "}"
  characters are allowed in a node name.  So are "(" and ")" unless
  "(" starts the name and there is ")" somewhere in the name.  Also
  trim and collapse whitespace characters.  Renamed from
  `org-texinfo--sanitize-menu'.
(org-texinfo--get-node): Do not sanitize node names over zealously.
Ensure returned node names are unique.
(org-texinfo-headline): Only add @node command where it makes sense.
2014-08-11 14:56:00 +02:00
Nicolas Goaziou 2ef63acae2 ox-texinfo: Fix docstrings
* lisp/ox-texinfo.el (org-texinfo--sanitize-menu,
  org-texinfo--sanitize-content): Fix docstrings.
2014-08-11 13:38:50 +02:00
Nicolas Goaziou 3ee7895c03 ox-texinfo: Fix blank lines in output
* lisp/ox-texinfo.el (org-texinfo--normalize-headlines): Make sure
  a blank line always follows nodes.
2014-08-11 13:38:50 +02:00
Nicolas Goaziou ee5c224017 ox-texinfo: Fix menus
* lisp/ox-texinfo.el (org-texinfo-make-menu): Change signature.
  Remove some intermediate functions.  Generate the full master menu
  when asked.
(org-texinfo--build-menu):  Use a simpler algorithm.
(org-texinfo--format-entries): Fix entries when both node and title
are different.
(org-texinfo--menu-entries): Renamed from `org-texinfo--generate-menu-list'.
(org-texinfo-headline): Move menu handling to next function.
(org-texinfo-section): Handle menu for current parent.
(org-texinfo--menu-headlines, org-texinfo--generate-detailed): Remove
functions.
(org-texinfo--normalize-headlines): New function.
2014-08-11 13:38:44 +02:00
Nicolas Goaziou 6326697f4e ox-texinfo: Fix appendix command
* lisp/ox-texinfo.el (org-texinfo-headline): Fix @appendix command.
2014-08-10 22:49:25 +02:00
Nicolas Goaziou 710e40f96a ox-texinfo: Fix heading text
* lisp/ox-texinfo.el (org-texinfo-headline): Do not sanitize heading
  text for sectioning command.

For example

  * This is ~code~

should be possibly exported as

  @chapter This is @code{code}

not

  @chapter This is @@code@{code@}
2014-08-10 22:49:18 +02:00
Nicolas Goaziou d2c0bbcf52 Merge branch 'maint' 2014-08-09 00:08:12 +02:00
Nicolas Goaziou 1faeb4e680 ox-texinfo: Fix ":COPYING: nil" node properties
* lisp/ox-texinfo.el (org-texinfo--generate-menu-list): ":COPYING:
  nil" is expected to be equivalent to no COPYING property at all.
2014-08-09 00:05:43 +02:00
Nicolas Goaziou 80525f5384 Merge branch 'maint' 2014-08-08 22:42:45 +02:00
Nicolas Goaziou 70fce0270f ox-texinfo: Fix blank lines between in items
* lisp/ox-texinfo.el (org-texinfo-item): Fix blank lines between
  items.
2014-08-08 22:42:08 +02:00
Nicolas Goaziou b1406dcddb Merge branch 'maint'
Conflicts:
	doc/org.texi
	lisp/ox-texinfo.el
2014-08-08 22:07:45 +02:00
Nicolas Goaziou dd085235e3 ox-texinfo: Code comments clean-up 2014-08-07 15:35:45 +02:00
Nicolas Goaziou d58a2960e0 ox-texinfo: Fix plain lists export
* lisp/ox-texinfo.el (org-texinfo-plain-list): Fix format string.
  Small refactoring.
2014-08-07 00:02:16 +02:00
Nicolas Goaziou 73809c1aa8 ox-texinfo: Allow to set a different title for hard copy
* lisp/ox-texinfo.el (texinfo): Provide new export property.
(org-texinfo-template): Use dedicated title for hard copy, when
available.
2014-08-07 00:02:16 +02:00
Nicolas Goaziou e0dbe1c776 ox-texinfo: Appendix has precedence over regular sectionning
* lisp/ox-texinfo.el (org-texinfo-headline): Always obey to
  a non-nil :APPENDIX: property.  Small refactoring.
2014-08-07 00:02:16 +02:00
Nicolas Goaziou 3e018d0afd ox-texinfo: Fix verse block export
* lisp/ox-texinfo.el (org-texinfo-verse-block): Generate somewhat
  meaningful Texinfo code instead of LaTeX.
2014-08-07 00:02:16 +02:00
Nicolas Goaziou 3b1d2811a8 ox-texinfo: Fix table export
* lisp/ox-texinfo.el (org-texinfo-table): Remove reference to
  "verbatim" attribute.  Handle table.el tables.  Tiny refactoring.
(org-texinfo-table--org-table, org-texinfo-table--table.el-table):
Remove functions.
(org-texinfo-table-column-widths): Indent code correctly.  Ignore
special column, if any.  Add a comment about the limitation on the
width computation.
(org-texinfo-table-row): Small refactoring.
2014-08-07 00:01:18 +02:00
Nicolas Goaziou beed9cbe63 ox-texinfo: Fix @setfilename command
* lisp/ox-texinfo.el (texinfo): Do not provide a default value for
  @setfilename value.
(org-texinfo-filename): Remove variable.
(org-texinfo-template): Correctly find value for @setfilename command.
If none is possible, do not provide the command at all.
2014-08-07 00:00:25 +02:00
Nicolas Goaziou f002451544 ox-texinfo: Do not hardcode "Manual" in top node
* lisp/ox-texinfo.el (org-texinfo-template): Do not hardcode "Manual"
  in top node.
2014-08-05 10:53:39 +02:00
Nicolas Goaziou 4b6f9b25b8 ox-texinfo: Fix `org-texinfo-classes'
* lisp/ox-texinfo.el (org-texinfo-classes): Change default value.
  Update docstring.
(org-texinfo-template): Insert header string from current class after
"@settitle" command.  Always provide "\input texinfo" at the beginning
of the output.

Header string in the class was inserted before "@setfilename".
Texinfo ignores anything between "\input texinfo" and that command,
making any value besides the default one useless.
2014-08-05 10:52:19 +02:00
Nicolas Goaziou 3ff46fdbff ox-texinfo: Remove spurious blank lines in output
* lisp/ox-texinfo.el (org-texinfo-template): Remove spurious blank
  lines in output.  Refactor code.
2014-08-05 10:52:14 +02:00
Nicolas Goaziou 33f6dc57ae ox-texinfo: Fix multi-line subtitles
* lisp/ox-texinfo.el (org-texinfo-template): Fix multi-line subtitles.
2014-08-05 10:51:46 +02:00
Nicolas Goaziou 6f73155454 ox-texinfo: Check options before inserting TOC
* lisp/ox-texinfo.el (org-texinfo-template): Make sure table of
  contents are allowed before inserting them.
2014-08-05 10:51:46 +02:00
Nicolas Goaziou b3fdf490b7 ox-texinfo: Handle documents without copying information
* lisp/ox-texinfo.el (org-texinfo-template): Check if copying data is
  not nil before using it.
2014-08-05 10:51:43 +02:00
Nicolas Goaziou 2dfaf78058 ox-texinfo: Properly handle subauthors and email
* lisp/ox-texinfo.el (org-texinfo-template): Fix multi-line
  subauthors.  Correctly add email, when provided.  Check if author
  info is wanted first.

This patch also removes AUTHOR variable since it's up to the user to
set it or not, through a class or a header keyword.
2014-08-04 13:29:26 +02:00
Nicolas Goaziou e9c1f5ca53 ox-texinfo: Fix docstrings
* lisp/ox-texinfo.el (org-texinfo-node-description-column,
  org-texinfo-format-drawer-function): Fix docstrings.
2014-08-04 13:29:26 +02:00