Commit graph

4176 commits

Author SHA1 Message Date
Daniel Eklöf
f930de65ef
Merge branch 'sixel-assertion'
Closes #494
2021-05-08 20:30:21 +02:00
Daniel Eklöf
aada44bc7e
changelog: sixel assertion hit when a sixel fills the scrollback 2021-05-08 20:29:35 +02:00
Daniel Eklöf
ba451af5c7
sixel: don’t emit sixels that will end up covering more than the entire scrollback
This limit can be reached by the sixel alone, or the sixel + the final
newline.

Closes #494
2021-05-08 20:28:16 +02:00
Daniel Eklöf
9bd14c0fd2
sixel: fix assertion: image is allowed to cover the entire scrollback 2021-05-08 20:28:16 +02:00
Daniel Eklöf
2f01ecbadb
Merge branch 'osc8-mem-leak'
Closes #495
2021-05-08 20:27:46 +02:00
Daniel Eklöf
f3b3bc1f71
term: reset: combine memset+initializers of vt struct 2021-05-08 20:27:20 +02:00
Daniel Eklöf
bfd3eb47ec
term: reset: fix reset of the VT struct
1. Free buffers and strings
2. memset() the vt struct
3. re-initialize members that must not be zero

We _could_ replace the memset() with explicit zeroing of all the
members. It’s just that there’s a lot of arrays, so this is much
easier.

Closes #495
2021-05-08 20:27:20 +02:00
Daniel Eklöf
bd8c936b00
term: osc8-open: assert URI in VT struct is NULL 2021-05-08 20:27:12 +02:00
Craig Barnes
758a36dac1 Merge branch 'simplify-parse_section_colors' 2021-05-08 18:30:56 +01:00
Craig Barnes
db4b206409 config: simplify parsing of "scaling-filter" values slightly 2021-05-08 16:50:49 +01:00
Craig Barnes
9c8c99c9e0 config: simplify parse_section_colors() 2021-05-08 14:56:11 +01:00
Daniel Eklöf
df6c6f5bd6
Merge branch 'config-code-size' 2021-05-08 13:58:25 +02:00
Daniel Eklöf
31f7479065
Merge branch 'color-table-config'
Closes #489
2021-05-08 13:54:14 +02:00
Ryan Farley
3b089b4203 configure full color palette in foot.ini
Allow the use of numeric keys in [colors] to configure the full set of
256 colors in the palette. Fixes #489
2021-05-08 06:40:00 -05:00
Daniel Eklöf
ba2c3606bf
config: avoid tll() code expansion when generating default bindings
tll_push_back() is a macro that results in quite a lot of
instructions. Expanding this macro explicitly in many places thus
causes code explosion.

This is what happened in when we generate the default key/mouse
bindings.

Fix by calling tll_push_back() in a no-inline function.

Reduces code size with ~4-5K
2021-05-07 17:21:18 +02:00
Daniel Eklöf
449ac7c361
config: don’t inline str_to_*() functions 2021-05-07 17:18:27 +02:00
Daniel Eklöf
0b97740bd0
config: implement LOG_AND_NOTIFY_* macros in terms of no-inline functions
Reduces code size by quite a lot:

From:

    section               size   addr
    .text                37857      0
    ...
    Total                45169

To:

    section               size   addr
    .text                31681      0
    ...
    Total                38993

LTO release build goes from 500K -> 492K
2021-05-07 16:52:56 +02:00
Daniel Eklöf
7af475098b
xmalloc: export xvasprintf() 2021-05-07 16:52:56 +02:00
Daniel Eklöf
cda55d7de4
log: add va_list versions of log_* functions 2021-05-07 16:52:56 +02:00
Daniel Eklöf
63572e4223
Merge branch 'bell-enhancement' 2021-05-07 16:47:53 +02:00
Ryan Farley
5df981d23f consistent booleans in config, reset legacy bell 2021-05-07 07:16:48 -05:00
Ryan Farley
4c73172ce5 update changelog 2021-05-07 04:49:34 -05:00
Daniel Eklöf
c51f35abb9
Merge branch 'bump-fcft-to-2-4-0' 2021-05-07 11:47:33 +02:00
Ryan Farley
b3117f75d8 clearly mark bell as a section 2021-05-07 04:41:50 -05:00
Ryan Farley
dc9751cbfe style, consistent bool names, deprecate old config 2021-05-07 04:40:07 -05:00
Daniel Eklöf
96ae2d2bd7
meson: require fcft >= 2.4 2021-05-07 11:31:33 +02:00
Ryan Farley
5d71ccc174 enhanced bell configuration
Add a separate section for bell configuration, with a bell-specific
command option and a setting to allow that command to run without regard
to keyboard focus (for those of us who enjoy being beeped at at all
times, for example). The actions are also no longer mutually exclusive;
this is primarily anticipating urgency support which cannot be
replicated outside the process (in server mode anyway) and would thus be
complementary to any notification or arbitrary command.
2021-05-07 03:12:27 -05:00
Daniel Eklöf
8cb95018c0
Merge branch 'fix-color-cube'
Closes #479
2021-05-06 14:06:43 +02:00
Daniel Eklöf
a720188b42
config: fix color cube generation
Closes #479
2021-05-06 12:39:30 +02:00
Daniel Eklöf
b712bd9c24
doc: foot.ini: update max-shm-pool-size-mb section
* less highlighting
* it’s ‘virtual *address space*’
* mention it’s only supported on Linux
* mention it’s only supported on 64-bit archs (but not necessarily x86_64)
2021-05-05 09:12:43 +02:00
Daniel Eklöf
f08f880911
Merge branch 'more-unicode-13-box-drawings'
Related to #471
2021-05-04 10:48:01 +02:00
Daniel Eklöf
9e5d740422
box-drawing: add Unicode 13 U+1FB70 - U+1FB8B
Part of #471
2021-05-04 10:47:36 +02:00
Daniel Eklöf
3595d95c27
Merge branch 'bg-alpha-on-default-bg-only' 2021-05-04 10:46:33 +02:00
Daniel Eklöf
b4c99f873f
render: only apply alpha when we’re using the default bg for background
In all other cases, alpha is disabled. This includes:

