## Configuring Amaya

Amaya uses different configuration files to get initial values for global parameters, dialogues, shortcuts, window size and position, user's style sheet, etc. You can change most of the configuration parameters by means of specific preferences menus. This document outlines the configuration directory and file conventions, gives a walk-through of the different preference menus, and gives specific information on how to configure the keyboard shortcuts.

### Conventions

#### The Amaya/Config directory

This is the directory where most of the default values and all the dialogue messages are stored. The directory's parent is the one where Amaya was installed.

#### The AmayaHome Directory

Amaya stores the user preferences as well as other user configuration files in a directory which we call the AmayaHome directory. The following table shows where this directory is stored within different architectures:

architecture | AmayaHome directory
Unix | $HOME/.amaya
Windows 95/ Windows 98 | AMAYA-INSTALL-DIR\users\username or, if the user didn't login to Windows, AMAYA-INSTALL-DIR\users\default
Windows NT | c:\winnt\profiles\username\amaya

The AmayaHome directory is preserved even when installing new versions of Amaya and may contain the following files:

- thot.rc : the user preferences, changed through the preferences menu.
- amaya.keyboard (Unix) or amaya.kb (Windows) : this file defines Amaya keyboard shortcuts.
- amaya.css : contains the user's style sheet.
- dictionary.DCT : Amaya provides a multilingual spell checker. By default the spell checker works with two dictionaries: the English dictionary and the French dictionary (these two dictionaries can be downloaded from W3C servers). When the user wants to register a new word, the spell checker creates or updates the "user's personal dictionary".

Note: the amaya.keyboard/amaya.kb and amaya.css files are loaded at launch time. If you change them, you will need to quit and restart Amaya to take them into account.

#### The AmayaTemp Directory

Amaya stores all the temporary files it creates during its execution in a directory which we call the AmayaTemp directory. The following table shows where this directory is stored within different architectures:

architecture | AmayaTemp directory
Unix | $HOME/.amaya
Windows | c:\temp\amaya (default value)

Amaya creates files in this directory while browsing remote documents or printing a document. The cache is stored in this directory. The user may change both the AmayaTemp and cache directories by means of the General Preferences and Cache menus.

Amaya always tries to delete all the temporary files it creates. However, if Amaya crashes, the temporary files will not be deleted. This will not impact subsequent executions of Amaya.

### Preferences Menus

These menus are found under the Special/Preference menu. There are nine different preference menus available: general, publishing, cache, proxy, colors, Window geometry, language negotiation, profiles, and templates. In each of these menus, there are three common action buttons:

Apply | This button validates and store the options shown in the menu.
Defaults | This button restores, but not save, the default values. Use the Apply button to validate the options.
Done | This button dismisses the menu.

#### General preferences

Amaya user directory (Windows platforms only, not shown in the included figure)
  Specifies the directory where the user preferences are stored.
  Note: the user can't change the location of this directory.
Amaya temporary directory (Windows platforms only, not shown in the figure)
  Specifies the directory where Amaya will store its temporary files, for example, while printing a document. If not specified, the default temporary directory will be `c:\temp`.
  Note: changing this directory will not erase the previous one. You will have to remove the old directory manually. If the cache was located under the previous temporary directory, a new cache will be created under the new directory.
Home Page
  Specifies the URI that Amaya will load when launched or when the user presses the home page button. An example is `http://www.w3.org`.
  Note: A complete URI must be used.
Enable multi-key
  Enables or disables the optional multi-key input method.

  The optional input method (Multi-Key) is based on a two key sequence beginning with the "accent" followed by the "letter". For example to obtain a 'ć' first press '~' then type 'a'. To obtain a '~' you have to press '~' twice.

  Character sequences used by the standard multi-key input method and the optional multi-key input method are summarized in two different tables.

Show background images
  Controls whether background images should be shown. This option is only effective when loading a new document.

Double click activates link
  Since the first version of Amaya, users need to double click on a link to activate it. This allows one to differentiate between the edition of a link or its activation. You can override this behavior by deactivating this option.

Enable FTP (experimental)
  Allows Amaya to follow FTP URLs. This support is experimental and it's not yet fully debugged. For example, for FTP URLs needing user authentication, the authentication information is not always memorized. Also, pressing the Stop button during an FTP download may crash Amaya. Albeit these problems, we added this option to Amaya so that other developer's may help us to debug it faster. By default this option is turned off.
Menu Font size (Unix platforms only)
  Specifies the font size of all the Amaya menus. This option is only taken into account at launch time.

Font Zoom
  It's possible to zoom in and zoom out, document window by document window. Each document (text and images) displayed within a zoomed window will be displayed larger or smaller than its real size according of the current zoom.
  That option allows you to change the default font zoom for all windows. This change affects only font sizes but not images and is reflected immediately in all open document windows.
Double click delay (Unix platforms only)
  This option allows one to control the delay for which two mouse clicks are classed as a double-click. This option is only taken into account at launch time.
Dialogue language
  Specifies the language for all of Amaya's menus and dialogue messages. The default language is American English (value `en_US`). At the present time only three alternate languages are available: English (`en`), French (`fr`), and German (`de`). When launched, Amaya loads dialogue files according to the current dialogue language: en-, fr-, or de- files. These dialogue files are located in the Amaya/config directory.

  In Thot, a document is specified according to a schema. In Amaya, the dialogue messages that are displayed when parsing a document or when saving it under a specific schema are located in the Amaya/amaya/HTML.code file, where the code suffix is a language abbreviation (e.g. `en` or `fr`). This file has 4 sections:

  - extension: not used by Amaya
  - presentation: not used by Amaya
  - export: give the text displayed for each translation schema ("Save As" command)
  - translation: give the text displayed for each element and attribute in the Thot HTML structure.

  It is possible to adapt Amaya to new ISO-Latin-1 languages by writing corresponding dialogue files. These dialogue files have to be located in the same directory (i.e. Amaya/config) and must use the correct ISO 639 code as a prefix (it- for Italian, de- for German, etc.). The specific HTML.code file also has to be created.

