Benno Schulenberg
091dd71f08
tweaks: remove a superfluous case -- there can never be four digits
2018-01-11 10:31:23 +01:00
Benno Schulenberg
837475519b
input: fully reset state when a three-digit character code is cut short
...
There shouldn't be two separate variables (but with the same name) that
count the number of digits seen. Fuse them into a single static var.
This fixes https://savannah.gnu.org/bugs/?52863 .
2018-01-11 10:17:51 +01:00
Benno Schulenberg
31540e3e7e
tweaks: remove a superfluous check, as we insert always one code
2018-01-10 21:32:32 +01:00
Benno Schulenberg
ae3b8579fa
tweaks: condense a condition and a comment, and reshuffle a line
2018-01-10 21:25:19 +01:00
Benno Schulenberg
e1199cd94d
tweaks: elide a tiny intermediate buffer, and rename two variables
...
Use the same method as in parse_verbatim_kbinput() for Unicode input.
2018-01-10 20:33:12 +01:00
Benno Schulenberg
45d2458b47
tweaks: don't bother freeing the key buffer, just reallocate it
2018-01-10 19:25:23 +01:00
Benno Schulenberg
4c505e5127
tweaks: rename a function, for aptness, and drop a superfluous check
2018-01-10 17:40:07 +01:00
Benno Schulenberg
e3b13ae124
tweaks: reshuffle a couple of lines
2018-01-09 16:52:42 +01:00
Benno Schulenberg
e5440b390e
replacing: don't skip the first character of a backwards-marked region
...
Also, when replacing forwards, do not first skip the occurrence at the
cursor and then replace it at the end of the cycle, but begin with it,
as one would expect.
This fixes https://savannah.gnu.org/bugs/?52789
and fixes https://savannah.gnu.org/bugs/?52791 .
2018-01-09 16:52:42 +01:00
Benno Schulenberg
0bb6c0234f
tweaks: condense the conditional compilation of shortcut reassignments
...
These three functions are needed only when both linter and speller
are available.
2018-01-09 13:31:58 +01:00
Benno Schulenberg
7947d9d2a5
build: fix compilation when configured with --enable(tiny,color,nanorc}
...
This fixes https://savannah.gnu.org/bugs/?52834 .
Reported-by: <akiko@mailbox.org>
2018-01-09 13:30:25 +01:00
Benno Schulenberg
c9ccb39752
tweaks: fully include Savefile and Wherewas in the tiny version
...
If help is enabled, those functions should be described too,
and if nanorc is enabled, they should both be rebindable.
2018-01-09 11:49:21 +01:00
Benno Schulenberg
ada78dc89d
build: fix compilation with --enable-tiny --enable-justify
2018-01-08 19:12:41 +01:00
Benno Schulenberg
17429d7f38
tweaks: fix some whitespace errors, and convert alignment tabs to spaces
2017-12-29 21:35:14 +01:00
Benno Schulenberg
87206c0607
tweaks: convert the indentation to use only tabs
...
Each leading tab is converted to two tabs, and any leading four spaces
is converted to one tab. The intended tab size (for keeping most lines
within 80 columns) is now four.
2017-12-29 20:06:50 +01:00
Benno Schulenberg
b574f73e60
tweaks: add a separate function that actually wipes the status bar
2017-12-29 17:40:41 +01:00
Benno Schulenberg
eac90c3eff
prompt: blank the bar when a "continue?" is answered with No or ^C
...
This fixes https://savannah.gnu.org/bugs/?52755 .
Reported-by: Brand Huntsman <alpha@qzx.com>
2017-12-29 17:01:15 +01:00
Benno Schulenberg
440a128d25
indenting: keep affecting last line of marked region if it was at first
...
When unindenting/uncommenting affected the bottom line of the marked
region, keep affecting this line also during subsequent consecutive
indenting/commenting.
This fixes https://savannah.gnu.org/bugs/?52718 .
2017-12-29 16:52:17 +01:00
Benno Schulenberg
12073001c2
tweaks: condense, reword, and rewrap a bunch of comments
2017-12-26 22:14:25 +01:00
Benno Schulenberg
4c20135749
help: swap the order of the Complete and Comment functions
...
So that Commenting comes closer to the somewhat related Indenting
and Unindenting functions.
2017-12-26 21:36:29 +01:00
Benno Schulenberg
f9ebf038e0
tweaks: slightly rename four functions, for aptness and variety
2017-12-26 14:15:49 +01:00
David Lawrence Ramsey
62ebd93579
tweaks: use printf's z modifier for (s)size_t, instead of casting
2017-12-26 14:11:18 +01:00
Benno Schulenberg
a10fdc3fb1
help: show that "Tab" will indent, just like "Sh-Tab" will unindent
...
Also, make the descriptions for indenting/unindenting more precise.
2017-12-26 13:46:34 +01:00
Benno Schulenberg
8581e702d6
tweaks: move some frequently-used keystrokes to the top of the list
...
So they will be found quicker.
Also fold two assignments into one.
2017-12-26 13:31:50 +01:00
Benno Schulenberg
23d66949e1
tweaks: frob four comments, and rewrap two lines
2017-12-24 11:53:38 +01:00
Benno Schulenberg
184bb11fd9
tweaks: factor out a piece of common code
2017-12-24 11:25:10 +01:00
Benno Schulenberg
a70db34fc9
tweaks: remove two irrelevant conditions
...
They were mistakenly added by changeset fb85c055, four commits ago.
2017-12-24 11:10:41 +01:00
Benno Schulenberg
fbde1b2d71
tweaks: reshuffle another bit of code, for conciseness
2017-12-24 10:56:16 +01:00
Benno Schulenberg
c22fef18e4
tweaks: reshuffle a bit of common code, moving it to an existing function
2017-12-23 21:50:18 +01:00
Benno Schulenberg
ee5b250b66
indenting: don't exclude last line of region when region is empty
...
This fixes https://savannah.gnu.org/bugs/?52717 .
2017-12-23 11:42:25 +01:00
Benno Schulenberg
fb85c05594
text: keep cursor at left edge when it IS there when indenting/commenting
...
Suggested-by: Brand Huntsman <alpha@qzx.com>
2017-12-21 19:47:22 +01:00
Benno Schulenberg
25b1114e03
tweaks: elide two parameters from the get_region() function
2017-12-21 19:47:22 +01:00
Benno Schulenberg
4b8a387529
text: let indenting/commenting skip the last line if its x is zero
...
If the marked region ends at the start of a line, do not include that
line in the indenting/undenting or commenting/uncommenting. This is
closer to what the eye would expect.
2017-12-21 19:47:22 +01:00
Benno Schulenberg
df41114e0e
tweaks: drop some old debugging code plus a superfluous comment
2017-12-21 19:45:18 +01:00
Benno Schulenberg
dc3618a127
text: set and reset the Modified state correctly when undoing/redoing
...
Unset the "Modified" marker only at the point where the file was last
saved -- if there is such a point, because it can be missing when the
undo stack was discarded.
This fixes https://savannah.gnu.org/bugs/?52689 .
Reported-by: Liu Hao <lh_mouse@126.com>
Original-idea-by: Brand Huntsman <alpha@qzx.com>
2017-12-19 19:22:52 +01:00
Benno Schulenberg
31fe0753e3
tweaks: limit the resetting of "Modified" to writing a full buffer
...
When doing that, there is no need to save and restore the Modified
state when writing a marked region.
2017-12-19 17:57:49 +01:00
Benno Schulenberg
7ad5afb935
tweaks: remove some unneeded parentheses, and shorten two function calls
2017-12-17 20:32:17 +01:00
Benno Schulenberg
e1b0f2b275
display: ensure that cursor is visible when compiled with --with-slang
...
This fixes https://savannah.gnu.org/bugs/?52651 .
Reported-by: David Lawrence Ramsey <pooka109@gmail.com>
2017-12-17 16:34:02 +01:00
Benno Schulenberg
0e0fb452a3
input: optimize a bit for non-shortcut keys, as they are most frequent
2017-12-17 12:49:04 +01:00
David Lawrence Ramsey
f66432e999
input: support backtab when Slang and/or --rebindkeypad is used
...
The escape sequence "Esc [ Z" is a backtab on most supported terminals,
so make sure convert_sequence() treats it as such.
2017-12-17 12:11:35 +01:00
Benno Schulenberg
08e9d30fa2
tweaks: condense some debugging code, and rewrap a line
2017-12-16 21:50:10 +01:00
Benno Schulenberg
d2270e514b
input: make <Ctrl+Shift+Arrow> work also when using --rebindkeypad
...
The function get_keycode() should never return zero -- it should
return either the code from ncurses or the given fallback code.
This fixes https://savannah.gnu.org/bugs/?52682 .
2017-12-16 21:09:01 +01:00
Benno Schulenberg
031305c205
tweaks: strip some debugging stuff, and condense a bit of code
2017-12-16 19:56:15 +01:00
Benno Schulenberg
e2843ede7e
text: let a Shift-selection persist when indenting and commenting
...
To achieve that, fake the Shift key being held when indenting/
unindenting/commenting/uncommenting.
Reported-by: Brand Huntsman <alpha@qzx.com>
2017-12-12 21:09:28 +01:00
Benno Schulenberg
09958ebdff
input: allow using <Tab> and <Shift+Tab> to (un)indent selected region
...
When the mark is on, instead of letting a <Tab> simply insert a Tab
character at the cursor position, let it indent the marked region.
Original-idea-by: Chris Allegretta <chrisa@asty.org>
2017-12-12 20:37:41 +01:00
Benno Schulenberg
a95c6c5fe8
tweaks: condense or rewrap a bunch of repetitious comments
2017-12-11 20:02:43 +01:00
Benno Schulenberg
bcd187d7d6
tweaks: rewrap some lines and some comments, and trim two others
2017-12-10 20:03:51 +01:00
Benno Schulenberg
03783a7d1b
tweaks: trim another placing of a terminating nul byte
...
Make both preceding character moves include the terminating byte.
2017-12-10 19:56:36 +01:00
Benno Schulenberg
f2fb8c01f4
tweaks: remove a superfluous placing of a terminating nul byte
...
The character move has already copied the terminating byte.
And a reallocation to save just one character of memory is
a waste of time.
2017-12-10 19:49:57 +01:00
Benno Schulenberg
eb937f81fa
text: allow unindenting when not all lines are indented
...
And also allow it when lines are only partially indented.
This makes it possible to equalize the indentations of (accidentally)
unevenly indented lines: by first fully unindenting a group of lines,
and then reindenting them to the desired amount.
Suggested-by: Liu Hao <lh_mouse@126.com>
2017-12-09 17:44:12 +01:00