{"id":13682400,"url":"https://github.com/nvimdev/dope","last_synced_at":"2025-04-05T20:07:52.476Z","repository":{"id":41462991,"uuid":"509688354","full_name":"nvimdev/dope","owner":"nvimdev","description":" a modern structure neovim config template write in lua","archived":false,"fork":false,"pushed_at":"2023-09-12T20:53:44.000Z","size":81,"stargazers_count":369,"open_issues_count":4,"forks_count":17,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-03-29T19:05:20.463Z","etag":null,"topics":["lua","neovim","neovim-config","neovim-configuration","neovim-plugin"],"latest_commit_sha":null,"homepage":"","language":"Lua","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/nvimdev.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},"funding":{"github":"glepnir","custom":["https://www.paypal.me/bobbyhub"]}},"created_at":"2022-07-02T07:24:55.000Z","updated_at":"2025-02-22T02:36:57.000Z","dependencies_parsed_at":"2024-01-14T16:07:27.621Z","dependency_job_id":"40c4e989-2b1e-4bd9-871f-1f8781aada27","html_url":"https://github.com/nvimdev/dope","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nvimdev%2Fdope","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nvimdev%2Fdope/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nvimdev%2Fdope/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nvimdev%2Fdope/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nvimdev","download_url":"https://codeload.github.com/nvimdev/dope/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247393570,"owners_count":20931812,"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":["lua","neovim","neovim-config","neovim-configuration","neovim-plugin"],"created_at":"2024-08-02T13:01:45.539Z","updated_at":"2025-04-05T20:07:52.443Z","avatar_url":"https://github.com/nvimdev.png","language":"Lua","readme":"\u003ch1 align=\"center\"\u003e\n  \u003cimg\n    src=\"https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/misc/transparent.png\"\n    height=\"30\"\n    width=\"0px\"\n  /\u003e\n  dope\n  \u003cimg\n    src=\"https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/misc/transparent.png\"\n    height=\"30\"\n    width=\"0px\"\n  /\u003e\n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/glepnir/dope/stargazers\"\u003e\n    \u003cimg\n      alt=\"Stargazers\"\n      src=\"https://img.shields.io/github/stars/glepnir/dope?style=for-the-badge\u0026logo=starship\u0026color=c678dd\u0026logoColor=d9e0ee\u0026labelColor=282a36\"\n    /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/glepnir/dope/issues\"\u003e\n    \u003cimg\n      alt=\"Issues\"\n      src=\"https://img.shields.io/github/issues/glepnir/dope?style=for-the-badge\u0026logo=gitbook\u0026color=f0c062\u0026logoColor=d9e0ee\u0026labelColor=282a36\"\n    /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/glepnir/dope/contributors\"\u003e\n    \u003cimg\n      alt=\"Contributors\"\n      src=\"https://img.shields.io/github/contributors/glepnir/dope?style=for-the-badge\u0026logo=opensourceinitiative\u0026color=abcf84\u0026logoColor=d9e0ee\u0026labelColor=282a36\"\n    /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://user-images.githubusercontent.com/41671631/176990490-aeb6111b-41ea-4767-bc03-c0aee4774a4e.png\"\n  height = \"40%\"\n  width = \"40%\"\n  /\u003e\n\u003c/p\u003e\n\n## What is dope\n\nMany people are interested in my [personal configuration](https://github.com/glepnir/nvim). So I created dope.\n\nWhat does dope do? dope wants vimers to have their own config with high performance\n\nfast speed and modernity.\n\n## Structure\n\n```\n├── init.lua\n├── lua\n│   ├── core\n│   │   ├── cli.lua\n│   │   ├── helper.lua\n│   │   ├── init.lua\n│   │   ├── keymap.lua\n│   │   ├── options.lua\n│   │   └── pack.lua\n│   ├── keymap\n│   │   ├── config.lua\n│   │   └── init.lua\n│   └── modules\n│       ├── completion\n│       │   ├── config.lua\n│       │   └── package.lua\n│       ├── editor\n│       │   ├── config.lua\n│       │   └── package.lua\n│       ├── tools\n│       │   ├── config.lua\n│       │   └── package.lua\n│       └── ui\n│           ├── config.lua\n│           └── package.lua\n├── snippets\n│   ├── lua.json\n│   ├── lua.lua\n│   └── package.json\n```\n\n- `core` heart of dope it include the api of dope\n- `modlues` plugin module and config in this folder\n- `snippets` vscode snippets json file\n\n## Usage\n\n- Click button `Use this template` It will generate a new repo based on dope on your GitHub\n\n### Cli tool\n\n`bin/dope` is a cli tool for dope config. run `./bin/dope help` check more detail\n\nyou can use `/bin/dope debug ui,editor` for debug modues. when you get trouble\nthis is useful for your debug, this command mean disable `ui editor` modules.Then\nthe plugins in `ui,editor` modules not load.\n\n## How to install plugins\n\ndope use [lazy.nvim](https://github.com/folk/lazy.nvim) as package management plugin. register a plugin in `package.lua` by using dope api `require('core.pack').package`. more usage check the\nlazy.nvim doc and you can some examples in package.lua file.\n\n### How to create module\n\ncreate a fold inside `modlues` folder and `package.lua` file you must created inside your module.\ndope will auto read this file at startup.\n\n\n### How to config keymap\n\nIn dope there are some apis that make it easy to set keymap. All apis are defined in `core/keymap.lua`.\n\n```lua\nkeymap.(n/i/c/v/x/t)map -- function to generate keymap by vim.keymap.set\nkeymap.new_opts -- generate opts into vim.keymap.set\n-- function type that work with keymap.new_opts\nkeymap.silent keymap.noremap keymap.expr keymap.nowait keymap.remap\nkeymap.cmd -- just return string with \u003cCmd\u003e and \u003cCR\u003e\nkeymap.cu -- work like cmd but for visual map\n```\n\nUse these apis to config your keymap in `keymap` folder. In this folder `keymap/init.lua` is necessary but if you\n\nhave many vim mode remap you can config them in `keymap/other-file.lua` in dope is `config.lua` just an\n\nexample file. Then config plugins keymap in `keymap/init.lua`. the example of api usage\n\n```lua\n-- generate keymap in noremal mode\nnmap {\n  -- packer\n  {'\u003cLeader\u003epu',cmd('Lazy update'),opts(noremap,silent,'Lazy update')},\n   {\"\u003cC-h\u003e\",'\u003cC-w\u003eh',opts(noremap)},\n  \n}\n\nalso you can pass a table not include sub table to `map` like\n\n```lua\nnmap {'key','rhs',opts(noremap,silent)}\n```\n\nuse `:h vim.keymap.set` to know more about.\n\n## Tips\n\n- Improve key repeat\n\n```\nmac os need restart\ndefaults write NSGlobalDomain KeyRepeat -int 1\ndefaults write NSGlobalDomain InitialKeyRepeat -int 10\n\nlinux\nxset r rate 210 40\n```\n\n## Donate\n\n[![](https://img.shields.io/badge/PayPal-00457C?style=for-the-badge\u0026logo=paypal\u0026logoColor=white)](https://paypal.me/bobbyhub)\n\nIf you'd like to support my work financially, buy me a drink through [paypal](https://paypal.me/bobbyhub)\n\n## License MIT\n","funding_links":["https://github.com/sponsors/glepnir","https://www.paypal.me/bobbyhub","https://paypal.me/bobbyhub"],"categories":["Lua"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnvimdev%2Fdope","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnvimdev%2Fdope","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnvimdev%2Fdope/lists"}