Split builtin objects / types

Closes #55
This commit is contained in:
Caleb Donovick
2018-12-18 15:29:50 -08:00
committed by nfnty
parent 7ecb80f0fc
commit 0a925278f7
4 changed files with 22 additions and 5 deletions

View File

@@ -61,6 +61,7 @@ let g:python_highlight_all = 1
| `b:python_version_2` | Python 2 mode (buffer local) | `0` | | `b:python_version_2` | Python 2 mode (buffer local) | `0` |
| `g:python_highlight_builtins` | Highlight builtin functions and objects | `0` | | `g:python_highlight_builtins` | Highlight builtin functions and objects | `0` |
| `g:python_highlight_builtin_objs` | Highlight builtin objects only | `0` | | `g:python_highlight_builtin_objs` | Highlight builtin objects only | `0` |
| `g:python_highlight_builtin_types` | Highlight builtin types only | `0` |
| `g:python_highlight_builtin_funcs` | Highlight builtin functions only | `0` | | `g:python_highlight_builtin_funcs` | Highlight builtin functions only | `0` |
| `g:python_highlight_builtin_funcs_kwarg` | Highlight builtin functions when used as kwarg | `1` | | `g:python_highlight_builtin_funcs_kwarg` | Highlight builtin functions when used as kwarg | `1` |
| `g:python_highlight_exceptions` | Highlight standard exceptions | `0` | | `g:python_highlight_exceptions` | Highlight standard exceptions | `0` |

View File

@@ -62,6 +62,9 @@ following command to your `~/.config/nvim/init.vim` or `~/.vimrc`: >
`g:python_highlight_builtin_objs` (default `0`) `g:python_highlight_builtin_objs` (default `0`)
Highlight builtin objects only Highlight builtin objects only
`g:python_highlight_builtin_types` (default `0`)
Highlight builtin types only
`g:python_highlight_builtin_funcs` (default `0`) `g:python_highlight_builtin_funcs` (default `0`)
Highlight builtin functions only Highlight builtin functions only

View File

@@ -44,6 +44,7 @@ if s:Enabled('g:python_highlight_all')
if s:Enabled('g:python_highlight_builtins') if s:Enabled('g:python_highlight_builtins')
call s:EnableByDefault('g:python_highlight_builtin_objs') call s:EnableByDefault('g:python_highlight_builtin_objs')
call s:EnableByDefault('g:python_highlight_builtin_funcs') call s:EnableByDefault('g:python_highlight_builtin_funcs')
call s:EnableByDefault('g:python_highlight_builtin_types')
endif endif
call s:EnableByDefault('g:python_highlight_exceptions') call s:EnableByDefault('g:python_highlight_exceptions')
call s:EnableByDefault('g:python_highlight_string_formatting') call s:EnableByDefault('g:python_highlight_string_formatting')
@@ -92,7 +93,7 @@ else
syn match pythonStatement '\<async\s\+def\>' nextgroup=pythonFunction skipwhite syn match pythonStatement '\<async\s\+def\>' nextgroup=pythonFunction skipwhite
syn match pythonStatement '\<async\s\+with\>' syn match pythonStatement '\<async\s\+with\>'
syn match pythonStatement '\<async\s\+for\>' syn match pythonStatement '\<async\s\+for\>'
syn cluster pythonExpression contains=pythonStatement,pythonRepeat,pythonConditional,pythonOperator,pythonNumber,pythonHexNumber,pythonOctNumber,pythonBinNumber,pythonFloat,pythonString,pythonBytes,pythonBoolean,pythonNone,pythonBuiltinObj,pythonBuiltinFunc syn cluster pythonExpression contains=pythonStatement,pythonRepeat,pythonConditional,pythonOperator,pythonNumber,pythonHexNumber,pythonOctNumber,pythonBinNumber,pythonFloat,pythonString,pythonBytes,pythonBoolean,pythonNone,pythonSingleton,pythonBuiltinObj,pythonBuiltinFunc,pythonBuiltinType
endif endif
@@ -330,14 +331,13 @@ else
endif endif
" "
" Builtin objects and types " Builtin objects
" "
if s:Enabled('g:python_highlight_builtin_objs') if s:Enabled('g:python_highlight_builtin_objs')
syn keyword pythonNone None syn keyword pythonNone None
syn keyword pythonBoolean True False syn keyword pythonBoolean True False
syn keyword pythonBuiltinObj Ellipsis NotImplemented syn keyword pythonSingleton Ellipsis NotImplemented
syn match pythonBuiltinObj '\v\.@<!<%(object|bool|int|float|tuple|str|list|dict|set|frozenset|bytearray|bytes)>'
syn keyword pythonBuiltinObj __debug__ __doc__ __file__ __name__ __package__ syn keyword pythonBuiltinObj __debug__ __doc__ __file__ __name__ __package__
syn keyword pythonBuiltinObj __loader__ __spec__ __path__ __cached__ syn keyword pythonBuiltinObj __loader__ __spec__ __path__ __cached__
endif endif
@@ -368,6 +368,15 @@ if s:Enabled('g:python_highlight_builtin_funcs')
unlet s:funcs_re unlet s:funcs_re
endif endif
"
" Builtin types
"
if s:Enabled('g:python_highlight_builtin_types')
syn match pythonBuiltinType '\v\.@<!<%(object|bool|int|float|tuple|str|list|dict|set|frozenset|bytearray|bytes)>'
endif
" "
" Builtin exceptions and warnings " Builtin exceptions and warnings
" "
@@ -469,9 +478,11 @@ if v:version >= 508 || !exists('did_python_syn_inits')
HiLink pythonBoolean Boolean HiLink pythonBoolean Boolean
HiLink pythonNone Constant HiLink pythonNone Constant
HiLink pythonSingleton Constant
HiLink pythonBuiltinObj Structure HiLink pythonBuiltinObj Identifier
HiLink pythonBuiltinFunc Function HiLink pythonBuiltinFunc Function
HiLink pythonBuiltinType Structure
HiLink pythonExClass Structure HiLink pythonExClass Structure
HiLink pythonClassVar Identifier HiLink pythonClassVar Identifier

View File

@@ -38,6 +38,8 @@ async for
True False Ellipsis None NotImplemented True False Ellipsis None NotImplemented
__debug__ __doc__ __file__ __name__ __package__ __loader__ __spec__ __path__ __cached__
# Bultin types # Bultin types
bool bytearray dict float frozenset int list object set str tuple bool bytearray dict float frozenset int list object set str tuple