Có một phím tắt để dán nội dung của bảng tạm vào cửa sổ nhắc lệnh trên Windows XP (thay vì sử dụng nút chuột phải) không?
Shift+ Điển hình Insertdường như không hoạt động ở đây.
Có một phím tắt để dán nội dung của bảng tạm vào cửa sổ nhắc lệnh trên Windows XP (thay vì sử dụng nút chuột phải) không?
Shift+ Điển hình Insertdường như không hoạt động ở đây.
Câu trả lời:
Cá nhân tôi sử dụng một tập lệnh AutoHotkey nhỏ để ánh xạ lại các chức năng bàn phím nhất định, cho cửa sổ giao diện điều khiển (CMD) tôi sử dụng:
; 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
Có .. nhưng vụng về. Liên kết
alt+ Space, e, k<- để sao chép và
alt+ Space, e, p<- để dán.
Không thực sự liên quan đến lập trình, nhưng tôi đã tìm thấy điều này trên Google, không có phím tắt trực tiếp , nhưng làm cho nó nhanh hơn một chút.
Cảm ơn Pablo, chỉ là những gì tôi đang tìm kiếm! Tuy nhiên, nếu tôi có thể tự do cải thiện tập lệnh của mình một chút, tôi khuyên bạn nên thay thế macro ^ V của mình bằng cách sau:
; 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
Ưu điểm của việc sử dụng SendInput là
Lưu ý, điều quan trọng là bao gồm "{Raw}" trong lệnh SendInput, trong trường hợp bảng tạm xảy ra có chứa "!", "+", "^" Hoặc "#".
Lưu ý, nó sử dụng StringReplace để loại bỏ các ký tự trả về vận chuyển Windows thừa. Cảm ơn hugov cho đề nghị đó!
ctrl-v
giao diện điều khiển một cảm giác 'bản địa'
ctrl+v
nó sẽ dán chính xác, nhưng cũng bắt đầu thực thi chuỗi (nó giống như enter
được nhấn sau đó). Làm thế nào tôi có thể ngăn chặn điều đó?
Ngoài ra còn có một công cụ mã nguồn mở tuyệt vời gọi là clink , giúp mở rộng cmd bằng nhiều tính năng. Một trong số đó là có thể sử dụng ctrl + v để chèn văn bản.
Trên Windows 10, bạn có thể bật Ctrl+ Cvà Ctrl+ Vđể hoạt động trong dấu nhắc lệnh :
Đây là một công cụ miễn phí sẽ làm điều đó trên Windows. Tôi thích nó cho một kịch bản vì nó dễ cài đặt. Nó chạy như một ứng dụng gốc nhanh, hoạt động trên XP trở lên, có các cài đặt cấu hình cho phép ánh xạ lại các phím sao chép / dán / lựa chọn cho các cửa sổ lệnh:
Thêm vào đó tôi biết các nhà phát triển.
Phương pháp đơn giản nhất chỉ là sao chép văn bản mà bạn muốn dán vào cmd và mở cmd goto "property" ---> "tùy chọn" tab ----> kiểm tra (cho dấu tick) "chế độ quickEdit" và nhấp vào " ok "..... bây giờ bạn có thể dán bất kỳ văn bản nào từ clipboard bằng cách nhấp chuột phải từ chuột của bạn.
Cảm ơn bạn..
Cảm ơn, Pablo, đã tham khảo tiện ích AutoHotkey. Vì tôi đã cài đặt Launchy sử dụng Alt+ SpaceTôi phải sửa đổi nó nhưng để thêm Shiftkhóa như được hiển thị:
; Paste in command window
^V::
; Spanish menu (Editar->Pegar, I suppose English version is the same, Edit->Paste)
Send !+{Space}ep
return
Đây không thực sự là một phím tắt mà chỉ là một truy cập nhanh vào menu điều khiển: Alt-space EP
Nếu bạn có thể sử dụng chuột, nhấp chuột phải vào cửa sổ cmd hoạt động như dán khi tôi thử.
Về mặt lý thuyết, ứng dụng trong DOS Prompt có bảng tạm và phím tắt riêng. Để nhập văn bản từ khay nhớ tạm của Windows là "thêm". Tuy nhiên, bạn có thể sử dụng Alt-Space để mở menu hệ thống của cửa sổ Nhắc, sau đó nhấn E, P để chọn Chỉnh sửa, Dán menu. Tuy nhiên, MS có thể cung cấp lối tắt bằng Win-key. Không có cơ hội được sử dụng trong ứng dụng DOS.
Tôi đã mất một lúc để tìm hiểu lý do tại sao tập lệnh AutoHotkey của bạn không hoạt động với tôi:
; 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
Trong thực tế, nó dựa vào tổ hợp phím và do đó bố trí bàn phím! Vì vậy, khi bạn, như tôi, thật không may khi chỉ có một bàn phím AZERTY, đề xuất của bạn không hoạt động. Và tệ hơn nữa, tôi không tìm thấy cách dễ dàng nào để thay thế phương thức SendInput hoặc vặn môi trường của nó để sửa lỗi này. Ví dụ SendInput "1" chỉ không gửi chữ số 1.
Tôi đã phải biến mọi ký tự thành unicode để làm cho nó hoạt động trên máy tính của mình:
#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
Không đơn giản ...
Nếu bạn sử dụng trình quản lý clipboard Ditto (mã nguồn mở, miễn phí), bạn chỉ cần sử dụng phím tắt để dán từ Ditto và nó sẽ dán bảng tạm vào CMD cho bạn.
Bạn có thể thử sử dụng Texter và tạo một cái gì đó không thể như:
./p, được kích hoạt bởi khoảng trắng và thay thế văn bản bằng% c
Tôi chỉ thử nghiệm nó và nó hoạt động tốt. Gotcha duy nhất là sử dụng một chuỗi hiếm, vì Texter không thể hạn chế điều này chỉ trong cmd.
Có thể có các tiện ích khác thuộc loại này có thể hoạt động, và thậm chí AutoHotKey , mà Texter được xây dựng có thể làm điều đó tốt hơn, nhưng Texter thì dễ :-)
Gần đây tôi đã thấy rằng dấu nhắc lệnh có hỗ trợ cho menu ngữ cảnh thông qua nhấp chuột phải. Bạn có thể tìm thêm chi tiết tại đây: http://www.askdavetaylor.com/copy_paste_within_microsoft_windows_command_prompt.html
Nếu bạn là người dùng Cygwin, bạn có thể thêm phần sau vào tệp ~ / .bashrc của mình:
stty lnext ^q stop undef start undef
Và sau đây với tệp ~ / .inputrc của bạn:
"\C-v": paste-from-clipboard
"\C-C": copy-to-clipboard
Khởi động lại thiết bị đầu cuối Cygwin của bạn.
(Lưu ý, tôi đã sử dụng chữ hoa chữ C để sao chép, vì CTRL + c được gán cho chức năng ngắt trên hầu hết các bảng điều khiển. Mùa để nếm thử.)
Thay vì "nhấp chuột phải" .... bắt đầu phiên của bạn (một khi bạn đang ở trong cửa sổ nhắc lệnh) bằng cách nhập Alt / SpaceBar. Điều đó sẽ mở menu cửa sổ Command Prompt và bạn sẽ thấy các phím tắt lệnh bàn phím được gạch chân quen thuộc của mình, giống như trong Windows GUI.
Chúc may mắn!
Tôi đã làm theo các bước của @ PabloG như sau
Trong Dấu nhắc lệnh của VISTA: Nhấp vào Biểu tượng hệ thống Chọn Mặc định từ Menu Trên tab Tùy chọn trong nhóm Tùy chọn Tôi có "Chế độ chỉnh sửa nhanh", "Chế độ chèn" và "Hoàn thành tự động" được chọn Tôi nghĩ rằng "Chế độ chỉnh sửa nhanh" là những gì làm cho nó hoạt động.
Để dán bất cứ thứ gì vào Clipboard tại điểm chèn: Nhấp chuột phải. Để sao chép từ Cửa sổ lệnh Chọn bằng cách giữ nút chuột trái và kéo con trỏ qua những gì bạn muốn sao chép Sau khi chọn, nhấp chuột phải Để dán tại điểm chèn, nhấp chuột phải lần nữa.