gnustep-dev
[Top][All Lists]
Advanced

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

Re: Looking for advice on multiple language spell service installation


From: Richard Frith-Macdonald
Subject: Re: Looking for advice on multiple language spell service installation
Date: Tue, 23 Feb 2010 06:50:48 +0000

On 22 Feb 2010, at 22:32, Wolfgang Lux wrote:

> After committing a set of changes that extend GNUstep's spell server to 
> support multiple languages, I'm looking for advice on how GSspell should 
> properly announce its service.
> 
> By default, users will see only the dictionary for AmericanEnglish in the 
> Spelling panel. To make dictionaries available for other languages supported 
> by aspell, users (or rather an administrator) must change the NSLanguages key 
> in GSspell.service's Info-gnustep.plist. Apparently, this is not really a 
> workable solution, in particular since the change would have to be repeated 
> whenever -gui is reinstalled.
> 
> The current state could be improved in two ways:
> 1) Have GSspell.service update its own Info-gnustep.plist to match the list 
> of aspell's available dictionaries if it is run with a special command line 
> flag.
> 2) Create a GSspellService.plist file in the user's Services directory and 
> have it announce the additional languages besides AmericanEnglish.
> 
> Of course the first solution still requires administrator privileges, but I 
> think this could be acceptable if GSspell.service is automatically run with 
> the appropriate flag in a post installation phase. However, I'm not sure 
> whether this works well for package installation, so I'd appreciate if any 
> package maintainer who is on this list could comment on this.
> 
> Unfortunately, neither of the two approaches works at present in GNUstep. The 
> first approach fails because GSspell.service is unable to locate its own info 
> dictionary [1]. The second fails because the spell checker would attempt to 
> start an executable in the user's Services directory for the additional 
> languages, even when I explicitly set the executable path in 
> GSspellService.plist.
> 
> Before starting to work on either implementation, I'd appreciate to receive 
> comments on which solution you consider better. Or maybe I have been 
> overlooking something completely obvious.

I think the second option is cleaner  as I really don't approve of self 
modifying application bundles, and think that the user's Services directory is 
precisely for this kind of thing.

Now, I don't know why you have a problem with the second course of action.  
presumably you have created

~/GNUstep/Library/Services/GSspell.service/Info.plist

and then run make_services ([NSWorkspace-findApplications] will do that)

So the system will then know that the service exists, and when attempting to 
access it will try to open ~/GNUstep/Library/Services/GSspell.service
At that point, it should look in the Info.plist, find the NSExecutable entry, 
and launch a task to run the process specified by NSExecutable

As it's not working, I'd have thought the first place to look would be setting 
a breakpoint in [NSWorkspace-locateApplicationBinary] which should be looking 
in Info.plist for the NSExecutable entry.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]