[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: rfc on voices tutorial [long]
- To: email@example.com
- Subject: Re: rfc on voices tutorial [long]
- From: "T. V. Raman" <firstname.lastname@example.org>
- Date: Mon, 20 Feb 2006 09:22:16 -0800
- Cc: email@example.com
- Delivered-To: firstname.lastname@example.org
- Delivered-To: email@example.com
- In-Reply-To: <firstname.lastname@example.org>
- List-Help: <mailto:email@example.com?subject=help>
- List-Post: <mailto:firstname.lastname@example.org>
- List-Subscribe: <mailto:email@example.com?subject=subscribe>
- List-Unsubscribe: <mailto:firstname.lastname@example.org?subject=unsubscribe>
- Old-Return-Path: <email@example.com>
- References: <firstname.lastname@example.org><email@example.com><firstname.lastname@example.org>
- Reply-To: email@example.com
- Resent-Date: Mon, 20 Feb 2006 12:22:18 -0500 (EST)
- Resent-From: firstname.lastname@example.org
- Resent-Message-ID: <eRKOAC.A.mGE.Krf-DB@mail>
- Resent-Sender: email@example.com
(FYI, changing cc to the list, since I like such things to be
Responses inlined below:
>>>>> "Robert" == Robert D Crawford <firstname.lastname@example.org> writes:
The ACSS settings are
average-pitch pitch-range richness and stress
The voice names are made up from these settings so
acss-a1-p2-s3-r3 tells you what the settings are.
Things like voice-bolden and friends are all overlays and
designed to cascade.
Robert> Now, I notice that there are overlays called "voice
Robert> lock overlay. Does this overlay only affect the
These were just defined as utility overlays since I couldn't come
up with a concrete name for them like bolden.
Robert> noted dimension, and if this is the case, then it
Robert> must be applied at the end of the process, right?
Since overlays cascade, they can be applied in any order,
Of course if two overlays end up setting the same param the
latter one wins.
Robert> This is the cascading part, right?
Robert> As a bit of an aside, the first overlay I came to in
Robert> the customize buffer says that it sets dimension 0 to
Robert> 8. I thought dimension 0 was for the family.
probably a documentation bug -- dimension 0 is family.
>> 2) For each such overlay there is a corresponding
>> <overlay-name>-settings variable that can be customized
>> via custom.
Robert> So, we have voice-bolden-settings that contain the
Robert> particular settings that will apply to a voice. The
Robert> variable voice-bolden is just a list of the
Robert> particular voices that voice-bolden-settings gets
Robert> applied to. Therefore, on my system I have no voice
Robert> settings applied to gnus level 1 citations, so I
Robert> could use a cons in my .emacs file to add that to my
Robert> voice-bolden list, right?
Not exactly. A robust way to do this, so that it also becomes
available through custom is to add the following line:
(voice-setup-map-face '<face-name> '<voice>)
where <voice> is something like voice-bolden or whatever else you
This will define a corresponding personality to use for this
face, and set up the customization bits.
>> Unset values (nil) show up as "unspecified" in the
>> customize interface.
Robert> I seemed to have a bit of a problem setting
You should be able to hit enter and set them Note that family
values are things like 'paul and tab will give you available
Robert> unspecified variables. Any time I tried to change
Robert> the field I was told that it was read-only. I have
Robert> not had a chance to read the customize docs. Is this
Robert> something that is covered in there?
Customize has a bizarre bug in that often hitting tab ends up
navigating to the character before the button rather than landing
on it. When that happens you get the above error.
> 4) Do not directly customize voice-bolden and friends, instead
>> customize the corresponding voice-bolden-settings, since
>> that ensures that all voices that are defined in terms of
>> voice-bolden get correctly updated.
Robert> Given my question a few paragraphs up, it seems that
Robert> I might not understand the voice-bolden variable as I
Let's try again.
0) You have acss settings in voice-bolden-settings which is a list
1) That list of numbers needs to be translated to appropriate
device-specific codes to send to the TTS engine.
2) You do not want to do this translation *each* time you
3) So when voice-bolden is defined, the definition happens in
A) The list of settings is stored away in
B) A corresponding voice-name is generated ---
and the corresponding control codes to send to the device
are stored away keyed by the above symbol.
C) Finally, voice-bolden is assigned the above symbol.
What this gives is:
0) The ability to customize the voice via custom by editting
the list of numbers in voice-bolden-settings
2) When that list is editted, voice-bolden is arranged to be
> 5) Discovering what to customize: Command
>> emacspeak-show-personality-at-point (bound by default to
>> C-e M-v) will show you the value of properties personality
>> and face at point.
Robert> Wow! How did I miss that one. Seems as if I went
Robert> from Texas to New York via Los Angeles.
It is generally useful to look at what is there in
emacspeak-wizards -- and every command there is documented in the
online info pages. What's more, looking at the code there will
teach you lots of useful emacs tricks no one will ever tell you
AIM: emacspeak GTalk: email@example.com
AIM: emacspeak GTalk: firstname.lastname@example.org
To unsubscribe from the emacspeak list or change your address on the
emacspeak list send mail to "email@example.com" with a
subject of "unsubscribe" or "help"
Emacspeak Files |
Unsubscribe | Search