forked from mirrors/org-mode
Bug fix in org-beginning-of-line visual line motion
* lisp/org.el (org-beginning-of-line): check `visual-line-mode' instead of `line-visual-mode' to determine whether to move by visual lines. * lisp/org.el (org-kill-line): use of org-bound-and-true-p macro. * testing/lisp/test-org.el: Add test
This commit is contained in:
parent
ca5d5e9c9b
commit
2aeb28d2af
|
@ -21271,7 +21271,7 @@ beyond the end of the headline."
|
|||
(car org-special-ctrl-a/e)
|
||||
org-special-ctrl-a/e))
|
||||
refpos)
|
||||
(if (org-bound-and-true-p line-move-visual)
|
||||
(if (org-bound-and-true-p visual-line-mode)
|
||||
(beginning-of-visual-line 1)
|
||||
(beginning-of-line 1))
|
||||
(if (and arg (fboundp 'move-beginning-of-line))
|
||||
|
@ -21398,7 +21398,7 @@ depending on context."
|
|||
(not (y-or-n-p "Kill hidden subtree along with headline? ")))
|
||||
(error "C-k aborted - would kill hidden subtree")))
|
||||
(call-interactively
|
||||
(if (and (boundp 'visual-line-mode) visual-line-mode) 'kill-visual-line 'kill-line)))
|
||||
(if (org-bound-and-true-p visual-line-mode) 'kill-visual-line 'kill-line)))
|
||||
((looking-at (org-re ".*?\\S-\\([ \t]+\\(:[[:alnum:]_@#%:]+:\\)\\)[ \t]*$"))
|
||||
(kill-region (point) (match-beginning 1))
|
||||
(org-set-tags nil t))
|
||||
|
|
|
@ -418,12 +418,44 @@ http://article.gmane.org/gmane.emacs.orgmode/21459/"
|
|||
|
||||
;; Navigation
|
||||
|
||||
(ert-deftest test-org/beginning-of-line ()
|
||||
"Test `org-beginning-of-line' specifications."
|
||||
;; Standard test.
|
||||
(should
|
||||
(org-test-with-temp-text "Some text\nSome other text"
|
||||
(progn (org-beginning-of-line) (bolp))))
|
||||
;; Standard test with `visual-line-mode'.
|
||||
(should-not
|
||||
(org-test-with-temp-text "A long line of text\nSome other text"
|
||||
(progn (visual-line-mode)
|
||||
(forward-char 2)
|
||||
(dotimes (i 1000) (insert "very "))
|
||||
(org-beginning-of-line)
|
||||
(bolp))))
|
||||
;; At an headline with special movement.
|
||||
(should
|
||||
(org-test-with-temp-text "* TODO Headline"
|
||||
(let ((org-special-ctrl-a/e t))
|
||||
(org-end-of-line)
|
||||
(and (progn (org-beginning-of-line) (looking-at "Headline"))
|
||||
(progn (org-beginning-of-line) (bolp))
|
||||
(progn (org-beginning-of-line) (looking-at "Headline")))))))
|
||||
|
||||
(ert-deftest test-org/end-of-line ()
|
||||
"Test `org-end-of-line' specifications."
|
||||
;; Standard test.
|
||||
(should
|
||||
(org-test-with-temp-text "Some text\nSome other text"
|
||||
(progn (org-end-of-line) (eolp))))
|
||||
;; Standard test with `visual-line-mode'.
|
||||
(should-not
|
||||
(org-test-with-temp-text "A long line of text\nSome other text"
|
||||
(progn (visual-line-mode)
|
||||
(forward-char 2)
|
||||
(dotimes (i 1000) (insert "very "))
|
||||
(goto-char (point-min))
|
||||
(org-end-of-line)
|
||||
(eolp))))
|
||||
;; At an headline with special movement.
|
||||
(should
|
||||
(org-test-with-temp-text "* Headline :tag:"
|
||||
|
@ -451,9 +483,10 @@ http://article.gmane.org/gmane.emacs.orgmode/21459/"
|
|||
;; At a block with hidden contents.
|
||||
(should-not
|
||||
(org-test-with-temp-text "#+BEGIN_CENTER\nContents\n#+END_CENTER"
|
||||
(progn (org-hide-block-toggle)
|
||||
(org-end-of-line)
|
||||
(eobp)))))
|
||||
(let ((org-special-ctrl-a/e t))
|
||||
(org-hide-block-toggle)
|
||||
(org-end-of-line)
|
||||
(eobp)))))
|
||||
|
||||
(ert-deftest test-org/forward-element ()
|
||||
"Test `org-forward-element' specifications."
|
||||
|
|
Loading…
Reference in a new issue