Commit Graph

2720 Commits

Author SHA1 Message Date
Maxime Coste
ac78cfa11c Add missing std::move, avoid a needless string copy 2015-08-28 13:54:12 +01:00
Maxime Coste
1249df9c76 Avoid using an UnorderedMap for 4 elements... 2015-08-27 21:36:49 +01:00
Maxime Coste
36b82c42e5 Refactor command parsing, maintain coordinates while reading the string 2015-08-27 21:32:04 +01:00
Maxime Coste
b529288176 Small code cleanup in command_manager.cc 2015-08-27 13:57:56 +01:00
Maxime Coste
04536657d1 Add a kill command that kills the current session
Fixes #331
A given session can be killed with 'echo kill | kak -p <session>'
2015-08-26 19:34:19 +01:00
Maxime Coste
0c41c14187 Reorganize slightly local client creation 2015-08-26 19:33:52 +01:00
Viktor Palmkvist
b53d9e282e Fix segfault in edge case when jumping backwards in jumplist
Closes #380
2015-08-26 11:54:51 +02:00
Viktor Palmkvist
1bdaf0675d Argument text object no longer handles <> 2015-08-25 15:56:49 +02:00
Maxime Coste
0755366cb1 Rework resize handling
Fixes #383
2015-08-23 15:18:18 +01:00
Maxime Coste
a2e90c2c25 Add support for listing existing sessions with kak -l
Fixes #381
2015-08-23 14:22:23 +01:00
Maxime Coste
71e362e2f9 Move session socket to /tmp/kakoune/<user name>/<session> 2015-08-23 14:13:46 +01:00
Maxime Coste
ae839fc471 Remove Client::window() method, use a force_redraw() one
We cannot assume Client::m_window is always non-null, as when
changing current buffer its temporarily null, at the point
where WinCreate hook might get called.

