Compare commits
5 Commits
3d4f13be75
...
07c24bdafd
Author | SHA1 | Date | |
---|---|---|---|
07c24bdafd | |||
42ec292e7c | |||
20381a149d | |||
38f84a6dd9 | |||
ce6295b69a |
@ -1,6 +1,5 @@
|
|||||||
vim.cmd("source " .. vim.fn.expand("$HOME") .. "/.vimrc")
|
vim.cmd("source " .. vim.env.HOME .. "/.vimrc")
|
||||||
|
|
||||||
local use_google = require("utils").use_google
|
|
||||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||||
if not vim.loop.fs_stat(lazypath) then
|
if not vim.loop.fs_stat(lazypath) then
|
||||||
vim.fn.system({
|
vim.fn.system({
|
||||||
@ -12,6 +11,8 @@ if not vim.loop.fs_stat(lazypath) then
|
|||||||
})
|
})
|
||||||
end
|
end
|
||||||
vim.opt.rtp:prepend(lazypath)
|
vim.opt.rtp:prepend(lazypath)
|
||||||
|
vim.opt.rtp:prepend(vim.env.HOME .. "/.vim")
|
||||||
|
vim.opt.rtp:prepend(vim.env.HOME .. "/.vim/lua")
|
||||||
|
|
||||||
package.path = package.path .. ";" .. vim.env.HOME .. "/.vim/lua/?.lua"
|
package.path = package.path .. ";" .. vim.env.HOME .. "/.vim/lua/?.lua"
|
||||||
|
|
||||||
@ -19,8 +20,10 @@ local plugins = {
|
|||||||
-- this entry tells lazy.nvim to load the list of of *.lua files from plugins/
|
-- this entry tells lazy.nvim to load the list of of *.lua files from plugins/
|
||||||
{ import = "plugins" },
|
{ import = "plugins" },
|
||||||
}
|
}
|
||||||
require("lazy").setup(plugins)
|
|
||||||
require("config.clipboard")
|
require("config.clipboard")
|
||||||
|
require("config.tmpl")
|
||||||
require("config.zip")
|
require("config.zip")
|
||||||
|
|
||||||
|
require("lazy").setup(plugins)
|
||||||
|
|
||||||
vim.opt.undodir = vim.fn.expand("$HOME") .. "/.undo/"
|
vim.opt.undodir = vim.fn.expand("$HOME") .. "/.undo/"
|
||||||
|
83
config/.config/nvim/syntax/gotmpl.vim
Normal file
83
config/.config/nvim/syntax/gotmpl.vim
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
" Copyright 2011 The Go Authors. All rights reserved.
|
||||||
|
" Use of this source code is governed by a BSD-style
|
||||||
|
" license that can be found in the LICENSE file.
|
||||||
|
"
|
||||||
|
" gotpl.vim: Vim syntax file for Go templates.
|
||||||
|
|
||||||
|
" Quit when a (custom) syntax file was already loaded
|
||||||
|
if exists("b:current_syntax")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
syn case match
|
||||||
|
|
||||||
|
" Go escapes
|
||||||
|
syn match goEscapeOctal display contained "\\[0-7]\{3}"
|
||||||
|
syn match goEscapeC display contained +\\[abfnrtv\\'"]+
|
||||||
|
syn match goEscapeX display contained "\\x\x\{2}"
|
||||||
|
syn match goEscapeU display contained "\\u\x\{4}"
|
||||||
|
syn match goEscapeBigU display contained "\\U\x\{8}"
|
||||||
|
syn match goEscapeError display contained +\\[^0-7xuUabfnrtv\\'"]+
|
||||||
|
|
||||||
|
hi def link goEscapeOctal goSpecialString
|
||||||
|
hi def link goEscapeC goSpecialString
|
||||||
|
hi def link goEscapeX goSpecialString
|
||||||
|
hi def link goEscapeU goSpecialString
|
||||||
|
hi def link goEscapeBigU goSpecialString
|
||||||
|
hi def link goSpecialString Special
|
||||||
|
hi def link goEscapeError Error
|
||||||
|
|
||||||
|
" Strings and their contents
|
||||||
|
syn cluster goStringGroup contains=goEscapeOctal,goEscapeC,goEscapeX,goEscapeU,goEscapeBigU,goEscapeError
|
||||||
|
syn region goString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@goStringGroup
|
||||||
|
syn region goRawString contained start=+`+ end=+`+
|
||||||
|
|
||||||
|
hi def link goString String
|
||||||
|
hi def link goRawString String
|
||||||
|
|
||||||
|
" Characters; their contents
|
||||||
|
syn cluster goCharacterGroup contains=goEscapeOctal,goEscapeC,goEscapeX,goEscapeU,goEscapeBigU
|
||||||
|
syn region goCharacter start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@goCharacterGroup
|
||||||
|
|
||||||
|
hi def link goCharacter Character
|
||||||
|
|
||||||
|
" Integers
|
||||||
|
syn match goDecimalInt contained "\<\d\+\([Ee]\d\+\)\?\>"
|
||||||
|
syn match goHexadecimalInt contained "\<0x\x\+\>"
|
||||||
|
syn match goOctalInt contained "\<0\o\+\>"
|
||||||
|
syn match goOctalError contained "\<0\o*[89]\d*\>"
|
||||||
|
syn cluster goInt contains=goDecimalInt,goHexadecimalInt,goOctalInt
|
||||||
|
" Floating point
|
||||||
|
syn match goFloat contained "\<\d\+\.\d*\([Ee][-+]\d\+\)\?\>"
|
||||||
|
syn match goFloat contained "\<\.\d\+\([Ee][-+]\d\+\)\?\>"
|
||||||
|
syn match goFloat contained "\<\d\+[Ee][-+]\d\+\>"
|
||||||
|
" Imaginary literals
|
||||||
|
syn match goImaginary contained "\<\d\+i\>"
|
||||||
|
syn match goImaginary contained "\<\d\+\.\d*\([Ee][-+]\d\+\)\?i\>"
|
||||||
|
syn match goImaginary contained "\<\.\d\+\([Ee][-+]\d\+\)\?i\>"
|
||||||
|
syn match goImaginary contained "\<\d\+[Ee][-+]\d\+i\>"
|
||||||
|
|
||||||
|
hi def link goInt Number
|
||||||
|
hi def link goFloat Number
|
||||||
|
hi def link goImaginary Number
|
||||||
|
|
||||||
|
" Token groups
|
||||||
|
syn cluster gotplLiteral contains=goString,goRawString,goCharacter,@goInt,goFloat,goImaginary
|
||||||
|
syn keyword gotplControl contained if else end range with template
|
||||||
|
syn keyword gotplFunctions contained and html index js len not or print printf println urlquery eq ne lt le gt ge
|
||||||
|
syn match gotplVariable contained /\$[^ ]*\>/
|
||||||
|
syn match goTplIdentifier contained /\.[^ ]*\>/
|
||||||
|
|
||||||
|
hi def link gotplControl Keyword
|
||||||
|
hi def link gotplFunctions Function
|
||||||
|
hi def link goTplVariable Special
|
||||||
|
|
||||||
|
syn region gotplAction start="{{" end="}}" contains=@gotplLiteral,gotplControl,gotplFunctions,gotplVariable,goTplIdentifier display
|
||||||
|
syn region gotplAction start="\[\[" end="\]\]" contains=@gotplLiteral,gotplControl,gotplFunctions,gotplVariable display
|
||||||
|
syn region goTplComment start="{{/\*" end="\*/}}" display
|
||||||
|
syn region goTplComment start="\[\[/\*" end="\*/\]\]" display
|
||||||
|
|
||||||
|
hi def link gotplAction PreProc
|
||||||
|
hi def link goTplComment Comment
|
||||||
|
|
||||||
|
let b:current_syntax = "gotmpl"
|
@ -1,7 +0,0 @@
|
|||||||
vim.cmd([[
|
|
||||||
function UnusedDeps() abort
|
|
||||||
exe VimuxRunCommand("unused_deps --nouse_build_api --blaze_options='--config=gmscore_tap' " . join(blaze#GetTargets(), ' '))
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
nnoremap <Leader>ud :call UnusedDeps()<cr>
|
|
||||||
]])
|
|
@ -1,30 +0,0 @@
|
|||||||
local map = require("utils").map
|
|
||||||
local use_google = require("utils").use_google
|
|
||||||
|
|
||||||
if use_google() then
|
|
||||||
-- [F]ig [S]tatus
|
|
||||||
map("n", "<leader>fs", [[<cmd>lua require('telescope').extensions.fig.status{}<CR>]])
|
|
||||||
|
|
||||||
-- [F]ig [X]l
|
|
||||||
map("n", "<leader>fx", [[<cmd>lua require('telescope').extensions.fig.xl{}<CR>]])
|
|
||||||
|
|
||||||
-- [F]ig [W]hatsout
|
|
||||||
map("n", "<leader>fw", [[<cmd>lua require('telescope').extensions.fig.status{whatsout=true}<CR>]])
|
|
||||||
|
|
||||||
-- [F]ig [A]mend
|
|
||||||
map("n", "<leader>fa", [[<cmd>Hg amend<CR>]])
|
|
||||||
|
|
||||||
-- [F]ig [A]mend
|
|
||||||
map("n", "<leader>fe", [[<cmd>Hg evolve<CR>]])
|
|
||||||
|
|
||||||
-- [F]ig [N]ext
|
|
||||||
map("n", "<leader>fn", [[<cmd>Hg next<CR>]])
|
|
||||||
--
|
|
||||||
-- [F]ig [P]rev
|
|
||||||
map("n", "<leader>fp", [[<cmd>Hg prev<CR>]])
|
|
||||||
--
|
|
||||||
-- [F]ig [U]pload
|
|
||||||
map("n", "<leader>fu", [[<cmd>Hg upload tree<CR>]])
|
|
||||||
|
|
||||||
-- map('n', '<Leader>f', ':Figtree<CR>', { silent = true })
|
|
||||||
end
|
|
3
vim/.vim/lua/config/init.lua
Normal file
3
vim/.vim/lua/config/init.lua
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
require("config.zip")
|
||||||
|
require("config.clipboard")
|
||||||
|
require("config.tmpl")
|
@ -1,24 +0,0 @@
|
|||||||
--------- NERD Commenter
|
|
||||||
-- Create default mappings
|
|
||||||
vim.g.NERDCreateDefaultMappings = 0
|
|
||||||
|
|
||||||
-- Add spaces after comment delimiters by default
|
|
||||||
vim.g.NERDSpaceDelims = 1
|
|
||||||
|
|
||||||
-- Use compact syntax for prettified multi-line comments
|
|
||||||
vim.g.NERDCompactSexyComs = 1
|
|
||||||
|
|
||||||
-- Align line-wise comment delimiters flush left instead of following code indentation
|
|
||||||
vim.g.NERDDefaultAlign = "left"
|
|
||||||
|
|
||||||
-- Set a language to use its alternate delimiters by default
|
|
||||||
vim.g.NERDAltDelims_java = 1
|
|
||||||
|
|
||||||
-- Allow commenting and inverting empty lines (useful when commenting a region)
|
|
||||||
vim.g.NERDCommentEmptyLines = 1
|
|
||||||
|
|
||||||
-- Enable trimming of trailing whitespace when uncommenting
|
|
||||||
vim.g.NERDTrimTrailingWhitespace = 1
|
|
||||||
|
|
||||||
--Enable NERDCommenterToggle to check all selected lines is commented or not
|
|
||||||
vim.g.NERDToggleCheckAllLines = 1
|
|
@ -1,75 +0,0 @@
|
|||||||
local map = require("utils").map
|
|
||||||
|
|
||||||
local api = require("nvim-tree.api")
|
|
||||||
|
|
||||||
local function opts(desc)
|
|
||||||
return { desc = "nvim-tree: " .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true }
|
|
||||||
end
|
|
||||||
|
|
||||||
function on_attach(bufnr)
|
|
||||||
vim.keymap.set("n", "O", api.tree.change_root_to_node, opts("CD"))
|
|
||||||
vim.keymap.set("n", "?", api.tree.toggle_help, opts("Help"))
|
|
||||||
|
|
||||||
-- put some default mappings here
|
|
||||||
vim.keymap.set("n", "<C-e>", api.node.open.replace_tree_buffer, opts("Open: In Place"))
|
|
||||||
vim.keymap.set("n", "<C-k>", api.node.show_info_popup, opts("Info"))
|
|
||||||
vim.keymap.set("n", "<C-r>", api.fs.rename_sub, opts("Rename: Omit Filename"))
|
|
||||||
vim.keymap.set("n", "<C-t>", api.node.open.tab, opts("Open: New Tab"))
|
|
||||||
vim.keymap.set("n", "<C-v>", api.node.open.vertical, opts("Open: Vertical Split"))
|
|
||||||
vim.keymap.set("n", "<C-x>", api.node.open.horizontal, opts("Open: Horizontal Split"))
|
|
||||||
vim.keymap.set("n", "<BS>", api.node.navigate.parent_close, opts("Close Directory"))
|
|
||||||
vim.keymap.set("n", "<CR>", api.node.open.edit, opts("Open"))
|
|
||||||
vim.keymap.set("n", "<Tab>", api.node.open.preview, opts("Open Preview"))
|
|
||||||
vim.keymap.set("n", ">", api.node.navigate.sibling.next, opts("Next Sibling"))
|
|
||||||
vim.keymap.set("n", "<", api.node.navigate.sibling.prev, opts("Previous Sibling"))
|
|
||||||
vim.keymap.set("n", ".", api.node.run.cmd, opts("Run Command"))
|
|
||||||
vim.keymap.set("n", "-", api.tree.change_root_to_parent, opts("Up"))
|
|
||||||
vim.keymap.set("n", "a", api.fs.create, opts("Create"))
|
|
||||||
vim.keymap.set("n", "bmv", api.marks.bulk.move, opts("Move Bookmarked"))
|
|
||||||
vim.keymap.set("n", "B", api.tree.toggle_no_buffer_filter, opts("Toggle No Buffer"))
|
|
||||||
vim.keymap.set("n", "c", api.fs.copy.node, opts("Copy"))
|
|
||||||
-- vim.keymap.set('n', 'C', api.tree.toggle_git_clean_filter, opts('Toggle Git Clean'))
|
|
||||||
-- vim.keymap.set('n', '[c', api.node.navigate.git.prev, opts('Prev Git'))
|
|
||||||
-- vim.keymap.set('n', ']c', api.node.navigate.git.next, opts('Next Git'))
|
|
||||||
vim.keymap.set("n", "d", api.fs.remove, opts("Delete"))
|
|
||||||
vim.keymap.set("n", "D", api.fs.trash, opts("Trash"))
|
|
||||||
vim.keymap.set("n", "E", api.tree.expand_all, opts("Expand All"))
|
|
||||||
vim.keymap.set("n", "e", api.fs.rename_basename, opts("Rename: Basename"))
|
|
||||||
vim.keymap.set("n", "]e", api.node.navigate.diagnostics.next, opts("Next Diagnostic"))
|
|
||||||
vim.keymap.set("n", "[e", api.node.navigate.diagnostics.prev, opts("Prev Diagnostic"))
|
|
||||||
vim.keymap.set("n", "F", api.live_filter.clear, opts("Clean Filter"))
|
|
||||||
vim.keymap.set("n", "f", api.live_filter.start, opts("Filter"))
|
|
||||||
vim.keymap.set("n", "g?", api.tree.toggle_help, opts("Help"))
|
|
||||||
vim.keymap.set("n", "gy", api.fs.copy.absolute_path, opts("Copy Absolute Path"))
|
|
||||||
vim.keymap.set("n", "H", api.tree.toggle_hidden_filter, opts("Toggle Dotfiles"))
|
|
||||||
vim.keymap.set("n", "I", api.tree.toggle_gitignore_filter, opts("Toggle Git Ignore"))
|
|
||||||
vim.keymap.set("n", "J", api.node.navigate.sibling.last, opts("Last Sibling"))
|
|
||||||
vim.keymap.set("n", "K", api.node.navigate.sibling.first, opts("First Sibling"))
|
|
||||||
vim.keymap.set("n", "m", api.marks.toggle, opts("Toggle Bookmark"))
|
|
||||||
vim.keymap.set("n", "o", api.node.open.edit, opts("Open"))
|
|
||||||
-- vim.keymap.set('n', 'O', api.node.open.no_window_picker, opts('Open: No Window Picker'))
|
|
||||||
vim.keymap.set("n", "p", api.fs.paste, opts("Paste"))
|
|
||||||
vim.keymap.set("n", "P", api.node.navigate.parent, opts("Parent Directory"))
|
|
||||||
vim.keymap.set("n", "q", api.tree.close, opts("Close"))
|
|
||||||
vim.keymap.set("n", "r", api.fs.rename, opts("Rename"))
|
|
||||||
vim.keymap.set("n", "R", api.tree.reload, opts("Refresh"))
|
|
||||||
vim.keymap.set("n", "s", api.node.run.system, opts("Run System"))
|
|
||||||
vim.keymap.set("n", "S", api.tree.search_node, opts("Search"))
|
|
||||||
vim.keymap.set("n", "U", api.tree.toggle_custom_filter, opts("Toggle Hidden"))
|
|
||||||
vim.keymap.set("n", "W", api.tree.collapse_all, opts("Collapse"))
|
|
||||||
vim.keymap.set("n", "x", api.fs.cut, opts("Cut"))
|
|
||||||
vim.keymap.set("n", "y", api.fs.copy.filename, opts("Copy Name"))
|
|
||||||
vim.keymap.set("n", "Y", api.fs.copy.relative_path, opts("Copy Relative Path"))
|
|
||||||
end
|
|
||||||
|
|
||||||
require("nvim-tree").setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
update_focused_file = {
|
|
||||||
enable = true,
|
|
||||||
update_root = false,
|
|
||||||
ignore_list = {},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
map("n", "<C-T>", ":NvimTreeToggle<CR>")
|
|
||||||
map("n", "<C-F>", ":NvimTreeFindFileToggle<CR>")
|
|
@ -1,66 +0,0 @@
|
|||||||
require("refactoring").setup({})
|
|
||||||
|
|
||||||
-- load refactoring Telescope extension
|
|
||||||
require("telescope").load_extension("refactoring")
|
|
||||||
|
|
||||||
-- remap to open the Telescope refactoring menu in visual mode
|
|
||||||
vim.api.nvim_set_keymap(
|
|
||||||
"v",
|
|
||||||
"<leader>rr",
|
|
||||||
"<Esc><cmd>lua require('telescope').extensions.refactoring.refactors()<CR>",
|
|
||||||
{ noremap = true }
|
|
||||||
)
|
|
||||||
|
|
||||||
-- Remaps for the refactoring operations currently offered by the plugin
|
|
||||||
vim.api.nvim_set_keymap(
|
|
||||||
"v",
|
|
||||||
"<leader>rx",
|
|
||||||
[[ <Esc><Cmd>lua require('refactoring').refactor('Extract Function')<CR>]],
|
|
||||||
{ noremap = true, silent = true, expr = false }
|
|
||||||
)
|
|
||||||
vim.api.nvim_set_keymap(
|
|
||||||
"v",
|
|
||||||
"<leader>rxf",
|
|
||||||
[[ <Esc><Cmd>lua require('refactoring').refactor('Extract Function To File')<CR>]],
|
|
||||||
{ noremap = true, silent = true, expr = false }
|
|
||||||
)
|
|
||||||
vim.api.nvim_set_keymap(
|
|
||||||
"v",
|
|
||||||
"<leader>rxv",
|
|
||||||
[[ <Esc><Cmd>lua require('refactoring').refactor('Extract Variable')<CR>]],
|
|
||||||
{ noremap = true, silent = true, expr = false }
|
|
||||||
)
|
|
||||||
vim.api.nvim_set_keymap(
|
|
||||||
"v",
|
|
||||||
"<leader>ri",
|
|
||||||
[[ <Esc><Cmd>lua require('refactoring').refactor('Inline Variable')<CR>]],
|
|
||||||
{ noremap = true, silent = true, expr = false }
|
|
||||||
)
|
|
||||||
|
|
||||||
-- Extract block doesn't need visual mode
|
|
||||||
vim.api.nvim_set_keymap(
|
|
||||||
"n",
|
|
||||||
"<leader>rxb",
|
|
||||||
[[ <Cmd>lua require('refactoring').refactor('Extract Block')<CR>]],
|
|
||||||
{ noremap = true, silent = true, expr = false }
|
|
||||||
)
|
|
||||||
vim.api.nvim_set_keymap(
|
|
||||||
"n",
|
|
||||||
"<leader>rxbf",
|
|
||||||
[[ <Cmd>lua require('refactoring').refactor('Extract Block To File')<CR>]],
|
|
||||||
{ noremap = true, silent = true, expr = false }
|
|
||||||
)
|
|
||||||
|
|
||||||
-- Inline variable can also pick up the identifier currently under the cursor without visual mode
|
|
||||||
vim.api.nvim_set_keymap(
|
|
||||||
"n",
|
|
||||||
"<leader>ri",
|
|
||||||
[[ <Cmd>lua require('refactoring').refactor('Inline Variable')<CR>]],
|
|
||||||
{ noremap = true, silent = true, expr = false }
|
|
||||||
)
|
|
||||||
vim.api.nvim_set_keymap(
|
|
||||||
"n",
|
|
||||||
"<leader>rx",
|
|
||||||
[[ <Cmd>lua require('refactoring').refactor('Extract Variable')<CR>]],
|
|
||||||
{ noremap = true, silent = true, expr = false }
|
|
||||||
)
|
|
@ -1,43 +0,0 @@
|
|||||||
local home = vim.fn.expand("~/zettelkasten")
|
|
||||||
|
|
||||||
require("telekasten").setup({
|
|
||||||
home = home,
|
|
||||||
})
|
|
||||||
|
|
||||||
vim.cmd([[
|
|
||||||
nnoremap <leader>zf :lua require('telekasten').find_notes()<CR>
|
|
||||||
nnoremap <leader>zd :lua require('telekasten').find_daily_notes()<CR>
|
|
||||||
nnoremap <leader>zg :lua require('telekasten').search_notes()<CR>
|
|
||||||
nnoremap <leader>zz :lua require('telekasten').follow_link()<CR>
|
|
||||||
autocmd FileType markdown nnoremap <Enter> :lua require('telekasten').follow_link()<CR>
|
|
||||||
autocmd FileType markdown vnoremap <leader>zf :lua require('telekasten').follow_link()<CR>
|
|
||||||
nnoremap <leader>zT :lua require('telekasten').goto_today()<CR>
|
|
||||||
nnoremap <leader>zW :lua require('telekasten').goto_thisweek()<CR>
|
|
||||||
nnoremap <leader>zw :lua require('telekasten').find_weekly_notes()<CR>
|
|
||||||
nnoremap <leader>zn :lua require('telekasten').new_note()<CR>
|
|
||||||
nnoremap <leader>zN :lua require('telekasten').new_templated_note()<CR>
|
|
||||||
nnoremap <leader>zy :lua require('telekasten').yank_notelink()<CR>
|
|
||||||
nnoremap <leader>zc :lua require('telekasten').show_calendar()<CR>
|
|
||||||
nnoremap <leader>zC :CalendarT<CR>
|
|
||||||
nnoremap <leader>zi :lua require('telekasten').paste_img_and_link()<CR>
|
|
||||||
nnoremap <leader>zt :lua require('telekasten').toggle_todo()<CR>
|
|
||||||
nnoremap <leader>zb :lua require('telekasten').show_backlinks()<CR>
|
|
||||||
nnoremap <leader>zF :lua require('telekasten').find_friends()<CR>
|
|
||||||
nnoremap <leader>zI :lua require('telekasten').insert_img_link({ i=true })<CR>
|
|
||||||
nnoremap <leader>zp :lua require('telekasten').preview_img()<CR>
|
|
||||||
nnoremap <leader>zm :lua require('telekasten').browse_media()<CR>
|
|
||||||
nnoremap <leader>za :lua require('telekasten').show_tags()<CR>
|
|
||||||
nnoremap <leader># :lua require('telekasten').show_tags()<CR>
|
|
||||||
nnoremap <leader>zr :lua require('telekasten').rename_note()<CR>
|
|
||||||
|
|
||||||
" on hesitation, bring up the panel
|
|
||||||
nnoremap <leader>z :lua require('telekasten').panel()<CR>
|
|
||||||
|
|
||||||
" colors
|
|
||||||
hi tklink ctermfg=72 guifg=#689d6a cterm=bold,underline gui=bold,underline
|
|
||||||
hi tkBrackets ctermfg=gray guifg=gray
|
|
||||||
|
|
||||||
hi tkTagSep ctermfg=gray guifg=gray
|
|
||||||
hi tkTag ctermfg=175 guifg=#d3869B
|
|
||||||
]])
|
|
||||||
-- autocmd FileType markdown vnoremap <Enter> :norm ysiw\]ysa\]\] lua require('telekasten').follow_link()<CR>
|
|
29
vim/.vim/lua/config/tmpl.lua
Normal file
29
vim/.vim/lua/config/tmpl.lua
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
vim.api.nvim_create_autocmd({ 'BufRead', 'BufNewFile' }, {
|
||||||
|
group = vim.api.nvim_create_augroup('gotmpl_highlight', { clear = true }),
|
||||||
|
pattern = '*.tmpl',
|
||||||
|
callback = function()
|
||||||
|
local filename = vim.fn.expand('%:t')
|
||||||
|
local ext = filename:match('.*%.(.-)%.tmpl$')
|
||||||
|
|
||||||
|
-- Add more extension to syntax mappings here if you need to.
|
||||||
|
local ext_filetypes = {
|
||||||
|
go = 'go',
|
||||||
|
html = 'html',
|
||||||
|
md = 'markdown',
|
||||||
|
yaml = 'yaml',
|
||||||
|
yml = 'yaml',
|
||||||
|
}
|
||||||
|
|
||||||
|
if ext and ext_filetypes[ext] then
|
||||||
|
-- Set the primary filetype
|
||||||
|
vim.bo.filetype = ext_filetypes[ext]
|
||||||
|
|
||||||
|
-- Define embedded Go template syntax
|
||||||
|
vim.cmd([[
|
||||||
|
syntax include @gotmpl syntax/gotmpl.vim
|
||||||
|
syntax region gotmpl start="{{" end="}}" contains=@gotmpl containedin=ALL
|
||||||
|
syntax region gotmpl start="{%" end="%}" contains=@gotmpl containedin=ALL
|
||||||
|
]])
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
})
|
@ -1,9 +1,5 @@
|
|||||||
local use_google = require("utils").use_google
|
local use_google = require("utils").use_google
|
||||||
|
|
||||||
if use_google() then
|
|
||||||
return {}
|
|
||||||
end
|
|
||||||
|
|
||||||
vim.g.disable_autoformat = false
|
vim.g.disable_autoformat = false
|
||||||
vim.api.nvim_create_user_command("FormatDisable", function(args)
|
vim.api.nvim_create_user_command("FormatDisable", function(args)
|
||||||
if args.bang then
|
if args.bang then
|
||||||
@ -16,6 +12,7 @@ end, {
|
|||||||
desc = "Disable autoformat-on-save",
|
desc = "Disable autoformat-on-save",
|
||||||
bang = true,
|
bang = true,
|
||||||
})
|
})
|
||||||
|
|
||||||
vim.api.nvim_create_user_command("FormatEnable", function()
|
vim.api.nvim_create_user_command("FormatEnable", function()
|
||||||
vim.b.disable_autoformat = false
|
vim.b.disable_autoformat = false
|
||||||
vim.g.disable_autoformat = false
|
vim.g.disable_autoformat = false
|
||||||
@ -23,17 +20,32 @@ end, {
|
|||||||
desc = "Re-enable autoformat-on-save",
|
desc = "Re-enable autoformat-on-save",
|
||||||
})
|
})
|
||||||
|
|
||||||
|
vim.api.nvim_create_autocmd("BufWritePre", {
|
||||||
|
pattern = "*",
|
||||||
|
callback = function(args)
|
||||||
|
if vim.g.disable_autoformat or vim.b[args.buf].disable_autoformat then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
require("conform").format({ bufnr = args.buf })
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
return {
|
return {
|
||||||
{
|
{
|
||||||
"stevearc/conform.nvim",
|
"stevearc/conform.nvim",
|
||||||
event = { "BufWritePre" },
|
event = { "BufWritePre" },
|
||||||
cmd = { "ConformInfo", "Format", "FormatDisable", "FormatEnable" },
|
cmd = { "ConformInfo", "FormatDisable", "FormatEnable" },
|
||||||
keys = {
|
keys = {
|
||||||
-- stylua: ignore
|
-- stylua: ignore
|
||||||
{ "<leader>fmt", function() require("conform").format({ async = true, lsp_fallback = true }) end, mode = "", desc = "Format buffer", },
|
{ "<leader>fmt", function() require("conform").format({ async = true, lsp_fallback = true }) end, mode = "", desc = "Format buffer", },
|
||||||
},
|
},
|
||||||
|
-- This will provide type hinting with LuaLS
|
||||||
|
---@module "conform"
|
||||||
|
---@type conform.setupOpts
|
||||||
opts = {
|
opts = {
|
||||||
|
log_level = vim.log.levels.DEBUG,
|
||||||
formatters_by_ft = {
|
formatters_by_ft = {
|
||||||
|
|
||||||
rust = { "rustfmt", lsp_format = "fallback" },
|
rust = { "rustfmt", lsp_format = "fallback" },
|
||||||
-- Conform will run multiple formatters sequentially
|
-- Conform will run multiple formatters sequentially
|
||||||
-- go = { "goimports", "gofmt" },
|
-- go = { "goimports", "gofmt" },
|
||||||
@ -54,10 +66,6 @@ return {
|
|||||||
},
|
},
|
||||||
format_on_save = function(bufnr)
|
format_on_save = function(bufnr)
|
||||||
-- Disable with a global or buffer-local variable
|
-- Disable with a global or buffer-local variable
|
||||||
if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
return { timeout_ms = 500, lsp_format = "fallback" }
|
|
||||||
end,
|
end,
|
||||||
formatters = {
|
formatters = {
|
||||||
gdformat = {
|
gdformat = {
|
||||||
|
@ -328,7 +328,6 @@ return {
|
|||||||
url = "sso://googler@user/smwang/hg.nvim",
|
url = "sso://googler@user/smwang/hg.nvim",
|
||||||
dependencies = { "ipod825/libp.nvim" },
|
dependencies = { "ipod825/libp.nvim" },
|
||||||
config = function()
|
config = function()
|
||||||
require("config.fig")
|
|
||||||
require("hg").setup()
|
require("hg").setup()
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
@ -48,21 +48,6 @@ return {
|
|||||||
if lang == "gdrama" then
|
if lang == "gdrama" then
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
local file_too_large = require("utils").file_too_large
|
|
||||||
|
|
||||||
local fname = vim.api.nvim_buf_get_name(buf)
|
|
||||||
|
|
||||||
if file_too_large(fname) then
|
|
||||||
vim.schedule(function()
|
|
||||||
vim.notify(
|
|
||||||
string.format(
|
|
||||||
"Disabling treesitter for buffer. File %s exceeds maximum configured size.",
|
|
||||||
fname
|
|
||||||
)
|
|
||||||
)
|
|
||||||
end)
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
return false
|
return false
|
||||||
end,
|
end,
|
||||||
|
|
||||||
|
@ -4,15 +4,10 @@ local TableConcat = require("utils").TableConcat
|
|||||||
local scopes = require("neoscopes")
|
local scopes = require("neoscopes")
|
||||||
|
|
||||||
_G.find_files = function(search_dirs)
|
_G.find_files = function(search_dirs)
|
||||||
require("telescope.builtin").find_files({
|
require("telescope.builtin").find_files({ search_dirs = search_dirs, })
|
||||||
search_dirs = search_dirs,
|
|
||||||
})
|
|
||||||
end
|
end
|
||||||
-- Helper functions to fetch the current scope and set `search_dirs`
|
-- Helper functions to fetch the current scope and set `search_dirs`
|
||||||
_G.find_dotfiles = function()
|
_G.find_dotfiles = function()
|
||||||
require("telescope.builtin").git_files({
|
|
||||||
cwd = vim.fn.expand("$HOME/dotfiles"),
|
|
||||||
})
|
|
||||||
end
|
end
|
||||||
|
|
||||||
_G.search_cwd = function()
|
_G.search_cwd = function()
|
||||||
@ -28,24 +23,13 @@ _G.live_grep = function(search_dirs)
|
|||||||
end
|
end
|
||||||
|
|
||||||
_G.live_grep_cword = function(search_dirs)
|
_G.live_grep_cword = function(search_dirs)
|
||||||
require("telescope.builtin").live_grep({
|
require("telescope.builtin").live_grep({ search_dirs = search_dirs, })
|
||||||
search_dirs = search_dirs,
|
|
||||||
})
|
|
||||||
end
|
end
|
||||||
|
|
||||||
local function exe(cmd)
|
local function exe(cmd)
|
||||||
return vim.split(vim.fn.system(cmd), "\n")
|
return vim.split(vim.fn.system(cmd), "\n")
|
||||||
end
|
end
|
||||||
|
|
||||||
local function get_visual_selection()
|
|
||||||
-- Yank current visual selection into the 'v' register
|
|
||||||
--
|
|
||||||
-- Note that this makes no effort to preserve this register
|
|
||||||
vim.cmd('noau normal! "vy"')
|
|
||||||
|
|
||||||
return vim.fn.getreg("v")
|
|
||||||
end
|
|
||||||
|
|
||||||
function fig_modified()
|
function fig_modified()
|
||||||
return exe("hg pstatus -ma -n --no-status --template= | sort")
|
return exe("hg pstatus -ma -n --no-status --template= | sort")
|
||||||
end
|
end
|
||||||
@ -58,29 +42,39 @@ end
|
|||||||
local keys = {
|
local keys = {
|
||||||
{ "<leader>e", ":lua search_cwd()<CR>", desc = "Find Files in Buffer Directory" },
|
{ "<leader>e", ":lua search_cwd()<CR>", desc = "Find Files in Buffer Directory" },
|
||||||
{ "<leader>ts", require('telescope.builtin').live_grep },
|
{ "<leader>ts", require('telescope.builtin').live_grep },
|
||||||
{ "<leader>TS", [[<cmd>lua require('telescope.builtin').live_grep{default_text = vim.fn.expand("<cword>")}<CR>]], },
|
{ "<leader>TS", function() require('telescope.builtin').live_grep { default_text = vim.fn.expand("<cword>") } end, },
|
||||||
{ "<leader>t.", ":lua find_dotfiles()<CR>", desc = "Find Dotfiles" },
|
{
|
||||||
|
"<leader>t.",
|
||||||
|
function()
|
||||||
|
require("telescope.builtin").git_files({
|
||||||
|
cwd = vim.fn.expand("$HOME/dotfiles"), })
|
||||||
|
end
|
||||||
|
,
|
||||||
|
desc = "Find Dotfiles"
|
||||||
|
},
|
||||||
{ "<leader>tc", ":Telescope textcase<CR>", desc = "Text case" },
|
{ "<leader>tc", ":Telescope textcase<CR>", desc = "Text case" },
|
||||||
{ "<leader>tC", ":CritiqueUnresolvedCommentsTelescope<CR>", desc = "Critique unresolved comments" },
|
{ "<leader>tC", ":CritiqueUnresolvedCommentsTelescope<CR>", desc = "Critique unresolved comments" },
|
||||||
{ "<leader>tca", ":CritiqueCommentsTelescope<CR>", desc = "Critique all comments" },
|
{ "<leader>tca", ":CritiqueCommentsTelescope<CR>", desc = "Critique all comments" },
|
||||||
{ "<leader>tg", ":Telescope git_files<CR>", desc = "Git Files" },
|
{ "<leader>tg", ":Telescope git_files<CR>", desc = "Git Files" },
|
||||||
{ "<leader>th", ":lua require('telescope.builtin').help_tags{}<CR>", desc = "[T]elescope [H]elp" },
|
|
||||||
{ "<leader>tk", ":Telescope keymaps<CR>", desc = "Keymaps" },
|
{ "<leader>tk", ":Telescope keymaps<CR>", desc = "Keymaps" },
|
||||||
{ "<leader>tn", ":Telescope notify<CR>", desc = "Notifications" },
|
{ "<leader>tn", ":Telescope notify<CR>", desc = "Notifications" },
|
||||||
{ "<leader>tr", ":Telescope resume<CR>", desc = "Telescope Resume" },
|
{ "<leader>tr", ":Telescope resume<CR>", desc = "Telescope Resume" },
|
||||||
|
{ "<leader>th", ":lua require('telescope.builtin').help_tags{}<CR>", desc = "[T]elescope [H]elp" },
|
||||||
}
|
}
|
||||||
|
|
||||||
if use_google() then
|
if use_google() then
|
||||||
|
local find_files = require("telescope.builtin").find_files
|
||||||
|
local cs_query = require("telescope").extensions.codesearch.find_query
|
||||||
-- stylua: ignore
|
-- stylua: ignore
|
||||||
TableConcat(keys, {
|
TableConcat(keys, {
|
||||||
{ "<leader>tm", ":lua find_files(fig_modified())<CR>" },
|
{ "<leader>tm", function() find_files({ search_dirs = fig_modified() }) end, desc = "list modified Fig files." },
|
||||||
{ "<leader>tM", ":lua find_files(fig_all_modified())<CR>" },
|
{ "<leader>tM", function() find_files({ search_dirs = fig_all_modified() }) end, desc = "List *all* modified Fig files" },
|
||||||
{ "<leader>tf", ":lua live_grep(fig_modified())<CR>", desc = "Search in modified Fig files." },
|
{ "<leader>tf", function() find_files({ search_dirs = fig_modified() }) end, desc = "Grep modified Fig files." },
|
||||||
{ "<leader>tF", ":lua live_grep(fig_all_modified())<CR>", desc = "Search in *all* modified Fig files." },
|
{ "<leader>tF", function() find_files({ search_dirs = fig_modified() }) end, desc = "Grep *all* modified Fig files." },
|
||||||
{ "<C-P>", require("telescope").extensions.codesearch.find_files },
|
{ "<C-P>", require("telescope").extensions.codesearch.find_files, desc = "Code search files" },
|
||||||
{ "<leader>cs", require("telescope").extensions.codesearch.find_query },
|
{ "<leader>cs", require("telescope").extensions.codesearch.find_query, desc = "Code search query" },
|
||||||
{ "<leader>cs", require("telescope").extensions.codesearch.find_query, mode = "v" },
|
{ "<leader>cs", cs_query, desc = "Code search query", mode = "v" },
|
||||||
{ "<leader>CS", [[<cmd>lua require('telescope').extensions.codesearch.find_query{default_text_expand='<cword>'}<CR>]], },
|
{ "<leader>CS", function() cs_query({ default_text_expand = '<cword>' }) end, desc = "Code search query <cword>" },
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -22,15 +22,6 @@ function M.map(mode, lhs, rhs, opts)
|
|||||||
vim.keymap.set(mode, lhs, rhs, options)
|
vim.keymap.set(mode, lhs, rhs, options)
|
||||||
end
|
end
|
||||||
|
|
||||||
function M.file_too_large(filename)
|
|
||||||
local max_filesize = 2000 * 1024 -- 2MB
|
|
||||||
local ok, stats = pcall(vim.loop.fs_stat, filename)
|
|
||||||
if ok and stats and stats.size > max_filesize then
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
return false
|
|
||||||
end
|
|
||||||
|
|
||||||
function M.use_google()
|
function M.use_google()
|
||||||
if M.use_google_cache == nil then
|
if M.use_google_cache == nil then
|
||||||
M.use_google_cache = M.file_exists(os.getenv("HOME") .. "/use_google")
|
M.use_google_cache = M.file_exists(os.getenv("HOME") .. "/use_google")
|
||||||
|
30
vim/.vimrc
30
vim/.vimrc
@ -2,11 +2,6 @@ set nocompatible " be iMproved, required
|
|||||||
|
|
||||||
let mapleader="," " BEST LEADER OF ALL TIME (BLOT)
|
let mapleader="," " BEST LEADER OF ALL TIME (BLOT)
|
||||||
filetype off " required
|
filetype off " required
|
||||||
set runtimepath+=,~/.vim
|
|
||||||
set runtimepath+=,~/.vim/after
|
|
||||||
set runtimepath+=,~/.vim/lua/
|
|
||||||
set runtimepath+=,~/.config/nvim/after/
|
|
||||||
let &runtimepath = &runtimepath
|
|
||||||
|
|
||||||
set directory=/tmp
|
set directory=/tmp
|
||||||
set undofile
|
set undofile
|
||||||
@ -57,12 +52,6 @@ set modifiable
|
|||||||
set noscrollbind
|
set noscrollbind
|
||||||
set expandtab
|
set expandtab
|
||||||
|
|
||||||
" map <LeftMouse> ""
|
|
||||||
map <LeftDrag> ""
|
|
||||||
map <LeftRelease> ""
|
|
||||||
|
|
||||||
set updatetime=100
|
|
||||||
|
|
||||||
source ~/.vim/prefs/mappings.vim
|
source ~/.vim/prefs/mappings.vim
|
||||||
source ~/.vim/prefs/leader.vim
|
source ~/.vim/prefs/leader.vim
|
||||||
|
|
||||||
@ -86,23 +75,6 @@ let g:lsp_log_file = expand('~/vim-lsp.log')
|
|||||||
"Don't ask to save when changing buffers (i.e. when jumping to a type definition)
|
"Don't ask to save when changing buffers (i.e. when jumping to a type definition)
|
||||||
set hidden
|
set hidden
|
||||||
|
|
||||||
function! GenerateUnicode(first, last)
|
|
||||||
let i = a:first
|
|
||||||
while i <= a:last
|
|
||||||
if (i%256 == 0)
|
|
||||||
$put ='----------------------------------------------------'
|
|
||||||
$put =' 0 1 2 3 4 5 6 7 8 9 A B C D E F '
|
|
||||||
$put ='----------------------------------------------------'
|
|
||||||
endif
|
|
||||||
let c = printf('%04X ', i)
|
|
||||||
for j in range(16)
|
|
||||||
let c = c . nr2char(i) . ' '
|
|
||||||
let i += 1
|
|
||||||
endfor
|
|
||||||
$put =c
|
|
||||||
endwhile
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" makes sure that when opening, files are normal, i.e. not folded.
|
" makes sure that when opening, files are normal, i.e. not folded.
|
||||||
set nofoldenable
|
set nofoldenable
|
||||||
|
|
||||||
@ -122,7 +94,5 @@ let g:loaded_netrwPlugin = 0
|
|||||||
let g:loaded_tutor_mode_plugin = 0
|
let g:loaded_tutor_mode_plugin = 0
|
||||||
let g:loaded_remote_plugins = 1
|
let g:loaded_remote_plugins = 1
|
||||||
|
|
||||||
au BufRead,BufNewFile,BufReadPost *.cc.inc set filetype=cpp
|
|
||||||
|
|
||||||
filetype plugin indent on
|
filetype plugin indent on
|
||||||
syntax on
|
syntax on
|
||||||
|
Reference in New Issue
Block a user