Compare commits
31 Commits
f6af2644da
..
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 9a1542f5e0 | |||
| df3845380f | |||
| 423097ba91 | |||
| 2e126f4b26 | |||
| 4ab847b117 | |||
| 0f64debfdd | |||
| 7bac1c7a58 | |||
| ccf8e32ef2 | |||
| e23e873d23 | |||
| 4cd1806682 | |||
| f44e1cdc22 | |||
| bcc5e8ce98 | |||
| c980c209f3 | |||
| 507d42c837 | |||
| 1c84b9821a | |||
| f947d8e9cc | |||
| 3055a45a65 | |||
| 10187fe85d | |||
| a953613aec | |||
| 1c07ccc3e5 | |||
| 25b5098109 | |||
| 0f2b137649 | |||
| 9aa9716de0 | |||
| 3f2c3f992d | |||
| 98b46ce869 | |||
| 80fbd2f133 | |||
| 7fe2f7b438 | |||
| ceb580acbe | |||
| 22b71d8545 | |||
| 4730682248 | |||
| 77d7676753 |
@@ -0,0 +1,12 @@
|
|||||||
|
[Default Applications]
|
||||||
|
inode/directory=ranger.desktop
|
||||||
|
application/pdf=org.pwmt.zathura.desktop
|
||||||
|
text/plain=nvim.desktop
|
||||||
|
x-scheme-handler/betterdiscord=discord.desktop
|
||||||
|
x-scheme-handler/lunarclient=lunarclient.desktop
|
||||||
|
|
||||||
|
[Added Associations]
|
||||||
|
application/x-osu-beatmap-archive=osu-wine-osr.desktop;
|
||||||
|
image/jpeg=feh.desktop;
|
||||||
|
image/png=feh.desktop;
|
||||||
|
application/rss+xml=chromium.desktop;firefox.desktop;
|
||||||
@@ -56,3 +56,4 @@ x-scheme-handler/rldb=wine-protocol-rldb.desktop;
|
|||||||
x-scheme-handler/spotify=spotify.desktop;
|
x-scheme-handler/spotify=spotify.desktop;
|
||||||
x-scheme-handler/steam=steam.desktop;
|
x-scheme-handler/steam=steam.desktop;
|
||||||
x-scheme-handler/steamlink=steam.desktop;
|
x-scheme-handler/steamlink=steam.desktop;
|
||||||
|
x-scheme-handler/zotero=zotero.desktop;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ Name=ranger
|
|||||||
Comment=Launches the ranger file manager
|
Comment=Launches the ranger file manager
|
||||||
Icon=utilities-terminal
|
Icon=utilities-terminal
|
||||||
Terminal=false
|
Terminal=false
|
||||||
Exec=kitty -e ranger
|
Exec=source /home/emh/.zshenv && kitty -c $XDG_CONFIG_HOME/kitty/kitty.conf -e ranger %F
|
||||||
Categories=ConsoleOnly;System;FileTools;FileManager
|
Categories=ConsoleOnly;System;FileTools;FileManager
|
||||||
MimeType=inode/directory;
|
MimeType=inode/directory;
|
||||||
Keywords=File;Manager;Browser;Explorer;Launcher;Vi;Vim;Python
|
Keywords=File;Manager;Browser;Explorer;Launcher;Vi;Vim;Python
|
||||||
|
|||||||
@@ -1 +1,3 @@
|
|||||||
tex/beamerthemedispboard.sty
|
tex/beamerthemedispboard.sty
|
||||||
|
|
||||||
|
markdown-preview needs an extra dependency which breaks lazy
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
# monitor setup
|
# monitor setup
|
||||||
if [[ $(cat /etc/hostname) == "gojou" ]]; then
|
if [[ $(cat /etc/hostname) == "gojou" ]]; then
|
||||||
bspc monitor DP-0 -d 1 2 3 4 5 101
|
bspc monitor DP-0 -d 1 2 3 4 5 101
|
||||||
|
xrandr --output DP-0 --mode 2560x1440 --rate 144
|
||||||
bspc monitor HDMI-0 -d 6 7 8 9 102
|
bspc monitor HDMI-0 -d 6 7 8 9 102
|
||||||
elif [[ $(cat /etc/hostname) == "uzui" ]]; then
|
elif [[ $(cat /etc/hostname) == "uzui" ]]; then
|
||||||
bspc monitor -d 1 2 3 4 5 6 7 8 9 101
|
bspc monitor -d 1 2 3 4 5 6 7 8 9 101
|
||||||
|
|||||||
+8
-3
@@ -26,9 +26,12 @@
|
|||||||
|
|
||||||
- link:
|
- link:
|
||||||
~/.config/zsh/.zshrc: zsh/zshrc
|
~/.config/zsh/.zshrc: zsh/zshrc
|
||||||
~/.config/nvim/init.lua: nvim/init.lua
|
# ~/.config/nvim/init.lua: nvim/init.lua
|
||||||
~/.config/nvim/lua: nvim/lua
|
# ~/.config/nvim/lua: nvim/lua
|
||||||
~/.config/nvim/UltiSnips: nvim/ultisnips
|
# ~/.config/nvim/UltiSnips: nvim/ultisnips
|
||||||
|
~/.config/nvim/init.lua: nvim-lazy-profile/init.lua
|
||||||
|
~/.config/nvim/lua: nvim-lazy-profile/lua
|
||||||
|
~/.config/nvim/UltiSnips: nvim-lazy-profile/ultisnips
|
||||||
~/.config/gtk-3.0/gtk.css: gtk/gtk.css
|
~/.config/gtk-3.0/gtk.css: gtk/gtk.css
|
||||||
~/.config/gtk-3.0/settings.ini: gtk/settings.ini
|
~/.config/gtk-3.0/settings.ini: gtk/settings.ini
|
||||||
~/.config/gtk-3.0/gnome-applications.css: gtk/gnome-applications.css
|
~/.config/gtk-3.0/gnome-applications.css: gtk/gnome-applications.css
|
||||||
@@ -52,6 +55,7 @@
|
|||||||
~/.zshenv: zshenv
|
~/.zshenv: zshenv
|
||||||
~/.npmrc: npmrc
|
~/.npmrc: npmrc
|
||||||
~/.local/share/applications: applications
|
~/.local/share/applications: applications
|
||||||
|
~/.config/mimeapps.list: mimeapps.list
|
||||||
~/.local/share/onboard/dconf-settings.ini: onboard/dconf-settings.ini
|
~/.local/share/onboard/dconf-settings.ini: onboard/dconf-settings.ini
|
||||||
~/.local/share/onboard/themes/Theme.theme: onboard/Theme.theme
|
~/.local/share/onboard/themes/Theme.theme: onboard/Theme.theme
|
||||||
~/.config/wallpapers: wallpapers
|
~/.config/wallpapers: wallpapers
|
||||||
@@ -67,3 +71,4 @@
|
|||||||
~/.config/sounds: sounds
|
~/.config/sounds: sounds
|
||||||
~/.config/tmux: tmux
|
~/.config/tmux: tmux
|
||||||
~/.config/texmf/tex/latex/common: tex
|
~/.config/texmf/tex/latex/common: tex
|
||||||
|
~/.config/texmf/tex/latex/external: tex-external
|
||||||
|
|||||||
+1
-1
@@ -1,2 +1,2 @@
|
|||||||
$pdf_previewer = "zathura %O %S";
|
$pdf_previewer = "zathura %O %S";
|
||||||
$pdflatex = "xelatex -shell-escape %O %S";
|
$pdflatex = "xelatex -synctex=1 -shell-escape %O %S";
|
||||||
|
|||||||
@@ -0,0 +1,15 @@
|
|||||||
|
[Default Applications]
|
||||||
|
inode/directory=ranger.desktop
|
||||||
|
application/pdf=org.pwmt.zathura.desktop
|
||||||
|
text/plain=nvim.desktop
|
||||||
|
x-scheme-handler/betterdiscord=discord.desktop
|
||||||
|
x-scheme-handler/discord-1216669957799018608=discord-1216669957799018608.desktop
|
||||||
|
x-scheme-handler/lunarclient=lunarclient.desktop
|
||||||
|
x-scheme-handler/discord-562286213059444737=lunarclient.desktop
|
||||||
|
x-scheme-handler/ror2mm=r2modman.desktop
|
||||||
|
|
||||||
|
[Added Associations]
|
||||||
|
application/x-osu-beatmap-archive=osu-wine-osr.desktop;
|
||||||
|
image/jpeg=feh.desktop;
|
||||||
|
image/png=feh.desktop;
|
||||||
|
application/rss+xml=chromium.desktop;firefox.desktop;
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
-- bootstrap lazy.nvim
|
||||||
|
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||||
|
|
||||||
|
if not vim.loop.fs_stat(lazypath) then
|
||||||
|
vim.fn.system({
|
||||||
|
"git",
|
||||||
|
"clone",
|
||||||
|
"--filter=blob:none",
|
||||||
|
"https://github.com/folke/lazy.nvim.git",
|
||||||
|
"--branch=stable",
|
||||||
|
lazypath,
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.opt.rtp:prepend(lazypath)
|
||||||
|
|
||||||
|
require("pre")
|
||||||
|
|
||||||
|
require("lazy").setup("plugins")
|
||||||
|
|
||||||
|
require("options")
|
||||||
@@ -0,0 +1,320 @@
|
|||||||
|
local lspconfig = vim.lsp.config
|
||||||
|
local util = vim.lsp.config.util
|
||||||
|
|
||||||
|
local lspstatus = require('lsp-status')
|
||||||
|
lspstatus.register_progress()
|
||||||
|
|
||||||
|
local function find_repo_root(names)
|
||||||
|
local config = names.configfiles
|
||||||
|
local function matcher(filename, _bufnr)
|
||||||
|
local gitroot = util.root_pattern('.git')(filename)
|
||||||
|
if gitroot then
|
||||||
|
for _, file in ipairs(config) do
|
||||||
|
if util.path.is_file(util.path.join(gitroot, file)) then
|
||||||
|
return gitroot
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return util.root_pattern(unpack(config))(filename)
|
||||||
|
end
|
||||||
|
|
||||||
|
return matcher
|
||||||
|
end
|
||||||
|
|
||||||
|
local lsp_confs = {
|
||||||
|
lua_ls = {
|
||||||
|
settings = {
|
||||||
|
Lua = {
|
||||||
|
-- Settings for working with nvim (copied from https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#sumneko_lua)
|
||||||
|
runtime = {
|
||||||
|
version = 'LuaJIT',
|
||||||
|
path = runtime_path,
|
||||||
|
},
|
||||||
|
diagnostics = {
|
||||||
|
globals = { 'vim' },
|
||||||
|
},
|
||||||
|
workspace = {
|
||||||
|
library = vim.api.nvim_get_runtime_file("", true),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
solidity_ls = {},
|
||||||
|
coq_lsp = {},
|
||||||
|
racket_langserver = {},
|
||||||
|
ocamllsp = {},
|
||||||
|
rust_analyzer = {
|
||||||
|
cmd_env = {
|
||||||
|
CARGO_TARGET_DIR = "/tmp/rust-analyzer"
|
||||||
|
},
|
||||||
|
settings = {
|
||||||
|
["rust-analyzer"] = {
|
||||||
|
checkOnSave = true,
|
||||||
|
-- checkOnSave = {
|
||||||
|
-- command = "clippy",
|
||||||
|
-- allTargets = false,
|
||||||
|
-- },
|
||||||
|
cargo = {
|
||||||
|
features = "all",
|
||||||
|
},
|
||||||
|
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
ccls = {
|
||||||
|
init_options = {
|
||||||
|
clang = {
|
||||||
|
fallbackStyle = "{BasedOnStyle: LLVM, IndentWidth: 4, TabWidth: 4, UseTab: Never}",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
jedi_language_server = {
|
||||||
|
filetypes = { "python", "sage.python", "sage" },
|
||||||
|
},
|
||||||
|
gopls = {},
|
||||||
|
dartls = {},
|
||||||
|
ts_ls = {
|
||||||
|
root_dir = find_repo_root({
|
||||||
|
configfiles = { "tsconfig.json", "jsconfig.json", "package.json" }
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
denols = {
|
||||||
|
root_dir = find_repo_root({
|
||||||
|
configfiles = { "deno.json", "deno.jsonc" }
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
astro = {
|
||||||
|
root_dir = find_repo_root({
|
||||||
|
configfiles = { "astro.config.mjs" }
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
-- nargo = {
|
||||||
|
-- root_dir = find_repo_root({
|
||||||
|
-- configfiles = { "Nargo.toml" }
|
||||||
|
-- }),
|
||||||
|
-- },
|
||||||
|
eslint = {
|
||||||
|
root_dir = find_repo_root({
|
||||||
|
configfiles = { ".eslintrc", ".eslintrc.js", "package.json" }
|
||||||
|
}),
|
||||||
|
on_new_config = function(config, new_root_dir)
|
||||||
|
local default_config = vim.lsp.config.eslint.default_config
|
||||||
|
default_config.on_new_config(config, new_root_dir)
|
||||||
|
|
||||||
|
local pnp_cjs = util.path.join(new_root_dir, '.pnp.cjs')
|
||||||
|
local pnp_js = util.path.join(new_root_dir, '.pnp.js')
|
||||||
|
if util.path.exists(pnp_cjs) or util.path.exists(pnp_js) then
|
||||||
|
config.cmd = { 'yarn', 'exec', unpack(default_config.cmd) }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
},
|
||||||
|
svelte = {},
|
||||||
|
svls = {},
|
||||||
|
}
|
||||||
|
|
||||||
|
local lsp_special_setup = {
|
||||||
|
}
|
||||||
|
|
||||||
|
local function on_attach(client, _bufnr)
|
||||||
|
lspstatus.on_attach(client)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
for server, conf in pairs(lsp_confs) do
|
||||||
|
local source_on_attach = conf.on_attach
|
||||||
|
if source_on_attach == nil then
|
||||||
|
conf.on_attach = on_attach
|
||||||
|
else
|
||||||
|
conf.on_attach = function(client, bufnr)
|
||||||
|
on_attach(client, bufnr)
|
||||||
|
source_on_attach(client, bufnr)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
conf.capabilities = vim.tbl_deep_extend(
|
||||||
|
"keep",
|
||||||
|
conf.capabilities or {},
|
||||||
|
lspstatus.capabilities
|
||||||
|
)
|
||||||
|
|
||||||
|
local final_config = coq.lsp_ensure_capabilities(conf)
|
||||||
|
-- local final_config = conf
|
||||||
|
|
||||||
|
local special_setup = lsp_special_setup[server]
|
||||||
|
if special_setup then
|
||||||
|
special_setup(final_config)
|
||||||
|
else
|
||||||
|
-- lspconfig[server].setup(final_config)
|
||||||
|
vim.lsp.config[server] = final_config
|
||||||
|
vim.lsp.enable(server)
|
||||||
|
-- lspconfig(server, final_config)
|
||||||
|
-- vim.lsp.enable(server)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- local null_ls = require('null-ls')
|
||||||
|
-- null_ls.setup({
|
||||||
|
-- sources = {
|
||||||
|
-- -- null_ls.builtins.diagnostics.chktex,
|
||||||
|
-- null_ls.builtins.diagnostics.cppcheck,
|
||||||
|
-- null_ls.builtins.diagnostics.shellcheck,
|
||||||
|
--
|
||||||
|
-- null_ls.builtins.code_actions.gitsigns,
|
||||||
|
-- },
|
||||||
|
-- })
|
||||||
|
|
||||||
|
vim.diagnostic.config({
|
||||||
|
severity_sort = true,
|
||||||
|
update_in_insert = true,
|
||||||
|
float = {
|
||||||
|
source = true,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
do -- signs
|
||||||
|
local signs = {
|
||||||
|
{ 'DiagnosticSignError', text = '×', texthl = 'DiagnosticSignError' },
|
||||||
|
{ 'DiagnosticSignWarn', text = '>', texthl = 'DiagnosticSignWarn' },
|
||||||
|
{ 'DiagnosticSignInfo', text = 'I', texthl = 'DiagnosticSignInfo' },
|
||||||
|
{ 'DiagnosticSignHint', text = 'H', texthl = 'DiagnosticSignHint' },
|
||||||
|
}
|
||||||
|
for _, sign in pairs(signs) do
|
||||||
|
local name = sign[1]
|
||||||
|
local opts = sign
|
||||||
|
opts[1] = nil
|
||||||
|
vim.fn.sign_define(name, opts)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local map = vim.api.nvim_set_keymap
|
||||||
|
map(
|
||||||
|
'n',
|
||||||
|
'K',
|
||||||
|
[[luaeval('next(vim.lsp.buf_get_clients()) == nil') ? 'K' : '<Cmd>lua vim.lsp.buf.hover()<CR>']],
|
||||||
|
{ noremap = true, expr = true }
|
||||||
|
)
|
||||||
|
map(
|
||||||
|
'n',
|
||||||
|
'<C-]>',
|
||||||
|
[[luaeval('next(vim.lsp.buf_get_clients()) == nil') ? '<C-]>' : '<Cmd>lua vim.lsp.buf.definition()<CR>']],
|
||||||
|
{ noremap = true, expr = true }
|
||||||
|
)
|
||||||
|
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
-- enables formatting on save
|
||||||
|
M.format_on_save_hook = function()
|
||||||
|
local enabled = vim.b.format_on_save
|
||||||
|
if enabled == nil then
|
||||||
|
enabled = true
|
||||||
|
end
|
||||||
|
if enabled ~= 0 and enabled ~= false then
|
||||||
|
if vim.bo.filetype ~= "plaintex" and vim.bo.filetype ~= "tex" and vim.bo.filetype ~= "latex" and
|
||||||
|
vim.bo.filetype ~= "qf" and vim.bo.filetype ~= "bib" and vim.bo.filetype ~= "" and vim.bo.filetype ~= "pdf"
|
||||||
|
and vim.bo.filetype ~= "conf" and vim.bo.filetype ~= "TelescopePrompt" and vim.bo.filetype ~= "lazy" and vim.bo.filetype ~= "lazy_backdrop" and vim.bo.filetype ~= "TelescopeResults" then
|
||||||
|
vim.lsp.buf.format({ async = false })
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.cmd [[
|
||||||
|
augroup hoverlspconfig
|
||||||
|
au!
|
||||||
|
" diagnostic on hover
|
||||||
|
au BufWritePre * lua require'lsp'.format_on_save_hook()
|
||||||
|
au CursorHold * lua vim.diagnostic.open_float({focus = false})
|
||||||
|
augroup END
|
||||||
|
]]
|
||||||
|
|
||||||
|
-- enables coq
|
||||||
|
vim.api.nvim_create_autocmd(
|
||||||
|
{ 'FileType',
|
||||||
|
}, {
|
||||||
|
pattern = "*",
|
||||||
|
callback = function()
|
||||||
|
if vim.bo.filetype ~= "plaintex" and vim.bo.filetype ~= "tex" and vim.bo.filetype ~= "latex" and
|
||||||
|
vim.bo.filetype ~= "qf" and vim.bo.filetype ~= "bib" and vim.bo.filetype ~= "" and vim.bo.filetype ~= "pdf"
|
||||||
|
and vim.bo.filetype ~= "conf" and vim.bo.filetype ~= "TelescopePrompt" and vim.bo.filetype ~= "lazy" and vim.bo.filetype ~= "lazy_backdrop" and vim.bo.filetype ~= "TelescopeResults" and vim.bo.filetype ~= "snacks_terminal" and vim.bo.filetype ~= "NvimTree" and vim.bo.filetype ~= "neo-tree" and vim.bo.filetype ~= "oil" and vim.bo.filetype ~= "minifiles" and vim.bo.filetype ~= "netrw" and vim.bo.filetype ~= "snacks_picker_list" and vim.bo.filetype ~= "codex" then
|
||||||
|
vim.cmd([[ :COQnow -s ]])
|
||||||
|
end
|
||||||
|
end
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
-- force keybinds on latex files
|
||||||
|
vim.api.nvim_create_autocmd(
|
||||||
|
{ 'FileType',
|
||||||
|
}, {
|
||||||
|
pattern = { "latex", "plaintex", "tex" },
|
||||||
|
callback = function()
|
||||||
|
vim.g.UltiSnipsExpandTrigger = '<tab>'
|
||||||
|
vim.g.UltiSnipsJumpForwardTrigger = '<C-h>'
|
||||||
|
vim.g.UltiSnipsJumpBackwardTrigger = '<C-b>'
|
||||||
|
local opts = { buffer = true, remap = true, silent = true }
|
||||||
|
vim.keymap.set('i', '<tab>', '<C-R>=UltiSnips#ExpandSnippet()<CR>', opts)
|
||||||
|
vim.keymap.set('i', '<C-h>', '<C-R>=UltiSnips#JumpForwards()<CR>', opts)
|
||||||
|
vim.keymap.set('i', '<C-b>', '<C-R>=UltiSnips#JumpBackwards()<CR>', opts)
|
||||||
|
vim.keymap.set('s', '<C-h>', '<Esc>:call UltiSnips#JumpForwards()<CR>', opts)
|
||||||
|
vim.keymap.set('s', '<C-b>', '<Esc>:call UltiSnips#JumpBackwards()<CR>', opts)
|
||||||
|
end
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- toggles folds
|
||||||
|
map('n', '<Leader>pc', 'za', { noremap = true })
|
||||||
|
|
||||||
|
-- folds and treesitter
|
||||||
|
vim.api.nvim_create_autocmd('FileType', {
|
||||||
|
pattern = { '*' },
|
||||||
|
callback = function()
|
||||||
|
if vim.bo.filetype ~= "plaintex" and vim.bo.filetype ~= "tex" and vim.bo.filetype ~= "latex" and
|
||||||
|
vim.bo.filetype ~= "qf" and vim.bo.filetype ~= "bib" and vim.bo.filetype ~= "" and vim.bo.filetype ~= "pdf"
|
||||||
|
and vim.bo.filetype ~= "conf" and vim.bo.filetype ~= "TelescopePrompt" and vim.bo.filetype ~= "lazy" and vim.bo.filetype ~= "lazy_backdrop" and vim.bo.filetype ~= "TelescopeResults" and vim.bo.filetype ~= "netrw" and vim.bo.filetype ~= "html.mustache" and vim.bo.filetype ~= "mustache" and vim.bo.filetype ~= "sage" and vim.bo.filetype ~= "sage.python" and vim.bo.filetype ~= "snacks_terminal" and vim.bo.filetype ~= "NvimTree" and vim.bo.filetype ~= "neo-tree" and vim.bo.filetype ~= "oil" and vim.bo.filetype ~= "minifiles" and vim.bo.filetype ~= "netrw" and vim.bo.filetype ~= "snacks_picker_list" and vim.bo.filetype ~= "codex" and vim.bo.filetype ~= "text" then
|
||||||
|
vim.treesitter.start()
|
||||||
|
vim.wo[0][0].foldexpr = 'v:lua.vim.treesitter.foldexpr()'
|
||||||
|
vim.wo[0][0].foldmethod = 'expr'
|
||||||
|
vim.wo[0][0].foldenable = true
|
||||||
|
vim.wo[0][0].foldlevel = 99
|
||||||
|
vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()"
|
||||||
|
end
|
||||||
|
|
||||||
|
if vim.bo.filetype == "c" or vim.bo.filetype == "cpp" or vim.bo.filetype == "cuda" or vim.bo.filetype == "objc" or vim.bo.filetype == "objcpp" then
|
||||||
|
vim.opt_local.shiftwidth = 2
|
||||||
|
vim.opt_local.tabstop = 2
|
||||||
|
vim.opt_local.softtabstop = 2
|
||||||
|
vim.opt_local.expandtab = true
|
||||||
|
vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
for _, method in ipairs({ 'textDocument/diagnostic', 'workspace/diagnostic' }) do
|
||||||
|
local default_diagnostic_handler = vim.lsp.handlers[method]
|
||||||
|
vim.lsp.handlers[method] = function(err, result, context, config)
|
||||||
|
if err ~= nil and err.code == -32802 then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
return default_diagnostic_handler(err, result, context, config)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
-- vim.api.nvim_create_autocmd({ 'FileType', 'BufRead', 'BufReadPre', 'BufReadPost', 'BufWrite', 'BufWritePre',
|
||||||
|
-- 'BufWritePost' }, {
|
||||||
|
-- pattern = "*",
|
||||||
|
-- callback = function()
|
||||||
|
-- if vim.bo.filetype ~= "plaintex" and vim.bo.filetype ~= "tex" and vim.bo.filetype ~= "latex" then
|
||||||
|
-- vim.cmd [[ :COQnow -s ]]
|
||||||
|
-- end
|
||||||
|
-- end
|
||||||
|
-- })
|
||||||
|
|
||||||
|
-- vim.cmd [[
|
||||||
|
-- augroup disabletexlsp
|
||||||
|
-- autocmd!
|
||||||
|
-- autocmd FileType tex :COQstop
|
||||||
|
-- augroup END
|
||||||
|
-- ]]
|
||||||
|
|
||||||
|
return M
|
||||||
@@ -0,0 +1,417 @@
|
|||||||
|
/* weird look: plantuml, mermaid
|
||||||
|
* flowchart looks ok ok
|
||||||
|
* Code highlights (highlight.js / hljs) incorrect, not base16
|
||||||
|
*/
|
||||||
|
|
||||||
|
body { background-color: var(--background); }
|
||||||
|
|
||||||
|
.markdown-body ol ol,
|
||||||
|
.markdown-body ul ol,
|
||||||
|
.markdown-body ol ul,
|
||||||
|
.markdown-body ul ul,
|
||||||
|
.markdown-body ol ul ol,
|
||||||
|
.markdown-body ul ul ol,
|
||||||
|
.markdown-body ol ul ul,
|
||||||
|
.markdown-body ul ul ul {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
.markdown-body {
|
||||||
|
font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, freesans, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||||
|
font-size: 16px;
|
||||||
|
color: var(--foreground);
|
||||||
|
line-height: 1.6;
|
||||||
|
word-wrap: break-word;
|
||||||
|
padding: 45px;
|
||||||
|
background: var(--background);
|
||||||
|
border: 0px solid var(--foreground);
|
||||||
|
-webkit-border-radius: 0 0 3px 3px;
|
||||||
|
border-radius: 0 0 3px 3px;
|
||||||
|
}
|
||||||
|
.markdown-body > *:first-child {
|
||||||
|
margin-top: 0 !important;
|
||||||
|
}
|
||||||
|
.markdown-body > *:last-child {
|
||||||
|
margin-bottom: 0 !important;
|
||||||
|
}
|
||||||
|
.markdown-body .table-of-contents ol {
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
.markdown-body .table-of-contents > ol {
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
.markdown-body * {
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
.markdown-body h1,
|
||||||
|
.markdown-body h2,
|
||||||
|
.markdown-body h3,
|
||||||
|
.markdown-body h4,
|
||||||
|
.markdown-body h5,
|
||||||
|
.markdown-body h6 {
|
||||||
|
margin-top: 1em;
|
||||||
|
margin-bottom: 16px;
|
||||||
|
font-weight: bold;
|
||||||
|
line-height: 1.4;
|
||||||
|
}
|
||||||
|
.markdown-body h1 .anchor,
|
||||||
|
.markdown-body h2 .anchor,
|
||||||
|
.markdown-body h3 .anchor,
|
||||||
|
.markdown-body h4 .anchor,
|
||||||
|
.markdown-body h5 .anchor,
|
||||||
|
.markdown-body h6 .anchor {
|
||||||
|
margin-left: -24px;
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
.markdown-body h1:hover .anchor,
|
||||||
|
.markdown-body h2:hover .anchor,
|
||||||
|
.markdown-body h3:hover .anchor,
|
||||||
|
.markdown-body h4:hover .anchor,
|
||||||
|
.markdown-body h5:hover .anchor,
|
||||||
|
.markdown-body h6:hover .anchor {
|
||||||
|
visibility: visible;
|
||||||
|
}
|
||||||
|
.markdown-body p,
|
||||||
|
.markdown-body blockquote,
|
||||||
|
.markdown-body ul,
|
||||||
|
.markdown-body ol,
|
||||||
|
.markdown-body dl,
|
||||||
|
.markdown-body table,
|
||||||
|
.markdown-body pre {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 16px;
|
||||||
|
background-color: var(--background) !important; /* Changes background of code block */
|
||||||
|
}
|
||||||
|
.markdown-body h1 {
|
||||||
|
margin: 0.67em 0;
|
||||||
|
padding-bottom: 0.3em;
|
||||||
|
font-size: 2.25em;
|
||||||
|
line-height: 1.2;
|
||||||
|
border-bottom: 1px solid var(--color4);
|
||||||
|
color: var(--color13) !important;
|
||||||
|
}
|
||||||
|
.markdown-body h2 {
|
||||||
|
padding-bottom: 0.3em;
|
||||||
|
font-size: 1.75em;
|
||||||
|
line-height: 1.225;
|
||||||
|
border-bottom: 1px solid var(--color4);
|
||||||
|
color: var(--color12) !important;
|
||||||
|
}
|
||||||
|
.markdown-body h3 {
|
||||||
|
font-size: 1.5em;
|
||||||
|
line-height: 1.43;
|
||||||
|
}
|
||||||
|
.markdown-body h4 {
|
||||||
|
font-size: 1.25em;
|
||||||
|
}
|
||||||
|
.markdown-body h5 {
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
.markdown-body h6 {
|
||||||
|
font-size: 1em;
|
||||||
|
color: var(--color8) !important;
|
||||||
|
}
|
||||||
|
.markdown-body hr {
|
||||||
|
margin-top: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
height: 0;
|
||||||
|
border: 0;
|
||||||
|
border-top: 1px solid var(--color4);
|
||||||
|
}
|
||||||
|
.markdown-body ol,
|
||||||
|
.markdown-body ul {
|
||||||
|
padding-left: 2em;
|
||||||
|
}
|
||||||
|
.markdown-body ol ol,
|
||||||
|
.markdown-body ul ol {
|
||||||
|
list-style-type: lower-roman;
|
||||||
|
}
|
||||||
|
.markdown-body ol ul,
|
||||||
|
.markdown-body ul ul {
|
||||||
|
list-style-type: circle;
|
||||||
|
}
|
||||||
|
.markdown-body ol ul ul,
|
||||||
|
.markdown-body ul ul ul {
|
||||||
|
list-style-type: square;
|
||||||
|
}
|
||||||
|
.markdown-body ol {
|
||||||
|
list-style-type: decimal;
|
||||||
|
}
|
||||||
|
.markdown-body ul {
|
||||||
|
list-style-type: disc;
|
||||||
|
/* color: var(--color9) !important; */ /* changes color of all bullet lists */
|
||||||
|
}
|
||||||
|
li::marker {
|
||||||
|
color: var(--color14) !important; /* changes color of bullet points */
|
||||||
|
}
|
||||||
|
.markdown-body dl {
|
||||||
|
margin-bottom: 1.3em
|
||||||
|
}
|
||||||
|
.markdown-body dl dt {
|
||||||
|
font-weight: 700;
|
||||||
|
}
|
||||||
|
.markdown-body dl dd {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
.markdown-body dl dd p {
|
||||||
|
margin-bottom: 0.8em;
|
||||||
|
}
|
||||||
|
.markdown-body blockquote {
|
||||||
|
margin-left: 0;
|
||||||
|
margin-right: 0;
|
||||||
|
padding: 0 15px;
|
||||||
|
color: var(--color8) !important;
|
||||||
|
border-left: 4px solid var(--color3) !important; /* border denoting block quote */
|
||||||
|
}
|
||||||
|
.markdown-body table {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
overflow: auto;
|
||||||
|
word-break: normal;
|
||||||
|
word-break: keep-all;
|
||||||
|
border-collapse: collapse;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
.markdown-body table tr {
|
||||||
|
background-color: var(--background) !important; /* Changes bacground color of tables */
|
||||||
|
border-top: 1px solid var(--color4);
|
||||||
|
}
|
||||||
|
.markdown-body table tr:nth-child(2n) {
|
||||||
|
background-color: #f8f8f8;
|
||||||
|
}
|
||||||
|
.markdown-body table th,
|
||||||
|
.markdown-body table td {
|
||||||
|
padding: 6px 13px;
|
||||||
|
border: 1px solid var(--color4); /* color of table cells/border */
|
||||||
|
}
|
||||||
|
.markdown-body pre {
|
||||||
|
word-wrap: normal;
|
||||||
|
padding: 16px;
|
||||||
|
overflow: auto;
|
||||||
|
font-size: 85%;
|
||||||
|
line-height: 1.45;
|
||||||
|
background-color: #f7f7f7;
|
||||||
|
-webkit-border-radius: 3px;
|
||||||
|
border-radius: 3px;
|
||||||
|
}
|
||||||
|
.markdown-body pre code {
|
||||||
|
display: inline;
|
||||||
|
max-width: initial;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
overflow: initial;
|
||||||
|
font-size: 100%;
|
||||||
|
line-height: inherit;
|
||||||
|
word-wrap: normal;
|
||||||
|
white-space: pre;
|
||||||
|
-webkit-border-radius: 3px;
|
||||||
|
border-radius: 3px;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
.markdown-body pre code:before,
|
||||||
|
.markdown-body pre code:after {
|
||||||
|
content: normal;
|
||||||
|
}
|
||||||
|
.markdown-body code {
|
||||||
|
font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
|
||||||
|
padding: 0;
|
||||||
|
padding-top: 0.2em;
|
||||||
|
padding-bottom: 0.2em;
|
||||||
|
margin: 0;
|
||||||
|
font-size: 85%;
|
||||||
|
-webkit-border-radius: 3px;
|
||||||
|
border-radius: 3px;
|
||||||
|
}
|
||||||
|
.markdown-body code:before,
|
||||||
|
.markdown-body code:after {
|
||||||
|
letter-spacing: -0.2em;
|
||||||
|
content: "\00a0";
|
||||||
|
}
|
||||||
|
.markdown-body a {
|
||||||
|
color: var(--color2) !important; /* Change style of hyperlinks */
|
||||||
|
text-decoration: underline;
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
.markdown-body img {
|
||||||
|
max-width: 100%;
|
||||||
|
max-height: 100%;
|
||||||
|
}
|
||||||
|
.markdown-body strong {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.markdown-body em {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
.markdown-body del {
|
||||||
|
text-decoration: line-through;
|
||||||
|
}
|
||||||
|
.task-list-item {
|
||||||
|
list-style-type: none;
|
||||||
|
}
|
||||||
|
.task-list-item input {
|
||||||
|
font: 13px/1.4 Helvetica, arial, nimbussansl, liberationsans, freesans, clean, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
||||||
|
margin: 0 0.35em 0.25em -1.6em;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
.task-list-item input[disabled] {
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
.task-list-item input[type="checkbox"] {
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.task-list-item input[type="radio"] {
|
||||||
|
-webkit-box-sizing: border-box;
|
||||||
|
-moz-box-sizing: border-box;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Below are the page settings */
|
||||||
|
|
||||||
|
#page-ctn {
|
||||||
|
margin: 0 auto;
|
||||||
|
max-width: 900px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page-header {
|
||||||
|
padding: 8px;
|
||||||
|
background-color: var(--background) !important;
|
||||||
|
border-color: var(--foreground) !important;
|
||||||
|
border-style: solid;
|
||||||
|
border-width: 1px 1px 0;
|
||||||
|
border-top-left-radius: 3px;
|
||||||
|
border-top-right-radius: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page-header svg {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 5px;
|
||||||
|
overflow: hidden;
|
||||||
|
fill: var(--foreground) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#page-header h3 {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
padding-right: 16px;
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--foreground) !important;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Highlight settings */
|
||||||
|
|
||||||
|
.hljs {
|
||||||
|
display: block;
|
||||||
|
overflow-x: auto;
|
||||||
|
padding: 0.5em;
|
||||||
|
/* color: #333; */
|
||||||
|
color: var(--color7) !important;
|
||||||
|
background: var(--background) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-comment,
|
||||||
|
.hljs-quote {
|
||||||
|
color: var(--color8) !important; /* color of comments */
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-keyword,
|
||||||
|
.hljs-selector-tag,
|
||||||
|
.hljs-subst {
|
||||||
|
color: var(--color4) !important;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-number,
|
||||||
|
.hljs-literal,
|
||||||
|
.hljs-variable,
|
||||||
|
.hljs-template-variable,
|
||||||
|
.hljs-tag .hljs-attr {
|
||||||
|
color: var(--color5) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-string,
|
||||||
|
.hljs-doctag {
|
||||||
|
color: var(--color1) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-title,
|
||||||
|
.hljs-section,
|
||||||
|
.hljs-selector-id {
|
||||||
|
color: var(--color3) !important; /* Color of function title */
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-subst {
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-type,
|
||||||
|
.hljs-class .hljs-title {
|
||||||
|
color: var(--color2) !important; /* Color of class title */
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-tag,
|
||||||
|
.hljs-name,
|
||||||
|
.hljs-attribute {
|
||||||
|
font-weight: normal;
|
||||||
|
color: var(--color6) !important; /* Color of XML/HTML tags */
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-regexp,
|
||||||
|
.hljs-link {
|
||||||
|
/* color: #009926; */
|
||||||
|
color: var(--color9) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-symbol,
|
||||||
|
.hljs-bullet {
|
||||||
|
/* color: #990073; */
|
||||||
|
color: var(--color10) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-built_in,
|
||||||
|
.hljs-builtin-name {
|
||||||
|
/* color: #0086b3; */
|
||||||
|
color: var(--color12) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-meta {
|
||||||
|
color: var(--color8) !important; /* Color of meta tags */
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-deletion {
|
||||||
|
background: var(--color3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-addition {
|
||||||
|
background: #dfd;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-emphasis {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hljs-strong {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.katex-html {
|
||||||
|
color: var(--color7);
|
||||||
|
}
|
||||||
@@ -0,0 +1,77 @@
|
|||||||
|
local o = vim.opt
|
||||||
|
local map = vim.api.nvim_set_keymap
|
||||||
|
|
||||||
|
o.expandtab = true
|
||||||
|
o.tabstop = 4
|
||||||
|
o.shiftwidth = 0
|
||||||
|
o.modeline = true
|
||||||
|
o.modelines = 5
|
||||||
|
o.viminfo = ''
|
||||||
|
vim.g.base16colorspace = 256
|
||||||
|
vim.g.vimtex_view_method = "zathura"
|
||||||
|
o.termguicolors = true
|
||||||
|
|
||||||
|
vim.b.coqtail_coq_prog = "coqidetop"
|
||||||
|
|
||||||
|
vim.cmd [[
|
||||||
|
augroup spellcheck
|
||||||
|
au!
|
||||||
|
au FileType markdown setlocal spell
|
||||||
|
au FileType plaintex setlocal spell
|
||||||
|
au FileType tex setlocal spell
|
||||||
|
au FileType latex setlocal spell
|
||||||
|
au BufRead,BufNewFile *.md setlocal spell
|
||||||
|
au BufRead,BufNewFile *.tex setlocal spell
|
||||||
|
augroup END
|
||||||
|
]]
|
||||||
|
|
||||||
|
o.spelllang = "en_us"
|
||||||
|
map('i', '<C-L>', '<c-g>u<Esc>[s1z=`]a<c-g>u', { noremap = true })
|
||||||
|
|
||||||
|
-- vim.cmd('colorscheme theme')
|
||||||
|
-- vim.cmd('colorscheme tinted-theme')
|
||||||
|
vim.cmd('colorscheme theme-nvim')
|
||||||
|
-- vim.cmd('colorscheme theme-mininvim')
|
||||||
|
|
||||||
|
vim.g.airline_theme = 'theme'
|
||||||
|
vim.cmd("AirlineTheme theme")
|
||||||
|
|
||||||
|
|
||||||
|
-- stupid fix for stupid problems i guess
|
||||||
|
vim.g["airline#extensions#whitespace#enabled"] = false
|
||||||
|
|
||||||
|
|
||||||
|
map('n', '<Leader>s', ':%s//g<Left><Left>', {})
|
||||||
|
map('n', '<Leader>e', ':make!<CR>', { noremap = true })
|
||||||
|
map('n', '<C-o>', ':cclose<CR>', { noremap = true })
|
||||||
|
map('n', '<C-L>', ':nohlsearch<CR><C-L>', { noremap = true, silent = true })
|
||||||
|
map('n', ';', ':', { noremap = true })
|
||||||
|
map('v', ';', ':', { noremap = true })
|
||||||
|
|
||||||
|
for i = 1, 9, 1 do
|
||||||
|
map('', '<Leader>' .. tostring(i), tostring(i) .. 'gt', { noremap = true })
|
||||||
|
end
|
||||||
|
|
||||||
|
map('n', '<C-Left>', ':tabprevious<CR>', { noremap = true })
|
||||||
|
map('n', '<C-Right>', ':tabnext<CR>', { noremap = true })
|
||||||
|
map('', '<Leader>0', ':tablast<CR>', { noremap = true })
|
||||||
|
map('n', 'ZX', '<Cmd>q<CR>', { noremap = true, silent = true })
|
||||||
|
|
||||||
|
map('t', '<Esc>', '<C-\\><C-n>', { noremap = true })
|
||||||
|
|
||||||
|
o.list = true
|
||||||
|
o.listchars = {
|
||||||
|
tab = '▸ ',
|
||||||
|
eol = '¬',
|
||||||
|
trail = '·',
|
||||||
|
extends = '›'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
vim.cmd [[
|
||||||
|
augroup options_guicursor
|
||||||
|
au!
|
||||||
|
" Reset to vertical cursor for terminal nvim (https://github.com/neovim/neovim/issues/4867#issuecomment-291249173)
|
||||||
|
au VimLeave * set guicursor=a:ver90
|
||||||
|
augroup END
|
||||||
|
]]
|
||||||
@@ -0,0 +1,455 @@
|
|||||||
|
local function import(name)
|
||||||
|
return function()
|
||||||
|
require(name)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
'nvim-mini/mini.nvim',
|
||||||
|
version = false
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"RRethy/base16-nvim",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"vim-airline/vim-airline",
|
||||||
|
dependencies = {
|
||||||
|
"ryanoasis/vim-devicons",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"mustache/vim-mustache-handlebars",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"whonore/Coqtail",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"Julian/lean.nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
},
|
||||||
|
config = function()
|
||||||
|
import("lean")
|
||||||
|
vim.g.lean_config = { opts = { mappings = true } }
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"noir-lang/noir-nvim",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
lazy = false,
|
||||||
|
version = false,
|
||||||
|
build = function()
|
||||||
|
vim.cmd(":TSUpdate")
|
||||||
|
end,
|
||||||
|
opts = {
|
||||||
|
highlight = {
|
||||||
|
enable = true,
|
||||||
|
disable = { "sage", "sage.python", "ipkg", "markdown", "md" }
|
||||||
|
},
|
||||||
|
indent = {
|
||||||
|
enable = true,
|
||||||
|
disable = { "sage", "sage.python", "markdown", "md" }
|
||||||
|
},
|
||||||
|
ensure_installed = "all",
|
||||||
|
ignore_install = { "sage", "sage.python", "ipkg", "markdown", "md" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"petRUShka/vim-sage",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"evanleck/vim-svelte",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"wuelnerdotexe/vim-astro",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"tpope/vim-fugitive",
|
||||||
|
config = function()
|
||||||
|
local map = vim.api.nvim_set_keymap
|
||||||
|
map('n', '<Leader>g', '<Cmd>Git<CR>', { noremap = true })
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"tpope/vim-surround",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"tpope/vim-repeat",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"lewis6991/gitsigns.nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
},
|
||||||
|
config = function()
|
||||||
|
require('gitsigns').setup {
|
||||||
|
signs = {
|
||||||
|
add = {
|
||||||
|
text = '│',
|
||||||
|
},
|
||||||
|
change = {
|
||||||
|
text = '│',
|
||||||
|
},
|
||||||
|
delete = {
|
||||||
|
text = '_',
|
||||||
|
},
|
||||||
|
topdelete = {
|
||||||
|
text = '‾',
|
||||||
|
},
|
||||||
|
changedelete = {
|
||||||
|
text = '~',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"akinsho/flutter-tools.nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
},
|
||||||
|
config = function()
|
||||||
|
require('flutter-tools').setup {
|
||||||
|
-- lsp = {
|
||||||
|
-- color = {
|
||||||
|
-- enabled = false
|
||||||
|
-- }
|
||||||
|
-- }
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"numToStr/Comment.nvim",
|
||||||
|
config = function()
|
||||||
|
local map = vim.api.nvim_set_keymap
|
||||||
|
|
||||||
|
require('Comment').setup({})
|
||||||
|
|
||||||
|
map(
|
||||||
|
'n',
|
||||||
|
'<C-_>',
|
||||||
|
'<Cmd>lua require("Comment.api").toggle_linewise_op(vim.fn.visualmode())<CR>',
|
||||||
|
{ noremap = true, silent = true }
|
||||||
|
)
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-telescope/telescope.nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-telescope/telescope-fzf-native.nvim",
|
||||||
|
build = "make",
|
||||||
|
},
|
||||||
|
|
||||||
|
"nvim-telescope/telescope-symbols.nvim",
|
||||||
|
},
|
||||||
|
config = import("tel"),
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"stevearc/dressing.nvim",
|
||||||
|
config = function()
|
||||||
|
require('dressing').setup({
|
||||||
|
input = {
|
||||||
|
default_prompt = '❯',
|
||||||
|
win_options = {
|
||||||
|
winhighlight = 'NormalFloat:Normal',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
vim.cmd [[highlight link FloatTitle NonText]]
|
||||||
|
vim.cmd [[highlight link DressingInputText Normal]]
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"antoinemadec/FixCursorHold.nvim",
|
||||||
|
config = function()
|
||||||
|
vim.g.cursorhold_updatetime = 500
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"sirver/ultisnips",
|
||||||
|
ft = { 'latex', 'plaintex', 'tex' },
|
||||||
|
|
||||||
|
config = function()
|
||||||
|
vim.g.UltiSnipsExpandTrigger = '<tab>'
|
||||||
|
vim.g.UltiSnipsJumpForwardTrigger = '<C-h>'
|
||||||
|
vim.g.UltiSnipsJumpBackwardTrigger = '<C-b>'
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"ms-jpq/coq.artifacts",
|
||||||
|
branch = "artifacts",
|
||||||
|
lazy = false
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"ms-jpq/coq_nvim",
|
||||||
|
branch = "coq",
|
||||||
|
lazy = false,
|
||||||
|
dependencies = {
|
||||||
|
{
|
||||||
|
"ms-jpq/coq.artifacts",
|
||||||
|
branch = "artifacts",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ms-jpq/coq.thirdparty",
|
||||||
|
branch = "3p",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
init = function()
|
||||||
|
vim.g.coq_settings = {
|
||||||
|
-- auto_start = 'shut-up',
|
||||||
|
keymap = {
|
||||||
|
eval_snips = "<Leader>se",
|
||||||
|
},
|
||||||
|
-- match = {
|
||||||
|
-- look_ahead = 1,
|
||||||
|
-- },
|
||||||
|
clients = {
|
||||||
|
snippets = {
|
||||||
|
always_on_top = true,
|
||||||
|
enabled = true,
|
||||||
|
weight_adjust = 100,
|
||||||
|
},
|
||||||
|
buffers = {
|
||||||
|
enabled = true,
|
||||||
|
weight_adjust = -2.0,
|
||||||
|
},
|
||||||
|
tree_sitter = {
|
||||||
|
enabled = true,
|
||||||
|
weight_adjust = -1.5,
|
||||||
|
},
|
||||||
|
lsp = {
|
||||||
|
enabled = true,
|
||||||
|
weight_adjust = -100,
|
||||||
|
},
|
||||||
|
third_party = {
|
||||||
|
enabled = true,
|
||||||
|
weight_adjust = -1.5,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
require('coq_3p') {
|
||||||
|
{ src = 'vimtex', short_name = 'TEX' },
|
||||||
|
{ src = 'nvimlua', short_name = 'NLUA', conf_only = true },
|
||||||
|
{ src = 'bc', short_name = 'CALC', precision = 8 },
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
build = function()
|
||||||
|
require("coq")
|
||||||
|
vim.cmd(":COQdeps")
|
||||||
|
end,
|
||||||
|
config = function()
|
||||||
|
require('coq_3p') {
|
||||||
|
{ src = 'vimtex', short_name = 'TEX' },
|
||||||
|
{ src = 'nvimlua', short_name = 'NLUA', conf_only = true },
|
||||||
|
{ src = 'bc', short_name = 'CALC', precision = 8 },
|
||||||
|
}
|
||||||
|
end
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"ms-jpq/coq.thirdparty",
|
||||||
|
branch = "3p",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"nvim-lua/lsp-status.nvim",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
lazy = false,
|
||||||
|
|
||||||
|
dependencies = {
|
||||||
|
{
|
||||||
|
"nvim-lua/lsp-status.nvim",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"ms-jpq/coq.thirdparty",
|
||||||
|
branch = "3p",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"ms-jpq/coq.artifacts",
|
||||||
|
branch = "artifacts",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"ms-jpq/coq_nvim",
|
||||||
|
branch = "coq",
|
||||||
|
lazy = false,
|
||||||
|
|
||||||
|
dependencies = {
|
||||||
|
{
|
||||||
|
"ms-jpq/coq.artifacts",
|
||||||
|
branch = "artifacts",
|
||||||
|
lazy = false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
config = function()
|
||||||
|
local capabilities = require("coq").lsp_ensure_capabilities()
|
||||||
|
-- extend coq completion capabilities all lsps
|
||||||
|
vim.lsp.config('*', {
|
||||||
|
capabilities = capabilities,
|
||||||
|
})
|
||||||
|
vim.lsp.enable("lua_ls")
|
||||||
|
require("lsp")
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"lervag/vimtex",
|
||||||
|
|
||||||
|
config = function()
|
||||||
|
vim.g.vimtex_view_general_viewer = 'zathura'
|
||||||
|
vim.g.vimtex_compiler_method = "latexmk"
|
||||||
|
|
||||||
|
-- vim.g.vimtex_view_general_options = = '-x nvim -n -c "Vimtex'
|
||||||
|
-- 'file:@pdf\\#src:@line@tex'
|
||||||
|
-- vim.g.vimtex_quickfix_enabled = 0
|
||||||
|
-- vim.g.Tex_GotoError = 0
|
||||||
|
-- vim.g.Tex_ShowErrorContext = 0
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"iamcco/markdown-preview.nvim",
|
||||||
|
|
||||||
|
ft = { "markdown" },
|
||||||
|
|
||||||
|
init = function()
|
||||||
|
vim.g.mkdp_filetypes = { "markdown" }
|
||||||
|
end,
|
||||||
|
|
||||||
|
build = function()
|
||||||
|
vim.fn.system("cd app && npm install")
|
||||||
|
end,
|
||||||
|
|
||||||
|
config = function()
|
||||||
|
local map = vim.api.nvim_set_keymap
|
||||||
|
|
||||||
|
map('n', '<C-m>', '<Plug>MarkdownPreviewToggle', {})
|
||||||
|
map('n', '<Leader>m', '<Plug>MarkdownPreviewToggle', {})
|
||||||
|
|
||||||
|
vim.g.mkdp_markdown_css =
|
||||||
|
os.getenv("HOME") .. "/.config/nvim/lua/markdownStyle.css"
|
||||||
|
|
||||||
|
vim.g.mkdp_highlight_css =
|
||||||
|
os.getenv("HOME") .. "/.cache/wal/colors.css"
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'kkrampis/codex.nvim',
|
||||||
|
lazy = true,
|
||||||
|
cmd = { 'Codex', 'CodexToggle' }, -- Optional: Load only on command execution
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
'<leader>cc', -- Change this to your preferred keybinding
|
||||||
|
function() require('codex').toggle() end,
|
||||||
|
desc = 'Toggle Codex popup or side-panel',
|
||||||
|
mode = { 'n', 't' }
|
||||||
|
},
|
||||||
|
},
|
||||||
|
opts = {
|
||||||
|
keymaps = {
|
||||||
|
toggle = nil, -- Keybind to toggle Codex window (Disabled by default, watch out for conflicts)
|
||||||
|
quit = '<C-q>', -- Keybind to close the Codex window (default: Ctrl + q)
|
||||||
|
}, -- Disable internal default keymap (<leader>cc -> :CodexToggle)
|
||||||
|
border = 'rounded', -- Options: 'single', 'double', or 'rounded'
|
||||||
|
width = 0.8, -- Width of the floating window (0.0 to 1.0)
|
||||||
|
height = 0.8, -- Height of the floating window (0.0 to 1.0)
|
||||||
|
model = nil, -- Optional: pass a string to use a specific model (e.g., 'o3-mini')
|
||||||
|
autoinstall = true, -- Automatically install the Codex CLI if not found
|
||||||
|
panel = false, -- Open Codex in a side-panel (vertical split) instead of floating window
|
||||||
|
use_buffer = false, -- Capture Codex stdout into a normal buffer instead of a terminal buffer
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"coder/claudecode.nvim",
|
||||||
|
dependencies = { "folke/snacks.nvim" },
|
||||||
|
config = true,
|
||||||
|
-- `cmd` lets lazy.nvim create command stubs that load the plugin on first use,
|
||||||
|
-- so `:ClaudeCode` and friends work on a fresh start. Without it, a keys-only
|
||||||
|
-- spec defers loading until a <leader>a* mapping is pressed and the commands
|
||||||
|
-- would not exist yet.
|
||||||
|
cmd = {
|
||||||
|
"ClaudeCode",
|
||||||
|
"ClaudeCodeFocus",
|
||||||
|
"ClaudeCodeSelectModel",
|
||||||
|
"ClaudeCodeAdd",
|
||||||
|
"ClaudeCodeSend",
|
||||||
|
"ClaudeCodeTreeAdd",
|
||||||
|
"ClaudeCodeStatus",
|
||||||
|
"ClaudeCodeStart",
|
||||||
|
"ClaudeCodeStop",
|
||||||
|
"ClaudeCodeOpen",
|
||||||
|
"ClaudeCodeClose",
|
||||||
|
"ClaudeCodeDiffAccept",
|
||||||
|
"ClaudeCodeDiffDeny",
|
||||||
|
"ClaudeCodeCloseAllDiffs",
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{ "<leader>a", nil, desc = "AI/Claude Code" },
|
||||||
|
{ "<leader>ac", "<cmd>ClaudeCode<cr>", desc = "Toggle Claude" },
|
||||||
|
{ "<leader>af", "<cmd>ClaudeCodeFocus<cr>", desc = "Focus Claude" },
|
||||||
|
{ "<leader>ar", "<cmd>ClaudeCode --resume<cr>", desc = "Resume Claude" },
|
||||||
|
{ "<leader>aC", "<cmd>ClaudeCode --continue<cr>", desc = "Continue Claude" },
|
||||||
|
{ "<leader>am", "<cmd>ClaudeCodeSelectModel<cr>", desc = "Select Claude model" },
|
||||||
|
{ "<leader>ab", "<cmd>ClaudeCodeAdd %<cr>", desc = "Add current buffer" },
|
||||||
|
{ "<leader>as", "<cmd>ClaudeCodeSend<cr>", mode = "v", desc = "Send to Claude" },
|
||||||
|
{
|
||||||
|
"<leader>as",
|
||||||
|
"<cmd>ClaudeCodeTreeAdd<cr>",
|
||||||
|
desc = "Add file",
|
||||||
|
ft = { "NvimTree", "neo-tree", "oil", "minifiles", "netrw", "snacks_picker_list" },
|
||||||
|
},
|
||||||
|
-- Diff management
|
||||||
|
{ "<leader>aa", "<cmd>ClaudeCodeDiffAccept<cr>", desc = "Accept diff" },
|
||||||
|
{ "<leader>ad", "<cmd>ClaudeCodeDiffDeny<cr>", desc = "Deny diff" },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
local o = vim.opt
|
||||||
|
local map = vim.api.nvim_set_keymap
|
||||||
|
|
||||||
|
vim.g.mapleader = ","
|
||||||
|
vim.g.maplocalleader = " "
|
||||||
|
vim.g.coq_v1 = true
|
||||||
|
o.modeline = true
|
||||||
|
o.number = true
|
||||||
|
o.relativenumber = true
|
||||||
|
o.clipboard = "unnamedplus"
|
||||||
|
o.viminfo = ""
|
||||||
@@ -0,0 +1,208 @@
|
|||||||
|
local telescope = require('telescope')
|
||||||
|
|
||||||
|
telescope.setup({
|
||||||
|
defaults = {
|
||||||
|
file_ignore_patterns = { '.git' },
|
||||||
|
mappings = {
|
||||||
|
i = {
|
||||||
|
['<C-o>'] = { '<Esc>', type = 'command' },
|
||||||
|
['<Esc>'] = 'close',
|
||||||
|
['<C-s>'] = 'select_horizontal',
|
||||||
|
},
|
||||||
|
n = {
|
||||||
|
q = 'close',
|
||||||
|
['<C-o>'] = { '<Nop>', type = 'command' },
|
||||||
|
['<C-s>'] = 'select_horizontal',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
sorting_strategy = 'ascending',
|
||||||
|
layout_config = {
|
||||||
|
prompt_position = 'top',
|
||||||
|
},
|
||||||
|
prompt_prefix = '❯ ',
|
||||||
|
selection_caret = '❯ ',
|
||||||
|
multi_icon = '●',
|
||||||
|
},
|
||||||
|
pickers = {
|
||||||
|
buffers = {
|
||||||
|
mappings = {
|
||||||
|
n = {
|
||||||
|
dd = 'delete_buffer',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
find_files = {
|
||||||
|
hidden = true,
|
||||||
|
},
|
||||||
|
lsp_code_actions = {
|
||||||
|
initial_mode = 'normal',
|
||||||
|
},
|
||||||
|
lsp_range_code_actions = {
|
||||||
|
initial_mode = 'normal',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
telescope.load_extension('fzf')
|
||||||
|
|
||||||
|
-- taken from https://github.com/nvim-telescope/telescope-ui-select.nvim for code actions
|
||||||
|
telescope.register_extension {
|
||||||
|
setup = function(topts)
|
||||||
|
local specific_opts = vim.F.if_nil(topts.specific_opts, {})
|
||||||
|
topts.specific_opts = nil
|
||||||
|
|
||||||
|
if #topts == 1 and topts[1] ~= nil then
|
||||||
|
topts = topts[1]
|
||||||
|
end
|
||||||
|
|
||||||
|
local pickers = require "telescope.pickers"
|
||||||
|
local finders = require "telescope.finders"
|
||||||
|
local conf = require("telescope.config").values
|
||||||
|
local actions = require "telescope.actions"
|
||||||
|
local action_state = require "telescope.actions.state"
|
||||||
|
local strings = require "plenary.strings"
|
||||||
|
local entry_display = require "telescope.pickers.entry_display"
|
||||||
|
local utils = require "telescope.utils"
|
||||||
|
|
||||||
|
__TelescopeUISelectSpecificOpts = vim.F.if_nil(
|
||||||
|
__TelescopeUISelectSpecificOpts,
|
||||||
|
vim.tbl_extend("keep", specific_opts, {
|
||||||
|
["codeaction"] = {
|
||||||
|
make_indexed = function(items)
|
||||||
|
local indexed_items = {}
|
||||||
|
local widths = {
|
||||||
|
idx = 0,
|
||||||
|
command_title = 0,
|
||||||
|
client_name = 0,
|
||||||
|
}
|
||||||
|
for idx, item in ipairs(items) do
|
||||||
|
local client = vim.lsp.get_client_by_id(item[1])
|
||||||
|
local entry = {
|
||||||
|
idx = idx,
|
||||||
|
["add"] = {
|
||||||
|
command_title = item[2].title:gsub("\r\n", "\\r\\n"):gsub("\n", "\\n"),
|
||||||
|
client_name = client and client.name or "",
|
||||||
|
},
|
||||||
|
text = item,
|
||||||
|
}
|
||||||
|
table.insert(indexed_items, entry)
|
||||||
|
widths.idx = math.max(widths.idx, strings.strdisplaywidth(entry.idx))
|
||||||
|
widths.command_title = math.max(widths.command_title,
|
||||||
|
strings.strdisplaywidth(entry.add.command_title))
|
||||||
|
widths.client_name = math.max(widths.client_name,
|
||||||
|
strings.strdisplaywidth(entry.add.client_name))
|
||||||
|
end
|
||||||
|
return indexed_items, widths
|
||||||
|
end,
|
||||||
|
make_displayer = function(widths)
|
||||||
|
return entry_display.create {
|
||||||
|
separator = " ",
|
||||||
|
items = {
|
||||||
|
{ width = widths.idx + 1 }, -- +1 for ":" suffix
|
||||||
|
{ width = widths.command_title },
|
||||||
|
{ width = widths.client_name },
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
make_display = function(displayer)
|
||||||
|
return function(e)
|
||||||
|
return displayer {
|
||||||
|
{ e.value.idx .. ":", "TelescopePromptPrefix" },
|
||||||
|
{ e.value.add.command_title },
|
||||||
|
{ e.value.add.client_name, "TelescopeResultsComment" },
|
||||||
|
}
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
make_ordinal = function(e)
|
||||||
|
return e.idx .. e.add["command_title"]
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
)
|
||||||
|
|
||||||
|
vim.ui.select = function(items, opts, on_choice)
|
||||||
|
opts = opts or {}
|
||||||
|
local prompt = vim.F.if_nil(opts.prompt, "Select one of")
|
||||||
|
if prompt:sub(-1, -1) == ":" then
|
||||||
|
prompt = prompt:sub(1, -2)
|
||||||
|
end
|
||||||
|
opts.format_item = vim.F.if_nil(opts.format_item, function(e)
|
||||||
|
return tostring(e)
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- We want or here because __TelescopeUISelectSpecificOpts[x] can be either nil or even false -> {}
|
||||||
|
local sopts = __TelescopeUISelectSpecificOpts[vim.F.if_nil(opts.kind, "")] or {}
|
||||||
|
local indexed_items, widths = vim.F.if_nil(sopts.make_indexed, function(items_)
|
||||||
|
local indexed_items = {}
|
||||||
|
for idx, item in ipairs(items_) do
|
||||||
|
table.insert(indexed_items, { idx = idx, text = item })
|
||||||
|
end
|
||||||
|
return indexed_items
|
||||||
|
end)(items)
|
||||||
|
local displayer = vim.F.if_nil(sopts.make_displayer, function()
|
||||||
|
end)(widths)
|
||||||
|
local make_display = vim.F.if_nil(sopts.make_display, function(_)
|
||||||
|
return function(e)
|
||||||
|
local x, _ = opts.format_item(e.value.text)
|
||||||
|
return x
|
||||||
|
end
|
||||||
|
end)(displayer)
|
||||||
|
local make_ordinal = vim.F.if_nil(sopts.make_ordinal, function(e)
|
||||||
|
return opts.format_item(e.text)
|
||||||
|
end)
|
||||||
|
pickers.new(topts, {
|
||||||
|
prompt_title = prompt,
|
||||||
|
finder = finders.new_table {
|
||||||
|
results = indexed_items,
|
||||||
|
entry_maker = function(e)
|
||||||
|
return {
|
||||||
|
value = e,
|
||||||
|
display = make_display,
|
||||||
|
ordinal = make_ordinal(e),
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
attach_mappings = function(prompt_bufnr)
|
||||||
|
actions.select_default:replace(function()
|
||||||
|
local selection = action_state.get_selected_entry()
|
||||||
|
if selection == nil then
|
||||||
|
utils.__warn_no_selection "ui-select"
|
||||||
|
return
|
||||||
|
end
|
||||||
|
actions.close(prompt_bufnr)
|
||||||
|
on_choice(selection.value.text, selection.value.idx)
|
||||||
|
end)
|
||||||
|
return true
|
||||||
|
end,
|
||||||
|
sorter = conf.generic_sorter(topts),
|
||||||
|
}):find()
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
|
||||||
|
local map = vim.api.nvim_set_keymap
|
||||||
|
|
||||||
|
map('n', '<Leader>pf', '<Cmd>Telescope find_files<CR>', { noremap = true })
|
||||||
|
map('n', '<Leader>pb', '<Cmd>Telescope buffers<CR>', { noremap = true })
|
||||||
|
map('n', '<Leader>po', '<Cmd>Telescope lsp_document_symbols<CR>', { noremap = true })
|
||||||
|
map('n', '<Leader>ps', '<Cmd>Telescope lsp_workspace_symbols<CR>', { noremap = true })
|
||||||
|
map('n', '<Leader>pd', '<Cmd>Telescope lsp_definitions<CR>', { noremap = true })
|
||||||
|
map('n', '<Leader>pr', '<Cmd>Telescope lsp_references<CR>', { noremap = true })
|
||||||
|
map('n', '<Leader>pp', '<C-^>', { noremap = true })
|
||||||
|
map('n', '<Leader>p', ':Telescope ', { noremap = true })
|
||||||
|
map('n', '<Leader>p ', ':Telescope ', { noremap = true })
|
||||||
|
|
||||||
|
map('n', '<Leader>.', ':lua vim.lsp.buf.code_action()<CR>', { noremap = true })
|
||||||
|
map('n', '<Leader>pn', '<Cmd>lua vim.lsp.buf.rename()<CR>', { noremap = true })
|
||||||
|
|
||||||
|
-- vim.cmd [[
|
||||||
|
-- function! s:telescope_hlsetup() abort
|
||||||
|
-- highlight link TelescopeBorder NonText
|
||||||
|
-- highlight link TelescopeTitle NonText
|
||||||
|
-- endfunction
|
||||||
|
-- call s:telescope_hlsetup()
|
||||||
|
-- augroup telescope_hlsetup
|
||||||
|
-- au!
|
||||||
|
-- au ColorScheme * call s:telescope_hlsetup()
|
||||||
|
-- augroup END
|
||||||
|
-- ]]
|
||||||
@@ -0,0 +1,873 @@
|
|||||||
|
global !p
|
||||||
|
|
||||||
|
# thanks to gilles castel
|
||||||
|
|
||||||
|
def math():
|
||||||
|
return vim.eval('vimtex#syntax#in_mathzone()') == '1'
|
||||||
|
|
||||||
|
def env(name):
|
||||||
|
[x,y] = vim.eval("vimtex#env#is_inside('" + name + "')")
|
||||||
|
return x != '0' and y != '0'
|
||||||
|
endglobal
|
||||||
|
|
||||||
|
# General
|
||||||
|
|
||||||
|
snippet beg "Begin / End" bA
|
||||||
|
\\begin{$1}
|
||||||
|
$2
|
||||||
|
\\end{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet pac "Package" b
|
||||||
|
\usepackage[$1]{$2}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet template "Basic template" b
|
||||||
|
\documentclass[$1]{$2}
|
||||||
|
|
||||||
|
$3
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
$0
|
||||||
|
\end{document}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet item "Itemize" bA
|
||||||
|
\begin{itemize}
|
||||||
|
\item $0
|
||||||
|
\end{itemize}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet enum "Enumerate" bA
|
||||||
|
\begin{enumerate}
|
||||||
|
\item $0
|
||||||
|
\end{enumerate}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet alph "Alphabet Enumerate" bA
|
||||||
|
\begin{enumerate}[label= (\alph*)]
|
||||||
|
\item $1
|
||||||
|
\end{enumerate} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet desc "Description" bA
|
||||||
|
\begin{description}
|
||||||
|
\item[$1] $2
|
||||||
|
\end{description} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet table "Table" b
|
||||||
|
\begin{table}[${1:htpb}]
|
||||||
|
\centering
|
||||||
|
\caption{$2}
|
||||||
|
\label{tab:$3}
|
||||||
|
\begin{tabular}{${5:c}}
|
||||||
|
$6${5/((?<=.)c|l|r)|./(?1: & )/g}
|
||||||
|
\end{tabular}
|
||||||
|
\end{table} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet algorithm "Algorithm" b
|
||||||
|
\begin{algorithm}[${1:H}]
|
||||||
|
\caption{$2}\label{tab:$3}
|
||||||
|
\begin{algorithmic}[${4:1}]
|
||||||
|
$5
|
||||||
|
\end{algorithmic}
|
||||||
|
\end{algorithm} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 100
|
||||||
|
snippet ... "Ldots" iA
|
||||||
|
\ldots
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet ~~ "Sim" iA
|
||||||
|
\sim
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet section "Section" bA
|
||||||
|
\sect{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet subsection "Subsection" bA
|
||||||
|
\subsect{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet chapter "Chapter" bA
|
||||||
|
\chapter{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet ppart "Part" bA
|
||||||
|
\part{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet theorem "Theorem" bA
|
||||||
|
\begin{theorem}[$1]
|
||||||
|
$2
|
||||||
|
\end{theorem} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet definition "Definition" bA
|
||||||
|
\begin{definition}[$1]
|
||||||
|
$2
|
||||||
|
\end{definition} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet example "Example" bA
|
||||||
|
\begin{eg}[$1]
|
||||||
|
$2
|
||||||
|
\end{eg} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
# Math
|
||||||
|
|
||||||
|
snippet sm "Math" wA
|
||||||
|
$${1}$`!p
|
||||||
|
if t[2] and t[2][0] not in [',', '.', '?', '-', ' ']:
|
||||||
|
snip.rv = ' '
|
||||||
|
else:
|
||||||
|
snip.rv = ''
|
||||||
|
`$2
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet dm "Display Math" wA
|
||||||
|
|
||||||
|
\[
|
||||||
|
$1
|
||||||
|
\] $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet ali "Align" bA
|
||||||
|
\begin{align*}
|
||||||
|
${1:${VISUAL}}
|
||||||
|
\end{align*} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet => "Implies" Ai
|
||||||
|
\implies
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet =< "Implied by" Ai
|
||||||
|
\impliedby
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet iff "Iff" Ai
|
||||||
|
\iff
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet `(?<!\\)bm` "Bm" rwAi
|
||||||
|
\bm{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet `(?<!\\)emph` "Emphasize" rwAi
|
||||||
|
\emph{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet `(?<!\\)sqrt` "Square root" rwAi
|
||||||
|
\sqrt{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet `(?<!\\)box` "Boxed" rwAi
|
||||||
|
\boxed{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet lll "L" iA
|
||||||
|
\ell
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet xx "Cross" iA
|
||||||
|
\times
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 100
|
||||||
|
context "math()"
|
||||||
|
snippet ** "Cdot" iA
|
||||||
|
\cdot
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet norm "Norm" iA
|
||||||
|
\|$1\|$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet nrml "Normal Subgroup" iA
|
||||||
|
\triangleleft
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet nabl "Nabla" iA
|
||||||
|
\nabla
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet \\\ "Set minus" iA
|
||||||
|
\setminus
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet mcal "mathcal" iA
|
||||||
|
\mathcal{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 100
|
||||||
|
context "math()"
|
||||||
|
snippet -> "To" iA
|
||||||
|
\to
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 100
|
||||||
|
context "math()"
|
||||||
|
snippet -< "Gets" iA
|
||||||
|
\gets
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 200
|
||||||
|
context "math()"
|
||||||
|
snippet <-> "Leftrightarrow" iA
|
||||||
|
\leftrightarrow
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet !> "Maps to" iA
|
||||||
|
\mapsto
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet set "Set" wA
|
||||||
|
\left\\{ $1 \right\\} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet || "Mid" iA
|
||||||
|
\mid
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet cc "Subset" wA
|
||||||
|
\subset
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet notin "Not in" iA
|
||||||
|
\not\in
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 10
|
||||||
|
context "math()"
|
||||||
|
snippet inn "In" iA
|
||||||
|
\in
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet NN "Natural" iA
|
||||||
|
\N
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet Nn "Cap" iA
|
||||||
|
\cap
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet isect "Cap" iA
|
||||||
|
\cap
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet UU "Cup" iA
|
||||||
|
\cup
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet union "Cup" iA
|
||||||
|
\cup
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet uuu "Big cup" iA
|
||||||
|
\bigcup_{${1:i \in ${2: I}}} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet nnn "Big cap" iA
|
||||||
|
\bigcap_{${1:i \in ${2: I}}} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet OO "Empty Set" iA
|
||||||
|
\varnothing
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet RR "Real" iA
|
||||||
|
\R
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet QQ "Rational" iA
|
||||||
|
\Q
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet ZZ "Integer" iA
|
||||||
|
\Z
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet HH "H" iA
|
||||||
|
\mathbb{H}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet DD "D" iA
|
||||||
|
\mathbb{D}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet <! "Normal" iA
|
||||||
|
\triangleleft
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet <> "Diamond" iA
|
||||||
|
\diamond
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet '(?<!i)sts' "Text Subscript" irA
|
||||||
|
_\text{$1} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet tt "Text" iA
|
||||||
|
\text{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet opn "Operator Name" iA
|
||||||
|
\operatorname{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 200
|
||||||
|
context "math()"
|
||||||
|
snippet rowvec "Row Vector" iA
|
||||||
|
\mqty[$1]$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 200
|
||||||
|
context "math()"
|
||||||
|
snippet cvec "Column Vector" iA
|
||||||
|
\begin{pmatrix} ${1:x}_${2:1}\\\\ \vdots\\\\ $1_${2:n} \end{pmatrix}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet case "Cases" wA
|
||||||
|
\begin{cases}
|
||||||
|
$1
|
||||||
|
\end{cases} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 10
|
||||||
|
context "math()"
|
||||||
|
snippet "bar" "Bar" riA
|
||||||
|
\overline{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 100
|
||||||
|
context "math()"
|
||||||
|
snippet "([a-zA-Z])bar" "Bar" riA
|
||||||
|
\overline{`!p snip.rv = match.group(1)`}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 10
|
||||||
|
context "math()"
|
||||||
|
snippet "hat" "Hat" ri
|
||||||
|
\hat{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 100
|
||||||
|
context "math()"
|
||||||
|
snippet "([a-zA-Z])hat" "Hat" ri
|
||||||
|
\hat{`!p snip.rv = match.group(1)`}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 10
|
||||||
|
context "math()"
|
||||||
|
snippet "vec" "Vec" riA
|
||||||
|
\vec{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 100
|
||||||
|
context "math()"
|
||||||
|
snippet "([a-zA-Z])vec" "Vec" riA
|
||||||
|
\vec{`!p snip.rv = match.group(1)`}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 100
|
||||||
|
context "math()"
|
||||||
|
snippet '(?<!\\)(sin|cos|tan|arccot|cot|csc|ln|log|exp|star|perp|arcsin|arccos|arctan|arccot|arccsc|arcsec)' "Functions" rwA
|
||||||
|
\\`!p snip.rv = match.group(1)`
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 1000
|
||||||
|
context "math()"
|
||||||
|
snippet `(?<!\\)epsi` "Epsilon" rwA
|
||||||
|
\epsilon
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 500
|
||||||
|
context "math()"
|
||||||
|
snippet '(?<!\\)(alpha|beta|gamma|Delta|delta|epsilon|zeta|eta|Theta|theta|iota|kappa|Lambda|lambda|mu|nu|Xi|Pi|pi|varpi|Sigma|sigma|tau|Phi|phi|varphi|chi|Psi|psi|Omega|omega)' "Greek" rwA
|
||||||
|
\\`!p snip.rv = match.group(1)`
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet 'emptyset' "Emptyset" rwA
|
||||||
|
\varnothing
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet '(?<!\\)xxi' "Xi" rwA
|
||||||
|
\xi
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet '(?<!\\)rho' "Rho" rwA
|
||||||
|
\rho
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet // "Fraction" iA
|
||||||
|
\\frac{${VISUAL}}{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet / "Fraction" i
|
||||||
|
\\frac{${VISUAL}}{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet '((\d+)|(\d*)(\\)?([A-Za-z]+)((\^|_)(\{\d+\}|\d))*)/' "Symbol Fraction" wrA
|
||||||
|
\\frac{`!p snip.rv = match.group(1)`}{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 1000
|
||||||
|
context "math()"
|
||||||
|
snippet '^.*\)/' "() Frac" wrA
|
||||||
|
`!p
|
||||||
|
stripped = match.string[:-1]
|
||||||
|
depth = 0
|
||||||
|
i = len(stripped) - 1
|
||||||
|
while True:
|
||||||
|
if stripped[i] == ")":
|
||||||
|
depth += 1
|
||||||
|
if stripped[i] == "(":
|
||||||
|
depth -= 1
|
||||||
|
if depth == 0:
|
||||||
|
break
|
||||||
|
i -= 1
|
||||||
|
snip.rv = stripped[0:i] + "\\frac{" + stripped[i+1:-1] + "}"
|
||||||
|
`{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet __ "Full Subscript" iA
|
||||||
|
_{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet '([A-Za-z])(\d)' "Subscript" wrA
|
||||||
|
`!p snip.rv = match.group(1)`_`!p snip.rv = match.group(2)`
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet '([A-Za-z])(\d\d)' "Subscript 2" wrA
|
||||||
|
`!p snip.rv = match.group(1)`_{`!p snip.rv = match.group(2)`}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet xnn "Subscript xn" iA
|
||||||
|
x_{n}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet ynn "Subscript yn" iA
|
||||||
|
y_{n}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet xii "Subscript xi" iA
|
||||||
|
x_{i}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet yii "Subscript yi" iA
|
||||||
|
y_{i}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet xjj "Subscript xj" iA
|
||||||
|
x_{j}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet yjj "Subscript yj" iA
|
||||||
|
y_{j}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet xp1 "Subscript x n+1" iA
|
||||||
|
x_{n+1}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet xp1 "Subscript y n+1" iA
|
||||||
|
y_{n+1}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet xmm "Subscript xm" iA
|
||||||
|
x_{m}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet ymm "Subscript ym" iA
|
||||||
|
y_{m}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet x_ "Subscript x" iA
|
||||||
|
x_{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet y_ "Subscript y" iA
|
||||||
|
y_{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet == "Equals" iA
|
||||||
|
&= $1 \\\\$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet != "Not Equals" iA
|
||||||
|
\neq
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet ceil "Ceil" iA
|
||||||
|
\left\lceil $1 \right\rceil $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet floor "Floor" iA
|
||||||
|
\left\lfloor $1 \right\rfloor$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet pmat "Paren Matrix" iA
|
||||||
|
\begin{pmatrix} $1 \end{pmatrix} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet matr "Bracket Matrix" iA
|
||||||
|
\begin{bmatrix} $1 \end{bmatrix} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet Bmat "Brace Matrix" iA
|
||||||
|
\begin{Bmatrix} $1 \end{Bmatrix} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet vmat "Vert Matrix" iA
|
||||||
|
\begin{vmatrix} $1 \end{vmatrix} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet () "Parenthesis" iA
|
||||||
|
\left( ${1:${VISUAL}} \right) $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet lr "Parenthesis" i
|
||||||
|
\left( ${1:${VISUAL}} \right) $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet lr( "Parenthesis" i
|
||||||
|
\left( ${1:${VISUAL}} \right) $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet lr| "Verticals" i
|
||||||
|
\left| ${1:${VISUAL}} \right| $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet lr{ "Braces" i
|
||||||
|
\left\\{ ${1:${VISUAL}} \right\\} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet lrb "Braces" i
|
||||||
|
\left\\{ ${1:${VISUAL}} \right\\} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet lr[ "Brackets" i
|
||||||
|
\left[ ${1:${VISUAL}} \right] $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet lra "Angled" iA
|
||||||
|
\left<${1:${VISUAL}} \right>$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet conj "Conjugate" iA
|
||||||
|
\overline{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet sr "Square" iA
|
||||||
|
^2
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet cb "Cube" iA
|
||||||
|
^3
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet invs "Inverse" iA
|
||||||
|
^{-1}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet compl "Complement" iA
|
||||||
|
^{c}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet tp "To the power" iA
|
||||||
|
^{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet bp "Paren to the power" iA
|
||||||
|
^{($1)}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet sum "Bounded Sum" w
|
||||||
|
\sum_{${1:n=${2:1}}}^{${3:\infty}} $4
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet prod "Product" w
|
||||||
|
\prod_{${1:n=${2:1}}}^{${3:\infty}} $4
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet ssum "Sum Symbol" w
|
||||||
|
\sum $1
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet lim "Limit" w
|
||||||
|
\lim_{${1:n} \to ${2:\infty}} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet ooo "Infinity" iA
|
||||||
|
\infty
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet limsup "Limit Supremum" w
|
||||||
|
\limsup_{${1:n} \to ${2:\infty}} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet part "Partial Derivative" w
|
||||||
|
\pdv[$1]{${2:v}}{${3:x}} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet `(?<!\\)dd` "Differential" rwA
|
||||||
|
\dd{$1}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet dv "Derivative" wA
|
||||||
|
\dv{$1}{$2}$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 300
|
||||||
|
context "math()"
|
||||||
|
snippet int "Definite Integral" w
|
||||||
|
\int_{${1:-\infty}}^{${2:\infty}} $3
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
priority 300
|
||||||
|
context "math()"
|
||||||
|
snippet iint "Indefinite Integral" w
|
||||||
|
\int $1
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet <= "Less than or equal" iA
|
||||||
|
\le
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet >= "Greater than or equal" iA
|
||||||
|
\ge
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet >> "Greater greater" iA
|
||||||
|
\gg
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet << "Less less" iA
|
||||||
|
\ll
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet EE "There exists" iA
|
||||||
|
\exists
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet AA "For all" iA
|
||||||
|
\forall
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet "such that" "Such that" iA
|
||||||
|
\suchthat
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet "suchthat" "Suchthat" iA
|
||||||
|
\suchthat
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet image "Image" wA
|
||||||
|
\begin{figure}[${1:h}]
|
||||||
|
\includegraphics[width=${2:0.5}\textwidth]{$3}
|
||||||
|
\end{figure} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet tikzfig "Tikz Figure" wA
|
||||||
|
\begin{figure}[${1:H}]
|
||||||
|
\begin{center}
|
||||||
|
\begin{tikzpicture}
|
||||||
|
$2
|
||||||
|
\end{tikzpicture}
|
||||||
|
\end{center}
|
||||||
|
\end{figure} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet plot "Plot" w
|
||||||
|
\begin{figure}[$1]
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}[
|
||||||
|
xmin= ${2:-10}, xmax= ${3:10},
|
||||||
|
ymin= ${4:-10}, ymax = ${5:10},
|
||||||
|
axis lines = middle,
|
||||||
|
]
|
||||||
|
\addplot[domain=$2:$3, samples=${6:100}]{$7};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{$8}\label{plot:$9}
|
||||||
|
\end{figure} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet nn "Tikz node" w
|
||||||
|
\node[$5] (${1/[^0-9a-zA-Z]//g}${2}) ${3:at (${4:0,0}) }{$${1}$};
|
||||||
|
$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet problem "Problem" biA
|
||||||
|
\pbl{$1}
|
||||||
|
$0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
# English
|
||||||
|
|
||||||
|
snippet ltable "Long table" b
|
||||||
|
\begin{longtable}{${1:|p{5cm}|p{10cm}|}}
|
||||||
|
\hline
|
||||||
|
$2
|
||||||
|
\hline
|
||||||
|
\end{longtable} $0
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet '(?<!\\)---' "Hline" rwA
|
||||||
|
\hline
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet '(?<!\\)--' "Dash" rw
|
||||||
|
\---
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
# Code
|
||||||
|
|
||||||
|
snippet bsc "Blank Inline Code" wA
|
||||||
|
\texttt{${1}}`!p
|
||||||
|
if t[2] and t[2][0] not in [',', '.', '?', '-', ' ']:
|
||||||
|
snip.rv = ' '
|
||||||
|
else:
|
||||||
|
snip.rv = ''
|
||||||
|
`$2
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet ssc "Inline Code" wA
|
||||||
|
{\inlinecode{${1}}{${2}}}`!p
|
||||||
|
if t[2] and t[2][0] not in [',', '.', '?', '-', ' ']:
|
||||||
|
snip.rv = ' '
|
||||||
|
else:
|
||||||
|
snip.rv = ''
|
||||||
|
`$3
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet dc "Block Code" wA
|
||||||
|
\begin{listing}[${1:H}]
|
||||||
|
\caption{$2}
|
||||||
|
\label{lst:$3}
|
||||||
|
\begin{code}{$4}
|
||||||
|
$5
|
||||||
|
\end{code} $0
|
||||||
|
\end{listing}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
snippet impc "Import Code" wA
|
||||||
|
\begin{listing}[${1:H}]
|
||||||
|
\caption{$2}
|
||||||
|
\label{lst:$3}
|
||||||
|
\importcode{$4}{$5}$0
|
||||||
|
\end{listing}
|
||||||
|
endsnippet
|
||||||
|
|
||||||
|
# Pres
|
||||||
|
|
||||||
|
snippet frame "Frame" bA
|
||||||
|
\begin{frame}{$1}
|
||||||
|
$2
|
||||||
|
\end{frame} $0
|
||||||
|
endsnippet
|
||||||
+62
-38
@@ -36,7 +36,7 @@ local lspstatus = require('lsp-status')
|
|||||||
lspstatus.register_progress()
|
lspstatus.register_progress()
|
||||||
|
|
||||||
local function find_repo_root(names)
|
local function find_repo_root(names)
|
||||||
local util = require("lspconfig.util")
|
local util = vim.lsp.config.util
|
||||||
local config = names.configfiles
|
local config = names.configfiles
|
||||||
local function matcher(filename, _bufnr)
|
local function matcher(filename, _bufnr)
|
||||||
local gitroot = util.root_pattern('.git')(filename)
|
local gitroot = util.root_pattern('.git')(filename)
|
||||||
@@ -71,6 +71,8 @@ local lsp_confs = {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
solidity_ls = {},
|
||||||
|
coq_lsp = {},
|
||||||
racket_langserver = {},
|
racket_langserver = {},
|
||||||
ocamllsp = {},
|
ocamllsp = {},
|
||||||
rust_analyzer = {
|
rust_analyzer = {
|
||||||
@@ -79,10 +81,11 @@ local lsp_confs = {
|
|||||||
},
|
},
|
||||||
settings = {
|
settings = {
|
||||||
["rust-analyzer"] = {
|
["rust-analyzer"] = {
|
||||||
checkOnSave = {
|
checkOnSave = true,
|
||||||
command = "clippy",
|
-- checkOnSave = {
|
||||||
allTargets = false,
|
-- command = "clippy",
|
||||||
},
|
-- allTargets = false,
|
||||||
|
-- },
|
||||||
cargo = {
|
cargo = {
|
||||||
features = "all",
|
features = "all",
|
||||||
}
|
}
|
||||||
@@ -96,7 +99,7 @@ local lsp_confs = {
|
|||||||
},
|
},
|
||||||
gopls = {},
|
gopls = {},
|
||||||
dartls = {},
|
dartls = {},
|
||||||
tsserver = {
|
ts_ls = {
|
||||||
root_dir = find_repo_root({
|
root_dir = find_repo_root({
|
||||||
configfiles = { "tsconfig.json", "jsconfig.json", "package.json" }
|
configfiles = { "tsconfig.json", "jsconfig.json", "package.json" }
|
||||||
}),
|
}),
|
||||||
@@ -111,15 +114,20 @@ local lsp_confs = {
|
|||||||
configfiles = { "astro.config.mjs" }
|
configfiles = { "astro.config.mjs" }
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
-- nargo = {
|
||||||
|
-- root_dir = find_repo_root({
|
||||||
|
-- configfiles = { "Nargo.toml" }
|
||||||
|
-- }),
|
||||||
|
-- },
|
||||||
eslint = {
|
eslint = {
|
||||||
root_dir = find_repo_root({
|
root_dir = find_repo_root({
|
||||||
configfiles = { ".eslintrc", ".eslintrc.js", "package.json" }
|
configfiles = { ".eslintrc", ".eslintrc.js", "package.json" }
|
||||||
}),
|
}),
|
||||||
on_new_config = function(config, new_root_dir)
|
on_new_config = function(config, new_root_dir)
|
||||||
local default_config = require('lspconfig.server_configurations.eslint').default_config
|
local default_config = vim.lsp.config.eslint.default_config
|
||||||
default_config.on_new_config(config, new_root_dir)
|
default_config.on_new_config(config, new_root_dir)
|
||||||
|
|
||||||
local util = require('lspconfig.util')
|
local util = vim.lsp.config.util
|
||||||
local pnp_cjs = util.path.join(new_root_dir, '.pnp.cjs')
|
local pnp_cjs = util.path.join(new_root_dir, '.pnp.cjs')
|
||||||
local pnp_js = util.path.join(new_root_dir, '.pnp.js')
|
local pnp_js = util.path.join(new_root_dir, '.pnp.js')
|
||||||
if util.path.exists(pnp_cjs) or util.path.exists(pnp_js) then
|
if util.path.exists(pnp_cjs) or util.path.exists(pnp_js) then
|
||||||
@@ -138,8 +146,6 @@ local function on_attach(client, _bufnr)
|
|||||||
lspstatus.on_attach(client)
|
lspstatus.on_attach(client)
|
||||||
end
|
end
|
||||||
|
|
||||||
local lspconfig = require('lspconfig')
|
|
||||||
|
|
||||||
|
|
||||||
for server, conf in pairs(lsp_confs) do
|
for server, conf in pairs(lsp_confs) do
|
||||||
local source_on_attach = conf.on_attach
|
local source_on_attach = conf.on_attach
|
||||||
@@ -158,26 +164,28 @@ for server, conf in pairs(lsp_confs) do
|
|||||||
lspstatus.capabilities
|
lspstatus.capabilities
|
||||||
)
|
)
|
||||||
|
|
||||||
local final_config = coq.lsp_ensure_capabilities(conf)
|
-- local final_config = coq.lsp_ensure_capabilities(conf)
|
||||||
|
local final_config = conf
|
||||||
|
|
||||||
local special_setup = lsp_special_setup[server]
|
local special_setup = lsp_special_setup[server]
|
||||||
if special_setup then
|
if special_setup then
|
||||||
special_setup(final_config)
|
special_setup(final_config)
|
||||||
else
|
else
|
||||||
lspconfig[server].setup(final_config)
|
vim.lsp.config[server] = final_config
|
||||||
|
vim.lsp.enable(server)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local null_ls = require('null-ls')
|
-- local null_ls = require('null-ls')
|
||||||
null_ls.setup({
|
-- null_ls.setup({
|
||||||
sources = {
|
-- sources = {
|
||||||
null_ls.builtins.diagnostics.chktex,
|
-- -- null_ls.builtins.diagnostics.chktex,
|
||||||
null_ls.builtins.diagnostics.cppcheck,
|
-- null_ls.builtins.diagnostics.cppcheck,
|
||||||
null_ls.builtins.diagnostics.shellcheck,
|
-- null_ls.builtins.diagnostics.shellcheck,
|
||||||
|
--
|
||||||
null_ls.builtins.code_actions.gitsigns,
|
-- null_ls.builtins.code_actions.gitsigns,
|
||||||
},
|
-- },
|
||||||
})
|
-- })
|
||||||
|
|
||||||
vim.diagnostic.config({
|
vim.diagnostic.config({
|
||||||
severity_sort = true,
|
severity_sort = true,
|
||||||
@@ -226,32 +234,48 @@ M.format_on_save_hook = function()
|
|||||||
if enabled ~= 0 and enabled ~= false then
|
if enabled ~= 0 and enabled ~= false then
|
||||||
if vim.bo.filetype ~= "plaintex" and vim.bo.filetype ~= "tex" and vim.bo.filetype ~= "latex" and
|
if vim.bo.filetype ~= "plaintex" and vim.bo.filetype ~= "tex" and vim.bo.filetype ~= "latex" and
|
||||||
vim.bo.filetype ~= "qf" and vim.bo.filetype ~= "bib" and vim.bo.filetype ~= "" and vim.bo.filetype ~= "pdf"
|
vim.bo.filetype ~= "qf" and vim.bo.filetype ~= "bib" and vim.bo.filetype ~= "" and vim.bo.filetype ~= "pdf"
|
||||||
and vim.bo.filetype ~= "conf" then
|
and vim.bo.filetype ~= "conf" and vim.bo.filetype ~= "TelescopePrompt" then
|
||||||
vim.lsp.buf.format({ async = false })
|
vim.lsp.buf.format({ async = false })
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
vim.cmd [[
|
vim.cmd [[
|
||||||
augroup hoverlspconfig
|
augroup hoverlspconfig
|
||||||
au!
|
au!
|
||||||
" diagnostic on hover
|
" diagnostic on hover
|
||||||
au BufWritePre * lua require'lsp'.format_on_save_hook()
|
au BufWritePre * lua require'lsp'.format_on_save_hook()
|
||||||
au CursorHold * lua vim.diagnostic.open_float({focus = false})
|
au CursorHold * lua vim.diagnostic.open_float({focus = false})
|
||||||
augroup END
|
augroup END
|
||||||
]]
|
]]
|
||||||
|
|
||||||
vim.api.nvim_create_autocmd({ 'FileType',
|
vim.api.nvim_create_autocmd(
|
||||||
}, {
|
{ 'FileType',
|
||||||
pattern = "*",
|
}, {
|
||||||
callback = function()
|
pattern = "*",
|
||||||
if vim.bo.filetype ~= "plaintex" and vim.bo.filetype ~= "tex" and vim.bo.filetype ~= "late" and
|
callback = function()
|
||||||
vim.bo.filetype ~= "qf" and vim.bo.filetype ~= "bib" and vim.bo.filetype ~= "" and vim.bo.filetype ~= "pdf"
|
if vim.bo.filetype ~= "plaintex" and vim.bo.filetype ~= "tex" and vim.bo.filetype ~= "latex" and
|
||||||
and vim.bo.filetype ~= "conf" then
|
vim.bo.filetype ~= "qf" and vim.bo.filetype ~= "bib" and vim.bo.filetype ~= "" and vim.bo.filetype ~= "pdf"
|
||||||
vim.cmd [[ :COQnow -s ]]
|
and vim.bo.filetype ~= "conf" and vim.bo.filetype ~= "TelescopePrompt" then
|
||||||
|
vim.defer_fn(function()
|
||||||
|
if vim.fn.exists(":COQnow") > 0 then
|
||||||
|
vim.cmd([[ :COQnow -s ]])
|
||||||
|
end
|
||||||
|
end, 10)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
for _, method in ipairs({ 'textDocument/diagnostic', 'workspace/diagnostic' }) do
|
||||||
|
local default_diagnostic_handler = vim.lsp.handlers[method]
|
||||||
|
vim.lsp.handlers[method] = function(err, result, context, config)
|
||||||
|
if err ~= nil and err.code == -32802 then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
return default_diagnostic_handler(err, result, context, config)
|
||||||
end
|
end
|
||||||
})
|
end
|
||||||
|
|
||||||
-- vim.api.nvim_create_autocmd({ 'FileType', 'BufRead', 'BufReadPre', 'BufReadPost', 'BufWrite', 'BufWritePre',
|
-- vim.api.nvim_create_autocmd({ 'FileType', 'BufRead', 'BufReadPre', 'BufReadPost', 'BufWrite', 'BufWritePre',
|
||||||
-- 'BufWritePost' }, {
|
-- 'BufWritePost' }, {
|
||||||
|
|||||||
+13
-3
@@ -2,7 +2,7 @@ local o = vim.opt
|
|||||||
local map = vim.api.nvim_set_keymap
|
local map = vim.api.nvim_set_keymap
|
||||||
|
|
||||||
vim.g.mapleader = ","
|
vim.g.mapleader = ","
|
||||||
vim.g.maplocalleader = ","
|
vim.g.maplocalleader = " "
|
||||||
o.modeline = true
|
o.modeline = true
|
||||||
o.number = true
|
o.number = true
|
||||||
o.relativenumber = true
|
o.relativenumber = true
|
||||||
@@ -14,8 +14,11 @@ o.tabstop = 4
|
|||||||
o.shiftwidth = 0
|
o.shiftwidth = 0
|
||||||
o.viminfo = ''
|
o.viminfo = ''
|
||||||
vim.g.base16colorspace = 256
|
vim.g.base16colorspace = 256
|
||||||
|
vim.g.vimtex_view_method = "zathura"
|
||||||
o.termguicolors = true
|
o.termguicolors = true
|
||||||
|
|
||||||
|
vim.b.coqtail_coq_prog = "coqidetop"
|
||||||
|
|
||||||
vim.cmd [[
|
vim.cmd [[
|
||||||
augroup spellcheck
|
augroup spellcheck
|
||||||
au!
|
au!
|
||||||
@@ -27,13 +30,20 @@ vim.cmd [[
|
|||||||
au BufRead,BufNewFile *.tex setlocal spell
|
au BufRead,BufNewFile *.tex setlocal spell
|
||||||
augroup END
|
augroup END
|
||||||
]]
|
]]
|
||||||
|
|
||||||
o.spelllang = "en_us"
|
o.spelllang = "en_us"
|
||||||
map('i', '<C-L>', '<c-g>u<Esc>[s1z=`]a<c-g>u', { noremap = true })
|
map('i', '<C-L>', '<c-g>u<Esc>[s1z=`]a<c-g>u', { noremap = true })
|
||||||
|
|
||||||
|
vim.cmd('colorscheme theme-nvim')
|
||||||
vim.cmd('colorscheme theme')
|
|
||||||
vim.g.airline_theme = 'theme'
|
vim.g.airline_theme = 'theme'
|
||||||
|
|
||||||
|
-- stupid fix for stupid problems i guess
|
||||||
|
vim.g["airline#extensions#whitespace#enabled"] = false
|
||||||
|
|
||||||
|
local color = require('base16-colorscheme').colors.base02
|
||||||
|
|
||||||
|
vim.api.nvim_set_hl(0, 'LineNr', { fg = color, bg = "none" })
|
||||||
|
|
||||||
map('n', '<Leader>s', ':%s//g<Left><Left>', {})
|
map('n', '<Leader>s', ':%s//g<Left><Left>', {})
|
||||||
map('n', '<Leader>e', ':make!<CR>', { noremap = true })
|
map('n', '<Leader>e', ':make!<CR>', { noremap = true })
|
||||||
map('n', '<C-o>', ':cclose<CR>', { noremap = true })
|
map('n', '<C-o>', ':cclose<CR>', { noremap = true })
|
||||||
|
|||||||
+58
-34
@@ -6,34 +6,69 @@ end
|
|||||||
|
|
||||||
return require('packer').startup({
|
return require('packer').startup({
|
||||||
function(use)
|
function(use)
|
||||||
use 'wbthomason/packer.nvim'
|
use {
|
||||||
|
'wbthomason/packer.nvim'
|
||||||
|
}
|
||||||
|
|
||||||
|
use {
|
||||||
|
'RRethy/base16-nvim',
|
||||||
|
}
|
||||||
|
|
||||||
use {
|
use {
|
||||||
'vim-airline/vim-airline',
|
'vim-airline/vim-airline',
|
||||||
requires = {
|
requires = {
|
||||||
'ryanoasis/vim-devicons',
|
'ryanoasis/vim-devicons',
|
||||||
}
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
use {
|
use {
|
||||||
'mustache/vim-mustache-handlebars'
|
'mustache/vim-mustache-handlebars',
|
||||||
|
}
|
||||||
|
|
||||||
|
use {
|
||||||
|
'whonore/Coqtail',
|
||||||
|
}
|
||||||
|
|
||||||
|
use {
|
||||||
|
'Julian/lean.nvim',
|
||||||
|
requires = {
|
||||||
|
'nvim-lua/plenary.nvim',
|
||||||
|
},
|
||||||
|
config = function()
|
||||||
|
require("lean").setup({
|
||||||
|
opts = { mappings = true }
|
||||||
|
})
|
||||||
|
end
|
||||||
|
}
|
||||||
|
|
||||||
|
use {
|
||||||
|
'noir-lang/noir-nvim',
|
||||||
}
|
}
|
||||||
|
|
||||||
use {
|
use {
|
||||||
'nvim-treesitter/nvim-treesitter',
|
'nvim-treesitter/nvim-treesitter',
|
||||||
run = ':TSUpdate'
|
run = ':TSUpdate',
|
||||||
|
config = function()
|
||||||
|
require("nvim-treesitter.configs").setup({
|
||||||
|
highlight = { enable = true, disable = { "latex", "ipkg", "markdown", "md" } },
|
||||||
|
indent = { enable = true, disable = { "markdown", "md" } },
|
||||||
|
ensure_installed = {},
|
||||||
|
ignore_install = { "ipkg", "markdown", "md" },
|
||||||
|
|
||||||
|
})
|
||||||
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
use {
|
use {
|
||||||
'petRUShka/vim-sage'
|
'petRUShka/vim-sage',
|
||||||
}
|
}
|
||||||
|
|
||||||
use {
|
use {
|
||||||
'evanleck/vim-svelte'
|
'evanleck/vim-svelte',
|
||||||
}
|
}
|
||||||
|
|
||||||
use {
|
use {
|
||||||
'wuelnerdotexe/vim-astro'
|
'wuelnerdotexe/vim-astro',
|
||||||
}
|
}
|
||||||
|
|
||||||
use {
|
use {
|
||||||
@@ -52,6 +87,10 @@ return require('packer').startup({
|
|||||||
'tpope/vim-repeat',
|
'tpope/vim-repeat',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
use {
|
||||||
|
'nvim-lua/plenary.nvim',
|
||||||
|
}
|
||||||
|
|
||||||
use {
|
use {
|
||||||
'lewis6991/gitsigns.nvim',
|
'lewis6991/gitsigns.nvim',
|
||||||
requires = {
|
requires = {
|
||||||
@@ -61,34 +100,19 @@ return require('packer').startup({
|
|||||||
require('gitsigns').setup {
|
require('gitsigns').setup {
|
||||||
signs = {
|
signs = {
|
||||||
add = {
|
add = {
|
||||||
hl = 'GitSignsAdd',
|
|
||||||
text = '│',
|
text = '│',
|
||||||
numhl = 'GitSignsAddNr',
|
|
||||||
linehl = 'GitSignsAddLn'
|
|
||||||
},
|
},
|
||||||
change = {
|
change = {
|
||||||
hl = 'GitSignsChange',
|
|
||||||
text = '│',
|
text = '│',
|
||||||
numhl = 'GitSignsChangeNr',
|
|
||||||
linehl = 'GitSignsChangeLn'
|
|
||||||
},
|
},
|
||||||
delete = {
|
delete = {
|
||||||
hl = 'GitSignsDelete',
|
|
||||||
text = '_',
|
text = '_',
|
||||||
numhl = 'GitSignsDeleteNr',
|
|
||||||
linehl = 'GitSignsDeleteLn'
|
|
||||||
},
|
},
|
||||||
topdelete = {
|
topdelete = {
|
||||||
hl = 'GitSignsDelete',
|
|
||||||
text = '‾',
|
text = '‾',
|
||||||
numhl = 'GitSignsDeleteNr',
|
|
||||||
linehl = 'GitSignsDeleteLn'
|
|
||||||
},
|
},
|
||||||
changedelete = {
|
changedelete = {
|
||||||
hl = 'GitSignsChange',
|
|
||||||
text = '~',
|
text = '~',
|
||||||
numhl = 'GitSignsChangeNr',
|
|
||||||
linehl = 'GitSignsChangeLn'
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
@@ -102,11 +126,11 @@ return require('packer').startup({
|
|||||||
},
|
},
|
||||||
config = function()
|
config = function()
|
||||||
require('flutter-tools').setup {
|
require('flutter-tools').setup {
|
||||||
lsp = {
|
-- lsp = {
|
||||||
color = {
|
-- color = {
|
||||||
enabled = false
|
-- enabled = false
|
||||||
}
|
-- }
|
||||||
}
|
-- }
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
@@ -170,6 +194,7 @@ return require('packer').startup({
|
|||||||
|
|
||||||
use {
|
use {
|
||||||
'neovim/nvim-lspconfig',
|
'neovim/nvim-lspconfig',
|
||||||
|
disable = true,
|
||||||
-- commit = "607ff48b970b89c3e4e3825b88d9cfd05b7aaea5",
|
-- commit = "607ff48b970b89c3e4e3825b88d9cfd05b7aaea5",
|
||||||
requires = {
|
requires = {
|
||||||
'nvim-lua/lsp-status.nvim',
|
'nvim-lua/lsp-status.nvim',
|
||||||
@@ -183,12 +208,12 @@ return require('packer').startup({
|
|||||||
'ms-jpq/coq.artifacts',
|
'ms-jpq/coq.artifacts',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
-- {
|
||||||
'jose-elias-alvarez/null-ls.nvim',
|
-- 'jose-elias-alvarez/null-ls.nvim',
|
||||||
requires = {
|
-- requires = {
|
||||||
'nvim-lua/plenary.nvim',
|
-- 'nvim-lua/plenary.nvim',
|
||||||
},
|
-- },
|
||||||
},
|
-- },
|
||||||
},
|
},
|
||||||
config = import('lsp'),
|
config = import('lsp'),
|
||||||
}
|
}
|
||||||
@@ -208,7 +233,6 @@ return require('packer').startup({
|
|||||||
|
|
||||||
use {
|
use {
|
||||||
'iamcco/markdown-preview.nvim',
|
'iamcco/markdown-preview.nvim',
|
||||||
commit = "02cc3874738bc0f86e4b91f09b8a0ac88aef8e96",
|
|
||||||
run = "cd app && npm install",
|
run = "cd app && npm install",
|
||||||
setup = function() vim.g.mkdp_filetypes = { "markdown" } end, ft = { "markdown" },
|
setup = function() vim.g.mkdp_filetypes = { "markdown" } end, ft = { "markdown" },
|
||||||
config = function()
|
config = function()
|
||||||
|
|||||||
@@ -193,6 +193,7 @@ map('n', '<Leader>p', ':Telescope ', { noremap = true })
|
|||||||
map('n', '<Leader>p ', ':Telescope ', { noremap = true })
|
map('n', '<Leader>p ', ':Telescope ', { noremap = true })
|
||||||
|
|
||||||
map('n', '<Leader>.', ':lua vim.lsp.buf.code_action()<CR>', { noremap = true })
|
map('n', '<Leader>.', ':lua vim.lsp.buf.code_action()<CR>', { noremap = true })
|
||||||
|
map('n', '<Leader>pn', '<Cmd>lua vim.lsp.buf.rename()<CR>', { noremap = true })
|
||||||
|
|
||||||
-- vim.cmd [[
|
-- vim.cmd [[
|
||||||
-- function! s:telescope_hlsetup() abort
|
-- function! s:telescope_hlsetup() abort
|
||||||
|
|||||||
@@ -198,6 +198,11 @@ snippet norm "Norm" iA
|
|||||||
\|$1\|$0
|
\|$1\|$0
|
||||||
endsnippet
|
endsnippet
|
||||||
|
|
||||||
|
context "math()"
|
||||||
|
snippet nrml "Normal Subgroup" iA
|
||||||
|
\triangleleft
|
||||||
|
endsnippet
|
||||||
|
|
||||||
context "math()"
|
context "math()"
|
||||||
snippet nabl "Nabla" iA
|
snippet nabl "Nabla" iA
|
||||||
\nabla
|
\nabla
|
||||||
|
|||||||
+11
-4
@@ -10,7 +10,14 @@
|
|||||||
# shadow = false
|
# shadow = false
|
||||||
shadow = true;
|
shadow = true;
|
||||||
|
|
||||||
shadow-exclude-reg = "x30+0+0";
|
# shadow-exclude = [ "x = 0 && y = 0 && override_redirect = true" ]
|
||||||
|
# shadow-exclude = [
|
||||||
|
# "! name~=''"
|
||||||
|
# ]
|
||||||
|
|
||||||
|
# clip-shadow-above = true
|
||||||
|
# shadow-exclude-reg = "x30+0+0";
|
||||||
|
# shadow-exclude = "x30+0+0";
|
||||||
# The blur radius for shadows, in pixels. (defaults to 12)
|
# The blur radius for shadows, in pixels. (defaults to 12)
|
||||||
# shadow-radius = 12
|
# shadow-radius = 12
|
||||||
shadow-radius = 7;
|
shadow-radius = 7;
|
||||||
@@ -125,8 +132,8 @@ fade-out-step = 0.08;
|
|||||||
|
|
||||||
|
|
||||||
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
|
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
|
||||||
# inactive-opacity = 1
|
inactive-opacity = 1
|
||||||
inactive-opacity = 0.8;
|
# inactive-opacity = 0.8;
|
||||||
|
|
||||||
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
|
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
|
||||||
# frame-opacity = 1.0
|
# frame-opacity = 1.0
|
||||||
@@ -424,7 +431,7 @@ detect-client-opacity = true;
|
|||||||
wintypes:
|
wintypes:
|
||||||
{
|
{
|
||||||
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
|
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
|
||||||
dock = { shadow = false; }
|
dock = { shadow = false; clip-shadow-above = true; }
|
||||||
dnd = { shadow = false; }
|
dnd = { shadow = false; }
|
||||||
popup_menu = { opacity = 0.8; }
|
popup_menu = { opacity = 0.8; }
|
||||||
dropdown_menu = { opacity = 0.8; }
|
dropdown_menu = { opacity = 0.8; }
|
||||||
|
|||||||
+3
-3
@@ -65,7 +65,7 @@ font-3 = Noto Sans CJK JP:size=10:antialias=true;0
|
|||||||
|
|
||||||
modules-left = bspwm
|
modules-left = bspwm
|
||||||
; modules-center = winname
|
; modules-center = winname
|
||||||
modules-right = xwindow spotify pulseaudio cpu filesystem cputemp date
|
modules-right = xwindow spotify pulseaudio cpu filesystem temperature date
|
||||||
|
|
||||||
;override-redirect = true
|
;override-redirect = true
|
||||||
|
|
||||||
@@ -112,7 +112,7 @@ font-3 = Noto Sans CJK JP:size=10:antialias=true;0
|
|||||||
|
|
||||||
modules-left = bspwm_small
|
modules-left = bspwm_small
|
||||||
; modules-center = winname
|
; modules-center = winname
|
||||||
modules-right = xwindow spotify pulseaudio battery wlan cpu filesystem cputemp date
|
modules-right = xwindow spotify pulseaudio battery wlan cpu filesystem temperature date
|
||||||
|
|
||||||
;wm-restack = bspwm
|
;wm-restack = bspwm
|
||||||
|
|
||||||
@@ -423,7 +423,7 @@ thermal-zone = 0
|
|||||||
warn-temperature = 60
|
warn-temperature = 60
|
||||||
|
|
||||||
format = <ramp> <label>
|
format = <ramp> <label>
|
||||||
format-underline = #f50a4d
|
format-underline = ${xrdb:color3}
|
||||||
format-warn = <ramp> <label-warn>
|
format-warn = <ramp> <label-warn>
|
||||||
format-warn-underline = ${self.format-underline}
|
format-warn-underline = ${self.format-underline}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -5,6 +5,6 @@
|
|||||||
# smooth scrolling
|
# smooth scrolling
|
||||||
# touchscreen scrolling
|
# touchscreen scrolling
|
||||||
# https://askubuntu.com/questions/853910/how-to-enable-touchscreen-scrolling-in-firefox/994483#994483
|
# https://askubuntu.com/questions/853910/how-to-enable-touchscreen-scrolling-in-firefox/994483#994483
|
||||||
|
source /home/emh/.zshenv && source /home/emh/.config/zsh/.zshrc
|
||||||
HOME=$MOZILLA_HOME
|
HOME=$MOZILLA_HOME
|
||||||
env MOZ_USE_XINPUT2=1 /usr/bin/firefox "$@"
|
env MOZ_USE_XINPUT2=1 /usr/bin/firefox "$@"
|
||||||
|
|||||||
Executable
+6
@@ -0,0 +1,6 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
V="HOME=/home/emh source /home/emh/.zshenv && HOME=/home/emh source $XDG_CONFIG_HOME/zsh/.zshrc && HOME=/home/emh /usr/bin/kitty -c $XDG_CONFIG_HOME/kitty/kitty.conf "
|
||||||
|
# echo '$V $@" > abc.log 2>&1 &
|
||||||
|
OUT="$V$@"
|
||||||
|
zsh -c "$OUT"
|
||||||
+3
-1
@@ -1,3 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
HOME=$SPOTIFY_HOME
|
HOME=$SPOTIFY_HOME
|
||||||
LD_PRELOAD=/usr/lib/spotify-adblock.so /usr/bin/spotify "$@"
|
|
||||||
|
# LD_PRELOAD=/usr/lib/spotify-adblock.so /usr/bin/spotify "$@"
|
||||||
|
/usr/bin/spotify "$@"
|
||||||
|
|||||||
Binary file not shown.
@@ -4,6 +4,14 @@ if [[ "$1" == "0x0" ]]; then
|
|||||||
xrandr --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-1 --off --output DP-2 --off --output DP-3 --off --output HDMI-1 --off
|
xrandr --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-1 --off --output DP-2 --off --output DP-3 --off --output HDMI-1 --off
|
||||||
elif [[ "$1" == "mirror" ]]; then
|
elif [[ "$1" == "mirror" ]]; then
|
||||||
xrandr --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-1 --off --output DP-2 --off --output DP-3 --off --output HDMI-1 --mode 1920x1080 --same-as eDP-1
|
xrandr --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-1 --off --output DP-2 --off --output DP-3 --off --output HDMI-1 --mode 1920x1080 --same-as eDP-1
|
||||||
|
elif [[ "$1" == "mirror-dp" ]]; then
|
||||||
|
xrandr --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-1 --mode 1920x1080 --output DP-2 --off --output DP-3 --off --output HDMI-1 --off --same-as eDP-1
|
||||||
|
elif [[ "$1" == "mirror-all" ]]; then
|
||||||
|
xrandr --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-1 --mode 1920x1080 --output DP-2 --off --output DP-3 --off --output HDMI-1 --mode 1920x1080 --same-as eDP-1
|
||||||
|
elif [[ "$1" == "hdmi" ]]; then
|
||||||
|
xrandr --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-1 --off --output DP-2 --off --output DP-3 --off --output HDMI-1 --mode "$2" --pos 1920x0 --rotate normal
|
||||||
|
elif [[ "$1" == "dp" ]]; then
|
||||||
|
xrandr --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-1 --mode "$2" --pos 1920x0 --rotate normal --output DP-2 --off --output DP-3 --off --output HDMI-1 --off
|
||||||
else
|
else
|
||||||
xrandr --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-1 --off --output DP-2 --off --output DP-3 --off --output HDMI-1 --mode "$1" --pos 1920x0 --rotate normal
|
xrandr --output eDP-1 --mode 1920x1080 --pos 0x0 --rotate normal --output DP-1 --off --output DP-2 --off --output DP-3 --off --output HDMI-1 --mode "$1" --pos 1920x0 --rotate normal
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -30,5 +30,5 @@ expose_apis = 1
|
|||||||
|
|
||||||
; DO NOT CHANGE!
|
; DO NOT CHANGE!
|
||||||
[Backup]
|
[Backup]
|
||||||
version = 1.2.31.1205.g4d59ad7c
|
version = 1.2.92.147.g5b8f9367
|
||||||
with = 2.33.2
|
with = 2.44.0
|
||||||
|
|||||||
@@ -548,11 +548,11 @@ body.video-full-screen.video-full-screen--hide-ui {
|
|||||||
icon: Spicetify.SVGIcons.artist,
|
icon: Spicetify.SVGIcons.artist,
|
||||||
}),
|
}),
|
||||||
CONFIG.showAlbum &&
|
CONFIG.showAlbum &&
|
||||||
react.createElement(SubInfo, {
|
react.createElement(SubInfo, {
|
||||||
id: "fad-album",
|
id: "fad-album",
|
||||||
text: this.state.album,
|
text: this.state.album,
|
||||||
icon: Spicetify.SVGIcons.album,
|
icon: Spicetify.SVGIcons.album,
|
||||||
}),
|
}),
|
||||||
react.createElement(
|
react.createElement(
|
||||||
"div",
|
"div",
|
||||||
{
|
{
|
||||||
@@ -565,13 +565,13 @@ body.video-full-screen.video-full-screen--hide-ui {
|
|||||||
)
|
)
|
||||||
),
|
),
|
||||||
CONFIG.lyricsPlus &&
|
CONFIG.lyricsPlus &&
|
||||||
react.createElement("div", {
|
react.createElement("div", {
|
||||||
id: "fad-lyrics-plus-container",
|
id: "fad-lyrics-plus-container",
|
||||||
style: {
|
style: {
|
||||||
"--lyrics-color-active": "#ffffff",
|
"--lyrics-color-active": "#ffffff",
|
||||||
"--lyrics-color-inactive": "#ffffff50",
|
"--lyrics-color-inactive": "#ffffff50",
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
.main-leaderboardComponent-container {
|
/* .main-leaderboardComponent-container {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -8,4 +8,4 @@
|
|||||||
|
|
||||||
.main-home-homeHeader {
|
.main-home-homeHeader {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
} */
|
||||||
|
|||||||
@@ -49,6 +49,9 @@ super + Escape
|
|||||||
Print
|
Print
|
||||||
source ~/.zshenv && sshot
|
source ~/.zshenv && sshot
|
||||||
|
|
||||||
|
super + alt + equal
|
||||||
|
source ~/.zshenv && sshot
|
||||||
|
|
||||||
# audio keys
|
# audio keys
|
||||||
|
|
||||||
XF86AudioPlay
|
XF86AudioPlay
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,15 @@
|
|||||||
|
root = true
|
||||||
|
|
||||||
|
[*]
|
||||||
|
charset = utf-8
|
||||||
|
end_of_line = lf
|
||||||
|
indent_style = space
|
||||||
|
insert_final_newline = true
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
|
||||||
|
[Makefile]
|
||||||
|
indent_style = tab
|
||||||
|
indent_size = 8
|
||||||
|
|
||||||
|
[*.{tex,sty,bib}]
|
||||||
|
indent_size = 2
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
$bibtex_use = 2;
|
||||||
|
$clean_ext = "nav snm";
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
% Gemini theme
|
||||||
|
% https://github.com/anishathalye/gemini
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Definitions
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
\definecolor{lightgray}{RGB}{245, 246, 250}
|
||||||
|
\definecolor{blue}{RGB}{64, 115, 158}
|
||||||
|
\definecolor{darkblue}{RGB}{39, 60, 117}
|
||||||
|
\definecolor{lightblue}{RGB}{232, 244, 255}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Theme
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
% Basic colors
|
||||||
|
\setbeamercolor{palette primary}{fg=black,bg=white}
|
||||||
|
\setbeamercolor{palette secondary}{fg=black,bg=white}
|
||||||
|
\setbeamercolor{palette tertiary}{bg=black,fg=white}
|
||||||
|
\setbeamercolor{palette quaternary}{fg=black,bg=white}
|
||||||
|
\setbeamercolor{structure}{fg=darkblue}
|
||||||
|
|
||||||
|
% Headline
|
||||||
|
\setbeamercolor{headline}{fg=lightgray,bg=blue}
|
||||||
|
\setbeamercolor{headline rule}{bg=darkblue}
|
||||||
|
|
||||||
|
% Block
|
||||||
|
\setbeamercolor{block title}{fg=blue,bg=white}
|
||||||
|
\setbeamercolor{block separator}{bg=black}
|
||||||
|
\setbeamercolor{block body}{fg=black,bg=white}
|
||||||
|
|
||||||
|
% Alert Block
|
||||||
|
\setbeamercolor{block alerted title}{fg=blue,bg=lightblue}
|
||||||
|
\setbeamercolor{block alerted separator}{bg=black}
|
||||||
|
\setbeamercolor{block alerted body}{fg=black,bg=lightblue}
|
||||||
|
|
||||||
|
% Example Block
|
||||||
|
\setbeamercolor{block example title}{fg=blue,bg=lightgray}
|
||||||
|
\setbeamercolor{block example separator}{bg=black}
|
||||||
|
\setbeamercolor{block example body}{fg=black,bg=lightgray}
|
||||||
|
|
||||||
|
% Heading
|
||||||
|
\setbeamercolor{heading}{fg=black}
|
||||||
|
|
||||||
|
% Itemize
|
||||||
|
\setbeamercolor{item}{fg=darkblue}
|
||||||
|
|
||||||
|
% Bibliography
|
||||||
|
\setbeamercolor{bibliography item}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry author}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry title}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry location}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry note}{fg=black}
|
||||||
|
\setbeamertemplate{bibliography entry article}{}
|
||||||
|
\setbeamertemplate{bibliography entry title}{}
|
||||||
|
\setbeamertemplate{bibliography entry location}{}
|
||||||
|
\setbeamertemplate{bibliography entry note}{}
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
% Gemini theme
|
||||||
|
% https://github.com/anishathalye/gemini
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Definitions
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
\definecolor{labsixorange}{RGB}{243, 111, 33}
|
||||||
|
|
||||||
|
% Extra colors
|
||||||
|
\definecolor{lightgray}{RGB}{240, 240, 240}
|
||||||
|
\definecolor{lightorange}{RGB}{255, 240, 230}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Theme
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
% Basic colors
|
||||||
|
\setbeamercolor{palette primary}{fg=black,bg=white}
|
||||||
|
\setbeamercolor{palette secondary}{fg=black,bg=white}
|
||||||
|
\setbeamercolor{palette tertiary}{bg=black,fg=white}
|
||||||
|
\setbeamercolor{palette quaternary}{fg=black,bg=white}
|
||||||
|
\setbeamercolor{structure}{fg=labsixorange}
|
||||||
|
|
||||||
|
% Headline
|
||||||
|
\setbeamercolor{headline}{fg=white,bg=labsixorange}
|
||||||
|
\setbeamercolor{headline rule}{bg=black}
|
||||||
|
|
||||||
|
% Block
|
||||||
|
\setbeamercolor{block title}{fg=labsixorange,bg=white}
|
||||||
|
\setbeamercolor{block separator}{bg=black}
|
||||||
|
\setbeamercolor{block body}{fg=black,bg=white}
|
||||||
|
|
||||||
|
% Alert Block
|
||||||
|
\setbeamercolor{block alerted title}{fg=labsixorange,bg=lightorange}
|
||||||
|
\setbeamercolor{block alerted separator}{bg=black}
|
||||||
|
\setbeamercolor{block alerted body}{fg=black,bg=lightorange}
|
||||||
|
|
||||||
|
% Example Block
|
||||||
|
\setbeamercolor{block example title}{fg=labsixorange,bg=lightgray}
|
||||||
|
\setbeamercolor{block example separator}{bg=black}
|
||||||
|
\setbeamercolor{block example body}{fg=black,bg=lightgray}
|
||||||
|
|
||||||
|
% Heading
|
||||||
|
\setbeamercolor{heading}{fg=black}
|
||||||
|
|
||||||
|
% Itemize
|
||||||
|
\setbeamercolor{item}{fg=labsixorange}
|
||||||
|
|
||||||
|
% Bibliography
|
||||||
|
\setbeamercolor{bibliography item}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry author}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry title}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry location}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry note}{fg=black}
|
||||||
@@ -0,0 +1,57 @@
|
|||||||
|
% Gemini theme
|
||||||
|
% https://github.com/anishathalye/gemini
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Definitions
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
% Colors from http://web.mit.edu/graphicidentity/colors.html
|
||||||
|
\definecolor{mitred}{cmyk}{0.24, 1.0, 0.78, 0.17}
|
||||||
|
\definecolor{mitdarkgray}{cmyk}{0.48, 0.39, 0.39, 0.04}
|
||||||
|
\definecolor{mitlightgray}{cmyk}{0.24, 0.20, 0.20, 0.0}
|
||||||
|
|
||||||
|
% Extra colors
|
||||||
|
\definecolor{lightgray}{RGB}{240, 240, 240}
|
||||||
|
\definecolor{lightorange}{RGB}{255, 245, 242}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Theme
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
% Basic colors
|
||||||
|
\setbeamercolor{palette primary}{fg=black,bg=white}
|
||||||
|
\setbeamercolor{palette secondary}{fg=black,bg=white}
|
||||||
|
\setbeamercolor{palette tertiary}{bg=black,fg=white}
|
||||||
|
\setbeamercolor{palette quaternary}{fg=black,bg=white}
|
||||||
|
\setbeamercolor{structure}{fg=mitred}
|
||||||
|
|
||||||
|
% Headline
|
||||||
|
\setbeamercolor{headline}{fg=black,bg=lightgray}
|
||||||
|
|
||||||
|
% Block
|
||||||
|
\setbeamercolor{block title}{fg=mitred,bg=white}
|
||||||
|
\setbeamercolor{block separator}{bg=black}
|
||||||
|
\setbeamercolor{block body}{fg=black,bg=white}
|
||||||
|
|
||||||
|
% Alert Block
|
||||||
|
\setbeamercolor{block alerted title}{fg=mitred,bg=lightorange}
|
||||||
|
\setbeamercolor{block alerted separator}{bg=black}
|
||||||
|
\setbeamercolor{block alerted body}{fg=black,bg=lightorange}
|
||||||
|
|
||||||
|
% Example Block
|
||||||
|
\setbeamercolor{block example title}{fg=mitred,bg=lightgray}
|
||||||
|
\setbeamercolor{block example separator}{bg=black}
|
||||||
|
\setbeamercolor{block example body}{fg=black,bg=lightgray}
|
||||||
|
|
||||||
|
% Heading
|
||||||
|
\setbeamercolor{heading}{fg=black}
|
||||||
|
|
||||||
|
% Itemize
|
||||||
|
\setbeamercolor{item}{fg=mitred}
|
||||||
|
|
||||||
|
% Bibliography
|
||||||
|
\setbeamercolor{bibliography item}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry author}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry title}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry location}{fg=black}
|
||||||
|
\setbeamercolor{bibliography entry note}{fg=black}
|
||||||
@@ -0,0 +1,257 @@
|
|||||||
|
% Gemini theme
|
||||||
|
% https://github.com/anishathalye/gemini
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Dependencies
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
\RequirePackage{exscale}
|
||||||
|
\RequirePackage{ragged2e}
|
||||||
|
\RequirePackage{changepage}
|
||||||
|
\RequirePackage{fontspec}
|
||||||
|
\RequirePackage{calc}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Fonts
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
\newfontfamily\Raleway[Ligatures=TeX]{Raleway}
|
||||||
|
\newfontfamily\Lato[Ligatures=TeX]{Lato}
|
||||||
|
|
||||||
|
\usefonttheme{professionalfonts}
|
||||||
|
|
||||||
|
\setsansfont{Lato}[
|
||||||
|
UprightFont=*-Light,
|
||||||
|
ItalicFont=*-LightItalic,
|
||||||
|
BoldFont=*-Regular,
|
||||||
|
BoldItalicFont=*-Italic
|
||||||
|
]
|
||||||
|
|
||||||
|
\setbeamerfont{headline}{family=\Raleway}
|
||||||
|
\setbeamerfont{headline title}{size=\Huge,series=\bfseries}
|
||||||
|
\setbeamerfont{headline author}{size=\Large}
|
||||||
|
\setbeamerfont{headline institute}{size=\normalsize}
|
||||||
|
\setbeamerfont{block title}{family=\Raleway,size=\large,series=\bfseries}
|
||||||
|
\setbeamerfont{heading}{family=\Lato,series=\bfseries}
|
||||||
|
\setbeamerfont{caption}{size=\small}
|
||||||
|
\setbeamerfont{footline}{family=\Raleway,size=\normalsize}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Macros
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
\newcommand{\samelineand}{\qquad}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Elements
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
% List
|
||||||
|
\def\@listi{\leftmargin\leftmargini
|
||||||
|
\topsep 1ex % spacing before
|
||||||
|
\parsep 0\p@ \@plus\p@
|
||||||
|
\itemsep 0.5ex} % spacing between
|
||||||
|
|
||||||
|
% Itemize
|
||||||
|
|
||||||
|
\setbeamertemplate{itemize item}{\raise0.5ex \hbox{\vrule width 0.5ex height 0.5ex}}
|
||||||
|
\setbeamertemplate{itemize subitem}{\raise0.3ex \hbox{\vrule width 0.5ex height 0.5ex}}
|
||||||
|
\setbeamertemplate{itemize subsubitem}{\raise0.2ex \hbox{\vrule width 0.5ex height 0.5ex}}
|
||||||
|
|
||||||
|
% Enumerate
|
||||||
|
|
||||||
|
\setbeamertemplate{enumerate item}{\insertenumlabel.}
|
||||||
|
\setbeamertemplate{enumerate subitem}{\insertsubenumlabel.}
|
||||||
|
\setbeamertemplate{enumerate subsubitem}{\insertsubsubenumlabel.}
|
||||||
|
|
||||||
|
% Equation
|
||||||
|
\setlength\belowdisplayshortskip{2ex}
|
||||||
|
|
||||||
|
% Caption
|
||||||
|
\setbeamertemplate{caption}[numbered]
|
||||||
|
\setbeamertemplate{caption label separator}[period]
|
||||||
|
\setlength{\abovecaptionskip}{2ex}
|
||||||
|
\setlength{\belowcaptionskip}{1ex}
|
||||||
|
|
||||||
|
% Bibliography
|
||||||
|
\setbeamertemplate{bibliography item}[text]
|
||||||
|
|
||||||
|
% Navigation
|
||||||
|
\beamertemplatenavigationsymbolsempty
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Components
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
% Heading
|
||||||
|
\newcommand\heading[1]
|
||||||
|
{%
|
||||||
|
\par\bigskip
|
||||||
|
{\usebeamerfont{heading}\usebeamercolor[fg]{heading}#1}\par\smallskip
|
||||||
|
}
|
||||||
|
|
||||||
|
% logo
|
||||||
|
\newlength{\logoleftwidth}
|
||||||
|
\setlength{\logoleftwidth}{0cm}
|
||||||
|
\newlength{\logorightwidth}
|
||||||
|
\setlength{\logorightwidth}{0cm}
|
||||||
|
\newlength{\maxlogowidth} % space on both sides set to maxlogowidth to keep title centered
|
||||||
|
\setlength{\maxlogowidth}{0cm}
|
||||||
|
|
||||||
|
\newcommand{\logoright}[1]{
|
||||||
|
\newcommand{\insertlogoright}{#1}
|
||||||
|
\settowidth{\logorightwidth}{\insertlogoright}
|
||||||
|
\addtolength{\logorightwidth}{10ex}
|
||||||
|
\setlength{\maxlogowidth}{\maxof{\logoleftwidth}{\logorightwidth}}
|
||||||
|
}
|
||||||
|
\newcommand{\logoleft}[1]{
|
||||||
|
\newcommand{\insertlogoleft}{#1}
|
||||||
|
\settowidth{\logoleftwidth}{\insertlogoleft}
|
||||||
|
\addtolength{\logoleftwidth}{10ex}
|
||||||
|
\setlength{\maxlogowidth}{\maxof{\logoleftwidth}{\logorightwidth}}
|
||||||
|
}
|
||||||
|
|
||||||
|
% Headline
|
||||||
|
\setbeamertemplate{headline}
|
||||||
|
{
|
||||||
|
\begin{beamercolorbox}{headline}
|
||||||
|
\begin{columns}
|
||||||
|
\begin{column}{\maxlogowidth}
|
||||||
|
\vskip5ex
|
||||||
|
\ifdefined\insertlogoleft
|
||||||
|
\vspace*{\fill}
|
||||||
|
\hspace{10ex}
|
||||||
|
\raggedright
|
||||||
|
\insertlogoleft
|
||||||
|
\vspace*{\fill}
|
||||||
|
\else\fi
|
||||||
|
\end{column}
|
||||||
|
\begin{column}{\dimexpr\paperwidth-\maxlogowidth-\maxlogowidth}
|
||||||
|
\usebeamerfont{headline}
|
||||||
|
\vskip3ex
|
||||||
|
\centering
|
||||||
|
\ifx \inserttitle \empty \else
|
||||||
|
{\usebeamerfont{headline title}\usebeamercolor[fg]{headline title}\inserttitle\\[0.5ex]}
|
||||||
|
\fi
|
||||||
|
\ifx \beamer@shortauthor \empty \else
|
||||||
|
{\usebeamerfont{headline author}\usebeamercolor[fg]{headline author}\insertauthor\\[1ex]}
|
||||||
|
\fi
|
||||||
|
\ifx \insertinstitute \empty \else
|
||||||
|
{\usebeamerfont{headline institute}\usebeamercolor[fg]{headline institute}\insertinstitute\\[1ex]}
|
||||||
|
\fi
|
||||||
|
\end{column}
|
||||||
|
\begin{column}{\maxlogowidth}
|
||||||
|
\vskip5ex
|
||||||
|
\ifdefined\insertlogoright
|
||||||
|
\vspace*{\fill}
|
||||||
|
\raggedleft
|
||||||
|
\insertlogoright
|
||||||
|
\hspace{10ex}
|
||||||
|
\vspace*{\fill}
|
||||||
|
\else\fi
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\vspace{5ex}
|
||||||
|
\ifbeamercolorempty[bg]{headline rule}{}{
|
||||||
|
\begin{beamercolorbox}[wd=\paperwidth,colsep=0.5ex]{headline rule}\end{beamercolorbox}
|
||||||
|
}
|
||||||
|
\end{beamercolorbox}
|
||||||
|
}
|
||||||
|
|
||||||
|
% Block
|
||||||
|
\setbeamertemplate{block begin}
|
||||||
|
{
|
||||||
|
\begin{beamercolorbox}[colsep*=0ex,dp=2ex,center]{block title}
|
||||||
|
\vskip0pt
|
||||||
|
\usebeamerfont{block title}\insertblocktitle
|
||||||
|
\vskip-1.25ex
|
||||||
|
\begin{beamercolorbox}[colsep=0.025ex]{block separator}\end{beamercolorbox}
|
||||||
|
\end{beamercolorbox}
|
||||||
|
{\parskip0pt\par}
|
||||||
|
\usebeamerfont{block body}
|
||||||
|
\vskip-0.5ex
|
||||||
|
\begin{beamercolorbox}[colsep*=0ex]{block body}
|
||||||
|
\justifying
|
||||||
|
\setlength{\parskip}{1ex}
|
||||||
|
\vskip-2ex
|
||||||
|
}
|
||||||
|
\setbeamertemplate{block end}
|
||||||
|
{
|
||||||
|
\end{beamercolorbox}
|
||||||
|
\vskip0pt
|
||||||
|
\vspace*{2ex}
|
||||||
|
}
|
||||||
|
|
||||||
|
% Alert Block
|
||||||
|
\setbeamertemplate{block alerted begin}
|
||||||
|
{
|
||||||
|
\begin{beamercolorbox}[colsep*=0ex,dp=2ex,center]{block alerted title}
|
||||||
|
\vskip0pt
|
||||||
|
\usebeamerfont{block title}\insertblocktitle
|
||||||
|
\vskip-1.25ex
|
||||||
|
\begin{beamercolorbox}[colsep=0.025ex]{block alerted separator}\end{beamercolorbox}
|
||||||
|
\end{beamercolorbox}
|
||||||
|
{\parskip0pt\par}
|
||||||
|
\usebeamerfont{block body}
|
||||||
|
\vskip-0.5ex
|
||||||
|
\begin{beamercolorbox}[colsep*=0ex]{block alerted body}
|
||||||
|
\justifying
|
||||||
|
\begin{adjustwidth}{1ex}{1ex}
|
||||||
|
\setlength{\parskip}{1ex}
|
||||||
|
\vskip-2ex
|
||||||
|
}
|
||||||
|
\setbeamertemplate{block alerted end}
|
||||||
|
{
|
||||||
|
\end{adjustwidth}
|
||||||
|
\vskip1ex
|
||||||
|
\end{beamercolorbox}
|
||||||
|
\vskip0pt
|
||||||
|
\vspace*{2ex}
|
||||||
|
}
|
||||||
|
|
||||||
|
% Example Block
|
||||||
|
\setbeamertemplate{block example begin}
|
||||||
|
{
|
||||||
|
\begin{beamercolorbox}[colsep*=0ex,dp=2ex,center]{block example title}
|
||||||
|
\vskip0pt
|
||||||
|
\usebeamerfont{block title}\insertblocktitle
|
||||||
|
\vskip-1.25ex
|
||||||
|
\begin{beamercolorbox}[colsep=0.025ex]{block example separator}\end{beamercolorbox}
|
||||||
|
\end{beamercolorbox}
|
||||||
|
{\parskip0pt\par}
|
||||||
|
\usebeamerfont{block body}
|
||||||
|
\vskip-0.5ex
|
||||||
|
\begin{beamercolorbox}[colsep*=0ex]{block example body}
|
||||||
|
\justifying
|
||||||
|
\begin{adjustwidth}{1ex}{1ex}
|
||||||
|
\setlength{\parskip}{1ex}
|
||||||
|
\vskip-2ex
|
||||||
|
}
|
||||||
|
\setbeamertemplate{block example end}
|
||||||
|
{
|
||||||
|
\end{adjustwidth}
|
||||||
|
\vskip1ex
|
||||||
|
\end{beamercolorbox}
|
||||||
|
\vskip0pt
|
||||||
|
\vspace*{2ex}
|
||||||
|
}
|
||||||
|
|
||||||
|
% Footer
|
||||||
|
\newcommand{\footercontent}[1]{\newcommand{\insertfootercontent}{#1}}
|
||||||
|
|
||||||
|
\setbeamertemplate{footline}{
|
||||||
|
\ifdefined\insertfootercontent
|
||||||
|
\begin{beamercolorbox}[vmode]{headline}
|
||||||
|
\ifbeamercolorempty[bg]{headline rule}{}{
|
||||||
|
\begin{beamercolorbox}[wd=\paperwidth,colsep=0.25ex]{headline rule}\end{beamercolorbox}
|
||||||
|
}
|
||||||
|
\vspace{1.5ex}
|
||||||
|
\hspace{\sepwidth}
|
||||||
|
\usebeamerfont{footline}
|
||||||
|
\centering
|
||||||
|
\insertfootercontent
|
||||||
|
\hspace{\sepwidth}
|
||||||
|
\vspace{1.5ex}
|
||||||
|
\end{beamercolorbox}
|
||||||
|
\else\fi
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
@article{shannon1948communication,
|
||||||
|
author = {Claude E. Shannon},
|
||||||
|
title = {A Mathematical Theory of Communication},
|
||||||
|
journal = {Bell System Technical Journal},
|
||||||
|
year = 1948,
|
||||||
|
volume = {27},
|
||||||
|
number = {3},
|
||||||
|
pages = {379-423},
|
||||||
|
}
|
||||||
@@ -0,0 +1,313 @@
|
|||||||
|
% Gemini theme
|
||||||
|
% https://github.com/anishathalye/gemini
|
||||||
|
|
||||||
|
\documentclass[final]{beamer}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Packages
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage{lmodern}
|
||||||
|
\usepackage[size=custom,width=120,height=72,scale=1.0]{beamerposter}
|
||||||
|
\usetheme{gemini}
|
||||||
|
\usecolortheme{gemini}
|
||||||
|
\usepackage{graphicx}
|
||||||
|
\usepackage{booktabs}
|
||||||
|
\usepackage{tikz}
|
||||||
|
\usepackage{pgfplots}
|
||||||
|
\pgfplotsset{compat=1.14}
|
||||||
|
\usepackage{anyfontsize}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Lengths
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
% If you have N columns, choose \sepwidth and \colwidth such that
|
||||||
|
% (N+1)*\sepwidth + N*\colwidth = \paperwidth
|
||||||
|
\newlength{\sepwidth}
|
||||||
|
\newlength{\colwidth}
|
||||||
|
\setlength{\sepwidth}{0.025\paperwidth}
|
||||||
|
\setlength{\colwidth}{0.3\paperwidth}
|
||||||
|
|
||||||
|
\newcommand{\separatorcolumn}{\begin{column}{\sepwidth}\end{column}}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Title
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
\title{Some fancy title: followed by some more text}
|
||||||
|
|
||||||
|
\author{Alyssa P. Hacker \inst{1} \and Ben Bitdiddle \inst{2} \and Lem E. Tweakit \inst{2}}
|
||||||
|
|
||||||
|
\institute[shortinst]{\inst{1} Some Institute \samelineand \inst{2} Another Institute}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Footer (optional)
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
\footercontent{
|
||||||
|
\href{https://www.example.com}{https://www.example.com} \hfill
|
||||||
|
ABC Conference 2025, New York --- XYZ-1234 \hfill
|
||||||
|
\href{mailto:alyssa.p.hacker@example.com}{alyssa.p.hacker@example.com}}
|
||||||
|
% (can be left out to remove footer)
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Logo (optional)
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
% use this to include logos on the left and/or right side of the header:
|
||||||
|
% \logoright{\includegraphics[height=7cm]{logo1.pdf}}
|
||||||
|
% \logoleft{\includegraphics[height=7cm]{logo2.pdf}}
|
||||||
|
|
||||||
|
% ====================
|
||||||
|
% Body
|
||||||
|
% ====================
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{frame}[t]
|
||||||
|
\begin{columns}[t]
|
||||||
|
\separatorcolumn
|
||||||
|
|
||||||
|
\begin{column}{\colwidth}
|
||||||
|
|
||||||
|
\begin{block}{A block title}
|
||||||
|
|
||||||
|
Some block contents, followed by a diagram, followed by a dummy paragraph.
|
||||||
|
|
||||||
|
\begin{figure}
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}[scale=6]
|
||||||
|
\draw[step=0.25cm,color=gray] (-1,-1) grid (1,1);
|
||||||
|
\draw (1,0) -- (0.2,0.2) -- (0,1) -- (-0.2,0.2) -- (-1,0)
|
||||||
|
-- (-0.2,-0.2) -- (0,-1) -- (0.2,-0.2) -- cycle;
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{A figure caption.}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi ultricies
|
||||||
|
eget libero ac ullamcorper. Integer et euismod ante. Aenean vestibulum
|
||||||
|
lobortis augue, ut lobortis turpis rhoncus sed. Proin feugiat nibh a
|
||||||
|
lacinia dignissim. Proin scelerisque, risus eget tempor fermentum, ex
|
||||||
|
turpis condimentum urna, quis malesuada sapien arcu eu purus.
|
||||||
|
|
||||||
|
\end{block}
|
||||||
|
|
||||||
|
\begin{block}{A block containing a list}
|
||||||
|
|
||||||
|
Nam vulputate nunc felis, non condimentum lacus porta ultrices. Nullam sed
|
||||||
|
sagittis metus. Etiam consectetur gravida urna quis suscipit.
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item \textbf{Mauris tempor} risus nulla, sed ornare
|
||||||
|
\item \textbf{Libero tincidunt} a duis congue vitae
|
||||||
|
\item \textbf{Dui ac pretium} morbi justo neque, ullamcorper
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
Eget augue porta, bibendum venenatis tortor.
|
||||||
|
|
||||||
|
\end{block}
|
||||||
|
|
||||||
|
\begin{alertblock}{A highlighted block}
|
||||||
|
|
||||||
|
This block catches your eye, so \textbf{important stuff} should probably go
|
||||||
|
here.
|
||||||
|
|
||||||
|
Curabitur eu libero vehicula, cursus est fringilla, luctus est. Morbi
|
||||||
|
consectetur mauris quam, at finibus elit auctor ac. Aliquam erat volutpat.
|
||||||
|
Aenean at nisl ut ex ullamcorper eleifend et eu augue. Aenean quis velit
|
||||||
|
tristique odio convallis ultrices a ac odio.
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item \textbf{Fusce dapibus tellus} vel tellus semper finibus. In
|
||||||
|
consequat, nibh sed mattis luctus, augue diam fermentum lectus.
|
||||||
|
\item \textbf{In euismod erat metus} non ex. Vestibulum luctus augue in
|
||||||
|
mi condimentum, at sollicitudin lorem viverra.
|
||||||
|
\item \textbf{Suspendisse vulputate} mauris vel placerat consectetur.
|
||||||
|
Mauris semper, purus ac hendrerit molestie, elit mi dignissim odio, in
|
||||||
|
suscipit felis sapien vel ex.
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
Aenean tincidunt risus eros, at gravida lorem sagittis vel. Vestibulum ante
|
||||||
|
ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae.
|
||||||
|
|
||||||
|
\end{alertblock}
|
||||||
|
|
||||||
|
\end{column}
|
||||||
|
|
||||||
|
\separatorcolumn
|
||||||
|
|
||||||
|
\begin{column}{\colwidth}
|
||||||
|
|
||||||
|
\begin{block}{A block containing an enumerated list}
|
||||||
|
|
||||||
|
Vivamus congue volutpat elit non semper. Praesent molestie nec erat ac
|
||||||
|
interdum. In quis suscipit erat. \textbf{Phasellus mauris felis, molestie
|
||||||
|
ac pharetra quis}, tempus nec ante. Donec finibus ante vel purus mollis
|
||||||
|
fermentum. Sed felis mi, pharetra eget nibh a, feugiat eleifend dolor. Nam
|
||||||
|
mollis condimentum purus quis sodales. Nullam eu felis eu nulla eleifend
|
||||||
|
bibendum nec eu lorem. Vivamus felis velit, volutpat ut facilisis ac,
|
||||||
|
commodo in metus.
|
||||||
|
|
||||||
|
\begin{enumerate}
|
||||||
|
\item \textbf{Morbi mauris purus}, egestas at vehicula et, convallis
|
||||||
|
accumsan orci. Orci varius natoque penatibus et magnis dis parturient
|
||||||
|
montes, nascetur ridiculus mus.
|
||||||
|
\item \textbf{Cras vehicula blandit urna ut maximus}. Aliquam blandit nec
|
||||||
|
massa ac sollicitudin. Curabitur cursus, metus nec imperdiet bibendum,
|
||||||
|
velit lectus faucibus dolor, quis gravida metus mauris gravida turpis.
|
||||||
|
\item \textbf{Vestibulum et massa diam}. Phasellus fermentum augue non
|
||||||
|
nulla accumsan, non rhoncus lectus condimentum.
|
||||||
|
\end{enumerate}
|
||||||
|
|
||||||
|
\end{block}
|
||||||
|
|
||||||
|
\begin{block}{Fusce aliquam magna velit}
|
||||||
|
|
||||||
|
Et rutrum ex euismod vel. Pellentesque ultricies, velit in fermentum
|
||||||
|
vestibulum, lectus nisi pretium nibh, sit amet aliquam lectus augue vel
|
||||||
|
velit. Suspendisse rhoncus massa porttitor augue feugiat molestie. Sed
|
||||||
|
molestie ut orci nec malesuada. Sed ultricies feugiat est fringilla
|
||||||
|
posuere.
|
||||||
|
|
||||||
|
\begin{figure}
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}[
|
||||||
|
scale only axis,
|
||||||
|
no markers,
|
||||||
|
domain=0:2*pi,
|
||||||
|
samples=100,
|
||||||
|
axis lines=center,
|
||||||
|
axis line style={-},
|
||||||
|
ticks=none]
|
||||||
|
\addplot[red] {sin(deg(x))};
|
||||||
|
\addplot[blue] {cos(deg(x))};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{Another figure caption.}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
|
\end{block}
|
||||||
|
|
||||||
|
\begin{block}{Nam cursus consequat egestas}
|
||||||
|
|
||||||
|
Nulla eget sem quam. Ut aliquam volutpat nisi vestibulum convallis. Nunc a
|
||||||
|
lectus et eros facilisis hendrerit eu non urna. Interdum et malesuada fames
|
||||||
|
ac ante \textit{ipsum primis} in faucibus. Etiam sit amet velit eget sem
|
||||||
|
euismod tristique. Praesent enim erat, porta vel mattis sed, pharetra sed
|
||||||
|
ipsum. Morbi commodo condimentum massa, \textit{tempus venenatis} massa
|
||||||
|
hendrerit quis. Maecenas sed porta est. Praesent mollis interdum lectus,
|
||||||
|
sit amet sollicitudin risus tincidunt non.
|
||||||
|
|
||||||
|
Etiam sit amet tempus lorem, aliquet condimentum velit. Donec et nibh
|
||||||
|
consequat, sagittis ex eget, dictum orci. Etiam quis semper ante. Ut eu
|
||||||
|
mauris purus. Proin nec consectetur ligula. Mauris pretium molestie
|
||||||
|
ullamcorper. Integer nisi neque, aliquet et odio non, sagittis porta justo.
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item \textbf{Sed consequat} id ante vel efficitur. Praesent congue massa
|
||||||
|
sed est scelerisque, elementum mollis augue iaculis.
|
||||||
|
\begin{itemize}
|
||||||
|
\item In sed est finibus, vulputate
|
||||||
|
nunc gravida, pulvinar lorem. In maximus nunc dolor, sed auctor eros
|
||||||
|
porttitor quis.
|
||||||
|
\item Fusce ornare dignissim nisi. Nam sit amet risus vel lacus
|
||||||
|
tempor tincidunt eu a arcu.
|
||||||
|
\item Donec rhoncus vestibulum erat, quis aliquam leo
|
||||||
|
gravida egestas.
|
||||||
|
\end{itemize}
|
||||||
|
\item \textbf{Sed luctus, elit sit amet} dictum maximus, diam dolor
|
||||||
|
faucibus purus, sed lobortis justo erat id turpis.
|
||||||
|
\item \textbf{Pellentesque facilisis dolor in leo} bibendum congue.
|
||||||
|
Maecenas congue finibus justo, vitae eleifend urna facilisis at.
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\end{block}
|
||||||
|
|
||||||
|
\end{column}
|
||||||
|
|
||||||
|
\separatorcolumn
|
||||||
|
|
||||||
|
\begin{column}{\colwidth}
|
||||||
|
|
||||||
|
\begin{exampleblock}{A highlighted block containing some math}
|
||||||
|
|
||||||
|
A different kind of highlighted block.
|
||||||
|
|
||||||
|
$$
|
||||||
|
\int_{-\infty}^{\infty} e^{-x^2}\,dx = \sqrt{\pi}
|
||||||
|
$$
|
||||||
|
|
||||||
|
Interdum et malesuada fames $\{1, 4, 9, \ldots\}$ ac ante ipsum primis in
|
||||||
|
faucibus. Cras eleifend dolor eu nulla suscipit suscipit. Sed lobortis non
|
||||||
|
felis id vulputate.
|
||||||
|
|
||||||
|
\heading{A heading inside a block}
|
||||||
|
|
||||||
|
Praesent consectetur mi $x^2 + y^2$ metus, nec vestibulum justo viverra
|
||||||
|
nec. Proin eget nulla pretium, egestas magna aliquam, mollis neque. Vivamus
|
||||||
|
dictum $\mathbf{u}^\intercal\mathbf{v}$ sagittis odio, vel porta erat
|
||||||
|
congue sed. Maecenas ut dolor quis arcu auctor porttitor.
|
||||||
|
|
||||||
|
\heading{Another heading inside a block}
|
||||||
|
|
||||||
|
Sed augue erat, scelerisque a purus ultricies, placerat porttitor neque.
|
||||||
|
Donec $P(y \mid x)$ fermentum consectetur $\nabla_x P(y \mid x)$ sapien
|
||||||
|
sagittis egestas. Duis eget leo euismod nunc viverra imperdiet nec id
|
||||||
|
justo.
|
||||||
|
|
||||||
|
\end{exampleblock}
|
||||||
|
|
||||||
|
\begin{block}{Nullam vel erat at velit convallis laoreet}
|
||||||
|
|
||||||
|
Class aptent taciti sociosqu ad litora torquent per conubia nostra, per
|
||||||
|
inceptos himenaeos. Phasellus libero enim, gravida sed erat sit amet,
|
||||||
|
scelerisque congue diam. Fusce dapibus dui ut augue pulvinar iaculis.
|
||||||
|
|
||||||
|
\begin{table}
|
||||||
|
\centering
|
||||||
|
\begin{tabular}{l r r c}
|
||||||
|
\toprule
|
||||||
|
\textbf{First column} & \textbf{Second column} & \textbf{Third column} & \textbf{Fourth} \\
|
||||||
|
\midrule
|
||||||
|
Foo & 13.37 & 384,394 & $\alpha$ \\
|
||||||
|
Bar & 2.17 & 1,392 & $\beta$ \\
|
||||||
|
Baz & 3.14 & 83,742 & $\delta$ \\
|
||||||
|
Qux & 7.59 & 974 & $\gamma$ \\
|
||||||
|
\bottomrule
|
||||||
|
\end{tabular}
|
||||||
|
\caption{A table caption.}
|
||||||
|
\end{table}
|
||||||
|
|
||||||
|
Donec quis posuere ligula. Nunc feugiat elit a mi malesuada consequat. Sed
|
||||||
|
imperdiet augue ac nibh aliquet tristique. Aenean eu tortor vulputate,
|
||||||
|
eleifend lorem in, dictum urna. Proin auctor ante in augue tincidunt
|
||||||
|
tempor. Proin pellentesque vulputate odio, ac gravida nulla posuere
|
||||||
|
efficitur. Aenean at velit vel dolor blandit molestie. Mauris laoreet
|
||||||
|
commodo quam, non luctus nibh ullamcorper in. Class aptent taciti sociosqu
|
||||||
|
ad litora torquent per conubia nostra, per inceptos himenaeos.
|
||||||
|
|
||||||
|
Nulla varius finibus volutpat. Mauris molestie lorem tincidunt, iaculis
|
||||||
|
libero at, gravida ante. Phasellus at felis eu neque suscipit suscipit.
|
||||||
|
Integer ullamcorper, dui nec pretium ornare, urna dolor consequat libero,
|
||||||
|
in feugiat elit lorem euismod lacus. Pellentesque sit amet dolor mollis,
|
||||||
|
auctor urna non, tempus sem.
|
||||||
|
|
||||||
|
\end{block}
|
||||||
|
|
||||||
|
\begin{block}{References}
|
||||||
|
|
||||||
|
\nocite{*}
|
||||||
|
\footnotesize{\bibliographystyle{plain}\bibliography{poster}}
|
||||||
|
|
||||||
|
\end{block}
|
||||||
|
|
||||||
|
\end{column}
|
||||||
|
|
||||||
|
\separatorcolumn
|
||||||
|
\end{columns}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\end{document}
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamercolorthememetropolis-highcontrast.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamercolorthememetropolis-highcontrast.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamercolorthememetropolis-highcontrast}[2017/01/23 Metropolis color theme]
|
||||||
|
\usecolortheme{metropolis}
|
||||||
|
|
||||||
|
\definecolor{mAlert}{HTML}{AD003D}
|
||||||
|
\definecolor{mExample}{HTML}{005580}
|
||||||
|
|
||||||
|
\setbeamercolor{normal text}{%
|
||||||
|
fg=black,
|
||||||
|
bg=white
|
||||||
|
}
|
||||||
|
\setbeamercolor{alerted text}{%
|
||||||
|
fg=mAlert,
|
||||||
|
}
|
||||||
|
\setbeamercolor{example text}{%
|
||||||
|
fg=mExample,
|
||||||
|
}
|
||||||
|
\mode<all>
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamercolorthememetropolis-highcontrast.sty'.
|
||||||
@@ -0,0 +1,138 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamercolorthememetropolis.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamercolorthememetropolis.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamercolorthememetropolis}[2017/01/23 Metropolis color theme]
|
||||||
|
\RequirePackage{pgfopts}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/color/block/.cd,
|
||||||
|
.is choice,
|
||||||
|
transparent/.code=\metropolis@block@transparent,
|
||||||
|
fill/.code=\metropolis@block@fill,
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/color/background/.cd,
|
||||||
|
.is choice,
|
||||||
|
dark/.code=\metropolis@colors@dark,
|
||||||
|
light/.code=\metropolis@colors@light,
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@color@setdefaults}{
|
||||||
|
\pgfkeys{/metropolis/color/.cd,
|
||||||
|
background=light,
|
||||||
|
block=transparent,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\definecolor{mDarkBrown}{HTML}{604c38}
|
||||||
|
\definecolor{mDarkTeal}{HTML}{23373b}
|
||||||
|
\definecolor{mLightBrown}{HTML}{EB811B}
|
||||||
|
\definecolor{mLightGreen}{HTML}{14B03D}
|
||||||
|
\newcommand{\metropolis@colors@dark}{
|
||||||
|
\setbeamercolor{normal text}{%
|
||||||
|
fg=black!2,
|
||||||
|
bg=mDarkTeal
|
||||||
|
}
|
||||||
|
\usebeamercolor[fg]{normal text}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@colors@light}{
|
||||||
|
\setbeamercolor{normal text}{%
|
||||||
|
fg=mDarkTeal,
|
||||||
|
bg=black!2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamercolor{alerted text}{%
|
||||||
|
fg=mLightBrown
|
||||||
|
}
|
||||||
|
\setbeamercolor{example text}{%
|
||||||
|
fg=mLightGreen
|
||||||
|
}
|
||||||
|
\setbeamercolor{titlelike}{use=normal text, parent=normal text}
|
||||||
|
\setbeamercolor{author}{use=normal text, parent=normal text}
|
||||||
|
\setbeamercolor{date}{use=normal text, parent=normal text}
|
||||||
|
\setbeamercolor{institute}{use=normal text, parent=normal text}
|
||||||
|
\setbeamercolor{structure}{use=normal text, fg=normal text.fg}
|
||||||
|
\setbeamercolor{palette primary}{%
|
||||||
|
use=normal text,
|
||||||
|
fg=normal text.bg,
|
||||||
|
bg=normal text.fg
|
||||||
|
}
|
||||||
|
\setbeamercolor{frametitle}{%
|
||||||
|
use=palette primary,
|
||||||
|
parent=palette primary
|
||||||
|
}
|
||||||
|
\setbeamercolor{progress bar}{%
|
||||||
|
use=alerted text,
|
||||||
|
fg=alerted text.fg,
|
||||||
|
bg=alerted text.fg!50!black!30
|
||||||
|
}
|
||||||
|
\setbeamercolor{title separator}{
|
||||||
|
use=progress bar,
|
||||||
|
parent=progress bar
|
||||||
|
}
|
||||||
|
\setbeamercolor{progress bar in head/foot}{%
|
||||||
|
use=progress bar,
|
||||||
|
parent=progress bar
|
||||||
|
}
|
||||||
|
\setbeamercolor{progress bar in section page}{
|
||||||
|
use=progress bar,
|
||||||
|
parent=progress bar
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@block@transparent}{
|
||||||
|
\setbeamercolor{block title}{%
|
||||||
|
use=normal text,
|
||||||
|
fg=normal text.fg,
|
||||||
|
bg=
|
||||||
|
}
|
||||||
|
\setbeamercolor{block body}{
|
||||||
|
bg=
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@block@fill}{
|
||||||
|
\setbeamercolor{block title}{%
|
||||||
|
use=normal text,
|
||||||
|
fg=normal text.fg,
|
||||||
|
bg=normal text.bg!80!fg
|
||||||
|
}
|
||||||
|
\setbeamercolor{block body}{
|
||||||
|
use={block title, normal text},
|
||||||
|
bg=block title.bg!50!normal text.bg
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamercolor{block title alerted}{%
|
||||||
|
use={block title, alerted text},
|
||||||
|
bg=block title.bg,
|
||||||
|
fg=alerted text.fg
|
||||||
|
}
|
||||||
|
\setbeamercolor{block title example}{%
|
||||||
|
use={block title, example text},
|
||||||
|
bg=block title.bg,
|
||||||
|
fg=example text.fg
|
||||||
|
}
|
||||||
|
\setbeamercolor{block body alerted}{use=block body, parent=block body}
|
||||||
|
\setbeamercolor{block body example}{use=block body, parent=block body}
|
||||||
|
\setbeamercolor{footnote}{fg=normal text.fg!90}
|
||||||
|
\setbeamercolor{footnote mark}{fg=.}
|
||||||
|
\setbeamercolor{bibliography entry author}{fg=, bg=}
|
||||||
|
\setbeamercolor{bibliography entry title}{fg=, bg=}
|
||||||
|
\setbeamercolor{bibliography entry location}{fg=, bg=}
|
||||||
|
\setbeamercolor{bibliography entry note}{fg=, bg=}
|
||||||
|
\metropolis@color@setdefaults
|
||||||
|
\ProcessPgfPackageOptions{/metropolis/color}
|
||||||
|
\mode<all>
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamercolorthememetropolis.sty'.
|
||||||
@@ -0,0 +1,325 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamerfontthememetropolis.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamerfontthememetropolis.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamerfontthememetropolis}[2017/01/23 Metropolis font theme]
|
||||||
|
\RequirePackage{etoolbox}
|
||||||
|
\RequirePackage{ifxetex}
|
||||||
|
\RequirePackage{ifluatex}
|
||||||
|
\RequirePackage{pgfopts}
|
||||||
|
\ifboolexpr{bool {xetex} or bool {luatex}}{
|
||||||
|
\@ifpackageloaded{fontspec}{
|
||||||
|
\PassOptionsToPackage{no-math}{fontspec}
|
||||||
|
}{
|
||||||
|
\RequirePackage[no-math]{fontspec}
|
||||||
|
}
|
||||||
|
\newcounter{fontsnotfound}
|
||||||
|
\newcommand{\checkfont}[1]{%
|
||||||
|
\suppressfontnotfounderror=1%
|
||||||
|
\font\x = "#1" at 10pt
|
||||||
|
\selectfont
|
||||||
|
\ifx\x\nullfont%
|
||||||
|
\stepcounter{fontsnotfound}%
|
||||||
|
\fi%
|
||||||
|
\suppressfontnotfounderror=0%
|
||||||
|
}
|
||||||
|
|
||||||
|
\newcommand{\iffontsavailable}[3]{%
|
||||||
|
\setcounter{fontsnotfound}{0}%
|
||||||
|
\expandafter\forcsvlist\expandafter%
|
||||||
|
\checkfont\expandafter{#1}%
|
||||||
|
\ifnum\value{fontsnotfound}=0%
|
||||||
|
#2%
|
||||||
|
\else%
|
||||||
|
#3%
|
||||||
|
\fi%
|
||||||
|
}
|
||||||
|
\iffontsavailable{Fira Sans Light,%
|
||||||
|
Fira Sans Light Italic,%
|
||||||
|
Fira Sans,%
|
||||||
|
Fira Sans Italic}%
|
||||||
|
{%
|
||||||
|
\setsansfont[ItalicFont={Fira Sans Light Italic},%
|
||||||
|
BoldFont={Fira Sans},%
|
||||||
|
BoldItalicFont={Fira Sans Italic}]%
|
||||||
|
{Fira Sans Light}%
|
||||||
|
}{%
|
||||||
|
\iffontsavailable{Fira Sans Light OT,%
|
||||||
|
Fira Sans Light Italic OT,%
|
||||||
|
Fira Sans OT,%
|
||||||
|
Fira Sans Italic OT}%
|
||||||
|
{%
|
||||||
|
\setsansfont[ItalicFont={Fira Sans Light Italic OT},%
|
||||||
|
BoldFont={Fira Sans OT},%
|
||||||
|
BoldItalicFont={Fira Sans Italic OT}]%
|
||||||
|
{Fira Sans Light OT}%
|
||||||
|
}{%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Could not find Fira Sans fonts%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\iffontsavailable{Fira Mono, Fira Mono Bold}{%
|
||||||
|
\setmonofont[BoldFont={Fira Mono Medium}]{Fira Mono}%
|
||||||
|
}{%
|
||||||
|
\iffontsavailable{Fira Mono OT, Fira Mono Bold OT}{%
|
||||||
|
\setmonofont[BoldFont={Fira Mono Medium OT}]{Fira Mono OT}%
|
||||||
|
}{%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Could not find Fira Mono fonts%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\AtBeginEnvironment{tabular}{%
|
||||||
|
\addfontfeature{Numbers={Monospaced}}%
|
||||||
|
}
|
||||||
|
}{%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
You need to compile with XeLaTeX or LuaLaTeX to use the Fira fonts%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamerfont{title}{size=\Large,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont{author}{size=\small}
|
||||||
|
\setbeamerfont{date}{size=\small}
|
||||||
|
\setbeamerfont{section title}{size=\Large,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont{block title}{size=\normalsize,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont{block title alerted}{size=\normalsize,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont*{subtitle}{size=\large}
|
||||||
|
\setbeamerfont{frametitle}{size=\large,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont{caption}{size=\small}
|
||||||
|
\setbeamerfont{caption name}{series=\bfseries}
|
||||||
|
\setbeamerfont{description item}{series=\bfseries}
|
||||||
|
\setbeamerfont{page number in head/foot}{size=\scriptsize}
|
||||||
|
\setbeamerfont{bibliography entry author}{size=\normalsize,%
|
||||||
|
series=\normalfont}
|
||||||
|
\setbeamerfont{bibliography entry title}{size=\normalsize,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont{bibliography entry location}{size=\normalsize,%
|
||||||
|
series=\normalfont}
|
||||||
|
\setbeamerfont{bibliography entry note}{size=\small,%
|
||||||
|
series=\normalfont}
|
||||||
|
\setbeamerfont{standout}{size=\Large,%
|
||||||
|
series=\bfseries}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/font/titleformat title/.cd,
|
||||||
|
.is choice,
|
||||||
|
regular/.code={%
|
||||||
|
\let\metropolis@titleformat\@empty%
|
||||||
|
\setbeamerfont{title}{shape=\normalfont}%
|
||||||
|
},
|
||||||
|
smallcaps/.code={%
|
||||||
|
\let\metropolis@titleformat\@empty%
|
||||||
|
\setbeamerfont{title}{shape=\scshape}%
|
||||||
|
},
|
||||||
|
allsmallcaps/.code={%
|
||||||
|
\let\metropolis@titleformat\lowercase%
|
||||||
|
\setbeamerfont{title}{shape=\scshape}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat title=allsmallcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
allcaps/.code={%
|
||||||
|
\let\metropolis@titleformat\uppercase%
|
||||||
|
\setbeamerfont{title}{shape=\normalfont}
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat title=allcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/font/titleformat subtitle/.cd,
|
||||||
|
.is choice,
|
||||||
|
regular/.code={%
|
||||||
|
\let\metropolis@subtitleformat\@empty%
|
||||||
|
\setbeamerfont{subtitle}{shape=\normalfont}%
|
||||||
|
},
|
||||||
|
smallcaps/.code={%
|
||||||
|
\let\metropolis@subtitleformat\@empty%
|
||||||
|
\setbeamerfont{subtitle}{shape=\scshape}%
|
||||||
|
},
|
||||||
|
allsmallcaps/.code={%
|
||||||
|
\let\metropolis@subtitleformat\lowercase%
|
||||||
|
\setbeamerfont{subtitle}{shape=\scshape}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat subtitle=allsmallcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
allcaps/.code={%
|
||||||
|
\let\metropolis@subtitleformat\uppercase%
|
||||||
|
\setbeamerfont{subtitle}{shape=\normalfont}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat subtitle=allcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/font/titleformat section/.cd,
|
||||||
|
.is choice,
|
||||||
|
regular/.code={%
|
||||||
|
\let\metropolis@sectiontitleformat\@empty%
|
||||||
|
\setbeamerfont{section title}{shape=\normalfont}%
|
||||||
|
},
|
||||||
|
smallcaps/.code={%
|
||||||
|
\let\metropolis@sectiontitleformat\@empty%
|
||||||
|
\setbeamerfont{section title}{shape=\scshape}%
|
||||||
|
},
|
||||||
|
allsmallcaps/.code={%
|
||||||
|
\let\metropolis@sectiontitleformat\MakeLowercase%
|
||||||
|
\setbeamerfont{section title}{shape=\scshape}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat section=allsmallcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
allcaps/.code={%
|
||||||
|
\let\metropolis@sectiontitleformat\MakeUppercase%
|
||||||
|
\setbeamerfont{section title}{shape=\normalfont}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat section=allcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/font/titleformat frame/.cd,
|
||||||
|
.is choice,
|
||||||
|
regular/.code={%
|
||||||
|
\let\metropolis@frametitleformat\@empty%
|
||||||
|
\setbeamerfont{frametitle}{shape=\normalfont}%
|
||||||
|
},
|
||||||
|
smallcaps/.code={%
|
||||||
|
\let\metropolis@frametitleformat\@empty%
|
||||||
|
\setbeamerfont{frametitle}{shape=\scshape}%
|
||||||
|
},
|
||||||
|
allsmallcaps/.code={%
|
||||||
|
\let\metropolis@frametitleformat\MakeLowercase%
|
||||||
|
\setbeamerfont{frametitle}{shape=\scshape}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat frame=allsmallcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
allcaps/.code={%
|
||||||
|
\let\metropolis@frametitleformat\MakeUppercase%
|
||||||
|
\setbeamerfont{frametitle}{shape=\normalfont}
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat frame=allcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/font/.cd,
|
||||||
|
titleformattitle/.code=\pgfkeysalso{titleformat title=#1},
|
||||||
|
titleformatsubtitle/.code=\pgfkeysalso{titleformat subtitle=#1},
|
||||||
|
titleformatsection/.code=\pgfkeysalso{titleformat section=#1},
|
||||||
|
titleformatframe/.code=\pgfkeysalso{titleformat frame=#1},
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@font@setdefaults}{
|
||||||
|
\pgfkeys{/metropolis/font/.cd,
|
||||||
|
titleformat title=regular,
|
||||||
|
titleformat subtitle=regular,
|
||||||
|
titleformat section=regular,
|
||||||
|
titleformat frame=regular,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\def\metropolis@titleformat#1{#1}
|
||||||
|
\def\metropolis@subtitleformat#1{#1}
|
||||||
|
\def\metropolis@sectiontitleformat#1{#1}
|
||||||
|
\def\metropolis@frametitleformat#1{#1}
|
||||||
|
\patchcmd{\beamer@title}%
|
||||||
|
{\def\inserttitle{#2}}%
|
||||||
|
{\def\inserttitle{\metropolis@titleformat{#2}}}%
|
||||||
|
{}%
|
||||||
|
{\PackageError{beamerfontthememetropolis}{Patching title failed}\@ehc}
|
||||||
|
\patchcmd{\beamer@subtitle}%
|
||||||
|
{\def\insertsubtitle{#2}}%
|
||||||
|
{\def\insertsubtitle{\metropolis@subtitleformat{#2}}}%
|
||||||
|
{}%
|
||||||
|
{\PackageError{beamerfontthememetropolis}{Patching subtitle failed}\@ehc}
|
||||||
|
\patchcmd{\sectionentry}
|
||||||
|
{\def\insertsectionhead{#2}}
|
||||||
|
{\def\insertsectionhead{\metropolis@sectiontitleformat{#2}}}
|
||||||
|
{}
|
||||||
|
{\PackageError{beamerfontthememetropolis}{Patching section title failed}\@ehc}
|
||||||
|
\@tempswafalse
|
||||||
|
\patchcmd{\beamer@section}
|
||||||
|
{\edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\unexpanded{#1}}}}
|
||||||
|
{\edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\noexpand\metropolis@sectiontitleformat{\unexpanded{#1}}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\patchcmd{\beamer@section}
|
||||||
|
{\def\insertsectionhead{\hyperlink{Navigation\the\c@page}{#1}}}
|
||||||
|
{\def\insertsectionhead{\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\metropolis@sectiontitleformat{#1}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\patchcmd{\beamer@section}
|
||||||
|
{\protected@edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{#1}}}
|
||||||
|
{\protected@edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\noexpand\metropolis@sectiontitleformat{#1}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\if@tempswa\else
|
||||||
|
\PackageError{beamerfontthememetropolis}{Patching section title failed}\@ehc
|
||||||
|
\fi
|
||||||
|
\@tempswafalse
|
||||||
|
\patchcmd{\beamer@subsection}
|
||||||
|
{\edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\unexpanded{#1}}}}
|
||||||
|
{\edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\noexpand\metropolis@sectiontitleformat{\unexpanded{#1}}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\patchcmd{\beamer@subsection}
|
||||||
|
{\def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}{#1}}}
|
||||||
|
{\def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\metropolis@sectiontitleformat{#1}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\patchcmd{\beamer@subsection}
|
||||||
|
{\protected@edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{#1}}}
|
||||||
|
{\protected@edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\noexpand\metropolis@sectiontitleformat{#1}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\if@tempswa\else
|
||||||
|
\PackageError{beamerfontthememetropolis}{Patching section title failed}\@ehc
|
||||||
|
\fi
|
||||||
|
\patchcmd{\beamer@@frametitle}
|
||||||
|
{{%
|
||||||
|
\gdef\insertframetitle{{#2\ifnum\beamer@autobreakcount>0\relax{}\space%
|
||||||
|
\usebeamertemplate*{frametitle continuation}\fi}}%
|
||||||
|
\gdef\beamer@frametitle{#2}%
|
||||||
|
\gdef\beamer@shortframetitle{#1}%
|
||||||
|
}}
|
||||||
|
{{%
|
||||||
|
\gdef\insertframetitle{{\metropolis@frametitleformat{#2}\ifnum%
|
||||||
|
\beamer@autobreakcount>0\relax{}\space%
|
||||||
|
\usebeamertemplate*{frametitle continuation}\fi}}%
|
||||||
|
\gdef\beamer@frametitle{#2}%
|
||||||
|
\gdef\beamer@shortframetitle{#1}%
|
||||||
|
}}
|
||||||
|
{}
|
||||||
|
{\PackageError{beamerfontthememetropolis}{Patching frame title failed}\@ehc}
|
||||||
|
\metropolis@font@setdefaults
|
||||||
|
\ProcessPgfPackageOptions{/metropolis/font}
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamerfontthememetropolis.sty'.
|
||||||
@@ -0,0 +1,297 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamerinnerthememetropolis.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamerinnerthememetropolis.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamerinnerthememetropolis}[2017/01/23 Metropolis inner theme]
|
||||||
|
\RequirePackage{etoolbox}
|
||||||
|
\RequirePackage{keyval}
|
||||||
|
\RequirePackage{calc}
|
||||||
|
\RequirePackage{pgfopts}
|
||||||
|
\RequirePackage{tikz}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/inner/sectionpage/.cd,
|
||||||
|
.is choice,
|
||||||
|
none/.code=\metropolis@disablesectionpage,
|
||||||
|
simple/.code={\metropolis@enablesectionpage
|
||||||
|
\setbeamertemplate{section page}[simple]},
|
||||||
|
progressbar/.code={\metropolis@enablesectionpage
|
||||||
|
\setbeamertemplate{section page}[progressbar]},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/inner/subsectionpage/.cd,
|
||||||
|
.is choice,
|
||||||
|
none/.code=\metropolis@disablesubsectionpage,
|
||||||
|
simple/.code={\metropolis@enablesubsectionpage
|
||||||
|
\setbeamertemplate{section page}[simple]},
|
||||||
|
progressbar/.code={\metropolis@enablesubsectionpage
|
||||||
|
\setbeamertemplate{section page}[progressbar]},
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@inner@setdefaults}{
|
||||||
|
\pgfkeys{/metropolis/inner/.cd,
|
||||||
|
sectionpage=progressbar,
|
||||||
|
subsectionpage=none
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{title page}{
|
||||||
|
\begin{minipage}[b][\paperheight]{\textwidth}
|
||||||
|
\ifx\inserttitlegraphic\@empty\else\usebeamertemplate*{title graphic}\fi
|
||||||
|
\vfill%
|
||||||
|
\ifx\inserttitle\@empty\else\usebeamertemplate*{title}\fi
|
||||||
|
\ifx\insertsubtitle\@empty\else\usebeamertemplate*{subtitle}\fi
|
||||||
|
\usebeamertemplate*{title separator}
|
||||||
|
\ifx\beamer@shortauthor\@empty\else\usebeamertemplate*{author}\fi
|
||||||
|
\ifx\insertdate\@empty\else\usebeamertemplate*{date}\fi
|
||||||
|
\ifx\insertinstitute\@empty\else\usebeamertemplate*{institute}\fi
|
||||||
|
\vfill
|
||||||
|
\vspace*{1mm}
|
||||||
|
\end{minipage}
|
||||||
|
}
|
||||||
|
\def\maketitle{%
|
||||||
|
\ifbeamer@inframe
|
||||||
|
\titlepage
|
||||||
|
\else
|
||||||
|
\frame[plain,noframenumbering]{\titlepage}
|
||||||
|
\fi
|
||||||
|
}
|
||||||
|
\def\titlepage{%
|
||||||
|
\usebeamertemplate{title page}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{title graphic}{
|
||||||
|
\vbox to 0pt {
|
||||||
|
\vspace*{2em}
|
||||||
|
\inserttitlegraphic%
|
||||||
|
}%
|
||||||
|
\nointerlineskip%
|
||||||
|
}
|
||||||
|
\setbeamertemplate{title}{
|
||||||
|
\raggedright%
|
||||||
|
\linespread{1.0}%
|
||||||
|
\inserttitle%
|
||||||
|
\par%
|
||||||
|
\vspace*{0.5em}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{subtitle}{
|
||||||
|
\raggedright%
|
||||||
|
\insertsubtitle%
|
||||||
|
\par%
|
||||||
|
\vspace*{0.5em}
|
||||||
|
}
|
||||||
|
\newlength{\metropolis@titleseparator@linewidth}
|
||||||
|
\setlength{\metropolis@titleseparator@linewidth}{0.4pt}
|
||||||
|
\setbeamertemplate{title separator}{
|
||||||
|
\tikzexternaldisable%
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\fill[fg] (0,0) rectangle (\textwidth, \metropolis@titleseparator@linewidth);
|
||||||
|
\end{tikzpicture}%
|
||||||
|
\tikzexternalenable%
|
||||||
|
\par%
|
||||||
|
}
|
||||||
|
\setbeamertemplate{author}{
|
||||||
|
\vspace*{2em}
|
||||||
|
\insertauthor%
|
||||||
|
\par%
|
||||||
|
\vspace*{0.25em}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{date}{
|
||||||
|
\insertdate%
|
||||||
|
\par%
|
||||||
|
}
|
||||||
|
\setbeamertemplate{institute}{
|
||||||
|
\vspace*{3mm}
|
||||||
|
\insertinstitute%
|
||||||
|
\par%
|
||||||
|
}
|
||||||
|
\defbeamertemplate{section page}{simple}{
|
||||||
|
\begin{center}
|
||||||
|
\usebeamercolor[fg]{section title}
|
||||||
|
\usebeamerfont{section title}
|
||||||
|
\insertsectionhead\par
|
||||||
|
\ifx\insertsubsectionhead\@empty\else
|
||||||
|
\usebeamercolor[fg]{subsection title}
|
||||||
|
\usebeamerfont{subsection title}
|
||||||
|
\insertsubsectionhead
|
||||||
|
\fi
|
||||||
|
\end{center}
|
||||||
|
}
|
||||||
|
\defbeamertemplate{section page}{progressbar}{
|
||||||
|
\centering
|
||||||
|
\begin{minipage}{22em}
|
||||||
|
\raggedright
|
||||||
|
\usebeamercolor[fg]{section title}
|
||||||
|
\usebeamerfont{section title}
|
||||||
|
\insertsectionhead\\[-1ex]
|
||||||
|
\usebeamertemplate*{progress bar in section page}
|
||||||
|
\par
|
||||||
|
\ifx\insertsubsectionhead\@empty\else%
|
||||||
|
\usebeamercolor[fg]{subsection title}%
|
||||||
|
\usebeamerfont{subsection title}%
|
||||||
|
\insertsubsectionhead
|
||||||
|
\fi
|
||||||
|
\end{minipage}
|
||||||
|
\par
|
||||||
|
\vspace{\baselineskip}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@disablesectionpage}{
|
||||||
|
\AtBeginSection{
|
||||||
|
% intentionally empty
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@enablesectionpage}{
|
||||||
|
\AtBeginSection{
|
||||||
|
\ifbeamer@inframe
|
||||||
|
\sectionpage
|
||||||
|
\else
|
||||||
|
\frame[plain,c,noframenumbering]{\sectionpage}
|
||||||
|
\fi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{subsection page}{%
|
||||||
|
\usebeamertemplate*{section page}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@disablesubsectionpage}{
|
||||||
|
\AtBeginSubsection{
|
||||||
|
% intentionally empty
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@enablesubsectionpage}{
|
||||||
|
\AtBeginSubsection{
|
||||||
|
\ifbeamer@inframe
|
||||||
|
\subsectionpage
|
||||||
|
\else
|
||||||
|
\frame[plain,c,noframenumbering]{\subsectionpage}
|
||||||
|
\fi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\newlength{\metropolis@progressonsectionpage}
|
||||||
|
\newlength{\metropolis@progressonsectionpage@linewidth}
|
||||||
|
\setlength{\metropolis@progressonsectionpage@linewidth}{0.4pt}
|
||||||
|
\setbeamertemplate{progress bar in section page}{
|
||||||
|
\setlength{\metropolis@progressonsectionpage}{%
|
||||||
|
\textwidth * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}%
|
||||||
|
}%
|
||||||
|
\tikzexternaldisable%
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\fill[bg] (0,0) rectangle (\textwidth, \metropolis@progressonsectionpage@linewidth);
|
||||||
|
\fill[fg] (0,0) rectangle (\metropolis@progressonsectionpage, \metropolis@progressonsectionpage@linewidth);
|
||||||
|
\end{tikzpicture}%
|
||||||
|
\tikzexternalenable%
|
||||||
|
}
|
||||||
|
\def\inserttotalframenumber{100}
|
||||||
|
\newlength{\metropolis@blocksep}
|
||||||
|
\newlength{\metropolis@blockadjust}
|
||||||
|
\setlength{\metropolis@blocksep}{0.75ex}
|
||||||
|
\setlength{\metropolis@blockadjust}{0.25ex}
|
||||||
|
\providecommand{\metropolis@strut}{%
|
||||||
|
\vphantom{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz()}%
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@block}[1]{
|
||||||
|
\par\vskip\medskipamount%
|
||||||
|
\setlength{\parskip}{0pt}
|
||||||
|
\ifbeamercolorempty[bg]{block title#1}{%
|
||||||
|
\begin{beamercolorbox}[rightskip=0pt plus 4em]{block title#1}}{%
|
||||||
|
\ifbeamercolorempty[bg]{block title}{%
|
||||||
|
\begin{beamercolorbox}[rightskip=0pt plus 4em]{block title#1}%
|
||||||
|
}%
|
||||||
|
{%
|
||||||
|
\begin{beamercolorbox}[
|
||||||
|
sep=\dimexpr\metropolis@blocksep-\metropolis@blockadjust\relax,
|
||||||
|
leftskip=\metropolis@blockadjust,
|
||||||
|
rightskip=\dimexpr\metropolis@blockadjust plus 4em\relax
|
||||||
|
]{block title#1}%
|
||||||
|
}}%
|
||||||
|
\usebeamerfont*{block title#1}%
|
||||||
|
\metropolis@strut%
|
||||||
|
\insertblocktitle%
|
||||||
|
\metropolis@strut%
|
||||||
|
\end{beamercolorbox}%
|
||||||
|
\nointerlineskip%
|
||||||
|
\ifbeamercolorempty[bg]{block body#1}{%
|
||||||
|
\begin{beamercolorbox}[vmode]{block body#1}}{
|
||||||
|
\ifbeamercolorempty[bg]{block body}{%
|
||||||
|
\begin{beamercolorbox}[vmode]{block body#1}%
|
||||||
|
}{%
|
||||||
|
\begin{beamercolorbox}[sep=\metropolis@blocksep, vmode]{block body#1}%
|
||||||
|
\vspace{-\metropolis@parskip}
|
||||||
|
}}%
|
||||||
|
\usebeamerfont{block body#1}%
|
||||||
|
\setlength{\parskip}{\metropolis@parskip}%
|
||||||
|
}
|
||||||
|
\setbeamertemplate{block begin}{\metropolis@block{}}
|
||||||
|
\setbeamertemplate{block alerted begin}{\metropolis@block{ alerted}}
|
||||||
|
\setbeamertemplate{block example begin}{\metropolis@block{ example}}
|
||||||
|
\setbeamertemplate{block end}{\end{beamercolorbox}\vspace*{0.2ex}}
|
||||||
|
\setbeamertemplate{block alerted end}{\end{beamercolorbox}\vspace*{0.2ex}}
|
||||||
|
\setbeamertemplate{block example end}{\end{beamercolorbox}\vspace*{0.2ex}}
|
||||||
|
\setbeamertemplate{itemize items}{\textbullet}
|
||||||
|
\setbeamertemplate{caption label separator}{: }
|
||||||
|
\setbeamertemplate{caption}[numbered]
|
||||||
|
\setbeamertemplate{footnote}{%
|
||||||
|
\parindent 0em\noindent%
|
||||||
|
\raggedright
|
||||||
|
\usebeamercolor{footnote}\hbox to 0.8em{\hfil\insertfootnotemark}\insertfootnotetext\par%
|
||||||
|
}
|
||||||
|
\newlength{\metropolis@parskip}
|
||||||
|
\setlength{\metropolis@parskip}{0.5em}
|
||||||
|
\setlength{\parskip}{\metropolis@parskip}
|
||||||
|
\linespread{1.15}
|
||||||
|
\define@key{beamerframe}{c}[true]{% centered
|
||||||
|
\beamer@frametopskip=0pt plus 1fill\relax%
|
||||||
|
\beamer@framebottomskip=0pt plus 1fill\relax%
|
||||||
|
\beamer@frametopskipautobreak=0pt plus .4\paperheight\relax%
|
||||||
|
\beamer@framebottomskipautobreak=0pt plus .6\paperheight\relax%
|
||||||
|
\def\beamer@initfirstlineunskip{}%
|
||||||
|
}
|
||||||
|
\providebool{metropolis@standout}
|
||||||
|
\define@key{beamerframe}{standout}[true]{%
|
||||||
|
\booltrue{metropolis@standout}
|
||||||
|
\begingroup
|
||||||
|
\setkeys{beamerframe}{c}
|
||||||
|
\setkeys{beamerframe}{noframenumbering}
|
||||||
|
\ifbeamercolorempty[bg]{palette primary}{
|
||||||
|
\setbeamercolor{background canvas}{
|
||||||
|
use=palette primary,
|
||||||
|
bg=-palette primary.fg
|
||||||
|
}
|
||||||
|
}{
|
||||||
|
\setbeamercolor{background canvas}{
|
||||||
|
use=palette primary,
|
||||||
|
bg=palette primary.bg
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamercolor{local structure}{
|
||||||
|
fg=palette primary.fg
|
||||||
|
}
|
||||||
|
\usebeamercolor[fg]{palette primary}
|
||||||
|
}
|
||||||
|
\pretocmd{\beamer@reseteecodes}{%
|
||||||
|
\ifbool{metropolis@standout}{
|
||||||
|
\endgroup
|
||||||
|
\boolfalse{metropolis@standout}
|
||||||
|
}{}
|
||||||
|
}{}{}
|
||||||
|
\AtBeginEnvironment{beamer@frameslide}{
|
||||||
|
\ifbool{metropolis@standout}{
|
||||||
|
\centering
|
||||||
|
\usebeamerfont{standout}
|
||||||
|
}{}
|
||||||
|
}
|
||||||
|
\metropolis@inner@setdefaults
|
||||||
|
\ProcessPgfPackageOptions{/metropolis/inner}
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamerinnerthememetropolis.sty'.
|
||||||
@@ -0,0 +1,137 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamerouterthememetropolis.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamerouterthememetropolis.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamerouterthememetropolis}[2017/01/23 Metropolis outer theme]
|
||||||
|
\RequirePackage{etoolbox}
|
||||||
|
\RequirePackage{calc}
|
||||||
|
\RequirePackage{pgfopts}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/outer/numbering/.cd,
|
||||||
|
.is choice,
|
||||||
|
none/.code=\setbeamertemplate{frame numbering}[none],
|
||||||
|
counter/.code=\setbeamertemplate{frame numbering}[counter],
|
||||||
|
fraction/.code=\setbeamertemplate{frame numbering}[fraction],
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/outer/progressbar/.cd,
|
||||||
|
.is choice,
|
||||||
|
none/.code={%
|
||||||
|
\setbeamertemplate{headline}[plain]
|
||||||
|
\setbeamertemplate{frametitle}[plain]
|
||||||
|
\setbeamertemplate{footline}[plain]
|
||||||
|
},
|
||||||
|
head/.code={\pgfkeys{/metropolis/outer/progressbar=none}
|
||||||
|
\addtobeamertemplate{headline}{}{%
|
||||||
|
\usebeamertemplate*{progress bar in head/foot}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
frametitle/.code={\pgfkeys{/metropolis/outer/progressbar=none}
|
||||||
|
\addtobeamertemplate{frametitle}{}{%
|
||||||
|
\usebeamertemplate*{progress bar in head/foot}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
foot/.code={\pgfkeys{/metropolis/outer/progressbar=none}
|
||||||
|
\addtobeamertemplate{footline}{}{%
|
||||||
|
\usebeamertemplate*{progress bar in head/foot}%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@outer@setdefaults}{
|
||||||
|
\pgfkeys{/metropolis/outer/.cd,
|
||||||
|
numbering=counter,
|
||||||
|
progressbar=none,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{navigation symbols}{}
|
||||||
|
\defbeamertemplate{frame footer}{none}{}
|
||||||
|
\defbeamertemplate{frame footer}{custom}[1]{ #1 }
|
||||||
|
\defbeamertemplate{frame numbering}{none}{}
|
||||||
|
\defbeamertemplate{frame numbering}{counter}{\insertframenumber}
|
||||||
|
\defbeamertemplate{frame numbering}{fraction}{
|
||||||
|
\insertframenumber/\inserttotalframenumber
|
||||||
|
}
|
||||||
|
\defbeamertemplate{headline}{plain}{}
|
||||||
|
\defbeamertemplate{footline}{plain}{%
|
||||||
|
\begin{beamercolorbox}[wd=\textwidth, sep=3ex]{footline}%
|
||||||
|
\usebeamerfont{page number in head/foot}%
|
||||||
|
\usebeamertemplate*{frame footer}
|
||||||
|
\hfill%
|
||||||
|
\usebeamertemplate*{frame numbering}
|
||||||
|
\end{beamercolorbox}%
|
||||||
|
}
|
||||||
|
\newlength{\metropolis@frametitle@padding}
|
||||||
|
\setlength{\metropolis@frametitle@padding}{2.2ex}
|
||||||
|
\newcommand{\metropolis@frametitlestrut@start}{
|
||||||
|
\rule{0pt}{\metropolis@frametitle@padding +%
|
||||||
|
\totalheightof{%
|
||||||
|
\ifcsdef{metropolis@frametitleformat}{\metropolis@frametitleformat X}{X}%
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@frametitlestrut@end}{
|
||||||
|
\rule[-\metropolis@frametitle@padding]{0pt}{\metropolis@frametitle@padding}
|
||||||
|
}
|
||||||
|
\defbeamertemplate{frametitle}{plain}{%
|
||||||
|
\nointerlineskip%
|
||||||
|
\begin{beamercolorbox}[%
|
||||||
|
wd=\paperwidth,%
|
||||||
|
sep=0pt,%
|
||||||
|
leftskip=\metropolis@frametitle@padding,%
|
||||||
|
rightskip=\metropolis@frametitle@padding,%
|
||||||
|
]{frametitle}%
|
||||||
|
\metropolis@frametitlestrut@start%
|
||||||
|
\insertframetitle%
|
||||||
|
\nolinebreak%
|
||||||
|
\metropolis@frametitlestrut@end%
|
||||||
|
\end{beamercolorbox}%
|
||||||
|
}
|
||||||
|
\setbeamertemplate{frametitle continuation}{%
|
||||||
|
\usebeamerfont{frametitle}
|
||||||
|
\romannumeral \insertcontinuationcount
|
||||||
|
}
|
||||||
|
\newlength{\metropolis@progressinheadfoot}
|
||||||
|
\newlength{\metropolis@progressinheadfoot@linewidth}
|
||||||
|
\setlength{\metropolis@progressinheadfoot@linewidth}{0.4pt}
|
||||||
|
\setbeamertemplate{progress bar in head/foot}{
|
||||||
|
\nointerlineskip
|
||||||
|
\setlength{\metropolis@progressinheadfoot}{%
|
||||||
|
\paperwidth * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}%
|
||||||
|
}%
|
||||||
|
\begin{beamercolorbox}[wd=\paperwidth]{progress bar in head/foot}
|
||||||
|
\tikzexternaldisable%
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\fill[bg] (0,0) rectangle (\paperwidth, \metropolis@progressinheadfoot@linewidth);
|
||||||
|
\fill[fg] (0,0) rectangle (\metropolis@progressinheadfoot, \metropolis@progressinheadfoot@linewidth);
|
||||||
|
\end{tikzpicture}%
|
||||||
|
\tikzexternalenable%
|
||||||
|
\end{beamercolorbox}
|
||||||
|
}
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\apptocmd{\appendix}{%
|
||||||
|
\pgfkeys{%
|
||||||
|
/metropolis/outer/.cd,
|
||||||
|
numbering=none,
|
||||||
|
progressbar=none}
|
||||||
|
}{}{}
|
||||||
|
}
|
||||||
|
\metropolis@outer@setdefaults
|
||||||
|
\ProcessPgfPackageOptions{/metropolis/outer}
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamerouterthememetropolis.sty'.
|
||||||
@@ -0,0 +1,107 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamerthememetropolis.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamerthememetropolis.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamerthememetropolis}
|
||||||
|
[2017/01/23 v1.2 Metropolis Beamer theme]
|
||||||
|
\RequirePackage{etoolbox}
|
||||||
|
\RequirePackage{pgfopts}
|
||||||
|
\pgfkeys{/metropolis/.cd,
|
||||||
|
.search also={
|
||||||
|
/metropolis/inner,
|
||||||
|
/metropolis/outer,
|
||||||
|
/metropolis/color,
|
||||||
|
/metropolis/font,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/titleformat plain/.cd,
|
||||||
|
.is choice,
|
||||||
|
regular/.code={%
|
||||||
|
\let\metropolis@plaintitleformat\@empty%
|
||||||
|
\setbeamerfont{standout}{shape=\normalfont}%
|
||||||
|
},
|
||||||
|
smallcaps/.code={%
|
||||||
|
\let\metropolis@plaintitleformat\@empty%
|
||||||
|
\setbeamerfont{standout}{shape=\scshape}%
|
||||||
|
},
|
||||||
|
allsmallcaps/.code={%
|
||||||
|
\let\metropolis@plaintitleformat\MakeLowercase%
|
||||||
|
\setbeamerfont{standout}{shape=\scshape}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat plain=allsmallcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
allcaps/.code={%
|
||||||
|
\let\metropolis@plaintitleformat\MakeUppercase%
|
||||||
|
\setbeamerfont{standout}{shape=\normalfont}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat plain=allcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/titleformat/.code=\pgfkeysalso{
|
||||||
|
font/titleformat title=#1,
|
||||||
|
font/titleformat subtitle=#1,
|
||||||
|
font/titleformat section=#1,
|
||||||
|
font/titleformat frame=#1,
|
||||||
|
titleformat plain=#1,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\pgfkeys{/metropolis/.cd,
|
||||||
|
usetitleprogressbar/.code=\pgfkeysalso{outer/progressbar=frametitle},
|
||||||
|
noslidenumbers/.code=\pgfkeysalso{outer/numbering=none},
|
||||||
|
usetotalslideindicator/.code=\pgfkeysalso{outer/numbering=fraction},
|
||||||
|
nosectionslide/.code=\pgfkeysalso{inner/sectionpage=none},
|
||||||
|
darkcolors/.code=\pgfkeysalso{color/background=dark},
|
||||||
|
blockbg/.code=\pgfkeysalso{color/block=fill, inner/block=fill},
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@setdefaults}{
|
||||||
|
\pgfkeys{/metropolis/.cd,
|
||||||
|
titleformat plain=regular,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\providecommand{\tikzexternalenable}{}
|
||||||
|
\providecommand{\tikzexternaldisable}{}
|
||||||
|
\useinnertheme{metropolis}
|
||||||
|
\useoutertheme{metropolis}
|
||||||
|
\usecolortheme{metropolis}
|
||||||
|
\usefonttheme{metropolis}
|
||||||
|
\AtEndPreamble{%
|
||||||
|
\@ifpackageloaded{pgfplots}{%
|
||||||
|
\RequirePackage{pgfplotsthemetol}
|
||||||
|
}{}
|
||||||
|
}
|
||||||
|
\newcommand{\metroset}[1]{\pgfkeys{/metropolis/.cd,#1}}
|
||||||
|
\def\metropolis@plaintitleformat#1{#1}
|
||||||
|
\newcommand{\plain}[2][]{%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
The syntax `\plain' may be deprecated in a future version of Metropolis.
|
||||||
|
Please use a frame with [standout] instead.
|
||||||
|
}
|
||||||
|
\begin{frame}[standout]{#1}
|
||||||
|
\metropolis@plaintitleformat{#2}
|
||||||
|
\end{frame}
|
||||||
|
}
|
||||||
|
\newcommand{\mreducelistspacing}{\vspace{-\topsep}}
|
||||||
|
\metropolis@setdefaults
|
||||||
|
\ProcessPgfOptions{/metropolis}
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamerthememetropolis.sty'.
|
||||||
@@ -0,0 +1,123 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `pgfplotsthemetol.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% pgfplotsthemetol.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{pgfplotsthemetol}
|
||||||
|
[2017/01/23 PGFplots colors based on Paul Tol's SRON technical note]
|
||||||
|
\definecolor{TolDarkPurple}{HTML}{332288}
|
||||||
|
\definecolor{TolDarkBlue}{HTML}{6699CC}
|
||||||
|
\definecolor{TolLightBlue}{HTML}{88CCEE}
|
||||||
|
\definecolor{TolLightGreen}{HTML}{44AA99}
|
||||||
|
\definecolor{TolDarkGreen}{HTML}{117733}
|
||||||
|
\definecolor{TolDarkBrown}{HTML}{999933}
|
||||||
|
\definecolor{TolLightBrown}{HTML}{DDCC77}
|
||||||
|
\definecolor{TolDarkRed}{HTML}{661100}
|
||||||
|
\definecolor{TolLightRed}{HTML}{CC6677}
|
||||||
|
\definecolor{TolLightPink}{HTML}{AA4466}
|
||||||
|
\definecolor{TolDarkPink}{HTML}{882255}
|
||||||
|
\definecolor{TolLightPurple}{HTML}{AA4499}
|
||||||
|
\pgfplotscreateplotcyclelist{mbarplot cycle}{%
|
||||||
|
{draw=TolDarkBlue, fill=TolDarkBlue!70},
|
||||||
|
{draw=TolLightBrown, fill=TolLightBrown!70},
|
||||||
|
{draw=TolLightGreen, fill=TolLightGreen!70},
|
||||||
|
{draw=TolDarkPink, fill=TolDarkPink!70},
|
||||||
|
{draw=TolDarkPurple, fill=TolDarkPurple!70},
|
||||||
|
{draw=TolDarkRed, fill=TolDarkRed!70},
|
||||||
|
{draw=TolDarkBrown, fill=TolDarkBrown!70},
|
||||||
|
{draw=TolLightRed, fill=TolLightRed!70},
|
||||||
|
{draw=TolLightPink, fill=TolLightPink!70},
|
||||||
|
{draw=TolLightPurple, fill=TolLightPurple!70},
|
||||||
|
{draw=TolLightBlue, fill=TolLightBlue!70},
|
||||||
|
{draw=TolDarkGreen, fill=TolDarkGreen!70},
|
||||||
|
}
|
||||||
|
\pgfplotscreateplotcyclelist{mlineplot cycle}{%
|
||||||
|
{TolDarkBlue, mark=*, mark size=1.5pt},
|
||||||
|
{TolLightBrown, mark=square*, mark size=1.3pt},
|
||||||
|
{TolLightGreen, mark=triangle*, mark size=1.5pt},
|
||||||
|
{TolDarkBrown, mark=diamond*, mark size=1.5pt},
|
||||||
|
}
|
||||||
|
\pgfplotsset{
|
||||||
|
compat=1.9,
|
||||||
|
mlineplot/.style={
|
||||||
|
mbaseplot,
|
||||||
|
xmajorgrids=true,
|
||||||
|
ymajorgrids=true,
|
||||||
|
major grid style={dotted},
|
||||||
|
axis x line=bottom,
|
||||||
|
axis y line=left,
|
||||||
|
legend style={
|
||||||
|
cells={anchor=west},
|
||||||
|
draw=none
|
||||||
|
},
|
||||||
|
cycle list name=mlineplot cycle,
|
||||||
|
},
|
||||||
|
mbarplot base/.style={
|
||||||
|
mbaseplot,
|
||||||
|
bar width=6pt,
|
||||||
|
axis y line*=none,
|
||||||
|
},
|
||||||
|
mbarplot/.style={
|
||||||
|
mbarplot base,
|
||||||
|
ybar,
|
||||||
|
xmajorgrids=false,
|
||||||
|
ymajorgrids=true,
|
||||||
|
area legend,
|
||||||
|
legend image code/.code={%
|
||||||
|
\draw[#1] (0cm,-0.1cm) rectangle (0.15cm,0.1cm);
|
||||||
|
},
|
||||||
|
cycle list name=mbarplot cycle,
|
||||||
|
},
|
||||||
|
horizontal mbarplot/.style={
|
||||||
|
mbarplot base,
|
||||||
|
xmajorgrids=true,
|
||||||
|
ymajorgrids=false,
|
||||||
|
xbar stacked,
|
||||||
|
area legend,
|
||||||
|
legend image code/.code={%
|
||||||
|
\draw[#1] (0cm,-0.1cm) rectangle (0.15cm,0.1cm);
|
||||||
|
},
|
||||||
|
cycle list name=mbarplot cycle,
|
||||||
|
},
|
||||||
|
mbaseplot/.style={
|
||||||
|
legend style={
|
||||||
|
draw=none,
|
||||||
|
fill=none,
|
||||||
|
cells={anchor=west},
|
||||||
|
},
|
||||||
|
x tick label style={
|
||||||
|
font=\footnotesize
|
||||||
|
},
|
||||||
|
y tick label style={
|
||||||
|
font=\footnotesize
|
||||||
|
},
|
||||||
|
legend style={
|
||||||
|
font=\footnotesize
|
||||||
|
},
|
||||||
|
major grid style={
|
||||||
|
dotted,
|
||||||
|
},
|
||||||
|
axis x line*=bottom,
|
||||||
|
},
|
||||||
|
disable thousands separator/.style={
|
||||||
|
/pgf/number format/.cd,
|
||||||
|
1000 sep={}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `pgfplotsthemetol.sty'.
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamercolorthememetropolis-highcontrast.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamercolorthememetropolis-highcontrast.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamercolorthememetropolis-highcontrast}[2017/01/23 Metropolis color theme]
|
||||||
|
\usecolortheme{metropolis}
|
||||||
|
|
||||||
|
\definecolor{mAlert}{HTML}{AD003D}
|
||||||
|
\definecolor{mExample}{HTML}{005580}
|
||||||
|
|
||||||
|
\setbeamercolor{normal text}{%
|
||||||
|
fg=black,
|
||||||
|
bg=white
|
||||||
|
}
|
||||||
|
\setbeamercolor{alerted text}{%
|
||||||
|
fg=mAlert,
|
||||||
|
}
|
||||||
|
\setbeamercolor{example text}{%
|
||||||
|
fg=mExample,
|
||||||
|
}
|
||||||
|
\mode<all>
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamercolorthememetropolis-highcontrast.sty'.
|
||||||
@@ -0,0 +1,138 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamercolorthememetropolis.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamercolorthememetropolis.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamercolorthememetropolis}[2017/01/23 Metropolis color theme]
|
||||||
|
\RequirePackage{pgfopts}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/color/block/.cd,
|
||||||
|
.is choice,
|
||||||
|
transparent/.code=\metropolis@block@transparent,
|
||||||
|
fill/.code=\metropolis@block@fill,
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/color/background/.cd,
|
||||||
|
.is choice,
|
||||||
|
dark/.code=\metropolis@colors@dark,
|
||||||
|
light/.code=\metropolis@colors@light,
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@color@setdefaults}{
|
||||||
|
\pgfkeys{/metropolis/color/.cd,
|
||||||
|
background=light,
|
||||||
|
block=transparent,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\definecolor{mDarkBrown}{HTML}{604c38}
|
||||||
|
\definecolor{mDarkTeal}{HTML}{23373b}
|
||||||
|
\definecolor{mLightBrown}{HTML}{EB811B}
|
||||||
|
\definecolor{mLightGreen}{HTML}{14B03D}
|
||||||
|
\newcommand{\metropolis@colors@dark}{
|
||||||
|
\setbeamercolor{normal text}{%
|
||||||
|
fg=black!2,
|
||||||
|
bg=mDarkTeal
|
||||||
|
}
|
||||||
|
\usebeamercolor[fg]{normal text}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@colors@light}{
|
||||||
|
\setbeamercolor{normal text}{%
|
||||||
|
fg=mDarkTeal,
|
||||||
|
bg=black!2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamercolor{alerted text}{%
|
||||||
|
fg=mLightBrown
|
||||||
|
}
|
||||||
|
\setbeamercolor{example text}{%
|
||||||
|
fg=mLightGreen
|
||||||
|
}
|
||||||
|
\setbeamercolor{titlelike}{use=normal text, parent=normal text}
|
||||||
|
\setbeamercolor{author}{use=normal text, parent=normal text}
|
||||||
|
\setbeamercolor{date}{use=normal text, parent=normal text}
|
||||||
|
\setbeamercolor{institute}{use=normal text, parent=normal text}
|
||||||
|
\setbeamercolor{structure}{use=normal text, fg=normal text.fg}
|
||||||
|
\setbeamercolor{palette primary}{%
|
||||||
|
use=normal text,
|
||||||
|
fg=normal text.bg,
|
||||||
|
bg=normal text.fg
|
||||||
|
}
|
||||||
|
\setbeamercolor{frametitle}{%
|
||||||
|
use=palette primary,
|
||||||
|
parent=palette primary
|
||||||
|
}
|
||||||
|
\setbeamercolor{progress bar}{%
|
||||||
|
use=alerted text,
|
||||||
|
fg=alerted text.fg,
|
||||||
|
bg=alerted text.fg!50!black!30
|
||||||
|
}
|
||||||
|
\setbeamercolor{title separator}{
|
||||||
|
use=progress bar,
|
||||||
|
parent=progress bar
|
||||||
|
}
|
||||||
|
\setbeamercolor{progress bar in head/foot}{%
|
||||||
|
use=progress bar,
|
||||||
|
parent=progress bar
|
||||||
|
}
|
||||||
|
\setbeamercolor{progress bar in section page}{
|
||||||
|
use=progress bar,
|
||||||
|
parent=progress bar
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@block@transparent}{
|
||||||
|
\setbeamercolor{block title}{%
|
||||||
|
use=normal text,
|
||||||
|
fg=normal text.fg,
|
||||||
|
bg=
|
||||||
|
}
|
||||||
|
\setbeamercolor{block body}{
|
||||||
|
bg=
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@block@fill}{
|
||||||
|
\setbeamercolor{block title}{%
|
||||||
|
use=normal text,
|
||||||
|
fg=normal text.fg,
|
||||||
|
bg=normal text.bg!80!fg
|
||||||
|
}
|
||||||
|
\setbeamercolor{block body}{
|
||||||
|
use={block title, normal text},
|
||||||
|
bg=block title.bg!50!normal text.bg
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamercolor{block title alerted}{%
|
||||||
|
use={block title, alerted text},
|
||||||
|
bg=block title.bg,
|
||||||
|
fg=alerted text.fg
|
||||||
|
}
|
||||||
|
\setbeamercolor{block title example}{%
|
||||||
|
use={block title, example text},
|
||||||
|
bg=block title.bg,
|
||||||
|
fg=example text.fg
|
||||||
|
}
|
||||||
|
\setbeamercolor{block body alerted}{use=block body, parent=block body}
|
||||||
|
\setbeamercolor{block body example}{use=block body, parent=block body}
|
||||||
|
\setbeamercolor{footnote}{fg=normal text.fg!90}
|
||||||
|
\setbeamercolor{footnote mark}{fg=.}
|
||||||
|
\setbeamercolor{bibliography entry author}{fg=, bg=}
|
||||||
|
\setbeamercolor{bibliography entry title}{fg=, bg=}
|
||||||
|
\setbeamercolor{bibliography entry location}{fg=, bg=}
|
||||||
|
\setbeamercolor{bibliography entry note}{fg=, bg=}
|
||||||
|
\metropolis@color@setdefaults
|
||||||
|
\ProcessPgfPackageOptions{/metropolis/color}
|
||||||
|
\mode<all>
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamercolorthememetropolis.sty'.
|
||||||
@@ -0,0 +1,325 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamerfontthememetropolis.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamerfontthememetropolis.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamerfontthememetropolis}[2017/01/23 Metropolis font theme]
|
||||||
|
\RequirePackage{etoolbox}
|
||||||
|
\RequirePackage{ifxetex}
|
||||||
|
\RequirePackage{ifluatex}
|
||||||
|
\RequirePackage{pgfopts}
|
||||||
|
\ifboolexpr{bool {xetex} or bool {luatex}}{
|
||||||
|
\@ifpackageloaded{fontspec}{
|
||||||
|
\PassOptionsToPackage{no-math}{fontspec}
|
||||||
|
}{
|
||||||
|
\RequirePackage[no-math]{fontspec}
|
||||||
|
}
|
||||||
|
\newcounter{fontsnotfound}
|
||||||
|
\newcommand{\checkfont}[1]{%
|
||||||
|
\suppressfontnotfounderror=1%
|
||||||
|
\font\x = "#1" at 10pt
|
||||||
|
\selectfont
|
||||||
|
\ifx\x\nullfont%
|
||||||
|
\stepcounter{fontsnotfound}%
|
||||||
|
\fi%
|
||||||
|
\suppressfontnotfounderror=0%
|
||||||
|
}
|
||||||
|
|
||||||
|
\newcommand{\iffontsavailable}[3]{%
|
||||||
|
\setcounter{fontsnotfound}{0}%
|
||||||
|
\expandafter\forcsvlist\expandafter%
|
||||||
|
\checkfont\expandafter{#1}%
|
||||||
|
\ifnum\value{fontsnotfound}=0%
|
||||||
|
#2%
|
||||||
|
\else%
|
||||||
|
#3%
|
||||||
|
\fi%
|
||||||
|
}
|
||||||
|
\iffontsavailable{Fira Sans Light,%
|
||||||
|
Fira Sans Light Italic,%
|
||||||
|
Fira Sans,%
|
||||||
|
Fira Sans Italic}%
|
||||||
|
{%
|
||||||
|
\setsansfont[ItalicFont={Fira Sans Light Italic},%
|
||||||
|
BoldFont={Fira Sans},%
|
||||||
|
BoldItalicFont={Fira Sans Italic}]%
|
||||||
|
{Fira Sans Light}%
|
||||||
|
}{%
|
||||||
|
\iffontsavailable{Fira Sans Light OT,%
|
||||||
|
Fira Sans Light Italic OT,%
|
||||||
|
Fira Sans OT,%
|
||||||
|
Fira Sans Italic OT}%
|
||||||
|
{%
|
||||||
|
\setsansfont[ItalicFont={Fira Sans Light Italic OT},%
|
||||||
|
BoldFont={Fira Sans OT},%
|
||||||
|
BoldItalicFont={Fira Sans Italic OT}]%
|
||||||
|
{Fira Sans Light OT}%
|
||||||
|
}{%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Could not find Fira Sans fonts%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\iffontsavailable{Fira Mono, Fira Mono Bold}{%
|
||||||
|
\setmonofont[BoldFont={Fira Mono Medium}]{Fira Mono}%
|
||||||
|
}{%
|
||||||
|
\iffontsavailable{Fira Mono OT, Fira Mono Bold OT}{%
|
||||||
|
\setmonofont[BoldFont={Fira Mono Medium OT}]{Fira Mono OT}%
|
||||||
|
}{%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Could not find Fira Mono fonts%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\AtBeginEnvironment{tabular}{%
|
||||||
|
\addfontfeature{Numbers={Monospaced}}%
|
||||||
|
}
|
||||||
|
}{%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
You need to compile with XeLaTeX or LuaLaTeX to use the Fira fonts%
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamerfont{title}{size=\Large,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont{author}{size=\small}
|
||||||
|
\setbeamerfont{date}{size=\small}
|
||||||
|
\setbeamerfont{section title}{size=\Large,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont{block title}{size=\normalsize,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont{block title alerted}{size=\normalsize,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont*{subtitle}{size=\large}
|
||||||
|
\setbeamerfont{frametitle}{size=\large,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont{caption}{size=\small}
|
||||||
|
\setbeamerfont{caption name}{series=\bfseries}
|
||||||
|
\setbeamerfont{description item}{series=\bfseries}
|
||||||
|
\setbeamerfont{page number in head/foot}{size=\scriptsize}
|
||||||
|
\setbeamerfont{bibliography entry author}{size=\normalsize,%
|
||||||
|
series=\normalfont}
|
||||||
|
\setbeamerfont{bibliography entry title}{size=\normalsize,%
|
||||||
|
series=\bfseries}
|
||||||
|
\setbeamerfont{bibliography entry location}{size=\normalsize,%
|
||||||
|
series=\normalfont}
|
||||||
|
\setbeamerfont{bibliography entry note}{size=\small,%
|
||||||
|
series=\normalfont}
|
||||||
|
\setbeamerfont{standout}{size=\Large,%
|
||||||
|
series=\bfseries}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/font/titleformat title/.cd,
|
||||||
|
.is choice,
|
||||||
|
regular/.code={%
|
||||||
|
\let\metropolis@titleformat\@empty%
|
||||||
|
\setbeamerfont{title}{shape=\normalfont}%
|
||||||
|
},
|
||||||
|
smallcaps/.code={%
|
||||||
|
\let\metropolis@titleformat\@empty%
|
||||||
|
\setbeamerfont{title}{shape=\scshape}%
|
||||||
|
},
|
||||||
|
allsmallcaps/.code={%
|
||||||
|
\let\metropolis@titleformat\lowercase%
|
||||||
|
\setbeamerfont{title}{shape=\scshape}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat title=allsmallcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
allcaps/.code={%
|
||||||
|
\let\metropolis@titleformat\uppercase%
|
||||||
|
\setbeamerfont{title}{shape=\normalfont}
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat title=allcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/font/titleformat subtitle/.cd,
|
||||||
|
.is choice,
|
||||||
|
regular/.code={%
|
||||||
|
\let\metropolis@subtitleformat\@empty%
|
||||||
|
\setbeamerfont{subtitle}{shape=\normalfont}%
|
||||||
|
},
|
||||||
|
smallcaps/.code={%
|
||||||
|
\let\metropolis@subtitleformat\@empty%
|
||||||
|
\setbeamerfont{subtitle}{shape=\scshape}%
|
||||||
|
},
|
||||||
|
allsmallcaps/.code={%
|
||||||
|
\let\metropolis@subtitleformat\lowercase%
|
||||||
|
\setbeamerfont{subtitle}{shape=\scshape}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat subtitle=allsmallcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
allcaps/.code={%
|
||||||
|
\let\metropolis@subtitleformat\uppercase%
|
||||||
|
\setbeamerfont{subtitle}{shape=\normalfont}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat subtitle=allcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/font/titleformat section/.cd,
|
||||||
|
.is choice,
|
||||||
|
regular/.code={%
|
||||||
|
\let\metropolis@sectiontitleformat\@empty%
|
||||||
|
\setbeamerfont{section title}{shape=\normalfont}%
|
||||||
|
},
|
||||||
|
smallcaps/.code={%
|
||||||
|
\let\metropolis@sectiontitleformat\@empty%
|
||||||
|
\setbeamerfont{section title}{shape=\scshape}%
|
||||||
|
},
|
||||||
|
allsmallcaps/.code={%
|
||||||
|
\let\metropolis@sectiontitleformat\MakeLowercase%
|
||||||
|
\setbeamerfont{section title}{shape=\scshape}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat section=allsmallcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
allcaps/.code={%
|
||||||
|
\let\metropolis@sectiontitleformat\MakeUppercase%
|
||||||
|
\setbeamerfont{section title}{shape=\normalfont}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat section=allcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/font/titleformat frame/.cd,
|
||||||
|
.is choice,
|
||||||
|
regular/.code={%
|
||||||
|
\let\metropolis@frametitleformat\@empty%
|
||||||
|
\setbeamerfont{frametitle}{shape=\normalfont}%
|
||||||
|
},
|
||||||
|
smallcaps/.code={%
|
||||||
|
\let\metropolis@frametitleformat\@empty%
|
||||||
|
\setbeamerfont{frametitle}{shape=\scshape}%
|
||||||
|
},
|
||||||
|
allsmallcaps/.code={%
|
||||||
|
\let\metropolis@frametitleformat\MakeLowercase%
|
||||||
|
\setbeamerfont{frametitle}{shape=\scshape}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat frame=allsmallcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
allcaps/.code={%
|
||||||
|
\let\metropolis@frametitleformat\MakeUppercase%
|
||||||
|
\setbeamerfont{frametitle}{shape=\normalfont}
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat frame=allcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/font/.cd,
|
||||||
|
titleformattitle/.code=\pgfkeysalso{titleformat title=#1},
|
||||||
|
titleformatsubtitle/.code=\pgfkeysalso{titleformat subtitle=#1},
|
||||||
|
titleformatsection/.code=\pgfkeysalso{titleformat section=#1},
|
||||||
|
titleformatframe/.code=\pgfkeysalso{titleformat frame=#1},
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@font@setdefaults}{
|
||||||
|
\pgfkeys{/metropolis/font/.cd,
|
||||||
|
titleformat title=regular,
|
||||||
|
titleformat subtitle=regular,
|
||||||
|
titleformat section=regular,
|
||||||
|
titleformat frame=regular,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\def\metropolis@titleformat#1{#1}
|
||||||
|
\def\metropolis@subtitleformat#1{#1}
|
||||||
|
\def\metropolis@sectiontitleformat#1{#1}
|
||||||
|
\def\metropolis@frametitleformat#1{#1}
|
||||||
|
\patchcmd{\beamer@title}%
|
||||||
|
{\def\inserttitle{#2}}%
|
||||||
|
{\def\inserttitle{\metropolis@titleformat{#2}}}%
|
||||||
|
{}%
|
||||||
|
{\PackageError{beamerfontthememetropolis}{Patching title failed}\@ehc}
|
||||||
|
\patchcmd{\beamer@subtitle}%
|
||||||
|
{\def\insertsubtitle{#2}}%
|
||||||
|
{\def\insertsubtitle{\metropolis@subtitleformat{#2}}}%
|
||||||
|
{}%
|
||||||
|
{\PackageError{beamerfontthememetropolis}{Patching subtitle failed}\@ehc}
|
||||||
|
\patchcmd{\sectionentry}
|
||||||
|
{\def\insertsectionhead{#2}}
|
||||||
|
{\def\insertsectionhead{\metropolis@sectiontitleformat{#2}}}
|
||||||
|
{}
|
||||||
|
{\PackageError{beamerfontthememetropolis}{Patching section title failed}\@ehc}
|
||||||
|
\@tempswafalse
|
||||||
|
\patchcmd{\beamer@section}
|
||||||
|
{\edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\unexpanded{#1}}}}
|
||||||
|
{\edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\noexpand\metropolis@sectiontitleformat{\unexpanded{#1}}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\patchcmd{\beamer@section}
|
||||||
|
{\def\insertsectionhead{\hyperlink{Navigation\the\c@page}{#1}}}
|
||||||
|
{\def\insertsectionhead{\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\metropolis@sectiontitleformat{#1}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\patchcmd{\beamer@section}
|
||||||
|
{\protected@edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{#1}}}
|
||||||
|
{\protected@edef\insertsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\noexpand\metropolis@sectiontitleformat{#1}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\if@tempswa\else
|
||||||
|
\PackageError{beamerfontthememetropolis}{Patching section title failed}\@ehc
|
||||||
|
\fi
|
||||||
|
\@tempswafalse
|
||||||
|
\patchcmd{\beamer@subsection}
|
||||||
|
{\edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{\unexpanded{#1}}}}
|
||||||
|
{\edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\noexpand\metropolis@sectiontitleformat{\unexpanded{#1}}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\patchcmd{\beamer@subsection}
|
||||||
|
{\def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}{#1}}}
|
||||||
|
{\def\insertsubsectionhead{\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\metropolis@sectiontitleformat{#1}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\patchcmd{\beamer@subsection}
|
||||||
|
{\protected@edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{#1}}}
|
||||||
|
{\protected@edef\insertsubsectionhead{\noexpand\hyperlink{Navigation\the\c@page}{%
|
||||||
|
\noexpand\metropolis@sectiontitleformat{#1}}}}
|
||||||
|
{\@tempswatrue}
|
||||||
|
{}
|
||||||
|
\if@tempswa\else
|
||||||
|
\PackageError{beamerfontthememetropolis}{Patching section title failed}\@ehc
|
||||||
|
\fi
|
||||||
|
\patchcmd{\beamer@@frametitle}
|
||||||
|
{{%
|
||||||
|
\gdef\insertframetitle{{#2\ifnum\beamer@autobreakcount>0\relax{}\space%
|
||||||
|
\usebeamertemplate*{frametitle continuation}\fi}}%
|
||||||
|
\gdef\beamer@frametitle{#2}%
|
||||||
|
\gdef\beamer@shortframetitle{#1}%
|
||||||
|
}}
|
||||||
|
{{%
|
||||||
|
\gdef\insertframetitle{{\metropolis@frametitleformat{#2}\ifnum%
|
||||||
|
\beamer@autobreakcount>0\relax{}\space%
|
||||||
|
\usebeamertemplate*{frametitle continuation}\fi}}%
|
||||||
|
\gdef\beamer@frametitle{#2}%
|
||||||
|
\gdef\beamer@shortframetitle{#1}%
|
||||||
|
}}
|
||||||
|
{}
|
||||||
|
{\PackageError{beamerfontthememetropolis}{Patching frame title failed}\@ehc}
|
||||||
|
\metropolis@font@setdefaults
|
||||||
|
\ProcessPgfPackageOptions{/metropolis/font}
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamerfontthememetropolis.sty'.
|
||||||
@@ -0,0 +1,297 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamerinnerthememetropolis.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamerinnerthememetropolis.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamerinnerthememetropolis}[2017/01/23 Metropolis inner theme]
|
||||||
|
\RequirePackage{etoolbox}
|
||||||
|
\RequirePackage{keyval}
|
||||||
|
\RequirePackage{calc}
|
||||||
|
\RequirePackage{pgfopts}
|
||||||
|
\RequirePackage{tikz}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/inner/sectionpage/.cd,
|
||||||
|
.is choice,
|
||||||
|
none/.code=\metropolis@disablesectionpage,
|
||||||
|
simple/.code={\metropolis@enablesectionpage
|
||||||
|
\setbeamertemplate{section page}[simple]},
|
||||||
|
progressbar/.code={\metropolis@enablesectionpage
|
||||||
|
\setbeamertemplate{section page}[progressbar]},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/inner/subsectionpage/.cd,
|
||||||
|
.is choice,
|
||||||
|
none/.code=\metropolis@disablesubsectionpage,
|
||||||
|
simple/.code={\metropolis@enablesubsectionpage
|
||||||
|
\setbeamertemplate{section page}[simple]},
|
||||||
|
progressbar/.code={\metropolis@enablesubsectionpage
|
||||||
|
\setbeamertemplate{section page}[progressbar]},
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@inner@setdefaults}{
|
||||||
|
\pgfkeys{/metropolis/inner/.cd,
|
||||||
|
sectionpage=progressbar,
|
||||||
|
subsectionpage=none
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{title page}{
|
||||||
|
\begin{minipage}[b][\paperheight]{\textwidth}
|
||||||
|
\ifx\inserttitlegraphic\@empty\else\usebeamertemplate*{title graphic}\fi
|
||||||
|
\vfill%
|
||||||
|
\ifx\inserttitle\@empty\else\usebeamertemplate*{title}\fi
|
||||||
|
\ifx\insertsubtitle\@empty\else\usebeamertemplate*{subtitle}\fi
|
||||||
|
\usebeamertemplate*{title separator}
|
||||||
|
\ifx\beamer@shortauthor\@empty\else\usebeamertemplate*{author}\fi
|
||||||
|
\ifx\insertdate\@empty\else\usebeamertemplate*{date}\fi
|
||||||
|
\ifx\insertinstitute\@empty\else\usebeamertemplate*{institute}\fi
|
||||||
|
\vfill
|
||||||
|
\vspace*{1mm}
|
||||||
|
\end{minipage}
|
||||||
|
}
|
||||||
|
\def\maketitle{%
|
||||||
|
\ifbeamer@inframe
|
||||||
|
\titlepage
|
||||||
|
\else
|
||||||
|
\frame[plain,noframenumbering]{\titlepage}
|
||||||
|
\fi
|
||||||
|
}
|
||||||
|
\def\titlepage{%
|
||||||
|
\usebeamertemplate{title page}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{title graphic}{
|
||||||
|
\vbox to 0pt {
|
||||||
|
\vspace*{2em}
|
||||||
|
\inserttitlegraphic%
|
||||||
|
}%
|
||||||
|
\nointerlineskip%
|
||||||
|
}
|
||||||
|
\setbeamertemplate{title}{
|
||||||
|
\raggedright%
|
||||||
|
\linespread{1.0}%
|
||||||
|
\inserttitle%
|
||||||
|
\par%
|
||||||
|
\vspace*{0.5em}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{subtitle}{
|
||||||
|
\raggedright%
|
||||||
|
\insertsubtitle%
|
||||||
|
\par%
|
||||||
|
\vspace*{0.5em}
|
||||||
|
}
|
||||||
|
\newlength{\metropolis@titleseparator@linewidth}
|
||||||
|
\setlength{\metropolis@titleseparator@linewidth}{0.4pt}
|
||||||
|
\setbeamertemplate{title separator}{
|
||||||
|
\tikzexternaldisable%
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\fill[fg] (0,0) rectangle (\textwidth, \metropolis@titleseparator@linewidth);
|
||||||
|
\end{tikzpicture}%
|
||||||
|
\tikzexternalenable%
|
||||||
|
\par%
|
||||||
|
}
|
||||||
|
\setbeamertemplate{author}{
|
||||||
|
\vspace*{2em}
|
||||||
|
\insertauthor%
|
||||||
|
\par%
|
||||||
|
\vspace*{0.25em}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{date}{
|
||||||
|
\insertdate%
|
||||||
|
\par%
|
||||||
|
}
|
||||||
|
\setbeamertemplate{institute}{
|
||||||
|
\vspace*{3mm}
|
||||||
|
\insertinstitute%
|
||||||
|
\par%
|
||||||
|
}
|
||||||
|
\defbeamertemplate{section page}{simple}{
|
||||||
|
\begin{center}
|
||||||
|
\usebeamercolor[fg]{section title}
|
||||||
|
\usebeamerfont{section title}
|
||||||
|
\insertsectionhead\par
|
||||||
|
\ifx\insertsubsectionhead\@empty\else
|
||||||
|
\usebeamercolor[fg]{subsection title}
|
||||||
|
\usebeamerfont{subsection title}
|
||||||
|
\insertsubsectionhead
|
||||||
|
\fi
|
||||||
|
\end{center}
|
||||||
|
}
|
||||||
|
\defbeamertemplate{section page}{progressbar}{
|
||||||
|
\centering
|
||||||
|
\begin{minipage}{22em}
|
||||||
|
\raggedright
|
||||||
|
\usebeamercolor[fg]{section title}
|
||||||
|
\usebeamerfont{section title}
|
||||||
|
\insertsectionhead\\[-1ex]
|
||||||
|
\usebeamertemplate*{progress bar in section page}
|
||||||
|
\par
|
||||||
|
\ifx\insertsubsectionhead\@empty\else%
|
||||||
|
\usebeamercolor[fg]{subsection title}%
|
||||||
|
\usebeamerfont{subsection title}%
|
||||||
|
\insertsubsectionhead
|
||||||
|
\fi
|
||||||
|
\end{minipage}
|
||||||
|
\par
|
||||||
|
\vspace{\baselineskip}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@disablesectionpage}{
|
||||||
|
\AtBeginSection{
|
||||||
|
% intentionally empty
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@enablesectionpage}{
|
||||||
|
\AtBeginSection{
|
||||||
|
\ifbeamer@inframe
|
||||||
|
\sectionpage
|
||||||
|
\else
|
||||||
|
\frame[plain,c,noframenumbering]{\sectionpage}
|
||||||
|
\fi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{subsection page}{%
|
||||||
|
\usebeamertemplate*{section page}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@disablesubsectionpage}{
|
||||||
|
\AtBeginSubsection{
|
||||||
|
% intentionally empty
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@enablesubsectionpage}{
|
||||||
|
\AtBeginSubsection{
|
||||||
|
\ifbeamer@inframe
|
||||||
|
\subsectionpage
|
||||||
|
\else
|
||||||
|
\frame[plain,c,noframenumbering]{\subsectionpage}
|
||||||
|
\fi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\newlength{\metropolis@progressonsectionpage}
|
||||||
|
\newlength{\metropolis@progressonsectionpage@linewidth}
|
||||||
|
\setlength{\metropolis@progressonsectionpage@linewidth}{0.4pt}
|
||||||
|
\setbeamertemplate{progress bar in section page}{
|
||||||
|
\setlength{\metropolis@progressonsectionpage}{%
|
||||||
|
\textwidth * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}%
|
||||||
|
}%
|
||||||
|
\tikzexternaldisable%
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\fill[bg] (0,0) rectangle (\textwidth, \metropolis@progressonsectionpage@linewidth);
|
||||||
|
\fill[fg] (0,0) rectangle (\metropolis@progressonsectionpage, \metropolis@progressonsectionpage@linewidth);
|
||||||
|
\end{tikzpicture}%
|
||||||
|
\tikzexternalenable%
|
||||||
|
}
|
||||||
|
\def\inserttotalframenumber{100}
|
||||||
|
\newlength{\metropolis@blocksep}
|
||||||
|
\newlength{\metropolis@blockadjust}
|
||||||
|
\setlength{\metropolis@blocksep}{0.75ex}
|
||||||
|
\setlength{\metropolis@blockadjust}{0.25ex}
|
||||||
|
\providecommand{\metropolis@strut}{%
|
||||||
|
\vphantom{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz()}%
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@block}[1]{
|
||||||
|
\par\vskip\medskipamount%
|
||||||
|
\setlength{\parskip}{0pt}
|
||||||
|
\ifbeamercolorempty[bg]{block title#1}{%
|
||||||
|
\begin{beamercolorbox}[rightskip=0pt plus 4em]{block title#1}}{%
|
||||||
|
\ifbeamercolorempty[bg]{block title}{%
|
||||||
|
\begin{beamercolorbox}[rightskip=0pt plus 4em]{block title#1}%
|
||||||
|
}%
|
||||||
|
{%
|
||||||
|
\begin{beamercolorbox}[
|
||||||
|
sep=\dimexpr\metropolis@blocksep-\metropolis@blockadjust\relax,
|
||||||
|
leftskip=\metropolis@blockadjust,
|
||||||
|
rightskip=\dimexpr\metropolis@blockadjust plus 4em\relax
|
||||||
|
]{block title#1}%
|
||||||
|
}}%
|
||||||
|
\usebeamerfont*{block title#1}%
|
||||||
|
\metropolis@strut%
|
||||||
|
\insertblocktitle%
|
||||||
|
\metropolis@strut%
|
||||||
|
\end{beamercolorbox}%
|
||||||
|
\nointerlineskip%
|
||||||
|
\ifbeamercolorempty[bg]{block body#1}{%
|
||||||
|
\begin{beamercolorbox}[vmode]{block body#1}}{
|
||||||
|
\ifbeamercolorempty[bg]{block body}{%
|
||||||
|
\begin{beamercolorbox}[vmode]{block body#1}%
|
||||||
|
}{%
|
||||||
|
\begin{beamercolorbox}[sep=\metropolis@blocksep, vmode]{block body#1}%
|
||||||
|
\vspace{-\metropolis@parskip}
|
||||||
|
}}%
|
||||||
|
\usebeamerfont{block body#1}%
|
||||||
|
\setlength{\parskip}{\metropolis@parskip}%
|
||||||
|
}
|
||||||
|
\setbeamertemplate{block begin}{\metropolis@block{}}
|
||||||
|
\setbeamertemplate{block alerted begin}{\metropolis@block{ alerted}}
|
||||||
|
\setbeamertemplate{block example begin}{\metropolis@block{ example}}
|
||||||
|
\setbeamertemplate{block end}{\end{beamercolorbox}\vspace*{0.2ex}}
|
||||||
|
\setbeamertemplate{block alerted end}{\end{beamercolorbox}\vspace*{0.2ex}}
|
||||||
|
\setbeamertemplate{block example end}{\end{beamercolorbox}\vspace*{0.2ex}}
|
||||||
|
\setbeamertemplate{itemize items}{\textbullet}
|
||||||
|
\setbeamertemplate{caption label separator}{: }
|
||||||
|
\setbeamertemplate{caption}[numbered]
|
||||||
|
\setbeamertemplate{footnote}{%
|
||||||
|
\parindent 0em\noindent%
|
||||||
|
\raggedright
|
||||||
|
\usebeamercolor{footnote}\hbox to 0.8em{\hfil\insertfootnotemark}\insertfootnotetext\par%
|
||||||
|
}
|
||||||
|
\newlength{\metropolis@parskip}
|
||||||
|
\setlength{\metropolis@parskip}{0.5em}
|
||||||
|
\setlength{\parskip}{\metropolis@parskip}
|
||||||
|
\linespread{1.15}
|
||||||
|
\define@key{beamerframe}{c}[true]{% centered
|
||||||
|
\beamer@frametopskip=0pt plus 1fill\relax%
|
||||||
|
\beamer@framebottomskip=0pt plus 1fill\relax%
|
||||||
|
\beamer@frametopskipautobreak=0pt plus .4\paperheight\relax%
|
||||||
|
\beamer@framebottomskipautobreak=0pt plus .6\paperheight\relax%
|
||||||
|
\def\beamer@initfirstlineunskip{}%
|
||||||
|
}
|
||||||
|
\providebool{metropolis@standout}
|
||||||
|
\define@key{beamerframe}{standout}[true]{%
|
||||||
|
\booltrue{metropolis@standout}
|
||||||
|
\begingroup
|
||||||
|
\setkeys{beamerframe}{c}
|
||||||
|
\setkeys{beamerframe}{noframenumbering}
|
||||||
|
\ifbeamercolorempty[bg]{palette primary}{
|
||||||
|
\setbeamercolor{background canvas}{
|
||||||
|
use=palette primary,
|
||||||
|
bg=-palette primary.fg
|
||||||
|
}
|
||||||
|
}{
|
||||||
|
\setbeamercolor{background canvas}{
|
||||||
|
use=palette primary,
|
||||||
|
bg=palette primary.bg
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamercolor{local structure}{
|
||||||
|
fg=palette primary.fg
|
||||||
|
}
|
||||||
|
\usebeamercolor[fg]{palette primary}
|
||||||
|
}
|
||||||
|
\pretocmd{\beamer@reseteecodes}{%
|
||||||
|
\ifbool{metropolis@standout}{
|
||||||
|
\endgroup
|
||||||
|
\boolfalse{metropolis@standout}
|
||||||
|
}{}
|
||||||
|
}{}{}
|
||||||
|
\AtBeginEnvironment{beamer@frameslide}{
|
||||||
|
\ifbool{metropolis@standout}{
|
||||||
|
\centering
|
||||||
|
\usebeamerfont{standout}
|
||||||
|
}{}
|
||||||
|
}
|
||||||
|
\metropolis@inner@setdefaults
|
||||||
|
\ProcessPgfPackageOptions{/metropolis/inner}
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamerinnerthememetropolis.sty'.
|
||||||
@@ -0,0 +1,137 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamerouterthememetropolis.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamerouterthememetropolis.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamerouterthememetropolis}[2017/01/23 Metropolis outer theme]
|
||||||
|
\RequirePackage{etoolbox}
|
||||||
|
\RequirePackage{calc}
|
||||||
|
\RequirePackage{pgfopts}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/outer/numbering/.cd,
|
||||||
|
.is choice,
|
||||||
|
none/.code=\setbeamertemplate{frame numbering}[none],
|
||||||
|
counter/.code=\setbeamertemplate{frame numbering}[counter],
|
||||||
|
fraction/.code=\setbeamertemplate{frame numbering}[fraction],
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/outer/progressbar/.cd,
|
||||||
|
.is choice,
|
||||||
|
none/.code={%
|
||||||
|
\setbeamertemplate{headline}[plain]
|
||||||
|
\setbeamertemplate{frametitle}[plain]
|
||||||
|
\setbeamertemplate{footline}[plain]
|
||||||
|
},
|
||||||
|
head/.code={\pgfkeys{/metropolis/outer/progressbar=none}
|
||||||
|
\addtobeamertemplate{headline}{}{%
|
||||||
|
\usebeamertemplate*{progress bar in head/foot}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
frametitle/.code={\pgfkeys{/metropolis/outer/progressbar=none}
|
||||||
|
\addtobeamertemplate{frametitle}{}{%
|
||||||
|
\usebeamertemplate*{progress bar in head/foot}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
foot/.code={\pgfkeys{/metropolis/outer/progressbar=none}
|
||||||
|
\addtobeamertemplate{footline}{}{%
|
||||||
|
\usebeamertemplate*{progress bar in head/foot}%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@outer@setdefaults}{
|
||||||
|
\pgfkeys{/metropolis/outer/.cd,
|
||||||
|
numbering=counter,
|
||||||
|
progressbar=none,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\setbeamertemplate{navigation symbols}{}
|
||||||
|
\defbeamertemplate{frame footer}{none}{}
|
||||||
|
\defbeamertemplate{frame footer}{custom}[1]{ #1 }
|
||||||
|
\defbeamertemplate{frame numbering}{none}{}
|
||||||
|
\defbeamertemplate{frame numbering}{counter}{\insertframenumber}
|
||||||
|
\defbeamertemplate{frame numbering}{fraction}{
|
||||||
|
\insertframenumber/\inserttotalframenumber
|
||||||
|
}
|
||||||
|
\defbeamertemplate{headline}{plain}{}
|
||||||
|
\defbeamertemplate{footline}{plain}{%
|
||||||
|
\begin{beamercolorbox}[wd=\textwidth, sep=3ex]{footline}%
|
||||||
|
\usebeamerfont{page number in head/foot}%
|
||||||
|
\usebeamertemplate*{frame footer}
|
||||||
|
\hfill%
|
||||||
|
\usebeamertemplate*{frame numbering}
|
||||||
|
\end{beamercolorbox}%
|
||||||
|
}
|
||||||
|
\newlength{\metropolis@frametitle@padding}
|
||||||
|
\setlength{\metropolis@frametitle@padding}{2.2ex}
|
||||||
|
\newcommand{\metropolis@frametitlestrut@start}{
|
||||||
|
\rule{0pt}{\metropolis@frametitle@padding +%
|
||||||
|
\totalheightof{%
|
||||||
|
\ifcsdef{metropolis@frametitleformat}{\metropolis@frametitleformat X}{X}%
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@frametitlestrut@end}{
|
||||||
|
\rule[-\metropolis@frametitle@padding]{0pt}{\metropolis@frametitle@padding}
|
||||||
|
}
|
||||||
|
\defbeamertemplate{frametitle}{plain}{%
|
||||||
|
\nointerlineskip%
|
||||||
|
\begin{beamercolorbox}[%
|
||||||
|
wd=\paperwidth,%
|
||||||
|
sep=0pt,%
|
||||||
|
leftskip=\metropolis@frametitle@padding,%
|
||||||
|
rightskip=\metropolis@frametitle@padding,%
|
||||||
|
]{frametitle}%
|
||||||
|
\metropolis@frametitlestrut@start%
|
||||||
|
\insertframetitle%
|
||||||
|
\nolinebreak%
|
||||||
|
\metropolis@frametitlestrut@end%
|
||||||
|
\end{beamercolorbox}%
|
||||||
|
}
|
||||||
|
\setbeamertemplate{frametitle continuation}{%
|
||||||
|
\usebeamerfont{frametitle}
|
||||||
|
\romannumeral \insertcontinuationcount
|
||||||
|
}
|
||||||
|
\newlength{\metropolis@progressinheadfoot}
|
||||||
|
\newlength{\metropolis@progressinheadfoot@linewidth}
|
||||||
|
\setlength{\metropolis@progressinheadfoot@linewidth}{0.4pt}
|
||||||
|
\setbeamertemplate{progress bar in head/foot}{
|
||||||
|
\nointerlineskip
|
||||||
|
\setlength{\metropolis@progressinheadfoot}{%
|
||||||
|
\paperwidth * \ratio{\insertframenumber pt}{\inserttotalframenumber pt}%
|
||||||
|
}%
|
||||||
|
\begin{beamercolorbox}[wd=\paperwidth]{progress bar in head/foot}
|
||||||
|
\tikzexternaldisable%
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\fill[bg] (0,0) rectangle (\paperwidth, \metropolis@progressinheadfoot@linewidth);
|
||||||
|
\fill[fg] (0,0) rectangle (\metropolis@progressinheadfoot, \metropolis@progressinheadfoot@linewidth);
|
||||||
|
\end{tikzpicture}%
|
||||||
|
\tikzexternalenable%
|
||||||
|
\end{beamercolorbox}
|
||||||
|
}
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\apptocmd{\appendix}{%
|
||||||
|
\pgfkeys{%
|
||||||
|
/metropolis/outer/.cd,
|
||||||
|
numbering=none,
|
||||||
|
progressbar=none}
|
||||||
|
}{}{}
|
||||||
|
}
|
||||||
|
\metropolis@outer@setdefaults
|
||||||
|
\ProcessPgfPackageOptions{/metropolis/outer}
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamerouterthememetropolis.sty'.
|
||||||
@@ -0,0 +1,107 @@
|
|||||||
|
%%
|
||||||
|
%% This is file `beamerthememetropolis.sty',
|
||||||
|
%% generated with the docstrip utility.
|
||||||
|
%%
|
||||||
|
%% The original source files were:
|
||||||
|
%%
|
||||||
|
%% beamerthememetropolis.dtx (with options: `package')
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
%% Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of
|
||||||
|
%% contributors can be found at
|
||||||
|
%%
|
||||||
|
%% https://github.com/matze/mtheme/graphs/contributors
|
||||||
|
%%
|
||||||
|
%% and the original template was based on the HSRM theme by Benjamin Weiss.
|
||||||
|
%%
|
||||||
|
%% This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
|
||||||
|
%% International License (https://creativecommons.org/licenses/by-sa/4.0/).
|
||||||
|
%% ---------------------------------------------------------------------------
|
||||||
|
\NeedsTeXFormat{LaTeX2e}
|
||||||
|
\ProvidesPackage{beamerthememetropolis}
|
||||||
|
[2017/01/23 v1.2 Metropolis Beamer theme]
|
||||||
|
\RequirePackage{etoolbox}
|
||||||
|
\RequirePackage{pgfopts}
|
||||||
|
\pgfkeys{/metropolis/.cd,
|
||||||
|
.search also={
|
||||||
|
/metropolis/inner,
|
||||||
|
/metropolis/outer,
|
||||||
|
/metropolis/color,
|
||||||
|
/metropolis/font,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/titleformat plain/.cd,
|
||||||
|
.is choice,
|
||||||
|
regular/.code={%
|
||||||
|
\let\metropolis@plaintitleformat\@empty%
|
||||||
|
\setbeamerfont{standout}{shape=\normalfont}%
|
||||||
|
},
|
||||||
|
smallcaps/.code={%
|
||||||
|
\let\metropolis@plaintitleformat\@empty%
|
||||||
|
\setbeamerfont{standout}{shape=\scshape}%
|
||||||
|
},
|
||||||
|
allsmallcaps/.code={%
|
||||||
|
\let\metropolis@plaintitleformat\MakeLowercase%
|
||||||
|
\setbeamerfont{standout}{shape=\scshape}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat plain=allsmallcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
allcaps/.code={%
|
||||||
|
\let\metropolis@plaintitleformat\MakeUppercase%
|
||||||
|
\setbeamerfont{standout}{shape=\normalfont}%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
Be aware that titleformat plain=allcaps can lead to problems%
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
\pgfkeys{
|
||||||
|
/metropolis/titleformat/.code=\pgfkeysalso{
|
||||||
|
font/titleformat title=#1,
|
||||||
|
font/titleformat subtitle=#1,
|
||||||
|
font/titleformat section=#1,
|
||||||
|
font/titleformat frame=#1,
|
||||||
|
titleformat plain=#1,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\pgfkeys{/metropolis/.cd,
|
||||||
|
usetitleprogressbar/.code=\pgfkeysalso{outer/progressbar=frametitle},
|
||||||
|
noslidenumbers/.code=\pgfkeysalso{outer/numbering=none},
|
||||||
|
usetotalslideindicator/.code=\pgfkeysalso{outer/numbering=fraction},
|
||||||
|
nosectionslide/.code=\pgfkeysalso{inner/sectionpage=none},
|
||||||
|
darkcolors/.code=\pgfkeysalso{color/background=dark},
|
||||||
|
blockbg/.code=\pgfkeysalso{color/block=fill, inner/block=fill},
|
||||||
|
}
|
||||||
|
\newcommand{\metropolis@setdefaults}{
|
||||||
|
\pgfkeys{/metropolis/.cd,
|
||||||
|
titleformat plain=regular,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\providecommand{\tikzexternalenable}{}
|
||||||
|
\providecommand{\tikzexternaldisable}{}
|
||||||
|
\useinnertheme{metropolis}
|
||||||
|
\useoutertheme{metropolis}
|
||||||
|
\usecolortheme{metropolis}
|
||||||
|
\usefonttheme{metropolis}
|
||||||
|
\AtEndPreamble{%
|
||||||
|
\@ifpackageloaded{pgfplots}{%
|
||||||
|
\RequirePackage{pgfplotsthemetol}
|
||||||
|
}{}
|
||||||
|
}
|
||||||
|
\newcommand{\metroset}[1]{\pgfkeys{/metropolis/.cd,#1}}
|
||||||
|
\def\metropolis@plaintitleformat#1{#1}
|
||||||
|
\newcommand{\plain}[2][]{%
|
||||||
|
\PackageWarning{beamerthememetropolis}{%
|
||||||
|
The syntax `\plain' may be deprecated in a future version of Metropolis.
|
||||||
|
Please use a frame with [standout] instead.
|
||||||
|
}
|
||||||
|
\begin{frame}[standout]{#1}
|
||||||
|
\metropolis@plaintitleformat{#2}
|
||||||
|
\end{frame}
|
||||||
|
}
|
||||||
|
\newcommand{\mreducelistspacing}{\vspace{-\topsep}}
|
||||||
|
\metropolis@setdefaults
|
||||||
|
\ProcessPgfOptions{/metropolis}
|
||||||
|
\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `beamerthememetropolis.sty'.
|
||||||
+1
-1
@@ -23,7 +23,7 @@
|
|||||||
\RequirePackage{listings}
|
\RequirePackage{listings}
|
||||||
\RequirePackage{geometry}
|
\RequirePackage{geometry}
|
||||||
\RequirePackage{graphicx}
|
\RequirePackage{graphicx}
|
||||||
\RequirePackage[usenames,dvipsnames]{xcolor}
|
\RequirePackage[dvipsnames]{xcolor}
|
||||||
\RequirePackage{bm}
|
\RequirePackage{bm}
|
||||||
\RequirePackage{siunitx}[=v2]
|
\RequirePackage{siunitx}[=v2]
|
||||||
\RequirePackage{physics}
|
\RequirePackage{physics}
|
||||||
|
|||||||
@@ -20,6 +20,8 @@
|
|||||||
\newcommand{\BigOm}{\ensuremath{\Omega}}
|
\newcommand{\BigOm}{\ensuremath{\Omega}}
|
||||||
\newcommand{\BigT}{\ensuremath{\Theta}}
|
\newcommand{\BigT}{\ensuremath{\Theta}}
|
||||||
|
|
||||||
|
\newcommand{\gen}[1]{\ensuremath{\langle #1\rangle}}
|
||||||
|
|
||||||
\DeclareMathOperator{\GL}{GL}
|
\DeclareMathOperator{\GL}{GL}
|
||||||
\DeclareMathOperator{\Imm}{Im}
|
\DeclareMathOperator{\Imm}{Im}
|
||||||
\DeclareMathOperator{\Ker}{Ker}
|
\DeclareMathOperator{\Ker}{Ker}
|
||||||
@@ -31,3 +33,4 @@
|
|||||||
\DeclareMathOperator{\Var}{Var}
|
\DeclareMathOperator{\Var}{Var}
|
||||||
\DeclareMathOperator{\Cov}{Cov}
|
\DeclareMathOperator{\Cov}{Cov}
|
||||||
\DeclareMathOperator{\supp}{supp}
|
\DeclareMathOperator{\supp}{supp}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,9 @@
|
|||||||
[apps]
|
[apps]
|
||||||
|
|
||||||
vim-custom = "~/.config/nvim/colors/theme.vim"
|
vim-custom = "~/.config/nvim/colors/theme.vim"
|
||||||
|
neovim-custom = "~/.config/nvim/colors/theme-nvim.lua"
|
||||||
|
mininvim-custom = "~/.config/nvim/colors/theme-mininvim.lua"
|
||||||
|
tinted-custom = "~/.config/nvim/colors/tinted-theme.vim"
|
||||||
airline = "~/.config/nvim/autoload/airline/themes/theme.vim"
|
airline = "~/.config/nvim/autoload/airline/themes/theme.vim"
|
||||||
|
|
||||||
shell-custom = { file = "~/.cache/theme/colors.sh", post = "(bspc wm -r &) ; (source ~/.cache/theme/colors.sh)" }
|
shell-custom = { file = "~/.cache/theme/colors.sh", post = "(bspc wm -r &) ; (source ~/.cache/theme/colors.sh)" }
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
scheme: "Passionfruit"
|
||||||
|
base00: "282828" # ----
|
||||||
|
base01: "3c3836" # ---
|
||||||
|
base02: "504945" # --
|
||||||
|
base03: "665c54" # -
|
||||||
|
base04: "bdae93" # +
|
||||||
|
base05: "d5c4a1" # ++
|
||||||
|
base06: "ebdbb2" # +++
|
||||||
|
base07: "fbf1c7" # ++++
|
||||||
|
base08: "f66655" # red
|
||||||
|
base09: "e59e70" # orange
|
||||||
|
base0A: "d4bb6f" # yellow
|
||||||
|
base0B: "89b843" # green
|
||||||
|
base0C: "8ec07c" # aqua/cyan
|
||||||
|
base0D: "83a598" # blue
|
||||||
|
base0E: "7f7d88" # purple
|
||||||
|
base0F: "b5835a" # brown
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
scheme: "Everforest dark, medium"
|
||||||
|
author: "Sainnhe Park (sainnhe@gmail.com)"
|
||||||
|
|
||||||
|
base00: "1e2326" # Default Background
|
||||||
|
base01: "272e33" # Lighter Background (Used for status bars, line number and folding marks)
|
||||||
|
base02: "343f44" # Selection Background
|
||||||
|
base03: "555f66" # Comments, Invisibles, Line Highlighting
|
||||||
|
base04: "7a8478" # Dark Foreground (Used for status bars)
|
||||||
|
base05: "d3c6aa" # Default Foreground, Caret, Delimiters, Operators
|
||||||
|
base06: "859289" # Light Foreground (Not often used)
|
||||||
|
base07: "9da9a0" # Light Background (Not often used)
|
||||||
|
base08: "e67e80" # Variables, XML Tags, Markup Link Text, Markup Lists, Diff Deleted
|
||||||
|
base09: "e69875" # Integers, Boolean, Constants, XML Attributes, Markup Link Url
|
||||||
|
base0A: "dbbc7f" # Classes, Markup Bold, Search Text Background
|
||||||
|
base0B: "a7c080" # Strings, Inherited Class, Markup Code, Diff Inserted
|
||||||
|
base0C: "7fbbb3" # Support, Regular Expressions, Escape Characters, Markup Quotes
|
||||||
|
base0D: "83c092" # Functions, Methods, Attribute IDs, Headings
|
||||||
|
base0E: "d699b6" # Keywords, Storage, Selector, Markup Italic, Diff Changed
|
||||||
|
base0F: "5c3f4f" # Deprecated, Opening/Closing Embedded Language Tags, e.g. <?php ?>
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
scheme: "Grayscale"
|
||||||
|
author: "Chris Kempson"
|
||||||
|
|
||||||
|
base00: "101010"
|
||||||
|
base01: "252525"
|
||||||
|
base02: "464646"
|
||||||
|
base03: "525252"
|
||||||
|
base04: "ababab"
|
||||||
|
base05: "b9b9b9"
|
||||||
|
base06: "e3e3e3"
|
||||||
|
base07: "f7f7f7"
|
||||||
|
base08: "7c7c7c"
|
||||||
|
base09: "999999"
|
||||||
|
base0A: "a0a0a0"
|
||||||
|
base0B: "8e8e8e"
|
||||||
|
base0C: "868686"
|
||||||
|
base0D: "686868"
|
||||||
|
base0E: "747474"
|
||||||
|
base0F: "5e5e5e"
|
||||||
@@ -50,35 +50,116 @@ else
|
|||||||
let s:cterm0F = "14"
|
let s:cterm0F = "14"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let g:airline#themes#theme#palette.normal = airline#themes#generate_color_map(
|
let s:N1 = [ s:gui01, s:gui0B, s:cterm01, s:cterm0B ]
|
||||||
\ [ s:gui01, s:gui04, s:cterm01, s:cterm04 ],
|
let s:N2 = [ s:gui06, s:gui03, s:cterm06, s:cterm03 ]
|
||||||
\ [ s:gui04, s:gui02, s:cterm04, s:cterm02 ],
|
let s:N3 = [ s:gui09, s:gui02, s:cterm09, s:cterm02 ]
|
||||||
\ [ s:gui04, s:gui01, s:cterm04, s:cterm01 ])
|
let g:airline#themes#theme#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3)
|
||||||
let g:airline#themes#theme#palette.normal_modified = {
|
let g:airline#themes#theme#palette.normal_modified = { 'airline_c': [ s:gui0A, '', s:cterm0A, '' ] }
|
||||||
\ 'airline_c' : [ s:gui07, s:gui01, s:cterm07, s:cterm01 ]}
|
|
||||||
|
|
||||||
let g:airline#themes#theme#palette.insert = airline#themes#generate_color_map(
|
|
||||||
\ [ s:gui01, s:gui0B, s:cterm01, s:cterm0B ],
|
|
||||||
\ [ s:gui04, s:gui02, s:cterm04, s:cterm02 ],
|
|
||||||
\ [ s:gui04, s:gui01, s:cterm04, s:cterm01 ])
|
|
||||||
let g:airline#themes#theme#palette.insert_modified = {
|
|
||||||
\ 'airline_c' : [ s:gui07, s:gui01, s:cterm07, s:cterm01 ]}
|
|
||||||
|
|
||||||
let g:airline#themes#theme#palette.replace = airline#themes#generate_color_map(
|
let s:I1 = [ s:gui01, s:gui0D, s:cterm01, s:cterm0D ]
|
||||||
\ [ s:gui01, s:gui0E, s:cterm01, s:cterm0E ],
|
let s:I2 = [ s:gui06, s:gui03, s:cterm06, s:cterm03 ]
|
||||||
\ [ s:gui04, s:gui02, s:cterm04, s:cterm02 ],
|
let s:I3 = [ s:gui09, s:gui02, s:cterm09, s:cterm02 ]
|
||||||
\ [ s:gui04, s:gui01, s:cterm04, s:cterm01 ])
|
let g:airline#themes#theme#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3)
|
||||||
let g:airline#themes#theme#palette.replace_modified = {
|
let g:airline#themes#theme#palette.insert_modified = g:airline#themes#theme#palette.normal_modified
|
||||||
\ 'airline_c' : [ s:gui07, s:gui01, s:cterm07, s:cterm01 ]}
|
let g:airline#themes#theme#palette.insert_paste = { 'airline_a': s:I3 }
|
||||||
|
|
||||||
let g:airline#themes#theme#palette.visual = airline#themes#generate_color_map(
|
|
||||||
\ [ s:gui01, s:gui09, s:cterm01, s:cterm09 ],
|
|
||||||
\ [ s:gui04, s:gui02, s:cterm04, s:cterm02 ],
|
|
||||||
\ [ s:gui04, s:gui01, s:cterm04, s:cterm01 ])
|
|
||||||
let g:airline#themes#theme#palette.visual_modified = {
|
|
||||||
\ 'airline_c' : [ s:gui07, s:gui01, s:cterm07, s:cterm01 ]}
|
|
||||||
|
|
||||||
let g:airline#themes#theme#palette.inactive = airline#themes#generate_color_map(
|
let s:R1 = [ s:gui01, s:gui08, s:cterm01, s:cterm08 ]
|
||||||
\ [ s:gui01, s:gui01, s:cterm01, s:cterm01 ],
|
let s:R2 = [ s:gui06, s:gui03, s:cterm06, s:cterm03 ]
|
||||||
\ [ s:gui04, s:gui01, s:cterm04, s:cterm01 ],
|
let s:R3 = [ s:gui09, s:gui02, s:cterm09, s:cterm02 ]
|
||||||
\ [ s:gui05, s:gui01, s:cterm05, s:cterm01 ])
|
let g:airline#themes#theme#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3)
|
||||||
|
let g:airline#themes#theme#palette.replace_modified = g:airline#themes#theme#palette.normal_modified
|
||||||
|
|
||||||
|
|
||||||
|
let s:V1 = [ s:gui01, s:gui0E, s:cterm01, s:cterm0E ]
|
||||||
|
let s:V2 = [ s:gui06, s:gui03, s:cterm06, s:cterm03 ]
|
||||||
|
let s:V3 = [ s:gui09, s:gui02, s:cterm09, s:cterm02 ]
|
||||||
|
let g:airline#themes#theme#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3)
|
||||||
|
let g:airline#themes#theme#palette.visual_modified = g:airline#themes#theme#palette.normal_modified
|
||||||
|
|
||||||
|
|
||||||
|
let s:IA1 = [ s:gui05, s:gui02, s:cterm05, s:cterm02 ]
|
||||||
|
let s:IA2 = [ s:gui05, s:gui02, s:cterm05, s:cterm02 ]
|
||||||
|
let s:IA3 = [ s:gui05, s:gui02, s:cterm05, s:cterm02 ]
|
||||||
|
let g:airline#themes#theme#palette.inactive = airline#themes#generate_color_map(s:IA1, s:IA2, s:IA3)
|
||||||
|
let g:airline#themes#theme#palette.inactive_modified = g:airline#themes#theme#palette.normal_modified
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.normal.airline_warning =
|
||||||
|
\ [ s:gui01, s:gui09, s:cterm01, s:cterm09 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.insert.airline_warning =
|
||||||
|
\ [ s:gui01, s:gui09, s:cterm01, s:cterm09 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.visual.airline_warning =
|
||||||
|
\ [ s:gui01, s:gui09, s:cterm01, s:cterm09 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.replace.airline_warning =
|
||||||
|
\ [ s:gui01, s:gui09, s:cterm01, s:cterm09 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.inactive.airline_warning =
|
||||||
|
\ [ s:gui05, s:gui09, s:cterm05, s:cterm09 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.normal_modified.airline_warning =
|
||||||
|
\ [ s:gui05, s:gui09, s:cterm05, s:cterm09 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.insert_modified.airline_warning =
|
||||||
|
\ [ s:gui05, s:gui09, s:cterm05, s:cterm09 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.visual_modified.airline_warning =
|
||||||
|
\ [ s:gui05, s:gui09, s:cterm05, s:cterm09 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.replace_modified.airline_warning =
|
||||||
|
\ [ s:gui05, s:gui09, s:cterm05, s:cterm09 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.insert_paste.airline_warning =
|
||||||
|
\ [ s:gui05, s:gui09, s:cterm05, s:cterm09 ]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.normal.airline_error =
|
||||||
|
\ [ s:gui01, s:gui08, s:cterm01, s:cterm08 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.insert.airline_error =
|
||||||
|
\ [ s:gui01, s:gui08, s:cterm01, s:cterm08 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.visual.airline_error =
|
||||||
|
\ [ s:gui01, s:gui08, s:cterm01, s:cterm08 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.replace.airline_error =
|
||||||
|
\ [ s:gui01, s:gui08, s:cterm01, s:cterm08 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.inactive.airline_error =
|
||||||
|
\ [ s:gui05, s:gui08, s:cterm05, s:cterm08 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.normal_modified.airline_error =
|
||||||
|
\ [ s:gui05, s:gui08, s:cterm05, s:cterm08 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.insert_modified.airline_error =
|
||||||
|
\ [ s:gui05, s:gui08, s:cterm05, s:cterm08 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.visual_modified.airline_error =
|
||||||
|
\ [ s:gui05, s:gui08, s:cterm05, s:cterm08 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.replace_modified.airline_error =
|
||||||
|
\ [ s:gui05, s:gui08, s:cterm05, s:cterm08 ]
|
||||||
|
|
||||||
|
let g:airline#themes#theme#palette.insert_paste.airline_error =
|
||||||
|
\ [ s:gui05, s:gui08, s:cterm05, s:cterm08 ]
|
||||||
|
|
||||||
|
|
||||||
|
" g Here we define the color map for ctrlp. We check for the g:loaded_ctrlp
|
||||||
|
" variable so that related functionality is loaded iff the user is using
|
||||||
|
" ctrlp. Note that this is optional, and if you do not define ctrlp colors
|
||||||
|
" they will be chosen automatically from the existing palette.
|
||||||
|
if !get(g:, 'loaded_ctrlp', 0)
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let g:airline#themes#theme#palette.ctrlp = airline#extensions#ctrlp#generate_color_map(
|
||||||
|
\ [ s:gui07, s:gui02, s:cterm07, s:cterm02, '' ],
|
||||||
|
\ [ s:gui07, s:gui04, s:cterm07, s:cterm04, '' ],
|
||||||
|
\ [ s:gui05, s:gui01, s:cterm05, s:cterm01, 'bold' ])
|
||||||
|
|
||||||
|
" Remove color variables
|
||||||
|
unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F
|
||||||
|
unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F
|
||||||
|
|||||||
@@ -0,0 +1,40 @@
|
|||||||
|
require('mini.base16').setup({
|
||||||
|
palette = {
|
||||||
|
base00 = "#{{base00-hex}}",
|
||||||
|
base01 = "#{{base01-hex}}",
|
||||||
|
base02 = "#{{base02-hex}}",
|
||||||
|
base03 = "#{{base03-hex}}",
|
||||||
|
base04 = "#{{base04-hex}}",
|
||||||
|
base05 = "#{{base05-hex}}",
|
||||||
|
base06 = "#{{base06-hex}}",
|
||||||
|
base07 = "#{{base07-hex}}",
|
||||||
|
base08 = "#{{base08-hex}}",
|
||||||
|
base09 = "#{{base09-hex}}",
|
||||||
|
base0A = "#{{base0A-hex}}",
|
||||||
|
base0B = "#{{base0B-hex}}",
|
||||||
|
base0C = "#{{base0C-hex}}",
|
||||||
|
base0D = "#{{base0D-hex}}",
|
||||||
|
base0E = "#{{base0E-hex}}",
|
||||||
|
base0F = "#{{base0F-hex}}",
|
||||||
|
},
|
||||||
|
use_cterm = true,
|
||||||
|
plugins = {
|
||||||
|
default = false,
|
||||||
|
['nvim-mini/mini.nvim'] = true,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
local color = require('mini.base16').config.palette.base02
|
||||||
|
local back_color = require('mini.base16').config.palette.base00
|
||||||
|
|
||||||
|
vim.api.nvim_set_hl(0, 'LineNr', { fg = color, bg = back_color })
|
||||||
|
vim.api.nvim_set_hl(0, 'LineNrAbove', { fg = color, bg = back_color })
|
||||||
|
vim.api.nvim_set_hl(0, 'LineNrBelow', { fg = color, bg = back_color })
|
||||||
|
vim.api.nvim_set_hl(0, 'SignColumn', { bg = "none" })
|
||||||
|
vim.api.nvim_set_hl(0, 'FoldColumn', { bg = "none" })
|
||||||
|
vim.api.nvim_set_hl(0, 'CursorLineNr', { bg = "none" })
|
||||||
|
vim.api.nvim_set_hl(0, 'DiagnosticSignWarn', { fg = "#{{base0E-hex}}", bg = "none" })
|
||||||
|
vim.api.nvim_set_hl(0, 'DiagnosticSignHint', { fg = "#{{base0D-hex}}", bg = "none" })
|
||||||
|
vim.api.nvim_set_hl(0, 'DiagnosticSignError', { fg = "#{{base08-hex}}", bg = "none" })
|
||||||
|
vim.api.nvim_set_hl(0, 'DiagnosticSignOk', { fg = "#{{base0B-hex}}", bg = "none" })
|
||||||
|
vim.api.nvim_set_hl(0, 'DiagnosticSignInfo', { fg = "#{{base0C-hex}}", bg = "none" })
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
require('base16-colorscheme').with_config {
|
||||||
|
-- telescope_borders = true,
|
||||||
|
}
|
||||||
|
|
||||||
|
require('base16-colorscheme').setup({
|
||||||
|
base00 = "#{{base00-hex}}",
|
||||||
|
base01 = "#{{base01-hex}}",
|
||||||
|
base02 = "#{{base02-hex}}",
|
||||||
|
base03 = "#{{base03-hex}}",
|
||||||
|
base04 = "#{{base04-hex}}",
|
||||||
|
base05 = "#{{base05-hex}}",
|
||||||
|
base06 = "#{{base06-hex}}",
|
||||||
|
base07 = "#{{base07-hex}}",
|
||||||
|
base08 = "#{{base08-hex}}",
|
||||||
|
base09 = "#{{base09-hex}}",
|
||||||
|
base0A = "#{{base0A-hex}}",
|
||||||
|
base0B = "#{{base0B-hex}}",
|
||||||
|
base0C = "#{{base0C-hex}}",
|
||||||
|
base0D = "#{{base0D-hex}}",
|
||||||
|
base0E = "#{{base0E-hex}}",
|
||||||
|
base0F = "#{{base0F-hex}}",
|
||||||
|
})
|
||||||
|
|
||||||
|
local color = require('base16-colorscheme').colors.base02
|
||||||
|
vim.api.nvim_set_hl(0, 'LineNr', { fg = color, bg = "none" })
|
||||||
@@ -0,0 +1,910 @@
|
|||||||
|
" vi:syntax=vim
|
||||||
|
|
||||||
|
" tinted-vim (https://github.com/tinted-theming/tinted-vim)
|
||||||
|
" Template author: Tinted Theming (https://github.com/tinted-theming)
|
||||||
|
|
||||||
|
" This enables the coresponding base16-shell script to run so that
|
||||||
|
" :colorscheme works in terminals supported by tinted-shell scripts
|
||||||
|
" User must set this variable in .vimrc
|
||||||
|
" let g:tinted_shell_path=path/to/shell/scripts
|
||||||
|
if !has('gui_running')
|
||||||
|
if exists('g:tinted_shell_path')
|
||||||
|
execute 'silent !/bin/sh '.g:tinted_shell_path.'/{{scheme-system}}/{{scheme-slug}}.sh'
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
" GUI colors
|
||||||
|
let s:gui00 = "{{base00-hex}}"
|
||||||
|
let s:gui01 = "{{base01-hex}}"
|
||||||
|
let s:gui02 = "{{base02-hex}}"
|
||||||
|
let s:gui03 = "{{base03-hex}}"
|
||||||
|
let s:gui04 = "{{base04-hex}}"
|
||||||
|
let s:gui05 = "{{base05-hex}}"
|
||||||
|
let s:gui06 = "{{base06-hex}}"
|
||||||
|
let s:gui07 = "{{base07-hex}}"
|
||||||
|
let s:gui08 = "{{base08-hex}}"
|
||||||
|
let s:gui09 = "{{base09-hex}}"
|
||||||
|
let s:gui0A = "{{base0A-hex}}"
|
||||||
|
let s:gui0B = "{{base0B-hex}}"
|
||||||
|
let s:gui0C = "{{base0C-hex}}"
|
||||||
|
let s:gui0D = "{{base0D-hex}}"
|
||||||
|
let s:gui0E = "{{base0E-hex}}"
|
||||||
|
let s:gui0F = "{{base0F-hex}}"
|
||||||
|
let s:gui10 = "{{base00-hex}}"
|
||||||
|
let s:gui11 = "{{base00-hex}}"
|
||||||
|
let s:gui12 = "{{base08-hex}}"
|
||||||
|
let s:gui13 = "{{base0A-hex}}"
|
||||||
|
let s:gui14 = "{{base0B-hex}}"
|
||||||
|
let s:gui15 = "{{base0C-hex}}"
|
||||||
|
let s:gui16 = "{{base0D-hex}}"
|
||||||
|
let s:gui17 = "{{base0E-hex}}"
|
||||||
|
" Terminal colors
|
||||||
|
let s:cterm00 = '00'
|
||||||
|
let s:cterm01 = '18'
|
||||||
|
let s:cterm02 = '19'
|
||||||
|
let s:cterm03 = '08'
|
||||||
|
let s:cterm04 = '20'
|
||||||
|
let s:cterm05 = '21'
|
||||||
|
let s:cterm06 = '07'
|
||||||
|
let s:cterm07 = '15'
|
||||||
|
let s:cterm08 = '01'
|
||||||
|
let s:cterm09 = '16'
|
||||||
|
let s:cterm0A = '03'
|
||||||
|
let s:cterm0B = '02'
|
||||||
|
let s:cterm0C = '06'
|
||||||
|
let s:cterm0D = '04'
|
||||||
|
let s:cterm0E = '05'
|
||||||
|
let s:cterm0F = '17'
|
||||||
|
let s:cterm10 = s:cterm00
|
||||||
|
let s:cterm11 = s:cterm00
|
||||||
|
let s:cterm12 = '01'
|
||||||
|
let s:cterm13 = '03'
|
||||||
|
let s:cterm14 = '02'
|
||||||
|
let s:cterm15 = '06'
|
||||||
|
let s:cterm16 = '04'
|
||||||
|
let s:cterm17 = '05'
|
||||||
|
|
||||||
|
" base16_colorspace` and `base16colorspace` are legacy properties and
|
||||||
|
" exist to keep existing setups from breaking
|
||||||
|
if (exists('base16_colorspace') && base16_colorspace !=? '256') || (exists('base16colorspace') && base16colorspace !=? '256') || (exists('tinted_colorspace') && tinted_colorspace !=? '256')
|
||||||
|
" We have only 16 colors so define fallbacks for codes > 15
|
||||||
|
let s:cterm01 = s:cterm00
|
||||||
|
let s:cterm02 = s:cterm03
|
||||||
|
let s:cterm04 = s:cterm03
|
||||||
|
let s:cterm05 = s:cterm06
|
||||||
|
let s:cterm07 = s:cterm06
|
||||||
|
let s:cterm09 = s:cterm08
|
||||||
|
let s:cterm0F = s:cterm08
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Todo! why do we need the globals?
|
||||||
|
function! s:create_color_globals() abort
|
||||||
|
for i in range(0, 23)
|
||||||
|
let l:num = printf('%02X', i)
|
||||||
|
execute 'let g:tinted_gui' . l:num . ' = s:gui' . l:num
|
||||||
|
execute 'let g:tinted_cterm' . l:num . ' = s:cterm' . l:num
|
||||||
|
" Legacy vars for lualine
|
||||||
|
execute 'let g:base16_gui' . l:num . ' = s:gui' . l:num
|
||||||
|
endfor
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
call s:create_color_globals()
|
||||||
|
|
||||||
|
" Integrated Terminal colors
|
||||||
|
let s:colors = [
|
||||||
|
\ '#{{base00-hex}}',
|
||||||
|
\ '#{{base08-hex}}',
|
||||||
|
\ '#{{base0B-hex}}',
|
||||||
|
\ '#{{base0A-hex}}',
|
||||||
|
\ '#{{base0D-hex}}',
|
||||||
|
\ '#{{base0E-hex}}',
|
||||||
|
\ '#{{base0C-hex}}',
|
||||||
|
\ '#{{base05-hex}}',
|
||||||
|
\ '#{{base03-hex}}',
|
||||||
|
\ '#{{base08-hex}}',
|
||||||
|
\ '#{{base0B-hex}}',
|
||||||
|
\ '#{{base0A-hex}}',
|
||||||
|
\ '#{{base0D-hex}}',
|
||||||
|
\ '#{{base0E-hex}}',
|
||||||
|
\ '#{{base0C-hex}}',
|
||||||
|
\ '#{{base07-hex}}'
|
||||||
|
\]
|
||||||
|
|
||||||
|
if has('nvim')
|
||||||
|
for i in range(16)
|
||||||
|
let g:terminal_color_{i} = s:colors[i]
|
||||||
|
endfor
|
||||||
|
let g:terminal_color_background = &background ==? 'light' ? s:colors[7] : s:colors[0]
|
||||||
|
let g:terminal_color_foreground = &background ==? 'light' ? s:colors[2] : s:colors[5]
|
||||||
|
elseif has('terminal')
|
||||||
|
let g:terminal_ansi_colors = s:colors
|
||||||
|
endif
|
||||||
|
|
||||||
|
if exists('g:tinted_background_transparent') && g:tinted_background_transparent ==? '1'
|
||||||
|
let s:guibg = 'NONE'
|
||||||
|
let s:ctermbg = 'NONE'
|
||||||
|
else
|
||||||
|
let s:guibg = s:gui00
|
||||||
|
let s:ctermbg = s:cterm00
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('g:tinted_bold')
|
||||||
|
let g:tinted_bold = 1
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('g:tinted_italic')
|
||||||
|
let g:tinted_italic = 1
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('g:tinted_strikethrough')
|
||||||
|
let g:tinted_strikethrough = 1
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('g:tinted_underline')
|
||||||
|
let g:tinted_underline = 1
|
||||||
|
endif
|
||||||
|
|
||||||
|
if !exists('g:tinted_undercurl')
|
||||||
|
let g:tinted_undercurl = g:tinted_underline
|
||||||
|
endif
|
||||||
|
|
||||||
|
let s:attrs = {
|
||||||
|
\ 'bold': g:tinted_bold,
|
||||||
|
\ 'italic': g:tinted_italic,
|
||||||
|
\ 'strikethrough': g:tinted_strikethrough,
|
||||||
|
\ 'underline': g:tinted_underline,
|
||||||
|
\ 'undercurl': g:tinted_undercurl,
|
||||||
|
\}
|
||||||
|
|
||||||
|
" Theme setup
|
||||||
|
let g:colors_name = 'tinted-theme'
|
||||||
|
|
||||||
|
" Highlighting function
|
||||||
|
" Optional variables are attributes and guisp
|
||||||
|
function! g:Tinted_Hi(group, guifg, guibg, ctermfg, ctermbg, ...)
|
||||||
|
|
||||||
|
" Clear the highlight to be more robust against default Highlighting changes
|
||||||
|
exec 'hi! clear ' . a:group
|
||||||
|
|
||||||
|
let l:attr = join(filter(split(get(a:, 1, ''), ','), 'get(s:attrs, v:val, 1)'), ',')
|
||||||
|
let l:guisp = get(a:, 2, '')
|
||||||
|
|
||||||
|
" See :help highlight-guifg
|
||||||
|
let l:gui_special_names = ['NONE', 'bg', 'background', 'fg', 'foreground']
|
||||||
|
|
||||||
|
if a:guifg !=? ''
|
||||||
|
if index(l:gui_special_names, a:guifg) >= 0
|
||||||
|
exec 'hi! ' . a:group . ' guifg=' . a:guifg
|
||||||
|
else
|
||||||
|
exec 'hi! ' . a:group . ' guifg=#' . a:guifg
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
if a:guibg !=? ''
|
||||||
|
if index(l:gui_special_names, a:guibg) >= 0
|
||||||
|
exec 'hi! ' . a:group . ' guibg=' . a:guibg
|
||||||
|
else
|
||||||
|
exec 'hi! ' . a:group . ' guibg=#' . a:guibg
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
if a:ctermfg !=? ''
|
||||||
|
exec 'hi! ' . a:group . ' ctermfg=' . a:ctermfg
|
||||||
|
endif
|
||||||
|
if a:ctermbg !=? ''
|
||||||
|
exec 'hi! ' . a:group . ' ctermbg=' . a:ctermbg
|
||||||
|
endif
|
||||||
|
if l:attr !=? ''
|
||||||
|
exec 'hi! ' . a:group . ' gui=' . l:attr . ' cterm=' . l:attr
|
||||||
|
endif
|
||||||
|
if l:guisp !=? ''
|
||||||
|
if index(l:gui_special_names, l:guisp) >= 0
|
||||||
|
exec 'hi! ' . a:group . ' guisp=' . l:guisp
|
||||||
|
else
|
||||||
|
exec 'hi! ' . a:group . ' guisp=#' . l:guisp
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
|
||||||
|
fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
|
||||||
|
call g:Tinted_Hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
|
||||||
|
endfun
|
||||||
|
|
||||||
|
|
||||||
|
" Tinted color highlights
|
||||||
|
|
||||||
|
call <sid>hi('tinted_gui00', s:gui00, '', s:cterm00, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui01', s:gui01, '', s:cterm01, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui02', s:gui02, '', s:cterm02, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui03', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui04', s:gui04, '', s:cterm04, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui05', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui06', s:gui06, '', s:cterm06, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui07', s:gui07, '', s:cterm07, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui08', s:gui08, '', s:cterm08, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui09', s:gui09, '', s:cterm09, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui0A', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui0B', s:gui0B, '', s:cterm0B, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui0C', s:gui0C, '', s:cterm0C, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui0D', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui0E', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui0F', s:gui0F, '', s:cterm0F, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui10', s:gui10, '', s:cterm10, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui11', s:gui11, '', s:cterm11, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui12', s:gui12, '', s:cterm12, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui13', s:gui13, '', s:cterm13, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui14', s:gui14, '', s:cterm14, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui15', s:gui15, '', s:cterm15, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui16', s:gui16, '', s:cterm16, '', '', '')
|
||||||
|
call <sid>hi('tinted_gui17', s:gui17, '', s:cterm17, '', '', '')
|
||||||
|
|
||||||
|
" Vim editor colors
|
||||||
|
|
||||||
|
call <sid>hi('ColorColumn', '', s:gui01, '', s:cterm01, '', '')
|
||||||
|
call <sid>hi('Conceal', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('CurSearch', s:gui00, s:gui14, s:cterm00, s:cterm14, '', '')
|
||||||
|
call <sid>hi('Cursor', 'bg', 'fg', '', '', '', '')
|
||||||
|
hi! link lCursor Cursor
|
||||||
|
hi! link CursorIM Cursor
|
||||||
|
call <sid>hi('CursorColumn', '', s:gui01, '', s:cterm01, 'none', '')
|
||||||
|
call <sid>hi('CursorLine', '', s:gui01, '', s:cterm01, 'none', '')
|
||||||
|
call <sid>hi('Directory', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
|
||||||
|
" Diff
|
||||||
|
call <sid>hi('DiffAdd', '', s:gui01, '', s:cterm01, '', '')
|
||||||
|
call <sid>hi('DiffChange', '', s:gui01, '', s:cterm01, '', '')
|
||||||
|
call <sid>hi('DiffDelete', s:gui03, s:guibg, s:cterm03, s:ctermbg, '', '')
|
||||||
|
call <sid>hi('DiffText', '', s:gui02, '', s:cterm02, '', '')
|
||||||
|
|
||||||
|
call <sid>hi('EndOfBuffer', s:guibg, s:guibg, s:ctermbg, s:ctermbg, '', '')
|
||||||
|
call <sid>hi('ErrorMsg', s:gui08, '', s:cterm08, '', '', '')
|
||||||
|
if has('nvim')
|
||||||
|
call <sid>hi('WinSeparator', s:gui01, s:guibg, s:cterm01, s:ctermbg, '', '')
|
||||||
|
else
|
||||||
|
call <sid>hi('VertSplit', s:gui01, s:guibg, s:cterm01, s:ctermbg, '', '')
|
||||||
|
endif
|
||||||
|
call <sid>hi('Folded', s:gui13, s:guibg, s:cterm13, s:ctermbg, '', '')
|
||||||
|
call <sid>hi('FoldColumn', s:gui03, s:guibg, s:cterm03, s:ctermbg, '', '')
|
||||||
|
call <sid>hi('SignColumn', s:gui03, s:guibg, s:cterm03, s:ctermbg, '', '')
|
||||||
|
hi! link IncSearch CurSearch
|
||||||
|
hi! link Substitute Search
|
||||||
|
call <sid>hi('LineNr', s:gui03, s:guibg, s:cterm03, s:ctermbg, '', '')
|
||||||
|
hi! link LineNrAbove LineNr
|
||||||
|
hi! link LineNrBelow LineNr
|
||||||
|
call <sid>hi('CursorLineNr', s:gui04, s:guibg, s:cterm04, s:ctermbg, 'bold', '')
|
||||||
|
call <sid>hi('CursorLineFold', s:gui13, s:guibg, s:cterm13, s:ctermbg, '', '')
|
||||||
|
hi! link CursorLineSign SignColumn
|
||||||
|
call <sid>hi('MatchParen', s:gui06, '', s:cterm06, '', 'bold', '')
|
||||||
|
call <sid>hi('ModeMsg', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
hi! link MsgArea None
|
||||||
|
hi! link MsgSeparator WinSeparator
|
||||||
|
call <sid>hi('MoreMsg', s:gui0B, '', s:cterm0B, '', '', '')
|
||||||
|
call <sid>hi('NonText', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('Normal', s:gui05, s:guibg, s:cterm05, s:ctermbg, '', '')
|
||||||
|
call <sid>hi('NormalFloat', s:gui06, s:gui01, s:cterm06, s:cterm01, 'none', '')
|
||||||
|
call <sid>hi('FloatBorder', s:gui06, s:gui01, s:cterm06, s:cterm01, 'none', '')
|
||||||
|
hi! link FloatTitle Title
|
||||||
|
hi! link FloatFooter FloatTitle
|
||||||
|
hi! link NormalNC None
|
||||||
|
call <sid>hi('PMenu', s:gui05, s:gui01, s:cterm05, s:cterm01, 'none', '')
|
||||||
|
call <sid>hi('PMenuSel', s:gui06, s:gui02, s:cterm06, s:cterm02, 'none', '')
|
||||||
|
hi! link PMenuKind PMenu
|
||||||
|
hi! link PMenuKindSel PMenuSel
|
||||||
|
hi! link PMenuExtra PMenu
|
||||||
|
hi! link PMenuExtraSel PMenuSel
|
||||||
|
call <sid>hi('PMenuSbar', '', s:gui03, '', s:cterm03, '', '')
|
||||||
|
call <sid>hi('PMenuThumb', '', s:gui04, '', s:cterm04, '', '')
|
||||||
|
call <sid>hi('PMenuMatch', s:gui0C, '', s:cterm0C, '', '', '')
|
||||||
|
call <sid>hi('PMenuMatchSel', s:gui15, s:gui02, s:cterm15, s:cterm02, 'none', '')
|
||||||
|
call <sid>hi('Question', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('QuickFixLine', '', s:gui01, '', s:cterm01, 'none', '')
|
||||||
|
call <sid>hi('Search', s:gui01, s:gui13, s:cterm01, s:cterm13, '', '')
|
||||||
|
hi! link SnippetTabstop Visual
|
||||||
|
call <sid>hi('SpecialKey', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
|
||||||
|
" Spell
|
||||||
|
call <sid>hi('SpellBad', '', '', s:ctermbg, s:cterm12, 'undercurl', s:gui08)
|
||||||
|
call <sid>hi('SpellLocal', '', '', s:ctermbg, s:cterm15, 'undercurl', s:gui15)
|
||||||
|
call <sid>hi('SpellCap', '', '', s:ctermbg, s:cterm16, 'undercurl', s:gui16)
|
||||||
|
call <sid>hi('SpellRare', '', '', s:ctermbg, s:cterm0E, 'undercurl', s:gui0E)
|
||||||
|
|
||||||
|
call <sid>hi('StatusLine', s:gui04, s:gui01, s:cterm04, s:cterm01, 'none', '')
|
||||||
|
call <sid>hi('StatusLineNC', s:gui03, s:gui01, s:cterm03, s:cterm01, 'none', '')
|
||||||
|
hi! link StatusLineTerm StatusLine
|
||||||
|
hi! link StatusLineTermNC StatusLineNC
|
||||||
|
hi! link TabLine StatusLine
|
||||||
|
call <sid>hi('TabLineSel', s:gui01, s:gui04, s:cterm01, s:cterm04, 'none', '')
|
||||||
|
hi! link TabLineFill StatusLine
|
||||||
|
|
||||||
|
call <sid>hi('Title', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('Visual', '', s:gui02, '', s:cterm02, '', '')
|
||||||
|
hi! link VisualNOS Visual
|
||||||
|
call <sid>hi('WarningMsg', s:gui09, '', s:cterm09, '', '', '')
|
||||||
|
call <sid>hi('Whitespace', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('WildMenu', s:guibg, s:gui05, s:ctermbg, s:cterm05, '', '')
|
||||||
|
hi! link WinBar StatusLine
|
||||||
|
hi! link WinBarNC StatusLineNC
|
||||||
|
|
||||||
|
" call <sid>hi('Menu', s:guibg, s:gui05, s:ctermbg, s:cterm05, '', '")
|
||||||
|
" call <sid>hi('Scrollbar', s:guibg, s:gui05, s:ctermbg, s:cterm05, '', '")
|
||||||
|
" call <sid>hi('Tooltip', s:guibg, s:gui05, s:ctermbg, s:cterm05, '', '")
|
||||||
|
|
||||||
|
|
||||||
|
" Standard syntax
|
||||||
|
|
||||||
|
call <sid>hi('Comment', s:gui03, '', s:cterm03, '', 'italic', '')
|
||||||
|
|
||||||
|
call <sid>hi('Constant', s:gui09, '', s:cterm09, '', 'none', '')
|
||||||
|
call <sid>hi('String', s:gui0B, '', s:cterm0B, '', 'italic', '')
|
||||||
|
call <sid>hi('Character', s:gui0C, '', s:cterm0C, '', 'none', '')
|
||||||
|
call <sid>hi('Number', s:gui09, '', s:cterm09, '', 'none', '')
|
||||||
|
call <sid>hi('Boolean', s:gui09, '', s:cterm09, '', 'none', '')
|
||||||
|
call <sid>hi('Float', s:gui09, '', s:cterm09, '', 'none', '')
|
||||||
|
|
||||||
|
" The [spec](https://github.com/tinted-theming/base24/blob/main/styling.md) wants
|
||||||
|
" `Identifier` mapped to base08 aka RED. I do not like it, too much RED.
|
||||||
|
call <sid>hi('Identifier', s:gui05, '', s:cterm05, '', 'none', '')
|
||||||
|
call <sid>hi('Function', s:gui0D, '', s:cterm0D, '', 'none', '')
|
||||||
|
|
||||||
|
call <sid>hi('Statement', s:gui0E, '', s:cterm0E, '', 'bold', '')
|
||||||
|
call <sid>hi('Conditional', s:gui0E, '', s:cterm0E, '', 'none', '')
|
||||||
|
call <sid>hi('Repeat', s:gui0E, '', s:cterm0E, '', 'none', '')
|
||||||
|
call <sid>hi('Label', s:gui0E, '', s:cterm0E, '', 'none', '')
|
||||||
|
call <sid>hi('Operator', s:gui0C, '', s:cterm0C, '', 'none', '')
|
||||||
|
hi! link Keyword Statement
|
||||||
|
call <sid>hi('Exception', s:gui0E, '', s:cterm0E, '', 'none', '')
|
||||||
|
|
||||||
|
call <sid>hi('PreProc', s:gui0C, '', s:cterm0C, '', 'none', '')
|
||||||
|
call <sid>hi('Include', s:gui0C, '', s:cterm0C, '', 'none', '')
|
||||||
|
call <sid>hi('Define', s:gui0C, '', s:cterm0C, '', 'none', '')
|
||||||
|
call <sid>hi('Macro', s:gui0C, '', s:cterm0C, '', 'none', '')
|
||||||
|
call <sid>hi('PreCondit', s:gui0C, '', s:cterm0C, '', 'none', '')
|
||||||
|
|
||||||
|
call <sid>hi('Type', s:gui0A, '', s:cterm0A, '', 'none', '')
|
||||||
|
call <sid>hi('StorageClass', s:gui0A, '', s:cterm0A, '', 'none', '')
|
||||||
|
call <sid>hi('Structure', s:gui0A, '', s:cterm0A, '', 'none', '')
|
||||||
|
call <sid>hi('Typedef', s:gui0A, '', s:cterm0A, '', 'none', '')
|
||||||
|
|
||||||
|
call <sid>hi('Special', s:gui0C, '', s:cterm0C, '', 'none', '')
|
||||||
|
call <sid>hi('SpecialChar', s:gui0A, '', s:cterm0A, '', 'none', '')
|
||||||
|
call <sid>hi('Tag', s:gui09, '', s:cterm09, '', 'none', '')
|
||||||
|
call <sid>hi('Delimiter', s:gui05, '', s:cterm05, '', 'none', '')
|
||||||
|
call <sid>hi('SpecialComment', s:gui0A, '', s:cterm0A, '', 'italic', '')
|
||||||
|
|
||||||
|
call <sid>hi('Debug', s:gui08, '', s:cterm08, '', 'none', '')
|
||||||
|
|
||||||
|
call <sid>hi('Underlined', '', '', '', '', 'underline', '')
|
||||||
|
|
||||||
|
hi! link Ignore Normal
|
||||||
|
|
||||||
|
call <sid>hi('Error', s:gui08, s:guibg, s:cterm08, s:ctermbg, 'bold', '')
|
||||||
|
|
||||||
|
call <sid>hi('Todo', s:gui0C, '', s:cterm0C, '', 'none', '')
|
||||||
|
|
||||||
|
call <sid>hi('Added', s:gui14, '', s:cterm14, '', 'italic', '')
|
||||||
|
call <sid>hi('Changed', s:gui16, '', s:cterm16, '', 'italic', '')
|
||||||
|
call <sid>hi('Removed', s:gui12, '', s:cterm12, '', 'italic', '')
|
||||||
|
|
||||||
|
|
||||||
|
" Treesitter Syntax
|
||||||
|
|
||||||
|
if has('nvim-0.8.0')
|
||||||
|
hi! link @variable Identifier
|
||||||
|
call <sid>hi('@variable.builtin', s:gui05, '', s:cterm05, '', 'italic', '')
|
||||||
|
hi! link @variable.parameter Identifier
|
||||||
|
hi! link @variable.parameter.builtin @variable.builtin
|
||||||
|
call <sid>hi('@variable.member', s:gui04, '', s:cterm04, '', 'none', '')
|
||||||
|
|
||||||
|
hi! link @constant Constant
|
||||||
|
call <sid>hi('@constant.builtin', s:gui09, '', s:cterm09, '', 'italic', '')
|
||||||
|
hi! link @constant.macro Constant
|
||||||
|
|
||||||
|
hi! link @module Identifier
|
||||||
|
call <sid>hi('@module.builtin', s:gui05, '', s:cterm05, '', 'italic', '')
|
||||||
|
hi! link @label Tag
|
||||||
|
|
||||||
|
hi! link @string String
|
||||||
|
hi! link @string.documentation String
|
||||||
|
hi! link @string.regexp SpecialComment
|
||||||
|
hi! link @string.escape SpecialComment
|
||||||
|
hi! link @string.special SpecialComment
|
||||||
|
hi! link @string.special.symbol SpecialComment
|
||||||
|
call <sid>hi('@string.special.path', s:gui0D, '', s:cterm0D, '', 'italic', '')
|
||||||
|
call <sid>hi('@string.special.url', s:gui08, '', s:cterm08, '', 'italic', '')
|
||||||
|
|
||||||
|
hi! link @character Character
|
||||||
|
hi! link @character.special SpecialChar
|
||||||
|
|
||||||
|
hi! link @boolean Boolean
|
||||||
|
hi! link @number Number
|
||||||
|
hi! link @number.float Float
|
||||||
|
|
||||||
|
hi! link @type Type
|
||||||
|
call <sid>hi('@type.builtin', s:gui0A, '', s:cterm0A, '', 'italic', '')
|
||||||
|
hi! link @type.definition Typedef
|
||||||
|
|
||||||
|
hi! link @attribute Special
|
||||||
|
call <sid>hi('@attribute.builtin', s:gui0C, '', s:cterm0C, '', 'italic', '')
|
||||||
|
hi! link @property @variable.member
|
||||||
|
|
||||||
|
call <sid>hi('@function', s:gui16, '', s:cterm16, '', '', '')
|
||||||
|
call <sid>hi('@function.builtin', s:gui16, '', s:cterm16, '', 'italic', '')
|
||||||
|
hi! link @function.call @function
|
||||||
|
hi! link @function.macro Macro
|
||||||
|
|
||||||
|
hi! link @function.method Function
|
||||||
|
hi! link @function.method.call @function.method
|
||||||
|
|
||||||
|
call <sid>hi('@constructor', s:gui0D, '', s:cterm0D, '', 'bold', '')
|
||||||
|
|
||||||
|
hi! link @operator Operator
|
||||||
|
|
||||||
|
hi! link @keyword Keyword
|
||||||
|
hi! link @keyword.coroutine Repeat
|
||||||
|
hi! link @keyword.function Keyword
|
||||||
|
hi! link @keyword.operator Operator
|
||||||
|
call <sid>hi('@keyword.import', s:gui0E, '', s:cterm0E, '', 'italic', '')
|
||||||
|
hi! link @keyword.type Keyword
|
||||||
|
hi! link @keyword.modifier Repeat
|
||||||
|
hi! link @keyword.repeat Repeat
|
||||||
|
hi! link @keyword.return Keyword
|
||||||
|
hi! link @keyword.debug Debug
|
||||||
|
hi! link @keyword.exception Exception
|
||||||
|
|
||||||
|
hi! link @keyword.conditional Conditional
|
||||||
|
hi! link @keyword.ternary Conditional
|
||||||
|
|
||||||
|
hi! link @keyword.directive PreProc
|
||||||
|
hi! link @keyword.directive.define Define
|
||||||
|
|
||||||
|
hi! link @punctuation.delimiter Delimiter
|
||||||
|
hi! link @punctuation.bracket Delimiter
|
||||||
|
hi! link @punctuation.special Special
|
||||||
|
|
||||||
|
hi! link @comment Comment
|
||||||
|
hi! link @comment.documentation Comment
|
||||||
|
|
||||||
|
call <sid>hi('@comment.error', s:gui08, '', s:cterm08, '', 'italic', '')
|
||||||
|
call <sid>hi('@comment.warning', s:gui09, '', s:cterm09, '', 'italic', '')
|
||||||
|
call <sid>hi('@comment.note', s:gui0D, '', s:cterm0D, '', 'italic', '')
|
||||||
|
call <sid>hi('@comment.todo', s:gui0C, '', s:cterm0C, '', 'italic', '')
|
||||||
|
|
||||||
|
if (g:tinted_bold == 1)
|
||||||
|
hi! @markup.strong gui=bold cterm=bold
|
||||||
|
endif
|
||||||
|
if (g:tinted_italic == 1)
|
||||||
|
hi! @markup.italic gui=italic cterm=italic
|
||||||
|
endif
|
||||||
|
if (g:tinted_strikethrough == 1)
|
||||||
|
hi! @markup.strikethrough gui=strikethrough cterm=strikethrough
|
||||||
|
endif
|
||||||
|
if (g:tinted_underline == 1)
|
||||||
|
hi! @markup.underline gui=underline cterm=underline
|
||||||
|
endif
|
||||||
|
|
||||||
|
hi! link @markup.heading Title
|
||||||
|
hi! link @markup.quote String
|
||||||
|
hi! link @markup.math Special
|
||||||
|
|
||||||
|
call <sid>hi('@markup.link', s:gui08, '', s:cterm08, '', '', '')
|
||||||
|
hi! link @markup.link.label @markup.link
|
||||||
|
hi! link @markup.link.url Identifier
|
||||||
|
|
||||||
|
call <sid>hi('@markup.raw', s:gui04, '', s:cterm04, '', '', '')
|
||||||
|
hi! link @markup.raw.block Identifier
|
||||||
|
|
||||||
|
hi! link @markup.list SpecialChar
|
||||||
|
hi! link @markup.list.checked DiagnosticOk
|
||||||
|
hi! link @markup.list.unchecked DiagnosticError
|
||||||
|
|
||||||
|
hi! link @diff.plus Added
|
||||||
|
hi! link @diff.minus Removed
|
||||||
|
hi! link @diff.delta Changed
|
||||||
|
|
||||||
|
hi! link @tag Tag
|
||||||
|
call <sid>hi('@tag.builtin', s:gui09, '', s:cterm09, '', 'italic', '')
|
||||||
|
hi! link @tag.attribute Special
|
||||||
|
hi! link @tag.delimiter Delimiter
|
||||||
|
|
||||||
|
|
||||||
|
" LSP Semantic Token
|
||||||
|
" https://microsoft.github.io/language-server-protocol/specifications/lsp/3.18/specification/#textDocument_semanticTokens
|
||||||
|
hi! link @lsp.type.class @type
|
||||||
|
hi! link @lsp.type.comment @comment
|
||||||
|
hi! link @lsp.type.decorator @attribute
|
||||||
|
hi! link @lsp.type.enum @type
|
||||||
|
hi! link @lsp.type.enumMember @constant
|
||||||
|
hi! link @lsp.type.event @type
|
||||||
|
hi! link @lsp.type.function @function
|
||||||
|
hi! link @lsp.type.interface @type
|
||||||
|
hi! link @lsp.type.keyword @keyword
|
||||||
|
hi! link @lsp.type.macro @function.macro
|
||||||
|
hi! link @lsp.type.method @function.method
|
||||||
|
hi! link @lsp.type.modifier @type.modifier
|
||||||
|
hi! link @lsp.type.namespace @module
|
||||||
|
hi! link @lsp.type.number @number
|
||||||
|
hi! link @lsp.type.operator @operator
|
||||||
|
hi! link @lsp.type.parameter @variable.parameter
|
||||||
|
hi! link @lsp.type.property @property
|
||||||
|
hi! link @lsp.type.regexp @string.regexp
|
||||||
|
hi! link @lsp.type.string @string
|
||||||
|
hi! link @lsp.type.struct @type
|
||||||
|
hi! link @lsp.type.type @type
|
||||||
|
hi! link @lsp.type.typeParameter @variable.parameter
|
||||||
|
hi! link @lsp.type.variable @variable
|
||||||
|
|
||||||
|
" @lsp.mod.abstract Types and member functions that are abstract
|
||||||
|
" @lsp.mod.async Functions that are marked async
|
||||||
|
" @lsp.mod.declaration Declarations of symbols
|
||||||
|
call <sid>hi('@lsp.mod.defaultLibrary', '', '', '', '', 'italic', '')
|
||||||
|
" @lsp.mod.definition Definitions of symbols, for example, in header files
|
||||||
|
hi! link @lsp.mod.deprecated DiagnosticDeprecated
|
||||||
|
" @lsp.mod.modification Variable references where the variable is assigned to
|
||||||
|
" @lsp.mod.readonly Readonly variables and member fields (constants)
|
||||||
|
" @lsp.mod.static
|
||||||
|
|
||||||
|
" Rust
|
||||||
|
hi! link @lsp.type.builtinType.rust @type.builtin
|
||||||
|
hi! link @lsp.type.escapeSequence.rust @string.escape
|
||||||
|
hi! link @lsp.type.formatSpecifier.rust @operator
|
||||||
|
hi! link @lsp.type.lifetime.rust @attribute
|
||||||
|
hi! link @lsp.type.punctuation.rust @punctuation.delimiter
|
||||||
|
hi! link @lsp.type.selfKeyword.rust @variable.builtin
|
||||||
|
hi! link @lsp.type.selfTypeKeyword.rust @type.builtin
|
||||||
|
|
||||||
|
call <sid>hi('@lsp.mod.attribute', '', '', '', '', 'italic', '')
|
||||||
|
hi! link @lsp.mod.controlFlow @keyword.repeat
|
||||||
|
hi! link @lsp.mod.intraDocLink.rust @markup.link
|
||||||
|
|
||||||
|
hi! link @lsp.typemod.generic.injected.rust @variable
|
||||||
|
hi! link @lsp.typemod.operator.controlFlow.rust @operator
|
||||||
|
hi! link @lsp.typemod.function.associated.rust @function.method
|
||||||
|
|
||||||
|
" LUA
|
||||||
|
hi! link @lsp.typemod.keyword.documentation.lua @tag
|
||||||
|
|
||||||
|
" Markdown
|
||||||
|
hi! link @lsp.type.class.markdown @lsp
|
||||||
|
|
||||||
|
|
||||||
|
" LSP not syntax
|
||||||
|
|
||||||
|
hi! link LspReferenceText Search
|
||||||
|
call <sid>hi('LspReferenceRead', s:gui01, s:gui14, s:cterm01, s:cterm14, '', '')
|
||||||
|
call <sid>hi('LspReferenceWrite', s:gui01, s:gui12, s:cterm01, s:cterm12, '', '')
|
||||||
|
hi! link LspCodeLens NonText
|
||||||
|
hi! link LspCodeLensSeparator LspCodeLens
|
||||||
|
hi! link LspInlayHint NonText
|
||||||
|
hi! link LspSignatureActiveParameter Visual
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
" Diagnostics
|
||||||
|
|
||||||
|
call <sid>hi('DiagnosticError', s:gui08, '', s:cterm08, '', '', '')
|
||||||
|
call <sid>hi('DiagnosticWarn', s:gui09, '', s:cterm09, '', '', '')
|
||||||
|
call <sid>hi('DiagnosticInfo', s:gui0C, '', s:cterm0C, '', '', '')
|
||||||
|
call <sid>hi('DiagnosticHint', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('DiagnosticOk', s:gui0B, '', s:cterm0B, '', '', '')
|
||||||
|
|
||||||
|
call <sid>hi('DiagnosticUnderlineError', '', '', s:ctermbg, s:cterm08, 'underline', s:gui08)
|
||||||
|
call <sid>hi('DiagnosticUnderlineWarn', '', '', s:ctermbg, s:cterm09, 'underline', s:gui09)
|
||||||
|
call <sid>hi('DiagnosticUnderlineInfo', '', '', s:ctermbg, s:cterm0C, 'underline', s:gui0C)
|
||||||
|
call <sid>hi('DiagnosticUnderlineHint', '', '', s:ctermbg, s:cterm0D, 'underline', s:gui0D)
|
||||||
|
call <sid>hi('DiagnosticUnderlineOk', '', '', s:ctermbg, s:cterm0B, 'underline', s:gui0B)
|
||||||
|
|
||||||
|
call <sid>hi('DiagnosticFloatingError', s:gui08, s:gui01, s:cterm08, s:cterm01, '', '')
|
||||||
|
call <sid>hi('DiagnosticFloatingWarn', s:gui09, s:gui01, s:cterm09, s:cterm01, '', '')
|
||||||
|
call <sid>hi('DiagnosticFloatingInfo', s:gui0C, s:gui01, s:cterm0C, s:cterm01, '', '')
|
||||||
|
call <sid>hi('DiagnosticFloatingHint', s:gui0D, s:gui01, s:cterm0D, s:cterm01, '', '')
|
||||||
|
call <sid>hi('DiagnosticFloatingOk', s:gui0B, s:gui01, s:cterm0B, s:cterm01, '', '')
|
||||||
|
|
||||||
|
call <sid>hi('DiagnosticDeprecated', '', '', s:cterm0F, s:cterm0F, 'strikethrough', '')
|
||||||
|
hi! link DiagnosticUnnecessary Comment
|
||||||
|
|
||||||
|
|
||||||
|
" Syntax Files
|
||||||
|
|
||||||
|
" C
|
||||||
|
call <sid>hi('cOperator', s:gui0C, '', s:cterm0C, '', '', '')
|
||||||
|
call <sid>hi('cPreCondit', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
|
||||||
|
" CSS
|
||||||
|
call <sid>hi('cssBraces', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
call <sid>hi('cssClassName', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('cssColor', s:gui0C, '', s:cterm0C, '', '', '')
|
||||||
|
|
||||||
|
" C#
|
||||||
|
call <sid>hi('csClass', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('csAttribute', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('csModifier', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('csType', s:gui08, '', s:cterm08, '', '', '')
|
||||||
|
call <sid>hi('csUnspecifiedStatement', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('csContextualStatement', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('csNewDecleration', s:gui08, '', s:cterm08, '', '', '')
|
||||||
|
|
||||||
|
" Git
|
||||||
|
call <sid>hi('GitAddSign', s:gui14, '', s:cterm14, '', '', '')
|
||||||
|
call <sid>hi('GitChangeSign', s:gui04, '', s:cterm04, '', '', '')
|
||||||
|
call <sid>hi('GitDeleteSign', s:gui12, '', s:cterm12, '', '', '')
|
||||||
|
call <sid>hi('GitChangeDeleteSign', s:gui12, '', s:cterm12, '', '', '')
|
||||||
|
|
||||||
|
" Gitcommit
|
||||||
|
call <sid>hi('gitcommitOverflow', s:gui08, '', s:cterm08, '', '', '')
|
||||||
|
call <sid>hi('gitcommitSummary', s:gui0B, '', s:cterm0B, '', '', '')
|
||||||
|
call <sid>hi('gitcommitComment', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('gitcommitUntracked', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('gitcommitDiscarded', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('gitcommitSelected', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('gitcommitHeader', s:gui17, '', s:cterm17, '', '', '')
|
||||||
|
call <sid>hi('gitcommitSelectedType', s:gui16, '', s:cterm16, '', '', '')
|
||||||
|
call <sid>hi('gitcommitUnmergedType', s:gui16, '', s:cterm16, '', '', '')
|
||||||
|
call <sid>hi('gitcommitDiscardedType', s:gui16, '', s:cterm16, '', '', '')
|
||||||
|
call <sid>hi('gitcommitBranch', s:gui13, '', s:cterm13, '', 'bold', '')
|
||||||
|
call <sid>hi('gitcommitUntrackedFile', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('gitcommitUnmergedFile', s:gui08, '', s:cterm08, '', 'bold', '')
|
||||||
|
call <sid>hi('gitcommitDiscardedFile', s:gui08, '', s:cterm08, '', 'bold', '')
|
||||||
|
call <sid>hi('gitcommitSelectedFile', s:gui0B, '', s:cterm0B, '', 'bold', '')
|
||||||
|
|
||||||
|
" Gitsigns
|
||||||
|
call <sid>hi('GitSignsAddInline', s:gui14, s:gui02, s:cterm14, s:cterm02, '', '')
|
||||||
|
call <sid>hi('GitSignsChangeInline', s:gui16, s:gui02, s:cterm16, s:cterm02, '', '')
|
||||||
|
call <sid>hi('GitSignsDeleteLnInline', s:gui12, s:gui02, s:cterm12, s:cterm02, '', '')
|
||||||
|
call <sid>hi('GitSignsDeleteVirtLnInline', s:gui16, s:gui02, s:cterm16, s:cterm02, '', '')
|
||||||
|
call <sid>hi('GitSignsDeleteVirtLn', s:gui05, s:gui02, s:cterm05, s:cterm02, '', '')
|
||||||
|
|
||||||
|
" HTML
|
||||||
|
call <sid>hi('htmlBold', s:gui05, '', s:cterm0A, '', 'bold', '')
|
||||||
|
call <sid>hi('htmlItalic', s:gui05, '', s:cterm17, '', 'italic', '')
|
||||||
|
call <sid>hi('htmlEndTag', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
call <sid>hi('htmlTag', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
|
||||||
|
" JavaScript
|
||||||
|
call <sid>hi('javaScript', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
call <sid>hi('javaScriptBraces', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
call <sid>hi('javaScriptNumber', s:gui09, '', s:cterm09, '', '', '')
|
||||||
|
|
||||||
|
" Mail
|
||||||
|
call <sid>hi('mailQuoted1', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('mailQuoted2', s:gui0B, '', s:cterm0B, '', '', '')
|
||||||
|
call <sid>hi('mailQuoted3', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('mailQuoted4', s:gui0C, '', s:cterm0C, '', '', '')
|
||||||
|
call <sid>hi('mailQuoted5', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('mailQuoted6', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('mailURL', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('mailEmail', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
|
||||||
|
" Markdown
|
||||||
|
call <sid>hi('markdownCode', s:gui0B, '', s:cterm0B, '', '', '')
|
||||||
|
call <sid>hi('markdownError', s:gui05, s:guibg, s:cterm05, s:ctermbg, '', '')
|
||||||
|
call <sid>hi('markdownCodeBlock', s:gui0B, '', s:cterm0B, '', '', '')
|
||||||
|
call <sid>hi('markdownHeadingDelimiter', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
|
||||||
|
" Neogit
|
||||||
|
|
||||||
|
hi! link NeogitHunkHeader Special
|
||||||
|
hi! link NeogitDiffHeader Directory
|
||||||
|
call <sid>hi('NeogitDiffContext', s:gui03, '', s:cterm03, '', 'italic', '')
|
||||||
|
hi! link NeogitDiffAdd Added
|
||||||
|
hi! link NeogitDiffDelete Removed
|
||||||
|
|
||||||
|
hi! link NeogitHunkHeaderHighlight Special
|
||||||
|
hi! link NeogitDiffHeaderHighlight Directory
|
||||||
|
call <sid>hi('NeogitDiffContextHighlight', s:gui03, s:guibg, s:cterm03, s:ctermbg, 'italic', '')
|
||||||
|
call <sid>hi('NeogitDiffContextCursor', '', s:guibg, "", s:ctermbg, 'italic', '')
|
||||||
|
hi! link NeogitDiffAddHighlight Added
|
||||||
|
hi! link NeogitDiffDeleteHighlight Removed
|
||||||
|
|
||||||
|
hi! link NeogitHunkHeaderCursor Special
|
||||||
|
hi! link NeogitDiffHeaderCursor Directory
|
||||||
|
hi! link NeogitDiffAddCursor Added
|
||||||
|
hi! link NeogitDiffDeleteCursor Removed
|
||||||
|
|
||||||
|
" PHP
|
||||||
|
call <sid>hi('phpMemberSelector', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
call <sid>hi('phpComparison', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
call <sid>hi('phpParent', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
call <sid>hi('phpMethodsVar', s:gui0C, '', s:cterm0C, '', '', '')
|
||||||
|
|
||||||
|
" Python
|
||||||
|
call <sid>hi('pythonOperator', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('pythonRepeat', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('pythonInclude', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('pythonStatement', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
|
||||||
|
" Ruby
|
||||||
|
call <sid>hi('rubyAttribute', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('rubyConstant', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('rubyInterpolationDelimiter', s:gui0F, '', s:cterm0F, '', '', '')
|
||||||
|
call <sid>hi('rubyRegexp', s:gui0C, '', s:cterm0C, '', '', '')
|
||||||
|
call <sid>hi('rubySymbol', s:gui0B, '', s:cterm0B, '', '', '')
|
||||||
|
call <sid>hi('rubyStringDelimiter', s:gui0B, '', s:cterm0B, '', '', '')
|
||||||
|
|
||||||
|
" SASS
|
||||||
|
call <sid>hi('sassidChar', s:gui08, '', s:cterm08, '', '', '')
|
||||||
|
call <sid>hi('sassClassChar', s:gui09, '', s:cterm09, '', '', '')
|
||||||
|
call <sid>hi('sassInclude', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('sassMixing', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('sassMixinName', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
|
||||||
|
" Java
|
||||||
|
call <sid>hi('javaOperator', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
|
||||||
|
" Plugins
|
||||||
|
|
||||||
|
" Clap
|
||||||
|
hi! link ClapInput ColorColumn
|
||||||
|
hi! link ClapSpinner ColorColumn
|
||||||
|
hi! link ClapDisplay Default
|
||||||
|
hi! link ClapPreview ColorColumn
|
||||||
|
hi! link ClapCurrentSelection CursorLine
|
||||||
|
hi! link ClapNoMatchesFound ErrorFloat
|
||||||
|
|
||||||
|
" Coc
|
||||||
|
hi! link CocErrorSign DiagnosticError
|
||||||
|
hi! link CocWarningSign DiagnosticWarn
|
||||||
|
hi! link CocInfoSign DiagnosticInfo
|
||||||
|
hi! link CocHintSign DiagnosticHint
|
||||||
|
|
||||||
|
hi! link CocErrorFloat DiagnosticFloatingError
|
||||||
|
hi! link CocWarningFloat DiagnosticFloatingWarn
|
||||||
|
hi! link CocInfoFloat DiagnosticFloatingInfo
|
||||||
|
hi! link CocHintFloat DiagnosticFloatingHint
|
||||||
|
|
||||||
|
hi! link CocErrorHighlight DiagnosticError
|
||||||
|
hi! link CocWarningHighlight DiagnosticWarn
|
||||||
|
hi! link CocInfoHighlight DiagnosticInfo
|
||||||
|
hi! link CocHintHighlight DiagnosticHint
|
||||||
|
|
||||||
|
hi! link CocSem_angle Keyword
|
||||||
|
hi! link CocSem_annotation Keyword
|
||||||
|
hi! link CocSem_attribute Type
|
||||||
|
hi! link CocSem_bitwise Keyword
|
||||||
|
hi! link CocSem_boolean Boolean
|
||||||
|
hi! link CocSem_brace Normal
|
||||||
|
hi! link CocSem_bracket Normal
|
||||||
|
hi! link CocSem_builtinAttribute Type
|
||||||
|
hi! link CocSem_builtinType Type
|
||||||
|
hi! link CocSem_character String
|
||||||
|
hi! link CocSem_class Structure
|
||||||
|
hi! link CocSem_colon Normal
|
||||||
|
hi! link CocSem_comma Normal
|
||||||
|
hi! link CocSem_comment Comment
|
||||||
|
hi! link CocSem_comparison Keyword
|
||||||
|
hi! link CocSem_concept Keyword
|
||||||
|
hi! link CocSem_constParameter Identifier
|
||||||
|
hi! link CocSem_dependent Keyword
|
||||||
|
hi! link CocSem_dot Keyword
|
||||||
|
hi! link CocSem_enum Structure
|
||||||
|
hi! link CocSem_enumMember Constant
|
||||||
|
hi! link CocSem_escapeSequence Type
|
||||||
|
hi! link CocSem_event Identifier
|
||||||
|
hi! link CocSem_formatSpecifier Type
|
||||||
|
hi! link CocSem_function Function
|
||||||
|
hi! link CocSem_interface Type
|
||||||
|
hi! link CocSem_keyword Keyword
|
||||||
|
hi! link CocSem_label Keyword
|
||||||
|
hi! link CocSem_logical Keyword
|
||||||
|
hi! link CocSem_macro Macro
|
||||||
|
hi! link CocSem_method Function
|
||||||
|
hi! link CocSem_modifier Keyword
|
||||||
|
hi! link CocSem_namespace Identifier
|
||||||
|
hi! link CocSem_number Number
|
||||||
|
hi! link CocSem_operator Operator
|
||||||
|
hi! link CocSem_parameter Identifier
|
||||||
|
hi! link CocSem_parenthesis Normal
|
||||||
|
hi! link CocSem_property Identifier
|
||||||
|
hi! link CocSem_punctuation Keyword
|
||||||
|
hi! link CocSem_regexp Type
|
||||||
|
hi! link CocSem_selfKeyword Constant
|
||||||
|
hi! link CocSem_semicolon Normal
|
||||||
|
hi! link CocSem_string String
|
||||||
|
hi! link CocSem_struct Structure
|
||||||
|
hi! link CocSem_type Type
|
||||||
|
hi! link CocSem_typeAlias Type
|
||||||
|
hi! link CocSem_typeParameter Type
|
||||||
|
hi! link CocSem_unknown Normal
|
||||||
|
hi! link CocSem_variable Identifier
|
||||||
|
|
||||||
|
call <sid>hi('CocHighlightRead', s:gui0B, s:gui01, s:cterm0B, s:cterm01, '', '')
|
||||||
|
call <sid>hi('CocHighlightText', s:gui0A, s:gui01, s:cterm0A, s:cterm01, '', '')
|
||||||
|
call <sid>hi('CocHighlightWrite', s:gui08, s:gui01, s:cterm08, s:cterm01, '', '')
|
||||||
|
call <sid>hi('CocListMode', s:gui01, s:gui0B, s:cterm01, s:cterm0B, 'bold', '')
|
||||||
|
call <sid>hi('CocListPath', s:gui01, s:gui0B, s:cterm01, s:cterm0B, '', '')
|
||||||
|
call <sid>hi('CocSessionsName', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
|
||||||
|
" fugtive
|
||||||
|
hi link diffAdded GitAddSign
|
||||||
|
hi link diffChanged GitChangeSign
|
||||||
|
hi link diffRemoved GitDeleteSign
|
||||||
|
|
||||||
|
" CMP
|
||||||
|
" https://microsoft.github.io/language-server-protocol/specifications/lsp/3.18/specification/#completionItemKind
|
||||||
|
if has('nvim-0.8.0')
|
||||||
|
hi! link CmpItemAbbrDeprecated Deprecated
|
||||||
|
hi! link CmpItemAbbrMatch PMenuMatch
|
||||||
|
hi! link CmpItemAbbrMatchFuzzy PMenuMatch
|
||||||
|
hi! link CmpItemKindClass @lsp.type.class
|
||||||
|
hi! link CmpItemKindColor @lsp.type.keyword
|
||||||
|
hi! link CmpItemKindConstant @constant
|
||||||
|
hi! link CmpItemKindConstructor @constructor
|
||||||
|
hi! link CmpItemKindEnum @lsp.type.enum
|
||||||
|
hi! link CmpItemKindEnumMember @lsp.type.enumMember
|
||||||
|
hi! link CmpItemKindEvent @lsp.type.event
|
||||||
|
hi! link CmpItemKindField @lsp.type.property
|
||||||
|
hi! link CmpItemKindFile @string.special.path
|
||||||
|
hi! link CmpItemKindFolder @string.special.path
|
||||||
|
hi! link CmpItemKindFunction @lsp.type.function
|
||||||
|
hi! link CmpItemKindInterface @lsp.type.interface
|
||||||
|
hi! link CmpItemKindKeyword @lsp.type.keyword
|
||||||
|
hi! link CmpItemKindMethod @lsp.type.method
|
||||||
|
hi! link CmpItemKindModule @lsp.type.namespace
|
||||||
|
hi! link CmpItemKindOperator @lsp.type.operator
|
||||||
|
hi! link CmpItemKindProperty @lsp.type.property
|
||||||
|
hi! link CmpItemKindReference @lsp.type.variable
|
||||||
|
hi! link CmpItemKindSnippet @lsp.type.string
|
||||||
|
hi! link CmpItemKindStruct @lsp.type.struct
|
||||||
|
hi! link CmpItemKindText @lsp.type.string
|
||||||
|
hi! link CmpItemKindTypeParameter @lsp.type.typeParameter
|
||||||
|
hi! link CmpItemKindUnit @lsp.type.namespace
|
||||||
|
hi! link CmpItemKindValue @constant
|
||||||
|
hi! link CmpItemKindVariable @lsp.type.variable
|
||||||
|
endif
|
||||||
|
|
||||||
|
" GitGutter
|
||||||
|
hi! link GitGutterAdd GitAddSign
|
||||||
|
hi! link GitGutterChange GitChangeSign
|
||||||
|
hi! link GitGutterDelete GitDeleteSign
|
||||||
|
hi! link GitGutterChangeDelete GitChangeDeleteSign
|
||||||
|
|
||||||
|
" indent-blankline
|
||||||
|
if has('nvim')
|
||||||
|
call <sid>hi('@ibl.indent.char', s:gui01, '', s:cterm01, '', '', '')
|
||||||
|
endif
|
||||||
|
|
||||||
|
" pangloss/vim-javascript
|
||||||
|
call <sid>hi('jsOperator', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('jsStatement', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('jsReturn', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('jsThis', s:gui08, '', s:cterm08, '', '', '')
|
||||||
|
call <sid>hi('jsClassDefinition', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('jsFunction', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('jsFuncName', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('jsFuncCall', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('jsClassFuncName', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('jsClassMethodType', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('jsRegexpString', s:gui0C, '', s:cterm0C, '', '', '')
|
||||||
|
call <sid>hi('jsGlobalObjects', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('jsGlobalNodeObjects', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('jsExceptions', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
call <sid>hi('jsBuiltins', s:gui0A, '', s:cterm0A, '', '', '')
|
||||||
|
|
||||||
|
" Matchup
|
||||||
|
call <sid>hi('MatchWord', s:gui0B, s:gui01, s:cterm0B, s:cterm01, 'underline', '')
|
||||||
|
|
||||||
|
" NERDTree
|
||||||
|
call <sid>hi('NERDTreeDirSlash', s:gui0D, '', s:cterm0D, '', '', '')
|
||||||
|
call <sid>hi('NERDTreeExecFile', s:gui05, '', s:cterm05, '', '', '')
|
||||||
|
|
||||||
|
" Signify
|
||||||
|
hi! link SignifySignAdd GitAddSign
|
||||||
|
hi! link SignifySignChange GitChangeSign
|
||||||
|
hi! link SignifySignDelete GitDeleteSign
|
||||||
|
|
||||||
|
" Startify
|
||||||
|
call <sid>hi('StartifyBracket', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('StartifyFile', s:gui07, '', s:cterm07, '', '', '')
|
||||||
|
call <sid>hi('StartifyFooter', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('StartifyHeader', s:gui0B, '', s:cterm0B, '', '', '')
|
||||||
|
call <sid>hi('StartifyNumber', s:gui09, '', s:cterm09, '', '', '')
|
||||||
|
call <sid>hi('StartifyPath', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('StartifySection', s:gui0E, '', s:cterm0E, '', '', '')
|
||||||
|
call <sid>hi('StartifySelect', s:gui0C, '', s:cterm0C, '', '', '')
|
||||||
|
call <sid>hi('StartifySlash', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
call <sid>hi('StartifySpecial', s:gui03, '', s:cterm03, '', '', '')
|
||||||
|
|
||||||
|
" Remove functions
|
||||||
|
delf <sid>hi
|
||||||
|
|
||||||
|
" Remove color variables
|
||||||
|
unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F s:guibg s:gui10 s:gui11 s:gui12 s:gui13 s:gui14 s:gui15 s:gui16 s:gui17
|
||||||
|
unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F s:ctermbg s:cterm10 s:cterm11 s:cterm12 s:cterm13 s:cterm14 s:cterm15 s:cterm16 s:cterm17
|
||||||
@@ -8,9 +8,11 @@
|
|||||||
" :colorscheme works in terminals supported by base16-shell scripts
|
" :colorscheme works in terminals supported by base16-shell scripts
|
||||||
" User must set this variable in .vimrc
|
" User must set this variable in .vimrc
|
||||||
" let g:base16_shell_path=base16-builder/output/shell/
|
" let g:base16_shell_path=base16-builder/output/shell/
|
||||||
|
|
||||||
if !has("gui_running")
|
if !has("gui_running")
|
||||||
if exists("g:base16_shell_path")
|
if exists("g:base16_shell_path")
|
||||||
execute "silent !/bin/sh ".g:base16_shell_path."/base16-{{scheme-slug}}.sh"
|
" execute "silent !/bin/sh ".g:base16_shell_path."/base16-{{scheme-slug}}.sh"
|
||||||
|
execute "silent !/bin/sh $HOME/.cache/theme/variables.sh"
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -145,7 +147,7 @@ endif
|
|||||||
" Theme setup
|
" Theme setup
|
||||||
hi clear
|
hi clear
|
||||||
syntax reset
|
syntax reset
|
||||||
let g:colors_name = "base16-{{scheme-slug}}"
|
let g:colors_name = "theme"
|
||||||
|
|
||||||
" Highlighting function
|
" Highlighting function
|
||||||
" Optional variables are attributes and guisp
|
" Optional variables are attributes and guisp
|
||||||
@@ -405,6 +407,10 @@ call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
|
|||||||
" Java highlighting
|
" Java highlighting
|
||||||
call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
|
call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
|
||||||
|
|
||||||
|
" diagnostics
|
||||||
|
call <sid>hi("NormalFloat", s:gui05, s:gui01, s:cterm05, s:cterm01, "", "")
|
||||||
|
" call <sid>hi("FloatBorder", s:gui0A, s:gui0A, s:cterm0A, s:cterm0A, "", "")
|
||||||
|
|
||||||
" Remove functions
|
" Remove functions
|
||||||
delf <sid>hi
|
delf <sid>hi
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
export PATH=$HOME/.config/bin/$(cat /etc/hostname):$HOME/.config/bin:$HOME/.local/bin:$HOME/.local/share/texlive/2023/bin/x86_64-linux:$HOME/.local/share/cargo/bin:/home/emh/.local/share/solana/install/active_release/bin:$HOME/.local/share/npm/bin:$PATH
|
export PATH=$HOME/.config/bin/$(cat /etc/hostname):$HOME/.config/bin:$HOME/.local/bin:$HOME/.local/share/texlive/2026/bin/x86_64-linux:$HOME/.local/share/cargo/bin:/home/emh/.local/share/solana/install/active_release/bin:$HOME/.local/share/npm/bin:$HOME/.nargo:$PATH
|
||||||
export MANPATH=$MANPATH:$HOME/.local/share/texlive/2023/texmf-dist/doc/man
|
export MANPATH=$MANPATH:$HOME/.local/share/texlive/2026/texmf-dist/doc/man
|
||||||
export INFOPATH=$INFOPATH:$HOME/.local/share/texlive/2023/texmf-dist/doc/info
|
export INFOPATH=$INFOPATH:$HOME/.local/share/texlive/2026/texmf-dist/doc/info
|
||||||
|
export PATH="$PATH:/home/emh/.config/.foundry/bin"
|
||||||
|
export PATH="/home/emh/documents/tob/nrt/depot_tools:$PATH"
|
||||||
|
|
||||||
. "$HOME"/.cache/theme/colors.sh
|
. "$HOME"/.cache/theme/colors.sh
|
||||||
. "$HOME"/.cache/theme/variables.sh
|
. "$HOME"/.cache/theme/variables.sh
|
||||||
@@ -8,7 +10,7 @@ export INFOPATH=$INFOPATH:$HOME/.local/share/texlive/2023/texmf-dist/doc/info
|
|||||||
setopt vi
|
setopt vi
|
||||||
|
|
||||||
alias gef='gdb --eval-command="source /usr/share/gef/gef.py"'
|
alias gef='gdb --eval-command="source /usr/share/gef/gef.py"'
|
||||||
alias pwndbg='gdb --eval-command="source $XDG_DATA_HOME/pwndbg/pwndbg/gdbinit.py"'
|
# alias pwndbg='gdb --eval-command="source $XDG_DATA_HOME/pwndbg/pwndbg/gdbinit.py"'
|
||||||
alias wget='wget --hsts-file="$XDG_DATA_HOME/wget-hsts"'
|
alias wget='wget --hsts-file="$XDG_DATA_HOME/wget-hsts"'
|
||||||
alias neofetch='neofetch --kitty $XDG_CONFIG_HOME/neofetch/$(hostname).png --size 400px'
|
alias neofetch='neofetch --kitty $XDG_CONFIG_HOME/neofetch/$(hostname).png --size 400px'
|
||||||
alias la='exa -lah --icons'
|
alias la='exa -lah --icons'
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ export LESSKEY="$XDG_DATA_HOME"/less/keys
|
|||||||
export RANDFILE="$XDG_DATA_HOME"/rnd
|
export RANDFILE="$XDG_DATA_HOME"/rnd
|
||||||
export PYTHONSTARTUP="$XDG_CONFIG_HOME"/python/pythonrc
|
export PYTHONSTARTUP="$XDG_CONFIG_HOME"/python/pythonrc
|
||||||
export OPAMROOT="$XDG_DATA_HOME"/opam
|
export OPAMROOT="$XDG_DATA_HOME"/opam
|
||||||
|
export COQBIN="$OPAMROOT/4.14.2/bin"
|
||||||
|
|
||||||
export TEXMFHOME="$XDG_CONFIG_HOME"/texmf
|
export TEXMFHOME="$XDG_CONFIG_HOME"/texmf
|
||||||
export TEXMFVAR="$XDG_CACHE_HOME"/texmf-var
|
export TEXMFVAR="$XDG_CACHE_HOME"/texmf-var
|
||||||
|
|||||||
Reference in New Issue
Block a user