AgeCommit message (Collapse)AuthorFilesLines
16 hoursorg-element.el: Allow one-line LaTeX environmentsHEADmasterRasmus2-7/+38
* org-element.el (org-element--latex-begin-environment, org-element--latex-end-environment): New format strings to identify beginning and ending of LaTeX environments. (org-element-latex-environment-parser, org-element-paragraph-parser, org-element--current-element): Use `org-element--latex-begin-environment' and `org-element--latex-end-environment'. * test-org-element.el (test-org-element/latex-environment-parser): Add tests.
16 hoursMerge branch 'maint'Nicolas Goaziou1-1/+1
16 hoursorg-element: Fix test failuremaintNicolas Goaziou1-1/+1
* lisp/org-element.el (org-element--current-element): Fix regexp.
38 hoursMerge branch 'maint'Nicolas Goaziou1-2/+1
38 hoursorg-element: Fix regexp matching LaTeX environmentsNicolas Goaziou1-2/+1
* lisp/org-element.el (org-element--current-element): Fix regexp matching latex environments. Discrepancy with regexp used in `org-element-latex-environment-parser' introduced matching errors.
3 daysorg-element: Small optimizationNicolas Goaziou1-7/+14
* lisp/org-element.el (org-element--cache-for-removal): Do not remove a robust element whenever only its contents are modified. Remove inlinetasks as robust elements since modifying a node property inside implies to parse the task again.
3 daysorg-element: Fix infloop in cacheNicolas Goaziou1-19/+25
* lisp/org-element.el (org-element--cache-process-request): Take into consideration changes to come so as to avoid parsing elements with false beginning positions. (org-element--cache-sync): Change signature. Thanks to Thorsten Jolitz for reporting it.
3 daysorg-element: Better collision handling in cache sync requestsNicolas Goaziou1-6/+10
* lisp/org-element.el (org-element--cache-process-request): Handle cases where procesing the first request brings us past the start of the next one.
5 daysMerge branch 'maint'Nick Dokos1-7/+3
Merge bug fix for org-table.el:org-table-clean-before-export.
5 daysorg-clean-before-export matches non-special columns spuriouslyNick Dokos1-7/+3
* org-table.el (org-table-clean-before-export): The regexes match spaces in addition to the special characters that might be used in the first column as special marking characters. Remove the space from the character class. In addition, the `special' variable included a backslash which afaict does nothing: delete it. The function itself takes an optional parameter which is not used by any of the callers: get rid of it. Getting rid of it allows a small simplification of the code. The bug was found by Thorsten Grothe:
6 daysorg-element: Fix re-parenting during cache synchronizationNicolas Goaziou2-3/+46
* lisp/org-element.el (org-element--cache-process-request): Correctly re-parent elements in cache in some corner cases. * testing/lisp/test-org-element.el (test-org-element/cache): Add tests.
6 daysorg-element: Fix corner case in cache synchronizationNicolas Goaziou1-6/+4
* lisp/org-element.el (org-element--cache-submit-request): When changes happen before first know element, start from phase 1 instead of phase 2 in order to properly re-parent subsequent elements, if needed. (org-element--cache-process-request): Do not propagate beginning position since it is already available to the request.
6 daysorg-element: Fix "wrong-type-argument" error in cacheNicolas Goaziou1-21/+21
* lisp/org-element.el (org-element--cache-sync): Do not copy phase number into next request. This is a special case that deserves to be handled locally. See below. (org-element--cache-process-request): Properly transfer phase in a special case, which is now commented. Also fix phase numbers in comments. Small refactoring. Thanks to Alan Schmitt for reporting it.
7 daysox: Fix inline footnote definitionsNicolas Goaziou1-9/+13
* lisp/ox.el (org-export-collect-tree-properties): Make sure changes to the parse tree propagate to the value of `org-export-get-footnote-definition'. Thanks to Florian Beck for reporting it.
11 dayscontrib/lisp/org-contacts.el: Fix a bug when contacts don't have an email ↵Grégoire Jadi1-12/+16
address * contrib/lisp/org-contacts.el (org-contacts-complete-tags-props, org-contacts-complete-group): Fix a bug when contacts don't have an email address.
11 dayscontrib/lisp/org-contacts.el: Complete contacts using tags and propertiesGrégoire Jadi1-1/+43
* contrib/lisp/org-contacts.el (org-contacts-complete-tags-props): New function that allows the user to retrieve contacts based on tags and properties. (org-contacts-complete-functions): Add org-contacts-complete-tags-props to the completion functions. (org-contacts-tags-props-prefix): Prefix used to detect the completion method wished. Based on the idea and implementation of John Kitchin
2014-07-06org-element: Avoid using a slow regexpNicolas Goaziou1-2/+5
* lisp/org-element.el (org-element-latex-fragment-parser): Avoid using a slow regexp.
2014-07-06org-element: Small optimizationsNicolas Goaziou1-25/+26
* lisp/org-element.el (org-element-latex-fragment-parser): Avoid matching twice regexps in some cases. (org-element--object-lex): Avoid making a funcall if a line break isn't possible. This patch also removes the limit on the number of lines a latex fragment with a single dollar can span over.
2014-07-06org-element: Fix docstringNicolas Goaziou1-1/+1
* lisp/org-element.el (org-element-footnote-reference-interpreter): Fix docstring.
2014-07-06org-element: Remove :inline-definition from inline footnotesNicolas Goaziou3-77/+86
* lisp/org-element.el (org-element-recursive-objects): Add `footnote-reference'. (org-element-secondary-value-alist): Remove reference to `footnote-reference'. (org-element-footnote-reference-parser): Definition for inline references is stored as the contents of the reference, not in a secondary string. (org-element-footnote-reference-interpreter): Apply changes from parser. * lisp/ox.el (org-export-get-footnote-definition, org-export-get-environment): Apply changes from parser. * testing/lisp/test-org-element.el (test-org-element/footnote-reference-parser): Update test. (test-org-element/context): Add test. Storing definition in a secondary string was a poor design choice as there is no "primary" string anyway. This also prevents `org-element-context' from finding objects within the inline definition.
2014-07-05org-element: Reach orphaned elements during cache syncNicolas Goaziou1-47/+61
* lisp/org-element.el (org-element--cache-sync-requests): Change pattern. (org-element--cache-sync, org-element--cache-submit-request): Update request pattern. (org-element--cache-process-request): Remove orphaned elements during first phase. An orphaned element is an element not directly altered by changes to buffer but with one of its parent removed.
2014-07-05org-element: Fix buffer positions when merging requestsNicolas Goaziou1-19/+18
* lisp/org-element.el (org-element--cache-submit-request): Correctly compute buffer positions where cache is missing, taking into account the request not yet applied.
2014-07-03remove extra escape org-emphasis-regexp-componentsEric Schulte1-1/+1
specifically in the second 'post' element * lisp/org.el (org-emphasis-regexp-components): Remove extra escape org-emphasis-regexp-components, specifically in the second 'post' element.
2014-07-02Merge branch 'maint'Achim Gratz1-2/+2
2014-07-02mk/ consider only release_* tags for constructing version stringsAchim Gratz1-2/+2
2014-06-30org-element: Fix corner caseNicolas Goaziou1-6/+3
* lisp/org-element.el (org-element--cache-for-removal): Fix corner case when changes happen in a robust element (e.g., a center block) within a fragile element (e.g., a plain list). Do not assume that all parents from a robust element are also robust.
2014-06-30org-element: Fix bug in sync request submissionNicolas Goaziou1-1/+0
* lisp/org-element.el (org-element--cache-submit-request): Do not modify ending position twice.
2014-06-30org-element: Improve sychronization request submissionNicolas Goaziou1-17/+21
* lisp/org-element.el (org-element--cache-submit-request): Store parent of first element to delete, if any. This saves a call to `org-element--cache-find' in a very common use case. (org-element--cache-sync-requests): Update docstring accordingly.
2014-06-30org-element: Tiny refactoringNicolas Goaziou1-3/+3
* lisp/org-element.el (org-element--cache-submit-request): Tiny refactoring.
2014-06-30org-element: Better threshold computation during synchronizationNicolas Goaziou1-1/+1
* lisp/org-element.el (org-element--cache-process-request): Threshold is based off beginning of the first element to shift instead of the end of the changes.
2014-06-30org-element: Simplify request processingNicolas Goaziou1-32/+14
* lisp/org-element.el (org-element--cache-process-request): Do not try to find orphans for now. Remove useless comments. Refactor code.
2014-06-30org-element: Do not trust a stored request after cache syncNicolas Goaziou1-1/+2
* lisp/org-element.el (org-element--cache-submit-request): Do not trust a stored request after calling `org-element--cache-sync' since it may as well not exist anymore (i.e., the synchronization was complete).
2014-06-30ORG-NEWS: document user-visible changesAchim Gratz1-0/+30
* etc/ORG-NEWS: Introduce Section for the pending 8.3 release and document user visible changes.
2014-06-29org-element: Small fixNicolas Goaziou1-6/+6
* lisp/org-element.el (org-element--cache-submit-request): Fix off by one error when updating cache. Changes happening at the beginning to the previous ones, which are always located at the beginning of an element, imply to delete previous element. Also do not call `org-element--cache-sync' if there's nothing to synchronize.
2014-06-29org-element: Tiny fixNicolas Goaziou1-7/+7
* lisp/org-element.el (org-element-headline-parser): Do not assume property drawers are correctly formed.
2014-06-29org-element: Fix inlinetask parsingNicolas Goaziou2-28/+46
* lisp/org-element.el (org-element-inlinetask-parser): Do not infloop when parsing property drawer in an inlinetask. * testing/lisp/test-org-element.el (test-org-element/headline-properties): Add test. Thanks to Aaron Ecay for reporting it.
2014-06-27org-element: Fix cache corruption when altering a drawerNicolas Goaziou1-5/+14
* lisp/org-element.el (org-element--cache-submit-request): Correctly update cache when changes alter the contents of a greater element (e.g. a property drawer). Thanks to Alan Schmitt for reporting it.
2014-06-27org-element: Fix parsing path starting with ~Nicolas Goaziou1-2/+2
* lisp/org-element.el (org-element-link-parser): Do not prepend "//" to paths starting with "~". Since b1dcd0fb0bec6b523c900bc1304fbe834c21697d, link parser doesn't expand file names anymore. We need to prevent it from "fixing" paths starting with "~", as it can cause trouble to some exporters (e.g. latex).
2014-06-26org-element: Small refactoringNicolas Goaziou1-5/+2
* lisp/org-element.el (org-element--cache-generate-key): Small refactoring.
2014-06-26org-element: Use full range of integers for cache keysNicolas Goaziou1-20/+23
* lisp/org-element.el (org-element--cache-generate-key): Allow negative numbers in keys. Small refactoring.
2014-06-26Merge branch 'maint'Nicolas Goaziou1-14/+19
2014-06-26ox-ascii: Fix tables with a width cookieNicolas Goaziou1-14/+19
* lisp/ox-ascii.el (org-ascii--table-cell-width): Correctly export tables with width cookies.
2014-06-25org-element: Fix typoNicolas Goaziou1-1/+1
* lisp/org-element.el (org-element--cache-generate-key): Fix typo in docstring.
2014-06-25org-element: More refactoringNicolas Goaziou1-61/+36
* lisp/org-element.el (org-element--cache-generate-key): Refactor key computation. (org-element--cache-default-key): Remove variable.
2014-06-25org-element: RefactoringNicolas Goaziou1-70/+44
* lisp/org-element.el (org-element--cache-sensitive-re): New variable (org-element--cache-opening-line, org-element--cache-closing-line): Removed variables. (org-element--cache-before-change, org-element--cache-after-change): Refactoring. Also simplify process.
2014-06-25org-element: Small cache fixNicolas Goaziou1-1/+2
* lisp/org-element.el (org-element--cache-before-change): Ignore case sensitivity when looking for a modified sensitive line.
2014-06-25rm dependency of ox-bibtex on org-bibtex-extrasEric Schulte2-24/+21
* contrib/lisp/org-bibtex-extras.el: Remove functions to find citations, moved into ox-bibtex. * contrib/lisp/ox-bibtex.el: Add functionality to follow cite links.
2014-06-25drop cite options for non-latex backendsEric Schulte1-3/+6
These options break citation handling for these other backends, so we should just drop them. * contrib/lisp/ox-bibtex.el (org-bibtex-merge-contiguous-citations): Drop citation options for HTML and ASCII export.
2014-06-25Fix `org-drag-element-backward'Nicolas Goaziou2-30/+50
* lisp/org.el (org-drag-element-backward): Correcly drag elements in a drawer or a block. * testing/lisp/test-org.el (test-org/drag-element-backward): Add test.
2014-06-24inhibit <p> wraps on a whole-list basisEric Schulte1-2/+11
* lisp/ox-html.el (org-html-paragraph): Extend the special case of inhibiting <p> wrappers to only perform such inhibition when *every* element of the list is a single paragraph long. Otherwise unsightly spacing results.