Commit Graph

113 Commits

Author SHA1 Message Date
Bastien Guerry ecd0562c5f Fix the master branch.
I started from the 78ec8e commit then cherry-picked and squashed
commits that have been done in master since then, except the bad
commits that overwrote the tree (in master) with the tree in maint.

This commit also bumps the version number to 7.8.06.

The only "fix" that was made between 78ec8e and the previous commit
is e0072f which has been reported to break stuff.
2012-03-19 22:01:29 +01:00
Bastien Guerry de42649f7b Manually revert maint to e85080.
e85080 is the last correct commit in the maint branch
before releasing 7.8.04.  The 7.8.05 release should be
done from this commit.
2012-03-17 16:28:46 +01:00
Bastien Guerry 73bb18ba37 Manually revert to the Release 7.8.04 tag. 2012-03-17 15:52:24 +01:00
Bastien Guerry 6e534f9c61 Manually revert back to commit e85080.
This fixes a wrong merge that should not have happened:
commit 7e903a merges the master branch into the maint branch,
while we really want to keep the maint branch a bugfix-only
branch.

This commit reverts back the maint branch to its state before
merging the master branch.  From there, we will fix remaining
problems with the maint branch (e.g. copyright issues) then
release this maint branch as Org-mode 7.8.05.
2012-03-17 14:34:01 +01:00
Jambunathan K 4512930860 org-e-odt: Use new source code handling API 2012-03-15 00:08:22 +05:30
Jambunathan K 416acea371 org-e-html: Use new source code handling API 2012-03-14 15:26:28 +05:30
Nicolas Goaziou beb024687b org-export: Remove useless INFO argument from `org-export-unravel-code'
* contrib/lisp/org-export.el (org-export-unravel-code): Remove INFO
  argument.  Fix a bug preventing code references to be properly
  recognized.
(org-export-format-code-default): Apply signature change.
(org-export-resolve-coderef): Fix a bug preventing code references to
be properly recognized.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-src-block): Apply signature
  change.
* testing/lisp/test-org-export.el: Add tests.
2012-03-10 20:25:32 +01:00
Nicolas Goaziou c7203b4142 org-export: Change source code handling API
* contrib/lisp/org-element.el (org-element-example-block-parser,
  org-element-src-block-parser): Add `:number-lines',
  `:preserve-indent, `:retain-labels', `:use-labels'  and
  `:label-fmt' properties.
* contrib/lisp/org-export.el (org-export-resolve-coderef,
  org-export-get-loc): Apply changes to src-block and example-block
  elements' properties.
(org-export-unravel-code, org-export-format-code,
org-export-format-code-default): New functions.
(org-export-handle-code): Removed function.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-example-block): Use new
  function.
(org-e-latex-src-block): Use new API.  Better handling of numbered
lines with special packages.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-example-block,
  org-e-ascii-src-block): Use new functions.
* testing/lisp/test-org-element.el: Add tests.
* testing/lisp/test-org-export.el: Add tests.
2012-03-10 13:42:46 +01:00
Jambunathan K 94fe07a5f5 org-e-html: Improve handling of images, headlines and inlinetasks
1. Handle inlining of remote images
2. Proper handling of "alt" attribute for regular imgages and dvipnged
   fragments.
3. Support for Inlinetasks
4. Headlines are "transcoded" in three places:
   - org-e-html-headline (`org-e-html-format-headline')
   - org-e-html-inlinetask
   - org-e-html-toc (`org-e-html-format-toc-headline')

   These are now conveniently wrapped and cleared through
   'org-e-html-format-headline--wrap'.  The regular and toc headlines
   formatters mentioned afore take a superset of arguments allowed by
   `org-e-html-format-headline-function'.  Augmenting the signature of
   the `org-e-html-format-headline-function' is worth considering.
2012-03-08 13:28:44 +05:30
Nicolas Goaziou 62a631e236 org-export: Small fix
* contrib/lisp/org-export.el (org-export-get-ordinal): Change signature.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii--build-caption): Apply
  changes to previous function
2012-03-07 18:02:57 +01:00
Jambunathan K d2bcc61001 org-e-html: Support for enumerating inline images 2012-03-06 23:31:59 +05:30
Jambunathan K a49193da37 org-e-odt: Bring it to the same level as org-e-html 2012-03-05 01:22:20 +05:30
Jambunathan K a6dad43395 org-e-html: Support for cross references 2012-03-05 00:34:46 +05:30
Jambunathan K 77e66226f7 org-e-html: Fix a typo 2012-03-02 21:01:02 +05:30
Jambunathan K b65725e039 org-e-html/org-e-odt: Support for code numbering 2012-03-02 13:11:49 +05:30
Nicolas Goaziou 933c0fa441 Implement numbered cross-references
* lisp/org.el (org-link-search): Search for #+name affiliated keywords
  and invisible targets.
* contrib/lisp/org-element.el (org-element-link-parser): Remove "ref"
  links relative part.
(org-element-target-parser): Move property name from `:raw-value' to
`:value'.
(org-element-recursive-objects): Remove targets from tables.  Cells
are not parsed unless explicitely asked by back-end developer, too
late.  A target wouldn't be noticed in time.  One solution could be to
parse every table, but that's time consumming.
(org-element-object-restrictions): Target are not recursive anymore.
* contrib/lisp/org-export.el (org-export-resolve-fuzzy-link): Find
  elements with a matching "#+name: path" affiliated keyword.
(org-export-get-ordinal): Make special cases for headlines, items,
footnotes definitions and references.
(org-export-resolve-ref-link): Removed function.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-link): Handle
  cross-reference numbers.
(org-e-latex-target): Targets have no contents.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii--describe-links): Ignore
  fuzzy links in link description at the end of the section.
(org-e-ascii-link): Handle cross-reference numbers.
* testing/contrib/lisp/test-org-export.el: Add tests.
* testing/lisp/test-org.el: Add tests.
2012-03-01 14:49:53 +01:00
Jambunathan K 4d58568076 org-e-html: Fix mathjax 2012-03-01 10:53:45 +05:30
Nicolas Goaziou 73c5044963 org-export: Add `org-export-headline-numbered-p' predicate
* contrib/lisp/org-export.el (org-export-numbered-headline-p): New function.
* EXPERIMENTAL/org-e-ascii.el: Apply new function.
* EXPERIMENTAL/org-e-latex.el: Apply new function.
* testing/lisp/test-org-export.el: Add a test.
2012-02-29 19:05:45 +01:00
Jambunathan K 58be118602 org-e-html: Some fixes and more cleanups 2012-02-29 14:09:14 +05:30
Jambunathan K d37b3681d6 org-e-odt: Few cleanups 2012-02-28 13:09:10 +05:30
Nicolas Goaziou d25dc1ed18 org-e-latex: Don't ignore num:number option
* EXPERIMENTAL/org-e-latex.el (org-e-latex-headline): Don't ignore
  num:number option.
2012-02-27 22:21:20 +01:00
Nicolas Goaziou 12c94310a2 org-export: Allow nested footnotes (part 2)
* EXPERIMENTAL/org-e-latex.el (org-e-latex-footnote-reference):
  Correctly handle numbering with nested footnotes.
* contrib/lisp/org-element.el (org-element-map): Apply function to
  element or object before applying it to its secondary string, if
  any.  Otherwise, linearity is broken.
* contrib/lisp/org-export.el (org-export-footnote-first-reference-p,
  org-export-get-footnote-number): Take care of recursive footnotes.
(org-export-get-genealogy): Correctly get genealogy of an item within
a secondary string.
* testing/contrib/lisp/test-org-export.el: Add tests.
2012-02-26 01:38:26 +01:00
Nicolas Goaziou 81cc6dff19 org-e-latex: Allow nested footnotes
* EXPERIMENTAL/org-e-latex.el (org-e-latex-footnote-reference): Allow
  nested footnotes.
* contrib/lisp/org-element.el (org-element-string-restrictions): Allow
  footnote references within a footnote reference.
* testing/contrib/lisp/test-org-export.el: Add a test for nested
  footnotes.
2012-02-25 14:56:37 +01:00
Nicolas Goaziou 9f7965a80e org-element: Function mapped through org-element-map accepts only one argument
* contrib/lisp/org-element.el (org-element-map): Remove use of an
  alternate communication channel.  Function is now called with only
  one argument.
* contrib/lisp/org-export.el (org-export-collect-tree-properties):
(org-export-collect-headline-numbering, org-export--selected-trees,
org-export-collect-footnote-definitions,
org-export-footnote-first-reference-p,
org-export-get-footnote-number, org-export-resolve-fuzzy-link,
org-export-resolve-id-link, org-export-resolve-ref-link,
org-export-resolve-coderef, org-export-get-ordinal,
org-export-get-loc, org-export-collect-headlines): Apply changes.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii--unique-links): Apply
  changes.
