Mô phỏng ảo di động và nostartofline của Vim


7

Trong tôi .vimrctôi có set virtualedit=allset nostartofline. Tôi muốn có các tính năng này trong Emacs. Nó có thể được thực hiện?

virtualeditcho phép con trỏ được định vị ở nơi không có ký tự, thậm chí không có khoảng trắng. Nó cho phép bạn cuộn theo chiều ngang vượt ra ngoài bất kỳ văn bản nào. Nếu bạn cuộn theo chiều dọc một hàng tại một thời điểm thì con trỏ luôn đi lên một hàng và không thay đổi cột trong đó, bất kể nội dung của hàng đó là gì. Nếu con trỏ nằm ngoài các ký tự liên tiếp và bạn chèn một ký tự, khoảng trắng được điền vào bên trái của ký tự được chèn.

Với nostartoflinecũng được đặt, con trỏ sẽ không đi đến đầu dòng nếu tôi sử dụng các chuyển động nhảy theo nhiều hàng, ví dụ, nhảy đến đầu hoặc cuối tệp.

Với cả hai tùy chọn được đặt, tôi có thể đặt con trỏ, có thể vượt ra ngoài bất kỳ văn bản nào trong tệp và nhảy theo chiều dọc mà không cần thay đổi cột của con trỏ. Lệnh di chuyển con trỏ đến "cuối dòng" sẽ nhảy đến ký tự cuối cùng. Vì vậy, nếu con trỏ tắt ở giữa hư không, $sẽ thực sự di chuyển con trỏ sang trái thay vì phải.

một câu hỏi khác đề cập đến Vim virtualeditnhưng nó liên quan đến việc lựa chọn hình chữ nhật. Câu hỏi này liên quan đến chuyển động của con trỏ và hành vi chèn khoảng trắng để bắt kịp các ký tự được chèn.


FYI, đây là bản sao của stackoverflow.com/questions/7019131/ (câu trả lời của Stefan cho điều đó có vẻ như là lựa chọn khả dĩ nhất, nhưng tôi không biết liệu có ai thực sự thực hiện ý tưởng đó không).
phils

Bạn có dùng evilkhông
PythonNut

@PythonNut Khi tôi đặt câu hỏi, không.
Praxeolitic

Câu trả lời:


2

Bạn có thể sử dụng quarter-plane-modetừ quarter-planegói trong GNU ELPA. Nó nhằm mục đích cung cấp loại chức năng này.

Nhưng lưu ý rằng về cơ bản, nó thực hiện bằng cách sử dụng lại mã của chế độ hình ảnh, do đó nó gặp phải cùng một vấn đề: nó sẽ thêm khoảng trắng / dòng vào bộ đệm của bạn khi bạn di chuyển xung quanh (và sau đó xóa chúng khi bạn rời khỏi chế độ), vì vậy nó sẽ / có thể thay đổi tệp & bộ đệm của bạn ngay cả khi tất cả những gì bạn làm là di chuyển xung quanh chúng mà không thực hiện bất kỳ sửa đổi thực sự nào.


-1

Hãy thử sử dụng chế độ hình ảnh. Giải pháp ở đây thực hiện những gì bạn muốn tôi nghĩ: /programming/13036465/emacs-mode-for-free-coder-poseitioning


6
Chào mừng bạn đến với Stack Exchange. Đây là một trang web câu hỏi và câu trả lời , không phải là một bộ sưu tập liên kết. Xin vui lòng không đăng một câu trả lời mà chỉ nói để tìm nơi khác. Bao gồm các phần thiết yếu của giải pháp trong bài viết của bạn và cung cấp liên kết để tham khảo. Xem Làm thế nào để tôi viết một câu trả lời tốt? để biết thêm thông tin.
Gilles 'SO- ngừng trở nên xấu xa'
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.