Compare commits
6 Commits
e33d2e37c9
...
94dc8003aa
Author | SHA1 | Date | |
---|---|---|---|
94dc8003aa | |||
f403f785d3 | |||
bc3a467ade | |||
6d723f0bbd | |||
d5c8c44038 | |||
22ba863608 |
1
.chezmoiroot
Normal file
1
.chezmoiroot
Normal file
@ -0,0 +1 @@
|
|||||||
|
src
|
147
.gitmodules
vendored
147
.gitmodules
vendored
@ -1,11 +1,11 @@
|
|||||||
################
|
################
|
||||||
# note-taking setup
|
# note-taking setup
|
||||||
################
|
################
|
||||||
[submodule "src/.local/bin/pyinstantref"]
|
[submodule "src/dot_local/bin/external_pyinstantref"]
|
||||||
path = src/.local/bin/pyinstantref
|
path = src/dot_local/bin/external_pyinstantref
|
||||||
url = https://github.com/dogeystamp/pyinstantref
|
url = https://github.com/dogeystamp/pyinstantref
|
||||||
[submodule "src/.local/bin/inkscape-shortcut-manager"]
|
[submodule "src/dot_local/bin/external_inkscape-shortcut-manager"]
|
||||||
path = src/.local/bin/inkscape-shortcut-manager
|
path = src/dot_local/bin/external_inkscape-shortcut-manager
|
||||||
url = https://github.com/dogeystamp/inkscape-shortcut-manager
|
url = https://github.com/dogeystamp/inkscape-shortcut-manager
|
||||||
|
|
||||||
|
|
||||||
@ -16,88 +16,151 @@
|
|||||||
|
|
||||||
# prompts
|
# prompts
|
||||||
# telescope.vim
|
# telescope.vim
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/telescope.nvim"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_telescope.nvim"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/telescope.nvim
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_telescope.nvim
|
||||||
url = https://github.com/nvim-telescope/telescope.nvim.git
|
url = https://github.com/nvim-telescope/telescope.nvim.git
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/plenary.nvim"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_plenary.nvim"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/plenary.nvim
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_plenary.nvim
|
||||||
url = https://github.com/nvim-lua/plenary.nvim.git
|
url = https://github.com/nvim-lua/plenary.nvim.git
|
||||||
|
|
||||||
# git symbols in the gutter
|
# git symbols in the gutter
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/vim-gitgutter"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_vim-gitgutter"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/vim-gitgutter
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_vim-gitgutter
|
||||||
url = https://github.com/airblade/vim-gitgutter.git
|
url = https://github.com/airblade/vim-gitgutter.git
|
||||||
|
|
||||||
# auto close brackets and quotes
|
# auto close brackets and quotes
|
||||||
# coding.vim
|
# coding.vim
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/auto-pairs"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_auto-pairs"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/auto-pairs
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_auto-pairs
|
||||||
url = https://github.com/jiangmiao/auto-pairs
|
url = https://github.com/jiangmiao/auto-pairs
|
||||||
|
|
||||||
# language smarts
|
# language smarts
|
||||||
# coding.lua
|
# coding.lua
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/nvim-lspconfig"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-lspconfig"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/nvim-lspconfig
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-lspconfig
|
||||||
url = https://github.com/neovim/nvim-lspconfig.git
|
url = https://github.com/neovim/nvim-lspconfig.git
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/nvim-cmp"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-cmp"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/nvim-cmp
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-cmp
|
||||||
url = https://github.com/hrsh7th/nvim-cmp.git
|
url = https://github.com/hrsh7th/nvim-cmp.git
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/cmp-nvim-lsp"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_cmp-nvim-lsp"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/cmp-nvim-lsp
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_cmp-nvim-lsp
|
||||||
url = https://github.com/hrsh7th/cmp-nvim-lsp.git
|
url = https://github.com/hrsh7th/cmp-nvim-lsp.git
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/nvim-treesitter"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-treesitter"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/nvim-treesitter
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-treesitter
|
||||||
url = https://github.com/nvim-treesitter/nvim-treesitter.git
|
url = https://github.com/nvim-treesitter/nvim-treesitter.git
|
||||||
# intelligent motions based on treesitter
|
# intelligent motions based on treesitter
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/nvim-treesitter-textobjects"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-treesitter-textobjects"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/nvim-treesitter-textobjects
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-treesitter-textobjects
|
||||||
url = https://github.com/nvim-treesitter/nvim-treesitter-textobjects
|
url = https://github.com/nvim-treesitter/nvim-treesitter-textobjects
|
||||||
|
|
||||||
# error/warning/info box
|
# error/warning/info box
|
||||||
# coding.lua
|
# coding.lua
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/trouble.nvim"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_trouble.nvim"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/trouble.nvim
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_trouble.nvim
|
||||||
url = https://github.com/folke/trouble.nvim
|
url = https://github.com/folke/trouble.nvim
|
||||||
|
|
||||||
# aesthetic changes
|
# aesthetic changes
|
||||||
# init.lua
|
# init.lua
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/dressing.nvim"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_dressing.nvim"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/dressing.nvim
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_dressing.nvim
|
||||||
url = https://github.com/stevearc/dressing.nvim.git
|
url = https://github.com/stevearc/dressing.nvim.git
|
||||||
|
|
||||||
# plain-text-accounting ledger ftplugin
|
# plain-text-accounting ledger ftplugin
|
||||||
# ftplugin/ledger.vim
|
# ftplugin/ledger.vim
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/vim-ledger"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_vim-ledger"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/start/vim-ledger
|
path = src/dot_local/share/nvim/site/pack/3pp/start/external_vim-ledger
|
||||||
url = https://github.com/ledger/vim-ledger.git
|
url = https://github.com/ledger/vim-ledger.git
|
||||||
|
|
||||||
# color theme
|
# color theme
|
||||||
# init.lua
|
# init.lua
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/nvim-noirbuddy"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-noirbuddy"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/nvim-noirbuddy
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-noirbuddy
|
||||||
url = https://github.com/jesseleite/nvim-noirbuddy.git
|
url = https://github.com/jesseleite/nvim-noirbuddy.git
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/colorbuddy.nvim"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_colorbuddy.nvim"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/colorbuddy.nvim
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_colorbuddy.nvim
|
||||||
url = https://github.com/tjdevries/colorbuddy.nvim.git
|
url = https://github.com/tjdevries/colorbuddy.nvim.git
|
||||||
|
|
||||||
# debug adapter protocol
|
# debug adapter protocol
|
||||||
# debugging.lua
|
# debugging.lua
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/nvim-dap"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-dap"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/nvim-dap
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-dap
|
||||||
url = https://github.com/mfussenegger/nvim-dap.git
|
url = https://github.com/mfussenegger/nvim-dap.git
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/nvim-dap-ui"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-dap-ui"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/nvim-dap-ui
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-dap-ui
|
||||||
url = https://github.com/rcarriga/nvim-dap-ui.git
|
url = https://github.com/rcarriga/nvim-dap-ui.git
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/nvim-nio"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-nio"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/nvim-nio
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-nio
|
||||||
url = https://github.com/nvim-neotest/nvim-nio
|
url = https://github.com/nvim-neotest/nvim-nio
|
||||||
|
|
||||||
# snippet support
|
# snippet support
|
||||||
# snippets.lua
|
# snippets.lua
|
||||||
# (also coding.lua becuase nvim-cmp uses this too)
|
# (also coding.lua becuase nvim-cmp uses this too)
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/LuaSnip"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_LuaSnip"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/LuaSnip
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_LuaSnip
|
||||||
url = https://github.com/L3MON4D3/LuaSnip
|
url = https://github.com/L3MON4D3/LuaSnip
|
||||||
[submodule "src/.local/share/nvim/site/pack/3pp/start/cmp_luasnip"]
|
[submodule "src/dot_local/share/nvim/site/pack/3pp/start/external_cmp_luasnip"]
|
||||||
path = src/.local/share/nvim/site/pack/3pp/opt/cmp_luasnip
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_cmp_luasnip
|
||||||
|
url = https://github.com/saadparwaiz1/cmp_luasnip
|
||||||
|
[submodule "submodule.src/dot_local/bin/external_pyinstantref.path"]
|
||||||
|
path = src/dot_local/bin/external_pyinstantref
|
||||||
|
url = https://github.com/dogeystamp/pyinstantref
|
||||||
|
[submodule "submodule.src/dot_local/bin/external_inkscape-shortcut-manager.path"]
|
||||||
|
path = src/dot_local/bin/external_inkscape-shortcut-manager
|
||||||
|
url = https://github.com/dogeystamp/inkscape-shortcut-manager
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_telescope.nvim.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_telescope.nvim
|
||||||
|
url = https://github.com/nvim-telescope/telescope.nvim.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_plenary.nvim.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_plenary.nvim
|
||||||
|
url = https://github.com/nvim-lua/plenary.nvim.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_vim-gitgutter.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_vim-gitgutter
|
||||||
|
url = https://github.com/airblade/vim-gitgutter.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_auto-pairs.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_auto-pairs
|
||||||
|
url = https://github.com/jiangmiao/auto-pairs
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-lspconfig.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-lspconfig
|
||||||
|
url = https://github.com/neovim/nvim-lspconfig.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-cmp.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-cmp
|
||||||
|
url = https://github.com/hrsh7th/nvim-cmp.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_cmp-nvim-lsp.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_cmp-nvim-lsp
|
||||||
|
url = https://github.com/hrsh7th/cmp-nvim-lsp.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-treesitter.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-treesitter
|
||||||
|
url = https://github.com/nvim-treesitter/nvim-treesitter.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-treesitter-textobjects.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-treesitter-textobjects
|
||||||
|
url = https://github.com/nvim-treesitter/nvim-treesitter-textobjects
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_trouble.nvim.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_trouble.nvim
|
||||||
|
url = https://github.com/folke/trouble.nvim
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_dressing.nvim.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_dressing.nvim
|
||||||
|
url = https://github.com/stevearc/dressing.nvim.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_vim-ledger.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/start/external_vim-ledger
|
||||||
|
url = https://github.com/ledger/vim-ledger.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-noirbuddy.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-noirbuddy
|
||||||
|
url = https://github.com/jesseleite/nvim-noirbuddy.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_colorbuddy.nvim.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_colorbuddy.nvim
|
||||||
|
url = https://github.com/tjdevries/colorbuddy.nvim.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-dap.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-dap
|
||||||
|
url = https://github.com/mfussenegger/nvim-dap.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-dap-ui.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-dap-ui
|
||||||
|
url = https://github.com/rcarriga/nvim-dap-ui.git
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_nvim-nio.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_nvim-nio
|
||||||
|
url = https://github.com/nvim-neotest/nvim-nio
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_LuaSnip.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_LuaSnip
|
||||||
|
url = https://github.com/L3MON4D3/LuaSnip
|
||||||
|
[submodule "submodule.src/dot_local/share/nvim/site/pack/3pp/start/external_cmp_luasnip.path"]
|
||||||
|
path = src/dot_local/share/nvim/site/pack/3pp/opt/external_cmp_luasnip
|
||||||
url = https://github.com/saadparwaiz1/cmp_luasnip
|
url = https://github.com/saadparwaiz1/cmp_luasnip
|
||||||
|
18
README.md
18
README.md
@ -4,17 +4,19 @@ My dotfiles.
|
|||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
Clone with submodules (this is necessary for Neovim plugins):
|
Install [chezmoi](https://chezmoi.io):
|
||||||
|
|
||||||
```bash
|
```
|
||||||
git clone --recurse-submodules https://github.com/dogeystamp/dots.git
|
# pacman -S chezmoi
|
||||||
# alternatively, after cloning:
|
|
||||||
git submodule init
|
|
||||||
git submodule update
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Symlink all the files in src/ to your home directory using the provided dotinstall.sh script, or manually.
|
Clone then apply these dotfiles:
|
||||||
Otherwise, copy them manually to your home directory.
|
|
||||||
|
```
|
||||||
|
chezmoi init dogeystamp/dotfiles --apply
|
||||||
|
```
|
||||||
|
|
||||||
|
Currently, a legacy `dotinstall.sh` is also available that installs the dotfiles as symlinks.
|
||||||
|
|
||||||
After, install some packages. A list is provided in the `programs` file.
|
After, install some packages. A list is provided in the `programs` file.
|
||||||
This list encompasses all packages needed for a full system, including utilities and games.
|
This list encompasses all packages needed for a full system, including utilities and games.
|
||||||
|
1
programs
1
programs
@ -2,6 +2,7 @@
|
|||||||
# essentials
|
# essentials
|
||||||
#
|
#
|
||||||
ttf-jetbrains-mono
|
ttf-jetbrains-mono
|
||||||
|
ttf-jetbrains-mono-nerd
|
||||||
wqy-microhei
|
wqy-microhei
|
||||||
ttf-roboto
|
ttf-roboto
|
||||||
inter-font
|
inter-font
|
||||||
|
1
src/.chezmoiremove
Normal file
1
src/.chezmoiremove
Normal file
@ -0,0 +1 @@
|
|||||||
|
.bashrc
|
@ -1,275 +0,0 @@
|
|||||||
-- youtube-quality.lua
|
|
||||||
--
|
|
||||||
-- Change youtube video quality on the fly.
|
|
||||||
--
|
|
||||||
-- Diplays a menu that lets you switch to different ytdl-format settings while
|
|
||||||
-- you're in the middle of a video (just like you were using the web player).
|
|
||||||
--
|
|
||||||
-- Bound to ctrl-f by default.
|
|
||||||
|
|
||||||
local mp = require 'mp'
|
|
||||||
local utils = require 'mp.utils'
|
|
||||||
local msg = require 'mp.msg'
|
|
||||||
local assdraw = require 'mp.assdraw'
|
|
||||||
|
|
||||||
local opts = {
|
|
||||||
--key bindings
|
|
||||||
toggle_menu_binding = "ctrl+f",
|
|
||||||
up_binding = "UP",
|
|
||||||
down_binding = "DOWN",
|
|
||||||
select_binding = "ENTER",
|
|
||||||
|
|
||||||
--formatting / cursors
|
|
||||||
selected_and_active = "▶ - ",
|
|
||||||
selected_and_inactive = "● - ",
|
|
||||||
unselected_and_active = "▷ - ",
|
|
||||||
unselected_and_inactive = "○ - ",
|
|
||||||
|
|
||||||
--font size scales by window, if false requires larger font and padding sizes
|
|
||||||
scale_playlist_by_window=false,
|
|
||||||
|
|
||||||
--playlist ass style overrides inside curly brackets, \keyvalue is one field, extra \ for escape in lua
|
|
||||||
--example {\\fnUbuntu\\fs10\\b0\\bord1} equals: font=Ubuntu, size=10, bold=no, border=1
|
|
||||||
--read http://docs.aegisub.org/3.2/ASS_Tags/ for reference of tags
|
|
||||||
--undeclared tags will use default osd settings
|
|
||||||
--these styles will be used for the whole playlist. More specific styling will need to be hacked in
|
|
||||||
--
|
|
||||||
--(a monospaced font is recommended but not required)
|
|
||||||
style_ass_tags = "{\\fnmonospace}",
|
|
||||||
|
|
||||||
--paddings for top left corner
|
|
||||||
text_padding_x = 5,
|
|
||||||
text_padding_y = 5,
|
|
||||||
|
|
||||||
--other
|
|
||||||
menu_timeout = 10,
|
|
||||||
|
|
||||||
--use youtube-dl to fetch a list of available formats (overrides quality_strings)
|
|
||||||
fetch_formats = true,
|
|
||||||
|
|
||||||
--default menu entries
|
|
||||||
quality_strings=[[
|
|
||||||
[
|
|
||||||
{"4320p" : "bestvideo[height<=?4320p]+bestaudio/best"},
|
|
||||||
{"2160p" : "bestvideo[height<=?2160]+bestaudio/best"},
|
|
||||||
{"1440p" : "bestvideo[height<=?1440]+bestaudio/best"},
|
|
||||||
{"1080p" : "bestvideo[height<=?1080]+bestaudio/best"},
|
|
||||||
{"720p" : "bestvideo[height<=?720]+bestaudio/best"},
|
|
||||||
{"480p" : "bestvideo[height<=?480]+bestaudio/best"},
|
|
||||||
{"360p" : "bestvideo[height<=?360]+bestaudio/best"},
|
|
||||||
{"240p" : "bestvideo[height<=?240]+bestaudio/best"},
|
|
||||||
{"144p" : "bestvideo[height<=?144]+bestaudio/best"}
|
|
||||||
]
|
|
||||||
]],
|
|
||||||
}
|
|
||||||
(require 'mp.options').read_options(opts, "youtube-quality")
|
|
||||||
opts.quality_strings = utils.parse_json(opts.quality_strings)
|
|
||||||
|
|
||||||
local destroyer = nil
|
|
||||||
|
|
||||||
|
|
||||||
function show_menu()
|
|
||||||
local selected = 1
|
|
||||||
local active = 0
|
|
||||||
local current_ytdl_format = mp.get_property("ytdl-format")
|
|
||||||
msg.verbose("current ytdl-format: "..current_ytdl_format)
|
|
||||||
local num_options = 0
|
|
||||||
local options = {}
|
|
||||||
|
|
||||||
|
|
||||||
if opts.fetch_formats then
|
|
||||||
options, num_options = download_formats()
|
|
||||||
end
|
|
||||||
|
|
||||||
if next(options) == nil then
|
|
||||||
for i,v in ipairs(opts.quality_strings) do
|
|
||||||
num_options = num_options + 1
|
|
||||||
for k,v2 in pairs(v) do
|
|
||||||
options[i] = {label = k, format=v2}
|
|
||||||
if v2 == current_ytdl_format then
|
|
||||||
active = i
|
|
||||||
selected = active
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
--set the cursor to the currently format
|
|
||||||
for i,v in ipairs(options) do
|
|
||||||
if v.format == current_ytdl_format then
|
|
||||||
active = i
|
|
||||||
selected = active
|
|
||||||
break
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
function selected_move(amt)
|
|
||||||
selected = selected + amt
|
|
||||||
if selected < 1 then selected = num_options
|
|
||||||
elseif selected > num_options then selected = 1 end
|
|
||||||
timeout:kill()
|
|
||||||
timeout:resume()
|
|
||||||
draw_menu()
|
|
||||||
end
|
|
||||||
function choose_prefix(i)
|
|
||||||
if i == selected and i == active then return opts.selected_and_active
|
|
||||||
elseif i == selected then return opts.selected_and_inactive end
|
|
||||||
|
|
||||||
if i ~= selected and i == active then return opts.unselected_and_active
|
|
||||||
elseif i ~= selected then return opts.unselected_and_inactive end
|
|
||||||
return "> " --shouldn't get here.
|
|
||||||
end
|
|
||||||
|
|
||||||
function draw_menu()
|
|
||||||
local ass = assdraw.ass_new()
|
|
||||||
|
|
||||||
ass:pos(opts.text_padding_x, opts.text_padding_y)
|
|
||||||
ass:append(opts.style_ass_tags)
|
|
||||||
|
|
||||||
for i,v in ipairs(options) do
|
|
||||||
ass:append(choose_prefix(i)..v.label.."\\N")
|
|
||||||
end
|
|
||||||
|
|
||||||
local w, h = mp.get_osd_size()
|
|
||||||
if opts.scale_playlist_by_window then w,h = 0, 0 end
|
|
||||||
mp.set_osd_ass(w, h, ass.text)
|
|
||||||
end
|
|
||||||
|
|
||||||
function destroy()
|
|
||||||
timeout:kill()
|
|
||||||
mp.set_osd_ass(0,0,"")
|
|
||||||
mp.remove_key_binding("move_up")
|
|
||||||
mp.remove_key_binding("move_down")
|
|
||||||
mp.remove_key_binding("select")
|
|
||||||
mp.remove_key_binding("escape")
|
|
||||||
destroyer = nil
|
|
||||||
end
|
|
||||||
timeout = mp.add_periodic_timer(opts.menu_timeout, destroy)
|
|
||||||
destroyer = destroy
|
|
||||||
|
|
||||||
mp.add_forced_key_binding(opts.up_binding, "move_up", function() selected_move(-1) end, {repeatable=true})
|
|
||||||
mp.add_forced_key_binding(opts.down_binding, "move_down", function() selected_move(1) end, {repeatable=true})
|
|
||||||
mp.add_forced_key_binding(opts.select_binding, "select", function()
|
|
||||||
destroy()
|
|
||||||
mp.set_property("ytdl-format", options[selected].format)
|
|
||||||
reload_resume()
|
|
||||||
end)
|
|
||||||
mp.add_forced_key_binding(opts.toggle_menu_binding, "escape", destroy)
|
|
||||||
|
|
||||||
draw_menu()
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
local ytdl = {
|
|
||||||
path = "youtube-dl",
|
|
||||||
searched = false,
|
|
||||||
blacklisted = {}
|
|
||||||
}
|
|
||||||
|
|
||||||
format_cache={}
|
|
||||||
function download_formats()
|
|
||||||
local function exec(args)
|
|
||||||
local ret = utils.subprocess({args = args})
|
|
||||||
return ret.status, ret.stdout, ret
|
|
||||||
end
|
|
||||||
|
|
||||||
local function table_size(t)
|
|
||||||
s = 0
|
|
||||||
for i,v in ipairs(t) do
|
|
||||||
s = s+1
|
|
||||||
end
|
|
||||||
return s
|
|
||||||
end
|
|
||||||
|
|
||||||
local url = mp.get_property("path")
|
|
||||||
|
|
||||||
url = string.gsub(url, "ytdl://", "") -- Strip possible ytdl:// prefix.
|
|
||||||
|
|
||||||
-- don't fetch the format list if we already have it
|
|
||||||
if format_cache[url] ~= nil then
|
|
||||||
local res = format_cache[url]
|
|
||||||
return res, table_size(res)
|
|
||||||
end
|
|
||||||
mp.osd_message("fetching available formats with youtube-dl...", 60)
|
|
||||||
|
|
||||||
if not (ytdl.searched) then
|
|
||||||
local ytdl_mcd = mp.find_config_file("youtube-dl")
|
|
||||||
if not (ytdl_mcd == nil) then
|
|
||||||
msg.verbose("found youtube-dl at: " .. ytdl_mcd)
|
|
||||||
ytdl.path = ytdl_mcd
|
|
||||||
end
|
|
||||||
ytdl.searched = true
|
|
||||||
end
|
|
||||||
|
|
||||||
local command = {ytdl.path, "--no-warnings", "--no-playlist", "-J"}
|
|
||||||
table.insert(command, url)
|
|
||||||
local es, json, result = exec(command)
|
|
||||||
|
|
||||||
if (es < 0) or (json == nil) or (json == "") then
|
|
||||||
mp.osd_message("fetching formats failed...", 1)
|
|
||||||
msg.error("failed to get format list: " .. err)
|
|
||||||
return {}, 0
|
|
||||||
end
|
|
||||||
|
|
||||||
local json, err = utils.parse_json(json)
|
|
||||||
|
|
||||||
if (json == nil) then
|
|
||||||
mp.osd_message("fetching formats failed...", 1)
|
|
||||||
msg.error("failed to parse JSON data: " .. err)
|
|
||||||
return {}, 0
|
|
||||||
end
|
|
||||||
|
|
||||||
res = {}
|
|
||||||
msg.verbose("youtube-dl succeeded!")
|
|
||||||
for i,v in ipairs(json.formats) do
|
|
||||||
if v.vcodec ~= "none" then
|
|
||||||
local fps = v.fps and v.fps.."fps" or ""
|
|
||||||
local resolution = string.format("%sx%s", v.width, v.height)
|
|
||||||
local l = string.format("%-9s %-5s (%-4s / %s)", resolution, fps, v.ext, v.vcodec)
|
|
||||||
local f = string.format("%s+bestaudio/best", v.format_id)
|
|
||||||
table.insert(res, {label=l, format=f, width=v.width })
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
table.sort(res, function(a, b) return a.width > b.width end)
|
|
||||||
|
|
||||||
mp.osd_message("", 0)
|
|
||||||
format_cache[url] = res
|
|
||||||
return res, table_size(res)
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
-- register script message to show menu
|
|
||||||
mp.register_script_message("toggle-quality-menu",
|
|
||||||
function()
|
|
||||||
if destroyer ~= nil then
|
|
||||||
destroyer()
|
|
||||||
else
|
|
||||||
show_menu()
|
|
||||||
end
|
|
||||||
end)
|
|
||||||
|
|
||||||
-- keybind to launch menu
|
|
||||||
mp.add_key_binding(opts.toggle_menu_binding, "quality-menu", show_menu)
|
|
||||||
|
|
||||||
-- special thanks to reload.lua (https://github.com/4e6/mpv-reload/)
|
|
||||||
function reload_resume()
|
|
||||||
local playlist_pos = mp.get_property_number("playlist-pos")
|
|
||||||
local reload_duration = mp.get_property_native("duration")
|
|
||||||
local time_pos = mp.get_property("time-pos")
|
|
||||||
|
|
||||||
mp.set_property_number("playlist-pos", playlist_pos)
|
|
||||||
|
|
||||||
-- Tries to determine live stream vs. pre-recordered VOD. VOD has non-zero
|
|
||||||
-- duration property. When reloading VOD, to keep the current time position
|
|
||||||
-- we should provide offset from the start. Stream doesn't have fixed start.
|
|
||||||
-- Decent choice would be to reload stream from it's current 'live' positon.
|
|
||||||
-- That's the reason we don't pass the offset when reloading streams.
|
|
||||||
if reload_duration and reload_duration > 0 then
|
|
||||||
local function seeker()
|
|
||||||
mp.commandv("seek", time_pos, "absolute")
|
|
||||||
mp.unregister_event(seeker)
|
|
||||||
end
|
|
||||||
mp.register_event("file-loaded", seeker)
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,11 +0,0 @@
|
|||||||
account mail
|
|
||||||
host disroot.org
|
|
||||||
port 587
|
|
||||||
protocol smtp
|
|
||||||
auth on
|
|
||||||
user dogeystamp@disroot.org
|
|
||||||
from dogeystamp@disroot.org
|
|
||||||
tls on
|
|
||||||
tls_starttls on
|
|
||||||
tls_trust_file /etc/ssl/certs/ca-certificates.crt
|
|
||||||
passwordeval "pass msg/mail/dogeystamp@disroot.org"
|
|
@ -1,40 +0,0 @@
|
|||||||
def_key "t"
|
|
||||||
find
|
|
||||||
def_key "t"
|
|
||||||
find_item_forward
|
|
||||||
|
|
||||||
def_key "+"
|
|
||||||
show_clock
|
|
||||||
def_key "="
|
|
||||||
volume_up
|
|
||||||
|
|
||||||
def_key "j"
|
|
||||||
scroll_down
|
|
||||||
def_key "k"
|
|
||||||
scroll_up
|
|
||||||
|
|
||||||
def_key "ctrl-u"
|
|
||||||
page_up
|
|
||||||
#push_characters "kkkkkkkkkkkkkkk"
|
|
||||||
def_key "ctrl-d"
|
|
||||||
page_down
|
|
||||||
#push_characters "jjjjjjjjjjjjjjj"
|
|
||||||
|
|
||||||
def_key "h"
|
|
||||||
previous_column
|
|
||||||
def_key "l"
|
|
||||||
next_column
|
|
||||||
|
|
||||||
def_key "."
|
|
||||||
show_lyrics
|
|
||||||
|
|
||||||
def_key "n"
|
|
||||||
next_found_item
|
|
||||||
def_key "N"
|
|
||||||
previous_found_item
|
|
||||||
|
|
||||||
# not used but bound
|
|
||||||
def_key "J"
|
|
||||||
move_sort_order_down
|
|
||||||
def_key "K"
|
|
||||||
move_sort_order_up
|
|
@ -1,92 +0,0 @@
|
|||||||
##
|
|
||||||
# Files
|
|
||||||
mpd_music_dir = "~/med/mus"
|
|
||||||
lyrics_directory = ~/.cache/lyrics
|
|
||||||
ncmpcpp_directory = ~/.config/ncmpcpp
|
|
||||||
mpd_host = "localhost"
|
|
||||||
mpd_port = "6600"
|
|
||||||
mpd_connection_timeout = "5"
|
|
||||||
mpd_crossfade_time = "2"
|
|
||||||
|
|
||||||
# Playlist
|
|
||||||
playlist_disable_highlight_delay = "0"
|
|
||||||
playlist_display_mode = "columns"
|
|
||||||
playlist_show_remaining_time = "yes"
|
|
||||||
|
|
||||||
browser_display_mode = "columns"
|
|
||||||
autocenter_mode = "yes"
|
|
||||||
fancy_scrolling = "yes"
|
|
||||||
follow_now_playing_lyrics = "yes"
|
|
||||||
display_screens_numbers_on_start = "yes"
|
|
||||||
ignore_leading_the = "yes"
|
|
||||||
lyrics_database = "1"
|
|
||||||
song_columns_list_format = "(10)[blue]{l} (30)[green]{a} (30)[magenta]{b} (50)[yellow]{t}"
|
|
||||||
colors_enabled = "yes"
|
|
||||||
main_window_color = "white"
|
|
||||||
main_window_highlight_color = "blue"
|
|
||||||
header_window_color = "cyan"
|
|
||||||
volume_color = "red"
|
|
||||||
progressbar_color = "cyan"
|
|
||||||
statusbar_color = "white"
|
|
||||||
active_column_color = "cyan"
|
|
||||||
active_window_border = "blue"
|
|
||||||
|
|
||||||
alternative_header_first_line_format = "$0$aqqu$/a {$7%a - $9}{$5%t$9}|{$8%f$9} $0$atqq$/a$9"
|
|
||||||
alternative_header_second_line_format = "{{$6%b$9}{ [$6%y$9]}}|{%D}"
|
|
||||||
song_list_format = "{$3%n │ $9}{$7%a - $9}{$5%t$9}|{$8%f$9}$R{$6 │ %b$9}{$3 │ %l$9}"
|
|
||||||
#user_interface = "alternative"
|
|
||||||
user_interface = "classic"
|
|
||||||
default_place_to_search_in = "database"
|
|
||||||
|
|
||||||
|
|
||||||
# visualizer
|
|
||||||
visualizer_fifo_path = "/tmp/mpd.fifo"
|
|
||||||
visualizer_output_name = "my_fifo"
|
|
||||||
visualizer_sync_interval = "10"
|
|
||||||
visualizer_color = white
|
|
||||||
#visualizer_type = "wave" (spectrum/wave)
|
|
||||||
visualizer_type = "wave_filled" (spectrum/wave)
|
|
||||||
visualizer_in_stereo = "yes"
|
|
||||||
visualizer_look = "=|"
|
|
||||||
|
|
||||||
|
|
||||||
## Navigation ##
|
|
||||||
cyclic_scrolling = "yes"
|
|
||||||
header_text_scrolling = "yes"
|
|
||||||
jump_to_now_playing_song_at_start = "yes"
|
|
||||||
lines_scrolled = "2"
|
|
||||||
|
|
||||||
## Other ##
|
|
||||||
system_encoding = "utf-8"
|
|
||||||
regular_expressions = "extended"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Selected tracks ##
|
|
||||||
selected_item_prefix = "* "
|
|
||||||
discard_colors_if_item_is_selected = "no"
|
|
||||||
|
|
||||||
## Seeking ##
|
|
||||||
incremental_seeking = "yes"
|
|
||||||
seek_time = "1"
|
|
||||||
|
|
||||||
## Visivility ##
|
|
||||||
header_visibility = "yes"
|
|
||||||
statusbar_visibility = "yes"
|
|
||||||
titles_visibility = "yes"
|
|
||||||
|
|
||||||
|
|
||||||
progressbar_look = "=>-"
|
|
||||||
progressbar_elapsed_color = "white"
|
|
||||||
|
|
||||||
now_playing_prefix = "> "
|
|
||||||
song_status_format = " $2%a $4⟫$3⟫ $8%t $4⟫$3⟫ $5%b "
|
|
||||||
autocenter_mode = "yes"
|
|
||||||
centered_cursor = "yes"
|
|
||||||
|
|
||||||
# Misc
|
|
||||||
display_bitrate = "yes"
|
|
||||||
# enable_window_title = "no"
|
|
||||||
follow_now_playing_lyrics = "yes"
|
|
||||||
ignore_leading_the = "yes"
|
|
||||||
empty_tag_marker = ""
|
|
@ -1,15 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# Small wrapper over neovide/neovim
|
|
||||||
|
|
||||||
swal() {
|
|
||||||
if command -v dwmswallow > /dev/null; then
|
|
||||||
dwmswallow "$WINDOWID" -c neovide
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
if ! command -v neovide > /dev/null || [ -z "$DISPLAY" ]; then
|
|
||||||
nvim "$@"
|
|
||||||
else
|
|
||||||
swal
|
|
||||||
neovide "$@"
|
|
||||||
fi
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit 878ace11983444d865a72e1759dbcc331d1ace4c
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit 3c38ac861e1b8d4077ff46a779cde17330b29f3a
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit 5260e5e8ecadaf13e6b82cf867a909f54e15fd07
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit 922ebc75c2fa9305e36402fbd8c984c8638770a0
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit 334cf3038c4756e6ab999cbac67c847fb654c190
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit d70633830acf605ec03d9728698d9e7232442eb4
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit 632024157d01e8bc48fd7df6a7de8ffe3fdd4f3a
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit 1aad04ecde5ebf8f2b3eea5c6f39d38b251757f5
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit 33a17515b79ddb10d750320fa994098bdc3e93ef
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit 2df52609a1632de5d77a0b2416db6ad9cf32e463
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit a8264a65a0b894832ea642844f5b7c30112c458f
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit e801371917e52805a4ceb1e93f55ed1fba712f82
|
|
@ -1 +0,0 @@
|
|||||||
Subproject commit 7b97c8765bf920e92fd950a7a5bc37cb2b13a494
|
|
0
src/.config/aerc/scripts/wait-pass.sh → src/dot_config/aerc/scripts/executable_wait-pass.sh
Executable file → Normal file
0
src/.config/aerc/scripts/wait-pass.sh → src/dot_config/aerc/scripts/executable_wait-pass.sh
Executable file → Normal file
@ -3,7 +3,7 @@ padding = { x = 8, y = 8 }
|
|||||||
opacity = 0.0
|
opacity = 0.0
|
||||||
|
|
||||||
[font]
|
[font]
|
||||||
normal = { family = "JetBrains Mono" }
|
normal = { family = "JetBrainsMono NF" }
|
||||||
size = 10
|
size = 10
|
||||||
[colors]
|
[colors]
|
||||||
[colors.primary]
|
[colors.primary]
|
0
src/.config/nvim/init.vim → src/dot_config/nvim/init.vim
Executable file → Normal file
0
src/.config/nvim/init.vim → src/dot_config/nvim/init.vim
Executable file → Normal file
@ -102,25 +102,11 @@ require("nvim-treesitter.configs").setup {
|
|||||||
------
|
------
|
||||||
vim.cmd.packadd("trouble.nvim")
|
vim.cmd.packadd("trouble.nvim")
|
||||||
require('trouble').setup({
|
require('trouble').setup({
|
||||||
icons = false,
|
auto_preview = false,
|
||||||
fold_open = "v", -- icon used for open folds
|
-- default config available at https://github.com/folke/trouble.nvim
|
||||||
fold_closed = ">", -- icon used for closed folds
|
|
||||||
indent_lines = false, -- add an indent guide below the fold icons
|
|
||||||
signs = {
|
|
||||||
-- icons / text used for a diagnostic
|
|
||||||
error = "error",
|
|
||||||
warning = "warn",
|
|
||||||
hint = "hint",
|
|
||||||
information = "info"
|
|
||||||
},
|
|
||||||
use_diagnostic_signs = false -- enabling this will use the signs defined in your lsp client
|
|
||||||
})
|
})
|
||||||
keymap("<leader>dxx", "<cmd>TroubleToggle<cr>")
|
keymap("<leader>dxx", "<cmd>Trouble diagnostics toggle<cr>")
|
||||||
keymap("<leader>dxw", "<cmd>TroubleToggle workspace_diagnostics<cr>")
|
keymap("gR", "<cmd>Trouble lsp_references toggle<cr>")
|
||||||
keymap("<leader>dxd", "<cmd>TroubleToggle document_diagnostics<cr>")
|
|
||||||
keymap("<leader>dxq", "<cmd>TroubleToggle quickfix<cr>")
|
|
||||||
keymap("<leader>dxl", "<cmd>TroubleToggle loclist<cr>")
|
|
||||||
keymap("gR", "<cmd>TroubleToggle lsp_references<cr>")
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
|||||||
--------------------------------
|
--------------------------------
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
|
||||||
vim.o.guifont = "JetBrains Mono:h10"
|
vim.o.guifont = "JetBrainsMono NF:h10"
|
||||||
|
|
||||||
if vim.g.neovide then
|
if vim.g.neovide then
|
||||||
local confutil = require("confutil")
|
local confutil = require("confutil")
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user