Tim Allen
8a6df93dc6
More tests for markdown autoindent.
...
All these tests pass with the current implementation.
2017-08-01 19:53:01 +10:00
Maxime Coste
bb9dd14a09
Check final cursor position in indent/c-family/indent-if-body test
2017-07-29 10:46:41 +07:00
Maxime Coste
8650c99f13
Fix assertion when replacing with empty strings
...
Replacing with empty strings is essentially a deletion, which means
it can end up push some selections out of the buffer (imagine 3 a
2 empty line buffer, and deleting the second one). We are fixing
the selections in SelectionList::erase, but we were not doing that
in SelectionList::insert.
Fixes #1504
2017-07-14 13:08:29 +09:00
Maxime Coste
53f5b3d709
Fix an assert in compute modified ranges when merging single char ranges
...
Due to the way Selection::min/max worked, we were creating backward
selections, with cursor < anchor, which was triggering an assert when
trying to move cursor back one char when it was already on the first
char of the buffer.
2017-07-14 12:42:43 +09:00
Maxime Coste
641acc5943
Do not allow repeating last insert when we are not in normal mode
...
<a-;>. is not accepted anymore. Note that <a-;> are not repeatable
currently anyway (That could be fixed, athough not trivial).
Fixes #1469
2017-06-27 09:57:10 +01:00
Maxime Coste
ce8078ad73
Ensure cursor stays visible with wrapped line bigger than window
...
Fixes #1459
2017-06-27 09:29:25 +01:00
Maxime Coste
475e8849a1
Fix replacing last eol with a single eol
2017-06-26 16:16:46 +01:00
Maxime Coste
f41d78083a
Use the extra_word_chars option in word based normal commands
...
the completion_extra_word_chars is now gone, superseeded by
extra_word_chars that gets used both for completion and for normal mode.
Fixes #1304
2017-06-26 15:28:41 +01:00
Tomasz Kramkowski
bd65719698
Correctly handle tabs when show_whitespaces is added
...
Tabs now align to tab stops instead of always spanning 8 spaces when
show_whitespaces is added as a highlighter.
This fixes issue #1453 .
A regression test is also provided.
2017-06-17 11:46:39 +01:00
Maxime Coste
01a1e92b79
Fix crash recently introduced when deleting at buffer start in insert mode
2017-06-15 17:35:48 +01:00
Maxime Coste
724b4198b0
Change window display to not use invalid buffer coordinates
...
Fixes #1435
2017-06-15 16:48:16 +01:00
Maxime Coste
8bee02c8bb
Use more correct [ -f <file> ]
in test runner
2017-06-15 12:44:50 +01:00
Maxime Coste
40f845d77e
Respect scroll offset even when wrapping lines
...
Fixes #1433 although in a slightly different way than requested:
We ensure that scrolloff *displayed* lines are visible below the
cursor, not scrolloff *buffer* lines.
2017-06-15 12:29:34 +01:00
Maxime Coste
e73cd78288
Fix corner case in C family indenting
2017-06-13 10:19:38 +01:00
Maxime Coste
7bcfbd055c
Fix corner case in compute_modified_ranges
2017-06-11 12:25:12 +01:00
Maxime Coste
b4647a16dd
Remove backup file from git
2017-06-09 21:30:40 +01:00
Maxime Coste
7b9d8d39b1
Simplify column highlighter and make it more robust
...
Fixes #1382
2017-06-09 15:24:07 +01:00
Maxime Coste
f310db639c
Rework partial line display logic
...
Instead of highlighting full lines and then trim them to make them
fit in the window, highlight only the visible portion, and rely on
the compute_display_setup system introduced for wrapping to setup
our buffer range correctly
2017-06-09 13:22:32 +01:00
Maxime Coste
e145d05e34
Add some unit tests for horizontal scrolling with tabulations
2017-06-09 11:49:54 +01:00
Maxime Coste
c54c8c05bf
Add horizontal/vertical scrolling display tests
2017-06-09 10:55:17 +01:00
Maxime Coste
fb81b1bc86
Rename 'unit' test directory to 'normal' as they are the normal mode tests
2017-06-09 10:48:37 +01:00
Maxime Coste
f014eb7052
Fix command parsing bug when commenting after a command
...
When a comment was present directly on the same line after a command,
we did not correctly see the command as terminated and would join
continue parsing the next line.
2017-05-25 08:30:49 +01:00
Maxime Coste
1c16a91fd6
Add some missing tests for c-family indent
2017-05-21 22:33:00 +01:00
Maxime Coste
2f9b77b748
Smarter align to opening parenthesis/brace supporting multiline
2017-05-21 22:31:05 +01:00
Maxime Coste
cab0adaa53
Support aligning to opening { as well as ( in c-family indent
2017-05-20 11:08:13 +01:00
Maxime Coste
e722868c60
Fix generation of empty erase changes
...
Fixes #1308
2017-04-20 17:31:27 +01:00
Maxime Coste
dbcddafbfd
Change utf8::to_next/to_previous so that they are more symetrical
...
The previous implementation could yield different positions when
iterating forward and backward, leading to confusion in boost regex.
This makes an existing problem a bit more visible: iterating with
to_next and with read_codepoint wont behave the same way, as
read_codepoint will put the iterator onto the byte following the
utf8 codepoint, whereas to_next will put it on the next utf8
character start byte, which might be different if the buffer content
is not valid utf8.
Fixes #1195
2017-04-20 16:18:49 +01:00
Maxime Coste
bee2180da7
Do not try to split non range atoms in column highlighter
...
That means we wont have a very nice interaction between show_whitespaces
and column highlighters, but thats the simplest fix for now, if we want
a better behaviour we need to introduce a way to know that a replaced
range is splittable (meaning it means to have the same amount of columns
as the range it replaces)
Fixes #1275
2017-04-19 21:15:36 +01:00
Maxime Coste
7482d117cc
Fix tests after addition of the set_cursor UI method
2017-04-12 10:48:52 +01:00
Maxime Coste
2cc1333f6b
Add regression test for #1105
...
Fixes #1105
2017-03-15 11:47:10 +00:00
Dan Rosén
5a403a9611
Increase modelinefmt configuration power
2017-03-11 21:43:51 +01:00
Frank LENORMAND
d15efa4e40
test: Remove empty test directories
...
Closes #922
2017-03-07 19:02:00 +03:00
Maxime Coste
cc88b0f586
Change word object selector to fail if the cursor is not on a word char
2017-03-04 18:33:50 +00:00
Maxime Coste
31edff85c3
Move object unit tests in their own subfolder
2017-03-03 23:31:30 +00:00
Maxime Coste
28940e0e28
Fix tests for indent selection
2017-03-03 23:28:30 +00:00
Maxime Coste
1728c67fef
Fix indent selection respect for original selection cursor position
...
Fixes #1233
2017-03-03 22:03:20 +00:00
Maxime Coste
ddc5e958e6
Return an optional selection in most selectors, fail rather than keep current
...
Instead of returning the current selection when a selector fails, return
an empty Optional<Selection>. That means object selections will now
remove the selections that dont match the object.
2017-03-03 20:17:11 +00:00
Frank LENORMAND
58cad9aecf
test: Fix UTF8 compliant locale detection
2017-02-23 18:46:56 +03:00
Maxime Coste
d0d38da3c5
Refactor test run script
2017-02-21 23:26:39 +00:00
Maxime Coste
5eef2b9105
Correctly handle mutation of the watcher list while iterating on them
...
Fixes #1227
2017-02-20 13:50:30 +00:00
Maxime Coste
bc0dfa9e8f
Use <a-'> for backward rotate selection and move rotate content to <a-">
2017-02-01 22:53:42 +00:00
Maxime Coste
fc61ed93e6
Import unit tests from danr/comment-insertion-refix pull request
2017-01-13 00:30:02 +00:00
Maxime Coste
4916ea1766
Fix capture group handling
...
Fixes #1129
2017-01-13 00:17:31 +00:00
Maxime Coste
b157a481e1
Add 1118 regression test case
2017-01-11 22:13:05 +00:00
Maxime Coste
be48cffa22
Fix 1074 test case with recent indent change
2017-01-11 14:00:17 +00:00
Maxime Coste
343df600cb
Merge remote-tracking branch 'alexherbo2/command-names'
2017-01-10 13:44:11 +00:00
Maxime Coste
0fad62d6b1
Add regression test case for #1111
2017-01-06 19:55:50 +00:00
Alex Leferry 2
671b50bb52
update command names
2017-01-04 13:04:27 +01:00
Maxime Coste
c3e1bab9d6
Fix comment autoinsert for c-family as well.
...
Fixes #1074
2017-01-02 12:05:49 +00:00
Maxime Coste
d5231c713e
Fix corner case in C indentation
2017-01-02 04:15:12 +00:00
Maxime Coste
17660fe5bb
Add a regression test for #1051
2017-01-01 18:30:48 +00:00
Maxime Coste
cd89531bd9
Better handling of linewise inserting when we have multiple selections per line
...
Fixes #1053
2017-01-01 18:08:43 +00:00
Maxime Coste
a0c787e966
Fix more uses of echo in the test run script
2016-12-17 10:43:02 +00:00
Maxime Coste
f69495ea71
Use printf instead of echo for displaying modified lines
...
Avoid eventual interpretation of escapes in the line.
2016-12-17 10:36:00 +00:00
Maxime Coste
f200079069
Respect TMPDIR in test run script
2016-12-17 10:26:37 +00:00
Maxime Coste
2bdd361948
Escape the backslash chars as well when joining strings
...
Fixes #1014
2016-12-17 05:48:42 +00:00
Maxime Coste
01417471b9
Change the test session name to avoid hitting the unix socket path length limit
...
On travis-ci, it seems the combination of a set TMPDIR and long sessions names
makes the test framework hit the path lenght limit.
2016-12-16 19:49:39 +00:00
Maxime Coste
9ad1c19f69
Validate user text object desc more thorougly
...
Fixes #992
Fixes #993
Fixes #994
2016-12-15 09:29:38 +00:00
Maxime Coste
d8f00198f3
Improve C indentation support around namespace/struct closing bracket
2016-12-09 13:50:41 +00:00
Maxime Coste
da6d7f4530
Always consider end of selection is not and eol for keep
...
Fixes #921
2016-11-28 21:07:24 +00:00
Maxime Coste
90de54af2f
Rework c-family /* */ comments auto insertion of prefix star
...
Fixes #918
2016-11-14 21:11:20 +00:00
Maxime Coste
965cd8e0c3
Fix align support with aligntab = true
2016-10-28 09:50:25 +01:00
Maxime Coste
68d04af1a9
Remove sourcing of formatter.kak from the 872 regression test
2016-10-17 18:29:58 +01:00
Maxime Coste
cf5bcdf1bb
Merge remote-tracking branch 'lenormf/fix-formatcmd'
2016-10-17 18:28:57 +01:00
Maxime Coste
1431dcff46
Fix bug in c-family indentation logic after visibility labels
...
Fixes #872
2016-10-16 19:27:53 +01:00
Frank LENORMAND
617a5b72e2
Remove a script loaded in a test that's not required anymore
2016-10-15 13:36:19 +03:00
Maxime Coste
19f65f4c6e
Add the missing repeat-select test cases
2016-10-14 00:09:52 +01:00
Maxime Coste
5af29b0254
Fix python comment copy logic in python.kak
...
And introduce the first unit test that sources bundled support
scripts.
Fixes #860
2016-10-13 20:13:05 +01:00
Maxime Coste
9078039326
Fix select_to_previous_word with spaces at buffer start
...
Fixes #844
2016-10-05 23:42:36 +01:00
Maxime Coste
28cfd0bb61
Fix get_column function and add some unit tests for fullwidth text
2016-10-01 13:45:00 +01:00
Maxime Coste
35559b65dd
Support codepoints of variable width
...
Add a ColumnCount type and use it in place of CharCount whenever
more appropriate, take column size of codepoints into account for
vertical movements and docstring wrapping.
Fixes #811
2016-10-01 13:45:00 +01:00
Maxime Coste
696db111e2
Selecting 'around' word when on spaces after word now selects next word
2016-09-26 23:33:28 +01:00
Maxime Coste
fafde8655b
Fix select_to_reverse to correctly handle the first character of the buffer
...
Fixes #809
2016-09-19 09:20:55 +01:00
Maxime Coste
4fc20b8d7d
Rework client quitting and handling of remote errors
...
Client quitting no longer immediately unwinds, client is just pushed
for deletion until we get back to the main loop, similarly to what
happens for buffer and window deletion.
2016-09-04 17:56:07 +01:00
Maxime Coste
4d13e6fb88
Do not crash whenever S matches the whole selection and hence does not select anything
...
Fixes #787
2016-09-04 11:17:34 +01:00
Maxime Coste
623fcd88ea
Do not avoid end of lines after selecting modified ranges in undo
...
Fixes #751
2016-07-27 23:53:16 +01:00
Maxime Coste
35f1ad100e
Merge remote-tracking branch 'lenormf/select-arbitrary-punctuation'
2016-07-27 00:14:49 +01:00
Maxime Coste
13ed87410f
Rework compute_modified_ranges
...
Fixes #743
2016-07-26 23:31:23 +01:00
Frank LENORMAND
ad288be1a0
Add unit tests for an arbitrary slash-based selection
2016-07-26 10:42:33 +03:00
Maxime Coste
52d3b60aaa
Clamp selection generated in selection_list_from_string
...
Fixes #733
2016-07-13 19:25:32 +01:00
Maxime Coste
e288d84408
Add a regression test for #704
...
Fixes #704
2016-07-11 19:46:50 +01:00
Maxime Coste
532ae5a1a6
Do not go backward to when selecting to end of line from the end of line
...
Fixes #699
2016-06-22 19:56:40 +01:00
Maxime Coste
fef37e6a92
Do not preserve registers by default when exec/eval in a non draft context
...
Fixes #700
2016-06-20 19:40:49 +01:00
Maxime Coste
dd41a46c4c
Correctly set c++ locale on startup
...
Fixes #595
2016-05-10 22:06:02 +01:00
Maxime Coste
63ac752916
Improve test script
2016-05-10 13:51:00 +01:00
Maxime Coste
1160c51dc4
Improve test runscript to avoid false positives when an output is not generated
2016-05-10 13:43:19 +01:00
Maxime Coste
39762f0cf0
preserve diff leading whitespaces when displayin them in the test runner
2016-05-10 09:38:47 +01:00
Maxime Coste
abac6a9436
Use boost::wregex implementation and manually utf8 decode into it
...
That way we get proper unicode support in regular expressions as long
as the current locale treats wchar_t as unicode codepoints.
Fixes #638
Fixes #595
Fixes #162
2016-05-10 09:38:21 +01:00
Maxime Coste
25a31534ec
Fix splitting selecting the first buffer char when there is a match at buffer begin
2016-04-30 10:37:31 +01:00
Maxime Coste
d3bcf8c21e
Fix handling of expected to fail tests
2016-04-27 09:48:35 +01:00
Maxime Coste
8cae7097f4
Fix test runner use of sed -r
2016-04-27 09:47:49 +01:00
Maxime Coste
b0060ed79e
Fix modified range computation when erasing multiple times past current buffer end
...
Fixes #654
2016-04-13 21:21:00 +01:00
Maxime Coste
b1b6267137
Fix regions display test
2016-04-11 13:58:42 +01:00
Maxime Coste
736ba7dabf
Add a spaces to tabs test
2016-03-30 19:41:21 +01:00
Maxime Coste
5332378419
Fix spaces_to_tabs implementation accessing past end
...
Fixes #643
2016-03-30 19:27:36 +01:00
Maxime Coste
38f146d849
Fix another bug in Buffer::replace implementation
2016-03-17 12:38:09 +00:00
Maxime Coste
f8f530e6ac
Add a replace-line unit test
2016-03-17 12:07:38 +00:00
Maxime Coste
757bbe9e56
Add a reload test
2016-03-17 11:38:07 +00:00
Maxime Coste
544ec7e385
Update test run script, was not writing test name in some cases
2016-03-17 11:37:35 +00:00
Maxime Coste
de1433d30a
Avoid the spurious newline insertion when replacing at end of buffer
...
Add a Buffer::replace method to handle the replacements properly
Fixes #633
2016-03-16 13:48:11 +00:00