組織モードでのインテリジェントなスペルチェック


38

デフォルトではM-x ispell-buffer、組織モードで実行した結果は非常に残念です。

  1. Ispellは:PROPERTY:引き出しの内部を見ます

    :ID:       797495bd-581b-4a42-883b-c2a55a08f08a
    
  2. 組織ステートメントを修正しようとします!たとえばSRC

    #+BEGIN_SRC emacs-lisp
    
  3. それは組織ブロックの中に入ります。これはのようなブロックに役立つかもしれません#+BEGIN_QUOTEが、ソースコードのブロックではばかげています。

これをすべて修正するパッケージはありますか?

私は自分の文章のスペルチェックをしたいのですが、私が得ている誤検知の量はそれを実行不可能にします。

問題があれば、OSのスペルチェッカーはaspellです。


org-modeにはflyspell述語があります(チェック(get 'org-mode 'flyspell-mode-predicate))が、それをにどのように一般化できるかわかりませんispell-buffer
レゴシア14

@legoscia Ispellにはと呼ばれる変数があるispell-parserため、flyspellの述語は、ラッパーを使用して適切に機能する場合があります。
マラバルバ14

1
私はflyspellとhunspellを使用していますが、その動作は見当たりません。#+ソースコードブロックがある行またはソースコードブロックにある行は、スペルチェックされません。ただし、見出しの下の通常のテキストはチェックされます。私はフライスペル設定にこれらを持っています:(add-hook 'prog-mode-hook 'flyspell-prog-mode)(add-hook 'org-mode-hook 'turn-on-flyspell)
Kaushal Modi 14

@kaushalmodiええ、flyspellはispellよりも賢いです。残念ながら、フライスペル(flyspell)処理能力の私のラップトップのための厳しい少ない:(それは使用不可能ではないが、それは私がispellをしようとしていた理由である、少し迷惑なんだ。。
Malabarba

3
orgmode.org/worg/org-faq.htmlでCan I prevent ispell from checking source blocks?ましたか?
rvf0068 14年

回答:


26

以下のようrvf0068が提案し、ispellをマッチ正規表現という領域をスキップするように設定することができます。たとえば、ブロックだけでなく引き出しもスキップするには:PROPERTIES:、これをファイルに入れることができます。:LOGBOOK:SRC.emacs

(add-to-list 'ispell-skip-region-alist '(":\\(PROPERTIES\\|LOGBOOK\\):" . ":END:"))
(add-to-list 'ispell-skip-region-alist '("#\\+BEGIN_SRC" . "#\\+END_SRC"))

(私はStackExchangeが初めてなので、rvf0068の回答を展開してエチケットやルールを破った場合はお知らせください。)


4
さらに詳しく説明してくれてありがとう。:)
rvf0068 14年

ispellに無視させたいものは次のとおり
home

これは便利ですが、私にとっては大きすぎるハンマーです。LOGBOOKには、スプールチャックしたいというメモがよくあります。
ヴァンデン14年


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.