From a0a1c00d3aac5aad25ab65855f83c75dc97a801b Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Mon, 20 Nov 2017 23:47:34 +1300 Subject: Correct a homophone error in a comment --- games/dr.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/games/dr.sh b/games/dr.sh index df21d7a5..e019a953 100644 --- a/games/dr.sh +++ b/games/dr.sh @@ -10,7 +10,7 @@ d=${nd#*d} [ "${nd%d*}" != "" ] && n=${nd%d*} [ "${1#*+}" = "$1" ] || a=${1#*+} -# Check number of roles and addendum make sense +# Check number of rolls and addendum make sense [ "$((n > 0 && a >= 0))" -eq 1 ] || exit 2 # Check this is a real die you can actually roll -- cgit v1.2.3 From 25df5e92a79c490a602c86f4d1585117a302c540 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Thu, 23 Nov 2017 09:39:45 +1300 Subject: Update sahara submodule --- vim/bundle/sahara | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vim/bundle/sahara b/vim/bundle/sahara index 6beee891..4f85b7c8 160000 --- a/vim/bundle/sahara +++ b/vim/bundle/sahara @@ -1 +1 @@ -Subproject commit 6beee89195b4510cf091755c4c5ee9e1ddf2e9dd +Subproject commit 4f85b7c8fe1953479a2253cadd1ab82017a4d7ec -- cgit v1.2.3 From ce7fed31392bcd212e0b7258f39734b224b5fbb4 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Thu, 23 Nov 2017 14:17:21 +1300 Subject: Use consistent indentation for bulleted list items --- IDEAS.md | 43 ++--- ISSUES.md | 46 ++--- README.md | 629 +++++++++++++++++++++++++++++++------------------------------- 3 files changed, 356 insertions(+), 362 deletions(-) diff --git a/IDEAS.md b/IDEAS.md index 37857163..d79a635f 100644 --- a/IDEAS.md +++ b/IDEAS.md @@ -1,24 +1,25 @@ Ideas ===== -* A wrapper ksw(1df) (kill-switch) that traps SIGINT to kill a called program - or loop immediately, rather than aborting a loop (is this possible?) -* A wrapper sil(1df) or nec(1df) to turn stty -echo off for the duration of a - paste? -* I can probably share my psql() completions/shortcuts after sanitizing them - a bit -* Wouldn't be too hard to add some HTTP BASIC auth to ix(1df) to make pastes - manageable -* Have eds(1df) accept stdin with the "starting content" for the script -* Convert all the manual pages to mandoc maybe? -* qmp(1df)--quick man page -* The solution to chn(1df) not running in parallel is probably backgrounded - processes and mkfifo(1). -* Write something like hcat(1df) or tcat(1df) that includes filename headings - for each concatenated file. -* I can probably get rid of all that nasty templated shell by writing - something that wraps around td(1df) and generates shell script to run, and - calls that via `eval`. -* Ideally, the .awk and/or .sed scripts in the bin and games dirs should be - syntax-checked or linted. I could at least add some patient application of - appropriate `gawk --lint` calls for each of the .awk scripts. +* A wrapper ksw(1df) (kill-switch) that traps SIGINT to kill a called program + or loop immediately, rather than aborting a loop (is this possible?) +* A wrapper sil(1df) or nec(1df) to turn stty -echo off for the duration of a + paste? +* I can probably share my psql() completions/shortcuts after sanitizing them a + bit +* Wouldn't be too hard to add some HTTP BASIC auth to ix(1df) to make pastes + manageable +* Have eds(1df) accept stdin with the "starting content" for the script +* Convert all the manual pages to mandoc maybe? + +* qmp(1df)--quick man page +* The solution to chn(1df) not running in parallel is probably backgrounded + processes and mkfifo(1). +* Write something like hcat(1df) or tcat(1df) that includes filename headings + for each concatenated file. +* I can probably get rid of all that nasty templated shell by writing something + that wraps around td(1df) and generates shell script to run, and calls that + via `eval`. +* Ideally, the .awk and/or .sed scripts in the bin and games dirs should be + syntax-checked or linted. I could at least add some patient application of + appropriate `gawk --lint` calls for each of the .awk scripts. diff --git a/ISSUES.md b/ISSUES.md index 77e0b1d9..80e75039 100644 --- a/ISSUES.md +++ b/ISSUES.md @@ -1,26 +1,26 @@ Known issues ============ -* man(1) completion doesn't work on OpenBSD as manpath(1) isn't a thing on - that system; need to find some way of finding which manual directories - should be searched at runtime, if there is one. -* The checks gscr(1df) makes to determine where it is are a bit naïve (don't - work with bare repos) and could probably be improved with some appropriate - git-reflog(1) calls -* dr(6df) is probably more practical in awk -* Running the block of git(1) commands in the prompt leaves five "stale" - jobspecs around that flee after a jobs builtin run; only saw this manifest - after 90dcadf; either I understand job specs really poorly or this may be a - bug in bash -* I can't find a clean way of detecting a restricted shell for ksh instances - to prevent trying to load anything fancy (works for Bash) - * Zsh, either! $options[restricted] is "off" within the startup file -* Would be good to complete the Makefile variables for NAME, EMAIL etc with - educated guesses (`id -u`@`cat /etc/mailname`) etc rather than hardcoding - my own stuff in there -* Completion for custom functions e.g. `sd` should ideally respect - `completion-ignore-case` setting -* Document `install-conf` target once I'm sure it's not a dumb idea -* Need to decide whether I care about XDG, and implement it if I do -* Need to decide whether I'm testing the shell snippets for MPD, Keychain - etc, and if so how. +* man(1) completion doesn't work on OpenBSD as manpath(1) isn't a thing on that + system; need to find some way of finding which manual directories should be + searched at runtime, if there is one. +* The checks gscr(1df) makes to determine where it is are a bit naïve (don't + work with bare repos) and could probably be improved with some appropriate + git-reflog(1) calls +* dr(6df) is probably more practical in awk +* Running the block of git(1) commands in the prompt leaves five "stale" + jobspecs around that flee after a jobs builtin run; only saw this manifest + after 90dcadf; either I understand job specs really poorly or this may be a + bug in bash +* I can't find a clean way of detecting a restricted shell for ksh instances to + prevent trying to load anything fancy (works for Bash) + * Zsh, either! $options[restricted] is "off" within the startup file +* Would be good to complete the Makefile variables for NAME, EMAIL etc with + educated guesses (`id -u`@`cat /etc/mailname`) etc rather than hardcoding my + own stuff in there +* Completion for custom functions e.g. `sd` should ideally respect + `completion-ignore-case` setting +* Document `install-conf` target once I'm sure it's not a dumb idea +* Need to decide whether I care about XDG, and implement it if I do +* Need to decide whether I'm testing the shell snippets for MPD, Keychain etc, + and if so how. diff --git a/README.md b/README.md index 17d1afb3..b9116c06 100644 --- a/README.md +++ b/README.md @@ -36,16 +36,16 @@ The default `install` target will install these targets and all their dependencies. Note that you don't actually have to have any of this except `sh` installed. -* `install-bin` -* `install-bin-man` -* `install-curl` -* `install-ex` -* `install-git` -* `install-gnupg` -* `install-less` -* `install-login-shell` -* `install-readline` -* `install-vim` +* `install-bin` +* `install-bin-man` +* `install-curl` +* `install-ex` +* `install-git` +* `install-gnupg` +* `install-less` +* `install-login-shell` +* `install-readline` +* `install-vim` The `install-login-shell` looks at your `SHELL` environment variable and tries to figure out which shell's configuration files to install, falling back on @@ -59,46 +59,45 @@ Tools Configuration is included for: -* Bourne-style POSIX shells, sharing a `.profile`, an `ENV` file, and - some helper functions: - * [GNU Bash](https://www.gnu.org/software/bash/) (2.05a or higher) - * [Korn shell](http://www.kornshell.com/) (`ksh93`, `pdksh`, `mksh`) - * [Z shell](https://www.zsh.org/) -* [Abook](http://abook.sourceforge.net/) -- curses address book program -* [cURL](https://curl.haxx.se/) -- Command-line tool for transferring data - with URL syntax -* [Dunst](http://knopwob.org/dunst/) -- A lightweight X11 notification daemon - that works with `libnotify` -* `finger(1)` -- User information lookup program -* [Git](https://git-scm.com/) -- Distributed version control system -* [GnuPG](https://www.gnupg.org/) -- GNU Privacy Guard, for private - communication and file encryption -* [GTK+](https://www.gtk.org/) -- GIMP Toolkit, for graphical user interface - elements -* [i3](https://i3wm.org/) -- Tiling window manager -* [less](https://www.gnu.org/software/less/) -- Terminal pager -* [Mutt](http://www.mutt.org/) -- Terminal mail user agent -* [`mysql(1)`](https://linux.die.net/man/1/mysql) -- Command-line MySQL client -* [Ncmpcpp](https://rybczak.net/ncmpcpp/) -- ncurses music player client -* [Newsbeuter](https://www.newsbeuter.org/) -- Terminal RSS/Atom feed reader -* [`psql(1)`](https://linux.die.net/man/1/psql) -- Command-line PostgreSQL - client -* [Perl::Critic](http://perlcritic.com/) -- static source code analysis - engine for Perl -* [Perl::Tidy](http://perltidy.sourceforge.net/) -- Perl source code - reformatter -* [Readline](https://cnswww.cns.cwru.edu/php/chet/readline/rltop.html) -- GNU - library for user input used by Bash, MySQL, and others -* [rxvt-unicode](http://software.schmorp.de/pkg/rxvt-unicode.html) -- Fork of - the rxvt terminal emulator with Unicode support -* [Subversion](https://subversion.apache.org/) -- Apache Subversion, a - version control system -* [tidy](http://www.html-tidy.org/) -- HTML/XHTML linter and tidier -* [tmux](https://tmux.github.io/) -- Terminal multiplexer similar to GNU - Screen -* [Vim](http://www.vim.org/) -- Vi IMproved, a text editor -* [X11](https://www.x.org/wiki/) -- Windowing system with network - transparency for Unix +* Bourne-style POSIX shells, sharing a `.profile`, an `ENV` file, and some + helper functions: + * [GNU Bash](https://www.gnu.org/software/bash/) (2.05a or higher) + * [Korn shell](http://www.kornshell.com/) (`ksh93`, `pdksh`, `mksh`) + * [Z shell](https://www.zsh.org/) +* [Abook](http://abook.sourceforge.net/) -- curses address book program +* [cURL](https://curl.haxx.se/) -- Command-line tool for transferring data with + URL syntax +* [Dunst](http://knopwob.org/dunst/) -- A lightweight X11 notification daemon + that works with `libnotify` +* `finger(1)` -- User information lookup program +* [Git](https://git-scm.com/) -- Distributed version control system +* [GnuPG](https://www.gnupg.org/) -- GNU Privacy Guard, for private + communication and file encryption +* [GTK+](https://www.gtk.org/) -- GIMP Toolkit, for graphical user interface + elements +* [i3](https://i3wm.org/) -- Tiling window manager +* [less](https://www.gnu.org/software/less/) -- Terminal pager +* [Mutt](http://www.mutt.org/) -- Terminal mail user agent +* [`mysql(1)`](https://linux.die.net/man/1/mysql) -- Command-line MySQL client +* [Ncmpcpp](https://rybczak.net/ncmpcpp/) -- ncurses music player client +* [Newsbeuter](https://www.newsbeuter.org/) -- Terminal RSS/Atom feed reader +* [`psql(1)`](https://linux.die.net/man/1/psql) -- Command-line PostgreSQL + client +* [Perl::Critic](http://perlcritic.com/) -- static source code analysis engine + for Perl +* [Perl::Tidy](http://perltidy.sourceforge.net/) -- Perl source code + reformatter +* [Readline](https://cnswww.cns.cwru.edu/php/chet/readline/rltop.html) -- GNU + library for user input used by Bash, MySQL, and others +* [rxvt-unicode](http://software.schmorp.de/pkg/rxvt-unicode.html) -- Fork of + the rxvt terminal emulator with Unicode support +* [Subversion](https://subversion.apache.org/) -- Apache Subversion, a version + control system +* [tidy](http://www.html-tidy.org/) -- HTML/XHTML linter and tidier +* [tmux](https://tmux.github.io/) -- Terminal multiplexer similar to GNU Screen +* [Vim](http://www.vim.org/) -- Vi IMproved, a text editor +* [X11](https://www.x.org/wiki/) -- Windowing system with network transparency + for Unix The configurations for shells, GnuPG, Mutt, tmux, and Vim are the most expansive, and most likely to be of interest. The i3 configuration is mostly @@ -157,12 +156,12 @@ The hostname is elided if not connected via SSH. The working directory with tilde abbreviation for `$HOME` is always shown. The rest of the prompt expands based on context to include these elements in this order: -* Whether in a Git repository if applicable, and punctuation to show - repository status including reference to upstreams at a glance. Subversion - support can also be enabled (I need it at work), in which case a `git:` or - `svn:` prefix is added appropriately. -* The number of running background jobs, if non-zero. -* The exit status of the last command, if non-zero. +* Whether in a Git repository if applicable, and punctuation to show repository + status including reference to upstreams at a glance. Subversion support can + also be enabled (I need it at work), in which case a `git:` or `svn:` prefix + is added appropriately. +* The number of running background jobs, if non-zero. +* The exit status of the last command, if non-zero. You can set `PROMPT_COLOR`, `PROMPT_PREFIX`, and `PROMPT_SUFFIX` too, which all do about what you'd expect. @@ -182,59 +181,59 @@ terminals. If a function can be written in POSIX `sh` without too much hackery, I put it in `sh/shrc.d` to be loaded by any POSIX interactive shell. Those include: -* Four functions for using a "marked" directory, which I find a more - manageable concept than the `pushd`/`popd` directory stack: - * `md()` marks a given (or the current) directory. - * `gd()` goes to the marked directory. - * `pmd()` prints the marked directory. - * `xd()` swaps the current and marked directories. -* Ten other directory management and navigation functions: - * `bd()` changes into a named ancestor of the current directory. - * `gt()` changes into a directory or into a file's directory. - * `lgt()` runs `gt()` on the first result from a `loc(1df)` search. - * `mkcd()` creates a directory and changes into it. - * `pd()` changes to the argument's parent directory. - * `rd()` replaces the first instance of its first argument with its - second argument in `$PWD`, emulating a feature of the Zsh `cd` builtin - that I like. - * `scr()` creates a temporary directory and changes into it. - * `sd()` changes into a sibling of the current directory. - * `ud()` changes into an indexed ancestor of a directory. - * `vr()` tries to change to the root directory of a source control - repository. -* `bc()` silences startup messages from GNU `bc(1)`. -* `ed()` tries to get verbose error messages, a prompt, and a Readline - environment for `ed(1)`. -* `gdb()` silences startup messages from `gdb(1)`. -* `gpg()` quietens `gpg(1)` down for most commands. -* `grep()` tries to apply color and other options good for interactive use if - available. -* `hgrep()` allows searching `$HISTFILE`. -* `keychain()` keeps `$GPG_TTY` up to date if a GnuPG agent is available. -* `ls()` tries to apply color and other options good for interactive use if - available. - * `la()` runs `ls -A` if it can, or `ls -a` otherwise. - * `ll()` runs `ls -Al` if it can, or `ls -al` otherwise. -* `path()` manages the contents of `PATH` conveniently. -* `scp()` tries to detect forgotten hostnames in `scp(1)` command calls. -* `sudo()` forces `-H` for `sudo(8)` calls so that `$HOME` is never - preserved; I hate having `root`-owned files in my home directory. -* `tree()` colorizes GNU `tree(1)` output if possible (without having - `LS_COLORS` set). -* `x()` is a one-key shortcut for `exec startx`. +* Four functions for using a "marked" directory, which I find a more manageable + concept than the `pushd`/`popd` directory stack: + * `md()` marks a given (or the current) directory. + * `gd()` goes to the marked directory. + * `pmd()` prints the marked directory. + * `xd()` swaps the current and marked directories. +* Ten other directory management and navigation functions: + * `bd()` changes into a named ancestor of the current directory. + * `gt()` changes into a directory or into a file's directory. + * `lgt()` runs `gt()` on the first result from a `loc(1df)` search. + * `mkcd()` creates a directory and changes into it. + * `pd()` changes to the argument's parent directory. + * `rd()` replaces the first instance of its first argument with its second + argument in `$PWD`, emulating a feature of the Zsh `cd` builtin that I + like. + * `scr()` creates a temporary directory and changes into it. + * `sd()` changes into a sibling of the current directory. + * `ud()` changes into an indexed ancestor of a directory. + * `vr()` tries to change to the root directory of a source control + repository. +* `bc()` silences startup messages from GNU `bc(1)`. +* `ed()` tries to get verbose error messages, a prompt, and a Readline + environment for `ed(1)`. +* `gdb()` silences startup messages from `gdb(1)`. +* `gpg()` quietens `gpg(1)` down for most commands. +* `grep()` tries to apply color and other options good for interactive use if + available. +* `hgrep()` allows searching `$HISTFILE`. +* `keychain()` keeps `$GPG_TTY` up to date if a GnuPG agent is available. +* `ls()` tries to apply color and other options good for interactive use if + available. + * `la()` runs `ls -A` if it can, or `ls -a` otherwise. + * `ll()` runs `ls -Al` if it can, or `ls -al` otherwise. +* `path()` manages the contents of `PATH` conveniently. +* `scp()` tries to detect forgotten hostnames in `scp(1)` command calls. +* `sudo()` forces `-H` for `sudo(8)` calls so that `$HOME` is never preserved; + I hate having `root`-owned files in my home directory. +* `tree()` colorizes GNU `tree(1)` output if possible (without having + `LS_COLORS` set). +* `x()` is a one-key shortcut for `exec startx`. There are a few other little tricks defined for other shells providing non-POSIX features, as compatibility allows: -* `keep()` stores ad-hoc shell functions and variables (Bash, Korn Shell 93, - Z shell). -* `prompt()` sets up my interactive prompt (Bash, Korn Shell, Z shell). -* `pushd()` adds a default destination of `$HOME` to the `pushd` builtin - (Bash). -* `vared()` allows interactively editing a variable with Readline, emulating - a Zsh function I like by the same name (Bash). -* `ver()` prints the current shell's version information (Bash, Korn Shell, - Z shell). +* `keep()` stores ad-hoc shell functions and variables (Bash, Korn Shell 93, Z + shell). +* `prompt()` sets up my interactive prompt (Bash, Korn Shell, Z shell). +* `pushd()` adds a default destination of `$HOME` to the `pushd` builtin + (Bash). +* `vared()` allows interactively editing a variable with Readline, emulating a + Zsh function I like by the same name (Bash). +* `ver()` prints the current shell's version information (Bash, Korn Shell, Z + shell). #### Completion @@ -246,15 +245,15 @@ startup without a lot of junk functions in my Bash namespace. I do make some exceptions with completions defined in `.bash_completion.d` files, for things I really do get tired of typing repeatedly: -* Bash builtins: commands, help topics, shell options, variables, etc. -* `find(1)`'s more portable options -* `ftp(1)` hostnames from `~/.netrc` -* `git(1)` subcommands, remotes, branches, tags, and addable files -* `gpg(1)` long options -* `make(1)` targets read from a `Makefile` -* `man(1)` page titles -* `pass(1)` entries -* `ssh(1)` hostnames from `~/.ssh/config` +* Bash builtins: commands, help topics, shell options, variables, etc. +* `find(1)`'s more portable options +* `ftp(1)` hostnames from `~/.netrc` +* `git(1)` subcommands, remotes, branches, tags, and addable files +* `gpg(1)` long options +* `make(1)` targets read from a `Makefile` +* `man(1)` page titles +* `pass(1)` entries +* `ssh(1)` hostnames from `~/.ssh/config` For commands that pretty much always want to operate on text, such as text file or stream editors, I exclude special file types and extensions I know are @@ -376,216 +375,210 @@ namespace of the user's current shell. Installed by the `install-bin` target: -* Three SSH-related scripts: - * `sls(1df)` prints hostnames read from a `ssh_config(5)` file. It uses - `slsf(1df)` to read each one. - * `sra(1df)` runs a command on multiple hosts read from `sls(1df)` and - prints output. - * `sta(1df)` runs a command on multiple hosts read from `sls(1df)` and - prints the hostname if the command returns zero. -* Five URL-related shortcut scripts: - * `hurl(1df)` extracts values of `href` attributes of `` tags, sorts - them uniquely, and writes them to `stdout`; it requires - [pup](https://github.com/ericchiang/pup). - * `murl(1df)` converts Markdown documents to HTML with `pandoc(1)` and - runs the output through `hurl(1df)`. - * `urlc(1df)` accepts a list of URLs on `stdin` and writes error messages - to `stderr` if any of the URLs are broken, redirecting, or are insecure - and have working secure versions; requires `curl(1)`. - * `urlh(1df)` prints the values for a given HTTP header from a HEAD - response. - * `urlmt(1df)` prints the MIME type from the `Content-Type` header as - retrieved by `urlh(1df)`. -* Three RFC-related shortcut scripts: - * `rfcf(1df)` fetches ASCII RFCs from the IETF website. - * `rfct(1df)` formats ASCII RFCs. - * `rfcr(1df)` does both, displaying in a pager if appropriate, like a - `man(1)` reader for RFCs. -* Five toy random-number scripts (not for sensitive/dead-serious use): - * `rndi(1df)` gets a random integer within two bounds. - * `rnds(1df)` attempts to get an optional random seed for `rndi(1df)`. - * `rnda(1df)` uses `rndi(1df)` to choose a random argument. - * `rndf(1df)` uses `rnda(1df)` to choose a random file from a directory. - * `rndl(1df)` uses `rndi(1df)` to choose a random line from files. -* Four file formatting scripts: - * `d2u(1df)` converts DOS line endings in files to UNIX ones. - * `u2d(1df)` converts UNIX line endings in files to DOS ones. - * `stbl(1df)` strips a trailing blank line from the files in its - arguments. - * `stws(1df)` strips trailing spaces from the ends of lines of the files - in its arguments. -* Seven stream formatting scripts: - * `sd2u(1df)` converts DOS line endings in streams to UNIX ones. - * `su2d(1df)` converts UNIX line endings in streams to DOS ones. - * `slow(1df)` converts uppercase to lowercase. - * `supp(1df)` converts lowercase to uppercase. - * `tl(1df)` tags input lines with a prefix or suffix, basically a - `sed(1)` shortcut. - * `tlcs(1df)` executes a command and uses `tl(1df)` to tag standard - output and standard error lines, and color them if you want. - * `unf(1df)` joins lines with leading spaces to the previous line. - Intended for unfolding HTTP headers, but it should work for most RFC - 822 formats. -* Six simple aggregate scripts for numbers: - * `max(1df)` prints the maximum. - * `mean(1df)` prints the mean. - * `med(1df)` prints the median. - * `min(1df)` prints the minimum. - * `mode(1df)` prints the first encountered mode. - * `tot(1df)` totals the set. -* Three quick-and-dirty HTML tools: - * `htenc(1df)` encodes. - * `htdec(1df)` decodes. - * `htrec(1df)` wraps `a` tags around URLs. -* Two internet message quoting tools: - * `quo(1df)` indents with quoting right angle-brackets. - * `wro(1df)` adds a quote attribution header to its input. -* Six Git-related tools: - * `fgscr(1df)` finds Git repositories in a directory root and scrubs them - with `gscr(1df)`. - * `grc(1df)` quietly tests whether the given directory appears to be a - Git repository with pending changes. - * `gscr(1df)` scrubs Git repositories. - * `isgr(1df)` quietly tests whether the given directory appears to be a - Git repository. - * `jfc(1df)` adds and commits lazily to a Git repository. - * `jfcd(1df)` watches a directory for changes and runs `jfc(1df)` if it - sees any. -* Two time duration functions: - * `hms(1df)` converts seconds to `hh:mm:ss` or `mm:ss` timestamps. - * `sec(1df)` converts `hh:mm:ss` or `mm:ss` timestamps to seconds. -* Three pipe interaction tools: - * `pst(1df)` runs an interactive program on data before passing it along - a pipeline. - * `ped(1df)` runs `pst(1df)` with `$EDITOR` or `ed(1)`. - * `pvi(1df)` runs `pvi(1df)` with `$VISUAL` or `vi(1)`. -* `ap(1df)` reads arguments for a given command from the standard input, - prompting if appropriate. -* `apf(1df)` inserts arguments to a command with ones read from a file, - intended as a framework for shell wrappers or functions. -* `ax(1df)` evaluates an AWK expression given on the command line; this is - intended as a quick way to test how Awk would interpret a given expression. -* `bcq(1df)` runs `bc(1)`, quieting it down if need be. -* `bel(1df)` prints a terminal bell character. -* `bl(1df)` generates a given number of blank lines. -* `bp(1df)` runs `br(1df)` after prompting for an URL. -* `br(1df)` launches `$BROWSER`. -* `ca(1df)` prints a count of its given arguments. -* `cf(1df)` prints a count of entries in a given directory. -* `cfr(1df)` does the same as `cf(1df)`, but recurses into subdirectories as - well. -* `chc(1df)` caches the output of a command. -* `chn(1df)` runs a filter over its input a given number of times. -* `clog(1df)` is a tiny timestamped log system. -* `clrd(1df)` sets up a per-line file read, clearing the screen first. -* `clwr(1df)` sets up a per-line file write, clearing the screen before each - line. -* `csmw(1df)` prints an English list of monospace-quoted words read from the - input. -* `dam(1df)` buffers all its input before emitting it as output. -* `ddup(1df)` removes duplicate lines from unsorted input. -* `dmp(1df)` copies a pass(1) entry selected by `dmenu(1)` to the X - CLIPBOARD. -* `dub(1df)` lists the biggest entries in a directory. -* `edda(1df)` provides a means to run `ed(1)` over a set of files preserving - any options, mostly useful for scripts. -* `eds(1df)` edits executable script files in `EDSPATH`, defaulting to - `~/.local/bin`, for personal scripting snippets. -* `exm(1df)` works around a screen-clearing quirk of Vim's `ex` mode. -* `finc(1df)` counts the number of results returned from a set of given - `find(1)` conditions. -* `fnl(1df)` runs a command and saves its output and error into temporary - files, printing their paths and line counts. -* `fnp(1df)` prints the given files to standard output, each with a plain - text heading with the filename in it. -* `gms(1df)` runs a set of `getmailrc` files; does much the same thing as the - script `getmails` in the `getmail` suite, but runs the requests in parallel - and does up to three silent retries using `try(1df)`. -* `grec(1df)` is a more logically-named `grep -c`. -* `gred(1df)` is a more logically-named `grep -v`. -* `gwp(1df)` searches for alphanumeric words in a similar way to `grep(1)`. -* `han(1df)` provides a `keywordprg` for Vim's Bash script file type that - will look for `help` topics. You could use it from the shell too. -* `igex(1df)` wraps around a command to allow you to ignore error conditions - that don't actually worry you, exiting with 0 anyway. -* `ix(1df)` posts its input to the `ix.io` pastebin. -* `jfp(1df)` prints its input, excluding any shebang on the first line only. -* `loc(1df)` is a quick-search wrapped around `find(1)`. -* `maybe(1df)` is like `true(1)` or `false(1)`; given a probability of - success, - it exits with success or failure. Good for quick tests. -* `mex(1df)` makes given filenames in `$PATH` executable. -* `mi5(1df)` is a crude preprocessor for `m4`. -* `mftl(1df)` finds usable-looking targets in makefiles. -* `mkcp(1df)` creates a directory and copies preceding arguments into it. -* `mkmv(1df)` creates a directory and moves preceding arguments into it. -* `motd(1df)` shows the system MOTD. -* `mw(1df)` prints alphabetic space-delimited words from the input one per - line. -* `oii(1df)` runs a command on input only if there is any. -* `onl(1df)` crunches input down to one printable line. -* `osc(1df)` implements a `netcat(1)`-like wrapper for `openssl(1)`'s - `s_client` subcommand. -* `p(1df)` prints concatenated standard input; `cat(1)` as it should always - have been. -* `pa(1df)` prints its arguments, one per line. -* `pp(1df)` prints the full path of each argument using `$PWD`. -* `pph(1df)` runs `pp(1df)` and includes a leading `$HOSTNAME:`. -* `paz(1df)` print its arguments terminated by NULL chars. -* `pit(1df)` runs its input through a pager if its standard output looks like - a terminal. -* `plmu(1df)` retrieves a list of installed modules from - [`plenv`](https://github.com/tokuhirom/plenv), filters out any modules in - `~/.plenv/non-cpan-modules`, and updates them all. -* `pwg(1df)` generates just one decent password with `pwgen(1)`. -* `rep(1df)` repeats a command a given number of times. -* `rgl(1df)` is a very crude interactive `grep(1)` loop. -* `shb(1df)` attempts to build shebang lines for scripts from the system - paths. -* `sqs(1df)` chops off query strings from filenames, usually downloads. -* `sshi(1df)` prints human-readable SSH connection details. -* `stex(1df)` strips extensions from filenames. -* `sue(8df)` execs `sudoedit(8)` as the owner of all the file arguments given, - perhaps in cases where you may not necessarily have `root` `sudo(8)` - privileges. -* `swr(1df)` allows you to run commands locally specifying remote files in - `scp(1)`'s HOST:PATH format. -* `td(1df)` manages a to-do file for you with `$EDITOR` and `git(1)`; I used - to use Taskwarrior, but found it too complex and buggy. -* `tm(1df)` runs `tmux(1)` with `attach-session -d` if a session exists, and - `new-session` if it doesn't. -* `trs(1df)` replaces strings (not regular expression) in its input. -* `try(1df)` repeats a command up to a given number of times until it - succeeds, only printing error output if all three attempts failed. Good for - tolerating blips or temporary failures in `cron(8)` scripts. -* `umake(1df)` iterates upwards through the directory tree from `$PWD` until - it finds a Makefile for which to run `make(1)` with the given arguments. -* `uts(1df)` gets the current UNIX timestamp in an unorthodox way that should - work on all POSIX-compliant operating systems. -* `vest(1df)` runs `test(1)` but fails with explicit output via `vex(1df)`. -* `vex(1df)` runs a command and prints `true` or `false` explicitly to - `stdout` based on the exit value. -* `xrbg(1df)` applies the same randomly-selected background to each X screen. -* `xrq(1df)` gets the values of specific resources out of `xrdb -query` - output. +* Three SSH-related scripts: + * `sls(1df)` prints hostnames read from a `ssh_config(5)` file. It uses + `slsf(1df)` to read each one. + * `sra(1df)` runs a command on multiple hosts read from `sls(1df)` and + prints output. + * `sta(1df)` runs a command on multiple hosts read from `sls(1df)` and + prints the hostname if the command returns zero. +* Five URL-related shortcut scripts: + * `hurl(1df)` extracts values of `href` attributes of `` tags, sorts + them uniquely, and writes them to `stdout`; it requires + [pup](https://github.com/ericchiang/pup). + * `murl(1df)` converts Markdown documents to HTML with `pandoc(1)` and runs + the output through `hurl(1df)`. + * `urlc(1df)` accepts a list of URLs on `stdin` and writes error messages + to `stderr` if any of the URLs are broken, redirecting, or are insecure + and have working secure versions; requires `curl(1)`. + * `urlh(1df)` prints the values for a given HTTP header from a HEAD + response. + * `urlmt(1df)` prints the MIME type from the `Content-Type` header as + retrieved by `urlh(1df)`. +* Three RFC-related shortcut scripts: + * `rfcf(1df)` fetches ASCII RFCs from the IETF website. + * `rfct(1df)` formats ASCII RFCs. + * `rfcr(1df)` does both, displaying in a pager if appropriate, like a + `man(1)` reader for RFCs. +* Five toy random-number scripts (not for sensitive/dead-serious use): + * `rndi(1df)` gets a random integer within two bounds. + * `rnds(1df)` attempts to get an optional random seed for `rndi(1df)`. + * `rnda(1df)` uses `rndi(1df)` to choose a random argument. + * `rndf(1df)` uses `rnda(1df)` to choose a random file from a directory. + * `rndl(1df)` uses `rndi(1df)` to choose a random line from files. +* Four file formatting scripts: + * `d2u(1df)` converts DOS line endings in files to UNIX ones. + * `u2d(1df)` converts UNIX line endings in files to DOS ones. + * `stbl(1df)` strips a trailing blank line from the files in its arguments. + * `stws(1df)` strips trailing spaces from the ends of lines of the files in + its arguments. +* Seven stream formatting scripts: + * `sd2u(1df)` converts DOS line endings in streams to UNIX ones. + * `su2d(1df)` converts UNIX line endings in streams to DOS ones. + * `slow(1df)` converts uppercase to lowercase. + * `supp(1df)` converts lowercase to uppercase. + * `tl(1df)` tags input lines with a prefix or suffix, basically a `sed(1)` + shortcut. + * `tlcs(1df)` executes a command and uses `tl(1df)` to tag standard output + and standard error lines, and color them if you want. + * `unf(1df)` joins lines with leading spaces to the previous line. Intended + for unfolding HTTP headers, but it should work for most RFC 822 formats. +* Six simple aggregate scripts for numbers: + * `max(1df)` prints the maximum. + * `mean(1df)` prints the mean. + * `med(1df)` prints the median. + * `min(1df)` prints the minimum. + * `mode(1df)` prints the first encountered mode. + * `tot(1df)` totals the set. +* Three quick-and-dirty HTML tools: + * `htenc(1df)` encodes. + * `htdec(1df)` decodes. + * `htrec(1df)` wraps `a` tags around URLs. +* Two internet message quoting tools: + * `quo(1df)` indents with quoting right angle-brackets. + * `wro(1df)` adds a quote attribution header to its input. +* Six Git-related tools: + * `fgscr(1df)` finds Git repositories in a directory root and scrubs them + with `gscr(1df)`. + * `grc(1df)` quietly tests whether the given directory appears to be a Git + repository with pending changes. + * `gscr(1df)` scrubs Git repositories. + * `isgr(1df)` quietly tests whether the given directory appears to be a Git + repository. + * `jfc(1df)` adds and commits lazily to a Git repository. + * `jfcd(1df)` watches a directory for changes and runs `jfc(1df)` if it + sees any. +* Two time duration functions: + * `hms(1df)` converts seconds to `hh:mm:ss` or `mm:ss` timestamps. + * `sec(1df)` converts `hh:mm:ss` or `mm:ss` timestamps to seconds. +* Three pipe interaction tools: + * `pst(1df)` runs an interactive program on data before passing it along a + pipeline. + * `ped(1df)` runs `pst(1df)` with `$EDITOR` or `ed(1)`. + * `pvi(1df)` runs `pvi(1df)` with `$VISUAL` or `vi(1)`. +* `ap(1df)` reads arguments for a given command from the standard input, + prompting if appropriate. +* `apf(1df)` inserts arguments to a command with ones read from a file, + intended as a framework for shell wrappers or functions. +* `ax(1df)` evaluates an AWK expression given on the command line; this is + intended as a quick way to test how Awk would interpret a given expression. +* `bcq(1df)` runs `bc(1)`, quieting it down if need be. +* `bel(1df)` prints a terminal bell character. +* `bl(1df)` generates a given number of blank lines. +* `bp(1df)` runs `br(1df)` after prompting for an URL. +* `br(1df)` launches `$BROWSER`. +* `ca(1df)` prints a count of its given arguments. +* `cf(1df)` prints a count of entries in a given directory. +* `cfr(1df)` does the same as `cf(1df)`, but recurses into subdirectories as + well. +* `chc(1df)` caches the output of a command. +* `chn(1df)` runs a filter over its input a given number of times. +* `clog(1df)` is a tiny timestamped log system. +* `clrd(1df)` sets up a per-line file read, clearing the screen first. +* `clwr(1df)` sets up a per-line file write, clearing the screen before each + line. +* `csmw(1df)` prints an English list of monospace-quoted words read from the + input. +* `dam(1df)` buffers all its input before emitting it as output. +* `ddup(1df)` removes duplicate lines from unsorted input. +* `dmp(1df)` copies a pass(1) entry selected by `dmenu(1)` to the X CLIPBOARD. +* `dub(1df)` lists the biggest entries in a directory. +* `edda(1df)` provides a means to run `ed(1)` over a set of files preserving + any options, mostly useful for scripts. +* `eds(1df)` edits executable script files in `EDSPATH`, defaulting to + `~/.local/bin`, for personal scripting snippets. +* `exm(1df)` works around a screen-clearing quirk of Vim's `ex` mode. +* `finc(1df)` counts the number of results returned from a set of given + `find(1)` conditions. +* `fnl(1df)` runs a command and saves its output and error into temporary + files, printing their paths and line counts. +* `fnp(1df)` prints the given files to standard output, each with a plain text + heading with the filename in it. +* `gms(1df)` runs a set of `getmailrc` files; does much the same thing as the + script `getmails` in the `getmail` suite, but runs the requests in parallel + and does up to three silent retries using `try(1df)`. +* `grec(1df)` is a more logically-named `grep -c`. +* `gred(1df)` is a more logically-named `grep -v`. +* `gwp(1df)` searches for alphanumeric words in a similar way to `grep(1)`. +* `han(1df)` provides a `keywordprg` for Vim's Bash script file type that will + look for `help` topics. You could use it from the shell too. +* `igex(1df)` wraps around a command to allow you to ignore error conditions + that don't actually worry you, exiting with 0 anyway. +* `ix(1df)` posts its input to the `ix.io` pastebin. +* `jfp(1df)` prints its input, excluding any shebang on the first line only. +* `loc(1df)` is a quick-search wrapped around `find(1)`. +* `maybe(1df)` is like `true(1)` or `false(1)`; given a probability of success, + it exits with success or failure. Good for quick tests. +* `mex(1df)` makes given filenames in `$PATH` executable. +* `mi5(1df)` is a crude preprocessor for `m4`. +* `mftl(1df)` finds usable-looking targets in makefiles. +* `mkcp(1df)` creates a directory and copies preceding arguments into it. +* `mkmv(1df)` creates a directory and moves preceding arguments into it. +* `motd(1df)` shows the system MOTD. +* `mw(1df)` prints alphabetic space-delimited words from the input one per + line. +* `oii(1df)` runs a command on input only if there is any. +* `onl(1df)` crunches input down to one printable line. +* `osc(1df)` implements a `netcat(1)`-like wrapper for `openssl(1)`'s + `s_client` subcommand. +* `p(1df)` prints concatenated standard input; `cat(1)` as it should always + have been. +* `pa(1df)` prints its arguments, one per line. +* `pp(1df)` prints the full path of each argument using `$PWD`. +* `pph(1df)` runs `pp(1df)` and includes a leading `$HOSTNAME:`. +* `paz(1df)` print its arguments terminated by NULL chars. +* `pit(1df)` runs its input through a pager if its standard output looks like a + terminal. +* `plmu(1df)` retrieves a list of installed modules from + [`plenv`](https://github.com/tokuhirom/plenv), filters out any modules in + `~/.plenv/non-cpan-modules`, and updates them all. +* `pwg(1df)` generates just one decent password with `pwgen(1)`. +* `rep(1df)` repeats a command a given number of times. +* `rgl(1df)` is a very crude interactive `grep(1)` loop. +* `shb(1df)` attempts to build shebang lines for scripts from the system paths. +* `sqs(1df)` chops off query strings from filenames, usually downloads. +* `sshi(1df)` prints human-readable SSH connection details. +* `stex(1df)` strips extensions from filenames. +* `sue(8df)` execs `sudoedit(8)` as the owner of all the file arguments given, + perhaps in cases where you may not necessarily have `root` `sudo(8)` + privileges. +* `swr(1df)` allows you to run commands locally specifying remote files in + `scp(1)`'s HOST:PATH format. +* `td(1df)` manages a to-do file for you with `$EDITOR` and `git(1)`; I used to + use Taskwarrior, but found it too complex and buggy. +* `tm(1df)` runs `tmux(1)` with `attach-session -d` if a session exists, and + `new-session` if it doesn't. +* `trs(1df)` replaces strings (not regular expression) in its input. +* `try(1df)` repeats a command up to a given number of times until it succeeds, + only printing error output if all three attempts failed. Good for tolerating + blips or temporary failures in `cron(8)` scripts. +* `umake(1df)` iterates upwards through the directory tree from `$PWD` until it + finds a Makefile for which to run `make(1)` with the given arguments. +* `uts(1df)` gets the current UNIX timestamp in an unorthodox way that should + work on all POSIX-compliant operating systems. +* `vest(1df)` runs `test(1)` but fails with explicit output via `vex(1df)`. +* `vex(1df)` runs a command and prints `true` or `false` explicitly to `stdout` + based on the exit value. +* `xrbg(1df)` applies the same randomly-selected background to each X screen. +* `xrq(1df)` gets the values of specific resources out of `xrdb -query` output. There's some silly stuff in `install-games`: -* `aaf(6df)` gets a random [ASCII Art Farts](http://www.asciiartfarts.com/) +* `aaf(6df)` gets a random [ASCII Art Farts](http://www.asciiartfarts.com/) comic. -* `acq(6df)` allows you to interrogate AC, the interplanetary computer. -* `aesth(6df)` converts English letters to their full width CJK analogues, +* `acq(6df)` allows you to interrogate AC, the interplanetary computer. +* `aesth(6df)` converts English letters to their full width CJK analogues, for AESTHETIC PURPOSES. -* `squ(6df)` makes a reduced Latin square out of each line of input. -* `kvlt(6df)` translates input to emulate a style of typing unique to black +* `squ(6df)` makes a reduced Latin square out of each line of input. +* `kvlt(6df)` translates input to emulate a style of typing unique to black metal communities on the internet. -* `philsay(6df)` shows a picture to accompany `pks(6df)` output. -* `pks(6df)` laughs at a randomly selected word. -* `rndn(6df)` implements an esoteric random number generation algorithm. -* `strik(6df)` outputs s̶t̶r̶i̶k̶e̶d̶ ̶o̶u̶t̶ struck out text. -* `rot13(6df)` rotates the Latin letters in its input. -* `xyzzy(6df)` teleports to a marked location on the filesystem. -* `zs(6df)` prefixes "z" case-appropriately to every occurrence of "s" in the +* `philsay(6df)` shows a picture to accompany `pks(6df)` output. +* `pks(6df)` laughs at a randomly selected word. +* `rndn(6df)` implements an esoteric random number generation algorithm. +* `strik(6df)` outputs s̶t̶r̶i̶k̶e̶d̶ ̶o̶u̶t̶ struck out text. +* `rot13(6df)` rotates the Latin letters in its input. +* `xyzzy(6df)` teleports to a marked location on the filesystem. +* `zs(6df)` prefixes "z" case-appropriately to every occurrence of "s" in the text on its standard input. Manuals -- cgit v1.2.3 From f4fff12f339fa5a17794bf64e541fe755715c792 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Thu, 23 Nov 2017 15:44:26 +1300 Subject: Add syntax checking with zsh -n for Z shell --- vim/after/ftplugin/zsh/check.vim | 49 ++++++++++++++++++++++++++++++++++++++++ vim/compiler/zsh.vim | 17 ++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 vim/after/ftplugin/zsh/check.vim create mode 100644 vim/compiler/zsh.vim diff --git a/vim/after/ftplugin/zsh/check.vim b/vim/after/ftplugin/zsh/check.vim new file mode 100644 index 00000000..39faf44a --- /dev/null +++ b/vim/after/ftplugin/zsh/check.vim @@ -0,0 +1,49 @@ +" Only do this when not done yet for this buffer +" Also do nothing if 'compatible' enabled +if exists('b:did_ftplugin_zsh_check') || &compatible + finish +endif +let b:did_ftplugin_zsh_check = 1 +if exists('b:undo_ftplugin') + let b:undo_ftplugin = b:undo_ftplugin + \ . '|unlet b:did_ftplugin_zsh_check' +endif + +" Build function for checker +if !exists('*s:ZshCheck') + function s:ZshCheck() + let l:save_makeprg = &l:makeprg + let l:save_errorformat = &l:errorformat + unlet! g:current_compiler + compiler zsh + make! + let &l:makeprg = l:save_makeprg + let &l:errorformat = l:save_errorformat + cwindow + endfunction +endif + +" Set up a mapping for the checker, if we're allowed +if !exists('g:no_plugin_maps') && !exists('g:no_zsh_maps') + + " Define a mapping target + nnoremap + \ ZshCheck + \ :call ZshCheck() + if exists('b:undo_ftplugin') + let b:undo_ftplugin = b:undo_ftplugin + \ . '|nunmap ZshCheck' + endif + + " If there isn't a key mapping already, use a default one + if !hasmapto('ZshCheck') + nmap + \ c + \ ZshCheck + if exists('b:undo_ftplugin') + let b:undo_ftplugin = b:undo_ftplugin + \ . '|nunmap c' + endif + endif + +endif diff --git a/vim/compiler/zsh.vim b/vim/compiler/zsh.vim new file mode 100644 index 00000000..685a01ad --- /dev/null +++ b/vim/compiler/zsh.vim @@ -0,0 +1,17 @@ +if exists('g:current_compiler') + finish +endif +let g:current_compiler = 'zsh' + +if exists(':CompilerSet') != 2 + command -nargs=* CompilerSet setlocal +endif + +" 7.4.191 is the earliest version with the :S file name modifier, which we +" really should use if we can +if v:version >= 704 || v:version == 704 && has('patch191') + CompilerSet makeprg=zsh\ -n\ %:S +else + CompilerSet makeprg=zsh\ -n\ % +endif +CompilerSet errorformat=%f:%l:\ %m -- cgit v1.2.3 From 9d3ed55d5dcdfc51385aec771a8d6b948ce1dae4 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Mon, 27 Nov 2017 15:04:14 +1300 Subject: Update submodule paths Renamed two of my Vim submodules with the usual "vim-" prefix; this avoids the 301 HTTP redirect. --- .gitmodules | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitmodules b/.gitmodules index 998180ec..8039bbad 100644 --- a/.gitmodules +++ b/.gitmodules @@ -6,7 +6,7 @@ url = https://sanctum.geek.nz/clone/vim-commentary.git [submodule "vim/bundle/juvenile"] path = vim/bundle/juvenile - url = https://sanctum.geek.nz/code/juvenile.git + url = https://sanctum.geek.nz/code/vim-juvenile.git [submodule "vim/bundle/lion"] path = vim/bundle/lion url = https://sanctum.geek.nz/clone/vim-lion.git @@ -18,7 +18,7 @@ url = https://sanctum.geek.nz/clone/vim-repeat.git [submodule "vim/bundle/sahara"] path = vim/bundle/sahara - url = https://sanctum.geek.nz/code/sahara.git + url = https://sanctum.geek.nz/code/vim-sahara.git [submodule "vim/bundle/surround"] path = vim/bundle/surround url = https://sanctum.geek.nz/clone/vim-surround.git -- cgit v1.2.3 From ea66c45e69b910b9b68d5e0c3bf4d3d6a8f187c3 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Fri, 8 Dec 2017 10:05:32 +1300 Subject: Add install target for vim-vint --- Makefile | 4 ++++ vint/vintrc.yaml | 2 ++ 2 files changed, 6 insertions(+) create mode 100644 vint/vintrc.yaml diff --git a/Makefile b/Makefile index a899a367..9fec0cc9 100644 --- a/Makefile +++ b/Makefile @@ -50,6 +50,7 @@ install-vim-gui \ install-vim-gui-config \ install-vim-indent \ + install-vint \ install-wget \ install-x \ install-zsh \ @@ -562,6 +563,9 @@ install-vim-gui: install-vim \ install-vim-gui-config: cp -p -- vim/gvimrc $(HOME)/.gvimrc +install-vint: + cp -p -- vint/vintrc.yaml $(HOME)/.vintrc.yaml + install-wget: cp -p -- wget/wgetrc $(HOME)/.wgetrc diff --git a/vint/vintrc.yaml b/vint/vintrc.yaml new file mode 100644 index 00000000..572f0791 --- /dev/null +++ b/vint/vintrc.yaml @@ -0,0 +1,2 @@ +cmdargs: + severity: style_problem -- cgit v1.2.3 From 92cd78166b3bf057d60d23b38c0308498cad3f9c Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Fri, 8 Dec 2017 10:06:43 +1300 Subject: Make vim-vint allow saying ":set nocompatible" Per 62d2a7d, I need to have 'nocompatible' set if Vim is invoked as "ex" or if it's sourced directly with the -u option. I disagree with the policy. --- vint/vintrc.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/vint/vintrc.yaml b/vint/vintrc.yaml index 572f0791..9a8b7128 100644 --- a/vint/vintrc.yaml +++ b/vint/vintrc.yaml @@ -1,2 +1,6 @@ cmdargs: severity: style_problem + +policies: + ProhibitSetNoCompatible: + enabled: false -- cgit v1.2.3 From c002d58b6c969b45296fd00f862b70d0195ab024 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Fri, 8 Dec 2017 10:08:22 +1300 Subject: Add some comments to vintrc --- vint/vintrc.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/vint/vintrc.yaml b/vint/vintrc.yaml index 9a8b7128..cf74433a 100644 --- a/vint/vintrc.yaml +++ b/vint/vintrc.yaml @@ -1,6 +1,10 @@ +# Show me all my problems, including matters of style cmdargs: severity: style_problem +# Allow "set nocompatible", because it does need to be included for using ex if +# I don't want so much of my config to break because of 'cpoptions' (especially +# splitting long lines) policies: ProhibitSetNoCompatible: enabled: false -- cgit v1.2.3 From eeff813fcc0cdfd4a0dfdb1a83d2eeebb3ce1ad4 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Fri, 8 Dec 2017 10:11:49 +1300 Subject: Bump verison number to 0.20.0 --- VERSION | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/VERSION b/VERSION index 35e80fbb..57359d59 100644 --- a/VERSION +++ b/VERSION @@ -1,2 +1,2 @@ -tejr dotfiles v0.19.1 -Wed Nov 22 20:24:10 UTC 2017 +tejr dotfiles v0.20.0 +Thu Dec 7 21:11:35 UTC 2017 -- cgit v1.2.3