emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Bug: org-adapt-indentation is not compatible with paragraph-indent-minor-mode [9.4.5 (9.4.5-16-g94be20-elpaplus @ /home/lockywolf/.emacs.d/elpa/org-plus-contrib-20210412/)]
@ 2021-09-07  4:02 Vladimir Nikishkin
  2021-09-10 16:55 ` Max Nikulin
  2021-09-26  6:02 ` Vladimir Nikishkin
  0 siblings, 2 replies; 4+ messages in thread
From: Vladimir Nikishkin @ 2021-09-07  4:02 UTC (permalink / raw)
  To: emacs-orgmode

Hello, everyone.

Basically, my bug report is roughly about the subject.
`paragraph-indent-minor-mode` is shipped with Emacs by default (just like
org), and its behaviour is very standard for a lot of languages. A one
or two spaces indentation starts a new paragraph in quite a few human
languages.

However, turning on `paragraph-indent-minor-mode` seemingly disables
org's automatic indentation to the first letter of a heading, regardless
of `org-adapt-indentation` being set.

I think that with paragraph-indent-minor-mode, paragraphs should start
by adding "two more spaces" to the indentation, like this:

#+begin_example
* Heading one
  First paragraph is a paragraph even if not indented.
    Second paragraph is a paragraph because indented.
  This line belongs to the second paragraph.

  Third paragraph is a paragraph even if not indented because of a
  newline.

    But fourth paragraph can be indented too. And the very long line I
  have written should be wrapped like this.

** Heading two
     This is also a start of a paragraph.
     This line starts a new paragraph too.
   Normal level-two indentation.
#+end_example

It would be nice if the two modes shipped with emacs were compatible, at
least to a degree at which indentation works.

Emacs  : GNU Emacs 27.1 (build 1, x86_64-slackware-linux-gnu, GTK+ Version 3.24.24)
 of 2021-02-18
Package: Org mode version 9.4.5 (9.4.5-16-g94be20-elpaplus @ /home/lockywolf/.emacs.d/elpa/org-plus-contrib-20210412/)

