{"id":31776682,"url":"https://github.com/abougouffa/dash-docs","last_synced_at":"2025-10-25T03:37:36.345Z","repository":{"id":299629934,"uuid":"1003629503","full_name":"abougouffa/dash-docs","owner":"abougouffa","description":"Clean and modern fork of https://github.com/dash-docs-el/dash-docs","archived":false,"fork":false,"pushed_at":"2025-06-28T20:44:57.000Z","size":5012,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-10-10T05:55:03.408Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Emacs Lisp","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/abougouffa.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-06-17T12:37:09.000Z","updated_at":"2025-08-28T04:33:47.000Z","dependencies_parsed_at":"2025-10-10T05:53:52.125Z","dependency_job_id":"8612d74a-436f-4fcf-8a34-322793f16ff3","html_url":"https://github.com/abougouffa/dash-docs","commit_stats":null,"previous_names":["abougouffa/dash-docs"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/abougouffa/dash-docs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abougouffa%2Fdash-docs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abougouffa%2Fdash-docs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abougouffa%2Fdash-docs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abougouffa%2Fdash-docs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/abougouffa","download_url":"https://codeload.github.com/abougouffa/dash-docs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abougouffa%2Fdash-docs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280901469,"owners_count":26410586,"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","status":"online","status_checked_at":"2025-10-25T02:00:06.499Z","response_time":81,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-10-10T05:53:46.764Z","updated_at":"2025-10-25T03:37:36.314Z","avatar_url":"https://github.com/abougouffa.png","language":"Emacs Lisp","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dash Docs\n\n## What's it\n\nThis package provides an elisp interface to query and show documenation using\n[Dash](http://www.kapeli.com/dash) docsets.\n\nIt doesn't require Dash app.\n\nThis package is a fork of\n[dash-docs-el/dash-docs](https://github.com/dash-docs-el/dash-docs). It provide\na cleaner and updated implementation.\n\n## Requirements\n\n- Emacs 29.1+ built with SQLite support\n\n## Installation\n\n```elisp\n;; Using builtin `package-vc`\n(package-vc-install \"https://github.com/abougouffa/dash-docs\")\n\n\n;; Using `straight`\n(use-package dash-docs\n  :straight (:host github :repo \"abougouffa/dash-docs\"))\n```\n\n## Installing docsets\n\n`dash-docs` uses the same docsets as [Dash](http://www.kapeli.com/dash). You can\ninstall them with `m-x dash-docs-install-docset` for the official docsets or\n`m-x dash-docs-install-extra-docset` for user contributed, automatically\ngenerated and cheat sheets docsets from\n[https://zealusercontributions.vercel.app](https://zealusercontributions.vercel.app).\n\nTo install a docset from a file in your drive you can use `m-x\ndash-docs-install-docset-from-file`. That function takes as input a `tgz` file\nthat you obtained, starting from a folder named `\u003cdocset name\u003e.docset`, with the\ncommand:\n\n`tar --exclude='.DS_Store' -cvzf \u003cdocset name\u003e.tgz \u003cdocset name\u003e.docset`\n\nAs explained [here](https://kapeli.com/docsets#dashdocsetfeed).\n\n## Usage\n\nSearch all currently enabled docsets (docsets in `dash-docs-docsets` or\n`dash-docs-common-docsets`):\n\n    (dash-docs-search \"\u003cpattern\u003e\")\n\nSearch a specific docset:\n\n    (dash-docs-search-docset \"\u003cdocset\u003e\" \"\u003cpattern\u003e\")\n\nThe command `dash-docs-reset-connections` will clear the connections\nto all sqlite db's. Use it in case of errors when adding new docsets.\nThe next call to a search function will recreate them.\n\n## Variables to customize\n\n`dash-docs-docsets-path` is the prefix for your docsets. Defaults to ~/.docsets\n\n`dash-docs-min-length` tells dash-docs from which length to start\nsearching. Defaults to 3.\n\n`dash-docs-browser-function` is a function to encapsulate the way to browse\nDash' docsets. Defaults to `browse-url`. For example, if you want to use `eww`\nto browse your docsets, you can do:\n\n```elisp\n(setq dash-docs-browser-function 'eww-browse-url)\n```\n\n## Sets of Docsets\n\n### Common docsets\n\n`dash-docs-common-docsets` is a list that should contain the docsets to be\nactive always. In all buffers.\n\n### Buffer local docsets\n\nDifferent subsets of docsets can be activated depending on the buffer. For the\nmoment (it may change in the future) we decided it's a plain local variable you\nshould setup for every different filetype. This way you can also do fancier\nthings like project-wise docsets sets.\n\n``` elisp\n(defun go-doc ()\n  (interactive)\n  (setq-local dash-docs-docsets '(\"Go\")))\n\n(add-hook 'go-mode-hook 'go-doc)\n```\n\nOr you can enable some docsets in the current buffer interactively using `M-x\ndash-docs-activate-docset-for-buffer`.\n\n### Only one docset\n\nTo narrow the search to just one docset, type its name in the beginning of the\nsearch followed by a space. If the docset contains spaces, no problemo, we\nhandle it :D.\n\n### use-package integration\n\nIf you use `use-package`, a `:dash` keyboard will be added to configure the\n`dash-docs-docsets` variable. For example to register the CMake Dash\ndocumentation with `cmake-mode`:\n\n``` elisp\n(use-package cmake-mode\n  :dash \"CMake\")\n```\n\nYou can also register multiple docsets:\n``` elisp\n(use-package cmake-mode\n  :dash \"CMake\" \"Foobar\")\n```\n\nBy default, `dash-docs` will link the docset to the package name mode hook, you\ncan explicitly set the mode if it is different from the package name:\n\n``` elisp\n(use-package my-package\n  :dash (my-mode \"Docset1\" \"Docset2\"))\n```\n\nAnd you can register to multiple modes:\n\n``` elisp\n(use-package my-package\n  :dash (my-mode \"Docset1\" \"Docset2\")\n        (my-other-mode \"Docset3\"))\n```\n\nThe way it works is by registering a hook to the given mode (`\u003cmode-name\u003e-hook`)\nand setting up `dash-docs-docsets` local variable in that hook.\n\n## Authors\n\n- Toni Reina \u003careina0@gmail.com\u003e\n- Raimon Grau \u003craimonster@gmail.com\u003e\n- Abdelhak Bougouffa\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabougouffa%2Fdash-docs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabougouffa%2Fdash-docs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabougouffa%2Fdash-docs/lists"}