Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shougo/dpp.vim
Dark powered plugin manager for Vim/neovim
https://github.com/shougo/dpp.vim
dpp-vim neovim plugin-manager vim
Last synced: 6 days ago
JSON representation
Dark powered plugin manager for Vim/neovim
- Host: GitHub
- URL: https://github.com/shougo/dpp.vim
- Owner: Shougo
- License: mit
- Created: 2023-08-08T23:23:02.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-30T21:04:11.000Z (5 months ago)
- Last Synced: 2024-05-02T00:31:44.486Z (5 months ago)
- Topics: dpp-vim, neovim, plugin-manager, vim
- Language: TypeScript
- Homepage:
- Size: 230 KB
- Stars: 112
- Watchers: 5
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# dpp.vim
> Dark Powered Plugin manager for Vim/neovim
If you don't want to configure plugins, you don't have to use the plugin
manager. It does not work with zero configuration. You can use other plugin
managers.[![Doc](https://img.shields.io/badge/doc-%3Ah%20dpp-orange.svg)](doc/dpp.txt)
Please read [help](doc/dpp.txt) for details.
The development is supported by
[github sponsors](https://github.com/sponsors/Shougo/). Thank you!Note: If you want to know why I use Deno or what means "dark powered", please
see "FAQ" section in [help](doc/dpp.txt).- [Introduction](#introduction)
- [Install](#install)
- [Requirements](#requirements)
- [Config example](#config-example)
- [Extensions](#extensions)
- [Protocols](#protocols)## Introduction
## Install
**Note:** Dpp.vim requires Neovim (0.10.0+ and of course, **latest** is
recommended) or Vim 9.0.1276. See [requirements](#requirements) if you aren't
sure whether you have this.NOTE: To install plugins from remote, you need to install
[dpp-ext-installer](https://github.com/Shougo/dpp-ext-installer).### Requirements
Please install both Deno 1.45+ and "denops.vim" v7.0+.
-
-### Config example
Show Vim script configuration example using
"~/.cache/dpp" as the base path location.
```vim
" Ward off unexpected things that your distro might have made, as
" well as sanely reset options when re-sourcing .vimrc
set nocompatible" Set dpp base path (required)
const s:dpp_base = '~/.cache/dpp/'" Set dpp source path (required)
" NOTE: The plugins must be cloned before.
const s:dpp_src = '~/.cache/dpp/repos/github.com/Shougo/dpp.vim'
const s:denops_src = '~/.cache/dpp/repos/github.com/denops/denops.vim'
"const s:denops_installer =
"\ '~/.cache/dpp/repos/github.com/Shougo/dpp-ext-installer'" Set dpp runtime path (required)
execute 'set runtimepath^=' .. s:dpp_srcif s:dpp_base->dpp#min#load_state()
" NOTE: dpp#make_state() requires denops.vim
" NOTE: denops.vim and dpp plugins are must be added
execute 'set runtimepath^=' .. s:denops_src
"execute 'set runtimepath^=' .. s:denops_installerautocmd User DenopsReady
\ : echohl WarningMsg
\ | echomsg 'dpp load_state() is failed'
\ | echohl NONE
\ | call dpp#make_state(s:dpp_base, '{TypeScript config file path}')
endifautocmd User Dpp:makeStatePost
\ : echohl WarningMsg
\ | echomsg 'dpp make_state() is done'
\ | echohl NONE" Attempt to determine the type of a file based on its name and
" possibly its " contents. Use this to allow intelligent
" auto-indenting " for each filetype, and for plugins that are
" filetype specific.
filetype indent plugin on" Enable syntax highlighting
if has('syntax')
syntax on
endif
```
Show Lua configuration using "~/.cache/dpp" as the base
path location.
```lua
local dppSrc = "~/.cache/dpp/repos/github.com/Shougo/dpp.vim"
local denopsSrc = "~/.cache/dpp/repos/github.com/denops/denops.vim"
--local denopsInstaller =
-- "~/.cache/dpp/repos/github.com/Shougo/dpp-ext-installer"vim.opt.runtimepath:prepend(dppSrc)
local dpp = require("dpp")
local dppBase = "~/.cache/dpp"
if dpp.load_state(dppBase) then
vim.opt.runtimepath:prepend(denopsSrc)
--vim.opt.runtimepath:prepend(denopsInstaller)vim.api.nvim_create_autocmd("User", {
pattern = "DenopsReady",
callback = function()
vim.notify("dpp load_state() is failed")
dpp.make_state(dppBase, {TypeScript config file path})
end,
})
endvim.api.nvim_create_autocmd("User", {
pattern = "Dpp:makeStatePost",
callback = function()
vim.notify("dpp make_state() is done")
end,
})vim.cmd("filetype indent plugin on")
vim.cmd("syntax on")
```## Extensions
Extensions implement fancy features like other plugin managers.
-
-
-
-
You can find other extensions by
[the topic](https://github.com/topics/dpp-exts).## Protocols
Protocols implement VCS related features.
-
You can find other protocols by
[the topic](https://github.com/Shougo/dpp-protocols).