Benno Schulenberg
6620acbff4
tweaks: use a faster comparison
2016-12-20 10:03:53 +01:00
Benno Schulenberg
1cb6619d6a
undo: there are just two forms of deletion: backspacing and deleting
...
A third method does not exist.
2016-12-19 21:18:43 +01:00
Benno Schulenberg
79a4bf81dc
tweaks: rename five variables, for uniformity with a few others
2016-12-19 19:58:15 +01:00
Benno Schulenberg
b77e6bd99d
general: simplify the detection of a SIGWINCH
...
There is no need for a counter, nor an old counter to compare it with.
2016-12-19 10:04:01 +01:00
Benno Schulenberg
2bcc6d7f66
tweaks: start searching at a better place
...
Taking the terminating newline into account, and that there is
at least one digit per number.
2016-12-19 09:57:31 +01:00
Benno Schulenberg
cd705a7c4c
tweaks: elide a counter and a comparison
...
For clarity and a tiny bit more speed. Also rename some variables.
2016-12-19 09:44:30 +01:00
Benno Schulenberg
ecd18c1694
history: search for the two position numbers from EOL instead of BOL
...
A filename might contain spaces, so we can't look for the numbers
(the second and third elements) starting from the head of the line
-- we have to start at the tail and work backward.
This fixes https://savannah.gnu.org/bugs/?49879 .
2016-12-18 19:57:33 +01:00
Benno Schulenberg
bc8a3a50a4
tweaks: rename three variables, for visibility
...
(I don't /see/ single-letter variables -- they are too small.)
2016-12-18 19:31:11 +01:00
Benno Schulenberg
9b90ec877a
tweaks: drive closer to the edge
2016-12-18 17:56:18 +01:00
Benno Schulenberg
8b483c10ba
history: don't bother encoding search items -- they cannot contain newlines
2016-12-18 17:55:39 +01:00
Benno Schulenberg
f915a28d30
tweaks: don't bother trimming the final newline from a position item
...
It is irrelevant -- the line is discarded as soon as the data has been
extracted.
2016-12-18 16:44:39 +01:00
Benno Schulenberg
cb3fc8892a
tweaks: rename a variable and rewrap two lines
2016-12-18 16:34:19 +01:00
Benno Schulenberg
06d9ee89e5
history: encode newlines in filenames as nulls
...
So they will not break a line in the positionlog file in two.
(Strangely, the reading in of such a log file already decodes
nulls back into newlines.)
This fixes https://savannah.gnu.org/bugs/?49877 .
2016-12-18 12:27:55 +01:00
Benno Schulenberg
0b0b812206
files: don't change embedded newlines into nulls in filenames
...
Because changing anything to a null effectively means to truncate
the name.
This fixes https://savannah.gnu.org/bugs/?49868
and fixes https://savannah.gnu.org/bugs/?49874 .
2016-12-18 11:37:57 +01:00
Benno Schulenberg
eafae5d417
screen: show an embedded newline in filenames as ^J instead of ^@
...
The byte 0x0A means 0x00 *only* when it is found in nano's internal
representation of a file's data, not when it occurs in a file name.
This fixes the second part of https://savannah.gnu.org/bugs/?49867 .
2016-12-18 11:13:50 +01:00
Benno Schulenberg
dfff78dffe
titlebar: always pass a pathname through display_string()
...
So that embedded control characters will be represented
instead of acted upon.
This fixes the first part of https://savannah.gnu.org/bugs/?49867 .
2016-12-18 11:13:49 +01:00
Benno Schulenberg
40acb8714c
oops: forgot to add and amend this to the previous commit
2016-12-18 11:12:04 +01:00
Benno Schulenberg
d7af590c6b
memory: don't bother making a snug fit for things that will be freed soon
...
Most full paths are needed only temporarily and will be freed within
milliseconds. Only 'full_operating_dir' and 'backup_dir' continue to
exist for the whole current session. Any partition, too, will soon be
unpartitioned, so the extra reallocation is just a waste of time.
2016-12-18 10:33:30 +01:00
Benno Schulenberg
8c7e4f5108
tweaks: rename a function to describe what it does
...
It doesn't align anything -- any allocations are already aligned to
whatever multiple is required -- it just shrinks the allocated space.
2016-12-18 10:30:35 +01:00
Benno Schulenberg
1144d38316
tweaks: don't bother reallocating a string of which there is only one
...
And which normally is just some ten or twenty characters long, and
never gets wildly overallocated.
2016-12-18 10:28:30 +01:00
Benno Schulenberg
0562d27b9c
tweaks: delete a bunch of unneeded asserts
...
Nano would crash straight afterward if any of these asserts would fail,
so they don't add anything. A few others are simply superfluous.
2016-12-15 21:15:32 +01:00
Benno Schulenberg
c5f49167ea
tweaks: write two pieces of conditionalized code like all others
...
Also trim or improve a few comments.
2016-12-15 19:48:09 +01:00
Benno Schulenberg
9765c2faa0
tweaks: elide a function that is called just once
2016-12-15 19:28:43 +01:00
Benno Schulenberg
85ebe971e2
chars: optimize for the most common case
...
That is: elide a second test from the most travelled path: a valid
character. This adds a second call of mblen() when parse_mbchar()
is called on a terminating zero, but that should never happen.
2016-12-15 17:44:18 +01:00
Benno Schulenberg
fc101a6ded
tweaks: rename a variable to be shorter and clearer
2016-12-15 15:50:07 +01:00
Benno Schulenberg
eb88ad980a
tweaks: use a slightly faster comparison
2016-12-15 13:15:46 +01:00
Benno Schulenberg
9fa95a3680
tweaks: put some prototypes in the proper order, and move a bit of code
2016-12-15 13:04:52 +01:00
Benno Schulenberg
d6cc2c40fe
tweaks: conditionalize a function that is not used in the tiny version
...
The fsfromline() function is mostly used by the undo functions, which
are not present in the tiny version. It is also used by the comment/
uncomment feature, but this feature cannot be enabled when --enable-tiny
is in effect.
2016-12-15 12:45:02 +01:00
Benno Schulenberg
1df4115013
version: properly mention --disable-wordcomp if it was used
2016-12-15 12:38:47 +01:00
Benno Schulenberg
ea9f62fc0f
tweaks: adjust some comments and indentation and ordering
2016-12-13 19:27:33 +01:00
Benno Schulenberg
a772194102
tweaks: rename two variables, for self-documentation
2016-12-13 17:13:38 +01:00
Benno Schulenberg
faf77fb1ec
tweaks: don't bother making the next line of an end point NULL
2016-12-13 17:12:52 +01:00
Benno Schulenberg
b0b24d9c3a
utils: slightly speed up the calculation of the size of a buffer
...
Achieve this by eliding two conditions from the inner loop,
which is possible because 'end' will never be NULL.
2016-12-13 17:11:08 +01:00
David Lawrence Ramsey
c9f743f676
tweaks: elide two unneeded variables from line numbering mode
...
Instead compute directly whether we're at a softwrapped part or not.
2016-12-13 17:01:39 +01:00
David Lawrence Ramsey
bd920b1f49
tweaks: adjust the type of two arguments
...
Convert digits() to take a ssize_t instead of an int, since it's
used on ssize_t line numbers. And properly use the long modifier
when displaying a line number.
Also, conditionalize the digits() prototype.
2016-12-13 13:06:20 +01:00
Benno Schulenberg
29e094cd21
po: update translations and regenerate POT file and PO files
2016-12-12 15:12:16 +01:00
Benno Schulenberg
7a8ae90dac
bump version numbers and add a news item for 2.7.2
2016-12-12 15:05:34 +01:00
Benno Schulenberg
13ec5d8ce9
spelling: correctly restore the selected region
...
An added magic linefeed should be removed again /before/ restoring
the x position, as the latter needs to be calculated from the real
last line of the region.
This fixes https://savannah.gnu.org/bugs/?49817 .
Reported-by: Mike Frysinger <vapier@gentoo.org>
2016-12-11 09:55:38 +01:00
Benno Schulenberg
30591c5e01
tweaks: use a while loop when the end point is not known in advance
...
It is easier to see the order of steps and what the terminating
condition is.
2016-12-10 21:18:10 +01:00
Benno Schulenberg
3f8e30efb1
tweaks: delete some obscuring debugging stuff
...
When wanting to debug something, it is far more useful
to temporarily insert lines like:
statusline(ALERT, "name = %i", variable);
It provides instant feedback, and it slows things down,
so you can kind of see what happens.
2016-12-10 21:01:07 +01:00
Benno Schulenberg
e9fde7d7dc
mouse: use the correct screen width for calculating the cursor position
...
When there are line numbers, the effective available screen width is
smaller than COLS: editwincols.
This fixes https://savannah.gnu.org/bugs/?49821 .
2016-12-10 20:06:59 +01:00
Benno Schulenberg
fd3423f79a
syntax: give the statistics part of a git patch a different color
...
Also, be more selective when coloring a git diff line. And color
an svn index line too.
2016-12-10 17:53:53 +01:00
Benno Schulenberg
a4044a7e5d
tweaks: remove some cluttering conditional compilation
2016-12-09 13:32:15 +01:00
Benno Schulenberg
2fa93ae999
tweaks: rename two variables to make more sense
2016-12-09 12:47:00 +01:00
David Lawrence Ramsey
c8c6340ce8
tweaks: conditionalize a bit of softwrap code
...
This addresses https://savannah.gnu.org/bugs/?49803 .
2016-12-09 12:34:56 +01:00
David Lawrence Ramsey
6263416355
moving: always account for the margin when in line numbering mode
...
Like do_down() does already, do_pageup() and do_right() should use
editwincols instead of COLS.
This addresses https://savannah.gnu.org/bugs/?49796 .
2016-12-09 12:23:23 +01:00
David Lawrence Ramsey
84d6f1a5b6
tweaks: adjust the type of four lockfile variables
...
The functions read() and fwrite() take size_t, not ssize_t.
And line numbers in the file should be displayed as a long type instead
of an int, since the effective type of ssize_t is not int, but long.
2016-12-09 10:05:33 +01:00
Benno Schulenberg
ecccb8d027
tweaks: correct the wording of a string
2016-12-07 21:06:05 +01:00
Benno Schulenberg
173bbe11ef
tweaks: add a few translator hints
2016-12-07 21:05:41 +01:00
Benno Schulenberg
7531b71fa1
docs: note Sumedh as the author of the word-completion feature
2016-12-07 21:05:23 +01:00