Improve bibop recipe support

This commit is contained in:
Anton Novojilov 2021-02-16 15:59:54 +03:00
commit 2a7f8ac68f
3 changed files with 16 additions and 1 deletions

View file

@ -8,6 +8,7 @@
{ "trigger": "lock-workdir\t— Change current directory to working dir for every command", "contents": "lock-workdir ${1:no}" },
{ "trigger": "unbuffer\t— Disables I/O stream buffering", "contents": "unbuffer ${1:flag}" },
{ "trigger": "delay\t— Delay between commands", "contents": "delay ${1:seconds}" },
{ "trigger": "https-skip-verify\t— Disables TLS/SSL certificates verification", "contents": "https-skip-verify ${1:yes}" },
{ "trigger": "command\t— Executes command", "contents": "command \"${1:command}\" \"${2:description}\"" },
@ -25,6 +26,7 @@
{ "trigger": "mode\t— Checks file or directory permissions", "contents": "mode ${1:path} ${2:mode}" },
{ "trigger": "owner\t— Checks file or directory owner", "contents": "owner ${1:path} ${2:user}:${3:group}" },
{ "trigger": "exist\t— Checks if file or directory exist", "contents": "exist ${1:path}" },
{ "trigger": "link\t— Checks if link points on given file or directory", "contents": "link ${1:link} ${2:target}" },
{ "trigger": "readable\t— Checks if file or directory is readable for some user", "contents": "readable ${1:username} ${2:path}" },
{ "trigger": "writable\t— Checks if file or directory is writable for some user", "contents": "writable ${1:username} ${2:path}" },
{ "trigger": "executable\t— Checks if file or directory is executable for some user", "contents": "executable ${1:username} ${2:path}" },

View file

@ -0,0 +1,4 @@
{
"auto_complete": true,
"auto_complete_selector": "bibop.action, keyword.other"
}

View file

@ -12,6 +12,7 @@ contexts:
- include: strings
- include: keywords
- include: commands
- include: actions
- include: variables
comments:
@ -56,7 +57,7 @@ contexts:
pop: true
keywords:
- match: '^(dir|require-root|unsafe-actions|fast-finish|lock-workdir|unbuffer|delay|pkg)'
- match: '^(dir|require-root|unsafe-actions|fast-finish|lock-workdir|unbuffer|delay|https-skip-verify|pkg)'
scope: keyword.other
- match: '\b(true|false|yes|no)\b'
scope: constant.language
@ -72,6 +73,14 @@ contexts:
1: meta.function
2: meta.function.tag
actions:
- match: '^( |\t)[a-z-]+'
scope: bibop.action
- match: '^(?: |\t)(\!)([a-z-]+)'
captures:
1: bibop.action.negative-sign
2: bibop.action
variables:
- match: '^(var) +([\d\w\S]+)'
captures: