Currently -firstChessProgramNames is not documented at all. It should be.
It would also be very nice to be able to view and edit all things in the
list inside xboard.
WinBoard actually has this in the Engine menu ("Edit Engine List"). But I
added that only recently, when we switched to configuring the WinBoard
install to store the user settings in the user Application Data folder,
which turns out to be hidden on most ewer Windows systems, so noone
couldfind it anymore. Before that people were used to simply editing the
settings file in the Winboard folder itself, with a text editor.
I figured the ~/.xboardrc would not be too difficult to find for Linux
users, so I did not bother to do that in XBoard too. It is not a very big
deal, however; in WinBoard I abused the Edit Tags dialog for this
(unfortunately I was too lazy to change the window title,so it still says
"Edit tags" :-( ). We could do that in XBoard too.
The name "firstChessProgramNames" seems odd to me. Why isn't it simply
"engineList" or something like that? You can select both first and second
engine from it in the "Load engine"-window. You could even add "Analysis
engine" to the combo box.
This is for historical reasons. This option has existed in WinBoard from
the very beginning (correct me if I am wrong, Tim!). There it determined
the contents of a combobox in the Startup Dialog, reminiscent to what is
now in the Load Engine dialog, so the user could select the engine without
having to start WinBoard from the command line. There also is a
-secondChessProgramNames optionthere, presented in a combobox for the
second-engine in that same startup dialog. This has always been a nuisance,
since users had to always provide two copies of the engine line (at least
if they wanted to do engine-engine games with it), the second line
differing only from the first in that it replaced "first" in option names
everywhere by "second" (or "f" by "s").
As I figured that this could be done just as well automatically, I provided
an option -singleEngineList, that allows you to use "first" in option names
for the second engine, which are then uutomatically adapted before
interpretation. (In fact I eventually used a kludge to make even that
unnecessary, swapping all options for two engines, so that every engine is
installed as first engine, and then possibly swapped.)
As XBoard does not have a startup dialog, and thus no second-engine
combobox, I never enabled the -secondChessProgramNames in XBoard, and made
-singleEngineList true the default setting there when I enabled the
-firstChessProgramNames (when implementing the Load Engine dialog).
- Byrial
Den 03-01-2012 16:40, h.g. muller wrote:
I agree, but would prefer names like -userConfigDir and -userConfigFile
Well, these would be good names too. But somehow I have the feeling
that we would be setting up something quite complicated to acheive
something rather ordinary. Can't we really think of something simpler?
If we want to solve this by new XBoard options, there could be easier
and more versatile ways to do it. For instance:
Currently we only have -ncp, -ics and engine (-fcp) mode, all having
a very specific fuction. How about adding a somewhat less specified
mode -pgn (or -viewer), which either defaults to -ncp or engine mode,
depending on the persistent setting of another option. Users do already
maintain a list of engines in -firstChessProgramNames, in a format
that allows them to accompany each engine by a set of XBoard options
to be used with that engine. We could add an option -analysisEngine,
which stores a sigle 'engine line' in the same format. Or better yet,
stores the (nick)name of the engine in the -firstChessProgramNames
to be used for this purpose, so that people would not have to do double
installs.
When started up in -pgn mode (which the desktop file associated with
PGN files would then always do), XBoard could then scan through the
-firstChessProgramNames string to find a match with -analysisEngine.
If there was none, (or -analysisEngine was empty), it would start in -ncp
mode, while in case of a match it would process the corresponding
engine line in -firstChessProgramNames (as WinBoard does for the
engine selected by the startup-dialog combobox, or would happen when
you select an engine through the Load Engine dialog) as if it were
appended to the command line.
The user could then include the options needed for tailoring the window
conformation he wants with the engine, as options in the engine line
overrule those on the command line. So the pgn-viewer.desktop file would
use a command tailored to the assumption that -pgn would default to -ncp,
e.g. xboard -pgn -engineOutputUp false -evalGraphUp false. The user
could then install an engine as
-firstChessProgramNames {....
...
"Stockfish-ana" -fcp "stockfish" -engineOutputUp true -evalGraphUp true
-initialMode AnalyzeMode
...
}
and run XBoard once as
xboard -analysisEngine "Stockfish-ana"
to persistently configure stockfish with this windows conformation as
PGN viewer.