On 3/13/13 3:04 PM, 2 wrote:
> Hi,  this is a wonderful extension, I would like to take a look, how can I 
> get it?

you can't get the extension at the moment and it would not help you. The
extension works only with a server backend and/or a valid account.

And I think the extension is still under development...


Juergen

> 
> 
> 
> 在 2013-03-13 21:30:26,"Jürgen Schmidt" <jogischm...@gmail.com> 写道:
>> On 2/7/13 5:30 PM, Jürgen Schmidt wrote:
>>> On 2/7/13 5:08 PM, Kai Labusch wrote:
>>>> Hi everyone,
>>>>
>>>> I'm a colleague of Robert Barbey at Acrolinx and I'm working on the 
>>>> OpenOffice 
>>>> Writer integration of our client-server text-processing solution.
>>>> Currently, we already have a working writer extension that has been 
>>>> implemented in java and provides the functionality we need. 
>>>> For the implementation, we had to modify the AOO sources and add/change 
>>>> some 
>>>> API-functions/interfaces.
>>>>
>>>> Robert already posted a call-for-review for a modification of the 
>>>> XSmartTagRecognizer interface ("[Call-for-Review] Extension to 
>>>> XSmartTagRecognizer interface", 
>>>> https://issues.apache.org/ooo/show_bug.cgi?id=121391). We modified this 
>>>> patch 
>>>> request according to suggestions of Ariel and Jürgen and submitted a new 
>>>> patch 
>>>> request that is also mentioned in this post.
>>>>
>>>> During development of our writer extension we stumbled on a number of 
>>>> issues 
>>>> where we felt the need to modify something within AOO. 
>>>> The purpose of this post is to provide a summary of these changes and to 
>>>> ask 
>>>> for comments and input since there might be better ways to solve the 
>>>> problems 
>>>> we had without the need to change something within AOO.
>>>>
>>>> We splitted all the modifications in five different patch-sets where each 
>>>> patch-set contains a number of changes that belong to a common aspect.
>>>> We submitted the patch-sets via bugzilla and I will refer to them in this 
>>>> post 
>>>> later on.
>>>>
>>>> First, as a motivation, I would like to describe the most important 
>>>> aspects of 
>>>> what our writer extension does:
>>>>
>>>> The extension adds a toolbar and menu to the writer application. The menu 
>>>> and 
>>>> toolbar have a "check"-button/entry that can be used in order to 
>>>> simultaneously check the document for different types of issues.
>>>>
>>>> Among others, issues can be:
>>>> - spelling errors
>>>> - grammar errors
>>>> - style rules (like "Don't use Future tense", "Don't use passive voice")
>>>> - reuse (use a different/better phrase that already has been approved due 
>>>> to 
>>>> some reason)
>>>> - terminology (use a different word)
>>>> - sentence break missing
>>>> - broken link
>>>> - sentence too long
>>>> - wrong capitalization
>>>>
>>>> If the user clicks the check-button, the writer extension would extract 
>>>> the 
>>>> text of the document and send it to a server application. 
>>>> The server application performs a linguistic analysis of the document and 
>>>> creates a report of all issues that have been identified. 
>>>> The writer extension then receives the report and marks the issues within 
>>>> the 
>>>> writer document. 
>>>>
>>>> For each issue, a smarttag is shown where its type is depicted by the 
>>>> color of 
>>>> the smarttag line (colors can be configured, for instance: spelling -> 
>>>> red, 
>>>> grammar -> blue,  style-> green ...). 
>>>>
>>>> The extension does not only send the text of the document to the 
>>>> linguistic 
>>>> server but also context information like character-style,  
>>>> paragraph-style, 
>>>> font-type. The linguistic rules within the server application are context 
>>>> sensitive, i.e., they might behave differently  depending on the context 
>>>> of a 
>>>> particular part of the text (for instance different capitalization in 
>>>> titles).
>>>>
>>>> Furthermore, they are also  context sensitive with respect to the 
>>>> surrounding 
>>>> text, i.e., it is not sufficient to consider only one or two words (for 
>>>> instance "sentence too long"). The context can be quite large since the 
>>>> system 
>>>> can be configured so that certain document structures (entire paragraphs, 
>>>> footnotes, image captions...)  are considered as parenthetic elements 
>>>> which 
>>>> are removed from the normal text-flow or completely ignored. Since the 
>>>> outcome 
>>>> of the checking process can depend on the entire document, it is not 
>>>> possible 
>>>> to perform the check based on a part of the text as it is done in some 
>>>> proofreading APIs.
>>>>
>>>> Due to the reasons mentioned above, it is neccessary that the smarttag 
>>>> extension can globally identify and localize a particular part of the text 
>>>> within the entire document. Therefore, we felt the need to introduce a new 
>>>> interface "XRangeBasedSmartTagRecognizer" that can be optionally 
>>>> implemented 
>>>> in a smarttag extension. The smarttag manager inside AOO would check if a 
>>>> smarttag recognizer implements this additional interface. If the interface 
>>>> has 
>>>> been implemented, the smarttag manager would call "recognizeTextRange" 
>>>> which 
>>>> provides a globally identifiable text range to the recognizer 
>>>> (https://issues.apache.org/ooo/show_bug.cgi?id=121730). 
>>>>
>>>> To enable the marking of text by means of such a text-range, we extended 
>>>> the 
>>>> XTextMarkup interface 
>>>> (https://issues.apache.org/ooo/show_bug.cgi?id=121734). 
>>>>
>>>> To make colored smarttags possible, we felt the need to modify SwWrongArea 
>>>> and 
>>>> the lcl_DrawWrongListData function within the AOO sources 
>>>> (https://issues.apache.org/ooo/show_bug.cgi?id=121733). 
>>>>
>>>> If the user clicks on a smarttag, he/she gets a context menu that offers 
>>>> actions to improve the document. What these actions are depends on the 
>>>> type 
>>>> and context of the marked part of the text. Depending on the type of issue 
>>>> and 
>>>> the actual issue itself the number of actions might vary.
>>>> In order to make this possible, we felt the need to modify the 
>>>> XSmartTagAction 
>>>> interface (https://issues.apache.org/ooo/show_bug.cgi?id=121731).
>>>>
>>>> If the user applies some action to the document, the action could 
>>>> invalidate 
>>>> other smartags at different locations in the document. For instance, the 
>>>> begin 
>>>> and the end of a sentence is marked as a result of a "sentence too long"-
>>>> issue. If the users chooses the "ignore"-action of the begin-smarttag, the 
>>>> corresponding end-smarttag would be removed too. Furthermore, the menu and 
>>>> toolbar have buttons/entries to hide/show the smarttags that are related 
>>>> to 
>>>> our extension. Therefore, we added a new interface "XMarkingAccess" that 
>>>> is 
>>>> implemented by SwXTextCursor and can be used in order to invalidate and 
>>>> repaint/remove/recolor the smartags within a particular text-range 
>>>> (https://issues.apache.org/ooo/show_bug.cgi?id=121732). 
>>>>
>>>> We would like to present our modifications to the community since we think 
>>>> that they might add desirable functionality to AOO that enables the 
>>>> implementation of more powerful smarttag-extensions that could not be 
>>>> realized 
>>>> before. 
>>>>
>>>> Here at Acrolinx, we have set up an AOO build environment for 
>>>> Windows/Linux/OSX which provides us with a patched AOO that can already be 
>>>> used together with our software. In the long run, we would like to 
>>>> integrate 
>>>> our software into a standard version of AOO.
>>>>
>>>> I'm looking forward to your comments and criticism.
>>>>
>>>> Best regards,
>>>> Kai Labusch
>>>>
>>>
>>> just to let you know that I will take a look on it later, it seems I
>>> will need a few minutes ...
>>>
>>> But I appreciate that you take our concerns serious and reworked on your
>>> patch. Your extension will be definitely useful.
>>
>> sorry for the delay but I have taken a look on it now and I am in
>> general fine with the patch. By the way Kai send me off-list a combined
>> patch for all issues that I have applied locally and tested.
>>
>> I found a few things that I had to correct.
>>
>> - a missing include of XInterface in the new IDL XMarkingAccess.idl, IDL
>> compile error on Mac, surprising that it worked for you
>> - checking if xPropertyBag is valid in wrong.hxx because my Java Test
>> SmartTag insert a null interface for XStringKeyMap
>>
>>
>> The interface name "XMarkingAccess" and the method name
>> "invalidateMarkings" sounds somewhat strange but I have to confess that
>> I don't have a much better name in place. Maybe somebody else has a good
>> name in mind?
>>
>> My Test SmartTag implementation worked quite well after I have made 2
>> minor changes
>> - adapt the changed method name: commitTextMarkup -> commitStringMarkup
>> - add new additional parameter XStringKeyMap to method
>> XSmartTagAction.getActionCount(...)
>>
>> If nobody raised further concerns or come up with a better name for the
>> new interface XMarkingAccess I plan to integrate it later this week.
>>
>> @Kai, I hope we will see more from you and you will make use of the
>> opportunity to enhance/extend an open source program with general new
>> features to make use of them later on in your own extension. But others
>> can benefit from the new enhancements as well. Or you help us to fix
>> issues that prevent you from using AOO. I think this exactly is the key
>> of open source and our opportunity to build an eco system around
>> OpenOffice. It must be possible to add value on top of or to AOO
>> (proprietary or free) to open further business opportunities. In your
>> case it is to make AOO ready for enterprises to use your powerful,
>> professional proof reading software (more than a grammar checker). I
>> think this is a very nice example and I am looking forward to further
>> contributions from you.
>>
>> Once it is integrated I would like to write a blog entry about it
>> together with you to make this more visible. It is exactly what AOO
>> needs to grow effectively.
>>
>> And more general we should blog about all new features, important bug
>> fixes, etc that somebody brings in the office. We should blog about all
>> the good things we are doing, the logo contest, the QA, the translation ...
>>
>> Juergen
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
>> For additional commands, e-mail: dev-h...@openoffice.apache.org
>>


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org

Reply via email to