2009-01-10 19 views
10

Khi tôi cắt và dán từ tài liệu Word vào VIM, dấu ngoặc kép được dịch thành dấu chấm tròn theo sau là < 99>, trong đó một biểu diễn byte đơn. (Mà tôi biết bởi vì khi tôi di chuyển đến nó, gõ một chữ 'l' di chuyển tôi đến đúng hơn cả bốn ký tự).VIM Làm cách nào để tìm kiếm <XX> biểu diễn byte đơn

Tôi muốn thực hiện tìm kiếm và thay thế, và tôi biết đủ để tìm thấy hình chiếu a-cirumflex bằng điều khiển-a, nhưng tôi không thể tìm ra cách tìm kiếm < 99> và tìm kiếm literal/< 99> không hoạt động.

Vì vậy, tôi thực sự có hai câu hỏi:

giúp đỡ gì chủ đề tôi nên tham khảo ý kiến ​​trong vim để tìm hiểu về những gì sắp xếp của một con thú các < 99> là (vì nó dường như không phải là một digraph) (hoặc có lẽ nó là một digraph và tôi đang thiếu một cái gì đó)?

Làm cách nào để tìm kiếm một ký tự đại diện bởi < 99>?

Trả lời

21

Hãy thử điều này:

Đặt con trỏ lên nhân vật, loại ga và bạn sẽ thấy những đại diện thập lục phân của nhân vật, sau đó bạn có thể thay thế nó bằng:

:% s/\% xNN // g

Nơi NN là mã hex của ký tự.

+0

tuyệt vời! Tôi đã tự hỏi một thời gian làm thế nào để làm điều này .... Bình luận duy nhất tôi có thể làm là câu trả lời này chỉ đơn giản là xóa ký tự hex. Đối với những người không quen thuộc với vi, bạn có thể thay thế nó bằng bất cứ điều gì bạn thích bằng cách làm một cái gì đó như thế này:% s/\% xNN/REPLACEMENT/g –

+0

nó không làm việc cho tôi, những gì có thể là vấn đề? – kissgyorgy

+1

vì một số lý do tôi phải tìm kiếm với \% ​​U cho ký tự 0200b. Nếu mẫu của bạn không khớp, hãy thử: :% s/\ UNN // g – kissgyorgy

0

Is'n nó liên quan vim shows question mark instead of character?

Nó có thể là ký tự unicode 0x0099, không có đại diện đồ họa.

Cách chèn unicode - "u0099 trong chế độ INSERT chèn một ký tự có mã unicode giá trị 0x0099". (Từ here)

0

@CMS tìm kiếm chi tiết trực tiếp cho giá trị ký tự. Nếu ký tự là một từ của chính nó (hoặc bạn có thể thêm dấu cách một cách nhanh chóng để làm cho nó như vậy), bạn cũng có thể di chuột qua ký tự và gõ ***** - sẽ tìm kiếm từ gần nhất tới con trỏ () # để quay lại).

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