Commit Graph

1047 Commits

Author SHA1 Message Date
Maxime Coste
682e4faff0 select and split operations use the search pattern register 2013-02-20 14:04:46 +01:00
Maxime Coste
02b01e2f0a ShellManager: catch exception thrown by env var functors 2013-02-19 19:06:13 +01:00
Maxime Coste
a83731c8e1 search: fix empty search string, use previous pattern 2013-02-19 19:05:13 +01:00
Maxime Coste
c451dd07c6 InputHandler: do not put empty lines in history 2013-02-19 19:04:36 +01:00
Maxime Coste
18aac3d4e8 Add '*' binding, which (smart) copy current selection to search pattern 2013-02-19 19:04:09 +01:00
Maxime Coste
a453ddaf37 Add support for Home/End key in prompts 2013-02-19 13:50:27 +01:00
Maxime Coste
b08749285e move status line generation code to client manager 2013-02-18 19:03:39 +01:00
Maxime Coste
b43fdc7eb6 Add macro recording/replay support 2013-02-18 18:58:07 +01:00
Maxime Coste
577734dae7 expose exec_keys function in commands.hh 2013-02-18 18:57:08 +01:00
Maxime Coste
9936ace0db input_handler: ask dimensions to ui instead of window 2013-02-18 14:13:52 +01:00
Maxime Coste
fc2dd599a3 Move last insert state from context to input handler 2013-02-18 14:07:30 +01:00
Maxime Coste
0e081a76c1 make keymap definition more readable using a select helper function 2013-02-18 14:01:24 +01:00
Maxime Coste
67971995f8 Fix class/struct mismatches 2013-02-18 14:00:43 +01:00
Maxime Coste
bd5955c737 grep: remove enventual \r 2013-02-13 14:32:30 +01:00
Maxime Coste
4eea0a4ce1 Window: try to show as much of the selection as possible 2013-02-12 19:01:25 +01:00
Maxime Coste
cb26948ad3 ClientManager: move the Client inner class detail in the cpp file 2013-02-07 19:25:42 +01:00
Maxime Coste
32e6184210 context_wrap: create a DynamicSelectionList only when needed 2013-02-07 19:25:07 +01:00
Maxime Coste
2f9041b842 Editor: fix warning 2013-02-07 13:37:22 +01:00
Maxime Coste
6c7d646d35 exec keys: push_jump if editor has changed 2013-02-07 13:35:21 +01:00
Maxime Coste
785abfbad5 ctags.kak: do not automatically enable info tooltips 2013-01-31 19:00:02 +01:00
Maxime Coste
1c301482d5 tweak buffer unit test 2013-01-31 18:59:23 +01:00
Maxime Coste
edef8e4e98 Remove Set and use unordered_set 2013-01-31 18:58:25 +01:00
Maxime Coste
7f02ef334f add some tests for Key functions 2013-01-30 19:16:36 +01:00
Maxime Coste
bc63be3388 open_fifo uses fcntl for more portable CLOEXEC bit setting 2013-01-30 19:08:16 +01:00
Maxime Coste
45367bf447 ctags.kak: tweak auto info 2013-01-30 19:05:52 +01:00
Maxime Coste
c9b113fd5f InputHandler: add some new hooks 2013-01-30 19:04:03 +01:00
Maxime Coste
de0f765498 Keys: add key_to_str function 2013-01-30 19:03:11 +01:00
Maxime Coste
045aa0c7ec style fix 2013-01-30 00:27:22 +01:00
Maxime Coste
e278196e99 ctags: initial auto fonction documentation support 2013-01-30 00:24:10 +01:00
Maxime Coste
00a9cdfc90 Context: remove some unused code 2013-01-29 23:16:58 +01:00
Maxime Coste
8933109cc5 Context: fix unintialized m_input_handler 2013-01-29 19:13:39 +01:00
Maxime Coste
252f875926 fix sort_and_merge_overlapping 2013-01-29 19:05:40 +01:00
Maxime Coste
84ea452ed2 info command take a -anchor <pos> instead of -inline params 2013-01-29 18:56:14 +01:00
Maxime Coste
f8209e3b52 fix contains for empty containers 2013-01-29 18:55:32 +01:00
Maxime Coste
3171ab0c52 NCurses: fix multiline info 2013-01-29 14:24:42 +01:00
Maxime Coste
2235944e60 Add NormalIdle hook support 2013-01-29 13:58:19 +01:00
Maxime Coste
38a67e72bc Do not pass a context to InputHandler methods 2013-01-29 13:49:01 +01:00
Maxime Coste
94bbf47cd4 InputHandler have it's own context 2013-01-28 13:48:34 +01:00
Maxime Coste
3d430e14c4 Buffer: small fix in apply_modification 2013-01-28 13:45:32 +01:00
Maxime Coste
54725ebcca Buffer::do_insert: fix on_insert call when inserting at the end 2013-01-24 14:08:24 +01:00
Maxime Coste
28cb78bed1 Editor: refactor InsertMode::Replace 2013-01-23 18:58:43 +01:00
Maxime Coste
410067282a Buffer: end is either one past last character, or one past last line 2013-01-23 18:52:42 +01:00
Maxime Coste
72cc61c987 add undo unit_test and fix Buffer 2013-01-23 14:39:33 +01:00
Maxime Coste
3404366b65 add more asserts 2013-01-23 14:39:33 +01:00
Maxime Coste
f14bc5e310 Buffer: small style fixes 2013-01-23 13:47:45 +01:00
Maxime Coste
9dbc6adcda add a SIGSEGV handler 2013-01-23 13:46:18 +01:00
Maxime Coste
2f9e061252 assert: add some debug info in the message 2013-01-23 13:45:44 +01:00
Maxime Coste
4497767492 NCursesUI::get_key(): move getch_iterator as a local type 2013-01-22 14:29:16 +01:00
Maxime Coste
0c8832c42a LineAndColumn::operator+= is not constexpr 2013-01-22 14:28:43 +01:00
Maxime Coste
1b53b92267 Buffer: check that newlines are at the end of lines 2013-01-22 14:28:15 +01:00
Maxime Coste
f7038980a0 Add kak_cursor_{line,column} env var 2013-01-21 13:58:54 +01:00
Maxime Coste
9002059c0d Window: fix display position, count utf8 characters for column 2013-01-17 19:49:49 +01:00
Maxime Coste
f1b6108367 NCurses: use default background for '~' 2013-01-17 19:49:48 +01:00
Maxime Coste
9c2bbe218b replace char: fix unicode handling 2013-01-17 19:49:48 +01:00
Maxime Coste
44ca4d23de Fix sort_and_merge_overlapping 2013-01-17 19:49:48 +01:00
Maxime Coste
3f01f4bdf5 Add some documentation to InputHandler 2013-01-17 14:27:32 +01:00
Maxime Coste
d1f15123e4 InputHandler: minor code cleanup 2013-01-17 14:22:24 +01:00
Maxime Coste
edb5dbc56f move {exec,eval}_string common code to a helper context_wrap function 2013-01-17 14:06:06 +01:00
Maxime Coste
c45838cc57 Move Insertion Hooks handing to the input handler 2013-01-17 13:58:57 +01:00
Maxime Coste
cedb0d18a3 exec and eval accepts a restore-selection parameter 2013-01-17 13:58:09 +01:00
Maxime Coste
621be2ceab Hooks now takes a non-const context 2013-01-17 13:45:43 +01:00
Maxime Coste
bdc47ddef8 NCursesUI: redraw becomes a member 2013-01-15 14:16:45 +01:00
Maxime Coste
93cad94330 InputHandler: Insert mode calls 'InsertIdle' hook when idle 2013-01-15 14:15:12 +01:00
Maxime Coste
12ce590f18 Context: add a hooks method similar to the options one 2013-01-14 19:26:44 +01:00
Maxime Coste
a1998dac7a InputHandler: use a timer for word completion instead of calling it at each insertion 2013-01-14 19:17:37 +01:00
Maxime Coste
90eeb7b8a7 EventManager: add support for timers 2013-01-14 19:07:38 +01:00
Maxime Coste
eaaf88db1d rename StronglyTypedInteger to more accurate StronglyTypedNumber 2013-01-14 18:51:45 +01:00
Maxime Coste
3d00f398fe NCurses: redraw after menu/info window is modified 2013-01-14 18:51:07 +01:00
Maxime Coste
310ec1f791 move input watching responsibility into UserInterface implementations 2013-01-14 18:50:17 +01:00
Maxime Coste
d2f0e2de66 RemoteClient owns the FDWatcher of it's socket 2013-01-11 18:44:02 +01:00
Maxime Coste
914ede7a82 Add and use a Set template class for recuring small sets 2013-01-11 14:28:13 +01:00
Maxime Coste
79d28e68dc Refactor EventManager
Watching a file descriptor is now done using a FDWatcher object
2013-01-10 19:10:42 +01:00
Maxime Coste
bba7152063 Add backward search support (bound to alt-/) 2013-01-08 18:46:45 +01:00
Maxime Coste
f77509d498 add sh.kak for shell script highlighting 2013-01-08 14:01:22 +01:00
Maxime Coste
59941bcfa9 Make: fix userconfig target 2013-01-08 14:00:13 +01:00
Maxime Coste
3f7bf82cde Support for selecting to surrounding object begin/end with [ and ] 2013-01-07 18:53:27 +01:00
Maxime Coste
8d4678a82e Autoname client on creation, and access client name from shell with $kak_client 2013-01-07 13:59:09 +01:00
Maxime Coste
7acd4e3e6a minor code cleanup 2013-01-06 21:58:02 +01:00
Maxime Coste
9efc32596b make: use a makecmd option 2013-01-06 19:21:42 +01:00
Maxime Coste
f3640a2d03 alt-r rotates selections 2013-01-05 18:26:57 +01:00
Maxime Coste
4b649d386c various code style fixes 2013-01-04 18:39:13 +01:00
Maxime Coste
5939eb219f add client.kak providing 'new' command for opening a new client
Autodetect tmux, use tmux if we are in a tmux session, else fallback to
urxvt.
2013-01-04 18:31:37 +01:00
Maxime Coste
03d32c2e2d tweak kakrc highlighting 2013-01-03 18:53:04 +01:00
Maxime Coste
08fd946c07 Add a nop command to avoid accidental shell output evaluation 2013-01-03 18:52:07 +01:00
Maxime Coste
f84e46f805 tweak errjump command 2013-01-03 18:47:51 +01:00
Maxime Coste
ae9aadb07d Fix captures preservation in Editor 2013-01-03 18:47:02 +01:00
Maxime Coste
2195d59b49 refactoring selectors 2013-01-03 14:30:14 +01:00
Maxime Coste
4f6507b808 Highlight last selection differently 2013-01-03 14:01:34 +01:00
Maxime Coste
0045456f87 alt-n replace last selection with next match 2013-01-03 14:00:59 +01:00
Maxime Coste
02b9fcc3df Editor: add a ReplaceLast select mode 2013-01-03 14:00:31 +01:00
Maxime Coste
9fb0129061 Editor: keep last selection as last when sorting
sort selections 'circularly', keeping the last one
at the end of the list.
2013-01-03 13:59:53 +01:00
Maxime Coste
a9d5f126a0 Editor: preserve captures accross movements 2013-01-02 13:49:02 +01:00
Maxime Coste
476363bf0d Editor: cleanup check_invariants calls 2012-12-31 18:36:28 +01:00
Maxime Coste
074a21463b add a current search highlighter 2012-12-31 14:37:11 +01:00
Maxime Coste
d5582b0df4 add incsearch option to choose if incremental search is enabled 2012-12-31 14:12:00 +01:00
Maxime Coste
76c3246642 Add Editor::select(const Selection&, SelectMode) 2012-12-31 14:06:20 +01:00
Maxime Coste
4e69ec078d minor cleanup 2012-12-31 13:57:21 +01:00
Maxime Coste
18b35a3ab3 Editor: merge_overlapping -> sort_and_merge_overlapping 2012-12-31 13:56:52 +01:00
Maxime Coste
dc9635a247 Fix join on last line (it appended a trailing space) 2012-12-31 13:44:01 +01:00
Maxime Coste
fe363094cf support count in search next, and only push jump in replace mode 2012-12-31 13:42:59 +01:00