Sha256: 621b4343e54561cb8f3982001b3282bf52eb580706b5d645b088ba221637dcd5

Contents?: true

Size: 1.84 KB

Versions: 1

Compression:

Stored size: 1.84 KB

Contents

= LangScan

* http://gonzui.sourceforge.net/langscan/index.html.en
* Gem version
 * http://github.com/mallowlabs/langscan

== DESCRIPTION:

program analyzer for source code search engine

== FEATURES/PROBLEMS:

* Support Languages
 * C
 * C++
 * C#
 * Java
 * JavaScript
 * Ruby
 * Python
 * PHP
 * Perl
 * Objective Caml
 * Brainfuck
 * CSS
 * Shell Script
 * Emacs Lisp
 * Scheme
 * Plain Text
 * Io
 * Lua
 * Eiffel

== SYNOPSIS:
=== Example1
  % cat -n hello.c
       1  #include <stdio.h>
       2
       3  int main(int argc, char **argv)
       4  {
       5    printf("Hello World.\n");
       6    return 0;
       7  }
  % ruby -rlangscan/c -e 'LangScan::C.scan(ARGF.readlines.join) {|f| p f}' < hello.c
  #<LangScan::Fragment space " " 1 (8)>
  #<LangScan::Fragment ident "stdio" 1 (10)>
  #<LangScan::Fragment punct "." 1 (15)>
  #<LangScan::Fragment space "\n" 2 (19)>
  #<LangScan::Fragment space " " 3 (23)>
  #<LangScan::Fragment preproc_beg "#" 1 (0)>
  #<LangScan::Fragment ident "include" 1 (1)>
  ...

=== Example2
  % cat -n display_fundef.rb
     1  require 'langscan'
     2
     3  # display all function definitions.
     4  ARGV.each {|arg|
     5    next unless scanner = LangScan.choose(arg)
     6    scanner.scan(File.open(arg).readlines.join) {|f|
     7      if f.type == :fundef
     8        puts f.text
     9      end
    10    }
    11  }
  % ruby display_fundef.rb hello.c
  main

== REQUIREMENTS:

* Ruby 1.8.2+
* Perl + PPI module (for source codes written in Perl)
* OCaml (for source codes written in OCaml)

== INSTALL:

* sudo gem install langscan

== LICENSE:
Copyright (C) 2004-2005 Satoru Takabayashi <satoru@namazu.org>
    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'

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
langscan-1.2 README.rdoc