Using Spellcheck in NeoOffice

From NeoWiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 17:14, 29 August 2007 (edit)
Lorinda (Talk | contribs)
(Add Fixme: Could Not Contact section is currently just a stub)
← Previous diff
Revision as of 20:06, 29 August 2007 (edit) (undo)
Samwise (Talk | contribs)
m ("Could Not Contact Spell Checker" Error Message - fix typo)
Next diff →
Line 151: Line 151:
===="Could Not Contact Spell Checker" Error Message==== ===="Could Not Contact Spell Checker" Error Message====
-If you see this error while you are checking spelling (or while auto-spell checking is on), see [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=4836&highlight= this thread} at trinity for a potential solution.]+If you see this error while you are checking spelling (or while auto-spell checking is on), see [http://trinity.neooffice.org/modules.php?name=Forums&file=viewtopic&t=4836&highlight= this thread at trinity for a potential solution.]
==Changing the language of the NeoOffice user interface== ==Changing the language of the NeoOffice user interface==

Revision as of 20:06, 29 August 2007

This article is not up to date, or it needs structural or stylistic changes to conform with the rest of this wiki. You can help the NeoOffice community by fixing it. If you do not have a NeoWiki account, please follow the steps on the New User page to request one.


N.B. This article covers the steps required to activate writing tools in NeoOffice 2.0 Alpha and later; for the steps to use in NeoOffice 1.2.2 and earlier, see Activating Dictionaries in NeoOffice 1.x instead.

NeoOffice will correctly configure your preferences to use the language tools (spell check, thesaurus, etc.) for the language that is set as the default in the System Preferences when you launch NeoOffice, provided you have the appropriate writing tools installed.

Note that all the writing tools (dictionary, thesaurus, hyphenation) may not be available for all languages; some languages may have only one (usually the dictionary), and some may not have any tools at all.

If you want the NeoOffice user interface (and in some cases the Help) to be in your native language, you must install the appropriate language pack separately; see Changing the Language of the User Interface for more information.

Contents

Activating the Writing Tools for Your Preferred Language

NeoOffice 2.2.1

NeoOffice 2.2.1 (currently available via the Early Access Program) will automatically use the native Mac OS X spelling dictionaries if they match the language of the text to be checked.

Third-party dictionaries for the Mac OS X spelling system

NeoOffice will also use any third-party dictionaries that plug into the native Mac OS X spelling system, e.g. dictionaries for Icelandic, Finnish, Hungarian, and Hebrew, and cocoAspell, a plug-in which supports dictionaries for 74 languages. In order to use these dictionaries, the language must appear (and be checked) in the Languages: section of the Finder's Get Info window for NeoOffice. If the language code corresponding to the dictionary you want to use does not appear in the Get Info window, follow these steps to add the language to NeoOffice:

  • Quit NeoOffice, if it is running
  • Create an empty .lproj folder using the ISO code for your language in the /Applications/NeoOffice.app/Contents/Resources folder
    • Select NeoOffice in the Finder and choose Show Package Contents from the Finder's context menu.
    • Open the Contents folder and then the Resources folder
    • Create the new folder as described above
      E.g. for Icelandic, you should create a folder named is.lproj
  • Select NeoOffice in the Finder and open the Get Info window again; verify that the language now appears in the Languages: section and the box for it is checked.
  • Restart NeoOffice

Languages without a Mac OS X dictionary

If Mac OS X does not have a spelling dictionary for your language, NeoOffice will use an OpenOffice.org dictionary, if installed. To download OpenOffice.org spelling dictionaries and other writing tools, choose Install new dictionaries… from the Wizards submenu of the File menu, then follow the steps in the wizard.

Because the OpenOffice.org writing tools authors and their communities are always updating these tools, you should run the Dictionary Wizard each time you upgrade to a new version of NeoOffice.

NeoOffice 2.1

NeoOffice 2.1 ships with the same set of writing tools that the standard build of OpenOffice.org supplies (see the list below). Other writing tools can be downloaded and activated as described later in this section. In some cases, NeoOffice 2.1 can also use the tools you installed in NeoOffice 1.x.

US English, UK English, Austrian German, Swiss German, and German all have the dictionary, thesaurus, and hyphenation pre-installed in NeoOffice 2.1. Dictionaries for Hungarian (also hyphenation), Italian (also hyphenation), Dutch (also hyphenation), Swahili, and Thai, thesauruses for Czech and Slovak, and hyphenation for Danish and Russian are also included.

In NeoOffice 2.1, the download and activation of writing tools uses the standard cross-platform OpenOffice.org Dictionary Wizard method. Choose Install new dictionaries… from the Wizards submenu of the File menu, then follow the steps in the wizard.

Because the writing tools authors and their communities are always updating these tools, you should run the Dictionary Wizard even if your language's writing tools were pre-installed (or if you upgraded from NeoOffice 1.x).

Note for users of non-US or non-UK English (and possibly other languages with regional variants)

The new language tools system in NeoOffice 2.1 no longer maps other English variants to the US or UK English tools; you must install the dictionary, etc., for your language to have working writing tools. If you upgraded from NeoOffice 1.x, your list of installed writing tools was preserved and may now be incorrect and cause problems. You can safely delete ~/Library/Preferences/NeoOffice-2.x/user/wordbook/dictionary.lst to fix potential problems.

Installing Third-Party Dictionaries for OpenOffice.org

Due to licensing problems and other issues, there may be dictionaries for some languages that are not available via the dictionary wizard. If you find a dictionary for your language in either Hunspell (preferred) or MySpell format, it is possible to use this dictionary with NeoOffice.

To install the downloaded dictionary (in .zip format),

  1. Quit NeoOffice if it is running
  2. Copy the zip file into NeoOffice's share/dict/ooo folder
    • cp foo.zip /Applications/NeoOffice.app/Contents/share/dict/ooo
  3. Unzip the dictionary
    • unzip /Applications/NeoOffice.app/Contents/share/dict/ooo/foo.zip
  4. Add the new dictionary to the master dictionary.lst
    • open -a TextEdit /Applications/NeoOffice.app/Contents/share/dict/ooo/dictionary.lst
    1. Add a new line at the end of the file, in the format: DICT ab CD foo_bar
      • ab is the ISO language code for your locale, e.g. en for an English-speaking locale
      • CD is the ISO country code for your locale, e.g. AU for Australia
      • foo_bar is the "root name" of the .dic and .aff files, e.g. en_australia for our hypothetical en_australia.dic and en_australia.aff (you can find this name by watching the output of the unzip command in step 3 above)
    2. Save the modified dictionary.lst (making sure it remains plain text if you use TextEdit)
  5. Restart NeoOffice and enjoy your new dictionary!
See the OpenOffice.org manual installation instructions for more information.

Known Sources of Third-Party Dictionaries

  • Foolab: Arabic (عربي) [early version, only 71,000 words]
  • Ivrix Project: Arabic (عربي) [very large list, based on Buckwalter but converted by a non-Arabic speaker; reported to be slow and consume 200 MB of RAM]
  • Hunspell SourceForge Project: Amharic (አማርኛ), Azerbaijani (Azərbaycanca), Bengali (বাংলা), Kashubian (Kaszëbsczi), Persian (فارسی), Hindi (हिंदी), Mongolian (Монгол), Marathi (मराठी), Oriya (ଓଡ଼ିଆ), Punjabi (ਪੰਜਾਬੀ), Tamil (தமிழ்), Uzbek (Ўзбекча), Vietnamese (Việt ngữ),
  • OOoWiki: Assorted (many of the tools listed there are already available using the Dictionary wizard, but if your language is not in the Dictionary wizard, check the OOoWiki.)
  • Linguistico: Italian (better quality than those available from the Dictionary Wizard)
  • Soikko Mac OS X:lle: Finnish

Enabling Writing Tools for Additional Languages

To install and activate writing tools for additional languages in NeoOffice 2.0 Alpha, simply repeat the steps in the previous section for any additional languages you wish to use.

Selecting the Dictionary to be Used in a Document or Section

If you have multiple languages and dictionaries enabled, you can control which dictionary is used in a document (or section thereof) by setting the appropriate preferences.

To set the language of an entire document, select Preferences… from the NeoOffice menu, then click the disclosure triangle next to Language Settings to expand that section. Next select the Languages item and set the "Default languages for documents" as desired (either for all new documents, or for the current document only with the appropriate checkbox).

To set the the language of a particular section of text, select the text and choose Character... from the Format menu; set the appropriate language via the appropriate Language box in the Font tab.

Be sure to set the language of the document and/or each section of text appropriately or spell-check will not work.

Another approach is to click on the NeoOffice menu, choose Preferences. In the resulting dialog box, click on the triange next to "Language settings" and then select "Writing Aids." In the bottom box labeled "Options," scroll down to the option "Check in all languages" and click to put a checkmark in the box. NeoOffice will now use all the dictionaries you have installed when spell-checking, regardless of the language "setting" of a given document or section.. The advantage of this approach is that you don't have to set the language of the document and/or sections. This disadvantage is that NeoOffice will not identify words that are misspelled in one language but correctly spelled in another. For example: If I have installed English and French dictionaries, and I type the sentence: "I went to the parc," NeoOffice will not identify "parc" as misspelled, because that is the correct French spelling.

Automation

Using a Macro

yoxi provides this tip for creating a macro to automate the process of changing between languages:

  1. Select some text, then click on the Record Macro button in the top buttonbar. (If there isn't one there, Click on the Tools menu choose Macros and then select Record Macro). A "Stop Recording" floating button will appear.
  2. Under the Format menu, choose Character and then choose the "Font" tab in the panel that comes up. In the Language dropdown, choose your first language, e.g. English (UK), and then click on OK.
  3. Now click on the "Stop Recording" floater – the "Macro" dialog will appear. Enter a meaningful name in the "Macro Name" field, top left, such as LangEnUK, and click on "Save".
  4. Repeat the steps above, but choosing your second language, e.g. German (Germany), and assigning the second macro another name e.g. LangDeDE or whatever.
  5. Now to assign the keys: Under the Tools menu choose Configure... and then click on the "Keyboard" tab. Scroll down to the keystroke you want to assign, e.g. Cmd-shift-G for German (I know -D makes more sense, but that's already being used – though you can overwrite this assignment if you don't need a shortcut for right-to-left typing).
  6. In the "Category" panel bottom left, scroll down to "NeoOffice BASIC", then click on the "+" to open the folder, then do the same with "Standard" within that folder, and click on "Module1" within "Standard". Then in the "Function" panel to its right, click on the macro you named, i.e. LangDeDE, then click on the "Modify" button above right to assign that macro to the keystroke you highlighted earlier.
  7. Repeat the above step with the second keystroke and the second macro, and then click on "OK".
  8. 'tis done! Now when you select text and do cmd-shift-G, that text will be assigned German (Germany) language - ditto with cmd-shift-E and English (UK).

If you use more than two languages, you could write a more sophisticated macro with a list of language codes/numbers (the OOo BASIC uses numbers for language codes), so you could hit e.g. cmd-shift-L on the selected text and just enter a language code in a popup box and it would do the rest.


Using Styles and Templates

rays offers an alternative solution using styles and the default template styles:

Working in a multi-lingual international office, we've set-up a single document template with multiple paragraph styles which share all the same font choices (e.g. Times, 9pt, space before or after, as you like) except for the associated language. So we can now have Text Body FR, Text Body ES, Text Body IT, Text Body DE etc. available in the same document as the original Text Body which we have set language as English. So, subject to the supported language dictionaries being installed, it is now as simple to create a multi-language document as it is to create a document in any one of the supported languages. Just choose the appropriate language paragraph style for each paragraph as you go...

Spell checking is automatically associated with the appropriate dictionary by the language setting in the paragraph style.


Troubleshooting

Sometimes this process gets convoluted; there is a trinity thread that attempts to walk through troubleshooting why language (and thus dictionary) settings "don't stick" sometimes.

Auto Spellcheck doesn't work in .doc Files

.doc files (from MS Word) often don't include a setting for the language of the document. If autospell check is not working in a .doc file, there are two options:

  • Select the entire text of the document;
  • Cntrl or Right Click in the selection and choose Character from the contextual menu.
  • Click on the Font tab and set the language drop-down to the correct language.

Or

  • Go to the NeoOffice menu and choose Preferences
  • Click on Language Settings and then Languages
  • Set the Default Language for document to the correct language
  • If necessary, check For the current document only

If Autocorrect and Replacement Settings Don't Work

In this thread at trinity, Bill offers the following experience:

I installed Canadian English in my copy of NeoOffice 2.0 (patch 15) so that spell checking would happen that way, and the autocorrect replace list and exceptions list stopped working.

There seemed to be no easy way to replicate the USA English versions of these lists, and typing them all in again (after selecting "English (Canada)" at the top of the autocorrect dialog) was way too tedious.

But I managed to populate these lists using this method.

Right-click on the NeoOffice application and choose "Show Package Contents". Navigate to "Contents/share/autocorr/". Find the "acor_en-US.dat" file - this apparently contatins the replace and exceptions lists.

In a new Finder window (just to make copying easier), navigate to "~/Library/Preferences/NeoOffice-2.x/user/autocorr/". If "acor_en-US.dat" exists in this folder, temporarily rename it. The "acor ..." files in this folder seem to contain additions you've made to the replace and exceptions lists.

Copy the "acor_en-US.dat" file from autocorr folder deep in the NeoOffice application to the autocorr folder deep in the Preferences folder. In the Preferences folder rename the copied file to "autocorr_en-CA.dat". If necessary, reset the name of the "autocorr_en-US.dat" file.

Launch NeoOffice, go to the AutoCorrection dialog, choose "English (Canada)" from the pop-up, and the lists will be there.

Choose a different file name if you're using an English variant other than Canadian, UK, or USA, and (I assume) you have installed that language in NeoOffice.

"Could Not Contact Spell Checker" Error Message

If you see this error while you are checking spelling (or while auto-spell checking is on), see this thread at trinity for a potential solution.

Changing the language of the NeoOffice user interface

NeoOffice uses the topmost language in the list in the International pane of the System Preferences to determine the interface language. For details on using an interface language other than the one specified in the System Preferences, consult Changing the Language of the User Interface.


This article in other languages: Français Italiano
Personal tools