Commit Graph

2563 Commits

Author SHA1 Message Date
Maxime Coste
336df38237 Go back to ignoring SIGPIPE
We do not want to exit when a shell command closes stdin while we
are piping data to it.
2015-05-28 13:57:22 +01:00
Maxime Coste
98637c5219 Do not throw exceptions when handling a fatal signal 2015-05-28 13:44:59 +01:00
Maxime Coste
d9aee67c8b Tweak Makefile, enable -rdynamic so that backtraces symbols are found 2015-05-27 18:45:52 +01:00
Maxime Coste
faf55c6540 Only try to run xmessage on Linux 2015-05-27 18:45:48 +01:00
Maxime Coste
2e43a4d696 Use common signal handler for SIGPIPE 2015-05-27 13:57:41 +01:00
Maxime Coste
e18c57cfd3 Include backtrace in debug info in on_assert_failed 2015-05-27 13:56:27 +01:00
Maxime Coste
7245d2abe9 Extract Backtrace out of SafePtr as a general utility 2015-05-27 13:48:45 +01:00
Maxime Coste
1e04343178 Workaround incomplete c++11 stdlib in gcc 4.8 2015-05-26 19:05:11 +01:00
Maxime Coste
993e842fdf Retreat ! go back to C++11 only code
This reverts commit b42de85031.
2015-05-26 18:42:09 +01:00
Maxime Coste
499bde10bd Small style tweaks 2015-05-26 18:40:39 +01:00
Maxime Coste
3bdc30e381 Try matching functions one by one when completing
Instead of running them all then deciding which to use.
2015-05-26 18:38:48 +01:00
Maxime Coste
3ca69c3852 Try gnu++1y 2015-05-25 20:32:39 +01:00
Maxime Coste
d83836d026 Use gnu++14 only for Cygwin, as not recognized on OSX 2015-05-25 19:35:32 +01:00
Maxime Coste
9c57f5409a Use gnu++14, as some posix functions disappear in c++14 mode 2015-05-25 14:01:59 +01:00
Maxime Coste
7b7427e1a6 Add missing 'override' specifiers 2015-05-25 13:54:18 +01:00
Maxime Coste
b42de85031 Migrate code to c++14 2015-05-25 13:51:17 +01:00
Maxime Coste
41319d2708 Small refactor in unit tests 2015-05-24 22:34:05 +01:00
Maxime Coste
dd25dcc361 Move unit test functions in next to the code they are testing 2015-05-22 13:58:56 +01:00
Maxime Coste
c38a7f3ca4 Merge branch 'diff' 2015-05-21 22:58:50 +01:00
Maxime Coste
325cc2d894 Ignore SIGPIPE 2015-05-20 22:53:14 +01:00
Maxime Coste
43f7657151 Remove clamping in compute_modified_range
It can result in a non ordered range list.
2015-05-20 13:34:16 +01:00
Maxime Coste
9f46d75b27 Add headers guard to diff.hh along with a comment about the algorithm 2015-05-19 19:46:24 +01:00
Maxime Coste
38bbecef62 Fix bug in diff implementations (missing snake after d=1 change) and refactor 2015-05-18 22:59:59 +01:00
Maxime Coste
bb7800b1a6 Preserve window position in regex_prompt
Fixes #271
2015-05-18 13:56:58 +01:00
Maxime Coste
0a6ad4dcf4 Only initialize element 1 in mirrored arrays. 2015-05-17 20:13:11 +01:00
Maxime Coste
cf7b64ba67 Preserve selections across reloads 2015-05-16 11:42:58 +01:00
Maxime Coste
73ddf18dc3 Another bug fix in diff implementation 2015-05-15 13:55:39 +01:00
Maxime Coste
802d6e106c Keep hash stored in StringData 2015-05-14 19:13:52 +01:00
Maxime Coste
e9af3a4217 always_inline a few methods 2015-05-14 19:05:41 +01:00
Maxime Coste
8ba6804480 Do not use diff when reloading a no undo buffer 2015-05-14 14:05:02 +01:00
Maxime Coste
cc97d4ba41 Fix bugs in diff implementation 2015-05-14 13:57:03 +01:00
Maxime Coste
f224d11ccd Small cleanup in selections.cc 2015-05-13 23:22:48 +01:00
Maxime Coste
11528e45e9 Use friend functions rather than methods for StronglyTypedNumber binary ops 2015-05-13 23:22:48 +01:00
Maxime Coste
15b26fd06c Use diff when reloading buffer 2015-05-13 23:22:42 +01:00
Maxime Coste
7a8c2d7f56 Fix diff implementation and change the Diff struct format 2015-05-13 23:22:29 +01:00
Maxime Coste
49def73e4e Add initial diff implementation based Eugene W. Myers' algorithm 2015-05-12 23:41:35 +01:00
Maxime Coste
30bec11010 Fix bug in ncurses mouse handling 2015-05-11 19:11:02 +01:00
Maxime Coste
e21d9feb05 Style tweak 2015-05-09 19:20:11 +01:00
Maxime Coste
c94b30903d Fix dangling info window pointer in ncurses ui 2015-05-07 00:34:30 +01:00
Maxime Coste
559bcdde50 Formatting fix 2015-05-06 23:05:44 +01:00
Maxime Coste
9f1b129053 Fix bug in fifo creation where BufOpenFifo hook was using a dead string 2015-05-05 20:23:15 +01:00
Maxime Coste
0ee95d02c4 line highlighter highlights up to window's end 2015-05-05 20:21:17 +01:00
Maxime Coste
1a1db1cb3a {line,column}_option highlighters use an expanded string instead of an option name
That allows access to non option values, such as cursor_column or cursor_line with
:addhl line '%val{cursor_line}' default,rgb:404040

