mirror of
https://github.com/chenasraf/nvim-treesitter.git
synced 2026-05-18 01:39:00 +00:00
injections(nix): add nixosTest.testScript + home-manager nvim config
(+ add Check to mkDerivation bash matches) (+ add Check to mkDerivation bash matches)
This commit is contained in:
committed by
Christian Clason
parent
b171f948da
commit
628d5e442c
@@ -188,3 +188,32 @@
|
||||
])
|
||||
(#match? @_func "(^|\\.)writeRust(Bin)?$")
|
||||
(#set! injection.combined))
|
||||
|
||||
; (nixosTest) testScript
|
||||
((binding
|
||||
attrpath: (attrpath) @_attr_name
|
||||
(#eq? @_attr_name "nodes"))
|
||||
(binding
|
||||
attrpath: (attrpath) @_func_name
|
||||
(#eq? @_func_name "testScript")
|
||||
(_
|
||||
(string_fragment) @injection.content
|
||||
(#set! injection.language "python")))
|
||||
(#set! injection.combined))
|
||||
|
||||
; home-manager Neovim plugin config
|
||||
(attrset_expression
|
||||
(binding_set
|
||||
(binding
|
||||
attrpath: (attrpath) @_ty_attr
|
||||
(_
|
||||
(string_fragment) @_ty)
|
||||
(#eq? @_ty_attr "type")
|
||||
(#eq? @_ty "lua"))
|
||||
(binding
|
||||
attrpath: (attrpath) @_cfg_attr
|
||||
(_
|
||||
(string_fragment) @injection.content
|
||||
(#set! injection.language "lua"))
|
||||
(#eq? @_cfg_attr "config")))
|
||||
(#set! injection.combined))
|
||||
|
||||
70
tests/query/injections/nix/test-nix-injections.nix
Normal file
70
tests/query/injections/nix/test-nix-injections.nix
Normal file
@@ -0,0 +1,70 @@
|
||||
{ pkgs, stdenv }:
|
||||
# NOTE: This file is for testing queries. If evaluated with nix, this will probably error.
|
||||
{
|
||||
regex = builtins.match "^.*[{](.+)[}].*$" "blahblah {something} blahblah" [ "something" ];
|
||||
|
||||
drv1 = stdenv.mkDerivation {
|
||||
buildPhase = "mkdir $out";
|
||||
installPhase = ''
|
||||
echo "bar" > $out/foo.txt
|
||||
'';
|
||||
};
|
||||
|
||||
drv2 = pkgs.writeShellApplication {
|
||||
name = "shellApp";
|
||||
buildInputs = [];
|
||||
text = ''
|
||||
echo "Hello world!"
|
||||
'';
|
||||
};
|
||||
|
||||
drv3 = pkgs.runCommand "foo-bar" {} ''
|
||||
mkir $out
|
||||
echo "bar" > $out/foo.txt
|
||||
'';
|
||||
|
||||
drv4 = pkgs.writeShellScriptBin "hello" ''
|
||||
echo "Hello world!"
|
||||
'';
|
||||
|
||||
drv5 = pkgs.writeFishBin "hello" ''
|
||||
echo "Hello world!"
|
||||
'';
|
||||
|
||||
drv6 = pkgs.writeHaskellBin "hello" ''
|
||||
main :: IO ()
|
||||
main = putStrLn "Hello world!"
|
||||
'';
|
||||
|
||||
drv7 = pkgs.writeJSBin "hello" ''
|
||||
console.log('Hello world!');
|
||||
'';
|
||||
|
||||
drv8 = pkgs.writePerlBin "hello" ''
|
||||
print("Hello world!\n");
|
||||
'';
|
||||
|
||||
drv9 = pkgs.writePythonBin "hello" ''
|
||||
print("Hello world!");
|
||||
'';
|
||||
|
||||
drv10 = pkgs.writeRustBin "hello" ''
|
||||
fn main() {
|
||||
println!("Hello world!");
|
||||
}
|
||||
'';
|
||||
|
||||
drv11 = {
|
||||
nodes = null;
|
||||
testScript = ''
|
||||
print("Hello world!");
|
||||
'';
|
||||
};
|
||||
|
||||
mod1 = {
|
||||
type = "lua";
|
||||
config = ''
|
||||
require('nvim-treesitter.configs').setup()
|
||||
'';
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user