You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.8 KiB
61 lines
1.8 KiB
/* |
|
Language: Vala |
|
Author: Antono Vasiljev <antono.vasiljev@gmail.com> |
|
Description: Vala is a new programming language that aims to bring modern programming language features to GNOME developers without imposing any additional runtime requirements and without using a different ABI compared to applications and libraries written in C. |
|
Website: https://wiki.gnome.org/Projects/Vala |
|
*/ |
|
|
|
function vala(hljs) { |
|
return { |
|
name: 'Vala', |
|
keywords: { |
|
keyword: |
|
// Value types |
|
'char uchar unichar int uint long ulong short ushort int8 int16 int32 int64 uint8 ' + |
|
'uint16 uint32 uint64 float double bool struct enum string void ' + |
|
// Reference types |
|
'weak unowned owned ' + |
|
// Modifiers |
|
'async signal static abstract interface override virtual delegate ' + |
|
// Control Structures |
|
'if while do for foreach else switch case break default return try catch ' + |
|
// Visibility |
|
'public private protected internal ' + |
|
// Other |
|
'using new this get set const stdout stdin stderr var', |
|
built_in: |
|
'DBus GLib CCode Gee Object Gtk Posix', |
|
literal: |
|
'false true null' |
|
}, |
|
contains: [ |
|
{ |
|
className: 'class', |
|
beginKeywords: 'class interface namespace', |
|
end: /\{/, |
|
excludeEnd: true, |
|
illegal: '[^,:\\n\\s\\.]', |
|
contains: [ hljs.UNDERSCORE_TITLE_MODE ] |
|
}, |
|
hljs.C_LINE_COMMENT_MODE, |
|
hljs.C_BLOCK_COMMENT_MODE, |
|
{ |
|
className: 'string', |
|
begin: '"""', |
|
end: '"""', |
|
relevance: 5 |
|
}, |
|
hljs.APOS_STRING_MODE, |
|
hljs.QUOTE_STRING_MODE, |
|
hljs.C_NUMBER_MODE, |
|
{ |
|
className: 'meta', |
|
begin: '^#', |
|
end: '$', |
|
relevance: 2 |
|
} |
|
] |
|
}; |
|
} |
|
|
|
module.exports = vala;
|
|
|