hasktags: Produces ctags "tags" and etags "TAGS" files for Haskell programs

[ bsd3, development, library, program ] [ Propose Tags ]

Produces ctags "tags" and etags TAGS files for Haskell programs.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.67, 0.68, 0.68.1, 0.68.2, 0.68.3, 0.68.4, 0.68.5, 0.68.6, 0.68.7, 0.69.0, 0.69.1, 0.69.2, 0.69.2.1, 0.69.3, 0.69.4, 0.69.5, 0.70.0, 0.70.1, 0.71.0, 0.71.1, 0.71.2, 0.72.0, 0.73.0 (info)
Dependencies base (<6), bytestring, directory, filepath [details]
License BSD-3-Clause
Copyright The University Court of the University of Glasgow
Author The GHC Team
Maintainer Marc Weber <marco-oweber@gmx.de>
Category Development
Uploaded by MarcWeber at 2012-01-02T01:30:36Z
Distributions Arch:0.73.0, Debian:0.71.2, FreeBSD:0.69.1, LTSHaskell:0.73.0, NixOS:0.73.0, Stackage:0.73.0
Reverse Dependencies 2 direct, 0 indirect [details]
Executables hasktags
Downloads 29680 total (151 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
Last success reported on 2016-12-26 [all 7 reports]

Readme for hasktags-0.68.2

[back to package description]
hasktags: a tool to generate tag files for vim and emacs

  What is it for? A tag file is a index containing key items of your project such as
  - function names
  - module names
  - data declarations
  - ...

  so that you can find / jump to them fast.

HOWTO (GENERATING TAG FILES):
  ghc --make hasktags.hs

  I've been using this bash function or something similar for a long time.
  It may be cumbersome but works:

  runHaskTagsVim() {
          # use --etags instead of --ctags for emacs
          hasktags --ignore-close-implementation --ctags .; sort tags
  }

HOWTO (USING TAG FILES):
  VIM: let tags+=tagifle " tags,TAGS is the default setting so probably you don't have to do anything
       :tjump foo<tab> or such. See :h tags
  
  NEdit:
	Load the "tags" file using File/Load Tags File.
	Use "Ctrl-D" to search for a tag.

  XEmacs/Emacs:
	Load the "TAGS" file using "visit-tags-table"
	Use "M-." to search for a tag.

  jedit:
        There is a plugin
	


run test cases:
  cd testcases; sh test.sh


history:
In the past this tool was distributed with ghc. I forked and added some
features.  hasktags itself was moved out of the ghc repository. Then I only
verified that my fork finds at least as much tags as the one forked by Igloo.


related work (list taken from announce of lushtags:
  https://github.com/bitc/lushtags
  http://hackage.haskell.org/package/hasktags
  http://kingfisher.nfshost.com/sw/gasbag/
  http://hackage.haskell.org/package/hothasktags
  http://majutsushi.github.com/tagbar/
and probably much more