OS X Lionでは、 ESC キーは全画面モードを終了します。残念ながら、特にSafariを使用している場合は、 ESC JavaScriptキーストロークイベント処理など、他の機能に使用されます。エスケープを押したときにLionが全画面モードを終了しないようにしたいのですが、その機能を無効にする場所が見つかりません。
全画面モードを開始/終了するためのキーボードショートカットはすでに知っています(Cmd-Ctrl-F)。無効にしたい ESC ショートカット。私はググリングしてきましたが、答えを見つけることができません。
Webブラウザーの場合、特にEscape
キーの使用を有効にするか必要とするが、全画面のクローズを妨げない動作があるサイト( Stack Exchangeサイト など)を使用する場合は、次のユーザースクリプト:
// ==UserScript==
// @name Keep Full Screen
// @namespace http://superuser.com/q/315949
// @description Prevents Escape key from leaving full screen.
// @include http://*
// ==/UserScript==
document.onkeydown = function (evt) {
if (evt.keyCode == 27) evt.preventDefault();
}
これをブラウザーで実行するには、ブラウザーの任意のユーザースクリプトエンジンを使用します。
OS Xにネイティブなほとんどの状況では、Escape
とCmd-.
の両方を受け入れて中止します。ファイルダイアログ、Safariの読み込み、要素のドラッグなど.
もちろん、そのリストには特にないフルスクリーンモードを残しています。
そのため、Escape
の代わりにCmd-.
を押して、この状況を完全に回避することを学ぶことができます。または、コンピュータにそれを実行するように教えることもできます。少なくともいくぶん健全な解決策は、たとえば Butler 'sKeystrokesitem to map Escape
to Cmd-.
:
Cmd-.
を押して、このアイテムをアクティブ化するときに、これを結果のキーストロークとして使用しますEscape
を押します。基本的にあなたが正気でないと述べている警告は無視してください。Escape
を完全に無視しますが、Ctrl-.
を押すとCtrl-C
!に変換されます。状況によっては、問題が発生することがあります。 通常のキーにキーを再マッピングする同等のキーボードショートカットは、大ハンマーソリューションです。 たとえば、Quick LookはCmd-.
を処理しません(したがって、ファイルプレビューを閉じるために再マッピングされたEscape
)。 Finderでのファイル名の変更は、Escape
や選択などを使用して中止することはできません。 Finderでクリアされます。
限られたテストでは、Cmd-.
を押しても実際には望ましくないアクションが実行される状況は見つかりませんでしたが、これらもおそらく存在することに注意してください。
MacOs Sierra以上の回答は見つかりませんでした。だから私はこの問題を解決した方法です。
すでに提案されているように、ESCを⌥+ ESCに再マップしました。それは仕事をし、キーに割り当てられた他のいくつかの機能も機能します。一部のサイトではフルスクリーン動画を終了できますが、ページの読み込みは中止されません。
最初に、キーを再マップできるように Karabiner-elements をインストールする必要があります
/usr/bin/Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew tap caskroom/cask
brew cask install karabiner-elements
この問題のために特別に「複雑な修正」を作成しました。この変更をインストールするには、次のことを行う必要があります。
可能なオプションは次のとおりです。
他の機能の代替ショートカットを設定します。 ESC OSとブラウザによって予約されています。
ソース/アセンブラマシンコードを調整して、 ESC OSとブラウザのキー。
アプリケーションデベロッパー(Googleスプレッドシートなど)に対してバグ/機能のリクエストを提出し、ESCイベントを通過させる代わりに使用します。
アプリケーションが最初にここにあり、Appleが原因なくキーを再利用したため、Appleにバグを報告してください。
試す OptionEsc、私のために働いた。
JQueryを使用しているようです。その場合:
ドキュメントでkeydownイベントをリッスンしますkeyCode 27でイベントが発生したときe.preventDefault()。
$(document).bind('keydown', function(e) {
if (e.keyCode === 27) { // Escape key
e.preventDefault();
// Other code goes here
}
});
これはOperaをターゲットとする@ aditya-srinivasanの回答と同じです
<?xml version="1.0"?>
<root>
<item>
<!-- ============================================================ -->
<appdef>
<appname>OPERA</appname>
<equal>com.operasoftware.Opera</equal>
</appdef>
<name>Escape to Option + Escape on Opera</name>
<identifier>private.Opera_escape</identifier>
<only>OPERA</only>
<autogen>__KeyToKey__ KeyCode::ESCAPE, KeyCode::ESCAPE, ModifierFlag::OPTION_L</autogen>
</item>
<!-- ============================================================ -->
</root>
ダウンロードに関する@ aditya-srinivasanの回答をご覧ください https://pqrs.org/osx/karabiner/index.html.en
説明をもう少し具体化するだけです。
ESCはドラッグをキャンセルするために使用され、escはダイアログボックスをキャンセルするために使用され、escはドラッグ中に移動/コピーをキャンセルするために使用され、escはVIのターミナルで編集コマンドをキャンセルするために使用されます
したがって、多くの用途があります。 Appleで全画面表示をキャンセルできるモードがctrl-cmd-Fと右上のアイコンで可能な場合、これは奇妙な奇妙なことです。
これは、アプリごとにあるようで、MailとSafari、およびその他のiLifeアイテムはフルスクリーンで終了します。 iTunesはフルスクリーンのままです。
Reederは、フルウィンドウコントロールの目的でescを無視し、プログラムに対して他の適切なことを行います。 Evernoteには、ウィンドウコントロール用のcmd-Fまたはctrl-cmd-F、アイコン、およびescキーさえありません。
Esc自体をキーボードのコントロールパネルの無害で意味のないアクションにマッピングすることはできません。
ソリューションを必死に探した後、私はSafariをMissionコントロールを備えた別の仮想デスクトップに委託します。これはESCの問題を軽減し、フルスクリーンのSafariウィンドウに最も近い概算です。
Dockを非表示にした場合のボーナススペース。
BetterTouchToolやKeyboardMaestroなどを使用してリマップ Esc ⌥+ Esc。
簡単、見つけた! 2つのアクションを備えたKeyboardMaestro
「を押すとESC"(代わりに)プレスをシミュレート:-"CMD+。 "-その後、"ALT+ESC」
一部のアプリはどちらか一方の注文のみに反応するため(両方に反応しない場合もあり、その場合は何もできないため)、両方が必要です。ESC"そのコンテキストでは、フルスクリーンモードを終了することはありません
持つことに決めました esc にルーティング alt/option + esc。ほとんどの場合、これによりYouTubeのvidから抜け出すことができ、Squarespaceアカウントを持っている場合は、フルスクリーンから抜け出すことなくログインできます。