vimvim-pluginvim-syntax-highlightingsyntax-checking

create syntax checker vim plugin for a new Programming language


I want to create a new vim syntax checker for a new programming language that is not used widely, first i tried to read the code of the follwing plugins neomake, syntastic , and Ale in order to understand how i can build my own syntax checker plugin but i could not really get it so i just want know what is the best and easy way to create syntax checker plugin for vim


Solution

  • I am not sure what you are asking for, here.

    At a very high level, linting works like this:

    For example, assuming our linter is called mylinter:

    $ mylinter file_with_correct_code.foo
    <nothing>
    
    $ mylinter file_with_erroneous_code.foo
    /path/to/file_with_erroneous_code.foo:12:23: missing semicolon
    

    No one knows anything about your language or compiler so you are the only one who can tell if and how your compiler can be used as described above, which is a prerequisite for Vim integration.

    How to integrate it in Vim is the next step, and it is entirely dependent on those informations, which you failed to provide.

    So…

    1. Figure out if/how your compiler can be used that way.

      We can't do that for you.

    2. Read the help section I already pointed to in the comments: :help write-compiler-plugin to know how to integrate your linter in Vim the vanilla way or the relevant sections of the plugins you want to integrate with.

      We may be able to help with specific issues.