diff --git a/doc/gf-developers.html b/doc/gf-developers.html index b7655445d..2d697810b 100644 --- a/doc/gf-developers.html +++ b/doc/gf-developers.html @@ -8,7 +8,7 @@

GF Developers Guide

Authors: Björn Bringert and Krasimir Angelov
-Last update: Sat Jun 13 20:00:21 2009 +Last update: Fri Jun 19 15:27:27 2009

@@ -84,10 +84,46 @@ Again after the installation check that the tools are available from the termina If they are not then probably you have to update the current search path in your system.

-Before to get the GF sources you also need Darcs. Darcs is a decentralized revision control system, +It is also a good idea to have either readline, editline or haskeline installed. +This are libraries for user friendly command line editing. On Linux, without some of this +libraries, the command line editor is very basic. Actually the only key for editing +that you can use is backspace. On Windows you get much more user friendly editor +by default but with it you cannot use the GF specific tab completion. In any case if you +plan to use GF for continuous development then it is recomended to install +some of these libraries. The GF configuration script checks the libraries +in the following order: +

+ + +

+the first that is found will be used in the compilation. The libraries are also written +in Haskell and could be found on Hackage: http://hackage.haskell.org/packages/archive/pkg-list.html. If you want to check whether, +you already have some of these you can use the following command: +

+
+  $ ghc-pkg list
+
+

+which shows the list of all installed libraries. +

+

+Haskeline is the easiest to install because it is a pure Haskell library but currently +with this editor GF doesn't provide word completion. With editline we provide word completion +but the library is harder to install because it is a Haskell binding to a +library with the same name written in C. If you do not have the C library you will have to install +it first. Unfortunately editline does not have good support for Unicode. This will be a problem +if you tend to work on non-Latin language. Finaly readline supports both word completion +and Unicode. Currently this is the best supported library. +

+

+Before to get the GF sources you also need Darcs. Darcs is a decentralized revision control system, see: http://darcs.net/ for more information. There are precompiled packages for many platforms available at http://darcs.net/DarcsWiki/CategoryBinaries. There is also source code if you want to compile it yourself. Darcs is -also written in Haskell and so you can GHC to compile it. +also written in Haskell and so you can use GHC to compile it.

Getting the sources

@@ -132,7 +168,7 @@ Since every copy is a repository, you can have local version control of your changes.

-If you have added files, you first need to tell your local repository to +If you have added files, you first need to tell your local repository to keep them under revision control:

@@ -162,7 +198,7 @@ repository.
 

Submitting patches

If you are using read-only access, send your patches by email to -someone with write-access. First record your changes in your local +someone with write-access. First record your changes in your local repository, as described above. You can send any number of recorded patches as one patch bundle. You create the patch bundle with:

@@ -187,7 +223,7 @@ patch directly from darcs. If so, replace -o mypatch.patch with

Read-write access

If you have a user account on code.haskell.org, you can get read-write access over SSH -to the GF repository. +to the GF repository. To get an account, fill out this form. Once you have an account, ask <aarne@chalmers.se> to add you to the GF project.

@@ -225,7 +261,7 @@ Without -a, you can choose which patches you want to get. There are two steps to commiting a change to the main repo. First you have to record the changes that you want to commit, then you push them to the main repo. For instructions on recording your changes locally, -see "Recording local changes" above. Then you can push the patch(es) to +see "Recording local changes" above. Then you can push the patch(es) to the main repo. If you are using ssh-access, all you need to do is:

@@ -301,7 +337,7 @@ library after each change. In this case use this extended command:
   $ runghc Setup.hs build rgl-none
 

-The resource library could also be compiled in two modes: with present tense only and +The resource library could also be compiled in two modes: with present tense only and with all tenses. By default it is compiled with all tenses. If you want to use the library with only present tense you can compile it in this special mode with the command: @@ -419,7 +455,7 @@ GF has testsuite. It is run with the following command:

The testsuite architecture for GF is very simple but still very flexible. GF by itself is an interpreter and could execute commands in batch mode. -This is everything that we need to organize a testsuite. The root of the +This is everything that we need to organize a testsuite. The root of the testsuite is the testsuite/ directory. It contains subdirectories which themself contain GF batch files (with extension .gfs). The above command searches the subdirectories of the testsuite/ directory for files with extension diff --git a/doc/gf-developers.txt b/doc/gf-developers.txt index 20cff3028..5b1e3c819 100644 --- a/doc/gf-developers.txt +++ b/doc/gf-developers.txt @@ -37,10 +37,41 @@ http://www.haskell.org/happy/. Again after the installation check that the tools are available from the terminal. If they are not then probably you have to update the current search path in your system. +It is also a good idea to have either readline, editline or haskeline installed. +This are libraries for user friendly command line editing. On Linux, without some of this +libraries, the command line editor is very basic. Actually the only key for editing +that you can use is backspace. On Windows you get much more user friendly editor +by default but with it you cannot use the GF specific tab completion. In any case if you +plan to use GF for continuous development then it is recomended to install +some of these libraries. The GF configuration script checks the libraries +in the following order: + +- haskeline +- readline +- editline + + +the first that is found will be used in the compilation. The libraries are also written +in Haskell and could be found on Hackage: http://hackage.haskell.org/packages/archive/pkg-list.html. If you want to check whether, +you already have some of these you can use the following command: +``` +$ ghc-pkg list +``` +which shows the list of all installed libraries. + +Haskeline is the easiest to install because it is a pure Haskell library but currently +with this editor GF doesn't provide word completion. With editline we provide word completion +but the library is harder to install because it is a Haskell binding to a +library with the same name written in C. If you do not have the C library you will have to install +it first. Unfortunately editline does not have good support for Unicode. This will be a problem +if you tend to work on non-Latin language. Finaly readline supports both word completion +and Unicode. Currently this is the best supported library. + Before to get the GF sources you also need Darcs. Darcs is a decentralized revision control system, see: http://darcs.net/ for more information. There are precompiled packages for many platforms available at http://darcs.net/DarcsWiki/CategoryBinaries. There is also source code if you want to compile it yourself. Darcs is -also written in Haskell and so you can GHC to compile it. +also written in Haskell and so you can use GHC to compile it. + = Getting the sources =