;doc: manuals: remove obsolete mentions of COLUMNS [#2340]
This commit is contained in:
parent
d346e56b79
commit
b629c31f9a
2
Justfile
2
Justfile
@ -491,7 +491,7 @@ STACKTEST := STACK + ' test --fast'
|
||||
@unittest:
|
||||
($STACK exec hledger test && echo $@ PASSED) || (echo $@ FAILED; false)
|
||||
|
||||
SHELLTEST := 'COLUMNS=80 ' + STACK + ' exec -- shelltest --execdir --exclude=/_ --threads=32'
|
||||
SHELLTEST := STACK + ' exec -- shelltest --execdir --exclude=/_ --threads=32'
|
||||
|
||||
# --hide-successes
|
||||
|
||||
|
||||
@ -224,10 +224,6 @@ stack's --file-watch flag will re-run build/test/bench when source files or pack
|
||||
|
||||
If you find that adding --fast makes this any faster, please update this.
|
||||
|
||||
## Use entr for watching arbitrary commands
|
||||
|
||||
[entr](https://entrproject.org/) is the most robust cross-platform tool for watching files and running a command when they change. Note its first argument must be an executable program, to run a shell command or multiple commands use `bash -c "..."`.
|
||||
|
||||
### Rerun a single functional test as you change it:
|
||||
|
||||
ls hledger/test/budget/budget.test | entr bash -c 'clear; COLUMNS=80 stack exec -- shelltest --execdir hledger/test/budget/budget.test -i12'
|
||||
watchexec -w hledger/test/journal/balance-assertions.test just functest -i budget.*19
|
||||
@ -347,10 +347,6 @@ clocks on both machines should be roughly in agreement.
|
||||
|
||||
# ENVIRONMENT
|
||||
|
||||
**COLUMNS**
|
||||
The screen width to use.
|
||||
Default: the full terminal width.
|
||||
|
||||
**LEDGER_FILE**
|
||||
The main journal file to use when not specified with `-f/--file`.
|
||||
Default: `$HOME/.hledger.journal`.
|
||||
|
||||
@ -148,9 +148,8 @@ no posting will be shown and the program exit code will be non-zero.
|
||||
|
||||
### Custom register output
|
||||
|
||||
register uses the full terminal width by default, except on windows.
|
||||
You can override this by setting the `COLUMNS` environment variable (not a bash shell variable)
|
||||
or by using the `--width`/`-w` option.
|
||||
register normally uses the full terminal width (or 80 columns if it can't detect that).
|
||||
You can override this with the `--width`/`-w` option.
|
||||
|
||||
The description and account columns normally share the space equally
|
||||
(about half of (width - 40) each). You can adjust this by adding a
|
||||
@ -165,10 +164,7 @@ and some examples:
|
||||
```cli
|
||||
$ hledger reg # use terminal width (or 80 on windows)
|
||||
$ hledger reg -w 100 # use width 100
|
||||
$ COLUMNS=100 hledger reg # set with one-time environment variable
|
||||
$ export COLUMNS=100; hledger reg # set till session end (or window resize)
|
||||
$ hledger reg -w 100,40 # set overall width 100, description width 40
|
||||
$ hledger reg -w $COLUMNS,40 # use terminal width, & description width 40
|
||||
```
|
||||
|
||||
This command also supports the
|
||||
|
||||
@ -732,10 +732,8 @@ This is the default: human readable, plain text report output, suitable for view
|
||||
If your data contains unicode or wide characters, you'll need a terminal and font that render those correctly.
|
||||
(This can be challenging on MS Windows.)
|
||||
|
||||
Some reports (`register`, `aregister`) will use the width indicated by the `COLUMNS` environment variable.
|
||||
If your shell and terminal are working well, they will keep COLUMNS updated as you resize the window.
|
||||
So register reports normally will use the full window width.
|
||||
When this isn't working or you want to override it, you can manually set COLUMNS, or use the `-w`/`--width` option.
|
||||
Some reports (`register`, `aregister`) will normally use the full window width.
|
||||
If this isn't working or you want to override it, you can use the `-w`/`--width` option.
|
||||
|
||||
Balance reports (`balance`, `balancesheet`, `incomestatement`...) use whatever width they need.
|
||||
Multi-period multi-currency reports can often be wider than the window. Besides using a pager,
|
||||
@ -986,11 +984,6 @@ hledger bal --debug=3 2>hledger.log
|
||||
|
||||
These environment variables affect hledger:
|
||||
|
||||
**COLUMNS**
|
||||
This is normally set by your terminal;
|
||||
some hledger commands (`register`) will format their output to this width.
|
||||
If not set, they will try to use the available terminal width.
|
||||
|
||||
**HLEDGER_LESS**
|
||||
If `less` is your [pager](#paging), this variable specifies the `less` options hledger should use.
|
||||
(Otherwise, `LESS` + custom options are used.)
|
||||
|
||||
@ -38,25 +38,26 @@ around ghc 9.10's extra newline in error output: https://gitlab.haskell.org/ghc/
|
||||
|
||||
Run them all (also builds hledger):
|
||||
|
||||
make functest
|
||||
just functest
|
||||
|
||||
See how the Makefile is invoking shelltestrunner:
|
||||
See the commands being run:
|
||||
|
||||
$ make functest -n
|
||||
stack build --fast hledger
|
||||
(COLUMNS=80 stack exec -- shelltest --execdir -j16 --hide-successes --exclude=/_ -w `stack exec -- which hledger` tests \
|
||||
&& echo functest PASSED) || (echo functest FAILED; false)
|
||||
$ just -v functest
|
||||
===> Running recipe `functest`...
|
||||
$STACK build --ghc-options=-Werror hledger
|
||||
time ((stack exec -- shelltest --execdir --exclude=/_ --threads=32 hledger/test/ bin/ -x ledger-compat/ledger-baseline -x ledger-compat/ledger-regress -x ledger-compat/ledger-extra && echo $@ PASSED) || (echo $@ FAILED; false))
|
||||
|
||||
These are the most important:
|
||||
Some explanation:
|
||||
|
||||
- `COLUMNS=80` makes output independent of your terminal width.
|
||||
- `--execdir` runs each test within its own directory.
|
||||
- ``-w `stack exec -- which hledger` `` ensures you are testing the hledger executable that was just built.
|
||||
- `-j16` runs tests in parallel which is much faster.
|
||||
- `stack exec -- ...` ensures you are testing the hledger executable that was just built (it will be first in PATH).
|
||||
- `--execdir` executes tests within their test file's directory.
|
||||
- `--exclude=/_` excludes top-level test files whose names begin with underscore.
|
||||
- `--threads=N` runs tests in parallel which is much faster.
|
||||
- `-x` is another spelling of --exclude
|
||||
|
||||
Run only the tests matching a regular expression (`balance-assertions:.*19` in this case):)
|
||||
Run only the tests matching a regular expression (here, the 19th test in the balance-assertions.test file):
|
||||
|
||||
$ make functest-balance-assertions.*19
|
||||
$ just functest -i balance-assertions.*19
|
||||
:hledger/test/journal/balance-assertions.test:19: [OK]
|
||||
|
||||
Test Cases Total
|
||||
@ -64,21 +65,9 @@ Run only the tests matching a regular expression (`balance-assertions:.*19` in t
|
||||
Failed 0 0
|
||||
Total 1 1
|
||||
|
||||
Run only the tests in one file:
|
||||
Run a specific test repeatedly as its file is changed:
|
||||
|
||||
$ COLUMNS=80 shelltest --execdir -w `stack exec -- which hledger` hledger/test/cli/query-args.test
|
||||
:hledger/test/cli/query-args.test:1: [OK]
|
||||
:hledger/test/cli/query-args.test:2: [OK]
|
||||
:hledger/test/cli/query-args.test:3: [OK]
|
||||
|
||||
Test Cases Total
|
||||
Passed 3 3
|
||||
Failed 0 0
|
||||
Total 3 3
|
||||
|
||||
Run a test [repeatedly](http://eradman.com/entrproject/) as its file is changed:
|
||||
|
||||
$ ls hledger/test/cli/query-args.test | entr bash -c "COLUMNS=80 shelltest --execdir -w `stack exec -- which hledger` hledger/test/cli/query-args.test -i1"
|
||||
$ watchexec -w hledger/test/journal/balance-assertions.test just functest -i balance-assertions.*19
|
||||
:hledger/test/cli/query-args.test:1: [OK]
|
||||
|
||||
Test Cases Total
|
||||
|
||||
Loading…
Reference in New Issue
Block a user