* EXPERIMENTAL/org-e-publish.el (org-e-publish-collect-index): Apply
  changes.
2012-02-25 14:53:35 +01:00
Nicolas Goaziou 07368bbc09 org-e-latex: Fix compile bugs
* EXPERIMENTAL/org-e-latex.el (org-e-latex-compile): Fix compile bugs.
2012-02-23 18:26:12 +01:00
Nicolas Goaziou 0fa24209cf org-export: Export snippets are not skipped automatically: back-ends decide
* contrib/lisp/org-export.el (org-export-snippet-backend): New
  function.
(org-export--skip-p): Remove automatic skip of export snippets.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-export-snippet): Use new
  function.
* EXPERIMENTAL/org-e-html.el (org-e-html-export-snippet): Use new
  function.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-export-snippet): Use new
  function.
* EXPERIMENTAL/org-e-odt.el (org-e-odt-export-snippet): Use new
  function.
* testing/contrib/lisp/test-org-export.el: Add test.

The idea behind this change is that a given back-end may decide to
keep an export snippet not directly targetted at it (i.e. a beamer
back-end that would want to keep latex snippets).  Hence, filtering
snippets is on back-ends side, and a new function is added to help
them in that task.
2012-02-23 18:21:29 +01:00
Nicolas Goaziou 40e42b9dca org-export: New function `org-export-get-parent'
* contrib/lisp/org-export.el (org-export-get-parent): New function.
(org-export-data, org-export-get-previous-element,
org-export-get-next-element): Use new function.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-item): Use new function.
  Refactor code.
(org-e-ascii-paragraph): Use new function.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-item): Use new function.
* EXPERIMENTAL/org-e-html.el (org-e-html-item): Use new function.
* EXPERIMENTAL/org-e-odt.el (org-e-odt-item): Use new function.
2012-02-22 18:23:44 +01:00
Nicolas Goaziou 620f1d5181 org-export: Remove `:genealogy', introduce `:ignore-list'
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii--current-text-width,
  org-e-ascii-item, org-e-ascii-paragraph): Apply `:genealogy' removal.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-item): Apply `:genealogy'
  removal.
