2011年4月27日星期三

Time Plan about implementation of Hyphenation support in AbiWord

First version of my time plan. I will make a detailed disscusion with my mentor


Time Plan about implementation of Hyphenation support in AbiWord
Chen Xiajian

Date
Plan to do
Week 1
1 Read more about Enchant and get familiar with the use of Enchant in AbiWord (this step will make an abstraction of the hyphenation algorithm)
2 Search and find more libraries which can be used to determine the breakpoints within words. Includes:
Ø  Some TeX formatting system
Ø  Open Source libraries
Ø  If possible pull out just the code we need from some package. 
Ø  Care about the language factors(besides English)
3 Learn more about Hyphenation algorithm

Deliverable 1:
Make a summary about Enchant and the open source hyphenation libraries
Choose one most suitable for us
Week 2
(continue and finish) 
1 Some programming test about Open Source hyphenation libraries
2 Make a code framework about where to add code(to make code more flexible)
3 Design the data structures of Hyphenation
4 Building the hyphenationChecker using open source library in Enchant
hyphenationChecker is the name I define in Enchant to deal with hyphenation

Deliverable 2:
1 Summary Document
2 Patch about data structures of Hyphenation
3 Make an patch about hyphenationChecker
Week 3
1 Fix possibly remaining bugs to have a good foundation for the further.
2 Read source code and place hyphenation points called from the Enchant
The codes in src/text/fmt/xp/*.(h,cpp)
Ø  fb_LineBreaker.(h,cpp) and
Ø  fb_Alignment.(h,cpp)



Deliverable 3:
1 Make an patch about implementation of hyphenation points
2 Fix remaining bugs
Week 4
1 Draw the hyphenation characters in AbiWord
2 Find more good dictionary to have a good coverage of different language and words

Deliverable 4:
1 Make an patch about preliminary results
2 Make a summary of dictionary
Week 5
(continue and finish)
According to Martin, it seems that it's a difficult task. Time is needed.
1 Have more tests
2 Again, Fix possibly remaining bugs
3 Prepare some document that Google required in Mid Evaluation

Deliverable 5:
1 Fix remaining bugs
2 Some document that Google require
July 15
Mid Evaluation
Week 6
1 Care about some special languages and special words

Deliverable 6:
1 Have an more good result to support more language and words
Week 7
Rejoin hyphenated words as they get moved via the users editing.
Codes:  src/text/fmt/xp/fl_BlockLayout.cpp
More tests

Deliverable 7:
Patch about implementation of this function
More tests
Week 8
1 deal with the result: misspell words are correctly handled after hyphenation.
2 Test and Refactor

Deliverable 8:
1 Patch about implementation of this function
2 better version
Week 9
(continue and finish)
 1 Fix new or remaining bugs
 2 Some documents what GsoC needed
Week 10
(continue and finish)
Time for emergency
August 16
Suggested 'pencils down' date. Take to scrub code, write tests, improve documentation, etc.
August 26
End

没有评论:

发表评论