diff options
| -rw-r--r-- | helpful.el | 10 | ||||
| -rw-r--r-- | test/helpful-unit-test.el | 10 |
2 files changed, 20 insertions, 0 deletions
@@ -964,6 +964,16 @@ unescaping too." (while (not (eobp)) (cond ((looking-at + (rx "\"")) + (looking-at + ;; Text of the form "foo" + (rx "\"")) + ;; Don't do anything with literal strings. + ;; Step over opening doublequote. + (forward-char 1) + ;; Move past closing doublequote. + (search-forward "\"")) + ((looking-at ;; Text of the form \=X (rx "\\=")) ;; Remove the escaping, then step over the escaped char. diff --git a/test/helpful-unit-test.el b/test/helpful-unit-test.el index 4f2379b..6d1e42d 100644 --- a/test/helpful-unit-test.el +++ b/test/helpful-unit-test.el @@ -65,6 +65,16 @@ (should (not (s-contains-p "\\=" formatted-docstring))))) +(ert-deftest helpful--docstring-strings () + "Double-quoted strings should be treated literally." + (let* ((formatted-docstring + (helpful--format-docstring + "hello \"\\[foo]\" world"))) + ;; This test will fail in a local Emacs instance that has modified + ;; minibuffer keybindings. + (should + (string-equal formatted-docstring "hello \"\\[foo]\" world")))) + (ert-deftest helpful--docstring-keymap () "Handle keymap references in docstrings." (let* ((formatted-docstring |
