Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

A search engine for programming language based on ruby and redis

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 bin
Octocat-spinner-32 doc
Octocat-spinner-32 etc
Octocat-spinner-32 htdocs
Octocat-spinner-32 lib
Octocat-spinner-32 templates
Octocat-spinner-32 test
Octocat-spinner-32 .gitignore
Octocat-spinner-32 BUGS.org
Octocat-spinner-32 Gemfile
Octocat-spinner-32 LICENSE.txt
Octocat-spinner-32 Rakefile
Octocat-spinner-32 code_zauker.gemspec
Octocat-spinner-32 devel.org
Octocat-spinner-32 readme.org
readme.org

Code Zauker: your code, indexed

Code Zauker is a search engine for programming languages. Code Zauker is based from ideas taken by old Google Code Search and uses Redis as storage engine.

For news and discussion: http://gioorgi.com/tag/code-zauker/

NEWS

And an happy coding year! 2013

Version 0.1.0 spot an auto-reindexing system, 3-gram size and a new command, czlist. CodeZauker will store a MD5 checksum for every file and reindex automatically changed files. There is a small API change: FileScanner>>load will no longer accept noReload because it will automatically use md5 to undestand if a reindex is needed. Anyway, client code should relay on FileScanner>>reindex to force a reindex of a file. This feature is still beta but works pretty well.

When a lot of reindexing is involved, performance can drop hard under 2 files per sec

Version 0.1.0 spot also a new command, czlist which simplify integration with unix tool-chain. czlist access directly to code zauker core to show only the filename which could contains the searchstring. czlist is ideal for IDE integration

INSTALL

To install Code Zauker,simply issue

gem install code_zauker

You need also redis-2.4.6 or better. For a sample redis configuration see the etc/ directory of the project

Try it out

To index all your files

The following command will index all the code file below full_path_of_sources providing a feedback on standard output

czindexer -v /full_path_of_sources/

If your redis server is on another machine, you can use the following command

czindexer --redis-server myredisserver  -v /full_path_of_sources/

Also authentication over redis is supported:

czindexer --redis-server password@rediserverpwp  -v /full_path_of_sources/

To search for the ‘my_beautiful_method’ try out:

czsearch  my_beautiful_method

Looking case insensitive can be userful too….

czsearch -i  'Select USER_id'

Tip:Take a look to czindex and czsearch commands help for full options list

Web interface

There is a new shiny web interface based on sinatra. To try it out, fire

./bin/webgui

It is still beta, but it is very fast, thank to redis!

Parallel execution

If you want to speed up indexing, you can use the mczindexer command. For instance:

mczindexer eclipse-sources/

will fire at most 10 parallel czindexer.

Simple stats

You can ask code zauker to print a nice stats on standard output. Run

./bin/report.rb

and enjoy!

MS-Windows Compatibility

Grab your windows redis server at https://github.com/dmajkic/redis/downloads Version 0.0.9 and 0.1.0 has been successful tested with Redis 2.4.5 32bit version You will find a redis-win.conf example to give you a fast-startup

Release History

Version Date Summary
0.1.0 Added czlist command which supersedes czsearch.
Czindex now spot a better auto redindexing feature
Removed hiredis dependency for easier installation under ms-windows
0.0.9 12 Oct 2012 Removed case sensitive backend to improve space use. Er Zauker Compatibility.
Tested on MSWin
0.0.8 04 Jun 2012 Wildcard (*) search/better error handling of missed files/indexchecker
0.0.7 13 May 2012 Better documentation, mczindexer, new report command
0.0.6 04 May 2012 New redis-server option. Better web search with results hilight
0.0.5 09 Apr 2012 Added Sinatra-based web search page, featuring bootrstrap css
0.0.4 12 Feb 2012 PDF Searching
0.0.3 03 Feb 2012 Added Case insensitive search.UTF-8 trigram database
0.0.2 29 Jan 2012 Removed dependency on unix find for czindexer.
0.0.1 26 Jan 2012 First RubyGems Release (for testing purpose only)

DEVELOPING

For developing with Code Zauker you need bundler 1.0.21 or above See devel.org file for more information

KNOWN BUGS / LIMITATIONS

At the time of writing, indexing emacs-lisp file is a very slow task.

Something went wrong with that request. Please try again.