The NetBSD Project

CVS log for src/lib/libterminfo/term.c

[BACK] Up to [cvs.NetBSD.org] / src / lib / libterminfo

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.34 / (download) - annotate - [select for diffs], Sun Apr 5 14:53:39 2020 UTC (18 months, 2 weeks ago) by martin
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x, HEAD
Changes since 1.33: +8 -6 lines
Diff to previous 1.33 (colored)

Conditionalize a few more functions (hopefully fixing the build)

Revision 1.33 / (download) - annotate - [select for diffs], Sun Apr 5 12:31:02 2020 UTC (18 months, 3 weeks ago) by roy
Branch: MAIN
Changes since 1.32: +19 -6 lines
Diff to previous 1.32 (colored)

terminfo: Add guards to optionally build parts of libterminfo

Reading from a database is now optional.
Compiling terminfo descriptions (including from $TERMINFO) is now optional.
Compat support is now optional.

This removes 17k on amd64 from the binary size, which allows it to be used
again on space constrained ramdisks.

Revision 1.32 / (download) - annotate - [select for diffs], Fri Mar 27 17:39:53 2020 UTC (18 months, 4 weeks ago) by christos
Branch: MAIN
Changes since 1.31: +21 -38 lines
Diff to previous 1.31 (colored)

Introduce a bunch of inline functions and utilities to avoid code duplication.

Revision 1.31 / (download) - annotate - [select for diffs], Fri Mar 27 15:11:57 2020 UTC (18 months, 4 weeks ago) by christos
Branch: MAIN
Changes since 1.30: +15 -18 lines
Diff to previous 1.30 (colored)

As described in tech-userlevel:
- Modify the writing code to only write entries in the new
  format for the terminal descriptions that require it.
- Store new format entries as <name>@v3
- Store old format entries with clamped values as <name> for
  backwards compatibility
- Lookup first <name>@v3 and then <name> if that is not found.
- Don't create terminfo2 anymore; old programs keep working with
  clamped entries, and new programs be able to use the wide
  fields with using the original db file.

Revision 1.30 / (download) - annotate - [select for diffs], Fri Mar 13 15:19:25 2020 UTC (19 months, 1 week ago) by roy
Branch: MAIN
Changes since 1.29: +26 -12 lines
Diff to previous 1.29 (colored)

terminfo: promote numeric parameters from short to int

POSIX mandates implementations must support upto a short but may exceed it.
When NetBSD terminfo was implemented, no terminfo description used over
a short, but because ncurses has supported ints for some time, some now do.

Infact, such a terminfo description was imported where colour pairs for
screen-256color went up to 65536 which exposed a bug in the existing
implementation where it set to zero. Because the number might mean
something more than a range, we need to be able to store it accurately.

This requires a version bump because whilst the API hasn't changed thanks
to C int promotion, the ABI has. Also the underlying database structure
has changed as well - we now store the numeric paramter inside a uint32_t
field rather than a uint16_t one.
Whilst this change can still read the old style database, the old one
cannot read the new one and thus we now maintain the database as
terminfo2.cdb, leaving the old library and database alone so old programs
still work fine.

libcurses, libfrom, libmenu and libpanel have also been bumped to
accomoate this change.

Revision 1.29 / (download) - annotate - [select for diffs], Mon Oct 8 20:44:34 2018 UTC (3 years ago) by roy
Branch: MAIN
CVS Tags: phil-wifi-20191119, phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, netbsd-9-base, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, is-mlppp-base, is-mlppp
Changes since 1.28: +15 -5 lines
Diff to previous 1.28 (colored)

terminfo: if $TERMINFO.cdb doesn't exist, try $TERMINFO

This allows this command sequence to work:
tic -o /tmp/foo foo
TERMINFO=/tmp/foo TERM=foo infocmp

Revision 1.28 / (download) - annotate - [select for diffs], Tue May 16 12:03:41 2017 UTC (4 years, 5 months ago) by roy
Branch: MAIN
CVS Tags: prg-localcount2-base3, phil-wifi-base, pgoyette-compat-base, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, perseant-stdc-iso10646-base, perseant-stdc-iso10646, netbsd-8-base, netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, netbsd-8, matt-nb8-mediatek-base, matt-nb8-mediatek
Branch point for: phil-wifi, pgoyette-compat
Changes since 1.27: +12 -8 lines
Diff to previous 1.27 (colored)

Improve the scope of some variables.

Revision 1.27 / (download) - annotate - [select for diffs], Tue May 16 11:16:37 2017 UTC (4 years, 5 months ago) by roy
Branch: MAIN
Changes since 1.26: +25 -47 lines
Diff to previous 1.26 (colored)

