Nearly there!!
This commit is contained in:
+26
-21
@@ -1,19 +1,8 @@
|
||||
require('vis')
|
||||
|
||||
local pickers = require('pickers')
|
||||
local build = require('build')
|
||||
|
||||
require('plugins/vis-ctags')
|
||||
|
||||
-- ---------------------------------------------------------------------------
|
||||
-- Syntax highlighting: ~/.config/vis/lexers/odin.lua
|
||||
-- ---------------------------------------------------------------------------
|
||||
if vis.ftdetect then
|
||||
-- vis 0.9 and earlier
|
||||
if vis.ftdetect.filetypes then
|
||||
vis.ftdetect.filetypes.odin = { ext = { '%.odin$' } }
|
||||
end
|
||||
end
|
||||
local build = require('build')
|
||||
local pickers = require('pickers')
|
||||
|
||||
-- ---------------------------------------------------------------------------
|
||||
-- Global options, key mappings and commands
|
||||
@@ -21,17 +10,26 @@ end
|
||||
vis.events.subscribe(vis.events.INIT, function()
|
||||
vis:command('set escdelay 1')
|
||||
vis:command('set autoindent off')
|
||||
vis:command('set ignorecase on')
|
||||
vis:command('set theme custom_zen')
|
||||
|
||||
-- jump list
|
||||
vis:map(vis.modes.NORMAL, "<M-j>", "g>")
|
||||
vis:map(vis.modes.NORMAL, "<M-k>", "g<")
|
||||
|
||||
-- pickers
|
||||
vis:map(vis.modes.NORMAL, '<C-p>', pickers.files, 'Fuzzy find / create a file')
|
||||
vis:map(vis.modes.NORMAL, '<C-f>', pickers.grep, 'Live grep the project with ripgrep')
|
||||
vis:map(vis.modes.VISUAL, '<C-f>', pickers.grep_selection, 'Live grep for the selected text')
|
||||
vis:map(vis.modes.NORMAL, '<C-e>', pickers.fm, 'terminal file manager')
|
||||
vis:map(vis.modes.NORMAL, '<M-e>', pickers.errors, 'Browse errors from the last build')
|
||||
|
||||
-- picker commands
|
||||
vis:command_register('files', function() pickers.files() return true end, 'Fuzzy find / create a file')
|
||||
vis:command_register('grep', function() pickers.grep() return true end, 'Live grep the project with ripgrep')
|
||||
vis:command_register('fm', function() pickers.fm() return true end, 'Pick a file with a terminal file manager')
|
||||
vis:command_register('git', function() pickers.git() return true end, 'Open gitu')
|
||||
vis:command_register('git', function() pickers.git() return true end, 'Open gitu')
|
||||
vis:command_register('errors', function() pickers.errors() return true end, 'Browse errors from the last build')
|
||||
|
||||
-- build.sh setup
|
||||
vis:map(vis.modes.NORMAL, '<C-b>', function() build.run({}) end, 'Run ./build.sh')
|
||||
@@ -40,7 +38,7 @@ vis.events.subscribe(vis.events.INIT, function()
|
||||
for i = 1, #argv do table.insert(args, argv[i]) end
|
||||
build.run(args)
|
||||
return true
|
||||
end, 'Run ./build.sh with optional flags, e.g. :build run')
|
||||
end, 'Run ./build.sh with optional flags, e.g :build run')
|
||||
|
||||
-- system clipboard
|
||||
local function clip_copy()
|
||||
@@ -53,15 +51,12 @@ vis.events.subscribe(vis.events.INIT, function()
|
||||
vis:feedkeys('<Escape>') -- clear any selection left on the pasted text
|
||||
end
|
||||
|
||||
vis:map(vis.modes.VISUAL, '<C-y>', clip_copy, 'Copy selection to system clipboard')
|
||||
vis:map(vis.modes.VISUAL, '<C-c>', clip_copy, 'Copy selection to system clipboard')
|
||||
vis:map(vis.modes.VISUAL, '<C-v>', clip_paste, 'Paste system clipboard at cursor')
|
||||
vis:map(vis.modes.NORMAL, '<C-v>', clip_paste, 'Paste system clipboard at cursor')
|
||||
|
||||
|
||||
-- ctags: 'gd' to jump to tag definition under cursor
|
||||
-- vis-ctags binds <C-]> (jump) and <C-t> (back) itself;
|
||||
vis:map(vis.modes.NORMAL, 'gd', '<C-]>')
|
||||
|
||||
-- ctag navigation
|
||||
vis:map(vis.modes.NORMAL, 'gd', '<C-]>', 'Go to definition (ctags picker)')
|
||||
end)
|
||||
|
||||
-- ---------------------------------------------------------------------------
|
||||
@@ -73,3 +68,13 @@ vis.events.subscribe(vis.events.WIN_OPEN, function(win)
|
||||
vis:command('set number on')
|
||||
end)
|
||||
|
||||
-- ---------------------------------------------------------------------------
|
||||
-- Syntax highlighting: ~/.config/vis/lexers/odin.lua
|
||||
-- ---------------------------------------------------------------------------
|
||||
if vis.ftdetect then
|
||||
-- vis 0.9 and earlier
|
||||
if vis.ftdetect.filetypes then
|
||||
vis.ftdetect.filetypes.odin = { ext = { '%.odin$' } }
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user