gitlab-pygments.rb 0.3.2
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +6 -0
- data/Gemfile +2 -0
- data/README.md +91 -0
- data/Rakefile +78 -0
- data/bench.rb +22 -0
- data/cache-lexers.rb +8 -0
- data/lexers +0 -0
- data/lib/pygments/lexer.rb +148 -0
- data/lib/pygments/mentos.py +344 -0
- data/lib/pygments/popen.rb +389 -0
- data/lib/pygments/version.rb +3 -0
- data/lib/pygments.rb +8 -0
- data/pygments.rb.gemspec +24 -0
- data/test/test_data.c +2581 -0
- data/test/test_data.py +514 -0
- data/test/test_data_generated +2582 -0
- data/test/test_pygments.rb +276 -0
- data/vendor/custom_formatters/gitlab.py +171 -0
- data/vendor/custom_lexers/github.py +362 -0
- data/vendor/pygments-main/AUTHORS +115 -0
- data/vendor/pygments-main/CHANGES +762 -0
- data/vendor/pygments-main/LICENSE +25 -0
- data/vendor/pygments-main/MANIFEST.in +6 -0
- data/vendor/pygments-main/Makefile +59 -0
- data/vendor/pygments-main/REVISION +1 -0
- data/vendor/pygments-main/TODO +15 -0
- data/vendor/pygments-main/docs/generate.py +472 -0
- data/vendor/pygments-main/docs/pygmentize.1 +94 -0
- data/vendor/pygments-main/docs/src/api.txt +270 -0
- data/vendor/pygments-main/docs/src/authors.txt +5 -0
- data/vendor/pygments-main/docs/src/changelog.txt +5 -0
- data/vendor/pygments-main/docs/src/cmdline.txt +147 -0
- data/vendor/pygments-main/docs/src/filterdevelopment.txt +70 -0
- data/vendor/pygments-main/docs/src/filters.txt +42 -0
- data/vendor/pygments-main/docs/src/formatterdevelopment.txt +169 -0
- data/vendor/pygments-main/docs/src/formatters.txt +48 -0
- data/vendor/pygments-main/docs/src/index.txt +69 -0
- data/vendor/pygments-main/docs/src/installation.txt +71 -0
- data/vendor/pygments-main/docs/src/integrate.txt +43 -0
- data/vendor/pygments-main/docs/src/lexerdevelopment.txt +551 -0
- data/vendor/pygments-main/docs/src/lexers.txt +67 -0
- data/vendor/pygments-main/docs/src/moinmoin.txt +39 -0
- data/vendor/pygments-main/docs/src/plugins.txt +93 -0
- data/vendor/pygments-main/docs/src/quickstart.txt +202 -0
- data/vendor/pygments-main/docs/src/rstdirective.txt +22 -0
- data/vendor/pygments-main/docs/src/styles.txt +143 -0
- data/vendor/pygments-main/docs/src/tokens.txt +349 -0
- data/vendor/pygments-main/docs/src/unicode.txt +49 -0
- data/vendor/pygments-main/external/markdown-processor.py +67 -0
- data/vendor/pygments-main/external/moin-parser.py +112 -0
- data/vendor/pygments-main/external/pygments.bashcomp +38 -0
- data/vendor/pygments-main/external/rst-directive-old.py +77 -0
- data/vendor/pygments-main/external/rst-directive.py +83 -0
- data/vendor/pygments-main/ez_setup.py +276 -0
- data/vendor/pygments-main/pygmentize +7 -0
- data/vendor/pygments-main/pygments/__init__.py +91 -0
- data/vendor/pygments-main/pygments/cmdline.py +433 -0
- data/vendor/pygments-main/pygments/console.py +74 -0
- data/vendor/pygments-main/pygments/filter.py +74 -0
- data/vendor/pygments-main/pygments/filters/__init__.py +357 -0
- data/vendor/pygments-main/pygments/formatter.py +92 -0
- data/vendor/pygments-main/pygments/formatters/__init__.py +68 -0
- data/vendor/pygments-main/pygments/formatters/_mapping.py +94 -0
- data/vendor/pygments-main/pygments/formatters/bbcode.py +109 -0
- data/vendor/pygments-main/pygments/formatters/gitlab.py +171 -0
- data/vendor/pygments-main/pygments/formatters/html.py +750 -0
- data/vendor/pygments-main/pygments/formatters/img.py +553 -0
- data/vendor/pygments-main/pygments/formatters/latex.py +378 -0
- data/vendor/pygments-main/pygments/formatters/other.py +117 -0
- data/vendor/pygments-main/pygments/formatters/rtf.py +136 -0
- data/vendor/pygments-main/pygments/formatters/svg.py +154 -0
- data/vendor/pygments-main/pygments/formatters/terminal.py +112 -0
- data/vendor/pygments-main/pygments/formatters/terminal256.py +222 -0
- data/vendor/pygments-main/pygments/lexer.py +697 -0
- data/vendor/pygments-main/pygments/lexers/__init__.py +229 -0
- data/vendor/pygments-main/pygments/lexers/_asybuiltins.py +1645 -0
- data/vendor/pygments-main/pygments/lexers/_clbuiltins.py +232 -0
- data/vendor/pygments-main/pygments/lexers/_luabuiltins.py +249 -0
- data/vendor/pygments-main/pygments/lexers/_mapping.py +298 -0
- data/vendor/pygments-main/pygments/lexers/_phpbuiltins.py +3787 -0
- data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +232 -0
- data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +29 -0
- data/vendor/pygments-main/pygments/lexers/_vimbuiltins.py +3 -0
- data/vendor/pygments-main/pygments/lexers/agile.py +1803 -0
- data/vendor/pygments-main/pygments/lexers/asm.py +360 -0
- data/vendor/pygments-main/pygments/lexers/compiled.py +2891 -0
- data/vendor/pygments-main/pygments/lexers/dotnet.py +636 -0
- data/vendor/pygments-main/pygments/lexers/functional.py +1832 -0
- data/vendor/pygments-main/pygments/lexers/github.py +362 -0
- data/vendor/pygments-main/pygments/lexers/hdl.py +356 -0
- data/vendor/pygments-main/pygments/lexers/jvm.py +847 -0
- data/vendor/pygments-main/pygments/lexers/math.py +1072 -0
- data/vendor/pygments-main/pygments/lexers/other.py +3339 -0
- data/vendor/pygments-main/pygments/lexers/parsers.py +695 -0
- data/vendor/pygments-main/pygments/lexers/shell.py +361 -0
- data/vendor/pygments-main/pygments/lexers/special.py +100 -0
- data/vendor/pygments-main/pygments/lexers/sql.py +559 -0
- data/vendor/pygments-main/pygments/lexers/templates.py +1631 -0
- data/vendor/pygments-main/pygments/lexers/text.py +1753 -0
- data/vendor/pygments-main/pygments/lexers/web.py +2864 -0
- data/vendor/pygments-main/pygments/plugin.py +74 -0
- data/vendor/pygments-main/pygments/scanner.py +104 -0
- data/vendor/pygments-main/pygments/style.py +117 -0
- data/vendor/pygments-main/pygments/styles/__init__.py +70 -0
- data/vendor/pygments-main/pygments/styles/autumn.py +65 -0
- data/vendor/pygments-main/pygments/styles/borland.py +51 -0
- data/vendor/pygments-main/pygments/styles/bw.py +49 -0
- data/vendor/pygments-main/pygments/styles/colorful.py +81 -0
- data/vendor/pygments-main/pygments/styles/default.py +73 -0
- data/vendor/pygments-main/pygments/styles/emacs.py +72 -0
- data/vendor/pygments-main/pygments/styles/friendly.py +72 -0
- data/vendor/pygments-main/pygments/styles/fruity.py +42 -0
- data/vendor/pygments-main/pygments/styles/manni.py +75 -0
- data/vendor/pygments-main/pygments/styles/monokai.py +106 -0
- data/vendor/pygments-main/pygments/styles/murphy.py +80 -0
- data/vendor/pygments-main/pygments/styles/native.py +65 -0
- data/vendor/pygments-main/pygments/styles/pastie.py +75 -0
- data/vendor/pygments-main/pygments/styles/perldoc.py +69 -0
- data/vendor/pygments-main/pygments/styles/rrt.py +33 -0
- data/vendor/pygments-main/pygments/styles/tango.py +141 -0
- data/vendor/pygments-main/pygments/styles/trac.py +63 -0
- data/vendor/pygments-main/pygments/styles/vim.py +63 -0
- data/vendor/pygments-main/pygments/styles/vs.py +38 -0
- data/vendor/pygments-main/pygments/token.py +195 -0
- data/vendor/pygments-main/pygments/unistring.py +130 -0
- data/vendor/pygments-main/pygments/util.py +232 -0
- data/vendor/pygments-main/scripts/check_sources.py +242 -0
- data/vendor/pygments-main/scripts/detect_missing_analyse_text.py +30 -0
- data/vendor/pygments-main/scripts/epydoc.css +280 -0
- data/vendor/pygments-main/scripts/find_codetags.py +205 -0
- data/vendor/pygments-main/scripts/find_error.py +171 -0
- data/vendor/pygments-main/scripts/get_vimkw.py +43 -0
- data/vendor/pygments-main/scripts/pylintrc +301 -0
- data/vendor/pygments-main/scripts/reindent.py +291 -0
- data/vendor/pygments-main/scripts/vim2pygments.py +933 -0
- data/vendor/pygments-main/setup.cfg +6 -0
- data/vendor/pygments-main/setup.py +88 -0
- data/vendor/pygments-main/tests/dtds/HTML4-f.dtd +37 -0
- data/vendor/pygments-main/tests/dtds/HTML4-s.dtd +869 -0
- data/vendor/pygments-main/tests/dtds/HTML4.dcl +88 -0
- data/vendor/pygments-main/tests/dtds/HTML4.dtd +1092 -0
- data/vendor/pygments-main/tests/dtds/HTML4.soc +9 -0
- data/vendor/pygments-main/tests/dtds/HTMLlat1.ent +195 -0
- data/vendor/pygments-main/tests/dtds/HTMLspec.ent +77 -0
- data/vendor/pygments-main/tests/dtds/HTMLsym.ent +241 -0
- data/vendor/pygments-main/tests/examplefiles/ANTLRv3.g +608 -0
- data/vendor/pygments-main/tests/examplefiles/AcidStateAdvanced.hs +209 -0
- data/vendor/pygments-main/tests/examplefiles/AlternatingGroup.mu +102 -0
- data/vendor/pygments-main/tests/examplefiles/CPDictionary.j +611 -0
- data/vendor/pygments-main/tests/examplefiles/Constants.mo +158 -0
- data/vendor/pygments-main/tests/examplefiles/DancingSudoku.lhs +411 -0
- data/vendor/pygments-main/tests/examplefiles/Errors.scala +18 -0
- data/vendor/pygments-main/tests/examplefiles/File.hy +174 -0
- data/vendor/pygments-main/tests/examplefiles/Intro.java +1660 -0
- data/vendor/pygments-main/tests/examplefiles/Makefile +1131 -0
- data/vendor/pygments-main/tests/examplefiles/Object.st +4394 -0
- data/vendor/pygments-main/tests/examplefiles/OrderedMap.hx +584 -0
- data/vendor/pygments-main/tests/examplefiles/SmallCheck.hs +378 -0
- data/vendor/pygments-main/tests/examplefiles/Sorting.mod +470 -0
- data/vendor/pygments-main/tests/examplefiles/Sudoku.lhs +382 -0
- data/vendor/pygments-main/tests/examplefiles/addressbook.proto +30 -0
- data/vendor/pygments-main/tests/examplefiles/antlr_throws +1 -0
- data/vendor/pygments-main/tests/examplefiles/apache2.conf +393 -0
- data/vendor/pygments-main/tests/examplefiles/as3_test.as +143 -0
- data/vendor/pygments-main/tests/examplefiles/as3_test2.as +46 -0
- data/vendor/pygments-main/tests/examplefiles/as3_test3.as +3 -0
- data/vendor/pygments-main/tests/examplefiles/aspx-cs_example +27 -0
- data/vendor/pygments-main/tests/examplefiles/badcase.java +2 -0
- data/vendor/pygments-main/tests/examplefiles/batchfile.bat +49 -0
- data/vendor/pygments-main/tests/examplefiles/boot-9.scm +1557 -0
- data/vendor/pygments-main/tests/examplefiles/cells.ps +515 -0
- data/vendor/pygments-main/tests/examplefiles/ceval.c +2604 -0
- data/vendor/pygments-main/tests/examplefiles/cheetah_example.html +13 -0
- data/vendor/pygments-main/tests/examplefiles/classes.dylan +40 -0
- data/vendor/pygments-main/tests/examplefiles/condensed_ruby.rb +10 -0
- data/vendor/pygments-main/tests/examplefiles/coq_RelationClasses +447 -0
- data/vendor/pygments-main/tests/examplefiles/database.pytb +20 -0
- data/vendor/pygments-main/tests/examplefiles/de.MoinMoin.po +2461 -0
- data/vendor/pygments-main/tests/examplefiles/demo.ahk +181 -0
- data/vendor/pygments-main/tests/examplefiles/demo.cfm +38 -0
- data/vendor/pygments-main/tests/examplefiles/django_sample.html+django +68 -0
- data/vendor/pygments-main/tests/examplefiles/dwarf.cw +17 -0
- data/vendor/pygments-main/tests/examplefiles/erl_session +10 -0
- data/vendor/pygments-main/tests/examplefiles/escape_semicolon.clj +1 -0
- data/vendor/pygments-main/tests/examplefiles/evil_regex.js +48 -0
- data/vendor/pygments-main/tests/examplefiles/example.c +2080 -0
- data/vendor/pygments-main/tests/examplefiles/example.cls +15 -0
- data/vendor/pygments-main/tests/examplefiles/example.cpp +2363 -0
- data/vendor/pygments-main/tests/examplefiles/example.gs +106 -0
- data/vendor/pygments-main/tests/examplefiles/example.gst +7 -0
- data/vendor/pygments-main/tests/examplefiles/example.kt +47 -0
- data/vendor/pygments-main/tests/examplefiles/example.lua +250 -0
- data/vendor/pygments-main/tests/examplefiles/example.moo +26 -0
- data/vendor/pygments-main/tests/examplefiles/example.moon +629 -0
- data/vendor/pygments-main/tests/examplefiles/example.nim +1010 -0
- data/vendor/pygments-main/tests/examplefiles/example.ns2 +69 -0
- data/vendor/pygments-main/tests/examplefiles/example.p +34 -0
- data/vendor/pygments-main/tests/examplefiles/example.pas +2708 -0
- data/vendor/pygments-main/tests/examplefiles/example.rb +1852 -0
- data/vendor/pygments-main/tests/examplefiles/example.rhtml +561 -0
- data/vendor/pygments-main/tests/examplefiles/example.sh-session +19 -0
- data/vendor/pygments-main/tests/examplefiles/example.sml +156 -0
- data/vendor/pygments-main/tests/examplefiles/example.snobol +15 -0
- data/vendor/pygments-main/tests/examplefiles/example.tea +34 -0
- data/vendor/pygments-main/tests/examplefiles/example.u +548 -0
- data/vendor/pygments-main/tests/examplefiles/example.weechatlog +9 -0
- data/vendor/pygments-main/tests/examplefiles/example.xhtml +376 -0
- data/vendor/pygments-main/tests/examplefiles/example.yaml +302 -0
- data/vendor/pygments-main/tests/examplefiles/example2.aspx +29 -0
- data/vendor/pygments-main/tests/examplefiles/example_elixir.ex +363 -0
- data/vendor/pygments-main/tests/examplefiles/example_file.fy +128 -0
- data/vendor/pygments-main/tests/examplefiles/firefox.mak +586 -0
- data/vendor/pygments-main/tests/examplefiles/flipflop.sv +19 -0
- data/vendor/pygments-main/tests/examplefiles/foo.sce +6 -0
- data/vendor/pygments-main/tests/examplefiles/format.ml +1213 -0
- data/vendor/pygments-main/tests/examplefiles/fucked_up.rb +77 -0
- data/vendor/pygments-main/tests/examplefiles/function.mu +1 -0
- data/vendor/pygments-main/tests/examplefiles/functional.rst +1472 -0
- data/vendor/pygments-main/tests/examplefiles/genclass.clj +510 -0
- data/vendor/pygments-main/tests/examplefiles/genshi_example.xml+genshi +193 -0
- data/vendor/pygments-main/tests/examplefiles/genshitext_example.genshitext +33 -0
- data/vendor/pygments-main/tests/examplefiles/glsl.frag +7 -0
- data/vendor/pygments-main/tests/examplefiles/glsl.vert +13 -0
- data/vendor/pygments-main/tests/examplefiles/html+php_faulty.php +1 -0
- data/vendor/pygments-main/tests/examplefiles/http_request_example +14 -0
- data/vendor/pygments-main/tests/examplefiles/http_response_example +27 -0
- data/vendor/pygments-main/tests/examplefiles/import.hs +4 -0
- data/vendor/pygments-main/tests/examplefiles/intro.ik +24 -0
- data/vendor/pygments-main/tests/examplefiles/ints.php +10 -0
- data/vendor/pygments-main/tests/examplefiles/intsyn.fun +675 -0
- data/vendor/pygments-main/tests/examplefiles/intsyn.sig +286 -0
- data/vendor/pygments-main/tests/examplefiles/irb_heredoc +8 -0
- data/vendor/pygments-main/tests/examplefiles/irc.lsp +214 -0
- data/vendor/pygments-main/tests/examplefiles/java.properties +16 -0
- data/vendor/pygments-main/tests/examplefiles/jbst_example1.jbst +28 -0
- data/vendor/pygments-main/tests/examplefiles/jbst_example2.jbst +45 -0
- data/vendor/pygments-main/tests/examplefiles/jinjadesignerdoc.rst +713 -0
- data/vendor/pygments-main/tests/examplefiles/lighttpd_config.conf +13 -0
- data/vendor/pygments-main/tests/examplefiles/linecontinuation.py +47 -0
- data/vendor/pygments-main/tests/examplefiles/ltmain.sh +2849 -0
- data/vendor/pygments-main/tests/examplefiles/main.cmake +42 -0
- data/vendor/pygments-main/tests/examplefiles/markdown.lsp +679 -0
- data/vendor/pygments-main/tests/examplefiles/matlab_noreturn +3 -0
- data/vendor/pygments-main/tests/examplefiles/matlab_sample +27 -0
- data/vendor/pygments-main/tests/examplefiles/matlabsession_sample.txt +37 -0
- data/vendor/pygments-main/tests/examplefiles/minimal.ns2 +4 -0
- data/vendor/pygments-main/tests/examplefiles/moin_SyntaxReference.txt +340 -0
- data/vendor/pygments-main/tests/examplefiles/multiline_regexes.rb +38 -0
- data/vendor/pygments-main/tests/examplefiles/nasm_aoutso.asm +96 -0
- data/vendor/pygments-main/tests/examplefiles/nasm_objexe.asm +30 -0
- data/vendor/pygments-main/tests/examplefiles/nemerle_sample.n +87 -0
- data/vendor/pygments-main/tests/examplefiles/nginx_nginx.conf +118 -0
- data/vendor/pygments-main/tests/examplefiles/numbers.c +12 -0
- data/vendor/pygments-main/tests/examplefiles/objc_example.m +25 -0
- data/vendor/pygments-main/tests/examplefiles/objc_example2.m +24 -0
- data/vendor/pygments-main/tests/examplefiles/perl_misc +62 -0
- data/vendor/pygments-main/tests/examplefiles/perl_perl5db +998 -0
- data/vendor/pygments-main/tests/examplefiles/perl_regex-delims +120 -0
- data/vendor/pygments-main/tests/examplefiles/perlfunc.1 +856 -0
- data/vendor/pygments-main/tests/examplefiles/phpcomplete.vim +567 -0
- data/vendor/pygments-main/tests/examplefiles/pleac.in.rb +1223 -0
- data/vendor/pygments-main/tests/examplefiles/postgresql_test.txt +47 -0
- data/vendor/pygments-main/tests/examplefiles/pppoe.applescript +10 -0
- data/vendor/pygments-main/tests/examplefiles/psql_session.txt +122 -0
- data/vendor/pygments-main/tests/examplefiles/py3_test.txt +2 -0
- data/vendor/pygments-main/tests/examplefiles/pycon_test.pycon +14 -0
- data/vendor/pygments-main/tests/examplefiles/pytb_test2.pytb +2 -0
- data/vendor/pygments-main/tests/examplefiles/python25-bsd.mak +234 -0
- data/vendor/pygments-main/tests/examplefiles/qsort.prolog +13 -0
- data/vendor/pygments-main/tests/examplefiles/r-console-transcript.Rout +38 -0
- data/vendor/pygments-main/tests/examplefiles/ragel-cpp_rlscan +280 -0
- data/vendor/pygments-main/tests/examplefiles/ragel-cpp_snippet +2 -0
- data/vendor/pygments-main/tests/examplefiles/regex.js +22 -0
- data/vendor/pygments-main/tests/examplefiles/reversi.lsp +427 -0
- data/vendor/pygments-main/tests/examplefiles/ruby_func_def.rb +11 -0
- data/vendor/pygments-main/tests/examplefiles/scilab.sci +30 -0
- data/vendor/pygments-main/tests/examplefiles/sibling.prolog +19 -0
- data/vendor/pygments-main/tests/examplefiles/simple.md +747 -0
- data/vendor/pygments-main/tests/examplefiles/smarty_example.html +209 -0
- data/vendor/pygments-main/tests/examplefiles/source.lgt +343 -0
- data/vendor/pygments-main/tests/examplefiles/sources.list +62 -0
- data/vendor/pygments-main/tests/examplefiles/sphere.pov +18 -0
- data/vendor/pygments-main/tests/examplefiles/sqlite3.sqlite3-console +27 -0
- data/vendor/pygments-main/tests/examplefiles/squid.conf +30 -0
- data/vendor/pygments-main/tests/examplefiles/string.jl +1031 -0
- data/vendor/pygments-main/tests/examplefiles/string_delimiters.d +21 -0
- data/vendor/pygments-main/tests/examplefiles/stripheredoc.sh +3 -0
- data/vendor/pygments-main/tests/examplefiles/test.R +119 -0
- data/vendor/pygments-main/tests/examplefiles/test.adb +211 -0
- data/vendor/pygments-main/tests/examplefiles/test.asy +131 -0
- data/vendor/pygments-main/tests/examplefiles/test.awk +121 -0
- data/vendor/pygments-main/tests/examplefiles/test.bas +29 -0
- data/vendor/pygments-main/tests/examplefiles/test.bmx +145 -0
- data/vendor/pygments-main/tests/examplefiles/test.boo +39 -0
- data/vendor/pygments-main/tests/examplefiles/test.bro +250 -0
- data/vendor/pygments-main/tests/examplefiles/test.cs +374 -0
- data/vendor/pygments-main/tests/examplefiles/test.css +54 -0
- data/vendor/pygments-main/tests/examplefiles/test.d +135 -0
- data/vendor/pygments-main/tests/examplefiles/test.dart +23 -0
- data/vendor/pygments-main/tests/examplefiles/test.dtd +89 -0
- data/vendor/pygments-main/tests/examplefiles/test.ec +605 -0
- data/vendor/pygments-main/tests/examplefiles/test.ecl +58 -0
- data/vendor/pygments-main/tests/examplefiles/test.eh +315 -0
- data/vendor/pygments-main/tests/examplefiles/test.erl +169 -0
- data/vendor/pygments-main/tests/examplefiles/test.evoque +33 -0
- data/vendor/pygments-main/tests/examplefiles/test.fan +818 -0
- data/vendor/pygments-main/tests/examplefiles/test.flx +57 -0
- data/vendor/pygments-main/tests/examplefiles/test.gdc +13 -0
- data/vendor/pygments-main/tests/examplefiles/test.groovy +97 -0
- data/vendor/pygments-main/tests/examplefiles/test.html +339 -0
- data/vendor/pygments-main/tests/examplefiles/test.ini +10 -0
- data/vendor/pygments-main/tests/examplefiles/test.java +653 -0
- data/vendor/pygments-main/tests/examplefiles/test.jsp +24 -0
- data/vendor/pygments-main/tests/examplefiles/test.maql +45 -0
- data/vendor/pygments-main/tests/examplefiles/test.mod +374 -0
- data/vendor/pygments-main/tests/examplefiles/test.moo +51 -0
- data/vendor/pygments-main/tests/examplefiles/test.myt +166 -0
- data/vendor/pygments-main/tests/examplefiles/test.nim +93 -0
- data/vendor/pygments-main/tests/examplefiles/test.pas +743 -0
- data/vendor/pygments-main/tests/examplefiles/test.php +505 -0
- data/vendor/pygments-main/tests/examplefiles/test.plot +333 -0
- data/vendor/pygments-main/tests/examplefiles/test.ps1 +108 -0
- data/vendor/pygments-main/tests/examplefiles/test.pypylog +1839 -0
- data/vendor/pygments-main/tests/examplefiles/test.r3 +94 -0
- data/vendor/pygments-main/tests/examplefiles/test.rb +177 -0
- data/vendor/pygments-main/tests/examplefiles/test.rhtml +43 -0
- data/vendor/pygments-main/tests/examplefiles/test.scaml +8 -0
- data/vendor/pygments-main/tests/examplefiles/test.ssp +12 -0
- data/vendor/pygments-main/tests/examplefiles/test.tcsh +830 -0
- data/vendor/pygments-main/tests/examplefiles/test.vb +407 -0
- data/vendor/pygments-main/tests/examplefiles/test.vhdl +161 -0
- data/vendor/pygments-main/tests/examplefiles/test.xqy +138 -0
- data/vendor/pygments-main/tests/examplefiles/test.xsl +23 -0
- data/vendor/pygments-main/tests/examplefiles/truncated.pytb +15 -0
- data/vendor/pygments-main/tests/examplefiles/type.lisp +1202 -0
- data/vendor/pygments-main/tests/examplefiles/underscore.coffee +603 -0
- data/vendor/pygments-main/tests/examplefiles/unicode.applescript +5 -0
- data/vendor/pygments-main/tests/examplefiles/unicodedoc.py +11 -0
- data/vendor/pygments-main/tests/examplefiles/webkit-transition.css +3 -0
- data/vendor/pygments-main/tests/examplefiles/while.pov +13 -0
- data/vendor/pygments-main/tests/examplefiles/wiki.factor +384 -0
- data/vendor/pygments-main/tests/examplefiles/xml_example +1897 -0
- data/vendor/pygments-main/tests/examplefiles/zmlrpc.f90 +798 -0
- data/vendor/pygments-main/tests/old_run.py +138 -0
- data/vendor/pygments-main/tests/run.py +48 -0
- data/vendor/pygments-main/tests/support.py +15 -0
- data/vendor/pygments-main/tests/test_basic_api.py +294 -0
- data/vendor/pygments-main/tests/test_clexer.py +31 -0
- data/vendor/pygments-main/tests/test_cmdline.py +105 -0
- data/vendor/pygments-main/tests/test_examplefiles.py +97 -0
- data/vendor/pygments-main/tests/test_html_formatter.py +162 -0
- data/vendor/pygments-main/tests/test_latex_formatter.py +55 -0
- data/vendor/pygments-main/tests/test_perllexer.py +137 -0
- data/vendor/pygments-main/tests/test_regexlexer.py +47 -0
- data/vendor/pygments-main/tests/test_token.py +46 -0
- data/vendor/pygments-main/tests/test_using_api.py +40 -0
- data/vendor/pygments-main/tests/test_util.py +116 -0
- data/vendor/simplejson/.gitignore +10 -0
- data/vendor/simplejson/.travis.yml +5 -0
- data/vendor/simplejson/CHANGES.txt +291 -0
- data/vendor/simplejson/LICENSE.txt +19 -0
- data/vendor/simplejson/MANIFEST.in +5 -0
- data/vendor/simplejson/README.rst +19 -0
- data/vendor/simplejson/conf.py +179 -0
- data/vendor/simplejson/index.rst +628 -0
- data/vendor/simplejson/scripts/make_docs.py +18 -0
- data/vendor/simplejson/setup.py +104 -0
- data/vendor/simplejson/simplejson/__init__.py +510 -0
- data/vendor/simplejson/simplejson/_speedups.c +2745 -0
- data/vendor/simplejson/simplejson/decoder.py +425 -0
- data/vendor/simplejson/simplejson/encoder.py +567 -0
- data/vendor/simplejson/simplejson/ordered_dict.py +119 -0
- data/vendor/simplejson/simplejson/scanner.py +77 -0
- data/vendor/simplejson/simplejson/tests/__init__.py +67 -0
- data/vendor/simplejson/simplejson/tests/test_bigint_as_string.py +55 -0
- data/vendor/simplejson/simplejson/tests/test_check_circular.py +30 -0
- data/vendor/simplejson/simplejson/tests/test_decimal.py +66 -0
- data/vendor/simplejson/simplejson/tests/test_decode.py +83 -0
- data/vendor/simplejson/simplejson/tests/test_default.py +9 -0
- data/vendor/simplejson/simplejson/tests/test_dump.py +67 -0
- data/vendor/simplejson/simplejson/tests/test_encode_basestring_ascii.py +46 -0
- data/vendor/simplejson/simplejson/tests/test_encode_for_html.py +32 -0
- data/vendor/simplejson/simplejson/tests/test_errors.py +34 -0
- data/vendor/simplejson/simplejson/tests/test_fail.py +91 -0
- data/vendor/simplejson/simplejson/tests/test_float.py +19 -0
- data/vendor/simplejson/simplejson/tests/test_indent.py +86 -0
- data/vendor/simplejson/simplejson/tests/test_item_sort_key.py +20 -0
- data/vendor/simplejson/simplejson/tests/test_namedtuple.py +121 -0
- data/vendor/simplejson/simplejson/tests/test_pass1.py +76 -0
- data/vendor/simplejson/simplejson/tests/test_pass2.py +14 -0
- data/vendor/simplejson/simplejson/tests/test_pass3.py +20 -0
- data/vendor/simplejson/simplejson/tests/test_recursion.py +67 -0
- data/vendor/simplejson/simplejson/tests/test_scanstring.py +117 -0
- data/vendor/simplejson/simplejson/tests/test_separators.py +42 -0
- data/vendor/simplejson/simplejson/tests/test_speedups.py +20 -0
- data/vendor/simplejson/simplejson/tests/test_tuple.py +49 -0
- data/vendor/simplejson/simplejson/tests/test_unicode.py +109 -0
- data/vendor/simplejson/simplejson/tool.py +39 -0
- metadata +492 -0
@@ -0,0 +1,291 @@
|
|
1
|
+
#! /usr/bin/env python
|
2
|
+
|
3
|
+
# Released to the public domain, by Tim Peters, 03 October 2000.
|
4
|
+
# -B option added by Georg Brandl, 2006.
|
5
|
+
|
6
|
+
"""reindent [-d][-r][-v] [ path ... ]
|
7
|
+
|
8
|
+
-d (--dryrun) Dry run. Analyze, but don't make any changes to files.
|
9
|
+
-r (--recurse) Recurse. Search for all .py files in subdirectories too.
|
10
|
+
-B (--no-backup) Don't write .bak backup files.
|
11
|
+
-v (--verbose) Verbose. Print informative msgs; else only names of changed files.
|
12
|
+
-h (--help) Help. Print this usage information and exit.
|
13
|
+
|
14
|
+
Change Python (.py) files to use 4-space indents and no hard tab characters.
|
15
|
+
Also trim excess spaces and tabs from ends of lines, and remove empty lines
|
16
|
+
at the end of files. Also ensure the last line ends with a newline.
|
17
|
+
|
18
|
+
If no paths are given on the command line, reindent operates as a filter,
|
19
|
+
reading a single source file from standard input and writing the transformed
|
20
|
+
source to standard output. In this case, the -d, -r and -v flags are
|
21
|
+
ignored.
|
22
|
+
|
23
|
+
You can pass one or more file and/or directory paths. When a directory
|
24
|
+
path, all .py files within the directory will be examined, and, if the -r
|
25
|
+
option is given, likewise recursively for subdirectories.
|
26
|
+
|
27
|
+
If output is not to standard output, reindent overwrites files in place,
|
28
|
+
renaming the originals with a .bak extension. If it finds nothing to
|
29
|
+
change, the file is left alone. If reindent does change a file, the changed
|
30
|
+
file is a fixed-point for future runs (i.e., running reindent on the
|
31
|
+
resulting .py file won't change it again).
|
32
|
+
|
33
|
+
The hard part of reindenting is figuring out what to do with comment
|
34
|
+
lines. So long as the input files get a clean bill of health from
|
35
|
+
tabnanny.py, reindent should do a good job.
|
36
|
+
"""
|
37
|
+
|
38
|
+
__version__ = "1"
|
39
|
+
|
40
|
+
import tokenize
|
41
|
+
import os
|
42
|
+
import sys
|
43
|
+
|
44
|
+
verbose = 0
|
45
|
+
recurse = 0
|
46
|
+
dryrun = 0
|
47
|
+
no_backup = 0
|
48
|
+
|
49
|
+
def usage(msg=None):
|
50
|
+
if msg is not None:
|
51
|
+
print >> sys.stderr, msg
|
52
|
+
print >> sys.stderr, __doc__
|
53
|
+
|
54
|
+
def errprint(*args):
|
55
|
+
sep = ""
|
56
|
+
for arg in args:
|
57
|
+
sys.stderr.write(sep + str(arg))
|
58
|
+
sep = " "
|
59
|
+
sys.stderr.write("\n")
|
60
|
+
|
61
|
+
def main():
|
62
|
+
import getopt
|
63
|
+
global verbose, recurse, dryrun, no_backup
|
64
|
+
|
65
|
+
try:
|
66
|
+
opts, args = getopt.getopt(sys.argv[1:], "drvhB",
|
67
|
+
["dryrun", "recurse", "verbose", "help",
|
68
|
+
"no-backup"])
|
69
|
+
except getopt.error, msg:
|
70
|
+
usage(msg)
|
71
|
+
return
|
72
|
+
for o, a in opts:
|
73
|
+
if o in ('-d', '--dryrun'):
|
74
|
+
dryrun += 1
|
75
|
+
elif o in ('-r', '--recurse'):
|
76
|
+
recurse += 1
|
77
|
+
elif o in ('-v', '--verbose'):
|
78
|
+
verbose += 1
|
79
|
+
elif o in ('-B', '--no-backup'):
|
80
|
+
no_backup += 1
|
81
|
+
elif o in ('-h', '--help'):
|
82
|
+
usage()
|
83
|
+
return
|
84
|
+
if not args:
|
85
|
+
r = Reindenter(sys.stdin)
|
86
|
+
r.run()
|
87
|
+
r.write(sys.stdout)
|
88
|
+
return
|
89
|
+
for arg in args:
|
90
|
+
check(arg)
|
91
|
+
|
92
|
+
def check(file):
|
93
|
+
if os.path.isdir(file) and not os.path.islink(file):
|
94
|
+
if verbose:
|
95
|
+
print "listing directory", file
|
96
|
+
names = os.listdir(file)
|
97
|
+
for name in names:
|
98
|
+
fullname = os.path.join(file, name)
|
99
|
+
if ((recurse and os.path.isdir(fullname) and
|
100
|
+
not os.path.islink(fullname))
|
101
|
+
or name.lower().endswith(".py")):
|
102
|
+
check(fullname)
|
103
|
+
return
|
104
|
+
|
105
|
+
if verbose:
|
106
|
+
print "checking", file, "...",
|
107
|
+
try:
|
108
|
+
f = open(file)
|
109
|
+
except IOError, msg:
|
110
|
+
errprint("%s: I/O Error: %s" % (file, str(msg)))
|
111
|
+
return
|
112
|
+
|
113
|
+
r = Reindenter(f)
|
114
|
+
f.close()
|
115
|
+
if r.run():
|
116
|
+
if verbose:
|
117
|
+
print "changed."
|
118
|
+
if dryrun:
|
119
|
+
print "But this is a dry run, so leaving it alone."
|
120
|
+
else:
|
121
|
+
print "reindented", file, (dryrun and "(dry run => not really)" or "")
|
122
|
+
if not dryrun:
|
123
|
+
if not no_backup:
|
124
|
+
bak = file + ".bak"
|
125
|
+
if os.path.exists(bak):
|
126
|
+
os.remove(bak)
|
127
|
+
os.rename(file, bak)
|
128
|
+
if verbose:
|
129
|
+
print "renamed", file, "to", bak
|
130
|
+
f = open(file, "w")
|
131
|
+
r.write(f)
|
132
|
+
f.close()
|
133
|
+
if verbose:
|
134
|
+
print "wrote new", file
|
135
|
+
else:
|
136
|
+
if verbose:
|
137
|
+
print "unchanged."
|
138
|
+
|
139
|
+
|
140
|
+
class Reindenter:
|
141
|
+
|
142
|
+
def __init__(self, f):
|
143
|
+
self.find_stmt = 1 # next token begins a fresh stmt?
|
144
|
+
self.level = 0 # current indent level
|
145
|
+
|
146
|
+
# Raw file lines.
|
147
|
+
self.raw = f.readlines()
|
148
|
+
|
149
|
+
# File lines, rstripped & tab-expanded. Dummy at start is so
|
150
|
+
# that we can use tokenize's 1-based line numbering easily.
|
151
|
+
# Note that a line is all-blank iff it's "\n".
|
152
|
+
self.lines = [line.rstrip('\n \t').expandtabs() + "\n"
|
153
|
+
for line in self.raw]
|
154
|
+
self.lines.insert(0, None)
|
155
|
+
self.index = 1 # index into self.lines of next line
|
156
|
+
|
157
|
+
# List of (lineno, indentlevel) pairs, one for each stmt and
|
158
|
+
# comment line. indentlevel is -1 for comment lines, as a
|
159
|
+
# signal that tokenize doesn't know what to do about them;
|
160
|
+
# indeed, they're our headache!
|
161
|
+
self.stats = []
|
162
|
+
|
163
|
+
def run(self):
|
164
|
+
tokenize.tokenize(self.getline, self.tokeneater)
|
165
|
+
# Remove trailing empty lines.
|
166
|
+
lines = self.lines
|
167
|
+
while lines and lines[-1] == "\n":
|
168
|
+
lines.pop()
|
169
|
+
# Sentinel.
|
170
|
+
stats = self.stats
|
171
|
+
stats.append((len(lines), 0))
|
172
|
+
# Map count of leading spaces to # we want.
|
173
|
+
have2want = {}
|
174
|
+
# Program after transformation.
|
175
|
+
after = self.after = []
|
176
|
+
# Copy over initial empty lines -- there's nothing to do until
|
177
|
+
# we see a line with *something* on it.
|
178
|
+
i = stats[0][0]
|
179
|
+
after.extend(lines[1:i])
|
180
|
+
for i in range(len(stats)-1):
|
181
|
+
thisstmt, thislevel = stats[i]
|
182
|
+
nextstmt = stats[i+1][0]
|
183
|
+
have = getlspace(lines[thisstmt])
|
184
|
+
want = thislevel * 4
|
185
|
+
if want < 0:
|
186
|
+
# A comment line.
|
187
|
+
if have:
|
188
|
+
# An indented comment line. If we saw the same
|
189
|
+
# indentation before, reuse what it most recently
|
190
|
+
# mapped to.
|
191
|
+
want = have2want.get(have, -1)
|
192
|
+
if want < 0:
|
193
|
+
# Then it probably belongs to the next real stmt.
|
194
|
+
for j in xrange(i+1, len(stats)-1):
|
195
|
+
jline, jlevel = stats[j]
|
196
|
+
if jlevel >= 0:
|
197
|
+
if have == getlspace(lines[jline]):
|
198
|
+
want = jlevel * 4
|
199
|
+
break
|
200
|
+
if want < 0: # Maybe it's a hanging
|
201
|
+
# comment like this one,
|
202
|
+
# in which case we should shift it like its base
|
203
|
+
# line got shifted.
|
204
|
+
for j in xrange(i-1, -1, -1):
|
205
|
+
jline, jlevel = stats[j]
|
206
|
+
if jlevel >= 0:
|
207
|
+
want = have + getlspace(after[jline-1]) - \
|
208
|
+
getlspace(lines[jline])
|
209
|
+
break
|
210
|
+
if want < 0:
|
211
|
+
# Still no luck -- leave it alone.
|
212
|
+
want = have
|
213
|
+
else:
|
214
|
+
want = 0
|
215
|
+
assert want >= 0
|
216
|
+
have2want[have] = want
|
217
|
+
diff = want - have
|
218
|
+
if diff == 0 or have == 0:
|
219
|
+
after.extend(lines[thisstmt:nextstmt])
|
220
|
+
else:
|
221
|
+
for line in lines[thisstmt:nextstmt]:
|
222
|
+
if diff > 0:
|
223
|
+
if line == "\n":
|
224
|
+
after.append(line)
|
225
|
+
else:
|
226
|
+
after.append(" " * diff + line)
|
227
|
+
else:
|
228
|
+
remove = min(getlspace(line), -diff)
|
229
|
+
after.append(line[remove:])
|
230
|
+
return self.raw != self.after
|
231
|
+
|
232
|
+
def write(self, f):
|
233
|
+
f.writelines(self.after)
|
234
|
+
|
235
|
+
# Line-getter for tokenize.
|
236
|
+
def getline(self):
|
237
|
+
if self.index >= len(self.lines):
|
238
|
+
line = ""
|
239
|
+
else:
|
240
|
+
line = self.lines[self.index]
|
241
|
+
self.index += 1
|
242
|
+
return line
|
243
|
+
|
244
|
+
# Line-eater for tokenize.
|
245
|
+
def tokeneater(self, type, token, (sline, scol), end, line,
|
246
|
+
INDENT=tokenize.INDENT,
|
247
|
+
DEDENT=tokenize.DEDENT,
|
248
|
+
NEWLINE=tokenize.NEWLINE,
|
249
|
+
COMMENT=tokenize.COMMENT,
|
250
|
+
NL=tokenize.NL):
|
251
|
+
|
252
|
+
if type == NEWLINE:
|
253
|
+
# A program statement, or ENDMARKER, will eventually follow,
|
254
|
+
# after some (possibly empty) run of tokens of the form
|
255
|
+
# (NL | COMMENT)* (INDENT | DEDENT+)?
|
256
|
+
self.find_stmt = 1
|
257
|
+
|
258
|
+
elif type == INDENT:
|
259
|
+
self.find_stmt = 1
|
260
|
+
self.level += 1
|
261
|
+
|
262
|
+
elif type == DEDENT:
|
263
|
+
self.find_stmt = 1
|
264
|
+
self.level -= 1
|
265
|
+
|
266
|
+
elif type == COMMENT:
|
267
|
+
if self.find_stmt:
|
268
|
+
self.stats.append((sline, -1))
|
269
|
+
# but we're still looking for a new stmt, so leave
|
270
|
+
# find_stmt alone
|
271
|
+
|
272
|
+
elif type == NL:
|
273
|
+
pass
|
274
|
+
|
275
|
+
elif self.find_stmt:
|
276
|
+
# This is the first "real token" following a NEWLINE, so it
|
277
|
+
# must be the first token of the next program statement, or an
|
278
|
+
# ENDMARKER.
|
279
|
+
self.find_stmt = 0
|
280
|
+
if line: # not endmarker
|
281
|
+
self.stats.append((sline, self.level))
|
282
|
+
|
283
|
+
# Count number of leading blanks.
|
284
|
+
def getlspace(line):
|
285
|
+
i, n = 0, len(line)
|
286
|
+
while i < n and line[i] == " ":
|
287
|
+
i += 1
|
288
|
+
return i
|
289
|
+
|
290
|
+
if __name__ == '__main__':
|
291
|
+
main()
|
@@ -0,0 +1,933 @@
|
|
1
|
+
#!/usr/bin/env python
|
2
|
+
# -*- coding: utf-8 -*-
|
3
|
+
"""
|
4
|
+
Vim Colorscheme Converter
|
5
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~
|
6
|
+
|
7
|
+
This script converts vim colorscheme files to valid pygments
|
8
|
+
style classes meant for putting into modules.
|
9
|
+
|
10
|
+
:copyright 2006 by Armin Ronacher.
|
11
|
+
:license: BSD, see LICENSE for details.
|
12
|
+
"""
|
13
|
+
|
14
|
+
import sys
|
15
|
+
import re
|
16
|
+
from os import path
|
17
|
+
from cStringIO import StringIO
|
18
|
+
|
19
|
+
split_re = re.compile(r'(?<!\\)\s+')
|
20
|
+
|
21
|
+
SCRIPT_NAME = 'Vim Colorscheme Converter'
|
22
|
+
SCRIPT_VERSION = '0.1'
|
23
|
+
|
24
|
+
|
25
|
+
COLORS = {
|
26
|
+
# Numeric Colors
|
27
|
+
'0': '#000000',
|
28
|
+
'1': '#c00000',
|
29
|
+
'2': '#008000',
|
30
|
+
'3': '#808000',
|
31
|
+
'4': '#0000c0',
|
32
|
+
'5': '#c000c0',
|
33
|
+
'6': '#008080',
|
34
|
+
'7': '#c0c0c0',
|
35
|
+
'8': '#808080',
|
36
|
+
'9': '#ff6060',
|
37
|
+
'10': '#00ff00',
|
38
|
+
'11': '#ffff00',
|
39
|
+
'12': '#8080ff',
|
40
|
+
'13': '#ff40ff',
|
41
|
+
'14': '#00ffff',
|
42
|
+
'15': '#ffffff',
|
43
|
+
# Named Colors
|
44
|
+
'alice': '#f0f8ff',
|
45
|
+
'aliceblue': '#f0f8ff',
|
46
|
+
'antique': '#faebd7',
|
47
|
+
'antiquewhite': '#faebd7',
|
48
|
+
'antiquewhite1': '#ffefdb',
|
49
|
+
'antiquewhite2': '#eedfcc',
|
50
|
+
'antiquewhite3': '#cdc0b0',
|
51
|
+
'antiquewhite4': '#8b8378',
|
52
|
+
'aquamarine': '#7fffd4',
|
53
|
+
'aquamarine1': '#7fffd4',
|
54
|
+
'aquamarine2': '#76eec6',
|
55
|
+
'aquamarine3': '#66cdaa',
|
56
|
+
'aquamarine4': '#458b74',
|
57
|
+
'azure': '#f0ffff',
|
58
|
+
'azure1': '#f0ffff',
|
59
|
+
'azure2': '#e0eeee',
|
60
|
+
'azure3': '#c1cdcd',
|
61
|
+
'azure4': '#838b8b',
|
62
|
+
'beige': '#f5f5dc',
|
63
|
+
'bisque': '#ffe4c4',
|
64
|
+
'bisque1': '#ffe4c4',
|
65
|
+
'bisque2': '#eed5b7',
|
66
|
+
'bisque3': '#cdb79e',
|
67
|
+
'bisque4': '#8b7d6b',
|
68
|
+
'black': '#000000',
|
69
|
+
'blanched': '#ffebcd',
|
70
|
+
'blanchedalmond': '#ffebcd',
|
71
|
+
'blue': '#8a2be2',
|
72
|
+
'blue1': '#0000ff',
|
73
|
+
'blue2': '#0000ee',
|
74
|
+
'blue3': '#0000cd',
|
75
|
+
'blue4': '#00008b',
|
76
|
+
'blueviolet': '#8a2be2',
|
77
|
+
'brown': '#a52a2a',
|
78
|
+
'brown1': '#ff4040',
|
79
|
+
'brown2': '#ee3b3b',
|
80
|
+
'brown3': '#cd3333',
|
81
|
+
'brown4': '#8b2323',
|
82
|
+
'burlywood': '#deb887',
|
83
|
+
'burlywood1': '#ffd39b',
|
84
|
+
'burlywood2': '#eec591',
|
85
|
+
'burlywood3': '#cdaa7d',
|
86
|
+
'burlywood4': '#8b7355',
|
87
|
+
'cadet': '#5f9ea0',
|
88
|
+
'cadetblue': '#5f9ea0',
|
89
|
+
'cadetblue1': '#98f5ff',
|
90
|
+
'cadetblue2': '#8ee5ee',
|
91
|
+
'cadetblue3': '#7ac5cd',
|
92
|
+
'cadetblue4': '#53868b',
|
93
|
+
'chartreuse': '#7fff00',
|
94
|
+
'chartreuse1': '#7fff00',
|
95
|
+
'chartreuse2': '#76ee00',
|
96
|
+
'chartreuse3': '#66cd00',
|
97
|
+
'chartreuse4': '#458b00',
|
98
|
+
'chocolate': '#d2691e',
|
99
|
+
'chocolate1': '#ff7f24',
|
100
|
+
'chocolate2': '#ee7621',
|
101
|
+
'chocolate3': '#cd661d',
|
102
|
+
'chocolate4': '#8b4513',
|
103
|
+
'coral': '#ff7f50',
|
104
|
+
'coral1': '#ff7256',
|
105
|
+
'coral2': '#ee6a50',
|
106
|
+
'coral3': '#cd5b45',
|
107
|
+
'coral4': '#8b3e2f',
|
108
|
+
'cornflower': '#6495ed',
|
109
|
+
'cornflowerblue': '#6495ed',
|
110
|
+
'cornsilk': '#fff8dc',
|
111
|
+
'cornsilk1': '#fff8dc',
|
112
|
+
'cornsilk2': '#eee8cd',
|
113
|
+
'cornsilk3': '#cdc8b1',
|
114
|
+
'cornsilk4': '#8b8878',
|
115
|
+
'cyan': '#00ffff',
|
116
|
+
'cyan1': '#00ffff',
|
117
|
+
'cyan2': '#00eeee',
|
118
|
+
'cyan3': '#00cdcd',
|
119
|
+
'cyan4': '#008b8b',
|
120
|
+
'dark': '#8b0000',
|
121
|
+
'darkblue': '#00008b',
|
122
|
+
'darkcyan': '#008b8b',
|
123
|
+
'darkgoldenrod': '#b8860b',
|
124
|
+
'darkgoldenrod1': '#ffb90f',
|
125
|
+
'darkgoldenrod2': '#eead0e',
|
126
|
+
'darkgoldenrod3': '#cd950c',
|
127
|
+
'darkgoldenrod4': '#8b6508',
|
128
|
+
'darkgray': '#a9a9a9',
|
129
|
+
'darkgreen': '#006400',
|
130
|
+
'darkgrey': '#a9a9a9',
|
131
|
+
'darkkhaki': '#bdb76b',
|
132
|
+
'darkmagenta': '#8b008b',
|
133
|
+
'darkolivegreen': '#556b2f',
|
134
|
+
'darkolivegreen1': '#caff70',
|
135
|
+
'darkolivegreen2': '#bcee68',
|
136
|
+
'darkolivegreen3': '#a2cd5a',
|
137
|
+
'darkolivegreen4': '#6e8b3d',
|
138
|
+
'darkorange': '#ff8c00',
|
139
|
+
'darkorange1': '#ff7f00',
|
140
|
+
'darkorange2': '#ee7600',
|
141
|
+
'darkorange3': '#cd6600',
|
142
|
+
'darkorange4': '#8b4500',
|
143
|
+
'darkorchid': '#9932cc',
|
144
|
+
'darkorchid1': '#bf3eff',
|
145
|
+
'darkorchid2': '#b23aee',
|
146
|
+
'darkorchid3': '#9a32cd',
|
147
|
+
'darkorchid4': '#68228b',
|
148
|
+
'darkred': '#8b0000',
|
149
|
+
'darksalmon': '#e9967a',
|
150
|
+
'darkseagreen': '#8fbc8f',
|
151
|
+
'darkseagreen1': '#c1ffc1',
|
152
|
+
'darkseagreen2': '#b4eeb4',
|
153
|
+
'darkseagreen3': '#9bcd9b',
|
154
|
+
'darkseagreen4': '#698b69',
|
155
|
+
'darkslateblue': '#483d8b',
|
156
|
+
'darkslategray': '#2f4f4f',
|
157
|
+
'darkslategray1': '#97ffff',
|
158
|
+
'darkslategray2': '#8deeee',
|
159
|
+
'darkslategray3': '#79cdcd',
|
160
|
+
'darkslategray4': '#528b8b',
|
161
|
+
'darkslategrey': '#2f4f4f',
|
162
|
+
'darkturquoise': '#00ced1',
|
163
|
+
'darkviolet': '#9400d3',
|
164
|
+
'deep': '#ff1493',
|
165
|
+
'deeppink': '#ff1493',
|
166
|
+
'deeppink1': '#ff1493',
|
167
|
+
'deeppink2': '#ee1289',
|
168
|
+
'deeppink3': '#cd1076',
|
169
|
+
'deeppink4': '#8b0a50',
|
170
|
+
'deepskyblue': '#00bfff',
|
171
|
+
'deepskyblue1': '#00bfff',
|
172
|
+
'deepskyblue2': '#00b2ee',
|
173
|
+
'deepskyblue3': '#009acd',
|
174
|
+
'deepskyblue4': '#00688b',
|
175
|
+
'dim': '#696969',
|
176
|
+
'dimgray': '#696969',
|
177
|
+
'dimgrey': '#696969',
|
178
|
+
'dodger': '#1e90ff',
|
179
|
+
'dodgerblue': '#1e90ff',
|
180
|
+
'dodgerblue1': '#1e90ff',
|
181
|
+
'dodgerblue2': '#1c86ee',
|
182
|
+
'dodgerblue3': '#1874cd',
|
183
|
+
'dodgerblue4': '#104e8b',
|
184
|
+
'firebrick': '#b22222',
|
185
|
+
'firebrick1': '#ff3030',
|
186
|
+
'firebrick2': '#ee2c2c',
|
187
|
+
'firebrick3': '#cd2626',
|
188
|
+
'firebrick4': '#8b1a1a',
|
189
|
+
'floral': '#fffaf0',
|
190
|
+
'floralwhite': '#fffaf0',
|
191
|
+
'forest': '#228b22',
|
192
|
+
'forestgreen': '#228b22',
|
193
|
+
'gainsboro': '#dcdcdc',
|
194
|
+
'ghost': '#f8f8ff',
|
195
|
+
'ghostwhite': '#f8f8ff',
|
196
|
+
'gold': '#ffd700',
|
197
|
+
'gold1': '#ffd700',
|
198
|
+
'gold2': '#eec900',
|
199
|
+
'gold3': '#cdad00',
|
200
|
+
'gold4': '#8b7500',
|
201
|
+
'goldenrod': '#daa520',
|
202
|
+
'goldenrod1': '#ffc125',
|
203
|
+
'goldenrod2': '#eeb422',
|
204
|
+
'goldenrod3': '#cd9b1d',
|
205
|
+
'goldenrod4': '#8b6914',
|
206
|
+
'gray': '#bebebe',
|
207
|
+
'gray0': '#000000',
|
208
|
+
'gray1': '#030303',
|
209
|
+
'gray10': '#1a1a1a',
|
210
|
+
'gray100': '#ffffff',
|
211
|
+
'gray11': '#1c1c1c',
|
212
|
+
'gray12': '#1f1f1f',
|
213
|
+
'gray13': '#212121',
|
214
|
+
'gray14': '#242424',
|
215
|
+
'gray15': '#262626',
|
216
|
+
'gray16': '#292929',
|
217
|
+
'gray17': '#2b2b2b',
|
218
|
+
'gray18': '#2e2e2e',
|
219
|
+
'gray19': '#303030',
|
220
|
+
'gray2': '#050505',
|
221
|
+
'gray20': '#333333',
|
222
|
+
'gray21': '#363636',
|
223
|
+
'gray22': '#383838',
|
224
|
+
'gray23': '#3b3b3b',
|
225
|
+
'gray24': '#3d3d3d',
|
226
|
+
'gray25': '#404040',
|
227
|
+
'gray26': '#424242',
|
228
|
+
'gray27': '#454545',
|
229
|
+
'gray28': '#474747',
|
230
|
+
'gray29': '#4a4a4a',
|
231
|
+
'gray3': '#080808',
|
232
|
+
'gray30': '#4d4d4d',
|
233
|
+
'gray31': '#4f4f4f',
|
234
|
+
'gray32': '#525252',
|
235
|
+
'gray33': '#545454',
|
236
|
+
'gray34': '#575757',
|
237
|
+
'gray35': '#595959',
|
238
|
+
'gray36': '#5c5c5c',
|
239
|
+
'gray37': '#5e5e5e',
|
240
|
+
'gray38': '#616161',
|
241
|
+
'gray39': '#636363',
|
242
|
+
'gray4': '#0a0a0a',
|
243
|
+
'gray40': '#666666',
|
244
|
+
'gray41': '#696969',
|
245
|
+
'gray42': '#6b6b6b',
|
246
|
+
'gray43': '#6e6e6e',
|
247
|
+
'gray44': '#707070',
|
248
|
+
'gray45': '#737373',
|
249
|
+
'gray46': '#757575',
|
250
|
+
'gray47': '#787878',
|
251
|
+
'gray48': '#7a7a7a',
|
252
|
+
'gray49': '#7d7d7d',
|
253
|
+
'gray5': '#0d0d0d',
|
254
|
+
'gray50': '#7f7f7f',
|
255
|
+
'gray51': '#828282',
|
256
|
+
'gray52': '#858585',
|
257
|
+
'gray53': '#878787',
|
258
|
+
'gray54': '#8a8a8a',
|
259
|
+
'gray55': '#8c8c8c',
|
260
|
+
'gray56': '#8f8f8f',
|
261
|
+
'gray57': '#919191',
|
262
|
+
'gray58': '#949494',
|
263
|
+
'gray59': '#969696',
|
264
|
+
'gray6': '#0f0f0f',
|
265
|
+
'gray60': '#999999',
|
266
|
+
'gray61': '#9c9c9c',
|
267
|
+
'gray62': '#9e9e9e',
|
268
|
+
'gray63': '#a1a1a1',
|
269
|
+
'gray64': '#a3a3a3',
|
270
|
+
'gray65': '#a6a6a6',
|
271
|
+
'gray66': '#a8a8a8',
|
272
|
+
'gray67': '#ababab',
|
273
|
+
'gray68': '#adadad',
|
274
|
+
'gray69': '#b0b0b0',
|
275
|
+
'gray7': '#121212',
|
276
|
+
'gray70': '#b3b3b3',
|
277
|
+
'gray71': '#b5b5b5',
|
278
|
+
'gray72': '#b8b8b8',
|
279
|
+
'gray73': '#bababa',
|
280
|
+
'gray74': '#bdbdbd',
|
281
|
+
'gray75': '#bfbfbf',
|
282
|
+
'gray76': '#c2c2c2',
|
283
|
+
'gray77': '#c4c4c4',
|
284
|
+
'gray78': '#c7c7c7',
|
285
|
+
'gray79': '#c9c9c9',
|
286
|
+
'gray8': '#141414',
|
287
|
+
'gray80': '#cccccc',
|
288
|
+
'gray81': '#cfcfcf',
|
289
|
+
'gray82': '#d1d1d1',
|
290
|
+
'gray83': '#d4d4d4',
|
291
|
+
'gray84': '#d6d6d6',
|
292
|
+
'gray85': '#d9d9d9',
|
293
|
+
'gray86': '#dbdbdb',
|
294
|
+
'gray87': '#dedede',
|
295
|
+
'gray88': '#e0e0e0',
|
296
|
+
'gray89': '#e3e3e3',
|
297
|
+
'gray9': '#171717',
|
298
|
+
'gray90': '#e5e5e5',
|
299
|
+
'gray91': '#e8e8e8',
|
300
|
+
'gray92': '#ebebeb',
|
301
|
+
'gray93': '#ededed',
|
302
|
+
'gray94': '#f0f0f0',
|
303
|
+
'gray95': '#f2f2f2',
|
304
|
+
'gray96': '#f5f5f5',
|
305
|
+
'gray97': '#f7f7f7',
|
306
|
+
'gray98': '#fafafa',
|
307
|
+
'gray99': '#fcfcfc',
|
308
|
+
'green': '#adff2f',
|
309
|
+
'green1': '#00ff00',
|
310
|
+
'green2': '#00ee00',
|
311
|
+
'green3': '#00cd00',
|
312
|
+
'green4': '#008b00',
|
313
|
+
'greenyellow': '#adff2f',
|
314
|
+
'grey': '#bebebe',
|
315
|
+
'grey0': '#000000',
|
316
|
+
'grey1': '#030303',
|
317
|
+
'grey10': '#1a1a1a',
|
318
|
+
'grey100': '#ffffff',
|
319
|
+
'grey11': '#1c1c1c',
|
320
|
+
'grey12': '#1f1f1f',
|
321
|
+
'grey13': '#212121',
|
322
|
+
'grey14': '#242424',
|
323
|
+
'grey15': '#262626',
|
324
|
+
'grey16': '#292929',
|
325
|
+
'grey17': '#2b2b2b',
|
326
|
+
'grey18': '#2e2e2e',
|
327
|
+
'grey19': '#303030',
|
328
|
+
'grey2': '#050505',
|
329
|
+
'grey20': '#333333',
|
330
|
+
'grey21': '#363636',
|
331
|
+
'grey22': '#383838',
|
332
|
+
'grey23': '#3b3b3b',
|
333
|
+
'grey24': '#3d3d3d',
|
334
|
+
'grey25': '#404040',
|
335
|
+
'grey26': '#424242',
|
336
|
+
'grey27': '#454545',
|
337
|
+
'grey28': '#474747',
|
338
|
+
'grey29': '#4a4a4a',
|
339
|
+
'grey3': '#080808',
|
340
|
+
'grey30': '#4d4d4d',
|
341
|
+
'grey31': '#4f4f4f',
|
342
|
+
'grey32': '#525252',
|
343
|
+
'grey33': '#545454',
|
344
|
+
'grey34': '#575757',
|
345
|
+
'grey35': '#595959',
|
346
|
+
'grey36': '#5c5c5c',
|
347
|
+
'grey37': '#5e5e5e',
|
348
|
+
'grey38': '#616161',
|
349
|
+
'grey39': '#636363',
|
350
|
+
'grey4': '#0a0a0a',
|
351
|
+
'grey40': '#666666',
|
352
|
+
'grey41': '#696969',
|
353
|
+
'grey42': '#6b6b6b',
|
354
|
+
'grey43': '#6e6e6e',
|
355
|
+
'grey44': '#707070',
|
356
|
+
'grey45': '#737373',
|
357
|
+
'grey46': '#757575',
|
358
|
+
'grey47': '#787878',
|
359
|
+
'grey48': '#7a7a7a',
|
360
|
+
'grey49': '#7d7d7d',
|
361
|
+
'grey5': '#0d0d0d',
|
362
|
+
'grey50': '#7f7f7f',
|
363
|
+
'grey51': '#828282',
|
364
|
+
'grey52': '#858585',
|
365
|
+
'grey53': '#878787',
|
366
|
+
'grey54': '#8a8a8a',
|
367
|
+
'grey55': '#8c8c8c',
|
368
|
+
'grey56': '#8f8f8f',
|
369
|
+
'grey57': '#919191',
|
370
|
+
'grey58': '#949494',
|
371
|
+
'grey59': '#969696',
|
372
|
+
'grey6': '#0f0f0f',
|
373
|
+
'grey60': '#999999',
|
374
|
+
'grey61': '#9c9c9c',
|
375
|
+
'grey62': '#9e9e9e',
|
376
|
+
'grey63': '#a1a1a1',
|
377
|
+
'grey64': '#a3a3a3',
|
378
|
+
'grey65': '#a6a6a6',
|
379
|
+
'grey66': '#a8a8a8',
|
380
|
+
'grey67': '#ababab',
|
381
|
+
'grey68': '#adadad',
|
382
|
+
'grey69': '#b0b0b0',
|
383
|
+
'grey7': '#121212',
|
384
|
+
'grey70': '#b3b3b3',
|
385
|
+
'grey71': '#b5b5b5',
|
386
|
+
'grey72': '#b8b8b8',
|
387
|
+
'grey73': '#bababa',
|
388
|
+
'grey74': '#bdbdbd',
|
389
|
+
'grey75': '#bfbfbf',
|
390
|
+
'grey76': '#c2c2c2',
|
391
|
+
'grey77': '#c4c4c4',
|
392
|
+
'grey78': '#c7c7c7',
|
393
|
+
'grey79': '#c9c9c9',
|
394
|
+
'grey8': '#141414',
|
395
|
+
'grey80': '#cccccc',
|
396
|
+
'grey81': '#cfcfcf',
|
397
|
+
'grey82': '#d1d1d1',
|
398
|
+
'grey83': '#d4d4d4',
|
399
|
+
'grey84': '#d6d6d6',
|
400
|
+
'grey85': '#d9d9d9',
|
401
|
+
'grey86': '#dbdbdb',
|
402
|
+
'grey87': '#dedede',
|
403
|
+
'grey88': '#e0e0e0',
|
404
|
+
'grey89': '#e3e3e3',
|
405
|
+
'grey9': '#171717',
|
406
|
+
'grey90': '#e5e5e5',
|
407
|
+
'grey91': '#e8e8e8',
|
408
|
+
'grey92': '#ebebeb',
|
409
|
+
'grey93': '#ededed',
|
410
|
+
'grey94': '#f0f0f0',
|
411
|
+
'grey95': '#f2f2f2',
|
412
|
+
'grey96': '#f5f5f5',
|
413
|
+
'grey97': '#f7f7f7',
|
414
|
+
'grey98': '#fafafa',
|
415
|
+
'grey99': '#fcfcfc',
|
416
|
+
'honeydew': '#f0fff0',
|
417
|
+
'honeydew1': '#f0fff0',
|
418
|
+
'honeydew2': '#e0eee0',
|
419
|
+
'honeydew3': '#c1cdc1',
|
420
|
+
'honeydew4': '#838b83',
|
421
|
+
'hot': '#ff69b4',
|
422
|
+
'hotpink': '#ff69b4',
|
423
|
+
'hotpink1': '#ff6eb4',
|
424
|
+
'hotpink2': '#ee6aa7',
|
425
|
+
'hotpink3': '#cd6090',
|
426
|
+
'hotpink4': '#8b3a62',
|
427
|
+
'indian': '#cd5c5c',
|
428
|
+
'indianred': '#cd5c5c',
|
429
|
+
'indianred1': '#ff6a6a',
|
430
|
+
'indianred2': '#ee6363',
|
431
|
+
'indianred3': '#cd5555',
|
432
|
+
'indianred4': '#8b3a3a',
|
433
|
+
'ivory': '#fffff0',
|
434
|
+
'ivory1': '#fffff0',
|
435
|
+
'ivory2': '#eeeee0',
|
436
|
+
'ivory3': '#cdcdc1',
|
437
|
+
'ivory4': '#8b8b83',
|
438
|
+
'khaki': '#f0e68c',
|
439
|
+
'khaki1': '#fff68f',
|
440
|
+
'khaki2': '#eee685',
|
441
|
+
'khaki3': '#cdc673',
|
442
|
+
'khaki4': '#8b864e',
|
443
|
+
'lavender': '#fff0f5',
|
444
|
+
'lavenderblush': '#fff0f5',
|
445
|
+
'lavenderblush1': '#fff0f5',
|
446
|
+
'lavenderblush2': '#eee0e5',
|
447
|
+
'lavenderblush3': '#cdc1c5',
|
448
|
+
'lavenderblush4': '#8b8386',
|
449
|
+
'lawn': '#7cfc00',
|
450
|
+
'lawngreen': '#7cfc00',
|
451
|
+
'lemon': '#fffacd',
|
452
|
+
'lemonchiffon': '#fffacd',
|
453
|
+
'lemonchiffon1': '#fffacd',
|
454
|
+
'lemonchiffon2': '#eee9bf',
|
455
|
+
'lemonchiffon3': '#cdc9a5',
|
456
|
+
'lemonchiffon4': '#8b8970',
|
457
|
+
'light': '#90ee90',
|
458
|
+
'lightblue': '#add8e6',
|
459
|
+
'lightblue1': '#bfefff',
|
460
|
+
'lightblue2': '#b2dfee',
|
461
|
+
'lightblue3': '#9ac0cd',
|
462
|
+
'lightblue4': '#68838b',
|
463
|
+
'lightcoral': '#f08080',
|
464
|
+
'lightcyan': '#e0ffff',
|
465
|
+
'lightcyan1': '#e0ffff',
|
466
|
+
'lightcyan2': '#d1eeee',
|
467
|
+
'lightcyan3': '#b4cdcd',
|
468
|
+
'lightcyan4': '#7a8b8b',
|
469
|
+
'lightgoldenrod': '#eedd82',
|
470
|
+
'lightgoldenrod1': '#ffec8b',
|
471
|
+
'lightgoldenrod2': '#eedc82',
|
472
|
+
'lightgoldenrod3': '#cdbe70',
|
473
|
+
'lightgoldenrod4': '#8b814c',
|
474
|
+
'lightgoldenrodyellow': '#fafad2',
|
475
|
+
'lightgray': '#d3d3d3',
|
476
|
+
'lightgreen': '#90ee90',
|
477
|
+
'lightgrey': '#d3d3d3',
|
478
|
+
'lightpink': '#ffb6c1',
|
479
|
+
'lightpink1': '#ffaeb9',
|
480
|
+
'lightpink2': '#eea2ad',
|
481
|
+
'lightpink3': '#cd8c95',
|
482
|
+
'lightpink4': '#8b5f65',
|
483
|
+
'lightsalmon': '#ffa07a',
|
484
|
+
'lightsalmon1': '#ffa07a',
|
485
|
+
'lightsalmon2': '#ee9572',
|
486
|
+
'lightsalmon3': '#cd8162',
|
487
|
+
'lightsalmon4': '#8b5742',
|
488
|
+
'lightseagreen': '#20b2aa',
|
489
|
+
'lightskyblue': '#87cefa',
|
490
|
+
'lightskyblue1': '#b0e2ff',
|
491
|
+
'lightskyblue2': '#a4d3ee',
|
492
|
+
'lightskyblue3': '#8db6cd',
|
493
|
+
'lightskyblue4': '#607b8b',
|
494
|
+
'lightslateblue': '#8470ff',
|
495
|
+
'lightslategray': '#778899',
|
496
|
+
'lightslategrey': '#778899',
|
497
|
+
'lightsteelblue': '#b0c4de',
|
498
|
+
'lightsteelblue1': '#cae1ff',
|
499
|
+
'lightsteelblue2': '#bcd2ee',
|
500
|
+
'lightsteelblue3': '#a2b5cd',
|
501
|
+
'lightsteelblue4': '#6e7b8b',
|
502
|
+
'lightyellow': '#ffffe0',
|
503
|
+
'lightyellow1': '#ffffe0',
|
504
|
+
'lightyellow2': '#eeeed1',
|
505
|
+
'lightyellow3': '#cdcdb4',
|
506
|
+
'lightyellow4': '#8b8b7a',
|
507
|
+
'lime': '#32cd32',
|
508
|
+
'limegreen': '#32cd32',
|
509
|
+
'linen': '#faf0e6',
|
510
|
+
'magenta': '#ff00ff',
|
511
|
+
'magenta1': '#ff00ff',
|
512
|
+
'magenta2': '#ee00ee',
|
513
|
+
'magenta3': '#cd00cd',
|
514
|
+
'magenta4': '#8b008b',
|
515
|
+
'maroon': '#b03060',
|
516
|
+
'maroon1': '#ff34b3',
|
517
|
+
'maroon2': '#ee30a7',
|
518
|
+
'maroon3': '#cd2990',
|
519
|
+
'maroon4': '#8b1c62',
|
520
|
+
'medium': '#9370db',
|
521
|
+
'mediumaquamarine': '#66cdaa',
|
522
|
+
'mediumblue': '#0000cd',
|
523
|
+
'mediumorchid': '#ba55d3',
|
524
|
+
'mediumorchid1': '#e066ff',
|
525
|
+
'mediumorchid2': '#d15fee',
|
526
|
+
'mediumorchid3': '#b452cd',
|
527
|
+
'mediumorchid4': '#7a378b',
|
528
|
+
'mediumpurple': '#9370db',
|
529
|
+
'mediumpurple1': '#ab82ff',
|
530
|
+
'mediumpurple2': '#9f79ee',
|
531
|
+
'mediumpurple3': '#8968cd',
|
532
|
+
'mediumpurple4': '#5d478b',
|
533
|
+
'mediumseagreen': '#3cb371',
|
534
|
+
'mediumslateblue': '#7b68ee',
|
535
|
+
'mediumspringgreen': '#00fa9a',
|
536
|
+
'mediumturquoise': '#48d1cc',
|
537
|
+
'mediumvioletred': '#c71585',
|
538
|
+
'midnight': '#191970',
|
539
|
+
'midnightblue': '#191970',
|
540
|
+
'mint': '#f5fffa',
|
541
|
+
'mintcream': '#f5fffa',
|
542
|
+
'misty': '#ffe4e1',
|
543
|
+
'mistyrose': '#ffe4e1',
|
544
|
+
'mistyrose1': '#ffe4e1',
|
545
|
+
'mistyrose2': '#eed5d2',
|
546
|
+
'mistyrose3': '#cdb7b5',
|
547
|
+
'mistyrose4': '#8b7d7b',
|
548
|
+
'moccasin': '#ffe4b5',
|
549
|
+
'navajo': '#ffdead',
|
550
|
+
'navajowhite': '#ffdead',
|
551
|
+
'navajowhite1': '#ffdead',
|
552
|
+
'navajowhite2': '#eecfa1',
|
553
|
+
'navajowhite3': '#cdb38b',
|
554
|
+
'navajowhite4': '#8b795e',
|
555
|
+
'navy': '#000080',
|
556
|
+
'navyblue': '#000080',
|
557
|
+
'old': '#fdf5e6',
|
558
|
+
'oldlace': '#fdf5e6',
|
559
|
+
'olive': '#6b8e23',
|
560
|
+
'olivedrab': '#6b8e23',
|
561
|
+
'olivedrab1': '#c0ff3e',
|
562
|
+
'olivedrab2': '#b3ee3a',
|
563
|
+
'olivedrab3': '#9acd32',
|
564
|
+
'olivedrab4': '#698b22',
|
565
|
+
'orange': '#ff4500',
|
566
|
+
'orange1': '#ffa500',
|
567
|
+
'orange2': '#ee9a00',
|
568
|
+
'orange3': '#cd8500',
|
569
|
+
'orange4': '#8b5a00',
|
570
|
+
'orangered': '#ff4500',
|
571
|
+
'orangered1': '#ff4500',
|
572
|
+
'orangered2': '#ee4000',
|
573
|
+
'orangered3': '#cd3700',
|
574
|
+
'orangered4': '#8b2500',
|
575
|
+
'orchid': '#da70d6',
|
576
|
+
'orchid1': '#ff83fa',
|
577
|
+
'orchid2': '#ee7ae9',
|
578
|
+
'orchid3': '#cd69c9',
|
579
|
+
'orchid4': '#8b4789',
|
580
|
+
'pale': '#db7093',
|
581
|
+
'palegoldenrod': '#eee8aa',
|
582
|
+
'palegreen': '#98fb98',
|
583
|
+
'palegreen1': '#9aff9a',
|
584
|
+
'palegreen2': '#90ee90',
|
585
|
+
'palegreen3': '#7ccd7c',
|
586
|
+
'palegreen4': '#548b54',
|
587
|
+
'paleturquoise': '#afeeee',
|
588
|
+
'paleturquoise1': '#bbffff',
|
589
|
+
'paleturquoise2': '#aeeeee',
|
590
|
+
'paleturquoise3': '#96cdcd',
|
591
|
+
'paleturquoise4': '#668b8b',
|
592
|
+
'palevioletred': '#db7093',
|
593
|
+
'palevioletred1': '#ff82ab',
|
594
|
+
'palevioletred2': '#ee799f',
|
595
|
+
'palevioletred3': '#cd6889',
|
596
|
+
'palevioletred4': '#8b475d',
|
597
|
+
'papaya': '#ffefd5',
|
598
|
+
'papayawhip': '#ffefd5',
|
599
|
+
'peach': '#ffdab9',
|
600
|
+
'peachpuff': '#ffdab9',
|
601
|
+
'peachpuff1': '#ffdab9',
|
602
|
+
'peachpuff2': '#eecbad',
|
603
|
+
'peachpuff3': '#cdaf95',
|
604
|
+
'peachpuff4': '#8b7765',
|
605
|
+
'peru': '#cd853f',
|
606
|
+
'pink': '#ffc0cb',
|
607
|
+
'pink1': '#ffb5c5',
|
608
|
+
'pink2': '#eea9b8',
|
609
|
+
'pink3': '#cd919e',
|
610
|
+
'pink4': '#8b636c',
|
611
|
+
'plum': '#dda0dd',
|
612
|
+
'plum1': '#ffbbff',
|
613
|
+
'plum2': '#eeaeee',
|
614
|
+
'plum3': '#cd96cd',
|
615
|
+
'plum4': '#8b668b',
|
616
|
+
'powder': '#b0e0e6',
|
617
|
+
'powderblue': '#b0e0e6',
|
618
|
+
'purple': '#a020f0',
|
619
|
+
'purple1': '#9b30ff',
|
620
|
+
'purple2': '#912cee',
|
621
|
+
'purple3': '#7d26cd',
|
622
|
+
'purple4': '#551a8b',
|
623
|
+
'red': '#ff0000',
|
624
|
+
'red1': '#ff0000',
|
625
|
+
'red2': '#ee0000',
|
626
|
+
'red3': '#cd0000',
|
627
|
+
'red4': '#8b0000',
|
628
|
+
'rosy': '#bc8f8f',
|
629
|
+
'rosybrown': '#bc8f8f',
|
630
|
+
'rosybrown1': '#ffc1c1',
|
631
|
+
'rosybrown2': '#eeb4b4',
|
632
|
+
'rosybrown3': '#cd9b9b',
|
633
|
+
'rosybrown4': '#8b6969',
|
634
|
+
'royal': '#4169e1',
|
635
|
+
'royalblue': '#4169e1',
|
636
|
+
'royalblue1': '#4876ff',
|
637
|
+
'royalblue2': '#436eee',
|
638
|
+
'royalblue3': '#3a5fcd',
|
639
|
+
'royalblue4': '#27408b',
|
640
|
+
'saddle': '#8b4513',
|
641
|
+
'saddlebrown': '#8b4513',
|
642
|
+
'salmon': '#fa8072',
|
643
|
+
'salmon1': '#ff8c69',
|
644
|
+
'salmon2': '#ee8262',
|
645
|
+
'salmon3': '#cd7054',
|
646
|
+
'salmon4': '#8b4c39',
|
647
|
+
'sandy': '#f4a460',
|
648
|
+
'sandybrown': '#f4a460',
|
649
|
+
'sea': '#2e8b57',
|
650
|
+
'seagreen': '#2e8b57',
|
651
|
+
'seagreen1': '#54ff9f',
|
652
|
+
'seagreen2': '#4eee94',
|
653
|
+
'seagreen3': '#43cd80',
|
654
|
+
'seagreen4': '#2e8b57',
|
655
|
+
'seashell': '#fff5ee',
|
656
|
+
'seashell1': '#fff5ee',
|
657
|
+
'seashell2': '#eee5de',
|
658
|
+
'seashell3': '#cdc5bf',
|
659
|
+
'seashell4': '#8b8682',
|
660
|
+
'sienna': '#a0522d',
|
661
|
+
'sienna1': '#ff8247',
|
662
|
+
'sienna2': '#ee7942',
|
663
|
+
'sienna3': '#cd6839',
|
664
|
+
'sienna4': '#8b4726',
|
665
|
+
'sky': '#87ceeb',
|
666
|
+
'skyblue': '#87ceeb',
|
667
|
+
'skyblue1': '#87ceff',
|
668
|
+
'skyblue2': '#7ec0ee',
|
669
|
+
'skyblue3': '#6ca6cd',
|
670
|
+
'skyblue4': '#4a708b',
|
671
|
+
'slate': '#6a5acd',
|
672
|
+
'slateblue': '#6a5acd',
|
673
|
+
'slateblue1': '#836fff',
|
674
|
+
'slateblue2': '#7a67ee',
|
675
|
+
'slateblue3': '#6959cd',
|
676
|
+
'slateblue4': '#473c8b',
|
677
|
+
'slategray': '#708090',
|
678
|
+
'slategray1': '#c6e2ff',
|
679
|
+
'slategray2': '#b9d3ee',
|
680
|
+
'slategray3': '#9fb6cd',
|
681
|
+
'slategray4': '#6c7b8b',
|
682
|
+
'slategrey': '#708090',
|
683
|
+
'snow': '#fffafa',
|
684
|
+
'snow1': '#fffafa',
|
685
|
+
'snow2': '#eee9e9',
|
686
|
+
'snow3': '#cdc9c9',
|
687
|
+
'snow4': '#8b8989',
|
688
|
+
'spring': '#00ff7f',
|
689
|
+
'springgreen': '#00ff7f',
|
690
|
+
'springgreen1': '#00ff7f',
|
691
|
+
'springgreen2': '#00ee76',
|
692
|
+
'springgreen3': '#00cd66',
|
693
|
+
'springgreen4': '#008b45',
|
694
|
+
'steel': '#4682b4',
|
695
|
+
'steelblue': '#4682b4',
|
696
|
+
'steelblue1': '#63b8ff',
|
697
|
+
'steelblue2': '#5cacee',
|
698
|
+
'steelblue3': '#4f94cd',
|
699
|
+
'steelblue4': '#36648b',
|
700
|
+
'tan': '#d2b48c',
|
701
|
+
'tan1': '#ffa54f',
|
702
|
+
'tan2': '#ee9a49',
|
703
|
+
'tan3': '#cd853f',
|
704
|
+
'tan4': '#8b5a2b',
|
705
|
+
'thistle': '#d8bfd8',
|
706
|
+
'thistle1': '#ffe1ff',
|
707
|
+
'thistle2': '#eed2ee',
|
708
|
+
'thistle3': '#cdb5cd',
|
709
|
+
'thistle4': '#8b7b8b',
|
710
|
+
'tomato': '#ff6347',
|
711
|
+
'tomato1': '#ff6347',
|
712
|
+
'tomato2': '#ee5c42',
|
713
|
+
'tomato3': '#cd4f39',
|
714
|
+
'tomato4': '#8b3626',
|
715
|
+
'turquoise': '#40e0d0',
|
716
|
+
'turquoise1': '#00f5ff',
|
717
|
+
'turquoise2': '#00e5ee',
|
718
|
+
'turquoise3': '#00c5cd',
|
719
|
+
'turquoise4': '#00868b',
|
720
|
+
'violet': '#ee82ee',
|
721
|
+
'violetred': '#d02090',
|
722
|
+
'violetred1': '#ff3e96',
|
723
|
+
'violetred2': '#ee3a8c',
|
724
|
+
'violetred3': '#cd3278',
|
725
|
+
'violetred4': '#8b2252',
|
726
|
+
'wheat': '#f5deb3',
|
727
|
+
'wheat1': '#ffe7ba',
|
728
|
+
'wheat2': '#eed8ae',
|
729
|
+
'wheat3': '#cdba96',
|
730
|
+
'wheat4': '#8b7e66',
|
731
|
+
'white': '#ffffff',
|
732
|
+
'whitesmoke': '#f5f5f5',
|
733
|
+
'yellow': '#ffff00',
|
734
|
+
'yellow1': '#ffff00',
|
735
|
+
'yellow2': '#eeee00',
|
736
|
+
'yellow3': '#cdcd00',
|
737
|
+
'yellow4': '#8b8b00',
|
738
|
+
'yellowgreen': '#9acd32'
|
739
|
+
}
|
740
|
+
|
741
|
+
TOKENS = {
|
742
|
+
'normal': '',
|
743
|
+
'string': 'String',
|
744
|
+
'number': 'Number',
|
745
|
+
'float': 'Number.Float',
|
746
|
+
'constant': 'Name.Constant',
|
747
|
+
'number': 'Number',
|
748
|
+
'statement': ('Keyword', 'Name.Tag'),
|
749
|
+
'identifier': 'Name.Variable',
|
750
|
+
'operator': 'Operator.Word',
|
751
|
+
'label': 'Name.Label',
|
752
|
+
'exception': 'Name.Exception',
|
753
|
+
'function': ('Name.Function', 'Name.Attribute'),
|
754
|
+
'preproc': 'Comment.Preproc',
|
755
|
+
'comment': 'Comment',
|
756
|
+
'type': 'Keyword.Type',
|
757
|
+
'diffadd': 'Generic.Inserted',
|
758
|
+
'diffdelete': 'Generic.Deleted',
|
759
|
+
'error': 'Generic.Error',
|
760
|
+
'errormsg': 'Generic.Traceback',
|
761
|
+
'title': ('Generic.Heading', 'Generic.Subheading'),
|
762
|
+
'underlined': 'Generic.Emph',
|
763
|
+
'special': 'Name.Entity',
|
764
|
+
'nontext': 'Generic.Output'
|
765
|
+
}
|
766
|
+
|
767
|
+
TOKEN_TYPES = set()
|
768
|
+
for token in TOKENS.itervalues():
|
769
|
+
if not isinstance(token, tuple):
|
770
|
+
token = (token,)
|
771
|
+
for token in token:
|
772
|
+
if token:
|
773
|
+
TOKEN_TYPES.add(token.split('.')[0])
|
774
|
+
|
775
|
+
|
776
|
+
def get_vim_color(color):
|
777
|
+
if color.startswith('#'):
|
778
|
+
if len(color) == 7:
|
779
|
+
return color
|
780
|
+
else:
|
781
|
+
return '#%s0' % '0'.join(color)[1:]
|
782
|
+
return COLORS.get(color.lower())
|
783
|
+
|
784
|
+
|
785
|
+
def find_colors(code):
|
786
|
+
colors = {'Normal': {}}
|
787
|
+
bg_color = None
|
788
|
+
def set(attrib, value):
|
789
|
+
if token not in colors:
|
790
|
+
colors[token] = {}
|
791
|
+
if key.startswith('gui') or attrib not in colors[token]:
|
792
|
+
colors[token][attrib] = value
|
793
|
+
|
794
|
+
for line in code.splitlines():
|
795
|
+
if line.startswith('"'):
|
796
|
+
continue
|
797
|
+
parts = split_re.split(line.strip())
|
798
|
+
if len(parts) == 2 and parts[0] == 'set':
|
799
|
+
p = parts[1].split()
|
800
|
+
if p[0] == 'background' and p[1] == 'dark':
|
801
|
+
token = 'Normal'
|
802
|
+
bg_color = '#000000'
|
803
|
+
elif len(parts) > 2 and \
|
804
|
+
len(parts[0]) >= 2 and \
|
805
|
+
'highlight'.startswith(parts[0]):
|
806
|
+
token = parts[1].lower()
|
807
|
+
if token not in TOKENS:
|
808
|
+
continue
|
809
|
+
for item in parts[2:]:
|
810
|
+
p = item.split('=', 1)
|
811
|
+
if not len(p) == 2:
|
812
|
+
continue
|
813
|
+
key, value = p
|
814
|
+
if key in ('ctermfg', 'guifg'):
|
815
|
+
color = get_vim_color(value)
|
816
|
+
if color:
|
817
|
+
set('color', color)
|
818
|
+
elif key in ('ctermbg', 'guibg'):
|
819
|
+
color = get_vim_color(value)
|
820
|
+
if color:
|
821
|
+
set('bgcolor', color)
|
822
|
+
elif key in ('term', 'cterm', 'gui'):
|
823
|
+
items = value.split(',')
|
824
|
+
for item in items:
|
825
|
+
item = item.lower()
|
826
|
+
if item == 'none':
|
827
|
+
set('noinherit', True)
|
828
|
+
elif item == 'bold':
|
829
|
+
set('bold', True)
|
830
|
+
elif item == 'underline':
|
831
|
+
set('underline', True)
|
832
|
+
elif item == 'italic':
|
833
|
+
set('italic', True)
|
834
|
+
|
835
|
+
if bg_color is not None and not colors['Normal'].get('bgcolor'):
|
836
|
+
colors['Normal']['bgcolor'] = bg_color
|
837
|
+
|
838
|
+
color_map = {}
|
839
|
+
for token, styles in colors.iteritems():
|
840
|
+
if token in TOKENS:
|
841
|
+
tmp = []
|
842
|
+
if styles.get('noinherit'):
|
843
|
+
tmp.append('noinherit')
|
844
|
+
if 'color' in styles:
|
845
|
+
tmp.append(styles['color'])
|
846
|
+
if 'bgcolor' in styles:
|
847
|
+
tmp.append('bg:' + styles['bgcolor'])
|
848
|
+
if styles.get('bold'):
|
849
|
+
tmp.append('bold')
|
850
|
+
if styles.get('italic'):
|
851
|
+
tmp.append('italic')
|
852
|
+
if styles.get('underline'):
|
853
|
+
tmp.append('underline')
|
854
|
+
tokens = TOKENS[token]
|
855
|
+
if not isinstance(tokens, tuple):
|
856
|
+
tokens = (tokens,)
|
857
|
+
for token in tokens:
|
858
|
+
color_map[token] = ' '.join(tmp)
|
859
|
+
|
860
|
+
default_token = color_map.pop('')
|
861
|
+
return default_token, color_map
|
862
|
+
|
863
|
+
|
864
|
+
class StyleWriter(object):
|
865
|
+
|
866
|
+
def __init__(self, code, name):
|
867
|
+
self.code = code
|
868
|
+
self.name = name.lower()
|
869
|
+
|
870
|
+
def write_header(self, out):
|
871
|
+
out.write('# -*- coding: utf-8 -*-\n"""\n')
|
872
|
+
out.write(' %s Colorscheme\n' % self.name.title())
|
873
|
+
out.write(' %s\n\n' % ('~' * (len(self.name) + 12)))
|
874
|
+
out.write(' Converted by %s\n' % SCRIPT_NAME)
|
875
|
+
out.write('"""\nfrom pygments.style import Style\n')
|
876
|
+
out.write('from pygments.token import Token, %s\n\n' % ', '.join(TOKEN_TYPES))
|
877
|
+
out.write('class %sStyle(Style):\n\n' % self.name.title())
|
878
|
+
|
879
|
+
def write(self, out):
|
880
|
+
self.write_header(out)
|
881
|
+
default_token, tokens = find_colors(self.code)
|
882
|
+
tokens = tokens.items()
|
883
|
+
tokens.sort(lambda a, b: cmp(len(a[0]), len(a[1])))
|
884
|
+
bg_color = [x[3:] for x in default_token.split() if x.startswith('bg:')]
|
885
|
+
if bg_color:
|
886
|
+
out.write(' background_color = %r\n' % bg_color[0])
|
887
|
+
out.write(' styles = {\n')
|
888
|
+
out.write(' %-20s%r,\n' % ('Token:', default_token))
|
889
|
+
for token, definition in tokens:
|
890
|
+
if definition:
|
891
|
+
out.write(' %-20s%r,\n' % (token + ':', definition))
|
892
|
+
out.write(' }')
|
893
|
+
|
894
|
+
def __repr__(self):
|
895
|
+
out = StringIO()
|
896
|
+
self.write_style(out)
|
897
|
+
return out.getvalue()
|
898
|
+
|
899
|
+
|
900
|
+
def convert(filename, stream=None):
|
901
|
+
name = path.basename(filename)
|
902
|
+
if name.endswith('.vim'):
|
903
|
+
name = name[:-4]
|
904
|
+
f = file(filename)
|
905
|
+
code = f.read()
|
906
|
+
f.close()
|
907
|
+
writer = StyleWriter(code, name)
|
908
|
+
if stream is not None:
|
909
|
+
out = stream
|
910
|
+
else:
|
911
|
+
out = StringIO()
|
912
|
+
writer.write(out)
|
913
|
+
if stream is None:
|
914
|
+
return out.getvalue()
|
915
|
+
|
916
|
+
|
917
|
+
def main():
|
918
|
+
if len(sys.argv) != 2 or sys.argv[1] in ('-h', '--help'):
|
919
|
+
print 'Usage: %s <filename.vim>' % sys.argv[0]
|
920
|
+
return 2
|
921
|
+
if sys.argv[1] in ('-v', '--version'):
|
922
|
+
print '%s %s' % (SCRIPT_NAME, SCRIPT_VERSION)
|
923
|
+
return
|
924
|
+
filename = sys.argv[1]
|
925
|
+
if not (path.exists(filename) and path.isfile(filename)):
|
926
|
+
print 'Error: %s not found' % filename
|
927
|
+
return 1
|
928
|
+
convert(filename, sys.stdout)
|
929
|
+
sys.stdout.write('\n')
|
930
|
+
|
931
|
+
|
932
|
+
if __name__ == '__main__':
|
933
|
+
sys.exit(main() or 0)
|