current state:
==============
(setq
 org-icalendar-store-UID t
 org-src-mode-hook '(#2=
                     (closure #1=
                      ((--cl-my-org-confirm-babel-evaluate-- closure #1# (lang body)
                        "Define by lockywolf to silence org-babel.\nLANG is what is after begin_src, and BODY is ignored"
                        (not
                         (or (string= lang "plantuml") (string= lang "C") (string= lang "scheme") (string= lang "fortran")
                          (string= lang "f90") (string= lang "elisp") (string= lang "latex") (string= lang "shell"))
                         )
                        )
                       (--cl-syntax-improver-- . #2#) t)
                      nil
                      (progn (message "Improving syntax for org-mode.") (modify-syntax-entry 60 ".") (modify-syntax-entry 62 ".")
                       (setq geiser-autodoc--inhibit t))
                      )
                     org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer)
 org-agenda-scheduled-leaders '("Scheduled: " "Sched.%4dx: ")
 org-after-todo-state-change-hook '(org-checklist)
 org-latex-listings t
 org-link-shell-confirm-function 'yes-or-no-p
 org-babel-after-execute-hook '(org-redisplay-inline-images)
 org-metadown-hook '(org-babel-pop-to-session-maybe)
 org-export-with-sub-superscripts '{}
 org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
 org-html-format-inlinetask-function 'org-html-format-inlinetask-default-function
 org-icalendar-combined-agenda-file "~/Personal_Planner/Journal/org-journal-export.ics"
 org-pretty-entities t
 org-special-ctrl-k t
 org-odt-format-headline-function 'org-odt-format-headline-default-function
 org-special-ctrl-a/e t
 org-latex-pdf-process '("latexmk -e '$biber=qq(biber --isbn-normalise)' -lualatex -outdir=%o -f %f")
 org-agenda-files '("~/Personal_Planner/Planner.org" "~/Personal_Planner/notes.org"
                    "~/Personal_Planner/2020-04-28-hotkeys-to-remember.txt.org" "/home/lockywolf/Personal_Planner/Journal/20210701")
 org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default
 org-reveal-start-hook '(org-decrypt-entry)
 org-modules '(org-habit ol-w3m ol-bbdb ol-bibtex ol-docview ol-gnus ol-info ol-irc ol-mhe ol-rmail ol-eww)
 org-plantuml-jar-path "/usr/local/bin/plantuml.jar"
 org-startup-folded t
 org-mode-hook '((closure #1=
                  ((--cl-my-org-confirm-babel-evaluate-- closure #1# (lang body)
                    "Define by lockywolf to silence org-babel.\nLANG is what is after begin_src, and BODY is ignored"
                    (not
                     (or (string= lang "plantuml") (string= lang "C") (string= lang "scheme") (string= lang "fortran")
                      (string= lang "f90") (string= lang "elisp") (string= lang "latex") (string= lang "shell"))
                     )
                    )
                   (--cl-syntax-improver-- . #2=
                    (closure #1# nil
                     (progn (message "Improving syntax for org-mode.") (modify-syntax-entry 60 ".") (modify-syntax-entry 62 ".")
                      (setq geiser-autodoc--inhibit t))
                     )
                    )
                   t)
                  nil (setq reftex-cite-format '((111 . "cite:%l") (104 . "\\cite{%l}"))))
                 turn-on-org-cdlatex #2# org-clock-load org-tempo-setup org-fancy-priorities-mode
                 #[0 "\300\301\302\303\304$\207" [add-hook change-major-mode-hook org-show-all append local] 5]
                 #[0 "\300\301\302\303\304$\207" [add-hook change-major-mode-hook org-babel-show-result-all append local] 5]
                 org-babel-result-hide-spec org-babel-hide-all-hashes
                 #[0 "\301\211.\207" [imenu-create-index-function org-imenu-get-tree] 2] org-eldoc-load)
 org-clock-persist 'history
 org-fancy-priorities-list '((65 . "❗") (66 . "⬆") (67 . "⬇") (68 . "☕") (49 . "⚡") (50 . "⮬") (51 . "⮮") (52 . "☕")
                             (73 . "Important"))
 org-yank-adjusted-subtrees t
 org-export-with-smart-quotes t
 org-odt-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"]
 org-archive-hook '(org-attach-archive-delete-maybe)
 org-confirm-elisp-link-function 'yes-or-no-p
 org-agenda-finalize-hook '(org-fancy-priorities-create-overlays)
 org-journal-mode-hook '(#[0 "\301\b\302\303\304$\207" [org-journal-encrypt-on add-hook org-journal-encryption-hook nil t] 5]
                         (lambda nil (add-hook org-journal-encrypt-on 'org-journal-encryption-hook nil t)))
 org-agenda-before-write-hook '(org-agenda-add-entry-text)
 org-preview-latex-default-process 'imagemagick
 org-metaup-hook '(org-babel-load-in-session-maybe)
 org-bibtex-headline-format-function #[257 "\300.\236A\207" [:title] 3 "\n\n(fn ENTRY)"]
 org-latex-format-drawer-function #[514 "\207" [] 3 "\n\n(fn _ CONTENTS)"]
 org-babel-pre-tangle-hook '(save-buffer)
 org-latex-compiler "lualatex"
 org-tab-first-hook '(org-babel-hide-result-toggle-maybe org-babel-header-arg-expand)
 org-babel-load-languages '((plantuml . t) (C . t) (scheme . t) (latex . t) (shell . t) (fortran . t))
 org-log-done 'time
 org-journal-date-format "%F %A, %d %B %Y"
 org-load-hook '(org-pdftools-setup-link)
 org-sidebar-window-after-display-hook '((lambda nil "Set window-parameter `mode-line-format' to nil."
                                          (set-window-parameter nil 'mode-line-format 'none))
                                         )
 org-checklist-export-function 'org-export-as-ascii
 org-startup-align-all-tables t
 org-ascii-format-drawer-function #[771 ".\207" [] 4 "\n\n(fn NAME CONTENTS WIDTH)"]
 org-ellipsis "↴"
 org-agenda-loop-over-headlines-in-active-region nil
 org-src-lang-modes '(("redis" . redis) ("php" . php) ("arduino" . arduino) ("C" . c) ("C++" . c++) ("asymptote" . asy)
                      ("bash" . sh) ("beamer" . latex) ("calc" . fundamental) ("cpp" . c++) ("ditaa" . artist) ("dot" . fundamental)
                      ("elisp" . emacs-lisp) ("ocaml" . tuareg) ("screen" . shell-script) ("shell" . sh) ("sqlite" . sql))
 org-icalendar-include-todo "all"
 org-mru-clock-completing-read 'ido-completing-read
 org-catch-invisible-edits 'show
 org-occur-hook '(org-first-headline-recenter)
 org-log-into-drawer t
 org-edit-src-auto-save-idle-delay 15
 org-journal-prefix-key "C-c j "
 org-agenda-include-diary t
 org-journal-enable-agenda-integration t
 org-structure-template-alist '(("bash" . "src shell :exports both :results output :eval no")
                                ("F" . "src f90 :exports both :results output") ("EL" . "src elisp :exports both :results output")
                                ("SE" . "src scheme :exports code :wrap example") ("SV" . "src scheme :exports both :results value")
                                ("SO" . "src scheme :exports both :results output")
                                ("p" . "src plantuml :noweb no :exports both :file ") ("a" . "export ascii") ("c" . "center")
                                ("C" . "comment") ("e" . "example") ("E" . "export") ("h" . "export html") ("l" . "export latex")
                                ("q" . "quote") ("s" . "src") ("v" . "verse"))
 org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers org-cycle-show-empty-lines
                  org-optimize-window-after-visibility-change)
 org-edit-src-turn-on-auto-save t
 org-todo-keywords '((sequence "TODO" "|" "DONE") (sequence "|" "CANCELLED"))
 org-speed-command-hook '(org-speed-command-activate org-babel-speed-command-activate)
 org-hierarchical-todo-statistics nil
 org-preview-latex-process-alist '((dvipng :programs ("latex" "dvipng") :description "dvi > png" :message
                                    "you need to install the programs: latex and dvipng." :image-input-type "dvi" :image-output-type
                                    "png" :image-size-adjust (1.0 . 1.0) :latex-compiler
                                    ("latex -interaction nonstopmode -output-directory %o %f") :image-converter
                                    ("dvipng -D %D -T tight -o %O %f"))
                                   (dvisvgm :programs ("latex" "dvisvgm") :description "dvi > svg" :message
                                    "you need to install the programs: latex and dvisvgm." :image-input-type "dvi"
                                    :image-output-type "svg" :image-size-adjust (1.7 . 1.5) :latex-compiler
                                    ("latex -interaction nonstopmode -output-directory %o %f") :image-converter
                                    ("dvisvgm %f -n -b min -c %S -o %O"))
                                   (imagemagick :programs ("latex" "convert") :description "pdf > png" :message
                                    "you need to install the programs: latex and imagemagick." :image-input-type "pdf"
                                    :image-output-type "png" :image-size-adjust (1.0 . 1.0) :latex-compiler
                                    ("lualatex -interaction nonstopmode -output-directory %o %f") :image-converter
                                    ("convert -density %D -trim -antialias %f -quality 100 %O"))
                                   )
 org-odt-format-inlinetask-function 'org-odt-format-inlinetask-default-function
 org-mru-clock-format-function 'substring-no-properties
 org-clock-auto-clockout-timer 300
 org-journal-dir "~/Personal_Planner/Journal/"
 org-babel-tangle-lang-exts '(("fortran" . "F90") ("latex" . "tex") ("D" . "d") ("C++" . "cpp") ("emacs-lisp" . "el")
                              ("elisp" . "el"))
 org-format-latex-options '(:foreground default :background default :scale 3.0 :html-foreground "Black" :html-background
                            "Transparent" :html-scale 1.0 :matchers ("begin" "$1" "$" "$$" "\\(" "\\["))
 org-refile-use-outline-path 'full-file-path
 org-clock-in-hook '(org-clock-auto-clockout)
 org-export-before-parsing-hook '(org-attach-expand-links)
 org-latex-listings-langs '((f90 "Fortran") (patch "bash") (shell "bash") (plantuml "MetaPost") (elisp "elisp") (scheme "Lisp")
                            (emacs-lisp "Lisp") (lisp "Lisp") (clojure "Lisp") (c "C") (cc "C++") (fortran "fortran") (perl "Perl")
                            (cperl "Perl") (python "Python") (ruby "Ruby") (html "HTML") (xml "XML") (tex "TeX")
                            (latex "[LaTeX]TeX") (shell-script "bash") (gnuplot "Gnuplot") (ocaml "[Objective]Caml") (caml "Caml")
                            (sql "SQL") (sqlite "sql") (makefile "make") (R "r"))
 org-confirm-shell-link-function 'yes-or-no-p
 org-link-parameters '(("attachment" :follow org-attach-follow :complete org-attach-complete-link) ("id" :follow org-id-open)
                       ("message" :follow org-mac-message-open) ("x-devonthink-item" :follow org-devonthink-item-open)
                       ("mac-evernote" :follow org-mac-evernote-note-open) ("mac-outlook" :follow org-mac-outlook-message-open)
                       ("acrobat" :follow org-mac-acrobat-open) ("skim" :follow org-mac-skim-open)
                       ("addressbook" :follow org-mac-addressbook-item-open) ("x-together-item" :follow org-mac-together-item-open)
                       ("mairix" :follow org-mairix-open :store org-mairix-store-gnus-link)
                       ("eww" :follow org-eww-open :store org-eww-store-link)
                       ("rmail" :follow org-rmail-open :store org-rmail-store-link)
                       ("mhe" :follow org-mhe-open :store org-mhe-store-link)
                       ("irc" :follow org-irc-visit :store org-irc-store-link :export org-irc-export)
                       ("info" :follow org-info-open :export org-info-export :store org-info-store-link)
                       ("gnus" :follow org-gnus-open :store org-gnus-store-link)
                       ("docview" :follow org-docview-open :export org-docview-export :store org-docview-store-link)
                       ("bbdb" :follow org-bbdb-open :export org-bbdb-export :complete org-bbdb-complete-link :store
                        org-bbdb-store-link)
                       ("w3m" :store org-w3m-store-link)
                       ("org-ql-search" :follow org-ql-view--link-follow :store org-ql-view--link-store)
                       ("yt" :follow (closure #1=(t) (handle) (browse-url (concat "https://www.youtube.com/embed/" handle))) :export
                        (closure #1# (path desc backend)
                         (cond ((eql backend 'html) (format yt-iframe-format path (or desc "")))
                          ((eql backend 'latex) (format "href{%s}{%s}" path (or desc "video"))))
                         )
                        )
                       ("ebib" :follow org-ebib-open :store org-ebib-store-link)
                       ("bibtex" :follow org-bibtex-open :store org-bibtex-store-link) ("cite" :follow org-ebib-open :export nil)
                       ("mu4e" :follow mu4e-org-open :store mu4e-org-store-link)
                       ("elfeed" :follow elfeed-link-open :store elfeed-link-store-link) ("file+sys") ("file+emacs")
                       ("shell" :follow org-link--open-shell)
                       (#2="news" :follow #[514 #3="\301\300\302.Q.\"\207" [#2# browse-url #5=":"] 6 #6="\n\n(fn URL ARG)"])
                       (#4="mailto" :follow #[514 #3# [#4# browse-url #5#] 6 #6#])
                       (#7="https" :follow #[514 #3# [#7# browse-url #5#] 6 #6#])
                       (#8="http" :follow #[514 #3# [#8# browse-url #5#] 6 #6#])
                       (#9="ftp" :follow #[514 #3# [#9# browse-url #5#] 6 #6#]) ("help" :follow org-link--open-help)
                       ("file" :complete org-link-complete-file) ("elisp" :follow org-link--open-elisp)
                       ("doi" :follow org-link--open-doi))
 org-journal-file-type 'monthly
 org-latex-format-headline-function 'org-latex-format-headline-default-function
 org-agenda-start-with-follow-mode t
 org-capture-templates '(("t" "Todo" entry (file+headline "~/Personal_Planner/Planner.org" "Incoming stuff") "* TODO %?\n  %i\n  %a")
                         ("j" "Journal entry" plain #'#1=
                          (closure ((--cl-org-journal-find-location-- . #1#) t) nil
                           (progn (org-journal-new-entry t) (if (eq org-journal-file-type 'daily) nil (org-narrow-to-subtree))
                            (goto-char (point-max)))
                           )
                          "** %(format-time-string org-journal-time-format)%^{Title}\n%i%?" :jump-to-captured t :immediate-finish t)
                         )
 org-link-elisp-confirm-function 'yes-or-no-p
 org-journal-time-format "%T %Z(%:::z)"
 org-latex-format-inlinetask-function 'org-latex-format-inlinetask-default-function
 org-tab-before-tab-emulation-hook '(org-tempo-complete-tag)
 org-html-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"]
 org-latex-packages-alist '((#1="" "color") (#1# "listings"))
 org-image-actual-width nil
 org-extend-today-until 3
 org-use-tag-inheritance nil
 org-html-use-infojs nil
 org-latex-classes '(("beamer" "\\documentclass[presentation]{beamer}" ("\\section{%s}" . "\\section*{%s}")
                      ("\\subsection{%s}" . "\\subsection*{%s}") ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
                     ("acmart" "\\documentclass[sigplan,nonacm,natbib=false]{acmart}" ("\\section{%s}" . "\\section*{%s}")
                      ("\\subsection{%s}" . "\\subsection*{%s}") ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
                     ("article" "\\documentclass[11pt]{article}" ("\\section{%s}" . "\\section*{%s}")
                      ("\\subsection{%s}" . "\\subsection*{%s}") ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
                      ("\\paragraph{%s}" . "\\paragraph*{%s}") ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
                     ("report" "\\documentclass[11pt]{report}" ("\\part{%s}" . "\\part*{%s}") ("\\chapter{%s}" . "\\chapter*{%s}")
                      ("\\section{%s}" . "\\section*{%s}") ("\\subsection{%s}" . "\\subsection*{%s}")
                      ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
                     ("book" "\\documentclass[11pt]{book}" ("\\part{%s}" . "\\part*{%s}") ("\\chapter{%s}" . "\\chapter*{%s}")
                      ("\\section{%s}" . "\\section*{%s}") ("\\subsection{%s}" . "\\subsection*{%s}")
                      ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
                     )
 org-html-format-headline-function 'org-html-format-headline-default-function
 org-mairix-display-hook 'org-mairix-gnus-display-results
 org-confirm-babel-evaluate '#1=(closure #2=
                                 ((--cl-my-org-confirm-babel-evaluate-- . #1#)
                                  (--cl-syntax-improver-- closure #2# nil
                                   (progn (message "Improving syntax for org-mode.") (modify-syntax-entry 60 ".")
                                    (modify-syntax-entry 62 ".") (setq geiser-autodoc--inhibit t))
                                   )
                                  t)
                                 (lang body)
                                 "Define by lockywolf to silence org-babel.\nLANG is what is after begin_src, and BODY is ignored"
                                 (not
                                  (or (string= lang "plantuml") (string= lang "C") (string= lang "scheme") (string= lang "fortran")
                                   (string= lang "f90") (string= lang "elisp") (string= lang "latex") (string= lang "shell"))
                                  )
                                 )
 org-use-sub-superscripts '{}
 org-agenda-custom-commands '(("n" "Agenda and all TODO" ((agenda #1="" nil) (alltodo #1# nil)) nil
                               "/run/user/1000/agenda-snapshot.txt")
                              )
 org-link-from-user-regexp "\\<lockywolf@laptop\\.lockywolf\\.net\\>\\|\\<Vladimir Nikishkin\\>"
 org-latex-listings-options '(("numbers" "none") ("frame" "single") ("basicstyle" "\\footnotesize\\ttfamily ")
                              ("keywordstyle" "\\ttfamily") ("upquote" "true") ("extendedchars" "true"))
 org-use-speed-commands t
 org-ql-sidebar-buffer-setup-hook '(toggle-truncate-lines)
 org-mairix-gnus-select-display-group-function 'org-mairix-gnus-select-display-group-function-gg
 org-latex-bib-compiler "biber"
 org-default-notes-file "~/Personal_Planner/notes.org"
 )
-- 
Your sincerely,
Vladimir Nikishkin (MiEr, lockywolf)
(Laptop)


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Bug: org-adapt-indentation is not compatible with paragraph-indent-minor-mode [9.4.5 (9.4.5-16-g94be20-elpaplus @ /home/lockywolf/.emacs.d/elpa/org-plus-contrib-20210412/)]
  2021-09-07  4:02 Bug: org-adapt-indentation is not compatible with paragraph-indent-minor-mode [9.4.5 (9.4.5-16-g94be20-elpaplus @ /home/lockywolf/.emacs.d/elpa/org-plus-contrib-20210412/)] Vladimir Nikishkin
@ 2021-09-10 16:55 ` Max Nikulin
  2021-09-26  6:02 ` Vladimir Nikishkin
  1 sibling, 0 replies; 4+ messages in thread
From: Max Nikulin @ 2021-09-10 16:55 UTC (permalink / raw)
  To: emacs-orgmode

On 07/09/2021 11:02, Vladimir Nikishkin wrote:
> 
> Basically, my bug report is roughly about the subject.
> `paragraph-indent-minor-mode` is shipped with Emacs by default (just like
> org), and its behaviour is very standard for a lot of languages. A one
> or two spaces indentation starts a new paragraph in quite a few human
> languages.
> 
> However, turning on `paragraph-indent-minor-mode` seemingly disables
> org's automatic indentation to the first letter of a heading, regardless
> of `org-adapt-indentation` being set.

In Org syntax namely empty line serves as paragraph separator (and two 
empty lines to terminate list).

As a result of exporting of Org file it should be possible to get 
indentation instead of vertical space to represent paragraphs, however 
some tuning for each format (ascii, html, latex) will be required.

Would you expect from TeX that it should accept spaces in the beginning 
of line just as empty line for paragraph separator? Org is a markup 
format as well, so source files are not necessary should follow 
traditions of typesetting.



^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Bug: org-adapt-indentation is not compatible with paragraph-indent-minor-mode [9.4.5 (9.4.5-16-g94be20-elpaplus @ /home/lockywolf/.emacs.d/elpa/org-plus-contrib-20210412/)]
  2021-09-07  4:02 Bug: org-adapt-indentation is not compatible with paragraph-indent-minor-mode [9.4.5 (9.4.5-16-g94be20-elpaplus @ /home/lockywolf/.emacs.d/elpa/org-plus-contrib-20210412/)] Vladimir Nikishkin
  2021-09-10 16:55 ` Max Nikulin
@ 2021-09-26  6:02 ` Vladimir Nikishkin
  2022-05-29 13:20   ` Ihor Radchenko
  1 sibling, 1 reply; 4+ messages in thread
From: Vladimir Nikishkin @ 2021-09-26  6:02 UTC (permalink / raw)
  To: emacs-orgmode

>In Org syntax namely empty line serves as paragraph separator (and two empty lines to terminate list).
>As a result of exporting of Org file it should be possible to get indentation instead of vertical space to represent paragraphs, however some tuning for each format (ascii, html, latex) will be required.
>Would you expect from TeX that it should accept spaces in the beginning of line just as empty line for paragraph separator? Org is a markup format as well, so source files are not necessary should follow traditions of typesetting.

This report is not about exporting Org code. It is perfectly fine that
an empty line is required in org to demarcate a paragraph. The example
above is just what I would imagine as an "ideal case".
However, when `paragraph-indent-minor-mode` is turned on,
`org-adapt-indentation` stops working, even though nothing else has
changed. The text is exactly the same, and is valid org markup.

On Tue, 7 Sept 2021 at 12:14, Vladimir Nikishkin <lockywolf@gmail.com> wrote:
>
> Hello, everyone.
>
> Basically, my bug report is roughly about the subject.
> `paragraph-indent-minor-mode` is shipped with Emacs by default (just like
> org), and its behaviour is very standard for a lot of languages. A one
> or two spaces indentation starts a new paragraph in quite a few human
> languages.
>
> However, turning on `paragraph-indent-minor-mode` seemingly disables
> org's automatic indentation to the first letter of a heading, regardless
> of `org-adapt-indentation` being set.
>
> I think that with paragraph-indent-minor-mode, paragraphs should start
> by adding "two more spaces" to the indentation, like this:
>
> #+begin_example
> * Heading one
>   First paragraph is a paragraph even if not indented.
>     Second paragraph is a paragraph because indented.
>   This line belongs to the second paragraph.
>
>   Third paragraph is a paragraph even if not indented because of a
>   newline.
>
>     But fourth paragraph can be indented too. And the very long line I
>   have written should be wrapped like this.
>
> ** Heading two
>      This is also a start of a paragraph.
>      This line starts a new paragraph too.
>    Normal level-two indentation.
> #+end_example
>
> It would be nice if the two modes shipped with emacs were compatible, at
> least to a degree at which indentation works.
>
> Emacs  : GNU Emacs 27.1 (build 1, x86_64-slackware-linux-gnu, GTK+ Version 3.24.24)
>  of 2021-02-18
> Package: Org mode version 9.4.5 (9.4.5-16-g94be20-elpaplus @ /home/lockywolf/.emacs.d/elpa/org-plus-contrib-20210412/)
>
> current state:
> ==============
> (setq
>  org-icalendar-store-UID t
>  org-src-mode-hook '(#2=
>                      (closure #1=
>                       ((--cl-my-org-confirm-babel-evaluate-- closure #1# (lang body)
>                         "Define by lockywolf to silence org-babel.\nLANG is what is after begin_src, and BODY is ignored"
>                         (not
>                          (or (string= lang "plantuml") (string= lang "C") (string= lang "scheme") (string= lang "fortran")
>                           (string= lang "f90") (string= lang "elisp") (string= lang "latex") (string= lang "shell"))
>                          )
>                         )
>                        (--cl-syntax-improver-- . #2#) t)
>                       nil
>                       (progn (message "Improving syntax for org-mode.") (modify-syntax-entry 60 ".") (modify-syntax-entry 62 ".")
>                        (setq geiser-autodoc--inhibit t))
>                       )
>                      org-src-babel-configure-edit-buffer org-src-mode-configure-edit-buffer)
>  org-agenda-scheduled-leaders '("Scheduled: " "Sched.%4dx: ")
>  org-after-todo-state-change-hook '(org-checklist)
>  org-latex-listings t
>  org-link-shell-confirm-function 'yes-or-no-p
>  org-babel-after-execute-hook '(org-redisplay-inline-images)
>  org-metadown-hook '(org-babel-pop-to-session-maybe)
>  org-export-with-sub-superscripts '{}
>  org-clock-out-hook '(org-clock-remove-empty-clock-drawer)
>  org-html-format-inlinetask-function 'org-html-format-inlinetask-default-function
>  org-icalendar-combined-agenda-file "~/Personal_Planner/Journal/org-journal-export.ics"
>  org-pretty-entities t
>  org-special-ctrl-k t
>  org-odt-format-headline-function 'org-odt-format-headline-default-function
>  org-special-ctrl-a/e t
>  org-latex-pdf-process '("latexmk -e '$biber=qq(biber --isbn-normalise)' -lualatex -outdir=%o -f %f")
>  org-agenda-files '("~/Personal_Planner/Planner.org" "~/Personal_Planner/notes.org"
>                     "~/Personal_Planner/2020-04-28-hotkeys-to-remember.txt.org" "/home/lockywolf/Personal_Planner/Journal/20210701")
>  org-ascii-format-inlinetask-function 'org-ascii-format-inlinetask-default
>  org-reveal-start-hook '(org-decrypt-entry)
>  org-modules '(org-habit ol-w3m ol-bbdb ol-bibtex ol-docview ol-gnus ol-info ol-irc ol-mhe ol-rmail ol-eww)
>  org-plantuml-jar-path "/usr/local/bin/plantuml.jar"
>  org-startup-folded t
>  org-mode-hook '((closure #1=
>                   ((--cl-my-org-confirm-babel-evaluate-- closure #1# (lang body)
>                     "Define by lockywolf to silence org-babel.\nLANG is what is after begin_src, and BODY is ignored"
>                     (not
>                      (or (string= lang "plantuml") (string= lang "C") (string= lang "scheme") (string= lang "fortran")
>                       (string= lang "f90") (string= lang "elisp") (string= lang "latex") (string= lang "shell"))
>                      )
>                     )
>                    (--cl-syntax-improver-- . #2=
>                     (closure #1# nil
>                      (progn (message "Improving syntax for org-mode.") (modify-syntax-entry 60 ".") (modify-syntax-entry 62 ".")
>                       (setq geiser-autodoc--inhibit t))
>                      )
>                     )
>                    t)
>                   nil (setq reftex-cite-format '((111 . "cite:%l") (104 . "\\cite{%l}"))))
>                  turn-on-org-cdlatex #2# org-clock-load org-tempo-setup org-fancy-priorities-mode
>                  #[0 "\300\301\302\303\304$\207" [add-hook change-major-mode-hook org-show-all append local] 5]
>                  #[0 "\300\301\302\303\304$\207" [add-hook change-major-mode-hook org-babel-show-result-all append local] 5]
>                  org-babel-result-hide-spec org-babel-hide-all-hashes
>                  #[0 "\301\211.\207" [imenu-create-index-function org-imenu-get-tree] 2] org-eldoc-load)
>  org-clock-persist 'history
>  org-fancy-priorities-list '((65 . "❗") (66 . "⬆") (67 . "⬇") (68 . "☕") (49 . "⚡") (50 . "⮬") (51 . "⮮") (52 . "☕")
>                              (73 . "Important"))
>  org-yank-adjusted-subtrees t
>  org-export-with-smart-quotes t
>  org-odt-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"]
>  org-archive-hook '(org-attach-archive-delete-maybe)
>  org-confirm-elisp-link-function 'yes-or-no-p
>  org-agenda-finalize-hook '(org-fancy-priorities-create-overlays)
>  org-journal-mode-hook '(#[0 "\301 \302\303\304$\207" [org-journal-encrypt-on add-hook org-journal-encryption-hook nil t] 5]
>                          (lambda nil (add-hook org-journal-encrypt-on 'org-journal-encryption-hook nil t)))
>  org-agenda-before-write-hook '(org-agenda-add-entry-text)
>  org-preview-latex-default-process 'imagemagick
>  org-metaup-hook '(org-babel-load-in-session-maybe)
>  org-bibtex-headline-format-function #[257 "\300.\236A\207" [:title] 3 "\n\n(fn ENTRY)"]
>  org-latex-format-drawer-function #[514 "\207" [] 3 "\n\n(fn _ CONTENTS)"]
>  org-babel-pre-tangle-hook '(save-buffer)
>  org-latex-compiler "lualatex"
>  org-tab-first-hook '(org-babel-hide-result-toggle-maybe org-babel-header-arg-expand)
>  org-babel-load-languages '((plantuml . t) (C . t) (scheme . t) (latex . t) (shell . t) (fortran . t))
>  org-log-done 'time
>  org-journal-date-format "%F %A, %d %B %Y"
>  org-load-hook '(org-pdftools-setup-link)
>  org-sidebar-window-after-display-hook '((lambda nil "Set window-parameter `mode-line-format' to nil."
>                                           (set-window-parameter nil 'mode-line-format 'none))
>                                          )
>  org-checklist-export-function 'org-export-as-ascii
>  org-startup-align-all-tables t
>  org-ascii-format-drawer-function #[771 ".\207" [] 4 "\n\n(fn NAME CONTENTS WIDTH)"]
>  org-ellipsis "↴"
>  org-agenda-loop-over-headlines-in-active-region nil
>  org-src-lang-modes '(("redis" . redis) ("php" . php) ("arduino" . arduino) ("C" . c) ("C++" . c++) ("asymptote" . asy)
>                       ("bash" . sh) ("beamer" . latex) ("calc" . fundamental) ("cpp" . c++) ("ditaa" . artist) ("dot" . fundamental)
>                       ("elisp" . emacs-lisp) ("ocaml" . tuareg) ("screen" . shell-script) ("shell" . sh) ("sqlite" . sql))
>  org-icalendar-include-todo "all"
>  org-mru-clock-completing-read 'ido-completing-read
>  org-catch-invisible-edits 'show
>  org-occur-hook '(org-first-headline-recenter)
>  org-log-into-drawer t
>  org-edit-src-auto-save-idle-delay 15
>  org-journal-prefix-key "C-c j "
>  org-agenda-include-diary t
>  org-journal-enable-agenda-integration t
>  org-structure-template-alist '(("bash" . "src shell :exports both :results output :eval no")
>                                 ("F" . "src f90 :exports both :results output") ("EL" . "src elisp :exports both :results output")
>                                 ("SE" . "src scheme :exports code :wrap example") ("SV" . "src scheme :exports both :results value")
>                                 ("SO" . "src scheme :exports both :results output")
>                                 ("p" . "src plantuml :noweb no :exports both :file ") ("a" . "export ascii") ("c" . "center")
>                                 ("C" . "comment") ("e" . "example") ("E" . "export") ("h" . "export html") ("l" . "export latex")
>                                 ("q" . "quote") ("s" . "src") ("v" . "verse"))
>  org-cycle-hook '(org-cycle-hide-archived-subtrees org-cycle-hide-drawers org-cycle-show-empty-lines
>                   org-optimize-window-after-visibility-change)
>  org-edit-src-turn-on-auto-save t
>  org-todo-keywords '((sequence "TODO" "|" "DONE") (sequence "|" "CANCELLED"))
>  org-speed-command-hook '(org-speed-command-activate org-babel-speed-command-activate)
>  org-hierarchical-todo-statistics nil
>  org-preview-latex-process-alist '((dvipng :programs ("latex" "dvipng") :description "dvi > png" :message
>                                     "you need to install the programs: latex and dvipng." :image-input-type "dvi" :image-output-type
>                                     "png" :image-size-adjust (1.0 . 1.0) :latex-compiler
>                                     ("latex -interaction nonstopmode -output-directory %o %f") :image-converter
>                                     ("dvipng -D %D -T tight -o %O %f"))
>                                    (dvisvgm :programs ("latex" "dvisvgm") :description "dvi > svg" :message
>                                     "you need to install the programs: latex and dvisvgm." :image-input-type "dvi"
>                                     :image-output-type "svg" :image-size-adjust (1.7 . 1.5) :latex-compiler
>                                     ("latex -interaction nonstopmode -output-directory %o %f") :image-converter
>                                     ("dvisvgm %f -n -b min -c %S -o %O"))
>                                    (imagemagick :programs ("latex" "convert") :description "pdf > png" :message
>                                     "you need to install the programs: latex and imagemagick." :image-input-type "pdf"
>                                     :image-output-type "png" :image-size-adjust (1.0 . 1.0) :latex-compiler
>                                     ("lualatex -interaction nonstopmode -output-directory %o %f") :image-converter
>                                     ("convert -density %D -trim -antialias %f -quality 100 %O"))
>                                    )
>  org-odt-format-inlinetask-function 'org-odt-format-inlinetask-default-function
>  org-mru-clock-format-function 'substring-no-properties
>  org-clock-auto-clockout-timer 300
>  org-journal-dir "~/Personal_Planner/Journal/"
>  org-babel-tangle-lang-exts '(("fortran" . "F90") ("latex" . "tex") ("D" . "d") ("C++" . "cpp") ("emacs-lisp" . "el")
>                               ("elisp" . "el"))
>  org-format-latex-options '(:foreground default :background default :scale 3.0 :html-foreground "Black" :html-background
>                             "Transparent" :html-scale 1.0 :matchers ("begin" "$1" "$" "$$" "\\(" "\\["))
>  org-refile-use-outline-path 'full-file-path
>  org-clock-in-hook '(org-clock-auto-clockout)
>  org-export-before-parsing-hook '(org-attach-expand-links)
>  org-latex-listings-langs '((f90 "Fortran") (patch "bash") (shell "bash") (plantuml "MetaPost") (elisp "elisp") (scheme "Lisp")
>                             (emacs-lisp "Lisp") (lisp "Lisp") (clojure "Lisp") (c "C") (cc "C++") (fortran "fortran") (perl "Perl")
>                             (cperl "Perl") (python "Python") (ruby "Ruby") (html "HTML") (xml "XML") (tex "TeX")
>                             (latex "[LaTeX]TeX") (shell-script "bash") (gnuplot "Gnuplot") (ocaml "[Objective]Caml") (caml "Caml")
>                             (sql "SQL") (sqlite "sql") (makefile "make") (R "r"))
>  org-confirm-shell-link-function 'yes-or-no-p
>  org-link-parameters '(("attachment" :follow org-attach-follow :complete org-attach-complete-link) ("id" :follow org-id-open)
>                        ("message" :follow org-mac-message-open) ("x-devonthink-item" :follow org-devonthink-item-open)
>                        ("mac-evernote" :follow org-mac-evernote-note-open) ("mac-outlook" :follow org-mac-outlook-message-open)
>                        ("acrobat" :follow org-mac-acrobat-open) ("skim" :follow org-mac-skim-open)
>                        ("addressbook" :follow org-mac-addressbook-item-open) ("x-together-item" :follow org-mac-together-item-open)
>                        ("mairix" :follow org-mairix-open :store org-mairix-store-gnus-link)
>                        ("eww" :follow org-eww-open :store org-eww-store-link)
>                        ("rmail" :follow org-rmail-open :store org-rmail-store-link)
>                        ("mhe" :follow org-mhe-open :store org-mhe-store-link)
>                        ("irc" :follow org-irc-visit :store org-irc-store-link :export org-irc-export)
>                        ("info" :follow org-info-open :export org-info-export :store org-info-store-link)
>                        ("gnus" :follow org-gnus-open :store org-gnus-store-link)
>                        ("docview" :follow org-docview-open :export org-docview-export :store org-docview-store-link)
>                        ("bbdb" :follow org-bbdb-open :export org-bbdb-export :complete org-bbdb-complete-link :store
>                         org-bbdb-store-link)
>                        ("w3m" :store org-w3m-store-link)
>                        ("org-ql-search" :follow org-ql-view--link-follow :store org-ql-view--link-store)
>                        ("yt" :follow (closure #1=(t) (handle) (browse-url (concat "https://www.youtube.com/embed/" handle))) :export
>                         (closure #1# (path desc backend)
>                          (cond ((eql backend 'html) (format yt-iframe-format path (or desc "")))
>                           ((eql backend 'latex) (format "href{%s}{%s}" path (or desc "video"))))
>                          )
>                         )
>                        ("ebib" :follow org-ebib-open :store org-ebib-store-link)
>                        ("bibtex" :follow org-bibtex-open :store org-bibtex-store-link) ("cite" :follow org-ebib-open :export nil)
>                        ("mu4e" :follow mu4e-org-open :store mu4e-org-store-link)
>                        ("elfeed" :follow elfeed-link-open :store elfeed-link-store-link) ("file+sys") ("file+emacs")
>                        ("shell" :follow org-link--open-shell)
>                        (#2="news" :follow #[514 #3="\301\300\302.Q.\"\207" [#2# browse-url #5=":"] 6 #6="\n\n(fn URL ARG)"])
>                        (#4="mailto" :follow #[514 #3# [#4# browse-url #5#] 6 #6#])
>                        (#7="https" :follow #[514 #3# [#7# browse-url #5#] 6 #6#])
>                        (#8="http" :follow #[514 #3# [#8# browse-url #5#] 6 #6#])
>                        (#9="ftp" :follow #[514 #3# [#9# browse-url #5#] 6 #6#]) ("help" :follow org-link--open-help)
>                        ("file" :complete org-link-complete-file) ("elisp" :follow org-link--open-elisp)
>                        ("doi" :follow org-link--open-doi))
>  org-journal-file-type 'monthly
>  org-latex-format-headline-function 'org-latex-format-headline-default-function
>  org-agenda-start-with-follow-mode t
>  org-capture-templates '(("t" "Todo" entry (file+headline "~/Personal_Planner/Planner.org" "Incoming stuff") "* TODO %?\n  %i\n  %a")
>                          ("j" "Journal entry" plain #'#1=
>                           (closure ((--cl-org-journal-find-location-- . #1#) t) nil
>                            (progn (org-journal-new-entry t) (if (eq org-journal-file-type 'daily) nil (org-narrow-to-subtree))
>                             (goto-char (point-max)))
>                            )
>                           "** %(format-time-string org-journal-time-format)%^{Title}\n%i%?" :jump-to-captured t :immediate-finish t)
>                          )
>  org-link-elisp-confirm-function 'yes-or-no-p
>  org-journal-time-format "%T %Z(%:::z)"
>  org-latex-format-inlinetask-function 'org-latex-format-inlinetask-default-function
>  org-tab-before-tab-emulation-hook '(org-tempo-complete-tag)
>  org-html-format-drawer-function #[514 "\207" [] 3 "\n\n(fn NAME CONTENTS)"]
>  org-latex-packages-alist '((#1="" "color") (#1# "listings"))
>  org-image-actual-width nil
>  org-extend-today-until 3
>  org-use-tag-inheritance nil
>  org-html-use-infojs nil
>  org-latex-classes '(("beamer" "\\documentclass[presentation]{beamer}" ("\\section{%s}" . "\\section*{%s}")
>                       ("\\subsection{%s}" . "\\subsection*{%s}") ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
>                      ("acmart" "\\documentclass[sigplan,nonacm,natbib=false]{acmart}" ("\\section{%s}" . "\\section*{%s}")
>                       ("\\subsection{%s}" . "\\subsection*{%s}") ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
>                      ("article" "\\documentclass[11pt]{article}" ("\\section{%s}" . "\\section*{%s}")
>                       ("\\subsection{%s}" . "\\subsection*{%s}") ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
>                       ("\\paragraph{%s}" . "\\paragraph*{%s}") ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))
>                      ("report" "\\documentclass[11pt]{report}" ("\\part{%s}" . "\\part*{%s}") ("\\chapter{%s}" . "\\chapter*{%s}")
>                       ("\\section{%s}" . "\\section*{%s}") ("\\subsection{%s}" . "\\subsection*{%s}")
>                       ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
>                      ("book" "\\documentclass[11pt]{book}" ("\\part{%s}" . "\\part*{%s}") ("\\chapter{%s}" . "\\chapter*{%s}")
>                       ("\\section{%s}" . "\\section*{%s}") ("\\subsection{%s}" . "\\subsection*{%s}")
>                       ("\\subsubsection{%s}" . "\\subsubsection*{%s}"))
>                      )
>  org-html-format-headline-function 'org-html-format-headline-default-function
>  org-mairix-display-hook 'org-mairix-gnus-display-results
>  org-confirm-babel-evaluate '#1=(closure #2=
>                                  ((--cl-my-org-confirm-babel-evaluate-- . #1#)
>                                   (--cl-syntax-improver-- closure #2# nil
>                                    (progn (message "Improving syntax for org-mode.") (modify-syntax-entry 60 ".")
>                                     (modify-syntax-entry 62 ".") (setq geiser-autodoc--inhibit t))
>                                    )
>                                   t)
>                                  (lang body)
>                                  "Define by lockywolf to silence org-babel.\nLANG is what is after begin_src, and BODY is ignored"
>                                  (not
>                                   (or (string= lang "plantuml") (string= lang "C") (string= lang "scheme") (string= lang "fortran")
>                                    (string= lang "f90") (string= lang "elisp") (string= lang "latex") (string= lang "shell"))
>                                   )
>                                  )
>  org-use-sub-superscripts '{}
>  org-agenda-custom-commands '(("n" "Agenda and all TODO" ((agenda #1="" nil) (alltodo #1# nil)) nil
>                                "/run/user/1000/agenda-snapshot.txt")
>                               )
>  org-link-from-user-regexp "\\<lockywolf@laptop\\.lockywolf\\.net\\>\\|\\<Vladimir Nikishkin\\>"
>  org-latex-listings-options '(("numbers" "none") ("frame" "single") ("basicstyle" "\\footnotesize\\ttfamily ")
>                               ("keywordstyle" "\\ttfamily") ("upquote" "true") ("extendedchars" "true"))
>  org-use-speed-commands t
>  org-ql-sidebar-buffer-setup-hook '(toggle-truncate-lines)
>  org-mairix-gnus-select-display-group-function 'org-mairix-gnus-select-display-group-function-gg
>  org-latex-bib-compiler "biber"
>  org-default-notes-file "~/Personal_Planner/notes.org"
>  )
> --
> Your sincerely,
> Vladimir Nikishkin (MiEr, lockywolf)
> (Laptop)



-- 
Yours sincerely, Vladimir Nikishkin
(Sent from GMail web interface.)


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Bug: org-adapt-indentation is not compatible with paragraph-indent-minor-mode [9.4.5 (9.4.5-16-g94be20-elpaplus @ /home/lockywolf/.emacs.d/elpa/org-plus-contrib-20210412/)]
  2021-09-26  6:02 ` Vladimir Nikishkin
@ 2022-05-29 13:20   ` Ihor Radchenko
  0 siblings, 0 replies; 4+ messages in thread
From: Ihor Radchenko @ 2022-05-29 13:20 UTC (permalink / raw)
  To: Vladimir Nikishkin; +Cc: emacs-orgmode

Vladimir Nikishkin <lockywolf@gmail.com> writes:

> This report is not about exporting Org code. It is perfectly fine that
> an empty line is required in org to demarcate a paragraph. The example
> above is just what I would imagine as an "ideal case".
> However, when `paragraph-indent-minor-mode` is turned on,
> `org-adapt-indentation` stops working, even though nothing else has
> changed. The text is exactly the same, and is valid org markup.

This is because paragraph-indent-minor-mode trashes major-mode settings
for indent-line-function. Org mode relies on indent-line-function to be
org-indent-line, which makes all the handling of `org-adapt-indentation'
among other things. paragraph-indent-minor-mode sets
indent-line-function to indent-to-left-margin instead of
org-indent-line.

I doubt that paragraph-indent-minor-mode can be changed in general way
to handle cases like this. Instead, it may be possible to implement
org-mode equivalent of paragraph-indent-minor-mode. Patches are welcome!

Meanwhile, paragraph-indent-minor-mode should be considered
incompatible.

Best,
Ihor


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-05-29 13:21 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-07  4:02 Bug: org-adapt-indentation is not compatible with paragraph-indent-minor-mode [9.4.5 (9.4.5-16-g94be20-elpaplus @ /home/lockywolf/.emacs.d/elpa/org-plus-contrib-20210412/)] Vladimir Nikishkin
2021-09-10 16:55 ` Max Nikulin
2021-09-26  6:02 ` Vladimir Nikishkin
2022-05-29 13:20   ` Ihor Radchenko

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).