it-swarm.asia

المعجون كيفية تحديد النص ونسخ النص باستخدام لوحة المفاتيح فقط

هل هناك أي طريقة لاختيار نص باستخدام لوحة المفاتيح بالطريقة التي أفعلها بشكل طبيعي باستخدام Shift + الأسهم.

69
l245c4l

من دليل المعجون :

نسخة ولصق PuTTY يعمل تماما مع الماوس. من أجل نسخ النص إلى الحافظة ، ما عليك سوى النقر فوق زر الماوس الأيسر في النافذة الطرفية ، واسحب لتحديد النص. عندما تترك الزر ، يتم نسخ النص تلقائيًا إلى الحافظة. لا تحتاج للضغط Ctrl-C أو Ctrl-Ins. في الواقع ، إذا قمت بالضغط Ctrl-C، المعجون سوف ترسل Ctrl-C حدد جلسة العمل الخاصة بك على الخادم حيث من المحتمل أن تتسبب في مقاطعة العملية.

69
Asaph

حسب علمي ، لا توجد وسيلة لنسخ منطقة محددة من نافذة المعجون إلى حافظة Windows دون استخدام الماوس. يوجد طلب ميزة على موقع المعجون خصيصًا لهذه الوظيفة.

http://www.chiark.greenend.org.uk/~sgtatham/PuTTY/wishlist/keyboard-copy.html

الطريقة الوحيدة لنسخ المعلومات من نافذة PuTTY إلى حافظة Windows مع اختصار لوحة المفاتيح هي استخدام قائمة نظام التطبيق "نسخ الكل إلى الحافظة" ( التي يمكنك التذرع بها من alt-space ، شريطة أن تضبط خيار "Window> Behavior> System في قائمة ALT-Space" التي تم تكوينها في PuTTY.

لصق من حافظة ويندوز إلى يمكن القيام به مع Shift-Insert.

إذا كنت بحاجة إلى نسخ ولصق فقط داخل إطار المحطة الطرفية نفسه ، فراجع إما صفحة الدليل الخاصة بشل التي تستخدمها أو فكر في استخدام تطبيق "شاشة" يونيكس ("شاشة الرجل" لمزيد من المعلومات) ، والذي يسمح بتحديد النص للنسخ/اللصق داخل النافذة الطرفية (على غرار طريقة نسخ/لصق vi). مقتطف من صفحات الرجل:

   C-a esc     (copy)        Enter copy/scrollback mode.

   C-a ]       (paste .)     Write the contents of the paste buffer to the
                             stdin queue of the current window.

   C-a {
   C-a }       (history)     Copy and paste a previous (command) line.

   C-a >       (writebuf)    Write paste buffer to a file.

   C-a <       (readbuf)     Reads the screen-exchange file into the paste
                             buffer.

   C-a =       (removebuf)   Removes the file used by C-a < and C-a >.
26
ives

control+insert = نسخة

shift+insert = لصق

22
vi_dude

لحل هذه المشكلة، تشغيل PuTTY في استبدال وحدة تحكم Windows مثل ConEmu أو SuperPutty .

3
Michael Hampton

قد يكون هذا أكثر من حل بديل.

ضمن vim ، إذا كنت ترغب في نسخ كتلة حددتها في الوضع المرئي (عادةً كتلة تغطي عدة صفحات) ، فيمكنك كتابتها إلى ملف (عن طريق كتابة :w filename.txt أثناء تحديد النص وأثناء وجودك في الصورة) الوضع). بمجرد القيام بذلك ، يمكنك:

  1. افتح الملف في محرر Windows إذا كان مثبتًا فوق Samba
  2. اقرأ محتويات الملف عبر Apache أو خادم FTP
  3. إرسال الملف بالبريد الإلكتروني كمرفق (راجع الأمر أدناه - يتطلب Mutt):

    echo "My Message Body" | mutt -s "my subject line" -a filename.txt -- [email protected]
    

أنا شخصياً أفضل الخيار 1.

2
Homer6

اقتراح آخر مؤقت إلى حد ما هو تنشيط مفاتيح الماوس داخل Windows. في نظام التشغيل Windows 7 ، يقع تحت مركز سهولة الوصول.

  1. انقر فوق "اجعل الماوس أسهل في الاستخدام".
  2. حدد مربع الاختيار الذي يشير إلى "تشغيل مفاتيح الماوس".
  3. انقر فوق "إعداد مفاتيح الماوس" للحصول على إعدادات إضافية.

هوتكي مفاتيح الماوس الافتراضي هو Alt + Shift + NumLock.