Remove ticcmp and extend _ti_checkname so it can be used instead.

Revision 1.26 / (download) - annotate - [select for diffs], Tue May 16 10:29:06 2017 UTC (4 years, 5 months ago) by roy
Branch: MAIN
Changes since 1.25: +4 -2 lines
Diff to previous 1.25 (colored)

Fix prior for multiple terminfo aliases.

Revision 1.25 / (download) - annotate - [select for diffs], Tue May 16 10:25:40 2017 UTC (4 years, 5 months ago) by roy
Branch: MAIN
Changes since 1.24: +43 -24 lines
Diff to previous 1.24 (colored)

Instead of poking in the binary blob to work out if this is our terminal,
assume it is and load it.
Once loaded then check it's really for us.
This allows us to work out if the indexed alias entry is correct we
this was not checked previously.

Revision 1.24 / (download) - annotate - [select for diffs], Tue May 16 09:19:48 2017 UTC (4 years, 5 months ago) by roy
Branch: MAIN
Changes since 1.23: +7 -11 lines
Diff to previous 1.23 (colored)

Don't bother allocating space for the database name, just print
directly to the static buffer storage.

Revision 1.23 / (download) - annotate - [select for diffs], Tue May 16 08:52:14 2017 UTC (4 years, 5 months ago) by roy
Branch: MAIN
Changes since 1.22: +3 -3 lines
Diff to previous 1.22 (colored)

Move pathbuf into the function where it's actually used.

Revision 1.22 / (download) - annotate - [select for diffs], Thu May 4 09:42:23 2017 UTC (4 years, 5 months ago) by roy
Branch: MAIN
CVS Tags: prg-localcount2-base2
Changes since 1.21: +7 -7 lines
Diff to previous 1.21 (colored)

Clean up some compile warnings.

Revision 1.21 / (download) - annotate - [select for diffs], Thu Apr 20 08:34:23 2017 UTC (4 years, 6 months ago) by roy
Branch: MAIN
CVS Tags: prg-localcount2-base1, prg-localcount2-base, pgoyette-localcount-20170426, bouyer-socketcan-base1
Branch point for: prg-localcount2
Changes since 1.20: +8 -9 lines
Diff to previous 1.20 (colored)

Whitespace, fit in 80 and extra braces for readability.
No functional change.

