This is useful for suppressing spew, but still allowing easy debugging
when needed, without rebuilding.
To use, use excmd:
setlogginglevel <prefix> <level>
Where the level is one of:
- never: never log
- error
- warning
- info
- debug: most verbose
Output is directed to console methods "error", "warn", "log", "debug".
This adds the ability to save link targets or images. The save location
can be default, or the save as dialog can be invoked.
Somewhat sensible default filenames are provided.
Data URLs are also supported (though they need quite a bit of massaging
to get past the WebExt security limitations). Specificially, they need
to be round-tripped though a Blob, and must be saved from the background
context.
exmode.parser now converts strings to the types given in excmd
signatures.
Messaging now works in both directions (but I haven't made excmds.ts use
the new system yet. Exercise for the reader (see keydown_* state() for a
simple example)).
keys are now being suppressed, but in a pretty stupid way.
I got fed up of not having proper itertools, or str conversions, so I
wrote some. Others have written them in JS, but they were fun to make.
Only the ones I'm using are tested.