Commit Graph

3235 Commits

Author SHA1 Message Date
Maxime Coste
b6cab458ed Use a heap instead of sorting to gather the best shell-candidates matches
O(n + k * log n) (with k = 100 here) instead of O(n log n), much faster
with many candidates.
2016-08-30 13:42:29 +01:00
Maxime Coste
f6cb6319d6 Enable shell-candidates update in fast completion mode 2016-08-30 00:55:01 +01:00
Maxime Coste
f52f5f7c53 Only decode utf8 when strictly necessary in RankedMatch::operator< 2016-08-30 00:51:21 +01:00
Maxime Coste
2b631837d8 Tweak RankedMatch, compare max match index instead of match indices sum 2016-08-30 00:30:15 +01:00
Maxime Coste
cbe38b2f96 Use flags and bit operations instead of bools in RankedMatch
full match is now the most important flag for comparison.
2016-08-29 23:56:22 +01:00
Maxime Coste
95c21a4ebd Merge remote-tracking branch 'doppioandante/json-fix' 2016-08-28 18:51:19 +01:00
Enrico Lumetti
c6da163cb3 Fix menu_select in the JSON ui 2016-08-27 17:57:48 +02:00
Maxime Coste
b934bcd4e1 Support merging consecutive selections with <a-m>
Fixes #773
2016-08-27 11:20:38 +01:00
Maxime Coste
093d3bd0df Map tab to jump forward until we can distinguish <c-i> from it
Fixes #769
2016-08-27 11:07:24 +01:00
Maxime Coste
85f54a77ac Display the capture used in select/split prompt
Fixes #770
2016-08-27 10:55:07 +01:00
Maxime Coste
2bf100bdd0 Add a to_string overload for unsigned int 2016-08-27 10:46:49 +01:00
Maxime Coste
7ac54b0b0f Fix another bug in wrap_lines 2016-08-26 00:08:34 +01:00
Maxime Coste
9124851029 JsonUi: try to handle all available requests, on input event, not just the first one 2016-08-24 23:47:09 +01:00
Maxime Coste
3f0415c765 Introduce the 'completion_extra_word_chars' option
This string option is used to get all the additional characters
that should be considered as "word" character for the purpose of
insert mode completion.

Fixes #758
2016-08-24 23:47:09 +01:00
Maxime Coste
911a32a992 Only drop blank prefixed history entries in command/shell prompts
For regex prompts we actually want to save them, as a leading space
is significant

Fixes #767
2016-08-22 20:37:14 +01:00
Maxime Coste
ac81d0f39c Cleanup history_push function 2016-08-22 20:37:14 +01:00
Maxime Coste
56a7c6e594 Rework buggy number selection function
Fixes #765
Fixes #766
2016-08-22 13:54:22 +01:00
Maxime Coste
0de4fc75d0 Dont consider OptionManager watcher list as part of the state of the option manager 2016-08-21 20:24:18 +01:00
Maxime Coste
1d1f27248f Try to fix travis ci 2016-08-18 22:42:31 +01:00
Maxime Coste
8803bf7c46 Fix comment missing a closing parenthesis 2016-08-14 20:05:57 +01:00
Maxime Coste
bedf2f703c Small code cleanups 2016-08-09 21:45:06 +01:00
Maxime Coste
ac0c746072 Tweak format of option docstrings 2016-08-07 10:47:26 +01:00
Maxime Coste
f73e89a716 Add information of types of options 2016-08-06 09:05:50 +01:00
Maxime Coste
f1a93a0e61 Replace some const String& with StringView in option_manager.hh 2016-08-06 06:52:11 +01:00
Maxime Coste
5b7b6eebaf Regenerate shell-candidates for each completion sessions
That should allow fixing the #665 issue while still avoiding to
run a potentially long shell command on each keystroke.
2016-08-05 13:53:19 +01:00
Maxime Coste
38d372567b Do not force exec to run in normal mode anymore, run in the current mode 2016-08-05 09:43:33 +01:00
Maxime Coste
373c21e875 Preserve selections when converting to client mode
Fixes #742
2016-08-05 08:16:43 +01:00
Maxime Coste
8cc27354e8 Support sorting and merging overlapping separately, fix bug in move
Fixes #754
2016-07-30 15:32:47 +01:00
Maxime Coste
d28e503150 Use the same logic for mouse wheel and (half) page up/down
Fixes #749
2016-07-28 09:51:49 +01:00
Maxime Coste
a7005ec74b Add a char_length(Buffer&, const ByteCoord&, const ByteCoord&) util 2016-07-28 09:41:47 +01:00
Maxime Coste
74c3f101cd Use -1 for invalid codepoint, not 0 2016-07-28 09:24:51 +01:00
Maxime Coste
2425f4a781 Tweak session renaming code 2016-07-28 00:16:41 +01:00
Maxime Coste
62fa133efd Merge remote-tracking branch 'doppioandante/set_session' 2016-07-28 00:12:09 +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
14198fadb4 BufferIterator is random access, not just bidirectional 2016-07-27 21:36:52 +01:00
Maxime Coste
14f59d415d Avoid underlying iterator copies in utf8_iterator 2016-07-27 21:36:32 +01:00
Maxime Coste
df0773feeb Ensure we cannot call StringView::StringView{Codepoint} 2016-07-27 09:08:08 +01:00
Maxime Coste
a09b094f2b Avoid repeated calls to context.selections() in highlight_selections 2016-07-27 09:03:01 +01:00
Maxime Coste
0d2c5072b0 Merge remote-tracking branch 'lenormf/fix-timespec-conversion' 2016-07-27 00:37:04 +01:00
Maxime Coste
09188a2bc1 Revert "Try to disambiguate timespec as a struct"
This reverts commit 17d2dc9477.
2016-07-27 00:36:53 +01:00
Maxime Coste
17d2dc9477 Try to disambiguate timespec as a struct 2016-07-27 00:34:20 +01:00
Maxime Coste
f30bd4c540 Fix use of dead string memory and quick cleanup 2016-07-27 00:25:05 +01:00
Maxime Coste
35f1ad100e Merge remote-tracking branch 'lenormf/select-arbitrary-punctuation' 2016-07-27 00:14:49 +01:00
Maxime Coste
dffb1dff7c Add missing <time.h> header so that timespec is well defined 2016-07-27 00:14:11 +01:00
Maxime Coste
80c3405a20 Rework SelectionList::check_invariant 2016-07-27 00:04:06 +01:00
Maxime Coste
13ed87410f Rework compute_modified_ranges
Fixes #743
2016-07-26 23:31:23 +01:00
Frank LENORMAND
f04a7a0ed3 Allow selection primitives to use arbitrary punctuation signs 2016-07-26 10:39:18 +03:00
Frank LENORMAND
f8224b1384 Use explicit initialization of the timespec object to fix compilation on older compilers 2016-07-26 09:43:41 +03:00
Maxime Coste
78fc88ae6d Display some information when moving in history 2016-07-24 22:55:37 +01:00
Enrico Lumetti
1a7cd707aa Add 'session' command to change remote session name 2016-07-24 22:46:33 +02:00