Mac OS Xでオプションキーを押したときに特殊文字の入力を無効にする方法は?[閉まっている]


129

ここでoption-bを押すと、getが表示されます。特殊文字を入力する必要はなく、option-bを特定のアプリケーションへのショートカットにマップする必要があります。これを行う方法はありますか?


26
IntelliJを使用していて、emacsのキーボードショートカットをシミュレートしたいのですが、メタをオプションキーにマッピングしました。しかし、option-bを押すと、特殊文字として解釈されるため、期待どおりの動作が得られました。
ximyu 2012

3
オプションキーを修飾子として使用すると、IDEでさらに多くのショートカットを定義できるため、生産性が大幅に向上します。
Dan

25
Macでのこのような単純なアクションがどれほど難しいかは、とんでもないことです。ランチャーに間違ったアプリを配置しました-SQLステートメントでアプリを削除してください。いくつかの愚かなショートカットを無効にしたい-OSのバージョン間で一貫していないzillionソリューションのダウンロードとテストを開始します。神様、なぜ私はこのひどいコンピューターを買ったのですか?
Vasiliy

3
これは私にとってはうまく
いき

1
端末上の問題を持つ人々のために、この指示に従ってください- > superuser.com/questions/496090/...
A-letubby

回答:


33

私はまったく同じIDEでまったく同じ問題を抱えていました。

これに対する解決策は、ここからウクレレをダウンロードすることです:

http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=ukelele

アプリケーションでは、File-> New from current sourceを使用して新しいキーレイアウトを作成できます。Optionを押すと、Option-bの場所に赤い色のキーが表示されます。つまり、デッドキーであることを意味します。それをダブルクリックすると、デッドキーから出力キーに変更できます。出力を求めるプロンプトが表示されたら、(Option-bを押して)同じことを入力できます。

したがって、同じ文字を出力しますが、デッドキーとは見なされないため、Intellijはそれをショートカットとしてバインドできます。

新しいレイアウトを有効にするには、それを〜/ Library / Keyboard Layoutsに保存し([キーボード]-> [キーボード名の設定]で新しい名前を付けると役立ちます)、[システム設定]-> [言語とテキスト]から有効にする必要があります。


15
これは多くの作業であり、1つのアプリで1つのキーコンボのみを修正します。私と少なくとも他の何人かは、Macで特殊文字入力としてoptを無効にしたいと思います。
javadba 2014年

@javadba私が正しく理解した後は、それほど悪くはありませんでした。迅速にクリックスルーできる詳細な手順については、以下の私の回答を参照してください。
Peter Lamberg、2014年

@SebastianZahaがこの回答で説明する内容に、詳細な手順含む回答を追加しました。私はそれを成し遂げるために少しばかり手探りにしてしまったので、うまくいけば誰か(そして後で私)にいくつかの問題を救ってくれるでしょう。
Peter Lamberg、2014年

74

このウェブページのオンラインツールを使用して、オプション文字をすべて空白に設定しカスタムキーボードマッピングを作成できます。ほとんどすべてのキーボードレイアウトから数回のクリックでカスタムマッピングを作成できます。IntelliJ Idea、Php / WebStorm、NetBeans、EclipseでMacOSX 10.7以降で動作することが証明されています。

選択して「オプションキーに設定ブランク」の形でラジオを、フォームを送信し、「オプション」キー機能が無効になってパッチを当てたキーボードレイアウトをダウンロードしてください。標準の米国英語キーボードレイアウトの作業ファイルを共有しています。

このカスタムマッピングを有効にした後、「オプション」キーを押したまま文字を入力すると、テキスト出力に何も印刷されません。ただし、「オプションキーの押下」はOSによってトリガーされ、IDEによって検出されます。したがって、他のコマンドキーとまったく同じ動作が得られます。

  1. キーマッピングファイルをダウンロードしますMy Layout.keylayout
  2. に移動 ~/Library/Keyboard\ Layouts/
  3. 開くSystem Preferences->Language & Text
  4. 移動Input Sources-> (hit +)->Select Others
  5. My Layoutリストから見つけて選択する必要があります。

