Bug 118016 - Change of functionality for the worse - several usability problems, crash, typo
Summary: Change of functionality for the worse - several usability problems, crash, typo
Status: RESOLVED FIXED
Alias: None
Product: kttsd
Classification: Miscellaneous
Component: kttsmgr (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR normal
Target Milestone: ---
Assignee: Gary Cramblitt
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-12-09 16:19 UTC by aurka
Modified: 2006-01-07 02:37 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments
The tab Filters, this is what it looks after installation here (41.87 KB, image/jpeg)
2005-12-10 13:26 UTC, aurka
Details
After pressing "Add" - this is what comes up (36.74 KB, image/jpeg)
2005-12-10 13:27 UTC, aurka
Details

Note You need to log in before you can comment on or make changes to this bug.
Description aurka 2005-12-09 16:19:48 UTC
Version:           0.3.5 (using KDE KDE 3.5.0)
Installed from:    Ubuntu Packages
OS:                Linux

Well, this is a rather complex issue (and I stress - this is 3.5 on Ubuntu Breezy Badger, language Czech:

1. For me the usability of kttsd and kttsmgr has changed for the worse:
a. What happened to the the String replace filters? They disappeared - one could configure them nicely in the previous version, now they are gone. If I want to add a filter, I press Add (in Czech) and instead of adding it edits the only filter on the list, or so it seems. I have to rename the XML filter to something else, find the String replace filters manually, and add them. I still haven't had the opportunity to find out if the filters thus activated work.

b. After I do this, there is no way (as far as I can tell) to edit the string replace filters from KTTSMgr - this used to be possible before.

2. When I touch the Sentence detection > Add button, nothing happens.

3. When I go to the Notifications tab, select an application and event and then touch Select a voice, kttsmgr crashes. (Should I send the backtrace? File a separate bug?)

4. There is a typo in the last tab in Czech - Tasks, it has a button saying 
"Čís&t schránku", which should be "Číst schránku" /Read clipboard/ 

Thanks for any help

Roman Dergam
Comment 1 Gary Cramblitt 2005-12-09 22:30:59 UTC
Seems like you have a seriously broken install.  You say you installed this 
from Ubuntu CD?
Comment 2 Gary Cramblitt 2005-12-09 22:54:57 UTC
In fact, is seems that whatever you installed was taken from svn 
trunk/kdeaccessibility, which is the branch that is being converted for KDE4.

You might try uninstalling ktts and install from kubuntu packages.
Comment 3 aurka 2005-12-09 23:23:58 UTC
No, I upgraded - I am in fact using Kubuntu, and the sources I used to get KDE 3.5 were from the Kubuntu pages. Namely: 

deb http://kubuntu.org/packages/kde35 breezy main

I tried reinstalling - I thought it would be impossible something like this happened. I'll try reinstalling again, by downloading the packages manually.
Comment 4 aurka 2005-12-09 23:38:20 UTC
I reinstalled both kttsd-contrib-plugins_3.5.0-0ubuntu0breezy1_i386.deb and kttsd_3.5.0-0ubuntu0breezy1_i386.deb, but it seems to persist (from the kubuntu.org pages). Is the version in the kubuntu source broken?
Comment 5 Gary Cramblitt 2005-12-10 01:24:54 UTC
> 1. For me the usability of kttsd and kttsmgr has changed for the worse:
> a. What happened to the the String replace filters? They disappeared - one
> could configure them nicely in the previous version, now they are gone. If
> I want to add a filter, I press Add (in Czech) and instead of adding it
> edits the only filter on the list, or so it seems.


If working correctly, when you press Add button on Filters tab, you should see 
a dialog listing 3 choices: String Replacer, XML Transformer, and Talker 
Chooser.  You select String Replacer and click OK.  You can then click the 
Load button in the Filter Configuration dialog.  You should see files in 
directory /usr/share/apps/kttsd/stringreplacer/ listed and you can choose one 
of these.  Is this what you're seeing?  If not, its seriously broken.

Since I don't have Kubuntu, its hard for me to investigate the package.  I 
downloaded kttsd_3.5.0-0ubuntu0-breezy1_i386.deb from 
http://kubuntu.org/packages/kde35/pool-breezy/kdeaccessibility/, unpacked it 
and everything looks OK, but I can't install it due to dependency issues.
Comment 6 Gary Cramblitt 2005-12-10 02:48:58 UTC
Try starting kttsmgr from konsole with command

KDE_LANG=en kttsmgr

Let me know if that helps.
Comment 7 aurka 2005-12-10 13:26:37 UTC
Created attachment 13845 [details]
The tab Filters, this is what it looks after installation here
Comment 8 aurka 2005-12-10 13:27:33 UTC
Created attachment 13846 [details]
After pressing "Add" - this is what comes up
Comment 9 aurka 2005-12-10 13:38:02 UTC
Tried starting it from the konsole with KDE_LANG=en kttsmgr, and it still comes in Czech and does the same. It provides the following output (but sound is OK):

roman@gunnar:~$ KDE_LANG=en kttsmgr
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL plughw:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL plug:0
ALSA lib control_shm.c:604:(_snd_ctl_shm_open) ctl is not defined
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL tee:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL file:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL null:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL cards:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL front:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL rear:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL center_lfe:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL side:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL surround40:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL surround41:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL surround50:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL surround51:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL surround71:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL iec958:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL spdif:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL modem:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL dmix:0
ALSA lib control.c:739:(snd_ctl_open_noupdate) Invalid CTL dsnoop:0

I have the embarrassing feeling that it is an issue related to the Kubuntu package (as everything else seems to work ok on this machine). A SECOND LATER:

I just changed the KDE language in Kcontrol (to try your suggestion) and voila: it does what it should do according to your description... I'll try to find a Kubuntu bugzilla, I apologise for taking your time and thanks for a great application. 
Comment 10 Gary Cramblitt 2005-12-10 14:49:22 UTC
> I just changed the KDE language in Kcontrol (to try your suggestion) and
> voila: it does what it should do according to your description... I'll try
> to find a Kubuntu bugzilla, I apologise for taking your time and thanks for
> a great application.


This might not be a packaging problem.  It could be a bug related to having a 
existing kttsd config file.   Please try this.  Change your desktop language 
back to Czech.  In konsole

killall kttsmgr
killall kttsd
cd ~/.kde/share/config
mv kttsdrc kttsd-saverc
kttsmgr

Let me know if that makes any difference.  You'll have to reconfigure 
everything.  If that helps, please post your kttsd-saverc file.  If that 
doesn't help, you can go back to your previous configuration by

killall kttsmgr
killall kttsd
cd ~/.kde/share/config
mv kttsd-saverc kttsdrc
kttsmgr
Comment 11 aurka 2005-12-10 15:19:47 UTC
Thanks, I tried, but it makes no difference. I tried a second time and renamed the kttsmgrrc as well, and no breakthrough again. I tried with running just kttsmgr as well as with running kttsd first and then the manager. If kttsd started first, it finds the Czech festival voice - the rest is empty (I don't worry about the previous configuration, I had no filters configured :) because I couldn't do it) Could there be a problem with Kubuntu using LANG=cs_CZ.UTF-8 and something perhaps being in cs_CZ.iso88592? 

Comment 12 Gary Cramblitt 2005-12-10 17:15:38 UTC
I'm not sure what's going on.  I installed cs_CZ ISO 8859-2 and cs_CZ UTF-8 
locales, installed kde-i18n-cs package, then did

export LANG=cs_CZ.UTF-8
export LANGUAGE=cs_CZ:cs
KDE_LANG=cs kttsmgr

kttsmgr displays in czech language and all 3 filter types are available when I 
click Add on Filters tab.  (I did notice that many of the widgets aren't 
translated, but that is most likely due to an incomplete translation.)

I'm out of ideas at the moment.
Comment 13 aurka 2005-12-18 21:24:51 UTC
Just to confirm,I did another installation, this time clean, of kubuntu breezy and after I upgraded to KDE 3.5, it did the same as I described previously. There seems to be something wrong with the Czech i18n of the package...
Comment 14 Martin Grohman 2006-01-04 18:59:43 UTC
The same problem on fresh Gentoo - kde 3.5.0 - czech language
Comment 15 aurka 2006-01-04 19:30:48 UTC
Could we get some feedback from somebody who works on the localization of kttsdmgr? Unfortunately, the kttsdmgr has no "About ..." info, so I cannot contact them myself. Thanks. 

PS: I submitted a bug at Ubuntu's Launchpad, but it really seems a problem of the translation/localization, rather than a specific package...
Comment 16 Gary Cramblitt 2006-01-05 02:35:17 UTC
On Wednesday 04 January 2006 13:30, Roman Dergam wrote:
> Could we get some feedback from somebody who works on the localization of
> kttsdmgr? Unfortunately, the kttsdmgr has no "About ..." info, so I cannot
> contact them myself. Thanks.


If you mean KTTSMgr, the maintainer would be me.  You can get to About by 
right-clicking on the tray icon.

> PS: I submitted a bug at Ubuntu's Launchpad, but it really seems a problem
> of the translation/localization, rather than a specific package...


As noted above in this bug report, I haven't been able to figure out what's 
going on, but you are right that it does appear to be specific to the Czech 
package.

Somebody with this problem please check that the following file exists on your 
system: /usr/share/services/kttsd_stringreplacerplugin.desktop.  If so, look 
at the file to make sure it is OK.  The .deb file I downloaded from kubuntu  
does have a [cs] entry.  Check if yours does.  If it does, make a backup copy 
of the file and try deleting the [cs] line(s).  Note you must use a UTF-8 
editor, such as Kate.  You must run kbuildsycoca after editing the file to 
rebuild the sycoca database.

If the .desktop file seems OK, please check that you 
have /usr/lib/kde3/libkttsd_stringreplacerplugin.so and .la files.

If you have these 3 files, it should be finding and loading the StringReplacer 
plugin, but it is not for some reason (among other problems).
Comment 17 aurka 2006-01-05 09:46:30 UTC
Thanks for the patience with this. Here is some output:

roman@gunnar:~$ locate kttsd_stringreplacerplugin.desktop
/usr/share/services/kttsd_stringreplacerplugin.desktop
roman@gunnar:~$ cat /usr/share/services/kttsd_stringreplacerplugin.desktop
[Desktop Entry]
Encoding=UTF-8
Name=String Replacer
Name[bg]=Замяна на низове
Name[ca]=Reemplaçador de cadenes
Name[cs]=Nahrazení řetězce
Name[da]=Streng-erstatter
Name[de]=Zeichenketten-Ersetzer
Name[el]=Αντικαταστάτης συμβολοσειρών
Name[es]=Reemplazador de cadenas
Name[et]=Stringiasendaja
Name[eu]=Kate-ordezkatzailea
Name[fi]=Tekstien korvaaja
Name[fr]=Remplacement de chaînes
Name[hu]=Sztringcserélő
Name[is]=Strengja útskiptir
Name[it]=Sostitutore di stringhe
Name[ja]=文字列置換
Name[lt]=Eilučių pakeitiklis
Name[nb]=Strengerstatter
Name[nl]=Tekstvervanger
Name[pa]=ਸਤਰ ਤਬਦੀਲ
Name[pl]=Zastępowanie tekstu
Name[pt]=Substituição de Textos
Name[pt_BR]=Substituidor de Strings
Name[ru]=Автозамена
Name[sl]=Zamenjevalnik nizov
Name[sr]=Замењивач знаковних низова
Name[sr@Latn]=Zamenjivač znakovnih nizova
Name[sv]=Strängersättning
Name[ta]=சர இடமாறறி
Name[tg]=Ҷойивазкунии автоматӣ
Name[tr]=Metin Değiştirici
Name[uk]=Заміна рядків
Name[xx]=xxString Replacerxx
Comment=Generic String Replacement Filter Plugin for KTTS
Comment[bg]=Приставка филтър за замяна на низове за KTTS
Comment[ca]=Connector del filtre reemplaçador genèric de cadenes pel KTTS
Comment[cs]=Modul filtru náhrady řetězce KTTS
Comment[da]=Generisk strengerstatnings-filter-plugin for KTTS
Comment[de]=Ein generisches Modul zur Zeichenkettenersetzung für KTTS
Comment[el]=Γενικό φίλτρο πρόσθετο αντικατάστασης συμβολοσειρών για το KTTS
Comment[es]=Extensión de filtro genérico de sustituición de cadenas para KTTS
Comment[et]=KTTS-i üldine stringiasendusfiltri plugin
Comment[eu]=KTTS-ren kateak ordezkatzeko iragazki-plugin generikoa
Comment[fi]=Yleinen tekstien korvaussuodatinliitännäinen KTTS-ohjelmaan
Comment[fr]=Module de filtrage de remplacement de chaînes générique pour KTTS
Comment[hu]=Általános sztringcserélő modul a KTTS-hez
Comment[is]=Almennt strengja útskiptinga íforrit fyrir KTTS
Comment[it]=Plugin generico per il filtro di sostituzione di stringhe per KTTS
Comment[ja]=KTTS 用汎用文字列置換フィルタプラグイン
Comment[lt]=Bendro pobūdžio eilučių pakeitimo filtro priedas, skirtas KTTS
Comment[nb]=Filter-programtillegg til KTTS for streng-erstatning
Comment[nl]=Generieke tekst-vervang-filter-plugin voor KTTS
Comment[pl]=Wtyczka zastępowania tekstu dla KTTS
Comment[pt]='Plugin' Genérico de Substituição de Textos para o KTTS
Comment[pt_BR]=Plug-in de Filtro genérico de Substituição de Strings Para o KTTS
Comment[ru]=Фильтр автозамены для KTTS
Comment[sl]=Filtrni vstavek KTTS za generični zamenjevalnik nizov
Comment[sr]=Генерички филтерски прикључак KTTS-а за замену знаковних низова
Comment[sr@Latn]=Generički filterski priključak KTTS-a za zamenu znakovnih nizova
Comment[sv]=Insticksprogram för KTTS med generellt strängersättningsfilter
Comment[ta]=KTTSககான அலஙகார சொருகுபொருள சர இடமாறறி
Comment[tg]=Филтри худивазкунӣ барои KTTS
Comment[tr]=KTTS için Genel Metin Değiştirme Süzgeci Eklentisi
Comment[uk]=Втулок загального фільтра заміни рядків для KTTS
Comment[xx]=xxGeneric String Replacement Filter Plugin for KTTSxx
Type=Service
ServiceTypes=KTTSD/FilterPlugin
X-KDE-Library=libkttsd_stringreplacerplugin
X-KDE-Languages=en,en_US,en_GB,en_CA,es,es_mx,cy,de,fi,cs,pl
  
roman@gunnar:~$ locate libkttsd_stringreplacerplugin.so
/usr/lib/kde3/libkttsd_stringreplacerplugin.so
roman@gunnar:~$ locate libkttsd_stringreplacerplugin.la
/usr/lib/kde3/libkttsd_stringreplacerplugin.la

I deleted all lines with [cs] and the mention of cs in the list of langs, run kbuildsycoca and... it WORKS... it shows the dialogue to choose between "String replacer" and "XML transformace" (mixing English and Czech). I finally load the filters and rejoice...

Well, what can I do now to further help diagnose the problem? I'll be happily using English for that part of the interface, though I'd like to help to fix this and the other problems KTTS has - it's a great app and some people might benefit from it enormously.
Comment 18 Gary Cramblitt 2006-01-06 02:02:59 UTC
Bad news I'm afraid.  It seems there's a limitation (or perhaps a bug) in KTrader::query().  A query using constraint "Name = 'some name'" where 'some name' contains non-Latin1 characters does not work.  Unfortunately, the fix will affect a lot of code.  It will take a while for me to prepare patches, and even then, I don't think another release will come out anytime soon.  You can workaround by editing all the kttsd_*.desktop files in /usr/share/services/ and remove the Name[cs] lines.  Be sure to use a UTF-8 editor, such as kate.  You will probably have to delete your ~/.kde/share/config/kttsdrc file, reconfigure ktts, and restart kttsd.

Any other desktop languages that are not ISO-8859-1 will also experience this problem.

Comment 19 Gary Cramblitt 2006-01-07 02:37:14 UTC
SVN commit 495082 by cramblitt:

BUG:118016 Not loading plugins when desktop language is not ISO-8859-1

 M  +47 -37    ChangeLog  
 M  +20 -1     TODO  
 M  +20 -17    kcmkttsmgr/kcmkttsmgr.cpp  
 M  +4 -4      kcmkttsmgr/kcmkttsmgr.h  
 M  +4 -7      kttsd/filtermgr.cpp  
 M  +4 -7      libkttsd/talkercode.cpp  
 M  +1 -1      plugins/hadifix/hadifixconf.cpp