Có kiểm tra chính tả tồn tại mà biết về Markdown?


14

Tôi muốn chạy một trình kiểm tra chính tả trên các bài viết của mình trước khi tôi xuất bản chúng. Tôi nghĩ aspelllà ổn, nhưng nó không nên thử kiểm tra các khối mã:

asdfasdfa adsfa sdfa text to check adsfasd f

```
a wild code block appeared!
thisHas quiteOften() some strings.that should NOT get changed
```

and also `inlined code` should not get checked

Các trình kiểm tra chính tả dựa trên dòng lệnh có tồn tại cho Linux biết về Markdown và do đó bỏ qua các khối mã không? Tôi cần có khả năng chạy nó trong chế độ hàng loạt cho nhiều tệp.

(Điểm thưởng nếu bạn biết một người thực sự hiểu LaTeX - không, aspell -tkhông hoàn toàn hoạt động)


Biên tập viên nào? Tôi sử dụng flyspell-modevới ispelltrong emacs và tôi đã thiết lập nó để bỏ qua các lệnh LaTeX. Hoạt động tốt.
terdon

Tôi sử dụng vimđể làm hàng dệt để đăng lên blog của mình và tôi tin rằng đó là nhận thức về việc đánh dấu, vì vậy chúng tồn tại.
slm

Câu trả lời:


7

Tôi sẽ cho điểm thưởng. Tôi sử dụng emacsvà đã flyspell-modebật theo mặc định cho các tài liệu LaTeX. Nó hoạt động tốt và bỏ qua các lệnh LaTeX.

Các dòng có liên quan trong .emacstập tin của tôi là:

;; load flyspell-mode for LaTeX files
(add-hook 'LaTeX-mode-hook 'flyspell-mode) 

;; make flyspell mode ignore latex commands
(setq ispell-extra-args '("--dont-tex-check-comments"))

Không thực sự sử dụng markdown nhiều nhưng tôi đoán bạn cũng có thể làm tương tự cho nó.


emacs dường như không bỏ qua HTML theo mặc định. Các lỗi kiểm tra chính tả đầu tiên tôi nhận được là từ <li>-tags.
Martin Thoma

1
Tôi đã yêu cầu trình kiểm tra chính tả dựa trên shell, vì tôi muốn kiểm tra khoảng 400 tệp đánh dấu. Nếu trình kiểm tra chính tả không tìm thấy lỗi, nó chỉ cần thoát (không mở cửa sổ). Tôi nghĩ rằng emacs không dựa trên Shell, phải không?
Martin Thoma

@moose Tôi không hiểu rằng bạn muốn một tiện ích dòng lệnh chạy trên nhiều tệp. Emacs có thể có thể làm điều này (nó làm mọi thứ khác sau tất cả) nhưng tôi không biết làm thế nào. Các flyspellchế độ chỉ đơn giản là nhấn mạnh lỗi khi bạn gõ.
terdon

Cảm ơn bạn đã trả lời; Tôi nghĩ rằng nó có thể là một lựa chọn rất tốt cho các tài liệu mới (+1), nhưng đối với các tài liệu cũ thì không có ích. Tôi xin lỗi vì đã không rõ ràng về phần lệnh / lô của câu hỏi.
Martin Thoma

3

Có lẽ markdown-chính tả là công cụ phù hợp với bạn. Bạn cần cài đặt nodejs/npm.

Chạy thử trong chế độ tương tác:

$ cat test.md 
asdfasdfa adsfa sdfa text to check adsfasd f

```
a wildwild code block appppeared!
thisHas quiteOften() some strings.that should NOT get changed
```

and also `inLIned code` should not get checked
$ mdspell test.md 
Spelling - test.md
asdfasdfa adsfa sdfa text to check adsf
?   Ignore
asdfasdfa adsfa sdfa text to check adsfasd f
?   Ignore
asdfasdfa adsfa sdfa text to check adsfasd f
?   Ignore
sdfa adsfa sdfa text to check adsfasd f
?   Ignore
>> 1 file is free from spelling errors
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.