[texworks] system/user data (was: storage of user-edited engines)

Stefan Löffler st.loeffler at gmail.com
Sat Aug 1 21:49:41 CEST 2009

On 2009-08-01 20:34, Daniel Becker wrote:
> Am 01.08.2009 um 13:53 schrieb Bruno Voisin:
>>> Related Question: When I add a new tool in the preferences ("engine"
>>> in TeXShop-Speak), where is it saved?
>> In the preference file, ie ~/Library/Preferences/org.tug.TeXworks.plist
> I see, thanks. I was looking in ~/Library/TeXworks/...
> Isn't this setup likely to produce confusion? Consider this:
> 1) A user adds a new tool/engine, for example MyProjectTeX
> 2) The developers to decide to add a new engine to the defaults, i.e.
> luatex (just a name). They announce that in the release notes.
> 3) The user is happy about that and tries to find the new engine. But
> he can't as he still has its old preference file.
> 4) He is semi-clever and moves the preference file to another folder
> and restarts TeXWorks. Now he has the new engine added by the
> developers, but its own additions are lost. So he starts to add them
> again.

It doesn't work like this for engines. They are not actually built into
Tw, they are just instructions on how to run external programs. As such,
no engines will likely be added by the programmers (or if they are,
instructions would probably be provided for the user to add the new engine).
In fact, all settings are unlikely to really pose a problem. If new
options are added, suitable defaults will be chosen by default (i.e. if
the user has not set a specific value). The problem does apply to
supplementary files, however (those stored probably in
~/Library/TeXworks/ on Mac). In this case, the files and directories are
only created once and are never updated, at the moment.

> In general, I think it would be easier for users (and for those asked
> for advice) if preferences & templates added to TeXWorks by the
> developers and those added by the user would be stored separately, for
> example in
> ~/Library/Preferences/org.tug.TeXworks.plist
> ~/Library/Preferences/org.tug.TeXworks-user.plist
> and if the two would be "merged" by TeXWorks internally. The latter
> contains the user additions. When in doubt (name conflicts?), one
> takes precedence over the other.
> I have no idea how difficult this would be. However, something like
> this could help to avoid frustration by the not-so-advanced users, IMO.

Personally, I'd propose two things:
1) Separating user-specific data from system-wide data. This is not
really a solution to this specific problem (on the one hand, the system
administrator may still choose to put all files in the user data; on the
other hand, many users don't have a system administrator in the first
place ;)), but it would still be an improvement IMO.
2) Implement some kind of update system (e.g. by storing the "versions"
of the "official" files, and overwriting them if new ones are
available). This, however, can get pretty messy (especially if users
start modifying those files, etc.)


More information about the texworks mailing list