Live coding with tidal and sonic pi, snippets for diary, toggleterm
Live Coding: - added plugin for sonic-pi (though commented out) - added plugin for tidal Snippets: - added path luasnippets to loaderdefinitions - added luasnippet for asciidoc (diaentry, diahead Options: - no longer show tabline Plugins: - toggleterm with a binding so <C-`>
This commit is contained in:
@@ -79,5 +79,6 @@ cmp.setup({
|
|||||||
{ name = 'path' }, -- For path completion
|
{ name = 'path' }, -- For path completion
|
||||||
{ name = 'rpncalc' }, -- for RPN calculations
|
{ name = 'rpncalc' }, -- for RPN calculations
|
||||||
{ name = 'orgmode' }, -- for nvim-orgmode
|
{ name = 'orgmode' }, -- for nvim-orgmode
|
||||||
|
{ name = 'sonicpi' }, -- for sonic-pi integration
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ vim.opt.splitbelow = true -- open new vertical split bottom
|
|||||||
vim.opt.splitright = true -- open new horizontal splits right
|
vim.opt.splitright = true -- open new horizontal splits right
|
||||||
vim.opt.termguicolors = true -- enable 24-bit RGB color in the TUI
|
vim.opt.termguicolors = true -- enable 24-bit RGB color in the TUI
|
||||||
vim.opt.showmode = false -- we are experienced, wo don't need the "-- INSERT --" mode hint
|
vim.opt.showmode = false -- we are experienced, wo don't need the "-- INSERT --" mode hint
|
||||||
|
vim.opt.showtabline = 0 -- never show top line with tabs, not used anyways
|
||||||
|
|
||||||
-- Searching
|
-- Searching
|
||||||
vim.opt.incsearch = true -- search as characters are entered
|
vim.opt.incsearch = true -- search as characters are entered
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ require("lazy").setup({
|
|||||||
version = "v2.*",
|
version = "v2.*",
|
||||||
config = function()
|
config = function()
|
||||||
require("luasnip.loaders.from_snipmate").lazy_load()
|
require("luasnip.loaders.from_snipmate").lazy_load()
|
||||||
|
require("luasnip.loaders.from_lua").lazy_load()
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -445,4 +446,58 @@ require("lazy").setup({
|
|||||||
require('gitsigns').setup()
|
require('gitsigns').setup()
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
|
||||||
|
-- -- Live Coding: sonic-pi music programming
|
||||||
|
-- {
|
||||||
|
-- 'magicmonty/sonicpi.nvim',
|
||||||
|
-- -- broken if used here, setup called further below
|
||||||
|
-- -- config = function()
|
||||||
|
-- -- require('sonicpi').setup()
|
||||||
|
-- -- end,
|
||||||
|
-- dependencies = {
|
||||||
|
-- 'hrsh7th/nvim-cmp',
|
||||||
|
-- 'kyazdani42/nvim-web-devicons'
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
|
||||||
|
-- easy term on a shortcut
|
||||||
|
{
|
||||||
|
"akinsho/toggleterm.nvim",
|
||||||
|
config = true,
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<C-`>",
|
||||||
|
":ToggleTerm<CR>",
|
||||||
|
desc = "Toggle terminal",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<C-`>",
|
||||||
|
"<C-\\><C-n>:ToggleTerm<CR>",
|
||||||
|
mode = 't',
|
||||||
|
desc = "Toggle terminal",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Live Coding: tidal cycles support
|
||||||
|
{
|
||||||
|
'tidalcycles/vim-tidal',
|
||||||
|
config = function()
|
||||||
|
vim.g.tidal_sc_enable = 1
|
||||||
|
end,
|
||||||
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
-- require('sonicpi').setup({
|
||||||
|
-- server_dir = '/opt/sonic-pi/app/server',
|
||||||
|
-- mappings = {
|
||||||
|
-- { 'n', '<leader>d', ':SonicPiStartDaemon<CR>', { desc = 'Sonic Pi: start daemon' } },
|
||||||
|
-- { 'n', '<leader>s', require('sonicpi.remote').stop, { desc = 'Sonic Pi: stop' } },
|
||||||
|
-- { 'i', '<M-s>', require('sonicpi.remote').stop, { desc = 'Sonic Pi: stop' } },
|
||||||
|
-- { 'n', '<leader>r', require('sonicpi.remote').run_current_buffer, { desc = 'Sonic Pi: run' } },
|
||||||
|
-- { 'i', '<M-r>', require('sonicpi.remote').run_current_buffer, { desc = 'Sonic Pi: run' } },
|
||||||
|
-- { 'n', '<leader>R', ':SonicPiSendBuffer<CR>', { desc = 'Sonic Pi: send buffer' } },
|
||||||
|
-- { 'i', '<M-R>', ':SonicPiSendBuffer<CR>', { desc = 'Sonic Pi: send buffer' } },
|
||||||
|
-- },
|
||||||
|
-- single_file = true,
|
||||||
|
-- })
|
||||||
|
|||||||
67
luasnippets/asciidoc.lua
Normal file
67
luasnippets/asciidoc.lua
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
-- these are already defined elsewhere, but LSP does not recognize that
|
||||||
|
-- doc says luasnip.config.snip_env
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local sn = ls.snippet_node
|
||||||
|
local isn = ls.indent_snippet_node
|
||||||
|
local t = ls.text_node
|
||||||
|
local i = ls.insert_node
|
||||||
|
local f = ls.function_node
|
||||||
|
local c = ls.choice_node
|
||||||
|
local d = ls.dynamic_node
|
||||||
|
local r = ls.restore_node
|
||||||
|
local events = require("luasnip.util.events")
|
||||||
|
local ai = require("luasnip.nodes.absolute_indexer")
|
||||||
|
local extras = require("luasnip.extras")
|
||||||
|
local l = extras.lambda
|
||||||
|
local rep = extras.rep
|
||||||
|
local p = extras.partial
|
||||||
|
local m = extras.match
|
||||||
|
local n = extras.nonempty
|
||||||
|
local dl = extras.dynamic_lambda
|
||||||
|
local fmt = require("luasnip.extras.fmt").fmt
|
||||||
|
local fmta = require("luasnip.extras.fmt").fmta
|
||||||
|
local conds = require("luasnip.extras.expand_conditions")
|
||||||
|
local postfix = require("luasnip.extras.postfix").postfix
|
||||||
|
local types = require("luasnip.util.types")
|
||||||
|
local parse = require("luasnip.util.parser").parse_snippet
|
||||||
|
local ms = ls.multi_snippet
|
||||||
|
local k = require("luasnip.nodes.key_indexer").new_key
|
||||||
|
|
||||||
|
-- ensure current locale is used to format dates
|
||||||
|
local curlang = os.getenv("LANG")
|
||||||
|
os.setlocale(curlang)
|
||||||
|
|
||||||
|
return {
|
||||||
|
|
||||||
|
-- = Oktober 2024
|
||||||
|
-- :toc:
|
||||||
|
-- :numbered!:
|
||||||
|
--
|
||||||
|
-- <cursor>
|
||||||
|
s("diahead",
|
||||||
|
{
|
||||||
|
t "= ",
|
||||||
|
f(function() return os.date("%0B %Y") end),
|
||||||
|
t({ "", "", }),
|
||||||
|
t({ ":toc:", "" }),
|
||||||
|
t({ ":numbered!:", "" }),
|
||||||
|
t({ "", "", }),
|
||||||
|
}
|
||||||
|
),
|
||||||
|
|
||||||
|
-- == 7. Oktober, 11:14, Montag
|
||||||
|
--
|
||||||
|
-- <cursor>
|
||||||
|
s("diaentry",
|
||||||
|
{
|
||||||
|
t "== ",
|
||||||
|
f(function() return os.date("%e. %0B, %H:%M, %A") end),
|
||||||
|
t({ "", "", }),
|
||||||
|
t({ "", "", }),
|
||||||
|
}
|
||||||
|
),
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
Reference in New Issue
Block a user