نأمل أن لا يتسبب ضرب هذا المزيج الرئيسي في جلسة العمل الخاصة بك (أو فقط Alt + Tab خارج وتفعيلها من خارج المعجون). أعتقد أن ضرب 0 على لوحة الأرقام يبدأ قفل نقرات ، مما يسمح لك بالسحب فوق جزء النص الذي تريد إبرازه/نسخه.

2
White Phoenix

أستخدم GNU الشاشة ،

لدي أيضًا هذا في screenrc الخاص بي للعب بشكل جيد مع vim:

register [ "\033:se paste\015a"
register ] "\033:se nopaste\015a\033"
bind ^] paste [.]

صديق لي لديه خطاف في الشاشة لنسخ "حافظة الشاشة" إلى واحد من كليهما أو كليهما (اختيار أو حافظة) وأعتقد أن PuTTY يقوم بالترجمة اللازمة. سأحاول حفره.

ربما يمكنك ترتيب نفس الشيء مع xclip ، فإن التعويذ الذي تبحث عنه يجب أن يستخدم xclip -selection clipboard

سأختبر بسرعة لمعرفة ما إذا كان xclip -selection clipboard -o يبصق محتويات الحافظة الخاصة بك.

2
richo

لقد تعبت من التمرير لأسفل سطرا بسطر عبر زر الماوس الأيسر لنسخ إخراج الجلسة. ولكن الآن ، أنا بحاجة إلى الضغط على الزر الأوسط مرتين ؛ الأول في البداية والثاني في النهاية. كيف فعلت:

  1. انتقل إلى نافذة تكوين المعجون
  2. اختر "التحديد" من الفئة على يسار النافذة.
  3. ضمن "التحكم في استخدام الماوس" ، اختر "التسوية (يمتد الأوسط ، يلصق الأيمن)" إذا لم تكن قد اخترت بالفعل.
2
sedat

عملت على هذا لفترة من الوقت ، و PuTTY نفسها لا يمكن أن تتيح لك نسخ فقط مع الحافظة.

ومع ذلك ، يمكن PuTTY تسهيل النقل العكسي للبيانات من الجانب البعيد. إذا كنت تستخدم أداة مثل Vim أو Tmux لإجراء تحديدات نصية تستند إلى لوحة المفاتيح ، فيمكنك تفريغ الإخراج إلى ملف ، و (التعارف عن نفسي هنا) netcat إلى نفق المنفذ العكسي PuTTY إلى خدمة محلية تتخلص من المدخلات إلى المحلي الحافظة.

لقد قمت بعمل فيديو لكيفية القيام بذلك هنا: https://www.youtube.com/watch؟v=RI79eeCuyvE ، ولكن إليك النسخة القصيرة:

اضبط PuTTY> اتصال> SSH> أنفاق لإعادة توجيه R11311 إلى المضيف المحلي: 1234 استخدم netcat كخادم استماع ينقل الإخراج إلى أمر windows 10 clip والذي يرسل مدخلات إلى حافظة windows. التفاف هذا في الأبدية للحلقة مثل:

for /L %N IN () do nc -lp 1234 | clip

قم بتشغيل ما سبق في أمر موجه إلى تشغيلك كمشرف ، لأنك تتجه إلى منفذ.

على خادم * nix البعيد ، تحتاج إلى استخدام vim أو Tmux لإرسال تحديدات نصية إلى ملف.

استخدم أمرًا لإرسال اختيار النص إلى ملف

tmux save-buffer ~/.clipboard

أو يمكنك استخدام Vim لحفظ مخزن مؤقت (في هذه الحالة ، z) إلى ملف

silent! redir! > ~/.clipboard
silent! echo @z
silent! redir END

أدمج حافظات vim و tmux باستخدام ملف .clipboard كوسيط باستخدام دالة vim Gist .

بمجرد تحديد النص الخاص بك في الملف ، يمكنك توجيه الإخراج إلى الجانب البعيد من المنفذ للأمام:

cat ~/.clipboard | nc 127.0.0.1 11311

أو داخل البرنامج النصي vim

silent! !cat ~/.clipboard | nc 127.0.0.1 11311 &

لاحظ أن علامة الضم ضرورية لأنني لم أستطع جعل علامة -q 0 الخاصة بـ netcat تعمل بشكل صحيح. ربما يمكنك. دون أن يعمل ، فإنه ينتظر ثانية كاملة قبل الإغلاق ، والتي يمكن أن تكسر تدفق عملك. مع علامة الضم فإنه يتخلى عن العملية على الفور ، والتي تكتمل في ثانية واحدة في الخلفية.

القيام بكل ما سبق سوف يدمج بشكل تام قصاصات الذاكرة Tmux و Vim و PuTTY للعميل دون لمس الماوس! كانت هذه هي الطريقة الوحيدة التي تمكنت من إيجاد ذلك.

1
Troy Fletcher