(マウスの右ボタンを使用する代わりに)Windows XPのコマンドプロンプトウィンドウにクリップボードの内容を貼り付けるためのキーボードショートカットはありますか?
典型的なShift+ Insertはここでは機能しないようです。
(マウスの右ボタンを使用する代わりに)Windows XPのコマンドプロンプトウィンドウにクリップボードの内容を貼り付けるためのキーボードショートカットはありますか?
典型的なShift+ Insertはここでは機能しないようです。
回答:
個人的には、小さなAutoHotkeyスクリプトを使用して、特定のキーボード機能を再マップします。使用するコンソールウィンドウ(CMD)は次のとおりです。
; Redefine only when the active window is a console window
#IfWinActive ahk_class ConsoleWindowClass
; Close Command Window with Ctrl+w
$^w::
WinGetTitle sTitle
If (InStr(sTitle, "-")=0) {
Send EXIT{Enter}
} else {
Send ^w
}
return
; Ctrl+up / Down to scroll command window back and forward
^Up::
Send {WheelUp}
return
^Down::
Send {WheelDown}
return
; Paste in command window
^V::
; Spanish menu (Editar->Pegar, I suppose English version is the same, Edit->Paste)
Send !{Space}ep
return
#IfWinActive
はい..しかし厄介です。リンク
alt+ Space、e、k< -コピー用と
alt+ Space、e、p< -ペーストのため。
本当に関連のプログラミングではないが、私が見つけ、これを Googleで、そこに直接キーボードショートカットではありませんが、それは少し速くなります。
パブロ、私が探していたものに感謝します!ただし、スクリプトを少し自由に改善できる場合は、^ Vマクロを次のマクロに置き換えることをお勧めします。
; Use backslash instead of backtick (yes, I am a C++ programmer).
#EscapeChar \
; Paste in command window.
^V::
StringReplace clipboard2, clipboard, \r\n, \n, All
SendInput {Raw}%clipboard2%
return
SendInputを使用する利点は、
クリップボードに「!」、「+」、「^」、または「#」が含まれている場合に備えて、SendInputコマンドに「{Raw}」を含めることが重要です。
StringReplaceを使用して、余分なWindows改行文字を削除していることに注意してください。その提案をありがとうhugov!
ctrl-v
はコンソールに「ネイティブ」の感覚を与えます
ctrl+v
と正しく貼り付けられますが、文字列の実行も開始されます(enter
後で押されるようです)。どうすればそれを防ぐことができますか?
clinkと呼ばれる優れたオープンソースツールもあり、 cmdを多くの機能で拡張します。それらの1つは、ctrl + vを使用してテキストを挿入できることです。
Windows 10では、コマンドプロンプトで+ と+ を使用できるようにするCtrlCCtrlVことができます。
最も簡単な方法は、cmdに貼り付けたいテキストをコピーしてcmd goto "properties" ---> "option" tab ---->(ティックマークを付ける) "quickEdit mode"をチェックし、 " ok ".....今、マウスを右クリックしてクリップボードからテキストを貼り付けることができます。
ありがとうございました..
AutoHotkeyユーティリティについて言及してくれたPabloに感謝します。Alt+ Spaceを使用するLaunchyがインストールされているので、変更する必要がありShiftますが、次のようにキーを追加する必要があります。
; Paste in command window
^V::
; Spanish menu (Editar->Pegar, I suppose English version is the same, Edit->Paste)
Send !+{Space}ep
return
AutoHotkeyスクリプトが機能しない理由を理解するのに少し時間がかかりました。
; Use backslash instead of backtick (yes, I am a C++ programmer).
#EscapeChar \
; Paste in command window.
^V::
StringReplace clipboard2, clipboard, \r\n, \n, All
SendInput {Raw}%clipboard2%
return
実際、それはキーストロークに依存しているため、キーボードレイアウトに依存しています。ですから、私がAZERTYキーボードしか持っていないのは残念なことに、あなたの提案はうまくいきません。さらに悪いことに、私はSendInputメソッドを置き換える簡単な方法や、これを修正するためにその環境をひねる方法を見つけられませんでした。たとえば、SendInput "1"は数字1を送信しません。
コンピューターで機能させるために、すべての文字をユニコードに変換する必要がありました。
#EscapeChar \
; Paste in command window.
^V::
StringReplace clipboard2, clipboard, \r\n, \n, All
clipboard3 := ""
Loop {
if (a_index>strlen(clipboard2))
break
char_asc := Asc(SubStr(clipboard2, a_Index, 1))
if (char_asc > 127 and char_asc < 256)
add_zero := "0"
else
add_zero := ""
clipboard3 := clipboard3 . "{Asc " . add_zero . char_asc . "}"
}
SendInput %clipboard3%
return
それほど単純ではない...
クリップボードマネージャーDitto(オープンソース、無償)を使用している場合は、ショートカットを使用してDittoから貼り付けるだけで、クリップボードがCMDに貼り付けられます。
Texterを使用して、次のようなものを作成することができます。
./p、スペースによってトリガーされ、テキストを%cで置き換えます
私はそれをテストしましたが、うまくいきます。唯一の問題は、Texterがこれをcmdだけに制限できないため、まれなシーケンスを使用することです。
おそらく他のこの種のユーティリティが動作する可能性があり、Texterが構築されているAutoHotKeyでさえそれをより良く実行できますが、Texterは簡単です:-)
最近、コマンドプロンプトが右マウスクリックによるコンテキストメニューをサポートしていることがわかりました。詳細については、http://www.askdavetaylor.com/copy_paste_within_microsoft_windows_command_prompt.htmlをご覧ください。
私は次のように@PabloGの手順に従いました