Maxime Coste
413f880e9e
Regex: Support forward and backward matching code in the same CompiledRegex
...
No need to have two separate regexes to handle forward and backward
matching, just passing RegexCompileFlags::Backward will add support
for backward matching to the regex. For backward only regex, pass
RegexCompileFlags::NoForward as well to disable generation of
forward matching code.
2017-12-01 19:57:02 +08:00
Maxime Coste
e9e3dc862c
Merge git://github.com/valerdi/kakoune
2017-12-01 16:40:31 +08:00
Maxime Coste
90c91ca3a2
Merge remote-tracking branch 'lenormf/fix-dockerfile'
2017-12-01 16:39:50 +08:00
Maxime Coste
7bfb695c45
Regex: Do not allow private use codepoints literals
...
We use them to encode non-literals in lookarounds, so they can
trigger bugs.
Fixes #1737
2017-12-01 16:37:18 +08:00
Maxime Coste
8d892eeb62
Regex: use StartDesc to early out when not searching
...
Early out as well if we do not find any potential start position.
2017-12-01 15:03:03 +08:00
Maxime Coste
65b057f261
Regex: rename StartChars to StartDesc
...
It only contains chars for now, but its still more generally
describing where matches can start.
2017-12-01 14:46:18 +08:00
valerdi
4d4c6aa82b
added AbstractString to keywords
2017-11-30 15:44:12 +01:00
Maxime Coste
b91f43b031
Regex: optimize parsing a bit
2017-11-30 14:32:29 +08:00
Maxime Coste
c1f0efa3f4
Regex: smarter handling of start chars computation for character class
2017-11-30 14:19:41 +08:00
Maxime Coste
839da764e7
Regex: avoid unneeded allocations and moves by reusing MatchResults storage
2017-11-29 14:07:04 +08:00
Maxime Coste
f950fe3376
hooks.asciidoc: Fix few rendering problems
2017-11-28 19:40:07 +08:00
Maxime Coste
380ff553b5
Wrap: try to rework and simplify the algorithms further
...
Fixes #1731
2017-11-28 19:04:21 +08:00
Maxime Coste
ae0911b533
Regex: Various small code tweaks
2017-11-28 01:03:54 +08:00
Maxime Coste
4598832ed5
Regex: optimize compilation by reserving data
2017-11-28 00:59:57 +08:00
Maxime Coste
a52da6fe34
Regex: Tweak is_ctype implementation style
2017-11-28 00:13:42 +08:00
Maxime Coste
d142db80f2
Fix compute_modified_ranges corner case that would crash on undo
...
Fixes #1506
Fixes #1215
2017-11-27 20:29:01 +08:00
Maxime Coste
40352aed9d
Merge remote-tracking branch 'Delapouite/advance'
2017-11-27 16:53:41 +08:00
Delapouite
9c5fa1d68b
Docs: fix typo avance → advance in keys
2017-11-25 17:18:12 +01:00
Maxime Coste
8b40f57145
Regex: Replace generic 'Matchers' with specialized functionality
...
Introduce CharacterClass and CharacterType Regex Op, and optimize
their evaluation.
2017-11-25 18:14:15 +08:00
Maxime Coste
0d44cf9591
Regex: do not decode utf8 in accept calls as they always run on ascii
2017-11-25 18:13:27 +08:00
Maxime Coste
ec6ecd5772
Add an InsertCompletionSelect hook
...
InsertCompletionSelect will be called whenever the selected insert
completion changes. If the original text is selected back, the hook
parameter will be empty. If another candidate is selected, the hook
parameter will be its text content.
Fixes #1676
2017-11-25 13:57:47 +08:00
Maxime Coste
1ae96c977c
Small formating tweak
2017-11-25 13:46:55 +08:00
Maxime Coste
318e77b25e
Highlighters: Introduce unique highlighter support
...
Some highlighters, such as wrap or line numbers, are not intended
to be used multiple times on the same display. Add support for unique
ids that are used by highlighters to disable themselves if another
unique highlighter with the same id is supposed to override them.
The usual highlighter "precedence" takes, place, that it, that most
nested highlighter will the the one to run (window in priority to
buffer in priority to global).
2017-11-25 12:53:33 +08:00
Delapouite
66250a06eb
Rename KeyMapInfo → KeymapInfo
2017-11-24 10:34:56 +01:00
Maxime Coste
6084490a6e
Merge remote-tracking branch 'Delapouite/remaining-buffers'
2017-11-24 16:37:53 +08:00
Maxime Coste
5a0332ac87
Window: fix buffer_coord when a line buffer range is empty
...
Fixes #1711
2017-11-24 16:36:37 +08:00
Maxime Coste
74b0c98769
Merge remote-tracking branch 'occivink/comment'
2017-11-24 16:29:30 +08:00
Olivier Perret
ee117b9499
set registers directly instead of expanding options in exec
2017-11-23 10:30:10 +01:00
Maxime Coste
c0cec3e7c1
Merge remote-tracking branch 'fsub/warnings'
2017-11-23 12:30:24 +08:00
fsub
66ca53466f
Remove unused lambda captures
...
This eliminates some warnings emitted by clang++.
2017-11-22 18:43:54 +01:00
Maxime Coste
179a1f6aa1
dynregex: slight code refactor, moving a helper function to lambda
2017-11-22 15:57:59 +08:00
Maxime Coste
77b367b3e0
Wrap: simplify logic a bit and fix case where too many lines got displayed
...
Fixes #1710
2017-11-21 13:01:02 +08:00
Delapouite
be94505e46
Add modified buffers count in error message of non-force quit
2017-11-20 19:25:47 +01:00
Maxime Coste
b57a53dfbf
Merge remote-tracking branch 'Delapouite/common_prefix'
2017-11-20 17:30:28 +08:00
Delapouite
62912c6586
Remove extraneous common_prefix in input_handler
...
Related to: 52525a156f
2017-11-20 10:21:23 +01:00
Delapouite
bf222a0628
Docs: add missing -i <suffix> command line flag
2017-11-19 11:43:08 +01:00
Maxime Coste
079b006cda
Merge remote-tracking branch 'somasis/gzip-man'
2017-11-19 15:28:30 +08:00
Kylie McClain
3e1a4df3fb
Makefile: Add ability to disable compressing manpage
...
Some distributions don't compress them.
2017-11-19 01:53:40 -05:00
Maxime Coste
323f4a6a82
Merge remote-tracking branch 'lenormf/fix-python-exceptions'
2017-11-19 14:47:54 +08:00
Frank LENORMAND
58ccf6b295
rc python: Highlight built-in exceptions
2017-11-18 11:56:47 +03:00
Kylie McClain
ab390a02dc
Makefile: use PKG_CONFIG, not pkg-config
2017-11-17 23:11:06 -05:00
Kylie McClain
64e3b973eb
Makefile: use PKG_CONFIG, not pkg-config
2017-11-17 21:42:53 -05:00
Maxime Coste
386f595a49
screen.kak: use define-command
full name instead of def
alias
2017-11-16 12:56:42 +08:00
Maxime Coste
281890ea7a
Merge remote-tracking branch 'nochiel/nochiel-screen'
2017-11-16 12:56:09 +08:00
Nicholas Ochiel
133fcb0ce4
code review: typos.
2017-11-15 17:42:37 +03:00
Nicholas Ochiel
d9a574acd5
Integration with GNU screen; based on tmux.kak
...
- Hack: kak sets `/proc/self/fd/0 -> /dev/null`. Get the client process tty because Screen needs to know the controlling terminal. Else Screen will use the last known tty and will open new windows on a different terminal if one is connected.
2017-11-15 06:10:26 +03:00
Maxime Coste
77b0ee1e19
Merge remote-tracking branch 'lenormf/extend-python-highlighters'
2017-11-14 18:08:27 +08:00
Frank LENORMAND
105d7a1276
rc python: Extend highlighted keywords and numbers
2017-11-14 12:50:20 +03:00
Maxime Coste
2ab9f65b36
c-family.kak: Use <a-S> in various auto indent hooks
2017-11-14 13:32:46 +08:00
Maxime Coste
9c964e97f0
c-family.kak: Highlight character literals later
...
That way it overrides integer literal highlighters in the case where
they conflict.
2017-11-14 11:45:30 +08:00