2009-04-30 27 views
20

Vì vậy, tôi đã tìm ra cách thêm số dòng vào vim (: set no hoặc: set number) nhưng làm thế nào tôi có thể tạo nó để khi tôi sử dụng chuột trong trình mô phỏng thiết bị đầu cuối để chọn một khối dòng, nó cũng không chọn số?Làm cách nào để thêm số dòng không thể chọn chuột vào vim?

Ví dụ, nói tôi có ba dây chuyền trông giống như vậy trong vim:

1 First line 
2 Second 
3 Third 

Nếu tôi muốn chọn ba dòng với chuột là những gì tôi muốn là cho nó để ONLY chọn văn bản thực tế. Nhưng những gì kết thúc xảy ra là nó chọn số dòng cũng như tất cả các không gian bên trái và bên phải của các số dòng.

Có cách nào để thay đổi hành vi này không? BTW, tôi đang sử dụng trình soạn thảo thiết bị đầu cuối gnome trong gnome nếu điều đó tạo ra sự khác biệt.

Trả lời

16

AFAIK, đó là không thể.

Điều duy nhất tôi có thể thêm vào lúc này là bạn muốn được tốt hơn off với

:set invnumber 

Nó sẽ đảo ngược vùng điều kiện hiện nay, vì vậy bạn có thể ánh xạ nó vào một chìa khóa, và chuyển đổi nó. Bằng cách đó bạn không cần phải nhớ hai lệnh.

+0

Tốt hơn tôi! Bạn học một cái gì đó mỗi ngày với VIM :-) –

+3

các ý kiến ​​bên dưới về 'set mouse' dường như là giải pháp tốt hơn và thực sự đạt được câu trả lời. –

+0

hoặc ': đặt invnu' nếu bạn không thích gõ :) –

4

Tôi chắc rằng điều này không thể thực hiện trong terminal-vim. Không có tiêu chuẩn được chấp nhận (ví dụ: thoát TTY) để chỉ các khối ký tự không nổi bật bằng chuột, theo như tôi biết.

Tôi sẽ sử dụng gvim nếu bạn muốn có thể thực hiện việc này bằng mọi giá. Hành vi của nó là như bạn mô tả.

8

Tôi đồng ý với câu trả lời đầu tiên. Nếu bạn sử dụng gvim, bạn có thể thử nghiệm bằng cách sử dụng set mouse=nset mouse=a, điều này sẽ thay đổi hành vi chọn số dòng.

+1

thấy 'giúp đỡ mouse' ' thiết lập chuột = a' dường như để cho tôi hành vi của tôi mong đợi. Tôi không có chuyên gia vim, nhưng có vẻ như 'set mouse = c' là những gì tôi đã nhận được ra khỏi hộp. Tôi bị mắc kẹt 'đặt chuột = a' vào' ~/.vimrc' và cho đến nay, rất tốt. –

+0

Tuyệt vời! Hoạt động tốt hơn mong đợi. – pid

1

Đề xuất của tôi là làm quen với hộp nhỏ ở góc bên phải của màn hình có thông tin về số lượng và vị trí ký tự của dòng hiện tại. Trước khi tôi sử dụng vim tôi không bao giờ có thể tưởng tượng sống mà không có số dòng, nhưng kể từ đó tôi đã vượt ra ngoài này. Không có số dòng lộn xộn lên màn hình cho phép xem mã miễn phí, và bạn có thực sự cần phải biết rằng số dòng trên dòng hiện tại của bạn là ít hơn số dòng hiện tại của bạn không, và dòng dưới đây là số một?

+0

Tôi không hiểu phiếu giảm giá, nhưng ok bất cứ điều gì. –

5

Khi tôi muốn chọn văn bản trong thiết bị đầu cuối, tôi sẽ xóa số dòng.

:set nonu 

Khi tôi hoàn thành

:set nu 
3

Có thể bạn không ở trên máy Macintosh và tôi không thể biết bạn có muốn sử dụng bản sao hệ thống thay vì vim hay không.

Nhưng nếu bạn là cả hai thứ đó, bạn có thể sử dụng tùy chọn kéo để chọn văn bản. Điều này tạo ra một hộp 2d trên văn bản, chọn những thứ dưới nó. Nó phải có chức năng giống như 'lấy cột x1 đến x2 của hàng y1 đến y2'.

+0

Có! Điều này chính xác giải quyết tất cả các vấn đề của tôi! Đối với người dùng Windows, sử dụng alt và kéo để chọn văn bản – rasen58

31

Sử dụng như sau:

:set mouse=a 

bật phong cách xterm mousing trong tất cả các chế độ. Điều này sẽ cho phép bạn làm những gì bạn muốn.Hãy ghi nhớ nếu vim là từ xa thông qua ssh, bạn sẽ cần chuyển tiếp X11 bật cho việc lựa chọn để làm cho nó vào clipboard địa phương của bạn.

1

Một bản sao không cần chuột:

Nhập Visual chế độ: Định vị con trỏ, nhấn v (Đối với dòng hoàn toàn V) di chuyển lên hoặc xuống cho đến vị trí mong muốn

Nhấn control + c để sao chép vào khay nhớ tạm (nếu + clipboard tồn tại trong : đã đầu ra lệnh) pr ess ESC và dán nó bất cứ nơi nào bạn muốn với điều khiển + v.

Hoặc nhấn y để yank vào đăng ký và nhấn p để đưa văn bản sau khi con trỏ

Các vấn đề liên quan