hfmt: Haskell source code formatter

[ language, library, mit, program ] [ Propose Tags ]

Inspired by gofmt. Built using hlint, hindent, and stylish-haskell.

[Skip to Readme]
Versions [faq],,,,, 0.1.0, 0.1.1, 0.2.0, 0.2.1, 0.2.2,,
Dependencies ansi-wl-pprint, base (>=4.8 && <5), Cabal, Diff, directory, filepath, haskell-src-exts, hfmt, hindent (>=4.5), hlint (>=1.9.13 && <2), HUnit, optparse-applicative, pipes, pretty, stylish-haskell, text [details]
License MIT
Author Daniel Stiner
Maintainer Daniel Stiner <daniel.stiner@gmail.com>
Category Language
Home page http://github.com/danstiner/hfmt
Bug tracker http://github.com/danstiner/hfmt/issues
Source repo head: git clone git://github.com:danstiner/hfmt.git
Uploaded by danielstiner at Fri Feb 12 08:32:37 UTC 2016
Distributions NixOS:
Executables hfmt
Downloads 3649 total (188 in the last 30 days)
Rating 2.25 (votes: 2) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2016-02-12 [all 1 reports]




Maintainer's Corner

For package maintainers and hackage trustees

Readme for hfmt-

[back to package description]

hfmt Build Status

hfmt is a tool for formatting Haskell programs. Currently it is simply a gofmt style wrapper of the excellent tools hlint, hindent, and stylish-haskell.


$ cabal install hfmt


Check all Haskell source in the current directory: hfmt Overwrite any files with formatting changes: hfmt -w

Help text

λ hfmt --help hfmt - format Haskell programs Usage: hfmt.exe [-d|--print-diffs] [-s|--print-sources] [-l|--print-paths] [-w|--write-sources] [PATH] Operates on Haskell source files, reformatting them by applying suggestions from HLint, hindent, and stylish-haskell. Inspired by the gofmt utility. Available options: -h,--help Show this help text -d,--print-diffs If a file's formatting is different, print a diff. -s,--print-sources If a file's formatting is different, print its source. -l,--print-paths If a file's formatting is different, print its path. -w,--write-sources If a file's formatting is different, overwrite it. PATH Explicit paths to process. - A single '-' will process standard input. - Files will be processed directly. - Directories will be recursively searched for source files to process. - .cabal files will be parsed and all specified source directories and files processed. - If no paths are given, the current directory will be searched for .cabal files to process, if none are found the current directory will be recursively searched for source files to process.