about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* local CGI improvements, move data: to cgi-binbptato2023-12-128-61/+163
| | | | error codes are WIP, not final yet...
* twtstr: import functions from gopher2htmlbptato2023-12-122-32/+12
|
* cha-finger: use MAPPED_URI_*bptato2023-12-121-25/+15
| | | | | Much simpler & more efficient than the ugly regex parsing we used to have.
* local CGI: add mapped URI env vars; move about: to adaptersbptato2023-12-127-42/+68
| | | | | | | | | | | | | | | * Add MAPPED_URI_* as environment variables when a request is coming from urimethodmap It costs us compatibility with w3m, but it seems to be a massive improvement over smuggling in the URL as a query string and then writing an ad-hoc parser for every single urimethodmap script. The variables are set for every urimethodmap request, to avoid accidental leaking of global environment variables. * Move about: to adapters (an obvious improvement over the previous solution)
* layout: rounding error correction fixesbptato2023-12-111-2/+6
| | | | | * start from 1 * divide by total - 1, since we are counting the rounding error between each line
* Makefile: clean up libexecdir on uninstallbptato2023-12-111-2/+8
|
* doc/localcgi: reword/clarifybptato2023-12-111-1/+5
|
* bonus: add magnet.cgibptato2023-12-112-0/+78
|
* css: add case-insensitive matchingbptato2023-12-114-25/+103
| | | | Also case-sensitive, but for now that is the same as normal matching...
* css: add text-transformbptato2023-12-115-11/+321
| | | | | | | Probably not fully correct, but it's a good start. Includes proprietary extension -cha-half-width, which converts full-width characters to half-width ones.
* layout: do not resolve floats if grandparent position is resolvedbptato2023-12-101-2/+2
| | | | | | | | | | Instead, position them at the end of their block's layout pass. Without this, they could be positioned too early, as the grandparent's position being resolved does not guarantee that the parent's position has already been resolved as well. (Unlike the comment suggests, flushMargins is not appropriate there.)
* layout: fix rounding error correctionbptato2023-12-101-11/+8
| | | | | * Actually calculate rounding error * Skip a loop over lines by accumulating rounding error in finishLine
* Add support for gemini by default, update readmebptato2023-12-1010-37/+44
| | | | | No need to leave gemini support in the bonus folder. Still TODO: proxy support.
* mailcap: add $MAILCAP_URLbptato2023-12-103-5/+26
| | | | | | This is better than %u as it is backwards compatible (i.e. does not rely on other user agents doing whatever upon encountering an unknown substitution template.)
* Separate gopher conversion from main binarybptato2023-12-107-135/+224
| | | | | | | | | | | | | | | | | | | | | Now we use a (much simplified) gopher2html binary in libexec, instead of converting gopher directories to HTML in loader/gopher. This has two advantages: * Less ugly conversion logic in the loader module; we can just convert the file line by line. (The previous converter also had some correctness issues, that is fixed now as well.) * If the user desires, they can replace the gopher converter with another binary using the mailcap mechanism. The disadvantages are: * For now, source display is broken. This is a problem with all mailcap filters in general, and should be fixed in the future. (That said, the previous version also only displayed the converted HTML source, which was not really useful anyway.) * The proper directory structure is required for this to work; OTOH plenty of work has been done so that this is as frictionless as possible, so it should not really be a problem.
* Enable finger protocol by defaultbptato2023-12-107-12/+47
| | | | | | * Add a default urimethodmap that points finger: to cha-finger * Install cha-finger to /usr/local/libexec/cha/cgi-bin by default * cha-finger: use ALL_PROXY if given, die if curl is not installed
* config: better path handling; fix array parsing bugbptato2023-12-109-35/+386
| | | | | | | | | * Paths are now parsed through an unified code path with some useful additions like environment variable substitution. * Fix a bug in parseConfigValue where strings would be appended to existing arrays (and not override them). * Fix beforeLast calling afterLast for some reason. * Add a default CGI directory.
* config: disable w3m-cgi-compat by defaultbptato2023-12-101-1/+1
| | | | | It was a bad idea to enable by default, as it is mostly pointless and is a potential security hole.
* Update todobptato2023-12-091-2/+0
| | | | | | | It's not perfect still, but with newer Nim versions the browser compiles in about 20 secs on my machine (a signficiant improvement over what used to be like 50 secs or something). No need to keep this entry in todo anymore.
* Makefile: also remove QJSOBJbptato2023-12-091-0/+1
|
* Makefile: only remove target's objdir on cleanbptato2023-12-091-2/+1
|
* Makefile: properly list QJS object file dependenciesbptato2023-12-091-0/+13
|
* remove mistakenly included patch filebptato2023-12-091-69/+0
|
* Reapply "reworked set property and fixed corner cases of typed array set ↵bptato2023-12-092-169/+113
| | | | | | | | property" This reverts commit 82aa85ef0458e1b97917ffe2626e5631bb444c58. A-ha, it was just a linking error. We have to fix the Makefile instead.
* Revert "reworked set property and fixed corner cases of typed array set ↵bptato2023-12-092-113/+169
| | | | | | | | property" This reverts commit 1b38f7b7a7709c3fe21f1adcf1d5de6b2e0e48f7. Breaks tostring setter for some reason; we'll have to investigate...
* Update QJS versionbptato2023-12-091-1/+1
| | | | now fully rebased on the latest release
* added Array.prototype.findLast{Index} and ↵Fabrice Bellard2023-12-091-16/+61
| | | | TypeArray.prototype.findLast{index} (initial patch by bnoordhuis)
* fixed duplicate static private setter/getter testFabrice Bellard2023-12-091-7/+12
|
* fixed delete super.x errorFabrice Bellard2023-12-091-12/+4
|
* reworked set property and fixed corner cases of typed array set propertyFabrice Bellard2023-12-092-169/+113
|
* Retrieve RegExp 'g' flag in spec conformant way (original patch by bnoordhuis)Fabrice Bellard2023-12-092-17/+41
|
* fixed lexical scope of 'this' with eval (github issue #192)Fabrice Bellard2023-12-091-6/+7
|
* fixed negative zero dateFabrice Bellard2023-12-091-12/+14
|
* Revert "add_eval_variables: do not close over `this' twice"bptato2023-12-091-2/+1
| | | | | | This reverts commit 9ff482dd8d5b1b252e77712e9418b5b253f4bbf8. Importing fix from upstream instead.
* pager: add marksbptato2023-12-099-16/+293
| | | | | Default is vi-style, but w3m-style marks work as well; see bonus/w3m.toml.
* pager: add precnum to [, ]bptato2023-12-093-15/+29
|
* pager: add `{', `}'; document externIntobptato2023-12-095-1/+55
| | | | | | | | { & } acts like in vi (except the cursor is not moved to the line beginning). No reason to leave externInto undocumented, as it is even used in the default config.
* sheet: fix overflow in addAtRulebptato2023-12-091-1/+1
| | | | It is enough to just take the len of children there.
* cascade: simplifybptato2023-12-091-2/+1
|
* cascade: fix regressionbptato2023-12-091-18/+23
| | | | | Styled children must be added to their parents *before* they are styled, because match expects this to hold.
* selectorparser: enum-ize relbptato2023-12-092-25/+35
|
* sheet: fix a correctness issue, misc refactoringsbptato2023-12-092-51/+63
| | | | | | | * Fix a bug where rules would be sorted incorrectly if retrieved from the cache. * Use withValue where possible * camelCase some variables, de-extern some functions, etc.
* cascade: refactor & optimizebptato2023-12-091-153/+192
| | | | | | * Break up applyRules into smaller functions * Do not call calcRules for every child pseudo element separately; just use parent's DeclarationListMap
* fixed private field setters (github issue #194)Fabrice Bellard2023-12-082-2/+3
|
* added missing bignum error tests (github issue #159)Fabrice Bellard2023-12-081-12/+64
|
* added String.prototype.at, Array.prototype.at and TypedArray.prototype.atFabrice Bellard2023-12-081-3/+72
|
* Revert "quickjs: add Array.prototype.at"bptato2023-12-081-30/+0
| | | | | | This reverts commit b7367506fa05e9396e69b1db7277e011722af6b0. Importing upstream patch instead.
* updated to unicode 15.0.0Fabrice Bellard2023-12-081-1198/+1237
|
* Makefile: disable CONFIG_BIGNUM for QJSbptato2023-12-051-2/+1
| | | | We do only use BigInt, so the flag is no longer necessary.
* quickjs/libbf: add missing ifdefbptato2023-12-051-0/+2
|