* contrib/lisp/org-element.el (org-element-map): Do not compile
  genealogy.  Also use `:ignore-list' when possible.
* contrib/lisp/org-export.el (org-export-collect-tree-properties):
  Populate `:ignore-list' before starting to transcode each element in
  subtree.
(org-export-get-min-level): Use `:ignore-list'.
(org-export--skip-p): Renamed from `org-export-skip-p'.  This is now
an internal function.
(org-export-data): Use and update `:ignore-list'.  Do not update
genealogy.
(org-export-ignore-element): New function
(org-export-last-sibling-p): Small refactoring.
(org-export-resolve-fuzzy-link): Apply `:genealogy' removal.
(org-export-get-genealogy): Use a more efficient algorithm.

The equivalent of (plist-get info :genealogy) is
now (org-export-get-genealogy blob info), blob being any element or
object.
2012-02-22 18:19:09 +01:00
Jambunathan K c2ea76e710 org-e-odt: New ODT exporter based on org-export - A rough cut
This is based on org-e-html.  It can create simple documents.  Lots of
cleanups will follow.  With this change, org-e-html and org-e-odt can
develop independently.
2012-02-22 20:14:21 +05:30
Jambunathan K d80ce8c5b9 org-e-html: Use new accessors introduced in org-export
Table cells are now transcoded.
2012-02-22 20:06:58 +05:30
Nicolas Goaziou 60caccc7e9 org-element: Rename accessors
* contrib/lisp/org-element.el (org-element-property,
  org-element-contents): New functions, renamed from, respecively
  `org-element-get-property' and `org-element-get-contents'.
