Code Monkey home page Code Monkey logo

gonzui's Introduction

gonzui

DESCRIPTION:

gonzui is a source code search engine for accelerating open source software development. In the open source software development, programmers frequently refer to source codes written by others. Our goal is to help programmers develop programs effectively by creating a source code search engine that covers vast quantities of open source codes available on the Internet.

FEATURES/PROBLEMS:

  • Windows is not supported now.

SYNOPSIS:

Basic Usage

First, You need to import source codes into an index. For example, if you want to import the source codes of wget-1.9.1.tar.gz, run the following command.

% gonzui-import wget-1.9.1.tar.gz

or if your system has apt-get and it’s configured correctly,

% gonzui-import --apt wget

Then, you can run gonzui-server that works as a web-based search engine.

% gonzui-server

Finally, you can access the search engine with your browser. The URL is localhost:46984/.

Import through version control systems

Currently, gonzui supports import from CVS and Subversion, Git’s repositories. For example, if you want to import source codes that can be obtained by the following command,

% cvs -d :pserver:[email protected]:/src co ruby

you can just run gonzui-import as follows.

% gonzui-import --cvs :pserver:[email protected]:/src ruby

In short, you can replace “cvs -d X co Y” with “gonzui-import –cvs X Y”.

For Subversion, if you want to import source codes that can be obtained by the following command,

% svn co http://svn.edgewall.com/repos/trac/trunk trac

you can just run gonzui-import as follows.

% gonzui-import --svn http://svn.edgewall.com/repos/trac/trunk trac

In short, you can replace “svn co X Y” with “gonzui-import –svn X Y”.

You can update the gonzui’s index by gonzui-update command to reflect changes as described bellow.

Currently, gonzui doesn’t support revisions and tags of CVS and Subversion.

Incremental Update

gonzui-update is a tool for doing incremental update of the existing indices. For example, if you build an index by importing /somewhere/foo by the following command:

% gonzui-import /somewhere/foo

and then, you want to update the existing index for reflecting recent changes (addition, deletion, and update of files) in /somewhere/foo, you can just run gonzui-update like:

% gonzui-update

Since the index includes the location of /somewhere/foo, you don’t have to give any parameters to gonzui-update command. If the existing index contains two or more packages, all packages are supposed to be updated. If /somewhere/foo is disappeared, gonzui-update prints an warning like “source disappeared”.

Other Usage

Command-line-based search tool is also available mainly for debug purposes. To find locations of “main” function, run gonzui-search as follows.

% gonzui-search main

You can inspect gonzui’s index using gonzui-db command. To obtain the list of packages in the index, run gonzui-db as follows.

% gonzui-db --list

To remove wget-1.9.1, run gonzui-remove as follows.

% gonzui-remove wget-1.9.1

For further information on usage, try –help option of each command.

REQUIREMENTS:

  • Ruby 1.8.2+

  • bdb 4.2+ (Berkeley DB)

$ sudo apt-get install libdb-dev

Ruby Libraries

  • langscan 1.2+

$ sudo gem install langscan
  • bdb for Ruby 0.5.2+

$ sudo apt-get install libdb-ruby1.8

Optional Software

The following software is not required but useful.

  • Archive Handling

    • tar (.tar.*)

    • gunzip (.tar.gz)

    • bunzip2 (.tar.bz2)

    • uncompress (.tar.Z)

    • unzip (.zip)

    • lha (.lzh)

    • rpm, rpmbuild (.src.rpm)

  • Source Code Fetcher

    • apt-get (gonzui-import –apt)

      • You need “dpkg-dev” package to fetch sources.

  • Version Control Systems

    • cvs (gonzui-import –cvs)

    • svn (gonzui-import –svn)

    • git (gonzui-import –git)

INSTALL:

$ sudo gem install gonzui

If you use Ubuntu, add following path to $PATH

/usr/lib/gems/1.8/bin

LICENSE:

Copyright © 2004-2005 Satoru Takabayashi <[email protected]>

All rights reserved.

This is free software with ABSOLUTELY NO WARRANTY.

You can redistribute it and/or modify it under the terms of the GNU General Public License version 2.

AUTHORS:

see ‘AUTHORS.txt’

gonzui's People

Contributors

mallowlabs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.