diff --git a/lisp/org.el b/lisp/org.el index ad2863b8d..080b5273e 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -21577,7 +21577,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)) @@ -21704,7 +21704,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)) diff --git a/testing/lisp/test-org.el b/testing/lisp/test-org.el index 98957aca9..2dd6e8116 100644 --- a/testing/lisp/test-org.el +++ b/testing/lisp/test-org.el @@ -471,12 +471,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:" @@ -504,9 +536,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."