Bityi (translating code editor)

From OLPC
Revision as of 04:21, 28 July 2007 by Homunq (talk | contribs) (contact me please)
Jump to: navigation, search

Almost all programming is done in programming "languages" based on English. These are really codes, much less than languages, with a limited vocabulary. Still, it's a significant barrier for other-language programmers, especially young ones. A modern computer, even a cheap one, would have no trouble doing transparent, real-time translation into the user's natural language. For instance, on disk you'd have python "if ... else...", but on screen, you'd see (and write) "si... sino..." (spanish).

To make my proposal a little more specific:

  • Based on scintilla (BOB open-source editing component, already does coloring and folding).
  • If the user unknowingly used an English keyord on-screen, it would be "escaped" with a prefix like "ES_" on disk.
  • Similarly, if a program used a whateverlanguage keyword, it could be escaped on-screen.
  • A right-click on any word shows the English version, obviously includes easy option to turn translation off globally.
  • By default, only translates keywords for given programming language, but includes option to have cascading translation files for files and the libraries they use. These could be created on-the-fly using right-clicks with dictionary support.

a few implementation brainstorms...

  • Only what's actually on screen need be duplicated in memory
  • The cursor counts as a wordbreak for speed reasons.

Interested? Contact me.... I will be continuing to explore this idea, but I'm not going to jump in with both feet unless I have some backup.--Homunq 16:20, 25 July 2007 (EDT)

Some details of scite/scintilla: GTK based, as is takes under 2 megs decompressed and with lexers for many many languages.