Commit Graph

706 Commits

Author SHA1 Message Date
blymn 0d7a04cd28 Fix reversed logic in the notimeout call.
Fix obsolete email addresses in copyright.
2014-02-28 07:58:42 +00:00
blymn 74ff043f96 Correct the implementation of mvderwin, it now works as specified by
SUSv2.
2014-02-20 09:42:42 +00:00
blymn d345484675 Make the touch family of calls actually force an update of the
terminal bypassing optimisations.  Previously if curses thought curscr
was in sync with virtscr (curses concept of what is on the screen) then
nothing would be output.  This change forces an update out to the terminal
regardless.
2013-12-06 11:23:47 +00:00
christos 5fe8b8f1c1 remove unused variable 2013-11-10 03:14:16 +00:00
blymn 69b405aa23 Rename the old __waddbytes function to _cursesi_waddbytes and add a
parameter that controls whether or not certain characters in the
string are interpreted or not (things like tab being expanded).

Make __waddbytes a wrapper for _cursesi_waddbytes that passes all
parameters and sets the flag for character interpretation for backward
compatibility.

Fix an incipient bug in _cursesi_waddbytes where garbage would have
been written to the terminal if the terminal TABSIZE was set > 8 and
character interpretation is on.

Convert all internal __waddbytes calls to use _cursesi_waddbytes, fix
the function prototypes and add a new flag that will be used later.

Fix the addchstr family functions so that they call _cursesi_waddbytes
with character interpretation off as per SUSV2.
2013-11-09 11:16:59 +00:00
christos cbdcb619b0 fix unused warnings 2013-10-18 19:53:59 +00:00
roy 2e2213ef89 Add TABSIZE, which is derived from terminfo init_tabs.
Use this when processing \t.
If TABSIZE is set in the environment, this takes precedence.
2013-10-16 19:59:29 +00:00
roy 0f3cb8baf7 Define WA_NORMAL 2013-10-16 12:43:35 +00:00
roy f8157294d8 Note that delwin(3) is a null-op if win is NULL. 2013-10-15 22:15:17 +00:00
christos 8fd1aec131 Instead of turning off the 8th bit on resume, turn it on, as it is on by
default. Problem reported by atatat@ when suspending vi and resuming loses
the ability to use the alt key.
2013-10-15 13:00:52 +00:00
blymn 873b5b8698 Use the internal version of touchline to update the line. 2013-10-01 11:41:14 +00:00
dsainty 8ed5bc1d62 Fix a NULL dereference if the exit_alt_charset_mode capability is not defined.
The previous version of this file changed a terminal initialisation test on
the exit_attribute_mode capability, checking for the exit_alt_charset_mode
capability as a substring, rather than performing a search for the hard-coded
^O character.

That works better on terminals where ^O is not the correct value for
exit_alt_charset_mode.  But it works worse on terminals that don't have a
definition specified for exit_alt_charset_mode.

For example:

% TERMCAP='xterm:me=\E[m:' TERM=xterm vi
segmentation fault (core dumped)  TERMCAP='xterm:me=\E[m:' TERM=xterm vi

The crash can be avoided (without fixing the bug) by defining
exit_alt_charset_mode:

% TERMCAP='xterm|:me=\E[m:ae=:' TERM=xterm vi
ex/vi: Error: xterm: No such process

We now test exit_alt_charset_mode for NULL before continuing with the fatal
test, restoring the original no-crash behaviour.

XXX does_ctrl_o() is now just a naive reimplementation of strstr(), so should
probably just use strstr() instead.
2013-09-25 03:28:20 +00:00
jdc b29886d4e9 Extend does_ctrl_o() to compare exit attribute and ext ACS sequences. 2013-05-05 14:24:05 +00:00
jdc cab30aac1c Also merge in background attributes. 2013-05-05 14:23:16 +00:00
jdc 80b874e08a Add extra debugging when copying window contents. 2013-05-05 14:22:07 +00:00
blymn 9c95b63f3b Don't wrap added string 2012-09-28 06:07:05 +00:00
blymn 4278f32774 Add more debug to mvchgat. 2012-09-28 06:05:19 +00:00
blymn 5c41471666 Correct behaviour of mvderwin(). It should remap a given area of the parent
window not move a derived window as it was before.
2012-09-28 06:03:45 +00:00
blymn 1aa7cc3dc3 Truncate string to RHS of the window - SUSv2 says we should. 2012-09-28 06:00:39 +00:00
blymn 74bbb55e87 * Size argument for memset when clearing cbuf was wrong, cbuf is an array
of char not int so memset was stomping memory past the end of the array.
  Use sizeof properly to correctly determine the amount of memory to clear.
