| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
Navi.Config
Contents
Description
This modules provides functionality for parsing configuration data from a toml file.
Synopsis
- readConfig :: (HasCallStack, MonadFileReader m, MonadIORef m, MonadThrow m) => OsPath -> m Config
- data ConfigErr
- data Config = MkConfig {}
- data Logging = MkLogging {}
- data LogLoc
- data NoteSystem (p :: ConfigPhase)
- = AppleScript
- | DBus (DBusF p)
- | NotifySend
Config
readConfig :: (HasCallStack, MonadFileReader m, MonadIORef m, MonadThrow m) => OsPath -> m Config Source #
ConfigErr represents the errors we can encounter when attempting to
parse a config file.
Constructors
| FileErr SomeException | |
| TomlError TOMLError | |
| NoEvents |
Instances
| Exception ConfigErr Source # | |
Defined in Navi.Config.Types Methods toException :: ConfigErr -> SomeException # fromException :: SomeException -> Maybe ConfigErr # displayException :: ConfigErr -> String # backtraceDesired :: ConfigErr -> Bool # | |
| Show ConfigErr Source # | |
Config holds the data from ConfigToml once it has been processed
(e.g., all user defined Events are parsed).
Constructors
| MkConfig | |
Fields
| |
Instances
| Show Config Source # | |
| (k ~ A_Lens, a ~ NonEmpty AnyEvent, b ~ NonEmpty AnyEvent) => LabelOptic "events" k Config Config a b Source # | |
Defined in Navi.Config.Types | |
| (k ~ A_Lens, a ~ Logging, b ~ Logging) => LabelOptic "logging" k Config Config a b Source # | |
Defined in Navi.Config.Types | |
| (k ~ A_Lens, a ~ NoteSystem 'ConfigPhaseToml, b ~ NoteSystem 'ConfigPhaseToml) => LabelOptic "noteSystem" k Config Config a b Source # | |
Defined in Navi.Config.Types | |
Logging
Logging configuration.
Constructors
| MkLogging | |
Instances
| Show Logging Source # | |
| Eq Logging Source # | |
| (k ~ A_Lens, a ~ Maybe LogLoc, b ~ Maybe LogLoc) => LabelOptic "location" k Logging Logging a b Source # | |
Defined in Navi.Config.Types | |
| (k ~ A_Lens, a ~ Maybe LogLevel, b ~ Maybe LogLevel) => LabelOptic "severity" k Logging Logging a b Source # | |
Defined in Navi.Config.Types | |
| (k ~ A_Lens, a ~ Maybe FilesSizeMode, b ~ Maybe FilesSizeMode) => LabelOptic "sizeMode" k Logging Logging a b Source # | |
Defined in Navi.Config.Types | |
Log location configuration.
Note System
data NoteSystem (p :: ConfigPhase) Source #
Configuration for notification systems.
Constructors
| AppleScript | For use with osx. |
| DBus (DBusF p) | For use with a running notification server that receives messages via DBus. |
| NotifySend | For use with the notify-send tool. |
Instances
| Show (NoteSystem 'ConfigPhaseToml) Source # | |
Defined in Navi.Config.Types Methods showsPrec :: Int -> NoteSystem 'ConfigPhaseToml -> ShowS # show :: NoteSystem 'ConfigPhaseToml -> String # showList :: [NoteSystem 'ConfigPhaseToml] -> ShowS # | |
| Eq (NoteSystem 'ConfigPhaseToml) Source # | |
Defined in Navi.Config.Types Methods (==) :: NoteSystem 'ConfigPhaseToml -> NoteSystem 'ConfigPhaseToml -> Bool # (/=) :: NoteSystem 'ConfigPhaseToml -> NoteSystem 'ConfigPhaseToml -> Bool # | |