Grammalecte  Diff

Differences From Artifact [d154148022]:

To Artifact [0d772932a8]:


1
2

3
4

5
6
7
8
9
10
11






12
13
14

15
16

17
18
19
20




21
22

23
24

25
26
27

28
29

30
31

32
33
34



35
36
37



38
39
40
41




42
43
44



45
46
47



48
49
50
51




52
53
54



55
56
57

58
59


60
61
62


63
64
65


66
67
68

69
70
71

72
1

2
3

4
5






6
7
8
9
10
11
12
13

14
15

16
17



18
19
20
21
22

23
24

25
26


27
28

29
30

31
32


33
34
35
36


37
38
39
40



41
42
43
44
45


46
47
48
49


50
51
52
53



54
55
56
57
58


59
60
61
62
63

64
65

66
67
68
69

70
71
72
73

74
75
76
77

78

79

80


-
+

-
+

-
-
-
-
-
-
+
+
+
+
+
+


-
+

-
+

-
-
-
+
+
+
+

-
+

-
+

-
-
+

-
+

-
+

-
-
+
+
+

-
-
+
+
+

-
-
-
+
+
+
+

-
-
+
+
+

-
-
+
+
+

-
-
-
+
+
+
+

-
-
+
+
+


-
+

-
+
+


-
+
+


-
+
+


-
+
-

-
+
-

BUILDER
# How to build Grammalecte

= Required =
## Required ##

    Python 3.6
    Firefox Nightly
    NodeJS
        npm
        jpm
    Thunderbird
* Python 3.6
* Firefox Nightly
* NodeJS
  * npm
  * jpm
* Thunderbird


= Commands =
## Commands ##

== build a language ==
**Build a language**

    make.py LANG
        generate the LibreOffice extension and the package folder.
        LANG is the lang code (ISO 639).
`make.py LANG`

> Generate the LibreOffice extension and the package folder.
> LANG is the lang code (ISO 639).

        This script uses the file `config.ini` in the folder `gc_lang/LANG`.
> This script uses the file `config.ini` in the folder `gc_lang/LANG`.

== First build ==
**First build**

    Type:
        make.py LANG -js
`make.py LANG -js`

    This command is required to generate all necessary files.
> This command is required to generate all necessary files.

== options ==
**Options**

    -b --build_data
        Launch the script `build_data.py` in the folder `gc_lang/LANG`.
`-b --build_data`

> Launch the script `build_data.py` in the folder `gc_lang/LANG`.

    -d --dict
        Generate the indexable binary dictionary from the lexicon in the folder `lexicons`.
`-d --dict`

> Generate the indexable binary dictionary from the lexicon in the folder `lexicons`.

    -js --javascript
        Also generate JavaScript extensions.
        Without this option only Python modules, data and extensions are generated.
`-js --javascript`

> Also generate JavaScript extensions.
> Without this option, only Python modules, data and extensions are generated.

    -t --tests
        Run unit tests.
`-t --tests`

> Run unit tests.

    -i --install
        Install the LibreOffice extension.
`-i --install`

> Install the LibreOffice extension.

    -fx --firefox
        Launch Firefox Nightly.
        Unit tests can be lanched from Firefox, with CTRL+SHIFT+F12.
`-fx --firefox`

> Launch Firefox Nightly.
> Unit tests can be lanched from Firefox, with CTRL+SHIFT+F12.

    -tb --thunderbird
        Launch Thunderbird.
`-tb --thunderbird`

> Launch Thunderbird.


= Examples =
## Examples ##

    Full rebuild:
Full rebuild:

        make.py LANG -b -d -js

    After modifying grammar rules:
After modifying grammar rules:

        make.py LANG -t

    If you modify the lexicon:
If you modify the lexicon:

        make.py LANG -d -js

    If you modify your script build_data.py:
If you modify your script `build_data.py`:
        make.py LANG -b -js


        make.py LANG -b -js