summaryrefslogtreecommitdiff
path: root/src/normal.cc
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2014-09-20 19:35:37 +0100
committerMaxime Coste <frrrwww@gmail.com>2014-09-20 19:35:37 +0100
commit217ba625adf239770de119c3885099a652c6ecd2 (patch)
tree974c2efff9a688701d65fc24abba5361d587c74a /src/normal.cc
parent2aaae7473cb457d5c108536cf8539e11f6297ec9 (diff)
Use raw terminal, and handle signals manually
C-c now sends SIGINT to the process group of Kakoune server when used in normal mode. Fixes #30
Diffstat (limited to 'src/normal.cc')
-rw-r--r--src/normal.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/normal.cc b/src/normal.cc
index af85b61f..a965b709 100644
--- a/src/normal.cc
+++ b/src/normal.cc
@@ -17,6 +17,8 @@
#include "user_interface.hh"
#include "window.hh"
+#include <signal.h>
+
namespace Kakoune
{
@@ -1389,6 +1391,8 @@ KeyMap keymap =
{ Key::PageUp, { "scroll one page up", scroll<Key::PageUp> } },
{ Key::PageDown, { "scroll one page down", scroll<Key::PageDown> } },
+
+ { ctrl('c'), { "interupt", [](Context&, int) { killpg(getpgrp(), SIGINT); } } },
};
}