diff options
author | SimonMichael <> | 2021-03-10 19:12:00 (GMT) |
---|---|---|
committer | hdiff <hdiff@hdiff.luite.com> | 2021-03-10 19:12:00 (GMT) |
commit | d68427886606ca9d0983310c96cf1f6d6d30a792 (patch) | |
tree | 57a3eac4611a3d3f7a3afcd28a60fc19dd791b5d | |
parent | 1e06346bee8eb03688beb9c5fd2dfc2ebe826af8 (diff) |
-rw-r--r-- | CHANGES.md | 15 | ||||
-rw-r--r-- | Hledger/UI/AccountsScreen.hs | 2 | ||||
-rw-r--r-- | Hledger/UI/Main.hs | 6 | ||||
-rw-r--r-- | Hledger/UI/RegisterScreen.hs | 17 | ||||
-rw-r--r-- | Hledger/UI/TransactionScreen.hs | 16 | ||||
-rw-r--r-- | Hledger/UI/UIState.hs | 16 | ||||
-rw-r--r-- | Hledger/UI/UIUtils.hs | 12 | ||||
-rw-r--r-- | hledger-ui.1 | 23 | ||||
-rw-r--r-- | hledger-ui.cabal | 10 | ||||
-rw-r--r-- | hledger-ui.info | 58 | ||||
-rw-r--r-- | hledger-ui.txt | 69 |
11 files changed, 136 insertions, 108 deletions
@@ -1,6 +1,21 @@ User-visible changes in hledger-ui. See also the hledger changelog. +# 1.21 2021-03-10 + +- Register screen: also show transactions below the depth limit, as in + 1.19, keeping the register balance in agreement with the balance + shown on the accounts screen. This regressed in 1.20. (#1468) + +- Transaction screen: all decimal places are now shown. On the + accounts screen and register screen we round amounts according to + commodity display styles, but when you drill down to a transaction + you probably want to see the unrounded amounts. (Like print, #cf + 931.) + +- New flags `--man` and `--info` open the man page or info manual. + (See hledger changelog) + # 1.20.4 2021-01-29 - ui: register: show all txns in/under an account at the depth limit (#1468). diff --git a/Hledger/UI/AccountsScreen.hs b/Hledger/UI/AccountsScreen.hs index a60821a..d1b958e 100644 --- a/Hledger/UI/AccountsScreen.hs +++ b/Hledger/UI/AccountsScreen.hs @@ -175,7 +175,7 @@ asDraw UIState{aopts=_uopts@UIOpts{cliopts_=copts@CliOpts{reportspec_=rspec}} <+> toggles <+> str (" account " ++ if ishistorical then "balances" else "changes") <+> borderPeriodStr (if ishistorical then "at end of" else "in") (period_ ropts) - <+> borderQueryStr (unwords . map (quoteIfNeeded . T.unpack) $ querystring_ ropts) + <+> borderQueryStr (T.unpack . T.unwords . map textQuoteIfNeeded $ querystring_ ropts) <+> borderDepthStr mdepth <+> str (" ("++curidx++"/"++totidx++")") <+> (if ignore_assertions_ $ inputopts_ copts diff --git a/Hledger/UI/Main.hs b/Hledger/UI/Main.hs index e7d9fcd..728c2fb 100644 --- a/Hledger/UI/Main.hs +++ b/Hledger/UI/Main.hs @@ -59,6 +59,8 @@ main = do case True of _ | "help" `inRawOpts` rawopts -> putStr (showModeUsage uimode) + _ | "info" `inRawOpts` rawopts -> runInfoForTopic "hledger-ui" Nothing + _ | "man" `inRawOpts` rawopts -> runManForTopic "hledger-ui" Nothing _ | "version" `inRawOpts` rawopts -> putStrLn prognameandversion _ | "binary-filename" `inRawOpts` rawopts -> putStrLn (binaryfilename progname) _ -> withJournalDo copts' (runBrickUi opts) @@ -141,8 +143,8 @@ runBrickUi uopts@UIOpts{cliopts_=copts@CliOpts{inputopts_=_iopts,reportspec_=rsp where acct = headDef (error' $ "--register "++apat++" did not match any account") -- PARTIAL: . filterAccts $ journalAccountNames j - filterAccts = case toRegexCI apat of - Right re -> filter (regexMatch re . T.unpack) + filterAccts = case toRegexCI $ T.pack apat of + Right re -> filter (regexMatchText re) Left _ -> const [] -- Initialising the accounts screen is awkward, requiring -- another temporary UIState value.. diff --git a/Hledger/UI/RegisterScreen.hs b/Hledger/UI/RegisterScreen.hs index 717862f..5f2d06a 100644 --- a/Hledger/UI/RegisterScreen.hs +++ b/Hledger/UI/RegisterScreen.hs @@ -14,7 +14,6 @@ where import Control.Monad import Control.Monad.IO.Class (liftIO) import Data.List -import Data.List.Split (splitOn) #if !(MIN_VERSION_base(4,11,0)) import Data.Monoid ((<>)) #endif @@ -89,7 +88,7 @@ rsInit d reset ui@UIState{aopts=_uopts@UIOpts{cliopts_=CliOpts{reportspec_=rspec ,Not generatedTransactionTag ] - (_label,items) = accountTransactionsReport rspec' j q thisacctq + items = accountTransactionsReport rspec' j q thisacctq items' = (if empty_ ropts then id else filter (not . mixedAmountLooksZero . fifth6)) $ -- without --empty, exclude no-change txns reverse -- most recent last items @@ -98,17 +97,17 @@ rsInit d reset ui@UIState{aopts=_uopts@UIOpts{cliopts_=CliOpts{reportspec_=rspec displayitems = map displayitem items' where displayitem (t, _, _issplit, otheracctsstr, change, bal) = - RegisterScreenItem{rsItemDate = showDate $ transactionRegisterDate q thisacctq t + RegisterScreenItem{rsItemDate = T.unpack . showDate $ transactionRegisterDate q thisacctq t ,rsItemStatus = tstatus t ,rsItemDescription = T.unpack $ tdescription t - ,rsItemOtherAccounts = case splitOn ", " otheracctsstr of - [s] -> s - ss -> intercalate ", " ss + ,rsItemOtherAccounts = T.unpack otheracctsstr -- _ -> "<split>" -- should do this if accounts field width < 30 - ,rsItemChangeAmount = showMixedOneLine showAmountWithoutPrice Nothing (Just 32) False change - ,rsItemBalanceAmount = showMixedOneLine showAmountWithoutPrice Nothing (Just 32) False bal + ,rsItemChangeAmount = showamt change + ,rsItemBalanceAmount = showamt bal ,rsItemTransaction = t } + where showamt = (\wb -> (wbUnpack wb, wbWidth wb)) + . showMixedAmountB oneLine{displayMaxWidth=Just 32} -- blank items are added to allow more control of scroll position; we won't allow movement over these. -- XXX Ugly. Changing to 0 helps when debugging. blankitems = replicate 100 -- "100 ought to be enough for anyone" @@ -213,7 +212,7 @@ rsDraw UIState{aopts=_uopts@UIOpts{cliopts_=copts@CliOpts{reportspec_=rspec}} <+> togglefilters <+> str " transactions" -- <+> str (if ishistorical then " historical total" else " period total") - <+> borderQueryStr (unwords . map (quoteIfNeeded . T.unpack) $ querystring_ ropts) + <+> borderQueryStr (T.unpack . T.unwords . map textQuoteIfNeeded $ querystring_ ropts) -- <+> str " and subs" <+> borderPeriodStr "in" (period_ ropts) <+> str " (" diff --git a/Hledger/UI/TransactionScreen.hs b/Hledger/UI/TransactionScreen.hs index c69bca6..09ff044 100644 --- a/Hledger/UI/TransactionScreen.hs +++ b/Hledger/UI/TransactionScreen.hs @@ -60,7 +60,7 @@ tsInit _ _ _ = error "init function called with wrong screen type, should not ha tsDraw :: UIState -> [Widget Name] tsDraw UIState{aopts=UIOpts{cliopts_=copts@CliOpts{reportspec_=rspec@ReportSpec{rsOpts=ropts}}} ,ajournal=j - ,aScreen=TransactionScreen{tsTransaction=(i,t) + ,aScreen=TransactionScreen{tsTransaction=(i,t') ,tsTransactions=nts ,tsAccount=acct } @@ -71,6 +71,8 @@ tsDraw UIState{aopts=UIOpts{cliopts_=copts@CliOpts{reportspec_=rspec@ReportSpec{ -- Minibuffer e -> [minibuffer e, maincontent] _ -> [maincontent] where + -- as with print, show amounts with all of their decimal places + t = transactionMapPostingAmounts amountSetFullPrecision t' maincontent = Widget Greedy Greedy $ do let prices = journalPriceOracle (infer_value_ ropts) j @@ -78,15 +80,11 @@ tsDraw UIState{aopts=UIOpts{cliopts_=copts@CliOpts{reportspec_=rspec@ReportSpec{ periodlast = fromMaybe (error' "TransactionScreen: expected a non-empty journal") $ -- PARTIAL: shouldn't happen reportPeriodOrJournalLastDay rspec j - mreportlast = reportPeriodLastDay rspec - multiperiod = interval_ ropts /= NoInterval - render $ defaultLayout toplabel bottomlabel $ str $ - showTransactionOneLineAmounts $ - (if valuationTypeIsCost ropts then transactionToCost (journalCommodityStyles j) else id) $ - (if valuationTypeIsDefaultValue ropts then (\t -> transactionApplyValuation prices styles periodlast mreportlast (rsToday rspec) multiperiod t (AtDefault Nothing)) else id) $ + render . defaultLayout toplabel bottomlabel . str + . T.unpack . showTransactionOneLineAmounts + $ transactionApplyCostValuation prices styles periodlast (rsToday rspec) (cost_ ropts) (value_ ropts) t -- (if real_ ropts then filterTransactionPostings (Real True) else id) -- filter postings by --real - t where toplabel = str "Transaction " @@ -212,7 +210,7 @@ regenerateTransactions rspec j s acct i ui = let q = filterQuery (not . queryIsDepth) $ rsQuery rspec thisacctq = Acct $ accountNameToAccountRegex acct -- includes subs - items = reverse $ snd $ accountTransactionsReport rspec j q thisacctq + items = reverse $ accountTransactionsReport rspec j q thisacctq ts = map first6 items numberedts = zip [1..] ts -- select the best current transaction from the new list diff --git a/Hledger/UI/UIState.hs b/Hledger/UI/UIState.hs index 7daf1d2..7e40a3d 100644 --- a/Hledger/UI/UIState.hs +++ b/Hledger/UI/UIState.hs @@ -113,7 +113,10 @@ clearCostValue ui@UIState{aopts=uopts@UIOpts{cliopts_=copts@CliOpts{reportspec_= -- | Toggle between showing the primary amounts or costs. toggleCost :: UIState -> UIState toggleCost ui@UIState{aopts=uopts@UIOpts{cliopts_=copts@CliOpts{reportspec_=rspec@ReportSpec{rsOpts=ropts}}}} = - ui{aopts=uopts{cliopts_=copts{reportspec_=rspec{rsOpts=ropts{value_ = valuationToggleCost $ value_ ropts}}}}} + ui{aopts=uopts{cliopts_=copts{reportspec_=rspec{rsOpts=ropts{cost_ = toggle $ cost_ ropts}}}}} + where + toggle Cost = NoCost + toggle NoCost = Cost -- | Toggle between showing primary amounts or default valuation. toggleValue :: UIState -> UIState @@ -121,15 +124,10 @@ toggleValue ui@UIState{aopts=uopts@UIOpts{cliopts_=copts@CliOpts{reportspec_=rsp ui{aopts=uopts{cliopts_=copts{reportspec_=rspec{rsOpts=ropts{ value_ = plog "toggling value mode to" $ valuationToggleValue $ value_ ropts}}}}} --- | Basic toggling of -B/cost, for hledger-ui. -valuationToggleCost :: Maybe ValuationType -> Maybe ValuationType -valuationToggleCost (Just (AtCost _)) = Nothing -valuationToggleCost _ = Just $ AtCost Nothing - -- | Basic toggling of -V, for hledger-ui. valuationToggleValue :: Maybe ValuationType -> Maybe ValuationType -valuationToggleValue (Just (AtDefault _)) = Nothing -valuationToggleValue _ = Just $ AtDefault Nothing +valuationToggleValue (Just (AtEnd _)) = Nothing +valuationToggleValue _ = Just $ AtEnd Nothing -- | Set hierarchic account tree mode. setTree :: UIState -> UIState @@ -308,7 +306,7 @@ showMinibuffer :: UIState -> UIState showMinibuffer ui = setMode (Minibuffer e) ui where e = applyEdit gotoEOL $ editor MinibufferEditor (Just 1) oldq - oldq = unwords . map (quoteIfNeeded . T.unpack) + oldq = T.unpack . T.unwords . map textQuoteIfNeeded . querystring_ . rsOpts . reportspec_ . cliopts_ $ aopts ui -- | Close the minibuffer, discarding any edit in progress. diff --git a/Hledger/UI/UIUtils.hs b/Hledger/UI/UIUtils.hs index edc3750..ad18084 100644 --- a/Hledger/UI/UIUtils.hs +++ b/Hledger/UI/UIUtils.hs @@ -35,16 +35,15 @@ import Brick.Widgets.Edit import Brick.Widgets.List (List, listSelectedL, listNameL, listItemHeightL) import Control.Monad.IO.Class import Data.List -import Data.Maybe #if !(MIN_VERSION_base(4,11,0)) import Data.Monoid #endif +import qualified Data.Text as T import Graphics.Vty (Event(..),Key(..),Modifier(..),Vty(..),Color,Attr,currentAttr,refresh -- ,Output(displayBounds,mkDisplayContext),DisplayContext(..) ) import Lens.Micro.Platform -import System.Environment import Hledger hiding (Color) import Hledger.Cli (CliOpts) @@ -165,12 +164,11 @@ helpDialog _copts = -- May invoke $PAGER, less, man or info, which is likely to fail on MS Windows, TODO. helpHandle :: UIState -> BrickEvent Name AppEvent -> EventM Name (Next UIState) helpHandle ui ev = do - pagerprog <- liftIO $ fromMaybe "less" <$> lookupEnv "PAGER" case ev of VtyEvent e | e `elem` closeHelpEvents -> continue $ setMode Normal ui - VtyEvent (EvKey (KChar 'p') []) -> suspendAndResume $ runPagerForTopic pagerprog "hledger-ui" >> return ui' - VtyEvent (EvKey (KChar 'm') []) -> suspendAndResume $ runManForTopic "hledger-ui" >> return ui' - VtyEvent (EvKey (KChar 'i') []) -> suspendAndResume $ runInfoForTopic "hledger-ui" >> return ui' + VtyEvent (EvKey (KChar 'p') []) -> suspendAndResume $ runPagerForTopic "hledger-ui" Nothing >> return ui' + VtyEvent (EvKey (KChar 'm') []) -> suspendAndResume $ runManForTopic "hledger-ui" Nothing >> return ui' + VtyEvent (EvKey (KChar 'i') []) -> suspendAndResume $ runInfoForTopic "hledger-ui" Nothing >> return ui' _ -> continue ui where ui' = setMode Normal ui @@ -192,7 +190,7 @@ borderDepthStr (Just d) = str " to depth " <+> withAttr ("border" <> "query") (s borderPeriodStr :: String -> Period -> Widget Name borderPeriodStr _ PeriodAll = str "" -borderPeriodStr preposition p = str (" "++preposition++" ") <+> withAttr ("border" <> "query") (str $ showPeriod p) +borderPeriodStr preposition p = str (" "++preposition++" ") <+> withAttr ("border" <> "query") (str . T.unpack $ showPeriod p) borderKeysStr :: [(String,String)] -> Widget Name borderKeysStr = borderKeysStr' . map (\(a,b) -> (a, str b)) diff --git a/hledger-ui.1 b/hledger-ui.1 index 396e1c7..a55cd5a 100644 --- a/hledger-ui.1 +++ b/hledger-ui.1 @@ -1,11 +1,13 @@ -.TH "HLEDGER-UI" "1" "December 2020" "hledger-ui-1.20.4 " "hledger User Manuals" +.TH "HLEDGER-UI" "1" "December 2020" "hledger-ui-1.21 " "hledger User Manuals" .SH NAME .PP -A terminal interface (TUI) for the hledger accounting tool. +hledger-ui is a terminal interface (TUI) for the hledger accounting +tool. +This manual is for hledger-ui 1.21. .SH SYNOPSIS .PP \f[C]hledger-ui [OPTIONS] [QUERYARGS]\f[R] @@ -153,8 +155,9 @@ convert amounts to their market value in commodity COMM \f[B]\f[CB]--value\f[B]\f[R] convert amounts to cost or market value, more flexibly than -B/-V/-X .TP -\f[B]\f[CB]--infer-value\f[B]\f[R] -with -V/-X/--value, also infer market prices from transactions +\f[B]\f[CB]--infer-market-prices\f[B]\f[R] +use transaction prices (recorded with \[at] or \[at]\[at]) as additional +market prices, as if they were P directives .TP \f[B]\f[CB]--auto\f[B]\f[R] apply automated posting rules to modify transactions. @@ -181,10 +184,16 @@ Some reporting options can also be written as query arguments. hledger help options: .TP \f[B]\f[CB]-h --help\f[B]\f[R] -show general usage (or after COMMAND, command usage) +show general or COMMAND help +.TP +\f[B]\f[CB]--man\f[B]\f[R] +show general or COMMAND user manual with man +.TP +\f[B]\f[CB]--info\f[B]\f[R] +show general or COMMAND user manual with info .TP \f[B]\f[CB]--version\f[B]\f[R] -show version +show general or ADDONCMD version .TP \f[B]\f[CB]--debug[=N]\f[B]\f[R] show debug output (levels 1-9, default: 1) @@ -505,5 +514,3 @@ Released under GNU GPL v3 or later. .SH SEE ALSO hledger(1), hledger\-ui(1), hledger\-web(1), ledger(1) - -hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_timedot(5) diff --git a/hledger-ui.cabal b/hledger-ui.cabal index 086ce6e..3b40ef0 100644 --- a/hledger-ui.cabal +++ b/hledger-ui.cabal @@ -4,10 +4,10 @@ cabal-version: 1.12 -- -- see: https://github.com/sol/hpack -- --- hash: e38b4cf2e33e7075fb10addabdfa2af47686be042e965677b9dd26abcfbac53c +-- hash: d46e4712160e17959b23d613872b2441b0138dcb5a455b7403dcef42e41b695c name: hledger-ui -version: 1.20.4 +version: 1.21 synopsis: Curses-style terminal interface for the hledger accounting system description: A simple curses-style terminal user interface for the hledger accounting system. It can be a more convenient way to browse your accounts than the CLI. @@ -64,7 +64,7 @@ executable hledger-ui hs-source-dirs: ./. ghc-options: -Wall -fno-warn-unused-do-bind -fno-warn-name-shadowing -fno-warn-missing-signatures -fno-warn-type-defaults -fno-warn-orphans - cpp-options: -DVERSION="1.20.4" + cpp-options: -DVERSION="1.21" build-depends: ansi-terminal >=0.9 , async @@ -78,8 +78,8 @@ executable hledger-ui , extra >=1.6.3 , filepath , fsnotify >=0.2.1.2 && <0.4 - , hledger >=1.20.4 && <1.21 - , hledger-lib >=1.20.4 && <1.21 + , hledger >=1.21 && <1.22 + , hledger-lib >=1.21 && <1.22 , megaparsec >=7.0.0 && <9.1 , microlens >=0.4 , microlens-platform >=0.2.3.1 diff --git a/hledger-ui.info b/hledger-ui.info index e9ed098..6bea62a 100644 --- a/hledger-ui.info +++ b/hledger-ui.info @@ -7,7 +7,8 @@ File: hledger-ui.info, Node: Top, Up: (dir) hledger-ui(1) ************* -A terminal interface (TUI) for the hledger accounting tool. +hledger-ui is a terminal interface (TUI) for the hledger accounting +tool. This manual is for hledger-ui 1.21. `hledger-ui [OPTIONS] [QUERYARGS]' `hledger ui -- [OPTIONS] [QUERYARGS]' @@ -167,8 +168,9 @@ the data. convert amounts to cost or market value, more flexibly than -B/-V/-X -`--infer-value' - with -V/-X/-value, also infer market prices from transactions +`--infer-market-prices' + use transaction prices (recorded with @ or @@) as additional market + prices, as if they were P directives `--auto' apply automated posting rules to modify transactions. @@ -193,10 +195,16 @@ the last one takes precedence. hledger help options: `-h --help' - show general usage (or after COMMAND, command usage) + show general or COMMAND help + +`--man' + show general or COMMAND user manual with man + +`--info' + show general or COMMAND user manual with info `--version' - show version + show general or ADDONCMD version `--debug[=N]' show debug output (levels 1-9, default: 1) @@ -519,25 +527,25 @@ program is restarted. Tag Table: Node: Top82 -Node: OPTIONS1425 -Ref: #options1522 -Node: KEYS5583 -Ref: #keys5678 -Node: SCREENS9974 -Ref: #screens10079 -Node: Accounts screen10169 -Ref: #accounts-screen10297 -Node: Register screen12501 -Ref: #register-screen12656 -Node: Transaction screen14651 -Ref: #transaction-screen14809 -Node: Error screen15676 -Ref: #error-screen15798 -Node: ENVIRONMENT16040 -Ref: #environment16154 -Node: FILES16959 -Ref: #files17058 -Node: BUGS17271 -Ref: #bugs17348 +Node: OPTIONS1475 +Ref: #options1572 +Node: KEYS5805 +Ref: #keys5900 +Node: SCREENS10196 +Ref: #screens10301 +Node: Accounts screen10391 +Ref: #accounts-screen10519 +Node: Register screen12723 +Ref: #register-screen12878 +Node: Transaction screen14873 +Ref: #transaction-screen15031 +Node: Error screen15898 +Ref: #error-screen16020 +Node: ENVIRONMENT16262 +Ref: #environment16376 +Node: FILES17181 +Ref: #files17280 +Node: BUGS17493 +Ref: #bugs17570 End Tag Table diff --git a/hledger-ui.txt b/hledger-ui.txt index 82c5ba3..ac88077 100644 --- a/hledger-ui.txt +++ b/hledger-ui.txt @@ -4,40 +4,41 @@ HLEDGER-UI(1) hledger User Manuals HLEDGER-UI(1) NAME - A terminal interface (TUI) for the hledger accounting tool. + hledger-ui is a terminal interface (TUI) for the hledger accounting + tool. This manual is for hledger-ui 1.21. SYNOPSIS hledger-ui [OPTIONS] [QUERYARGS] hledger ui -- [OPTIONS] [QUERYARGS] DESCRIPTION - hledger is a reliable, cross-platform set of programs for tracking - money, time, or any other commodity, using double-entry accounting and - a simple, editable file format. hledger is inspired by and largely + hledger is a reliable, cross-platform set of programs for tracking + money, time, or any other commodity, using double-entry accounting and + a simple, editable file format. hledger is inspired by and largely compatible with ledger(1). - hledger-ui is hledger's terminal interface, providing an efficient - full-window text UI for viewing accounts and transactions, and some - limited data entry capability. It is easier than hledger's command- - line interface, and sometimes quicker and more convenient than the web + hledger-ui is hledger's terminal interface, providing an efficient + full-window text UI for viewing accounts and transactions, and some + limited data entry capability. It is easier than hledger's command- + line interface, and sometimes quicker and more convenient than the web interface. - Like hledger, it reads data from one or more files in hledger journal, - timeclock, timedot, or CSV format specified with -f, or $LEDGER_FILE, - or $HOME/.hledger.journal (on windows, perhaps - C:/Users/USER/.hledger.journal). For more about this see hledger(1), + Like hledger, it reads data from one or more files in hledger journal, + timeclock, timedot, or CSV format specified with -f, or $LEDGER_FILE, + or $HOME/.hledger.journal (on windows, perhaps + C:/Users/USER/.hledger.journal). For more about this see hledger(1), hledger_journal(5) etc. - Unlike hledger, hledger-ui hides all future-dated transactions by - default. They can be revealed, along with any rule-generated periodic - transactions, by pressing the F key (or starting with --forecast) to + Unlike hledger, hledger-ui hides all future-dated transactions by + default. They can be revealed, along with any rule-generated periodic + transactions, by pressing the F key (or starting with --forecast) to enable "forecast mode". OPTIONS - Note: if invoking hledger-ui as a hledger subcommand, write -- before + Note: if invoking hledger-ui as a hledger subcommand, write -- before options as shown above. - Any QUERYARGS are interpreted as a hledger search query which filters + Any QUERYARGS are interpreted as a hledger search query which filters the data. --watch @@ -50,7 +51,7 @@ OPTIONS start in the (first) matched account's register screen --change - show period balances (changes) at startup instead of historical + show period balances (changes) at startup instead of historical balances -l --flat @@ -66,7 +67,7 @@ OPTIONS $LEDGER_FILE or $HOME/.hledger.journal) --rules-file=RULESFILE - Conversion rules file to use when reading CSV (default: + Conversion rules file to use when reading CSV (default: FILE.rules) --separator=CHAR @@ -85,7 +86,7 @@ OPTIONS assignments) -s --strict - do extra error checking (check that all posted accounts are + do extra error checking (check that all posted accounts are declared) hledger reporting options: @@ -112,11 +113,11 @@ OPTIONS multiperiod/multicolumn report by year -p --period=PERIODEXP - set start date, end date, and/or reporting interval all at once + set start date, end date, and/or reporting interval all at once using period expressions syntax --date2 - match the secondary date instead (see command help for other + match the secondary date instead (see command help for other effects) -U --unmarked @@ -135,25 +136,26 @@ OPTIONS hide/aggregate accounts or postings more than NUM levels deep -E --empty - show items with zero amount, normally hidden (and vice-versa in + show items with zero amount, normally hidden (and vice-versa in hledger-ui/hledger-web) -B --cost convert amounts to their cost/selling amount at transaction time -V --market - convert amounts to their market value in default valuation com- + convert amounts to their market value in default valuation com- modities -X --exchange=COMM convert amounts to their market value in commodity COMM --value - convert amounts to cost or market value, more flexibly than + convert amounts to cost or market value, more flexibly than -B/-V/-X - --infer-value - with -V/-X/--value, also infer market prices from transactions + --infer-market-prices + use transaction prices (recorded with @ or @@) as additional + market prices, as if they were P directives --auto apply automated posting rules to modify transactions. @@ -177,10 +179,14 @@ OPTIONS hledger help options: -h --help - show general usage (or after COMMAND, command usage) + show general or COMMAND help + + --man show general or COMMAND user manual with man + + --info show general or COMMAND user manual with info --version - show version + show general or ADDONCMD version --debug[=N] show debug output (levels 1-9, default: 1) @@ -455,9 +461,6 @@ COPYRIGHT SEE ALSO hledger(1), hledger-ui(1), hledger-web(1), ledger(1) - hledger_journal(5), hledger_csv(5), hledger_timeclock(5), hledger_time- - dot(5) - -hledger-ui-1.20.4 December 2020 HLEDGER-UI(1) +hledger-ui-1.21 December 2020 HLEDGER-UI(1) |