Hello, Dominik Schrempf <dominik.schre...@gmail.com> writes:
> I am using a global keybinding for =M-q=, so that I can fill and unfill > paragraphs with one key stroke (unfill.el): > > : (global-set-key (kbd "s-q") 'unfill-toggle) > > For a long time, I thought that =fill-paragraph= was broken in Org mode, > because > it doesn't work well on code blocks, on lists, and on many other things [1]. > Just now, I realized that Org mode uses a specialized version of > `fill-paragraph`, called `org-fill-paragraph`. > > Hence, the aforementioned global key binding breaks behavior in Org mode, > although the function =unfill-toggle= is just a wrapper around > =fill-paragraph=. You could detect if you're in an Org document beforehand. `org-fill-paragraph' obeys to `fill-column'. > Is it necessary to have the specialized function =org-fill-paragraph=? Is it > possible to use the canonical =fill-paragraph=? There is `fill-paragraph-function', but it only kicks when no region is selected. Using it would break region filling. There is also `fill-forward-paragraph-function', but I think it is too limited. In a nutshell, I didn't find any way to fill correctly Org documents using `fill-paragraph' mechanism. So I wrote the current implementation of `org-fill-paragraph', which is a wrapper around `org-fill-element'. Regards, -- Nicolas Goaziou