From e84d05fcf4ae68d8ce2c8278622f9b738afef7d4 Mon Sep 17 00:00:00 2001 From: JinWang An Date: Tue, 5 Jan 2021 12:20:38 +0900 Subject: [PATCH] Imported Upstream version 2.5.2 --- .coveragerc | 3 + .github/workflows/build.yaml | 26 + .github/workflows/docs.yaml | 36 + .gitignore | 18 + CHANGES | 20 + MANIFEST.in | 3 +- PKG-INFO | 2 +- Pygments.egg-info/PKG-INFO | 2 +- Pygments.egg-info/SOURCES.txt | 178 +- TODO | 12 - doc/_build/{html => dirhtml}/.buildinfo | 4 +- .../_sources/docs/api.rst.txt | 0 .../_sources/docs/authors.rst.txt | 0 .../_sources/docs/changelog.rst.txt | 0 .../_sources/docs/cmdline.rst.txt | 0 .../_sources/docs/filterdevelopment.rst.txt | 0 .../_sources/docs/filters.rst.txt | 0 .../docs/formatterdevelopment.rst.txt | 0 .../_sources/docs/formatters.rst.txt | 0 .../_sources/docs/index.rst.txt | 0 .../_sources/docs/integrate.rst.txt | 0 .../_sources/docs/java.rst.txt | 0 .../_sources/docs/lexerdevelopment.rst.txt | 0 .../_sources/docs/lexers.rst.txt | 0 .../_sources/docs/moinmoin.rst.txt | 0 .../_sources/docs/plugins.rst.txt | 0 .../_sources/docs/quickstart.rst.txt | 0 .../_sources/docs/rstdirective.rst.txt | 0 .../_sources/docs/styles.rst.txt | 0 .../_sources/docs/tokens.rst.txt | 0 .../_sources/docs/unicode.rst.txt | 0 .../_sources/download.rst.txt | 0 .../{html => dirhtml}/_sources/faq.rst.txt | 5 +- .../{html => dirhtml}/_sources/index.rst.txt | 0 .../_sources/languages.rst.txt | 6 - .../{html => dirhtml}/_static/basic.css | 26 +- .../{html => dirhtml}/_static/bodybg.png | Bin doc/_build/{html => dirhtml}/_static/demo.css | 0 doc/_build/{html => dirhtml}/_static/demo.js | 4 +- .../{html => dirhtml}/_static/docbg.png | Bin .../{html => dirhtml}/_static/doctools.js | 0 .../_static/documentation_options.js | 2 +- .../{html => dirhtml}/_static/favicon.ico | Bin doc/_build/{html => dirhtml}/_static/file.png | Bin .../{html => dirhtml}/_static/github.png | Bin .../_static/jquery-3.2.1.js} | 1339 +++++-------- doc/_build/dirhtml/_static/jquery.js | 4 + .../_static/language_data.js | 0 .../{html => dirhtml}/_static/listitem.png | Bin doc/_build/{html => dirhtml}/_static/logo.png | Bin .../{html => dirhtml}/_static/logo_new.png | Bin .../{html => dirhtml}/_static/logo_only.png | Bin .../{html => dirhtml}/_static/minus.png | Bin doc/_build/{html => dirhtml}/_static/plus.png | Bin .../{html => dirhtml}/_static/pocoo.png | Bin .../{html => dirhtml}/_static/pygments.css | 0 .../{html => dirhtml}/_static/pygments14.css | 0 .../dirhtml/_static/pyodide/Pygments.data | Bin 0 -> 1674500 bytes .../dirhtml/_static/pyodide/Pygments.js | 2 + .../dirhtml/_static/pyodide/packages.json | 1 + .../dirhtml/_static/pyodide/pyodide.asm.data | Bin 0 -> 8362390 bytes .../_static/pyodide/pyodide.asm.data.js | 10 + .../dirhtml/_static/pyodide/pyodide.asm.js | 21 + .../dirhtml/_static/pyodide/pyodide.asm.wasm | Bin 0 -> 12965873 bytes doc/_build/dirhtml/_static/pyodide/pyodide.js | 412 ++++ .../{html => dirhtml}/_static/searchtools.js | 7 +- .../{html => dirhtml}/_static/spinner.gif | Bin .../_static/underscore-1.3.1.js | 0 .../{html => dirhtml}/_static/underscore.js | 0 doc/_build/dirhtml/demo/index.html | 153 ++ .../api.html => dirhtml/docs/api/index.html} | 136 +- .../docs/authors/index.html} | 50 +- .../docs/changelog/index.html} | 99 +- .../docs/cmdline/index.html} | 64 +- .../docs/filterdevelopment/index.html} | 56 +- .../docs/filters/index.html} | 72 +- .../docs/formatterdevelopment/index.html} | 60 +- .../docs/formatters/index.html} | 98 +- doc/_build/{html => dirhtml}/docs/index.html | 72 +- .../docs/integrate/index.html} | 56 +- .../docs/java/index.html} | 64 +- .../docs/lexerdevelopment/index.html} | 66 +- .../docs/lexers/index.html} | 1166 ++++++------ .../docs/moinmoin/index.html} | 54 +- .../docs/plugins/index.html} | 56 +- .../docs/quickstart/index.html} | 82 +- .../docs/rstdirective/index.html} | 54 +- .../docs/styles/index.html} | 62 +- .../docs/tokens/index.html} | 60 +- .../docs/unicode/index.html} | 56 +- .../download/index.html} | 54 +- .../{html/faq.html => dirhtml/faq/index.html} | 55 +- doc/_build/dirhtml/genindex/index.html | 1674 ++++++++++++++++ doc/_build/{html => dirhtml}/index.html | 28 +- .../languages/index.html} | 54 +- doc/_build/dirhtml/objects.inv | Bin 0 -> 4761 bytes doc/_build/dirhtml/py-modindex/index.html | 818 ++++++++ .../search.html => dirhtml/search/index.html} | 42 +- doc/_build/dirhtml/searchindex.js | 1 + doc/_build/doctrees/docs/api.doctree | Bin 99732 -> 98887 bytes doc/_build/doctrees/docs/authors.doctree | Bin 53905 -> 53893 bytes doc/_build/doctrees/docs/changelog.doctree | Bin 246010 -> 231287 bytes doc/_build/doctrees/docs/cmdline.doctree | Bin 30474 -> 30134 bytes .../doctrees/docs/filterdevelopment.doctree | Bin 10909 -> 10773 bytes doc/_build/doctrees/docs/filters.doctree | Bin 37459 -> 37130 bytes .../docs/formatterdevelopment.doctree | Bin 25127 -> 24752 bytes doc/_build/doctrees/docs/formatters.doctree | Bin 183698 -> 180847 bytes doc/_build/doctrees/docs/index.doctree | Bin 5797 -> 5628 bytes doc/_build/doctrees/docs/integrate.doctree | Bin 9359 -> 9276 bytes doc/_build/doctrees/docs/java.doctree | Bin 9282 -> 9227 bytes .../doctrees/docs/lexerdevelopment.doctree | Bin 116971 -> 115015 bytes doc/_build/doctrees/docs/lexers.doctree | Bin 1589052 -> 1565635 bytes doc/_build/doctrees/docs/moinmoin.doctree | Bin 8821 -> 8671 bytes doc/_build/doctrees/docs/plugins.doctree | Bin 11765 -> 11614 bytes doc/_build/doctrees/docs/quickstart.doctree | Bin 32686 -> 32327 bytes doc/_build/doctrees/docs/rstdirective.doctree | Bin 5108 -> 5070 bytes doc/_build/doctrees/docs/styles.doctree | Bin 44186 -> 43357 bytes doc/_build/doctrees/docs/tokens.doctree | Bin 82104 -> 80263 bytes doc/_build/doctrees/docs/unicode.doctree | Bin 13486 -> 13182 bytes doc/_build/doctrees/download.doctree | Bin 8322 -> 8234 bytes doc/_build/doctrees/environment.pickle | Bin 254997 -> 252760 bytes doc/_build/doctrees/faq.doctree | Bin 43764 -> 41748 bytes doc/_build/doctrees/index.doctree | Bin 11942 -> 11775 bytes doc/_build/doctrees/languages.doctree | Bin 43653 -> 41113 bytes doc/_build/html/_static/jquery.js | 2 - doc/_build/html/genindex.html | 1682 ----------------- doc/_build/html/objects.inv | Bin 4862 -> 0 bytes doc/_build/html/py-modindex.html | 820 -------- doc/_build/html/searchindex.js | 1 - pygments/__init__.py | 2 +- pygments/__main__.py | 11 + pygments/formatters/__init__.py | 4 +- pygments/lexers/__init__.py | 4 +- pygments/lexers/configs.py | 40 +- pygments/lexers/jvm.py | 21 +- pygments/lexers/markup.py | 7 +- pygments/lexers/matlab.py | 15 +- pygments/lexers/modeling.py | 4 +- pygments/lexers/sql.py | 193 +- pygments/lexers/textedit.py | 6 +- pygments/lexers/zig.py | 39 +- pygments/styles/inkpot.py | 7 +- pytest.ini | 4 + requirements.txt | 6 + scripts/check_sources.py | 3 + setup.py | 4 +- tests/__init__.py | 8 + tests/examplefiles/example.tf | 140 +- .../output/99_bottles_of_beer.chpl | Bin 38125 -> 37274 bytes .../examplefiles/output/AcidStateAdvanced.hs | Bin 55309 -> 54809 bytes tests/examplefiles/output/AlternatingGroup.mu | Bin 33758 -> 33780 bytes tests/examplefiles/output/BOM.js | Bin 9674 -> 9828 bytes tests/examplefiles/output/Blink.ino | Bin 11819 -> 11754 bytes tests/examplefiles/output/CPDictionary.j | Bin 57307 -> 56531 bytes tests/examplefiles/output/Charmci.ci | Bin 12974 -> 12945 bytes tests/examplefiles/output/Config.in.cache | Bin 243527 -> 243606 bytes tests/examplefiles/output/Constants.mo | Bin 39174 -> 38959 bytes tests/examplefiles/output/DancingSudoku.lhs | Bin 98545 -> 98939 bytes tests/examplefiles/output/Deflate.fs | Bin 112996 -> 113066 bytes tests/examplefiles/output/Error.pmod | Bin 14738 -> 14742 bytes tests/examplefiles/output/Errors.scala | Bin 12827 -> 12870 bytes tests/examplefiles/output/FakeFile.pike | Bin 54682 -> 53759 bytes .../output/Get-CommandDefinitionHtml.ps1 | Bin 21156 -> 21103 bytes tests/examplefiles/output/IPDispatchC.nc | Bin 20735 -> 20802 bytes tests/examplefiles/output/IPDispatchP.nc | Bin 102935 -> 102873 bytes tests/examplefiles/output/Intro.java | Bin 352431 -> 375628 bytes tests/examplefiles/output/MIME_example.eml | Bin 11925 -> 11977 bytes tests/examplefiles/output/Makefile | Bin 172081 -> 170210 bytes tests/examplefiles/output/Object.st | Bin 496385 -> 497610 bytes tests/examplefiles/output/OrderedMap.hx | Bin 83508 -> 82483 bytes tests/examplefiles/output/RoleQ.pm6 | Bin 16198 -> 16349 bytes tests/examplefiles/output/SmallCheck.hs | Bin 92838 -> 93901 bytes tests/examplefiles/output/Sorting.mod | Bin 84053 -> 85083 bytes tests/examplefiles/output/StdGeneric.icl | Bin 46397 -> 48117 bytes tests/examplefiles/output/Sudoku.lhs | Bin 90809 -> 90174 bytes tests/examplefiles/output/abnf_example1.abnf | Bin 13831 -> 13904 bytes tests/examplefiles/output/abnf_example2.abnf | Bin 10758 -> 10828 bytes tests/examplefiles/output/addressbook.proto | Bin 13286 -> 13278 bytes tests/examplefiles/output/ahcon.f | Bin 49772 -> 49848 bytes tests/examplefiles/output/all.nit | Bin 252938 -> 251973 bytes tests/examplefiles/output/antlr_ANTLRv3.g | Bin 76061 -> 77421 bytes tests/examplefiles/output/antlr_throws | Bin 9922 -> 9947 bytes tests/examplefiles/output/apache2.conf | Bin 51043 -> 51158 bytes tests/examplefiles/output/as3_test.as | Bin 26655 -> 27658 bytes tests/examplefiles/output/as3_test2.as | Bin 15733 -> 16109 bytes tests/examplefiles/output/as3_test3.as | Bin 10187 -> 10251 bytes tests/examplefiles/output/aspx-cs_example | Bin 12097 -> 12329 bytes tests/examplefiles/output/autoit_submit.au3 | Bin 13239 -> 13309 bytes tests/examplefiles/output/automake.mk | Bin 10092 -> 10162 bytes tests/examplefiles/output/badcase.java | Bin 9872 -> 9900 bytes tests/examplefiles/output/bigtest.nsi | Bin 85531 -> 85085 bytes tests/examplefiles/output/bnf_example1.bnf | Bin 12203 -> 12294 bytes tests/examplefiles/output/boot-9.scm | Bin 228316 -> 219554 bytes tests/examplefiles/output/ca65_example | Bin 30012 -> 29887 bytes tests/examplefiles/output/capdl_example.cdl | Bin 15748 -> 15575 bytes tests/examplefiles/output/cbmbas_example | Bin 11009 -> 11223 bytes tests/examplefiles/output/cells.ps | Bin 70174 -> 70193 bytes tests/examplefiles/output/ceval.c | Bin 359382 -> 357112 bytes tests/examplefiles/output/char.scala | Bin 9726 -> 9883 bytes .../examplefiles/output/cheetah_example.html | Bin 10457 -> 10485 bytes tests/examplefiles/output/classes.dylan | Bin 27504 -> 27547 bytes .../output/clojure-weird-keywords.clj | Bin 10513 -> 10526 bytes tests/examplefiles/output/condensed_ruby.rb | Bin 15646 -> 15728 bytes tests/examplefiles/output/coq_RelationClasses | Bin 92348 -> 97284 bytes tests/examplefiles/output/core.cljs | Bin 16758 -> 16924 bytes tests/examplefiles/output/database.pytb | Bin 13132 -> 13211 bytes tests/examplefiles/output/de.MoinMoin.po | Bin 193958 -> 197022 bytes tests/examplefiles/output/demo.ahk | Bin 36588 -> 37027 bytes tests/examplefiles/output/demo.cfm | Bin 16444 -> 16487 bytes tests/examplefiles/output/demo.css.in | Bin 10213 -> 10196 bytes tests/examplefiles/output/demo.frt | Bin 9940 -> 10154 bytes tests/examplefiles/output/demo.hbs | Bin 13974 -> 13984 bytes tests/examplefiles/output/demo.js.in | Bin 10306 -> 10376 bytes tests/examplefiles/output/demo.thrift | Bin 10742 -> 10743 bytes tests/examplefiles/output/demo.xul.in | Bin 10323 -> 10369 bytes .../output/django_sample.html+django | Bin 26785 -> 26549 bytes tests/examplefiles/output/docker.docker | Bin 12755 -> 12777 bytes tests/examplefiles/output/durexmania.aheui | Bin 15425 -> 15699 bytes tests/examplefiles/output/dwarf.cw | Bin 11973 -> 12022 bytes tests/examplefiles/output/eg_example1.eg | Bin 33375 -> 32917 bytes tests/examplefiles/output/ember.handlebars | Bin 15482 -> 15621 bytes tests/examplefiles/output/erl_session | Bin 10749 -> 10903 bytes tests/examplefiles/output/es6.js | Bin 16558 -> 16415 bytes .../examplefiles/output/escape_semicolon.clj | Bin 9959 -> 9969 bytes tests/examplefiles/output/eval.rs | Bin 143861 -> 142134 bytes tests/examplefiles/output/evil_regex.js | Bin 17619 -> 17551 bytes tests/examplefiles/output/example.Rd | Bin 19112 -> 19128 bytes tests/examplefiles/output/example.als | Bin 47369 -> 49971 bytes tests/examplefiles/output/example.bat | Bin 44615 -> 44226 bytes tests/examplefiles/output/example.bbc | Bin 45774 -> 45850 bytes tests/examplefiles/output/example.bc | Bin 17675 -> 17640 bytes tests/examplefiles/output/example.boa | Bin 13059 -> 12997 bytes tests/examplefiles/output/example.bug | Bin 20746 -> 20519 bytes tests/examplefiles/output/example.c | Bin 262357 -> 261767 bytes tests/examplefiles/output/example.ceylon | Bin 18666 -> 19426 bytes tests/examplefiles/output/example.chai | Bin 11337 -> 11317 bytes tests/examplefiles/output/example.clay | Bin 15521 -> 15648 bytes tests/examplefiles/output/example.cls | Bin 11770 -> 11840 bytes tests/examplefiles/output/example.cob | Bin 460572 -> 449116 bytes tests/examplefiles/output/example.coffee | Bin 12144 -> 12169 bytes tests/examplefiles/output/example.cpp | Bin 338744 -> 340872 bytes tests/examplefiles/output/example.e | Bin 22456 -> 22658 bytes tests/examplefiles/output/example.elm | Bin 17157 -> 17236 bytes tests/examplefiles/output/example.eml | Bin 30393 -> 30535 bytes tests/examplefiles/output/example.ezt | Bin 13046 -> 13164 bytes tests/examplefiles/output/example.f90 | Bin 10782 -> 10810 bytes tests/examplefiles/output/example.feature | Bin 13004 -> 13029 bytes tests/examplefiles/output/example.fish | Bin 81423 -> 81319 bytes tests/examplefiles/output/example.flo | Bin 15306 -> 15508 bytes tests/examplefiles/output/example.gd | Bin 11359 -> 11387 bytes tests/examplefiles/output/example.gi | Bin 19441 -> 19631 bytes tests/examplefiles/output/example.golo | Bin 23321 -> 23253 bytes tests/examplefiles/output/example.groovy | Bin 9702 -> 9724 bytes tests/examplefiles/output/example.gs | Bin 28011 -> 29131 bytes tests/examplefiles/output/example.gst | Bin 10854 -> 10975 bytes tests/examplefiles/output/example.hlsl | Bin 34748 -> 34506 bytes tests/examplefiles/output/example.hs | Bin 14620 -> 14666 bytes tests/examplefiles/output/example.hx | Bin 40316 -> 39381 bytes tests/examplefiles/output/example.i6t | Bin 11482 -> 11441 bytes tests/examplefiles/output/example.i7x | Bin 12760 -> 12863 bytes tests/examplefiles/output/example.icn | Bin 42053 -> 41898 bytes tests/examplefiles/output/example.icon | Bin 66024 -> 65824 bytes tests/examplefiles/output/example.j | Bin 67570 -> 65381 bytes tests/examplefiles/output/example.jag | Bin 20029 -> 19781 bytes tests/examplefiles/output/example.java | Bin 11121 -> 11239 bytes tests/examplefiles/output/example.jcl | Bin 16684 -> 16757 bytes tests/examplefiles/output/example.jsgf | Bin 13315 -> 13289 bytes tests/examplefiles/output/example.jsonld | Bin 12389 -> 12450 bytes tests/examplefiles/output/example.juttle | Bin 19076 -> 18927 bytes tests/examplefiles/output/example.kal | Bin 17112 -> 17176 bytes tests/examplefiles/output/example.kt | Bin 16414 -> 16295 bytes tests/examplefiles/output/example.lagda | Bin 11471 -> 11526 bytes tests/examplefiles/output/example.liquid | Bin 15543 -> 15442 bytes tests/examplefiles/output/example.lua | Bin 49354 -> 48740 bytes tests/examplefiles/output/example.ma | Bin 10963 -> 11177 bytes tests/examplefiles/output/example.mac | Bin 10253 -> 10293 bytes tests/examplefiles/output/example.md | Bin 16793 -> 16926 bytes tests/examplefiles/output/example.monkey | Bin 24734 -> 24696 bytes tests/examplefiles/output/example.moo | Bin 13955 -> 14295 bytes tests/examplefiles/output/example.moon | Bin 115450 -> 116471 bytes tests/examplefiles/output/example.mq4 | Bin 38841 -> 38398 bytes tests/examplefiles/output/example.mqh | Bin 26578 -> 26105 bytes tests/examplefiles/output/example.msc | Bin 18959 -> 19215 bytes tests/examplefiles/output/example.ng2 | Bin 12036 -> 12121 bytes tests/examplefiles/output/example.ni | Bin 14945 -> 14841 bytes tests/examplefiles/output/example.nim | Bin 191678 -> 191637 bytes tests/examplefiles/output/example.nix | Bin 32976 -> 33013 bytes tests/examplefiles/output/example.ns2 | Bin 15316 -> 15443 bytes tests/examplefiles/output/example.pas | Bin 437087 -> 444594 bytes tests/examplefiles/output/example.pcmk | Bin 31771 -> 32048 bytes tests/examplefiles/output/example.pony | Bin 11669 -> 11655 bytes tests/examplefiles/output/example.pp | Bin 10418 -> 10431 bytes tests/examplefiles/output/example.praat | Bin 52421 -> 52395 bytes tests/examplefiles/output/example.prg | Bin 35482 -> 35615 bytes tests/examplefiles/output/example.rb | Bin 232078 -> 235862 bytes tests/examplefiles/output/example.red | Bin 39836 -> 40494 bytes tests/examplefiles/output/example.reds | Bin 26587 -> 26615 bytes tests/examplefiles/output/example.reg | Bin 11039 -> 11241 bytes tests/examplefiles/output/example.rexx | Bin 17060 -> 17085 bytes tests/examplefiles/output/example.rhtml | Bin 100142 -> 99180 bytes tests/examplefiles/output/example.rkt | Bin 86774 -> 85563 bytes tests/examplefiles/output/example.rpf | Bin 9995 -> 10047 bytes tests/examplefiles/output/example.rts | Bin 35925 -> 37150 bytes tests/examplefiles/output/example.sbl | Bin 26243 -> 26223 bytes tests/examplefiles/output/example.scd | Bin 19531 -> 19604 bytes tests/examplefiles/output/example.sgf | Bin 25343 -> 25920 bytes tests/examplefiles/output/example.sh | Bin 11765 -> 11814 bytes tests/examplefiles/output/example.sh-session | Bin 10858 -> 11003 bytes .../examplefiles/output/example.shell-session | Bin 14974 -> 15137 bytes tests/examplefiles/output/example.shex | Bin 12709 -> 12707 bytes tests/examplefiles/output/example.sl | Bin 9853 -> 9860 bytes tests/examplefiles/output/example.slim | Bin 12568 -> 12773 bytes tests/examplefiles/output/example.sls | Bin 16785 -> 16855 bytes tests/examplefiles/output/example.sml | Bin 43048 -> 41987 bytes tests/examplefiles/output/example.snobol | Bin 12050 -> 12030 bytes tests/examplefiles/output/example.stan | Bin 23791 -> 23618 bytes tests/examplefiles/output/example.tap | Bin 17597 -> 17667 bytes tests/examplefiles/output/example.tasm | Bin 76831 -> 76106 bytes tests/examplefiles/output/example.tea | Bin 12873 -> 13195 bytes tests/examplefiles/output/example.tf | Bin 25663 -> 25871 bytes tests/examplefiles/output/example.thy | Bin 119076 -> 122512 bytes tests/examplefiles/output/example.todotxt | Bin 11645 -> 11865 bytes tests/examplefiles/output/example.toml | Bin 27465 -> 27916 bytes tests/examplefiles/output/example.ttl | Bin 16685 -> 16740 bytes tests/examplefiles/output/example.u | Bin 70645 -> 68573 bytes tests/examplefiles/output/example.u1 | Bin 20202 -> 20218 bytes tests/examplefiles/output/example.vbs | Bin 16480 -> 16502 bytes tests/examplefiles/output/example.weechatlog | Bin 11018 -> 11031 bytes tests/examplefiles/output/example.whiley | Bin 65707 -> 65723 bytes tests/examplefiles/output/example.x10 | Bin 11101 -> 11108 bytes tests/examplefiles/output/example.xhtml | Bin 60711 -> 62233 bytes tests/examplefiles/output/example.xtend | Bin 17246 -> 17505 bytes tests/examplefiles/output/example.xtm | Bin 157297 -> 151709 bytes tests/examplefiles/output/example.yaml | Bin 39011 -> 38070 bytes tests/examplefiles/output/example.zig | Bin 57485 -> 57039 bytes tests/examplefiles/output/example1.cadl | Bin 29133 -> 28960 bytes tests/examplefiles/output/example2.aspx | Bin 12452 -> 12738 bytes tests/examplefiles/output/example2.cpp | Bin 12220 -> 12272 bytes tests/examplefiles/output/example2.msc | Bin 18606 -> 18796 bytes tests/examplefiles/output/exampleScript.cfc | Bin 39059 -> 38211 bytes tests/examplefiles/output/exampleTag.cfc | Bin 12606 -> 12682 bytes tests/examplefiles/output/example_coq.v | Bin 10117 -> 10187 bytes tests/examplefiles/output/example_elixir.ex | Bin 43166 -> 43074 bytes tests/examplefiles/output/example_file.fy | Bin 24470 -> 24597 bytes .../examplefiles/output/ezhil_primefactors.n | Bin 24831 -> 24976 bytes tests/examplefiles/output/fennelview.fnl | Bin 38822 -> 37911 bytes .../output/fibonacci.tokigun.aheui | Bin 10247 -> 10263 bytes tests/examplefiles/output/firefox.mak | Bin 58772 -> 58026 bytes tests/examplefiles/output/flatline_example | Bin 40193 -> 41106 bytes tests/examplefiles/output/flipflop.sv | Bin 11657 -> 11712 bytes tests/examplefiles/output/foo.sce | Bin 9979 -> 9980 bytes tests/examplefiles/output/format.ml | Bin 229936 -> 240782 bytes tests/examplefiles/output/freefem.edp | Bin 23667 -> 23425 bytes tests/examplefiles/output/fucked_up.rb | Bin 19991 -> 20208 bytes tests/examplefiles/output/function.mu | Bin 9705 -> 9775 bytes tests/examplefiles/output/functional.rst | Bin 119685 -> 119845 bytes tests/examplefiles/output/garcia-wachs.kk | Bin 34375 -> 34415 bytes tests/examplefiles/output/genclass.clj | Bin 98732 -> 96465 bytes .../output/genshi_example.xml+genshi | Bin 46859 -> 48513 bytes .../output/genshitext_example.genshitext | Bin 12825 -> 12682 bytes tests/examplefiles/output/glsl.frag | Bin 10690 -> 10673 bytes tests/examplefiles/output/glsl.vert | Bin 11509 -> 11528 bytes tests/examplefiles/output/grammar-test.p6 | Bin 13147 -> 13208 bytes tests/examplefiles/output/guidance.smv | Bin 177337 -> 176939 bytes tests/examplefiles/output/hash_syntax.rb | Bin 10564 -> 10577 bytes .../output/hello-world.puzzlet.aheui | Bin 12553 -> 12332 bytes tests/examplefiles/output/hello.at | Bin 10480 -> 10511 bytes tests/examplefiles/output/hello.golo | Bin 10097 -> 10119 bytes tests/examplefiles/output/hello.lsl | Bin 10724 -> 10794 bytes tests/examplefiles/output/hello.smali | Bin 13226 -> 13116 bytes tests/examplefiles/output/hello.sp | Bin 10166 -> 10161 bytes tests/examplefiles/output/hexdump_debugexe | Bin 249525 -> 249601 bytes tests/examplefiles/output/hexdump_hd | Bin 253126 -> 253202 bytes tests/examplefiles/output/hexdump_hexcat | Bin 243940 -> 244016 bytes tests/examplefiles/output/hexdump_hexdump | Bin 174903 -> 174979 bytes tests/examplefiles/output/hexdump_od | Bin 242965 -> 243041 bytes tests/examplefiles/output/hexdump_xxd | Bin 198670 -> 198746 bytes tests/examplefiles/output/html+php_faulty.php | Bin 9589 -> 9608 bytes .../examplefiles/output/http_request_example | Bin 11513 -> 11583 bytes .../examplefiles/output/http_response_example | Bin 21076 -> 20933 bytes tests/examplefiles/output/hybris_File.hy | Bin 32669 -> 33642 bytes tests/examplefiles/output/idl_sample.pro | Bin 20217 -> 20263 bytes tests/examplefiles/output/iex_example | Bin 11658 -> 11713 bytes tests/examplefiles/output/inet_pton6.dg | Bin 25010 -> 25386 bytes tests/examplefiles/output/inform6_example | Bin 85096 -> 82451 bytes tests/examplefiles/output/interp.scala | Bin 11916 -> 12019 bytes tests/examplefiles/output/intro.ik | Bin 13283 -> 13254 bytes tests/examplefiles/output/ints.php | Bin 10624 -> 10637 bytes tests/examplefiles/output/intsyn.fun | Bin 235418 -> 233154 bytes tests/examplefiles/output/intsyn.sig | Bin 118393 -> 118646 bytes tests/examplefiles/output/irb_heredoc | Bin 10173 -> 10243 bytes tests/examplefiles/output/irc.lsp | Bin 61360 -> 58427 bytes tests/examplefiles/output/java.properties | Bin 10376 -> 10446 bytes tests/examplefiles/output/jbst_example1.jbst | Bin 13766 -> 13836 bytes tests/examplefiles/output/jbst_example2.jbst | Bin 18338 -> 18408 bytes .../examplefiles/output/jinjadesignerdoc.rst | Bin 93932 -> 93819 bytes tests/examplefiles/output/json.lasso | Bin 89281 -> 87266 bytes tests/examplefiles/output/json.lasso9 | Bin 54098 -> 53433 bytes tests/examplefiles/output/language.hy | Bin 29244 -> 29869 bytes .../examplefiles/output/lighttpd_config.conf | Bin 11573 -> 11583 bytes tests/examplefiles/output/limbo.b | Bin 97316 -> 99393 bytes tests/examplefiles/output/linecontinuation.py | Bin 12523 -> 12593 bytes tests/examplefiles/output/livescript-demo.ls | Bin 16987 -> 17057 bytes tests/examplefiles/output/logos_example.xm | Bin 11989 -> 11936 bytes tests/examplefiles/output/ltmain.sh | Bin 385281 -> 390958 bytes tests/examplefiles/output/main.cmake | Bin 18009 -> 18079 bytes tests/examplefiles/output/markdown.lsp | Bin 119637 -> 115117 bytes tests/examplefiles/output/matlab_noreturn | Bin 9890 -> 9915 bytes tests/examplefiles/output/matlab_sample | Bin 13370 -> 13350 bytes .../output/matlabsession_sample.txt | Bin 11496 -> 11644 bytes tests/examplefiles/output/metagrammar.treetop | Bin 52877 -> 53214 bytes tests/examplefiles/output/minehunt.qml | Bin 20314 -> 20117 bytes tests/examplefiles/output/minimal.ns2 | Bin 11028 -> 11086 bytes .../output/modula2_test_cases.def | Bin 52697 -> 53031 bytes .../output/moin_SyntaxReference.txt | Bin 33438 -> 33328 bytes .../examplefiles/output/multiline_regexes.rb | Bin 11678 -> 11745 bytes tests/examplefiles/output/nanomsg.intr | Bin 23388 -> 23458 bytes tests/examplefiles/output/nasm_aoutso.asm | Bin 21189 -> 21265 bytes tests/examplefiles/output/nasm_objexe.asm | Bin 12302 -> 12297 bytes tests/examplefiles/output/nemerle_sample.n | Bin 21561 -> 21262 bytes tests/examplefiles/output/nginx_nginx.conf | Bin 19515 -> 19222 bytes tests/examplefiles/output/noexcept.cpp | Bin 12476 -> 12597 bytes tests/examplefiles/output/numbers.c | Bin 10987 -> 11006 bytes tests/examplefiles/output/objc_example.m | Bin 30526 -> 30152 bytes tests/examplefiles/output/openedge_example | Bin 15422 -> 15681 bytes tests/examplefiles/output/pacman.conf | Bin 16880 -> 16983 bytes tests/examplefiles/output/pacman.ijs | Bin 285986 -> 288096 bytes tests/examplefiles/output/pawn_example | Bin 13225 -> 13466 bytes tests/examplefiles/output/perl_misc | Bin 16668 -> 16726 bytes tests/examplefiles/output/perl_perl5db | Bin 104382 -> 105730 bytes tests/examplefiles/output/perl_regex-delims | Bin 22612 -> 22547 bytes tests/examplefiles/output/perlfunc.1 | Bin 200962 -> 199946 bytes tests/examplefiles/output/phpMyAdmin.spec | Bin 79132 -> 79076 bytes tests/examplefiles/output/phpcomplete.vim | Bin 103501 -> 99638 bytes .../examplefiles/output/pkgconfig_example.pc | Bin 11930 -> 11997 bytes tests/examplefiles/output/plain.bst | Bin 113598 -> 113710 bytes tests/examplefiles/output/pleac.in.rb | Bin 178504 -> 183581 bytes tests/examplefiles/output/postgresql_test.txt | Bin 19070 -> 18969 bytes tests/examplefiles/output/pppoe.applescript | Bin 11081 -> 11148 bytes tests/examplefiles/output/psql_session.txt | Bin 20675 -> 20616 bytes tests/examplefiles/output/py3_test.txt | Bin 9704 -> 9738 bytes tests/examplefiles/output/py3tb_test.py3tb | Bin 9965 -> 10131 bytes .../examplefiles/output/pycon_ctrlc_traceback | Bin 20094 -> 20212 bytes tests/examplefiles/output/pycon_test.pycon | Bin 10741 -> 10751 bytes tests/examplefiles/output/pytb_test2.pytb | Bin 9929 -> 10089 bytes tests/examplefiles/output/pytb_test3.pytb | Bin 9956 -> 9972 bytes tests/examplefiles/output/python25-bsd.mak | Bin 41937 -> 42820 bytes tests/examplefiles/output/qbasic_example | Bin 9973 -> 10049 bytes tests/examplefiles/output/qsort.prolog | Bin 12666 -> 12736 bytes .../output/r-console-transcript.Rout | Bin 12187 -> 12329 bytes tests/examplefiles/output/r6rs-comments.scm | Bin 10748 -> 10722 bytes tests/examplefiles/output/ragel-cpp_rlscan | Bin 44043 -> 43894 bytes tests/examplefiles/output/ragel-cpp_snippet | Bin 9797 -> 9945 bytes tests/examplefiles/output/regex.js | Bin 11908 -> 12029 bytes tests/examplefiles/output/resourcebundle_demo | Bin 10930 -> 11000 bytes tests/examplefiles/output/reversi.lsp | Bin 74303 -> 71829 bytes tests/examplefiles/output/rnc_example.rnc | Bin 16078 -> 16016 bytes tests/examplefiles/output/roboconf.graph | Bin 15709 -> 15767 bytes tests/examplefiles/output/roboconf.instances | Bin 12316 -> 12338 bytes .../output/robotframework_test.txt | Bin 13972 -> 13787 bytes tests/examplefiles/output/rql-queries.rql | Bin 30281 -> 30351 bytes tests/examplefiles/output/ruby_func_def.rb | Bin 10930 -> 10982 bytes tests/examplefiles/output/sample.qvto | Bin 10043 -> 10068 bytes tests/examplefiles/output/scilab.sci | Bin 13777 -> 13706 bytes tests/examplefiles/output/scope.cirru | Bin 39332 -> 39402 bytes .../examplefiles/output/session.dylan-console | Bin 10786 -> 10943 bytes tests/examplefiles/output/sibling.prolog | Bin 12154 -> 12062 bytes tests/examplefiles/output/simple.camkes | Bin 12196 -> 12152 bytes tests/examplefiles/output/simple.croc | Bin 89399 -> 87102 bytes tests/examplefiles/output/smarty_example.html | Bin 33612 -> 33811 bytes tests/examplefiles/output/source.lgt | Bin 59518 -> 60179 bytes tests/examplefiles/output/sources.list | Bin 18070 -> 17804 bytes tests/examplefiles/output/sparql.rq | Bin 19979 -> 19881 bytes tests/examplefiles/output/sphere.pov | Bin 11479 -> 11402 bytes .../output/sqlite3.sqlite3-console | Bin 11593 -> 11690 bytes tests/examplefiles/output/squid.conf | Bin 15070 -> 14960 bytes tests/examplefiles/output/string.jl | Bin 216248 -> 218592 bytes tests/examplefiles/output/string_delimiters.d | Bin 12833 -> 12807 bytes tests/examplefiles/output/stripheredoc.sh | Bin 9677 -> 9834 bytes tests/examplefiles/output/subr.el | Bin 739234 -> 719954 bytes tests/examplefiles/output/swig_java.swg | Bin 273112 -> 269981 bytes tests/examplefiles/output/swig_std_vector.i | Bin 38883 -> 38827 bytes tests/examplefiles/output/tads3_example.t | Bin 255445 -> 253964 bytes tests/examplefiles/output/teraterm.ttl | Bin 16101 -> 16192 bytes tests/examplefiles/output/termcap | Bin 289946 -> 281697 bytes tests/examplefiles/output/terminfo | Bin 333341 -> 326247 bytes tests/examplefiles/output/test-3.0.xq | Bin 46806 -> 45535 bytes .../examplefiles/output/test-exist-update.xq | Bin 24059 -> 23964 bytes tests/examplefiles/output/test.R | Bin 27169 -> 27197 bytes tests/examplefiles/output/test.adb | Bin 41256 -> 40459 bytes tests/examplefiles/output/test.adls | Bin 59658 -> 59062 bytes tests/examplefiles/output/test.agda | Bin 32663 -> 33192 bytes tests/examplefiles/output/test.apl | Bin 14405 -> 14475 bytes tests/examplefiles/output/test.asy | Bin 51205 -> 50711 bytes tests/examplefiles/output/test.awk | Bin 26423 -> 26259 bytes tests/examplefiles/output/test.bb | Bin 23664 -> 23638 bytes tests/examplefiles/output/test.bib | Bin 19421 -> 19305 bytes tests/examplefiles/output/test.bmx | Bin 27559 -> 27167 bytes tests/examplefiles/output/test.boo | Bin 15263 -> 15300 bytes tests/examplefiles/output/test.bpl | Bin 48458 -> 49032 bytes tests/examplefiles/output/test.bro | Bin 48638 -> 48300 bytes tests/examplefiles/output/test.cadl | Bin 13363 -> 13451 bytes tests/examplefiles/output/test.cr | Bin 235477 -> 237938 bytes tests/examplefiles/output/test.cs | Bin 68174 -> 66816 bytes tests/examplefiles/output/test.csd | Bin 10614 -> 10672 bytes tests/examplefiles/output/test.css | Bin 16352 -> 16422 bytes tests/examplefiles/output/test.cu | Bin 14901 -> 14800 bytes tests/examplefiles/output/test.cyp | Bin 32984 -> 32583 bytes tests/examplefiles/output/test.d | Bin 30050 -> 29436 bytes tests/examplefiles/output/test.dart | Bin 13440 -> 13402 bytes tests/examplefiles/output/test.dtd | Bin 19947 -> 20395 bytes tests/examplefiles/output/test.ebnf | Bin 18409 -> 18050 bytes tests/examplefiles/output/test.ec | Bin 133189 -> 133784 bytes tests/examplefiles/output/test.eh | Bin 41194 -> 41594 bytes tests/examplefiles/output/test.erl | Bin 36913 -> 37889 bytes tests/examplefiles/output/test.escript | Bin 9864 -> 9883 bytes tests/examplefiles/output/test.evoque | Bin 15018 -> 15010 bytes tests/examplefiles/output/test.fan | Bin 201864 -> 201478 bytes tests/examplefiles/output/test.flx | Bin 19369 -> 19319 bytes tests/examplefiles/output/test.gdc | Bin 11888 -> 11916 bytes tests/examplefiles/output/test.gradle | Bin 11440 -> 11513 bytes tests/examplefiles/output/test.groovy | Bin 22986 -> 23809 bytes tests/examplefiles/output/test.hsail | Bin 20177 -> 20037 bytes tests/examplefiles/output/test.html | Bin 231415 -> 242150 bytes tests/examplefiles/output/test.idr | Bin 35973 -> 36760 bytes tests/examplefiles/output/test.ini | Bin 10010 -> 10056 bytes tests/examplefiles/output/test.java | Bin 91146 -> 96016 bytes tests/examplefiles/output/test.jsp | Bin 13441 -> 13640 bytes tests/examplefiles/output/test.lean | Bin 73588 -> 78071 bytes tests/examplefiles/output/test.maql | Bin 16583 -> 16335 bytes tests/examplefiles/output/test.mask | Bin 15450 -> 15529 bytes tests/examplefiles/output/test.mod | Bin 44660 -> 44574 bytes tests/examplefiles/output/test.moo | Bin 21411 -> 22255 bytes tests/examplefiles/output/test.mt | Bin 10983 -> 11008 bytes tests/examplefiles/output/test.myt | Bin 37992 -> 38062 bytes tests/examplefiles/output/test.ncl | Bin 12085 -> 12083 bytes tests/examplefiles/output/test.nim | Bin 23467 -> 23459 bytes tests/examplefiles/output/test.odin | Bin 16297 -> 16226 bytes tests/examplefiles/output/test.opa | Bin 10610 -> 10653 bytes tests/examplefiles/output/test.orc | Bin 18386 -> 18330 bytes tests/examplefiles/output/test.p6 | Bin 32835 -> 33109 bytes tests/examplefiles/output/test.pan | Bin 15270 -> 15376 bytes tests/examplefiles/output/test.pas | Bin 112853 -> 115173 bytes tests/examplefiles/output/test.php | Bin 78267 -> 77935 bytes tests/examplefiles/output/test.pig | Bin 28114 -> 27824 bytes tests/examplefiles/output/test.plot | Bin 101239 -> 103553 bytes tests/examplefiles/output/test.ps1 | Bin 29912 -> 29562 bytes tests/examplefiles/output/test.psl | Bin 38865 -> 38569 bytes tests/examplefiles/output/test.pwn | Bin 44780 -> 44637 bytes tests/examplefiles/output/test.pypylog | Bin 529497 -> 522505 bytes tests/examplefiles/output/test.r3 | Bin 19009 -> 19163 bytes tests/examplefiles/output/test.rb | Bin 32400 -> 32461 bytes tests/examplefiles/output/test.rhtml | Bin 16416 -> 16588 bytes tests/examplefiles/output/test.rsl | Bin 50217 -> 50440 bytes tests/examplefiles/output/test.scaml | Bin 10947 -> 11116 bytes tests/examplefiles/output/test.sco | Bin 12216 -> 12169 bytes tests/examplefiles/output/test.shen | Bin 33890 -> 33966 bytes tests/examplefiles/output/test.sil | Bin 51260 -> 51459 bytes tests/examplefiles/output/test.ssp | Bin 10872 -> 11080 bytes tests/examplefiles/output/test.swift | Bin 23441 -> 23178 bytes tests/examplefiles/output/test.tcsh | Bin 116544 -> 117253 bytes tests/examplefiles/output/test.vb | Bin 67393 -> 66227 bytes tests/examplefiles/output/test.vhdl | Bin 37968 -> 38158 bytes tests/examplefiles/output/test.xqy | Bin 40745 -> 40470 bytes tests/examplefiles/output/test.xsl | Bin 12191 -> 12246 bytes tests/examplefiles/output/test.zep | Bin 12757 -> 12692 bytes tests/examplefiles/output/test2.odin | Bin 15106 -> 15176 bytes tests/examplefiles/output/test2.pypylog | Bin 49677 -> 48499 bytes tests/examplefiles/output/test_basic.adls | Bin 12291 -> 12289 bytes tests/examplefiles/output/truncated.pytb | Bin 13042 -> 13238 bytes tests/examplefiles/output/tsql_example.sql | Bin 18393 -> 18295 bytes tests/examplefiles/output/twig_test | Bin 364047 -> 362968 bytes tests/examplefiles/output/type.lisp | Bin 242018 -> 235269 bytes tests/examplefiles/output/typescript_example | Bin 14106 -> 13948 bytes tests/examplefiles/output/typoscript_example | Bin 279524 -> 280956 bytes tests/examplefiles/output/underscore.coffee | Bin 94448 -> 91896 bytes tests/examplefiles/output/unicode.applescript | Bin 10132 -> 10181 bytes tests/examplefiles/output/unicode.go | Bin 10610 -> 10620 bytes tests/examplefiles/output/unicode.js | Bin 10050 -> 10069 bytes tests/examplefiles/output/unicodedoc.py | Bin 10508 -> 10506 bytes tests/examplefiles/output/unix-io.lid | Bin 11556 -> 11626 bytes tests/examplefiles/output/varnish.vcl | Bin 36441 -> 36307 bytes tests/examplefiles/output/vbnet_test.bas | Bin 14332 -> 14447 bytes tests/examplefiles/output/vctreestatus_hg | Bin 9772 -> 9929 bytes tests/examplefiles/output/vimrc | Bin 11807 -> 11754 bytes tests/examplefiles/output/vpath.mk | Bin 11519 -> 11589 bytes .../examplefiles/output/wdiff_example1.wdiff | Bin 58330 -> 58487 bytes .../examplefiles/output/wdiff_example3.wdiff | Bin 10126 -> 10283 bytes .../examplefiles/output/webkit-transition.css | Bin 9995 -> 10065 bytes tests/examplefiles/output/while.pov | Bin 11239 -> 11261 bytes tests/examplefiles/output/wiki.factor | Bin 57516 -> 57439 bytes tests/examplefiles/output/xml_example | Bin 334964 -> 353919 bytes tests/examplefiles/output/xorg.conf | Bin 13066 -> 13145 bytes tests/examplefiles/output/yahalom.cpsa | Bin 18380 -> 18552 bytes tests/examplefiles/output/zmlrpc.f90 | Bin 142336 -> 139850 bytes tests/examplefiles/test.cr | 802 +++----- tests/test_guessing.py | 0 tox.ini | 8 + 598 files changed, 5669 insertions(+), 5669 deletions(-) create mode 100644 .coveragerc create mode 100644 .github/workflows/build.yaml create mode 100644 .github/workflows/docs.yaml create mode 100644 .gitignore delete mode 100644 TODO rename doc/_build/{html => dirhtml}/.buildinfo (65%) rename doc/_build/{html => dirhtml}/_sources/docs/api.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/authors.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/changelog.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/cmdline.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/filterdevelopment.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/filters.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/formatterdevelopment.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/formatters.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/index.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/integrate.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/java.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/lexerdevelopment.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/lexers.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/moinmoin.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/plugins.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/quickstart.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/rstdirective.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/styles.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/tokens.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/docs/unicode.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/download.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/faq.rst.txt (96%) rename doc/_build/{html => dirhtml}/_sources/index.rst.txt (100%) rename doc/_build/{html => dirhtml}/_sources/languages.rst.txt (95%) rename doc/_build/{html => dirhtml}/_static/basic.css (96%) rename doc/_build/{html => dirhtml}/_static/bodybg.png (100%) rename doc/_build/{html => dirhtml}/_static/demo.css (100%) rename doc/_build/{html => dirhtml}/_static/demo.js (97%) rename doc/_build/{html => dirhtml}/_static/docbg.png (100%) rename doc/_build/{html => dirhtml}/_static/doctools.js (100%) rename doc/_build/{html => dirhtml}/_static/documentation_options.js (90%) rename doc/_build/{html => dirhtml}/_static/favicon.ico (100%) rename doc/_build/{html => dirhtml}/_static/file.png (100%) rename doc/_build/{html => dirhtml}/_static/github.png (100%) rename doc/_build/{html/_static/jquery-3.4.1.js => dirhtml/_static/jquery-3.2.1.js} (89%) create mode 100644 doc/_build/dirhtml/_static/jquery.js rename doc/_build/{html => dirhtml}/_static/language_data.js (100%) rename doc/_build/{html => dirhtml}/_static/listitem.png (100%) rename doc/_build/{html => dirhtml}/_static/logo.png (100%) rename doc/_build/{html => dirhtml}/_static/logo_new.png (100%) rename doc/_build/{html => dirhtml}/_static/logo_only.png (100%) rename doc/_build/{html => dirhtml}/_static/minus.png (100%) rename doc/_build/{html => dirhtml}/_static/plus.png (100%) rename doc/_build/{html => dirhtml}/_static/pocoo.png (100%) rename doc/_build/{html => dirhtml}/_static/pygments.css (100%) rename doc/_build/{html => dirhtml}/_static/pygments14.css (100%) create mode 100644 doc/_build/dirhtml/_static/pyodide/Pygments.data create mode 100644 doc/_build/dirhtml/_static/pyodide/Pygments.js create mode 100644 doc/_build/dirhtml/_static/pyodide/packages.json create mode 100644 doc/_build/dirhtml/_static/pyodide/pyodide.asm.data create mode 100644 doc/_build/dirhtml/_static/pyodide/pyodide.asm.data.js create mode 100644 doc/_build/dirhtml/_static/pyodide/pyodide.asm.js create mode 100644 doc/_build/dirhtml/_static/pyodide/pyodide.asm.wasm create mode 100644 doc/_build/dirhtml/_static/pyodide/pyodide.js rename doc/_build/{html => dirhtml}/_static/searchtools.js (98%) rename doc/_build/{html => dirhtml}/_static/spinner.gif (100%) rename doc/_build/{html => dirhtml}/_static/underscore-1.3.1.js (100%) rename doc/_build/{html => dirhtml}/_static/underscore.js (100%) create mode 100644 doc/_build/dirhtml/demo/index.html rename doc/_build/{html/docs/api.html => dirhtml/docs/api/index.html} (66%) rename doc/_build/{html/docs/authors.html => dirhtml/docs/authors/index.html} (91%) rename doc/_build/{html/docs/changelog.html => dirhtml/docs/changelog/index.html} (91%) rename doc/_build/{html/docs/cmdline.html => dirhtml/docs/cmdline/index.html} (86%) rename doc/_build/{html/docs/filterdevelopment.html => dirhtml/docs/filterdevelopment/index.html} (86%) rename doc/_build/{html/docs/filters.html => dirhtml/docs/filters/index.html} (82%) rename doc/_build/{html/docs/formatterdevelopment.html => dirhtml/docs/formatterdevelopment/index.html} (91%) rename doc/_build/{html/docs/formatters.html => dirhtml/docs/formatters/index.html} (91%) rename doc/_build/{html => dirhtml}/docs/index.html (78%) rename doc/_build/{html/docs/integrate.html => dirhtml/docs/integrate/index.html} (79%) rename doc/_build/{html/docs/java.html => dirhtml/docs/java/index.html} (79%) rename doc/_build/{html/docs/lexerdevelopment.html => dirhtml/docs/lexerdevelopment/index.html} (96%) rename doc/_build/{html/docs/lexers.html => dirhtml/docs/lexers/index.html} (72%) rename doc/_build/{html/docs/moinmoin.html => dirhtml/docs/moinmoin/index.html} (80%) rename doc/_build/{html/docs/plugins.html => dirhtml/docs/plugins/index.html} (84%) rename doc/_build/{html/docs/quickstart.html => dirhtml/docs/quickstart/index.html} (79%) rename doc/_build/{html/docs/rstdirective.html => dirhtml/docs/rstdirective/index.html} (73%) rename doc/_build/{html/docs/styles.html => dirhtml/docs/styles/index.html} (92%) rename doc/_build/{html/docs/tokens.html => dirhtml/docs/tokens/index.html} (93%) rename doc/_build/{html/docs/unicode.html => dirhtml/docs/unicode/index.html} (81%) rename doc/_build/{html/download.html => dirhtml/download/index.html} (78%) rename doc/_build/{html/faq.html => dirhtml/faq/index.html} (88%) create mode 100644 doc/_build/dirhtml/genindex/index.html rename doc/_build/{html => dirhtml}/index.html (88%) rename doc/_build/{html/languages.html => dirhtml/languages/index.html} (85%) create mode 100644 doc/_build/dirhtml/objects.inv create mode 100644 doc/_build/dirhtml/py-modindex/index.html rename doc/_build/{html/search.html => dirhtml/search/index.html} (74%) create mode 100644 doc/_build/dirhtml/searchindex.js delete mode 100644 doc/_build/html/_static/jquery.js delete mode 100644 doc/_build/html/genindex.html delete mode 100644 doc/_build/html/objects.inv delete mode 100644 doc/_build/html/py-modindex.html delete mode 100644 doc/_build/html/searchindex.js create mode 100644 pytest.ini create mode 100644 requirements.txt delete mode 100644 tests/test_guessing.py create mode 100644 tox.ini diff --git a/.coveragerc b/.coveragerc new file mode 100644 index 0000000..a6c6adb --- /dev/null +++ b/.coveragerc @@ -0,0 +1,3 @@ +[run] +include = + pygments/* diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 0000000..491ef47 --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,26 @@ +name: Pygments + +on: [push, pull_request] + +jobs: + build: + + runs-on: ubuntu-latest + strategy: + max-parallel: 4 + matrix: + python-version: [2.7, 3.5, 3.6, 3.7, 3.8, pypy2, pypy3] + + steps: + - uses: actions/checkout@v1 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v1 + with: + python-version: ${{ matrix.python-version }} + - name: Install package + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt + pip install . + - name: Test package + run: make test diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml new file mode 100644 index 0000000..16d1f58 --- /dev/null +++ b/.github/workflows/docs.yaml @@ -0,0 +1,36 @@ +name: Docs + +on: + push: + branches: + - master + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Setup Python + uses: actions/setup-python@v1 + with: + python-version: 3.7 + - name: Checkout Pygments + uses: actions/checkout@v1 + - name: Checkout Pyodide + run: git clone https://github.com/pygments/pyodide-artifacts + - name: Sphinx install + run: pip install Sphinx + - name: Sphinx build + run: | + cd doc + WEBSITE_BUILD=1 make dirhtml + cp -a ../pyodide-artifacts/pyodide _build/dirhtml/_static + touch _build/dirhtml/.nojekyll + echo -e 'pygments.org\nwww.pygments.org' > _build/dirhtml/CNAME + echo 'Automated deployment of docs for GitHub pages.' > _build/dirhtml/README + - name: Deploy to repo + uses: peaceiris/actions-gh-pages@v2.5.0 + env: + ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }} + EXTERNAL_REPOSITORY: pygments/pygments.github.io + PUBLISH_BRANCH: master + PUBLISH_DIR: ./doc/_build/dirhtml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..350516f --- /dev/null +++ b/.gitignore @@ -0,0 +1,18 @@ +*.egg +*.pyc +*.pyo +.*.sw[op] +/.pytest_cache/ +/.idea/ +/.project +/.tags +/.tox/ +/.cache/ +/Pygments.egg-info/* +/TAGS +/build/* +/dist/* +/doc/_build +/.coverage +/htmlcov +/tests/examplefiles/output diff --git a/CHANGES b/CHANGES index 5b19155..aaa8404 100644 --- a/CHANGES +++ b/CHANGES @@ -6,12 +6,32 @@ Since 2.5.0, issue numbers refer to the tracker at pull request numbers to the requests at . +Version 2.5.2 +------------- +(released November 29, 2019) + +- Fix incompatibility with some setuptools versions (PR#1316) + +- Fix lexing of ReST field lists (PR#1279) +- Fix lexing of Matlab keywords as field names (PR#1282) +- Recognize double-quoted strings in Matlab (PR#1278) +- Avoid slow backtracking in Vim lexer (PR#1312) +- Fix Scala highlighting of types (PR#1315) +- Highlight field lists more consistently in ReST (PR#1279) +- Fix highlighting Matlab keywords in field names (PR#1282) +- Recognize Matlab double quoted strings (PR#1278) +- Add some Terraform keywords +- Update Modelica lexer to 3.4 +- Update Crystal examples + + Version 2.5.1 ------------- (released November 26, 2019) - This release fixes a packaging issue. No functional changes. + Version 2.5.0 ------------- (released November 26, 2019) diff --git a/MANIFEST.in b/MANIFEST.in index 7e1d320..c6a8567 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,6 +1,5 @@ -include pygmentize +include Makefile CHANGES LICENSE AUTHORS include external/* -include Makefile CHANGES LICENSE AUTHORS TODO recursive-include tests * recursive-include doc * recursive-include scripts * diff --git a/PKG-INFO b/PKG-INFO index 620cb36..aa65db4 100644 --- a/PKG-INFO +++ b/PKG-INFO @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: Pygments -Version: 2.5.1 +Version: 2.5.2 Summary: Pygments is a syntax highlighting package written in Python. Home-page: http://pygments.org/ Author: Georg Brandl diff --git a/Pygments.egg-info/PKG-INFO b/Pygments.egg-info/PKG-INFO index 620cb36..aa65db4 100644 --- a/Pygments.egg-info/PKG-INFO +++ b/Pygments.egg-info/PKG-INFO @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: Pygments -Version: 2.5.1 +Version: 2.5.2 Summary: Pygments is a syntax highlighting package written in Python. Home-page: http://pygments.org/ Author: Georg Brandl diff --git a/Pygments.egg-info/SOURCES.txt b/Pygments.egg-info/SOURCES.txt index a5ffa47..9cbdf15 100644 --- a/Pygments.egg-info/SOURCES.txt +++ b/Pygments.egg-info/SOURCES.txt @@ -1,12 +1,18 @@ +.coveragerc +.gitignore AUTHORS CHANGES LICENSE MANIFEST.in Makefile README.rst -TODO +pytest.ini +requirements.txt setup.cfg setup.py +tox.ini +.github/workflows/build.yaml +.github/workflows/docs.yaml Pygments.egg-info/PKG-INFO Pygments.egg-info/SOURCES.txt Pygments.egg-info/dependency_links.txt @@ -21,6 +27,95 @@ doc/index.rst doc/languages.rst doc/make.bat doc/pygmentize.1 +doc/_build/dirhtml/.buildinfo +doc/_build/dirhtml/index.html +doc/_build/dirhtml/objects.inv +doc/_build/dirhtml/searchindex.js +doc/_build/dirhtml/_sources/download.rst.txt +doc/_build/dirhtml/_sources/faq.rst.txt +doc/_build/dirhtml/_sources/index.rst.txt +doc/_build/dirhtml/_sources/languages.rst.txt +doc/_build/dirhtml/_sources/docs/api.rst.txt +doc/_build/dirhtml/_sources/docs/authors.rst.txt +doc/_build/dirhtml/_sources/docs/changelog.rst.txt +doc/_build/dirhtml/_sources/docs/cmdline.rst.txt +doc/_build/dirhtml/_sources/docs/filterdevelopment.rst.txt +doc/_build/dirhtml/_sources/docs/filters.rst.txt +doc/_build/dirhtml/_sources/docs/formatterdevelopment.rst.txt +doc/_build/dirhtml/_sources/docs/formatters.rst.txt +doc/_build/dirhtml/_sources/docs/index.rst.txt +doc/_build/dirhtml/_sources/docs/integrate.rst.txt +doc/_build/dirhtml/_sources/docs/java.rst.txt +doc/_build/dirhtml/_sources/docs/lexerdevelopment.rst.txt +doc/_build/dirhtml/_sources/docs/lexers.rst.txt +doc/_build/dirhtml/_sources/docs/moinmoin.rst.txt +doc/_build/dirhtml/_sources/docs/plugins.rst.txt +doc/_build/dirhtml/_sources/docs/quickstart.rst.txt +doc/_build/dirhtml/_sources/docs/rstdirective.rst.txt +doc/_build/dirhtml/_sources/docs/styles.rst.txt +doc/_build/dirhtml/_sources/docs/tokens.rst.txt +doc/_build/dirhtml/_sources/docs/unicode.rst.txt +doc/_build/dirhtml/_static/basic.css +doc/_build/dirhtml/_static/bodybg.png +doc/_build/dirhtml/_static/demo.css +doc/_build/dirhtml/_static/demo.js +doc/_build/dirhtml/_static/docbg.png +doc/_build/dirhtml/_static/doctools.js +doc/_build/dirhtml/_static/documentation_options.js +doc/_build/dirhtml/_static/favicon.ico +doc/_build/dirhtml/_static/file.png +doc/_build/dirhtml/_static/github.png +doc/_build/dirhtml/_static/jquery-3.2.1.js +doc/_build/dirhtml/_static/jquery.js +doc/_build/dirhtml/_static/language_data.js +doc/_build/dirhtml/_static/listitem.png +doc/_build/dirhtml/_static/logo.png +doc/_build/dirhtml/_static/logo_new.png +doc/_build/dirhtml/_static/logo_only.png +doc/_build/dirhtml/_static/minus.png +doc/_build/dirhtml/_static/plus.png +doc/_build/dirhtml/_static/pocoo.png +doc/_build/dirhtml/_static/pygments.css +doc/_build/dirhtml/_static/pygments14.css +doc/_build/dirhtml/_static/searchtools.js +doc/_build/dirhtml/_static/spinner.gif +doc/_build/dirhtml/_static/underscore-1.3.1.js +doc/_build/dirhtml/_static/underscore.js +doc/_build/dirhtml/_static/pyodide/Pygments.data +doc/_build/dirhtml/_static/pyodide/Pygments.js +doc/_build/dirhtml/_static/pyodide/packages.json +doc/_build/dirhtml/_static/pyodide/pyodide.asm.data +doc/_build/dirhtml/_static/pyodide/pyodide.asm.data.js +doc/_build/dirhtml/_static/pyodide/pyodide.asm.js +doc/_build/dirhtml/_static/pyodide/pyodide.asm.wasm +doc/_build/dirhtml/_static/pyodide/pyodide.js +doc/_build/dirhtml/demo/index.html +doc/_build/dirhtml/docs/index.html +doc/_build/dirhtml/docs/api/index.html +doc/_build/dirhtml/docs/authors/index.html +doc/_build/dirhtml/docs/changelog/index.html +doc/_build/dirhtml/docs/cmdline/index.html +doc/_build/dirhtml/docs/filterdevelopment/index.html +doc/_build/dirhtml/docs/filters/index.html +doc/_build/dirhtml/docs/formatterdevelopment/index.html +doc/_build/dirhtml/docs/formatters/index.html +doc/_build/dirhtml/docs/integrate/index.html +doc/_build/dirhtml/docs/java/index.html +doc/_build/dirhtml/docs/lexerdevelopment/index.html +doc/_build/dirhtml/docs/lexers/index.html +doc/_build/dirhtml/docs/moinmoin/index.html +doc/_build/dirhtml/docs/plugins/index.html +doc/_build/dirhtml/docs/quickstart/index.html +doc/_build/dirhtml/docs/rstdirective/index.html +doc/_build/dirhtml/docs/styles/index.html +doc/_build/dirhtml/docs/tokens/index.html +doc/_build/dirhtml/docs/unicode/index.html +doc/_build/dirhtml/download/index.html +doc/_build/dirhtml/faq/index.html +doc/_build/dirhtml/genindex/index.html +doc/_build/dirhtml/languages/index.html +doc/_build/dirhtml/py-modindex/index.html +doc/_build/dirhtml/search/index.html doc/_build/doctrees/download.doctree doc/_build/doctrees/environment.pickle doc/_build/doctrees/faq.doctree @@ -46,86 +141,6 @@ doc/_build/doctrees/docs/rstdirective.doctree doc/_build/doctrees/docs/styles.doctree doc/_build/doctrees/docs/tokens.doctree doc/_build/doctrees/docs/unicode.doctree -doc/_build/html/.buildinfo -doc/_build/html/download.html -doc/_build/html/faq.html -doc/_build/html/genindex.html -doc/_build/html/index.html -doc/_build/html/languages.html -doc/_build/html/objects.inv -doc/_build/html/py-modindex.html -doc/_build/html/search.html -doc/_build/html/searchindex.js -doc/_build/html/_sources/download.rst.txt -doc/_build/html/_sources/faq.rst.txt -doc/_build/html/_sources/index.rst.txt -doc/_build/html/_sources/languages.rst.txt -doc/_build/html/_sources/docs/api.rst.txt -doc/_build/html/_sources/docs/authors.rst.txt -doc/_build/html/_sources/docs/changelog.rst.txt -doc/_build/html/_sources/docs/cmdline.rst.txt -doc/_build/html/_sources/docs/filterdevelopment.rst.txt -doc/_build/html/_sources/docs/filters.rst.txt -doc/_build/html/_sources/docs/formatterdevelopment.rst.txt -doc/_build/html/_sources/docs/formatters.rst.txt -doc/_build/html/_sources/docs/index.rst.txt -doc/_build/html/_sources/docs/integrate.rst.txt -doc/_build/html/_sources/docs/java.rst.txt -doc/_build/html/_sources/docs/lexerdevelopment.rst.txt -doc/_build/html/_sources/docs/lexers.rst.txt -doc/_build/html/_sources/docs/moinmoin.rst.txt -doc/_build/html/_sources/docs/plugins.rst.txt -doc/_build/html/_sources/docs/quickstart.rst.txt -doc/_build/html/_sources/docs/rstdirective.rst.txt -doc/_build/html/_sources/docs/styles.rst.txt -doc/_build/html/_sources/docs/tokens.rst.txt -doc/_build/html/_sources/docs/unicode.rst.txt -doc/_build/html/_static/basic.css -doc/_build/html/_static/bodybg.png -doc/_build/html/_static/demo.css -doc/_build/html/_static/demo.js -doc/_build/html/_static/docbg.png -doc/_build/html/_static/doctools.js -doc/_build/html/_static/documentation_options.js -doc/_build/html/_static/favicon.ico -doc/_build/html/_static/file.png -doc/_build/html/_static/github.png -doc/_build/html/_static/jquery-3.4.1.js -doc/_build/html/_static/jquery.js -doc/_build/html/_static/language_data.js -doc/_build/html/_static/listitem.png -doc/_build/html/_static/logo.png -doc/_build/html/_static/logo_new.png -doc/_build/html/_static/logo_only.png -doc/_build/html/_static/minus.png -doc/_build/html/_static/plus.png -doc/_build/html/_static/pocoo.png -doc/_build/html/_static/pygments.css -doc/_build/html/_static/pygments14.css -doc/_build/html/_static/searchtools.js -doc/_build/html/_static/spinner.gif -doc/_build/html/_static/underscore-1.3.1.js -doc/_build/html/_static/underscore.js -doc/_build/html/docs/api.html -doc/_build/html/docs/authors.html -doc/_build/html/docs/changelog.html -doc/_build/html/docs/cmdline.html -doc/_build/html/docs/filterdevelopment.html -doc/_build/html/docs/filters.html -doc/_build/html/docs/formatterdevelopment.html -doc/_build/html/docs/formatters.html -doc/_build/html/docs/index.html -doc/_build/html/docs/integrate.html -doc/_build/html/docs/java.html -doc/_build/html/docs/lexerdevelopment.html -doc/_build/html/docs/lexers.html -doc/_build/html/docs/moinmoin.html -doc/_build/html/docs/plugins.html -doc/_build/html/docs/quickstart.html -doc/_build/html/docs/rstdirective.html -doc/_build/html/docs/styles.html -doc/_build/html/docs/tokens.html -doc/_build/html/docs/unicode.html doc/_static/demo.css doc/_static/demo.js doc/_static/favicon.ico @@ -417,7 +432,6 @@ tests/test_csound.py tests/test_data.py tests/test_examplefiles.py tests/test_ezhil.py -tests/test_guessing.py tests/test_html_formatter.py tests/test_inherit.py tests/test_irc_formatter.py diff --git a/TODO b/TODO deleted file mode 100644 index 88076f3..0000000 --- a/TODO +++ /dev/null @@ -1,12 +0,0 @@ -Todo -==== - -- lexers that need work: - * review perl lexer (numerous bugs, but so far no one had complaints ;) - * readd property support for C# lexer? that is, find a regex that doesn't - backtrack to death... - * add support for function name highlighting to C++ lexer - -- allow "overlay" token types to highlight specials: nth line, a word etc. - -- pygmentize option presets, more sophisticated method to output styles? diff --git a/doc/_build/html/.buildinfo b/doc/_build/dirhtml/.buildinfo similarity index 65% rename from doc/_build/html/.buildinfo rename to doc/_build/dirhtml/.buildinfo index 23b7cb1..d7c9ee0 100644 --- a/doc/_build/html/.buildinfo +++ b/doc/_build/dirhtml/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: c79bd2c7f6735b09a44f7dfcaa237099 -tags: 645f666f9bcd5a90fca523b33c5a78b7 +config: 4ed321c349170b9a52f3730c5cc7d944 +tags: d77d1c0d9ca2f4c8421862c7c5a0d620 diff --git a/doc/_build/html/_sources/docs/api.rst.txt b/doc/_build/dirhtml/_sources/docs/api.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/api.rst.txt rename to doc/_build/dirhtml/_sources/docs/api.rst.txt diff --git a/doc/_build/html/_sources/docs/authors.rst.txt b/doc/_build/dirhtml/_sources/docs/authors.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/authors.rst.txt rename to doc/_build/dirhtml/_sources/docs/authors.rst.txt diff --git a/doc/_build/html/_sources/docs/changelog.rst.txt b/doc/_build/dirhtml/_sources/docs/changelog.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/changelog.rst.txt rename to doc/_build/dirhtml/_sources/docs/changelog.rst.txt diff --git a/doc/_build/html/_sources/docs/cmdline.rst.txt b/doc/_build/dirhtml/_sources/docs/cmdline.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/cmdline.rst.txt rename to doc/_build/dirhtml/_sources/docs/cmdline.rst.txt diff --git a/doc/_build/html/_sources/docs/filterdevelopment.rst.txt b/doc/_build/dirhtml/_sources/docs/filterdevelopment.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/filterdevelopment.rst.txt rename to doc/_build/dirhtml/_sources/docs/filterdevelopment.rst.txt diff --git a/doc/_build/html/_sources/docs/filters.rst.txt b/doc/_build/dirhtml/_sources/docs/filters.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/filters.rst.txt rename to doc/_build/dirhtml/_sources/docs/filters.rst.txt diff --git a/doc/_build/html/_sources/docs/formatterdevelopment.rst.txt b/doc/_build/dirhtml/_sources/docs/formatterdevelopment.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/formatterdevelopment.rst.txt rename to doc/_build/dirhtml/_sources/docs/formatterdevelopment.rst.txt diff --git a/doc/_build/html/_sources/docs/formatters.rst.txt b/doc/_build/dirhtml/_sources/docs/formatters.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/formatters.rst.txt rename to doc/_build/dirhtml/_sources/docs/formatters.rst.txt diff --git a/doc/_build/html/_sources/docs/index.rst.txt b/doc/_build/dirhtml/_sources/docs/index.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/index.rst.txt rename to doc/_build/dirhtml/_sources/docs/index.rst.txt diff --git a/doc/_build/html/_sources/docs/integrate.rst.txt b/doc/_build/dirhtml/_sources/docs/integrate.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/integrate.rst.txt rename to doc/_build/dirhtml/_sources/docs/integrate.rst.txt diff --git a/doc/_build/html/_sources/docs/java.rst.txt b/doc/_build/dirhtml/_sources/docs/java.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/java.rst.txt rename to doc/_build/dirhtml/_sources/docs/java.rst.txt diff --git a/doc/_build/html/_sources/docs/lexerdevelopment.rst.txt b/doc/_build/dirhtml/_sources/docs/lexerdevelopment.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/lexerdevelopment.rst.txt rename to doc/_build/dirhtml/_sources/docs/lexerdevelopment.rst.txt diff --git a/doc/_build/html/_sources/docs/lexers.rst.txt b/doc/_build/dirhtml/_sources/docs/lexers.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/lexers.rst.txt rename to doc/_build/dirhtml/_sources/docs/lexers.rst.txt diff --git a/doc/_build/html/_sources/docs/moinmoin.rst.txt b/doc/_build/dirhtml/_sources/docs/moinmoin.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/moinmoin.rst.txt rename to doc/_build/dirhtml/_sources/docs/moinmoin.rst.txt diff --git a/doc/_build/html/_sources/docs/plugins.rst.txt b/doc/_build/dirhtml/_sources/docs/plugins.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/plugins.rst.txt rename to doc/_build/dirhtml/_sources/docs/plugins.rst.txt diff --git a/doc/_build/html/_sources/docs/quickstart.rst.txt b/doc/_build/dirhtml/_sources/docs/quickstart.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/quickstart.rst.txt rename to doc/_build/dirhtml/_sources/docs/quickstart.rst.txt diff --git a/doc/_build/html/_sources/docs/rstdirective.rst.txt b/doc/_build/dirhtml/_sources/docs/rstdirective.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/rstdirective.rst.txt rename to doc/_build/dirhtml/_sources/docs/rstdirective.rst.txt diff --git a/doc/_build/html/_sources/docs/styles.rst.txt b/doc/_build/dirhtml/_sources/docs/styles.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/styles.rst.txt rename to doc/_build/dirhtml/_sources/docs/styles.rst.txt diff --git a/doc/_build/html/_sources/docs/tokens.rst.txt b/doc/_build/dirhtml/_sources/docs/tokens.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/tokens.rst.txt rename to doc/_build/dirhtml/_sources/docs/tokens.rst.txt diff --git a/doc/_build/html/_sources/docs/unicode.rst.txt b/doc/_build/dirhtml/_sources/docs/unicode.rst.txt similarity index 100% rename from doc/_build/html/_sources/docs/unicode.rst.txt rename to doc/_build/dirhtml/_sources/docs/unicode.rst.txt diff --git a/doc/_build/html/_sources/download.rst.txt b/doc/_build/dirhtml/_sources/download.rst.txt similarity index 100% rename from doc/_build/html/_sources/download.rst.txt rename to doc/_build/dirhtml/_sources/download.rst.txt diff --git a/doc/_build/html/_sources/faq.rst.txt b/doc/_build/dirhtml/_sources/faq.rst.txt similarity index 96% rename from doc/_build/html/_sources/faq.rst.txt rename to doc/_build/dirhtml/_sources/faq.rst.txt index 108cef4..28db1d2 100644 --- a/doc/_build/html/_sources/faq.rst.txt +++ b/doc/_build/dirhtml/_sources/faq.rst.txt @@ -132,9 +132,8 @@ This is an (incomplete) list of projects and sites known to use the Pygments hig * `Clygments `_, a pygments wrapper for Clojure * `PHPygments `_, a pygments wrapper for PHP -* `Spyder `_, the Scientific Python Development - Environment, uses pygments for the multi-language syntax highlighting in its - `editor `_. + If you have a project or web site using Pygments, drop me a line, and I'll add a link here. + diff --git a/doc/_build/html/_sources/index.rst.txt b/doc/_build/dirhtml/_sources/index.rst.txt similarity index 100% rename from doc/_build/html/_sources/index.rst.txt rename to doc/_build/dirhtml/_sources/index.rst.txt diff --git a/doc/_build/html/_sources/languages.rst.txt b/doc/_build/dirhtml/_sources/languages.rst.txt similarity index 95% rename from doc/_build/html/_sources/languages.rst.txt rename to doc/_build/dirhtml/_sources/languages.rst.txt index a91664c..be88668 100644 --- a/doc/_build/html/_sources/languages.rst.txt +++ b/doc/_build/dirhtml/_sources/languages.rst.txt @@ -38,7 +38,6 @@ Programming languages * Delphi * Dylan * `Elm `_ -* Email * Erlang * `Ezhil `_ Ezhil - A Tamil programming language * Factor @@ -70,7 +69,6 @@ Programming languages * MuPad * Nemerle * Nimrod -* Notmuch * Objective-C * Objective-J * Octave @@ -90,7 +88,6 @@ Programming languages * Rust * S, S-Plus, R * Scala -* `Scdoc `_ * Scheme * Scilab * `SGF `_ @@ -98,7 +95,6 @@ Programming languages * `Slurm `_ * Smalltalk * SNOBOL -* `Solidity `_ * Tcl * `Tera Term language `_ * `TOML `_ @@ -108,9 +104,7 @@ Programming languages * Visual Basic.NET * Visual FoxPro * XQuery -* `Zeek `_ * Zephir -* `Zig `_ Template languages ------------------ diff --git a/doc/_build/html/_static/basic.css b/doc/_build/dirhtml/_static/basic.css similarity index 96% rename from doc/_build/html/_static/basic.css rename to doc/_build/dirhtml/_static/basic.css index ea6972d..53acd09 100644 --- a/doc/_build/html/_static/basic.css +++ b/doc/_build/dirhtml/_static/basic.css @@ -289,12 +289,6 @@ img.align-center, .figure.align-center, object.align-center { margin-right: auto; } -img.align-default, .figure.align-default { - display: block; - margin-left: auto; - margin-right: auto; -} - .align-left { text-align: left; } @@ -303,10 +297,6 @@ img.align-default, .figure.align-default { text-align: center; } -.align-default { - text-align: center; -} - .align-right { text-align: right; } @@ -378,11 +368,6 @@ table.align-center { margin-right: auto; } -table.align-default { - margin-left: auto; - margin-right: auto; -} - table caption span.caption-number { font-style: italic; } @@ -520,15 +505,14 @@ dl.citation > dd:after { } dl.field-list { - display: grid; - grid-template-columns: fit-content(30%) auto; + display: flex; + flex-wrap: wrap; } dl.field-list > dt { + flex-basis: 20%; font-weight: bold; word-break: break-word; - padding-left: 0.5em; - padding-right: 5px; } dl.field-list > dt:after { @@ -536,8 +520,8 @@ dl.field-list > dt:after { } dl.field-list > dd { - padding-left: 0.5em; - margin-top: 0em; + flex-basis: 70%; + padding-left: 1em; margin-left: 0em; margin-bottom: 0em; } diff --git a/doc/_build/html/_static/bodybg.png b/doc/_build/dirhtml/_static/bodybg.png similarity index 100% rename from doc/_build/html/_static/bodybg.png rename to doc/_build/dirhtml/_static/bodybg.png diff --git a/doc/_build/html/_static/demo.css b/doc/_build/dirhtml/_static/demo.css similarity index 100% rename from doc/_build/html/_static/demo.css rename to doc/_build/dirhtml/_static/demo.css diff --git a/doc/_build/html/_static/demo.js b/doc/_build/dirhtml/_static/demo.js similarity index 97% rename from doc/_build/html/_static/demo.js rename to doc/_build/dirhtml/_static/demo.js index f538492..ed26ed3 100644 --- a/doc/_build/html/_static/demo.js +++ b/doc/_build/dirhtml/_static/demo.js @@ -91,9 +91,9 @@ function download_code() { else{ var elem = window.document.createElement('a'); elem.href = window.URL.createObjectURL(blob); - elem.download = filename; + elem.download = filename; document.body.appendChild(elem); - elem.click(); + elem.click(); document.body.removeChild(elem); window.URL.revokeObjectURL(elem.href); } diff --git a/doc/_build/html/_static/docbg.png b/doc/_build/dirhtml/_static/docbg.png similarity index 100% rename from doc/_build/html/_static/docbg.png rename to doc/_build/dirhtml/_static/docbg.png diff --git a/doc/_build/html/_static/doctools.js b/doc/_build/dirhtml/_static/doctools.js similarity index 100% rename from doc/_build/html/_static/doctools.js rename to doc/_build/dirhtml/_static/doctools.js diff --git a/doc/_build/html/_static/documentation_options.js b/doc/_build/dirhtml/_static/documentation_options.js similarity index 90% rename from doc/_build/html/_static/documentation_options.js rename to doc/_build/dirhtml/_static/documentation_options.js index 6ab1660..b3de61d 100644 --- a/doc/_build/html/_static/documentation_options.js +++ b/doc/_build/dirhtml/_static/documentation_options.js @@ -3,7 +3,7 @@ var DOCUMENTATION_OPTIONS = { VERSION: '2.4.2', LANGUAGE: 'None', COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', + FILE_SUFFIX: '', HAS_SOURCE: true, SOURCELINK_SUFFIX: '.txt', NAVIGATION_WITH_KEYS: false diff --git a/doc/_build/html/_static/favicon.ico b/doc/_build/dirhtml/_static/favicon.ico similarity index 100% rename from doc/_build/html/_static/favicon.ico rename to doc/_build/dirhtml/_static/favicon.ico diff --git a/doc/_build/html/_static/file.png b/doc/_build/dirhtml/_static/file.png similarity index 100% rename from doc/_build/html/_static/file.png rename to doc/_build/dirhtml/_static/file.png diff --git a/doc/_build/html/_static/github.png b/doc/_build/dirhtml/_static/github.png similarity index 100% rename from doc/_build/html/_static/github.png rename to doc/_build/dirhtml/_static/github.png diff --git a/doc/_build/html/_static/jquery-3.4.1.js b/doc/_build/dirhtml/_static/jquery-3.2.1.js similarity index 89% rename from doc/_build/html/_static/jquery-3.4.1.js rename to doc/_build/dirhtml/_static/jquery-3.2.1.js index 773ad95..d2d8ca4 100644 --- a/doc/_build/html/_static/jquery-3.4.1.js +++ b/doc/_build/dirhtml/_static/jquery-3.2.1.js @@ -1,5 +1,5 @@ /*! - * jQuery JavaScript Library v3.4.1 + * jQuery JavaScript Library v3.2.1 * https://jquery.com/ * * Includes Sizzle.js @@ -9,7 +9,7 @@ * Released under the MIT license * https://jquery.org/license * - * Date: 2019-05-01T21:04Z + * Date: 2017-03-20T18:59Z */ ( function( global, factory ) { @@ -71,70 +71,16 @@ var ObjectFunctionString = fnToString.call( Object ); var support = {}; -var isFunction = function isFunction( obj ) { - // Support: Chrome <=57, Firefox <=52 - // In some browsers, typeof returns "function" for HTML elements - // (i.e., `typeof document.createElement( "object" ) === "function"`). - // We don't want to classify *any* DOM node as a function. - return typeof obj === "function" && typeof obj.nodeType !== "number"; - }; - -var isWindow = function isWindow( obj ) { - return obj != null && obj === obj.window; - }; - - - - - var preservedScriptAttributes = { - type: true, - src: true, - nonce: true, - noModule: true - }; - - function DOMEval( code, node, doc ) { + function DOMEval( code, doc ) { doc = doc || document; - var i, val, - script = doc.createElement( "script" ); + var script = doc.createElement( "script" ); script.text = code; - if ( node ) { - for ( i in preservedScriptAttributes ) { - - // Support: Firefox 64+, Edge 18+ - // Some browsers don't support the "nonce" property on scripts. - // On the other hand, just using `getAttribute` is not enough as - // the `nonce` attribute is reset to an empty string whenever it - // becomes browsing-context connected. - // See https://github.com/whatwg/html/issues/2369 - // See https://html.spec.whatwg.org/#nonce-attributes - // The `node.getAttribute` check was added for the sake of - // `jQuery.globalEval` so that it can fake a nonce-containing node - // via an object. - val = node[ i ] || node.getAttribute && node.getAttribute( i ); - if ( val ) { - script.setAttribute( i, val ); - } - } - } doc.head.appendChild( script ).parentNode.removeChild( script ); } - - -function toType( obj ) { - if ( obj == null ) { - return obj + ""; - } - - // Support: Android <=2.3 only (functionish RegExp) - return typeof obj === "object" || typeof obj === "function" ? - class2type[ toString.call( obj ) ] || "object" : - typeof obj; -} /* global Symbol */ // Defining this global in .eslintrc.json would create a danger of using the global // unguarded in another place, it seems safer to define global only for this module @@ -142,7 +88,7 @@ function toType( obj ) { var - version = "3.4.1", + version = "3.2.1", // Define a local copy of jQuery jQuery = function( selector, context ) { @@ -154,7 +100,16 @@ var // Support: Android <=4.0 only // Make sure we trim BOM and NBSP - rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g; + rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, + + // Matches dashed string for camelizing + rmsPrefix = /^-ms-/, + rdashAlpha = /-([a-z])/g, + + // Used by jQuery.camelCase as callback to replace() + fcamelCase = function( all, letter ) { + return letter.toUpperCase(); + }; jQuery.fn = jQuery.prototype = { @@ -254,7 +209,7 @@ jQuery.extend = jQuery.fn.extend = function() { } // Handle case when target is a string or something (possible in deep copy) - if ( typeof target !== "object" && !isFunction( target ) ) { + if ( typeof target !== "object" && !jQuery.isFunction( target ) ) { target = {}; } @@ -271,28 +226,25 @@ jQuery.extend = jQuery.fn.extend = function() { // Extend the base object for ( name in options ) { + src = target[ name ]; copy = options[ name ]; - // Prevent Object.prototype pollution // Prevent never-ending loop - if ( name === "__proto__" || target === copy ) { + if ( target === copy ) { continue; } // Recurse if we're merging plain objects or arrays if ( deep && copy && ( jQuery.isPlainObject( copy ) || ( copyIsArray = Array.isArray( copy ) ) ) ) { - src = target[ name ]; - // Ensure proper type for the source value - if ( copyIsArray && !Array.isArray( src ) ) { - clone = []; - } else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) { - clone = {}; + if ( copyIsArray ) { + copyIsArray = false; + clone = src && Array.isArray( src ) ? src : []; + } else { - clone = src; + clone = src && jQuery.isPlainObject( src ) ? src : {}; } - copyIsArray = false; // Never move original objects, clone them target[ name ] = jQuery.extend( deep, clone, copy ); @@ -323,6 +275,28 @@ jQuery.extend( { noop: function() {}, + isFunction: function( obj ) { + return jQuery.type( obj ) === "function"; + }, + + isWindow: function( obj ) { + return obj != null && obj === obj.window; + }, + + isNumeric: function( obj ) { + + // As of jQuery 3.0, isNumeric is limited to + // strings and numbers (primitives or objects) + // that can be coerced to finite numbers (gh-2662) + var type = jQuery.type( obj ); + return ( type === "number" || type === "string" ) && + + // parseFloat NaNs numeric-cast false positives ("") + // ...but misinterprets leading-number strings, particularly hex literals ("0x...") + // subtraction forces infinities to NaN + !isNaN( obj - parseFloat( obj ) ); + }, + isPlainObject: function( obj ) { var proto, Ctor; @@ -345,6 +319,9 @@ jQuery.extend( { }, isEmptyObject: function( obj ) { + + /* eslint-disable no-unused-vars */ + // See https://github.com/eslint/eslint/issues/6125 var name; for ( name in obj ) { @@ -353,9 +330,27 @@ jQuery.extend( { return true; }, + type: function( obj ) { + if ( obj == null ) { + return obj + ""; + } + + // Support: Android <=2.3 only (functionish RegExp) + return typeof obj === "object" || typeof obj === "function" ? + class2type[ toString.call( obj ) ] || "object" : + typeof obj; + }, + // Evaluates a script in a global context - globalEval: function( code, options ) { - DOMEval( code, { nonce: options && options.nonce } ); + globalEval: function( code ) { + DOMEval( code ); + }, + + // Convert dashed to camelCase; used by the css and data modules + // Support: IE <=9 - 11, Edge 12 - 13 + // Microsoft forgot to hump their vendor prefix (#9572) + camelCase: function( string ) { + return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); }, each: function( obj, callback ) { @@ -478,6 +473,37 @@ jQuery.extend( { // A global GUID counter for objects guid: 1, + // Bind a function to a context, optionally partially applying any + // arguments. + proxy: function( fn, context ) { + var tmp, args, proxy; + + if ( typeof context === "string" ) { + tmp = fn[ context ]; + context = fn; + fn = tmp; + } + + // Quick check to determine if target is callable, in the spec + // this throws a TypeError, but we will just return undefined. + if ( !jQuery.isFunction( fn ) ) { + return undefined; + } + + // Simulated bind + args = slice.call( arguments, 2 ); + proxy = function() { + return fn.apply( context || this, args.concat( slice.call( arguments ) ) ); + }; + + // Set the guid of unique handler to the same of original handler, so it can be removed + proxy.guid = fn.guid = fn.guid || jQuery.guid++; + + return proxy; + }, + + now: Date.now, + // jQuery.support is not used in Core but other projects attach their // properties to it so it needs to exist. support: support @@ -500,9 +526,9 @@ function isArrayLike( obj ) { // hasOwn isn't used here due to false negatives // regarding Nodelist length in IE var length = !!obj && "length" in obj && obj.length, - type = toType( obj ); + type = jQuery.type( obj ); - if ( isFunction( obj ) || isWindow( obj ) ) { + if ( type === "function" || jQuery.isWindow( obj ) ) { return false; } @@ -511,14 +537,14 @@ function isArrayLike( obj ) { } var Sizzle = /*! - * Sizzle CSS Selector Engine v2.3.4 + * Sizzle CSS Selector Engine v2.3.3 * https://sizzlejs.com/ * - * Copyright JS Foundation and other contributors + * Copyright jQuery Foundation and other contributors * Released under the MIT license - * https://js.foundation/ + * http://jquery.org/license * - * Date: 2019-04-08 + * Date: 2016-08-08 */ (function( window ) { @@ -552,7 +578,6 @@ var i, classCache = createCache(), tokenCache = createCache(), compilerCache = createCache(), - nonnativeSelectorCache = createCache(), sortOrder = function( a, b ) { if ( a === b ) { hasDuplicate = true; @@ -614,7 +639,8 @@ var i, rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ), - rdescend = new RegExp( whitespace + "|>" ), + + rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ), rpseudo = new RegExp( pseudos ), ridentifier = new RegExp( "^" + identifier + "$" ), @@ -635,7 +661,6 @@ var i, whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) }, - rhtml = /HTML$/i, rinputs = /^(?:input|select|textarea|button)$/i, rheader = /^h\d$/i, @@ -690,9 +715,9 @@ var i, setDocument(); }, - inDisabledFieldset = addCombinator( + disabledAncestor = addCombinator( function( elem ) { - return elem.disabled === true && elem.nodeName.toLowerCase() === "fieldset"; + return elem.disabled === true && ("form" in elem || "label" in elem); }, { dir: "parentNode", next: "legend" } ); @@ -805,22 +830,18 @@ function Sizzle( selector, context, results, seed ) { // Take advantage of querySelectorAll if ( support.qsa && - !nonnativeSelectorCache[ selector + " " ] && - (!rbuggyQSA || !rbuggyQSA.test( selector )) && + !compilerCache[ selector + " " ] && + (!rbuggyQSA || !rbuggyQSA.test( selector )) ) { - // Support: IE 8 only - // Exclude object elements - (nodeType !== 1 || context.nodeName.toLowerCase() !== "object") ) { + if ( nodeType !== 1 ) { + newContext = context; + newSelector = selector; - newSelector = selector; - newContext = context; - - // qSA considers elements outside a scoping root when evaluating child or - // descendant combinators, which is not what we want. - // In such cases, we work around the behavior by prefixing every selector in the - // list with an ID selector referencing the scope context. - // Thanks to Andrew Dupont for this technique. - if ( nodeType === 1 && rdescend.test( selector ) ) { + // qSA looks outside Element context, which is not what we want + // Thanks to Andrew Dupont for this workaround technique + // Support: IE <=8 + // Exclude object elements + } else if ( context.nodeName.toLowerCase() !== "object" ) { // Capture the context ID, setting it first if necessary if ( (nid = context.getAttribute( "id" )) ) { @@ -842,16 +863,17 @@ function Sizzle( selector, context, results, seed ) { context; } - try { - push.apply( results, - newContext.querySelectorAll( newSelector ) - ); - return results; - } catch ( qsaError ) { - nonnativeSelectorCache( selector, true ); - } finally { - if ( nid === expando ) { - context.removeAttribute( "id" ); + if ( newSelector ) { + try { + push.apply( results, + newContext.querySelectorAll( newSelector ) + ); + return results; + } catch ( qsaError ) { + } finally { + if ( nid === expando ) { + context.removeAttribute( "id" ); + } } } } @@ -1015,7 +1037,7 @@ function createDisabledPseudo( disabled ) { // Where there is no isDisabled, check manually /* jshint -W018 */ elem.isDisabled !== !disabled && - inDisabledFieldset( elem ) === disabled; + disabledAncestor( elem ) === disabled; } return elem.disabled === disabled; @@ -1072,13 +1094,10 @@ support = Sizzle.support = {}; * @returns {Boolean} True iff elem is a non-HTML XML node */ isXML = Sizzle.isXML = function( elem ) { - var namespace = elem.namespaceURI, - docElem = (elem.ownerDocument || elem).documentElement; - - // Support: IE <=8 - // Assume HTML when documentElement doesn't yet exist, such as inside loading iframes - // https://bugs.jquery.com/ticket/4833 - return !rhtml.test( namespace || docElem && docElem.nodeName || "HTML" ); + // documentElement is verified for cases where it doesn't yet exist + // (such as loading iframes in IE - #4833) + var documentElement = elem && (elem.ownerDocument || elem).documentElement; + return documentElement ? documentElement.nodeName !== "HTML" : false; }; /** @@ -1500,8 +1519,11 @@ Sizzle.matchesSelector = function( elem, expr ) { setDocument( elem ); } + // Make sure that attribute selectors are quoted + expr = expr.replace( rattributeQuotes, "='$1']" ); + if ( support.matchesSelector && documentIsHTML && - !nonnativeSelectorCache[ expr + " " ] && + !compilerCache[ expr + " " ] && ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { @@ -1515,9 +1537,7 @@ Sizzle.matchesSelector = function( elem, expr ) { elem.document && elem.document.nodeType !== 11 ) { return ret; } - } catch (e) { - nonnativeSelectorCache( expr, true ); - } + } catch (e) {} } return Sizzle( expr, document, null, [ elem ] ).length > 0; @@ -1976,7 +1996,7 @@ Expr = Sizzle.selectors = { "contains": markFunction(function( text ) { text = text.replace( runescape, funescape ); return function( elem ) { - return ( elem.textContent || getText( elem ) ).indexOf( text ) > -1; + return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1; }; }), @@ -2115,11 +2135,7 @@ Expr = Sizzle.selectors = { }), "lt": createPositionalPseudo(function( matchIndexes, length, argument ) { - var i = argument < 0 ? - argument + length : - argument > length ? - length : - argument; + var i = argument < 0 ? argument + length : argument; for ( ; --i >= 0; ) { matchIndexes.push( i ); } @@ -2832,9 +2848,11 @@ var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>| +var risSimple = /^.[^:#\[\.,]*$/; + // Implement the identical functionality for filter and not function winnow( elements, qualifier, not ) { - if ( isFunction( qualifier ) ) { + if ( jQuery.isFunction( qualifier ) ) { return jQuery.grep( elements, function( elem, i ) { return !!qualifier.call( elem, i, elem ) !== not; } ); @@ -2854,8 +2872,16 @@ function winnow( elements, qualifier, not ) { } ); } - // Filtered directly for both simple and complex selectors - return jQuery.filter( qualifier, elements, not ); + // Simple selector that can be filtered directly, removing non-Elements + if ( risSimple.test( qualifier ) ) { + return jQuery.filter( qualifier, elements, not ); + } + + // Complex selector, compare the two sets, removing non-Elements + qualifier = jQuery.filter( qualifier, elements ); + return jQuery.grep( elements, function( elem ) { + return ( indexOf.call( qualifier, elem ) > -1 ) !== not && elem.nodeType === 1; + } ); } jQuery.filter = function( expr, elems, not ) { @@ -2976,7 +3002,7 @@ var rootjQuery, for ( match in context ) { // Properties of context are called as methods if possible - if ( isFunction( this[ match ] ) ) { + if ( jQuery.isFunction( this[ match ] ) ) { this[ match ]( context[ match ] ); // ...and otherwise set as attributes @@ -3019,7 +3045,7 @@ var rootjQuery, // HANDLE: $(function) // Shortcut for document ready - } else if ( isFunction( selector ) ) { + } else if ( jQuery.isFunction( selector ) ) { return root.ready !== undefined ? root.ready( selector ) : @@ -3169,18 +3195,18 @@ jQuery.each( { return siblings( elem.firstChild ); }, contents: function( elem ) { - if ( typeof elem.contentDocument !== "undefined" ) { - return elem.contentDocument; - } + if ( nodeName( elem, "iframe" ) ) { + return elem.contentDocument; + } - // Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only - // Treat the template element as a regular one in browsers that - // don't support it. - if ( nodeName( elem, "template" ) ) { - elem = elem.content || elem; - } + // Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only + // Treat the template element as a regular one in browsers that + // don't support it. + if ( nodeName( elem, "template" ) ) { + elem = elem.content || elem; + } - return jQuery.merge( [], elem.childNodes ); + return jQuery.merge( [], elem.childNodes ); } }, function( name, fn ) { jQuery.fn[ name ] = function( until, selector ) { @@ -3334,11 +3360,11 @@ jQuery.Callbacks = function( options ) { ( function add( args ) { jQuery.each( args, function( _, arg ) { - if ( isFunction( arg ) ) { + if ( jQuery.isFunction( arg ) ) { if ( !options.unique || !self.has( arg ) ) { list.push( arg ); } - } else if ( arg && arg.length && toType( arg ) !== "string" ) { + } else if ( arg && arg.length && jQuery.type( arg ) !== "string" ) { // Inspect recursively add( arg ); @@ -3453,11 +3479,11 @@ function adoptValue( value, resolve, reject, noValue ) { try { // Check for promise aspect first to privilege synchronous behavior - if ( value && isFunction( ( method = value.promise ) ) ) { + if ( value && jQuery.isFunction( ( method = value.promise ) ) ) { method.call( value ).done( resolve ).fail( reject ); // Other thenables - } else if ( value && isFunction( ( method = value.then ) ) ) { + } else if ( value && jQuery.isFunction( ( method = value.then ) ) ) { method.call( value, resolve, reject ); // Other non-thenables @@ -3515,14 +3541,14 @@ jQuery.extend( { jQuery.each( tuples, function( i, tuple ) { // Map tuples (progress, done, fail) to arguments (done, fail, progress) - var fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ]; + var fn = jQuery.isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ]; // deferred.progress(function() { bind to newDefer or newDefer.notify }) // deferred.done(function() { bind to newDefer or newDefer.resolve }) // deferred.fail(function() { bind to newDefer or newDefer.reject }) deferred[ tuple[ 1 ] ]( function() { var returned = fn && fn.apply( this, arguments ); - if ( returned && isFunction( returned.promise ) ) { + if ( returned && jQuery.isFunction( returned.promise ) ) { returned.promise() .progress( newDefer.notify ) .done( newDefer.resolve ) @@ -3576,7 +3602,7 @@ jQuery.extend( { returned.then; // Handle a returned thenable - if ( isFunction( then ) ) { + if ( jQuery.isFunction( then ) ) { // Special processors (notify) just wait for resolution if ( special ) { @@ -3672,7 +3698,7 @@ jQuery.extend( { resolve( 0, newDefer, - isFunction( onProgress ) ? + jQuery.isFunction( onProgress ) ? onProgress : Identity, newDefer.notifyWith @@ -3684,7 +3710,7 @@ jQuery.extend( { resolve( 0, newDefer, - isFunction( onFulfilled ) ? + jQuery.isFunction( onFulfilled ) ? onFulfilled : Identity ) @@ -3695,7 +3721,7 @@ jQuery.extend( { resolve( 0, newDefer, - isFunction( onRejected ) ? + jQuery.isFunction( onRejected ) ? onRejected : Thrower ) @@ -3735,15 +3761,8 @@ jQuery.extend( { // fulfilled_callbacks.disable tuples[ 3 - i ][ 2 ].disable, - // rejected_handlers.disable - // fulfilled_handlers.disable - tuples[ 3 - i ][ 3 ].disable, - // progress_callbacks.lock - tuples[ 0 ][ 2 ].lock, - - // progress_handlers.lock - tuples[ 0 ][ 3 ].lock + tuples[ 0 ][ 2 ].lock ); } @@ -3813,7 +3832,7 @@ jQuery.extend( { // Use .then() to unwrap secondary thenables (cf. gh-3000) if ( master.state() === "pending" || - isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { + jQuery.isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { return master.then(); } @@ -3941,7 +3960,7 @@ var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { bulk = key == null; // Sets many values - if ( toType( key ) === "object" ) { + if ( jQuery.type( key ) === "object" ) { chainable = true; for ( i in key ) { access( elems, fn, i, key[ i ], true, emptyGet, raw ); @@ -3951,7 +3970,7 @@ var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { } else if ( value !== undefined ) { chainable = true; - if ( !isFunction( value ) ) { + if ( !jQuery.isFunction( value ) ) { raw = true; } @@ -3993,23 +4012,6 @@ var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { return len ? fn( elems[ 0 ], key ) : emptyGet; }; - - -// Matches dashed string for camelizing -var rmsPrefix = /^-ms-/, - rdashAlpha = /-([a-z])/g; - -// Used by camelCase as callback to replace() -function fcamelCase( all, letter ) { - return letter.toUpperCase(); -} - -// Convert dashed to camelCase; used by the css and data modules -// Support: IE <=9 - 11, Edge 12 - 15 -// Microsoft forgot to hump their vendor prefix (#9572) -function camelCase( string ) { - return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); -} var acceptData = function( owner ) { // Accepts only: @@ -4072,14 +4074,14 @@ Data.prototype = { // Handle: [ owner, key, value ] args // Always use camelCase key (gh-2257) if ( typeof data === "string" ) { - cache[ camelCase( data ) ] = value; + cache[ jQuery.camelCase( data ) ] = value; // Handle: [ owner, { properties } ] args } else { // Copy the properties one-by-one to the cache object for ( prop in data ) { - cache[ camelCase( prop ) ] = data[ prop ]; + cache[ jQuery.camelCase( prop ) ] = data[ prop ]; } } return cache; @@ -4089,7 +4091,7 @@ Data.prototype = { this.cache( owner ) : // Always use camelCase key (gh-2257) - owner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ]; + owner[ this.expando ] && owner[ this.expando ][ jQuery.camelCase( key ) ]; }, access: function( owner, key, value ) { @@ -4137,9 +4139,9 @@ Data.prototype = { // If key is an array of keys... // We always set camelCase keys, so remove that. - key = key.map( camelCase ); + key = key.map( jQuery.camelCase ); } else { - key = camelCase( key ); + key = jQuery.camelCase( key ); // If a key with the spaces exists, use it. // Otherwise, create an array by matching non-whitespace @@ -4285,7 +4287,7 @@ jQuery.fn.extend( { if ( attrs[ i ] ) { name = attrs[ i ].name; if ( name.indexOf( "data-" ) === 0 ) { - name = camelCase( name.slice( 5 ) ); + name = jQuery.camelCase( name.slice( 5 ) ); dataAttr( elem, name, data[ name ] ); } } @@ -4489,26 +4491,6 @@ var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; -var documentElement = document.documentElement; - - - - var isAttached = function( elem ) { - return jQuery.contains( elem.ownerDocument, elem ); - }, - composed = { composed: true }; - - // Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only - // Check attachment across shadow DOM boundaries when possible (gh-3504) - // Support: iOS 10.0-10.2 only - // Early iOS 10 versions support `attachShadow` but not `getRootNode`, - // leading to errors. We need to check for `getRootNode`. - if ( documentElement.getRootNode ) { - isAttached = function( elem ) { - return jQuery.contains( elem.ownerDocument, elem ) || - elem.getRootNode( composed ) === elem.ownerDocument; - }; - } var isHiddenWithinTree = function( elem, el ) { // isHiddenWithinTree might be called from jQuery#filter function; @@ -4523,7 +4505,7 @@ var isHiddenWithinTree = function( elem, el ) { // Support: Firefox <=43 - 45 // Disconnected elements can have computed display: none, so first confirm that elem is // in the document. - isAttached( elem ) && + jQuery.contains( elem.ownerDocument, elem ) && jQuery.css( elem, "display" ) === "none"; }; @@ -4552,7 +4534,8 @@ var swap = function( elem, options, callback, args ) { function adjustCSS( elem, prop, valueParts, tween ) { - var adjusted, scale, + var adjusted, + scale = 1, maxIterations = 20, currentValue = tween ? function() { @@ -4565,39 +4548,35 @@ function adjustCSS( elem, prop, valueParts, tween ) { unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), // Starting value computation is required for potential unit mismatches - initialInUnit = elem.nodeType && - ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && + initialInUnit = ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && rcssNum.exec( jQuery.css( elem, prop ) ); if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { - // Support: Firefox <=54 - // Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144) - initial = initial / 2; - // Trust units reported by jQuery.css unit = unit || initialInUnit[ 3 ]; + // Make sure we update the tween properties later on + valueParts = valueParts || []; + // Iteratively approximate from a nonzero starting point initialInUnit = +initial || 1; - while ( maxIterations-- ) { + do { - // Evaluate and update our best guess (doubling guesses that zero out). - // Finish if the scale equals or crosses 1 (making the old*new product non-positive). - jQuery.style( elem, prop, initialInUnit + unit ); - if ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) { - maxIterations = 0; - } - initialInUnit = initialInUnit / scale; + // If previous iteration zeroed out, double until we get *something*. + // Use string for doubling so we don't accidentally see scale as unchanged below + scale = scale || ".5"; - } - - initialInUnit = initialInUnit * 2; - jQuery.style( elem, prop, initialInUnit + unit ); + // Adjust and apply + initialInUnit = initialInUnit / scale; + jQuery.style( elem, prop, initialInUnit + unit ); - // Make sure we update the tween properties later on - valueParts = valueParts || []; + // Update scale, tolerating zero or NaN from tween.cur() + // Break the loop if scale is unchanged or perfect, or if we've just had enough. + } while ( + scale !== ( scale = currentValue() / initial ) && scale !== 1 && --maxIterations + ); } if ( valueParts ) { @@ -4713,9 +4692,9 @@ jQuery.fn.extend( { } ); var rcheckableType = ( /^(?:checkbox|radio)$/i ); -var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]*)/i ); +var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]+)/i ); -var rscriptType = ( /^$|^module$|\/(?:java|ecma)script/i ); +var rscriptType = ( /^$|\/(?:java|ecma)script/i ); @@ -4785,7 +4764,7 @@ function setGlobalEval( elems, refElements ) { var rhtml = /<|&#?\w+;/; function buildFragment( elems, context, scripts, selection, ignored ) { - var elem, tmp, tag, wrap, attached, j, + var elem, tmp, tag, wrap, contains, j, fragment = context.createDocumentFragment(), nodes = [], i = 0, @@ -4797,7 +4776,7 @@ function buildFragment( elems, context, scripts, selection, ignored ) { if ( elem || elem === 0 ) { // Add nodes directly - if ( toType( elem ) === "object" ) { + if ( jQuery.type( elem ) === "object" ) { // Support: Android <=4.0 only, PhantomJS 1 only // push.apply(_, arraylike) throws on ancient WebKit @@ -4849,13 +4828,13 @@ function buildFragment( elems, context, scripts, selection, ignored ) { continue; } - attached = isAttached( elem ); + contains = jQuery.contains( elem.ownerDocument, elem ); // Append to fragment tmp = getAll( fragment.appendChild( elem ), "script" ); // Preserve script evaluation history - if ( attached ) { + if ( contains ) { setGlobalEval( tmp ); } @@ -4898,6 +4877,8 @@ function buildFragment( elems, context, scripts, selection, ignored ) { div.innerHTML = ""; support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; } )(); +var documentElement = document.documentElement; + var @@ -4913,19 +4894,8 @@ function returnFalse() { return false; } -// Support: IE <=9 - 11+ -// focus() and blur() are asynchronous, except when they are no-op. -// So expect focus to be synchronous when the element is already active, -// and blur to be synchronous when the element is not already active. -// (focus and blur are always synchronous in other supported browsers, -// this just defines when we can count on it). -function expectSync( elem, type ) { - return ( elem === safeActiveElement() ) === ( type === "focus" ); -} - // Support: IE <=9 only -// Accessing document.activeElement can throw unexpectedly -// https://bugs.jquery.com/ticket/13393 +// See #13393 for more info function safeActiveElement() { try { return document.activeElement; @@ -5225,10 +5195,9 @@ jQuery.event = { while ( ( handleObj = matched.handlers[ j++ ] ) && !event.isImmediatePropagationStopped() ) { - // If the event is namespaced, then each handler is only invoked if it is - // specially universal or its namespaces are a superset of the event's. - if ( !event.rnamespace || handleObj.namespace === false || - event.rnamespace.test( handleObj.namespace ) ) { + // Triggered event must either 1) have no namespace, or 2) have namespace(s) + // a subset or equal to those in the bound event (both can have no namespace). + if ( !event.rnamespace || event.rnamespace.test( handleObj.namespace ) ) { event.handleObj = handleObj; event.data = handleObj.data; @@ -5317,7 +5286,7 @@ jQuery.event = { enumerable: true, configurable: true, - get: isFunction( hook ) ? + get: jQuery.isFunction( hook ) ? function() { if ( this.originalEvent ) { return hook( this.originalEvent ); @@ -5352,51 +5321,39 @@ jQuery.event = { // Prevent triggered image.load events from bubbling to window.load noBubble: true }, - click: { - - // Utilize native event to ensure correct state for checkable inputs - setup: function( data ) { - - // For mutual compressibility with _default, replace `this` access with a local var. - // `|| data` is dead code meant only to preserve the variable through minification. - var el = this || data; + focus: { - // Claim the first handler - if ( rcheckableType.test( el.type ) && - el.click && nodeName( el, "input" ) ) { - - // dataPriv.set( el, "click", ... ) - leverageNative( el, "click", returnTrue ); + // Fire native event if possible so blur/focus sequence is correct + trigger: function() { + if ( this !== safeActiveElement() && this.focus ) { + this.focus(); + return false; } - - // Return false to allow normal processing in the caller - return false; }, - trigger: function( data ) { - - // For mutual compressibility with _default, replace `this` access with a local var. - // `|| data` is dead code meant only to preserve the variable through minification. - var el = this || data; - - // Force setup before triggering a click - if ( rcheckableType.test( el.type ) && - el.click && nodeName( el, "input" ) ) { - - leverageNative( el, "click" ); + delegateType: "focusin" + }, + blur: { + trigger: function() { + if ( this === safeActiveElement() && this.blur ) { + this.blur(); + return false; } + }, + delegateType: "focusout" + }, + click: { - // Return non-false to allow normal event-path propagation - return true; + // For checkbox, fire native event so checked state will be right + trigger: function() { + if ( this.type === "checkbox" && this.click && nodeName( this, "input" ) ) { + this.click(); + return false; + } }, - // For cross-browser consistency, suppress native .click() on links - // Also prevent it if we're currently inside a leveraged native-event stack + // For cross-browser consistency, don't fire native .click() on links _default: function( event ) { - var target = event.target; - return rcheckableType.test( target.type ) && - target.click && nodeName( target, "input" ) && - dataPriv.get( target, "click" ) || - nodeName( target, "a" ); + return nodeName( event.target, "a" ); } }, @@ -5413,93 +5370,6 @@ jQuery.event = { } }; -// Ensure the presence of an event listener that handles manually-triggered -// synthetic events by interrupting progress until reinvoked in response to -// *native* events that it fires directly, ensuring that state changes have -// already occurred before other listeners are invoked. -function leverageNative( el, type, expectSync ) { - - // Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add - if ( !expectSync ) { - if ( dataPriv.get( el, type ) === undefined ) { - jQuery.event.add( el, type, returnTrue ); - } - return; - } - - // Register the controller as a special universal handler for all event namespaces - dataPriv.set( el, type, false ); - jQuery.event.add( el, type, { - namespace: false, - handler: function( event ) { - var notAsync, result, - saved = dataPriv.get( this, type ); - - if ( ( event.isTrigger & 1 ) && this[ type ] ) { - - // Interrupt processing of the outer synthetic .trigger()ed event - // Saved data should be false in such cases, but might be a leftover capture object - // from an async native handler (gh-4350) - if ( !saved.length ) { - - // Store arguments for use when handling the inner native event - // There will always be at least one argument (an event object), so this array - // will not be confused with a leftover capture object. - saved = slice.call( arguments ); - dataPriv.set( this, type, saved ); - - // Trigger the native event and capture its result - // Support: IE <=9 - 11+ - // focus() and blur() are asynchronous - notAsync = expectSync( this, type ); - this[ type ](); - result = dataPriv.get( this, type ); - if ( saved !== result || notAsync ) { - dataPriv.set( this, type, false ); - } else { - result = {}; - } - if ( saved !== result ) { - - // Cancel the outer synthetic event - event.stopImmediatePropagation(); - event.preventDefault(); - return result.value; - } - - // If this is an inner synthetic event for an event with a bubbling surrogate - // (focus or blur), assume that the surrogate already propagated from triggering the - // native event and prevent that from happening again here. - // This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the - // bubbling surrogate propagates *after* the non-bubbling base), but that seems - // less bad than duplication. - } else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) { - event.stopPropagation(); - } - - // If this is a native event triggered above, everything is now in order - // Fire an inner synthetic event with the original arguments - } else if ( saved.length ) { - - // ...and capture the result - dataPriv.set( this, type, { - value: jQuery.event.trigger( - - // Support: IE <=9 - 11+ - // Extend with the prototype to reset the above stopImmediatePropagation() - jQuery.extend( saved[ 0 ], jQuery.Event.prototype ), - saved.slice( 1 ), - this - ) - } ); - - // Abort handling of the native event - event.stopImmediatePropagation(); - } - } - } ); -} - jQuery.removeEvent = function( elem, type, handle ) { // This "if" is needed for plain objects @@ -5551,7 +5421,7 @@ jQuery.Event = function( src, props ) { } // Create a timestamp if incoming event doesn't have one - this.timeStamp = src && src.timeStamp || Date.now(); + this.timeStamp = src && src.timeStamp || jQuery.now(); // Mark it as fixed this[ jQuery.expando ] = true; @@ -5612,7 +5482,6 @@ jQuery.each( { shiftKey: true, view: true, "char": true, - code: true, charCode: true, key: true, keyCode: true, @@ -5659,33 +5528,6 @@ jQuery.each( { } }, jQuery.event.addProp ); -jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) { - jQuery.event.special[ type ] = { - - // Utilize native event if possible so blur/focus sequence is correct - setup: function() { - - // Claim the first handler - // dataPriv.set( this, "focus", ... ) - // dataPriv.set( this, "blur", ... ) - leverageNative( this, type, expectSync ); - - // Return false to allow normal processing in the caller - return false; - }, - trigger: function() { - - // Force setup before trigger - leverageNative( this, type ); - - // Return non-false to allow normal event-path propagation - return true; - }, - - delegateType: delegateType - }; -} ); - // Create mouseenter/leave events using mouseover/out and event-time checks // so that event delegation works in jQuery. // Do the same for pointerenter/pointerleave and pointerover/pointerout @@ -5778,13 +5620,14 @@ var /* eslint-enable */ - // Support: IE <=10 - 11, Edge 12 - 13 only + // Support: IE <=10 - 11, Edge 12 - 13 // In IE/Edge using regex groups here causes severe slowdowns. // See https://connect.microsoft.com/IE/feedback/details/1736512/ rnoInnerhtml = /\s*$/g; // Prefer a tbody over its parent table for containing new rows @@ -5792,7 +5635,7 @@ function manipulationTarget( elem, content ) { if ( nodeName( elem, "table" ) && nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) { - return jQuery( elem ).children( "tbody" )[ 0 ] || elem; + return jQuery( ">tbody", elem )[ 0 ] || elem; } return elem; @@ -5804,8 +5647,10 @@ function disableScript( elem ) { return elem; } function restoreScript( elem ) { - if ( ( elem.type || "" ).slice( 0, 5 ) === "true/" ) { - elem.type = elem.type.slice( 5 ); + var match = rscriptTypeMasked.exec( elem.type ); + + if ( match ) { + elem.type = match[ 1 ]; } else { elem.removeAttribute( "type" ); } @@ -5871,15 +5716,15 @@ function domManip( collection, args, callback, ignored ) { l = collection.length, iNoClone = l - 1, value = args[ 0 ], - valueIsFunction = isFunction( value ); + isFunction = jQuery.isFunction( value ); // We can't cloneNode fragments that contain checked, in WebKit - if ( valueIsFunction || + if ( isFunction || ( l > 1 && typeof value === "string" && !support.checkClone && rchecked.test( value ) ) ) { return collection.each( function( index ) { var self = collection.eq( index ); - if ( valueIsFunction ) { + if ( isFunction ) { args[ 0 ] = value.call( this, index, self.html() ); } domManip( self, args, callback, ignored ); @@ -5933,16 +5778,14 @@ function domManip( collection, args, callback, ignored ) { !dataPriv.access( node, "globalEval" ) && jQuery.contains( doc, node ) ) { - if ( node.src && ( node.type || "" ).toLowerCase() !== "module" ) { + if ( node.src ) { // Optional AJAX dependency, but won't run scripts if not present - if ( jQuery._evalUrl && !node.noModule ) { - jQuery._evalUrl( node.src, { - nonce: node.nonce || node.getAttribute( "nonce" ) - } ); + if ( jQuery._evalUrl ) { + jQuery._evalUrl( node.src ); } } else { - DOMEval( node.textContent.replace( rcleanScript, "" ), node, doc ); + DOMEval( node.textContent.replace( rcleanScript, "" ), doc ); } } } @@ -5964,7 +5807,7 @@ function remove( elem, selector, keepData ) { } if ( node.parentNode ) { - if ( keepData && isAttached( node ) ) { + if ( keepData && jQuery.contains( node.ownerDocument, node ) ) { setGlobalEval( getAll( node, "script" ) ); } node.parentNode.removeChild( node ); @@ -5982,7 +5825,7 @@ jQuery.extend( { clone: function( elem, dataAndEvents, deepDataAndEvents ) { var i, l, srcElements, destElements, clone = elem.cloneNode( true ), - inPage = isAttached( elem ); + inPage = jQuery.contains( elem.ownerDocument, elem ); // Fix IE cloning issues if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && @@ -6222,6 +6065,8 @@ jQuery.each( { return this.pushStack( ret ); }; } ); +var rmargin = ( /^margin/ ); + var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" ); var getStyles = function( elem ) { @@ -6238,8 +6083,6 @@ var getStyles = function( elem ) { return view.getComputedStyle( elem ); }; -var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); - ( function() { @@ -6253,35 +6096,25 @@ var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); return; } - container.style.cssText = "position:absolute;left:-11111px;width:60px;" + - "margin-top:1px;padding:0;border:0"; div.style.cssText = - "position:relative;display:block;box-sizing:border-box;overflow:scroll;" + + "box-sizing:border-box;" + + "position:relative;display:block;" + "margin:auto;border:1px;padding:1px;" + - "width:60%;top:1%"; - documentElement.appendChild( container ).appendChild( div ); + "top:1%;width:50%"; + div.innerHTML = ""; + documentElement.appendChild( container ); var divStyle = window.getComputedStyle( div ); pixelPositionVal = divStyle.top !== "1%"; // Support: Android 4.0 - 4.3 only, Firefox <=3 - 44 - reliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12; + reliableMarginLeftVal = divStyle.marginLeft === "2px"; + boxSizingReliableVal = divStyle.width === "4px"; - // Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3 + // Support: Android 4.0 - 4.3 only // Some styles come back with percentage values, even though they shouldn't - div.style.right = "60%"; - pixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36; - - // Support: IE 9 - 11 only - // Detect misreporting of content dimensions for box-sizing:border-box elements - boxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36; - - // Support: IE 9 only - // Detect overflow:scroll screwiness (gh-3699) - // Support: Chrome <=64 - // Don't get tricked when zoom affects offsetWidth (gh-4029) - div.style.position = "absolute"; - scrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12; + div.style.marginRight = "50%"; + pixelMarginRightVal = divStyle.marginRight === "4px"; documentElement.removeChild( container ); @@ -6290,12 +6123,7 @@ var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); div = null; } - function roundPixelMeasures( measure ) { - return Math.round( parseFloat( measure ) ); - } - - var pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal, - reliableMarginLeftVal, + var pixelPositionVal, boxSizingReliableVal, pixelMarginRightVal, reliableMarginLeftVal, container = document.createElement( "div" ), div = document.createElement( "div" ); @@ -6310,26 +6138,26 @@ var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); div.cloneNode( true ).style.backgroundClip = ""; support.clearCloneStyle = div.style.backgroundClip === "content-box"; + container.style.cssText = "border:0;width:8px;height:0;top:0;left:-9999px;" + + "padding:0;margin-top:1px;position:absolute"; + container.appendChild( div ); + jQuery.extend( support, { - boxSizingReliable: function() { + pixelPosition: function() { computeStyleTests(); - return boxSizingReliableVal; + return pixelPositionVal; }, - pixelBoxStyles: function() { + boxSizingReliable: function() { computeStyleTests(); - return pixelBoxStylesVal; + return boxSizingReliableVal; }, - pixelPosition: function() { + pixelMarginRight: function() { computeStyleTests(); - return pixelPositionVal; + return pixelMarginRightVal; }, reliableMarginLeft: function() { computeStyleTests(); return reliableMarginLeftVal; - }, - scrollboxSize: function() { - computeStyleTests(); - return scrollboxSizeVal; } } ); } )(); @@ -6352,7 +6180,7 @@ function curCSS( elem, name, computed ) { if ( computed ) { ret = computed.getPropertyValue( name ) || computed[ name ]; - if ( ret === "" && !isAttached( elem ) ) { + if ( ret === "" && !jQuery.contains( elem.ownerDocument, elem ) ) { ret = jQuery.style( elem, name ); } @@ -6361,7 +6189,7 @@ function curCSS( elem, name, computed ) { // but width seems to be reliably pixels. // This is against the CSSOM draft spec: // https://drafts.csswg.org/cssom/#resolved-values - if ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) { + if ( !support.pixelMarginRight() && rnumnonpx.test( ret ) && rmargin.test( name ) ) { // Remember the original values width = style.width; @@ -6408,13 +6236,30 @@ function addGetHookIf( conditionFn, hookFn ) { } -var cssPrefixes = [ "Webkit", "Moz", "ms" ], - emptyStyle = document.createElement( "div" ).style, - vendorProps = {}; +var -// Return a vendor-prefixed property or undefined + // Swappable if display is none or starts with table + // except "table", "table-cell", or "table-caption" + // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display + rdisplayswap = /^(none|table(?!-c[ea]).+)/, + rcustomProp = /^--/, + cssShow = { position: "absolute", visibility: "hidden", display: "block" }, + cssNormalTransform = { + letterSpacing: "0", + fontWeight: "400" + }, + + cssPrefixes = [ "Webkit", "Moz", "ms" ], + emptyStyle = document.createElement( "div" ).style; + +// Return a css property mapped to a potentially vendor prefixed property function vendorPropName( name ) { + // Shortcut for names that are not vendor prefixed + if ( name in emptyStyle ) { + return name; + } + // Check for vendor prefixed names var capName = name[ 0 ].toUpperCase() + name.slice( 1 ), i = cssPrefixes.length; @@ -6427,33 +6272,16 @@ function vendorPropName( name ) { } } -// Return a potentially-mapped jQuery.cssProps or vendor prefixed property +// Return a property mapped along what jQuery.cssProps suggests or to +// a vendor prefixed property. function finalPropName( name ) { - var final = jQuery.cssProps[ name ] || vendorProps[ name ]; - - if ( final ) { - return final; - } - if ( name in emptyStyle ) { - return name; + var ret = jQuery.cssProps[ name ]; + if ( !ret ) { + ret = jQuery.cssProps[ name ] = vendorPropName( name ) || name; } - return vendorProps[ name ] = vendorPropName( name ) || name; + return ret; } - -var - - // Swappable if display is none or starts with table - // except "table", "table-cell", or "table-caption" - // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display - rdisplayswap = /^(none|table(?!-c[ea]).+)/, - rcustomProp = /^--/, - cssShow = { position: "absolute", visibility: "hidden", display: "block" }, - cssNormalTransform = { - letterSpacing: "0", - fontWeight: "400" - }; - function setPositiveNumber( elem, value, subtract ) { // Any relative (+/-) values have already been @@ -6466,137 +6294,87 @@ function setPositiveNumber( elem, value, subtract ) { value; } -function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) { - var i = dimension === "width" ? 1 : 0, - extra = 0, - delta = 0; +function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) { + var i, + val = 0; - // Adjustment may not be necessary - if ( box === ( isBorderBox ? "border" : "content" ) ) { - return 0; + // If we already have the right measurement, avoid augmentation + if ( extra === ( isBorderBox ? "border" : "content" ) ) { + i = 4; + + // Otherwise initialize for horizontal or vertical properties + } else { + i = name === "width" ? 1 : 0; } for ( ; i < 4; i += 2 ) { - // Both box models exclude margin - if ( box === "margin" ) { - delta += jQuery.css( elem, box + cssExpand[ i ], true, styles ); + // Both box models exclude margin, so add it if we want it + if ( extra === "margin" ) { + val += jQuery.css( elem, extra + cssExpand[ i ], true, styles ); } - // If we get here with a content-box, we're seeking "padding" or "border" or "margin" - if ( !isBorderBox ) { - - // Add padding - delta += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); - - // For "border" or "margin", add border - if ( box !== "padding" ) { - delta += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + if ( isBorderBox ) { - // But still keep track of it otherwise - } else { - extra += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + // border-box includes padding, so remove it if we want content + if ( extra === "content" ) { + val -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); } - // If we get here with a border-box (content + padding + border), we're seeking "content" or - // "padding" or "margin" + // At this point, extra isn't border nor margin, so remove border + if ( extra !== "margin" ) { + val -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + } } else { - // For "content", subtract padding - if ( box === "content" ) { - delta -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); - } + // At this point, extra isn't content, so add padding + val += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); - // For "content" or "padding", subtract border - if ( box !== "margin" ) { - delta -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + // At this point, extra isn't content nor padding, so add border + if ( extra !== "padding" ) { + val += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); } } } - // Account for positive content-box scroll gutter when requested by providing computedVal - if ( !isBorderBox && computedVal >= 0 ) { - - // offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border - // Assuming integer scroll gutter, subtract the rest and round down - delta += Math.max( 0, Math.ceil( - elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - - computedVal - - delta - - extra - - 0.5 - - // If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter - // Use an explicit zero to avoid NaN (gh-3964) - ) ) || 0; - } - - return delta; + return val; } -function getWidthOrHeight( elem, dimension, extra ) { +function getWidthOrHeight( elem, name, extra ) { // Start with computed style - var styles = getStyles( elem ), - - // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322). - // Fake content-box until we know it's needed to know the true value. - boxSizingNeeded = !support.boxSizingReliable() || extra, - isBorderBox = boxSizingNeeded && - jQuery.css( elem, "boxSizing", false, styles ) === "border-box", - valueIsBorderBox = isBorderBox, - - val = curCSS( elem, dimension, styles ), - offsetProp = "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ); + var valueIsBorderBox, + styles = getStyles( elem ), + val = curCSS( elem, name, styles ), + isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box"; - // Support: Firefox <=54 - // Return a confounding non-pixel value or feign ignorance, as appropriate. + // Computed unit is not pixels. Stop here and return. if ( rnumnonpx.test( val ) ) { - if ( !extra ) { - return val; - } - val = "auto"; + return val; } + // Check for style in case a browser which returns unreliable values + // for getComputedStyle silently falls back to the reliable elem.style + valueIsBorderBox = isBorderBox && + ( support.boxSizingReliable() || val === elem.style[ name ] ); - // Fall back to offsetWidth/offsetHeight when value is "auto" + // Fall back to offsetWidth/Height when value is "auto" // This happens for inline elements with no explicit setting (gh-3571) - // Support: Android <=4.1 - 4.3 only - // Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602) - // Support: IE 9-11 only - // Also use offsetWidth/offsetHeight for when box sizing is unreliable - // We use getClientRects() to check for hidden/disconnected. - // In those cases, the computed value can be trusted to be border-box - if ( ( !support.boxSizingReliable() && isBorderBox || - val === "auto" || - !parseFloat( val ) && jQuery.css( elem, "display", false, styles ) === "inline" ) && - elem.getClientRects().length ) { - - isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box"; - - // Where available, offsetWidth/offsetHeight approximate border box dimensions. - // Where not available (e.g., SVG), assume unreliable box-sizing and interpret the - // retrieved value as a content box dimension. - valueIsBorderBox = offsetProp in elem; - if ( valueIsBorderBox ) { - val = elem[ offsetProp ]; - } + if ( val === "auto" ) { + val = elem[ "offset" + name[ 0 ].toUpperCase() + name.slice( 1 ) ]; } - // Normalize "" and auto + // Normalize "", auto, and prepare for extra val = parseFloat( val ) || 0; - // Adjust for the element's box model + // Use the active box-sizing model to add/subtract irrelevant styles return ( val + - boxModelAdjustment( + augmentWidthOrHeight( elem, - dimension, + name, extra || ( isBorderBox ? "border" : "content" ), valueIsBorderBox, - styles, - - // Provide the current computed size to request scroll gutter calculation (gh-3589) - val + styles ) ) + "px"; } @@ -6626,13 +6404,6 @@ jQuery.extend( { "flexGrow": true, "flexShrink": true, "fontWeight": true, - "gridArea": true, - "gridColumn": true, - "gridColumnEnd": true, - "gridColumnStart": true, - "gridRow": true, - "gridRowEnd": true, - "gridRowStart": true, "lineHeight": true, "opacity": true, "order": true, @@ -6644,7 +6415,9 @@ jQuery.extend( { // Add in properties whose names you wish to fix before // setting or getting the value - cssProps: {}, + cssProps: { + "float": "cssFloat" + }, // Get and set the style property on a DOM Node style: function( elem, name, value, extra ) { @@ -6656,7 +6429,7 @@ jQuery.extend( { // Make sure that we're working with the right name var ret, type, hooks, - origName = camelCase( name ), + origName = jQuery.camelCase( name ), isCustomProp = rcustomProp.test( name ), style = elem.style; @@ -6688,9 +6461,7 @@ jQuery.extend( { } // If a number was passed in, add the unit (except for certain CSS properties) - // The isCustomProp check can be removed in jQuery 4.0 when we only auto-append - // "px" to a few hardcoded values. - if ( type === "number" && !isCustomProp ) { + if ( type === "number" ) { value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" ); } @@ -6726,7 +6497,7 @@ jQuery.extend( { css: function( elem, name, extra, styles ) { var val, num, hooks, - origName = camelCase( name ), + origName = jQuery.camelCase( name ), isCustomProp = rcustomProp.test( name ); // Make sure that we're working with the right name. We don't @@ -6764,8 +6535,8 @@ jQuery.extend( { } } ); -jQuery.each( [ "height", "width" ], function( i, dimension ) { - jQuery.cssHooks[ dimension ] = { +jQuery.each( [ "height", "width" ], function( i, name ) { + jQuery.cssHooks[ name ] = { get: function( elem, computed, extra ) { if ( computed ) { @@ -6781,52 +6552,29 @@ jQuery.each( [ "height", "width" ], function( i, dimension ) { // in IE throws an error. ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ? swap( elem, cssShow, function() { - return getWidthOrHeight( elem, dimension, extra ); + return getWidthOrHeight( elem, name, extra ); } ) : - getWidthOrHeight( elem, dimension, extra ); + getWidthOrHeight( elem, name, extra ); } }, set: function( elem, value, extra ) { var matches, - styles = getStyles( elem ), - - // Only read styles.position if the test has a chance to fail - // to avoid forcing a reflow. - scrollboxSizeBuggy = !support.scrollboxSize() && - styles.position === "absolute", - - // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991) - boxSizingNeeded = scrollboxSizeBuggy || extra, - isBorderBox = boxSizingNeeded && + styles = extra && getStyles( elem ), + subtract = extra && augmentWidthOrHeight( + elem, + name, + extra, jQuery.css( elem, "boxSizing", false, styles ) === "border-box", - subtract = extra ? - boxModelAdjustment( - elem, - dimension, - extra, - isBorderBox, - styles - ) : - 0; - - // Account for unreliable border-box dimensions by comparing offset* to computed and - // faking a content-box to get border and padding (gh-3699) - if ( isBorderBox && scrollboxSizeBuggy ) { - subtract -= Math.ceil( - elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - - parseFloat( styles[ dimension ] ) - - boxModelAdjustment( elem, dimension, "border", false, styles ) - - 0.5 + styles ); - } // Convert to pixels if value adjustment is needed if ( subtract && ( matches = rcssNum.exec( value ) ) && ( matches[ 3 ] || "px" ) !== "px" ) { - elem.style[ dimension ] = value; - value = jQuery.css( elem, dimension ); + elem.style[ name ] = value; + value = jQuery.css( elem, name ); } return setPositiveNumber( elem, value, subtract ); @@ -6870,7 +6618,7 @@ jQuery.each( { } }; - if ( prefix !== "margin" ) { + if ( !rmargin.test( prefix ) ) { jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber; } } ); @@ -6980,9 +6728,9 @@ Tween.propHooks = { // Use .style if available and use plain properties where available. if ( jQuery.fx.step[ tween.prop ] ) { jQuery.fx.step[ tween.prop ]( tween ); - } else if ( tween.elem.nodeType === 1 && ( - jQuery.cssHooks[ tween.prop ] || - tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) { + } else if ( tween.elem.nodeType === 1 && + ( tween.elem.style[ jQuery.cssProps[ tween.prop ] ] != null || + jQuery.cssHooks[ tween.prop ] ) ) { jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); } else { tween.elem[ tween.prop ] = tween.now; @@ -7041,7 +6789,7 @@ function createFxNow() { window.setTimeout( function() { fxNow = undefined; } ); - return ( fxNow = Date.now() ); + return ( fxNow = jQuery.now() ); } // Generate parameters to create a standard animation @@ -7145,10 +6893,9 @@ function defaultPrefilter( elem, props, opts ) { // Restrict "overflow" and "display" styles during box animations if ( isBox && elem.nodeType === 1 ) { - // Support: IE <=9 - 11, Edge 12 - 15 + // Support: IE <=9 - 11, Edge 12 - 13 // Record all 3 overflow attributes because IE does not infer the shorthand - // from identically-valued overflowX and overflowY and Edge just mirrors - // the overflowX value there. + // from identically-valued overflowX and overflowY opts.overflow = [ style.overflow, style.overflowX, style.overflowY ]; // Identify a display type, preferring old show/hide data over the CSS cascade @@ -7256,7 +7003,7 @@ function propFilter( props, specialEasing ) { // camelCase, specialEasing and expand cssHook pass for ( index in props ) { - name = camelCase( index ); + name = jQuery.camelCase( index ); easing = specialEasing[ name ]; value = props[ index ]; if ( Array.isArray( value ) ) { @@ -7381,9 +7128,9 @@ function Animation( elem, properties, options ) { for ( ; index < length; index++ ) { result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts ); if ( result ) { - if ( isFunction( result.stop ) ) { + if ( jQuery.isFunction( result.stop ) ) { jQuery._queueHooks( animation.elem, animation.opts.queue ).stop = - result.stop.bind( result ); + jQuery.proxy( result.stop, result ); } return result; } @@ -7391,7 +7138,7 @@ function Animation( elem, properties, options ) { jQuery.map( props, createTween, animation ); - if ( isFunction( animation.opts.start ) ) { + if ( jQuery.isFunction( animation.opts.start ) ) { animation.opts.start.call( elem, animation ); } @@ -7424,7 +7171,7 @@ jQuery.Animation = jQuery.extend( Animation, { }, tweener: function( props, callback ) { - if ( isFunction( props ) ) { + if ( jQuery.isFunction( props ) ) { callback = props; props = [ "*" ]; } else { @@ -7456,9 +7203,9 @@ jQuery.Animation = jQuery.extend( Animation, { jQuery.speed = function( speed, easing, fn ) { var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : { complete: fn || !fn && easing || - isFunction( speed ) && speed, + jQuery.isFunction( speed ) && speed, duration: speed, - easing: fn && easing || easing && !isFunction( easing ) && easing + easing: fn && easing || easing && !jQuery.isFunction( easing ) && easing }; // Go to the end state if fx are off @@ -7485,7 +7232,7 @@ jQuery.speed = function( speed, easing, fn ) { opt.old = opt.complete; opt.complete = function() { - if ( isFunction( opt.old ) ) { + if ( jQuery.isFunction( opt.old ) ) { opt.old.call( this ); } @@ -7649,7 +7396,7 @@ jQuery.fx.tick = function() { i = 0, timers = jQuery.timers; - fxNow = Date.now(); + fxNow = jQuery.now(); for ( ; i < timers.length; i++ ) { timer = timers[ i ]; @@ -8002,7 +7749,7 @@ jQuery.each( [ // Strip and collapse whitespace according to HTML spec - // https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace + // https://html.spec.whatwg.org/multipage/infrastructure.html#strip-and-collapse-whitespace function stripAndCollapse( value ) { var tokens = value.match( rnothtmlwhite ) || []; return tokens.join( " " ); @@ -8013,30 +7760,20 @@ function getClass( elem ) { return elem.getAttribute && elem.getAttribute( "class" ) || ""; } -function classesToArray( value ) { - if ( Array.isArray( value ) ) { - return value; - } - if ( typeof value === "string" ) { - return value.match( rnothtmlwhite ) || []; - } - return []; -} - jQuery.fn.extend( { addClass: function( value ) { var classes, elem, cur, curValue, clazz, j, finalValue, i = 0; - if ( isFunction( value ) ) { + if ( jQuery.isFunction( value ) ) { return this.each( function( j ) { jQuery( this ).addClass( value.call( this, j, getClass( this ) ) ); } ); } - classes = classesToArray( value ); + if ( typeof value === "string" && value ) { + classes = value.match( rnothtmlwhite ) || []; - if ( classes.length ) { while ( ( elem = this[ i++ ] ) ) { curValue = getClass( elem ); cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); @@ -8065,7 +7802,7 @@ jQuery.fn.extend( { var classes, elem, cur, curValue, clazz, j, finalValue, i = 0; - if ( isFunction( value ) ) { + if ( jQuery.isFunction( value ) ) { return this.each( function( j ) { jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) ); } ); @@ -8075,9 +7812,9 @@ jQuery.fn.extend( { return this.attr( "class", "" ); } - classes = classesToArray( value ); + if ( typeof value === "string" && value ) { + classes = value.match( rnothtmlwhite ) || []; - if ( classes.length ) { while ( ( elem = this[ i++ ] ) ) { curValue = getClass( elem ); @@ -8107,14 +7844,13 @@ jQuery.fn.extend( { }, toggleClass: function( value, stateVal ) { - var type = typeof value, - isValidValue = type === "string" || Array.isArray( value ); + var type = typeof value; - if ( typeof stateVal === "boolean" && isValidValue ) { + if ( typeof stateVal === "boolean" && type === "string" ) { return stateVal ? this.addClass( value ) : this.removeClass( value ); } - if ( isFunction( value ) ) { + if ( jQuery.isFunction( value ) ) { return this.each( function( i ) { jQuery( this ).toggleClass( value.call( this, i, getClass( this ), stateVal ), @@ -8126,12 +7862,12 @@ jQuery.fn.extend( { return this.each( function() { var className, i, self, classNames; - if ( isValidValue ) { + if ( type === "string" ) { // Toggle individual class names i = 0; self = jQuery( this ); - classNames = classesToArray( value ); + classNames = value.match( rnothtmlwhite ) || []; while ( ( className = classNames[ i++ ] ) ) { @@ -8190,7 +7926,7 @@ var rreturn = /\r/g; jQuery.fn.extend( { val: function( value ) { - var hooks, ret, valueIsFunction, + var hooks, ret, isFunction, elem = this[ 0 ]; if ( !arguments.length ) { @@ -8219,7 +7955,7 @@ jQuery.fn.extend( { return; } - valueIsFunction = isFunction( value ); + isFunction = jQuery.isFunction( value ); return this.each( function( i ) { var val; @@ -8228,7 +7964,7 @@ jQuery.fn.extend( { return; } - if ( valueIsFunction ) { + if ( isFunction ) { val = value.call( this, i, jQuery( this ).val() ); } else { val = value; @@ -8370,24 +8106,18 @@ jQuery.each( [ "radio", "checkbox" ], function() { // Return jQuery for attributes-only inclusion -support.focusin = "onfocusin" in window; - - -var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, - stopPropagationCallback = function( e ) { - e.stopPropagation(); - }; +var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/; jQuery.extend( jQuery.event, { trigger: function( event, data, elem, onlyHandlers ) { - var i, cur, tmp, bubbleType, ontype, handle, special, lastElement, + var i, cur, tmp, bubbleType, ontype, handle, special, eventPath = [ elem || document ], type = hasOwn.call( event, "type" ) ? event.type : event, namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : []; - cur = lastElement = tmp = elem = elem || document; + cur = tmp = elem = elem || document; // Don't do events on text and comment nodes if ( elem.nodeType === 3 || elem.nodeType === 8 ) { @@ -8439,7 +8169,7 @@ jQuery.extend( jQuery.event, { // Determine event propagation path in advance, per W3C events spec (#9951) // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) - if ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) { + if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) { bubbleType = special.delegateType || type; if ( !rfocusMorph.test( bubbleType + type ) ) { @@ -8459,7 +8189,7 @@ jQuery.extend( jQuery.event, { // Fire handlers on the event path i = 0; while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) { - lastElement = cur; + event.type = i > 1 ? bubbleType : special.bindType || type; @@ -8491,7 +8221,7 @@ jQuery.extend( jQuery.event, { // Call a native DOM method on the target with the same name as the event. // Don't do default actions on window, that's where global variables be (#6170) - if ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) { + if ( ontype && jQuery.isFunction( elem[ type ] ) && !jQuery.isWindow( elem ) ) { // Don't re-trigger an onFOO event when we call its FOO() method tmp = elem[ ontype ]; @@ -8502,17 +8232,7 @@ jQuery.extend( jQuery.event, { // Prevent re-triggering of the same event, since we already bubbled it above jQuery.event.triggered = type; - - if ( event.isPropagationStopped() ) { - lastElement.addEventListener( type, stopPropagationCallback ); - } - elem[ type ](); - - if ( event.isPropagationStopped() ) { - lastElement.removeEventListener( type, stopPropagationCallback ); - } - jQuery.event.triggered = undefined; if ( tmp ) { @@ -8558,6 +8278,31 @@ jQuery.fn.extend( { } ); +jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " + + "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " + + "change select submit keydown keypress keyup contextmenu" ).split( " " ), + function( i, name ) { + + // Handle event binding + jQuery.fn[ name ] = function( data, fn ) { + return arguments.length > 0 ? + this.on( name, null, data, fn ) : + this.trigger( name ); + }; +} ); + +jQuery.fn.extend( { + hover: function( fnOver, fnOut ) { + return this.mouseenter( fnOver ).mouseleave( fnOut || fnOver ); + } +} ); + + + + +support.focusin = "onfocusin" in window; + + // Support: Firefox <=44 // Firefox doesn't have focus(in | out) events // Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787 @@ -8601,7 +8346,7 @@ if ( !support.focusin ) { } var location = window.location; -var nonce = Date.now(); +var nonce = jQuery.now(); var rquery = ( /\?/ ); @@ -8659,7 +8404,7 @@ function buildParams( prefix, obj, traditional, add ) { } } ); - } else if ( !traditional && toType( obj ) === "object" ) { + } else if ( !traditional && jQuery.type( obj ) === "object" ) { // Serialize object item. for ( name in obj ) { @@ -8681,7 +8426,7 @@ jQuery.param = function( a, traditional ) { add = function( key, valueOrFunction ) { // If value is a function, invoke it and use its return value - var value = isFunction( valueOrFunction ) ? + var value = jQuery.isFunction( valueOrFunction ) ? valueOrFunction() : valueOrFunction; @@ -8689,10 +8434,6 @@ jQuery.param = function( a, traditional ) { encodeURIComponent( value == null ? "" : value ); }; - if ( a == null ) { - return ""; - } - // If an array was passed in, assume that it is an array of form elements. if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) { @@ -8803,7 +8544,7 @@ function addToPrefiltersOrTransports( structure ) { i = 0, dataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || []; - if ( isFunction( func ) ) { + if ( jQuery.isFunction( func ) ) { // For each dataType in the dataTypeExpression while ( ( dataType = dataTypes[ i++ ] ) ) { @@ -9195,14 +8936,12 @@ jQuery.extend( { if ( !responseHeaders ) { responseHeaders = {}; while ( ( match = rheaders.exec( responseHeadersString ) ) ) { - responseHeaders[ match[ 1 ].toLowerCase() + " " ] = - ( responseHeaders[ match[ 1 ].toLowerCase() + " " ] || [] ) - .concat( match[ 2 ] ); + responseHeaders[ match[ 1 ].toLowerCase() ] = match[ 2 ]; } } - match = responseHeaders[ key.toLowerCase() + " " ]; + match = responseHeaders[ key.toLowerCase() ]; } - return match == null ? null : match.join( ", " ); + return match == null ? null : match; }, // Raw string @@ -9277,7 +9016,7 @@ jQuery.extend( { if ( s.crossDomain == null ) { urlAnchor = document.createElement( "a" ); - // Support: IE <=8 - 11, Edge 12 - 15 + // Support: IE <=8 - 11, Edge 12 - 13 // IE throws exception on accessing the href property if url is malformed, // e.g. http://example.com:80x/ try { @@ -9335,8 +9074,8 @@ jQuery.extend( { // Remember the hash so we can put it back uncached = s.url.slice( cacheURL.length ); - // If data is available and should be processed, append data to url - if ( s.data && ( s.processData || typeof s.data === "string" ) ) { + // If data is available, append data to url + if ( s.data ) { cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data; // #9682: remove data so that it's not used in an eventual retry @@ -9573,7 +9312,7 @@ jQuery.each( [ "get", "post" ], function( i, method ) { jQuery[ method ] = function( url, data, callback, type ) { // Shift arguments if data argument was omitted - if ( isFunction( data ) ) { + if ( jQuery.isFunction( data ) ) { type = type || callback; callback = data; data = undefined; @@ -9591,7 +9330,7 @@ jQuery.each( [ "get", "post" ], function( i, method ) { } ); -jQuery._evalUrl = function( url, options ) { +jQuery._evalUrl = function( url ) { return jQuery.ajax( { url: url, @@ -9601,16 +9340,7 @@ jQuery._evalUrl = function( url, options ) { cache: true, async: false, global: false, - - // Only evaluate the response if it is successful (gh-4126) - // dataFilter is not invoked for failure responses, so using it instead - // of the default converter is kludgy but it works. - converters: { - "text script": function() {} - }, - dataFilter: function( response ) { - jQuery.globalEval( response, options ); - } + "throws": true } ); }; @@ -9620,7 +9350,7 @@ jQuery.fn.extend( { var wrap; if ( this[ 0 ] ) { - if ( isFunction( html ) ) { + if ( jQuery.isFunction( html ) ) { html = html.call( this[ 0 ] ); } @@ -9646,7 +9376,7 @@ jQuery.fn.extend( { }, wrapInner: function( html ) { - if ( isFunction( html ) ) { + if ( jQuery.isFunction( html ) ) { return this.each( function( i ) { jQuery( this ).wrapInner( html.call( this, i ) ); } ); @@ -9666,10 +9396,10 @@ jQuery.fn.extend( { }, wrap: function( html ) { - var htmlIsFunction = isFunction( html ); + var isFunction = jQuery.isFunction( html ); return this.each( function( i ) { - jQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html ); + jQuery( this ).wrapAll( isFunction ? html.call( this, i ) : html ); } ); }, @@ -9761,8 +9491,7 @@ jQuery.ajaxTransport( function( options ) { return function() { if ( callback ) { callback = errorCallback = xhr.onload = - xhr.onerror = xhr.onabort = xhr.ontimeout = - xhr.onreadystatechange = null; + xhr.onerror = xhr.onabort = xhr.onreadystatechange = null; if ( type === "abort" ) { xhr.abort(); @@ -9802,7 +9531,7 @@ jQuery.ajaxTransport( function( options ) { // Listen to events xhr.onload = callback(); - errorCallback = xhr.onerror = xhr.ontimeout = callback( "error" ); + errorCallback = xhr.onerror = callback( "error" ); // Support: IE 9 only // Use onreadystatechange to replace onabort @@ -9893,21 +9622,24 @@ jQuery.ajaxPrefilter( "script", function( s ) { // Bind script tag hack transport jQuery.ajaxTransport( "script", function( s ) { - // This transport only deals with cross domain or forced-by-attrs requests - if ( s.crossDomain || s.scriptAttrs ) { + // This transport only deals with cross domain requests + if ( s.crossDomain ) { var script, callback; return { send: function( _, complete ) { - script = jQuery( " + + + + + + + + + + + + + + + + + + + +
+ + + + +
+
+
+
+ + + +

Demo - Try it out!

+

The highlighting here is performed in-browser using + a WebAssembly translation of Pygments, courtesy of + Pyodide.

+

Your content is neither sent over the web nor stored anywhere.

+ +
+

Enter code and select a language

+
+

+   +    + ·   +  

+

  +   or enter code below:

+

+

+ +    

+
+
+

+

Loading Python...

+
+
+ +
+ + + +
+
+
+
+
+ +
+ + + \ No newline at end of file diff --git a/doc/_build/html/docs/api.html b/doc/_build/dirhtml/docs/api/index.html similarity index 66% rename from doc/_build/html/docs/api.html rename to doc/_build/dirhtml/docs/api/index.html index 5797458..c263815 100644 --- a/doc/_build/html/docs/api.html +++ b/doc/_build/dirhtml/docs/api/index.html @@ -5,18 +5,18 @@ The full Pygments API — Pygments - - - - - - - - - - - - + + + + + + + + + + + + @@ -58,23 +58,25 @@