$ grep "'" /usr/share/dict/words | wc -l
26226
$ grep -i python /usr/share/dict/words
Python
Python's
python
python's
pythons
Vấn đề là tất cả những từ có dấu nháy đơn này thực sự có trong tệp từ điển của bạn. Vì vậy, nếu bạn ổn với việc sửa đổi từ điển chính tả vim của bạn, thì hãy làm như vậy:
$ grep "'" /usr/share/dict/words | sed "s/'/’/g" >> ~/.vim/spell/en.utf-8.add
Điều này sẽ
grepđể tìm tất cả các từ trong từ điển hệ thống của bạn có dấu nháy đơn ( ');
sedđể thay đổi các trích dẫn thẳng thành trích dẫn thông minh (đó là s/'/’/g, trong đó trích dẫn đầu tiên là thẳng và thứ hai là thông minh); và
- nối nó vào từ điển ngôn ngữ của bạn (thay thế bằng bất cứ ngôn ngữ nào của bạn).
Bạn sẽ cần biên dịch lại .spltệp này thành một tệp mà bạn có thể thực hiện từ Vim:
:mkspell! ~/.vim/spell/en.utf-8.add
Nếu bạn muốn sử dụng các tệp chính tả thực tế mà Vim sử dụng làm nơi bắt đầu (thay vì từ điển hệ thống của bạn), bạn có thể sử dụng :spelldumplệnh. Đầu ra sẽ bao gồm tất cả các từ mà Vim sử dụng cho hiện tại spelllang, bao gồm cả những từ đã được thêm từ .addtệp. Lưu kết quả của :spelldumpmột tệp và xóa hai dòng đầu tiên (thông tin tiêu đề), sau đó sử dụng các lệnh tương tự như trên. Bạn cũng có thể muốn chuyển nó qua uniq, để loại bỏ các mục trùng lặp. (Không cần sort; đầu ra của :spelldumpđã được sắp xếp.)
'snhư một mô hình? Không phải chỉ là tìm kiếm'chính xác, asl tốt? Điều này sẽ bỏ lỡ những từ mà có'ở một vị trí khác nhau (ví dụ nhưyou'd,you've, vv)