Commit graph

36 commits

Author SHA1 Message Date
Daniel Eklöf
5717a0dfb0
config: change default geometry from 800x600 -> 700x500
If the display resolution *is* 800x600, using this size is bad since
there will typically be panels and other things on the screen too.

Not that 800x600 is something we expect to see in real life, but may
happen on virtual displays.
2020-02-29 11:01:23 +01:00
Daniel Eklöf
3a9a2bb6a4
config: add default font when using the default config
When there is no configuration file, and we're using the default
configuration, we accidentally jumped pasted the code that ensures
we have at least "monospace" in the font list.
2020-02-28 18:33:30 +01:00
Daniel Eklöf
ac32bcda07
main: geometry defaults to 800x600 pixels 2020-02-25 19:05:48 +01:00
Daniel Eklöf
6af4b87ec5
config: add 'login-shell' option 2020-02-20 18:35:10 +01:00
Daniel Eklöf
9ab9247b88
config: add 'pad' option, default to 2 2020-02-15 19:00:56 +01:00
Daniel Eklöf
8f4ec9aa47
Implement --hold
When specified, we don't exit when the slave/client process exits.
2020-02-03 19:58:32 +01:00
Daniel Eklöf
caa76bcdea
config: enable user to specify path to configuration file 2019-12-17 19:08:43 +01:00
Daniel Eklöf
6d31bd63be
config: add 'server_socket_path' and set a default value 2019-12-14 12:59:06 +01:00
Daniel Eklöf
6da88ddf01
config: trim leading spaces from fonts
When splitting the font configuration into multiple font
specifications, we now trim leading spaces.

This makes no actual difference; fontconfig matched the fonts just
fine anyway, but this looks better in the logs.
2019-12-05 19:33:54 +01:00
Daniel Eklöf
29b5a14f55
config: change default bright5 and bright 6 colors
They where previously identical to the corresponding 'regular'
colors. Now, we've done a saturated add with 0x202020 (which seems to
be roughly the difference between the other regular and bright
colors).
2019-09-21 12:09:50 +02:00
Daniel Eklöf
68e89c6fbf
config: change default 'regular0' color
0x222222 appears to be more visible against the default
background (0x111111) than 0x000000.
2019-09-21 12:01:29 +02:00
Daniel Eklöf
5ce60703a5
config: turn info log message into a debug log message 2019-08-23 20:21:27 +02:00
Daniel Eklöf
990eacdad4
colors: change default 'bright0' from 000000 -> 666666 2019-08-23 19:42:14 +02:00
Daniel Eklöf
7026f60717
add config + command line option for setting initial window width/height 2019-08-23 17:26:41 +02:00
Daniel Eklöf
81107753bf
render: replace all usage of cairo with pixman 2019-08-16 22:06:06 +02:00
Daniel Eklöf
9fe6e8cc48
Add background alpha support 2019-08-15 18:15:43 +02:00
Daniel Eklöf
4b81fa3eab
config: set to NULL before calling getline()
This fixes a crash on musl-based distros
2019-08-12 19:31:56 +02:00
Daniel Eklöf
ca5e693524
config: don't log a NULL path 2019-08-12 19:31:21 +02:00
Daniel Eklöf
d4a25f7f96
config: remove old, commented out code 2019-08-08 22:20:58 +02:00
Daniel Eklöf
4801e39eae
conf: make number of scrollback lines configurable 2019-08-01 20:08:39 +02:00
Daniel Eklöf
db6939fdc5
config: remove commented out code 2019-07-30 22:03:07 +02:00
Daniel Eklöf
73b4d5d05a
font: add support for fallback fonts
A top-level font now has a list of fallback fonts. When a glyph cannot
be found, we try each fallback font in turn, until we either find one
that has the glyph, or until we've exhausted the list.

To make this actually work in practise (read: to make performance
acceptable), the cache is re-worked and is now populated on demand.

It also supports non-ASCII characters, by using the 4-byte unicode
character as index instead.

Since having an array that can be indexed by a 4-byte value isn't
really viable, we now have a simple hash table instead of an array.
2019-07-30 18:04:28 +02:00
Daniel Eklöf
c531795b83
wip: initial multithreaded renderer 2019-07-29 20:13:26 +02:00
Daniel Eklöf
bf4847d3e0
conf: allow the user to configure a fixed cursor color
The default is to reverse the foreground/background colors in the cell
with the cursor.

But, if the user configures a specific set of cursor colors, those
will always be used, regardless of other cell attributes (dim, reverse
etc).

The cursor color is specified as two color values, 'text' and
'cursor'.

The block cursor uses the 'cursor' color as background, and the 'text'
color for the glyph.

All other cursor styles uses the 'cursor' color for the cursor, but
uses the cell's foreground color for the glyph (meaning,
dim/reverse/etc applies).
2019-07-23 18:54:58 +02:00
Daniel Eklöf
3ccdef3498
conf: make cursor's default style configurable 2019-07-22 20:15:14 +02:00
Daniel Eklöf
b494f24552
conf: don't fail to start when there's no configuration file 2019-07-22 18:21:25 +02:00
Daniel Eklöf
2c1c49e499
conf: remove debug logging 2019-07-21 17:51:02 +02:00
Daniel Eklöf
a3b4a53102
conf: misc valgrind fixes 2019-07-21 11:46:46 +02:00
Daniel Eklöf
c7e76e2ac2
conf: fg/bg and all regular + bright colors are now configurable 2019-07-21 11:31:16 +02:00
Daniel Eklöf
4109d97263
conf: config now provides the colors (though still only hardcoded colors) 2019-07-21 11:06:28 +02:00
Daniel Eklöf
7e36027237
conf: TERM can now be set in footrc 2019-07-18 14:29:40 +02:00
Daniel Eklöf
50153ef7e2
conf: repair debug build when LOG_ENABLE_DBG=0 in config.c 2019-07-17 10:32:22 +02:00
Daniel Eklöf
de575ac58e
conf: improve configuration file parsing
* Strip whitespaces from keys and values
* Detect (and ignore) comments
* Detect syntax errors (no value specified etc)
* Error out on syntax errors and invalid keys
2019-07-17 10:12:14 +02:00
Daniel Eklöf
71d0f6fa56
conf: add support for overriding shell 2019-07-17 09:40:58 +02:00
Daniel Eklöf
19aaa7b774
conf: get user's shell 2019-07-17 09:29:56 +02:00
Daniel Eklöf
0d1b4449b9
conf: initial support for configuration file
* Look for configuration file in (in this order):
  - XDG_CONFIG_HOME/footrc
  - ~/.config/footrc
* Currently supports setting the font
2019-07-16 11:52:22 +02:00