summaryrefslogtreecommitdiffstats
path: root/grid.c
AgeCommit message (Collapse)Author
2014-10-08Add xreallocarray and remove nmemb argument from xrealloc.nicm
2014-10-08Use xrealloc(NULL, n, m) instead of xmalloc(n * m) to get overflownicm
check.
2014-09-17Fix some comments (c -> colour) and join unnecessary line splits.nicm
2014-09-01Various minor style and spacing nits.nicm
2014-04-16Memory leak in error path and unnecessary assignment, from clang.nicm
2014-03-31GRID_DEBUG is no longer needed.nicm
2014-02-14Style nit - no space between function name and bracket.nicm
2014-01-28Allow replacing each of the many sets of separate foo-{fg,bg,attr}nicm
options with a single foo-style option. For example: set -g status-fg yellow set -g status-bg red set -g status-attr blink Becomes: set -g status-style fg=yellow,bg=red,blink The -a flag to set can be used to add to rather than replace a style. So: set -g status-bg red Becomes: set -ag status-style bg=red Currently this is fully backwards compatible (all *-{fg,bg,attr} options remain) but the plan is to deprecate them over time. From Tiago Cunha.
2014-01-15Couple of fixes from cppcheck via Tiago Cunha.nicm
2014-01-09Style and comment fixes from Tiago Cunha.nicm
2013-10-10Trivial style and spacing nits.nicm
2013-10-10Only include actual trailing spaces not unused cells with capturep -J,nicm
from George Nachman.
2013-03-25Allow lastgc to be NULL in grid_string_cells so find-window doesn'tNicholas Marriott
crash, problem reported by eugene everson.
2013-03-22Add -C and -J to capture pane to escape control sequences and to joinNicholas Marriott
wrapped line, based on a diff from George Nachman.
2013-03-21Rework reflow code so it does not do so much allocation which should beNicholas Marriott
faster with large histories.
2013-02-05Automatically reflow wrapped lines when a pane is resized, requested byNicholas Marriott
many over the years and finally implemented by Richard Woodbury.
2013-01-18Rather than having two grids for each pane, one for ASCII and one forNicholas Marriott
UTF-8, collapse the two together. Simplifies the code at the expense of more memory (which can probably be reduced again later).
2012-07-10xfree is not particularly helpful, remove it. From Thomas Adam.Nicholas Marriott
2012-05-23Use a predefined structure for not-space cells used to set attributes.Nicholas Marriott
2010-04-06Merge copy mode and output mode, dropping the latter. Idea and code fromNicholas Marriott
Micah Cowan.
2009-12-03Massive spaces->tabs and trailing whitespace cleanup, hopefully for the lastNicholas Marriott
time now I've configured emacs to make them displayed in really annoying colours...
2009-11-18Cleanup by moving various (mostly horrible) little bits handling UTF-8 gridNicholas Marriott
data into functions in a new file, grid-utf8.c, and use sizeof intead of UTF8_DATA. Also nuke trailing whitespace from tmux.1, reminded by jmc.
2009-10-13Move lines into the history when scrolling even if the scroll region is notNicholas Marriott
the entire screen. Allows ircII users to see history, prompted by naddy.
2009-09-15Stick line length to what is actually used (removing an optimization thatNicholas Marriott
allowed it to be bigger), and use clear line/EOL sequences rather than spaces in copy/scroll mode. This fixes xterm copy/paste from tmux which treats trailing spaces differently from clearing a line with the escape sequences. Reported by martynas@.
2009-08-21Fix grid_expand_line so it actually works when the required size is bigger thanNicholas Marriott
2 * the current size.
2009-08-20A few trivial optimisations: no need to check for zero size if callingNicholas Marriott
buffer_ensure in buffer.c; expand grid lines by a greater increase than one each time; and don't read UTF-8 data unless it actually needs to be checked when overwriting a cell.
2009-08-10Use the right source and destination lines in grid_duplicate_lines.Nicholas Marriott
2009-08-08Change the way the grid is stored, previously it was:Nicholas Marriott
- 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.
2009-07-21Remove a couple of unused functions and fix a type ("FALLTHOUGH"), found byNicholas Marriott
lint.
2009-07-16Typo in grid_duplicate_lines (sy for dy) causing it to write into the wrongNicholas Marriott
place when copying UTF-8 data. Found by Dan Colish.
2009-07-13Support "alternate screen" mode (terminfo smcup/rmcup) typically used by fullNicholas Marriott
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.
2009-07-11Limit the history to hlimit not hlimit - 1. This makes a history-limit settingNicholas Marriott
of 0 work as expected.
2009-06-25Miscellaneous unused functions, including one which was basically aNicholas Marriott
duplicate. Found by lint.
2009-06-24Change find-window and monitor-content to use fnmatch(3). For convenience andNicholas Marriott
compatibility, *s are implicitly added at the start and end of the pattern. Also display the line number and the entire line in the results, and lose the nasty section_string function and the now empty util.c file. Initially from Tiago Cunha.
2009-06-24Add a dedicated function to convert a line into a string and use it to ↵Nicholas Marriott
simplify the search window function.
2009-06-05Remove trailing newlines, spaces, and tabs.Ray Lai
No binary change.
2009-06-01Import tmux, a terminal multiplexor allowing (among other things) a singleNicholas Marriott
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