* Palette- or RGB-colors matching the default background color
* When any kind of reverse video is enabled (e.g. DECSCNM, or ANSI
  reverse)
2021-05-04 10:46:16 +02:00
Daniel Eklöf
107825ef29
Merge branch 'missing-xkb-build-dependency' 2021-05-04 10:45:31 +02:00
Daniel Eklöf
c7a149a7ea
Merge branch 'custom-exit-code'
Closes #466
2021-05-04 10:44:34 +02:00
Daniel Eklöf
1cbbb62da0
doc: foot.1 footclient.1: document exit status 2021-05-04 10:41:23 +02:00
Daniel Eklöf
da923100ca
main/client: change exit code
* foot exits with -26/230
* footclient exits with -36/220

This is to give each application a range of exit codes. Currently
unused, but we may want to change this in the future.
2021-05-04 10:41:22 +02:00
Daniel Eklöf
a1b41bd186
foot/footclient: use a custom exit code when foot/footclient fail to run
Normally, foot and footclient uses the exit code from the client
application (i.e. the shell).

However, foot (or footclient) itself may fail to run; if run outside
of a Wayland session, or no fonts are installed, or the client
application/shell cannot be found (“foot lsdjfldsjf”) etc.

Up until now, there has been no way to differentiate these kind of
failures from the client application exiting with code 1.

This patch changes foot’s failure exit code to -27/229, and
footclient’s to -28/228. Note that footclient will exit with foot’s
-27/229 if footclient ran successfully, but the foot server failed to
instantiate a new window.

Closes #466.
2021-05-04 10:40:38 +02:00
Daniel Eklöf
29b697a9af
Merge branch 'beam-thickness'
Closes #464
2021-05-04 10:38:03 +02:00
Daniel Eklöf
ca685c4c76
Merge branch 'add-truecolor-to-feature-list' 2021-05-02 10:33:52 +02:00
lord
259d6e26e1 Add TrueColors support to Readme 2021-05-02 09:57:01 +02:00
Daniel Eklöf
7edda924a0
meson: add ‘xkb’ as a dependency to vtlib, pgolib and pgo
All of these include wayland.h (either directly, or indirectly), which
pulls in xkbcommon.h.

Reported by swayyyy on IRC:

  FAILED: libvtlib.a.p/dcs.c.o

  In file included from ../../terminal.h:19,
                   from ../../dcs.h:4,
                   from ../../dcs.c:1:
  ../../wayland.h:9:10: fatal error: xkbcommon/xkbcommon.h: No such file or directory
      9 | #include <xkbcommon/xkbcommon.h>
        |          ^
2021-05-01 22:47:35 +02:00
Daniel Eklöf
7ce767ab87
config: add ‘beam-thickness’ option
* Rename cursor.style value ‘bar’ to ‘beam’. ‘bar’ remains recognized,
  but should eventually be deprecated and then removed.
* Add ‘cursor.beam-thickness’ option, a pt-or-px value specifying the
  thickness of the beam cursor. Defaults to 1.5pt.
* Rename (and export) pt_or_px_as_pixels() to
  term_pt_or_px_as_pixels()
* Change term_pt_or_px_as_pixels() to round point values instead of
  truncating them.
2021-04-30 20:36:16 +02:00
Daniel Eklöf
47c7665bd0
Merge branch 'bsu-esu-logging' 2021-04-26 19:44:07 +02:00
Craig Barnes
9026095a24 dcs: only log debug warnings in bsu() and esu() for unhandled params 2021-04-25 21:04:46 +01:00
Daniel Eklöf
4068e27938
Merge branch 'DECSET-2026'
Closes #459
2021-04-25 20:23:46 +02:00
Craig Barnes
f95d7d4684 csi: add support for DECSET 2026, as an alternative to BSU/ESU sequences
See: https://gitlab.freedesktop.org/terminal-wg/specifications/-/merge_requests/2#note_847720
2021-04-25 18:35:46 +01:00
Daniel Eklöf
3131eb0288
Merge branch 'modify-bg-color-when-highlighted-text-has-same-fg-bg'
Closes #455
2021-04-24 13:37:11 +02:00
Daniel Eklöf
886160ba89
render: modify background color for highlighted text when fg == bg
When rendering a selected/highlighted cell where the foreground and
background colors are the same, invert the background color to make
the selected text legible.

Closes #455
2021-04-24 10:43:20 +02:00