Displaying DevEdge Pages in Your Favorite Language
Netscape DevEdge experimented with language negotiation taking advantage of a browser feature for delivering content in your preferred language, set in your browser preferences. This experiment has concluded and the language negotiation is no longer turned ON at DevEdge. This article provided some background information on the feature and how the user might avoid problems with it.
The feature may come back in the future. One of the main reasons why we ended this experiment is because certain browsers did not cache DevEdge content due to the existence of the HTTP Vary header when the language negotiation was ON. This mainly affected narrowband users, who can certainly use cached content to speed up DevEdge page display. When we resolve this problem, we may experiment again with this feature. If you are interested in technical details of the HTTP vary header problem, you may find this discussion useful.
[Information in this article applies to Internet Explorer 4/5/6, Opera 5/6, Communicator 4.x and Netscape 6.x/7.x browsers. It does not apply to the current state of DevEdge, however.]
When you click a DevEdge link that has content available in your preferred language, you will see the translated version of the article. DevEdge currently only has several non-English articles available. Some translated articles may also be on non-Netscape sites.
The Netscape DevEdge server determines which language page to deliver based on your browser's setting for the language preference(s), or "Accept-Language" as it is called in the HTTP protocol standard. All modern browsers have at least one preferred language set matching the locality of users. For the vast majority of cases, the default setting poses no problem and you will see the content in the preferred language if the document has been translated. If there is no translation available for your language, then usually the default language page in English will be returned.
This feature, however, may fail under some rare conditions. Here are 3 typical problem cases:
Problem 1: You are delivered a content page in a language you did not request.
Problem 2: You see an error page, which says that the page was not found.
Problem 3: You see the correct language page but there is no styling on the page. (This is a rare problem but is reported to occur. See this section. )
How you can get to your language page in case of an error
On Netscape DevEdge, the following language pages are currently available: English (en), French (fr), Brazilian Portuguese (pt-br) and Japanese (ja). Accept language information sent from the browser uses the following template:
For example, en-us (English as used in the US), en-gb (English as used in the UK), en-au (English as used in Australia), etc. The general English preference without specific locality is en (English). You may choose to list one language or more in your preferences
There is virtually no problem when you have only one language listed as preferred. A problem may occur in some cases when there are multiple languages listed as your preference. The language negotiation algorithm by the server is fairly complex and will be omitted in this note. But the following 3 methods should solve almost all such problems.
Method 1: Make changes to browser's Language preference setting.
1. Modify the Language Preference setting: (See below for how to set language preferences for different browsers.)
If you see only English (en-US) in your preference list, add a general English preference after it, i.e. add English (en). This way if DevEdge cannot deliver a specific language content page (US English), it will deliver a generic language page (English). If your primary language is Brazilian Portuguese, you can add Portuguese (pt) below a more specific Brazilian Portuguese (pt-br).
If you only have Portuguese (pt) listed, make sure to add Portuguese (pt-br) to the list for DevEdge.
2. Check the order of the accept language preferences:
After you provide a generic language name as described in step 1, you should also check the order of your language preferences list. The languages listed at the top are the most preferred and others are preferred in decreasing order. If you like Portuguese/Brazil and French/France in that order, for example, you should have the following setting:
- Portuguese/Brazil (pt-br), Portuguese (pt), French (fr).
These two steps should solve a large number of problem cases.
Netscape 6/7 and Communicator 4.x:
Internet Explorer 4/5/6:
- Use Edit | Preferences | Navigator | Languages | Add button
- Use Tools | Internet Options... | General | Languages... | Add button.
- Use File | Preferences | Start and exit | Languages | Web pages | Add button.
Method 2: Use hyper links available on DevEdge pages.
Method 3: Spell out the complete URL.
At the top of each DevEdge Language Home page, there is a link to the default English home page. Any article that has corresponding content in other languages will also carry links to all available language versions of the same page near the top of the page. You can click on these links to get to your language pages quickly. Note that some translation may be on non-Netscape sites.
Though this is not recommended, there is also a brute force method of manually writing out the file names for those articles hosted on Netscape DevEdge. Netscape DevEdge generally uses URLs ending in a directory name without specifying the target file name. e.g. http://devedge.netscape.com/. Depending on your language preference, a correct language document will be delivered to you. You can add the target file name such as the following to override this server action.
Note that every directory has the default English file, i.e. index_en.html. In addition some directories may contain language specific files such as: index_ja.html (Japanese), index_pt_br.html (Brazilian Portuguese) or index_fr.html (French).
The language suffixes are: ja, pt_br, and fr throughout the DevEdge site. Note that Browser's language preference settings uses a dash to separate language-region pair as in pt-br, but DevEdge file naming convention uses an underscore instead of a dash, e.g. index_pt_br.html for a Brazilian Portuguese page.
How you can avoid losing style on the displayed page
HTTP 1.1 allows an Accept-Language value "*" to indicate that the user can accept any language not listed specifically. Internet Explorer 5/6 and Opera 6/7 allow users to enter this value manually through a user dialog for preferred languages. Netscape 4.x/6.x/7.x do not allow the user input of this value through a dialog. There is a bug in the web server used on DevEdge that prevents stylesheets from being loaded when "*" value is present in the Accept-Language header that the user agent sends to DevEdge.
If you see the page you requested in the desired language but without any styling applied to it, then you can work around this DevEdge bug by choosing the Accept-Language dialog and delete the "*" entry from the list.
Very rarely if ever we have seen users input the value "*" but advanced users may do so. In most cases, this value does not make any practical difference to the user experience. We recommend that the user delete "*" value from the Accept-Language list.