Fixes #38
2015-05-04 17:12:51 +01:00
Maxime Coste
cfdf03ab31 Make expand function (that expand %...{} tokens) public 2015-05-04 17:08:57 +01:00
Maxime Coste
7f0588c02c Dont use a regex to match face spec for regex highlighter 2015-05-03 18:22:49 +01:00
Maxime Coste
78eb437b90 Formatting fix 2015-05-02 18:48:20 +01:00
Maxime Coste
d7159a9af0 Add str_to_int_ifp that returns an Optional<int> instead of throwing 2015-05-01 18:47:22 +01:00
Maxime Coste
d3607bc773 Rename eval(_token)? to expand(_token)? and use a const Context 2015-04-30 19:18:20 +01:00
Maxime Coste
4e89cbfe83 Add a column_option highlighter that highlight a column given in an option 2015-04-30 19:18:20 +01:00
Maxime Coste
202d4766c2 Do not display info box when there is not enough room on screen for it
Fixes #159
2015-04-30 13:45:05 +01:00
Maxime Coste
6974cfbf64 Use char32_t for Codepoint 2015-04-29 13:51:15 +01:00
Maxime Coste
d169558e09 When file to open is a fifo, do not read from it (use -fifo for that)
Fixes #267
2015-04-29 13:46:04 +01:00
Maxime Coste
1337763cb5 Fix formatting 2015-04-29 13:45:53 +01:00
Maxime Coste
e4880ad91a Use unicode elipsis to mark trimmed mode line 2015-04-28 21:03:37 +01:00
Maxime Coste
5bff742e0a Replace some String temporaries with StringViews 2015-04-27 16:46:57 +01:00
Maxime Coste
720c54c759 Move option_not_found exception to the cpp file 2015-04-26 20:40:32 +01:00
Maxime Coste
bbefde9379 Move Colors enum class as NamedColor enum inside Color struct 2015-04-25 10:47:39 +01:00
Maxime Coste
dc46eda279 Set default MatchingChar face to bold instead of underline 2015-04-24 20:34:38 +01:00
Maxime Coste
075c5013a1 Move Register to register_manager.hh 2015-04-23 21:51:48 +01:00
Maxime Coste
4e1ed13f25 Use a struct for RangeAndMatches 2015-04-23 21:44:20 +01:00
Maxime Coste
045272ab8a Use a struct for BufferRange rather than std::pair 2015-04-23 21:38:45 +01:00
Maxime Coste
840e58e0b1 NCurses: When mode line is too long, trim it rather hiding it 2015-04-23 21:11:50 +01:00
Maxime Coste
e0f7a6f0be Remove simple_factory for highlighters 2015-04-23 20:27:52 +01:00
Maxime Coste
d6b69cb6f7 Fix :open bug that could set a deleted buffer as the last used one 2015-04-23 20:15:17 +01:00
Maxime Coste
80fb8aa60d Use puts instead of printf in ncurses_ui 2015-04-22 22:03:01 +01:00
Maxime Coste
f6c7948c12 Add format_to allowing formating to an existing buffer 2015-04-22 13:19:46 +01:00
Maxime Coste
8ff63198bc Comment out update_erase function (keeped for reference)
Fixes #254
2015-04-21 13:51:01 +01:00
Maxime Coste
7824a76e1a Disable history in :exec and :eval 2015-04-21 13:45:10 +01:00
Maxime Coste
4bb1e0a878 Support -buffer * to iterate over all buffers in :eval or :exec 2015-04-21 13:40:14 +01:00
Maxime Coste
1d40827da3 Small style tweak 2015-04-21 13:33:35 +01:00
Maxime Coste
6e5e831ce6 Merge remote-tracking branch 'ekie/next_buffer' 2015-04-21 13:28:09 +01:00
Maxime Coste
d2e8bd2431 Fix select_number crashing on empty buffers 2015-04-20 13:55:42 +01:00
Maxime Coste
ddd70fd09a Make empty context construction more explicit 2015-04-19 18:47:52 +01:00
Maxime Coste
f714766854 Fix search highlighter wrong code 2015-04-19 15:19:39 +01:00
Maxime Coste
1dfa2d7fe4 Avoid unneeded update of selections when we are going to overwrite them 2015-04-19 15:12:16 +01:00
Maxime Coste
9f65a4e6dd Remove Context::set_selections, use Context::selections() = ... 2015-04-19 15:00:37 +01:00
Maxime Coste
b570c68c75 Run BufOpenFifo hook when opening a fifo in a (new or already existing) buffer 2015-04-19 14:48:39 +01:00
Maxime Coste
95a14c5049 UndoGroupOptimizer disappeared long time ago 2015-04-18 14:17:17 +01:00
Maxime Coste
d2b6d696a2 Small layout change 2015-04-17 16:47:31 +01:00
Maxime Coste
3982131753 Fix StronglyTypedNumbers::abs 2015-04-17 01:01:58 +01:00
Maxime Coste
b584fd3bfc Fix UnorderedSet allocator 2015-04-16 23:46:26 +01:00
Maxime Coste
2902fce437 Use an UnorderedSet for string registry 2015-04-16 12:38:59 +01:00
Maxime Coste
491ffc4ffd Improve ui_options docstring 2015-04-16 11:35:52 +01:00
Maxime Coste
ea67724ff5 Optional: put the bool m_valid after the content to improve packing 2015-04-15 11:43:39 +01:00
Eike Plack
2cf45ddb21 Refactor nextbuffer_cmd 2015-04-15 02:43:16 +02:00
Eike Plack
0f9b210e3f Fix set_last_used_buffer 2015-04-15 02:36:47 +02:00
Maxime Coste
bf02838816 Remove is_blank, which is identical to is_horizontal_blank 2015-04-15 00:34:00 +01:00
Maxime Coste
eb9c95298e Add support for string <-> selection list serialization 2015-04-13 15:21:26 +01:00
Maxime Coste
731c27c094 Add a 'abs' friend function to StronglyTypedNumber 2015-04-13 15:20:47 +01:00
Maxime Coste
f93081471a Refactor nextbuffer command to be more idiomatic 2015-04-13 11:34:21 +01:00
Maxime Coste
43c03ea412 Merge remote-tracking branch 'jjthrash/next-prev-buffer' 2015-04-13 11:26:31 +01:00
Maxime Coste
be5ed0e036 Small alignement change 2015-04-12 23:48:11 +01:00
Maxime Coste
f644a51f24 Use char for KeyMapMode enum 2015-04-11 17:22:37 +01:00
Maxime Coste
cfd071b2ad small code formatting fix 2015-04-09 16:28:13 +01:00
Jimmy Thrasher
ba59033935 Add nextbuffer command
Wraps around at the end. If only 1 buffer loaded, does nothing.
2015-04-09 10:14:32 -04:00
Maxime Coste
da09da29c4 Regex comparison operator are const 2015-04-08 23:16:27 +01:00
Maxime Coste
b5ab318a2d Always optimize StringView::strlen (recursive due to constexpr) 2015-04-07 23:21:14 +01:00
Maxime Coste
87b385b956 Use default values for ncurses options when not specified 2015-04-06 20:05:49 +01:00
Maxime Coste
b7144fff6c Make ncurses wheel scroll button configurable 2015-04-06 18:43:27 +01:00
Maxime Coste
dde16b00a9 Add onkey command for executing commands after reading a key
This completes the various user interaction primitives, on_next_key
was the last not to be available through a command.
2015-04-04 13:10:39 +01:00