2012-06-29 10:40:29 +00:00
agc 1a27c54f9a re-work the previous to make it format correctly 2012-05-02 04:23:09 +00:00
agc 142f8d12eb document the correct argument to wstandout(3) and wstandend(3) 2012-05-01 17:32:58 +00:00
roy 27c1dc0dc5 Fix build 2012-04-21 14:39:35 +00:00
roy 258cf0abec Add capfile(5) to describe the termcap format.
Adjust various man pages and other documentation to point to capfile(5)
instead of termcap(5).
Remove getcap(3) as curses hasn't been building it for a long time.
Punt wrterm.c as tset no longer uses it.
2012-04-21 12:27:24 +00:00
blymn 35253f4b16 Fix build break if curses is built without wide char support 2012-04-21 11:33:16 +00:00
blymn 0f995dfd31 Remove trailing whitespace 2012-04-21 11:31:59 +00:00
christos 8aaa635ed5 PR/46049: Tim van der Molen:
clrtobot() and clrtoeol() do not set background attributes
2012-02-19 19:38:13 +00:00
christos b76235fd7a handle the case where we have no space properly (Nat Sloss) 2012-01-27 15:37:09 +00:00
christos acd0d5274c PR/45791: Nat Sloss: getnstr erase character weirdness
Fix processing of backspace erase char and char left.
2012-01-06 22:20:54 +00:00
roy 64afaacce6 Move longname(3) from curses to terminfo, pre-cursor to fix PR/43386. 2011-10-04 11:01:13 +00:00
roy 4060cbcd0c Use tiparm instead of vtparm. 2011-10-03 12:32:15 +00:00
wiz 72e0f90c3f Remove trailing whitespace. Bump date for previous. 2011-09-15 12:01:18 +00:00
blymn d3c541783a - Make mvderwin work as per the SUSv2 specification and other curses
implementations.
2011-09-15 11:58:05 +00:00
christos ef87b14708 Fix for systems that don't have TCSASOFT as intended originally. Simplify. 2011-08-29 11:07:38 +00:00
wiz 495abc41ce Add serial comma, remove trailing whitespace, bump date for previous. 2011-08-07 11:37:06 +00:00
blymn f23e1d9ef1 Merge the attributes into the returned characters. 2011-08-07 10:57:10 +00:00
blymn 9202e9d5c9 Document the return values for innstr and friends. 2011-08-07 10:55:59 +00:00
blymn 27325b933f Fix a bug that prevented instr and friends returning OK. 2011-08-07 10:54:53 +00:00
blymn 12654ca858 flush the output after writing the meta sequence. 2011-08-07 10:52:18 +00:00
joerg 3eb244d801 Retire varargs.h support. Move machine/stdarg.h logic into MI
sys/stdarg.h and expect compiler to provide proper builtins, defaulting
to the GCC interface. lint still has a special fallback.
Reduce abuse of _BSD_VA_LIST_ by defining __va_list by default and
derive va_list as required by standards.
2011-07-17 20:54:30 +00:00
blymn 83d6403d6e Set the background attributes when erasing. 2011-07-10 12:11:49 +00:00
joerg b341a73a57 Fix memset usage. 2011-07-01 01:19:33 +00:00
jdc f18c34f949 Correctly test for __ISDIRTY.
Problem noticed by (and test case provided by) blymn@.
2011-06-16 22:45:46 +00:00
blymn e0662f42c2 Fix deleting a key definition, it did not work. Also improve tracing
of key definition deletion.
2011-04-21 08:10:49 +00:00
jruoho 6e3ec5b1a3 Fix PR # 41894. 2011-04-06 08:38:43 +00:00
blymn eff7afe2e8 Add man page link for define_key 2011-04-04 10:32:04 +00:00
blymn 3da4a766de fflush the outfd after setting the cursor visibility so it takes effect
immediately.
2011-03-30 09:47:02 +00:00
blymn 01cc4b6151 Fix typo. 2011-02-10 08:54:12 +00:00
blymn 0a965fa7ed Back out change for assume_default_colors as it was not correct. 2011-01-06 11:29:40 +00:00
blymn bcc3426f98 Little bit more debug information. 2010-12-25 10:08:20 +00:00
blymn 58f5b3b32b Ignore request to change the values of colour pair 0
Explicitly set foreground and/or background colours when -1 is passed
to assume_default_colors()
2010-12-25 10:05:08 +00:00
blymn 0ddf818977 Allow attributes to be applied to the default line drawing characters
by just passing attributes as arguments to the wborder call.
2010-12-25 09:59:52 +00:00
wiz 3d3c5d42cb Observe the following spelling:
- wide character (noun)
- wide-character (adjective)

