Collecting audio with WeSay

Author John Hatton | 07.01.2009 | Category WeSay

For a long time, I’ve had the crazy idea that audio should be just another kind of “writing system”. I’m happy to say that now, crazy or not, you can set up a project to like this:

Notice the circles there? They’re trying to be unobtrusive. When you move the mouse near, they light up:

As long as you hold the mouse button down, your voice is recorded. Like a walkie-talkie. Then, the symbol changes:

and when you go near that, you have a play and a delete button:

How is this useful? For one thing, as electronic dictionaries become more common, wouldn’t it be nice to hear the word or example sentence? This might also be helpful for language learning, by gleaning the sounds and dictionary file to create listening exercises.

How to set it up

In the configuration tool, go to Writing Systems and make a new one called “voice”. Then set the “is audio” switch to “true”.

Now go the Fields section, and tick “voice” next to any field you want to include this voice capability.

Note, you could have multiple voice writing systems, carrying different accents, genders, whatever.

Please, let us know if you have a chance to play around with this, and any experiences you have using it with a native speaker.

This is currently available in our 0.5 line, for Windows only. Linux could follow soon, especially if we hear from you.

Technical Details

All sounds are saved as .wav files under a new “audio” subfolder of your WeSay project. Their names are a bit unwieldy at the moment, largely to keep the code simple as long as this is still a proof-of-concept. Files are named as the form of the word a time stamp, so that multiple recordings in the same word (or homograph) don’t step on each other.

Single Click Printing

Author John Hatton | 07.01.2009 | Category WeSay

In my last post, I mentioned that three levels of printing WeSay dictionaries are taking shape:

  1. Useful for everyday WeSay users, with no training.
  2. Good enough for final publication of many projects, with a little training or computer savvy.
  3. Powerful enough for any project, perhaps needing a specialist.

In that post, we covered #2, at least for Windows users. Now I’m pleased to announce a big step towards #1:

Click this, and a few moments later your PDF reader (e.g. Acrobat) opens with a dictionary:

Our aims for this feature are limited:

1) provide a Linux (as well as Windows) way to get simple printouts. (Lexique Pro is Windows only).

2) provide a very simple way to get printout when no computer-savvy advisor is available to run a more extensive set of applications (like Lexique Pro Microsoft Word).

Currently, the fields that this outputs are limited to:

  • Headword (from Lexeme Form and Citation Form). Multiple writing-system headword are supported.
  • Definition
  • Part of Speech
  • Top level senses (not sub senses)
  • Example sentences, and translations of them
  • Illustrations, auto-captioned to the headword of the entry
  • Cross references

We can easily add to the capabilities here, at you request. But we may be resistant to any enhancements which involve wizards, dialogs, etc. For that kind of control, you really need to use Lexique Pro, FLEx, or MDF. In other words, the request “I need to get borrowed words” would be implemented quickly, whereas “I want control over the placement of the illustrations” will not.

Future Work

Depending on feedback from you, gentle reader, we could do more interesting things here. These include

  • automatically ordering pages for booklet printing
  • a title page
  • a section of words categorized by semantic-domain
  • a reversal section
Technical details

As with Lexique Pro export, WeSay begins by producing a PLIFT file, which is a simplified copy of your LIFT dictionary file. It then converts this to html (like web pages use), and produces style sheets (industry standard css3 ones). Finally, it uses a terrific page-layout engine named PrinceXml to produce the pdf. The stylesheets are:

  • autoLayout.css
  • autoFonts.css
  • customLayout.css
  • customFonts.css

If you are so inclined, you can edit the to “custom” ones. This has the effect of overriding the styles in the “auto” ones. In this way, the technical user has full control. You can also setup the dictionary the way you want using FieldWorks Language Explorer’s dictionary export function, which gives you extensive control over many aspects of the layout. WeSay’s html uses the same style names as FLEx, so you can grab the css that FLEx creates and use that for your “customLayout.css” when using WeSay. If you do any of this kind of thing, please let us know. We really need to know what people are using, and what they aren’t.

