web-dev-qa-db-ja.com

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

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

この問題は一部のテキストボックスでのみ発生します。他の人では、ショートカットは本来あるべきように機能します。

  • スタートメニューの検索ボックス:機能
  • メモ帳:しない機能

    small box created from Ctrl+Backspace in Notepad

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

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

40
ugh

この動作を修正するには、 Ctrl+BackspaceAutoHotkey を使用したショートカット。次のコードを特定のファイル名と拡張子の付いたプレーンテキストファイルに保存し、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 ホットキーを、そのショートカットをサポートしていないことがわかっているプログラムのみに制限します。

25
Rory O'Kane

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

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

19
Jared Harley

これはMSDNで見つかりました blog ...

Internet Explorerグループの初期の数人のユーザーは、Ctrl + Backspaceをショートカットキーとして使用して以前のWordを削除するブリーフエディターを使用しており、好評だったため、オートコンプリートハンドラーに追加しました。したがって、SHAutoCompleteを使用する編集コントロールは、この秘密のCtrl + Backspaceホットキーを取得します。

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

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

14
djhowell

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

0
th3dude