• Sign In



  • Categories

    Extension Details



    Readme

    NGINX for Nova

    Provides syntax highlighting and folding for NGINX configuration files.

    Some OpenResty (nested Lua) support has been added. Still in progress.

    NOTE
    The NGINX tree-sitter implementation is in early development.

    If you wish to contribute, you may find the source here.

    Release Notes

    Version 0.2.7

    • Additional improvements to file name / extension detection.
    • Thanks again to Toni Förster!

    Version 0.2.6

    • Improvements to file name / extension detection, thanks to Toni Förster.

      • His changes resolve activation conflicts with other Nova extensions.
    • The former approach was overly broad, as many non-NGINX files can end in “conf”.

      • Methods for external NGINX config detection will be investigated.

    Version 0.2.5

    • Added several OpenResty Lua blocks

    Version 0.2.4

    • Improvements to regex tokens within unquoted strings

    Version 0.2.3

    • Corrected variables parsing within strings

    Version 0.2.2

    • Improvements to single & double quote strings
    • Improvements to handling parentheses
    • Implemented indentation patterns
    • Removed some obsolete, overly specific grammars

    Version 0.2.1

    • Improved Lua block folding
    • Corrected Lua string handling with block characters
    • Corrected handling of ':' within upstreams

    Version 0.2

    • Added Lua Syntax
    • Added Lua injection for access_by_lua_block blocks (experimental)
    • Improved parsing for Lua blocks
    • Improved parsing for ipv4 when variables are used after scheme
      • Long term specific parsing such as this might not be worth it
    • Additional highlighting

    Version 0.1.1

    • Corrected syntax name
    • Updated scheme highlighting
    • Updated ipv4 highlighting

    Version 0.1

    Initial release

    • Basic NGINX syntax highlighting & folding

    License

    GPLv3 License

    NGINX for Nova

    Copyright (C) 2022-2024 Jonathan Coole

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program. If not, see https://www.gnu.org/licenses/.