- 17 Feb, 2017 2 commits
-
-
Benno Schulenberg authored
-
David Lawrence Ramsey authored
When in softwrap mode, no "$" continuation characters are displayed, so the code that reserves space for them should be skipped then. This fixes https://savannah.gnu.org/bugs/?50335.
-
- 16 Feb, 2017 3 commits
-
-
Benno Schulenberg authored
-
Benno Schulenberg authored
As a small service to the user, reject empty regex strings, because an entirely empty regex simply doesn't make sense. Inspired-by:
Elia Geretto <elia.f.geretto@gmail.com>
-
Benno Schulenberg authored
When the marked region covers only a single line (or a part of it), its new endpoint is not simply the length of the last line of the spell-checked text, but instead the old endpoint plus the /change/ in length. This fixes https://savannah.gnu.org/bugs/?50316 . Reported-by:
David Lawrence Ramsey <pooka109@gmail.com>
-
- 14 Feb, 2017 1 commit
-
-
Benno Schulenberg authored
The inversion of the logic in commit a6605dce was incomplete -- oops. This fixes https://savannah.gnu.org/bugs/?50306.
-
- 13 Feb, 2017 10 commits
-
-
David Lawrence Ramsey authored
-
David Lawrence Ramsey authored
The previous code only directly refreshed the screen when the margin changed due to toggling line numbering on. When the margin changed due to toggling it off, it would indirectly refresh via do_toggle().
-
Benno Schulenberg authored
-
Benno Schulenberg authored
-
Benno Schulenberg authored
When replacements are made, nothing needs to be reset any more (it was done insufficiently anyway). Just make sure the screen is refreshed when all is done -- this may be superfluous when doing interactive replacements, but not when replacing all.
-
Benno Schulenberg authored
-
Benno Schulenberg authored
-
Benno Schulenberg authored
-
Benno Schulenberg authored
The lines that come after an unpaired start have to know about this. This fixes https://savannah.gnu.org/bugs/?50293.
-
Benno Schulenberg authored
When coloring a line, look only at the multidata of the preceding line, and based on that determine what to seek in the current line. This fixes https://savannah.gnu.org/bugs/?50292.
-
- 12 Feb, 2017 4 commits
-
-
Benno Schulenberg authored
When painting a line, the multidata of the line /before/ it is valid in most cases: it was determined just a moment ago. And it tells us all we need to know: whether there is an unpaired start match before the current line or not. The only exception is when painting the first line of the screen: the multidata of the line before it might be stale. So for the first screen line we will always have to do some backtracking. But that is left for later. This fixes https://savannah.gnu.org/bugs/?50121.
-
Benno Schulenberg authored
Also, add two cross references: one in words, and one with a link.
-
David Lawrence Ramsey authored
Also, remove the special "+line,column" argument from among the options, since it isn't an option -- put it in a separate paragraph instead.
-
David Lawrence Ramsey authored
These two functions unnecessarily copy make_new_node(); use that instead.
-
- 10 Feb, 2017 3 commits
-
-
Benno Schulenberg authored
If we're somewhere deep into the file and do a spell check, and the first misspelled word happens to be right there, onscreen already, then this word does not need to be centered -- it /should/ not be centered. We should scroll only when necessary.
-
Benno Schulenberg authored
-
Benno Schulenberg authored
Just like when spell-checking, there is no need to wrap around when doing replacements in a region, because a region cannot straddle the buffer's edges. This is the proper fix for https://savannah.gnu.org/bugs/?50158, and fixes https://savannah.gnu.org/bugs/?50273.
-
- 05 Feb, 2017 6 commits
-
-
David Lawrence Ramsey authored
Scrolling works on rows, not on lines. Accordingly, rename the nlines variable to nrows. And rows should be of the type int, not ssize_t.
-
David Lawrence Ramsey authored
-
David Lawrence Ramsey authored
Make it clearer we're comparing the number of rows, not string lengths.
-
David Lawrence Ramsey authored
-
David Lawrence Ramsey authored
-
David Lawrence Ramsey authored
-
- 26 Jan, 2017 5 commits
-
-
Benno Schulenberg authored
After the changes to the search routine, it is no longer necessary to take one step back before starting a replacement session. This fixes https://savannah.gnu.org/bugs/?50147.
-
Benno Schulenberg authored
Even when a match falls within the marked region, this does not mean that it is a true match when already the whole file has been searched, because then this is the second time we find this match. This fixes https://savannah.gnu.org/bugs/?50158.
-
Benno Schulenberg authored
The spell fixer does not provide a beginning line, so the search routine should then not try to refer to any data of this line. Also, since the changes to the search routine there is no need any more to retreat one step before starting to search for a misspelled word. This fixes https://savannah.gnu.org/bugs/?50159.
-
Benno Schulenberg authored
When the user answered No to a replacement prompt, skip the match at the current position, so we don't stay stuck there. Also, when replacing in the backward direction, or the match is of length zero, skip the match at the current position, to not get stuck. This fixes https://savannah.gnu.org/bugs/?50126 . Reported-by:
David Lawrence Ramsey <pooka109@gmail.com> This also fixes https://savannah.gnu.org/bugs/?50137, and refixes https://savannah.gnu.org/bugs/?48635, and fixes https://savannah.gnu.org/bugs/?50144.
-
Benno Schulenberg authored
That is: remove the special treatment of BOW anchors, and instead make regexes match against the whole line instead of against an artificially shortened one, because the latter method creates ghost matches: matches at the starting point of the search that aren't really matches when seen in the context of the whole line. This fixes https://savannah.gnu.org/bugs/?50030.
-
- 25 Jan, 2017 1 commit
-
-
Benno Schulenberg authored
When the tail of a match falls outside of the marked region, it is in fact not a match and should not be replaced. This fixes https://savannah.gnu.org/bugs/?50136.
-
- 24 Jan, 2017 1 commit
-
-
Benno Schulenberg authored
When a replacement happens right at where the cursor sits, the position of the cursor should not be adjusted, because the real cursor position is between the current character and the preceding one: the place where the cursor is shown is in fact right /after/ the insertion point. This fixes https://savannah.gnu.org/bugs/?50134, and fixes https://savannah.gnu.org/bugs/?50135.
-
- 22 Jan, 2017 3 commits
-
-
Benno Schulenberg authored
-
Benno Schulenberg authored
-
Benno Schulenberg authored
-
- 21 Jan, 2017 1 commit
-
-
Benno Schulenberg authored
There is no need to compute the line length: just avoid overstepping the terminating NUL byte when being forced to advance the index.
-