[prev in list] [next in list] [prev in thread] [next in thread] 

List:       koffice-devel
Subject:    [GSoC Proposal] KWord Plugins: MediaWiki translation, Auto-Correction,
From:       Nicholas Sinlock <isolatedincident () gmail ! com>
Date:       2009-03-27 17:34:09
Message-ID: 49CD0E11.3010901 () gmail ! com
[Download RAW message or body]

Hello everyone, I'm submitting a new proposal for comments.  This is 
still a partially rough draft, but I
feel like I've gotten most of the details nailed down.  Some of it may 
be partially incomplete because of
that and the time constraints I wrote this under.

["GSoC-KWord-Plugins-txt.txt" (text/plain)]

Name:
Nicholas Sinlock
 
Email Address:
IsolatedIncident@Gmail.com
 
Freenode IRC Nick:
nsinlock
 
Location (City, Country and/or Time Zone):
Ellicott City, Maryland, U.S.A. (Eastern Standard Time)
 
Proposal Name:
KWord Plugins: (media)wiki markup translation, auto-correction, and source code colorization 

Motivation for Proposal / Goal:
	This collection of plugins will introduce new, useful functionality into the KWord application of \
KOffice. Wikias, especially media wiki's, are becoming more popular over time, yet KWord is unable to \
recognize or translate those markups into the native KWord format. Implementing this plugin will enable \
the conversion of wikia pages into printable text documents. But even beyond that, it will also create \
the necessary background code to work off of when implementing KWord to (media)wiki markup translation.  \
Auto-correction in KWord 2.x is currently only partially implemented. Fully implementing this \
functionality will return KWord to the previous level of functionality enjoyed in 1.x. It will also allow \
for me to more easily implement the third plugin, the source code colorization plugin. KWord isn't \
necessarily the best choice for editing source code, but this plugin will be useful for users who want to \
compose documents which feature source code within their texts. The colorization allows for the source \
code to stand out within the document.  

Implementation Details:
	All of these plugins will be extending the kotextplugin class, which will allow them to modify the text \
only after a modification has been made to a word or paragraph within the document.  If possible I will \
use some existing code which converts (media)wiki to xml and modify it to convert the (media)wiki markup \
fully to the KWord standard. There are several options, including a python library, mwlib, which can \
parse mediawiki to a variety of formats. If I am unable to use any existing code, then I will have to \
write the specific code to parse and convert the (media)wiki markup into the KWord xml. The goal would be \
to run the plugin whenever a change is made to a paragraph, on that specific text. Either way, this would \
mean that when a person inserts a wikia page into KWord, the plugin will automatically translate those \
markups into markups understandable by KWord. Finally, since the plugin would only look at newly edited \
code, it could also react to a user typing in those markups, and shouldn't take up too many resources.  \
The auto-correction plugin will be superficially similar to the above plugin. It will implement the \
features not yet implemented within KWord 2.x. Currently, that includes the ability to use list \
formatting for bulleted paragraphs and autonumbering for numbered paragraphs. I can most likely borrow \
part of this code from kdelibs and kwrite/kate or even some of the code from KOffice 1.x for any \
functionality previously implemented.  The source code colorization plugin should be the easiest as I can \
borrow code from the previous plugins, and from Kate/KWrite. Kate/KWrite currently offer source code \
colorization for a number of languages. I can use the code, found in kdelibs under Kate/Syntax, and \
either borrow that code or write up new code based upon that code. Under kdelibs, there are also the xml \
definitions used in the syntax/source code colorization. I can simply access those from kdelibs or create \
a separate copy within the plugin structure. The plugin will detect a change in the document, and then \
use the Kate/KWrite code to detect and color and source code input into the document. The plugin will \
have to be selectively turned on, however, since otherwise the plugin would have to check the change \
against all of the possible source code types. Kate seems to implement this intelligently either setting \
it based upon the file type, or allowing a user to select the code type to be checked against.

Tentative Timeline:
My goal would be to start on the (media)wiki plugin in first, as it seems to be the most difficult. I \
would expect to finish the plugin within several weeks. I would then work on the auto-correction plugin, \
then the source code colorization. Since these ideas can reuse code from the previous plugins, I would \
expect them to take progressively less time. By the half way point, I plan on being done with the \
(media)wiki plugin, and be in the process of coding the auto-correction plugin. I'm confident that all \
three plugins can be successfully implemented within the allotted time.  

Do you have other obligations from late May to early August (school, work, etc.)?:
No.
 

About Me (let us know who you are!):
	I'm a freshman/sophmore Computer Science major in the University of Maryland: College Park(www.umd.edu \
and www.cs.umd.edu). I have experience programming in C++, Java, and Python. I've worked a little with \
both KDE and Qt, but I am still very new to Free Software. This would be my first major Free Software \
commit.    love KDE and KOffice, I run a KDE distro on both of my machines and am using KWord to write \
this document.(Not that this necessarily matters)



_______________________________________________
koffice-devel mailing list
koffice-devel@kde.org
https://mail.kde.org/mailman/listinfo/koffice-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic