The typing sound depends on a piece of text being in the MSAA
description value for a chat participant's entry in the membership
list of a chat window.  That text is "typing" in English, but it is
different for other languages, so the scripts fail to see it.  That
particular text is not really on the screen at all; the visual
equivalent that is on screen is a little squiggle or icon or
something.  There is no other reasonable way to implement the typing
sound that does not involve catching that text, unless I just use the
parentheses around the text as signal enough.  Hmm, interesting
idea...I think that will work for this one because the format of
.accDescription does not allow a left paren to begin the string unless
someone is typing.  I'll try it locally and include it for the next
release if it seems not to cause other problems.  I should warn
people, though, that I may have to take this back if Skype starts
giving us more info than it currently does about what another chatter
is doing.  Right now, we just have "typing" and "not typing" as JAWS
users.  Visually, I think there's "not typing," "Typed but erased
text," "typing slow," "typing normal," and "typing fast."  I may be
wrong about the exact list, but I know there are different icons for
several conditions like that.  In any case, for now, I'll work with
what we have and try it out.

Anyone else wanting to try this that doesn't mind editing a script
file, do this:

1.  Type Insert+0 in Skype to open the Script Manager.

2.  Type Ctrl+O, then type skype.jsm and press Enter to open the Skype
script message file.

3.  Use Ctrl+F to find the string (Typing).  You should land on a line
with (Typing" in quotes, with a space between the right paren and the
ending quote.

4.  Clear out everything between the quotes except the left paren.
That is, change "(Typing) " to just "("

5.  Type Ctrl+S to save the message file.  There will not be any beep
or confirmation message when you do this.

6.  Type Ctrl+F4, not Alt+F4, to close the message file and return to
the main script file.

7.  Type Ctrl+S again to compile the main script file.  Now you should
get the customary beep and "Compile complete" message.

8.  Start chatting and let me know if it works out in all languages.
I think it will.  If you have problems, just reinstall the scripts
from the original installer.

On Sat, Mar 29, 2008 at 06:38:26PM +0100, Jean Philippe wrote:
doug,
thank you very much for these detailed explanation, that was exactly what I was 
looking for.
I didn't understand it all at the first reading , but it appears to me that 
what really matters is the screen text translation because it will allow the 
script to perform all of its functions no matter what Skype language, even 
though it will keep prompting you in English.  If you take my typing sound 
example, I suppose it needs a screen text to work because it only works when 
Skype is in English.
Wouldn't it be possible not to rely on text at all?
I'm available if you need any help for French.

all the best,
Cheers,
JPR
http://myspace.com/jeanphilipperykiel
  ----- Original Message ----- 
  From: Doug Lee 
  To: a list for discussing skype and its use with screen access software. 
  Sent: Saturday, March 29, 2008 3:54 PM
  Subject: Re: [Skypeenglish] R: to all non-English Skype users


  These are my thoughts so far on the whole translation problem.
  Thoughts and comments welcome.

  First, a quick apology:  There is a system for translating JAWS
  scripts, using .jsm files to separate translatable material from code;
  but the scripts, as they exist now, make very poor use of that system.
  I have occasionally made progress in fixing this, but it is a long and
  tedious process to do completely.  Besides that though, I consider
  that system significantly inadequate for the task, compared to a
  system I am about to propose.

  As I see it, there are two kinds of translation when you want to
  localize a script.  The first is translation of output, meaning things
  that JAWS is told to say by the scripts.  This is a matter of
  translating one string to another based on its meaning.  For example,
  if I put a string in the code like, "There are %1 contacts online,"
  translating would just require someone familiar with both English and
  another language to translate that.  The "%1," btw, is sort of a
  placeholder for the actual number of contacts.  I will not discuss
  this translation case further here as it is a pretty straightforward
  concept that just requires time to accomplish, except to point out
  that the .jsm system is reasonably able to handle this case when the
  code is written right for it.  Sadly, some of the Skype code is
  currently not written right for it though.

  The other kind of translation deals, as has been said in this thread,
  with text that appears on screen and that the scripts need to locate.
  This is actually not a matter of "translation" per se, but a matter of
  locating the same text while running Skype in another language to see
  what text actually appears there.  To do that, of course you would
  need to know exactly where to find the text in the first place.

  To answer the question of why some things work in any language and
  some don't:  Not all functions of the scripts depend on screen text,
  and I try to minimize this dependence as a rule, specifically because
  the second kind of translation then becomes necessary.  However, some
  things do require screen text now, and those will not work without the
  second type of translation.

  I have actually come up with a plan to handle this problem, but per
  usual, it requires time I often find lacking.  The plan is to create a
  file in which messages in all languages are stored--a .ini-style file
  that is.  Each message would have a name that is language independent,
  then a translation into English and each other language.  For the
  first kind of messages (output only), the names would be fairly
  arbitrary, though generally descriptive of their purpose, such as
  "msgContactsOnline.  For the screen text messages though, the names
  would be the actual message names used internally by Skype, as shown
  in Skype's language editor.  That way, translating the screen text
  message into any Skype language becomes really easy:  Find the message
  by its name, see what it says in your language of choice, enter that
  into the file, and voila!

  But there are some time-consuming problems with my plan.  First, not
  all screen-text messages right now will exactly match any one Skype
  message.  Fixing that would require code changes I'm sure.  Second, we
  will need some way of entering so-called UniCode strings into scripts,
  for those languages (like Russian) that don't use the Roman alphabet.
  Then of course there's the time needed to write the code to support
  the new system, though I'm not sure that would take me long once I
  worked out the other two issues.

  I will close by explaining why I regard the .jsm system as inadequate.
  First, it requires separate installations of scripts for each
  language.  JAWS itself requires this though because of its way of
  putting scripts into different folders by language; so this problem is
  minor from the user's perspective.  My main problem with the .jsm
  approach is a bit complicated, but here goes an attempt to explain:  I
  listed two types of translation.  For the first, output only, all you
  need in order to choose an output language is the JAWS language
  abbreviation currently in effect.  This is easy enough to get and so
  is not a big problem.  The second type, screen text, however, is an
  issue, because the language you need depends on what language the user
  has set the application to use.  The choices of input language may
  also be totally different than the choices of JAWS language, as is
  certainly true with Skype.  Properly handling this problem requires
  the scripts to be able to switch input languages right along with the
  user's switching the application language.  A .jsm file can not easily
  handle this.

  .ini files, btw, are not perfect either:  They are very inconvenient
  for long, multi-line text strings.  I'm actually considering working
  out a way to make JAWS pull messages from an XML file for this reason,
  but that idea needs significant testing for its performance impact
  before deployment.

  Sorry for the length of this.  I just thought I should expose this
  corner of my mind for examination. <grin>

  On Sat, Mar 29, 2008 at 11:49:13AM +0100, Jean Philippe wrote:
  Dear Sarah Doug and all,
  I don't know much about scripting either.  But there's one thing I know, 
which is that to perform its duty, the script needs to localise items to click 
on in a given window.  One of the ways to do this is to localise a certain 
string of text.  It's not the only way but it's the easiest. The drawback is 
that the string of text defers according to the language in which the 
application is set. 
  What's funny is that most of the functions work when Skype is not set to 
English, only a few of them don't.
  Doug, , what do you think?
  Cheers,
  JPR
  http://myspace.com/jeanphilipperykiel
    ----- Original Message ----- 
    From: Sarah 
    To: mbarbi at fastwebnet.it ; a list for discussing skype and its use with 
screen accesssoftware. 
    Sent: Saturday, March 29, 2008 6:42 AM
    Subject: Re: [Skypeenglish] R: to all non-English Skype users


    Tha'ts a bit daunting for  now is it not? I know not how to script so I'm 
not sure about that.
    Sarah Alawami
    Check out my music page at 
    http://music.marrie.org
    Thanks and have a wonderful day.

    ----- Original Message ----- 
    From: <mbarbi at fastwebnet.it>
    To: "a list for discussing skype and its use with screen accesssoftware." 
<skypeenglish at emissives.com>
    Sent: Friday, March 28, 2008 10:28 AM
    Subject: [Skypeenglish] R: to all non-English Skype users


    The thing someone can do is to translate the scripts in order to make them 
work properly in a non'english language.
    Bye bye.
    Barbuz


    -- msg. originale --
    Oggetto: [Skypeenglish] to all non-English Skype users
    Da: "Jean Philippe" <jp.rykiel at orange.fr>
    Data: 28/03/2008 17:44

    Hi there,
    I think I discovered something important.  Maybe it was obvious to some of 
    you but I think it's good to remind it here.
    Some of the script features are not available if Skype is not set to 
    English.  For example, that was the reason of me not having the typing 
sound 
    working.  All I had to do is set Skype to English and everything was back 
to 
    normal, I now have the typing sound and the" who is typing" announcement.
    I don't know if Dug can do something about it, as it would be of course 
more 
    comfortable for each of us to have Skype said to his own language.
    Cheers,
    JPR
    http://myspace.com/jeanphilipperykiel 



    Thanks for posting to the skype english list. To  access scripts for the 
latest version of skype go to 
    http://www.dlee.org/skype
    To access tutorials and other goodies go to
    http://www.marrie.org/skype/skype.html
    thanks and have a wonderful day.


    _______________________________________________
    Skypeenglish mailing list
    Skypeenglish at emissives.com
    http://emissives.com/mailman/listinfo/skypeenglish_emissives.com


    Thanks for posting to the skype english list. To  access scripts for the 
latest version of skype go to 
    http://www.dlee.org/skype
    To access tutorials and other goodies go to
    http://www.marrie.org/skype/skype.html
    thanks and have a wonderful day.


    _______________________________________________
    Skypeenglish mailing list
    Skypeenglish at emissives.com
    http://emissives.com/mailman/listinfo/skypeenglish_emissives.com

    Thanks for posting to the skype english list. To  access scripts for the 
latest version of skype go to 
    http://www.dlee.org/skype
    To access tutorials and other goodies go to
    http://www.marrie.org/skype/skype.html
    thanks and have a wonderful day.


    _______________________________________________
    Skypeenglish mailing list
    Skypeenglish at emissives.com
    http://emissives.com/mailman/listinfo/skypeenglish_emissives.com
  Thanks for posting to the skype english list. To  access scripts for the 
latest version of skype go to 
  http://www.dlee.org/skype
  To access tutorials and other goodies go to
  http://www.marrie.org/skype/skype.html
  thanks and have a wonderful day.


  _______________________________________________
  Skypeenglish mailing list
  Skypeenglish at emissives.com
  http://emissives.com/mailman/listinfo/skypeenglish_emissives.com

  -- 
  Doug Lee                 dgl at dlee.org        
  SSB BART Group           doug.lee at ssbbartgroup.com   
http://www.ssbbartgroup.com
  In laughter, love is found; but in tears, it is forged.  (12/09/01)

  Thanks for posting to the skype english list. To  access scripts for the 
latest version of skype go to 
  http://www.dlee.org/skype
  To access tutorials and other goodies go to
  http://www.marrie.org/skype/skype.html
  thanks and have a wonderful day.


  _______________________________________________
  Skypeenglish mailing list
  Skypeenglish at emissives.com
  http://emissives.com/mailman/listinfo/skypeenglish_emissives.com
Thanks for posting to the skype english list. To  access scripts for the latest 
version of skype go to 
http://www.dlee.org/skype
To access tutorials and other goodies go to
http://www.marrie.org/skype/skype.html
thanks and have a wonderful day.


_______________________________________________
Skypeenglish mailing list
Skypeenglish at emissives.com
http://emissives.com/mailman/listinfo/skypeenglish_emissives.com

-- 
Doug Lee                 dgl at dlee.org        
SSB BART Group           doug.lee at ssbbartgroup.com   
http://www.ssbbartgroup.com
"The most exciting phrase to hear in science, the one that heralds
new discoveries, is not 'Eureka!' ('I found it!') but rather 'hmm....
that's funny...'"  --   Isaac Asimov

Reply via email to