Apakah ada pintasan keyboard untuk menempelkan konten clipboard ke jendela command prompt pada Windows XP (daripada menggunakan tombol kanan mouse)?
Shift+ Khas Insertsepertinya tidak berfungsi di sini.
Apakah ada pintasan keyboard untuk menempelkan konten clipboard ke jendela command prompt pada Windows XP (daripada menggunakan tombol kanan mouse)?
Shift+ Khas Insertsepertinya tidak berfungsi di sini.
Jawaban:
Saya pribadi menggunakan sedikit script Autohotkey untuk memetakan kembali fungsi keyboard tertentu, untuk jendela konsol (CMD) yang saya gunakan:
; 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
Ya .. tapi canggung. Tautan
alt+ Space, e, k<- untuk menyalin dan
alt+ Space, e, p<- untuk pasta.
Tidak benar-benar terkait pemrograman, tetapi saya menemukan ini di Google, tidak ada pintasan keyboard langsung , tetapi membuatnya sedikit lebih cepat.
Terima kasih Pablo, hanya apa yang saya cari! Namun, jika saya dapat sedikit meningkatkan skrip Anda, saya sarankan mengganti makro ^ V Anda dengan yang berikut:
; 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
Keuntungan menggunakan SendInput adalah
Catatan, penting untuk memasukkan "{Raw}" dalam perintah SendInput, jika clipboard mengandung "!", "+", "^" Atau "#".
Catatan, menggunakan StringReplace untuk menghapus kelebihan karakter carriage Windows kembali. Terima kasih hugov untuk saran itu!
ctrl-v
di konsol perasaan 'asli'
ctrl+v
itu pasta dengan benar, tetapi juga mulai mengeksekusi string (seperti enter
ditekan setelah itu). Bagaimana saya bisa mencegahnya?
Ada juga alat open source yang hebat yang disebut clink , yang memperluas cmd oleh banyak fitur. Salah satunya adalah dapat menggunakan ctrl + v untuk menyisipkan teks.
Pada Windows 10, Anda dapat mengaktifkan Ctrl+ CdanCtrl + Vuntuk bekerja di command prompt :
Ini alat gratis yang akan melakukannya di Windows. Saya lebih suka skrip karena mudah diatur. Ini berjalan sebagai aplikasi asli yang cepat, bekerja di XP dan yang lebih tinggi, memiliki pengaturan konfigurasi yang memungkinkan untuk memetakan kembali tombol salin / tempel / pilihan untuk jendela perintah:
Ditambah lagi, saya tahu pengembangnya.
Metode paling sederhana hanyalah menyalin teks yang ingin Anda rekatkan dalam cmd dan buka cmd goto "properties" ---> "option" tab ----> centang (beri tanda centang) "mode quickEdit" dan klik " ok "..... sekarang Anda dapat menempelkan teks apa saja dari clipboard dengan melakukan klik kanan dari mouse Anda.
Terima kasih..
Terima kasih, Pablo, untuk merujuk ke utilitas AutoHotkey. Karena saya telah menginstal Launchy yang menggunakan Alt+ Spacesaya harus memodifikasinya tetapi untuk menambahkan Shiftkunci seperti yang ditunjukkan:
; Paste in command window
^V::
; Spanish menu (Editar->Pegar, I suppose English version is the same, Edit->Paste)
Send !+{Space}ep
return
Ini bukan jalan pintas tetapi hanya akses cepat ke menu kontrol: Alt-space EP
Jika Anda dapat menggunakan mouse Anda, klik kanan pada jendela cmd berfungsi sebagai tempel ketika saya mencobanya.
Secara teoritis, aplikasi di DOS Prompt memiliki clipboard dan pintasan sendiri. Mengimpor teks dari papan klip Windows adalah "ekstra". Namun Anda dapat menggunakan Alt-Space untuk membuka menu sistem dari jendela Prompt, lalu tekan E, P untuk memilih Edit, menu Paste. Namun, MS bisa menyediakan jalan pintas menggunakan Win-key. Tidak ada peluang untuk digunakan dalam aplikasi DOS.
Butuh beberapa saat untuk mengetahui mengapa skrip Autohotkey Anda tidak berfungsi dengan saya:
; 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
Bahkan, itu bergantung pada penekanan tombol dan akibatnya pada tata letak keyboard! Jadi ketika Anda, sayangnya, hanya memiliki keyboard AZERTY, saran Anda tidak berfungsi. Dan lebih buruk lagi, saya tidak menemukan cara mudah untuk mengganti metode SendInput atau memutar lingkungannya untuk memperbaikinya. Misalnya KirimInput "1" tidak mengirim angka 1.
Saya harus mengubah setiap karakter menjadi unicode untuk membuatnya bekerja di komputer saya:
#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
Tidak terlalu sederhana ...
Jika Anda menggunakan clipboard manager Ditto (open source, gratis), Anda cukup menggunakan shortcut untuk menempel dari Ditto, dan itu akan menempelkan clipboard di CMD untuk Anda.
Anda dapat mencoba menggunakan Texter dan membuat sesuatu yang tidak mungkin seperti:
./p, dipicu oleh spasi dan mengganti teks dengan% c
Saya baru saja mengujinya dan berfungsi dengan baik. Satu-satunya gotcha adalah menggunakan urutan langka, karena Texter tidak dapat membatasi ini hanya cmd.
Mungkin ada utilitas lain dari jenis ini yang dapat bekerja, dan bahkan Autohotkey , di mana Texter dibangun dapat melakukannya dengan lebih baik, tetapi Texter mudah :-)
Baru-baru ini saya menemukan bahwa command prompt memiliki dukungan untuk menu konteks melalui klik kanan mouse. Anda dapat menemukan detail lebih lanjut di sini: http://www.askdavetaylor.com/copy_paste_within_microsoft_windows_command_prompt.html
Jika Anda pengguna Cygwin, Anda dapat menambahkan yang berikut ini ke file ~ / .bashrc Anda:
stty lnext ^q stop undef start undef
Dan berikut ini ke file ~ / .inputrc Anda:
"\C-v": paste-from-clipboard
"\C-C": copy-to-clipboard
Mulai ulang terminal Cygwin Anda.
(Catatan, saya telah menggunakan C huruf besar untuk menyalin, karena CTRL + c ditugaskan untuk fungsi istirahat di sebagian besar konsol. Bumbu sesuai selera.)
Alih-alih "klik kanan" .... mulailah sesi Anda (setelah Anda berada di jendela command prompt) dengan memasukkan Alt / SpaceBar. Itu akan membuka menu jendela Prompt Perintah dan Anda akan melihat pintasan perintah keyboard yang digarisbawahi, seperti di Windows GUI.
Semoga berhasil!
Saya mengikuti langkah-langkah @ PabloG sebagai berikut
Di bawah VISTA Command prompt: Klik pada System Icon Select Defaults dari Menu Pada tab Options di grup Options saya memiliki "Mode Edit Cepat", "Mode Insert", dan "Auto Complete" yang dipilih Saya pikir "Mode Edit Cepat" adalah apa yang membuatnya bekerja.
Untuk menempelkan apa pun yang ada di Clipboard pada titik penyisipan: Klik Kanan. Untuk menyalin dari Command Window Select dengan menahan tombol kiri mouse dan menarik pointer melewati apa yang ingin Anda salin. Setelah dipilih, klik kanan untuk menempel pada titik penyisipan, klik kanan lagi.