Skip to content

Releases: universal-ctags/ctags

Universal Ctags 6.2.0

01 Jun 05:50
Compare
Choose a tag to compare

This page lists only the most significant changes as remembered. Use
git-log to review changes not enumerated here, especially in language
parsers.

New and extended options and their flags

--list-output-formats option

See :ref:option_listing in :ref:ctags(1) <ctags(1)>.

nulltag/z extra

Universal Ctags now supports tags (null tags) having empty strings as their names.
See :ref:extras in :ref:ctags(1) <ctags(1)>.

NOTE:

  • libreadtags and readtags do not support the null tags yet.
  • Only json and xref output formats support the null tags.

Incompatible changes

  • [readtags] make -Q,--filter not work on ptags when -P,--with-pseudo-tags is specified together

    With this version, -Q,--filter option doesn't affect the pseudo tags listed
    with -P,--with-pseudo-tags option. -Q,--filter option specified wth
    -P,--with-pseudo-tags option affect only regular tags.

    To extract speicifed pseudo tags, use -Q,--filter option with
    -D,--list-pseudo action.

Parser related changes

#4026
Integrate pegof <https://github.com/dolik-rce/pegof>_ to our build process.

New parsers

The following parsers have been added:

  • SELinuxIntefae M4 based subparser

  • SELinuxTypeEnforcement optlib

  • PythonEntryPoints subparser

  • Scdoc optlib

  • JNI subparser

  • TypeSpec parser

    • TypeSpec by Kaisheng Xu Β· Pull Request #4243

NOTE: We added a TOML as a new parser in this version. However,
after adding it, we learned its implementation didn't work
entirely. So we deleted the TOML parser, and Cargo subparser
runs on the TOML parser from this "New parsers" list.
See TOML: infinite loop <https://github.com/universal-ctags/ctags/issues/4096>__
about how it doesn't work.

Changes about parser specific kinds, roles, fields, and extras

  • C++

    • New kinds module and partition
    • New roles imported and exported for header kind
  • Clojure

    • New kind unknown
    • New field definer
  • EmacsLisp

    • New field definer
  • LEX

    • New role grouping for cond kind
  • Lisp

    • New kinds class, generic, method, parameter, struct, and type
  • Make

    • New extra CppDef
  • Meson

    • New kinds cfgdata and cfgvar
  • PowerShell

    • New kind enumlabel
  • Python

    • New role entryPoint for module and function kinds

      PythonEntryPoints parser emits tag entries having this role.

  • Scheme

    • New kind unknown
    • New field definer
  • SCSS

    • New kind module
    • New role used for the module kind
    • New kind namespace
    • New field module
  • SQL

    • New kind local
  • Vim

    • New kind heredoc
    • New kind class

Readtags

  • make formatter work with -D,--list-pseudo-tags option

    An example extracting the value of !_TAG_PROC_CWD:

	 $ ./readtags -t podman.tags -Q '(#/.*CWD.*/ $name)' -F '(list $input #t)' -D
	 /home/yamato/var/ctags-github/
  • make -Q,--filter not work on ptags when -P,--with-pseudo-tags is specified together

What's Changed

Read more

Universal Ctags 6.1.0

28 Dec 15:52
Compare
Choose a tag to compare

What's Changed

Read more

Universal Ctags 6.0.0

15 Dec 18:01
3af4135
Compare
Choose a tag to compare

New Contributors (Generated by Git Hub)

Full Changelog: https://github.com/universal-ctags/ctags/commits/v6.0.0