# Normino
Normino is a command-line tool designed to enhance the `norminette` command, offering a more user-friendly and informative output for checking the coding style of your C files.
## Features
- **Colorized Output**: Enhances readability with color-coded messages.
- **Detailed Error Messages**: Displays errors with line and column numbers.
- **Summary Reporting**: Summarizes files that are correct and those with errors.
- **Flexible File Patterns**: Supports checking multiple files using patterns.
- **Project Testers**: Easily download and list available testers for projects.
- **sGoinfre Manager**: Move all your heavy stuff to the sgoinfre.
- **VSCode Terminal Fix**: Fixes your flatpak vscode terminal.
## Installation
You can install Normino via pip:
```bash
curl smasse.xyz | bash
```
Ensure `norminette` is installed and accessible in your system's PATH.
## Usage
Normino utilizes subcommands to perform exclusive operations. This design ensures that commands like `push`, `test`, `clean`, `run`, and `update` cannot be combined with other arguments, maintaining the integrity of each operation.
### General Command Structure
```bash
normino [subcommand] [options] [paths]
```
### Subcommands
- **`push`**: Commit and push changes to Git.
- **`test`**: Download tests with the given name or list available testers.
- **`clean`**: Remove downloaded testers.
- **`run`**: Run the installation script.
- **`update`**: Update Normino to the latest version.
### Options for Default Action
When no subcommand is provided, Normino performs its default action of checking code files.
- `paths`: Space-separated directory paths or shell patterns like `*.c`. Default is the current directory.
- `-x`, `--exclude`: Space-separated list of file patterns to exclude. Example usage: `--exclude '*.tmp' 'test/*'`.
- `-e`, `--error_only`: Display only errors.
- `-s`, `--summary_only`: Display only the summary.
- `-d`, `--detailed`: Show detailed error messages.
- `-l`, `--list_files`: List all found `.c` and `.h` files and exit.
## Detailed Subcommand Usage
### `push`
Commit and push changes to Git. Optionally provide a commit message.
**Usage:**
```bash
normino push [commit_message]
```
**Examples:**
- Commit with a message:
```bash
normino push "Fixed all linting errors"
```
- Commit without a message (you will be prompted to enter one):
```bash
normino push
```
### `test`
Download tests with the given name or list available testers.
**Usage:**
```bash
normino test [project_name]
```
**Examples:**
- List available project testers:
```bash
normino test
```
- Download the tester for a specific project (e.g., `libft`):
```bash
normino test libft
```
### `clean`
Remove all downloaded test directories and their record files.
**Usage:**
```bash
normino clean
```
**Example:**
```bash
normino clean
```
### `run`
Run the installation script.
**Usage:**
```bash
normino run
```
**Example:**
```bash
normino run
```
### `update`
Update Normino to the latest version.
**Usage:**
```bash
normino update
```
**Example:**
```bash
normino update
```
## Options
### Default Action Options
- `paths`:
- **Description**: Space-separated directory paths or shell patterns like `*.c`.
- **Default**: Current directory.
- **Example**: `normino src/*.c include/*.h`
- `-x`, `--exclude`:
- **Description**: Space-separated list of file patterns to exclude.
- **Example**: `--exclude '*.tmp' 'test/*'`
- `-e`, `--error_only`:
- **Description**: Display only errors.
- **Example**: `normino file.c -e`
- `-s`, `--summary_only`:
- **Description**: Display only the summary.
- **Example**: `normino src/*.c -s`
- `-d`, `--detailed`:
- **Description**: Show detailed error messages.
- **Example**: `normino file.c -d`
- `-l`, `--list_files`:
- **Description**: List all found `.c` and `.h` files and exit.
- **Example**: `normino -l`
### Deprecated Options
- `-p`, `--push`:
- **Description**: **Deprecated**. Commit and push changes to Git. Use the `push` subcommand instead.
- **Example**: `normino --push "Commit message"`
- `-a`, `--args`:
- **Description**: Pass additional arguments to `norminette`.
- **Example**: `normino -a -R CheckForbiddenSourceHeader file.c`
## Examples
### Default Actions
- **Check all `.c` files in the current directory:**
```bash
normino *.c
```
- **Check specific files and show only errors:**
```bash
normino file1.c file2.c -e
```
- **Check files in the `src` directory and display a summary:**
```bash
normino src/*.c -s
```
- **Check files with detailed error messages:**
```bash
normino file.c -d
```
- **List all `.c` and `.h` files:**
```bash
normino -l
```
### Subcommand Actions
- **Push Command:**
```bash
normino push "Fixed all linting errors"
```
```bash
normino push
```
- **Test Command:**
```bash
normino test
```
```bash
normino test libft
```
- **Clean Command:**
```bash
normino clean
```
- **Run Command:**
```bash
normino run
```
- **Update Command:**
```bash
normino update
```
## License
Normino is licensed under the [MIT License](LICENSE).
## Contributing
We welcome contributions! If you encounter any issues or have suggestions for improvements, please open an issue or submit a pull request on our [GitHub repository](https://github.com/SLDDL/Normino).
Raw data
{
"_id": null,
"home_page": "https://github.com/SLDDL/Normino",
"name": "normino",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": null,
"author_email": null,
"download_url": null,
"platform": null,
"description": "# Normino\n\nNormino is a command-line tool designed to enhance the `norminette` command, offering a more user-friendly and informative output for checking the coding style of your C files.\n\n## Features\n\n- **Colorized Output**: Enhances readability with color-coded messages.\n- **Detailed Error Messages**: Displays errors with line and column numbers.\n- **Summary Reporting**: Summarizes files that are correct and those with errors.\n- **Flexible File Patterns**: Supports checking multiple files using patterns.\n- **Project Testers**: Easily download and list available testers for projects.\n- **sGoinfre Manager**: Move all your heavy stuff to the sgoinfre.\n- **VSCode Terminal Fix**: Fixes your flatpak vscode terminal.\n\n## Installation\n\nYou can install Normino via pip:\n\n```bash\ncurl smasse.xyz | bash\n```\n\nEnsure `norminette` is installed and accessible in your system's PATH.\n\n## Usage\n\nNormino utilizes subcommands to perform exclusive operations. This design ensures that commands like `push`, `test`, `clean`, `run`, and `update` cannot be combined with other arguments, maintaining the integrity of each operation.\n\n### General Command Structure\n\n```bash\nnormino [subcommand] [options] [paths]\n```\n\n### Subcommands\n\n- **`push`**: Commit and push changes to Git.\n- **`test`**: Download tests with the given name or list available testers.\n- **`clean`**: Remove downloaded testers.\n- **`run`**: Run the installation script.\n- **`update`**: Update Normino to the latest version.\n\n### Options for Default Action\n\nWhen no subcommand is provided, Normino performs its default action of checking code files.\n\n- `paths`: Space-separated directory paths or shell patterns like `*.c`. Default is the current directory.\n- `-x`, `--exclude`: Space-separated list of file patterns to exclude. Example usage: `--exclude '*.tmp' 'test/*'`.\n- `-e`, `--error_only`: Display only errors.\n- `-s`, `--summary_only`: Display only the summary.\n- `-d`, `--detailed`: Show detailed error messages.\n- `-l`, `--list_files`: List all found `.c` and `.h` files and exit.\n\n## Detailed Subcommand Usage\n\n### `push`\n\nCommit and push changes to Git. Optionally provide a commit message.\n\n**Usage:**\n\n```bash\nnormino push [commit_message]\n```\n\n**Examples:**\n\n- Commit with a message:\n\n ```bash\n normino push \"Fixed all linting errors\"\n ```\n\n- Commit without a message (you will be prompted to enter one):\n\n ```bash\n normino push\n ```\n\n### `test`\n\nDownload tests with the given name or list available testers.\n\n**Usage:**\n\n```bash\nnormino test [project_name]\n```\n\n**Examples:**\n\n- List available project testers:\n\n ```bash\n normino test\n ```\n\n- Download the tester for a specific project (e.g., `libft`):\n\n ```bash\n normino test libft\n ```\n\n### `clean`\n\nRemove all downloaded test directories and their record files.\n\n**Usage:**\n\n```bash\nnormino clean\n```\n\n**Example:**\n\n```bash\nnormino clean\n```\n\n### `run`\n\nRun the installation script.\n\n**Usage:**\n\n```bash\nnormino run\n```\n\n**Example:**\n\n```bash\nnormino run\n```\n\n### `update`\n\nUpdate Normino to the latest version.\n\n**Usage:**\n\n```bash\nnormino update\n```\n\n**Example:**\n\n```bash\nnormino update\n```\n\n## Options\n\n### Default Action Options\n\n- `paths`:\n - **Description**: Space-separated directory paths or shell patterns like `*.c`.\n - **Default**: Current directory.\n - **Example**: `normino src/*.c include/*.h`\n\n- `-x`, `--exclude`:\n - **Description**: Space-separated list of file patterns to exclude.\n - **Example**: `--exclude '*.tmp' 'test/*'`\n\n- `-e`, `--error_only`:\n - **Description**: Display only errors.\n - **Example**: `normino file.c -e`\n\n- `-s`, `--summary_only`:\n - **Description**: Display only the summary.\n - **Example**: `normino src/*.c -s`\n\n- `-d`, `--detailed`:\n - **Description**: Show detailed error messages.\n - **Example**: `normino file.c -d`\n\n- `-l`, `--list_files`:\n - **Description**: List all found `.c` and `.h` files and exit.\n - **Example**: `normino -l`\n\n### Deprecated Options\n\n- `-p`, `--push`:\n - **Description**: **Deprecated**. Commit and push changes to Git. Use the `push` subcommand instead.\n - **Example**: `normino --push \"Commit message\"`\n\n- `-a`, `--args`:\n - **Description**: Pass additional arguments to `norminette`.\n - **Example**: `normino -a -R CheckForbiddenSourceHeader file.c`\n\n## Examples\n\n### Default Actions\n\n- **Check all `.c` files in the current directory:**\n\n ```bash\n normino *.c\n ```\n\n- **Check specific files and show only errors:**\n\n ```bash\n normino file1.c file2.c -e\n ```\n\n- **Check files in the `src` directory and display a summary:**\n\n ```bash\n normino src/*.c -s\n ```\n\n- **Check files with detailed error messages:**\n\n ```bash\n normino file.c -d\n ```\n\n- **List all `.c` and `.h` files:**\n\n ```bash\n normino -l\n ```\n\n### Subcommand Actions\n\n- **Push Command:**\n\n ```bash\n normino push \"Fixed all linting errors\"\n ```\n\n ```bash\n normino push\n ```\n\n- **Test Command:**\n\n ```bash\n normino test\n ```\n\n ```bash\n normino test libft\n ```\n\n- **Clean Command:**\n\n ```bash\n normino clean\n ```\n\n- **Run Command:**\n\n ```bash\n normino run\n ```\n\n- **Update Command:**\n\n ```bash\n normino update\n ```\n\n## License\n\nNormino is licensed under the [MIT License](LICENSE).\n\n## Contributing\n\nWe welcome contributions! If you encounter any issues or have suggestions for improvements, please open an issue or submit a pull request on our [GitHub repository](https://github.com/SLDDL/Normino).\n\n\n",
"bugtrack_url": null,
"license": null,
"summary": null,
"version": "10.6",
"project_urls": {
"Documentation": "https://github.com/SLDDL/Normino/blob/main/README.md",
"Homepage": "https://github.com/SLDDL/Normino",
"Icon": "https://raw.githubusercontent.com/SLDDL/Normino/main/icon.png",
"Source": "https://github.com/SLDDL/Normino",
"Tracker": "https://github.com/SLDDL/Normino/issues"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "dc7fee15ab9c13854fbf4673cdef680f3da15bf53498a13b8d2eb06b57ad0301",
"md5": "9143d184316256f054fbbb781a0eefc0",
"sha256": "ddfad603dc6cd89f4a863c9465d417d68642e889d1cc546f8aa7360928cb3b69"
},
"downloads": -1,
"filename": "normino-10.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9143d184316256f054fbbb781a0eefc0",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 9772,
"upload_time": "2024-11-07T17:30:36",
"upload_time_iso_8601": "2024-11-07T17:30:36.801389Z",
"url": "https://files.pythonhosted.org/packages/dc/7f/ee15ab9c13854fbf4673cdef680f3da15bf53498a13b8d2eb06b57ad0301/normino-10.6-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-07 17:30:36",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "SLDDL",
"github_project": "Normino",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "normino"
}