ฉันจะคัดลอกไฟล์ใน netrw ได้อย่างไร


15

./A/B/ไดเรกทอรีการทำงานปัจจุบันคือ เอกสารที่ว่างเปล่าจะถูกเปิดเมื่อฉันพิมพ์vimและ netrw ถูกเปิดด้วยคำสั่ง:e.หน้าต่างถูกแยกตามและฉันสามารถนำทางไปยังไดเรกทอรีระดับบนคือvs. ./A/ตอนนี้ผมต้องการคัดลอกไฟล์a_file.jpgจากไป./A/B/./A/

ฉันลองyyใช้ไฟล์เป้าหมายและpในหน้าต่างเป้าหมาย (ไดเรกทอรี) แต่ไม่บรรลุเป้าหมาย

มีวิธีใดที่สามารถบรรลุเป้าหมายโดยไม่ต้องติดตั้งปลั๊กอินเสริมหรือไม่


1
ลองทำสิ่งต่อไปนี้: mtไปที่ไดเรกทอรีเป้าหมายที่คุณต้องการทำสำเนาไฟล์ (เพื่อทำเครื่องหมายเส้นทางที่ไปยังโฟลเดอร์ควรจะปรากฏในแบนเนอร์หลังจากCopy/Move Tgt:) กดmfไฟล์ที่คุณต้องการคัดลอกเพื่อทำเครื่องหมายเป็น ดีจากนั้นกดปุ่มmcเพื่อดำเนินการคัดลอกจริง
saginaw

คำตอบ:


18

คุณไม่สามารถใช้y, pฯลฯ เพื่อคัดลอกไฟล์ใน netrw - มันมาพร้อมกับคำสั่งของตัวเอง ดู:h netrw-mc:

MARKED FILES: COPYING                                           netrw-mc {{{2
            (See netrw-mf and netrw-mr for how to mark files)
                      (Uses the global marked file list)

Select a target directory with mt (netrw-mt).  Then change directory,
select file(s) (see netrw-mf), and press "mc".  The copy is done
from the current window (where one does the mf) to the target.

If one does not have a target directory set with netrw-mt, then netrw
will query you for a directory to copy to.

One may also copy directories and their contents (local only) to a target
directory.

กรณีของคุณง่ายขึ้นเนื่องจาก./Aเป็นหลักของ./A/B:

  1. เปิด./A/Bให้ย้ายไปยังเส้นมี../,
  2. ทำเครื่องหมายด้วย mt
  3. ย้ายไปที่บรรทัดที่มีไฟล์ที่คุณต้องการคัดลอก
  4. กดแล้วmfmc

ตัวอย่าง:

$ tree foo
foo
└── bar
    └── test

1 directory, 1 file
$ vim foo/bar

ขณะนี้:

  1. ย้ายไปที่..และกดmt:

    ป้อนคำอธิบายรูปภาพที่นี่

  2. ส่วนหัวจะเปลี่ยนเพื่อแสดงเป้าหมายปัจจุบัน:

    ป้อนคำอธิบายรูปภาพที่นี่

  3. ย้ายไปยังแฟ้ม (ที่นี่test) mfและกด มันได้รับการเน้นสำหรับฉัน:

    ป้อนคำอธิบายรูปภาพที่นี่

  4. กดmc- ไฮไลท์หายไป ตอนนี้นำทางไปยังโฟลเดอร์หลัก - ไฟล์ควรมีอยู่:

    ป้อนคำอธิบายรูปภาพที่นี่


9

ฉันจะทำสิ่งนี้จากโหมดบรรทัดคำสั่ง:

  • เลือกไฟล์ที่คุณต้องการใน netrw
  • เปิดคำสั่งสายและประเภท - :!mv <C-R><C-F> ../<C-R><C-F>

ที่นี่<C-R><C-F>จะแทรกชื่อไฟล์ภายใต้เคอร์เซอร์ดังนั้นคุณไม่จำเป็นต้องพิมพ์ชื่อไฟล์


1
เด็ดมาก ไม่รวมเส้นทางแบบเต็มหากคุณเข้าไปในต้นไม้ของคุณใน netrw ...
J0hnG4lt

3
  • ตั้งค่าเคอร์เซอร์บน ./(หรือไดเรกทอรีที่คุณต้องการคัดลอก) กดmt
  • ตั้งค่าเคอร์เซอร์บนไฟล์ที่คุณต้องการคัดลอกกดmfจากนั้นmcพิมพ์ชื่อของไฟล์ใหม่enter

ฉันได้(netrw) tried using g:netrw_localcopycmd<cp>; it doesn't work!$
Harry Moreno

วิธีแก้ปัญหาสำหรับ osx stackoverflow.com/questions/31811335/…
Harry Moreno

@HarryMoreno มันทำงานบน osx ของฉัน iTerm2
itsnikolay
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.