hledger-ui 1.40 → 1.41
raw patch · 12 files changed
+189/−105 lines, 12 filesdep −ghc-debug-stubdep ~basedep ~brickdep ~hledgerPVP ok
version bump matches the API change (PVP)
Dependencies removed: ghc-debug-stub
Dependency ranges changed: base, brick, hledger, hledger-lib
API changes (from Hackage documentation)
Files
- CHANGES.md +46/−0
- Hledger/UI/AccountsScreen.hs +1/−1
- Hledger/UI/Editor.hs +5/−0
- Hledger/UI/Main.hs +28/−5
- Hledger/UI/UIOptions.hs +10/−13
- Hledger/UI/UIScreens.hs +1/−1
- Hledger/UI/UIState.hs +19/−13
- Hledger/UI/UIUtils.hs +2/−2
- hledger-ui.1 +15/−6
- hledger-ui.cabal +15/−19
- hledger-ui.info +32/−38
- hledger-ui.txt +15/−7
CHANGES.md view
@@ -22,6 +22,52 @@ See also the hledger changelog. +# 2024-12-09 1.41++Breaking changes++- When built with ghc 9.10.1, error messages are displayed with two extra trailing newlines.++Fixes++- V (value) and C (cost) toggle keys once again reset each other as they should+ (broken since 1.21).+ (Gal Lakovnik Gorenec, [#2284])++- Bash shell completions are now up to date. [#986]++Features++Improvements++- Allow clipping depth to be configured per account (until adjusted in app, at least).+ (Stephen Morgan, [#2292])++- Added helix as a supported editor for the `e` key. (amano.kenji)++- Added --pager and --color options as in hledger, affecting command line help.+ Also --color=no forces use of the "terminal" theme.++- Added a new `debug` build flag. Builds made with ghc 9.10+ and this flag+ will show some kind of partial stack trace if the program exits with an error.+ These will improve in future ghc versions.++- Disabled the unused `ghcdebug` build flag and ghc-debug support, for now.++- Allow megaparsec 9.7.++- Allow brick 2.5, 2.6.++- Avoid brick 2.3.2, which doesn't build on windows.++- ghc 9.10 / base 4.20 are now supported.++Docs++- Mention that period navigation uses standard periods [#2293]+- Install, manual: new shell completions doc. [#986]++ # 1.40 2024-09-09 Improvements
Hledger/UI/AccountsScreen.hs view
@@ -130,7 +130,7 @@ ,uiShowStatus copts $ statuses_ ropts ,if real_ ropts then ["real"] else [] ]- mdepth = depth_ ropts+ mdepth = dsFlatDepth $ depth_ ropts curidx = case ass ^. assList . listSelectedL of Nothing -> "-" Just i -> show (i + 1)
Hledger/UI/Editor.hs view
@@ -120,6 +120,11 @@ Nothing -> [f'] Just ('-' : _, _) -> ["+", f'] Just (l, _) -> ['+' : l, f']+ -- arch linux creates a symlink to /usr/lib/helix/hx at /usr/bin/helix+ e | e `elem` ["hx", "helix"] -> case mpos' of+ Nothing -> [f']+ Just ('-' : _, _) -> [f']+ Just (l, _) -> ['+' : l, f'] _ -> [f'] return $ unwords $ cmd:args
Hledger/UI/Main.hs view
@@ -3,6 +3,7 @@ Copyright (c) 2007-2015 Simon Michael <simon@joyful.com> Released under GPL version 3 or later. -}+{-# LANGUAGE CPP #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE OverloadedStrings #-}@@ -13,6 +14,9 @@ import Control.Applicative ((<|>)) import Control.Concurrent (threadDelay) import Control.Concurrent.Async (withAsync)+#if MIN_VERSION_base(4,20,0)+import Control.Exception.Backtrace (setBacktraceMechanismState, BacktraceMechanism(..))+#endif import Control.Monad (forM_, void, when) import Data.Bifunctor (first) import Data.Function ((&))@@ -61,21 +65,40 @@ hledgerUiMain = withGhcDebug' $ withProgName "hledger-ui.log" $ do -- force Hledger.Utils.Debug.* to log to hledger-ui.log when (ghcDebugMode == GDPauseAtStart) $ ghcDebugPause' +#if MIN_VERSION_base(4,20,0)+ -- Control ghc 9.10+'s stack traces.+ -- CostCentreBacktrace - collect cost-centre stack backtraces (only available when built with profiling)+ -- HasCallStackBacktrace - collect HasCallStack backtraces+ -- ExecutionBacktrace - collect backtraces from native execution stack unwinding+ -- IPEBacktrace - collect backtraces from Info Table Provenance Entries+#ifdef DEBUG+ setBacktraceMechanismState HasCallStackBacktrace True+#else+ setBacktraceMechanismState HasCallStackBacktrace False+#endif+#endif+ traceLogAtIO 1 "\n\n\n\n==== hledger-ui start" dbg1IO "args" progArgs dbg1IO "debugLevel" debugLevel - -- try to encourage user's $PAGER to properly display ANSI (in command line help)- when useColorOnStdout setupPager-- opts@UIOpts{uoCliOpts=copts@CliOpts{inputopts_=iopts,rawopts_=rawopts}} <- getHledgerUIOpts+ opts1@UIOpts{uoCliOpts=copts@CliOpts{inputopts_=iopts,rawopts_=rawopts}} <- getHledgerUIOpts -- when (debug_ $ cliopts_ opts) $ printf "%s\n" prognameandversion >> printf "opts: %s\n" (show opts) + usecolor <- useColorOnStdout+ -- When ANSI colour/styling is available and enabled, encourage user's $PAGER to use it (for command line help).+ when usecolor setupPager+ -- And when it's not, disable colour in the TUI ?+ -- Theme.hs's themes currently hard code various colours and styles provided by vty,+ -- which probably are disabled automatically when terminal doesn't support them.+ -- But we'll at least force hledger-ui's theme to a monochrome one.+ let opts = if usecolor then opts1 else opts1{uoTheme=Just "terminal"}+ -- always generate forecasted periodic transactions; their visibility will be toggled by the UI. let copts' = copts{inputopts_=iopts{forecast_=forecast_ iopts <|> Just nulldatespan}} case True of- _ | boolopt "help" rawopts -> pager $ showModeUsage uimode ++ "\n"+ _ | boolopt "help" rawopts -> runPager $ showModeUsage uimode ++ "\n" _ | boolopt "tldr" rawopts -> runTldrForPage "hledger-ui" _ | boolopt "info" rawopts -> runInfoForTopic "hledger-ui" Nothing _ | boolopt "man" rawopts -> runManForTopic "hledger-ui" Nothing
Hledger/UI/UIOptions.hs view
@@ -1,11 +1,7 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE TemplateHaskell #-}-{-| --}--module Hledger.UI.UIOptions-where+module Hledger.UI.UIOptions where import Data.Default (def) import Data.List (intercalate)@@ -102,16 +98,17 @@ } -- | Process a RawOpts into a UIOpts.--- This will return a usage error if provided an invalid theme.+-- An invalid --theme name will raise an error. rawOptsToUIOpts :: RawOpts -> IO UIOpts rawOptsToUIOpts rawopts = do- cliopts <- set balanceaccum accum <$> rawOptsToCliOpts rawopts- return defuiopts {- uoWatch = boolopt "watch" rawopts- ,uoTheme = checkTheme <$> maybestringopt "theme" rawopts- ,uoRegister = maybestringopt "register" rawopts- ,uoCliOpts = cliopts- }+ cliopts <- set balanceaccum accum <$> rawOptsToCliOpts rawopts+ return+ defuiopts {+ uoWatch = boolopt "watch" rawopts+ ,uoTheme = checkTheme <$> maybestringopt "theme" rawopts+ ,uoRegister = maybestringopt "register" rawopts+ ,uoCliOpts = cliopts+ } where -- show historical balance by default (unlike hledger) accum = fromMaybe Historical $ balanceAccumulationOverride rawopts
Hledger/UI/UIScreens.hs view
@@ -256,7 +256,7 @@ -- adjust the report options and report spec, carefully as usual to avoid screwups (#1523) ropts' = ropts { -- ignore any depth limit, as in postingsReport; allows register's total to match accounts screen- depth_=Nothing+ depth_=mempty -- do not strip prices so we can toggle costs within the ui , show_costs_=True -- XXX aregister also has this, needed ?
Hledger/UI/UIState.hs view
@@ -149,15 +149,16 @@ -- | Toggle between showing the primary amounts or costs. toggleConversionOp :: UIState -> UIState-toggleConversionOp = over conversionop toggleCostMode+toggleConversionOp ui = (over value valOff) (over conversionop toggleCostMode ui) where toggleCostMode Nothing = Just ToCost toggleCostMode (Just NoConversionOp) = Just ToCost toggleCostMode (Just ToCost) = Just NoConversionOp+ valOff _ = Nothing -- | Toggle between showing primary amounts or values (using valuation specified at startup, or a default). toggleValue :: UIState -> UIState-toggleValue ui = over value (valuationToggleValue mstartupvaluation0) ui+toggleValue ui = (over conversionop costOff) (over value (valuationToggleValue mstartupvaluation0) ui) where mstartupvaluation0 = value_ $ _rsReportOpts $ reportspec_ $ uoCliOpts $ astartupopts ui mdefvaluation = Just (AtEnd Nothing)@@ -166,6 +167,7 @@ valuationToggleValue Nothing (Just _) = Nothing valuationToggleValue mstartupvaluation Nothing = mstartupvaluation valuationToggleValue _ (Just _) = Nothing+ costOff _ = Just NoConversionOp -- | Set hierarchic account tree mode. setTree :: UIState -> UIState@@ -279,7 +281,7 @@ -- resetOpts ui@UIState{astartupopts} = ui{aopts=astartupopts} resetDepth :: UIState -> UIState-resetDepth = updateReportDepth (const Nothing)+resetDepth = updateReportDepth (const mempty) -- | Get the maximum account depth in the current journal. maxDepth :: UIState -> Int@@ -290,34 +292,38 @@ decDepth :: UIState -> UIState decDepth ui = updateReportDepth dec ui where- dec (Just d) = Just $ max 0 (d-1)- dec Nothing = Just $ maxDepth ui - 1+ dec (DepthSpec (Just d) _) = DepthSpec (Just $ max 0 (d-1)) []+ dec (DepthSpec Nothing _) = DepthSpec (Just $ maxDepth ui - 1) [] -- | Increment the current depth limit. If this makes it equal to the -- the maximum account depth, remove the depth limit. incDepth :: UIState -> UIState-incDepth = updateReportDepth (fmap succ)+incDepth = updateReportDepth inc+ where+ inc (DepthSpec Nothing _) = DepthSpec Nothing []+ inc (DepthSpec (Just d) _) = DepthSpec (Just $ d + 1) [] -- | Set the current depth limit to the specified depth, or remove the depth limit. -- Also remove the depth limit if the specified depth is greater than the current -- maximum account depth. If the specified depth is negative, reset the depth limit -- to whatever was specified at uiartup. setDepth :: Maybe Int -> UIState -> UIState-setDepth mdepth = updateReportDepth (const mdepth)+setDepth mdepth = updateReportDepth (const $ DepthSpec mdepth []) getDepth :: UIState -> Maybe Int-getDepth = (^.depth)+getDepth = dsFlatDepth . (^.depth) -- | Update report depth by a applying a function. If asked to set a depth less -- than zero, it will leave it unchanged.-updateReportDepth :: (Maybe Int -> Maybe Int) -> UIState -> UIState+updateReportDepth :: (DepthSpec -> DepthSpec) -> UIState -> UIState updateReportDepth updateDepth ui = over reportSpec update ui where update = fromRight (error "updateReportDepth: updating depth should not result in an error") -- PARTIAL:- . updateReportSpecWith (\ropts -> ropts{depth_=updateDepth (depth_ ropts) >>= clipDepth ropts})- clipDepth ropts d | d < 0 = depth_ ropts- | d >= maxDepth ui = Nothing- | otherwise = Just d+ . updateReportSpecWith (\ropts -> ropts{depth_=clipDepth ropts $ updateDepth (depth_ ropts)})+ clipDepth _ (DepthSpec Nothing _) = mempty+ clipDepth ropts ds@(DepthSpec (Just d) _) | d < 0 = depth_ ropts+ | d >= maxDepth ui = mempty+ | otherwise = ds -- | Open the minibuffer, setting its content to the current query with the cursor at the end. showMinibuffer :: T.Text -> Maybe String -> UIState -> UIState
Hledger/UI/UIUtils.hs view
@@ -379,7 +379,7 @@ -- | Scroll a list's viewport so that the selected item is centered in the -- middle of the display area.-scrollSelectionToMiddle :: List Name item -> EventM Name UIState ()+scrollSelectionToMiddle :: Brick.Widgets.List.List Name item -> EventM Name UIState () scrollSelectionToMiddle list = do case list^.listSelectedL of Nothing -> return ()@@ -429,7 +429,7 @@ -- Vertically scroll the named list's viewport with the given number of non-empty items -- by the given positive or negative number of items (usually 1 or -1). -- The selection will be moved when necessary to keep it visible and allow the scroll.-listScrollPushingSelection :: Name -> Int -> Int -> EventM Name (List Name item) (GenericList Name Vector item)+listScrollPushingSelection :: Name -> Int -> Int -> EventM Name (Brick.Widgets.List.List Name item) (GenericList Name Vector item) listScrollPushingSelection name listheight scrollamt = do list <- get viewportScroll name `vScrollBy` scrollamt
hledger-ui.1 view
@@ -1,5 +1,5 @@ -.TH "HLEDGER\-UI" "1" "September 2024" "hledger-ui-1.40 " "hledger User Manuals"+.TH "HLEDGER\-UI" "1" "October 2024" "hledger-ui-1.41 " "hledger User Manuals" @@ -17,7 +17,7 @@ .PD \f[CR]hledger ui \-\- [OPTS] [QUERYARGS]\f[R] .SH DESCRIPTION-This manual is for hledger\[aq]s terminal interface, version 1.40.+This manual is for hledger\[aq]s terminal interface, version 1.41. See also the hledger manual for common concepts and file formats. .PP hledger is a robust, user\-friendly, cross\-platform set of programs for@@ -115,9 +115,11 @@ \-C \-\-cleared include only cleared postings/transactions (\-U/\-P/\-C can be combined) \-R \-\-real include only non\-virtual postings- \-\-depth=NUM or \-NUM: show only top NUM levels of accounts \-E \-\-empty Show zero items, which are normally hidden. In hledger\-ui & hledger\-web, do the opposite.+ \-\-depth=DEPTHEXP if a number (or \-NUM): show only top NUM levels+ of accounts. If REGEXP=NUM, only apply limiting to+ accounts matching the regular expression. \-B \-\-cost show amounts converted to their cost/sale amount \-V \-\-market Show amounts converted to their value at period end(s) in their default valuation commodity.@@ -134,8 +136,6 @@ YYYY\-MM\-DD: value on given date \-c \-\-commodity\-style=S Override a commodity\[aq]s display style. Eg: \-c \[aq].\[aq] or \-c \[aq]1.000,00 EUR\[aq]- \-\-color=YN \-\-colour Use ANSI color codes in text output? Can be- \[aq]y\[aq]/\[aq]yes\[aq]/\[aq]always\[aq], \[aq]n\[aq]/\[aq]no\[aq]/\[aq]never\[aq] or \[aq]auto\[aq]. \-\-pretty[=YN] Use box\-drawing characters in text output? Can be \[aq]y\[aq]/\[aq]yes\[aq] or \[aq]n\[aq]/\[aq]no\[aq]. If YN is specified, the equals is required.@@ -147,10 +147,16 @@ \-\-man show the manual with man \-\-version show version information \-\-debug=[1\-9] show this much debug output (default: 1)+ \-\-pager=YN use a pager when needed ? y/yes (default) or n/no+ \-\-color=YNA \-\-colour use ANSI color ? y/yes, n/no, or auto (default) .EE .PP With hledger\-ui, the \f[CR]\-\-debug\f[R] option sends debug output to a \f[CR]hledger\-ui.log\f[R] file in the current directory.+.PP+If you use the bash shell, you can auto\-complete flags by pressing TAB+in the command line.+If this is not working see Install > Shell completions. .SH MOUSE In most modern terminals, you can navigate through the screens with a mouse or touchpad:@@ -207,6 +213,9 @@ If you are using \f[CR]\-w/\-\-watch\f[R] and viewing a narrowed period containing today, the view will follow any changes in system date (moving to the period containing the new date).+(These keys work only with the standard Julian calendar+year/quarter/month/week/day periods; they are not affected by a custom+report interval specified at the command line.) .PP You can also specify a non\-standard period with \f[CR]/\f[R] and a \f[CR]date:\f[R] query; in this case, the period is not movable with the@@ -457,7 +466,7 @@ Default: \f[CR]$HOME/.hledger.journal\f[R]. .SH BUGS We welcome bug reports in the hledger issue tracker (shortcut:-http://bugs.hledger.org), or on the #hledger chat or hledger mail list+https://bugs.hledger.org), or on the hledger chat or mail list (https://hledger.org/support). .PP Some known issues:
hledger-ui.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack name: hledger-ui-version: 1.40+version: 1.41 synopsis: Terminal interface for the hledger accounting system description: A simple terminal user interface for the hledger accounting system. It can be a more convenient way to browse your accounts than the CLI.@@ -39,8 +39,8 @@ type: git location: https://github.com/simonmichael/hledger -flag ghcdebug- description: Build with support for attaching a ghc-debug client+flag debug+ description: Build with GHC 9.10+'s stack traces enabled manual: True default: False @@ -73,12 +73,12 @@ hs-source-dirs: ./ ghc-options: -Wall -Wno-incomplete-uni-patterns -Wno-missing-signatures -Wno-orphans -Wno-type-defaults -Wno-unused-do-bind- cpp-options: -DVERSION="1.40" -DVERSION="1.40"+ cpp-options: -DVERSION="1.41" -DVERSION="1.41" build-depends: ansi-terminal >=0.9 , async- , base >=4.14 && <4.20- , brick >=2.1.1 && <2.3.2 || >2.3.2 && <2.5+ , base >=4.14 && <4.21+ , brick >=2.1.1 && <2.3.2 || >2.3.2 && <2.7 , cmdargs >=0.8 , containers >=0.5.9 , data-default@@ -88,9 +88,9 @@ , filepath , fsnotify ==0.4.* , githash >=0.1.6.2- , hledger ==1.40.*- , hledger-lib ==1.40.*- , megaparsec >=7.0.0 && <9.7+ , hledger ==1.41.*+ , hledger-lib ==1.41.*+ , megaparsec >=7.0.0 && <9.8 , microlens >=0.4 , microlens-platform >=0.2.3.1 , mtl >=2.2.1@@ -105,10 +105,8 @@ , vty >=6.1 && <6.3 , vty-crossplatform >=0.4.0.0 && <0.5.0.0 default-language: Haskell2010- if (flag(ghcdebug))- cpp-options: -DGHCDEBUG- build-depends:- ghc-debug-stub >=0.6.0.0 && <0.7+ if (flag(debug))+ cpp-options: -DDEBUG if os(windows) build-depends: vty-windows >=0.2.0.1 && <0.3.0.0@@ -123,14 +121,12 @@ hs-source-dirs: app ghc-options: -Wall -Wno-incomplete-uni-patterns -Wno-missing-signatures -Wno-orphans -Wno-type-defaults -Wno-unused-do-bind- cpp-options: -DVERSION="1.40"+ cpp-options: -DVERSION="1.41" build-depends:- base >=4.14 && <4.20+ base >=4.14 && <4.21 , hledger-ui default-language: Haskell2010- if (flag(ghcdebug))- cpp-options: -DGHCDEBUG- build-depends:- ghc-debug-stub >=0.6.0.0 && <0.7+ if (flag(debug))+ cpp-options: -DDEBUG if flag(threaded) ghc-options: -threaded -with-rtsopts=-T
hledger-ui.info view
@@ -1,4 +1,4 @@-This is hledger-ui.info, produced by makeinfo version 7.1 from stdin.+This is hledger-ui.info, produced by makeinfo version 7.1.1 from stdin. INFO-DIR-SECTION User Applications START-INFO-DIR-ENTRY@@ -18,7 +18,7 @@ or 'hledger ui -- [OPTS] [QUERYARGS]' - This manual is for hledger's terminal interface, version 1.40. See+ This manual is for hledger's terminal interface, version 1.41. See also the hledger manual for common concepts and file formats. hledger is a robust, user-friendly, cross-platform set of programs@@ -126,9 +126,11 @@ -C --cleared include only cleared postings/transactions (-U/-P/-C can be combined) -R --real include only non-virtual postings- --depth=NUM or -NUM: show only top NUM levels of accounts -E --empty Show zero items, which are normally hidden. In hledger-ui & hledger-web, do the opposite.+ --depth=DEPTHEXP if a number (or -NUM): show only top NUM levels+ of accounts. If REGEXP=NUM, only apply limiting to+ accounts matching the regular expression. -B --cost show amounts converted to their cost/sale amount -V --market Show amounts converted to their value at period end(s) in their default valuation commodity.@@ -145,8 +147,6 @@ YYYY-MM-DD: value on given date -c --commodity-style=S Override a commodity's display style. Eg: -c '.' or -c '1.000,00 EUR'- --color=YN --colour Use ANSI color codes in text output? Can be- 'y'/'yes'/'always', 'n'/'no'/'never' or 'auto'. --pretty[=YN] Use box-drawing characters in text output? Can be 'y'/'yes' or 'n'/'no'. If YN is specified, the equals is required.@@ -158,10 +158,16 @@ --man show the manual with man --version show version information --debug=[1-9] show this much debug output (default: 1)+ --pager=YN use a pager when needed ? y/yes (default) or n/no+ --color=YNA --colour use ANSI color ? y/yes, n/no, or auto (default) With hledger-ui, the '--debug' option sends debug output to a 'hledger-ui.log' file in the current directory. + If you use the bash shell, you can auto-complete flags by pressing+TAB in the command line. If this is not working see Install > Shell+completions.+ File: hledger-ui.info, Node: MOUSE, Next: KEYS, Prev: OPTIONS, Up: Top @@ -217,7 +223,10 @@ moves to the previous or next period, and pressing 'T' sets the period to "today". If you are using '-w/--watch' and viewing a narrowed period containing today, the view will follow any changes in system date-(moving to the period containing the new date).+(moving to the period containing the new date). (These keys work only+with the standard Julian calendar year/quarter/month/week/day periods;+they are not affected by a custom report interval specified at the+command line.) You can also specify a non-standard period with '/' and a 'date:' query; in this case, the period is not movable with the arrow keys.@@ -517,7 +526,7 @@ ****** We welcome bug reports in the hledger issue tracker (shortcut:-http://bugs.hledger.org), or on the #hledger chat or hledger mail list+https://bugs.hledger.org), or on the hledger chat or mail list (https://hledger.org/support). Some known issues:@@ -534,37 +543,22 @@ Tag Table:-Node: Top221-Node: OPTIONS1870-Ref: #options1968-Node: MOUSE8234-Ref: #mouse8329-Node: KEYS8566-Ref: #keys8659-Node: SCREENS13394-Ref: #screens13498-Node: Menu screen14134-Ref: #menu-screen14255-Node: Cash accounts screen14450-Ref: #cash-accounts-screen14627-Node: Balance sheet accounts screen14811-Ref: #balance-sheet-accounts-screen15027-Node: Income statement accounts screen15147-Ref: #income-statement-accounts-screen15368-Node: All accounts screen15532-Ref: #all-accounts-screen15713-Node: Register screen15895-Ref: #register-screen16054-Node: Transaction screen18338-Ref: #transaction-screen18496-Node: Error screen19913-Ref: #error-screen20035-Node: WATCH MODE20279-Ref: #watch-mode20396-Node: ENVIRONMENT21855-Ref: #environment21971-Node: BUGS22162-Ref: #bugs22245+Node: Top223+Node: OPTIONS1872+Node: MOUSE8546+Node: KEYS8878+Node: SCREENS13882+Node: Menu screen14622+Node: Cash accounts screen14938+Node: Balance sheet accounts screen15299+Node: Income statement accounts screen15635+Node: All accounts screen16020+Node: Register screen16383+Node: Transaction screen18826+Node: Error screen20401+Node: WATCH MODE20767+Node: ENVIRONMENT22343+Node: BUGS22650 End Tag Table
hledger-ui.txt view
@@ -11,7 +11,7 @@ hledger ui -- [OPTS] [QUERYARGS] DESCRIPTION- This manual is for hledger's terminal interface, version 1.40. See+ This manual is for hledger's terminal interface, version 1.41. See also the hledger manual for common concepts and file formats. hledger is a robust, user-friendly, cross-platform set of programs for@@ -104,9 +104,11 @@ -C --cleared include only cleared postings/transactions (-U/-P/-C can be combined) -R --real include only non-virtual postings- --depth=NUM or -NUM: show only top NUM levels of accounts -E --empty Show zero items, which are normally hidden. In hledger-ui & hledger-web, do the opposite.+ --depth=DEPTHEXP if a number (or -NUM): show only top NUM levels+ of accounts. If REGEXP=NUM, only apply limiting to+ accounts matching the regular expression. -B --cost show amounts converted to their cost/sale amount -V --market Show amounts converted to their value at period end(s) in their default valuation commodity.@@ -123,8 +125,6 @@ YYYY-MM-DD: value on given date -c --commodity-style=S Override a commodity's display style. Eg: -c '.' or -c '1.000,00 EUR'- --color=YN --colour Use ANSI color codes in text output? Can be- 'y'/'yes'/'always', 'n'/'no'/'never' or 'auto'. --pretty[=YN] Use box-drawing characters in text output? Can be 'y'/'yes' or 'n'/'no'. If YN is specified, the equals is required.@@ -136,10 +136,16 @@ --man show the manual with man --version show version information --debug=[1-9] show this much debug output (default: 1)+ --pager=YN use a pager when needed ? y/yes (default) or n/no+ --color=YNA --colour use ANSI color ? y/yes, n/no, or auto (default) With hledger-ui, the --debug option sends debug output to a hledger-ui.log file in the current directory. + If you use the bash shell, you can auto-complete flags by pressing TAB+ in the command line. If this is not working see Install > Shell com-+ pletions.+ MOUSE In most modern terminals, you can navigate through the screens with a mouse or touchpad:@@ -185,7 +191,9 @@ the previous or next period, and pressing T sets the period to "today". If you are using -w/--watch and viewing a narrowed period containing today, the view will follow any changes in system date (moving to the- period containing the new date).+ period containing the new date). (These keys work only with the stan-+ dard Julian calendar year/quarter/month/week/day periods; they are not+ affected by a custom report interval specified at the command line.) You can also specify a non-standard period with / and a date: query; in this case, the period is not movable with the arrow keys.@@ -411,7 +419,7 @@ BUGS We welcome bug reports in the hledger issue tracker (shortcut:- http://bugs.hledger.org), or on the #hledger chat or hledger mail list+ https://bugs.hledger.org), or on the hledger chat or mail list (https://hledger.org/support). Some known issues:@@ -444,4 +452,4 @@ SEE ALSO hledger(1), hledger-ui(1), hledger-web(1), ledger(1) -hledger-ui-1.40 September 2024 HLEDGER-UI(1)+hledger-ui-1.41 October 2024 HLEDGER-UI(1)