(org-element-link-successor): Small refactoring.
(org-element-drawer-interpreter,
  org-element-dynamic-block-interpreter,
  org-element-footnote-definition-interpreter,
  org-element-headline-interpreter,
  org-element-inlinetask-interpreter, org-element-item-interpreter,
  org-element-special-block-interpreter,
  org-element-babel-call-interpreter,
  org-element-comment-interpreter,
  org-element-comment-block-interpreter,
  org-element-example-block-interpreter,
  org-element-export-block-interpreter,
  org-element-fixed-width-interpreter,
  org-element-keyword-interpreter,
  org-element-latex-environment-interpreter,
  org-element-property-drawer-interpreter,
  org-element-quote-section-interpreter,
  org-element-src-block-interpreter, org-element-table-interpreter,
  org-element-verse-block-interpreter,
  org-element-emphasis-interpreter, org-element-entity-interpreter,
  org-element-export-snippet-interpreter,
  org-element-footnote-reference-interpreter,
  org-element-inline-babel-call-interpreter,
  org-element-inline-src-block-interpreter,
  org-element-latex-fragment-interpreter,
  org-element-link-interpreter, org-element-macro-interpreter,
  org-element-statistics-cookie-interpreter,
  org-element-subscript-interpreter,
  org-element-superscript-interpreter,
  org-element-time-stamp-interpreter,
  org-element-verbatim-interpreter, org-element-map,
  org-element-parse-elements, org-element-parse-objects,
  org-element-interpret-data,
  org-element-interpret--affiliated-keywords,
  org-element-normalize-contents, org-element-swap-A-B,
  org-element-backward, org-element-drag-backward,
  org-element-drag-forward, org-element-forward,
  org-element-mark-element, org-narrow-to-element,
  org-transpose-elements, org-element-unindent-buffer,
  org-element-up): Use new names.
* contrib/lisp/org-export.el (org-export-get-inbuffer-options,
  org-export-use-select-tags-p, org-export-get-min-level,
  org-export-data, org-export-skip-p, org-export-interpret-p,
  org-export-collect-footnote-definitions,
  org-export-footnote-first-reference-p,
  org-export-get-footnote-number, org-export-get-relative-level,
  org-export-last-sibling-p, org-export-inline-image-p,
  org-export-resolve-fuzzy-link, org-export-resolve-id-link,
  org-export-resolve-ref-link, org-export-resolve-coderef,
  org-export-expand-macro, org-export-get-loc,
  org-export-handle-code, org-export-collect-elements,
  org-export-get-genealogy, org-export-get-previous-element): Use new names.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii--current-text-width,
  org-e-ascii--build-title, org-e-ascii--build-caption,
  org-e-ascii--list-listings, org-e-ascii--list-tables,
  org-e-ascii--unique-links, org-e-ascii--describe-links,
  org-e-ascii-template, org-e-ascii-drawer, org-e-ascii-emphasis,
  org-e-ascii-entity, org-e-ascii-export-snippet,
  org-e-ascii-export-block, org-e-ascii-fixed-width,
  org-e-ascii-headline, org-e-ascii-horizontal-rule,
  org-e-ascii-inline-src-block, org-e-ascii-inlinetask,
  org-e-ascii-item, org-e-ascii-keyword,
  org-e-ascii-latex-environment, org-e-ascii-latex-fragment,
  org-e-ascii-link, org-e-ascii-paragraph, org-e-ascii-quote-section,
  org-e-ascii-statistics-cookie, org-e-ascii-subscript,
  org-e-ascii-superscript, org-e-ascii-table, org-e-ascii-verbatim,
  org-e-ascii-verse-block): Use new names
* EXPERIMENTAL/org-e-latex.el (org-e-latex--wrap-label,
  org-e-latex-drawer, org-e-latex-emphasis, org-e-latex-entity,
  org-e-latex-example-block, org-e-latex-export-snippet,
  org-e-latex-export-block, org-e-latex-fixed-width,
  org-e-latex-footnote-reference, org-e-latex-headline,
  org-e-latex-link--inline-image, org-e-latex-latex-fragment,
  org-e-latex-latex-environment, org-e-latex-keyword,
  org-e-latex-item, org-e-latex-inlinetask,
  org-e-latex-inline-src-block, org-e-latex-special-block,
  org-e-latex-radio-target, org-e-latex-quote-section,
  org-e-latex-plain-list, org-e-latex-src-block,
  org-e-latex-statistics-cookie, org-e-latex-table--format-string,
  org-e-latex-target, org-e-latex-time-stamp, org-e-latex-verbatim):
  Use new names
