[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/rust-mode f2d709e 141/486: Make fill-region work correctly
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/rust-mode f2d709e 141/486: Make fill-region work correctly |
Date: |
Sat, 7 Aug 2021 09:25:06 -0400 (EDT) |
branch: elpa/rust-mode
commit f2d709e55942c5c762efd315357b805ece57abfc
Author: Micah Chalmer <micah@micahchalmer.net>
Commit: Micah Chalmer <micah@micahchalmer.net>
Make fill-region work correctly
---
rust-mode-tests.el | 17 +++++++++++++----
rust-mode.el | 3 ++-
2 files changed, 15 insertions(+), 5 deletions(-)
diff --git a/rust-mode-tests.el b/rust-mode-tests.el
index 3510d69..b94f041 100644
--- a/rust-mode-tests.el
+++ b/rust-mode-tests.el
@@ -42,9 +42,9 @@
original point-pos manip-func expected (buffer-string)))))
(defun test-fill-paragraph (unfilled expected &optional start-pos end-pos)
- "We're going to run through many scenarios here--the point should be able to
be anywhere from the start-pos (defaults to 1) through end-pos (defaults to the
length of what was passed in) and (fill-paragraph) should return the same
result.
+ "We're going to run through many scenarios here--the point should be able to
be anywhere from the start-pos (defaults to 1) through end-pos (defaults to the
length of what was passed in) and (fill-paragraph) should return the same
result. It should also work with fill-region from start-pos to end-pos.
-Also, the result should be the same regardless of whether the code is at the
beginning or end of the file. (If you're not careful, that can make a
difference.) So we test each position given above with the passed code at the
beginning, the end, neither and both. So we do this a total of (end-pos -
start-pos)*4 times. Oy."
+Also, the result should be the same regardless of whether the code is at the
beginning or end of the file. (If you're not careful, that can make a
difference.) So we test each position given above with the passed code at the
beginning, the end, neither and both. So we do this a total of 1 + (end-pos -
start-pos)*4 times. Oy."
(let* ((start-pos (or start-pos 1))
(end-pos (or end-pos (length unfilled)))
(padding "\n \n")
@@ -69,7 +69,16 @@ Also, the result should be the same regardless of whether
the code is at the beg
(lambda ()
(let ((fill-column rust-test-fill-column))
(fill-paragraph)))
- (concat padding-beginning expected
padding-end)))))))
+ (concat padding-beginning expected padding-end)))))
+ ;; In addition to all the fill-paragraph tests, check that it works using
fill-region
+ (rust-test-manip-code
+ unfilled
+ start-pos
+ (lambda ()
+ (let ((fill-column rust-test-fill-column))
+ (fill-region start-pos end-pos)))
+ expected)
+ ))
(ert-deftest fill-paragraph-top-level-multi-line-style-doc-comment-second-line
()
(test-fill-paragraph
@@ -223,7 +232,7 @@ fn bar() { }"
/// This is my comment. This is
/// more of my comment. This is
/// even more.
-fn bar() { }" 14 67))
+fn bar() { }" 14 85))
(defun test-auto-fill (initial position inserted expected)
(rust-test-manip-code
diff --git a/rust-mode.el b/rust-mode.el
index 9a6eb5f..77fa349 100644
--- a/rust-mode.el
+++ b/rust-mode.el
@@ -508,7 +508,7 @@
(funcall body)))
(defun rust-find-fill-prefix ()
- (rust-with-comment-fill-prefix (lambda () fill-prefix)))
+ (rust-in-comment-paragraph (lambda () (rust-with-comment-fill-prefix (lambda
() fill-prefix)))))
(defun rust-fill-paragraph (&rest args)
"Special wrapping for `fill-paragraph' to handle multi-line comments with a
* prefix on each line."
@@ -704,6 +704,7 @@ This is written mainly to be used as
`end-of-defun-function' for Rust."
(setq-local fill-paragraph-function 'rust-fill-paragraph)
(setq-local fill-forward-paragraph-function 'rust-fill-forward-paragraph)
(setq-local adaptive-fill-function 'rust-find-fill-prefix)
+ (setq-local adaptive-fill-first-line-regexp "")
(setq-local comment-multi-line t)
(setq-local comment-line-break-function 'rust-comment-indent-new-line)
(setq-local imenu-generic-expression rust-imenu-generic-expression)
- [nongnu] elpa/rust-mode a653c6b 123/486: Highlight raw strings correctly, (continued)
- [nongnu] elpa/rust-mode a653c6b 123/486: Highlight raw strings correctly, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode f3e8f20 119/486: Re-enable emacs23 in Travis, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 5b73df1 133/486: Fix typo/missing lines in comment in test, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 3a0a727 129/486: Merge pull request #35 from MicahChalmer/fix-raw-string-bugs, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode c7413e6 130/486: Don't set syntax-begin-function, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode b15b0eb 140/486: Merge pull request #45 from MicahChalmer/backslash-and-double-quote-char-literals, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 52febe9 137/486: Add a few more tests for indents inside strings, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 766bd82 139/486: Parse '\\' and '\"' as char literals, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode d6b1739 136/486: Fix spurious errors in emacs 23, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 3995d33 152/486: Add regression test for PR #52., ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode f2d709e 141/486: Make fill-region work correctly,
ELPA Syncer <=
- [nongnu] elpa/rust-mode 8a8bd58 159/486: Merge pull request #58 from lunaryorn/patch-1, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 2f0c84f 150/486: rust-align-to-method-chain: Jump over symbols, not words, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 2e800ee 151/486: workaround emacs 23 issues., ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 2be934c 147/486: Merge pull request #55 from kriben/master, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 4e938b1 164/486: Merge pull request #63 from krig/panic-compilation-warning, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode f17e11a 162/486: Match panics during build as compilation warnings, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode b4ff35c 168/486: remove rust-mode-character-literal-syntax-table, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 5ed4675 171/486: Merge pull request #73 from MicahChalmer/raw-string-multiline-edit-fix, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 9d773b4 170/486: Fix multi-line raw strings when editing, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 6bc1540 186/486: Support nested block comments, ELPA Syncer, 2021/08/07