Bằng cách "di chuyển một đoạn văn bản sang một tệp mới" Tôi giả sử bạn có nghĩa là cắt đoạn văn bản đó khỏi tệp hiện tại và tạo một tệp mới chỉ chứa văn bản đó.
Ví dụ khác nhau:
:1,1 w new_file
để tạo một tệp mới chỉ chứa văn bản từ dòng số 1
:5,50 w newfile
để tạo một tệp mới chứa văn bản từ dòng 5 đến dòng 50
:'a,'b w newfile
để tạo một tệp mới chứa văn bản từ đánh dấu a
đến đánh dấub
- đặt điểm của bạn bằng cách sử dụng mavà bất cứ mbnơi nào bạn thích
Ở trên chỉ sao chép văn bản và tạo một tệp mới chứa văn bản đó. Sau đó, bạn sẽ cần phải xóa sau đó.
Điều này có thể được thực hiện bằng cách sử dụng cùng một phạm vi và d
lệnh:
:5,50 d
để xóa văn bản từ dòng 5 đến dòng 50
:'a,'b d
để xóa văn bản từ đánh dấu a
để đánh dấub
Hoặc bằng cách sử dụng ddcho trường hợp dòng đơn.
Thay vào đó, nếu bạn chọn văn bản bằng chế độ trực quan, rồi nhấn :
trong khi văn bản được chọn, bạn sẽ thấy phần sau trên dòng lệnh:
:'<,'>
Trong đó chỉ ra văn bản đã chọn. Sau đó, bạn có thể mở rộng lệnh thành:
:'<,'>w >> old_file
Mà sẽ nối văn bản vào một tập tin hiện có. Sau đó xóa như trên.
Lót:
:2,3 d | new +put! "
Sự phá vỡ:
:2,3 d
- xóa các dòng 2 đến 3
|
- về mặt kỹ thuật, điều này chuyển hướng đầu ra của lệnh đầu tiên sang lệnh thứ hai nhưng vì lệnh đầu tiên không xuất ra bất cứ thứ gì, chúng tôi chỉ kết nối các lệnh với nhau
new
- mở một bộ đệm mới
+put! "
- đặt nội dung của thanh ghi không tên ( "
) vào bộ đệm
- Bang (
!
) ở đó để nội dung được đặt trước dòng hiện tại. Điều này gây ra và dòng trống ở cuối tập tin. Không có nó, có một dòng trống ở đầu tập tin.