* EXPERIMENTAL/org-e-publish.el (org-e-publish-collect-index,
  org-e-publish-index-generate-theindex): Use new names.
2012-02-22 13:47:20 +01:00
Nicolas Goaziou 0ff3d47d13 org-element: Introduce a new accessor: `org-element-type'
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii--current-text-width,
  org-e-ascii--build-caption, org-e-ascii--build-title,
  org-e-ascii--describe-links, org-e-ascii-template,
  org-e-ascii-paragraph): Use new accessor
* EXPERIMENTAL/org-e-latex.el (org-e-latex--guess-inputenc): Small
  refactoring.
  (org-e-latex-footnote-reference, org-e-latex-link):  Use new
  accessor.
* contrib/lisp/org-element.el (org-element-type): New function.
  (org-element-map, org-element-parse-elements,
  org-element-interpret-data, org-element-normalize-contents,
  org-element-forward, org-element-unindent-buffer): Use new
  accessor.
* contrib/lisp/org-export.el (org-export-get-inbuffer-options,
  org-export-get-min-level, org-export-data, org-export-skip-p,
  org-export-interpret-p, org-export-expand,
  org-export-expand-include-keyword,
  org-export-prepare-file-contents, org-export-first-sibling-p,
  org-export-resolve-fuzzy-link, org-export-get-ordinal,
  org-export-get-loc, org-export-get-genealogy,
  org-export-get-parent-headline): Use new accessor.
2012-02-22 13:21:13 +01:00
Nicolas Goaziou 8736d92d0e org-element: org-element-map also checks secondary strings
* contrib/lisp/org-element.el (org-element-object-restrictions):
  Modify docstring.
(org-element-secondary-value-alist): New variable.
(org-element-map): Possibly look into secondary strings when mapping
through objects.  Also sanitize some function names.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii--unique-links): Make use of
  org-element-map improvement.
2012-02-20 20:18:29 +01:00
Jambunathan K fac58412f3 org-e-html: Improve lists, support listified headlines 2012-02-20 22:06:51 +05:30
Nicolas Goaziou abaeb42a3a org-e-ascii: Get item number right
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-item): Use new
  `org-list-get-item-number' function.
