Ctrl + Backspaceは、消去する代わりに小さなボックスを挿入します


40

Ctrl+ を押すBackspaceと、単語全体が消去される代わりに、小さな正方形が挿入されることがあります。ここにキャラクターをコピーして貼り付けると、「。」しかし、テキストボックスではそのようには見えません。そこには、1pxの黒い境界線が付いた単純な白い長方形があります。

この問題は一部のテキストボックスでのみ発生します。他のショートカットでは、ショートカットは本来の動作をします。

  • スタートメニューの検索ボックス:動作
  • メモ帳:しない仕事

    メモ帳でCtrl + Backspaceから作成された小さなボックス

  • Notepad2:動作します
  • Firefox:動作します

Windows 7 x64を実行しています。


1
WinXPのメモ帳でも同じ動作をします。
djhowell

2
また、Windows 7のエクスプローラーファイルの名前を変更するときにもこの動作が発生します。つまり、ファイルを選択し、を押してF2、削除する単語の末尾にカーソルを移動し、Ctrl+ を試しBackspaceます。
ロリーオケイン

回答:


25

AutoHotkeyを使用してCtrl+ Backspaceショートカットをオーバーライドすると、この動作を修正できます。次のコードをプレーンテキストファイルに指定のファイル名と拡張子で保存し、AutoHotkeyでスクリプトを起動します。

FixCtrlBackspace.ahk

; how to write scripts: http://www.autohotkey.com/docs/

#IfWinActive ahk_class CabinetWClass ; File Explorer
    ^Backspace::
#IfWinActive ahk_class Notepad
    ^Backspace::
    Send ^+{Left}{Backspace}
#IfWinActive

; source and context: http://superuser.com/a/636973/124606

; relevant documentation links:
; writing hotkeys
; http://www.autohotkey.com/docs/Hotkeys.htm
; list of key codes (including Backspace)
; http://www.autohotkey.com/docs/KeyList.htm
; the #IfWinActive directive
; http://www.autohotkey.com/docs/commands/_IfWinActive.htm
; the Send command
; http://www.autohotkey.com/docs/commands/Send.htm

このスクリプトファイルをGitHubからダウンロードする方が、ファイルを作成してその内容を自分で貼り付けるよりも簡単な場合があります。

このスクリプトを起動時に自動的に起動するには、「任意のコンピューターで起動時にプログラムを実行する方法」の説明に従って、[スタート]メニューの[スタートアップ]フォルダーにショートカットを追加します。

スクリプトの基本的な考え方は次のとおりです。

^Backspace:: Send ^+{Left}{Backspace}

これにより、すべてのプログラムのCtrl+ Backspaceショートカットが変更されるため、Ctrl+ Shift+ を押して前の単語を選択し、次にを押しBackspaceて削除するのと同じになります。

この選択と削除の回避策は、ボックスを入力するよりも優れていますが、脆弱です。Ctrl+がBackspace既に機能しているプログラムでは、このショートカットを有効にしない方が安全です。その#IfWinActiveため、ショートカットをサポートしていないことがわかっているプログラムのみにホットキーを制限するために使用します。


19

表示されている「ボックス」は、制御文字として知られています。あなたが発見したように、すべてのプログラムがctrl + backspaceを処理して単語を削除するわけではないため、ボックスが表示されます。

この制御文字は、128文字のASCII文字エンコードスキームの33の「非印刷」文字の1つです。


一部のアプリケーションはさらに悪いことにそれを処理し、実際には制御文字を表示しないことを追加したかっただけです。何も起こらずctrl+backspace、deleteを押しても何も起こらない場合に、これを見ることができます。Vista用のメモ帳がこれをしたと思う。
ジョシュア

5
挿入される文字は127-削除文字です。

1
WikipediaのASCII文字127、削除文字へのリンク
ロリーオケイン

これは明白な「何」を説明しますが、「なぜ」ではありません:
mafu

14

MSDN ブログでこれを見つけました...

Internet Explorerグループの初期の数人は、ブリーフエディターを使用しました。ブリーフエディターはCtrl + Backspaceをショートカットキーとして使用して前の単語を削除します。したがって、SHAutoCompleteを使用する編集コントロールは、この秘密のCtrl + Backspaceホットキーを取得します。

したがって、アプリケーションがSHAutoCompleteを使用しない場合、アプリケーションの作成者によって明示的に追加されていない限り、この機能はサポートされないようです。

PS control-deleteは、カーソルの前の単語を削除します


1
:また、この同じ記事に、コメントを読んすることはもう少し洞察追加 blogs.msdn.com/oldnewthing/archive/2007/10/11/...
heavyd

0

すべてのアプリケーションがキーボードショートカットを同じように処理するわけではありません。メモ帳はこのキーの組み合わせを処理していないようで、独自の方法で処理します。

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