diff options
author | York Zhao <gtdplatform@gmail.com> | 2014-04-09 13:39:16 -0400 |
---|---|---|
committer | Nicolas Goaziou <n.goaziou@gmail.com> | 2014-04-10 11:52:44 +0200 |
commit | d01d22b74f3257a362411ade9a406f3bb00edb0e (patch) | |
tree | 60c6e103d001feaf45022180f08a1058e510337a | |
parent | a768cf045d5fd48d853625bc0f2987897a68ba88 (diff) | |
download | org-mode-d01d22b74f3257a362411ade9a406f3bb00edb0e.tar.gz |
org-test: Fix <point> feature
* testing/org-test.el (org-test-with-temp-text): Fix point position.
According to the docstring, if the string "<point>" appears in TEXT
then the string "<point>" is removed and point is placed there. The
problem was that after string "<point>" was removed, the point
was *not* placed at the position of the removed text, rather, it was
placed one character before that position which is wrong. The reason
is that Emacs buffer position is a number started from 1, instead of
0, in other words, the value of `(point-min)' is 1 not 0. The problem
is addressed by adding 1 to the calculated position.
TINYCHANGE
-rw-r--r-- | testing/org-test.el | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/testing/org-test.el b/testing/org-test.el index ad70262..4631550 100644 --- a/testing/org-test.el +++ b/testing/org-test.el @@ -209,11 +209,12 @@ otherwise place the point at the beginning of the inserted text." (with-temp-buffer (org-mode) (let ((point (string-match (regexp-quote "<point>") inside-text))) - (if point - (progn (insert (replace-match "" nil nil inside-text)) - (goto-char (match-beginning 0))) - (progn (insert inside-text) - (goto-char (point-min))))) + (if point + (progn + (insert (replace-match "" nil nil inside-text)) + (goto-char (1+ (match-beginning 0)))) + (progn (insert inside-text) + (goto-char (point-min))))) ,@body))) (def-edebug-spec org-test-with-temp-text (form body)) |