2011-11-02 34 views
8

Một điều khiến tôi quan tâm. Nếu một người được muốn ánh xạ một bản đồ cụ thể đối với một số bộ đệm, người ta có thể đi một trong hai cách
a) làm điều đó vớiÁnh xạ cục bộ đệm trong Vim: <buffer> so với <localleader>

nnoremap <buffer> d dd 

b) hoặc với

nnoremap <localleader>d dd 

mà sẽ có hiệu quả, bởi vì localleader là cụ thể cho bộ đệm đó, làm cho ánh xạ đó cụ thể cho bộ đệm đó.

Điều đó theo một cách nào đó, có vẻ như hai cách chồng lấp nhau để thực hiện một điều tương tự. Có lý do nào để sử dụng một cách thay vì cách khác không? Là một cách preffered trên khác vì một lý do có thể?

Trả lời

10

Theo như tôi có thể nói maplocalleader được chia sẻ giữa các bộ đệm. Điều này có nghĩa là bản đồ thứ hai của bạn sẽ không cụ thể cho bộ đệm.

Thực sự, nếu bạn đang xác định bản đồ cụ thể cho bộ đệm (ví dụ: bản đồ chỉ liên quan đến một loại tệp cụ thể), tôi cho rằng quy ước là sử dụng cả <buffer><localleader>. Nếu bạn định nghĩa một bản đồ không cụ thể cho bộ đệm, bạn chỉ nên sử dụng <leader>.

+1

Ah, tôi hiểu rồi. Vì vậy, không phải là bộ đệm cụ thể, nhưng ý định của nó là được sử dụng cho ánh xạ mà bộ đệm LÀ cụ thể. Bây giờ tôi đã đọc lại sự giúp đỡ, và họ không thể khiến nó trở nên khó hiểu hơn. Hay tôi lại sai rồi sao? – Rook

+1

Có, bạn hiểu nó như tôi. Bản đồ 'maplocalleader' hầu như không được ghi lại ở tất cả, nhưng sau một chút thử nghiệm, điều này có vẻ là hành vi đúng. –

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