Commit Graph

9402 Commits

Author SHA1 Message Date
krasimir
51640c4478 add a type signature in GF.Interactive2 to make ghc-7.6.3 happy 2015-08-21 11:58:32 +00:00
hallgren
bf0d75002a gf -cshell: implement visualize_tree
But the following options are not supported: -mk -nocats -nofuns
2015-08-21 10:14:46 +00:00
hallgren
9efa45b80b gf -cshell: implement a subset of print_grammar and abstract_info
pg supports only the -funs, -cats and -langs output modes.

ai IDENTIFIER shows info about a category or a function. ai can not type check
and refine metavariables in expressions.
2015-08-20 16:06:10 +00:00
hallgren
d2217c0715 PGF2: export BindType(..) and two new functions: showType & categories
showType :: Type -> String
categories :: PGF -> [Cat]

But both are implemented as quick hacks: categories is implemented by listing
all functions and taking the target categories from their types. showType uses
ppType copied & modified from PGF.Type, and needs a ppExpr, which is currently
implemented by wrapping showExpr...

TODO: need something correpsonding to PGF.categoryContext.
2015-08-20 15:55:24 +00:00
krasimir
c7c47fbded add the initial sketches of the semantic graph storage 2015-08-20 13:31:43 +00:00
hallgren
5f3417ec5e gf -cshell: linearize: implement options -all -list -treebank
Options -all and -list use PGF2.linearizeAll, which lists all variants, but
not all forms...
Also, there is no attempt to be compatible with the output from the Haskell
run-rime shell, which produces superfluous blank lines (-all) or
commas (-list), and mixes tagged and untagged lines (-treebank -all).
2015-08-18 16:05:45 +00:00
hallgren
d1cf9d734e GF shell: restore the eh command to working order and document it
Also, when the command line parser fails, append the problematic command line
to the error message "command not parsed".
2015-08-18 13:13:31 +00:00
krasimir
ee5e103653 remove "heter" as a translation for call_V2 in Swedish 2015-08-18 11:20:45 +00:00
hallgren
d039147261 GF shell: add the start options to GFEnv, turn "reload" into an ordinary command 2015-08-17 15:56:39 +00:00
francis.tyers
4dce393a90 det_låter_bra 2015-08-17 11:50:55 +00:00
hallgren
a3db215f5b GF Shell: "ph | wf -file=foo.gfs" now works as advertised
The print_history command was among the commands implemented in an ad-hoc
way instead of being handled by the command line interpreter, which means
it could not be used in a pipe, as in the example in the help info.
The refactoring in the previous patch made this old bug easy to fix.

Also fixed a bug in the "empty" command, introduced when moving the PGF from
CommandEnv to GFEnv.

TODO: fix the undocumented eh command. A comment in the help info for
print_history, and some commented out old code, suggest that eh means
"execute_history", but at present it does nothing...
2015-08-13 15:30:23 +00:00
hallgren
5339c1e6b5 GF Shell: refactoring for improved modularity and reusability:
+ Generalize the CommandInfo type by parameterizing it on the monad
  instead of just the environment.
+ Generalize the commands defined in
  GF.Command.{Commands,Commands2,CommonCommands,SourceCommands,HelpCommand}
  to work in any monad that supports the needed operations.
+ Liberate GF.Command.Interpreter from the IO monad.
  Also, move the current PGF from CommandEnv to GFEnv in
  GF.Interactive, making the command interpreter even more generic.
+ Use a state monad to maintain the state of the interpreter in
  GF.{Interactive,Interactive2}.
2015-08-13 10:49:50 +00:00
hallgren
5c6adb1927 GF Shell: turn set_encoding into a common command
Implemented in GF.Command.CommonCommands instead of GF.Interactive &
GF.Interactive2.
2015-08-12 15:00:03 +00:00
hallgren
2f3b6779c6 GF.Interactive2: cleanup 2015-08-12 12:33:36 +00:00
krasimir
8e6ae8fb86 Bugfix in the android app for Chinese which was causing the first character in the translation to disappear 2015-08-12 18:44:45 +00:00
hallgren
721f653e99 GF shell: source commands (cc, sd, so, ss & dg) can now be used in pipes
These commands are now implemented as regular commands (i.e. using the
CommandInfo data type) in the new module GF.Command.SourceCommands.

The list of commands exported from GF.Command.Commmands now called pgfCommands
instead of allCommands.

The list allCommands of all commands is now assembled
from sourceCommands, pgfCommands, commonCommands and helpCommand in
GF.Interactive.
2015-08-12 11:05:08 +00:00
hallgren
ba9c057650 Move welcome message from GF.Interactive & GF.Interactive2 to GF.Command.Messages
...to avoid the duplication.
2015-08-12 11:01:45 +00:00
hallgren
07fd298700 GF shell: make environment types abstract, comment out some dead code 2015-08-11 16:14:38 +00:00
krasimir
db07275527 pickling/unpickling for types 2015-08-12 10:11:00 +00:00
krasimir
d21b9e52d8 support for transparent pickling/unpickling of abstract expressions in Python 2015-08-12 09:21:23 +00:00
hallgren
624de05fe3 gf -cshell: improved help for the 'import' command 2015-08-10 16:39:31 +00:00
hallgren
6e5d8cebe0 Forgot to include gf.cabal in previous patch 2015-08-10 16:38:28 +00:00
hallgren
f371a020f9 Factor out common code from GF.Command.Commands and GF.Command.Commands2
Created module GF.Command.CommonCommands with ~250 lines of code for commands
that do not depend on the type of PGF in the environemnt, either because they
don't use the PGF or because they are just documented here and implemented
elsewhere.

