OT: how to tell when i've hit a Fn key?

Robert Bonomi bonomi at mail.r-bonomi.com
Fri Oct 7 07:36:42 UTC 2011

> Date: Fri, 7 Oct 2011 09:18:57 +0200
> From: Polytropon <freebsd at edvax.de>
> Cc: FreeBSD Mailing List <freebsd-questions at freebsd.org>
> Subject: Re: OT: how to tell when i've hit a Fn key?
> On Thu, 6 Oct 2011 15:41:17 -0700, Gary Kline wrote:
> > 
> > I've got a 103-key keyboard.  most  of them produce the right WAV
> > file.  i was having some trouble with the arrow key, but think i've
> > found a resolution.  next are the Function key, F1 to F12. 
> > 
> > anybody on-list familiar with curses and can help me  with this?
> > right now, most of the function keys output 4 clicks [!].  
> Capturing PF keys is very easy with ncurses.
> The macro KEY_F(n), n=1..12, can be checked
> as the result of the getch() function. The
> other "special keys" also have such macros
> assigned. You can find them in the header
> file /usr/local/include/ncurses/ncurses.h
> around line 1400.

No need to go chasing that far. 

   #include <ncurses.h>

pulls in the macro definitions as well.

KEY_F(n) supports 'n' values in the range from 0 to 64.  
value of this macro is a range of 64 consecutive values, starting with
KEY_F0 -- which is defined as *octal* 0410

it may take a little experimenting to see which key (plus modifier key(s)
like 'shift','control', etc, map to which 'n' values)

More information about the freebsd-questions mailing list