I finally found how people naturally made their mail with org, with orgstruct++-mode, that I just tried. However that triggers an infinite loop error (“car: Lisp nesting exceeds ‘max-lisp-eval-depth’”), because then indent-line-function refers to org-indent-line, which when orgstruct-is-++ is true, calls indent-line-function.
Why that garbage? how is it supposed to be?