{"thread":{"id":"50757","subject":"\"man gitattributes\" doesn't explain comma-separated attribute values","startedAt":"2019-03-16T12:22:29Z","lastAt":"2019-03-18T10:10:21Z","messageCount":7,"participants":["Robert P. J. Day","Ævar Arnfjörð Bjarmason","Johannes Sixt","Philip Oakley"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"371652","messageId":"alpine.LFD.2.21.1903160816410.10724@localhost.localdomain","threadId":"50757","inReplyTo":null,"subject":"\"man gitattributes\" doesn't explain comma-separated attribute values","fromName":"Robert P. J. Day","fromEmail":"rpjday@crashcourse.ca","sentAt":"2019-03-16T12:22:24Z","receivedAt":"2019-03-16T12:22:29Z","isPatch":false,"sender":{"key":"rpjday@crashcourse.ca","avatar":"https://avatars.githubusercontent.com/u/226084077?v=4"},"body":"\n  more nitpicking, but i'm working my way through the intricacies of\nattributes and putting together some (allegedly) simple examples for a\nclass i'm giving on monday, and i noted a couple possible shortcomings\nin \"man gitattributes\".\n\n  as a working example, i looked at the top-level .gitattributes file\nin the git source code itself, which opens with:\n\n  * whitespace=!indent,trail,space\n  *.[ch] whitespace=indent,trail,space diff=cpp\n  *.sh whitespace=indent,trail,space eol=lf\n  ... snip ...\n\nfirst observation is that i see nothing in the man page that explains\nthe notion of a comma-separated list of attribute values. maybe i\nmissed it or maybe it's supposed to be intuitively obvious, but\nthere's nothing i can see that mentions the possibility.\n\n  related to that is that there is no explanation as to how to\ninterpret:\n\n  * whitespace=!indent,trail,space\n\ndoes the \"!\" apply to \"indent\" or to the entire list? the man page\ndoesn't say.\n\n  just being pedantic again.\n\nrday\n\n-- \n\n========================================================================\nRobert P. J. Day                                 Ottawa, Ontario, CANADA\n                  http://crashcourse.ca/dokuwiki\n\nTwitter:                                       http://twitter.com/rpjday\nLinkedIn:                               http://ca.linkedin.com/in/rpjday\n========================================================================\n"},{"id":"371653","messageId":"87r2b79d3p.fsf@evledraar.gmail.com","threadId":"50757","inReplyTo":"alpine.LFD.2.21.1903160816410.10724@localhost.localdomain","subject":"Re: \"man gitattributes\" doesn't explain comma-separated attribute values","fromName":"Ævar Arnfjörð Bjarmason","fromEmail":"avarab@gmail.com","sentAt":"2019-03-16T13:13:14Z","receivedAt":"2019-03-16T13:16:21Z","isPatch":false,"sender":{"key":"avarab@gmail.com","avatar":"https://avatars.githubusercontent.com/u/45301?v=4"},"body":"\nOn Sat, Mar 16 2019, Robert P. J. Day wrote:\n\n>   more nitpicking, but i'm working my way through the intricacies of\n> attributes and putting together some (allegedly) simple examples for a\n> class i'm giving on monday, and i noted a couple possible shortcomings\n> in \"man gitattributes\".\n>\n>   as a working example, i looked at the top-level .gitattributes file\n> in the git source code itself, which opens with:\n>\n>   * whitespace=!indent,trail,space\n>   *.[ch] whitespace=indent,trail,space diff=cpp\n>   *.sh whitespace=indent,trail,space eol=lf\n>   ... snip ...\n>\n> first observation is that i see nothing in the man page that explains\n> the notion of a comma-separated list of attribute values. maybe i\n> missed it or maybe it's supposed to be intuitively obvious, but\n> there's nothing i can see that mentions the possibility.\n>\n>   related to that is that there is no explanation as to how to\n> interpret:\n>\n>   * whitespace=!indent,trail,space\n>\n> does the \"!\" apply to \"indent\" or to the entire list? the man page\n> doesn't say.\n>\n>   just being pedantic again.\n>\n> rday\n\nIt's documented in gitglossary, search for \"attr\". That's not an excuse\nor a statement that that doesn't suck, just a pointer for anyone\ninterested in fixing the docs.\n"},{"id":"371654","messageId":"alpine.LFD.2.21.1903160947430.12393@localhost.localdomain","threadId":"50757","inReplyTo":"87r2b79d3p.fsf@evledraar.gmail.com","subject":"Re: \"man gitattributes\" doesn't explain comma-separated attribute values","fromName":"Robert P. J. Day","fromEmail":"rpjday@crashcourse.ca","sentAt":"2019-03-16T13:48:01Z","receivedAt":"2019-03-16T13:48:07Z","isPatch":false,"sender":{"key":"rpjday@crashcourse.ca","avatar":"https://avatars.githubusercontent.com/u/226084077?v=4"},"body":"On Sat, 16 Mar 2019, Ævar Arnfjörð Bjarmason wrote:\n\n>\n> On Sat, Mar 16 2019, Robert P. J. Day wrote:\n>\n> >   more nitpicking, but i'm working my way through the intricacies of\n> > attributes and putting together some (allegedly) simple examples for a\n> > class i'm giving on monday, and i noted a couple possible shortcomings\n> > in \"man gitattributes\".\n> >\n> >   as a working example, i looked at the top-level .gitattributes file\n> > in the git source code itself, which opens with:\n> >\n> >   * whitespace=!indent,trail,space\n> >   *.[ch] whitespace=indent,trail,space diff=cpp\n> >   *.sh whitespace=indent,trail,space eol=lf\n> >   ... snip ...\n> >\n> > first observation is that i see nothing in the man page that explains\n> > the notion of a comma-separated list of attribute values. maybe i\n> > missed it or maybe it's supposed to be intuitively obvious, but\n> > there's nothing i can see that mentions the possibility.\n> >\n> >   related to that is that there is no explanation as to how to\n> > interpret:\n> >\n> >   * whitespace=!indent,trail,space\n> >\n> > does the \"!\" apply to \"indent\" or to the entire list? the man page\n> > doesn't say.\n> >\n> >   just being pedantic again.\n> >\n> > rday\n>\n> It's documented in gitglossary, search for \"attr\". That's not an excuse\n> or a statement that that doesn't suck, just a pointer for anyone\n> interested in fixing the docs.\n\n  ah, gotcha. thenk you kindly.\n\nrday\n"},{"id":"371673","messageId":"408d82f6-e935-487a-6d0c-9ec4be5e8b6e@kdbg.org","threadId":"50757","inReplyTo":"alpine.LFD.2.21.1903160816410.10724@localhost.localdomain","subject":"Re: \"man gitattributes\" doesn't explain comma-separated attribute values","fromName":"Johannes Sixt","fromEmail":"j6t@kdbg.org","sentAt":"2019-03-16T21:58:06Z","receivedAt":"2019-03-16T21:58:10Z","isPatch":false,"sender":{"key":"j6t@kdbg.org","avatar":"https://avatars.githubusercontent.com/u/14810926?v=4"},"body":"Am 16.03.19 um 13:22 schrieb Robert P. J. Day:\n>   as a working example, i looked at the top-level .gitattributes file\n> in the git source code itself, which opens with:\n> \n>   * whitespace=!indent,trail,space\n>   *.[ch] whitespace=indent,trail,space diff=cpp\n>   *.sh whitespace=indent,trail,space eol=lf\n>   ... snip ...\n> \n> first observation is that i see nothing in the man page that explains\n> the notion of a comma-separated list of attribute values.\n\nThis comma-separated list is not a property of attributes in general,\nbut a property of the whitespace attribute in particular. See\ncore.whitespace in git-config(1) and \"Checking whitespace errors\" in\ngitattributes(5).\n\n-- Hannes\n"},{"id":"371674","messageId":"alpine.LFD.2.21.1903161807480.19900@localhost.localdomain","threadId":"50757","inReplyTo":"408d82f6-e935-487a-6d0c-9ec4be5e8b6e@kdbg.org","subject":"Re: \"man gitattributes\" doesn't explain comma-separated attribute values","fromName":"Robert P. J. Day","fromEmail":"rpjday@crashcourse.ca","sentAt":"2019-03-16T22:09:13Z","receivedAt":"2019-03-16T22:09:29Z","isPatch":false,"sender":{"key":"rpjday@crashcourse.ca","avatar":"https://avatars.githubusercontent.com/u/226084077?v=4"},"body":"On Sat, 16 Mar 2019, Johannes Sixt wrote:\n\n> Am 16.03.19 um 13:22 schrieb Robert P. J. Day:\n> >   as a working example, i looked at the top-level .gitattributes file\n> > in the git source code itself, which opens with:\n> >\n> >   * whitespace=!indent,trail,space\n> >   *.[ch] whitespace=indent,trail,space diff=cpp\n> >   *.sh whitespace=indent,trail,space eol=lf\n> >   ... snip ...\n> >\n> > first observation is that i see nothing in the man page that explains\n> > the notion of a comma-separated list of attribute values.\n>\n> This comma-separated list is not a property of attributes in\n> general, but a property of the whitespace attribute in particular.\n> See core.whitespace in git-config(1) and \"Checking whitespace\n> errors\" in gitattributes(5).\n\n  ah, i was digging through the code trying to figure out where the\nwhole CSV thing was explained -- it's massively helpful to understand\nthat that property is specific to whitespace. that does not appear to\nbe clarified anywhere.\n\nrday\n\n-- \n\n========================================================================\nRobert P. J. Day                                 Ottawa, Ontario, CANADA\n                  http://crashcourse.ca/dokuwiki\n\nTwitter:                                       http://twitter.com/rpjday\nLinkedIn:                               http://ca.linkedin.com/in/rpjday\n========================================================================\n"},{"id":"371680","messageId":"6aeca231-c024-1063-0f8c-03276c83161c@kdbg.org","threadId":"50757","inReplyTo":"alpine.LFD.2.21.1903161807480.19900@localhost.localdomain","subject":"Re: \"man gitattributes\" doesn't explain comma-separated attribute values","fromName":"Johannes Sixt","fromEmail":"j6t@kdbg.org","sentAt":"2019-03-17T08:18:48Z","receivedAt":"2019-03-17T08:19:16Z","isPatch":false,"sender":{"key":"j6t@kdbg.org","avatar":"https://avatars.githubusercontent.com/u/14810926?v=4"},"body":"Am 16.03.19 um 23:09 schrieb Robert P. J. Day:\n> On Sat, 16 Mar 2019, Johannes Sixt wrote:\n> \n>> Am 16.03.19 um 13:22 schrieb Robert P. J. Day:\n>>>   as a working example, i looked at the top-level .gitattributes file\n>>> in the git source code itself, which opens with:\n>>>\n>>>   * whitespace=!indent,trail,space\n>>>   *.[ch] whitespace=indent,trail,space diff=cpp\n>>>   *.sh whitespace=indent,trail,space eol=lf\n>>>   ... snip ...\n>>>\n>>> first observation is that i see nothing in the man page that explains\n>>> the notion of a comma-separated list of attribute values.\n>>\n>> This comma-separated list is not a property of attributes in\n>> general, but a property of the whitespace attribute in particular.\n>> See core.whitespace in git-config(1) and \"Checking whitespace\n>> errors\" in gitattributes(5).\n> \n>   ah, i was digging through the code trying to figure out where the\n> whole CSV thing was explained -- it's massively helpful to understand\n> that that property is specific to whitespace. that does not appear to\n> be clarified anywhere.\n\nBut it is. The very first paragraph of gitattributes(5) states that\nattributes are whitespace separated. From this, conclude that the\ncomma-separated list must pertain to the whitespace attribute. Now\nfollow the documentation of that, and you end up at core.whitespace in\ngit-config(1). There you have it as the very first phrase.\n\n-- Hannes\n"},{"id":"371800","messageId":"21e31142-ace2-71e1-8a36-1940c35eb24d@iee.org","threadId":"50757","inReplyTo":"6aeca231-c024-1063-0f8c-03276c83161c@kdbg.org","subject":"Re: \"man gitattributes\" doesn't explain comma-separated attribute values","fromName":"Philip Oakley","fromEmail":"philipoakley@iee.org","sentAt":"2019-03-18T10:10:16Z","receivedAt":"2019-03-18T10:10:21Z","isPatch":false,"sender":{"key":"philipoakley@iee.email","avatar":"https://avatars.githubusercontent.com/u/914343?v=4"},"body":"On 17/03/2019 08:18, Johannes Sixt wrote:\n> Am 16.03.19 um 23:09 schrieb Robert P. J. Day:\n>> On Sat, 16 Mar 2019, Johannes Sixt wrote:\n>>\n>>> Am 16.03.19 um 13:22 schrieb Robert P. J. Day:\n>>>>    as a working example, i looked at the top-level .gitattributes file\n>>>> in the git source code itself, which opens with:\n>>>>\n>>>>    * whitespace=!indent,trail,space\n>>>>    *.[ch] whitespace=indent,trail,space diff=cpp\n>>>>    *.sh whitespace=indent,trail,space eol=lf\n>>>>    ... snip ...\n>>>>\n>>>> first observation is that i see nothing in the man page that explains\n>>>> the notion of a comma-separated list of attribute values.\n>>> This comma-separated list is not a property of attributes in\n>>> general, but a property of the whitespace attribute in particular.\n>>> See core.whitespace in git-config(1) and \"Checking whitespace\n>>> errors\" in gitattributes(5).\n>>    ah, i was digging through the code trying to figure out where the\n>> whole CSV thing was explained -- it's massively helpful to understand\n>> that that property is specific to whitespace. that does not appear to\n>> be clarified anywhere.\n> But it is. The very first paragraph of gitattributes(5) states that\n> attributes are whitespace separated. From this, conclude that the\n> comma-separated list must pertain to the whitespace attribute.\n\nI can't say that I follow that 'by omission'  argument. It is one of \nthose argument types that sounds good in retrospect but is very hard for \nthe unknowing reader to guess, especially as commas are widely taught as \nbeing one of the ubiquitous separators.\n\nThere is a similar issue with '/' in refs regarding the subtle \ndistinctions between embedded characters that have a common convenience \nmeaning vs the idea that they are all just a single whitespace separated \nstring.\n\nGiven that, Robert may be able to suggest a short addendum that \nclarifies that the comma is processed elsewhere (IIUC).\n\n>   Now\n> follow the documentation of that, and you end up at core.whitespace in\n> git-config(1). There you have it as the very first phrase.\n>\n> -- Hannes\n\n-- \n\nPhilip\n\n"}]}