hs-tags: Create tag files (ctags and etags) for Haskell code.

[ development, mit, program ] [ Propose Tags ]

Executable to generate a tags (ctags) or TAGS (etags) file for a bunch of Haskell files. These files are used by editors (e.g. TAGS by Emacs) to implement jump-to-definition (e.g. M-. in Emacs).


[Skip to Readme]
Versions [faq] 0.1.5
Change log CHANGELOG.md
Dependencies base (>=4.9.0.0 && <4.16), Cabal (>=1.24.0.0 && <3.5), containers (>=0.5.7.1 && <0.7), directory (>=1.2.6.2 && <1.4), filepath (>=1.4.1.0 && <1.5), ghc (>=8.0.2 && <9.1), mtl (>=2.2.1 && <2.3), process (>=1.4.2.0 && <1.7), strict (>=0.3.2 && <0.5) [details]
License MIT
Copyright (c) 2005-2021 The Agda Team.
Author Ulf Norell, Nils Anders Danielsson, Andrés Sicard-Ramírez, Andreas Abel, Francesco Mazzoli, Paolo G. Giarrusso
Maintainer Andreas Abel <andreas.abel@gu.se>
Category Development
Bug tracker https://github.com/agda/hs-tags/issues
Source repo head: git clone https://github.com/agda/hs-tags.git
this: git clone https://github.com/agda/hs-tags.git(tag v0.1.5)
Uploaded by AndreasAbel at 2021-03-16T07:20:37Z
Distributions NixOS:0.1.5, Stackage:0.1.5
Executables hs-tags
Downloads 34 total (2 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
Last success reported on 2021-03-16 [all 2 reports]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for hs-tags-0.1.5

[back to package description]

hs-tags - Generate tags for Haskell code

Generate tags (ctags) or TAGS (etags) file for a bunch of Haskell files. These files are used by editors (e.g. TAGS by Emacs) to implement jump-to-definition (e.g. M-. in Emacs).

In contrast to hasktags, hs-tags uses the GHC Haskell parser to read the Haskell files and find definition sites.

Example use:

find src -name "*.*hs" | xargs \
  hs-tags --cabal Foo.cabal -i dist/build/autogen/cabal_macros.h -e

Creates Emacs TAGS from Haskell files residing in folder src/ of the project as defined in Foo.cabal, using preprocessor definitions from dist/build/autogen/cabal_macros.h.

Command line reference:

hs-tags
                --help              Show help.
  -c[FILE]      --ctags[=FILE]      Generate ctags (default file=tags)
  -e[FILE]      --etags[=FILE]      Generate etags (default file=TAGS)
  -i FILE       --include=FILE      File to #include
  -I DIRECTORY                      Directory in the include path
                --cabal=CABAL FILE  Cabal configuration to load additional
                                    language options from
                                    (library options are used)

Some related projects: