TERMKEY\_LOOKUP\_KEYNAME(3) Library Functions Manual TERMKEY\_LOOKUP\_KEYNAME(3)

# [NAME](#NAME)

termkey\_lookup\_keyname - look up a symbolic key value for a string name

# [SYNOPSIS](#SYNOPSIS)

```
#include <termkey.h>

char *termkey_lookup_keyname(TermKey *tk, const char *keyname,
           TermKeySym *sym);
```

Link with *-ltermkey*.

# [DESCRIPTION](#DESCRIPTION)

**termkey\_lookup\_keyname**() looks up the symbolic key value represented by the given string name. This is a case-sensitive comparison. The symbolic value is written to the variable addressed by *sym*. This function is a more general form of [**termkey\_keyname2sym**(3)](/man/os/libtermkey/termkey_keyname2sym.3) because it can recognise a symbolic key name within a longer string, returning a pointer to the remainder of the input after the key name.

Because the key names are stored in an array indexed by the symbol number, this function has to perform a linear search of the names. Use of this function should be restricted to converting key names into symbolic values during a program's initialisation, so that efficient comparisons can be done while it is running.

# [RETURN VALUE](#RETURN_VALUE)

**termkey\_lookup\_keyname**() returns a pointer to the first character after a recognised name, or **NULL** if the string does not begin with the name of a recognised symbolic key.

# [SEE ALSO](#SEE_ALSO)

[**termkey\_get\_keyname**(3)](/man/os/libtermkey/termkey_get_keyname.3), [**termkey\_keyname2sym**(3)](/man/os/libtermkey/termkey_keyname2sym.3), [**termkey\_strpkey**(3)](/man/os/libtermkey/termkey_strpkey.3), [**termkey**(7)](/man/os/libtermkey/termkey.7)

---

Document: termkey_lookup_keyname(3) from libtermkey 0.22-r8 (Chainguard OS)
