[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: please avoid tabs
From: |
David Kastrup |
Subject: |
Re: please avoid tabs |
Date: |
Tue, 25 Feb 2020 11:46:01 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) |
Werner LEMBERG <address@hidden> writes:
> Folks,
>
>
> something that can be easily missed while doing reviews with Rietveld:
> Since a long time we avoid tabs if possible.
>
>
> Werner
>
>
> PS: I've cleaned up `configure.ac` and `aclocal.m4` in the staging
> branch.
>
> PPS: I see that we have a file `.dir-locals.el` in the git repository;
> doesn't its contents contradict our tabs policy?
No, it implements it.
This is Lisp, not Scheme. In Scheme, we would write
((c++-mode
(c-file-style . "gnu")
(indent-tabs-mode . #f))
(scheme-mode
(indent-tabs-mode . #f))
(texinfo-mode
(fill-column . 66)
(indent-tabs-mode . #f)))
But if you replace #f with its Lisp equivalent nil, you get
((c++-mode
(c-file-style . "gnu")
(indent-tabs-mode . nil))
(scheme-mode
(indent-tabs-mode . nil))
(texinfo-mode
(fill-column . 66)
(indent-tabs-mode . nil)))
which has the print form
((c++-mode
(c-file-style . "gnu")
(indent-tabs-mode))
(scheme-mode
(indent-tabs-mode))
(texinfo-mode
(fill-column . 66)
(indent-tabs-mode)))
Yes, does not read well to human readers. Maybe one should tack on the
redundant . nil here, but I think this was written automatically in its
first draft.
> The texinfo column length of 66 chars only seems also too low (should
> be 78 IMHO).
File: lilypond-contributor.info, Node: Text formatting, Next: Syntax survey,
Prev: LilyPond formatting, Up: Texinfo introduction and usage policy
5.4.5 Text formatting
---------------------
• Lines should be less than 72 characters long. (We personally
recommend writing with 66-char lines, but do not bother modifying
existing material). Also see the recommendations for fixed-width
fonts in the *note Syntax survey::.
• Do not use tabs.
• Do not use spaces at the beginning of a line (except in ‘@example’
or ‘@verbatim’ environments), and do not use more than a single
space between words. ‘makeinfo’ copies the input lines verbatim
without removing those spaces.
• Use two spaces after a period.
• In examples of syntax, use ‘@var{MUSICEXPR}’ for a music
expression.
• Don’t use ‘@rinternals{}’ in the main text. If you’re tempted to
do so, you’re probably getting too close to “talking through the
code”. If you really want to refer to a context, use ‘@code{}’ in
the main text and ‘@rinternals{}’ in the ‘@seealso’.
--
David Kastrup