Benno Schulenberg
2428c5cbe6
tweaks: strip a parameter that is equivalent to 'openfile' for both calls
2020-03-08 12:54:47 +01:00
Benno Schulenberg
01bc0148c0
tweaks: strip a parameter that is TRUE for both calls
...
The parameter has been redundant since version 4.0, commit d54840c1
,
when the last call with FALSE was removed.
2020-03-08 12:48:41 +01:00
Benno Schulenberg
a92511ceaf
tweaks: move another function to where it is used
2020-03-06 18:52:42 +01:00
Benno Schulenberg
19517fc51e
tweaks: elide a parameter, and rename a variable
2020-03-06 17:06:14 +01:00
Benno Schulenberg
71c35d3ca2
tweaks: move a function to where it is used
2020-03-06 17:00:31 +01:00
Benno Schulenberg
38af812a82
tweaks: reshuffle the setting of the starting point of a cut
2020-03-06 16:57:22 +01:00
Benno Schulenberg
622111613f
tweaks: elide two variables and their two assignments
...
Also reshuffle two declarations, and confine the swapping of
the endpoints of a backward-marked region to a smaller scope.
2020-03-06 12:49:06 +01:00
Benno Schulenberg
21ef05058c
tweaks: add a COUPLE_END undo item a bit later, instead of updating it
2020-03-06 12:30:24 +01:00
Benno Schulenberg
abcdd6605c
tweaks: reshuffle a condition, for compacter code
2020-03-05 19:37:09 +01:00
Benno Schulenberg
f2d89cb3bc
justify: restore a region properly when it was marked backwards
...
This fixes https://savannah.gnu.org/bugs/?57960 .
Bug existed since version 4.8, commit e01651cd
.
2020-03-05 18:46:37 +01:00
Benno Schulenberg
2d05ce37c6
justify: do not crash when the user attempts to justify an empty region
...
This fixes https://savannah.gnu.org/bugs/?57959 .
Bug existed since version 4.0, since the justifying
of a marked region was introduced.
2020-03-05 16:57:16 +01:00
Benno Schulenberg
2bc5c1987c
tweaks: factor out a three-line condition into a separate function
...
For clarity.
2020-03-05 16:09:56 +01:00
Benno Schulenberg
e39e2ddf52
tweaks: add a supporting variable, in order to condense some statements
2020-03-05 16:07:52 +01:00
Benno Schulenberg
ac61254581
tweaks: invert the logic of a symbol, to make more sense
...
Giving a name to the uncommon case is more fitting.
It also avoids a negation and allows to elide a condition.
2020-03-05 15:12:08 +01:00
Benno Schulenberg
9e182fde66
tweaks: swap the use of 'head' and 'tail' for CUT and PASTE undo items
...
Now the 'head' endpoint is closer to the top of the buffer, and the
'tail' endpoint closer to the bottom. That makes more sense.
2020-03-05 14:52:02 +01:00
Benno Schulenberg
70d59ffe16
tweaks: remove a redundant assignment
...
Consecutive additions all happen on the same line. When automatic
hard-wrapping occurs, the ADD item is grouped together with an ENTER
item, and subsequent additions go into a new ADD item.
2020-03-05 13:32:20 +01:00
Benno Schulenberg
fb4bcd8cfd
undo: store the cursor row, for redoing filtering & justification better
...
This fixes https://savannah.gnu.org/bugs/?57958 .
2020-03-05 12:34:55 +01:00
Benno Schulenberg
2288abcd49
tweaks: use the variable that suits 'END' better
2020-03-05 12:34:17 +01:00
Benno Schulenberg
42fde1cbc6
tweaks: improve four comments, and condense two fragments of code
2020-03-04 16:45:26 +01:00
Benno Schulenberg
d675a549de
rcfile: don't store a coloring rule before it is complete
...
This really fixes https://savannah.gnu.org/bugs/?57950 .
2020-03-04 16:08:34 +01:00
Benno Schulenberg
6bab8d19c6
tweaks: adjust the indentation after the previous change
...
And regroup things a bit.
2020-03-03 19:46:46 +01:00
Benno Schulenberg
365058c48f
rcfile: when a start= is not matched with an end=, abandon the whole rule
...
This fixes https://savannah.gnu.org/bugs/?57950 .
Bug existed since before version 2.2.0.
2020-03-03 19:42:40 +01:00
Benno Schulenberg
5eb7145939
rcfile: do not allow a regex for name, header, or magic to be empty
...
If the user really wants to match anything, ".*" should be used.
(This also stops nano looking at the rest of the line as soon as an
empty regular expression is encountered. This may seem like poorer
feedback than before, but... I think that multiple error messages
per line are more confusing than helpful.)
This fixes https://savannah.gnu.org/bugs/?57942 .
Bug existed since before version 2.2.0.
2020-03-03 19:21:08 +01:00
Benno Schulenberg
4dab491df2
tweaks: improve three comments, and reshuffle two declarations
2020-03-03 16:42:40 +01:00
Benno Schulenberg
9f92341c84
tweaks: check for a starting quote in one place instead of three
2020-03-03 16:31:28 +01:00
Benno Schulenberg
3357712928
tweaks: remove two superfluous conditions
...
The 'ptr' variable can never be NULL in those places -- whenever it
becomes NULL, the routine returns immediately.
2020-03-03 12:08:09 +01:00
Benno Schulenberg
0e59c12af4
tweaks: rename a function, and split a variable into two separate ones
2020-03-03 11:27:37 +01:00
Benno Schulenberg
aab0d43f47
tweaks: rename a function, to be more fitting, and improve some comments
2020-03-03 11:16:51 +01:00
Benno Schulenberg
9cc32c920b
rcfile: when finding a mistake, skip the rest of the line
2020-03-03 10:55:23 +01:00
Benno Schulenberg
72ad00f9d0
tweaks: change an integer to a short, and reshuffle it for better packing
...
A short allows for more than 32 thousand values, and the maximum number
of multiline regexes in any of the current syntaxes is... just four.
Reshuffle it to the beginning also because it is used the most often.
2020-03-02 19:50:08 +01:00
Benno Schulenberg
89217f20af
tweaks: rename two symbols, to be more precise
2020-03-02 17:16:07 +01:00
Benno Schulenberg
477a9b33b4
files: when piping, always pipe whatever was cut to the external command
...
Either the marked region was cut (even when zero characters) or
the entire contents of the buffer were cut. In both cases this
is what needs to be piped to the command. That is: the contents
of the cutbuffer.
This fixes https://savannah.gnu.org/bugs/?57931 .
Bug existed since version 2.9.8, commit f304b9ae
,
when piping text to an external command was introduced.
2020-03-02 13:36:56 +01:00
Benno Schulenberg
5c6fe50487
tweaks: rename a variable, to be a bit clearer
2020-03-01 19:45:02 +01:00
Benno Schulenberg
6c34ae5804
files: don't check uninitialized memory when writing new file [valgrind]
...
This fixes https://savannah.gnu.org/bugs/?57934 .
Bug existed since version 4.3, commit e8e30e51
.
2020-03-01 19:22:35 +01:00
Benno Schulenberg
4409b275fc
tweaks: avoid a complaint about uninitialized memory [valgrind]
...
This addresses https://savannah.gnu.org/bugs/?57932 .
2020-03-01 17:08:50 +01:00
Benno Schulenberg
8848ac5a9b
undo: do not try to copy a cutbuffer that is NULL
...
Allow the creation of an empty CUT undo item (because the result of a
filtering operation may be empty), but then don't crash when undoing
such an empty CUT.
This fixes https://savannah.gnu.org/bugs/?57929 .
Bug existed since version 2.9.8, when filtering was introduced.
2020-03-01 12:59:54 +01:00
Benno Schulenberg
c055e629c7
tweaks: copy and store a deleted character in a conciser manner
2020-02-28 19:24:31 +01:00
Benno Schulenberg
e6f26464d7
tweaks: add calls of die() for five theoretical programming mistakes
2020-02-28 19:15:23 +01:00
Benno Schulenberg
a0aeeba075
tweaks: remove two redundant case labels
...
The add_undo() and update_undo() functions are never called with
JOIN as argument, so there is no need to have a case label for it.
2020-02-28 19:05:09 +01:00
Benno Schulenberg
c640a55b1c
tweaks: frob a statement, rewrap two lines, and remove a pair of braces
2020-02-28 18:59:04 +01:00
Benno Schulenberg
7d0b7e47c1
undo: use the correct original fusion point when unjoining two lines
...
When a <Backspace> did the join, 'head' and 'tail' are not the same.
This fixes https://savannah.gnu.org/bugs/?57916 .
Bug existed since commit 7cf08b93
from yesterday.
2020-02-28 17:09:03 +01:00
Benno Schulenberg
132ed5c8f0
tweaks: instead of swapping the end points later, assign them correctly
...
(This also makes it clear that the naming of 'head' and 'tail'
is the wrong way around for CUT too.)
2020-02-28 15:25:23 +01:00
Benno Schulenberg
bd88b8b5a6
undo: do not mark the buffer as modified when pasting back nothing
...
This completes the fix for https://savannah.gnu.org/bugs/?57915 .
2020-02-28 13:40:35 +01:00
Benno Schulenberg
0568f7a2b6
undo: do not try to paste back an empty cutbuffer
...
Trying to do so would dereference a NULL pointer in copy_node().
This fixes https://savannah.gnu.org/bugs/?57915 .
Bug existed since before version 2.2.0.
2020-02-28 13:40:06 +01:00
Benno Schulenberg
1a28b08694
tweaks: frob two statements, condense another, and add a comment
...
Also, remove two superfluous closings of file descriptors. The second
one has most likely already been closed by send_data(), by closing the
tube, and the first one will be closed by exiting from the process.
2020-02-28 12:41:27 +01:00
Benno Schulenberg
3b3a6b12a7
tweaks: remove two superfluous checks
...
The single check when creating any CUT undo item is enough.
2020-02-28 10:28:23 +01:00
Benno Schulenberg
50213eee81
tweaks: reorder a case item, to have SPLIT_BEGIN always before SPLIT_END
...
Also, avoid two superfluous assignments of a message, as they get
overwritten immediately by other ones, and later with the same.
Furthermore, remove two pointless placements of the cursor. Any
necessary placements are handled by the actual adding of data and
the breaking of lines in the ADD and ENTER items.
2020-02-27 16:38:52 +01:00
Benno Schulenberg
7cd2a7da7c
tweaks: remove a superfluous assignment, and reshuffle a call
2020-02-27 15:09:36 +01:00
Benno Schulenberg
4f67f364bc
tweaks: when undoing an addition or redoing a deletion, do not reallocate
...
Especially when undoing an addition, reallocating the line data is a
waste of time, because most likely other text will be added instead.
(This also removes a coding error in the redo code for a deletion:
it allocated too many bytes for the new line data: twice the amount
of the deletion too much.)
2020-02-27 14:16:49 +01:00
Benno Schulenberg
7cf08b93ff
tweaks: don't bother reallocating the line data when undoing a line join
2020-02-27 13:51:56 +01:00