1
0
forked from GitHub/gf-core
Commit Graph

3418 Commits

Author SHA1 Message Date
aarne
1778cd7c19 removed the unlines-lines wrapper from Lexing.unlexer to prevent empty lines when an unlexer (such as -bind or -unchars) is used as an option in linearization. Don't know really why the input had been broken into lines in the first place. You can see the effect by importing LangEng and running "gr -cat=Cl | l -table -bind" before and after recompiling GF. 2013-12-03 13:27:22 +00:00
kr.angelov
98e0f79324 fix in inflection_en.xml 2013-12-03 12:15:06 +00:00
aarne
385d5f45fc ui/android/.../Translate.java uses Parse8 (change the name and language list if you need something else) 2013-12-02 13:34:51 +00:00
hallgren
7934c0a88b Commment code and options relating to the old partial evaluator
This means that the -old-comp and -new-comp flags are not recognized anymore.

The only functional difference is that printnames were still normalized with
the old partial evaluator. Now that is done with the new partial evaluator.
2013-11-29 16:26:49 +00:00
hallgren
537caca039 Move typePredefined from GF.Compile.Compute.AppPredefined to GF.Compile.TypeCheck.Primitives
Also move the list of primitives
2013-11-29 15:47:26 +00:00
hallgren
6f590a3f2c Move checkPredefError from GF.Compile.Compute.ConcreteLazy to GF.Grammar.Macros
Also simplified its type.
2013-11-29 14:43:01 +00:00
kr.angelov
d7f3aab994 -optimize-pgf should also apply to the linrefs 2013-11-29 14:25:23 +00:00
kr.angelov
4ae1a16a1e added caching to be able to quickly generate the inflection table for Finnish 2013-11-28 22:06:55 +00:00
aarne
3d5f1afde6 added forms to Finnish xml table 2013-11-29 08:21:00 +00:00
aarne
86937017cd html templates for Finnish noun and verb inflection started 2013-11-28 22:04:30 +00:00
kr.angelov
945650f653 bugfix in the android app 2013-11-28 20:00:17 +00:00
kr.angelov
1c75721871 now the TTS is used only if there is actually a language model. this is better than using English for speaking Swedish 2013-11-28 19:59:03 +00:00
kr.angelov
442b5fb305 a bit of cleanup in the Android app 2013-11-28 19:57:45 +00:00
kr.angelov
953ae7e76d extension in the template format for inflection tables. This makes it possible to use the templates with Finish 2013-11-28 19:52:31 +00:00
hallgren
dcf07aaad6 GFI: adapt to character encoding changes
GF.Compile.Coding is not used any more.
2013-11-28 13:55:08 +00:00
hallgren
4ef30ca450 SimpleEditor.Convert: adapt to recent character encoding changes
Things got simpler!
2013-11-28 13:27:45 +00:00
kr.angelov
35580255c3 the Android App now show the valency patterns for verbs in English, Bulgarian and Swedish 2013-11-28 12:48:55 +00:00
kr.angelov
9de4812482 better dictionary visualization in the Android App 2013-11-27 22:16:05 +00:00
kr.angelov
38b4a88c2b minor tweaks in the Android UI 2013-11-27 12:37:55 +00:00
kr.angelov
105071d11e fix the character encoding problem in the web view in the Android UI 2013-11-27 12:37:15 +00:00
kr.angelov
3509a8d4cc added API in the C runtime and the Java binding for checking whether a given function is linearizable in a given language. This is used in the Android UI for better vizualizations 2013-11-27 12:35:11 +00:00
kr.angelov
e68067a83c update the project files for the Java binding 2013-11-27 12:34:33 +00:00
kr.angelov
085808513d space leak in the Java binding 2013-11-27 12:34:06 +00:00
hallgren
a617e50d95 Represent identifiers as UTF-8-encoded ByteStrings
This was a fairly simple change thanks to previous work on making the Ident
type abstract and the fact that PGF.CId already uses UTF-8-encoded
ByteStrings.

One potential pitfall is that Data.ByteString.UTF8 uses the same type for
ByteStrings as Data.ByteString. I renamed ident2bs to ident2utf8 and
bsCId to utf8CId, to make it clearer that they work with UTF-8-encoded
ByteStrings.

Since both the compiler input and identifiers are now UTF-8-encoded
ByteStrings, the lexer now creates identifiers without copying any characters.
**END OF DESCRIPTION***

Place the long patch description above the ***END OF DESCRIPTION*** marker.
The first line of this file will be the patch name.


This patch contains the following changes:

M ./src/compiler/GF/Compile/CheckGrammar.hs -3 +3
M ./src/compiler/GF/Compile/GrammarToPGF.hs -2 +2
M ./src/compiler/GF/Grammar/Binary.hs -5 +1
M ./src/compiler/GF/Grammar/Lexer.x -11 +13
M ./src/compiler/GF/Infra/Ident.hs -19 +36
M ./src/runtime/haskell/PGF.hs -1 +1
M ./src/runtime/haskell/PGF/CId.hs -2 +3
2013-11-26 16:12:03 +00:00
hallgren
30fc46e934 Change how GF deals with character encodings in grammar files
1. The default encoding is changed from Latin-1 to UTF-8.

2. Alternate encodings should be specified as "--# -coding=enc", the old
   "flags coding=enc" declarations have no effect but are still checked for
   consistency.

3. A transitional warning is generated for files that contain non-ASCII
   characters without specifying a character encoding:

	"Warning: default encoding has changed from Latin-1 to UTF-8"

