Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions pkgs/neovim-wrapped/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ let
./plugins/catppuccin
./plugins/treesj
./plugins/vim-tmux-navigator
./plugins/tidal
./plugins/which-key
./plugins/conform
./plugins/nvim-lint
Expand Down
2 changes: 1 addition & 1 deletion pkgs/neovim-wrapped/plugins/cmp/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ let

tailwindcss-colorizer-cmp-nvim = pkgs.vimUtils.buildVimPlugin {
pname = "tailwindcss-colorizer-cmp-nvim";
version = "2024-01-01";
version = "0-unstable-2024-03-23";
src = pkgs.fetchFromGitHub {
owner = "roobert";
repo = "tailwindcss-colorizer-cmp.nvim";
Expand Down
1 change: 1 addition & 0 deletions pkgs/neovim-wrapped/plugins/conform/config.lua
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ require("conform").setup({
rust = { "rustfmt" },
python = { "isort", "black" },
nix = { "nixfmt" },
tidal = { "ormolu" }, -- Tidal patterns are Haskell
},
format_on_save = {
timeout_ms = 1000,
Expand Down
1 change: 1 addition & 0 deletions pkgs/neovim-wrapped/plugins/conform/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
shfmt
rustfmt
nixfmt
ormolu # haskell formatter, used for .tidal files
];
}
];
Expand Down
35 changes: 35 additions & 0 deletions pkgs/neovim-wrapped/plugins/tidal/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{ pkgs, ... }:
let
# vim-tidal is not in nixpkgs, so package it directly. Pinned to the latest
# commit (the v1.x tags are old); it's a stable vimscript plugin.
vim-tidal = pkgs.vimUtils.buildVimPlugin {
pname = "vim-tidal";
version = "1.4.8-unstable-2023-06-02";

src = pkgs.fetchFromGitHub {
owner = "tidalcycles";
repo = "vim-tidal";
rev = "e440fe5bdfe07f805e21e6872099685d38e8b761";
hash = "sha256-8gyk17YLeKpLpz3LRtxiwbpsIbZka9bb63nK5/9IUoA=";
};
};
in
{
plugins = [
{
plugin = vim-tidal;
config = /* lua */ ''
Comment thread
etrobert marked this conversation as resolved.
-- Ship .tidal lines to a tmux pane running `tidal` (GHCi+Tidal); it
-- does not boot GHCi, so start `tidal` in its own pane first. The
-- pattern language and SuperDirt engine come from the electronic-music
-- flake's devShell, not from here.
vim.g.tidal_target = "tmux"

-- Tidal patterns are Haskell; drive treesitter highlighting (and
-- ormolu formatting via conform) off the haskell grammar.
vim.treesitter.language.register("haskell", "tidal")
'';
extraPackages = with pkgs; [ tmux ];
}
];
}
1 change: 1 addition & 0 deletions pkgs/neovim-wrapped/plugins/treesitter/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
typescript
json
go
haskell # .tidal files (Tidal patterns are Haskell)
scheme
rust
zsh
Expand Down
Loading