# ttags ttags generates ctags using [Tree-sitter](https://github.com/tree-sitter/tree-sitter). ### Installation ##### macOS and Linux ```bash cargo install ttags ``` Binaries are also available on the releases page of the repo. Download the tar file, and place the executable in your path. ##### From source ```bash git clone https://github.com/npezza93/ttags cd ttags cargo build --release ./target/release/ttags $(git ls-files) ``` ### Usage Give a list of file paths and/or directories to ttags to parse and generate. ```bash ttags $(git ls-files) ``` #### Options - `-a` or `--apend` - Will keep your tag file in tact and only update the tags for the files passed. - `-r` or `--tag-relative` - Make paths outputed in the tags file be relative to the current working directory (i.e. where you called `ttags`)? By default, the tag path is relative to the `tag-file` location. - `-f` or `--tag-file=file` - Path to the file where tags should be written. If `-` is passed, tags are outputted to stdout. - `lsp` - Starts an LSP server that updates the tags for a file when the file is saved ### Supported languages - [x] Haskell - [x] JavaScript - [x] Nix - [x] Ruby - [x] Rust - [x] Swift