| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
it's inefficient and pointless to treat them differently, so just derive
a new enum from TagType with a macro
|
| |
|
|
|
|
|
|
|
|
| |
* parse XHR URL with document base URL
* allow setting XHR responseType
* add tagName, nodeName
* make hasChildNodes a function
* fix horribly broken insertNode
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Some terminal emulators (AKA vte) refuse to set ws_xpixel and ws_ypixel
in the TIOCGWINSZ ioctl, so we now query for CSI 14 t as well. (Also CSI
18 t for good measure, just in case we can't ioctl for some reason.)
Also added some fallback (optionally forced) config values for width,
height, ppc, and ppl. (This is especially useful in dump mode.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Handling text/plain as ANSI colored text was problematic for two
reasons:
* You couldn't actually look at the real source of HTML pages or text
files that used ANSI colors in the source. In general, I only want
ANSI colors when piping something into my pager, not when viewing any
random file.
* More importantly, it introduced a separate rendering mode for
plaintext documents, which resulted in the problem that only some
buffers had DOMs. This made it impossible to add functionality
that would operate on the buffer's DOM, to e.g. implement w3m's
MARK_URL. Also, it locked us into the horribly inefficient line-based
rendering model of entire documents.
Now we solve the problem in two separate parts:
* text/x-ansi is used automatically for documents received through
stdin. A text/x-ansi handler ansi2html converts ANSI formatting to
HTML. text/x-ansi is also used for .ans, .asc file extensions.
* text/plain is a separate input mode in buffer, which places all text
in a single <plaintext> tag. Crucially, this does not invoke the HTML
parser; that would eat NUL characters, which we should avoid.
One blind spot still remains: copiousoutput used to display ANSI colors,
and now it doesn't. To solve this, users can put the x-ansioutput
extension field to their mailcap entries, which behaves like
x-htmloutput except it first pipes the output into ansi2html.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The -cha-ansi color type now sets ANSI colors in CSS.
Also, color correction etc. has been improved a bit:
* don't completely reset output state in processFormat for new colors
* defaultColor is now separated from ANSI color type 0
* bright ANSI colors are no longer replaced with bold + dark variant
* replaced ANSI color map to match xterm defaults
|
| |
|
|
|
|
| |
instead of trying to evaluate exceptions...
|
|
|
|
|
|
| |
* cancel resources on cancel() call
* call _exit in signal handler (also in loader)
* misc cleanups
|
|
|
|
|
|
| |
The API is horrid :( but at least it copies less.
TODO: think of a better API.
|
|
|
|
| |
Return the empty string if it's unset.
|
| |
|
| |
|
|
|
|
| |
useful for filtering stuff through commands like rdrview
|
|
|
|
|
| |
We no longer have to wait for the entire document to be loaded to start
loading CSS.
|
|
|
|
|
| |
* enumize insertAdjacentHTML position
* un-extern attrs
|
| |
|
| |
|
|
|
|
|
| |
tagType is now a function call, but usually it's enough to just test for
the object type.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Yay!
Admittedly, it is not very useful in its current form, except maybe on
very slow networks.
The problem is that renderDocument is *slow*, so we only run it when
onload fails to consume all bytes from the network in a single pass.
Even then, we are guaranteed to get a FOUC, since CSS is only downloaded
in finishLoad(). Well, I think it's cool, anyway.
|
|
|
|
|
|
|
|
| |
* Update chame to the latest version
* Get rid of nodeType usage
* Add atoms
* Re-implement DOM attributes
* document.write
|
|
|
|
|
|
|
| |
* 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
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
much better
|
|
|
|
| |
whoops
|
|
|
|
| |
(still no module support in buffer...)
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
See e.g. the sr.ht issue tracker, now forever tainted by the tickets
I accidentally submitted :P Chawan will gladly autosubmit without the
user having written anything in the textbox just by writing some text
in the title.
The problem is that graphical web browsers typically have a "submit"
keybinding (enter), and a "next field" keybinding (tab). The implicit
submission mechanism was created with graphical browsers in mind;
like w3m, Chawan only has an "ok" keybinding, which may or may not
also mean "submit".
With this solution, only forms that could not otherwise be submitted
will autosubmit.
|
|
|
|
|
| |
Avoid computing e.g. charwidth data for http which does not need it
at all.
|
| |
|
|
|
|
| |
(and expose it as a JS function)
|
|
|
|
|
|
| |
* parentElement is now just a function.
* Remove TODO from node.document; it is useful and not going anywhere.
* Check for Nim type in Node.document, not nodeType
|
|
|
|
| |
It is only defined for Document, Element, DocumentFragment.
|
| |
|
| |
|
| |
|
|
|
|
| |
not a real implementation, just to reduce exceptions
|
| |
|
|
|
|
|
|
|
|
| |
* tolower: strutils toLowerAscii is good enough for the cases where
we need it. Also, it's easy to confuse with unicode toLower and
vice versa.
* isWhitespace: in AsciiWhitespace is more idiomatic. Also has a
naming collision with unicode toLower.
|