#### Publishing preferences

Use ETAGS and preconditions
  HTTP/1.1 introduces new headers that allow to avoid the lost updates problem when publishing. With this mechanism, you can detect conflicts when two users are publishing the same document.
Verify each PUT with a GET
  If you don't trust your server, this option tells Amaya to retrieve each document as soon as it has been published and compare it with the copy stored in your workstation. If the documents differ, Amaya will warn you.
Default name for URLs finishing in '/'
  An HTTP server usually associate the URLs that finish in '/' with a default name, e.g., Overview.html. This option allows specifying the default name that Amaya should use when publishing such a URL. Please consult with your Webmaster to find out what the default name is for your server.
Allow automatic PUT redirections on these domains
  According to the HTTP/1.1 specification, PUT operations should not be automatically redirected unless it can be confirmed by the user, since this might change the conditions under which the request was issued. You can avoid having Amaya prompt with a PUT redirection warning by entering the name of the server's domain to which you are publishing. You may specify one or more domains, each separated with a space, e.g., `www.w3.org groucho.marx.edu`.

#### Cache preferences

Amaya provides a cache through libwww. By default, the cache is enabled by default and is stored in the AmayaTemp/libwww-cache directory. This menu also provides a Flush Cache button, for erasing the cache directory.

Enable cache
  Activates or deactivates the cache
Cache protected documents
  By default, documents which are protected by a password are stored in the cache. Use this flag to override this behavior.
Disconnected mode
  Always retrieves documents from the cache.
Ignore Expires: header
  Does not expire cache entries.
Cache directory
  Gives the parent directory for the libwww-cache directory. Changing this directory does not erase the contents of the previous one. You will have to remove it yourself.
  Note: File protection mechanisms prevent the use of NFS (Network File System) directories for the cache directory as NFS allows reuse by multiple processes or users. Use a 'local' directory for the cache.
Cache size
  Gives the size, in megabytes, of the cache repository.
Cache entry size limit
  Gives the maximum size for a cache entry.

#### Proxy preferences

You can specify a proxy and a set of domains where the proxy should or should not be used by means of this menu.

HTTP proxy
  Gives the proxy that should be used for HTTP requests. You must specify the full name of the server. If the server is running in a port other than 80, then, like in a URL, you need to add a ":" char to the proxy name, followed by the port number. For example::

         groucho.marx.edu

  declares a proxy called groucho.marx.edu running at the default port 80, and

         groucho.marx.edu:1234

  declares a proxy called groucho.marx.edu, running at port 1234

Proxy domain list
  Gives a list of space separated domains where you want to use or not use your proxy. For example:

      harpo.marx.edu zeppo.marx.edu chico.marx.edu
                    ^--------------^----> space separated entries

  Use the switch buttons to specify if the proxy should or shouldn't be used with this domain list.

#### Color preferences

This menu allows selection of the default foreground and background colors for documents. It allows also to control the colors: used by Amaya to display the current selection

- Caret color gives the foreground color that shows the selection when it's limited to an insert point;
- Selection color gives the background that shows the current selection when it's extended.

The Unix version also provides entries for changing the menu colors. To change menu colors in Windows, you will need to use the standard Windows configuration control, found in the Control Panel folder.

All these colors may be selected by name, hex code, or rgb format:

- Valid names are: Aqua, Black, Blue, Fuchsia, Gray, Green, Lime, Maroon, Navy, Olive, Purple, Red, Silver, Teal, Yellow, and White.
- Valid hexcode format is #FF00FF as an example.
- Valid rgb format is rgb(255, 0, 255) as an example.

If you enter an invalid color, the default colors will be used instead.

In Windows, you can also select colors by means of a color palette.

Note: the color changes will be effective when you open a new document window or when reloading a document.

Setting or changing colors for links, visited links, and active links is done through the Amaya.css style sheet.

#### Window geometry preferences

This menu allows you to save the current window position and size size of the different views of a document (formatted, structure, alternate, links, and Table of Contents.) or to restore the default values. Note that the values that are saved are those belonging to the views of the document where you called this menu. These changes will be reflected when you open new document windows.

#### Language negotiation preferences

If a document exists in different languages and your server is configured to do language negotiation, you can use this menu to enter your language preferences (first one has the highest priority). Try browsing this press release, which exists in French, English, and Japanese versions. By changing the language negotiation to the ISO codes for the above languages (fr, en, or ja you can transparently request any of these versions.

#### Profiles

In Amaya, a profile defines the look and feel of of the Amaya user interface. You can use profiles to hide or display the Amaya buttons and menus. This menu allows you to choose a given profile definition file and select among any of the profiles proposed by that file. Amaya proposes four sample profiles: editor, mini-editor, browser, mini-browser, each one with different capabilities. Any profile change will be effective upon the next launch of Amaya.

#### Templates

A template is a model, or skeleton, of a document that you may use for creating your own documents. This menu allows you to specify the URL of a template server, which may be either local to your station or stored in some server. You'll need to quit Amaya to validate this option. When you launch Amaya again., there will be a new `File/New/From Template` entry. Following this entry will open a new document showing you the results of browsing the template URL. The idea is that this page acts as an index to the templates available in your station or in the template server. A sample template server is available at http://cgi.w3.org/cgi-bin/createform.pl. For more info, browse the using templates with Amaya page.