about summary refs log tree commit diff stats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Add command to yank link under cursor (yc)bptato2024-01-291-0/+6
|
* js: always use var destructorbptato2024-01-291-8/+2
| | | | See https://forum.nim-lang.org/t/10807
* layout: more consistent namingbptato2024-01-291-79/+41
|
* layout: consider inline positioning for absolute blocksbptato2024-01-293-78/+102
| | | | | When an absolute block is a descendant of an inline box, its positioned ancestor must be set to that box.
* forkserver: clean upbptato2024-01-295-30/+24
| | | | | Move forkBuffer into forkserver (why was it in container anyway), remove unused mainproc variable, etc.
* client: stop entire process group on suspend()bptato2024-01-291-1/+1
| | | | | * pass 0 so e.g. git does not hang * use sigtstp so e.g. cgi scripts can clean up if needed
* mimetypes: simplify parseMimeTypesbptato2024-01-272-16/+15
| | | | | * use functions like until * do not call atEnd for every line, use boolean readLine instead
* loader: clean up error handlingbptato2024-01-265-82/+71
| | | | | | | | | * remove pointless exception -> bool conversions; usually they were ignored anyway + exceptions are more convenient here * add EPIPE handler to raisePosixIOError * fix socketstream to use raisePosixIOError * fix socketstream sendFileHandle error handling * cgi: immediately return on file not found error
* cgi: fix broken libexec path env variablebptato2024-01-264-9/+10
|
* js: update pragma docsbptato2024-01-241-3/+9
|
* js: define toStringTag properlybptato2024-01-243-3/+13
|
* js: allow specifying static function name, small refactoringbptato2024-01-243-63/+62
| | | | | | | | * static function names can now be defined using the syntax `Class:functionName' (or just use `Class' to take the default name * fix URL.canParse with 1 argument only * do not store JSFuncGenerator for constructors; just put the function node in BoundFunctions
* Remove newFormatbptato2024-01-235-20/+16
| | | | Pointless; it just returned a default zero-initialized object.
* color: remove Premul typebptato2024-01-231-18/+10
|
* rendertext: add support for backspace overstrike, misc fixesbptato2024-01-232-47/+125
| | | | | * parse manpage output styled ugly backspace overstrike formatting * fix broken charset detection for large files
* container: fix b/e unnecessarily switching linesbptato2024-01-201-3/+8
| | | | | cursorWordEnd & cursorWordBegin must only change the current line if no new word was found.
* Fix form action when submitter has a "form" attrbptato2024-01-192-20/+30
| | | | | | | * Unify form variable for all form-associated elements * Fix broken form association logic in resetFormOwner * Use form action for all form-associated submitters * Remove unused getElementsByTag + de-extern some functions
* buffer: fix clone on *BSDbptato2024-01-191-1/+8
| | | | kqueue does not like being closed after fork(2).
* Re-design word handling, add e, E, W, B, etc.bptato2024-01-193-30/+184
| | | | | | | | | | | | * Add functions for moving to the beginning/end of words (vi `b', `e'). * As it turns out, there are many possible interpretations of what a word is. Now we have a function for each reasonable interpretation, and the default settings match those of vi (and w3m in w3m.toml). (Exception: it's still broken on line boundaries... TODO) * Remove `bounds` from lineedit, it was horrible API design and mostly useless. In the future, an API similar to what pager now has could be added. * Update docs, and fix some spacing issues with symbols in the tables.
* utils/map: remove unused special casebptato2024-01-171-3/+0
| | | | Even if it were used, it's UB...
* Remove std/terminal dependencybptato2024-01-174-55/+66
| | | | It is mostly unnecessary, and conflicts with our use of termcap anyway.
* js: small improvementsbptato2024-01-173-22/+54
| | | | | * turn JSFuncGenerator into a ref object (it's faster this way) * remove strformat dependency
* dom: fix innerHTML tag name regressionbptato2024-01-171-2/+8
|
* dom: fix invalid object conversion defectbptato2024-01-171-1/+1
|
* dom: standard-compliant innerHTML/outerHTMLbptato2024-01-122-5/+73
| | | | | | | | It's still not perfect, but at least now we do not apply non-standard whitespace changes. The stringifier is left as it is since it's more useful for debugging this way.
* Use errDOMException template everywherebptato2024-01-115-24/+24
|
* js: merge some type modules into jstypesbptato2024-01-1116-51/+52
| | | | They only had type definitions, no need to put them in separate modules.
* pager: simplify updateReadLinebptato2024-01-111-14/+16
|
* Fix windowChange not refreshing valid media queriesbptato2024-01-103-1/+7
| | | | | | | | * css/cascade: copy stylesheet in applyMediaQuery (so that changes are reverted on re-style) * buffer: clear prevstyled in windowChange (to avoid using cached results from previous cascading passes); set window.attrs * pager: avoid windowChange if new attrs are identical to the old ones
* js: use Nim allocatorbptato2024-01-082-17/+49
|
* Add urlenc, urldec; fix a URL encoding bug; improve trans.cgibptato2024-01-083-13/+21
| | | | | | | | | | * Fix incorrect internal definition of the fragment percent-encode set * urlenc, urldec: these are simple utility programs mainly for use with shell local CGI scripts. (Sadly the printf + xargs solution is not portable.) * Pass libexec directory as an env var to local CGI scripts * Update trans.cgi to use urldec and add an example for combining it with selections
* Use std/* imports everywherebptato2024-01-0762-190/+189
|
* tojs: document + remove unused JSCFunction converterbptato2024-01-071-7/+41
|
* request: don't deny BodyInit that is not an objectbptato2024-01-061-3/+0
| | | | This breaks string conversions.
* Set cgiDir for client loader processbptato2024-01-063-4/+7
|
* Fix some casing issuesbptato2024-01-068-15/+17
|
* Merge data/idna with types/urlbptato2024-01-042-52/+49
| | | | No need to have a separate directory for just 3 functions.
* charwidth: use pre-generated map filebptato2024-01-043-178/+42
| | | | Also for reducing compilation time.
* idna: use pre-generated map file, misc changesbptato2024-01-041-174/+38
| | | | | | | | | Speeds up compilation somewhat. Included in the repository because it's not that huge. misc changes: * use seq, not set for UCS-16 sets (it takes up less space) * remove unnecessary noSideEffects casts
* css/sheet: skip media queries without blocksbptato2024-01-041-0/+3
| | | | Without this, media queries without a block would crash the buffer.
* buffer: do not trap SIGINT to cleanupbptato2024-01-032-2/+2
| | | | | | | We trap SIGINT with setControlCHook to avoid buffers being killed by the process group receiving a SIGINT; trapping it to cleanup has the opposite effect. SIGTERM should be enough, as that is what we use for cleaning up buffers.
* loader: send error message str for disallowed URLbptato2023-12-291-3/+3
| | | | buffer was crashing with an EOFError otherwise
* Compile with styleCheck:usagesbptato2023-12-2824-67/+67
| | | | much better
* dom: export import maps allowedbptato2023-12-251-1/+1
| | | | whoops
* dom: use JS_EvalFunction; add module fetching stubsbptato2023-12-256-51/+164
| | | | (still no module support in buffer...)
* Fix warnings on Nim 2.0.2bptato2023-12-242-3/+3
| | | | | | | | One is a false-positive (in dom). The other one in pager is something I hadn't noticed before, that's nice. For now I want to avoid making a change that may break things, so I just removed the dead code.
* bindings/quickjs: cint -> csize_tbptato2023-12-232-3/+5
| | | | | | cint was incorrect :/ Makes me wonder if maybe we should just use futhark after all...
* dom: use std/ in importsbptato2023-12-221-8/+8
|
* dom: simplify fetch classic scriptbptato2023-12-221-22/+21
|
* buffer: prevent crash in reshape before document is parsedbptato2023-12-221-0/+2
| | | | Can happen e.g. if the window is resized or the user manually reshapes.