I found htmldjango
filetype detection regex is only match small number of Django tags which results in high false negative. This PR adds the rest of the tags based on https://docs.djangoproject.com/en/5.0/ref/templates/builtins/#built-in-tag-reference.
In addition, the supplied lines for matching is too few and might result in high false negative too. Increasing it to 40 lines should reduce the false negative. (I picked 40 as I think it is close to the most common height of terminal in a 1080p screen.)
Let me know if you have any suggestion :D
Related PR on Neovim: neovim/neovim#29377
https://github.com/vim/vim/pull/15037
(1 file)
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.
getzola.html
(I just put random valid Django tags in line 27-33)
<!DOCTYPE html> <html lang="en-gb"> <head> <meta charset="UTF-8" /> <meta name="apple-mobile-web-app-capable" content="yes" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <meta name="description" content="Everything you need to make a static site engine in one binary." /> <meta name="author" content="Vincent Prouillet" /> <title>Zola</title> <link rel="stylesheet" href="https://www.getzola.org/site.css" /> <link rel="icon" href="https://www.getzola.org/favicon.ico" /> </head> <body> <header> <a class="header__logo white" href="https://www.getzola.org/">Zola</a> <nav> <ul> <li> <a class="white" href="https://www.getzola.org/documentation/" class="nav-link">Docs</a> </li> <li> <a class="white" href="https://www.getzola.org/themes/" class="nav-link">Themes</a> {% for letter in name %} {% if loop.index % 2 == 0 %} <span style="color: red">{{ letter }}</span> {% else %} <span style="color: blue">{{ letter }}</span> {% endif %} {% endfor %} </li> <li> <a class="white" href="https://zola.discourse.group/" class="nav-link">Forum</a> </li> <li> <a class="white" href="https://github.com/getzola/zola" class="nav-link">GitHub</a> </li> </ul> <div class="search-container"> <input id="search" type="search" placeholder="🔎 Search the docs" /> <div class="search-results"> <div class="search-results__items"></div> </div> </div> </nav> </header> <div class="content"> <div class="hero"> <h1>Your one-stop static site engine</h1> <p class="hero__tagline">Forget dependencies. Everything you need in one binary.</p> <a href="https://www.getzola.org/documentation/" class="button">Get started</a> </div> <div class="inverted-colours selling-points"> <div class="selling-points__content container"> <div class="selling-point"> <h2>No dependencies</h2> <p> Zola comes as a single executable with Sass compilation, syntax highlighting, table of contents and many other features that traditionally require setting up a dev environment or adding some JavaScript libraries to your site. </p> </div> <div class="selling-point"> <h2>Blazing fast</h2> <p> The average site will be generated in less than a second, including Sass compilation and syntax highlighting. </p> </div> <div class="selling-point"> <h2>Scalable</h2> <p> Zola renders your whole site as static files, making it trivial to handle any kind of traffic you will throw at it at no cost without having to worry about managing a server or a database. </p> </div> <div class="selling-point"> <h2>Easy to use</h2> <p> From the CLI to the template engine, everything is designed to be intuitive. Don't take my word for it though, look at the <a href="https://www.getzola.org/documentation/">documentation</a> and see for yourself. </p> </div> <div class="selling-point"> <h2>Flexible</h2> <p> Zola gets out of your way so you can focus on your content, be it a blog, a knowledge base, a landing page or a combination of them. </p> </div> <div class="selling-point"> <h2>Augmented Markdown</h2> <p> Zola comes with <a href="https://www.getzola.org/documentation/content/shortcodes/">shortcodes</a> and <a href="https://www.getzola.org/documentation/content/linking/">internal links</a> to make it easier to write your content. </p> </div> </div> </div> </div> <footer> ©2017-2024 — <a class="white" href="https://www.vincentprouillet.com">Vincent Prouillet</a> and <a class="white" href="https://github.com/getzola/zola/graphs/contributors">contributors</a> </footer> <script type="text/javascript" src="https://www.getzola.org/elasticlunr.min.js"></script> <script type="text/javascript" src="https://www.getzola.org/search.js"></script> </body> </html>
Benchmark - v9.1.0496
Extra options: [./getzola.html]
Measured: 1000 times
Total Average: 34.784228 msec
Total Max: 49.700000 msec
Total Min: 32.567000 msec
AVERAGE MAX MIN
-----------------------------
10.457772 17.086000 9.816000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/scripts.vim
8.263982 16.024000 7.661000: $VIMRUNTIME/defaults.vim
7.888493 14.534000 6.894000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/html.vim
6.442452 13.005000 5.972000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/filetype.vim
4.165122 6.824000 3.555000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/css.vim
2.372461 4.785000 2.058000: opening buffers
1.191531 2.253000 1.094000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/syntax.vim
1.074161 2.060000 0.985000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/synload.vim
0.959106 1.832000 0.875000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/syncolor.vim
0.814663 2.589000 0.139000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/indent/html.vim
0.798495 2.008000 0.679000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/vb.vim
0.743085 1.548000 0.680000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/colors/lists/default.vim
0.722137 1.687000 0.665000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/autoload/dist/ft.vim
0.601083 5.272000 0.448000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/xml.vim
0.590685 1.550000 0.510000: loading plugins
0.444061 1.610000 0.340000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/netrwPlugin.vim
0.409015 1.613000 0.176000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/ftplugin/html.vim
0.357351 1.357000 0.327000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/autoload/htmlcomplete.vim
0.321859 0.985000 0.157000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/gzip.vim
0.307834 1.333000 0.265000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/javascript.vim
0.290907 0.911000 0.253000: inits 1
0.261815 0.863000 0.236000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/indent/javascript.vim
0.228887 0.587000 0.202000: Termcap init
0.221801 1.247000 0.162000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/dtd.vim
0.207667 1.194000 0.187000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/autoload/dist/script.vim
0.181571 1.159000 0.157000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/logiPat.vim
0.166000 1.160000 0.137000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/zipPlugin.vim
0.161232 0.833000 0.112000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/tarPlugin.vim
0.153213 0.774000 0.138000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/matchparen.vim
0.153137 1.129000 0.112000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/vimballPlugin.vim
0.138751 0.381000 0.124000: reading viminfo
0.104928 0.282000 0.095000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/tohtml.vim
0.078912 0.260000 0.065000: Allocated generic buffers
0.062385 0.228000 0.051000: loading packages
0.058042 0.172000 0.051000: sourcing vimrc file(s)
0.057891 0.190000 0.048000: locale set
0.057653 0.265000 0.049000: init highlight
0.054203 0.144000 0.040000: parsing arguments
0.051885 4.457000 0.039000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/getscriptPlugin.vim
0.042481 0.240000 0.037000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/ftplugin.vim
0.040831 0.276000 0.017000: setting raw mode
0.031475 0.118000 0.027000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/manpager.vim
0.026592 0.156000 0.023000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/indent.vim
0.023915 0.149000 0.019000: BufEnter autocommands
0.022762 0.234000 0.020000: loading after plugins
0.019370 0.110000 0.016000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/spellfile.vim
0.011791 0.065000 0.009000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/rrhelper.vim
0.010684 0.122000 0.008000: shell init
0.007985 0.146000 0.006000: clearing screen
0.007761 0.038000 0.006000: inits 2
0.007190 0.137000 0.004000: --- VIM STARTING ---
0.003960 0.037000 0.002000: inits 3
0.003451 0.057000 0.002000: start termcap
0.002349 0.023000 0.001000: window checked
0.001440 0.012000 0.001000: editing files in windows
0.000965 0.015000 0.000000: expanding arguments
Benchmark - this PR
Extra options: [./getzola.html]
Measured: 1000 times
Total Average: 23.924577 msec
Total Max: 77.414000 msec
Total Min: 22.659000 msec
AVERAGE MAX MIN
----------------------------
8.126958 14.449000 7.601000: $VIMRUNTIME/defaults.vim
6.948326 11.118000 6.590000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/htmldjango.vim
6.658676 10.850000 6.318000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/html.vim
6.369272 10.919000 5.904000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/filetype.vim
3.726768 7.875000 3.537000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/css.vim
2.516440 56.652000 2.178000: opening buffers
1.517111 2.792000 1.413000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/indent/htmldjango.vim
1.452128 2.733000 1.357000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/indent/html.vim
1.176347 2.541000 1.086000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/syntax.vim
1.062174 2.429000 0.983000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/synload.vim
0.949410 2.270000 0.876000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/syncolor.vim
0.738344 1.875000 0.679000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/colors/lists/default.vim
0.733362 1.855000 0.682000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/vb.vim
0.717830 1.562000 0.664000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/autoload/dist/ft.vim
0.698953 5.362000 0.638000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/ftplugin/htmldjango.vim
0.607166 5.260000 0.554000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/ftplugin/html.vim
0.573874 1.383000 0.517000: loading plugins
0.419413 1.369000 0.341000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/netrwPlugin.vim
0.358076 0.958000 0.328000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/autoload/htmlcomplete.vim
0.289125 0.743000 0.155000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/gzip.vim
0.285238 0.458000 0.253000: inits 1
0.276131 0.881000 0.250000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/javascript.vim
0.261158 0.873000 0.237000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/indent/javascript.vim
0.222587 0.440000 0.200000: Termcap init
0.177072 0.598000 0.157000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/logiPat.vim
0.154263 0.763000 0.137000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/zipPlugin.vim
0.152174 0.660000 0.138000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/matchparen.vim
0.145474 0.557000 0.113000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/tarPlugin.vim
0.137828 0.408000 0.125000: reading viminfo
0.136794 0.680000 0.112000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/vimballPlugin.vim
0.119750 1.111000 0.107000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/django.vim
0.103716 0.369000 0.095000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/tohtml.vim
0.077158 0.223000 0.065000: Allocated generic buffers
0.061122 0.300000 0.051000: loading packages
0.056886 0.152000 0.050000: sourcing vimrc file(s)
0.056629 0.171000 0.049000: init highlight
0.056209 0.130000 0.047000: locale set
0.053205 0.175000 0.042000: parsing arguments
0.045615 0.295000 0.039000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/getscriptPlugin.vim
0.042225 0.211000 0.037000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/ftplugin.vim
0.038852 0.098000 0.019000: setting raw mode
0.031795 0.182000 0.028000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/manpager.vim
0.026885 0.206000 0.023000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/indent.vim
0.024276 0.130000 0.020000: BufEnter autocommands
0.022838 0.139000 0.020000: loading after plugins
0.019793 0.143000 0.017000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/syntax/xml.vim
0.018806 0.133000 0.016000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/spellfile.vim
0.011443 0.118000 0.009000: /home/mangkoran/.local/share/mise/installs/vim/9.1.0496/share/vim/vim91/plugin/rrhelper.vim
0.010383 0.068000 0.008000: shell init
0.007826 0.193000 0.006000: inits 2
0.007808 0.141000 0.006000: clearing screen
0.006664 0.050000 0.004000: --- VIM STARTING ---
0.003842 0.084000 0.002000: inits 3
0.003314 0.033000 0.002000: start termcap
0.002235 0.019000 0.001000: window checked
0.001469 0.003000 0.001000: editing files in windows
0.000934 0.003000 0.000000: expanding arguments
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.
I wonder why on the first benchmark (v9.1.0496) the scripts.vim
was executed, while on the second benchmark (this PR) it did not?
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.
thanks, let me include this.
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.