diff options
author | Sigrid Solveig Haflínudóttir <sigrid@ftrv.se> | 2022-10-06 19:56:01 +0000 |
---|---|---|
committer | Sigrid Solveig Haflínudóttir <sigrid@ftrv.se> | 2022-10-06 19:56:01 +0000 |
commit | c5f79f5371b3735ac4498343182fb9596b7809fe (patch) | |
tree | 306f4d4aac449b39545506f1cd53978d4f8dc235 /sys | |
parent | b38a3d2a0d0f2022bab40eec4975179daa0ceee1 (diff) |
reform/shortcuts: use media keys for LCD brightness control
Diffstat (limited to 'sys')
-rw-r--r-- | sys/man/1/reform | 14 | ||||
-rw-r--r-- | sys/src/cmd/reform/shortcuts.c | 49 |
2 files changed, 27 insertions, 36 deletions
diff --git a/sys/man/1/reform b/sys/man/1/reform index e71850c20..968b98cce 100644 --- a/sys/man/1/reform +++ b/sys/man/1/reform @@ -145,23 +145,21 @@ to function: reform/shortcuts </dev/kbdtap >/dev/kbdtap .EE .PP -.I Super+F1/F2 +.I Hyper+F1/F2 decreases/increases LCD brightness, .I Hyper+F7/F8/F9 skips to the previous track, (un)pauses or skips to the next track in .IR zuke (1), -.I Hyper+F11/F12 -decreases/increases "master" volume, .I Hyper+F10 -(un)mutes the audio. -Optionally, a single step amount can be set with +(un)mutes the audio, +.I Hyper+F11/F12 +decreases/increases "master" volume. Optionally, a single step amount +can be set with .I -l for LCD light level (default is 5) and .I -v for volume (default is 3). Values can be negative to essentially swap -.I F1 -with -.IR F2 . +the decrement and increment keys. .SH SOURCE .B /sys/src/cmd/reform .SH SEE ALSO diff --git a/sys/src/cmd/reform/shortcuts.c b/sys/src/cmd/reform/shortcuts.c index f266c089b..ce8cbdc43 100644 --- a/sys/src/cmd/reform/shortcuts.c +++ b/sys/src/cmd/reform/shortcuts.c @@ -4,7 +4,7 @@ #include <plumb.h> static int lightstep = 5, volstep = 3; -static int light, vol, actl, mod; +static int light, vol, actl; static void aplumb(char *s) @@ -12,11 +12,8 @@ aplumb(char *s) int f; if((f = plumbopen("send", OWRITE)) >= 0){ - if(plumbsendtext(f, "shortcuts", "audio", "/", s) < 0) - fprint(2, "aplumb: %r\n"); + plumbsendtext(f, "shortcuts", "audio", "/", s); close(f); - }else{ - fprint(2, "aplumb: %r\n"); } } @@ -29,8 +26,6 @@ process(char *s) o = 0; b[o++] = *s; - if(*s == 'k' || *s == 'K') - mod = utfrune(s+1, Kmod4) != nil; for(p = s+1; *p != 0; p += n){ if((n = chartorune(&r, p)) == 1 && r == Runeerror){ @@ -42,27 +37,25 @@ process(char *s) break; } - skip = 0; - if(*s == 'c'){ - if(mod){ - if(skip |= (r == (KF|1))) - fprint(light, "lcd %+d", -lightstep); - else if(skip |= (r == (KF|2))) - fprint(light, "lcd %+d", lightstep); - }else{ - if(skip |= (r == Kvoldn)) - fprint(vol, "master %+d", -volstep); - else if(skip |= (r == Kvolup)) - fprint(vol, "master %+d", volstep); - else if(skip |= (r == Kmute)) - fprint(actl, "master toggle"); - else if(skip |= (r == Ksbwd)) - aplumb("key <"); - else if(skip |= (r == Ksfwd)) - aplumb("key >"); - else if(skip |= (r == Kpause)) - aplumb("key p"); - } + if(skip = (*s == 'c')){ + if(r == Kbrtdn) + fprint(light, "lcd %+d", -lightstep); + else if(r == Kbrtup) + fprint(light, "lcd %+d", lightstep); + else if(r == Kvoldn) + fprint(vol, "master %+d", -volstep); + else if(r == Kvolup) + fprint(vol, "master %+d", volstep); + else if(r == Kmute) + fprint(actl, "master toggle"); + else if(r == Ksbwd) + aplumb("key <"); + else if(r == Ksfwd) + aplumb("key >"); + else if(r == Kpause) + aplumb("key p"); + else + skip = 0; } if(!skip){ |