{"id":16716103,"url":"https://github.com/dawedawe/fats","last_synced_at":"2025-07-07T05:34:37.061Z","repository":{"id":198957100,"uuid":"701887701","full_name":"dawedawe/fats","owner":"dawedawe","description":"fats is a cat-like tool to dump F# ranges to stdout","archived":false,"fork":false,"pushed_at":"2024-01-11T07:44:09.000Z","size":77,"stargazers_count":4,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-10T06:38:58.966Z","etag":null,"topics":["cli","cli-app","fsharp","tooling","tools"],"latest_commit_sha":null,"homepage":"","language":"F#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dawedawe.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-07T21:25:42.000Z","updated_at":"2023-10-29T14:52:41.000Z","dependencies_parsed_at":"2023-11-23T23:26:40.611Z","dependency_job_id":"9ec804d4-9bd4-466d-91f1-da703056c01f","html_url":"https://github.com/dawedawe/fats","commit_stats":null,"previous_names":["dawedawe/fats"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/dawedawe/fats","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dawedawe%2Ffats","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dawedawe%2Ffats/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dawedawe%2Ffats/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dawedawe%2Ffats/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dawedawe","download_url":"https://codeload.github.com/dawedawe/fats/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dawedawe%2Ffats/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264019982,"owners_count":23545242,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","cli-app","fsharp","tooling","tools"],"created_at":"2024-10-12T21:11:55.736Z","updated_at":"2025-07-07T05:34:37.038Z","avatar_url":"https://github.com/dawedawe.png","language":"F#","funding_links":[],"categories":[],"sub_categories":[],"readme":"fats\n====\n\nfats is a cat-like dotnet tool to quickly dump multiple F# ranges from multiple files to stdout.  \nPlease note: F# ranges use 1-based lines and 0-based columns.  \nGiven a single path to a `.sarif` file, fats will dump the regions from the sarif results.\n\n# Installation\n```shell\ndotnet tool install --global fats\n```\n\n# Usage\n```\nUSAGE: fats.exe [--help] [--nomarkup] [\u003cpaths\u003e...]\n\nPATHS:\n\n    \u003cpaths\u003e...            the ranges to dump\n\nOPTIONS:\n\n    --nomarkup            don't use console markup like bold or underline\n    --noprefix            don't dump line content before the range\n    --nopostfix           don't dump line content after the range\n    --help                display this list of options.\n```\n\nA single `path` argument consists of a file path followed by an optional colon and a range in parentheses.  \nTwo types of ranges are currently supported:\n- `(startLine-endLine)` - a range of lines\n- `(startLine,startColumn-endLine,endColumn)` - a range of characters  \n- `(line,column)` - a range of a single line  \n\nBetween start and end line/column numbers there can be a single dash or multiple dashes.  \nThe default output style is to print whole lines and to markup the exact range with an underline and a bold font. See the usage to control this.\n\nExamples:\n```shell\n\u003e fats \"./src/Fats/Program.fs:(1,0-1,4)\" \"./src/Fats/Program.fs:(3,0--4,0)\" \"./src/Fats/Program.fs:(5,0--5,10)\"\n```\n![Alt text](docs/images/markupoutput.png)\n\n\n\n```shell\n\u003e fats --nomarkup \"./src/Fats/Program.fs:(1,0-1,4)\" \"./src/Fats/Program.fs:(3,0--4,0)\" \"./src/Fats/Program.fs:(5,0--5,10)\"\nnamespace Fats\nmodule Model =\n\n    type Line =\n```\n\n```shell\n\u003e fats  --nomarkup \"./src/Fats/Program.fs(1-3)\" # lines 1 to 3\nnamespace Fats\n\nmodule Model =\n```\n\n```shell\n\u003e fats  --nomarkup \"./src/Fats/Program.fs:(1,3)\" # line containing the position\nnamespace Fats\n```\n\n```shell\n\u003e fats --nomarkup ./testbed.sarif\nGRA-STRING-002: The usage of String.StartsWith with a single string argument is discouraged. Signal your intention explicitly by calling an overload.\nC:/Users/schae/src/testbed/Library.fs(6,11)\n        if name.StartsWith(\"world\") then\n---\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdawedawe%2Ffats","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdawedawe%2Ffats","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdawedawe%2Ffats/lists"}