Skip to content
Browse files

add some docs

  • Loading branch information...
1 parent e963b80 commit 8a5c6de260d371f092dba0750d6672f2234d39c5 @mauke committed May 30, 2010
View
23 doc/unibi_destroy.pod
@@ -0,0 +1,23 @@
+=pod
+
+=head1 NAME
+
+unibi_destroy - free a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ void unibi_destroy(unibi_term *ut);
+
+=head1 DESCRIPTION
+
+This function frees a terminal object created by C<unibi_dummy> or C<unibi_from_mem>.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_dummy(3)>,
+L<unibi_from_mem(3)>
+
+=cut
View
27 doc/unibi_dummy.pod
@@ -0,0 +1,27 @@
+=pod
+
+=head1 NAME
+
+unibi_dummy - construct a dummy terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ unibi_term *unibi_dummy(void);
+
+=head1 DESCRIPTION
+
+If you want to create a terminfo entry from scratch, use this function to
+create a dummy C<unibi_term>. Set its capabilities with the various
+C<unibi_set_*> functions, get the terminfo representation with C<unibi_dump>,
+and free it with C<unibi_destroy>.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_dump(3)>,
+L<unibi_destroy(3)>,
+L<unibi_from_mem(3)>
+
+=cut
View
45 doc/unibi_dump.pod
@@ -0,0 +1,45 @@
+=pod
+
+=head1 NAME
+
+unibi_dump - convert a terminal object to compiled terminfo data
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ size_t unibi_dump(const unibi_term *ut, char *p, size_t n);
+
+=head1 DESCRIPTION
+
+This function creates a compiled terminfo entry from I<ut>. The output is
+written to I<p>, which must have room for at least I<n> bytes.
+
+=head1 RETURN VALUE
+
+C<unibi_dump> returns the number of bytes required to store the terminfo data.
+If this exceeds I<n>, nothing is written to I<p>. If the terminal object can't
+be represented in terminfo format (string table too large), the return value is
+C<SIZE_MAX>.
+
+=head1 ERRORS
+
+=over
+
+=item C<EINVAL>
+
+I<ut> can't be converted to terminfo format.
+
+=item C<EFAULT>
+
+The resulting terminfo entry would be longer than I<n> bytes.
+
+=back
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_destroy(3)>,
+L<unibi_from_mem(3)>
+
+=cut
View
28 doc/unibi_from_env.pod
@@ -0,0 +1,28 @@
+=pod
+
+=head1 NAME
+
+unibi_from_env - read the terminfo entry specified by TERM
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ unibi_term *unibi_from_env(void);
+
+=head1 DESCRIPTION
+
+This function calls C<unibi_from_term> with the value of the environment
+variable C<TERM>.
+
+=head1 RETURN VALUE
+
+See L<unibi_from_term(3)>.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_from_term(3)>,
+L<unibi_destroy(3)>
+
+=cut
View
27 doc/unibi_from_fd.pod
@@ -0,0 +1,27 @@
+=pod
+
+=head1 NAME
+
+unibi_from_fd - read a terminfo entry from a file descriptor
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ unibi_term *unibi_from_fd(int fd);
+
+=head1 DESCRIPTION
+
+This function reads up to 4096 bytes from I<fd>, then calls C<unibi_from_mem>.
+
+=head1 RETURN VALUE
+
+See L<unibi_from_mem(3)>.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_from_mem(3)>,
+L<unibi_destroy(3)>
+
+=cut
View
27 doc/unibi_from_file.pod
@@ -0,0 +1,27 @@
+=pod
+
+=head1 NAME
+
+unibi_from_file - read a terminfo entry from a file
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ unibi_term *unibi_from_file(const char *file);
+
+=head1 DESCRIPTION
+
+This function opens I<file>, then calls C<unibi_from_fd>.
+
+=head1 RETURN VALUE
+
+See L<unibi_from_fd(3)>.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_from_fd(3)>,
+L<unibi_destroy(3)>
+
+=cut
View
27 doc/unibi_from_fp.pod
@@ -0,0 +1,27 @@
+=pod
+
+=head1 NAME
+
+unibi_from_fp - read a terminfo entry from a FILE *
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ unibi_term *unibi_from_fp(FILE *fp);
+
+=head1 DESCRIPTION
+
+This function reads up to 4096 bytes from I<fp>, then calls C<unibi_from_mem>.
+
+=head1 RETURN VALUE
+
+See L<unibi_from_mem(3)>.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_from_mem(3)>,
+L<unibi_destroy(3)>
+
+=cut
View
46 doc/unibi_from_mem.pod
@@ -0,0 +1,46 @@
+=pod
+
+=head1 NAME
+
+unibi_from_mem - construct a terminal object from a compiled terminfo entry
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ unibi_term *unibi_from_mem(const char *p, size_t n);
+
+=head1 DESCRIPTION
+
+This function parses a compiled terminfo entry that starts at I<p> and is I<n> bytes long and constructs a C<unibi_term> object from it. When you're done with it, you should call C<unibi_destroy> to free it.
+
+=head1 RETURN VALUE
+
+A pointer to a new C<unibi_term>. In case of failure, C<NULL> is returned and C<errno> is set.
+
+=head1 ERRORS
+
+=over
+
+=item C<EINVAL>
+
+The passed bytes don't look like a valid terminfo entry.
+
+=item C<EFAULT>
+
+I<n> is too small for a valid terminfo entry.
+
+=back
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_dump(3)>,
+L<unibi_destroy(3)>,
+L<unibi_from_fp(3)>,
+L<unibi_from_fd(3)>,
+L<unibi_from_file(3)>,
+L<unibi_from_term(3)>,
+L<unibi_from_env(3)>
+
+=cut
View
53 doc/unibi_from_term.pod
@@ -0,0 +1,53 @@
+=pod
+
+=head1 NAME
+
+unibi_from_term - read a terminfo entry for a named terminal
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ unibi_term *unibi_from_term(const char *name);
+
+=head1 DESCRIPTION
+
+This function locates the terminfo file for I<name>, then calls C<unibi_from_file>.
+
+It looks in the following places:
+
+=over
+
+=item 1.
+
+If the environment variable C<TERMINFO> is set, it is interpreted as the name
+of the directory to search. No other directory is used.
+
+=item 2.
+
+Otherwise, C<$HOME/.terminfo> is tried.
+
+=item 3.
+
+If that was not successful and C<TERMINFO_DIRS> is set, it is interpreted as a
+colon-separated list of directories to search.
+
+=item 4.
+
+If C<TERMINFO_DIRS> is not set, a compiled-in fallback (C<unibi_terminfo_dirs>)
+is used instead.
+
+=back
+
+=head1 RETURN VALUE
+
+See L<unibi_from_file(3)>.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_from_file(3)>,
+L<unibi_terminfo_dirs(3)>,
+L<unibi_destroy(3)>
+
+=cut
View
39 doc/unibi_get_aliases.pod
@@ -0,0 +1,39 @@
+=pod
+
+=head1 NAME
+
+unibi_get_aliases, unibi_set_aliases - access the aliases of a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ const char **unibi_get_aliases(const unibi_term *ut);
+ void unibi_set_aliases(unibi_term *ut, const char **v);
+
+=head1 DESCRIPTION
+
+C<unibi_get_aliases> returns the list of aliases from I<ut>;
+C<unibi_set_aliases> sets it to I<v>. The format of this list is like C<argv>:
+a null-terminated vector of strings.
+
+The contents of this list come from the ('|'-separated) name section in
+terminfo entries. It's supposed to be a list of lowercase words or
+abbreviations that refer to this terminal, the first one being the most
+common name. The last part of the name section can be more verbose and is not
+stored in the aliases list; it can be accessed with C<unibi_get_name>.
+
+Note that C<unibi_set_aliases> simply stores the pointer it is given; it will not
+free I<v> or make a copy of it (or any of the strings it points to).
+
+=head1 RETURN VALUE
+
+C<unibi_get_aliases> returns a pointer to a null-terminated vector of strings.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_get_name(3)>,
+L<unibi_set_name(3)>
+
+=cut
View
33 doc/unibi_get_bool.pod
@@ -0,0 +1,33 @@
+=pod
+
+=head1 NAME
+
+unibi_get_bool, unibi_set_bool, unibi_get_num, unibi_set_num, unibi_get_str,
+unibi_set_str - access the capabilities of a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ int unibi_get_bool(const unibi_term *ut, enum unibi_boolean b);
+ void unibi_set_bool(unibi_term *ut, enum unibi_boolean b, int x);
+
+ short unibi_get_num(const unibi_term *ut, enum unibi_numeric n);
+ void unibi_set_num(unibi_term *ut, enum unibi_numeric n, short x);
+
+ const char *unibi_get_str(const unibi_term *ut, enum unibi_string s);
+ void unibi_set_str(unibi_term *ut, enum unibi_string s, const char *x);
+
+=head1 DESCRIPTION
+
+Get/set boolean, numeric, and string capabilities. Absent numeric capabilities
+are represented as C<-1>, absent string capabilities as C<NULL>.
+
+Note that C<unibi_set_str> simply stores the pointer it is given; it will not
+free I<x> or make a copy of the string.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>
+
+=cut
View
34 doc/unibi_get_name.pod
@@ -0,0 +1,34 @@
+=pod
+
+=head1 NAME
+
+unibi_get_name, unibi_set_name - access the name of a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ const char *unibi_get_name(const unibi_term *ut);
+ void unibi_set_name(unibi_term *ut, const char *s);
+
+=head1 DESCRIPTION
+
+C<unibi_get_name> gets the name from I<ut>; C<unibi_set_name> sets the name to
+I<s>.
+
+Note that C<unibi_set_name> simply stores the pointer it is given; it will not
+free I<s> or make a copy of the string.
+
+=head1 RETURN VALUE
+
+C<unibi_get_name> returns a pointer to the name of the terminal; this either
+comes from a terminfo entry (the part after the last '|' in the name section)
+or was set by C<unibi_set_name>.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_get_aliases(3)>,
+L<unibi_set_aliases>
+
+=cut
View
33 doc/unibi_get_num.pod
@@ -0,0 +1,33 @@
+=pod
+
+=head1 NAME
+
+unibi_get_bool, unibi_set_bool, unibi_get_num, unibi_set_num, unibi_get_str,
+unibi_set_str - access the capabilities of a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ int unibi_get_bool(const unibi_term *ut, enum unibi_boolean b);
+ void unibi_set_bool(unibi_term *ut, enum unibi_boolean b, int x);
+
+ short unibi_get_num(const unibi_term *ut, enum unibi_numeric n);
+ void unibi_set_num(unibi_term *ut, enum unibi_numeric n, short x);
+
+ const char *unibi_get_str(const unibi_term *ut, enum unibi_string s);
+ void unibi_set_str(unibi_term *ut, enum unibi_string s, const char *x);
+
+=head1 DESCRIPTION
+
+Get/set boolean, numeric, and string capabilities. Absent numeric capabilities
+are represented as C<-1>, absent string capabilities as C<NULL>.
+
+Note that C<unibi_set_str> simply stores the pointer it is given; it will not
+free I<x> or make a copy of the string.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>
+
+=cut
View
33 doc/unibi_get_str.pod
@@ -0,0 +1,33 @@
+=pod
+
+=head1 NAME
+
+unibi_get_bool, unibi_set_bool, unibi_get_num, unibi_set_num, unibi_get_str,
+unibi_set_str - access the capabilities of a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ int unibi_get_bool(const unibi_term *ut, enum unibi_boolean b);
+ void unibi_set_bool(unibi_term *ut, enum unibi_boolean b, int x);
+
+ short unibi_get_num(const unibi_term *ut, enum unibi_numeric n);
+ void unibi_set_num(unibi_term *ut, enum unibi_numeric n, short x);
+
+ const char *unibi_get_str(const unibi_term *ut, enum unibi_string s);
+ void unibi_set_str(unibi_term *ut, enum unibi_string s, const char *x);
+
+=head1 DESCRIPTION
+
+Get/set boolean, numeric, and string capabilities. Absent numeric capabilities
+are represented as C<-1>, absent string capabilities as C<NULL>.
+
+Note that C<unibi_set_str> simply stores the pointer it is given; it will not
+free I<x> or make a copy of the string.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>
+
+=cut
View
35 doc/unibi_name_bool.pod
@@ -0,0 +1,35 @@
+=pod
+
+=head1 NAME
+
+unibi_name_bool, unibi_name_num, unibi_name_str - translate capability enums to names
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ const char *unibi_name_bool(enum unibi_boolean b);
+ const char *unibi_name_num(enum unibi_numeric n);
+ const char *unibi_name_str(enum unibi_string s);
+
+=head1 DESCRIPTION
+
+These functions return the names of capabilities as strings.
+
+=head1 EXAMPLE
+
+ #include <stdio.h>
+ #include "unibilium.h"
+
+ int main(void) {
+ puts(unibi_name_bool(unibi_has_status_line));
+ /* Output:
+ has_status_line
+ */
+ }
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>
+
+=cut
View
35 doc/unibi_name_num.pod
@@ -0,0 +1,35 @@
+=pod
+
+=head1 NAME
+
+unibi_name_bool, unibi_name_num, unibi_name_str - translate capability enums to names
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ const char *unibi_name_bool(enum unibi_boolean b);
+ const char *unibi_name_num(enum unibi_numeric n);
+ const char *unibi_name_str(enum unibi_string s);
+
+=head1 DESCRIPTION
+
+These functions return the names of capabilities as strings.
+
+=head1 EXAMPLE
+
+ #include <stdio.h>
+ #include "unibilium.h"
+
+ int main(void) {
+ puts(unibi_name_bool(unibi_has_status_line));
+ /* Output:
+ has_status_line
+ */
+ }
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>
+
+=cut
View
35 doc/unibi_name_str.pod
@@ -0,0 +1,35 @@
+=pod
+
+=head1 NAME
+
+unibi_name_bool, unibi_name_num, unibi_name_str - translate capability enums to names
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ const char *unibi_name_bool(enum unibi_boolean b);
+ const char *unibi_name_num(enum unibi_numeric n);
+ const char *unibi_name_str(enum unibi_string s);
+
+=head1 DESCRIPTION
+
+These functions return the names of capabilities as strings.
+
+=head1 EXAMPLE
+
+ #include <stdio.h>
+ #include "unibilium.h"
+
+ int main(void) {
+ puts(unibi_name_bool(unibi_has_status_line));
+ /* Output:
+ has_status_line
+ */
+ }
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>
+
+=cut
View
39 doc/unibi_set_aliases.pod
@@ -0,0 +1,39 @@
+=pod
+
+=head1 NAME
+
+unibi_get_aliases, unibi_set_aliases - access the aliases of a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ const char **unibi_get_aliases(const unibi_term *ut);
+ void unibi_set_aliases(unibi_term *ut, const char **v);
+
+=head1 DESCRIPTION
+
+C<unibi_get_aliases> returns the list of aliases from I<ut>;
+C<unibi_set_aliases> sets it to I<v>. The format of this list is like C<argv>:
+a null-terminated vector of strings.
+
+The contents of this list come from the ('|'-separated) name section in
+terminfo entries. It's supposed to be a list of lowercase words or
+abbreviations that refer to this terminal, the first one being the most
+common name. The last part of the name section can be more verbose and is not
+stored in the aliases list; it can be accessed with C<unibi_get_name>.
+
+Note that C<unibi_set_aliases> simply stores the pointer it is given; it will not
+free I<v> or make a copy of it (or any of the strings it points to).
+
+=head1 RETURN VALUE
+
+C<unibi_get_aliases> returns a pointer to a null-terminated vector of strings.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_get_name(3)>,
+L<unibi_set_name(3)>
+
+=cut
View
33 doc/unibi_set_bool.pod
@@ -0,0 +1,33 @@
+=pod
+
+=head1 NAME
+
+unibi_get_bool, unibi_set_bool, unibi_get_num, unibi_set_num, unibi_get_str,
+unibi_set_str - access the capabilities of a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ int unibi_get_bool(const unibi_term *ut, enum unibi_boolean b);
+ void unibi_set_bool(unibi_term *ut, enum unibi_boolean b, int x);
+
+ short unibi_get_num(const unibi_term *ut, enum unibi_numeric n);
+ void unibi_set_num(unibi_term *ut, enum unibi_numeric n, short x);
+
+ const char *unibi_get_str(const unibi_term *ut, enum unibi_string s);
+ void unibi_set_str(unibi_term *ut, enum unibi_string s, const char *x);
+
+=head1 DESCRIPTION
+
+Get/set boolean, numeric, and string capabilities. Absent numeric capabilities
+are represented as C<-1>, absent string capabilities as C<NULL>.
+
+Note that C<unibi_set_str> simply stores the pointer it is given; it will not
+free I<x> or make a copy of the string.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>
+
+=cut
View
34 doc/unibi_set_name.pod
@@ -0,0 +1,34 @@
+=pod
+
+=head1 NAME
+
+unibi_get_name, unibi_set_name - access the name of a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ const char *unibi_get_name(const unibi_term *ut);
+ void unibi_set_name(unibi_term *ut, const char *s);
+
+=head1 DESCRIPTION
+
+C<unibi_get_name> gets the name from I<ut>; C<unibi_set_name> sets the name to
+I<s>.
+
+Note that C<unibi_set_name> simply stores the pointer it is given; it will not
+free I<s> or make a copy of the string.
+
+=head1 RETURN VALUE
+
+C<unibi_get_name> returns a pointer to the name of the terminal; this either
+comes from a terminfo entry (the part after the last '|' in the name section)
+or was set by C<unibi_set_name>.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_get_aliases(3)>,
+L<unibi_set_aliases>
+
+=cut
View
33 doc/unibi_set_num.pod
@@ -0,0 +1,33 @@
+=pod
+
+=head1 NAME
+
+unibi_get_bool, unibi_set_bool, unibi_get_num, unibi_set_num, unibi_get_str,
+unibi_set_str - access the capabilities of a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ int unibi_get_bool(const unibi_term *ut, enum unibi_boolean b);
+ void unibi_set_bool(unibi_term *ut, enum unibi_boolean b, int x);
+
+ short unibi_get_num(const unibi_term *ut, enum unibi_numeric n);
+ void unibi_set_num(unibi_term *ut, enum unibi_numeric n, short x);
+
+ const char *unibi_get_str(const unibi_term *ut, enum unibi_string s);
+ void unibi_set_str(unibi_term *ut, enum unibi_string s, const char *x);
+
+=head1 DESCRIPTION
+
+Get/set boolean, numeric, and string capabilities. Absent numeric capabilities
+are represented as C<-1>, absent string capabilities as C<NULL>.
+
+Note that C<unibi_set_str> simply stores the pointer it is given; it will not
+free I<x> or make a copy of the string.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>
+
+=cut
View
33 doc/unibi_set_str.pod
@@ -0,0 +1,33 @@
+=pod
+
+=head1 NAME
+
+unibi_get_bool, unibi_set_bool, unibi_get_num, unibi_set_num, unibi_get_str,
+unibi_set_str - access the capabilities of a terminal object
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ int unibi_get_bool(const unibi_term *ut, enum unibi_boolean b);
+ void unibi_set_bool(unibi_term *ut, enum unibi_boolean b, int x);
+
+ short unibi_get_num(const unibi_term *ut, enum unibi_numeric n);
+ void unibi_set_num(unibi_term *ut, enum unibi_numeric n, short x);
+
+ const char *unibi_get_str(const unibi_term *ut, enum unibi_string s);
+ void unibi_set_str(unibi_term *ut, enum unibi_string s, const char *x);
+
+=head1 DESCRIPTION
+
+Get/set boolean, numeric, and string capabilities. Absent numeric capabilities
+are represented as C<-1>, absent string capabilities as C<NULL>.
+
+Note that C<unibi_set_str> simply stores the pointer it is given; it will not
+free I<x> or make a copy of the string.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>
+
+=cut
View
23 doc/unibi_terminfo_dirs.pod
@@ -0,0 +1,23 @@
+=pod
+
+=head1 NAME
+
+unibi_terminfo_dirs - fallback terminfo search path
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+ extern const char *const unibi_terminfo_dirs;
+
+=head1 DESCRIPTION
+
+A colon-separated list of directories that is used by C<unibi_from_term> if
+C<TERMINFO_DIRS> is not set.
+
+=head1 SEE ALSO
+
+L<unibilium.h(3)>,
+L<unibi_from_term(3)>
+
+=cut
View
1,075 doc/unibilium.h.pod
@@ -0,0 +1,1075 @@
+=pod
+
+=head1 NAME
+
+unibilium.h - terminfo parser and utility functions
+
+=head1 SYNOPSIS
+
+ #include "unibilium.h"
+
+=head1 DESCRIPTION
+
+This library provides functions and types to access terminal descriptions in
+the terminfo database. It can parse compiled terminfo entries from memory or
+files, access and modify their capabilities, and generate new terminfo entries.
+
+=head2 Types
+
+The following types are provided:
+
+=over
+
+=item unibi_term
+
+The main type. It represents a terminfo entry. Most functions take a pointer to
+this structure.
+
+=item enum unibi_boolean
+
+An enumeration of boolean capabilities. It has the following elements:
+
+=over 1
+
+=item C<unibi_auto_left_margin>
+
+=item C<unibi_auto_right_margin>
+
+=item C<unibi_no_esc_ctlc>
+
+=item C<unibi_ceol_standout_glitch>
+
+=item C<unibi_eat_newline_glitch>
+
+=item C<unibi_erase_overstrike>
+
+=item C<unibi_generic_type>
+
+=item C<unibi_hard_copy>
+
+=item C<unibi_has_meta_key>
+
+=item C<unibi_has_status_line>
+
+=item C<unibi_insert_null_glitch>
+
+=item C<unibi_memory_above>
+
+=item C<unibi_memory_below>
+
+=item C<unibi_move_insert_mode>
+
+=item C<unibi_move_standout_mode>
+
+=item C<unibi_over_strike>
+
+=item C<unibi_status_line_esc_ok>
+
+=item C<unibi_dest_tabs_magic_smso>
+
+=item C<unibi_tilde_glitch>
+
+=item C<unibi_transparent_underline>
+
+=item C<unibi_xon_xoff>
+
+=item C<unibi_needs_xon_xoff>
+
+=item C<unibi_prtr_silent>
+
+=item C<unibi_hard_cursor>
+
+=item C<unibi_non_rev_rmcup>
+
+=item C<unibi_no_pad_char>
+
+=item C<unibi_non_dest_scroll_region>
+
+=item C<unibi_can_change>
+
+=item C<unibi_back_color_erase>
+
+=item C<unibi_hue_lightness_saturation>
+
+=item C<unibi_col_addr_glitch>
+
+=item C<unibi_cr_cancels_micro_mode>
+
+=item C<unibi_has_print_wheel>
+
+=item C<unibi_row_addr_glitch>
+
+=item C<unibi_semi_auto_right_margin>
+
+=item C<unibi_cpi_changes_res>
+
+=item C<unibi_lpi_changes_res>
+
+=item C<unibi_backspaces_with_bs>
+
+=item C<unibi_crt_no_scrolling>
+
+=item C<unibi_no_correctly_working_cr>
+
+=item C<unibi_gnu_has_meta_key>
+
+=item C<unibi_linefeed_is_newline>
+
+=item C<unibi_has_hardware_tabs>
+
+=item C<unibi_return_does_clr_eol>
+
+=back
+
+=item enum unibi_numeric
+
+An enumeration of numeric capabilities. It has the following elements:
+
+=over 1
+
+=item C<unibi_columns>
+
+=item C<unibi_init_tabs>
+
+=item C<unibi_lines>
+
+=item C<unibi_lines_of_memory>
+
+=item C<unibi_magic_cookie_glitch>
+
+=item C<unibi_padding_baud_rate>
+
+=item C<unibi_virtual_terminal>
+
+=item C<unibi_width_status_line>
+
+=item C<unibi_num_labels>
+
+=item C<unibi_label_height>
+
+=item C<unibi_label_width>
+
+=item C<unibi_max_attributes>
+
+=item C<unibi_maximum_windows>
+
+=item C<unibi_max_colors>
+
+=item C<unibi_max_pairs>
+
+=item C<unibi_no_color_video>
+
+=item C<unibi_buffer_capacity>
+
+=item C<unibi_dot_vert_spacing>
+
+=item C<unibi_dot_horz_spacing>
+
+=item C<unibi_max_micro_address>
+
+=item C<unibi_max_micro_jump>
+
+=item C<unibi_micro_col_size>
+
+=item C<unibi_micro_line_size>
+
+=item C<unibi_number_of_pins>
+
+=item C<unibi_output_res_char>
+
+=item C<unibi_output_res_line>
+
+=item C<unibi_output_res_horz_inch>
+
+=item C<unibi_output_res_vert_inch>
+
+=item C<unibi_print_rate>
+
+=item C<unibi_wide_char_size>
+
+=item C<unibi_buttons>
+
+=item C<unibi_bit_image_entwining>
+
+=item C<unibi_bit_image_type>
+
+=item C<unibi_magic_cookie_glitch_ul>
+
+=item C<unibi_carriage_return_delay>
+
+=item C<unibi_new_line_delay>
+
+=item C<unibi_backspace_delay>
+
+=item C<unibi_horizontal_tab_delay>
+
+=item C<unibi_number_of_function_keys>
+
+=back
+
+=item enum unibi_string
+
+An enumeration of string capabilities. It has the following elements:
+
+=over 1
+
+=item C<unibi_back_tab>
+
+=item C<unibi_bell>
+
+=item C<unibi_carriage_return>
+
+=item C<unibi_change_scroll_region>
+
+=item C<unibi_clear_all_tabs>
+
+=item C<unibi_clear_screen>
+
+=item C<unibi_clr_eol>
+
+=item C<unibi_clr_eos>
+
+=item C<unibi_column_address>
+
+=item C<unibi_command_character>
+
+=item C<unibi_cursor_address>
+
+=item C<unibi_cursor_down>
+
+=item C<unibi_cursor_home>
+
+=item C<unibi_cursor_invisible>
+
+=item C<unibi_cursor_left>
+
+=item C<unibi_cursor_mem_address>
+
+=item C<unibi_cursor_normal>
+
+=item C<unibi_cursor_right>
+
+=item C<unibi_cursor_to_ll>
+
+=item C<unibi_cursor_up>
+
+=item C<unibi_cursor_visible>
+
+=item C<unibi_delete_character>
+
+=item C<unibi_delete_line>
+
+=item C<unibi_dis_status_line>
+
+=item C<unibi_down_half_line>
+
+=item C<unibi_enter_alt_charset_mode>
+
+=item C<unibi_enter_blink_mode>
+
+=item C<unibi_enter_bold_mode>
+
+=item C<unibi_enter_ca_mode>
+
+=item C<unibi_enter_delete_mode>
+
+=item C<unibi_enter_dim_mode>
+
+=item C<unibi_enter_insert_mode>
+
+=item C<unibi_enter_secure_mode>
+
+=item C<unibi_enter_protected_mode>
+
+=item C<unibi_enter_reverse_mode>
+
+=item C<unibi_enter_standout_mode>
+
+=item C<unibi_enter_underline_mode>
+
+=item C<unibi_erase_chars>
+
+=item C<unibi_exit_alt_charset_mode>
+
+=item C<unibi_exit_attribute_mode>
+
+=item C<unibi_exit_ca_mode>
+
+=item C<unibi_exit_delete_mode>
+
+=item C<unibi_exit_insert_mode>
+
+=item C<unibi_exit_standout_mode>
+
+=item C<unibi_exit_underline_mode>
+
+=item C<unibi_flash_screen>
+
+=item C<unibi_form_feed>
+
+=item C<unibi_from_status_line>
+
+=item C<unibi_init_1string>
+
+=item C<unibi_init_2string>
+
+=item C<unibi_init_3string>
+
+=item C<unibi_init_file>
+
+=item C<unibi_insert_character>
+
+=item C<unibi_insert_line>
+
+=item C<unibi_insert_padding>
+
+=item C<unibi_key_backspace>
+
+=item C<unibi_key_catab>
+
+=item C<unibi_key_clear>
+
+=item C<unibi_key_ctab>
+
+=item C<unibi_key_dc>
+
+=item C<unibi_key_dl>
+
+=item C<unibi_key_down>
+
+=item C<unibi_key_eic>
+
+=item C<unibi_key_eol>
+
+=item C<unibi_key_eos>
+
+=item C<unibi_key_f0>
+
+=item C<unibi_key_f1>
+
+=item C<unibi_key_f10>
+
+=item C<unibi_key_f2>
+
+=item C<unibi_key_f3>
+
+=item C<unibi_key_f4>
+
+=item C<unibi_key_f5>
+
+=item C<unibi_key_f6>
+
+=item C<unibi_key_f7>
+
+=item C<unibi_key_f8>
+
+=item C<unibi_key_f9>
+
+=item C<unibi_key_home>
+
+=item C<unibi_key_ic>
+
+=item C<unibi_key_il>
+
+=item C<unibi_key_left>
+
+=item C<unibi_key_ll>
+
+=item C<unibi_key_npage>
+
+=item C<unibi_key_ppage>
+
+=item C<unibi_key_right>
+
+=item C<unibi_key_sf>
+
+=item C<unibi_key_sr>
+
+=item C<unibi_key_stab>
+
+=item C<unibi_key_up>
+
+=item C<unibi_keypad_local>
+
+=item C<unibi_keypad_xmit>
+
+=item C<unibi_lab_f0>
+
+=item C<unibi_lab_f1>
+
+=item C<unibi_lab_f10>
+
+=item C<unibi_lab_f2>
+
+=item C<unibi_lab_f3>
+
+=item C<unibi_lab_f4>
+
+=item C<unibi_lab_f5>
+
+=item C<unibi_lab_f6>
+
+=item C<unibi_lab_f7>
+
+=item C<unibi_lab_f8>
+
+=item C<unibi_lab_f9>
+
+=item C<unibi_meta_off>
+
+=item C<unibi_meta_on>
+
+=item C<unibi_newline>
+
+=item C<unibi_pad_char>
+
+=item C<unibi_parm_dch>
+
+=item C<unibi_parm_delete_line>
+
+=item C<unibi_parm_down_cursor>
+
+=item C<unibi_parm_ich>
+
+=item C<unibi_parm_index>
+
+=item C<unibi_parm_insert_line>
+
+=item C<unibi_parm_left_cursor>
+
+=item C<unibi_parm_right_cursor>
+
+=item C<unibi_parm_rindex>
+
+=item C<unibi_parm_up_cursor>
+
+=item C<unibi_pkey_key>
+
+=item C<unibi_pkey_local>
+
+=item C<unibi_pkey_xmit>
+
+=item C<unibi_print_screen>
+
+=item C<unibi_prtr_off>
+
+=item C<unibi_prtr_on>
+
+=item C<unibi_repeat_char>
+
+=item C<unibi_reset_1string>
+
+=item C<unibi_reset_2string>
+
+=item C<unibi_reset_3string>
+
+=item C<unibi_reset_file>
+
+=item C<unibi_restore_cursor>
+
+=item C<unibi_row_address>
+
+=item C<unibi_save_cursor>
+
+=item C<unibi_scroll_forward>
+
+=item C<unibi_scroll_reverse>
+
+=item C<unibi_set_attributes>
+
+=item C<unibi_set_tab>
+
+=item C<unibi_set_window>
+
+=item C<unibi_tab>
+
+=item C<unibi_to_status_line>
+
+=item C<unibi_underline_char>
+
+=item C<unibi_up_half_line>
+
+=item C<unibi_init_prog>
+
+=item C<unibi_key_a1>
+
+=item C<unibi_key_a3>
+
+=item C<unibi_key_b2>
+
+=item C<unibi_key_c1>
+
+=item C<unibi_key_c3>
+
+=item C<unibi_prtr_non>
+
+=item C<unibi_char_padding>
+
+=item C<unibi_acs_chars>
+
+=item C<unibi_plab_norm>
+
+=item C<unibi_key_btab>
+
+=item C<unibi_enter_xon_mode>
+
+=item C<unibi_exit_xon_mode>
+
+=item C<unibi_enter_am_mode>
+
+=item C<unibi_exit_am_mode>
+
+=item C<unibi_xon_character>
+
+=item C<unibi_xoff_character>
+
+=item C<unibi_ena_acs>
+
+=item C<unibi_label_on>
+
+=item C<unibi_label_off>
+
+=item C<unibi_key_beg>
+
+=item C<unibi_key_cancel>
+
+=item C<unibi_key_close>
+
+=item C<unibi_key_command>
+
+=item C<unibi_key_copy>
+
+=item C<unibi_key_create>
+
+=item C<unibi_key_end>
+
+=item C<unibi_key_enter>
+
+=item C<unibi_key_exit>
+
+=item C<unibi_key_find>
+
+=item C<unibi_key_help>
+
+=item C<unibi_key_mark>
+
+=item C<unibi_key_message>
+
+=item C<unibi_key_move>
+
+=item C<unibi_key_next>
+
+=item C<unibi_key_open>
+
+=item C<unibi_key_options>
+
+=item C<unibi_key_previous>
+
+=item C<unibi_key_print>
+
+=item C<unibi_key_redo>
+
+=item C<unibi_key_reference>
+
+=item C<unibi_key_refresh>
+
+=item C<unibi_key_replace>
+
+=item C<unibi_key_restart>
+
+=item C<unibi_key_resume>
+
+=item C<unibi_key_save>
+
+=item C<unibi_key_suspend>
+
+=item C<unibi_key_undo>
+
+=item C<unibi_key_sbeg>
+
+=item C<unibi_key_scancel>
+
+=item C<unibi_key_scommand>
+
+=item C<unibi_key_scopy>
+
+=item C<unibi_key_screate>
+
+=item C<unibi_key_sdc>
+
+=item C<unibi_key_sdl>
+
+=item C<unibi_key_select>
+
+=item C<unibi_key_send>
+
+=item C<unibi_key_seol>
+
+=item C<unibi_key_sexit>
+
+=item C<unibi_key_sfind>
+
+=item C<unibi_key_shelp>
+
+=item C<unibi_key_shome>
+
+=item C<unibi_key_sic>
+
+=item C<unibi_key_sleft>
+
+=item C<unibi_key_smessage>
+
+=item C<unibi_key_smove>
+
+=item C<unibi_key_snext>
+
+=item C<unibi_key_soptions>
+
+=item C<unibi_key_sprevious>
+
+=item C<unibi_key_sprint>
+
+=item C<unibi_key_sredo>
+
+=item C<unibi_key_sreplace>
+
+=item C<unibi_key_sright>
+
+=item C<unibi_key_srsume>
+
+=item C<unibi_key_ssave>
+
+=item C<unibi_key_ssuspend>
+
+=item C<unibi_key_sundo>
+
+=item C<unibi_req_for_input>
+
+=item C<unibi_key_f11>
+
+=item C<unibi_key_f12>
+
+=item C<unibi_key_f13>
+
+=item C<unibi_key_f14>
+
+=item C<unibi_key_f15>
+
+=item C<unibi_key_f16>
+
+=item C<unibi_key_f17>
+
+=item C<unibi_key_f18>
+
+=item C<unibi_key_f19>
+
+=item C<unibi_key_f20>
+
+=item C<unibi_key_f21>
+
+=item C<unibi_key_f22>
+
+=item C<unibi_key_f23>
+
+=item C<unibi_key_f24>
+
+=item C<unibi_key_f25>
+
+=item C<unibi_key_f26>
+
+=item C<unibi_key_f27>
+
+=item C<unibi_key_f28>
+
+=item C<unibi_key_f29>
+
+=item C<unibi_key_f30>
+
+=item C<unibi_key_f31>
+
+=item C<unibi_key_f32>
+
+=item C<unibi_key_f33>
+
+=item C<unibi_key_f34>
+
+=item C<unibi_key_f35>
+
+=item C<unibi_key_f36>
+
+=item C<unibi_key_f37>
+
+=item C<unibi_key_f38>
+
+=item C<unibi_key_f39>
+
+=item C<unibi_key_f40>
+
+=item C<unibi_key_f41>
+
+=item C<unibi_key_f42>
+
+=item C<unibi_key_f43>
+
+=item C<unibi_key_f44>
+
+=item C<unibi_key_f45>
+
+=item C<unibi_key_f46>
+
+=item C<unibi_key_f47>
+
+=item C<unibi_key_f48>
+
+=item C<unibi_key_f49>
+
+=item C<unibi_key_f50>
+
+=item C<unibi_key_f51>
+
+=item C<unibi_key_f52>
+
+=item C<unibi_key_f53>
+
+=item C<unibi_key_f54>
+
+=item C<unibi_key_f55>
+
+=item C<unibi_key_f56>
+
+=item C<unibi_key_f57>
+
+=item C<unibi_key_f58>
+
+=item C<unibi_key_f59>
+
+=item C<unibi_key_f60>
+
+=item C<unibi_key_f61>
+
+=item C<unibi_key_f62>
+
+=item C<unibi_key_f63>
+
+=item C<unibi_clr_bol>
+
+=item C<unibi_clear_margins>
+
+=item C<unibi_set_left_margin>
+
+=item C<unibi_set_right_margin>
+
+=item C<unibi_label_format>
+
+=item C<unibi_set_clock>
+
+=item C<unibi_display_clock>
+
+=item C<unibi_remove_clock>
+
+=item C<unibi_create_window>
+
+=item C<unibi_goto_window>
+
+=item C<unibi_hangup>
+
+=item C<unibi_dial_phone>
+
+=item C<unibi_quick_dial>
+
+=item C<unibi_tone>
+
+=item C<unibi_pulse>
+
+=item C<unibi_flash_hook>
+
+=item C<unibi_fixed_pause>
+
+=item C<unibi_wait_tone>
+
+=item C<unibi_user0>
+
+=item C<unibi_user1>
+
+=item C<unibi_user2>
+
+=item C<unibi_user3>
+
+=item C<unibi_user4>
+
+=item C<unibi_user5>
+
+=item C<unibi_user6>
+
+=item C<unibi_user7>
+
+=item C<unibi_user8>
+
+=item C<unibi_user9>
+
+=item C<unibi_orig_pair>
+
+=item C<unibi_orig_colors>
+
+=item C<unibi_initialize_color>
+
+=item C<unibi_initialize_pair>
+
+=item C<unibi_set_color_pair>
+
+=item C<unibi_set_foreground>
+
+=item C<unibi_set_background>
+
+=item C<unibi_change_char_pitch>
+
+=item C<unibi_change_line_pitch>
+
+=item C<unibi_change_res_horz>
+
+=item C<unibi_change_res_vert>
+
+=item C<unibi_define_char>
+
+=item C<unibi_enter_doublewide_mode>
+
+=item C<unibi_enter_draft_quality>
+
+=item C<unibi_enter_italics_mode>
+
+=item C<unibi_enter_leftward_mode>
+
+=item C<unibi_enter_micro_mode>
+
+=item C<unibi_enter_near_letter_quality>
+
+=item C<unibi_enter_normal_quality>
+
+=item C<unibi_enter_shadow_mode>
+
+=item C<unibi_enter_subscript_mode>
+
+=item C<unibi_enter_superscript_mode>
+
+=item C<unibi_enter_upward_mode>
+
+=item C<unibi_exit_doublewide_mode>
+
+=item C<unibi_exit_italics_mode>
+
+=item C<unibi_exit_leftward_mode>
+
+=item C<unibi_exit_micro_mode>
+
+=item C<unibi_exit_shadow_mode>
+
+=item C<unibi_exit_subscript_mode>
+
+=item C<unibi_exit_superscript_mode>
+
+=item C<unibi_exit_upward_mode>
+
+=item C<unibi_micro_column_address>
+
+=item C<unibi_micro_down>
+
+=item C<unibi_micro_left>
+
+=item C<unibi_micro_right>
+
+=item C<unibi_micro_row_address>
+
+=item C<unibi_micro_up>
+
+=item C<unibi_order_of_pins>
+
+=item C<unibi_parm_down_micro>
+
+=item C<unibi_parm_left_micro>
+
+=item C<unibi_parm_right_micro>
+
+=item C<unibi_parm_up_micro>
+
+=item C<unibi_select_char_set>
+
+=item C<unibi_set_bottom_margin>
+
+=item C<unibi_set_bottom_margin_parm>
+
+=item C<unibi_set_left_margin_parm>
+
+=item C<unibi_set_right_margin_parm>
+
+=item C<unibi_set_top_margin>
+
+=item C<unibi_set_top_margin_parm>
+
+=item C<unibi_start_bit_image>
+
+=item C<unibi_start_char_set_def>
+
+=item C<unibi_stop_bit_image>
+
+=item C<unibi_stop_char_set_def>
+
+=item C<unibi_subscript_characters>
+
+=item C<unibi_superscript_characters>
+
+=item C<unibi_these_cause_cr>
+
+=item C<unibi_zero_motion>
+
+=item C<unibi_char_set_names>
+
+=item C<unibi_key_mouse>
+
+=item C<unibi_mouse_info>
+
+=item C<unibi_req_mouse_pos>
+
+=item C<unibi_get_mouse>
+
+=item C<unibi_set_a_foreground>
+
+=item C<unibi_set_a_background>
+
+=item C<unibi_pkey_plab>
+
+=item C<unibi_device_type>
+
+=item C<unibi_code_set_init>
+
+=item C<unibi_set0_des_seq>
+
+=item C<unibi_set1_des_seq>
+
+=item C<unibi_set2_des_seq>
+
+=item C<unibi_set3_des_seq>
+
+=item C<unibi_set_lr_margin>
+
+=item C<unibi_set_tb_margin>
+
+=item C<unibi_bit_image_repeat>
+
+=item C<unibi_bit_image_newline>
+
+=item C<unibi_bit_image_carriage_return>
+
+=item C<unibi_color_names>
+
+=item C<unibi_define_bit_image_region>
+
+=item C<unibi_end_bit_image_region>
+
+=item C<unibi_set_color_band>
+
+=item C<unibi_set_page_length>
+
+=item C<unibi_display_pc_char>
+
+=item C<unibi_enter_pc_charset_mode>
+
+=item C<unibi_exit_pc_charset_mode>
+
+=item C<unibi_enter_scancode_mode>
+
+=item C<unibi_exit_scancode_mode>
+
+=item C<unibi_pc_term_options>
+
+=item C<unibi_scancode_escape>
+
+=item C<unibi_alt_scancode_esc>
+
+=item C<unibi_enter_horizontal_hl_mode>
+
+=item C<unibi_enter_left_hl_mode>
+
+=item C<unibi_enter_low_hl_mode>
+
+=item C<unibi_enter_right_hl_mode>
+
+=item C<unibi_enter_top_hl_mode>
+
+=item C<unibi_enter_vertical_hl_mode>
+
+=item C<unibi_set_a_attributes>
+
+=item C<unibi_set_pglen_inch>
+
+=item C<unibi_termcap_init2>
+
+=item C<unibi_termcap_reset>
+
+=item C<unibi_linefeed_if_not_lf>
+
+=item C<unibi_backspace_if_not_bs>
+
+=item C<unibi_other_non_function_keys>
+
+=item C<unibi_arrow_key_map>
+
+=item C<unibi_acs_ulcorner>
+
+=item C<unibi_acs_llcorner>
+
+=item C<unibi_acs_urcorner>
+
+=item C<unibi_acs_lrcorner>
+
+=item C<unibi_acs_ltee>
+
+=item C<unibi_acs_rtee>
+
+=item C<unibi_acs_btee>
+
+=item C<unibi_acs_ttee>
+
+=item C<unibi_acs_hline>
+
+=item C<unibi_acs_vline>
+
+=item C<unibi_acs_plus>
+
+=item C<unibi_memory_lock>
+
+=item C<unibi_memory_unlock>
+
+=item C<unibi_box_chars_1>
+
+=back
+
+=back
+
+=head1 SEE ALSO
+
+L<terminfo(5)>,
+L<unibi_dummy(3)>,
+L<unibi_from_mem(3)>,
+L<unibi_destroy(3)>,
+L<unibi_dump(3)>,
+L<unibi_get_name(3)>,
+L<unibi_set_name(3)>,
+L<unibi_get_aliases(3)>,
+L<unibi_set_aliases(3)>,
+L<unibi_get_bool(3)>,
+L<unibi_set_bool(3)>,
+L<unibi_get_num(3)>,
+L<unibi_set_num(3)>,
+L<unibi_get_str(3)>,
+L<unibi_set_str(3)>,
+L<unibi_from_fp(3)>,
+L<unibi_from_fd(3)>,
+L<unibi_from_file(3)>,
+L<unibi_from_term(3)>,
+L<unibi_from_env(3)>,
+L<unibi_terminfo_dirs(3)>,
+L<unibi_name_bool(3)>,
+L<unibi_name_num(3)>,
+L<unibi_name_str(3)>
+
+=cut

0 comments on commit 8a5c6de

Please sign in to comment.
Something went wrong with that request. Please try again.