* contrib/lisp/org-element.el (org-element-item-interpreter): Use new
  `org-list-get-item-number' function.
2012-02-20 17:17:39 +01:00
Nicolas Goaziou f07929f5f1 org-e-ascii: Fix column width with cells containing an object not exported
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-table):  width may be
  wrong when some object is removed from a cell during export
2012-02-20 16:37:25 +01:00
Nicolas Goaziou 61f831b923 org-e-latex: Fix label position in LaTeX environments
* EXPERIMENTAL/org-e-latex.el (org-e-latex-latex-environment): label
  should be within the environment.
2012-02-20 01:05:46 +01:00
Nicolas Goaziou af2a46a76f org-export: Implement "ref" type links
* contrib/lisp/org-element.el (org-element-link-parser): Recognize
  "ref" type links as a new type of Org link.
* contrib/lisp/org-export.el (org-export-resolve-ref-link): New
  function.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii--describe-links): Do not
  describe "ref" type links at the end of each section.
(org-e-ascii-link): Handle "ref" type links.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-link): Handle "ref" type
  links.

"ref" type links are Org answer to LaTeXisms like "\ref{some-label}".
Hence, [[ref:some-label]] will be replaced with the sequence number of
the element with name "#+name: some-label" during export.
2012-02-19 18:24:22 +01:00
Jambunathan K 8fc0dc2f58 org-e-html: Support for generating TOC 2012-02-19 21:27:05 +05:30
Jambunathan K be42548763 org-e-html: Fix crash while exporting to a temp buffer 2012-02-19 03:05:35 +05:30
Jambunathan K 1feac49476 org-e-html: Use prefix consistently and cleanup some code 2012-02-18 22:39:48 +05:30
Nicolas Goaziou 0548051357 org-e-publish: Hook e-html back-end into publishing system
* EXPERIMENTAL/org-e-publish.el (org-e-publish-org-to-html): New function.
2012-02-18 14:37:51 +01:00
Jambunathan K 93ec2c7a50 org-e-html: New HTML exporter - a first attempt
* contrib/lisp/org-export.el (org-export-dispatch)
(org-export-dispatch-ui): Add new entries for the new HTML
exporter.

* EXPERIMENTAL/org-e-html.el: New file.  This is a very rough
cut based out on org-xhtml.el and org-e-latex.el.  The file
retains all the LaTeXisms in either commented form or
otherwise.  This is deliberate so as to have a quick look at
the reference implementation.  Retaining the organization
style of org-xhtml.el would enable easy creation of
org-e-odt.el by simply replacing e-html with e-odt for the
most part.
The changes here covers fairly a good ground - say 90% - of my
unit test file.
2012-02-18 12:25:53 +05:30
Nicolas Goaziou 4d77e6adf6 org-e-ascii: Correctly expand syntax in table cells
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-table): Translate cells
  into ASCII/Latin1/UTF-8 before building back the table.
2012-02-17 18:54:23 +01:00
Nicolas Goaziou 6782d6f77b Fix infloop when parsing radio targets
* contrib/lisp/org-element.el (org-element-link-parser): Do not parse
  radio link as a recursive link.
* contrib/lisp/org-export.el (org-export-solidify-link-text): Make
  sure "\" isn't allowed in solidified strings.  This is required to
  allow entities in radio targets.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-link): Apply changes to
  radio links.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-link): Apply changes to
  radio links.
2012-02-17 18:46:05 +01:00
Nicolas Goaziou 34313edab9 org-e-ascii: Fix tables export with a special column
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-table--column-width): Do
  not return width of special column, if any.
(org-e-ascii-table--build-hline): Add comments to code.
2012-02-17 14:54:20 +01:00
Nicolas Goaziou 3e18c9cad7 org-e-latex: Change list of listings command according to package used
* EXPERIMENTAL/org-e-latex.el (org-e-latex-keyword): Use
  \listoflistings for minted and \lstlistoflistings for listings package.
2012-02-16 20:14:31 +01:00
Nicolas Goaziou 664271cde7 org-export: New `org-export-get-parent-paragraph' function
* contrib/lisp/org-export.el (org-export-get-genealogy,
org-export-get-parent-paragraph): New functions.
(org-export-get-parent-headline, org-export-get-previous-element,
org-export-get-next-element): Internally use new function.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-link--inline-image,
org-e-latex-link): Apply changes to topology functions.

This new function is especially useful since every object derives its
properties from those the containing paragraph.
2012-02-16 20:14:31 +01:00
Nicolas Goaziou 7d3f7f60e0 Make inline image definition more configurable
* contrib/lisp/org-element.el (org-element-object-restrictions): Allow
  plain links in link description.
* contrib/lisp/org-export.el (org-export-default-inline-image-rule):
  New variable.
(org-export-inline-image-p): Use rules instead of extensions. A rule
is a regexp applied to path for a given type of link.  It allows to
extend inline images to non-local files.
* EXPERIMENTAL/org-e-latex.el (org-e-latex-inline-image-rules): New
  variable.
(org-e-latex-inline-image-extensions): Removed variable

There are two motivations behind this change.  The first one is to
allow, for example, an HTML exporter to define a rule like the
following:

 ("http" . "\\.\\(png\\|jpg\\|jpeg\\|gif\\)\\(\\?\\(\\w+=\\w+&?\\)*\\)?")

The other one is to properly define thumbnails (clickable images),
like the following:

  [[http://orgmode.org][file:~/my-logo.png]]
2012-02-16 20:14:31 +01:00
Nicolas Goaziou 432c3d60c6 Implement a cleaner way to install back-end specific filters in new exporter
* contrib/lisp/org-export.el (org-export-filters-alist): New variable.
(org-export-install-filters): New function.
* EXPERIMENTAL/org-e-ascii.el (org-e-ascii-filters-alist): New variable.

Back-end specific filters can now be installed in communication
channel with `org-BACKEND-filters-alist' variable.
2012-02-13 13:51:22 +01:00