Inspired by jmc@OpenBSD.
2010-12-16 17:42:25 +00:00
njoly a2a0aef6cd s/curses_fileo/curses_fileio/ in xrefs. 2010-12-09 13:26:27 +00:00
njoly b0b35bdc77 Add missing space in fread xref. 2010-12-09 11:21:49 +00:00
joerg bd9a53cf30 Since limit and l are both unsigned, comparing to 0 doesn't work, so compare
the values directly.
2010-12-07 22:02:52 +00:00
tnozaki 115137ad39 to initialize mbstate_t, use memset instead mbrtowc. 2010-11-23 05:38:35 +00:00
blymn eb6f26d7ad Don't echo key symbols. 2010-11-05 11:38:54 +00:00
dholland de3d24d6c6 avoid writing in parseltongue 2010-08-06 04:03:26 +00:00
dholland 4bded2208d After consultation with jdc@, apply the patch from PR 42412 even though
the crash went away -- it's not clear that it went away for any reason
besides by accident.

The change is: use calloc instead of malloc for allocating SCREENs.
2010-06-10 05:24:55 +00:00
drochner 90f3894847 fix wrong widechar assignment for "up arrow" 2010-02-25 10:56:24 +00:00
drochner d32fd438b1 document wsyncup/wsyncdown/wcursyncup 2010-02-24 13:02:13 +00:00
drochner 452834f264 misc fixes and improvements:
-call setlocale(LC_CTYPE, "") before nl_langinfo(CODESET) if the
 locale settings is (still) at "C" - otherwise the CODESET doesn't work
-fix the type of the WACS_* symbols -- this needs to be cchar_t*
-add safeguards where the return value of wcwidth() is used for
 loop counters or indexing -- it can be -1
-use more common code in the widechar support case -- in particular
 let the wchar functions do the work even if chtype ones were called
-implement wcursyncup/wsyncup/wsyncdown
-somewhat experimental: allow ACS_* variables to refer to WACS_*
 table entries -- this way, programs using the old chtype using API
 can use UTF8 line drawing on terminals which support UTF8 but not
 ACS switching
