{- | Module : Highlight.Highlight Copyright : Dennis Gosnell 2017 License : BSD3 Maintainer : Dennis Gosnell (cdep.illabout@gmail.com) Stability : experimental Portability : unknown This module contains the 'defaultMain' function for the @highlight@ program. -} module Highlight.Highlight where import Data.Monoid ((<>)) import Options.Applicative (InfoMod, ParserInfo, (<**>), execParser, fullDesc, helper, info, progDesc) import Highlight.Highlight.Options (Options, optionsParser) import Highlight.Highlight.Run (run) defaultMain :: IO () defaultMain = do options <- execParser parserInfo run options where parserInfo :: ParserInfo Options parserInfo = info (optionsParser <**> helper) infoMod infoMod :: InfoMod a infoMod = fullDesc <> progDesc "Highlight PATTERN in a each FILE or standard input"