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

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

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


[Skip to Readme]

Properties

Versions 0.1.5, 0.1.5.1, 0.1.5.2, 0.1.5.3, 0.1.5.3
Change log CHANGELOG.md
Dependencies base (>=4.9.0.0 && <4.16), Cabal (>=1.24.0.0 && <3.7), 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), ghc-paths (>=0.1.0.12 && <0.2), 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-2022 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.3)
Uploaded by AndreasAbel at 2022-01-10T10:43:31Z

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for hs-tags-0.1.5.3

[back to package description]

Hackage version Hackage CI hs-tags on Stackage Nightly Stackage LTS version Cabal build

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: