Re: discoveries! gtk DOES dim... how can i infinite-loop?



On Thu, Jan 19, 2012 at 09:05:47PM -0700, Michael Torrie wrote:
Date: Thu, 19 Jan 2012 21:05:47 -0700
From: Michael Torrie <torriem gmail com>
Subject: Re: discoveries! gtk DOES dim... how can i infinite-loop?
To: Gary Kline <kline thought org>
CC: GTK Devel List <gtk-app-devel-list gnome org>

Gary, based on conversations in the past about what you are trying to
do, I whipped up a little program that just might approach what you are
trying to do.  If I understand you correctly, you wish to do the following:

- type text in an editor where abbreviations are expanded (by macros in
gvim or some other mechanism in another editor) to full words or
phrases, so that you can compose text faster, even with disabilities.
- speak the written text with espeak the text
- save what was spoken so you can load it back up and re-speak it, or
edit it and speak it again.

Seems like the big requirement is the ability to use abbreviations.  I'm
not clear on how gvim does it for you, but the GtkSourceView2 widget
(not part of GTK, but all distros have it and it's fully integrated with
GTK) supports what are called "Completions."  They are intended for use
with programming, but they also can function as an abbreviation
mechanism.  As you type, when an abbreviation is detected it can pop up
a suggestion that pressing enter will accept, or keep typing and the
suggestion will change or go away.  Multiple suggestions can be made as
well.

So, here's my program.  It's written in Python, since python is one of
the absolute best languages for rapid prototyping.  This app did not
take much time to write, and it gave me a chance to refresh my skills
and learn how to use some more advanced GTK widgets like the TreeView.
Anyway, my program does not save what was spoken to disk, though that
can be added very easily.  It does save what was spoken during one
session of running the program.  As well, currently abbreviations are
hard-coded in completion.py, but again that could be saved to disk
easily.  There's already a dialog for editing the abbreviations within
the program.

I believe it does most of what you require, and could be expanded very
rapidly.  It is written in Python, but now that the prototype is made,
it could be converted to C easily, though there is no advantage in doing
that really.  The GUI itself was made in Glade-3, so the actual widgets
and the magic behind the TreeView is hidden somewhat.  Glade has the
advantage of making it very easy to rapidly develop the GUI.

Anyway, the source code is here:
git repo: http://www.torriefamily.org/~torriem/tts_assist.git
tarball:  http://www.torriefamily.org/~torriem/tts_assist.tar.gz

You will need to install pygtk2 and gtksourceview2.  On Fedora those are
the exact package names.

I think it would be fun to develop this further (perhaps porting to
GTK3), but I thought I'd post what I had.  If it's not useful, that's
fine.  Python makes coding fun and very fast!

Michael



        this sound very much worth looking into and i will ... just
        as soon as i figure out what is causing my gtk app to dim.

           {by the way, two+ days without power up here in metro
           seattle in what cause the delay in responding.  i was
           getting ready to google up the async call the first time
           the power went South... .}

        i am still resty with gtk and thursday night it occurred to
        me that sinced i was beginning with the "Run" button, that
        *that* might be where i should jump into a loop.  rather
        than from my voice_edit recursive function.

        gary



-- 
 Gary Kline  kline thought org  http://www.thought.org  Public Service Unix
           Journey Toward the Dawn, E-Book: http://www.thought.org
          The 8.57a release of Jottings: http://jottings.thought.org
             Twenty-five years of service to the Unix community.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]