Commit graph

3 commits

Author SHA1 Message Date
John W. Parent
573f7bf4cd
Windows: enforce carriage return for .bat files (#35514)
Batch scripts in general will not function without carriage return line
endings on Windows. We rely on these scripts to support cmd, so we
should not allow these scripts to be converted to lf.

Note: Windows 11 supports lf line endings due to the use of Windows
Terminal. Once support for Windows 10 is dropped, this change can be
reverted.
2023-02-17 04:01:25 -08:00
Todd Gamblin
4d94c4c460
linguist: update .gitattributes for better linguist parsing (#20639)
This adds two lines to `.gitattributes`:
- [x] exclude vendored code from GitHub's language calculation
- [x] recognize `.lp` files as Prolog (closest language to ASP that
      linguist supports)

It looks like there have been two attempts
(https://github.com/github/linguist/issues/3867,
https://github.com/github/linguist/issues/4860) to add ASP as a language
to Linguist, but it's not widespread enough to be standard yet (or at
least the people who submitted the PRs haven't been able to show enough
stats to prove it). We'll settle for calling ASP "Prolog" for now as
that'll get us some syntax highlighting for `concretize.lp`.
2020-12-31 16:48:50 -08:00
Todd Gamblin
2dffbec486
git: add .gitattributes file (#13947)
Add a line to .gitattributes so that `git grep -p` shows function names
properly for `*.py` files.  Without this, the class name is shown instead
of the function for python files.

This also causes diff output to use proper functions as hunk headers in
`diff` output.

Here's an example with `git grep -p`.

Before:

    $ git grep -p spack_cc var/spack/repos/builtin/packages/athena
    var/spack/repos/builtin/packages/athena/package.py=class Athena(AutotoolsPackage):
    var/spack/repos/builtin/packages/athena/package.py:            env.set('CC', spack_cc)
    var/spack/repos/builtin/packages/athena/package.py:            env.set('LDR', spack_cc)

After:

    $ git grep -p spack_cc var/spack/repos/builtin/packages/athena
    var/spack/repos/builtin/packages/athena/package.py=    def setup_build_environment(self, env):
    var/spack/repos/builtin/packages/athena/package.py:            env.set('CC', spack_cc)
    var/spack/repos/builtin/packages/athena/package.py:            env.set('LDR', spack_cc)

Here's an example with `diff`.

Before:

    $ git show c5da94eb58
    [...]
    @@ -28,6 +29,7 @@ print(u'\\xc3')

             # make it executable
             fs.set_executable(script_name)
    +        filter_shebangs_in_directory('.', [script_name])

             # read the unicode back in and see whether things work
             script = ex.Executable('./%s' % script_name)

After:

    $ git show c5da94eb58
    [...]
    @@ -28,6 +29,7 @@ def test_read_unicode(tmpdir):

             # make it executable
             fs.set_executable(script_name)
    +        filter_shebangs_in_directory('.', [script_name])

             # read the unicode back in and see whether things work
             script = ex.Executable('./%s' % script_name)
2019-12-02 01:35:38 -08:00