hl_c.json 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. /*
  2. * plugins/hl_c.json
  3. *
  4. * Copyright (C) 2022 bzt (bztsrc@gitlab)
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License as published by
  8. * the Free Software Foundation; either version 3 of the License, or
  9. * (at your option) any later version.
  10. *
  11. * This program is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14. * GNU General Public License for more details.
  15. *
  16. * You should have received a copy of the GNU General Public License
  17. * along with this program; if not, write to the Free Software
  18. * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  19. *
  20. * @brief Syntax highlight rules for the C language
  21. *
  22. */
  23. [
  24. /* 0 comments */ [ "\/\/.*?$", "\/\*.*?\*\/" ],
  25. /* 1 pseudo */ [ "#.*?$" ],
  26. /* 2 operators */ [ "\->", "<<=", ">>=", "<<", ">>", "\+\+", "\-\-", "&&", "\|\|", "[=<>\+\-\*\/%~&\^\|!]=", "[=<>\+\-\*\/%~&\^\|!\?:\.]" ],
  27. /* 3 numbers */ [ "[\-]?[0-9][0-9bx]?[0-9\.a-fp]*[UL]*" ],
  28. /* 4 strings */ [ "\"", "'", "L\"", "L'" ],
  29. /* 5 separators */ [ "[", "]", "{", "}", ",", ";", ":" ],
  30. /* 6 types */ [ "signed", "unsigned", "char", "short", "int", "long", "float", "double", "true", "false", "null", "nullptr",
  31. "enum", "struct", "typedef", "static", "inline", "register", "wchar_t", "int8_t", "int16_t", "int32_t", "int64_t",
  32. "uint8_t", "uint16_t", "uint32_t", "uint64_t", "intptr_t", "wchar_t", "size_t", "ssize_t", "off_t", "ino_t",
  33. "dev_t", "gid_t", "uid_t", "mode_t", "nlink_t", "pid_t", "time_t", "addr_t", "str_t", "void" ],
  34. /* 7 keywords */ [ "if", "else", "switch", "case", "default", "for", "while", "do", "break", "continue", "return", "goto", "sizeof",
  35. "volatile", "asm" ]
  36. ]