<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>Le 2 avr. 10 à 13:59, Jonas Finnemann Jensen a écrit :</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Yo! Hackers of ooo-build!</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"></span></div></blockquote><div><br class="webkit-block-placeholder"></div><div>Hi,</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div>Apologies for answering you lately, but I was away from keyboard (and home) most of the week.</div><div><br class="webkit-block-placeholder"></div><div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"> </span>- That's how your application template says this mail should start :)</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">I'd like to improve StarMath as a GSoC project. Having been annoyed <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">with the equation editing interface for years, I figured I'd draft</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">proposal for a WYSIWYG interface like MathType, LyX, kformula and <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">similar equation editors...</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><br class="webkit-block-placeholder"></div></blockquote><div><br class="webkit-block-placeholder"></div><div>Ok.</div><div><br class="webkit-block-placeholder"></div><div>Did you already finished the exercice ? </div><div><br class="webkit-block-placeholder"></div><div>if so, please send me the diff as written below, else please read the archives : Fridrich and Cédric certainly proposed the link a lot of times ;)</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">If people have emotional attachments to the old text interface, I see</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">no problem having it available too... :)</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Anyway, I would like to hear what you think of the proposal and if <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">anybody would mentor it... </span></div></blockquote><div><br></div><div><br class="webkit-block-placeholder"></div><div>About who will mentor it, that's probably me. Now, to be honest, I must tell you that there are a lot of candidates (we'll try to select the best one for every application), and not that much of slots, so we cannot promise anything yet.</div><div><br class="webkit-block-placeholder"></div><div>Nevertheless, thank you very much for the proposal, and continue to proof you are the one !</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>See the comments inline.</div><div><br></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">Note, this is just draft, I'll post the</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">finished proposal on socghop.appspot.com</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div></blockquote><div><br class="webkit-block-placeholder"></div><div>Ok.</div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Project description:</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Currently equations are edited using a text based interface. It's <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">possible to click on the equation and move the text cursor. However,</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">the visual cursor, visual cursor movement and input relies completely <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">upon the text based interface. This means that the visual cursor is</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">unreliable and almost useless. It also means that the visual cursor <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">cannot make a selection or be expected to move when you push the arrow</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">keys...</div></blockquote><div><br class="webkit-block-placeholder"></div><div>Indeed, good remark.</div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">The solution is to make the visual cursor independent of the text <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">interface, accept keyinput and act according to this input. The goal</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">is to get an editing interface as is known from MathType and the <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">likes...</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div></blockquote><div><br class="webkit-block-placeholder"></div><div>Ok. FYI, the MathML export is one of the Writer Team todos.</div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Deliverables:</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">An easy to use visual interface for editing equations featuring:</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"> </span>* An visual cursor represented by a blinking line that move correctly</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"> </span>* Selections with support for copy, cut, paste and delete</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"> </span>* Character and digit insertion by keyboard input with immediate</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">update/repaint</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div></blockquote><div><br class="webkit-block-placeholder"></div><div>Ok</div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Nice to have:</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"> </span>* New easier and prettier way to browser special symbols</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"> </span>* Missing symbols...</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"> </span>* Fixes for other issues in the StarMath, such misalignment...</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div></blockquote><div><br class="webkit-block-placeholder"></div><div>Currently, some symbols are missing (I got two in mind). So, implement one or several is really the same.</div><div><br></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Implementation strategy:</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Having looked at the source, this is a brief outline of how I imagine</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">the goal could be accomplished.</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">    </span>* Make SmGraphicWindow grab focus and disable cursor <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">synchronization with SmEditWindow</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"></span></div></blockquote><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>This must be investigated more, due to possible side effects of "grabing focus".</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">    </span>* Methods on SmNode and subclasses to support visual movement</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">        </span>- MoveIntoFromLeft</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">        </span>- MoveIntoFromRight</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">        </span>- MoveLeftOfChild</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">        </span>... Or whatever turns out to be necessary</div></blockquote><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>If I remember correctly, this visual movement already exists ? (but not as cursor, I agree) </div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">    </span>* Make it possible for the cursor to be within the characters of a node...</div></blockquote><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"></span></div></blockquote><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>Ok I see the idea, but I wonder: when in editing mode, the cursor can go whereever already ? I can be wrong there, but I'm not sure this effort worth it.</div><div><br></div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">        </span>- New cursor representation...</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space"></span></div></blockquote><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div><div>Looks interesting (but needs more investigations)</div><div><br class="webkit-block-placeholder"></div></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">    </span>* Handle keyinput on SmGraphicWindow</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">        </span>- Move the visual cursor</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">        </span>- Delete nodes</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">        </span>- Select nodes for copy, cut, insert and delete</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">        </span>- Insert characters, digits, brackets, parenthesis etc...</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-converted-space">    </span>* Draw a prettier cursor, e.g. a blinking line</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div></blockquote><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>I don't see : equation alignement ? Did you already tried to reopen ancient documents ? There is an obvious bug, since 2001 (OMG .. :-/ ) and who needs to be fixed urgently, before the (nice) proposals you did IMHO.</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">My qualifications:</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">I'm a fourth semester CS student at Aalborg Universitet in Denmark. I <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">have reasonable C++ skills. I wrote a cross-platform distributed ray</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">tracer in C++ as semester project last year and is currently doing a <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">compiler project in C++ (So I'm also familiar with parsing). I've also</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">played with Qt/C++, wrote a OneNote inspired note-taking application <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">last summer, haven't released it...yet... This Christmas I spend the</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">holidays writing an equation editor for it, never finished, but got <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">the basics working: cursor movement, selection, deletion and</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">insertions...</div></blockquote><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>Thanks for the information. The code you'll dive in, is mostly C++, so, on the skill side, your profile looks ok.</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">I also completed GSoC last year, writing a twitter client with PyQt <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">for WinLibre...</span></div></blockquote><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>Great to see you already applied. Noticed.</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">I'm Linux user since 05 or something... and have used OOO for quite a <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">few years... Before I became a LaTeX user... :)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Apart from C++, I'm also fairly skilled in python, various web <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">languages, C and C#... And have done desktop development using Qt,</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">pyGtk/Gtk#, Windows.Forms and a little Cocoa#... My most successful <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">project so far is TheLastRipper (currently unmaintained), an audio</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">stream recorder for Last.fm, latest version have been downloaded more <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">than 100k times across all platforms...</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">If you want to know more about me ask me... or checkout my blog</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">(<a href="http://jopsen.dk/blog/">http://jopsen.dk/blog/</a>)...</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div></blockquote><div><br class="webkit-block-placeholder"></div><div>Will do :)</div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Ps. I have completed the exercise... My solution is a really ugly <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">hack... As a prober solution would be an simple XML change... Anyway</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">the nasty hack is here:</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><a href="http://jopsen.dk/downloads/go-oo_exercise.diff">http://jopsen.dk/downloads/go-oo_exercise.diff</a></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Have also figured out how to build and debug, though I have to admit</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">that I used a graphical debugger (beaverdbg)...</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div></blockquote><div><br class="webkit-block-placeholder"></div><div>Can you please send me the diff ?  (please speak us patch language  ;-)  </div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">By the way having looked at the code for StarMath and bit of VCL <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">headers, I'm left wondering is there a policy against comments ? :)</span></div></blockquote><div><br class="webkit-block-placeholder"></div><div>There is a coding guideline already with OOo (search in OOo wiki). </div><div><br class="webkit-block-placeholder"></div><div>The common rule (to my knowledge/experience) is to comment the role of something important (not obvious) in the headers, and when the information is mandatory, or for a bugfix (add the issue number *helps* ) to add the important info in the implementation, but only when necessary.  Hope this helps.</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Anyway, would like to know what you think of my proposal... Is it too <span class="Apple-style-span" style="-webkit-text-stroke-width: -1; ">small or big?</span></div></blockquote><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>Looks acceptable.</div><div><br class="webkit-block-placeholder"></div><div>Did you work with mathematics professors/teachers ?  To avoid useless changes, and since those professors are "prescriptors" for this feature, I strongly think we need their opinions for any Math improvement as starting point.</div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><span class="Apple-style-span" style="-webkit-text-stroke-width: -1; "> Would be better if focused on fixing misalignment and then took care of the editing interface if I had time for it ?</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><br class="webkit-block-placeholder"></div></blockquote><div><br class="webkit-block-placeholder"></div><div>Yes, since this is the first request.</div><div><br class="webkit-block-placeholder"></div><br><blockquote type="cite"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Also, if you'd like it, I'll do some mock-ups before final submission...</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><br></div></blockquote><div><br class="webkit-block-placeholder"></div><div>Please improve the proposal adding what you propose, in first place, for the equation misalignment. </div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div><br class="webkit-block-placeholder"></div><div>Thanks in advance !</div><div><br class="webkit-block-placeholder"></div><div>Eric Bachard</div><div><br></div></div><div> <span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px 0px; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-align: auto; -khtml-text-decorations-in-effect: none; text-indent: 0px; -apple-text-size-adjust: auto; text-transform: none; orphans: 2; white-space: normal; widows: 2; word-spacing: 0px; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">-- </div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">qɔ<font class="Apple-style-span" face="Lucida Grande"><span class="Apple-style-span" style="font-family: Lucida Grande; ">ᴉɹə</span></font></div><div><br class="khtml-block-placeholder"></div><div><br class="khtml-block-placeholder"></div><br class="Apple-interchange-newline"></span> </div><br></body></html>