Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
cmd
 
 
 
 
log
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

srctool: Tool to manage source code parsers

Build Status GoDoc GoWalker

srctool is a command line tool to manage source code parsers. It is able to download parsers from a web server, install them and run them. In short, it is a manager for source code parsers.

Installation

Install from source

Assuming you have Go installed and your $GOPATH correctly set, you can simply issue the following command:

go get github.com/DevMine/srctool

Make sure that $GOPATH/bin is in the $PATH.

Install a binary version

Binary for the latest version can be found here.

Usage

The command srctool help provides a short description of all available options.

Setup

Before doing anything, you must first create a configuration file. To do so, issue:

srctool config

This will create a default configuration file located in $XDG_CONFIG_HOME/srctool/srctool.conf

If the $XDG_CONFIG_HOME environment variable is not set, it will use the $HOME/.config directory.

By default, the download server URL is http://dl.devmine.ch/parsers. You can change this value with the config command:

srctool config --server-url "http://my-server.com"

Install language parsers

The command srctool list -r lists all compatible parsers available on the download server. For installing them, just issue the following command:

srctool install [language]

Parse projects

The main purpose of srctool is to parse source code. After installing at least one parser, issue the following command:

srctool parse [project path]

This will parse the whole project with each installed parser and merge all the output to produce a final JSON.

Running your own download server

Running your own download server requires nothing more than a HTTP server (nginx, apache, lighttpd, ...). The only requirement is to keep the following structure for the files organization:

.
├── MD5SUMS
├── darwin
│   └── amd64
│       ├── parser-go.zip
│       └── parser-java.zip
├── dragonfly
│   └── amd64
│       ├── parser-go.zip
│       └── parser-java.zip
├── freebsd
│   ├── 386
│   │   ├── parser-go.zip
│   │   └── parser-java.zip
│   └── amd64
│       ├── parser-go.zip
│       └── parser-java.zip
├── linux
│   ├── 386
│   │   ├── parser-go.zip
│   │   └── parser-java.zip
│   └── amd64
│       ├── parser-go.zip
│       └── parser-java.zip
├── netbsd
│   ├── 386
│   │   ├── parser-go.zip
│   │   └── parser-java.zip
│   └── amd64
│       ├── parser-go.zip
│       └── parser-java.zip
└── opendbsd
    ├── 386
    │   ├── parser-go.zip
    │   └── parser-java.zip
    └── amd64
        ├── parser-go.zip
        └── parser-java.zip

The folder tools/ of the project contains several useful scripts for managing the MD5SUMS file, cross compiling the Go parser, etc. See tools/README.md for more information.

About

Tool to manage source code parsers

Resources

License

Packages

No packages published
You can’t perform that action at this time.