From 5969ecb68dc2c4358358b4627287185c54704710 Mon Sep 17 00:00:00 2001 From: Mark Edgar Date: Sat, 19 Oct 2013 15:13:13 +0200 Subject: [PATCH 2/2] Simplify logic in kmap(). --- st.c | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/st.c b/st.c index e044352..c3df85a 100644 --- a/st.c +++ b/st.c @@ -3531,25 +3531,16 @@ kmap(KeySym k, uint state) { if(!match(kp->mask, state)) continue; - if(kp->appkey > 0) { - if(!IS_SET(MODE_APPKEYPAD)) - continue; - if(term.numlock && kp->appkey == 2) - continue; - } else if(kp->appkey < 0 && IS_SET(MODE_APPKEYPAD)) { + if(IS_SET(MODE_APPKEYPAD) ? kp->appkey < 0 : kp->appkey > 0) + continue; + if(term.numlock && kp->appkey == 2) continue; - } - if((kp->appcursor < 0 && IS_SET(MODE_APPCURSOR)) || - (kp->appcursor > 0 - && !IS_SET(MODE_APPCURSOR))) { + if(IS_SET(MODE_APPCURSOR) ? kp->appcursor < 0 : kp->appcursor > 0) continue; - } - if((kp->crlf < 0 && IS_SET(MODE_CRLF)) || - (kp->crlf > 0 && !IS_SET(MODE_CRLF))) { + if(IS_SET(MODE_CRLF) ? kp->crlf < 0 : kp->crlf > 0) continue; - } return kp->s; } -- 1.8.4