2 lines
40 KiB
JavaScript
Raw Normal View History

2025-09-05 14:59:21 +08:00
const e=Object.freeze(JSON.parse('{"displayName":"Assembly","fileTypes":["asm","nasm","yasm","inc","s"],"name":"asm","patterns":[{"include":"#registers"},{"include":"#mnemonics"},{"include":"#constants"},{"include":"#entities"},{"include":"#support"},{"include":"#comments"},{"include":"#preprocessor"},{"include":"#strings"}],"repository":{"comments":{"patterns":[{"match":"(;|(^|\\\\s)#\\\\s).*$","name":"comment.line"},{"begin":"/\\\\*","end":"\\\\*/","name":"comment.block"},{"begin":"^\\\\s*[#%]\\\\s*if\\\\s+0\\\\b","end":"^\\\\s*[#%]\\\\s*endif\\\\b","name":"comment.preprocessor"}]},"constants":{"patterns":[{"match":"(?i)\\\\b0[by](?:[01][01_]*)\\\\.(?:(?:[01][01_]*)?(?:p[+-]?(?:\\\\d[0-9_]*))?\\\\b)?","name":"constant.numeric.binary.floating-point.asm.x86_64"},{"match":"(?i)\\\\b0[by](?:[01][01_]*)(?:p[+-]?(?:\\\\d[0-9_]*))\\\\b","name":"constant.numeric.binary.floating-point.asm.x86_64"},{"match":"(?i)\\\\b0[oq](?:[0-7][0-7_]*)\\\\.(?:(?:[0-7][0-7_]*)?(?:p[+-]?(?:\\\\d[0-9_]*))?\\\\b)?","name":"constant.numeric.octal.floating-point.asm.x86_64"},{"match":"(?i)\\\\b0[oq](?:[0-7][0-7_]*)(?:p[+-]?(?:\\\\d[0-9_]*))\\\\b","name":"constant.numeric.octal.floating-point.asm.x86_64"},{"match":"(?i)\\\\b(?:0[dt])?(?:\\\\d[0-9_]*)\\\\.(?:(?:\\\\d[0-9_]*)?(?:e[+-]?(?:\\\\d[0-9_]*))?\\\\b)?","name":"constant.numeric.decimal.floating-point.asm.x86_64"},{"match":"(?i)\\\\b(?:\\\\d[0-9_]*)(?:e[+-]?(?:\\\\d[0-9_]*))\\\\b","name":"constant.numeric.decimal.floating-point.asm.x86_64"},{"match":"(?i)\\\\b(?:\\\\d[0-9_]*)p(?:\\\\d[0-9_]*)?\\\\b","name":"constant.numeric.decimal.packed-bcd.asm.x86_64"},{"match":"(?i)\\\\b0[xh](?:[0-9A-Fa-f][0-9A-Fa-f_]*)\\\\.(?:(?:[0-9A-Fa-f][0-9A-Fa-f_]*)?(?:p[+-]?(?:\\\\d[0-9_]*))?\\\\b)?","name":"constant.numeric.hex.floating-point.asm.x86_64"},{"match":"(?i)\\\\b0[xh](?:[0-9A-Fa-f][0-9A-Fa-f_]*)(?:p[+-]?(?:\\\\d[0-9_]*))\\\\b","name":"constant.numeric.hex.floating-point.asm.x86_64"},{"match":"(?i)\\\\$\\\\d_?(?:[0-9A-Fa-f][0-9A-Fa-f_]*)?\\\\.(?:(?:[0-9A-Fa-f][0-9A-Fa-f_]*)?(?:p[+-]?(?:\\\\d[0-9_]*))?\\\\b)?","name":"constant.numeric.hex.floating-point.asm.x86_64"},{"match":"(?i)\\\\$\\\\d_?(?:[0-9A-Fa-f][0-9A-Fa-f_]*)(?:p[+-]?(?:\\\\d[0-9_]*))\\\\b","name":"constant.numeric.hex.floating-point.asm.x86_64"},{"match":"(?i)\\\\b(?:(?:0[by](?:[01][01_]*))|(?:(?:[01][01_]*)[by]))\\\\b","name":"constant.numeric.binary.asm.x86_64"},{"match":"(?i)\\\\b(?:(?:0[oq](?:[0-7][0-7_]*))|(?:(?:[0-7][0-7_]*)[oq]))\\\\b","name":"constant.numeric.octal.asm.x86_64"},{"match":"(?i)\\\\b(?:(?:0[dt](?:\\\\d[0-9_]*))|(?:(?:\\\\d[0-9_]*)[dt]?))\\\\b","name":"constant.numeric.decimal.asm.x86_64"},{"match":"(?i)(?:\\\\$\\\\d_?(?:[0-9A-Fa-f][0-9A-Fa-f_]*)?)\\\\b","name":"constant.numeric.hex.asm.x86_64"},{"match":"(?i)\\\\b(?:(?:0[xh](?:[0-9A-Fa-f][0-9A-Fa-f_]*))|(?:(?:[0-9A-Fa-f][0-9A-Fa-f_]*)[hxHX]))\\\\b","name":"constant.numeric.hex.asm.x86_64"}]},"entities":{"patterns":[{"match":"((section|segment)\\\\s+)?\\\\.((ro)?data|bss|text)","name":"entity.name.section"},{"match":"^\\\\.?(globa?l|extern|required)\\\\b","name":"entity.directive"},{"match":"(\\\\$\\\\w+)\\\\b","name":"text.variable"},{"captures":{"1":{"name":"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64"},"2":{"name":"entity.name.function.special.asm.x86_64"},"3":{"name":"punctuation.separator.asm.x86_64"}},"match":"(\\\\.\\\\.@)((?:[A-Za-z_?](?:[0-9A-Za-z_$#@~.?]*)))(?:(:)?|\\\\b)","name":"entity.name.function.asm.x86_64"},{"captures":{"1":{"name":"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64"},"2":{"name":"entity.name.function.asm.x86_64"},"3":{"name":"punctuation.separator.asm.x86_64"}},"match":"(?:(\\\\.)?|\\\\b)((?:[A-Za-z_?](?:[0-9A-Za-z_$#@~.?]*)))(?:(:))","name":"entity.name.function.asm.x86_64"},{"captures":{"1":{"name":"punctuation.separator.asm.x86_64 storage.modifier.asm.x86_64"},"2":{"name":"entity.name.function.asm.x86_64"},"3":{"name":"punctuation.separator.asm.x86_64"}},"match":"(\\\\.)(\\\\d+(?:[0-9A-Za-z_$#@~.?]*))(?:(:)?|\\\\b)","name":"entity.name.function.asm.x86_64"},{"captures":{"1":{"name":"punctuation.separator.asm.