Skip to content

maxnordlund/codebase

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reference codebase for Universal-ctags

This is the reference codebase for measuring the performance of Universal-ctags parsers.

How to run ctags for the code base

We assume you may have enough storage space on your PC.

  1. Get the input code for a parser for the language you are interested in with following command line:

    $ ./codebase clone <LANGUAGE>

    The following command lists available languages :

    $ ./codebase list-languages
    #           LANGUAGE    CODE
                       C    linux
                     C++    qtbase rocksdb
                      Go    buildah kubernetes
                    HTML    cockpit
              JavaScript    cockpit
                LdScript    linux
              ObjectiveC    gnustep-libs-base
  2. Run Universal-ctags for the cloned code with following command line:

    $ [CTAGS=${where your ctags executable is}] ./codebase ctags <LANGUAGE> [<PROFILE>]

    codebase refers CTAGS environment variable to run ctags.

    You can run ctags with different option combination. We call such option combination PROFILE. The following command is for listing pre defined profiles:

    $ ./codebase list-profiles
    
            PROFILE         DESCRIPTION
            maximum0        Enables all extras, fields, and kinds
            minimum0        Disables all fields and extras.

    Results are displayed to your terminal. Tee'ed output goes to a file under results/ directory.

How to add your code to code base

You have to write a .lcopy file and put it to lcopy.d directory. See lcopy.d/linux.lcopy as an example.

How to add your profile to preset list

You have to write a .ctags file and put it to profile.d directory. A line started from "# @" is used as a description for the profile. You may wan to use --options-maybe to extend profile without modifying existing .ctags files.

Let's optimize ourt parsers! Masatake YAMATO <[email protected]>

About

Reference codebase for Universal-ctags

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Shell 100.0%