| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Way better, and more generally useful.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This step was missed to accommodate the changes made to the file in
commit 24f4623.
|
| |
|
|
|
|
|
|
|
| |
Given that all of this is installed rather than symbolically linked,
there's not really any harm following the old mixed ~/.vim layout for
plugins. It's one less dependency and it makes the setup quite a bit
less complicated.
|
|
|
|
|
| |
This makes a bit clearer how awkward the rlwrap(1) code is, too. It may
not be worth keeping it.
|
|
|
|
|
|
|
|
| |
Just for a clearer visual distinction. This probably needs to be done
for other manual pages, too.
We use zero-width characters (\&) at the start of the lines beginning
with apostrophes so that they get printed literally.
|
|
|
|
|
| |
This makes it a little more flexible, if you genuinely don't want a
newline in the output.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The format in the first argument does not need to be evaluated, so it
can be passed in a simple awk variable.
The second argument is evaluated, by design, so code injection is
trivial. It's probably a good idea to warn users about this explicitly.
$ ax '0);system("cat /etc/passwd")'
Make the whole thing a little terser, too, with the awk program
construction, variable assignment, and invocation all on one line.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
I realised I could make this work by recording a single byte in the
temporary file with dd(1) and then emitting that and then the rest of
the input with cat(1) if the file ended up with a byte in it.
This lets me remove the CAVEATS section from the manual, as it no longer
applies.
|
| |
|
| |
|
|\
| |
| |
| |
| | |
* feature/d2u-u2d-consist:
Make d2u(1df)/u2d(1df) like their stream analogues
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Remove the idempotency guarantee, and simplify the ed(1) scripts. See
commits 2905980 and cd8e9cc:
>commit 29059804f7708413843687c1764bc845d374a82d
>Author: Tom Ryder <tom@sanctum.geek.nz>
>Date: Fri Nov 3 13:58:23 2017
>
> Remove idempotency assert for sd2u(1df)/su2d(1df)
>
> Commit cd8e9cc applies a cleaner implementation of these tools but
> loses the idempotency:
>
> * Repeated su2d applications will result in double \r, so \r\r\n
> * Repeated s2ru applications will result in an extra newline at the
> end of the file, because the whole file will be interpreted as
> one line
>
> However, I am OK with this, as I think of the operation as simpler
> and more predictable, and I wouldn't apply it as a means to "force"
> a file of unknown or various line-ending types to one type.
>
>commit cd8e9cc27f7dd9d360b64f4a34b8c2d048f42e45
>Author: Tom Ryder <tom@sanctum.geek.nz>
>Date: Fri Nov 3 13:46:30 2017
>
> Apply simpler method for sd2u(1df) and su2d(1df)
>
> This method is shorter, easier to read, and more idiomatic.
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Commit cd8e9cc applies a cleaner implementation of these tools but loses
the idempotency:
* Repeated su2d applications will result in double \r, so \r\r\n
* Repeated s2ru applications will result in an extra newline at the end
of the file, because the whole file will be interpreted as one line
However, I am OK with this, as I think of the operation as simpler and
more predictable, and I wouldn't apply it as a means to "force" a file
of unknown or various line-ending types to one type.
|
|
|
|
|
|
|
|
|
|
| |
This is mostly just for fun, but could be handy later on when I'm
playing with distributed or automated deployments of tagged and verified
releases.
Like a few of the other shell scripts, this is built by abusing my
mi5(1df) wrapper to get static details baked into the shell script that
are only known at runtime.
|
|
|
|
| |
perlcritic.com does not seem to support HTTPS.
|
|
|
|
|
|
|
|
|
| |
Since I know there's a usable tool for this now in vim-vint, I may as
well make a target for my own convenience later.
Updated the README.markdown documentation of the `lint-*` targets,
restructuring the paragraph into a nested list for clarity. Also updated
the `dotfiles(7)` manual page to reflect those changes.
|
|
|
|
|
|
|
| |
Commit feba460 set up the dist script helper for generating this, but
didn't actually run it, committing a version of the manual that included
the manual page header twice (with leading percent characters).
Re-running the dist script helper corrected this.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit 70fcb35 incorrectly built the dotfiles(7) manual without the
header required by the Pandoc converter. Rebuilt it properly by making a
script in a new directory "dist" which is to be run by the maintainer
whenever its source file README.md is updated. This should probably be
automated on my end with Git hooks.
The reason we don't include the Pandoc recipe for making this manual as
a target in the Makefile is to do with the heavy dependency of Pandoc,
for which packages are not available on some desirable operating
systems, as arranged in a8ab2cf.
Also added the new install-man target as one of the default subtargets
of `install`.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Mostly inspired by suggestions from gawk --lint
|
|
|
|
|
| |
Looks like awk(1) implementations vary in how they interpret option
arguments.
|
| |
|
|
|
|
|
| |
Removes the need for the temporary file. Also refactor pks(6df) to
accommodate it.
|
|
|
|
| |
Needs a lot of random numbers, but only one pass
|
|
|
|
| |
I've got a better idea, though
|
| |
|
| |
|
| |
|
| |
|
| |
|