Commit Graph

7087 Commits

Author SHA1 Message Date
Olivier Perret
6f9e297def Revert cosmetic hook order change
The order in which they're run actually matters
2018-12-20 19:15:40 +11:00
Maxime Coste
cb798fa369 Merge remote-tracking branch 'occivink/trim-indent-cleanup' 2018-12-19 20:50:33 +11:00
Olivier Perret
f085e43bf9 Unify auto-indent trimming hooks
* ModeChange hooks that remove indent now belong to *-trim-indent groups, instead of just -indent
* *-filter-around-selections hooks and commands have been renamed to trim-indent for clarity
2018-12-19 10:20:11 +01:00
Olivier Perret
d8466f0f39 c-family.kak: remove redundant -family in hook groups 2018-12-19 10:03:37 +01:00
Maxime Coste
1c7a124339 Merge branch 'improve-readme' of http://github.com/jbrains/kakoune 2018-12-19 19:34:15 +11:00
Maxime Coste
1a280e91c7 Add support for 'sanitizers=...' make option
Use make sanitizers=undefined,address to enable undefined and address
sanitizers.

Closes #2596
2018-12-19 19:31:04 +11:00
Maxime Coste
ef3419edbf Do not pass thread to failed/consumed, capture it implicitely 2018-12-19 19:16:14 +11:00
Maxime Coste
0b9f782691 Take iterators by const-ref in ThreadedRegexVM::exec 2018-12-19 19:14:42 +11:00
J. B. Rainsberger
39c8d05cfa Clarified the difference between movement 'f' and 't'. 2018-12-18 07:30:55 -05:00
J. B. Rainsberger
dff86ce195 Minor improvements: grammar and spacing. 2018-12-18 07:28:14 -05:00
J. B. Rainsberger
b590fad7ef Made it easier to notice instructions for extending the selection. 2018-12-18 07:27:40 -05:00
Maxime Coste
d2f2c3d0c7 Generate a coredump on quit due to SIGSEGV 2018-12-13 21:29:33 +11:00
Maxime Coste
e49a0d2581 doc.kak: Do not join together bullet lists
Fixes #2610
2018-12-13 19:36:23 +11:00
Frank LENORMAND
9b9aedd175 rc lint: Prevent diagnostics from being expanded
Fixes #2629
2018-12-13 10:42:52 +03:00
Maxime Coste
0e1e0fc57b Improve deindent behaviour with mixed indent 2018-12-13 17:35:16 +11:00
Maxime Coste
f7ab129e53 Remove support for 8-bit CSI as it breaks utf8 input
Fixes #2630
2018-12-12 19:10:28 +11:00
Maxime Coste
b929b94bfc Merge remote-tracking branch 'lenormf/fix-makefile-test-rule' 2018-12-11 22:11:55 +11:00
Maxime Coste
527e28539e Merge remote-tracking branch 'occivink/cleanup-hook-once' 2018-12-11 10:39:24 +11:00
Olivier Perret
27f951638c Execute cleanup hooks on any filetype change 2018-12-11 00:35:57 +01:00
Olivier Perret
93c308ca53 Fixes to d.kak and moon.kak 2018-12-11 00:13:30 +01:00
Olivier Perret
f5a2ded44b Change cleanup of extra/ languages to use a simpler hook -once 2018-12-11 00:13:30 +01:00
Olivier Perret
898d45f5d5 Change cleanup of base/ languages to use a simpler hook -once 2018-12-11 00:13:30 +01:00
Olivier Perret
6765723c68 Change cleanup of core/ languages to use a simpler hook -once 2018-12-11 00:13:30 +01:00
Maxime Coste
8498fe497d Merge remote-tracking branch 'lenormf/fix-git-insn' 2018-12-11 08:56:06 +11:00
Frank LENORMAND
f8d660027b rc git: Support the break instruction 2018-12-10 20:10:05 +03:00
Maxime Coste
c6f98f8483 Fix compilation error 2018-12-09 22:05:32 +11:00
Maxime Coste
10163488c1 Merge branch 'patch-1' of http://github.com/gnull/kakoune 2018-12-09 21:51:15 +11:00
Maxime Coste
64f1c31401 Refactor parsing of keys and introduce a builtin key parser mode
By setting the ncurses_builtin_key_parser ui_option to true, we
can disable ncurses parsing of key strokes to get less portable
parsing but support for more complex modifiers.
2018-12-09 21:35:22 +11:00
Maxime Coste
1670a7514a NCursesUI: Handle CSI in 8-bit mode as well 2018-12-09 11:20:03 +11:00
Maxime Coste
e90e77e5fc Merge remote-tracking branch 'jeapostrophe/master' 2018-12-09 10:33:44 +11:00
Maxime Coste
1875ff51a0 Gather the list of hooks to run before running the parent
This will prevent hooks added by the parent hook manager to be
gathered, as was decided during the discussion for #2603
2018-12-09 10:07:40 +11:00
Ivan Oleynikov
48249ea818
Very minor grammar fix
Probably, the extra «s» at the end of «exist» was added accidentally. A verb after «does not» in Present Simple definitely shouldn't have this extra «s».
2018-12-08 18:59:13 +03:00
Jay McCarthy
c0be01ac0f Jay McCarthy Copyright Waiver
I dedicate any and all copyright interest in this software to the
  public domain.  I make this dedication for the benefit of the public at
  large and to the detriment of my heirs and successors.  I intend this
  dedication to be an overt act of relinquishment in perpetuity of all
  present and future rights to this software under copyright law.
