yi-0.12.2: The Haskell-Scriptable Editor

LicenseGPL-2
Maintaineryi-devel@googlegroups.com
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010
Extensions
  • Cpp
  • TemplateHaskell
  • OverloadedStrings
  • DeriveDataTypeable
  • DeriveGeneric
  • FlexibleContexts
  • NondecreasingIndentation

Yi.Tag

Description

A module for CTags integration. Note that this reads the ‘tags’ file produced by hasktags, not the ‘TAGS’ file which uses a different format (etags).

Synopsis

Documentation

lookupTag :: Tag -> TagTable -> [(FilePath, Int)] Source

Find the location of a tag using the tag table. Returns a full path and line number

importTagTable :: FilePath -> IO TagTable Source

Read in a tag file from the system

hintTags :: TagTable -> Text -> [Text] Source

Gives all the possible expanded tags that could match a given prefix

completeTag :: TagTable -> Text -> Text Source

Extends the string to the longest certain length

newtype Tag Source

Constructors

Tag 

Fields

_unTag :: Text
 

Instances

data TagTable Source

Constructors

TagTable 

Fields

tagFileName :: FilePath

local name of the tag file TODO: reload if this file is changed

tagBaseDir :: FilePath

path to the tag file directory tags are relative to this path

tagFileMap :: Map Tag [(FilePath, Int)]

map from tags to files

tagTrie :: Trie

trie to speed up tag hinting

getTags :: EditorM (Maybe TagTable) Source

Get the currently registered tag table

setTags :: TagTable -> EditorM () Source

Set a new TagTable

resetTags :: EditorM () Source

Reset the TagTable