web-dev-qa-db-ja.com

OS XのようにWindows 10で言語を切り替えるにはどうすればよいですか?

OS Xには、キーボード入力ソース(言語)が3つ以上あり、 CmdSpace そのうちの2つだけを切り替えます。

別の(3番目の)言語に切り替えたい場合は、 Cmd そして押す Space 利用可能な入力ソースのリストから選択します。

Windows 10で同様の機能を使用するにはどうすればよいですか? 3つの入力ソースがあり、それらをループして必要なものに到達するのは本当に面倒です。

10
Boykodev

Windows 10では、言語へのキーボードショートカットを割り当てることができます。

  1. コントロールパネル->時計、言語、および地域->言語->詳細設定に移動します。

  2. 入力方式の切り替えの下で、言語バーのホットキーの変更をクリックし、次にクリックあなたの言語で、そして最後にキーシーケンスを変更してください

  3. これにより、その言語にショートカットキーを割り当てることができるダイアログが表示されます。

image

上記のショートカットキーは非常に制限されているため、たとえば AutoHotkey を使用して、これを他のキーボードの組み合わせに変更できます。 AutoHotkeyを学ぶと、OSXの正確な動作を簡単に再現できます(フォーラムでヘルプを求めることもできます)。

多くのAutoHotkeyスクリプトがインターネット上にあり、ニーズに合わせてそれらを調整できます。

次のスクリプト例は、機能を改善することを目的としています Alt+Shift 現在のウィンドウの英語キーボードとロシア語キーボードの切り替えとして:

; This should be replaced by whatever your native language is. See 
; http://msdn.Microsoft.com/en-us/library/dd318693%28v=vs.85%29.aspx
; for the language identifiers list.
ru := DllCall("LoadKeyboardLayout", "Str", "00000419", "Int", 1)
en := DllCall("LoadKeyboardLayout", "Str", "00000409", "Int", 1)

!Shift::
w := DllCall("GetForegroundWindow")
pid := DllCall("GetWindowThreadProcessId", "UInt", w, "Ptr", 0)
l := DllCall("GetKeyboardLayout", "UInt", pid)
if (l = en)
{
    PostMessage 0x50, 0, %ru%,, A
}
else
{
    PostMessage 0x50, 0, %en%,, A
}

以下は、さまざまな機能でキーボードレイアウトを変更するためのスクリプトを提供するスレッドです。

同様にそれを行ういくつかの無料製品はここにあります:

  • keyla -キーボードショートカットを定義するか、タスクバーアイコンを使用できます
  • 要約 -CapsLockを使用してキーボードの言語を切り替えます
8
harrymc

OS X、Android、iPhoneのようにWindows 10で(ほぼ)言語を切り替える方法

Windows 7にこの問題の(ほぼ完全な)解決策があり、Windows 10いくつかの追加手順があります。

バックグラウンド

解決策は、Windowsに2つの異なるエンティティがあるという事実に基づいています:入力言語キーボードレイアウトです。

デフォルトではAlt+Shift設定された入力言語をループします。そして、それは入力言語です)は、システムで追加の言語が必要なときに通常追加されます。

だが。

  1. の動作を変更することが可能です Alt+Shift(またはCtrl+Shift必要に応じて)キーボードレイアウトをループし、入力言語
  2. すべての入力言語に対して異なるキーボードショートカットを指定できます(この質問に対する他の回答の1つでも説明されているため)
  3. 最も重要なことは、無関係なキーボードレイアウト入力言語(異なるスクリプトのレイアウトでも))を追加することです。たとえば、ヘブライ語のレイアウトを英語に追加します。この手順はWindows 10ですが、実行可能です。

最後に、いくつかの異なる入力言語があり、それぞれに個別のキーボードショートカットがありますが、入力言語を選択すると、通常のを使用できるようになります。 Alt+Shiftこれは、定義されたキーボードレイアウト「内部」入力言語

Windows 10での構成

