OpenBSD CVS

CVS log for src/usr.bin/tmux/screen.c


[BACK] Up to [local] / src / usr.bin / tmux

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.85 / (download) - annotate - [select for diffs], Thu Mar 21 11:26:28 2024 UTC (8 weeks, 2 days ago) by nicm
Branch: MAIN
CVS Tags: HEAD
Changes since 1.84: +2 -2 lines
Diff to previous 1.84 (colored)

Do not consider a selection present if it is empty, from Michael Grant
(GitHub issue 3869). Also a typo fix from GitHub issue 3877.

Revision 1.84 / (download) - annotate - [select for diffs], Wed Dec 27 20:17:13 2023 UTC (4 months, 3 weeks ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5
Changes since 1.83: +2 -1 lines
Diff to previous 1.83 (colored)

Always initialize screen mode, GitHub issue 3750 from Ding Fei.

Revision 1.83 / (download) - annotate - [select for diffs], Tue Sep 19 08:35:44 2023 UTC (7 months, 4 weeks ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_7_4_BASE, OPENBSD_7_4
Changes since 1.82: +3 -3 lines
Diff to previous 1.82 (colored)

Fix a couple of mouse mode flag names.

Revision 1.82 / (download) - annotate - [select for diffs], Mon Jun 26 08:14:19 2023 UTC (10 months, 3 weeks ago) by nicm
Branch: MAIN
Changes since 1.81: +2 -2 lines
Diff to previous 1.81 (colored)

When exiting alternate screen, there is no need to reflow when going
back to old size since the contents will be overwritten. GitHub issue
3510.

Revision 1.81 / (download) - annotate - [select for diffs], Thu Jun 30 09:55:53 2022 UTC (22 months, 2 weeks ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2
Changes since 1.80: +15 -1 lines
Diff to previous 1.80 (colored)

Add support for OSC 8 hyperlinks (a VTE extension now supported by other
terminals such as iTerm2). Originally written by me then extended and
completed by first Will Noble and later Jeff Chiang. GitHub issues 911,
2621, 2890, 3240.

Revision 1.80 / (download) - annotate - [select for diffs], Mon May 30 12:55:25 2022 UTC (23 months, 2 weeks ago) by nicm
Branch: MAIN
Changes since 1.79: +3 -3 lines
Diff to previous 1.79 (colored)

Spacing/style nits.

Revision 1.79 / (download) - annotate - [select for diffs], Fri Apr 1 10:11:59 2022 UTC (2 years, 1 month ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_7_1_BASE, OPENBSD_7_1
Changes since 1.78: +2 -2 lines
Diff to previous 1.78 (colored)

Preserve CRLF flag when respawning.

Revision 1.78 / (download) - annotate - [select for diffs], Wed Nov 3 13:37:17 2021 UTC (2 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.77: +19 -17 lines
Diff to previous 1.77 (colored)

Add a cursor-style option, from Alexis Hildebrandt in GitHub issue 2960.

Revision 1.77 / (download) - annotate - [select for diffs], Mon Nov 1 09:34:49 2021 UTC (2 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.76: +5 -6 lines
Diff to previous 1.76 (colored)

Add a cursor-colour option, from Alexis Hildebrandt in GitHub issue
2959.

Revision 1.76 / (download) - annotate - [select for diffs], Tue Oct 5 12:46:02 2021 UTC (2 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.75: +11 -9 lines
Diff to previous 1.75 (colored)

Separate "very visible" flag from blinking flag, it should not affect
DECSCUSR. GitHub issue 2891.

Revision 1.75 / (download) - annotate - [select for diffs], Thu Sep 9 06:57:48 2021 UTC (2 years, 8 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0
Changes since 1.74: +4 -4 lines
Diff to previous 1.74 (colored)

Fix parsing of aliases again (GitHub issue 2842), also make argument
parsing a bit simpler and fix the names of some client flags.

Revision 1.74 / (download) - annotate - [select for diffs], Fri Aug 20 17:50:42 2021 UTC (2 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.73: +2 -2 lines
Diff to previous 1.73 (colored)

Remove stray spaces after function names.

Revision 1.73 / (download) - annotate - [select for diffs], Thu Jun 10 07:43:44 2021 UTC (2 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.72: +51 -3 lines
Diff to previous 1.72 (colored)

Improve logging of screen mode changes.

Revision 1.72 / (download) - annotate - [select for diffs], Thu Jun 10 07:36:47 2021 UTC (2 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.71: +30 -4 lines
Diff to previous 1.71 (colored)

Change cursor style handling so tmux understands which sequences contain
blinking and sets the flag appropriately, means that it works whether
cnorm disables blinking or not. GitHub issue 2682.

Revision 1.71 / (download) - annotate - [select for diffs], Thu Jun 10 07:24:10 2021 UTC (2 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.70: +4 -2 lines
Diff to previous 1.70 (colored)

Add an "always" value to the extended-keys option to always forward
these keys to applications inside tmux.

Revision 1.70 / (download) - annotate - [select for diffs], Fri Mar 12 08:39:17 2021 UTC (3 years, 2 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_9_BASE, OPENBSD_6_9
Changes since 1.69: +4 -2 lines
Diff to previous 1.69 (colored)

Fix so tmux correctly sends the cvvis (cursor very visible) capability
rather than sending it and then immediately undoing it with cnorm. Also
turn it off when the cursor shape is changed like xterm.

Revision 1.69 / (download) - annotate - [select for diffs], Tue Jan 26 09:32:52 2021 UTC (3 years, 3 months ago) by nicm
Branch: MAIN
Changes since 1.68: +24 -19 lines
Diff to previous 1.68 (colored)

Always resize the original screen before copying when exiting the
alternate screen, GitHub issue 2536.

Revision 1.68 / (download) - annotate - [select for diffs], Fri Oct 30 11:33:41 2020 UTC (3 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.67: +3 -1 lines
Diff to previous 1.67 (colored)

Do not leak path when freeing screen, from Sergey Nizovtsev.

Revision 1.67 / (download) - annotate - [select for diffs], Sat May 16 15:49:20 2020 UTC (4 years ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE, OPENBSD_6_8
Changes since 1.66: +28 -26 lines
Diff to previous 1.66 (colored)

Store and restore cursor position when copy mode is resized, from
Anindya Mukherjee.

Revision 1.66 / (download) - annotate - [select for diffs], Wed Apr 22 08:48:44 2020 UTC (4 years ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_7_BASE, OPENBSD_6_7
Changes since 1.65: +5 -4 lines
Diff to previous 1.65 (colored)

Update the cursor position when deleting lines from screens without
history, GitHub issue 2173.

Revision 1.65 / (download) - annotate - [select for diffs], Sat Apr 18 17:20:25 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.64: +5 -4 lines
Diff to previous 1.64 (colored)

A resize can realloc so cannot cache the value of the list pointer.

Revision 1.64 / (download) - annotate - [select for diffs], Sat Apr 18 15:12:28 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.63: +11 -1 lines
Diff to previous 1.63 (colored)

There is no point in keeping a bunch of different text buffers for each
line when writing, we only need one as big as the line width - there
can't be any more text than that since newer will overwrite older.

Revision 1.63 / (download) - annotate - [select for diffs], Fri Apr 17 14:06:42 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.62: +6 -3 lines
Diff to previous 1.62 (colored)

Make sure the cursor position is still on screen after we have trimmed
empty lines. Also improve some log messages.

Revision 1.62 / (download) - annotate - [select for diffs], Wed Apr 15 17:50:02 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.61: +52 -32 lines
Diff to previous 1.61 (colored)

Instead of fixing with the cursor position when the copied screen is
created, resize it and let the resize/reflow code fix it up and return
it. Solves various problems with cursor position and resizing when in
copy mode. With Anindya Mukherjee.

Revision 1.61 / (download) - annotate - [select for diffs], Wed Apr 15 12:59:20 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.60: +3 -12 lines
Diff to previous 1.60 (colored)

Use grid_empty_line rather than memset when adding new lines on resize.
Also remove some old test code.

Revision 1.60 / (download) - annotate - [select for diffs], Tue Apr 7 13:55:24 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.59: +4 -2 lines
Diff to previous 1.59 (colored)

Do not restore history flag if it was never set.

Revision 1.59 / (download) - annotate - [select for diffs], Tue Mar 31 07:00:34 2020 UTC (4 years, 1 month ago) by nicm
Branch: MAIN
Changes since 1.58: +85 -1 lines
Diff to previous 1.58 (colored)

Move alternate screen into the screen rather than the pane.

Revision 1.58 / (download) - annotate - [select for diffs], Wed Feb 5 13:06:49 2020 UTC (4 years, 3 months ago) by nicm
Branch: MAIN
Changes since 1.57: +1 -3 lines
Diff to previous 1.57 (colored)

Make list-keys description clearer in tmux.1 and remove an unused variable.

Revision 1.57 / (download) - annotate - [select for diffs], Mon Feb 3 13:46:27 2020 UTC (4 years, 3 months ago) by nicm
Branch: MAIN
Changes since 1.56: +8 -3 lines
Diff to previous 1.56 (colored)

Instead of passing titles through vis() which doubles backslashes, just
ignore any containing control characters or invalid UTF-8. GitHub issue 2070.

Revision 1.56 / (download) - annotate - [select for diffs], Fri Nov 15 11:16:53 2019 UTC (4 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.55: +9 -1 lines
Diff to previous 1.55 (colored)

Handle OSC 7 (a VTE extension) and put the result in a new format (pane_path).

Revision 1.55 / (download) - annotate - [select for diffs], Tue Apr 2 08:45:32 2019 UTC (5 years, 1 month ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5
Changes since 1.54: +5 -5 lines
Diff to previous 1.54 (colored)

Store and restore cursor across reflow by working out a position based
on unwrapped lines, rather than a grid offset. Fixes problems reported
by Thomas Sattler and Paul de Weerd.

Revision 1.54 / (download) - annotate - [select for diffs], Wed Mar 20 19:19:11 2019 UTC (5 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.53: +28 -32 lines
Diff to previous 1.53 (colored)

Improve cursor positioning after reflow by storing the position as an
offset into the entire history before reflow and restoring it aftewards.

Revision 1.53 / (download) - annotate - [select for diffs], Tue Jan 15 09:56:31 2019 UTC (5 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.52: +11 -3 lines
Diff to previous 1.52 (colored)

Do not highlight characters which will not be copied, reported by
Jaroslaw Rzeszotko.

Revision 1.52 / (download) - annotate - [select for diffs], Tue Jul 31 11:49:26 2018 UTC (5 years, 9 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_4_BASE, OPENBSD_6_4
Changes since 1.51: +40 -24 lines
Diff to previous 1.51 (colored)

Move struct screen_sel into screen.c and tidy up members that are only
used by copy mode.

Revision 1.51 / (download) - annotate - [select for diffs], Wed Jul 4 09:44:07 2018 UTC (5 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.50: +4 -5 lines
Diff to previous 1.50 (colored)

Add accessors for grid linedata member, for some future work. From Dan
Aloni.

Revision 1.50 / (download) - annotate - [select for diffs], Wed Nov 15 19:21:24 2017 UTC (6 years, 6 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_3_BASE, OPENBSD_6_3
Changes since 1.49: +2 -11 lines
Diff to previous 1.49 (colored)

Completely rewrite the reflow code to correctly handle double width
characters (previously they were not accounted for).

Revision 1.49 / (download) - annotate - [select for diffs], Thu Nov 2 18:26:38 2017 UTC (6 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.48: +3 -2 lines
Diff to previous 1.48 (colored)

There is no point in reflowing panes which have not changed width.

Revision 1.48 / (download) - annotate - [select for diffs], Thu Oct 5 13:29:18 2017 UTC (6 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.47: +69 -1 lines
Diff to previous 1.47 (colored)

Add support for the xterm(1) title stack, from Brad Town, GitHub issue
1075.

Revision 1.47 / (download) - annotate - [select for diffs], Sun Jun 4 09:02:36 2017 UTC (6 years, 11 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE, OPENBSD_6_2
Changes since 1.46: +3 -2 lines
Diff to previous 1.46 (colored)

Be more strict about escape sequences that rename windows or set titles:
ignore any that not valid UTF-8 outright, and for good measure pass the
result through our UTF-8-aware vis(3).

Revision 1.46 / (download) - annotate - [select for diffs], Wed Feb 8 16:45:18 2017 UTC (7 years, 3 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_1_BASE, OPENBSD_6_1
Changes since 1.45: +2 -6 lines
Diff to previous 1.45 (colored)

Collect sequences of printable ASCII characters and process them
together instead of handling them one by one. This is significantly
faster. Sequences are terminated when we reach the end of the line, fill
the internal buffer, or a different character is seen by the input
parser (an escape sequence, or UTF-8).

Rather than writing collected sequences out immediately, hold them until
it is necessary (another screen modification, or we consume all
available data). This means we can discard changes that would have no
effect (for example, lines that would just be scrolled off the screen or
cleared). This reduces the total amount of data we write out to the
terminal - not important for fast terminals, but a big help with slow
(like xterm).

Revision 1.45 / (download) - annotate - [select for diffs], Thu Nov 24 13:38:44 2016 UTC (7 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.44: +15 -3 lines
Diff to previous 1.44 (colored)

Make the selection able to exist independent of the cursor position, so
that it is not affected by scrolling. If MouseDragEnd1Pane is bound to
the new "stop-selection" command:

    bind -Tcopy-mode MouseDragEnd1Pane stop-selection

A selection made with the mouse will stay as it is after button 1 is
released. (It also works bound to a key.)

From Artem Fokin.

Revision 1.44 / (download) - annotate - [select for diffs], Thu Oct 13 20:27:27 2016 UTC (7 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.43: +5 -4 lines
Diff to previous 1.43 (colored)

Add support for BCE (background colour erase). This makes various escape
sequences (notable EL and ED but also IL, DL, ICH, DCH) create blank
cells using the current background colour rather than the default
colour.

On modern systems BCE doesn't really have many benefits, but most other
terminals now support it, some (lazy) applications rely on it, and it is
not hard to include now that we have pane background colours anyway.

Mostly written by Sean Haugh.

Revision 1.43 / (download) - annotate - [select for diffs], Wed Oct 12 13:24:07 2016 UTC (7 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.42: +17 -1 lines
Diff to previous 1.42 (colored)

Redraw selection in tty_draw_line, so it appears when redrawing whole
pane. Reported by Theo Buehler.

Revision 1.42 / (download) - annotate - [select for diffs], Tue Oct 11 13:21:59 2016 UTC (7 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.41: +4 -2 lines
Diff to previous 1.41 (colored)

Add static in window-*.c and move some internal functions out of tmux.h.

Revision 1.41 / (download) - annotate - [select for diffs], Mon Oct 10 21:29:23 2016 UTC (7 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.40: +7 -7 lines
Diff to previous 1.40 (colored)

Loads more static, except for cmd-*.c and window-*.c.

Revision 1.40 / (download) - annotate - [select for diffs], Fri Sep 2 20:57:20 2016 UTC (7 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.39: +10 -7 lines
Diff to previous 1.39 (colored)

Remember the number of lines scrolled into the history (versus cleared
into the history) and when resizing only use scrolled lines and not
cleared lines (which are probably not intended to reappear). From
Chaoren Lin.

Revision 1.39 / (download) - annotate - [select for diffs], Fri Jul 15 00:49:08 2016 UTC (7 years, 10 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE, OPENBSD_6_0
Changes since 1.38: +5 -1 lines
Diff to previous 1.38 (colored)

Don't update cells in each block of data read from a pane immediately,
instead track them as change (dirty) and update them once at the end,
saves much time if repeatedly writing the same cell. Also fix comparison
of cells being equal in a few places (memcmp is not enough).

Revision 1.38 / (download) - annotate - [select for diffs], Fri Jun 10 11:46:15 2016 UTC (7 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.37: +2 -2 lines
Diff to previous 1.37 (colored)

Spelling error (incrased -> increased), from Josh Soref.

Revision 1.37 / (download) - annotate - [select for diffs], Tue Jan 19 15:59:12 2016 UTC (8 years, 4 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.36: +2 -2 lines
Diff to previous 1.36 (colored)

I no longer use my SourceForge address so replace it.

Revision 1.36 / (download) - annotate - [select for diffs], Mon Dec 28 14:02:52 2015 UTC (8 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.35: +3 -3 lines
Diff to previous 1.35 (colored)

Couple of trivial style nits.

Revision 1.35 / (download) - annotate - [select for diffs], Tue Oct 27 09:28:31 2015 UTC (8 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.34: +1 -3 lines
Diff to previous 1.34 (colored)

Count brackets in #{?...} so that nested conditional formats work, from
Daniel De Graaf.

Revision 1.34 / (download) - annotate - [select for diffs], Fri Aug 28 17:11:12 2015 UTC (8 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.33: +2 -8 lines
Diff to previous 1.33 (colored)

Only set default title to hostname on screens that are being used for a
window pane, no point in calling gethostname() for temporary screens.

Revision 1.33 / (download) - annotate - [select for diffs], Sun Jan 11 04:14:40 2015 UTC (9 years, 4 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8, OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.32: +3 -3 lines
Diff to previous 1.32 (colored)

correctly use HOST_NAME_MAX.

Some notes:
POSIX HOST_NAME_MAX doesn't include the NUL.
POSIX LOGIN_NAME_MAX and TTY_NAME_MAX do include the NUL.

BSD MAXHOSTNAMELEN includes the NUL.  Actually, most of the historical
BSD MAX* defines did include the NUL, except for the historical
mistake of utmp fields without NULs in the string, which directly led
to strncpy..  just showing how error prone this kind of accounting is.
CSRG did right.  Somehow POSIX missed the memo on the concepts of
carefulness and consistancy, and we are still paying the price when
people trip over this.  Of course, glibc is even more amazing (that is
a hint to blackhats)

ok guenther

Revision 1.32 / (download) - annotate - [select for diffs], Thu Nov 6 09:17:25 2014 UTC (9 years, 6 months ago) by nicm
Branch: MAIN
Changes since 1.31: +2 -1 lines
Diff to previous 1.31 (colored)

Add V for select line with vi(1) keys. From Juho Pohjala.

Revision 1.31 / (download) - annotate - [select for diffs], Mon Oct 20 23:27:14 2014 UTC (9 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.30: +4 -4 lines
Diff to previous 1.30 (colored)

Tidy up some includes.

Revision 1.30 / (download) - annotate - [select for diffs], Wed Oct 8 17:35:58 2014 UTC (9 years, 7 months ago) by nicm
Branch: MAIN
Changes since 1.29: +3 -3 lines
Diff to previous 1.29 (colored)

Add xreallocarray and remove nmemb argument from xrealloc.

Revision 1.29 / (download) - annotate - [select for diffs], Mon Sep 1 21:50:18 2014 UTC (9 years, 8 months ago) by nicm
Branch: MAIN
Changes since 1.28: +2 -2 lines
Diff to previous 1.28 (colored)

Various minor style and spacing nits.

Revision 1.28 / (download) - annotate - [select for diffs], Mon Aug 11 22:18:16 2014 UTC (9 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.27: +19 -6 lines
Diff to previous 1.27 (colored)

Fix two copy mode problems:

1. In vi mode the selection doesn't include the last character if you
   moved the cursor up or left.
2. In emacs mode the selection includes the last character if you moved
   the cursor to the left.

From Balazs Kezes.

Revision 1.27 / (download) - annotate - [select for diffs], Thu Jan 9 14:05:55 2014 UTC (10 years, 4 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6, OPENBSD_5_5_BASE, OPENBSD_5_5
Changes since 1.26: +2 -6 lines
Diff to previous 1.26 (colored)

Three small changes from Tiago Cunha:

- Check for truncation when copying path.
- Don't need to use a temporary buffer in screen_set_title.
- Include strerror in output when connecting to server fails.

Revision 1.26 / (download) - annotate - [select for diffs], Wed May 15 15:39:51 2013 UTC (11 years ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE, OPENBSD_5_4
Changes since 1.25: +8 -2 lines
Diff to previous 1.25 (colored)

Don't let cursor position overflow when reflowing, from Christopher
Collins.

Revision 1.25 / (download) - annotate - [select for diffs], Thu Mar 21 16:12:10 2013 UTC (11 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.24: +5 -10 lines
Diff to previous 1.24 (colored)

Rework reflow code so it does not do so much allocation which should be
faster with large histories.

Revision 1.24 / (download) - annotate - [select for diffs], Tue Feb 5 11:08:59 2013 UTC (11 years, 3 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE, OPENBSD_5_3
Changes since 1.23: +20 -2 lines
Diff to previous 1.23 (colored)

Automatically reflow wrapped lines when a pane is resized, requested by
many over the years and finally implemented by Richard Woodbury.

Revision 1.23 / (download) - annotate - [select for diffs], Tue Jul 10 11:53:01 2012 UTC (11 years, 10 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_2_BASE, OPENBSD_5_2
Changes since 1.22: +7 -9 lines
Diff to previous 1.22 (colored)

xfree is not particularly helpful, remove it. From Thomas Adam.

Revision 1.22 / (download) - annotate - [select for diffs], Sat Mar 17 21:37:36 2012 UTC (12 years, 2 months ago) by nicm
Branch: MAIN
Changes since 1.21: +2 -2 lines
Diff to previous 1.21 (colored)

Michael Krysiak points out that some terminals (eg mintty) have cursor
styles 5 and 6 too, so allow them to be set.

Revision 1.21 / (download) - annotate - [select for diffs], Fri May 20 19:17:39 2011 UTC (13 years ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_5_1_BASE, OPENBSD_5_1, OPENBSD_5_0_BASE, OPENBSD_5_0
Changes since 1.20: +10 -1 lines
Diff to previous 1.20 (colored)

Support DECSCUSR sequence to set the cursor style with two new
terminfo(5) extensions, Cs and Csr. Written by Ailin Nemui.

Revision 1.20 / (download) - annotate - [select for diffs], Fri May 20 19:03:58 2011 UTC (13 years ago) by nicm
Branch: MAIN
Changes since 1.19: +11 -1 lines
Diff to previous 1.19 (colored)

Support xterm(1) cursor colour change sequences through terminfo(5) Cc
(set) and Cr (reset) extensions. Originally by Sean Estabrooks, tweaked
by me and Ailin Nemui.

Revision 1.19 / (download) - annotate - [select for diffs], Wed May 4 17:43:35 2011 UTC (13 years ago) by nicm
Branch: MAIN
Changes since 1.18: +1 -2 lines
Diff to previous 1.18 (colored)

Don't need vis.h anymore.

Revision 1.18 / (download) - annotate - [select for diffs], Wed May 4 17:43:11 2011 UTC (13 years ago) by nicm
Branch: MAIN
Changes since 1.17: +2 -2 lines
Diff to previous 1.17 (colored)

Don't use strnvis for the title as it breaks UTF-8. set-titles is now
off by default and we have to trust the terminal can understand what we
send it anyway so there isn't any harm.

Revision 1.17 / (download) - annotate - [select for diffs], Sat Dec 11 17:56:01 2010 UTC (13 years, 5 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE, OPENBSD_4_9
Changes since 1.16: +3 -3 lines
Diff to previous 1.16 (colored)

Fix rectangle copy to behave like emacs - the cursor is not part of the
selection on the right edge but on the left it is.

Revision 1.16 / (download) - annotate - [select for diffs], Tue Apr 6 21:35:44 2010 UTC (14 years, 1 month ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_4_8_BASE, OPENBSD_4_8
Changes since 1.15: +3 -2 lines
Diff to previous 1.15 (colored)

Merge copy mode and output mode, dropping the latter. Idea and code from
Micah Cowan.

Revision 1.15 / (download) - annotate - [select for diffs], Sun Apr 4 23:05:15 2010 UTC (14 years, 1 month ago) by beck
Branch: MAIN
Changes since 1.14: +7 -2 lines
Diff to previous 1.14 (colored)

rather than using an empty "" as the default window title, put the hostname
of the machine we are running on in there.

makes my many green lines easier to deal with without using fiddly options to
set it.

ok nicm@

Revision 1.14 / (download) - annotate - [select for diffs], Sat Feb 6 17:35:01 2010 UTC (14 years, 3 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_4_7_BASE, OPENBSD_4_7
Changes since 1.13: +78 -37 lines
Diff to previous 1.13 (colored)

Rectangle copy support, from Robin Lee Powell.

Revision 1.13 / (download) - annotate - [select for diffs], Sun Jan 3 17:12:04 2010 UTC (14 years, 4 months ago) by nicm
Branch: MAIN
Changes since 1.12: +24 -4 lines
Diff to previous 1.12 (colored)

Fix selection behaviour when the cursor is moved backwards (ie so the selection
start is after the end).

Revision 1.12 / (download) - annotate - [select for diffs], Thu Dec 3 22:50:10 2009 UTC (14 years, 5 months ago) by nicm
Branch: MAIN
Changes since 1.11: +5 -5 lines
Diff to previous 1.11 (colored)

Massive spaces->tabs and trailing whitespace cleanup, hopefully for the last
time now I've configured emacs to make them displayed in really annoying
colours...

Revision 1.11 / (download) - annotate - [select for diffs], Sat Aug 8 13:29:27 2009 UTC (14 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.10: +5 -11 lines
Diff to previous 1.10 (colored)

Change the way the grid is stored, previously it was:

- a two-dimensional array of cells;
- a two-dimensional array of utf8 data;
- an array of line lengths.

Now it is a single array of a new struct grid_line each of which represents a
line and containts the length and an array of cells and an array of utf8 data.

This will make it easier to add additional per-line members, such as flags.

Revision 1.10 / (download) - annotate - [select for diffs], Thu Jul 30 20:41:48 2009 UTC (14 years, 9 months ago) by nicm
Branch: MAIN
Changes since 1.9: +3 -1 lines
Diff to previous 1.9 (colored)

Plug some memory leaks.

Revision 1.9 / (download) - annotate - [select for diffs], Fri Jul 17 18:35:11 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored)

When resizing a screen smaller in alternate screen mode, all the lines needed
could be consumed by deleting from the bottom, leaving none to be removed from
the top. In this case, don't call grid_view_delete_lines with ny of 0 as this
is incorrect and causes a bounds check to fatal error if built with -DDEBUG.

Revision 1.8 / (download) - annotate - [select for diffs], Mon Jul 13 10:43:52 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.7: +21 -7 lines
Diff to previous 1.7 (colored)

Support "alternate screen" mode (terminfo smcup/rmcup) typically used by full
screen interactive programs to preserve the screen contents. When activated, it
saves a copy of the visible grid and disables scrolling into and resizing out
of the history; when deactivated the visible data is restored and the history
reenabled.

Revision 1.7 / (download) - annotate - [select for diffs], Thu Jul 9 22:48:20 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.6: +10 -35 lines
Diff to previous 1.6 (colored)

When the terminal size is reduced horizontally, don't truncate lines to the new
width, so that if the same lines are later increased in size the content
reappears.

Revision 1.6 / (download) - annotate - [select for diffs], Wed Jul 8 05:56:11 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.5: +2 -2 lines
Diff to previous 1.5 (colored)

When reinitialising the screen, do not omit to clear the last line.

Revision 1.5 / (download) - annotate - [select for diffs], Wed Jun 24 22:51:47 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6
Changes since 1.4: +5 -3 lines
Diff to previous 1.4 (colored)

Fix a type mismatch warning in assignment.

Revision 1.4 / (download) - annotate - [select for diffs], Wed Jun 24 19:12:44 2009 UTC (14 years, 10 months ago) by nicm
Branch: MAIN
Changes since 1.3: +47 -33 lines
Diff to previous 1.3 (colored)

Change to match xterm's resizing behaviour, including pushing lines into the
history from the top when reducing vertical size and pulling them again when
increasing size.

ok todd sthen

Revision 1.3 / (download) - annotate - [select for diffs], Thu Jun 4 18:48:24 2009 UTC (14 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.2: +31 -2 lines
Diff to previous 1.2 (colored)

Proper support for tab stops (\033H etc), using a bitstring(3). Makes another
vttest test happy.

Revision 1.2 / (download) - annotate - [select for diffs], Wed Jun 3 19:33:04 2009 UTC (14 years, 11 months ago) by nicm
Branch: MAIN
Changes since 1.1: +7 -2 lines
Diff to previous 1.1 (colored)

Pass window titles through vis(1). <0x20 is dropped anyway by the input state
machine but top-bit-set nonprintables could cause trouble, and they are neater
like this anyway.

Suggested by deraadt a few days ago.

Revision 1.1 / (download) - annotate - [select for diffs], Mon Jun 1 22:58:49 2009 UTC (14 years, 11 months ago) by nicm
Branch: MAIN

Import tmux, a terminal multiplexor allowing (among other things) a single
terminal to be switched between several different windows and programs
displayed on one terminal be detached from one terminal and moved to another.

ok deraadt pirofti

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.