From: Ihor Radchenko <yantar92@posteo.net>
To: Karthik Chikmagalur <karthikchikmagalur@gmail.com>
Cc: emacs-orgmode@gnu.org
Subject: Re: [PATCH] Justify/align image previews in org-mode
Date: Tue, 19 Dec 2023 11:44:25 +0000 [thread overview]
Message-ID: <87o7empgbq.fsf@localhost> (raw)
In-Reply-To: <87r0jj0vz4.fsf@gmail.com>
Karthik Chikmagalur <karthikchikmagalur@gmail.com> writes:
> I've incorporated the following suggestions:
>
> - Order of precedence:
> + #+attr_org overrides #+attr_html and #+attr_latex
> + `:center t' overrides `:align ...'
Why only html and latex? I think that it will be more consistent to
follow what we do in `org-display-inline-image--width' - any #+attr_*
attribute. And apart from html/latex, we have
beamer/hugo/koma-letter/what not is implemented or will be implemented
deriving from html/latex backend or with support of :center attribute.
> - Add a checker for `:align nil' to org-lint. `:align nil' is not
> supported.
I meant :align <anything> being not supported in #+attr_org. Not just nil.
> + #+vindex: org-image-align
> + Org mode can left-align, center or right-align the display of inline
> + images. This setting is controlled (globally) by ~org-image-align~.
> + Only standalone links, /i.e/ links with no surrounding text in their
Maybe "standalone images"?
Also, please avoid i.e - this is a general Emacs documentation guideline
to avoid specialized language like i.e., e.g., and iff.
> + paragraphs (except whitespace) are affected. Its value can be the
> + following:
> + - (default) nil, insert the image where the link appears in the
> + buffer.
Why not simply setting the default to 'left and not having nil at all?
> + - The symbol ~left~, which is the same as nil.
> + - The symbol ~center~, which will preview standalone links centered
> + in the Emacs window.
> + - The symbol ~right~, which will preview standalone links
> + right-aligned in the Emacs window.
"standalone" links is redundant here - you already mentioned that
> + Inline image alignment can be specified for each link using the
> + =#+ATTR.*= keyword if it matches an alignment specification like:
> + #+begin_example
> + ,#+ATTR_HTML: :align center
> + #+end_example
> + Supported values for =:align= are =left=, =center= and =right=.
I think that we do not need to specify the supported values here - they
are the same as for `org-image-align' just above.
> + Inline image display can also be centered using =:center=, as in
I'd explain that inline image adjustment is also taken from :center
attribute supported by some export backends (like HTML, LaTeX, and
Beamer), when #+attr_org is not set.
> + #+begin_example
> + ,#+ATTR_HTML: :center t
> + #+end_example
> + Org will use the alignment specification from any =#+ATTR.*=
> + keyword, such as =#+ATTR_HTML= or =#+ATTR_LATEX=, but =#+ATTR_ORG=
> + (if present) will override the others. For instance, this link
> + #+begin_example
> + ,#+ATTR_HTML: :align right
> + ,#+ATTR_ORG: :align center
> + [[/path/to/image/file.png]]
> + #+end_example
> + will be displayed centered.
... "but exported right-aligned to HTML"
> +(defun org-lint-invalid-image-alignment (ast)
> + (org-element-map ast 'paragraph
> + (lambda (p)
> + (let ((bad-align-re ":align[[:space:]]+nil")
> + (keyword-string (mapconcat
> + (lambda (attr)
> + (or (car-safe (org-element-property attr p)) ""))
> + '(:attr_org :attr_latex :attr_html) " ")))
:align nil is perfectly valid for HTML.
I thought to warn only about using anything but :align left/right/center
in #+attr_org. And about :center <anything> in #+attr_org.
--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>
next prev parent reply other threads:[~2023-12-19 11:42 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-17 21:19 [PATCH] Justify/align image previews in org-mode Karthik Chikmagalur
2023-12-18 9:19 ` Karthik Chikmagalur
2023-12-18 12:47 ` Ihor Radchenko
2023-12-18 16:49 ` Karthik Chikmagalur
2023-12-18 17:07 ` Ihor Radchenko
2023-12-18 20:18 ` Karthik Chikmagalur
2023-12-19 2:25 ` Karthik Chikmagalur
2023-12-19 11:44 ` Ihor Radchenko [this message]
2023-12-19 19:05 ` Karthik Chikmagalur
2023-12-21 13:42 ` Ihor Radchenko
2023-12-19 11:56 ` Ihor Radchenko
2023-12-25 8:38 ` Bastien Guerry
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87o7empgbq.fsf@localhost \
--to=yantar92@posteo.net \
--cc=emacs-orgmode@gnu.org \
--cc=karthikchikmagalur@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).