payees: Add a module for handling payees command
This commit is contained in:
parent
a45b42bed5
commit
e6b709cb01
@ -32,6 +32,7 @@ module Hledger.Cli.Commands (
|
||||
,module Hledger.Cli.Commands.Help
|
||||
,module Hledger.Cli.Commands.Import
|
||||
,module Hledger.Cli.Commands.Incomestatement
|
||||
,module Hledger.Cli.Commands.Payees
|
||||
,module Hledger.Cli.Commands.Prices
|
||||
,module Hledger.Cli.Commands.Print
|
||||
,module Hledger.Cli.Commands.Printunique
|
||||
@ -75,6 +76,7 @@ import Hledger.Cli.Commands.Files
|
||||
import Hledger.Cli.Commands.Help
|
||||
import Hledger.Cli.Commands.Import
|
||||
import Hledger.Cli.Commands.Incomestatement
|
||||
import Hledger.Cli.Commands.Payees
|
||||
import Hledger.Cli.Commands.Prices
|
||||
import Hledger.Cli.Commands.Print
|
||||
import Hledger.Cli.Commands.Printunique
|
||||
@ -107,6 +109,7 @@ builtinCommands = [
|
||||
,(filesmode , files)
|
||||
,(diffmode , diff)
|
||||
,(incomestatementmode , incomestatement)
|
||||
,(payeesmode , payees)
|
||||
,(pricesmode , prices)
|
||||
,(printmode , print')
|
||||
,(printuniquemode , printunique)
|
||||
@ -173,6 +176,7 @@ commandsList = unlines [
|
||||
," balance (b, bal) show balance changes/end balances/budgets in accounts"
|
||||
," commodities show commodity/currency symbols"
|
||||
," files show input file paths"
|
||||
," payees show payees"
|
||||
," prices show market price records"
|
||||
," print (p, txns) show transactions (journal entries)"
|
||||
," print-unique show only transactions with unique descriptions"
|
||||
|
||||
47
hledger/Hledger/Cli/Commands/Payees.hs
Normal file
47
hledger/Hledger/Cli/Commands/Payees.hs
Normal file
@ -0,0 +1,47 @@
|
||||
{-|
|
||||
|
||||
The @payees@ command lists payees:
|
||||
|
||||
- with the notes option the note field is included along with payees
|
||||
|
||||
-}
|
||||
|
||||
{-# LANGUAGE MultiWayIf #-}
|
||||
{-# LANGUAGE OverloadedStrings #-}
|
||||
{-# LANGUAGE ScopedTypeVariables #-}
|
||||
{-# LANGUAGE TemplateHaskell #-}
|
||||
{-# LANGUAGE CPP #-}
|
||||
|
||||
module Hledger.Cli.Commands.Payees (
|
||||
payeesmode
|
||||
,payees
|
||||
) where
|
||||
|
||||
#if !(MIN_VERSION_base(4,11,0))
|
||||
import Data.Monoid
|
||||
#endif
|
||||
import Data.List
|
||||
import qualified Data.Text as T
|
||||
import qualified Data.Text.IO as T
|
||||
import System.Console.CmdArgs.Explicit as C
|
||||
|
||||
import Hledger
|
||||
import Hledger.Cli.CliOptions
|
||||
|
||||
|
||||
-- | Command line options for this command.
|
||||
payeesmode = hledgerCommandMode
|
||||
$(embedFileRelative "Hledger/Cli/Commands/Payees.txt")
|
||||
[flagNone ["notes"] (setboolopt "notes") "include note field with payees"
|
||||
]
|
||||
[generalflagsgroup1]
|
||||
hiddenflags
|
||||
([], Just $ argsFlag "[QUERY]")
|
||||
|
||||
-- | The payees command.
|
||||
payees :: CliOpts -> Journal -> IO ()
|
||||
payees CliOpts{rawopts_=rawopts, reportopts_=ropts} j = do
|
||||
let notes = notes_ ropts
|
||||
payees = []
|
||||
|
||||
mapM_ (T.putStrLn . render) payees
|
||||
15
hledger/Hledger/Cli/Commands/Payees.md
Normal file
15
hledger/Hledger/Cli/Commands/Payees.md
Normal file
@ -0,0 +1,15 @@
|
||||
payees
|
||||
Show payee names.
|
||||
|
||||
_FLAGS_
|
||||
|
||||
This command lists all payee names that appear in transactions. With the optional notes directive (`--notes`) it will include the note field along with the base payee name.
|
||||
|
||||
Examples:
|
||||
|
||||
```shell
|
||||
$ hledger payees
|
||||
Store Name
|
||||
Gas Station
|
||||
Person A
|
||||
```
|
||||
15
hledger/Hledger/Cli/Commands/Payees.txt
Normal file
15
hledger/Hledger/Cli/Commands/Payees.txt
Normal file
@ -0,0 +1,15 @@
|
||||
payees
|
||||
Show payee names.
|
||||
|
||||
_FLAGS_
|
||||
|
||||
This command lists all payee names that appear in transactions. With the
|
||||
optional notes directive (--notes) it will include the note field along
|
||||
with the base payee name.
|
||||
|
||||
Examples:
|
||||
|
||||
$ hledger payees
|
||||
Store Name
|
||||
Gas Station
|
||||
Person A
|
||||
@ -77,6 +77,7 @@ extra-source-files:
|
||||
Hledger/Cli/Commands/Help.txt
|
||||
Hledger/Cli/Commands/Import.txt
|
||||
Hledger/Cli/Commands/Incomestatement.txt
|
||||
Hledger/Cli/Commands/Payees.txt
|
||||
Hledger/Cli/Commands/Prices.txt
|
||||
Hledger/Cli/Commands/Print.txt
|
||||
Hledger/Cli/Commands/Printunique.txt
|
||||
@ -127,6 +128,7 @@ library
|
||||
Hledger.Cli.Commands.Files
|
||||
Hledger.Cli.Commands.Import
|
||||
Hledger.Cli.Commands.Incomestatement
|
||||
Hledger.Cli.Commands.Payees
|
||||
Hledger.Cli.Commands.Prices
|
||||
Hledger.Cli.Commands.Print
|
||||
Hledger.Cli.Commands.Printunique
|
||||
|
||||
@ -70,6 +70,7 @@ extra-source-files:
|
||||
- Hledger/Cli/Commands/Help.txt
|
||||
- Hledger/Cli/Commands/Import.txt
|
||||
- Hledger/Cli/Commands/Incomestatement.txt
|
||||
- Hledger/Cli/Commands/Payees.txt
|
||||
- Hledger/Cli/Commands/Prices.txt
|
||||
- Hledger/Cli/Commands/Print.txt
|
||||
- Hledger/Cli/Commands/Printunique.txt
|
||||
@ -172,6 +173,7 @@ library:
|
||||
- Hledger.Cli.Commands.Files
|
||||
- Hledger.Cli.Commands.Import
|
||||
- Hledger.Cli.Commands.Incomestatement
|
||||
- Hledger.Cli.Commands.Payees
|
||||
- Hledger.Cli.Commands.Prices
|
||||
- Hledger.Cli.Commands.Print
|
||||
- Hledger.Cli.Commands.Printunique
|
||||
|
||||
Loading…
Reference in New Issue
Block a user