Merge branch 'maint'
This commit is contained in:
commit
c0b37e1883
|
@ -1018,15 +1018,14 @@ Assume point is at beginning of the headline."
|
|||
(standard-props (org-element--get-node-properties))
|
||||
(time-props (org-element--get-time-properties))
|
||||
(end (min (save-excursion (org-end-of-subtree t t)) limit))
|
||||
(pos-after-head (progn (forward-line) (point)))
|
||||
(contents-begin (save-excursion
|
||||
(forward-line)
|
||||
(skip-chars-forward " \r\t\n" end)
|
||||
(and (/= (point) end) (line-beginning-position))))
|
||||
(contents-end (and contents-begin
|
||||
(progn (goto-char end)
|
||||
(skip-chars-backward " \r\t\n")
|
||||
(forward-line)
|
||||
(point)))))
|
||||
(line-beginning-position 2)))))
|
||||
(let ((headline
|
||||
(list 'headline
|
||||
(nconc
|
||||
|
@ -1035,7 +1034,7 @@ Assume point is at beginning of the headline."
|
|||
:end end
|
||||
:pre-blank
|
||||
(if (not contents-begin) 0
|
||||
(count-lines pos-after-head contents-begin))
|
||||
(1- (count-lines begin contents-begin)))
|
||||
:contents-begin contents-begin
|
||||
:contents-end contents-end
|
||||
:level level
|
||||
|
@ -1043,9 +1042,10 @@ Assume point is at beginning of the headline."
|
|||
:tags tags
|
||||
:todo-keyword todo
|
||||
:todo-type todo-type
|
||||
:post-blank (count-lines
|
||||
(or contents-end pos-after-head)
|
||||
end)
|
||||
:post-blank
|
||||
(if contents-end
|
||||
(count-lines contents-end end)
|
||||
(1- (count-lines begin end)))
|
||||
:footnote-section-p footnote-section-p
|
||||
:archivedp archivedp
|
||||
:commentedp commentedp
|
||||
|
@ -1116,10 +1116,11 @@ CONTENTS is the contents of the element."
|
|||
"Parse an inline task.
|
||||
|
||||
Return a list whose CAR is `inlinetask' and CDR is a plist
|
||||
containing `:title', `:begin', `:end', `:contents-begin' and
|
||||
`:contents-end', `:level', `:priority', `:raw-value', `:tags',
|
||||
`:todo-keyword', `:todo-type', `:scheduled', `:deadline',
|
||||
`:closed', `:post-blank' and `:post-affiliated' keywords.
|
||||
containing `:title', `:begin', `:end', `:pre-blank',
|
||||
`:contents-begin' and `:contents-end', `:level', `:priority',
|
||||
`:raw-value', `:tags', `:todo-keyword', `:todo-type',
|
||||
`:scheduled', `:deadline', `:closed', `:post-blank' and
|
||||
`:post-affiliated' keywords.
|
||||
|
||||
The plist also contains any property set in the property drawer,
|
||||
with its name in upper cases and colons added at the
|
||||
|
@ -1157,18 +1158,20 @@ Assume point is at beginning of the inline task."
|
|||
(task-end (save-excursion
|
||||
(end-of-line)
|
||||
(and (re-search-forward org-outline-regexp-bol limit t)
|
||||
(looking-at-p "END[ \t]*$")
|
||||
(looking-at-p "[ \t]*END[ \t]*$")
|
||||
(line-beginning-position))))
|
||||
(standard-props (and task-end (org-element--get-node-properties)))
|
||||
(time-props (and task-end (org-element--get-time-properties)))
|
||||
(contents-begin (progn (forward-line)
|
||||
(and task-end (< (point) task-end) (point))))
|
||||
(contents-begin (and task-end
|
||||
(< (point) task-end)
|
||||
(progn
|
||||
(forward-line)
|
||||
(skip-chars-forward " \t\n")
|
||||
(line-beginning-position))))
|
||||
(contents-end (and contents-begin task-end))
|
||||
(before-blank (if (not task-end) (point)
|
||||
(goto-char task-end)
|
||||
(forward-line)
|
||||
(point)))
|
||||
(end (progn (skip-chars-forward " \r\t\n" limit)
|
||||
(end (progn (when task-end (goto-char task-end))
|
||||
(forward-line)
|
||||
(skip-chars-forward " \r\t\n" limit)
|
||||
(if (eobp) (point) (line-beginning-position))))
|
||||
(inlinetask
|
||||
(list 'inlinetask
|
||||
|
@ -1176,6 +1179,9 @@ Assume point is at beginning of the inline task."
|
|||
(list :raw-value raw-value
|
||||
:begin begin
|
||||
:end end
|
||||
:pre-blank
|
||||
(if (not contents-begin) 0
|
||||
(1- (count-lines begin contents-begin)))
|
||||
:contents-begin contents-begin
|
||||
:contents-end contents-end
|
||||
:level level
|
||||
|
@ -1183,7 +1189,7 @@ Assume point is at beginning of the inline task."
|
|||
:tags tags
|
||||
:todo-keyword todo
|
||||
:todo-type todo-type
|
||||
:post-blank (count-lines before-blank end)
|
||||
:post-blank (1- (count-lines (or task-end begin) end))
|
||||
:post-affiliated begin)
|
||||
time-props
|
||||
standard-props))))
|
||||
|
@ -3839,10 +3845,14 @@ element it has to parse."
|
|||
(or (save-excursion (org-with-limited-levels (outline-next-heading)))
|
||||
limit)))
|
||||
;; Planning.
|
||||
((and (eq mode 'planning) (looking-at org-planning-line-re))
|
||||
((and (eq mode 'planning)
|
||||
(eq ?* (char-after (line-beginning-position 0)))
|
||||
(looking-at org-planning-line-re))
|
||||
(org-element-planning-parser limit))
|
||||
;; Property drawer.
|
||||
((and (memq mode '(planning property-drawer))
|
||||
(eq ?* (char-after (line-beginning-position
|
||||
(if (eq mode 'planning) 0 -1))))
|
||||
(looking-at org-property-drawer-re))
|
||||
(org-element-property-drawer-parser limit))
|
||||
;; When not at bol, point is at the beginning of an item or
|
||||
|
|
|
@ -1269,6 +1269,11 @@ Some other text
|
|||
(org-test-with-temp-text
|
||||
"*************** Task\nTest\n*************** END"
|
||||
(org-element-type (org-element-at-point)))))
|
||||
(should
|
||||
(eq 'inlinetask
|
||||
(org-test-with-temp-text
|
||||
"*************** Task\nTest\n*************** END"
|
||||
(org-element-type (org-element-at-point)))))
|
||||
;; Degenerate inlinetask.
|
||||
(should
|
||||
(eq 'inlinetask
|
||||
|
@ -1966,6 +1971,11 @@ Outside list"
|
|||
(eq 'planning
|
||||
(org-test-with-temp-text
|
||||
"* H\n# Comment\n<point>DEADLINE: <2012-03-29 thu.>"
|
||||
(org-element-type (org-element-at-point)))))
|
||||
(should-not
|
||||
(eq 'planning
|
||||
(org-test-with-temp-text
|
||||
"* H\n\n<point>DEADLINE: <2012-03-29 thu.>"
|
||||
(org-element-type (org-element-at-point))))))
|
||||
|
||||
|
||||
|
@ -2008,6 +2018,11 @@ Outside list"
|
|||
(org-test-with-temp-text
|
||||
"* H\nParagraph\n<point>:PROPERTIES:\nparagraph\n:END:"
|
||||
(org-element-type (org-element-at-point)))))
|
||||
(should-not
|
||||
(eq 'property-drawer
|
||||
(org-test-with-temp-text
|
||||
"* H\n\n<point>:PROPERTIES:\n:prop: value\n:END:"
|
||||
(org-element-type (org-element-at-point)))))
|
||||
;; Handle non-empty blank line at the end of buffer.
|
||||
(should
|
||||
(org-test-with-temp-text "* H\n<point>:PROPERTIES:\n:END:\n "
|
||||
|
|
Loading…
Reference in New Issue