(57)【要約】【課題】  オペレーティングシステムとアプリケーションプログラムの間の言語サポートの一貫した構成についての方法およびコンピュータ読取り可能媒体を提供する。【解決手段】  この方法によれば、オペレーティングシステムについての１つまたは複数の言語設定と、アプリケーションプログラムについての１つまたは複数の言語設定を受け取り実装するための統合されたプロセスが実現される。この統合されたプロセスは、オペレーティングシステムとこれらアプリケーションプログラムの両方についての新しい言語設定を行うためにユーザを促すことを含む。オペレーティングシステムについての言語設定は、言語グループサポート、ユーザインターフェース言語、キーボードレイアウト、規格およびフォーマットについての選択、および他の設定を含むことができる。【選択図】  図１
2006099766.tif 000002
【特許請求の範囲】
【請求項１】
オペレーティングシステムと１つまたは複数のアプリケーションプログラムにまたがる言語サポートを一貫して設定する方法であって、
前記オペレーティングシステムについての１つまたは複数の言語設定、並びに、前記アプリケーションプログラムについての１つまたは複数の言語設定を受け取り、実装する統合されたプロセスを提供するステップを備えたことを特徴とする方法。
【請求項２】
前記統合されたプロセスは、前記オペレーティングシステムについての１つまたは複数の現在の言語設定と、前記アプリケーションプログラムについての１つまたは複数の現在の言語設定をユーザに対して表示するステップを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記統合されたプロセスは、前記オペレーティングシステムについての前記１つまたは複数の言語設定についてユーザを促すステップと、前記オペレーティングシステムについての前記１つまたは複数の言語設定を前記ユーザから受け取るステップとをさらに含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記オペレーティングシステムについての前記１つまたは複数の言語設定は、オペレーティングシステム言語グループサポートについての選択を含むことを特徴とする請求項３に記載の方法。
【請求項５】
前記オペレーティングシステムについての前記１つまたは複数の言語設定は、オペレーティングシステムキーボードレイアウトについての選択を含むことを特徴とする請求項３に記載の方法。
【請求項６】
前記オペレーティングシステムについての前記１つまたは複数の言語設定は、規格およびフォーマットについての選択を含むことを特徴とする請求項３に記載の方法。
【請求項７】
前記統合されたプロセスは、前記アプリケーションプログラムについての前記１つまたは複数の言語設定についてユーザを促すステップと、前記アプリケーションプログラムについての前記１つまたは複数の言語設定を前記ユーザから受け取るステップとをさらに含むことを特徴とする請求項３に記載の方法。
【請求項８】
前記アプリケーションプログラムについての前記１つまたは複数の言語設定は、前記アプリケーションプログラムにおいて使用するためのデフォルト言語を設定する選択を含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記アプリケーションプログラムについての前記１つまたは複数の言語設定は、ウェブブラウザアプリケーションプログラムにおける言語サポートについての選択を含むことを特徴とする請求項７に記載の方法。
【請求項１０】
前記アプリケーションプログラムについての前記１つまたは複数の言語設定は、言語特有の機能を表示すべき１つまたは複数の言語の選択を含むことを特徴とする請求項７に記載の方法。
【請求項１１】
前記統合されたプロセスは、前記オペレーティングシステムについての前記受信された１つまたは複数の言語設定と、前記アプリケーションプログラムについての前記受信された１つまたは複数の現在の言語設定を適用するステップをさらに含むことを特徴とする請求項７に記載の方法。
【請求項１２】
前記統合されたプロセスは、言語サポートが一貫して準備（ｄｅｐｌｏｙ）されていない言語によってユーザが作業していることを判定するステップに応答して実行されることを特徴とする請求項１１に記載の方法。
【請求項１３】
前記統合されたプロセスは、言語サポートが前記オペレーティングシステムおよび前記アプリケーションプログラムの両方について一貫して設定されていないことを判定するステップに応答して実行されることを特徴とする請求項１１に記載の方法。
【請求項１４】
前記統合されたプロセスは、ユーザ要求に応答して実行されることを特徴とする請求項１１に記載の方法。
【請求項１５】
コンピュータ実行可能命令をその上に記憶しているコンピュータ読取り可能媒体であって、前記コンピュータ実行可能命令がコンピュータによって実行されるとき、前記コンピュータに、
言語サポートが、オペレーティングシステムとアプリケーションプログラムの両方について一貫性なく設定されているかどうかを判定させ、
言語サポートが一貫性なく設定されていることを判定するステップに応答して、前記オペレーティングシステムについての１つまたは複数の言語設定と、前記アプリケーションプログラムについての１つまたは複数の言語設定を受け取り、実装するための統合されたプロセスを実行させることを特徴とするコンピュータ読取り可能媒体。
【請求項１６】
言語サポートが一貫性なく設定されているかどうかを判定する前記ステップは、言語サポートが一貫して準備されていない言語でユーザが作業しているかどうかを判定するステップを含むことを特徴とする請求項１５に記載のコンピュータ読取り可能媒体。
【請求項１７】
言語サポートが一貫性なく設定されているかどうかを判定する前記ステップは、言語サポートが前記オペレーティングシステムと前記アプリケーションプログラムの両方について一貫して設定されていないかどうかを判定するステップを含むことを特徴とする請求項１５に記載のコンピュータ読取り可能媒体。
【請求項１８】
前記統合されたプロセスは、前記オペレーティングシステムについての前記１つまたは複数の言語設定についてユーザを促し、前記オペレーティングシステムについての前記１つまたは複数の言語設定を前記ユーザから受け取るステップと、前記アプリケーションプログラムについての前記１つまたは複数の言語設定についてユーザを促し、前記アプリケーションプログラムについての前記１つまたは複数の言語設定を前記ユーザから受け取るステップとを含むことを特徴とする請求項１５に記載のコンピュータ読取り可能媒体。
【請求項１９】
前記オペレーティングシステムについての前記１つまたは複数の言語設定は、オペレーティングシステム言語グループサポートについての選択、オペレーティングシステムキーボードレイアウトについての選択、または規格およびフォーマットについての選択を含むことを特徴とする請求項１８に記載のコンピュータ読取り可能媒体。
【請求項２０】
前記アプリケーションプログラムについての前記１つまたは複数の言語設定は、前記アプリケーションプログラムにおいて使用するためのデフォルト言語を設定する選択を含むことを特徴とする請求項１９に記載のコンピュータ読取り可能媒体。
【請求項２１】
前記アプリケーションプログラムについての前記１つまたは複数の言語設定は、ウェブブラウザアプリケーションプログラムにおける言語サポートについての選択を含むことを特徴とする請求項１９に記載のコンピュータ読取り可能媒体。
【請求項２２】
前記統合されたプロセスは、ユーザ要求に応答して実行されることを特徴とする請求項１９に記載のコンピュータ読取り可能媒体。
【請求項２３】
コンピュータ実行可能命令をその上に記憶しているコンピュータ読取り可能媒体であって、前記コンピュータ実行可能命令がコンピュータによって実行されるとき、前記コンピュータに、
サポートが有効にされていない言語でユーザがドキュメント中において作業しているかどうかを判定させ、
サポートが有効にされていない言語で前記ユーザがドキュメント中において作業していることを判定するステップに応答して、言語設定ウィザードを実行して言語サポートを有効にさせることを特徴とするコンピュータ読取り可能媒体。
【請求項２４】
サポートが有効にされていない言語でユーザがアプリケーションプログラム中において作業しているかどうかを判定する前記ステップは、
前記ドキュメント中に、言語サポートが有効にされていない言語で表現されるキャラクタが存在するかどうかを判定するステップを含むことを特徴とする請求項２３に記載のコンピュータ読取り可能媒体。
【請求項２５】
サポートが有効にされていない言語でユーザがアプリケーションプログラム中において作業しているかどうかを判定する前記ステップは、
前記ドキュメント中に、言語サポートが有効にされていない言語で表現される単語が存在するかどうかを判定するステップを含むことを特徴とする請求項２３に記載のコンピュータ読取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オペレーティングシステムとアプリケーションプログラムにまたがる言語サポートの一貫した構成のための方法およびコンピュータ読取り可能媒体に関する。
【背景技術】
【０００２】
現代のデスクトップコンピュータシステムにより、ユーザは、多数の異なる言語を使用してコンピュータを動作させることができるようになっている。例えば、現代のコンピュータシステムは、そのユーザインターフェースを英語、中国語、ヘブライ語および他の多くの言語で表示することができる。さらに、キーボードレイアウトおよび入力メカニズムは、このサポートされた言語によってテキストを入力するためのサポートを提供するように構成することができる。言語サポートは、一般的に、そのコンピュータのオペレーティングシステムによっても、そのオペレーティングシステム上で実行されるワードプロセッシングプログラムやワールドワイドウェブ（「ウェブ」）ブラウザなどのアプリケーションによっても共に実装される。
【０００３】
オペレーティングシステムが提供する言語サポートは、一般的に、この選択された言語においてシステムメッセージを表示すること、この選択された言語と共に使用するのに適した入力、数字設定、時間、通貨、および他のフォーマットについてのキーボードレイアウトを構成すること、この選択された言語をサポートするのに必要とされるフォントをインストールすること、並びに、他のファンクションを含んでいる。アプリケーションプログラムが提供する言語サポートは、指定された言語によってウェブページを表示すること、指定された言語のために適切なスペルチェック辞書を利用すること、および他の同様なファンクションについてのサポートを含んでいる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
オペレーティングシステム、および様々なアプリケーションプログラムにおける言語サポートを設定するためには、ユーザが、多数の異なるコントロールパネル、オプションメニュー、および利用可能な構成オプションのすべてを熟知している必要のある場合もある。このプロセスは、ユーザにとって非常に分かりにくい場合がある。実際多くの場合に、ユーザは、オペレーティングシステムにおいてもアプリケーションプログラムにおいても共に言語サポートを設定する必要があることを知らないこともある。このオペレーティングシステムまたはこのアプリケーションプログラムの一方しか言語サポートが適切に設定されていないこともある。さらに、ユーザが、様々なコントロールパネルが提供する設定と、オペレーティングシステムにおいても、アプリケーションプログラムにおいても共に言語サポートを設定するために必要とされる設定ダイアログのすべてを理解することが困難なこともある。したがって、ユーザが彼らの選択した言語を使用して動作させるためにユーザのコンピュータシステムを正しく構成することは極めて困難な場合がある。
【０００５】
本発明の様々な実施形態により成されていることは、これらおよび他の考察に関連している。
【課題を解決するための手段】
【０００６】
本発明の実施形態によれば、上述および他の問題は、オペレーティングシステムと１つまたは複数のアプリケーションプログラムにまたがる言語サポートを一貫して設定する方法およびコンピュータ読取り可能媒体によって解決される。言語設定を設定するための統合されたプロセスを提供することにより、ユーザは、オペレーティングシステムについてもアプリケーションプログラムについても共に言語設定を速やかに一貫して指定することができる。さらに、この統合されたプロセスは、言語設定が一貫して設定されていないと判定することに応答して実行することができるので、ユーザが、この設定が間違っていることを知らないときでさえ、これらの設定を一貫して構成することができる。
【０００７】
本発明の一態様によれば、オペレーティングシステムと１つまたは複数のアプリケーションプログラムにまたがる言語サポートを一貫して設定する方法が提供される。この方法によれば、オペレーティングシステムについての１つまたは複数の言語設定およびアプリケーションプログラムについての１つまたは複数の言語設定を受け取り、実装するための統合されたプロセスが実現される。この統合されたプロセスは、言語サポートが一貫して準備（ｄｅｐｌｏｙ）されていない言語でユーザが作業していることを判定することに応答して、実行することができる。例えば、ユーザが、ワードプロセッシングアプリケーションプログラムを利用して、サポートが設定されていない言語でドキュメントをタイプしている場合に、これを行うことができる。この統合されたプロセスは、言語サポートが、オペレーティングシステムとアプリケーションプログラムの両方について一貫して設定されていないことを判定することに応答して実行することもできる。例えば、ユーザが、このオペレーティングシステムまたはこのアプリケーションプログラムのいずれか一方だけで言語サポートを設定する場合に、これを行うことができる。この統合されたプロセスは、ユーザ要求に応答して起動することもできる。
【０００８】
本発明の他の態様によれば、この統合されたプロセスは、オペレーティングシステムについての１つまたは複数の現在の言語設定と、アプリケーションプログラムについての１つまたは複数の現在の言語設定をユーザに対して表示することを含んでいる。次いでユーザは、オペレーティングシステムについてもアプリケーションプログラムについても共に、新しい言語設定を行うように促されることもある。オペレーティングシステムについての言語設定は、言語グループサポート、キーボードレイアウト、規格およびフォーマットについての選択（ｐｒｅｆｅｒｅｎｃｅ）、および他の設定を含むことができる。アプリケーションプログラムについての言語設定は、アプリケーションプログラム中で使用するためのデフォルト言語についての選択を含むことができる。ユーザインターフェース言語についての設定など、オペレーティングシステムに対しても、アプリケーションプログラムに対しても共に適用される言語設定を指定することもできる。言語設定をユーザから受け取った後に、新しい設定をこのコンピュータシステムの将来のオペレーションにおいて適用し、利用することができる。
【０００９】
本発明は、コンピュータプロセス、コンピューティングシステムとして、またはコンピュータプログラム製品やコンピュータ読取り可能媒体などの製品として実装することができる。このコンピュータプログラム製品は、コンピュータシステムによって読み取り可能で、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化したコンピュータ記憶媒体とすることができる。このコンピュータプログラム製品は、コンピューティングシステムによって読み取り可能で、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化したキャリア上の伝搬信号とすることもできる。
【００１０】
本発明を特徴づけるこれらおよび他の様々な特徴、ならびに利点については、以下の詳細な説明を読み、これらの関連する図面を検討することにより明らかとなろう。
【発明を実施するための最良の形態】
【００１１】
次に図面を参照しながら、本発明の様々な態様について説明する。図面中において、同じ番号は、同じ要素を表している。特に、図１およびその対応する説明は、本発明の実施形態を実装することができる適切なコンピューティング環境の簡単な一般的な説明を提供し、本発明の実施形態のいくつかの態様を示すことを意図している。本発明は、パーソナルコンピュータ上のオペレーティングシステム上で実行されるプログラムモジュールに関連して実行されるプログラムモジュールの一般的な文脈で説明することになるが、本発明は、他のタイプのコンピュータシステムおよびプログラムモジュールと組み合わせて実装することもできることが当業者には理解されよう。
【００１２】
一般に、プログラムモジュールは、特定のタスクを実施し、または特定の抽象データ型を実装するルーチン、プログラム、コンポーネント、データ構造、および他のタイプの構造を含んでいる。さらに、本発明は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースの、またはプログラマブルな一般消費電子製品、ミニコンピュータ、メインフレームコンピュータなどを含めて、他のコンピュータシステム構成を用いて実行することができることが当業者には理解されよう。本発明はまた、分散コンピューティング環境中でも実行することができ、ここでは、タスクは、通信ネットワークを介してリンクされるリモート処理デバイスによって実施される。分散コンピューティング環境においては、プログラムモジュールは、ローカルメモリ記憶装置中にもリモートメモリ記憶装置中にも配置することができる。
【００１３】
次に図１を参照して、本発明の様々な実施形態において利用されるコンピュータ２についての例示のコンピュータアーキテクチャについて説明する。図１に示すコンピュータアーキテクチャは、「ＣＰＵ」（中央演算処理装置）５、「ＲＡＭ」９および「ＲＯＭ」１１を含むシステムメモリ７、ならびにこのメモリをＣＰＵ５に結合するシステムバス１２を含む従来のデスクトップコンピュータまたはラップトップコンピュータを示している。起動中などにこのコンピュータ内の要素間で情報を転送する助けをする基本ルーチンを含む基本入出力システムは、ＲＯＭ１１に記憶される。コンピュータ２は、以下でさらに詳細に説明しているオペレーティングシステム１６、アプリケーションプログラム、および他のプログラムモジュールを記憶する大容量記憶装置１４をさらに含んでいる。
【００１４】
大容量記憶装置１４は、バス１２に接続されたマスストレージコントローラ（図示せず）を介してＣＰＵ５に接続される。大容量記憶装置１４およびその関連するコンピュータ読取り可能媒体は、コンピュータ２についての不揮発性ストレージを提供する。本明細書中に含まれるコンピュータ読取り可能媒体の説明では、ハードディスクやＣＤ−ＲＯＭドライブなどの大容量記憶装置について言及しているが、コンピュータ読取り可能媒体は、コンピュータ２がアクセスすることができる使用可能な任意の媒体とすることもできることを当業者には理解されたい。
【００１５】
実施例として限定するものではないが、コンピュータ読取り可能媒体は、コンピュータ記憶媒体および通信媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュール、他のデータなどの情報を記憶するための任意の方法または技術で実装される揮発性および不揮発性の、着脱可能および着脱不能な媒体を含んでいる。コンピュータ記憶媒体には、それだけには限定されないが、所望の情報を記憶するために使用することができ、コンピュータ２がアクセスすることができる、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他の固定メモリ技術、ＣＤ−ＲＯＭ、「ＤＶＤ」、または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、または他の磁気ストレージデバイス、あるいは他の任意の媒体が含まれる。
【００１６】
本発明の様々な実施形態によれば、コンピュータ２は、インターネットなどのネットワーク１８を介してリモートコンピュータに対する論理接続を使用してネットワーク環境中において動作することができる。コンピュータ２は、バス１２に接続されたネットワークインターフェースユニット２０を介してネットワーク１８に接続することができる。ネットワークインターフェースユニット２０を利用して、他のタイプのネットワークおよびリモートコンピュータシステムに接続することもできることを理解されたい。コンピュータ２は、キーボード、マウス、または電子スタイラス（図１には示さず）を含めていくつかの他のデバイスからの入力を受け取り、処理するための入出力コントローラ２２を含むこともできる。同様に、入出力コントローラ２２は、ディスプレイ画面、プリンタ、または他のタイプの出力デバイスに対して出力を提供することもできる。
【００１７】
以上で簡単に述べたように、ワシントン州レッドモンド市のマイクロソフトからのＷＩＮＤＯＷＳ（登録商標）  ＸＰオペレーティングシステムなど、ネットワーク化パーソナルコンピュータのオペレーションを制御するのに適したオペレーティングシステム１６を含めて、いくつかのプログラムモジュールおよびデータファイルは、コンピュータ２の大容量記憶装置１４およびＲＡＭ９に記憶することができる。当業者には知られているように、オペレーティングシステム１６は、様々な言語に関連した機能をサポートすることができる。例えば、オペレーティングシステム１６は、ユーザが選択する任意の言語でメッセージおよびシステム情報を表示することができる。オペレーティングシステムに関連した言語機能を有効にするために、ユーザは、一般的にこのオペレーティングシステムが提供するコントロールパネルを利用して、１つまたは複数のオペレーティングシステムの言語設定２８Ａを指定する。以下でさらに詳細に説明するように、本発明の実施形態では、オペレーティングシステムの言語設定２８Ａと、また１つまたは複数のアプリケーションプログラムの言語設定２８Ｂおよび２８Ｃとの両方を速やかに簡単に設定するための言語設定ウィザード３０が提供される。
【００１８】
大容量記憶装置１４およびＲＡＭ９は、１つまたは複数のプログラムモジュールを記憶することもできる。特に、大容量記憶装置１４およびＲＡＭ９は、１つまたは複数のアプリケーションプログラム２４を記憶することができる。本発明の実施形態によれば、アプリケーションプログラム２４は、マイクロソフトからのオフィス（ＯＦＦＩＣＥ）生産性アプリケーションスイートを含んでいる。図１に示すように、アプリケーションプログラム２４は、言語設定２８Ｂを利用して、言語特有の機能をユーザに対して提供する。例えば、言語設定２８Ｂは、アプリケーションプログラム２４およびデフォルト言語を用いて使用可能な言語を指定する。アプリケーションプログラム言語設定２８Ｂを設定するために、ユーザは、一般的にアプリケーションプログラム２４が提供するメニューおよび他のインターフェースを利用する必要がある。以下でさらに詳細に説明するように、本発明の態様は、アプリケーションプログラム言語設定２８Ｂもオペレーティングシステム言語設定２８Ａも共に設定するための言語設定ウィザード３０を提供している。本発明の実施形態は、このオフィス生産性アプリケーションスイートの文脈において説明されているが、アプリケーションプログラム２４は、言語設定を利用してカスタム言語機能をユーザに対して提供する任意タイプのコンピュータプログラムを含むこともできることを理解されたい。
【００１９】
本発明の態様によれば、大容量記憶装置１４およびＲＡＭ９は、マイクロソフトのインターネットエクスプローラ（ＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲ）ウェブブラウザアプリケーションなどのウェブブラウザアプリケーション２６を記憶することもできる。ウェブブラウザアプリケーション２６により、ユーザは、メニューおよびダイアログボックスを表示することになる言語を定義する１つまたは複数の言語設定２８Ｃを設定することもできるようになる。ウェブブラウザアプリケーション２６により、ユーザは、複数の言語でコンテンツを表示するウェブサイトと共に使用するための１つまたは複数の言語を指定することもできるようになる。ウェブブラウザ言語設定２８Ｃを指定するために、ユーザは、ウェブブラウザ２６が提供するメニューを利用する必要がある。以下でより詳細に説明するように、言語設定ウィザード３０は、オペレーティングシステム言語設定２８Ａおよびアプリケーションプログラム言語設定２８Ｂと一緒にウェブブラウザ言語設定２８Ｃを設定するための統合されたプロセスを提供する。この言語設定ウィザードのオペレーションに関する追加の詳細については、図２〜図８とともに以下で提供される。
【００２０】
次に図２を参照して、オペレーティングシステムと１つまたは複数のアプリケーションプログラムにまたがる言語サポートを一貫して設定するための言語設定ウィザード３０が実施するプロセスを示す例示的なルーチン２００について説明する。本明細書中に表されるルーチンの説明を読む際には、本発明の様々な実施形態の論理オペレーションは、（１）コンピューティングシステム上で実行されるコンピュータ実装された動作シーケンスまたはプログラムモジュール、および／または（２）このコンピューティングシステム内の相互接続されたマシン論理回路または回路モジュールとして実装されることを理解されたい。この実装は、本発明を実装するコンピューティングシステムの性能要求条件に依存した選択の問題である。したがって、図２〜図３に示す論理オペレーション、および本明細書中で説明している本発明の実施形態を作成することは、オペレーション、構造デバイス、動作またはモジュールと様々に呼ばれる。これらのオペレーション、構造デバイス、動作およびモジュールは、本明細書に添付して記載される特許請求の範囲内に列挙される本発明の趣旨および範囲を逸脱することなく、ソフトウェア、ファームウェア、特定用途デジタルロジック、およびそれらの組合せの形で実装することができることが当業者には理解されよう。
【００２１】
次に図２を参照して、オペレーティングシステムおよび１つまたは複数のアプリケーションプログラムについての一貫した言語サポートを実装するための例示的なルーチン２００について説明する。以下さらに詳細に説明するように、ルーチン２００は、ある種の状態の検出に応答して、言語設定ウィザード３０を起動するためのプロセスを示している。これらの状態に応答して言語設定ウィザード３０を起動することにより、オペレーティングシステム１６およびアプリケーションプログラム２４についての言語設定が、一貫していないように行われているとの判定が行われるとき、ユーザを言語設定ウィザード３０に導くことができる。ユーザは、手動でウィザード３０を起動することもできる。
【００２２】
ルーチン２００の実行についての１つの経路は、オペレーション２０２から開始され、ここで、ユーザがアプリケーションプログラム２４内でサポートが現在設定されていない言語で作業しているかどうかについて判定が行われる。このアプリケーションプログラム２４と共に現在使用することができる言語がない言語書込みシステム（時に「スクリプト」と呼ばれる）では、この検出プロセスは、スクリプトからのキャラクタがユーザのドキュメント中に存在するかどうかを検査する。キャラクタが存在する場合、オペレーション２０６においてこの言語と共に使用するためにアプリケーションプログラム２４を設定するように、ユーザを促すことができる。ユーザが、この言語を変更することを望む場合、ルーチン２００は、オペレーション２１０に分岐することになり、ここで言語設定ウィザード３０が実行されることになる。この言語設定ウィザード３０のオペレーションを記述する例示的なルーチン３００については、図３に対して以下で説明している。
【００２３】
現在設定されていないが、他の設定された言語と書込みシステムを共用する（例えば、スペイン語は有効でないが、フランス語は有効である）言語については、この検出プロセスは、個々のキャラクタを単に探すことに比べてより複雑なシステムを必要とする。これらのケースでは、ある種の単語の存在を探索するプログラムコードが実行される。これらの単語は、使用されているある種の言語の標識（ｉｎｄｉｃａｔｏｒ）となるように選択される。特に、この言語について多少は共通している単語の集まりを含み、他の任意の既知の言語中には存在しているとは思われないリストが、言語ごとに作成される。
【００２４】
言語ごとの標識の単語リストは、他の言語中に存在する単語を偶然に含む可能性を最小にするようにして構成される。このリストについて選択される単語数についても注意深く選択される。例えば、このリストをあまりにも小さくし過ぎることは、ユーザがこれらの特定の単語を決して使用しないこともあり得るので、言語を検出するのを困難にしてしまう可能性もある。場所の名前のうちの一部の単語を使用することもあるが、これらの場所の名前は、この場合には他の言語においても使用され、それ故に、ユーザの基点となる言語についての標識リスト中にこのような単語を含めることは、芳しくないアイデアである場合もある。
【００２５】
したがって、以上を考慮すると、オペレーション２０４において、ユーザが、一貫性なく準備された言語において作業している（例えば、そのアプリケーションプログラムが英語で使用するために構成されているときに、ユーザはドイツ語でタイプしている）ように見える場合には、ルーチン２００は、オペレーション２０４からオペレーション２０６へと続く。ユーザが、一貫して準備されていない言語中で作業していると判定するのに応答して、ルーチン２００は、オペレーション２０４からオペレーション２０６へと続くことがあるのも理解されたい。例えば、ユーザがドイツ語のテキストを用いて作業しており、動作設定が、ドイツ語についてのアプリケーション設定と一貫していない場合、この言語は、一貫性なく準備されている。しかし、オペレーティングシステムおよびアプリケーションプログラムがドイツ語についてのサポートが準備されていないという点で一貫して一致している場合には、ユーザを依然として促して、ドイツ語についてのサポートを追加することになる。この用語「一貫性なく準備される」は、両方のシナリオを包含していることを理解されたい。
【００２６】
オペレーション２０６において、ユーザを促して、間違って設定されているように思われる言語を有効にすることができる。このようなプロンプトを提供する例示的なユーザインターフェースが、図４に示されている。図４に示すように、ダイアログボックス４０をユーザに対して表示することができる。このダイアログボックス４０は、言語または言語グループと共に使用するため、アプリケーションプログラム２４、オペレーティングシステム、またはウェブブラウザが設定されていない、または、間違って設定されていることを示す指示がされる。このダイアログボックス４０は、ユーザが言語設定ウィザード３０に誘導されてこの言語を有効にしたいかどうかをユーザに尋ねることもできる。ユーザが「ＹＥＳ（イエス）」ボタン４２を選択する場合、ルーチン２００は、オペレーション２１０へと分岐し、ここで言語設定ウィザード３０が実行される。ユーザが、「ＮＯ（ノー）」ボタン４４を選択する場合には、ルーチン２００は、オペレーション２１２へと分岐し、ここでルーチンは終了する。本発明の一実施形態によれば、ダイアログボックス４０は、プルダウンメニュー４６も含んでおり、このプルダウンメニューにより、ユーザは、指定された言語についてのサポートをインストールする要求に悩まされない期間を指定できるようになる。ユーザはまた、ユーザが、何であれ指定された期間内は、どのような言語についても気を使わなくて良いように指定することもできる。
【００２７】
ルーチン２００を実行するための別の経路は、オペレーション２１６から開始され、ここで、ユーザがオペレーティングシステム１６についての言語サポートを設定しているが、アプリケーションプログラム２４については設定していないかどうかについての判定を行い、あるいはこの逆についても同様の判定を行う。この判定は、ユーザが、オペレーティングシステム１６によって提供されるコントロールパネルを利用してこのオペレーティングシステム言語設定２８Ａを設定することに応答して行うことができる。このようなケースにおいては、ユーザを促して、言語設定ウィザード３０を利用してアプリケーションプログラム言語設定２８Ｂも設定することができる。代わりに、ユーザが、アプリケーションプログラム２４によって提供されるメニューを利用してアプリケーションプログラム言語設定２８Ｂを設定することに応答してこの判定を行うことができる。このようなケースにおいては、ユーザを促して、言語設定ウィザード３０を利用して、オペレーティングシステム言語設定２８Ａを設定することもできる。オペレーティングシステム言語設定またはアプリケーションプログラム言語設定だけしか設定されていない場合には、ルーチン２００は、オペレーション２１０へと続き、ここで言語設定ウィザード３０が実行される。言語設定ウィザード３０は、オペレーション２１４におけるユーザ要求に応答して開始することもできることを理解されたい。
【００２８】
次に図３を参照して、本発明の一実施形態による言語設定ウィザード３０のオペレーションを示す例示的なプロセス３００について説明する。ルーチン３００は、オペレーション３０２から開始され、ここでオペレーティングシステム１６およびアプリケーションプログラム２４についての現在の言語設定が、ユーザに対して表示される。このような表示を提供する例示的なユーザインターフェースが、図５に示されている。図５に示すように、ダイアログボックス５０は、オペレーティングシステム１６およびアプリケーションプログラム２４についての現在の言語設定を識別するテキストフィールドを用いて、ユーザに対して表示することができる。ダイアログボックス５０は、ユーザに対してこのウィザード中において取るべき次のステップを特定するテキストフィールド５２を含むこともできる。ユーザが「ＮＥＸＴ（次へ）」ボタン５６を選択する場合、ルーチン３００はオペレーション３０３へと続く。ユーザが、「ＣＡＮＣＥＬ」ボタン５８を選択する場合には、言語設定ウィザード３０のオペレーションは終了する。
【００２９】
オペレーション３０３において、ユーザは、ウィザードの残りの部分の設定に関して作業する言語を選択することを可能にすることができる。一実施形態によれば、このウィザードが物事をセットアップできる言語を特定するドロップダウンリストを提示することができる。このウィザードが言語検出に応答して起動された場合、検出された言語は、最初にこのリスト中において選択することができる。ユーザが、このウィザードを手動で起動する場合には、ユーザは、設定すべき言語を手動で選択する必要がある。このステップにより、ユーザは、ユーザがセットアップしたいと望む言語を指定し、または間違った検出が行われた場合には訂正し、あるいはその両方を行うことができるようになる。この場合に、このステップにおいて選択される言語は、これらの設定のすべてが以下のステップにおいて適用される対象となる言語である。換言すれば、ユーザがここでポーランド語を選択する場合には、以下に説明するキーボードステップにおける選択は、ポーランド語キーボードについてのものとなり、他の何らかの言語キーボードについてのものではなくなる。ルーチン３００は、オペレーション３０３からオペレーション３０４へと続く。
【００３０】
オペレーション３０４において、ユーザを促して、オペレーティングシステム１６内の言語グループサポートを可能にする。グループサポートは、オペレーティングシステム１６内の必須のコンポーネントをインストールし有効にして、言語グループについてのサポートを可能にすることを意味する。本発明の一実施形態によれば、この言語グループは、インド語、タイ語、ベトナム語、アラビア語、およびヘブライ語の言語を含む複雑なスクリプトグループと、中国語、日本語、および韓国語を含む表意文字グループと、西ヨーロッパ語、ギリシャ語、キリル語（Ｃｙｒｉｌｌｉｃ）、および他のアルファベットタイプの言語を含むアルファベットグループとを含んでいる。言語グループについてのサポートを可能にすることにより、この言語をサポートするフォントおよび他の必須の項目がインストールされ、設定される。対象となる言語グループが、既にオペレーティングシステムによってサポートされている場合には、オペレーション３０４はスキップすることができることを理解されたい。
【００３１】
ルーチン３００は、オペレーション３０４から、オペレーション３０６へと続き、ここでこのオペレーティングシステムキーボードレイアウトに関して、ユーザから選択（ｐｒｅｆｅｒｅｎｃｅ）を受け取る。このような入力を受け取るための例示的なユーザインターフェースが、図６に示されている。図６に示すように、ダイアログボックス６０を表示することができ、このダイアログボックスを介して、ユーザは、言語についてのキーボードレイアウトを追加し、このキーボードレイアウトをデフォルトキーボードレイアウトとすべきかどうかを選択することができる。特に、チェックボックス６２は、この選択された言語についてのキーボードレイアウトをオペレーティングシステム１６と共に使用するために追加すべきかどうかを示すために提供される。チェックボックス６４はまた、この特定されたキーボードレイアウトをデフォルトキーボードレイアウトとすべきことを示すために提供される。図６に示すように、ダイアログボックス６０は、このウィザードの以前のステップおよび次のステップをそれぞれ示すためのテキスト領域６８、５２も含んでいる。ユーザが、「ＮＥＸＴ」ボタン５６を選択する場合、ルーチン３００は、オペレーション３０８へと続く。ユーザが、「ＢＡＣＫ（戻る）」ボタン６６を選択する場合には、ルーチンは、オペレーション３０４へと戻る。ユーザが、「ＣＡＮＣＥＬ（キャンセル）」ボタン５８を選択する場合には、言語設定ウィザード３０のオペレーションは、終了する。
【００３２】
オペレーション３０８において、ユーザは、オペレーティングシステムの規格およびフォーマットに関する選択について促される。特に、言語サポートは、カスタムの日付フォーマット、時刻フォーマット、通貨フォーマット、数字フォーマッティング、および他の規格およびフォーマットを含むことができる。オペレーション３０８において、ダイアログボックスがユーザに対して提示され、ダイアログボックスを介して、これらのユーザは、この有効な言語と共に使用するための適切な規格およびフォーマットを選択することができる。ユーザがこの規格およびフォーマットの選択の指定を完了した後に、ルーチン３００は、オペレーション３１０へと続く。
【００３３】
オペレーション３１０において、アプリケーションプログラム２４における言語サポートに関して、ユーザから選択を受け取る。図７は、ユーザからこれらの選択を受け取るための例示的なユーザインターフェースを示している。特に、ダイアログボックス７０がユーザに対して提示される。ダイアログボックス７０は、アプリケーションプログラム２４がこの選択された言語を可能とするように現在ではセットアップされていないことを示している。ダイアログボックス７０は、ユーザが、アプリケーションプログラム２４と共に使用するためにこの言語が有効になるように指定できるようにするチェックボックスも含んでいる。アプリケーションプログラム２４と共に使用するための言語を有効にすることにより、ある種の言語特有の機能がこのアプリケーションプログラム内で有効にされることになる。例えば、この有効にされた言語についてカスタマイズされたスペルチェッカ辞書を利用することができる。図７に示すように、ダイアログボックス７０はまた、このウィザードの以前のステップおよび次のステップをそれぞれ示すためのテキスト領域６８、５２を含んでいる。ユーザが、「ＮＥＸＴ」ボタン５６を選択する場合、ルーチン３００は、オペレーション３１２へと続く。ユーザが、「ＢＡＣＫ」ボタン６６を選択する場合には、このルーチンは、オペレーション３０８へと戻る。ユーザが、「ＣＡＮＣＥＬ」ボタン５８を選択する場合には、言語設定ウィザード３０のオペレーションは、終了する。
【００３４】
オペレーション３１２から、ルーチン３００は、オペレーション３１４へと続き、ここでウェブブラウザ２６における言語サポートに関して、ユーザから選択を受け取る。特に、ユーザは、このウェブブラウザアプリケーション２６内で使用するための好ましい言語を選択することが可能になり、またコンテンツを複数の言語で提供するウェブサイトと共に使用するためにインストールされる言語を指定することができるようになることもある。ユーザが、ウェブブラウザ言語設定２８Ｃを設定した後に、ルーチン３００は、オペレーション３１６へと続く。
【００３５】
オペレーション３１６において、ユーザは、指定されたオペレーティングシステム言語設定２８Ａ、アプリケーションプログラム言語設定２８Ｂ、およびウェブブラウザ言語設定２８Ｃを適用するように促される。特に、図８に示すダイアログボックス８０をユーザに対して表示することができる。図８に示すように、ダイアログボックス８０は、このウィザードの以前のステップを示すためのテキスト領域６８を含んでいる。ユーザが、「ＦＩＮＩＳＨ（完了）」ボタン５６を選択する場合、この変更が適用され、ルーチン３００は、オペレーション３１８へと続き、ここでこのルーチンは戻る。ユーザが、「ＢＡＣＫ」ボタン６６を選択する場合には、ルーチンは、オペレーション３１４へと戻る。ユーザが、「ＣＡＮＣＥＬ」ボタン５８を選択する場合には、言語設定ウィザード３０のオペレーションが終了し、ユーザ指定の設定は何も適用されない。
【００３６】
本発明の一態様によれば、アプリケーション言語設定２８Ｃは、１つまたは複数の「有効な」言語のアイデンティティを含むことができることを理解されたい。有効な言語とは、その言語特有の機能がユーザに対して表示される言語である。多数の言語についてのサポートがインストールされる場合、多数の言語特有の機能を表示することもできる。これは、ユーザにとって分かりにくいこともある。したがって、ユーザは、この言語特有の機能を表示すべき有効な言語を選択することが可能である。有効になっていない言語に対応する、その言語特有の機能は、隠されている。
【００３７】
前記に基づいて、本発明の様々な実施形態は、オペレーティングシステムと１つまたは複数のアプリケーションプログラムにまたがる言語サポートを一貫して設定するための方法、システム、装置、およびコンピュータ読取り可能媒体を含んでいることを理解されたい。以上の明細書、実施例およびデータは、本発明の構成の製造および使用についての完全な説明を提供している。本発明の多数の実施形態は、本発明の趣旨および範囲を逸脱することなく行うことができるので、本発明は、本明細書に添付の特許請求の範囲中に存在している。
【図面の簡単な説明】
【００３８】
【図１】本発明の様々な実施形態中で利用され、これらの実施形態が提供するコンピュータシステムを示すコンピュータシステムアーキテクチャ図である。
【図２】本発明の一実施形態におけるオペレーティングシステムとアプリケーションプログラムにまたがる一貫した言語サポートを実装するための例示的なプロセスを示すフロー図である。
【図３】本発明の一実施形態による言語設定ウィザードを実装するための例示的なプロセスを示すフロー図である。
【図４】本発明の様々な実施形態において利用される画面表示一例を示す図である。
【図５】本発明の様々な実施形態において利用される画面表示一例を示す図である。
【図６】本発明の様々な実施形態において利用される画面表示一例を示す図である。
【図７】本発明の様々な実施形態において利用される画面表示一例を示す図である。
【図８】本発明の様々な実施形態において利用される画面表示一例を示す図である。
【符号の説明】
【００３９】
２    コンピュータ
１２    システムバス
１４    大容量記憶装置
４０、５０、６０、７０、８０    ダイアログボックス
【図１】
2006099766.tif 000003
【図２】
2006099766.tif 000004
【図３】
2006099766.tif 000005
【図４】
2006099766.tif 000006
【図５】
2006099766.tif 000007
【図６】
2006099766.tif 000008
【図７】
2006099766.tif 000009
【図８】
2006099766.tif 000010