diff options
-rw-r--r-- | org-link-edit.el | 4 | ||||
-rw-r--r-- | test-org-link-edit.el | 16 |
2 files changed, 18 insertions, 2 deletions
diff --git a/org-link-edit.el b/org-link-edit.el index 180e289..b670f29 100644 --- a/org-link-edit.el +++ b/org-link-edit.el @@ -127,7 +127,7 @@ If N is negative, slurp leading words instead of trailing words." (let ((slurped (buffer-substring-no-properties end (point)))) (setq slurped (replace-regexp-in-string "\n" " " slurped)) (when (and (= (length desc) 0) - (string-match "^\\W*\\(\\w.*\\)" slurped)) + (string-match "^\\s-+\\(.*\\)" slurped)) (setq slurped (match-string 1 slurped))) (setq desc (concat desc slurped) end (+ end (length slurped))) @@ -167,7 +167,7 @@ words." (point))) (let ((slurped (buffer-substring-no-properties (point) beg))) (when (and (= (length desc) 0) - (string-match "\\(.*\\w\\)\\W*$" slurped)) + (string-match "\\(.*\\)\\s-+$" slurped)) (setq slurped (match-string 1 slurped))) (setq slurped (replace-regexp-in-string "\n" " " slurped)) (setq desc (concat slurped desc) diff --git a/test-org-link-edit.el b/test-org-link-edit.el index b778dbd..53c4d87 100644 --- a/test-org-link-edit.el +++ b/test-org-link-edit.el @@ -105,6 +105,14 @@ website is" "\[\[http://orgmode.org/\]\]website" (org-link-edit-forward-slurp-word 1) (buffer-string)))) + ;; Slurp word beginning with non-word, non-whitespace character. + (should + (string= + "\[\[http://orgmode.org/\]\[-website\]\]" + (org-test-with-temp-text + "\[\[http://orgmode.org/\]\]-website" + (org-link-edit-forward-slurp-word 1) + (buffer-string)))) ;; Slurp beyond the number of present words. (should-error (org-test-with-temp-text @@ -172,6 +180,14 @@ website is" "Here is<point>\[\[http://orgmode.org/\]\] Org's website" (org-link-edit-backward-slurp-word 1) (buffer-string)))) + ;; Slurp word ending with non-word, non-whitespace character. + (should + (string= + "Here \[\[http://orgmode.org/\]\[is-\]\] Org's website" + (org-test-with-temp-text + "Here is-<point>\[\[http://orgmode.org/\]\] Org's website" + (org-link-edit-backward-slurp-word 1) + (buffer-string)))) ;; Slurp beyond the number of present words. (should-error (org-test-with-temp-text |