Revision 1.20 / (download) - annotate - [select for diffs], Thu Nov 24 17:09:55 2016 UTC (4 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: pgoyette-localcount-20170320, pgoyette-localcount-20170107, bouyer-socketcan-base
Branch point for: bouyer-socketcan
Changes since 1.19: +11 -8 lines
Diff to previous 1.19 (colored)

off-by-one in memcpy. Found by ASAN (Carsten Kunze)
XXX: pullup 7.

Revision 1.19 / (download) - annotate - [select for diffs], Thu Nov 26 01:03:22 2015 UTC (5 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: pgoyette-localcount-base, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, localcount-20160914
Branch point for: pgoyette-localcount
Changes since 1.18: +3 -3 lines
Diff to previous 1.18 (colored)

Always copy the area buffer, even when the length was the same
(from Rin Okuyama)

Revision 1.18 / (download) - annotate - [select for diffs], Wed Nov 25 19:13:49 2015 UTC (5 years, 11 months ago) by christos
Branch: MAIN
Changes since 1.17: +52 -19 lines
Diff to previous 1.17 (colored)

From PR/50092:
- handle calling _ti_readterm with an existing initialized terminal
- simplify free code
Also:
- fix an inconsistency in userdefs count computation

Revision 1.17 / (download) - annotate - [select for diffs], Fri Jun 7 13:16:18 2013 UTC (8 years, 4 months ago) by roy
Branch: MAIN
CVS Tags: yamt-pagecache-base9, tls-maxphys-base, tls-earlyentropy-base, tls-earlyentropy, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, netbsd-7-nhusb-base, netbsd-7-base, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0
Branch point for: netbsd-7-nhusb, netbsd-7
Changes since 1.16: +6 -6 lines
Diff to previous 1.16 (colored)

Whitespace

Revision 1.16 / (download) - annotate - [select for diffs], Wed Jun 6 13:36:58 2012 UTC (9 years, 4 months ago) by joerg
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, agc-symver-base, agc-symver
Branch point for: tls-maxphys
Changes since 1.15: +3 -3 lines
Diff to previous 1.15 (colored)

Relax consistency to make it possible to match valid entries.

Revision 1.15 / (download) - annotate - [select for diffs], Sun Jun 3 23:19:10 2012 UTC (9 years, 4 months ago) by joerg
Branch: MAIN
Changes since 1.14: +51 -41 lines
Diff to previous 1.14 (colored)

Switch terminfo(3) to cdb(5).

Revision 1.14 / (download) - annotate - [select for diffs], Fri Jun 1 12:02:36 2012 UTC (9 years, 4 months ago) by joerg
Branch: MAIN
Changes since 1.13: +3 -3 lines
Diff to previous 1.13 (colored)

Use memcmp in place of strncmp, since length is known to no longer than
either of the arguments.

Revision 1.13 / (download) - annotate - [select for diffs], Mon Oct 3 19:18:55 2011 UTC (10 years ago) by roy
Branch: MAIN
CVS Tags: yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, netbsd-6-base
Branch point for: yamt-pagecache, netbsd-6
Changes since 1.12: +7 -24 lines
Diff to previous 1.12 (colored)

Remove _ti_freeterm as consumers should just use del_curterm.

Revision 1.12 / (download) - annotate - [select for diffs], Mon Apr 11 21:37:19 2011 UTC (10 years, 6 months ago) by roy
Branch: MAIN
CVS Tags: cherry-xenmp-base, cherry-xenmp
Changes since 1.11: +5 -4 lines
Diff to previous 1.11 (colored)

Clean up some compile warnings

Revision 1.11 / (download) - annotate - [select for diffs], Fri Feb 26 00:09:00 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN
CVS Tags: matt-mips64-premerge-20101231, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Changes since 1.10: +58 -8 lines
Diff to previous 1.10 (colored)

Implement captoinfo so that we can convert $TERMCAP into $TERMINFO.
We don't currently map %> %B %D.
That means no conversion for regent100, hz1500, act4, act5, mime terms.

Revision 1.10 / (download) - annotate - [select for diffs], Mon Feb 22 23:05:39 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN
Changes since 1.9: +31 -18 lines
Diff to previous 1.9 (colored)

libterminfo can now compile a single terminfo description which allows
$TERMINFO to be a terminfo description as well as a file reference.

This enables the user to modify the terminfo description on read-only
media.

Revision 1.9 / (download) - annotate - [select for diffs], Fri Feb 12 12:18:33 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN
Changes since 1.8: +4 -13 lines
Diff to previous 1.8 (colored)

Store the generated compiled terminfo descriptions so that we can build
a consistent library just from source.

Revision 1.8 / (download) - annotate - [select for diffs], Thu Feb 11 14:36:09 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN
Changes since 1.7: +29 -16 lines
Diff to previous 1.7 (colored)

Respect TERMINFO_DIRS and document using an embedded database.

Revision 1.7 / (download) - annotate - [select for diffs], Thu Feb 11 13:11:47 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN
Changes since 1.6: +11 -8 lines
Diff to previous 1.6 (colored)

Use structures so we know how long each description is.

Revision 1.6 / (download) - annotate - [select for diffs], Thu Feb 11 09:42:03 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN
Changes since 1.5: +8 -4 lines
Diff to previous 1.5 (colored)

Allow a NULL description.

Revision 1.5 / (download) - annotate - [select for diffs], Thu Feb 11 00:27:09 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN
Changes since 1.4: +27 -13 lines
Diff to previous 1.4 (colored)

Embed ansi, dumb, vt100, vt220 and wsvt25 compiled terminal descriptions
into libterminfo.
Constify some foo.

Revision 1.4 / (download) - annotate - [select for diffs], Fri Feb 5 19:21:02 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN
Changes since 1.3: +17 -5 lines
Diff to previous 1.3 (colored)

Don't look in /etc for a terminfo database.
Don't report the rescue database if we did not find the terminal in
there AND we were able to access prior databases.

Revision 1.3 / (download) - annotate - [select for diffs], Fri Feb 5 12:31:56 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN
Changes since 1.2: +18 -4 lines
Diff to previous 1.2 (colored)

Store the aliases against the entry, so that infocmp can reproduce them.
Handy for creating smaller terminfo databases.

Revision 1.2 / (download) - annotate - [select for diffs], Fri Feb 5 09:42:21 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN
Changes since 1.1: +3 -3 lines
Diff to previous 1.1 (colored)

Allow loading of a terminfo database in /rescue.

Revision 1.1 / (download) - annotate - [select for diffs], Wed Feb 3 15:16:32 2010 UTC (11 years, 8 months ago) by roy
Branch: MAIN

Import my terminfo implementation.
This uses the ncurses terminal definitions.

OK: core@, jdc@

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>