1
0
Fork
You've already forked fbpad
0
fbpad /shortcuts.patch

64 lines
1.4 KiB
Diff

diff --git a/fbpad.c b/fbpad.c
index 8ca6180..417a722 100644
--- a/fbpad.c
+++ b/fbpad.c
@@ -26,6 +26,7 @@
#include <sys/wait.h>
#include <termios.h>
#include <unistd.h>
+#include <dirent.h>
#include <linux/vt.h>
#include "conf.h"
#include "fbpad.h"
@@ -120,6 +121,18 @@ static void execterm(char **args)
term_exec(args);
}
+static void spawn(char *cmd)
+{
+ int outfd = open("/dev/null", O_CREAT|O_WRONLY|O_TRUNC, 0644);
+ if(fork() == 0)
+ {
+ dup2(outfd, 1);
+ dup2(outfd, 2);
+ close(outfd);
+ execlp("sh", "sh", "-c", cmd, NULL);
+ }
+}
+
static void listtags(void)
{
/* colors for tags based on their number of terminals */
@@ -153,6 +166,7 @@ static void directkey(void)
char *shell[32] = SHELL;
char *mail[32] = MAIL;
char *editor[32] = EDITOR;
+ char *notes[32] = NOTES;
int c = readchar();
if (PASS && locked) {
if (c == '\r') {
@@ -177,6 +191,9 @@ static void directkey(void)
case 'e':
execterm(editor);
return;
+ case 'n':
+ execterm(notes);
+ return;
case 'j':
case 'k':
showterm(altterm(cterm()));
@@ -197,6 +214,9 @@ static void directkey(void)
case 's':
term_screenshot();
return;
+ case CTRLKEY('s'):
+ spawn("fbgrab $HOME/Pictures/screenshots/screenshot-$(date +\"%F-%H-%M-%S\").png");
+ return;
case 'y':
term_redraw(1);
return;
- case CTRLKEY('l'):
+ case 'L':
locked = 1;
passlen = 0;
return;