Commit graph

140 commits

Author SHA1 Message Date
Jean Chalard
a8058d169d Cleanup after dicttool
Arrange for temporary files to be deleted.
Also, add a security on stack overflows.

Change-Id: I9da2ebefb06409a71b235243ea835ce10d6a9b81
2012-10-30 19:57:02 +09:00
Jean Chalard
ee0b5488b5 Implement the package command
Bug: 7388852
Change-Id: Ib6a50e02894961b4c7d3f57bc0fc70c3b3bfe4e9
2012-10-30 18:42:58 +09:00
Jean Chalard
ba98b63983 Add the unpackage command
Bug: 7388852
Change-Id: I7e5376f5d646e669884ef78e4e0dee62c99d4d6b
2012-10-30 18:20:26 +09:00
Jean Chalard
e44358d2eb Add an empty crypt command to aosp dicttool
This also makes the AdditionalCommandList useless,
so let's remove it

Bug: 7388852
Change-Id: I308f54ca6f778afe01c1233801a9cc22ebb3d1e9
2012-10-30 17:44:39 +09:00
Jean Chalard
e5b68fb51d Accept comments in the combined file format
Change-Id: I17b745281b8b7b1922e1c2d3717986e9bb11aa0b
2012-10-29 18:08:50 +09:00
Jean Chalard
f41389a74b Remove warnings
Thanks Eclipse

Change-Id: I88e3979ed22be5d8be5a5accdde417c6b1a8bf2d
2012-10-29 14:24:16 +09:00
Jean Chalard
74d66a5513 Add word arguments to the info command (A10)
With this, it's now possible to get all the information about a word from
any dictionary.

Bug: 7388857
Change-Id: Ifc9d539f52f87044a1974d95bf35d87465e84c47
2012-10-29 12:41:57 +09:00
Jean Chalard
a23e333079 Implement the word-level diff (A9)
Bug: 7388857
Change-Id: I4c4560d4f4b579936a44cdf409a4c27300b65610
2012-10-29 12:31:22 +09:00
Jean Chalard
0c5b93800e Add the dicttool diff command. (A8)
This is an initial implementation, it does not
do everything just yet.

Bug: 7388857
Change-Id: I11543973a4657e122ca3475225059b06b9a3f2b9
2012-10-29 11:15:15 +09:00
Jean Chalard
6ecc50a867 Add a reporting option to the getDictionary method (A7)
This is refactoring to help future changes

Change-Id: I8c4372383a2fff5805b96cc47df5012e4b231004
2012-10-29 10:39:40 +09:00
Jean Chalard
47cac57e45 Finish up the "info" command in dicttool. (A6)
Bug: 7388857
Change-Id: I704f12a6be76ce1644ec5e8dd3b667f112e9c04a
2012-10-25 19:15:24 +09:00
Jean Chalard
f1d35ac5dc Implement a part of the "info" command (A5)
Bug: 7388857
Change-Id: Id1bba7a33ab6195d5711bebb1df5c18c9c08925c
2012-10-25 18:19:10 +09:00
Jean Chalard
3862b9e819 Add symmetry and pre-emptively improve performance (A4)
The test for binary dictionary will soon entail decrypting and
uncompressing files if necessary to test for their headers, and will
become much slower than it is. It's better to be able to detect the
XML format too, and leave the slower test for last.

Bug: 7388852
Change-Id: I6b9a7944de80217e1571cab65dcd1cff347b3046
2012-10-25 17:20:24 +09:00
Jean Chalard
0044df6cf2 Add automatic decryption capabilities. (A3)
Bug: 7388852
Change-Id: Ie952b1ad6cfad2f83793bd968e159d3cfbf20a47
2012-10-25 16:47:32 +09:00
Jean Chalard
b3c98901c5 Add auto detection and decoding of dictionary files. (A2)
Bug: 7388852
Change-Id: I25e755fc15f5b383acc046f668e9681efa4f0c2f
2012-10-25 16:40:15 +09:00
Jean Chalard
77fe603a3d Some initial refactoring in dicttool. (A1)
Bug: 7388852
Change-Id: I5ff70d12f3a8096ae6fb8cd4883a32ffe1683c9b
2012-10-25 16:40:11 +09:00
Jean Chalard
9bb4eebf48 Add reader and writer for the combined dict format.
This introduces a new textual format for the dictionary that combines
words, bigrams and shortcuts to avoid complexity. It is also extensible
to n-grams to fool-prof for the future, and easier to read than XML.

Bug: 7388540
Change-Id: I942bbad51bd0c905a5a54c278667563fd6dd66ec
2012-10-23 15:06:25 +09:00
Jean Chalard
cbb3252731 Merge "Use a buffered writer for XML output" 2012-10-22 18:54:38 -07:00
Jean Chalard
000a020e32 Use a buffered writer for XML output
Change-Id: I85aa133985282993542659db2ee61960b02042d7
2012-10-23 10:42:22 +09:00
Tadashi G. Takaoka
15f6d4ae34 Add @UsedForTesting and @ExternallyReferenced annotations
Bug: 7268357
Change-Id: I0b7e0c19f04af9ae30874d0a4c26ad81bc80be8c
2012-10-22 11:18:43 -07:00
Tadashi G. Takaoka
243c1fecc6 Sync package name and source path
Change-Id: I8d3ded01c508c3afaa0d8afa9ce1445117626ddc
2012-10-19 18:14:19 -07:00
Jean Chalard
99b84b42f9 Use a freq of 1 instead of 0 for non-word shortcuts.
Also fix a spelling mistake in a comment