簡単にするために、英語、ロシア語、ヘブライ語の3つの言語を使用するとします。以下の手順を完了すると、3つの操作モードが表示されます。

  • 英語モード、デフォルトで使用され、Ctrl+1およびAlt+Shift(またはCtrl+Shift)英語とロシア語の間のループ
  • ヘブライ語モード。Ctrl+2およびAlt+Shift(またはCtrl+Shift)英語とヘブライ語の間のループ
  • ロシア語モード、で選択 Ctrl+3およびAlt+Shift(またはCtrl+Shift)英語とロシア語の間のループ

構成する手順。

  1. Ctrl-Esc([スタート]メニューを開く)-または画面の左下隅にあるWindowsボタン
  2. Language(コントロールパネルから言語項目を表示する)と入力し、Enterキーを押します。
  3. ベンダーによっては、英語と地域の言語を使用している場合があります。英語しかないと仮定して、ロシア語とヘブライ語を言語ボタンを追加で追加します
  4. すべての言語にはデフォルトで入力メソッドがあり、これはその言語に対応しています。ここで、「無関係」入力メソッドを各入力言語:に追加します。
    1. ダウンロード Microsoft Keyboard Layout Creator
    2. ファイル->既存のキーボードをロード。
    3. 追加するレイアウトを選択します(英語の入力言語のロシア語のレイアウトから始めましょう)
    4. プロジェクト->プロパティ
    5. このキーボードレイアウトを使用可能にする入力言語に一致するように言語)を変更します。この場合、英語(米国)になります。
    6. [〜#〜] ok [〜#〜]を押します。「キーボードの説明が同じです」というエラーメッセージが表示された場合は、説明を少し変更する必要があります。サフィックスを追加してください。
    7. プロジェクトメニューを開き、ビルドDLLおよびセットアップパッケージを選択します。警告を無視して、Windowsインストーラパッケージがビルドされたディレクトリを開くことに同意します。
    8. setup.exeを実行すると、選択したキーボードレイアウトに対してキーボードレイアウトがインストールされます==
    9. 再び開く(閉じるともう一度開く)言語画面(手順2から)とオプションfor 英語(米国)言語)を選択すると、two入力メソッド:[〜#〜] us [〜#〜]および使用できない入力メソッド
    10. 必要なすべてのキーボードレイアウトに対して手順4.1〜4.9を繰り返します(ここで説明する例では、さらに2つの繰り返しが必要です:プロジェクト->プロパティで英語のキーボードセットの言語をロシア語に設定し、それをビルドして、英語をロードします再びキーボードで、プロジェクト->プロパティで言語をヘブライ語に設定し、ビルドします)。
  5. 前のステップが正常に完了すると、ステップ4.5でターゲット言語として使用したすべての言語のオプション画面に利用できない入力方法)が表示されます。
  6. 最後の手順は、キーボードショートカットの構成です。開く言語画面(ステップ1〜2)
    1. 詳細設定言語画面の左側のペインで)を選択)
    2. 言語バーのホットキーを変更するを選択します
    3. 入力言語間(マウスの左クリック)を選択し、キーシーケンスの変更ボタンを押します。
    4. 未割り当てを選択します入力言語の切り替えペイン)
    5. キーボードレイアウトの切り替えペインで左Alt + Shift(または好みのもの))を選択します
    6. 確認(OK)。
    7. To English(United States)-US(左マウスクリック)を選択し、キーシーケンスの変更ボタンを押し、キーシーケンスを有効にするをチェックし、Ctrlおよび1を選択します(またはその他の好ましい)、確認
    8. ヘブライ語(イスラエル)-ヘブライ語(標準)(左マウスクリック)を選択し、キーシーケンスの変更ボタンを押し、キーシーケンスを有効にするを選択し、Ctrlおよび2(またはその他の好ましい)、確認
    9. ロシア語(ロシア語)-ロシア語(左マウスクリック)を選択し、キーシーケンスの変更ボタンを押し、キーシーケンスを有効にするをチェックし、Ctrlおよび(またはその他の好ましい)、確認
  7. 再起動します(はい、キーボードショートカットはWindowsではかなりバグがあります。いったん変更すると、正しく登録されるように再起動する必要があります)。

Windows 7での構成

