| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The C implementation of el_semicolon in execline only reads one
argument at a time and returns an index into the rest of argv.
This makes sense for the usual application of programs using it, which
is just reading a few arguments and a block or two, and then executing
into `prog`. `prog` could be anything really, including additional
blocks.
The new `el_semicolon_full_argv` function exports the previous
behaviour of parsing the whole thing.
As a nice side-effect, we return the rest of argv in-place.
|
|
|
|
|
|
|
|
|
|
|
| |
el_exec: wraps the various execve wrappers in skalib that are useful
for writing execline-like utils. currently only `xpathexec0` is
supported, which execs into the argv you give it or errors with the
right error if file not found.
el_substitute: execline argv substitution! Wraps the execline
function, so it will behave exactly the same as the existing execline
utils, like `importas`.
|
| |
|
|
|
|
|
| |
We can define a more or less complete generator in less than 50 lines
of nix. Nice.
|
| |
|
| |
|
|
|
|
|
| |
Instead of adding a new type, it just uses the 2^1 natural, which has
exactly two possibilities.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The “shallow” parser uses the fact that every netencode value is
length-encoded (or a scalar with a fixed length).
It does not need to parse the inner values in order to get the
structure of the thing.
That means that we can implement very fast structure-based operations,
like “take the first 5 elements of a list” or “get the record value
with the key name `foo`”.
We can even do things like intersperse elements into a list of values
and write the resulting netencode structure to a socket, without ever
needing to copy the data (it’s all length-indexed pointers to bytes).
|
|
|
|
|
| |
Less generic, has the spirit of “netstrings, but extended to a
structured encoding format”.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://dotti.me/
DOT-TIME(7) TIME FORMATS DOT-TIME(7)
NAME
dot-time - a universal convention for conveying time
DESCRIPTION
For those of us who travel often or coordinate across many timezones,
working with local time is frequently impractical. ISO8601, in all its
wisdom, allows for time zone designators, but still represents the
hours and minutes as local time, thus making it inconvenient for
quickly comparing timestamps from different locations.
Dot time instead uses UTC for all date, hour, and minute indications,
and while it allows for time zone designators, they are optional infor‐
mation that can be dropped without changing the indicated time. It uses
an alternate hour separator to make it easy to distinguish from regular
ISO8601. When a time zone designator is provided, one can easily obtain
the matching local time by adding the UTC offset to the UTC time.
EXAMPLES
These timestamps all represent the same point in time.
┌─────────────────────┬─────────────────────┐
│ dot time │ ISO8601 │
├─────────────────────┼─────────────────────┤
│ 2019-06-19T22·13-04 │ 2019-06-19T18:13-04 │
├─────────────────────┼─────────────────────┤
│ 2019-06-19T22·13+00 │ 2019-06-19T22:13+00 │
├─────────────────────┼─────────────────────┤
│ 2019-06-19T22·13+02 │ 2019-06-20T00:13+02 │
└─────────────────────┴─────────────────────┘
2019-06-19 DOT-TIME(7)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Uses the nom parsing combinator library.
|
| |
|
|
|
|
|
|
|
|
|
| |
Change the number format to be more concise, working in steps of 2^n,
going from 2^1 (1 bit) to 2^9 (512 bits), though implementations are
free to define the biggest numbers they want to support.
Records get the marker `{` and are closed by `}`, so parens match up
nicely, similar to lists.
|
| |
|
|
|
|
|
|
|
|
| |
This is now on par with the original script in
https://github.com/Profpatsch/dotfiles/blob/a25c6c419525bef7ef5985f664b058dc9eb919e9/scripts/scripts/xdg-open
Eventually it should probably migrate away from a generated bash
script, but for now it’s fine.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Like a normal `import`, but for dhall files. `importDhall2` can
additionally handle dependencies and additional source files, though
the interface is not stable yet.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Filesystem sandbox around zoom-us.
|
|
|
|
|
| |
A few bugs are still remainaing, but it can recognize when files
should be completed for example.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The haskellPackages attribute is actually part of the package scope
inside pkgs.profpatsch and thus the evaluation fails with the following
error:
attribute 'vuizvui' missing, at .../pkgs/profpatsch/default.nix:176:20
Referencing the attribute directly from within the recursive attribute
set fixes the evaluation error and building dhall-flycheck also
succeeds.
Signed-off-by: aszlig <aszlig@nix.build>
Cc: @Profpatsch
|
| |
|
|
|
|
|
| |
It’s the easiest way to get recent statically compiled dhall
executables.
|
|
|
|
|
|
| |
rlwrap has to do magic recognition, which breaks in most cases.
We can just print a prompt before the first and after each consecutive
command. Seems to work wonderfully.
|
| |
|
|
|
|
| |
Forgot the cat after I added forstdin.
|
| |
|
| |
|
| |
|