Freescope






Summary |  Admin |  Home Page |  Forums |  Tracker |  Bugs |  Support |  Patches |  Lists |  Tasks |  Docs |  Surveys |  News |  CVS |  Files | 

Freescope Source Code Browser

SYNOPSIS

       freescope [-bdfhlVZ] [-f database]

DESCRIPTION

       freescope  is  a  source code browser similar to the "cscope" pro­
       gram. It allows the user to interactively query a symbol database.
       The database is built and updated by examining source files speci­
       fied in the "freescope.files" file. If  "freescope.files"  is  not
       found,  freescope tries to open the file "cscope.files" and treats
       that file as if it was "freescope.files".  freescope  also  parses
       recursively  all  header  files  that  are  directly or indirectly
       included by the source files listed in freescope.files.

       Upon first invocation of freescope , a database is built and saved
       under the file "freescope.out". On subsequent execution, freescope
       updates its database only for the files that  have  been  modified
       since last invocation of the browser.

       Currently, freescope can parse C files. It is intended that in the
       future, the program parsing capabilities will be extended to other
       languages such as C++, Java, Pascal, etc.



OPTIONS

       Here is a list of options currently supported by freescope:

       -b     Build the database and exit immediately.

       -d     Do not update the database on startup.

       -f <database>
              Open "database" file instead of freescope.out

       -h     Display a small help message about usage.

       -l     Start freescope in CLI mode instead of curses. See below.

       -V     Display the program's version and exit immediately.

       -Z     Dump database to the standard output. Debugging purpose.



USAGE

       Upon  update  completion,  the user can enter a query under one of
       the following categories:

       - Symbol:               Find any occurence for this symbol
       - Global definition:    Find global definitions for this symbol
       - Functions calling:    Find calls to this function
       - Text:                 Find occurences of this text string
       - Change text:          Substitute given text with a new string
       - Regular exp:          Find occurences of this regular expression
       - File:                 Find the files matching this regular
       expression
       - File including:       Find places where this file is included

       The user can change the type of query using  the  <UP>  or  <DOWN>
       arrow, or by pressing the <TAB> key.
       The  program  provides symbol completion during input of a symbol.
       To use this feature, the user has to press  <CTRL>-N  to  get  the
       next  possible  completion  and  <CTRL>-P to get the previous dis­
       played completion.

       The user can navigate across results by using the following keys:

       j      Highlight next result on the current page.
       k      Highlight previous result on the current page.
       l      Show next result page if available
       h      Show previous result page if available
       <RETURN> / <SPACE>
              Open editor on the selected result
       Note that the arrow keys can also be used.

       The user switches between browse and query mode  by  pressing  the
       <CTRL-W> key.  <TAB> key can also be used while in browse mode.

       A  help panel can be displayed at any time by pressing the ?  key.

       Other commands are:
       <CTRL-D> Exit freescope.
       <CTRL-B> Previous query
       <CTRL-F> Next query
       <CTRL-R> Update database


CHANGING TEXT

       When  selecting the "Change text" query,  the  user  is  asked  to
       select  the  matches  that  need  to  be  modified. Navigating the
       matches is as described above.
       Selection is made by pressing the s key which results in freescope
       highlighting  the  beginning  of  the  result line.  Deselecting a
       match is done by pressing again the s key.
       All matches can be selected using the <CTRL-A> command.
       The user confirm his selection by typing <CTRL-D>
       It is possible to cancel the changing operation by typing <CTRL-C>


COMMAND LINE INTERFACE

       Freescope can be started as a CLI by specifying the -l option. The
       implemented commands are similar to the cscope CLI commands.
       freescope will prompt the ">>" string when ready to  accept  input
       commands.
       search pattern must immediately follow. For example:
       >> 3printf
       will find all places where the "printf" function is called.
       Each  search  result is displayed with the following format: file­
       name, scope name, line number and line text. For example:
       main.c main 124 printf("hello world0);
       The r command is used for rebuilding the database.
       The q command stops freescope.


INTEGRATING VIM AND FREESCOPE

       Since version 0.2.0, freescope can be integrated with the vim text
       editor.
       To  do  so,  make sure that vim has been compiled with cscope sup­
       port. Then, add the following lines in your  .vimrc  configuration
       file:

       set csprg=freescope
       set csto=0
       set cst
       set nocsverb
       set csverb
       cs add whatever_directory/freescope.out

       You can customize your .vimrc file to your own taste of course.
       Have  a  look  at  http://freescope.sourceforge.net for useful vim
       macros for freescope and cscope.


ENVIRONMENT VARIABLES

       EDITOR Preferred editor. Default is "vi"


SEE ALSO

       Have a look at the cscope application.


WEB SITE

       http://freescope.sourceforge.net

  Go to TOP

  Freescope Copyright © 2000-2001 Olivier Deme.
  All names, logos, trademarks, copyrights are the property of their respective owners.