{"id":24314993,"url":"https://github.com/heraldofsolace/vimhelpbot","last_synced_at":"2025-06-22T11:05:40.294Z","repository":{"id":47243576,"uuid":"266559034","full_name":"heraldofsolace/VimHelpBot","owner":"heraldofsolace","description":"VimHelpBot is a bot that replies to r/vim and r/neovim comments with link to Vim Help page","archived":false,"fork":false,"pushed_at":"2024-11-27T15:50:45.000Z","size":2740,"stargazers_count":47,"open_issues_count":5,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-22T11:03:17.065Z","etag":null,"topics":["bot","praw","python3","reddit","vim"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/heraldofsolace.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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,"zenodo":null},"funding":{"github":["heraldofsolace"],"patreon":"heraldofsolace","open_collective":null,"ko_fi":"heraldofsolace","tidelift":null,"community_bridge":null,"liberapay":"heraldofsolace","issuehunt":null,"otechie":null,"custom":["https://paypal.me/the2ndeuler"]}},"created_at":"2020-05-24T14:33:34.000Z","updated_at":"2025-02-19T10:13:19.000Z","dependencies_parsed_at":"2024-06-01T03:23:57.321Z","dependency_job_id":"ea25f8b6-dfa6-4d40-a7e2-6eb38256f445","html_url":"https://github.com/heraldofsolace/VimHelpBot","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/heraldofsolace/VimHelpBot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heraldofsolace%2FVimHelpBot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heraldofsolace%2FVimHelpBot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heraldofsolace%2FVimHelpBot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heraldofsolace%2FVimHelpBot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/heraldofsolace","download_url":"https://codeload.github.com/heraldofsolace/VimHelpBot/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/heraldofsolace%2FVimHelpBot/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261282272,"owners_count":23134938,"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":["bot","praw","python3","reddit","vim"],"created_at":"2025-01-17T10:16:27.978Z","updated_at":"2025-06-22T11:05:35.284Z","avatar_url":"https://github.com/heraldofsolace.png","language":"Python","funding_links":["https://github.com/sponsors/heraldofsolace","https://patreon.com/heraldofsolace","https://ko-fi.com/heraldofsolace","https://liberapay.com/heraldofsolace","https://paypal.me/the2ndeuler","https://liberapay.com/heraldofsolace/donate","https://ko-fi.com/J3J53WCCI"],"categories":[],"sub_categories":[],"readme":"[![Build and Deploy to Google Compute Engine](https://github.com/heraldofsolace/VimHelpBot/actions/workflows/deploy.yaml/badge.svg)](https://github.com/heraldofsolace/VimHelpBot/actions/workflows/deploy.yaml)\n\nVimHelpBot is a cute little bot which lurks on [r/vim](https://reddit.com/r/vim) and [r/neovim](https://reddit.com/r/neovim) as [u/vim-help-bot](https://www.reddit.com/user/vim-help-bot). It looks for comments containing \":h help-topic\" and replies with a link to [Vim Help](https://vimhelp.org/).\n\n## How it works\n\nIt monitors all comments on r/vim r/neovim and uses two regex to extract the help topic. By default it looks for `:(h|he|hel|help) topic` within backticks and extracts `topic`. If it fails, it looks for `:h` and extracts until the first space after that.\n\nIt uses a tag database to figure out which helpfile `topic` belongs to and creates a link to vimhelp for that topic.\n\nIf an exact match is not found, it tries to follow Vim's algorithm. From `:h E149`:\n\n\n\u003e\t\t\tIf there is no full match for the pattern, or there\n\u003e\t\t\tare several matches, the \"best\" match will be used.\n\u003e\t\t\tA sophisticated algorithm is used to decide which\n\u003e\t\t\tmatch is better than another one.  These items are\n\u003e\t\t\tconsidered in the computation:\n\u003e\t\t\t- A match with same case is much better than a match\n\u003e\t\t\t  with different case.\n\u003e\t\t\t- A match that starts after a non-alphanumeric\n\u003e\t\t\t  character is better than a match in the middle of a\n\u003e\t\t\t  word.\n\u003e\t\t\t- A match at or near the beginning of the tag is\n\u003e\t\t\t  better than a match further on.\n\u003e\t\t\t- The more alphanumeric characters match, the better.\n\u003e\t\t\t- The shorter the length of the match, the better.\n\nIf no tag is found for a topic, it automatically creates a github issue.\n\n# Donate\n\nIf my program helped you, please consider donating -\n\n\u003ca href=\"https://liberapay.com/heraldofsolace/donate\"\u003e\u003cimg alt=\"Donate using Liberapay\" src=\"https://liberapay.com/assets/widgets/donate.svg\"\u003e\u003c/a\u003e\n\n[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/J3J53WCCI)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fheraldofsolace%2Fvimhelpbot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fheraldofsolace%2Fvimhelpbot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fheraldofsolace%2Fvimhelpbot/lists"}