Maxime Coste
|
09fc14be4b
|
Small refactor in highlighters.cc
|
2015-02-01 23:30:58 +00:00 |
|
Maxime Coste
|
4d6b8a70e1
|
Fix highlighter update with new LineModification behaviour
|
2015-02-01 23:19:07 +00:00 |
|
Maxime Coste
|
d3bccfeb94
|
Fixes in line_modification change, along with style tweak
|
2015-02-01 22:33:59 +00:00 |
|
Maxime Coste
|
0b4ecef2d2
|
Rewrite line modifications, hopefully with easier to comprehend code
|
2015-01-31 23:50:24 +00:00 |
|
Maxime Coste
|
804a050c39
|
Tweak Buffer::Change layout
|
2015-01-29 22:44:07 +00:00 |
|
Maxime Coste
|
ffff4711c5
|
Add history memory domain
|
2015-01-28 22:33:29 +00:00 |
|
Maxime Coste
|
bb74770a24
|
Add C-f and C-b binding for page up/page down
Fixes #173
|
2015-01-27 23:33:22 +00:00 |
|
Maxime Coste
|
cc699faa54
|
Store direct ref_ptr<StringStorage> for WordDB lines
Storing a SharedString is a waste, we want the whole line.
|
2015-01-27 13:12:52 +00:00 |
|
Maxime Coste
|
fb98ff652d
|
Keep all completion matches when selecting a candidate
|
2015-01-27 13:12:52 +00:00 |
|
Maxime Coste
|
2c425bb436
|
Always inline StringStorage methods
|
2015-01-26 19:41:26 +00:00 |
|
Maxime Coste
|
b697bf1795
|
Release display buffers when a window is added to free list
|
2015-01-26 19:41:10 +00:00 |
|
Maxime Coste
|
92cb3a035f
|
Try to improve ga behaviour
|
2015-01-26 19:40:48 +00:00 |
|
Maxime Coste
|
42966317b8
|
Tweak SharedString
|
2015-01-25 22:36:05 +00:00 |
|
Maxime Coste
|
79954e89ab
|
Fix GCC 4.8 compilation
|
2015-01-24 14:36:03 +00:00 |
|
Maxime Coste
|
f4e96e7f2e
|
Fix bug when deleting end of buffer text using multiple selections
|
2015-01-23 19:12:15 +00:00 |
|
Maxime Coste
|
cb197f57ba
|
Avoid temporary strings on buffer load/reload
Pass directly a Vector<ref_ptr<StringStorage>> to the buffer
|
2015-01-22 13:39:29 +00:00 |
|
Maxime Coste
|
2516c16bb9
|
Fix error message in tuple option parsing
|
2015-01-22 13:10:21 +00:00 |
|
Maxime Coste
|
0ff415597e
|
Add Display memory domain
|
2015-01-21 13:35:46 +00:00 |
|
Maxime Coste
|
b2d5b9ca5f
|
Try to fix travis compilation errors
|
2015-01-21 13:35:23 +00:00 |
|
Maxime Coste
|
5383cece3e
|
Fix write_debug with no debug buffer and multiple lines
|
2015-01-20 19:57:17 +00:00 |
|
Maxime Coste
|
b1281d225d
|
rename SharedString::Storage to StringStorage and use directly in Buffer
|
2015-01-19 19:31:56 +00:00 |
|
Maxime Coste
|
3697548e35
|
Use a single allocation for SharedString::Storage
|
2015-01-19 13:25:04 +00:00 |
|
Maxime Coste
|
39689f0a18
|
Add helper for overloading operator new/delete
|
2015-01-18 18:49:32 +00:00 |
|
Maxime Coste
|
9b057896d4
|
Replace std::shared_ptr with homemade, intrusive, ref_ptr
That saves a lot of memory as sizeof(SharedString) is now one
pointer less.
|
2015-01-18 18:23:58 +00:00 |
|
Maxime Coste
|
ef26b77aa7
|
buffer updates are in BufferMeta memory domain
|
2015-01-18 11:22:28 +00:00 |
|
Maxime Coste
|
7cdeb3d7f7
|
simplify echo code, avoid trailing spaces
|
2015-01-17 22:55:48 +00:00 |
|
Maxime Coste
|
32319aca45
|
Add support for per type default memory domain
|
2015-01-16 13:58:21 +00:00 |
|
Maxime Coste
|
4fd92127c3
|
Add a no copy shared string constructor, used for map lookup, and intern words
|
2015-01-15 19:58:08 +00:00 |
|
Maxime Coste
|
bb915f0bc5
|
Fix filename completion
|
2015-01-15 19:26:38 +00:00 |
|
Maxime Coste
|
8eef019cf8
|
Do not store lines to word in word db, just keep the old lines alive
|
2015-01-15 19:26:38 +00:00 |
|
Maxime Coste
|
76d806e98d
|
Replace InternedStrings with SharedString, shared_ptr based
|
2015-01-15 19:26:38 +00:00 |
|
Maxime Coste
|
2a878d51fd
|
Even more memory tracking
|
2015-01-14 19:16:32 +00:00 |
|
Maxime Coste
|
442304bc1c
|
Add missing cast to void* in placement new
|
2015-01-14 00:01:20 +00:00 |
|
Maxime Coste
|
2415d3f63c
|
Add missing <new> include
|
2015-01-13 23:54:58 +00:00 |
|
Maxime Coste
|
1e3e0b01af
|
Fix compatibility with gcc 4.8
|
2015-01-13 22:56:51 +00:00 |
|
Maxime Coste
|
118a6e1a7c
|
Use uint32_t for interned strings slots
|
2015-01-13 13:58:11 +00:00 |
|
Maxime Coste
|
61619a4d4d
|
Style tweak in WordDB
|
2015-01-13 13:57:44 +00:00 |
|
Maxime Coste
|
0412487b0c
|
-rdynamic does not work on gcc 4.9 under cygwin
|
2015-01-13 13:50:16 +00:00 |
|
Maxime Coste
|
beb3390334
|
Add interned string stats in debug command
|
2015-01-13 13:48:16 +00:00 |
|
Maxime Coste
|
b9c4fc2d8c
|
Add size_t and float to_string overload, and _sv UDL
|
2015-01-13 13:47:46 +00:00 |
|
Maxime Coste
|
f440c31370
|
Add missing cstddef include for ptrdiff_t
|
2015-01-12 20:03:52 +00:00 |
|
Maxime Coste
|
c8d651a517
|
Protect use of mallinfo in #ifdef __GLIBC__ blocks
|
2015-01-12 19:55:58 +00:00 |
|
Maxime Coste
|
e8b8070536
|
refactor slighly memory domain handling
|
2015-01-12 19:48:51 +00:00 |
|
Maxime Coste
|
19797ae8d6
|
Fix flag line highlighting
|
2015-01-12 19:35:31 +00:00 |
|
Maxime Coste
|
da562e03a0
|
replace all std::vector with Vector
|
2015-01-12 13:58:41 +00:00 |
|
Maxime Coste
|
83d0813b0f
|
Yet more tracking
|
2015-01-12 13:45:44 +00:00 |
|
Maxime Coste
|
f1f10639a5
|
Compute tracked memory total as well
|
2015-01-12 13:32:30 +00:00 |
|
Maxime Coste
|
0bdf1778cb
|
Some more memory tracking
|
2015-01-12 13:32:14 +00:00 |
|
Maxime Coste
|
dedb16bc73
|
Track some more memory
|
2015-01-11 19:28:03 +00:00 |
|
Maxime Coste
|
9adb97ea28
|
Track buffer lines memory
|
2015-01-10 12:56:09 +00:00 |
|
Maxime Coste
|
9f9156a752
|
Track String memory allocations
|
2015-01-09 13:57:21 +00:00 |
|
Maxime Coste
|
e5b36f548b
|
Add missing include
|
2015-01-08 19:31:28 +00:00 |
|
Maxime Coste
|
9b30e7469a
|
Add initial memory domain allocation tracking support
|
2015-01-07 19:29:31 +00:00 |
|
Maxime Coste
|
de12fe1cc6
|
Add completion for debug command
|
2015-01-06 19:06:53 +00:00 |
|
Maxime Coste
|
295a97f2a6
|
Rename memoryview to ArrayView
|
2015-01-06 13:43:37 +00:00 |
|
Maxime Coste
|
8e92e0eebc
|
Go back to previous buffer name completion implementation
|
2015-01-05 19:33:33 +00:00 |
|
Maxime Coste
|
c279da14e3
|
Refactor write_debug to avoid empty first line in *debug* buffer
|
2015-01-05 09:38:51 +00:00 |
|
Maxime Coste
|
ca9baecd4c
|
Another stule tweak
|
2015-01-04 22:34:36 +00:00 |
|
Maxime Coste
|
23f30f6709
|
Small style tweak
|
2015-01-03 17:35:53 +00:00 |
|
Maxime Coste
|
019a91505f
|
Remove unneeded static String
|
2015-01-02 11:55:15 +00:00 |
|
Maxime Coste
|
15542c3357
|
minor style tweak
|
2015-01-01 12:09:30 +00:00 |
|
Maxime Coste
|
c698032ace
|
Style tweak
|
2014-12-31 13:09:35 +00:00 |
|
Maxime Coste
|
0493cf6d62
|
Use a struct rather than a std::pair for InternedString DataAndRefCount
|
2014-12-30 11:56:01 +00:00 |
|
Maxime Coste
|
d4a929b42e
|
Use a struct KeyAndName rather than a std::pair
|
2014-12-29 17:18:42 +00:00 |
|
Maxime Coste
|
955d1dea66
|
Small formatting fixes
|
2014-12-29 12:19:16 +00:00 |
|
Maxime Coste
|
8cc96ec36b
|
Add a join function for joining strings using a specific char
|
2014-12-28 11:16:51 +00:00 |
|
Maxime Coste
|
71bfe5498d
|
Refactor color functions
|
2014-12-27 12:09:28 +00:00 |
|
Maxime Coste
|
248c1bda02
|
Style tweak
|
2014-12-26 10:53:30 +00:00 |
|
Maxime Coste
|
33bde3e067
|
Minor code tweak in optional.hh
|
2014-12-25 10:59:06 +00:00 |
|
Maxime Coste
|
2e1c6eaff7
|
sort includes
|
2014-12-24 13:03:17 +00:00 |
|
Maxime Coste
|
2852e0fbe5
|
Remove trailing blank lines
|
2014-12-23 23:00:20 +00:00 |
|
Maxime Coste
|
b0fef1a962
|
Rename id_map to IdMap
|
2014-12-23 22:51:00 +00:00 |
|
Maxime Coste
|
fb611e2f62
|
Use an id_map directly for HighlighterRegistry rather than the FunctionRegistry class
|
2014-12-23 22:15:53 +00:00 |
|
Maxime Coste
|
c17fa7be14
|
Tweak id_map implementation
|
2014-12-23 22:15:25 +00:00 |
|
Maxime Coste
|
79de7ee717
|
Code refactoring in WordDB
|
2014-12-23 19:32:42 +00:00 |
|
Maxime Coste
|
ed54e102ee
|
Extract complete_buffer_name as a free function in commands.cc
|
2014-12-23 17:42:17 +00:00 |
|
Maxime Coste
|
ae602106e0
|
Remove prefix_complete, superseeded by complete
|
2014-12-23 17:39:12 +00:00 |
|
Maxime Coste
|
b6ff15aa75
|
Unify completion from container content logic
|
2014-12-23 13:54:09 +00:00 |
|
Maxime Coste
|
064fb81b8d
|
Move containers utils to containers.hh and add filtered/transformed utils
|
2014-12-23 13:40:26 +00:00 |
|
Maxime Coste
|
bf980eba04
|
Merge branch 'list_buffers'
|
2014-12-23 13:20:29 +00:00 |
|
Eike Plack
|
9f81093411
|
Expose buffer list to shell over $kak_buflist
|
2014-12-23 02:49:53 +01:00 |
|
Maxime Coste
|
ff1f4dcb5c
|
Minor cleanup
|
2014-12-22 20:08:53 +00:00 |
|
Maxime Coste
|
e911c86306
|
Remove useless code
|
2014-12-22 20:08:30 +00:00 |
|
Maxime Coste
|
7a7ad57871
|
Support absolute paths when completing commands
|
2014-12-21 17:08:33 +00:00 |
|
Maxime Coste
|
5b94b73152
|
Small code tweak
|
2014-12-20 18:40:17 +00:00 |
|
Maxime Coste
|
116ea7364a
|
Restore some special behaviours, I missed them in interactive mode.
|
2014-12-19 13:58:33 +00:00 |
|
Maxime Coste
|
c454cf1379
|
Avoid eol after undo/redo
|
2014-12-18 23:17:38 +00:00 |
|
Maxime Coste
|
eee2cb3a6e
|
Revert "Add support for BufInsert/BufErase hooks"
This is potentially quite slow, and not used, reintroduce
later if we have a use case for it.
This reverts commit 5f3a477277 .
|
2014-12-18 23:13:45 +00:00 |
|
Maxime Coste
|
1c8ee78d1a
|
Do not register timers for transient input handlers
|
2014-12-18 23:12:58 +00:00 |
|
Maxime Coste
|
4827ae0a53
|
Do not wait for the first event before drawing clients
|
2014-12-18 19:01:18 +00:00 |
|
Maxime Coste
|
5f3a477277
|
Add support for BufInsert/BufErase hooks
|
2014-12-17 13:56:45 +00:00 |
|
Maxime Coste
|
3b9f40fd58
|
Fix split selecting the buffer end
Fixes #241
|
2014-12-17 13:21:20 +00:00 |
|
Maxime Coste
|
e0c452adb6
|
Tweak keymap_manager style, fix missing move
|
2014-12-17 13:20:48 +00:00 |
|
Maxime Coste
|
ebecd60eb8
|
Rework hashing, use a more extensible framework similar to n3876 proposal
std::hash specialization is a pain to work with, stop using that, and
just specialize a 'size_t hash_value(const T&)' free function.
|
2014-12-16 18:57:19 +00:00 |
|
Maxime Coste
|
72bdb8faa9
|
Always use plain ncurses.h
|
2014-12-14 23:42:00 +00:00 |
|
Maxime Coste
|
fc4d77964e
|
Remove special case when appending at eol
|
2014-12-13 13:10:40 +00:00 |
|
Maxime Coste
|
a0b35bf590
|
Add support for user mappings, bound to comma
:map have a 'user' mode that is accessible through the comma key.
the mapping will get executed in normal mode.
|
2014-12-12 13:57:02 +00:00 |
|
Maxime Coste
|
801bd5245d
|
Avoid very long timeouts in event manager
|
2014-12-12 13:55:32 +00:00 |
|
Maxime Coste
|
9c1ca303ff
|
Change a-| to ignore output, and add ! and a-! for insert/append cmd output
|
2014-12-11 23:21:11 +00:00 |
|
Maxime Coste
|
c68c9abcac
|
Display the register we yanked to
|
2014-12-11 19:36:41 +00:00 |
|
Maxime Coste
|
2c4ed3a78c
|
Do not avoid eol on escape
|
2014-12-11 19:36:20 +00:00 |
|
Maxime Coste
|
7a10029c4f
|
Use algorithms in id_map rather than raw loops
|
2014-12-11 13:55:04 +00:00 |
|
Maxime Coste
|
35e7a67c6a
|
Do not sort results of WordDB, simplify code
|
2014-12-11 13:14:57 +00:00 |
|
Maxime Coste
|
f32ab5793e
|
Remove unneeded includes
|
2014-12-11 13:10:41 +00:00 |
|
Maxime Coste
|
e0cc59914e
|
Fix OSX compilation
|
2014-12-10 20:54:47 +00:00 |
|
Maxime Coste
|
319cfcda34
|
Get rid of uses of unordered_set, vector is just simpler and faster...
|
2014-12-09 21:59:47 +00:00 |
|
Maxime Coste
|
0a57fa0766
|
Rename ncurses.{cc,hh} to ncurses_ui.{cc,hh}
|
2014-12-09 13:57:21 +00:00 |
|
Maxime Coste
|
2f2752cd1d
|
Force inline StringView::{begin,end}
|
2014-12-09 13:56:05 +00:00 |
|
Maxime Coste
|
87d312b6d4
|
More string cleanups
|
2014-12-08 13:59:29 +00:00 |
|
Maxime Coste
|
9f4af93780
|
cleanup in string.hh
|
2014-12-08 13:46:07 +00:00 |
|
Maxime Coste
|
1a17d9c73f
|
const String& to StringView
|
2014-12-07 21:01:42 +00:00 |
|
Maxime Coste
|
d57be83522
|
Disable history writing when running hooks
|
2014-12-05 14:01:07 +00:00 |
|
Maxime Coste
|
1c5975835e
|
Consolidate constext disablable feature in a 'Disableable' helper
|
2014-12-05 13:47:09 +00:00 |
|
Maxime Coste
|
423030c9bd
|
Refactor (again) event handling, use proper infinite timeout
|
2014-12-04 20:01:34 +00:00 |
|
Maxime Coste
|
176358f6b7
|
Fix logic error in shell manager
|
2014-12-04 13:58:02 +00:00 |
|
Maxime Coste
|
a51dd737ea
|
Limit event handler timeout to 2 seconds
|
2014-12-03 19:55:53 +00:00 |
|
Maxime Coste
|
d437ae0ecf
|
Microsecond is 10^(-6)s, not 10^(-9)s
|
2014-12-03 18:57:33 +00:00 |
|
Maxime Coste
|
995c7b4634
|
Fix timeval field types
|
2014-12-03 14:02:46 +00:00 |
|
Maxime Coste
|
24519e645e
|
Revert "Handle SIGCHLD signals when piping"
This reverts commit 8208e75294 .
|
2014-12-03 13:57:04 +00:00 |
|
Maxime Coste
|
0517a19e6d
|
Use a select based event handling and fix deadlock
|
2014-12-03 13:56:02 +00:00 |
|
Maxime Coste
|
def4221ac7
|
Pass a BufferRange to highlighters, fix subregions
Regions highlighter can now correctly be applied to only subrange
of the buffer, fixing some corner cases in recursive regions.
|
2014-12-02 19:56:17 +00:00 |
|
Maxime Coste
|
8208e75294
|
Handle SIGCHLD signals when piping
|
2014-12-02 18:59:39 +00:00 |
|
Maxime Coste
|
4fbaee61c5
|
Change default PrimarySelection face to be white on blue
|
2014-12-01 13:06:26 +00:00 |
|
Maxime Coste
|
a3b3001d8f
|
Rework client pending key handling, fix insert/normal timers
|
2014-11-29 20:14:52 +00:00 |
|
Maxime Coste
|
77e2e8a31e
|
Support selecting yank/paste register with "
|
2014-11-28 13:58:36 +00:00 |
|
Maxime Coste
|
75fe9a76db
|
Fix compilation
|
2014-11-28 13:47:42 +00:00 |
|
Maxime Coste
|
7c87abe856
|
Process ctrl-c when not in urgent event mode as well
|
2014-11-28 13:30:58 +00:00 |
|
Maxime Coste
|
da9f688f37
|
Fix indent/deindent when multiple selections are on same line
|
2014-11-28 13:22:54 +00:00 |
|
Maxime Coste
|
6902301674
|
Fix bug in :debug command
|
2014-11-28 13:18:08 +00:00 |
|
Maxime Coste
|
4c7f6985f1
|
Add an 'options' debug command
|
2014-11-26 13:27:26 +00:00 |
|
Maxime Coste
|
49931fbf05
|
Separate events between normal and urgent ones
Run urgent ones while executing %sh blocks.
Fixes #236
|
2014-11-25 13:52:06 +00:00 |
|
Maxime Coste
|
0272da65c0
|
Style tweak
|
2014-11-24 13:49:41 +00:00 |
|
Maxime Coste
|
35b89d5b87
|
Display selection count in insert mode line
|
2014-11-24 13:26:42 +00:00 |
|
Maxime Coste
|
dfed7ed211
|
const String& to StringView
|
2014-11-23 19:49:59 +00:00 |
|
Maxime Coste
|
88def85d77
|
Do not merge overlapping selections in InputMode::Replace
Fixes #237
|
2014-11-22 21:20:29 +00:00 |
|
Maxime Coste
|
f56b6ed75b
|
Do not record keys that were not user generated
|
2014-11-21 19:00:34 +00:00 |
|
Maxime Coste
|
e8c8833211
|
Do not reset edition level to 0 on buffer change
Keep it as is, commit undo in current buffer, and we will commit it in
the new buffer when edition level gets back to 0.
|
2014-11-21 18:56:39 +00:00 |
|
Maxime Coste
|
5497064f9c
|
Fix missing include in assert.cc
|
2014-11-20 19:32:58 +00:00 |
|
Maxime Coste
|
bfbee3c71e
|
Fix info box placement when too wide
|
2014-11-20 18:45:27 +00:00 |
|
Maxime Coste
|
b5ccc8bc73
|
Improve line wrapping behaviour
|
2014-11-20 18:45:10 +00:00 |
|
Maxime Coste
|
04ecb2cc5a
|
Wrap info boxes text in ncurses display even in Inline menu style
|
2014-11-20 13:56:37 +00:00 |
|
Maxime Coste
|
a444cd1d60
|
Improve wrap_lines behaviour, split on punctiation as well
|
2014-11-20 13:55:07 +00:00 |
|
Maxime Coste
|
314d662c5f
|
Change wrap_lines to return StringViews, move it to string.cc
|
2014-11-20 13:15:11 +00:00 |
|
Maxime Coste
|
eb57d0a1d9
|
Refresh stdscr at startup to avoid flickering
|
2014-11-18 00:01:29 +00:00 |
|
Maxime Coste
|
6663d50d95
|
Tweak option completion behaviour
|
2014-11-17 20:15:54 +00:00 |
|
Maxime Coste
|
0c3acb74c2
|
Remove unneeded string copies
|
2014-11-17 19:38:30 +00:00 |
|
Maxime Coste
|
7619fcb198
|
option completion are valid until a modification is made before it
|
2014-11-17 13:53:59 +00:00 |
|
Maxime Coste
|
1bd2260fa5
|
Import std::begin/std::end so that container utils work correctly with non std containers
|
2014-11-17 13:51:21 +00:00 |
|
Maxime Coste
|
b43f0fb853
|
Yet more StringView params, less const String&
|
2014-11-16 20:55:36 +00:00 |
|
Maxime Coste
|
ece03c3599
|
More const String& to StringView
|
2014-11-15 18:45:56 +00:00 |
|