Have you read this far? Leave a comment. I’m not clear if folks in the language documentation community actually read blogs.

Open In Lexique Pro

Author John Hatton | 06.01.2009 | Category WeSay

WeSay really wants to focus on gathering data. It really doesn’t want to become a full-powered dictionary layout system. Ideally, there would be an invisible, friction-free means of getting a simple dictionary printout at the click of a button, and customized one with a couple clicks. And perhaps a 3rd, ultra flexible, standards based, high-end dictionary publisher where that is called for.

So we’d have

  1. Useful for everyday WeSay users, with no training.
  2. Good enough for final publication of many projects, with a little training or computer savvy.
  3. Powerful enough for any project, perhaps needing a specialist.

These three scenarios are all now in the works from various SIL software teams, and I’ll blog about them as they become available to WeSay users.

Today, I’m please to update you on #2, the growing interoperability of WeSay and Lexique Pro. Lexique Pro is a high-regarded, free dictionary tool for MS Windows. From the LP web site:

Lexique Pro is an interactive lexicon viewer and editor, with hyperlinks between entries, category views, dictionary reversal, search, and export tools. It’s designed to display your data in a user-friendly format so you can distribute it to others.

Starting with version 3, LP can directly read the LIFT-standard xml files which WeSay uses. No need to go through the “standard format” or “MDF” first.

Starting with version 0.5 (our current development track), opening your dictionary with Lexique Pro got really easy:

You can get the latest WeSay here. Lexique Pro 3.0 is currently a beta, available here. With the 31 Oct beta of LP, at least, there are a number of things still to be worked out, but I expect we’ll see first-rate LIFT-based printing in LP this year.

Technical details

When you click this button, WeSay actually writes out a modified form of your LIFT file to the “exports” subdirectory of you WeSay project. While it is still compliant LIFT, some preprocessing is done to help printing programs show the right things. For example, homograph numbers are computed, headwords calculated, and any fields you have turned off for the current user are stripped from this file. We refer to this kind of file as “PLIFT” for “publication” lift.

Which WeSay?

Author John Hatton | 06.01.2009 | Category WeSay

Our approach to software development requires that we “ship early, ship often”. We listen carefully to you, and try to quickly respond to your requests (though at this point, we’re way behind on many requests for new capabilities).

The down-side of this approach was that the newest version is not always the safest. We don’t have any “testers”, so if a release had great, sweeping new features, it could come with related bugs.

This has now changed. We now make two versions available to you. One is the safest (”stable release”). The other has the latest stuff (”development release”). If you are checking out WeSay’s capabilities or willing to help guide us, you want the dev release. If you are deploying WeSay to less computer-savvy or less network-connected users, you want the stable release.

When we hear of a serious bug, we will normally fix it on both releases. New features and non-serious bugs only get added to the development release. Make sense?

To make it easier to track which is which, we use the old Linux-kernel numbering approach. The stable track uses even numbers, the development track uses odd ones.

Our current “stable” releases are 0.4, and the “dev” releases are 0.5. And remember, there are new versions, especially of dev releases, several times a week. So if it’s not too inconvenient, it helps if you can check with a recent release before reporting problems. Thanks!

New Dashboard

Author John Hatton | 05.01.2009 | Category WeSay

It’s been a wild year for our team, and if all you do is follow this blog, you’d think we disappeared.  Eric has moved to Microsoft (lucky them!), I’ve moved from Thailand to the USA and then Papua New Guinea, and two new guys have joined our team in Thailand.  Amidst all that, I’ve fallen behind in blogging about our progress.  In this post and others which should follow shortly, I’ll try to catch up.

Starting with version 0.4, we’ve changed the “dashboard” you see when WeSay opens up.  With this change, we get more on the screen, lessening the need to scroll down.  Also, the new design organizes tasks into groups so that users can have a sense of the workflow.   Some of this will become more clear as we add tasks to the various sections.

You can see from this screenshot that we have some work to do on this still… the Word List task should display a “progress indicator” like we see in the second row.  “Review” and “refine” are two more sections, which I hope to see populated in the future.