about summary refs log tree commit diff stats
path: root/doc
Commit message (Collapse)AuthorAgeFilesLines
* Update docsbptato2025-05-132-3/+24
|
* Fix typobptato2025-05-102-2/+3
|
* Update docsbptato2025-05-0914-9/+59
|
* config: add external.show-download-panelbptato2025-05-092-0/+20
|
* config: remove sockdirbptato2025-05-082-22/+0
|
* Fix typobptato2025-05-082-2/+2
|
* Fix typosbptato2025-05-042-2/+2
|
* Makefile: remove submodule target, update docsbptato2025-05-049-16/+336
| | | | | | | submodule has been unused for a while now, should be OK to remove it. I've also gotten tired of the tables on the man page being borderline unreadable, so I've hacked some borders onto them. Ugly, but works.
* layout, csstree: build stacking contexts together with treebptato2025-05-031-1/+1
| | | | | | | | We often redo sub-layouts in layout, and this makes stacking contexts very hard to build reliably there. This fixes a bug where positioned descendants of flex items would sometimes mysteriously disappear.
* Makefile: fix installation with static linkingbptato2025-05-011-1/+2
|
* Update docsbptato2025-04-281-2/+2
|
* Fix typobptato2025-04-251-2/+2
|
* Update docsbptato2025-04-252-2/+61
|
* http: re-add brotli supportbptato2025-04-232-3/+6
| | | | | Unfortunately this is unavoidable, as some servers still seem to return brotli despite our Accept-Encoding header not including it.
* Add static linking optionbptato2025-04-231-2/+27
|
* toml: remove broken special case, update docsbptato2025-04-154-27/+18
| | | | | | Turns out the cure was worse than the disease. Let's just make it a backwards incompatible change, so that at least the error message is no longer nonsensical.
* http: replace with newhttpbptato2025-04-141-19/+18
| | | | | I think it works well enough at this point. If it doesn't, somebody will complain :)
* config: unify table arrays and tablesbptato2025-04-112-39/+59
| | | | | | | | | | | | | | | | | | [[siteconf]] now just means [siteconf.0], etc. So you can now override parts of default siteconfs/omnirules, e.g. to change the Google search substitute-url, etc. To celebrate this, I've added some more default search engines: * wk: -> Wikipedia * wd: -> Wiktionary * ms: -> Marginalia Search These can be replaced by setting e.g. omnirule.wk = {}, etc. Also, siteconf = {} can be used to clear pre-defined siteconfs. This is an unfortunate deviation in semantics from TOML, but in practice the way it worked before didn't match the spec either, so at least it is now consistent.
* Update docsbptato2025-04-1011-18/+14
|
* Update docsbptato2025-04-061-1/+1
|
* Update docsbptato2025-04-032-16/+43
|
* csstree: add ::marker pseudo elementbptato2025-04-021-0/+3
|
* config: fix semicolon handling in user-style importbptato2025-04-012-4/+4
| | | | | ok so apparently you can leave out the semicolon, but *only* if the at rule is at EOF
* config: add user-style, deprecate [css] and stylesheetbptato2025-04-012-26/+63
| | | | | I'm not 100% content with this syntax either, but it's a significant improvement over the previous solution.
* loader, forkserver: launch CGI processes from fork serverbptato2025-03-141-20/+20
| | | | | | | | | | Well, it's not much prettier... but it will be useful for keep-alive. (Hopefully.) Also, loader could now be locked down capsicum/pledge/seccomp, but I'm not sure if there's a point. The biggest potential threat it faces is cross-contamination of handles, and no amount of syscall filtering is going to protect against that.
* Update docsbptato2025-03-071-4/+0
|
* Update docsbptato2025-02-204-70/+118
|
* Add mark-links featurebptato2025-02-182-0/+18
| | | | ref. https://todo.sr.ht/~bptato/chawan/43
* layout: implement negative z-indexbptato2025-02-181-1/+1
| | | | Ugly, but works. I think.
* buffer: wait for scripts in headless modebptato2025-02-151-3/+11
| | | | | Dump mode remains the same, except now it can be controlled in config.toml as well.
* csstree, cssvalues: implement counter()bptato2025-02-131-1/+3
|
* Update docsbptato2025-02-112-78/+61
|
* layout: round out small list-item margins and paddingbptato2025-02-041-3/+4
| | | | | They can be especially distracting when the rounding error fluctuates between items.
* Update docsbptato2025-01-301-4/+4
|
* about: move to loaderbptato2025-01-301-25/+28
| | | | | This means we can now use about:downloads for downloads. Plus it shaves off some ks from the distribution.
* Update docsbptato2025-01-274-23/+187
|
* Update docsbptato2025-01-261-2/+2
|
* Update docs, makefilebptato2025-01-231-7/+86
|
* container, config.toml: add | commandbptato2025-01-192-0/+16
| | | | | | Particularly useful when debugging minified JS. vi always wraps; the centering behavior is from vim.
* Remove submodulesbptato2025-01-181-2/+2
| | | | | I got tired of submodules. This commit doesn't build; subtrees incoming...
* Update docsbptato2025-01-164-25/+33
|
* cascade: basic CSS variable supportbptato2025-01-161-1/+1
| | | | | | | | | | | and once again, there was light... Well, it barely works, but it's enough to get colors back on most sites. Nested variables aren't supported for now, and shorthand expansion only "works" for `background' (it's a hack). Props to the W3C for introducing the C preprocessor to CSS - I was starting to confuse it with JSSS after calc().
* Update docsbptato2025-01-1511-11/+242
|
* Update manpagesbptato2025-01-159-9/+10
|
* config: switch to camel casebptato2025-01-132-6/+3
| | | | | | We already need a camel -> kebab converter anyway. Unfortunately this also changes JS binding names, so it's a breaking change. Oh well.
* buffer: remove server socketbptato2025-01-091-1/+2
| | | | | | | | | | | Now we just pass through a socket created in pager. This removes the need for a socket directory, and strengthens the buffer sandbox slightly. I've kept the ServerSocket code, because I want to add some form of RPC and communication between separate instances in the future. However, I don't expect this to be handled outside the main process, so I've removed the Capsicum-specific connectat/bindat code.
* loader: use per-process control socketsbptato2025-01-081-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | Previously, each message (load, resume, passFd, etc.) would open a new connection to loader's UNIX socket, and assumed the loader was dead when the loader did not respond (ECONNREFUSED). As it turns out, this model was hopelessly broken: POSIX does not specify when a UNIX socket can refuse connections, so while it happened to work on Linux (which just blocks if it can't accept right now), FreeBSD would randomly refuse connections whenever its listen queue was full. Instead, we now take a socketpair() from the loader in addClient, and pass on one half to the client (the other half stays in loader); this is the control stream, and all messages from the specific client are sent through it. If a message includes a new stream (e.g. lcLoad), then it sends a new socketpair through the control stream. Aside from not being completely broken (and being marginally more efficient), this arrangement has several other benefits: it removes the need for authentication, almost removes the need for sockdir (now only buffers use it), and will make it easier to add async message processing in the future.
* Update manpagesbptato2025-01-074-115/+345
|
* layout: cache sub-layoutsbptato2025-01-021-0/+4
| | | | | | | | Only root blocks for now; for non-roots, you'd have to cache exclusions too, and that is a fair bit harder. It isn't very noticable as an optimization, but it's a good first step towards a cached layout.
* Add built-in image viewerbptato2024-12-301-0/+7
| | | | | | It works by emitting a base64 URI inside an img tag. Very inefficient, but useful if no external viewer is set up (e.g. over SSH).