Skip to main content

A Collection of pre-commit hooks for MATLAB

Project description

PyPI - Python Version PyPI PyPI - License pre-commit.ci status lint-and-test Code style: black

pre-commit-matlab

A collection of pre-commit hooks for MATLAB

Ok... it's just one hook so far but maybe someday there will be more 😃

Using pre-commit-matlab with pre-commit

Add this to your .pre-commit-config.yaml

-   repo: https://github.com/sco1/pre-commit-matlab
    rev: v1.2.0
    hooks:
    -   id: matlab-reflow-comments
        args: [--line-length=100]

Hooks

matlab-reflow-comments

Reflow inline comments (lines beginning with %) or block comments (delimited by %{ and %}) in MATLAB file(s) (*.m) to the specified line length.

Blank comment lines are passed back into the reformatted source code.

  • Use --line-length to specify line length. (Default: 75)
  • Use --reflow-block-comments to control block comment reflow. (Default: True)
  • Use --ignore-indented to ignore comments with inner indentation. (Default: True)
    • NOTE: This logic is not applied to the contents of a block comment.
  • Use --alternate-capital-handling to treat comment lines that begin with a capital letter as the start of a new comment block. (Default: False)
    • NOTE: This logic is not applied to the contents of a block comment.

If ignore-indented is True, comments that contain inner indentation of at least two spaces is passed back into the reformatted source code as-is. Leading whitespace in the line is not considered.

For example:

    % This is not indented
% This is not indented
%  This is indented
%    This is indented

If alternate-capital-handling is True, if the line buffer has contents then a line beginning with a capital letter is treated as the start of a new comment block.

For example:

% This is a comment line
% This is a second comment line that will not be reflowed into the previous line

NOTE: As an opinionated flag, this may lead to false positives so it is off by default. If enabled, pay close attention to the resulting diff to ensure that your comments are being reflowed as desired.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pre-commit-matlab-1.2.0.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

pre_commit_matlab-1.2.0-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file pre-commit-matlab-1.2.0.tar.gz.

File metadata

  • Download URL: pre-commit-matlab-1.2.0.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for pre-commit-matlab-1.2.0.tar.gz
Algorithm Hash digest
SHA256 ffe9f4cded98f4119899f28dd4b0934ab0094701b3dfcfd8152709c00715a085
MD5 ac301ca97a13ab3a63f583f44c9b1579
BLAKE2b-256 13576e773efba57f2058361883eb069770752790a5c04882904babe0c74b2df4

See more details on using hashes here.

File details

Details for the file pre_commit_matlab-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: pre_commit_matlab-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for pre_commit_matlab-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 49b2c440f741aee360630458c398e0d43ce2d709e398b1cd2a2a64b18925993a
MD5 fb96ca7c54bd53619e3abcafbe533f6f
BLAKE2b-256 8985f5e568a5e671b022cae585cd16d61b4276965b04e8cea2d006b03fc0a616

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page