This is a simple function that substitutes org-indent--compute-prefixes
function
from the org-indent
package. Paired with org-hide-leading-stars
configuration
variable or properly configured org-superstar-mode package, can produce really
nice-looking headlines.
(use-package org-margin-bullet
:config (org-margin-bullet-load))
Package recipe:
(package! org-margin-bullet
:recipe (:repo "mskorzhinskiy/org-margin-bullet"
:host github :branch "main"))
(use-package org-superstar
:hook (org-mode . org-superstar-mode)
:config
(setq org-superstar-headline-bullets-list '((" " . "x")))
(setq org-superstar-leading-bullet " ")
(setq org-hide-leading-stars nil)
(setq org-superstar-special-todo-items t)
(setq org-superstar-todo-bullet-alist
'(("TODO" "☐ ")
("NEXT" "☐ ")
("DONE" "☑ "))))
(set-ligatures! 'org-mode
:alist '(("TODO " . "")
("DONE " . "")))
Notice that first several headline levels are exactly on the same line.
Moving things around also works wonderful:
(use-package org-superstar
:hook (org-mode . org-superstar-mode)
:config
(setq org-superstar-headline-bullets-list '((" " . "x")))
(setq org-superstar-leading-bullet "")
(setq org-hide-leading-stars nil)
(setq org-superstar-special-todo-items t)
(setq org-superstar-todo-bullet-alist
'(("TODO" "☐ ")
("NEXT" "☐ ")
("DONE" "☑ "))))
(set-ligatures! 'org-mode
:alist '(("TODO " . "")
("DONE " . "")))