-fix some logics bugs in UTF8 recognition and ALTCHARSET handling
2010-02-23 19:48:26 +00:00
wiz 66c83b53c8 Bump date for previous. 2010-02-20 10:23:04 +00:00
drochner f138ed81f2 explain a non-portable behavior 2010-02-19 19:09:15 +00:00
roy 1bc5794aa0 Change from scroll_forward to cursor_down.
cursor_down is more similar to our old termcap use of nl.
Fixes PR lib/42770.
2010-02-12 10:06:15 +00:00
roy 582936ff0d Don't assume the terminal has a description. 2010-02-11 11:45:47 +00:00
roy a017e721b1 Fix an off-by-one error.
Thanks to Matthias Drochner.
2010-02-08 20:45:22 +00:00
roy 98eb889579 Userland now builds and uses terminfo instead of termcap.
OK: core@, jdc@
2010-02-03 15:34:37 +00:00
dsl ef7eea8bfd Read input from the correct FILE. 2009-11-04 21:51:11 +00:00
dsl bc1d032082 Round timeout values up.
More importantly convert 1..99 to 1, not 0.
2009-11-04 21:24:57 +00:00
dsl 905b39a994 Move calls to __restore_termios() into the failing path of the functions
that fail - instead of in most of the callers.
All rather pointless if tcsetattr() fails to set the mode we want we
are very unlikely to be able to restore any later on.
2009-11-01 22:11:27 +00:00
jdc 7ffe6d60fa Return the same information whether or not we have wide characters.
Problem pointed out by Rhialto on current-users.
2009-10-06 20:03:27 +00:00
christos 304c3bd293 fix debugging build. Hi Roy! 2009-07-28 18:38:43 +00:00
roy 43d5eb454b Prepare curses for the possibility of changing from termcap to terminfo.
term.h #defines lines, pad_char and no_color_video macros which conflict
with existing curses code. We change lines to alines and nlines depending
on use, pad_char to padchar and no_color_video becomes no_color_attributes
but with a strong alias from no_color_video.
2009-07-22 16:57:14 +00:00
wiz 27f99b53d5 Add RCS Id. Fill in name in license. New sentence, new line.
Add comma in enumeration.
2009-07-12 23:14:06 +00:00
wiz 1a280fda0f Bump date for *chgat*. 2009-07-12 23:12:40 +00:00
joerg a8766915af Ensure that y,x are valid coordinates before using them. 2009-07-09 22:08:45 +00:00
joerg 2a64051b50 Be strict on xcurses support:
- Do not perform wrapping at all by setting the line flags.
- Do not alter the cursor position, even for mv(w)chgat.
2009-07-07 13:10:02 +00:00
joerg ba2ae25781 chgat() and friends are in X/Open. Noticed by Thomas Dickey. 2009-07-07 11:53:43 +00:00
joerg eadfd2731f Add vw_printw and vw_scanw as mandated by SUSv2's xcurses. Follow
ncurses and just make the historic vwprintw and vwscanw functions
aliases, ignoring that they should take a varargs.h va_list argument.
2009-07-07 10:16:52 +00:00
joerg 32e50f68cc Use __printflike/__scanflike. 2009-07-07 09:58:08 +00:00
joerg 1e5025e496 Add support for the chgat(3) family. It is a useful extension from
ncurses, supporting it dramatically reduces the need for ncurses in
pkgsrc.
2009-07-06 15:19:49 +00:00
wiz 85d294df1c Sort SEE ALSO. New sentence, new line. 2009-05-18 09:30:31 +00:00
christos 3b75967235 make fileio.h work with objdir. 2009-04-06 00:48:19 +00:00
christos b10afc8344 regen 2009-04-06 00:48:04 +00:00
cube 7ad46619fb Make keypad return an int instead of nothing, as the SUS and even
curses_input(3) [!] say it should.

OK'd jdc@.  ABI lawyers say this doesn't need major bump.
2009-04-01 20:59:15 +00:00
wiz 047cc3e3f6 Sort sections. 2009-02-23 08:27:13 +00:00
christos 4534498c64 Get the ESCDELAY from the environment. 2009-02-22 20:05:48 +00:00
christos 58e089a802 Document curses environment variables. 2009-02-22 20:04:21 +00:00
jdc 145a912cc9 Fix bug where a single ESC was not recognised when in keypad() mode.
Noticed by abs@.
2009-02-09 12:45:59 +00:00
christos 099cac49ad fix debugging build. 2009-01-17 15:25:36 +00:00
christos 46edb91e9f bump shared libraries. 2009-01-11 03:07:47 +00:00
apb 8a9d9ec446 s/AWK/TOOL_AWK/. Problem reported by Greg Oster. 2008-10-27 20:56:28 +00:00
tnozaki 97d29a42cd add workaround for PR/39175(Curses regression causes disoptimal and
confusing output), act as rev1.25 does when wcwidth == 1.
2008-07-23 13:32:41 +00:00
tnozaki c71a9f1dad use mbrtowc() instead of mbtowc(). 2008-07-04 16:52:10 +00:00
tnozaki b29240a183 use nl_langinfo(CODESET) instead of setlocale(LC_ALL, ""). 2008-07-04 16:24:45 +00:00
tnozaki c1cfc49998 fix cursor position problem with the character wcwidth > 1.
discussed in tech-userlevel, ok'ed by jdc@ thanks!
2008-07-04 15:51:35 +00:00
yamt 2233bf3229 remove unnecessary casts. 2008-06-13 03:18:04 +00:00
yamt 60683edb0f avoid c99 on DEBUG. 2008-06-13 03:15:50 +00:00