Compare commits
3 commits
20c30726bb
...
052f372f67
Author | SHA1 | Date | |
---|---|---|---|
Natsu Kagami | 052f372f67 | ||
Natsu Kagami | 1247233c36 | ||
Natsu Kagami | 16f735f25b |
|
@ -1,36 +1,6 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
let
|
||||
kakounePkg =
|
||||
pkgs.kakoune.override {
|
||||
kakoune = with lib; pkgs.stdenv.mkDerivation rec {
|
||||
pname = "kakoune-unwrapped";
|
||||
version = "r${builtins.substring 0 6 pkgs.sources.kakoune.rev}";
|
||||
src = pkgs.sources.kakoune;
|
||||
makeFlags = [ "debug=no" "PREFIX=${placeholder "out"}" ];
|
||||
|
||||
preConfigure = ''
|
||||
export version="v${version}";
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doInstallCheck = true;
|
||||
installCheckPhase = ''
|
||||
$out/bin/kak -ui json -e "kill 0"
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
# make share/kak/autoload a directory
|
||||
cd "$out/share/kak"
|
||||
autoload_target=$(readlink autoload)
|
||||
rm autoload
|
||||
mkdir autoload
|
||||
ln -s --relative "$autoload_target" autoload
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
kak-lsp = pkgs.libs.crane.buildPackage {
|
||||
src = pkgs.sources.kak-lsp;
|
||||
buildInputs = (with pkgs;
|
||||
|
@ -199,9 +169,30 @@ in
|
|||
queries.src = src;
|
||||
queries.path = "queries";
|
||||
};
|
||||
yaml = {
|
||||
grammar.src = pkgs.fetchFromGitHub {
|
||||
owner = "ikatyang";
|
||||
repo = "tree-sitter-yaml";
|
||||
rev = "0e36bed171768908f331ff7dff9d956bae016efb";
|
||||
hash = "sha256-rN/a8dYffDQNuvnhNp/nfu0AzhYrR1ESACQbQWb/n5w=";
|
||||
leaveDotGit = true;
|
||||
};
|
||||
grammar.compile.args = [ "-c" "-fpic" "../scanner.cc" "../parser.c" "-I" ".." ];
|
||||
grammar.link.args = [ "-shared" "-fpic" "scanner.o" "parser.o" ];
|
||||
grammar.link.flags = [ "-O3" "-lstdc++" ];
|
||||
|
||||
queries.src = pkgs.fetchFromGitHub {
|
||||
owner = "helix-editor";
|
||||
repo = "helix";
|
||||
rev = "dbd248fdfa680373d94fbc10094a160aafa0f7a7";
|
||||
hash = "sha256-dv/T8ROXmwEdjM71gza1RzF2HoINA7Zl2jmz63kCZyQ=";
|
||||
leaveDotGit = true;
|
||||
};
|
||||
queries.path = "runtime/queries/yaml";
|
||||
};
|
||||
};
|
||||
|
||||
programs.my-kakoune.package = kakounePkg;
|
||||
programs.my-kakoune.package = pkgs.kakoune;
|
||||
programs.my-kakoune.rc =
|
||||
builtins.readFile ./kakrc + ''
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# Enable kak-tree-sitter
|
||||
eval %sh{ kak-tree-sitter --kakoune -d --server }
|
||||
eval %sh{ kak-tree-sitter --kakoune -d --server --with-text-objects }
|
||||
map global normal <c-t> ": enter-user-mode tree-sitter<ret>"
|
||||
## Set some color overrides
|
||||
set global kts_yellow "rgb:e2b75e"
|
||||
set global kts_teal "rgb:008080"
|
||||
|
@ -92,8 +93,8 @@ hook global WinSetOption filetype=(racket|rust|python|go|javascript|typescript|c
|
|||
map window normal <c-s-h> ": lsp-hover-buffer<ret>"
|
||||
# lsp-auto-hover-insert-mode-enable
|
||||
set window lsp_hover_anchor true
|
||||
|
||||
}
|
||||
|
||||
hook global WinSetOption filetype=(racket|rust|python|go|javascript|typescript|c|cpp|tex|latex|haskell|nix|fsharp) %{
|
||||
# Format the document if possible
|
||||
hook window BufWritePre .* %{ lsp-formatting-sync }
|
||||
|
|
15
overlay.nix
15
overlay.nix
|
@ -54,6 +54,21 @@ let
|
|||
});
|
||||
|
||||
input-remapper = final.unstable.input-remapper;
|
||||
|
||||
kakoune-unwrapped =
|
||||
prev.kakoune-unwrapped.overrideAttrs (attrs: {
|
||||
version = "r${builtins.substring 0 6 inputs.kakoune.rev}";
|
||||
src = inputs.kakoune;
|
||||
patches = [
|
||||
# patches in the original package was already applied
|
||||
|
||||
# https://github.com/mawww/kakoune/pull/5108
|
||||
(final.fetchpatch {
|
||||
url = "https://github.com/mawww/kakoune/commit/64b3433905eeb33653ed617d61906ba68c686916.patch";
|
||||
hash = "sha256-XYA4GcOEuWHsnDhMI0nXbg9Myv2o1UZ8qvzavIXbkJo=";
|
||||
})
|
||||
];
|
||||
});
|
||||
};
|
||||
|
||||
overlay-libs = final: prev: {
|
||||
|
|
|
@ -3,15 +3,15 @@ let
|
|||
src = fetchFromGitHub {
|
||||
owner = "phaazon";
|
||||
repo = "kak-tree-sitter";
|
||||
rev = "kak-tree-sitter-v0.5.2";
|
||||
hash = "sha256-oyb1mczin1CEZwG1YBJfy1dSEYpNpqmZ21mscrgkoBo=";
|
||||
rev = "61cce127ca03e3c969df1ff46f41074a3c69be31";
|
||||
hash = "sha256-wcgc1L6Y6obLTIonWLJzNK72fWW8oJ0yMEfGotCg5b8=";
|
||||
};
|
||||
|
||||
kak-tree-sitter = rustPlatform.buildRustPackage rec {
|
||||
inherit src;
|
||||
pname = "kak-tree-sitter";
|
||||
version = "0.5.2";
|
||||
cargoHash = "sha256-rvysHMMiI1e6RBKX+NFObB8fXGmzVnc+4/A5qPcEcm8=";
|
||||
version = "0.5.5-${lib.substring 0 6 src.rev}";
|
||||
cargoHash = "sha256-Ozzcn4k+1Q+50zxCy9Flvv8vZKNcAesrHT/izVAgn54=";
|
||||
cargoBuildOptions = [ "--package" "kak-tree-sitter" "--package" "ktsctl" ];
|
||||
|
||||
nativeBuildInputs = [ clang git ];
|
||||
|
|
Loading…
Reference in a new issue