mirror of
https://github.com/gryf/python-syntax.git
synced 2025-12-19 04:20:24 +01:00
Compare commits
13 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
878e75cf90 | ||
|
|
9209dd0c02 | ||
|
|
ea215a9085 | ||
|
|
9dc6765ad1 | ||
|
|
453269d0f8 | ||
|
|
efe8499cfb | ||
|
|
69f8e12a46 | ||
|
|
21a2e84df6 | ||
|
|
9ccbd6196b | ||
|
|
6f6f10ff54 | ||
|
|
a0d21acc1c | ||
|
|
ebbdd093b7 | ||
|
|
fc6a66bf80 |
26
CHANGES.txt
26
CHANGES.txt
@@ -1,3 +1,29 @@
|
||||
Revision 3.3.7 (2014-12-27):
|
||||
|
||||
- Add support for Python 3 non-ASCII decorator names.
|
||||
Patch by Victor Salgado
|
||||
|
||||
Revision 3.3.6 (2013-11-18):
|
||||
|
||||
- Highlight 'yield from' statement introduced in Python 3.3. Reported by
|
||||
Elizabeth Myers.
|
||||
|
||||
Revision 3.3.5 (2013-08-31):
|
||||
|
||||
- Highlight 'import', 'from' and 'as' as include statements.
|
||||
Patch by pydave at GitHub.
|
||||
- Added new option 'python_highlight_file_headers_as_comments' (disabled by
|
||||
default) to highlight shebang and coding file headers as comments.
|
||||
Proposed by pydave at GitHub.
|
||||
|
||||
Revision 3.3.4 (2013-08-11):
|
||||
|
||||
- Highlight True and False as booleans. Patch by Yuri Habrusiev.
|
||||
|
||||
Revision 3.3.3 (2013-06-02):
|
||||
|
||||
- More lightweight syntax reloading. Patch by Will Gray.
|
||||
|
||||
Revision 3.3.2 (2013-06-01):
|
||||
|
||||
- Fixed behaviour of b:python_version_2 variable. Reported by Will Gray.
|
||||
|
||||
21
LICENSE
Normal file
21
LICENSE
Normal file
@@ -0,0 +1,21 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2002-2014 Dmitry Vasiliev <dima@hlabs.org>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
16
README.rst
16
README.rst
@@ -117,6 +117,8 @@ Options used by the script
|
||||
Highlight doc-tests
|
||||
``python_print_as_function``
|
||||
Highlight ``print`` statement as function for Python 2
|
||||
``python_highlight_file_headers_as_comments``
|
||||
Highlight shebang and coding headers as comments
|
||||
``python_highlight_all``
|
||||
Enable all the options above. *NOTE: This option don't override any
|
||||
previously set options*
|
||||
@@ -126,11 +128,17 @@ Options used by the script
|
||||
Contributors
|
||||
------------
|
||||
|
||||
- Jeroen Ruigrok van der Werven
|
||||
- Pedro Algarvio
|
||||
- John Eikenberry
|
||||
- Caleb Adamantine
|
||||
List of the contributors in alphabetical order:
|
||||
|
||||
- Andrea Riciputi
|
||||
- Anton Butanaev
|
||||
- Caleb Adamantine
|
||||
- Elizabeth Myers
|
||||
- Jeroen Ruigrok van der Werven
|
||||
- John Eikenberry
|
||||
- Marc Weber
|
||||
- Pedro Algarvio
|
||||
- pydave at GitHub
|
||||
- Victor Salgado
|
||||
- Will Gray
|
||||
- Yuri Habrusiev
|
||||
|
||||
3
TODO.txt
3
TODO.txt
@@ -1,6 +1,9 @@
|
||||
Now
|
||||
===
|
||||
|
||||
- It seems python.vim doesn't highlight special characters inside strings by
|
||||
default but only when it reloaded?
|
||||
|
||||
- Add support for slice syntax:
|
||||
http://img155.imageshack.us/img155/7767/screenshotgs.png
|
||||
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
" Language: Python
|
||||
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
|
||||
" URL: https://github.com/hdima/python-syntax
|
||||
" Last Change: 2013-06-01
|
||||
" Last Change: 2014-12-27
|
||||
" Filenames: *.py
|
||||
" Version: 3.3.2
|
||||
" Version: 3.3.7
|
||||
"
|
||||
" Based on python.vim (from Vim 6.1 distribution)
|
||||
" by Neil Schemenauer <nas at python dot ca>
|
||||
@@ -20,14 +20,20 @@
|
||||
" Contributors
|
||||
" ============
|
||||
"
|
||||
" Jeroen Ruigrok van der Werven
|
||||
" Pedro Algarvio
|
||||
" John Eikenberry
|
||||
" Caleb Adamantine
|
||||
" List of the contributors in alphabetical order:
|
||||
"
|
||||
" Andrea Riciputi
|
||||
" Anton Butanaev
|
||||
" Caleb Adamantine
|
||||
" Elizabeth Myers
|
||||
" Jeroen Ruigrok van der Werven
|
||||
" John Eikenberry
|
||||
" Marc Weber
|
||||
" Pedro Algarvio
|
||||
" pydave at GitHub
|
||||
" Victor Salgado
|
||||
" Will Gray
|
||||
" Yuri Habrusiev
|
||||
"
|
||||
" Options
|
||||
" =======
|
||||
@@ -69,6 +75,9 @@
|
||||
" python_highlight_doctests Highlight doc-tests
|
||||
" python_print_as_function Highlight 'print' statement as
|
||||
" function for Python 2
|
||||
" python_highlight_file_headers_as_comments
|
||||
" Highlight shebang and coding
|
||||
" headers as comments
|
||||
"
|
||||
" python_highlight_all Enable all the options above
|
||||
" NOTE: This option don't override
|
||||
@@ -88,8 +97,8 @@ endif
|
||||
"
|
||||
" Commands
|
||||
"
|
||||
command! -buffer Python2Syntax let b:python_version_2 = 1 | if exists("g:syntax_on") | syn off | endif | syn enable
|
||||
command! -buffer Python3Syntax let b:python_version_2 = 0 | if exists("g:syntax_on") | syn off | endif | syn enable
|
||||
command! -buffer Python2Syntax let b:python_version_2 = 1 | let &syntax=&syntax
|
||||
command! -buffer Python3Syntax let b:python_version_2 = 0 | let &syntax=&syntax
|
||||
|
||||
" Enable option if it's not defined
|
||||
function! s:EnableByDefault(name)
|
||||
@@ -141,23 +150,28 @@ syn keyword pythonStatement break continue del
|
||||
syn keyword pythonStatement exec return
|
||||
syn keyword pythonStatement pass raise
|
||||
syn keyword pythonStatement global assert
|
||||
syn keyword pythonStatement lambda yield
|
||||
syn keyword pythonStatement lambda
|
||||
syn keyword pythonStatement with
|
||||
syn keyword pythonStatement def class nextgroup=pythonFunction skipwhite
|
||||
syn keyword pythonRepeat for while
|
||||
syn keyword pythonConditional if elif else
|
||||
syn keyword pythonPreCondit import from
|
||||
syn keyword pythonImport import
|
||||
syn keyword pythonException try except finally
|
||||
syn keyword pythonOperator and in is not or
|
||||
|
||||
syn match pythonStatement "\<yield\>" display
|
||||
syn match pythonImport "\<from\>" display
|
||||
|
||||
if s:Python2Syntax()
|
||||
if !s:Enabled("g:python_print_as_function")
|
||||
syn keyword pythonStatement print
|
||||
endif
|
||||
syn keyword pythonPreCondit as
|
||||
syn keyword pythonImport as
|
||||
syn match pythonFunction "[a-zA-Z_][a-zA-Z0-9_]*" display contained
|
||||
else
|
||||
syn keyword pythonStatement as nonlocal False None True
|
||||
syn keyword pythonStatement as nonlocal None
|
||||
syn match pythonStatement "\<yield\s\+from\>" display
|
||||
syn keyword pythonBoolean True False
|
||||
syn match pythonFunction "\%([^[:cntrl:][:space:][:punct:][:digit:]]\|_\)\%([^[:cntrl:][:punct:][:space:]]\|_\)*" display contained
|
||||
endif
|
||||
|
||||
@@ -166,7 +180,11 @@ endif
|
||||
"
|
||||
|
||||
syn match pythonDecorator "@" display nextgroup=pythonDottedName skipwhite
|
||||
syn match pythonDottedName "[a-zA-Z_][a-zA-Z0-9_]*\%(\.[a-zA-Z_][a-zA-Z0-9_]*\)*" display contained
|
||||
if s:Python2Syntax()
|
||||
syn match pythonDottedName "[a-zA-Z_][a-zA-Z0-9_]*\%(\.[a-zA-Z_][a-zA-Z0-9_]*\)*" display contained
|
||||
else
|
||||
syn match pythonDottedName "\%([^[:cntrl:][:space:][:punct:][:digit:]]\|_\)\%([^[:cntrl:][:punct:][:space:]]\|_\)*\%(\.\%([^[:cntrl:][:space:][:punct:][:digit:]]\|_\)\%([^[:cntrl:][:punct:][:space:]]\|_\)*\)*" display contained
|
||||
endif
|
||||
syn match pythonDot "\." display containedin=pythonDottedName
|
||||
|
||||
"
|
||||
@@ -174,8 +192,10 @@ syn match pythonDot "\." display containedin=pythonDottedName
|
||||
"
|
||||
|
||||
syn match pythonComment "#.*$" display contains=pythonTodo,@Spell
|
||||
syn match pythonRun "\%^#!.*$"
|
||||
syn match pythonCoding "\%^.*\%(\n.*\)\?#.*coding[:=]\s*[0-9A-Za-z-_.]\+.*$"
|
||||
if !s:Enabled("g:python_highlight_file_headers_as_comments")
|
||||
syn match pythonRun "\%^#!.*$"
|
||||
syn match pythonCoding "\%^.*\%(\n.*\)\?#.*coding[:=]\s*[0-9A-Za-z-_.]\+.*$"
|
||||
endif
|
||||
syn keyword pythonTodo TODO FIXME XXX contained
|
||||
|
||||
"
|
||||
@@ -368,7 +388,8 @@ syn match pythonFloat "\<\d\+\.\d*\%([eE][+-]\=\d\+\)\=[jJ]\=" display
|
||||
|
||||
if s:Enabled("g:python_highlight_builtin_objs")
|
||||
if s:Python2Syntax()
|
||||
syn keyword pythonBuiltinObj True False None
|
||||
syn keyword pythonBuiltinObj None
|
||||
syn keyword pythonBoolean True False
|
||||
endif
|
||||
syn keyword pythonBuiltinObj Ellipsis NotImplemented
|
||||
syn keyword pythonBuiltinObj __debug__ __doc__ __file__ __name__ __package__
|
||||
@@ -464,7 +485,7 @@ if version >= 508 || !exists("did_python_syn_inits")
|
||||
endif
|
||||
|
||||
HiLink pythonStatement Statement
|
||||
HiLink pythonPreCondit Statement
|
||||
HiLink pythonImport Include
|
||||
HiLink pythonFunction Function
|
||||
HiLink pythonConditional Conditional
|
||||
HiLink pythonRepeat Repeat
|
||||
@@ -476,8 +497,10 @@ if version >= 508 || !exists("did_python_syn_inits")
|
||||
HiLink pythonDot Normal
|
||||
|
||||
HiLink pythonComment Comment
|
||||
HiLink pythonCoding Special
|
||||
HiLink pythonRun Special
|
||||
if !s:Enabled("g:python_highlight_file_headers_as_comments")
|
||||
HiLink pythonCoding Special
|
||||
HiLink pythonRun Special
|
||||
endif
|
||||
HiLink pythonTodo Todo
|
||||
|
||||
HiLink pythonError Error
|
||||
@@ -521,6 +544,8 @@ if version >= 508 || !exists("did_python_syn_inits")
|
||||
HiLink pythonHexError Error
|
||||
HiLink pythonBinError Error
|
||||
|
||||
HiLink pythonBoolean Boolean
|
||||
|
||||
HiLink pythonBuiltinObj Structure
|
||||
HiLink pythonBuiltinFunc Function
|
||||
|
||||
|
||||
5
test.py
5
test.py
@@ -10,6 +10,9 @@
|
||||
|
||||
with break continue del exec return pass print raise global assert lambda yield
|
||||
for while if elif else import from as try except finally and in is not or
|
||||
|
||||
yield from
|
||||
|
||||
def functionname
|
||||
class Classname
|
||||
def функция
|
||||
@@ -48,6 +51,8 @@ RuntimeWarning FutureWarning ImportWarning UnicodeWarning
|
||||
|
||||
@ decoratorname
|
||||
@ object.__init__(arg1, arg2)
|
||||
@ декоратор
|
||||
@ декоратор.décorateur
|
||||
|
||||
# Numbers
|
||||
|
||||
|
||||
Reference in New Issue
Block a user