TODO: further refactoring so that documentation and implementation of
*all* commands can be kept together.
2015-08-10 16:30:17 +00:00
hallgren
230d9780b7 gf -cshell: preliminary support for the C run-time system in the GF shell
Some C run-time functionality is now available in the GF shell, by starting
GF with 'gf -cshell' or 'gf -crun'. Only limited functionality is available
when running the shell in these modes:

- You can only import .pgf files, not source files.
- The -retain flag can not be used and the commands that require it to work
  are not available.
- Only 18 of the 40 commands available in the usual shell have been
  implemented. The 'linearize' and 'parse' commands are the only ones
  that call the C run-time system, and they support only a limited set of
  options and flags. Use the 'help' commmands for details.
- A new command 'generate_all', that calls PGF2.generateAll, has been added.
  Unfortuntaly, using it causes 'segmentation fault'.

This is implemented by adding two new modules: GF.Command.Commands2 and
GF.Interactive2. They are copied and modified versions of GF.Command.Commands
and GF.Interactive, respectively. Code for unimplemented commands and other
code that has not been adapted to the C run-time system has been left in
place, but commented out, pending further work.
2015-08-10 14:12:51 +00:00
hallgren
97c6ffd462 Refactor GF shell modules to improve modularity and reusability
+ Move type CommandInfo from GF.Command.Commands to a new module
  GF.Commands.CommandInfo and make it independent of the PGF type.
+ Make the module GF.Command.Interpreter independent of the PGF type and
  eliminate the import of GF.Command.Commands.
+ Move the implementation of the "help" command to its own module
  GF.Command.Help
2015-08-10 13:01:02 +00:00
krasimir
4866931df6 more changes in the dictionary 2015-08-10 08:35:23 +00:00
krasimir
c0ecbc26a4 bump the version number for the Android app 2015-08-10 08:34:29 +00:00
krasimir
99bcbe0a05 more changes in the Bulgarian dictionary 2015-08-07 08:27:47 +00:00
krasimir
0c064a8e8e a few changes in the Bulgarian dictionary 2015-08-06 18:07:23 +00:00
krasimir
4fc67beb42 now the app shows the correct abstract syntax names for unknown words while it still produces the right TTS 2015-08-06 14:19:13 +00:00
krasimir
89e4df680e another fix in the Thai keyboard 2015-08-06 14:18:49 +00:00
hallgren
1dcad033b7 GF Home Page: Updated the link to the Haskell API, and a couple of other links 2015-08-06 14:07:18 +00:00
krasimir
0fc59b8e50 disable the visualization of glosses in the App until we have a complete database 2015-08-06 13:02:27 +00:00
krasimir
365ddfb5a5 set the optimization levels for the JNI code to release level 2015-08-06 13:01:07 +00:00
krasimir
e9a8e083a0 bugfix for the word prediction in the App 2015-08-06 12:51:42 +00:00
krasimir
13ca43806c a better layout for the Thai keyboard 2015-08-06 12:23:27 +00:00
krasimir
a982a4d15f bugfix in lookup_morpho in the C runtime 2015-08-06 11:51:23 +00:00
krasimir
764a5ba90b fix the inflection of tea and the translation of tee in Bulgarian 2015-08-06 09:34:19 +00:00
krasimir
af46844b05 a big patch with a number of changes in the dictionaries to harmonize them with WordNet 2015-08-05 17:33:52 +00:00
hallgren
a7945644e8 Update doc/gf-help-full.txt (GF shell reference manual) 2015-08-04 11:49:17 +00:00
hallgren
e5046b7e6d FoodsTur.gf: use Predef.BIND instead of "&+"
...for better results when used with the C run-time system.
2015-07-28 10:58:00 +00:00
aarne
6a9083bc9e discontinuous Ger AP part in UttAP 2015-07-27 09:18:14 +00:00
aarne
6519a3b72e restoring the discontinuous Ger NP parts in some linearizations 2015-07-27 09:14:10 +00:00
aarne
0941e98a00 new synopsis, with the recent RGL fixes 2015-07-27 09:13:39 +00:00
aarne
6c8bb0575b rewrote an mkPN application in WordsGer to work around a problem that might be a type checker bug 2015-07-23 16:16:38 +00:00
aarne
3fd7cf4e87 restored one-arg mkPN 2015-07-23 16:03:18 +00:00
scharolta_siencnik
0d35bb1c03 Ger wide-coverage changes due to RGL changes 2015-07-23 15:52:55 +00:00
scharolta_siencnik
ba14a8a7e5 German resource grammar: major changes. 2015-07-23 15:50:05 +00:00
scharolta_siencnik
7b26356d35 gender of Language in ConstructionGer 2015-07-23 15:21:37 +00:00
inari
1041456fc1 fix bug in stemmed/StemFin: essive case appeared twice, now only once 2015-07-22 15:02:45 +00:00