ステップ4は、MacOSのバージョンによって若干異なる場合があります。設定でキーボードレイアウトのリストが表示されるまでしばらくお待ちください。


1
@javadba、私は私の答えを修正しました。ご意見ありがとうございます!!新しいOSバージョンでは状況が変わる可能性があります。
Dan

5
Dropboxリンクが壊れているように見えます。
アンドリューホワイト14

2
これを機能させることができませんでした。....ので、それは実際に私の新しいキーレイアウトを使用することはありません、私はリストに私の新しいキーレイアウトを追加することができますが、私はデフォルトの'米国のレイアウトを削除することはできません
AgmLauncher

12
これは10.11では動作しません。10.11で動作するgist.github.com/haosdent/573ea124e5ea666fc576にレイアウトファイルを生成します
haosdent

1
私のために働いていませんでした。option + r入力®ではなくr、IntelliJで入力するようになりました:(
Navin

35

セバスチャンザハの答えの詳細な手順は次のとおりです。(私はこれが機能するようになる前に、少し周りを探し回っていました)。

(または、ここに私が用意したファイルがあります

  1. Ukeleleをダウンロード
  2. .dmgファイルから直接実行できます
  3. ファイル->現在の入力ソースに基づいて新規(米国を選択していた)
  4. [修飾子]ボタンをクリックします
  5. 持っているリストから、各修飾子を選択し、左下または右下にあるオプションの列を。(Either Down OR Upのようなものもあるかもしれませんが、私の知る限り、それらはそのままにしておくことができます。)
    • このようにマイナスボタンを押します
  6. キーボードメニューに移動->キーボード名の設定
  7. 簡単に識別できるように名前を変更してください
  8. [ファイル]-> [名前を付けて保存]に移動します
  9. 〜/ Library / Keyboard \ Layouts /に、拡張子.keylayoutを付けて保存します
  10. Mac OSアカウントからログアウトする
  11. 再度ログイン
  12. システム環境設定->キーボード->入力ソースに移動します
  13. +ボタンを押します->その他->新しいレイアウトが利用可能になります
  14. 新しいレイアウトを追加する
  15. おそらく、元のキーボードレイアウトも残して、切り替えるための素晴らしい方法を設定します

1
これは私にとって有効な唯一のソリューションであり、キーコンボをEmacsのようなコマンドに再バインドすることができました。
event_jr 14

@ event_jr、emacsの動作のためにそれらをどのように再バインドしましたか?オプションを押しながらbをクリックすると、その組み合わせの出力を求められます。出力が単語に戻ることであることをどのように伝えるか?
Sahas

1
上記でコメントしたように、これはヨセミテのIDEAのショートカットを修正するのにも役立ちませんでした。彼らは新しいバージョンで何かを変更したと思いますが、これを修正することは不可能になりました。IntelliJ IDEA 14.1.2をOS X Yosemite 10.10.3で実行しています
Innokenty

1
@Innokentyストレンジ。私はOSX 10.10.3とIDEA 14.1.2を使用しており、emacsのようなバインディングが機能します。IDEA構成をWindowsマシンから持ち込み、.keylayoutファイルは古いバージョンのOSXを使用してビルドされました。これらの1つが理由なのでしょうか?これが私のレイアウトファイルです。
Peter Lamberg、2015年

1
OS X 10.10.5では、「オプション」列に「左下」または「右下」が表示されず、「どちらか下」のみでした。私はそれらをすべて削除し、IntelliJで動作するEmacsスタイルのキーバインドができました。これらの行を削除することの意味を理解したいのですが、問題が発生した場合に入力方式を切り替えるのは簡単なので、それを使用します。ありがとう。
デュエリンマーカー2015

12

を使用しCtrl-Alt-<MNEMONIC>ます。私見は別のアプリをインストールして設定するよりもずっと簡単です。


2
知ってよかった。ただし、Ctrl-Alt-キーの組み合わせにも機能がある場合、これは完全に満足できるものではありません。
Peter Lamberg

4
IDEの場合、CTRL + ALTはすでに使用されている可能性が高いため、IDEを再構成する必要があります。これは、他のアプリを構成するのと同じ苦痛です。
ARKBAN

この回答は、JetBrainsに質問した場合に得られるものです
Kirby

8

私は解決策を持っています!次の場所にファイルを配置します~/Library/KeyBindings/DefaultKeyBinding.dict

/* ~/Library/KeyBindings/DefaultKeyBinding.dict */
 {
    /* Additional Emacs bindings */
    "~f" = "moveWordForward:";
    "~b" = "moveWordBackward:";
    "~<" = "moveToBeginningOfDocument:";
    "~>" = "moveToEndOfDocument:";
    "~v" = "pageUp:";
    "~d" = "deleteWordForward:";
    "~^h" = "deleteWordBackward:";
    "~\010" = "deleteWordBackward:";  /* Option-backspace */
    "~\177" = "deleteWordBackward:";  /* Option-delete */

    /* Escape should really be complete: */
    "\033" = "complete:";  /* Escape */        
}

元のテキスト入力を非表示にします。ただし、組み合わせの前にCtrl-Qを使用することで、引き続きそれを取得できます。したがって、Ctrl-Q Alt-fは、たとえばƒを与えます。実際、オプションのキーバインドを有効にしてこの回答を書いています。あなたが好きな他のキーを追加することもできます!公式リファレンス:https : //developer.apple.com/library/mac/documentation/Cocoa/Conceptual/EventOverview/TextDefaultsBindings/TextDefaultsBindings.html

これはバインドできるものの良いリストです: 。https //www.hcs.harvard.edu/~jrus/site/selectors.html

ところで、未定義のアクションにキーをバインドすると、アプリケーションでメモリリークが発生し、システムで数秒でメモリが不足します。難しい方法で、el capitanでテストされました。


5

以前のMacbookでは問題なく動作していたVSCodeを使用した新しいMacbookでも同じ問題が発生しました。フォーマットにalt-shift-fを入力すると、代わりにユニコードが表示されました。私の違いは、私の古いMacbookがデフォルトの「ABC-Extended」の代わりに英国のキーボード設定を持っていることであることに気付きました。英国のキーボードを追加すると、問題が解決しました。


私はこれを試しましたが、たとえばIntellij IDEAでOption + Nを使って迷惑な文字を取得しました。
アミールエルドール

2

Apple JREを使用すると、Optionキーの組み合わせは、特殊文字を挿入する代わりにショートカットとして機能します。

ダウンロードリンク:https : //support.apple.com/kb/DL1572?locale=en_US

これは古い旧式のJRE(Java 6に基づく)ですが、2015年10月の時点でも、JetBrains RubyMineをインストールした場合は、これが最もよく機能するようです。(それ以外の場合、キーは特殊文字の挿入に戻ります。)


0

まともな回避策を見つけました。私はソフトウェアKarabinerを使用して、押したときに制御する右のEnterキーを変更します。

したがって、3つの修飾子すべてを使用するコマンドを認識していないため、ivが実行したことは、オプションキーをoption + cmd + controlに再マップします。これで、文字なしで適切なショートカットをマッピングできます。ただし、必要に応じて追加のキーにマッピングすることもできます

これをprivate.xmlに追加します:(ルート間)

<item>
<name>Change option Key to cmd + control + option</name>
<identifier>private.optiontoelse</identifier>
<autogen>__KeyToKey__ 
    KeyCode::OPTION_L, 
    KeyCode::OPTION_L, ModifierFlag::CONTROL_L | ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyToKey__ 
    KeyCode::OPTION_R, 
    KeyCode::OPTION_R, ModifierFlag::CONTROL_R | ModifierFlag::COMMAND_R</autogen>
</item>

次にxmlをリロードし、「キーの変更」タブの上部にあるオプションを有効にします

https://pqrs.org/osx/karabiner/


-2

ABC-Extendedの代わりにABCを入力メソッドとして使用すると、オプション+ [char]で、特殊文字を表示する代わりにアプリケーションのショートカットを使用できます。


ABC-LocaleまたはABC-Extendedの代わりに、この回答が役に立ちました。ABCを使用しました
コードネームJack

-3

メタの代わりにescキーを使用するだけです。たとえば、meta-xはesc-xにマップします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.