4D にはカスタマイズ可能なスペルチェック機能がビルトインされています。スペルチェックは文字及びテキストのフィールドあるいは変数、そして4D Write Proドキュメントに対して実行可能です。
スペルチェックの補正は自動的にトリガーすることもできるしプログラムでトリガーすることもできます。補正アクションはデフォルトのインターフェースあるいは標準アクションを通して実行されます。
スペルチェッカーも使用する言語辞書も、どちらも設定することが可能です。4Dでは専門の辞書を使用する特定の機能も提供しています。
フォーム内でスペルチェッカーを有効化するには、以下の方法があります:
4Dでは、スペルチェックは絶えずテキストエリア内で実行されていて、エラーは破線の下線が直接テキストに引かれてハイライトされます:
異なる色の破線はエラーの種類を表しています:
赤 の破線は綴りの間違いを表示します緑 の破線は文法の間違いを表示します(OS Xのシステムのスペルチェッカーのみ)青 の破線は置き換える単語を表示します(置き換えテキストを表示 のオプションがチェックされている必要があります。以下を参照して下さい)ユーザーをそれをみて、コンテキストメニュー(下線の引かれた単語を右クリックで表示)またはスペルチェッカーダイアログを使用して修正することが出来ます。
スペルチェックのオプションを表示するためには、下線の引かれた単語を右クリックします。コンテキストメニューが表示され、その中にスペルチェッカーのコマンドがあります:
注: 自動スペルチェック とコンテキストメニュー のオプションがチェックされている必要があります。
スペルチェッカーダイアログ表示 のオプションを選択すると、修正した値を入力するダイアログが表示されます:
このダイアログボックスは、セッションの間、ユーザーが閉じるまでアプリケーション内の全てのウィンドウに表示されるフローティングするウィンドウです。
4Dのスペルチェッカーでは修正候補の提示をしてくれるだけではなく、以下のオプションと機能が用意されています(コンテキストメニュー内またはスペルチェッカーダイアログボックス内):
登録 : この未知の単語を辞書に登録し、今後スペルチェッカーによって検知されることはなくなります。OS X 環境下では、学習した単語は /Users/[UserName ]/Library/Spelling の場所に恒久的に保存されています(ここで学習した単語は、システムスペルチェッカーを使用する他のアプリケーションでも表示されなくなります)。 ハンスペル辞書では、学習した単語はカレントのアプリケーションデータのユーザーシステムディレクトリ内のカスタムの辞書内に保存され、メインの辞書がロードされる際に同時に呼び出されます(旧バージョンと同様の動作です)。 登録解除 (コンテキストメニュー): このオプションは、以前に学習した単語を選択したときに表示されます。選択すると、この単語を学習した単語のリストから除外し、その単語は再びスペルチェッカーによってエラーとして表示されるようになります。無視 : この未知の単語はそのままの状態で下線が表示されないようになります。ただし、その後再び検知されたときには下線が表示されます。スペルチェッカーは、ドキュメントごとに無視する単語の表を保存しています。無視した単語の一覧を消去 のオプションを選択することで一覧表を削除することができます(以下を参照して下さい)。前へ/次へ (ダイアログボックス): この未知の単語は何も変更されず、下線を引かれたままで、スペルチェッカーはテキスト内の次の未知の単語を検索します。スペルチェック (コンテキストメニュー): カレントのプロセスにおいて、エリア内のスペルチェッキングを全体的に有効化または無効化します。置換 (ダイアログボックス): テキスト内で選択された単語が最初の入力フィールドにある単語と一致する場合、二番目のフィールド内の単語で置換され、同時にスペルチェッカーは次のエラーを検索します。常に置換 (ダイアログボックス): 置換 と同じですが、その置換は記憶されます(以下のテキストの置換 を参照して下さい)。スペルチェック のサブメニューでは、以下の様な機能が使用可能です:
スペルを自動的に修正 : カレントのプロセス内において、自動修正モードを有効化もしくは無効化します。このモードが有効化されている場合においては、未知の単語は最も近い既知の単語で自動的に置き換えられます(ただしあまりに曖昧な場合は行われません)。修正は、入力の際に行われます。 デフォルトでは、このオプションは無効になっています。テキストの置換 : テキストの置換を有効化または無効化します。この機能は、ある単語を他の単語で置き換えるというものです。例えば、"Mr." を "Mister" で置き換える、といったようなことができます。"置き換えられる単語/以下の単語で置き換え"の単語のペアを作成するためには、スペルチェッカーダイアログを使用する必要があります。"辞書にありません" エリアに置き換えたい単語を入力し、それを置き換える単語を "以下で置換" エリアに入力して下さい。その後常に置換 ボタンをクリックします: 置換はアプリケーションの中全体において実行されます。ハンスペル辞書においては、スペルチェッカーがアプリケーション内の置き換えを記録する表を、アプリケーションのユーザーシステムディレクトリ内に保存します。OS Xのシステムスペルチェッカーの場合、この表はシステムの置換と統合されます(システム環境設定言語とテキスト内の"記号とテキストの置換を使用"オプション)。 置き換えのプロセスを使用するためには、スペル設定 内のテキストの置き換えを表示 のオプションがチェックされている必要があります(以下を参照して下さい)。テキストの置き換えを表示 (このオプションは、テキストの置換 のオプションがチェックされている場合にのみ表示されます): このオプションがチェックされているとき、スペルチェッカーは置き換える必要があり得る単語について青の下線を引きます。ユーザーはその単語を右クリックすることによって、置き換える値を選択することが出来ます。 このオプションがチェックされていないとき、置換はユーザーの操作なしに自動的に行われます。無視した単語の一覧をクリア : ドキュメントの中で無視するよう指定された単語の一覧を消去します。
OS X のシステムのスペルチェッカーには、他にもいくつかの修正のためのオプションが存在します:
言語ごとに自動 : 文章の内容をもとにして、文章の言語と使用すべき辞書を自動的に検知します。 デフォルトでは、ハンスペルのスペルチェッカーと同じように4Dアプリケーションの言語を使用します。文法をチェック : 文章の文法のチェックを有効化します。スマートダッシュ記号 : 入力中、ハイフン二つ(--)をダッシュ(—)で置き換えます。スマート引用符 : 引用符を、カレントの言語に合わせたスマート引用符へと置き換えます。
4Dアプリケーションは、以下のスペルチェッカーを使用します:
Windows - オープンソース の"Hunspell"辞書 Mac - 2種類の辞書から選ぶことができます:ネイティブのシステムスペルチェッカー。デフォルトではこの辞書が使用されます。 オープンソース の"Hunspell" 辞書。これを使用するには、SET DATABASE PARAMETER コマンドとSpellchecker セレクターを使用する必要があります。 Macでは、ネイティブのシステムスペルチェッカーには作業環境に統合できるという点と、より高度な補正オプションを提示できるという利点があります(参考: OS X のシステムのスペルチェッカーにおけるその他のオプション )。一方、オープンソース の"Hunspell" 辞書では、更なる言語辞書を4Dデータベースに追加できるという利点があります(参考:以下の Hunspell辞書のサポート )。
デフォルトでは、4Dはアプリケーションのカレント言語に対応した辞書を使用します。SPELL SET CURRENT DICTIONARY コマンドを使用することで異なる辞書を使用することを強制することもできます。
4DアプリケーションがHunspell 辞書を使用している場合(上記参照)、他の言語辞書を追加することができます。Hunspell 辞書は次のアドレスからダウンロードすることができます: https://openoffice.org
それぞれのHunspell 辞書は同じ名前をもつ.aff ファイルと.dic ファイルから構成されます。例えば、"fr-modern"という辞書はfr-modern.aff および fr-modern.dic というファイルから構成されます。
注: ダウンロード可能な辞書ファイルは通常圧縮されており(例えばOpenOffce.org では.oxt フォーマット)、使用する前に解凍する必要があります。
Hunspell辞書を4Dアプリケーションで使用するためには、その.aff ファイルと.dic ファイルを以下の場所のどちらかにインストールする必要があります(第一階層):
4Dアプリケーション内: <4D>/Resources/Spellcheck/Hunspell/ 4Dデータベース内: <Database_Files>/Resources/Hunspell どちらの場所も互換性があります: まずデータベースフォルダーが解析され、次に4Dアプリケーションフォルダー内の辞書が解析されます。同じ名前の辞書が両方の場所にインストールされている場合、データベースフォルダーの辞書が優先されます。この動作により特別な辞書を4Dデータベースフォルダーにカプセル化することができます。
4Dにはスペルチェックで受け入れられる、カスタマイズされた単語のリストを使用するメカニズムがあります。これにより専門分野、アプリケーションの目的、会社の用途に応じて特別な辞書をアプリケーション内で利用することができます。
主たる言語ごとに複数の特別辞書を使用できます。これは4Dおよび4D Writeで動作します。
特別辞書を指定した言語に追加するには、テキストフォーマットのファイルをSpellcheck フォルダー内の主たる言語サブフォルダー内に配置するだけです。ファイル名は何でも構いませんが、拡張子は“.txt”でなければなりません。
言語サブフォルダーは4Dの以下の場所に作成されます:
Windows: (4D Application folder )\Resources\Spellcheck\ Mac OS: (4D Package ):Contents:Resources:Spellcheck: サブフォルダーの名称は主たる言語に対応します。変更することはできません:
English French German Spanish Norsk 各フォルダーにはデフォルトで単語ファイルが含まれています。このファイルに単語を追加したり、他のファイルを追加したりできます。テキストエンコーディングはUTF-8でなければなりません。
スペルチェックファイルは4Dアプリケーション内に格納されています。特別辞書をクライアント/サーバーモードで利用したい場合、先に説明した箇所にその辞書をそれぞれインストールしなければなりません。
特別辞書の内容は改行で区切られた単語のリストです。例えば: 4D Server Desktop
これに単語 (例えば: boogie ) を追加したり、ハイフンで連結された複合単語 (例: boogie-woogie ) を追加できますが、スペースで区切られた単語の並びは追加できません (例: Mark Smith )。
テキストファイルの内部フォーマットはWindowsとMac OSで異なります (特に改行コード)。そのためプラットフォームごとに特別辞書を作成する必要があります。テキストエディターには改行コードを変換できるものがあります。
特別辞書は標準辞書と同様、アプリケーションの起動時にロードされます。辞書のカレント言語はアプリケーション言語に基づきます。
セッション中、SPELL SET CURRENT DICTIONARY コマンドを使用してカレント言語を変更できます。この場合特別辞書が対応する言語フォルダーに存在すれば、それもロードされます。
利用中、標準辞書と特別辞書の間に単語の処理に関する違いはありません。