This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'set'
|
||||
module Rouge
|
||||
module Lexers
|
||||
load_lexer 'yaml.rb'
|
||||
|
||||
class Digdag < YAML
|
||||
title 'digdag'
|
||||
desc 'A simple, open source, multi-cloud workflow engine (https://www.digdag.io/)'
|
||||
tag 'digdag'
|
||||
filenames '*.dig'
|
||||
|
||||
mimetypes 'application/x-digdag'
|
||||
|
||||
# http://docs.digdag.io/operators.html
|
||||
# as of digdag v0.9.10
|
||||
KEYWORD_PATTERN = Regexp.union(%w(
|
||||
call
|
||||
require
|
||||
loop
|
||||
for_each
|
||||
if
|
||||
fail
|
||||
echo
|
||||
|
||||
td
|
||||
td_run
|
||||
td_ddl
|
||||
td_load
|
||||
td_for_each
|
||||
td_wait
|
||||
td_wait_table
|
||||
td_partial_delete
|
||||
td_table_export
|
||||
|
||||
pg
|
||||
|
||||
mail
|
||||
http
|
||||
s3_wait
|
||||
redshift
|
||||
redshift_load
|
||||
redshift_unload
|
||||
emr
|
||||
|
||||
gcs_wait
|
||||
bq
|
||||
bq_ddl
|
||||
bq_extract
|
||||
bq_load
|
||||
|
||||
sh
|
||||
py
|
||||
rb
|
||||
embulk
|
||||
).map { |name| "#{name}>"} + %w(
|
||||
_do
|
||||
_parallel
|
||||
))
|
||||
|
||||
prepend :block_nodes do
|
||||
rule %r/(#{KEYWORD_PATTERN})(:)(?=\s|$)/ do |m|
|
||||
groups Keyword::Reserved, Punctuation::Indicator
|
||||
set_indent m[0], :implicit => true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user