4. Conversion to Unicode is now done *before* lexing. This makes it possible
   to allow arbitrary Unicode characters in identifiers. But identifiers are
   still stored as ByteStrings, so they are limited to Latin-1 characters
   for now.

5. Lexer.hs is no longer part of the repository. We now generate the lexer
   from Lexer.x with alex>=3. Some workarounds for bugs in alex-3.0 were
   needed. These bugs might already be fixed in newer versions of alex, but
   we should be compatible with what is shipped in the Haskell Platform.
2013-11-25 21:12:11 +00:00
kr.angelov
210a813d1c fix in the GF keyboard for Android 2013-11-22 13:37:12 +00:00
kr.angelov
c119627dfc fix the export for CFG grammars with BIND, SOFT_BIND and nonExist 2013-11-22 13:36:14 +00:00
kr.angelov
4254b101f4 the GF syntax for identifiers is exteded with quoted forms, i.e. you could write for instance 'ab.c' and then everything between the quites is identifier. This includes Unicode characters and non-ASCII symbols. This is useful for automatically generated GF grammars. 2013-11-22 13:30:18 +00:00
kr.angelov
cddc19a5ad bugfix in the debug mode for the parser 2013-11-22 12:26:49 +00:00
hallgren
14bbbf1f27 Some refactoring in GF.Compile and GF.Compile.GetGrammar
Move source transcoding function GF.Compile to GF.Compile.GetGrammar, in
preparation for doing transcoding before lexing.
2013-11-21 16:27:26 +00:00
hallgren
c8d2ed96fd Some more monadic lifting changes 2013-11-21 15:01:04 +00:00
kr.angelov
e77c19c783 bugfix in the C runtime 2013-11-21 14:31:28 +00:00
kr.angelov
85e238f824 the Java binding for lookupMorpho should release the local references created in a loop 2013-11-21 14:29:47 +00:00
kr.angelov
b255f19b63 fix in the Python binding 2013-11-20 09:54:37 +00:00
hallgren
ab8037c3c6 Removed some code duplication in GF.Compile.Update 2013-11-20 01:26:41 +00:00
hallgren
c8cbd4477f Reduced clutter in monadic code
+ Eliminated vairous ad-hoc coersion functions between specific monads 
  (IO, Err, IOE, Check) in favor of more general lifting functions
  (liftIO, liftErr).
+ Generalized many basic monadic operations from specific monads to
  arbitrary monads in the appropriate class (MonadIO and/or ErrorMonad),
  thereby completely eliminating the need for lifting functions in lots
  of places.

This can be considered a small step forward towards a cleaner
compiler API and more malleable compiler code in general.
2013-11-20 00:45:33 +00:00
hallgren
c29326d074 GF shell: improved system_pipe (aka "?") command
1. No temporary files are created.

2. The output of a system command is read lazily, making it feasible to 
   process large or even infinite output, e.g. the following works as
   expected:

	? "yes" | ? "head -5" | ps -lextext
2013-11-19 15:18:58 +00:00
kr.angelov
33a76f1cd5 bugfix in the robust parser 2013-11-18 09:05:27 +00:00
kr.angelov
2dd04b2b2f add gu_buf_insert in libgu 2013-11-18 09:05:09 +00:00
kr.angelov
fb8de0e8ea fixes in the C runtime to avoid warnings when compiling on MacOS 2013-11-15 10:03:22 +00:00
kr.angelov
684a3b8df5 pgf_read should open the grammar file in binary mode to prevent the Windows runtime from messing up the content. 2013-11-15 09:04:00 +00:00
kr.angelov
254aba33a1 pgf_reader_done should do nothing if the reading has failed 2013-11-15 08:59:18 +00:00
kr.angelov
d7dfa01bb0 add additional options for compiling the Java binding on Windows (suggested by Normunds) 2013-11-15 07:48:02 +00:00
hallgren
ec82c3af9a gfse: re-enable example-based grammar construction 2013-11-14 12:54:25 +00:00
kr.angelov
a18fccd338 add two files from the Android app that were forgoten 2013-11-13 17:27:11 +00:00
kr.angelov
63a90f34af bugfix in the C runtime which had made the parser up to 200 times slower for some sentences 2013-11-13 15:15:28 +00:00
kr.angelov
a47d37ca67 the dictionary view in the Android app now shows both the source and the target linearizations 2013-11-13 12:29:10 +00:00
kr.angelov
3d410e0fd7 minor bugfix in the translator keyboard 2013-11-13 10:59:03 +00:00
kr.angelov
13084dab4f now the Android App has a translation keyboard which allows the translations to be done from inside another application 2013-11-13 10:45:20 +00:00
hallgren
4a5b9ca8cb Fix Issue 60: Weird output when executing system commands from the gf shell
The system_pipe (aka "?") command creates a temporary file _tmpi containing
the input of the system command. It *both* appends _tmpi as an extra argument
to the system command line *and* adds an input redirection "< _tmpi". (It
also uses and output redirection "> _tmpo" to captures the output of the
command.)

With this patch, the _tmpi argument is no longer appended to the command line.
This allows system_pipe to work with pure filters, such as the "tr" commands,
but it will no longer work with commands that require an input file name.
(It is possible to use write_file instead...)

TODO: it would also be fairly easy to eliminate the creation of the _tmpi and
_tmpo files altogether.
2013-11-12 18:07:38 +00:00