yi-0.11.0: The Haskell-Scriptable Editor

Portabilityportable
Stabilityexperimental
Maintaineryi-devel@googlegroups.com
Safe HaskellNone

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 TagTableSource

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 -> TextSource

Extends the string to the longest certain length

newtype Tag Source

Constructors

Tag 

Fields

_unTag :: Text
 

Instances

Eq Tag 
Ord Tag 
Show Tag 
Binary Tag 

mkTag :: String -> TagSource

Helper

unTag' :: Tag -> StringSource

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

Instances

Typeable TagTable 
Binary TagTable 

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