diff options
author | Adam Stankiewicz <sheerun@sher.pl> | 2013-09-13 18:18:09 +0200 |
---|---|---|
committer | Adam Stankiewicz <sheerun@sher.pl> | 2013-09-13 18:18:09 +0200 |
commit | db99bf52d3372b2320696263ace9adc513e11ff1 (patch) | |
tree | e927d3468616ccb7a31d8f1fdc0014285f2ce054 /after/syntax/cpp.vim | |
parent | bbe1308b2fece55f50b8a12cfceef30c3d4e891b (diff) | |
download | vim-polyglot-db99bf52d3372b2320696263ace9adc513e11ff1.tar.gz vim-polyglot-db99bf52d3372b2320696263ace9adc513e11ff1.zip |
Add extended c/c++ syntax, closes #1
Diffstat (limited to 'after/syntax/cpp.vim')
-rw-r--r-- | after/syntax/cpp.vim | 1139 |
1 files changed, 1139 insertions, 0 deletions
diff --git a/after/syntax/cpp.vim b/after/syntax/cpp.vim new file mode 100644 index 00000000..e980e60d --- /dev/null +++ b/after/syntax/cpp.vim @@ -0,0 +1,1139 @@ +" Vim syntax file +" Language: C++ Additions +" Maintainer: Jon Haggblad <jon@haeggblad.com> +" URL: http://www.haeggblad.com +" Last Change: 17 May 2013 +" Version: 0.1 +" Changelog: +" 0.1 - initial version. +" +" Additional Vim syntax highlighting for C++ (including C++11) +" +" This file contains additional syntax highlighting that I use for my C++11 +" development in Vim. Compared to the standard syntax highlighting for C++ it +" adds highlighting of (user defined) functions and the containers and types +" in the standard library / boost. +" +" Based on: +" http://stackoverflow.com/questions/736701/class-function-names-highlighting-in-vim +" http://www.vim.org/scripts/script.php?script_id=4293 +" http://www.vim.org/scripts/script.php?script_id=2224 +" http://www.vim.org/scripts/script.php?script_id=1640 +" http://www.vim.org/scripts/script.php?script_id=3064 + +" ----------------------------------------------------------------------------- +" Highlight Class and Function names. +" +" Based on the discussion in: +" http://stackoverflow.com/questions/736701/class-function-names-highlighting-in-vim +" ----------------------------------------------------------------------------- +syn match cCustomParen "(" contains=cParen contains=cCppParen +syn match cCustomFunc "\w\+\s*(\@=" contains=cCustomParen +syn match cCustomScope "::" +syn match cCustomClass "\w\+\s*::" contains=cCustomScope + +hi def link cCustomFunc Function + +" Uncomment this to also highlight 'class::' and 'namespace::' +"hi def link cCustomClass Function + +" Alternative syntax that is used in: +" http://www.vim.org/scripts/script.php?script_id=3064 +"syn match cUserFunction "\<\h\w*\>\(\s\|\n\)*("me=e-1 contains=cType,cDelimiter,cDefine +"hi def link cCustomFunc Function + +" ----------------------------------------------------------------------------- +" Standard library types and functions. +" +" Mainly based on the excellent STL Syntax vim script by +" Mizuchi <ytj000@gmail.com> +" http://www.vim.org/scripts/script.php?script_id=4293 +" which in turn is based on the scripts +" http://www.vim.org/scripts/script.php?script_id=2224 +" http://www.vim.org/scripts/script.php?script_id=1640 +" ----------------------------------------------------------------------------- +syntax keyword cppSTLconstant badbit +syntax keyword cppSTLconstant digits +syntax keyword cppSTLconstant digits10 +syntax keyword cppSTLconstant eofbit +syntax keyword cppSTLconstant failbit +syntax keyword cppSTLconstant goodbit +syntax keyword cppSTLconstant has_denorm +syntax keyword cppSTLconstant has_denorm_loss +syntax keyword cppSTLconstant has_infinity +syntax keyword cppSTLconstant has_quiet_NaN +syntax keyword cppSTLconstant has_signaling_NaN +syntax keyword cppSTLconstant is_bounded +syntax keyword cppSTLconstant is_exact +syntax keyword cppSTLconstant is_iec559 +syntax keyword cppSTLconstant is_integer +syntax keyword cppSTLconstant is_modulo +syntax keyword cppSTLconstant is_signed +syntax keyword cppSTLconstant is_specialized +syntax keyword cppSTLconstant max_digits10 +syntax keyword cppSTLconstant max_exponent +syntax keyword cppSTLconstant max_exponent10 +syntax keyword cppSTLconstant min_exponent +syntax keyword cppSTLconstant min_exponent10 +syntax keyword cppSTLconstant nothrow +syntax keyword cppSTLconstant npos +syntax keyword cppSTLconstant radix +syntax keyword cppSTLconstant round_style +syntax keyword cppSTLconstant tinyness_before +syntax keyword cppSTLconstant traps +syntax keyword cppSTLexception bad_alloc +syntax keyword cppSTLexception bad_array_new_length +syntax keyword cppSTLexception bad_exception +syntax keyword cppSTLexception bad_typeid bad_cast +syntax keyword cppSTLexception domain_error +syntax keyword cppSTLexception exception +syntax keyword cppSTLexception invalid_argument +syntax keyword cppSTLexception length_error +syntax keyword cppSTLexception logic_error +syntax keyword cppSTLexception out_of_range +syntax keyword cppSTLexception overflow_error +syntax keyword cppSTLexception range_error +syntax keyword cppSTLexception runtime_error +syntax keyword cppSTLexception underflow_error +syntax keyword cppSTLfunction abort +syntax keyword cppSTLfunction abs +syntax keyword cppSTLfunction accumulate +syntax keyword cppSTLfunction acos +syntax keyword cppSTLfunction adjacent_difference +syntax keyword cppSTLfunction adjacent_find +syntax keyword cppSTLfunction adjacent_find_if +syntax keyword cppSTLfunction advance +syntax keyword cppSTLfunctional binary_function +syntax keyword cppSTLfunctional binary_negate +syntax keyword cppSTLfunctional bit_and +syntax keyword cppSTLfunctional bit_not +syntax keyword cppSTLfunctional bit_or +syntax keyword cppSTLfunctional divides +syntax keyword cppSTLfunctional equal_to +syntax keyword cppSTLfunctional greater +syntax keyword cppSTLfunctional greater_equal +syntax keyword cppSTLfunctional less +syntax keyword cppSTLfunctional less_equal +syntax keyword cppSTLfunctional logical_and +syntax keyword cppSTLfunctional logical_not +syntax keyword cppSTLfunctional logical_or +syntax keyword cppSTLfunctional minus +syntax keyword cppSTLfunctional modulus +syntax keyword cppSTLfunctional multiplies +syntax keyword cppSTLfunctional negate +syntax keyword cppSTLfunctional not_equal_to +syntax keyword cppSTLfunctional plus +syntax keyword cppSTLfunctional unary_function +syntax keyword cppSTLfunctional unary_negate +"syntax keyword cppSTLfunction any +syntax keyword cppSTLfunction append +syntax keyword cppSTLfunction arg +syntax keyword cppSTLfunction asctime +syntax keyword cppSTLfunction asin +syntax keyword cppSTLfunction assert +syntax keyword cppSTLfunction assign +syntax keyword cppSTLfunction at +syntax keyword cppSTLfunction atan +syntax keyword cppSTLfunction atan2 +syntax keyword cppSTLfunction atexit +syntax keyword cppSTLfunction atof +syntax keyword cppSTLfunction atoi +syntax keyword cppSTLfunction atol +syntax keyword cppSTLfunction back +syntax keyword cppSTLfunction back_inserter +syntax keyword cppSTLfunction bad +syntax keyword cppSTLfunction beg +syntax keyword cppSTLfunction begin +syntax keyword cppSTLfunction binary_compose +syntax keyword cppSTLfunction binary_negate +syntax keyword cppSTLfunction binary_search +syntax keyword cppSTLfunction bind1st +syntax keyword cppSTLfunction bind2nd +syntax keyword cppSTLfunction binder1st +syntax keyword cppSTLfunction binder2nd +syntax keyword cppSTLfunction bsearch +syntax keyword cppSTLfunction calloc +syntax keyword cppSTLfunction capacity +syntax keyword cppSTLfunction ceil +syntax keyword cppSTLfunction cerr +syntax keyword cppSTLfunction cin +syntax keyword cppSTLfunction clear +syntax keyword cppSTLfunction clearerr +syntax keyword cppSTLfunction clock +syntax keyword cppSTLfunction clog +syntax keyword cppSTLfunction close +syntax keyword cppSTLfunction compare +syntax keyword cppSTLfunction conj +syntax keyword cppSTLfunction construct +syntax keyword cppSTLfunction copy +syntax keyword cppSTLfunction copy_backward +syntax keyword cppSTLfunction cos +syntax keyword cppSTLfunction cosh +syntax keyword cppSTLfunction count +syntax keyword cppSTLfunction count_if +syntax keyword cppSTLfunction cout +syntax keyword cppSTLfunction c_str +syntax keyword cppSTLfunction ctime +syntax keyword cppSTLfunction data +syntax keyword cppSTLfunction denorm_min +syntax keyword cppSTLfunction destroy +syntax keyword cppSTLfunction difftime +syntax keyword cppSTLfunction distance +syntax keyword cppSTLfunction div +syntax keyword cppSTLfunction empty +syntax keyword cppSTLfunction end +syntax keyword cppSTLfunction eof +syntax keyword cppSTLfunction epsilon +syntax keyword cppSTLfunction equal +syntax keyword cppSTLfunction equal_range +syntax keyword cppSTLfunction erase +syntax keyword cppSTLfunction exit +syntax keyword cppSTLfunction exp +syntax keyword cppSTLfunction fabs +syntax keyword cppSTLfunction fail +syntax keyword cppSTLfunction failure +syntax keyword cppSTLfunction fclose +syntax keyword cppSTLfunction feof +syntax keyword cppSTLfunction ferror +syntax keyword cppSTLfunction fflush +syntax keyword cppSTLfunction fgetc +syntax keyword cppSTLfunction fgetpos +syntax keyword cppSTLfunction fgets +syntax keyword cppSTLfunction fill +syntax keyword cppSTLfunction fill_n +syntax keyword cppSTLfunction find +syntax keyword cppSTLfunction find_end +syntax keyword cppSTLfunction find_first_not_of +syntax keyword cppSTLfunction find_first_of +syntax keyword cppSTLfunction find_if +syntax keyword cppSTLfunction find_last_not_of +syntax keyword cppSTLfunction find_last_of +syntax keyword cppSTLfunction first +syntax keyword cppSTLfunction flags +syntax keyword cppSTLfunction flip +syntax keyword cppSTLfunction floor +syntax keyword cppSTLfunction flush +syntax keyword cppSTLfunction fmod +syntax keyword cppSTLfunction fopen +syntax keyword cppSTLfunction for_each +syntax keyword cppSTLfunction fprintf +syntax keyword cppSTLfunction fputc +syntax keyword cppSTLfunction fputs +syntax keyword cppSTLfunction fread +syntax keyword cppSTLfunction free +syntax keyword cppSTLfunction freopen +syntax keyword cppSTLfunction frexp +syntax keyword cppSTLfunction front +syntax keyword cppSTLfunction fscanf +syntax keyword cppSTLfunction fseek +syntax keyword cppSTLfunction fsetpos +syntax keyword cppSTLfunction ftell +syntax keyword cppSTLfunction fwide +syntax keyword cppSTLfunction fwprintf +syntax keyword cppSTLfunction fwrite +syntax keyword cppSTLfunction fwscanf +syntax keyword cppSTLfunction gcount +syntax keyword cppSTLfunction generate +syntax keyword cppSTLfunction generate_n +syntax keyword cppSTLfunction get +syntax keyword cppSTLfunction get_allocator +syntax keyword cppSTLfunction getc +syntax keyword cppSTLfunction getchar +syntax keyword cppSTLfunction getenv +syntax keyword cppSTLfunction getline +syntax keyword cppSTLfunction gets +syntax keyword cppSTLfunction get_temporary_buffer +syntax keyword cppSTLfunction gmtime +syntax keyword cppSTLfunction good +syntax keyword cppSTLfunction ignore +syntax keyword cppSTLfunction imag +syntax keyword cppSTLfunction in +syntax keyword cppSTLfunction includes +syntax keyword cppSTLfunction infinity +syntax keyword cppSTLfunction inner_product +syntax keyword cppSTLfunction inplace_merge +syntax keyword cppSTLfunction insert +syntax keyword cppSTLfunction inserter +syntax keyword cppSTLfunction ios +syntax keyword cppSTLfunction ios_base +syntax keyword cppSTLfunction iostate +syntax keyword cppSTLfunction iota +syntax keyword cppSTLfunction isalnum +syntax keyword cppSTLfunction isalpha +syntax keyword cppSTLfunction iscntrl +syntax keyword cppSTLfunction isdigit +syntax keyword cppSTLfunction isgraph +syntax keyword cppSTLfunction is_heap +syntax keyword cppSTLfunction islower +syntax keyword cppSTLfunction is_open +syntax keyword cppSTLfunction isprint +syntax keyword cppSTLfunction ispunct +syntax keyword cppSTLfunction isspace +syntax keyword cppSTLfunction isupper +syntax keyword cppSTLfunction isxdigit +syntax keyword cppSTLfunction iterator_category +syntax keyword cppSTLfunction iter_swap +syntax keyword cppSTLfunction jmp_buf +syntax keyword cppSTLfunction key_comp +syntax keyword cppSTLfunction labs +syntax keyword cppSTLfunction ldexp +syntax keyword cppSTLfunction ldiv +syntax keyword cppSTLfunction length +syntax keyword cppSTLfunction lexicographical_compare +syntax keyword cppSTLfunction lexicographical_compare_3way +syntax keyword cppSTLfunction llabs +syntax keyword cppSTLfunction lldiv +syntax keyword cppSTLfunction localtime +syntax keyword cppSTLfunction log +syntax keyword cppSTLfunction log10 +syntax keyword cppSTLfunction longjmp +syntax keyword cppSTLfunction lower_bound +syntax keyword cppSTLfunction make_heap +syntax keyword cppSTLfunction make_pair +syntax keyword cppSTLfunction malloc +syntax keyword cppSTLfunction max +syntax keyword cppSTLfunction max_element +syntax keyword cppSTLfunction max_size +syntax keyword cppSTLfunction memchr +syntax keyword cppSTLfunction memcpy +syntax keyword cppSTLfunction mem_fun +syntax keyword cppSTLfunction mem_fun_ref +syntax keyword cppSTLfunction memmove +syntax keyword cppSTLfunction memset +syntax keyword cppSTLfunction merge +syntax keyword cppSTLfunction min +syntax keyword cppSTLfunction min_element +syntax keyword cppSTLfunction mismatch +syntax keyword cppSTLfunction mktime +syntax keyword cppSTLfunction modf +syntax keyword cppSTLfunction next_permutation +syntax keyword cppSTLfunction none +syntax keyword cppSTLfunction norm +syntax keyword cppSTLfunction not1 +syntax keyword cppSTLfunction not2 +syntax keyword cppSTLfunction nth_element +syntax keyword cppSTLfunction numeric_limits +syntax keyword cppSTLfunction open +syntax keyword cppSTLfunction partial_sort +syntax keyword cppSTLfunction partial_sort_copy +syntax keyword cppSTLfunction partial_sum +syntax keyword cppSTLfunction partition +syntax keyword cppSTLfunction peek +syntax keyword cppSTLfunction perror +syntax keyword cppSTLfunction polar +syntax keyword cppSTLfunction pop +syntax keyword cppSTLfunction pop_back +syntax keyword cppSTLfunction pop_front +syntax keyword cppSTLfunction pop_heap +syntax keyword cppSTLfunction pow +syntax keyword cppSTLfunction power +syntax keyword cppSTLfunction precision +syntax keyword cppSTLfunction prev_permutation +syntax keyword cppSTLfunction printf +syntax keyword cppSTLfunction ptr_fun +syntax keyword cppSTLfunction push +syntax keyword cppSTLfunction push_back +syntax keyword cppSTLfunction push_front +syntax keyword cppSTLfunction push_heap +syntax keyword cppSTLfunction put +syntax keyword cppSTLfunction putback +syntax keyword cppSTLfunction putc +syntax keyword cppSTLfunction putchar +syntax keyword cppSTLfunction puts +syntax keyword cppSTLfunction qsort +syntax keyword cppSTLfunction quiet_NaN +syntax keyword cppSTLfunction raise +syntax keyword cppSTLfunction rand +syntax keyword cppSTLfunction random_sample +syntax keyword cppSTLfunction random_sample_n +syntax keyword cppSTLfunction random_shuffle +syntax keyword cppSTLfunction rbegin +syntax keyword cppSTLfunction rdbuf +syntax keyword cppSTLfunction rdstate +syntax keyword cppSTLfunction read +syntax keyword cppSTLfunction real +syntax keyword cppSTLfunction realloc +syntax keyword cppSTLfunction remove +syntax keyword cppSTLfunction remove_copy +syntax keyword cppSTLfunction remove_copy_if +syntax keyword cppSTLfunction remove_if +syntax keyword cppSTLfunction rename +syntax keyword cppSTLfunction rend +syntax keyword cppSTLfunction replace +syntax keyword cppSTLfunction replace_copy +syntax keyword cppSTLfunction replace_copy_if +syntax keyword cppSTLfunction replace_if +syntax keyword cppSTLfunction reserve +syntax keyword cppSTLfunction reset +syntax keyword cppSTLfunction resize +syntax keyword cppSTLfunction return_temporary_buffer +syntax keyword cppSTLfunction reverse +syntax keyword cppSTLfunction reverse_copy +syntax keyword cppSTLfunction rewind +syntax keyword cppSTLfunction rfind +syntax keyword cppSTLfunction rotate +syntax keyword cppSTLfunction rotate_copy +syntax keyword cppSTLfunction round_error +syntax keyword cppSTLfunction scanf +syntax keyword cppSTLfunction search +syntax keyword cppSTLfunction search_n +syntax keyword cppSTLfunction second +syntax keyword cppSTLfunction seekg +syntax keyword cppSTLfunction seekp +syntax keyword cppSTLfunction setbuf +syntax keyword cppSTLfunction set_difference +syntax keyword cppSTLfunction setf +syntax keyword cppSTLfunction set_intersection +syntax keyword cppSTLfunction setjmp +syntax keyword cppSTLfunction setlocale +syntax keyword cppSTLfunction set_new_handler +syntax keyword cppSTLfunction set_symmetric_difference +syntax keyword cppSTLfunction set_union +syntax keyword cppSTLfunction setvbuf +syntax keyword cppSTLfunction signal +syntax keyword cppSTLfunction signaling_NaN +syntax keyword cppSTLfunction sin +syntax keyword cppSTLfunction sinh +syntax keyword cppSTLfunction size +syntax keyword cppSTLfunction sort +syntax keyword cppSTLfunction sort_heap +syntax keyword cppSTLfunction splice +syntax keyword cppSTLfunction sprintf +syntax keyword cppSTLfunction sqrt +syntax keyword cppSTLfunction srand +syntax keyword cppSTLfunction sscanf +syntax keyword cppSTLfunction stable_partition +syntax keyword cppSTLfunction stable_sort +syntax keyword cppSTLfunction str +syntax keyword cppSTLfunction strcat +syntax keyword cppSTLfunction strchr +syntax keyword cppSTLfunction strcmp +syntax keyword cppSTLfunction strcoll +syntax keyword cppSTLfunction strcpy +syntax keyword cppSTLfunction strcspn +syntax keyword cppSTLfunction strerror +syntax keyword cppSTLfunction strftime +syntax keyword cppSTLfunction string +syntax keyword cppSTLfunction strlen +syntax keyword cppSTLfunction strncat +syntax keyword cppSTLfunction strncmp +syntax keyword cppSTLfunction strncpy +syntax keyword cppSTLfunction strpbrk +syntax keyword cppSTLfunction strrchr +syntax keyword cppSTLfunction strspn +syntax keyword cppSTLfunction strstr +syntax keyword cppSTLfunction strtod +syntax keyword cppSTLfunction strtok +syntax keyword cppSTLfunction strtol +syntax keyword cppSTLfunction strtoul +syntax keyword cppSTLfunction strxfrm +syntax keyword cppSTLfunction substr +syntax keyword cppSTLfunction swap +syntax keyword cppSTLfunction swap_ranges +syntax keyword cppSTLfunction swprintf +syntax keyword cppSTLfunction swscanf +syntax keyword cppSTLfunction sync_with_stdio +syntax keyword cppSTLfunction system +syntax keyword cppSTLfunction tan +syntax keyword cppSTLfunction tanh +syntax keyword cppSTLfunction tellg +syntax keyword cppSTLfunction tellp +syntax keyword cppSTLfunction test +syntax keyword cppSTLfunction time +syntax keyword cppSTLfunction time_t +syntax keyword cppSTLfunction tmpfile +syntax keyword cppSTLfunction tmpnam +syntax keyword cppSTLfunction tolower +syntax keyword cppSTLfunction top +syntax keyword cppSTLfunction to_string +syntax keyword cppSTLfunction to_ulong +syntax keyword cppSTLfunction toupper +syntax keyword cppSTLfunction to_wstring +syntax keyword cppSTLfunction transform +syntax keyword cppSTLfunction unary_compose +syntax keyword cppSTLfunction unget +syntax keyword cppSTLfunction ungetc +syntax keyword cppSTLfunction uninitialized_copy +syntax keyword cppSTLfunction uninitialized_copy_n +syntax keyword cppSTLfunction uninitialized_fill +syntax keyword cppSTLfunction uninitialized_fill_n +syntax keyword cppSTLfunction unique +syntax keyword cppSTLfunction unique_copy +syntax keyword cppSTLfunction unsetf +syntax keyword cppSTLfunction upper_bound +syntax keyword cppSTLfunction va_arg +syntax keyword cppSTLfunction va_arg +syntax keyword cppSTLfunction va_copy +syntax keyword cppSTLfunction va_end +syntax keyword cppSTLfunction value_comp +syntax keyword cppSTLfunction va_start +syntax keyword cppSTLfunction vfprintf +syntax keyword cppSTLfunction vfwprintf +syntax keyword cppSTLfunction vprintf +syntax keyword cppSTLfunction vsprintf +syntax keyword cppSTLfunction vswprintf +syntax keyword cppSTLfunction vwprintf +syntax keyword cppSTLfunction width +syntax keyword cppSTLfunction wprintf +syntax keyword cppSTLfunction write +syntax keyword cppSTLfunction wscanf +syntax keyword cppSTLios boolalpha +syntax keyword cppSTLios dec +syntax keyword cppSTLios defaultfloat +syntax keyword cppSTLios endl +syntax keyword cppSTLios ends +syntax keyword cppSTLios fixed +syntax keyword cppSTLios flush +syntax keyword cppSTLios get_money +syntax keyword cppSTLios get_time +syntax keyword cppSTLios hex +syntax keyword cppSTLios hexfloat +syntax keyword cppSTLios internal +syntax keyword cppSTLios noboolalpha +syntax keyword cppSTLios noshowbase +syntax keyword cppSTLios noshowpoint +syntax keyword cppSTLios noshowpos +syntax keyword cppSTLios noskipws +syntax keyword cppSTLios nounitbuf +syntax keyword cppSTLios nouppercase +syntax keyword cppSTLios oct +syntax keyword cppSTLios put_money +syntax keyword cppSTLios put_time +syntax keyword cppSTLios resetiosflags +syntax keyword cppSTLios scientific +syntax keyword cppSTLios setbase +syntax keyword cppSTLios setfill +syntax keyword cppSTLios setiosflags +syntax keyword cppSTLios setprecision +syntax keyword cppSTLios setw +syntax keyword cppSTLios showbase +syntax keyword cppSTLios showpoint +syntax keyword cppSTLios showpos +syntax keyword cppSTLios skipws +syntax keyword cppSTLios unitbuf +syntax keyword cppSTLios uppercase +"syntax keyword cppSTLios ws +syntax keyword cppSTLiterator back_insert_iterator +syntax keyword cppSTLiterator bidirectional_iterator +syntax keyword cppSTLiterator const_iterator +syntax keyword cppSTLiterator const_reverse_iterator +syntax keyword cppSTLiterator forward_iterator +syntax keyword cppSTLiterator front_insert_iterator +syntax keyword cppSTLiterator input_iterator +syntax keyword cppSTLiterator insert_iterator +syntax keyword cppSTLiterator istreambuf_iterator +syntax keyword cppSTLiterator istream_iterator +syntax keyword cppSTLiterator iterator +syntax keyword cppSTLiterator ostream_iterator +syntax keyword cppSTLiterator output_iterator +syntax keyword cppSTLiterator random_access_iterator +syntax keyword cppSTLiterator raw_storage_iterator +syntax keyword cppSTLiterator reverse_bidirectional_iterator +syntax keyword cppSTLiterator reverse_iterator +syntax keyword cppSTLiterator_tag bidirectional_iterator_tag +syntax keyword cppSTLiterator_tag forward_iterator_tag +syntax keyword cppSTLiterator_tag input_iterator_tag +syntax keyword cppSTLiterator_tag output_iterator_tag +syntax keyword cppSTLiterator_tag random_access_iterator_tag +syntax keyword cppSTLnamespace rel_ops +syntax keyword cppSTLnamespace std +syntax keyword cppSTLtype allocator +syntax keyword cppSTLtype auto_ptr +syntax keyword cppSTLtype basic_fstream +syntax keyword cppSTLtype basic_ifstream +syntax keyword cppSTLtype basic_istringstream +syntax keyword cppSTLtype basic_ofstream +syntax keyword cppSTLtype basic_ostringstream +syntax keyword cppSTLtype basic_string +syntax keyword cppSTLtype basic_stringstream +syntax keyword cppSTLtype binary_compose +syntax keyword cppSTLtype binder1st +syntax keyword cppSTLtype binder2nd +syntax keyword cppSTLtype bitset +syntax keyword cppSTLtype char_traits +syntax keyword cppSTLtype char_type +syntax keyword cppSTLtype const_mem_fun1_t +syntax keyword cppSTLtype const_mem_fun_ref1_t +syntax keyword cppSTLtype const_mem_fun_ref_t +syntax keyword cppSTLtype const_mem_fun_t +syntax keyword cppSTLtype const_pointer +syntax keyword cppSTLtype const_reference +syntax keyword cppSTLtype deque +syntax keyword cppSTLtype difference_type +syntax keyword cppSTLtype div_t +syntax keyword cppSTLtype double_t +syntax keyword cppSTLtype filebuf +syntax keyword cppSTLtype first_type +syntax keyword cppSTLtype float_denorm_style +syntax keyword cppSTLtype float_round_style +syntax keyword cppSTLtype float_t +syntax keyword cppSTLtype fstream +syntax keyword cppSTLtype gslice_array +syntax keyword cppSTLtype ifstream +syntax keyword cppSTLtype imaxdiv_t +syntax keyword cppSTLtype indirect_array +syntax keyword cppSTLtype int_type +syntax keyword cppSTLtype istringstream +syntax keyword cppSTLtype iterator_traits +syntax keyword cppSTLtype key_compare +syntax keyword cppSTLtype key_type +syntax keyword cppSTLtype ldiv_t +syntax keyword cppSTLtype list +syntax keyword cppSTLtype lldiv_t +syntax keyword cppSTLtype map +syntax keyword cppSTLtype mapped_type +syntax keyword cppSTLtype mask_array +syntax keyword cppSTLtype mem_fun1_t +syntax keyword cppSTLtype mem_fun_ref1_t +syntax keyword cppSTLtype mem_fun_ref_t +syntax keyword cppSTLtype mem_fun_t +syntax keyword cppSTLtype multimap +syntax keyword cppSTLtype multiset +syntax keyword cppSTLtype nothrow_t +syntax keyword cppSTLtype off_type +syntax keyword cppSTLtype ofstream +syntax keyword cppSTLtype ostream +syntax keyword cppSTLtype ostringstream +syntax keyword cppSTLtype pair +syntax keyword cppSTLtype pointer +syntax keyword cppSTLtype pointer_to_binary_function +syntax keyword cppSTLtype pointer_to_unary_function +syntax keyword cppSTLtype pos_type +syntax keyword cppSTLtype priority_queue +syntax keyword cppSTLtype queue +syntax keyword cppSTLtype reference +syntax keyword cppSTLtype second_type +syntax keyword cppSTLtype sequence_buffer +syntax keyword cppSTLtype set +syntax keyword cppSTLtype sig_atomic_t +syntax keyword cppSTLtype size_type +syntax keyword cppSTLtype slice_array +syntax keyword cppSTLtype stack +syntax keyword cppSTLtype stream +syntax keyword cppSTLtype string +syntax keyword cppSTLtype stringbuf +syntax keyword cppSTLtype stringstream +syntax keyword cppSTLtype temporary_buffer +syntax keyword cppSTLtype test_type +syntax keyword cppSTLtype tm +syntax keyword cppSTLtype traits_type +syntax keyword cppSTLtype type_info +syntax keyword cppSTLtype u16string +syntax keyword cppSTLtype u32string +syntax keyword cppSTLtype unary_compose +syntax keyword cppSTLtype unary_negate +syntax keyword cppSTLtype valarray +syntax keyword cppSTLtype value_compare +syntax keyword cppSTLtype value_type +syntax keyword cppSTLtype vector +syntax keyword cppSTLtype wfstream +syntax keyword cppSTLtype wifstream +syntax keyword cppSTLtype wistringstream +syntax keyword cppSTLtype wofstream +syntax keyword cppSTLtype wostringstream +syntax keyword cppSTLtype wstring +syntax keyword cppSTLtype wstringbuf +syntax keyword cppSTLtype wstringstream + +if !exists("cpp_no_cpp11") + syntax keyword cppSTLtype nullptr_t max_align_t + syntax keyword cppSTLtype type_index + + " type_traits + syntax keyword cppSTLtype is_void + syntax keyword cppSTLtype is_integral + syntax keyword cppSTLtype is_floating_point + syntax keyword cppSTLtype is_array + syntax keyword cppSTLtype is_enum + syntax keyword cppSTLtype is_union + syntax keyword cppSTLtype is_class + syntax keyword cppSTLtype is_function + syntax keyword cppSTLtype is_pointer + syntax keyword cppSTLtype is_lvalue_reference + syntax keyword cppSTLtype is_rvalue_reference + syntax keyword cppSTLtype is_member_object_pointer + syntax keyword cppSTLtype is_member_function_pointer + syntax keyword cppSTLtype is_fundamental + syntax keyword cppSTLtype is_arithmetic + syntax keyword cppSTLtype is_scalar + syntax keyword cppSTLtype is_object + syntax keyword cppSTLtype is_compound + syntax keyword cppSTLtype is_reference + syntax keyword cppSTLtype is_member_pointer + syntax keyword cppSTLtype is_const + syntax keyword cppSTLtype is_volatile + syntax keyword cppSTLtype is_trivial + syntax keyword cppSTLtype is_trivially_copyable + syntax keyword cppSTLtype is_standard_layout + syntax keyword cppSTLtype is_pod + syntax keyword cppSTLtype is_literal_type + syntax keyword cppSTLtype is_empty + syntax keyword cppSTLtype is_polymorphic + syntax keyword cppSTLtype is_abstract + syntax keyword cppSTLtype is_signed + syntax keyword cppSTLtype is_unsigned + syntax keyword cppSTLtype is_constructible + syntax keyword cppSTLtype is_trivially_constructible + syntax keyword cppSTLtype is_nothrow_constructible + syntax keyword cppSTLtype is_default_constructible + syntax keyword cppSTLtype is_trivially_default_constructible + syntax keyword cppSTLtype is_nothrow_default_constructible + syntax keyword cppSTLtype is_copy_constructible + syntax keyword cppSTLtype is_trivially_copy_constructible + syntax keyword cppSTLtype is_nothrow_copy_constructible + syntax keyword cppSTLtype is_move_constructible + syntax keyword cppSTLtype is_trivially_move_constructible + syntax keyword cppSTLtype is_nothrow_move_constructible + syntax keyword cppSTLtype is_assignable + syntax keyword cppSTLtype is_trivially_assignable + syntax keyword cppSTLtype is_nothrow_assignable + syntax keyword cppSTLtype is_copy_assignable + syntax keyword cppSTLtype is_trivially_copy_assignable + syntax keyword cppSTLtype is_nothrow_copy_assignable + syntax keyword cppSTLtype is_move_assignable + syntax keyword cppSTLtype is_trivially_move_assignable + syntax keyword cppSTLtype is_nothrow_move_assignable + syntax keyword cppSTLtype is_destructible + syntax keyword cppSTLtype is_trivially_destructible + syntax keyword cppSTLtype alignment_of + syntax keyword cppSTLtype rank + syntax keyword cppSTLtype extent + syntax keyword cppSTLtype is_same + syntax keyword cppSTLtype is_base_of + syntax keyword cppSTLtype is_convertible + syntax keyword cppSTLtype remove_cv + syntax keyword cppSTLtype remove_const + syntax keyword cppSTLtype remove_volatile + syntax keyword cppSTLtype add_cv + syntax keyword cppSTLtype add_const + syntax keyword cppSTLtype add_volatile + syntax keyword cppSTLtype remove_reference + syntax keyword cppSTLtype add_lvalue_reference + syntax keyword cppSTLtype add_rvalue_reference + syntax keyword cppSTLtype remove_pointer + syntax keyword cppSTLtype add_pointer + syntax keyword cppSTLtype make_signed + syntax keyword cppSTLtype make_unsigned + syntax keyword cppSTLtype remove_extent + syntax keyword cppSTLtype remove_all_extents + syntax keyword cppSTLtype aligned_storage + syntax keyword cppSTLtype aligned_union + syntax keyword cppSTLtype decay + syntax keyword cppSTLtype enable_if + syntax keyword cppSTLtype conditional + syntax keyword cppSTLtype common_type + syntax keyword cppSTLtype underlying_type + syntax keyword cppSTLtype result_of + syntax keyword cppSTLtype integral_constant + syntax keyword cppSTLtype true_type + syntax keyword cppSTLtype false_type + + " memory + syntax keyword cppSTLtype unique_ptr + syntax keyword cppSTLtype shared_ptr + syntax keyword cppSTLtype weak_ptr + syntax keyword cppSTLtype owner_less + syntax keyword cppSTLtype enable_shared_from_this + syntax keyword cppSTLexception bad_weak_ptr + syntax keyword cppSTLtype default_delete + syntax keyword cppSTLtype allocator_traits + syntax keyword cppSTLtype allocator_type + syntax keyword cppSTLtype allocator_arg_t + syntax keyword cppSTLconstant allocator_arg + syntax keyword cppSTLtype uses_allocator + syntax keyword cppSTLtype scoped_allocator_adaptor + syntax keyword cppSTLfunction declare_reachable + syntax keyword cppSTLfunction undeclare_reachable + syntax keyword cppSTLfunction declare_no_pointers + syntax keyword cppSTLfunction undeclare_no_pointers + syntax keyword cppSTLfunction get_pointer_safety + syntax keyword cppSTLtype pointer_safety + syntax keyword cppSTLtype pointer_traits + syntax keyword cppSTLfunction addressof + syntax keyword cppSTLfunction align + + " function object + syntax keyword cppSTLfunction bind + syntax keyword cppSTLtype is_bind_expression + syntax keyword cppSTLtype is_placeholder + syntax keyword cppSTLconstant _1 _2 _3 _4 _5 _6 _7 _8 _9 + syntax keyword cppSTLfunction mem_fn + syntax keyword cppSTLfunctional function + syntax keyword cppSTLexception bad_function_call + syntax keyword cppSTLtype reference_wrapper + syntax keyword cppSTLfunction ref cref + + " bitset + syntax keyword cppSTLfunction all + syntax keyword cppSTLfunction to_ullong + + " iterator + syntax keyword cppSTLiterator move_iterator + syntax keyword cppSTLfunction make_move_iterator + syntax keyword cppSTLfunction next prev + + " program support utilities + syntax keyword cppSTLfunction quick_exit + syntax keyword cppSTLfunction _Exit + syntax keyword cppSTLfunction at_quick_exit + + " date and time + syntax keyword cppSTLnamespace chrono + syntax keyword cppSTLtype duration + syntax keyword cppSTLtype system_clock + syntax keyword cppSTLtype steady_clock + syntax keyword cppSTLtype high_resolution_clock + syntax keyword cppSTLtype time_point + + " tuple + syntax keyword cppSTLtype tuple + syntax keyword cppSTLfunction make_tuple + syntax keyword cppSTLfunction tie + syntax keyword cppSTLfunction forward_as_tuple + syntax keyword cppSTLfunction tuple_cat + syntax keyword cppSTLtype tuple_size tuple_element + + " Container + syntax keyword cppSTLtype array + syntax keyword cppSTLtype forward_list + syntax keyword cppSTLtype unordered_map + syntax keyword cppSTLtype unordered_set + syntax keyword cppSTLtype unordered_multimap + syntax keyword cppSTLtype unordered_multiset + syntax keyword cppSTLtype tuple + syntax keyword cppSTLfunction cbegin + syntax keyword cppSTLfunction cend + syntax keyword cppSTLfunction crbegin + syntax keyword cppSTLfunction crend + syntax keyword cppSTLfunction shrink_to_fit + syntax keyword cppSTLfunction emplace + syntax keyword cppSTLfunction emplace_back + syntax keyword cppSTLfunction emplace_front + syntax keyword cppSTLfunction emplace_hint + + "forward_list + syntax keyword cppSTLfunction before_begin + syntax keyword cppSTLfunction cbefore_begin + syntax keyword cppSTLfunction insert_after + syntax keyword cppSTLfunction emplace_after + syntax keyword cppSTLfunction erase_after + syntax keyword cppSTLfunction splice_after + + " unordered + syntax keyword cppSTLtype hash + syntax keyword cppSTLtype hasher + syntax keyword cppSTLtype key_equal + syntax keyword cppSTLiterator local_iterator + syntax keyword cppSTLiterator const_local_iterator + syntax keyword cppSTLfunction bucket_count + syntax keyword cppSTLfunction max_bucket_count + syntax keyword cppSTLfunction bucket_size + syntax keyword cppSTLfunction bucket + syntax keyword cppSTLfunction load_factor + syntax keyword cppSTLfunction max_load_factor + syntax keyword cppSTLfunction rehash + syntax keyword cppSTLfunction reserve + syntax keyword cppSTLfunction hash_function + syntax keyword cppSTLfunction key_eq + + " algorithm + syntax keyword cppSTLfunction all_of any_of none_of + syntax keyword cppSTLfunction find_if_not + syntax keyword cppSTLfunction copy_if + syntax keyword cppSTLfunction copy_n + syntax keyword cppSTLfunction move + syntax keyword cppSTLfunction move_backward + syntax keyword cppSTLfunction shuffle + syntax keyword cppSTLfunction is_partitioned + syntax keyword cppSTLfunction partition_copy + syntax keyword cppSTLfunction partition_point + syntax keyword cppSTLfunction is_sorted + syntax keyword cppSTLfunction is_sorted_until + syntax keyword cppSTLfunction is_heap_until + syntax keyword cppSTLfunction minmax + syntax keyword cppSTLfunction minmax_element + syntax keyword cppSTLfunction is_permutation + syntax keyword cppSTLfunction itoa + + " numerics + syntax keyword cppSTLfunction imaxabs + syntax keyword cppSTLfunction imaxdiv + syntax keyword cppSTLfunction remainder + syntax keyword cppSTLfunction remquo + syntax keyword cppSTLfunction fma + syntax keyword cppSTLfunction fmax + syntax keyword cppSTLfunction fmin + syntax keyword cppSTLfunction fdim + syntax keyword cppSTLfunction nan + syntax keyword cppSTLfunction nanf + syntax keyword cppSTLfunction nanl + syntax keyword cppSTLfunction exp2 + syntax keyword cppSTLfunction expm1 + syntax keyword cppSTLfunction log1p + syntax keyword cppSTLfunction log2 + syntax keyword cppSTLfunction cbrt + syntax keyword cppSTLfunction hypot + syntax keyword cppSTLfunction asinh + syntax keyword cppSTLfunction acosh + syntax keyword cppSTLfunction atanh + syntax keyword cppSTLfunction erf + syntax keyword cppSTLfunction erfc + syntax keyword cppSTLfunction lgamma + syntax keyword cppSTLfunction tgamma + syntax keyword cppSTLfunction trunc + syntax keyword cppSTLfunction round + syntax keyword cppSTLfunction lround + syntax keyword cppSTLfunction llround + syntax keyword cppSTLfunction nearbyint + syntax keyword cppSTLfunction rint + syntax keyword cppSTLfunction lrint + syntax keyword cppSTLfunction llrint + syntax keyword cppSTLfunction scalbn + syntax keyword cppSTLfunction scalbln + syntax keyword cppSTLfunction ilogb + syntax keyword cppSTLfunction logb + syntax keyword cppSTLfunction nextafter + syntax keyword cppSTLfunction nexttoward + syntax keyword cppSTLfunction copysign + syntax keyword cppSTLfunction fpclassify + syntax keyword cppSTLfunction isfinite + syntax keyword cppSTLfunction isinf + syntax keyword cppSTLfunction isnan + syntax keyword cppSTLfunction isnormal + syntax keyword cppSTLfunction signbit + syntax keyword cppSTLconstant HUGE_VALF + syntax keyword cppSTLconstant HUGE_VALL + syntax keyword cppSTLconstant INFINITY + syntax keyword cppSTLconstant NAN + syntax keyword cppSTLconstant math_errhandling + syntax keyword cppSTLconstant MATH_ERRNO + syntax keyword cppSTLconstant MATH_ERREXCEPT + syntax keyword cppSTLconstant FP_NORMAL + syntax keyword cppSTLconstant FP_SUBNORMAL + syntax keyword cppSTLconstant FP_ZERO + syntax keyword cppSTLconstant FP_INFINITY + syntax keyword cppSTLconstant FP_NAN + syntax keyword cppSTLconstant FLT_EVAL_METHOD + + " complex + syntax keyword cppSTLfunction proj + + " random + syntax keyword cppSTLtype linear_congruential_engine + syntax keyword cppSTLtype mersenne_twister_engine + syntax keyword cppSTLtype subtract_with_carry_engine + syntax keyword cppSTLtype discard_block_engine + syntax keyword cppSTLtype independent_bits_engine + syntax keyword cppSTLtype shuffle_order_engine + syntax keyword cppSTLtype random_device + syntax keyword cppSTLtype default_random_engine + syntax keyword cppSTLtype minstd_rand0 + syntax keyword cppSTLtype minstd_rand + syntax keyword cppSTLtype mt19937 + syntax keyword cppSTLtype mt19937_64 + syntax keyword cppSTLtype ranlux24_base + syntax keyword cppSTLtype ranlux48_base + syntax keyword cppSTLtype ranlux24 + syntax keyword cppSTLtype ranlux48 + syntax keyword cppSTLtype knuth_b + syntax keyword cppSTLfunction generate_canonical + syntax keyword cppSTLtype uniform_int_distribution + syntax keyword cppSTLtype uniform_real_distribution + syntax keyword cppSTLtype bernoulli_distribution + syntax keyword cppSTLtype binomial_distribution + syntax keyword cppSTLtype negative_binomial_distribution + syntax keyword cppSTLtype geometric_distribution + syntax keyword cppSTLtype poisson_distribution + syntax keyword cppSTLtype exponential_distribution + syntax keyword cppSTLtype gamma_distribution + syntax keyword cppSTLtype weibull_distribution + syntax keyword cppSTLtype extreme_value_distribution + syntax keyword cppSTLtype normal_distribution + syntax keyword cppSTLtype lognormal_distribution + syntax keyword cppSTLtype chi_squared_distribution + syntax keyword cppSTLtype cauchy_distribution + syntax keyword cppSTLtype fisher_f_distribution + syntax keyword cppSTLtype student_t_distribution + syntax keyword cppSTLtype discrete_distribution + syntax keyword cppSTLtype piecewise_constant_distribution + syntax keyword cppSTLtype piecewise_linear_distribution + syntax keyword cppSTLtype seed_seq + + " io + syntax keyword cppSTLfunction iostream_category + syntax keyword cppSTLenum io_errc + syntax keyword cppSTLfunction vscanf vfscanf vsscanf + syntax keyword cppSTLfunction snprintf vsnprintf + syntax keyword cppSTLfunction vwscanf vfwscanf vswscanf + + " locale + syntax keyword cppSTLfunction isblank + syntax keyword cppSTLtype wstring_convert + syntax keyword cppSTLtype wbuffer_convert + syntax keyword cppSTLtype codecvt_utf8 + syntax keyword cppSTLtype codecvt_utf16 + syntax keyword cppSTLtype codecvt_utf8_utf16 + syntax keyword cppSTLtype codecvt_mode + + " regex + syntax keyword cppSTLtype basic_regex + syntax keyword cppSTLtype sub_match + syntax keyword cppSTLtype match_results + syntax keyword cppSTLtype regex_traits + syntax keyword cppSTLtype regex_match regex_search regex_replace + syntax keyword cppSTLiterator regex_iterator + syntax keyword cppSTLiterator regex_token_iterator + syntax keyword cppSTLexception regex_error + syntax keyword cppSTLtype syntax_option_type match_flag_type error_type + + " atomic + syntax keyword cppSTLtype atomic + syntax keyword cppSTLfunction atomic_is_lock_free + syntax keyword cppSTLfunction atomic_store + syntax keyword cppSTLfunction atomic_store_explicit + syntax keyword cppSTLfunction atomic_load + syntax keyword cppSTLfunction atomic_load_explicit + syntax keyword cppSTLfunction atomic_exchange + syntax keyword cppSTLfunction atomic_exchange_explicit + syntax keyword cppSTLfunction atomic_compare_exchange_weak + syntax keyword cppSTLfunction atomic_compare_exchange_weak_explicit + syntax keyword cppSTLfunction atomic_compare_exchange_strong + syntax keyword cppSTLfunction atomic_compare_exchange_strong_explicit + syntax keyword cppSTLfunction atomic_fetch_add + syntax keyword cppSTLfunction atomic_fetch_add_explicit + syntax keyword cppSTLfunction atomic_fetch_sub + syntax keyword cppSTLfunction atomic_fetch_sub_explicit + syntax keyword cppSTLfunction atomic_fetch_and + syntax keyword cppSTLfunction atomic_fetch_and_explicit + syntax keyword cppSTLfunction atomic_fetch_or + syntax keyword cppSTLfunction atomic_fetch_or_explicit + syntax keyword cppSTLfunction atomic_fetch_xor + syntax keyword cppSTLfunction atomic_fetch_xor_explicit + + syntax keyword cppSTLtype atomic_flag + syntax keyword cppSTLfunction atomic_flag_test_and_set + syntax keyword cppSTLfunction atomic_flag_test_and_set_explicit + syntax keyword cppSTLfunction atomic_flag_clear + syntax keyword cppSTLfunction atomic_flag_clear_explicit + + syntax keyword cppSTLtype memory_order + syntax keyword cppSTLfunction atomic_init + syntax keyword cppSTLfunction ATOMIC_VAR_INIT + syntax keyword cppSTLconstant ATOMIC_FLAG_INIT + syntax keyword cppSTLconstant kill_dependency + syntax keyword cppSTLconstant atomic_thread_fence + syntax keyword cppSTLconstant atomic_signal_fence + + " thread + syntax keyword cppSTLtype thread + syntax keyword cppSTLfunction yield + syntax keyword cppSTLfunction get_id + syntax keyword cppSTLfunction sleep_for + syntax keyword cppSTLfunction sleep_until + + syntax keyword cppSTLfunction joinable + syntax keyword cppSTLfunction get_id + syntax keyword cppSTLfunction native_handle + syntax keyword cppSTLfunction hardware_concurrency + syntax keyword cppSTLfunction join + syntax keyword cppSTLfunction detach + + syntax keyword cppSTLtype mutex + syntax keyword cppSTLtype timed_mutex + syntax keyword cppSTLtype recursive_mutex + syntax keyword cppSTLtype recursive_timed_mutex + syntax keyword cppSTLtype lock_guard + syntax keyword cppSTLtype unique_lock + syntax keyword cppSTLtype defer_lock_t + syntax keyword cppSTLtype try_to_lock_t + syntax keyword cppSTLtype adopt_lock_t + syntax keyword cppSTLconstant defer_lock try_to_lock adopt_lock + syntax keyword cppSTLfunction try_lock lock + syntax keyword cppSTLfunction call_once + syntax keyword cppSTLtype once_flag + syntax keyword cppSTLtype condition_variable + syntax keyword cppSTLtype condition_variable_any + syntax keyword cppSTLfunction notify_all_at_thread_exit + syntax keyword cppSTLenum cv_status + + syntax keyword cppSTLtype promise + syntax keyword cppSTLtype packaged_task + syntax keyword cppSTLtype future + syntax keyword cppSTLtype shared_future + + "syntax keyword cppSTLfunction async + "syntax keyword cppSTLenum launch + + syntax keyword cppSTLenum future_status + syntax keyword cppSTLenum future_errc + syntax keyword cppSTLtype future_error + syntax keyword cppSTLfunction future_category + + " string + syntax keyword cppSTLfunction stoi + syntax keyword cppSTLfunction stol + syntax keyword cppSTLfunction stoll + syntax keyword cppSTLfunction stoul + syntax keyword cppSTLfunction stoull + syntax keyword cppSTLfunction stof + syntax keyword cppSTLfunction stod + syntax keyword cppSTLfunction stold + + " ratio + syntax keyword cppSTLtype ratio + syntax keyword cppSTLtype yocto + syntax keyword cppSTLtype zepto + syntax keyword cppSTLtype atto + syntax keyword cppSTLtype femto + syntax keyword cppSTLtype pico + syntax keyword cppSTLtype nano + syntax keyword cppSTLtype micro + syntax keyword cppSTLtype milli + syntax keyword cppSTLtype centi + syntax keyword cppSTLtype deci + syntax keyword cppSTLtype deca + syntax keyword cppSTLtype hecto + syntax keyword cppSTLtype kilo + syntax keyword cppSTLtype mega + syntax keyword cppSTLtype giga + syntax keyword cppSTLtype tera + syntax keyword cppSTLtype peta + syntax keyword cppSTLtype exa + syntax keyword cppSTLtype zetta + syntax keyword cppSTLtype yotta + syntax keyword cppSTLtype ratio_add + syntax keyword cppSTLtype ratio_subtract + syntax keyword cppSTLtype ratio_multiply + syntax keyword cppSTLtype ratio_divide + syntax keyword cppSTLtype ratio_equal + syntax keyword cppSTLtype ratio_not_equal + syntax keyword cppSTLtype ratio_less + syntax keyword cppSTLtype ratio_less_equal + syntax keyword cppSTLtype ratio_greater + syntax keyword cppSTLtype ratio_greater_equal + + "limits + syntax keyword cppSTLfunction lowest +endif + +" Default highlighting +if version >= 508 || !exists("did_cpp_syntax_inits") + if version < 508 + let did_cpp_syntax_inits = 1 + command -nargs=+ HiLink hi link <args> + else + command -nargs=+ HiLink hi def link <args> + endif + HiLink cppSTLfunction Function + HiLink cppSTLfunctional Type + HiLink cppSTLconstant Constant + HiLink cppSTLnamespace Constant + HiLink cppSTLtype Type + HiLink cppSTLexception Type + HiLink cppSTLiterator Type + HiLink cppSTLiterator_tag Type + HiLink cppSTLenum Type + HiLink cppSTLios Function + delcommand HiLink +endif + |