Commit Graph

153 Commits

Author SHA1 Message Date
Maxime Coste
c03506ca04 save and restore " and / registers in exec_keys 2012-02-27 19:51:30 +00:00
Maxime Coste
13d74414e1 fix exec_commands_in_file parsing of [\'"`] strings 2012-02-27 14:25:07 +00:00
Maxime Coste
7026693ecd move ncurses function to ncurses.{cc,hh} 2012-02-16 14:25:16 +00:00
Maxime Coste
6aacebd2e0 Add an echo command which print it's params in the status line 2012-02-15 14:24:52 +00:00
Maxime Coste
e9af61eb9f def command takes an optional argument for parameter policy
-env-params puts parameters in kak_param{0..9}
-append-params appends parameters to the ones defined in the command
2012-02-15 13:58:08 +00:00
Maxime Coste
03976e0a01 edit command supports optional line and column parameter 2012-02-13 21:54:30 +00:00
Maxime Coste
3019ce3d3c edit command switch to the given buffer if it is already opened
use edit! (or e!) to force reloading of the buffer
2012-02-13 21:48:16 +00:00
Maxime Coste
3273551665 add 'def' command to define new user commands 2012-02-13 21:40:09 +00:00
Maxime Coste
5f86941b8f support multiline strings when executing file commands 2012-02-13 21:39:41 +00:00
Maxime Coste
2c8a6ca56a Support shell commands expansion in CommandManager 2012-02-13 21:38:07 +00:00
Maxime Coste
9304e41326 support register access through ctrl-r in ncurses_prompt 2012-02-13 13:37:41 +00:00
Maxime Coste
333b470dd2 giving a count to paste selects which selections yank buffer to use
3p will paste using the yank buffer of the third selection instead
of each selection using it's own.
2012-02-10 14:00:21 +00:00
Maxime Coste
d84d085cc2 Merge captures into registers, implements register insertion 2012-02-09 23:47:55 +00:00
Maxime Coste
04a37d8895 Editor refactoring, merge undo and batch management 2012-02-07 23:41:10 +00:00
Maxime Coste
333e87dedd add a Register class, registers can now contain a list of string
That way, registers can be used to store per selection data
2012-02-07 23:01:02 +00:00
Maxime Coste
9b5e9ffee2 selectors now take a Selection as parameter instead of a BufferIterator 2012-02-07 14:26:51 +00:00
Maxime Coste
1e5d930f35 extract exec_keys function from exec_string 2012-02-07 13:35:41 +00:00
Maxime Coste
0483e951ad use memoryview instead of std::vector where applicable 2012-02-03 19:14:35 +00:00
Maxime Coste
96b167859a batches support in Editor, used by IncrementalInserter and exec_string
Editor groups all modification together in one undo group when batching.
nested batches are supported.
2012-02-03 13:55:22 +00:00
Maxime Coste
96101b4392 Use an Editor instead of a Window as much as possible 2012-02-02 20:48:03 +00:00
Maxime Coste
69d96c90da extract an Editor class from Window and refactor 2012-01-31 19:12:06 +00:00
Maxime Coste
3ef9895a97 Buffer: support creation of temporary windows to apply commands when no windows are in context 2012-01-31 14:03:10 +00:00
Maxime Coste
830d96f7a1 Buffer: add NewFile buffer type for buffer with an non existing yet file 2012-01-31 14:01:48 +00:00
Maxime Coste
73a8950e73 File: parse_filename function which handle ~ and environment variable in filenames 2012-01-29 22:24:43 +00:00
Maxime Coste
589b8e68bb history support in prompt 2012-01-25 22:32:17 +00:00
Maxime Coste
6411193f10 SelectionHighlighter: reverse color of the last char of each selection
the terminal cursor is now longer shown
2012-01-25 20:22:33 +00:00
Maxime Coste
d1c29d2b78 moving no longer clears multiple selections 2012-01-25 14:23:02 +00:00
Maxime Coste
81138b224f fix line break support in insert_char 2012-01-24 23:19:26 +00:00
Maxime Coste
381d884c16 use a settable get_key function to be able to override key reading 2012-01-24 23:18:59 +00:00
Maxime Coste
1fd8ec8bfd support Ctrl-R <reg> when inserting to insert a register 2012-01-24 19:08:57 +00:00
Maxime Coste
a62d56064f replace ncurses getch calls with a get_key method 2012-01-23 14:17:31 +00:00
Maxime Coste
a1ff9999f5 the hook command takes a first parameter to specify the hook owner
currently 'global' and 'window' are accepted owners. 'window' will
add the hook to the current context window.
2012-01-23 13:58:43 +00:00
Maxime Coste
945ad361fb HooksManager: forward declare Context instead of including context.hh 2012-01-23 13:56:43 +00:00
Maxime Coste
db9040e29e HooksManager: extract the Singleton version as GlobalHooksManager 2012-01-23 13:40:42 +00:00
Maxime Coste
73ae3d292f implement finding kak executable path on MacOS 2012-01-20 21:12:57 +00:00
Maxime Coste
2824bd9a46 HighlighterGroup: move to it's own file, Window uses them directly 2012-01-19 20:37:29 +00:00
Maxime Coste
541872cafa completion support for addgrouphl and rmgrouphl 2012-01-18 11:33:58 +00:00
Maxime Coste
cffdbcb689 replace addhl -group with addgrouphl command, and add rmgrouphl 2012-01-18 00:15:10 +00:00
Maxime Coste
ae8882b0de Context: do not permit access to window or buffer if null 2012-01-15 21:33:35 +00:00
Maxime Coste
c62b3b251d add a runtime command to execute files in the runtime directory 2012-01-15 17:34:05 +00:00
Maxime Coste
f3e8498a58 addhl supports a -group option
-group <group_id> can be used to add the highlighter in a
highlighter group which will be then handled as a whole.
2012-01-15 13:47:12 +00:00
Maxime Coste
f259af9326 CommandManager: add flags support and IgnoreSemiColons flag
commands are now registred with flags, and the IgnoreSemiColons
flag permit to specify a command which needs all the parameters
on the line, bypassing the command sequence operator ';'.

the hook command is tagged as such.
2012-01-15 03:02:08 +00:00
Maxime Coste
49ea6f7103 correctly clear the window status line 2012-01-15 01:45:23 +00:00
Maxime Coste
95db828e17 CommandManager: use directly first command parameter as the command name 2012-01-14 14:02:54 +00:00
Maxime Coste
66d91b8828 support '\' as a line continuation marker when executing commands in file 2012-01-14 13:50:45 +00:00
Maxime Coste
9557167f26 <space> with a count argument replaces current selections with the counth selection. 2012-01-09 14:28:01 +00:00
Maxime Coste
8b1b1d9cd8 Selectors: add select_surrounding to select blocks
Alt-a followed by []()<>{}bB selects the block surrounding current
selection end.

Alt-i is similar but selects only the inside of the block.
2012-01-04 14:18:08 +00:00
Maxime Coste
e59bdd931e search for kakrc next to the kak executable instead of in the current directory 2011-12-28 22:57:48 +00:00
Maxime Coste
4de41197c0 Add a | key that pipes each selection through an external filter 2011-12-28 19:04:06 +00:00
Maxime Coste
913ee3f096 Use Keys instead of char for keymap 2011-12-21 14:29:28 +00:00