Bug: 7301525
Change-Id: I4437403dce620fed03871485ee04f13c51ce34fc
2012-10-09 19:16:07 +09:00
Yuichiro Hanada
cc958dd96e Refactor BinaryDictInputOutput.
Change-Id: Idb4b635fcac70cc988e0dd3ce3bf121fba12099c
2012-09-14 11:08:01 +09:00
Yuichiro Hanada
1a347723c5 Move FormatOptions and FileHeader to FormatSpec.
Change-Id: I232e35598635113bf2c81825669c744aadc79efe
2012-09-13 16:35:41 +09:00
Yuichiro Hanada
debe3b4555 Have makedict support the new file format.
Change-Id: Idcbba71b397f87a5d59e16bb4061d62261c73282
2012-09-10 17:47:06 +09:00
Ken Wakasa
60af4f03a8 Fix dicttool_aosp build
Change-Id: Iabcf420b4120e3d275fdbcb23939a0ab6052ddf0
2012-09-10 12:56:10 +09:00
Yuichiro Hanada
83dfe0fd8c Add FormatOptions.
Change-Id: Ibad05a5f9143de1156b2c897593ec89b0a0b07e7
2012-09-05 18:05:43 +09:00
Jean Chalard
72b1c93941 Reinstate the shortcut-only attribute
Also add the blacklist attribute

Bug: 7005742
Bug: 2704000
Change-Id: Icbe60bdf25bfb098d9e3f20870be30d6aef07c9d
2012-08-31 22:11:52 +09:00
Yuichiro Hanada
d4fe7fda30 Use ByteBuffer when reading FusionDictionary from file.
Change-Id: Ia71561648e17f846d277c22309ac37c21c67a537
2012-08-24 13:31:08 +09:00
Ken Wakasa
4af100759b (DO NOT MERGE) Remove useless module tags from makefiles
Change-Id: If77482da66e80b762cf205369f7d53d069cd8072
2012-08-17 20:12:49 +09:00
Jean Chalard
565fdeee7d Reinstate putting shortcut-only entries in the dictionary
Not sure at which point this functionality got lost, but
anyway, it's back

Bug: 6906525
Change-Id: Ie87baa0dacdcee90e029917ca866099593d5d048
2012-08-10 15:51:53 +09:00
Jean Chalard
31b90a368f Support a syntax to add whitelist entries in shortcuts
Bug: 6906525
Change-Id: Ie33586c07973bf76e38390766175ba424d72d655
2012-08-10 11:26:40 +09:00
Jean Chalard
ccd8ed53b3 Support stdin and stdout for compress/uncompress
This will improve flexibility in dictionary generation by
allowing pipelined commands.

Change-Id: Ia07bdc82c8bd740b5dfee6b5fd1a067f4b8b7ba5
2012-08-09 14:25:13 +09:00
Jean Chalard
4c573f3c64 Rename dicttool to dicttool_aosp and split commands
Change-Id: I83d948be2db5cd0203e876f019697e1d5e038818
2012-08-08 17:15:58 +09:00
Jean Chalard
04cccea295 Move makedict to live under dicttool (A5)
This removes the makedict directory and makes a new target
to replace it. The old command is still working the same
way it used to.

Change-Id: Ie73b12a7ef101dd2b282e0cb4206ac263af1093e
2012-08-04 02:14:13 +09:00
Jean Chalard
3598053d41 Move dicttool tests and make a script to run them (A4)
Change-Id: If582e81741c5edaf345dcb55517dcad0baa64c9e
2012-08-04 01:55:33 +09:00
Jean Chalard
54e84a00fc Make a makedict command for dicttool (A3)
This behaves exactly as the old makedict command. Further
changes will redirect the calls to makedict to this, so as
to consolidate similar code.

Groundwork for
Bug: 6429606

Change-Id: Ibeadbf48bec70f988a15ca36ebf5d1ce3b5b54ea
2012-08-04 01:11:46 +09:00
Jean Chalard
82cd20ee98 Simplification (A2)
A single command at a time and no arity gives opportunity to simplify
the argument parsing code.

Change-Id: Iff7bab78ede7448a662092f221c590a9eedae2a5
2012-08-03 23:02:39 +09:00
Jean Chalard
77c8c73837 Remove arity from dicttool commands (A1)
This unnecessarily complicates and limits commands.
It's simpler to just have one command by invocation.

Groundwork for
Bug: 6429606

Change-Id: I24cf267a9cbc937a5ba53942b29e28e7095d2fd2
2012-08-03 23:02:06 +09:00
Jean Chalard
ddcb4847df Add a tool to do intendance tasks on dictionaries.
Bug: 6429606
Change-Id: I0c7258d992a4bfa9707002f8fbc425ccde7c6172
2012-05-28 18:46:09 +09:00