+let g:switch_custom_definitions =
+ \ [
+ \ ['EXPECT_FALSE', 'EXPECT_TRUE'],
+ \ ['EXPECT_EQ', 'EXPECT_NE'],
+ \ ['EXPECT_LT', 'EXPECT_GT'],
+ \ ['ASSERT_FALSE', 'ASSERT_TRUE'],
+ \ ['ASSERT_EQ', 'ASSERT_NE'],
+ \ ['ASSERT_LT', 'ASSERT_GT']
+ \ ]
+
+let g:switch_const_definitions =
+ \ [ {
+ \ '\%(const \)\@!\([[:alnum:]_:<>]\{-}\) \%(&\)\@!': 'const \1 ',
+ \ 'const \([[:alnum:]_:<>]\{-}\) &\@!': 'const \1 &' ,
+ \ 'const \([[:alnum:]_:<>]\{-}\) &': '\1 '
+ \ } ]
+
+nnoremap <buffer> <leader>c :call switch#Switch({'definitions': g:switch_const_definitions})<cr>
+
+" Disable ale as we use ycm
+let b:ale_enabled = 0
+