2018-12-07 16:34:49 -05:00
Jay McCarthy
dde81019a2 Fix dumb typo 2018-12-07 16:33:35 -05:00
Jay McCarthy
f36a2870b8 Simplify re: lenormf 2018-12-07 16:33:35 -05:00
Jay McCarthy
4cac29d98c Update re lenormf's comments 2018-12-07 16:33:35 -05:00
Jay McCarthy
af5d2d9523 Parse xterm-keys for motion directly
Ideally, something better should be done (re #2554) but this is a decent
intermediate step for some useful keys.

Note: NCurses supports parsing these keys when shifted (KEY_SR,
_SLEFT, S_RIGHT, etc), but it does not do the same thing for the other
modifiers.
2018-12-07 16:33:35 -05:00
Jason Felice
a4f830f143 Use _exit() after vfork()
Closes #2620

The docs for Mac OS X's vfork() requires it, and _exit() conforms to
POSIX.1-2008.

http://man7.org/linux/man-pages/man2/_exit.2.html
2018-12-07 09:36:06 -05:00
Frank LENORMAND
7fea08e736 src: The test build target depends on kak
Not having the `test` target (in the Makefile) depend on the `kak` one
prevents users from running commands that make use of parallelism, e.g.:

$ make -j all test

The above command sometimes results in the test suite running before
the binary has been compiled and symlinked, resulting in failures.
2018-12-06 14:34:29 +03:00
Maxime Coste
b897a18aa6 Use a dummy function for SIGPIPE instead of SIG_IGN
SIG_IGN is inherited after 'execve' and requires us to reset
that signal handler, which does not work well with vfork on
OSX. Using an empty function does the trick and will be auto
reset to default on exec.
2018-12-06 20:33:13 +11:00
Maxime Coste
5f315e68b6 Merge remote-tracking branch 'lenormf/fix-prompt-on-change' 2018-12-02 09:52:49 +11:00
Frank LENORMAND
f0e07cc73c src: Prevent :prompt -on-change from crashing the editor
Fixes #1217
2018-12-01 08:41:29 +03:00
Frank LENORMAND
17ebc582b6 rc scheme: Fix the initialization of the static words
Fixes #2607
2018-12-01 07:40:55 +03:00
Maxime Coste
16908bf091 Fix hooks triggering on unset-option even if parent has same value 2018-11-28 21:45:40 +11:00
Maxime Coste
a7336f8663 Merge remote-tracking branch 'sbwhitecap/pr/treat_t_files_as_perl' 2018-11-28 21:28:07 +11:00
Maxime Coste
086db6a9d3 Fix extra_word_chars in various scripts
Add '_' to the list now that it is not built-in anymore
2018-11-28 18:13:55 +11:00
Kazuki Shigemichi
d99eebbafd Kazuki Shigemichi Copyright Waiver
I dedicate any and all copyright interest in this software to the
public domain. I make this dedication for the benefit of the public at
large and to the detriment of my heirs and successors. I intend this
dedication to be an overt act of relinquishment in perpetuity of all
present and future rights to this software under copyright law.
2018-11-27 22:50:02 +09:00
Kazuki Shigemichi
5221254363 Treat .t files as perl 2018-11-27 22:43:50 +09:00
Maxime Coste
d1274836cd Support KAKOUNE_POSIX_SHELL environment variable to choose the shell path
The shell will always be run with 'sh' as argv[0] to make shells such
as busybox sh supported.

Closes #2547
2018-11-27 22:21:20 +11:00
Maxime Coste
5250593129 ShellManager: Use vfork instead of fork
When large buffers have been opened, copying Kakoune's memory
page descriptors can get pretty slow, making fork more expensive
than necessary.

vfork avoids that problem. While not strictly conforming, it seems
the few calls we do before execve (open, close, dup2 and
set_signal_handler) would not cause any problems on platforms we
care about.
2018-11-27 21:49:57 +11:00