summaryrefslogtreecommitdiffstats
path: root/format-draw.c
AgeCommit message (Collapse)Author
2023-08-17Add a session, pane and user mouse range types for the status line andnicm
add format variables for mouse_status_line and mouse_status_range so they can be associated with different commands in the key bindings. GitHub issue 3652.
2023-08-07Trim can generate strings longer than the original if there are many #s,nicm
so create a bigger buffer. Reported by Robert Morris.
2022-02-22Initialize copy_width before adjusting it, GitHub issue 3079.nicm
2021-10-26Do not allow inline styles to replace mode-style for the selected item,nicm
from Alexis Hildebrandt in GitHub issue 2946.
2021-08-22Fix handling of leading #s when working out width.nicm
2021-03-11Add an "absolute-centre" alignment to use the centre of the total spacenicm
instead of only the available space. From Magnus Gross in GitHub issue 2578.
2020-12-01Make replacement of ##s consistent when drawing formats, whethernicm
followed by [ or not. Add a flag (e) to the q: format modifier to double up #s and use it for the window_flags format variable so it doesn't end up escaping any following text. GitHub issue 2485.
2020-11-09Change how escaping is processed for formats so that ## and # can benicm
used in styles. Also add a 'w' format modifier for the width. From Chas J Owens IV in GitHub issue 2389.
2020-05-16Add an option to set the pane border lines style from a choice of singlenicm
lines (ACS or UTF-8), double or heavy (UTF-8), simple (plain ASCII) or number (the pane numbers). Lines that won't work on a non-UTF-8 terminal are translated back into ACS when they are output.
2020-05-16Add a customize mode where keys and options may be browsed and changed,nicm
includes adding a brief description of each option. Bound to "C" by default.
2020-05-16Do not hoke into struct window_pane from the tty code and instead setnicm
everything up in tty_ctx. Provide a way to initialize the tty_ctx from a callback and use it to let popups draw directly through input_parse in the same way as panes do, rather than forcing a full redraw on every change.
2020-05-16Add 'e' key in buffer mode to open the buffer in an editor.nicm
2020-04-09More style nits.nicm
2020-03-07Use correct width of right marker so it doesn't draw over status rightnicm
when more than one character. Reported by Tyler Culp.
2020-01-08Do not hang in format_trim_* on invalid UTF-8 characters.nicm
2019-09-15Add push-default and pop-default in styles to change the default coloursnicm
and attributes and use them to restore the previous behaviour of window-status-style being the default for window-status-format in the status line. From John Drouhard in GitHub issue 1912.
2019-07-06Correctly clear underscore colour in grid_get_cell1, also fix structnicm
grid_cell to avoid padding. Fixes increased memory use reported by Suraj N Kurapati.
2019-07-01Add a "fill" style attribute to clear the entire format drawing area innicm
a colour, GitHub issue 1815.
2019-06-14Do not loop forever if a menu item contains invisible characters,nicm
reported by Thomas Sattler.
2019-05-23Fix drawing of status-right when it is aligned to the centre, GitHubnicm
issue 1754.
2019-04-24Do not loop forever if there is a nonprintable character in the format.nicm
2019-03-28Fix offset of list ranges.nicm
2019-03-20Include function name in logging.nicm
2019-03-20Do not leak ranges on error.nicm
2019-03-20Ignore invalid styles rather than throwing away the whole format, thisnicm
matches what we used to do.
2019-03-20Bit more logging to show drawing errors.nicm
2019-03-18Free temporary screens when writing format.nicm
2019-03-18Extend the #[] style syntax and use that together with previous formatnicm
changes to allow the status line to be entirely configured with a single option. Now that it is possible to configure their content, enable the existing code that lets the status line be multiple lines in height. The status option can now take a value of 2, 3, 4 or 5 (as well as the previous on or off) to configure more than one line. The new status-format array option configures the format of each line, the default just references the existing status-* options, although some of the more obscure status options may be eliminated in time. Additions to the #[] syntax are: "align" to specify alignment (left, centre, right), "list" for the window list and "range" to configure ranges of text for the mouse bindings. The "align" keyword can also be used to specify alignment of entries in tree mode and the pane status lines.