Fixes #382
2015-08-23 13:29:24 +01:00
Maxime Coste
dc504284c3 Change flag lines highlighter to use faces instead of colors
Fixes #130
2015-08-23 12:13:14 +01:00
Maxime Coste
504862fce7 Avoid double session closing 2015-08-22 11:27:48 +01:00
Maxime Coste
47ab4038ec Format session socket name in place into the sockaddr_un 2015-08-22 11:27:04 +01:00
Maxime Coste
564ab7d942 Merge remote-tracking branch 'zakgreant/reference-sheet-scripts' 2015-08-20 20:13:48 +01:00
Maxime Coste
689494fb2f Fix reentrency in Normal::handle_key 2015-08-20 19:16:14 +01:00
Maxime Coste
3834a967f8 No reason for NestedBool operator bool to be explicit 2015-08-19 21:20:34 +01:00
Maxime Coste
8af3b52bfa Add alternative names to ^ (caret) and @ (arobase) registers 2015-08-19 21:20:01 +01:00
Maxime Coste
7ee027b125 Use the "<reg> syntax along with a default register for marks and macros
Marks use the '^' register by default, macros the '@' register.
2015-08-19 13:58:37 +01:00
Maxime Coste
baf0203b9d Default register is not handled by the Normal input mode.
Normal input mode will just pass 0 as the reg if it was not specified
by the user, its yank/paste functions that should determine 0 means
use '"' register.
2015-08-19 13:41:16 +01:00
Maxime Coste
3f493fa186 Rename Disableable to more general NestedBool
A NestedBool can be set multiple times, and will be considered false
only when unset the same number.
2015-08-18 23:17:56 +01:00
Maxime Coste
a33c8d9677 Smaller sizeof for in place strings 2015-08-18 21:06:53 +01:00
Maxime Coste
386f41e1c5 Be more explicit about paramater parsing error 2015-08-18 00:28:04 +01:00
Maxime Coste
f2580a366d Cleanup key to codepoint conversion
Fixes #378
Fixes #365
2015-08-18 00:19:14 +01:00
Maxime Coste
043ca99983 Cleanup mouse handling a little 2015-08-16 14:06:07 +01:00
Zak Greant
dc2d12a124 Fixing minor typo
s/prevous/previous/
2015-08-15 16:46:57 +02:00
Maxime Coste
97b871d49e Tweak notify_fatal_error message box title, might not be an assert failed 2015-08-14 13:16:06 +01:00
Maxime Coste
92d3178305 Clamp m_anchor in mouse handler, nothing garantees that it is still valid
Fixes #350
2015-08-14 13:12:44 +01:00
Maxime Coste
d2b82f507f More performant escape/unescape 2015-08-13 22:04:21 +01:00
Maxime Coste
7a36a4644e Detect face being aliased to itself
Fixes #374
2015-08-12 21:49:29 +01:00
Maxime Coste
d2762e6a1a Try to fix compilation on travis 2015-08-12 19:16:52 +01:00
Maxime Coste
7086135fa6 Display auto info on register insertion/explicit insert completion 2015-08-11 20:36:07 +01:00
Maxime Coste
8d9c402f52 Handle registers insert/explicit completion with a nested on_next_key mode 2015-08-11 13:55:56 +01:00
Maxime Coste
d7744308f6 Ensure the command exist before adding an alias
Fixes #371
2015-08-11 13:37:38 +01:00
Maxime Coste
94ec1cdde7 Add an unset command to remove an option value (falling back to parent)
unset is not applicable to global scope.
2015-08-10 13:54:52 +01:00
Maxime Coste
10d8cf64cf Move option docstring obtention to OptionRegistry 2015-08-10 13:53:30 +01:00
Maxime Coste
bfb116b8b4 Move option name completion to the OptionRegistry
Option names are the same for every option manager.
2015-08-10 13:38:06 +01:00
Maxime Coste
2eced81753 clamp coordinates find_buffer_coord 2015-08-09 23:18:26 +01:00
Maxime Coste
9d50dd3886 Use a struct rather than a std::pair for InputHandler::Insertion 2015-08-08 22:46:11 +01:00
Maxime Coste
7a59a6d758 ensure a buffer is not referenced a second time, just before actually deleting it
It can happen in certain case that a buffer gets referenced after it
gets moved to the trash, for example when it gets deleted during its
construction (due to BufCreate hook for example).
2015-08-06 21:51:44 +01:00
Maxime Coste
e7b4217762 Support flags getting modified by hooks at buffer creation
Fixes #361
2015-08-04 23:02:40 +01:00
Maxime Coste
d19df5d5de Enable more invariant checking in selection lists 2015-08-03 11:23:40 +01:00
Maxime Coste
19c52c3d61 Fix command parsing bug
Fixes #347
2015-07-30 09:41:23 +01:00
Maxime Coste
3da9458b5e Merge remote-tracking branch 'lenormf/autoinfo_number' 2015-07-29 10:44:39 +01:00
Frank LENORMAND
b7e232d230 Add the 'n' flag to the autoinfo popup window 2015-07-29 10:20:11 +03:00
Maxime Coste
12e0f46e25 Use forward declaration instead of include in commands.hh 2015-07-28 20:18:18 +01:00
Maxime Coste
6b06d77490 Small formatting fix 2015-07-27 20:43:18 +01:00
Maxime Coste
1170277e91 Always inline Allocator::construct/destroy 2015-06-26 21:32:37 +01:00
Maxime Coste
1af82e2e24 Tweak regex constructor calls 2015-07-25 11:15:03 +01:00
Maxime Coste
6bed464105 Avoid appending chars one by one in some parsing functions in CommandManager 2015-07-25 08:56:27 +01:00
TSUYUSATO Kitsune
4a20882a8d CPPFLAGS should use to specify flags for C pre-processor 2015-07-25 10:20:33 +09:00
Maxime Coste
6f337b254d Fix warning 2015-07-24 13:57:44 +01:00
Maxime Coste
ea02467564 Disable notifications when disabling an option temporarly 2015-07-23 23:42:48 +01:00
Maxime Coste
58101645ab Rewrite select_lines and trim_partial_lines
Fixes #338 for real (I hope)
2015-07-23 21:03:38 +01:00
Maxime Coste
2946504a17 Improve column highlighter to cooperate better with other highlighters
Fixes #268
2015-07-23 13:58:23 +01:00
Maxime Coste
889bc98866 fix crash in trim_partial_lines
Fixes #338
2015-07-23 13:46:20 +01:00
Maxime Coste
36ffff96be Avoid copying selection before the first line 2015-07-22 23:24:20 +01:00
Maxime Coste
733e004d44 Fix potential crash 2015-07-22 18:38:44 +01:00
Maxime Coste
82145168ec Add /usr/include/ncursesw in the include dirs list 2015-07-22 18:38:01 +01:00
Maxime Coste
3019118b10 Style tweak in client.cc 2015-07-22 13:30:03 +01:00
Maxime Coste
d55297c12d Remove -rdynamic from cygwin LDFLAGS 2015-07-20 13:17:03 +01:00
Maxime Coste
10f4bb5872 Add support for FocusIn/FocusOut events from UI 2015-07-15 13:56:31 +01:00
Maxime Coste
f8e4bb09f2 Merge remote-tracking branch 'ekie/makefile_fix' 2015-07-14 22:02:51 +01:00
Maxime Coste
17e3be48a5 Transform boost/std regex_error to Kakoune::regex_error at Regex construction
Fixes #318
2015-07-14 21:06:41 +01:00
Eike Plack
441ad1511d Install color schemes 2015-07-14 19:44:03 +02:00
Maxime Coste
7d9ec52bf2 Only allow 'sane' register names
Fixes #316
2015-07-14 13:48:39 +01:00
Maxime Coste
f87dbe410f Add missing support for Codepoint in format 2015-07-14 13:47:51 +01:00
Maxime Coste
c1b9ea4d1e Formatting tweak 2015-07-13 13:57:43 +01:00
Maxime Coste
c44c8c3d1f Use different variable for pipe command in/out text 2015-07-13 13:50:36 +01:00
Maxime Coste
905af05c61 Move Context scope access helpers as inline methods 2015-07-13 13:43:52 +01:00
Maxime Coste
24de3ed822 Move selection saving/restoring to z/Z
Fixes #284
2015-07-11 11:36:23 +01:00
Maxime Coste
a15d816ea8 Use a named struct Empty in optional 2015-07-10 19:05:21 +01:00
Maxime Coste
1d1927647a Fix formatting 2015-07-09 13:53:21 +01:00
Maxime Coste
f1c286e592 Notify user when some hooks failed 2015-07-08 14:00:50 +01:00
Maxime Coste
883a14e853 Do not allow exiting insert mode while running InsertEnd hook.
Fixes #311
2015-07-08 13:53:19 +01:00
Maxime Coste
123541822b Gracefully handle exception when opening files given on command line
Fixes #310
2015-07-08 13:43:40 +01:00
Maxime Coste
f65d41a30a Fix scrolling down hiding the cursor with scrolloff == 0 2015-07-08 13:43:32 +01:00
Maxime Coste
3c4400c5fd Change scrolloff behaviour, allow displaying pas the end of buffer
Fixes #306
2015-07-07 22:36:27 +01:00
Maxime Coste
1cbaac5323 Fix window position computation that could get negative with big scroll offsets 2015-07-06 13:10:36 +01:00
Maxime Coste
72b7a8910b Print connection failed messages with a newline
Fixes #308
2015-07-05 13:39:30 +01:00
Maxime Coste
b7be43f9b9 Merge remote-tracking branch 'xificurC/master' 2015-07-03 20:59:41 +01:00
Maxime Coste
eedf7d6c68 Fix mouse coordinates in ncurses ui with status on top 2015-07-03 18:44:25 +01:00
Maxime Coste
12dd7b04ac Try to simplify argument selector, abandon pair matching checks
Recognize both , and ; as argument separator
2015-07-02 13:41:50 +01:00
Maxime Coste
2660793a31 Small refactoring in selectors.cc 2015-07-01 23:54:17 +01:00
Maxime Coste
28ebe776c0 Refactor select_arguments and slightly change behaviour for non-inner
non inner argument contains the argument, preceeding whitespaces,
and eventual ending comma, except for first arguments (that
contains the whitespaces after the comma), and last argument (that
contains the comma before it).
2015-07-01 23:47:22 +01:00
Maxime Coste
33616f4192 Merge branch 'remap-objects' of http://github.com/elegios/kakoune 2015-07-01 22:08:17 +01:00
Viktor Palmkvist
ab2007bd4e Add remapping of text object keys 2015-07-01 17:53:38 +02:00
Viktor Palmkvist
13d212f445 Added argument text object 2015-07-01 17:42:10 +02:00
Maxime Coste
ee6fc92ae2 Fix stupid bug in '*' 2015-07-01 13:33:20 +01:00
Maxime Coste
58d115ec88 Force redraw all clients after a face changed 2015-06-30 19:12:25 +01:00
xificurC
fbb216d2ed commands starting with horizontal whitespace don't go into the history 2015-06-30 16:06:49 +02:00
Maxime Coste
670d8f7d1e Use tparm instead of tiparm 2015-06-30 13:35:51 +01:00
Maxime Coste
eb4ac85fb1 Force setting of terminal hardware scroll region on resize
It seems there is a race condition with VTE based terminals when
created and resized almost immediatly (like when doing :new) where
we end up with the hardware scroll region set to the old terminal
size.
2015-06-30 09:08:44 +01:00
Maxime Coste
130b22ff74 Refactor resize handling in NCursesUI 2015-06-30 00:31:26 +01:00
Maxime Coste
3fe8446065 Use StatusLine face as default for the status line 2015-06-29 22:48:26 +01:00
Maxime Coste
05b4d95a56 Run BufReadFifo hook after reading from fifo 2015-06-28 11:06:19 +01:00
Maxime Coste
8795a56731 Merge overlapping selections before erasing
Overlapping selections on erase confuse the ForwardChangeTracker
and will confuse the user,

Fixes #298
2015-06-28 10:16:39 +01:00
Maxime Coste
bf09f464c2 Use a relative symlink for autoload 2015-06-27 16:12:04 +01:00
Maxime Coste
44d7910336 Merge branch 'master' of http://github.com/tduzan/kakoune 2015-06-27 11:02:16 +01:00