Windows 7で同じユースケースを構成する方が簡単で、追加のツールをダウンロードする必要はありません。

  1. Ctrl-Esc(これによりスタートメニューが開きます)-または画面の左下隅にあるWindowsボタン
  2. 地域と言語(コントロールパネルから言語項目が表示されるはずです)と入力し、Enterキーを押します
  3. キーボードと言語タブ-> キーボードの変更
  4. 追加ボタンを選択し、英語(米国)セクションを検索)を選択します
  5. +(プラス記号)をクリックして、Keybordセクションを開きます。
  6. それを開いてShow More ...itemをクリックします。これにより、すべての異なる言語でリストが補完されます。このリストでロシア語を見つけて、チェックしてください(英語の中でキーボード内でロシア語を選択していることを確認してください) (米国)リスト。
  7. 確認後、2つのキーボードがEN English(United States):USとRussianの下にあるはずです。
  8. [追加]をクリックし、ヘブライ語(イスラエル)を検索して、ヘブライ語続きを表示...米国-国際表示を選択した後にのみ利用可能になります詳細)、確認
  9. [追加]をクリックしてロシア語(ロシア)を検索し、ロシア続きを表示...[〜#〜] us [〜#〜](これはもっと見る)を選択した後にのみ利用可能、確認
  10. Advanced Key Settingsタブに移動します
  11. 選択入力言語間(左マウスクリック)
  12. 選択キーシーケンスの変更ボタン
  13. Set Switch Input Languageto NoneSwitch Keyboard Layoutto Left Alt + Shift(or Ctrl + Shift)、確認
  14. To English(United States)-US-> Change Key Sequence-> Enable Key Sequence、set to Ctrl+1、確認
  15. ヘブライ語(イスラエル)-米国-国際-> キーシーケンスの変更-> キーシーケンスを有効にするに設定 Ctrl+2、確認
  16. ロシア語(ロシア)へ-米国-> キーシーケンスの変更-> キーシーケンスを有効にするに設定 Ctrl+3、確認
  17. 確認(OK)。
  18. リブート。

ノート

特徴が1つあります。一部のプログラムでは、右に切り替えない限り、文字化けが発生する可能性があります入力言語(たとえば、ロシア語の入力が文字化けする場合は、Ctrl+3ロシア語のキーボードレイアウトに切り替えます)。しかし、それはごくまれに起こり、一部の異常な状況(ほとんどのWindowsユーザーの場合)でのみ発生し、実際にはそれほど気になりません。

2
Petya Kohts

 AltShift

1
Brictarus

キーボードレイアウトのトグルホットキーを無効にする直接のレジストリ設定は次のとおりです。

reg add "HKCU\Keyboard Layout\Toggle" /v "Layout Hotkey" /d 3

あなたも望むかもしれません

reg add "HKCU\Keyboard Layout\Toggle" /v "Language Hotkey" /d 3
reg add "HKCU\Keyboard Layout\Toggle" /v "Hotkey" /d 3

そして、新しいユーザーのために、これを試してください(昇格したプロンプトで):

reg load HKEY_USERS\temp "%USERPROFILE%\..\Default\NTUSER.DAT"
reg add "HKEY_USERS\temp\Keyboard Layout\Toggle" /v "Layout Hotkey" /d 3
reg unload HKEY_USERS\temp
0

スタートメニューの検索バーに入力コントロールパネル->クリック言語->クリック詳細設定->クリック言語を変更バーのホットキー->クリックキーシーケンスの変更

0
Taras Melnyk
; AutoHotkey Script
#SPACE::
  Send ^#{SPACE}
Return

; ♥
; macOS-like input language change algorithm
; Just use WIN + SPACE as normal
; Hold the WIN then tap SPACE to loop


; Test environment
; OS Version  : Windows 10 1803
; AHK Version : 1.1.30.01


; Title  : default setting should be like this
; Date   : 4/8/2019
; Author : who cares
0
who cares

キーボードを切り替えるためのデフォルトのキーコマンドを検索してここにいる私のような人にとっては、WindowsのデフォルトはLeftです。 AltShift

0
INTP5

MacOSのように正確な動作が必要な場合は、構成する必要はなく、 Ctrl+Win+Space 最近使用した2つの言語を切り替えます。 Cmd+Space

ヒットしたときなど、他の入力方法に切り替えるには Cmd+Space 二回、ただ使う Win+Space

0
Ian