lilypond-devel
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]