User Defined Language Configuration - Advanced Options?

Jer
2013-02-22
2013-03-03
  • Jer
    Jer
    2013-02-22

    I'm trying to switch from TextPad to Notepad++ because I love the amount of features and plugins available. However, I've hit a couple walls that will absolutely stop me from being able to use Notepad++.

    I am trying to setup a custom language to work with the proprietary programming language used at my company. So far I have run into two issues.

    1) Under "Folder & Default", I tried to set up the Open and Close keywords to be { and }, respectively. This works when the brace is not touching any other characters. However, due to the nature of the language, the braces may be touching any number of characters. For example
    DO{X>12 X=X+1,
    Y=Y-X}

    The above setup will not work with this example. Is there any sort of wildcard character I can use?

    2) On the keywords list, I am having another issue resulting from the nature of the language. Most of the functions are two letter abbreviations prefixed by an @ sign, many times with no spacing in-between (whitespace is rarely used in this language). So if I have a line like the following:

    "Hello"@Wb,"Goodbye"@Wf,

    the syntax highlighting will not find these functions. If I have a single @Wb by itself on its own line or separated by spaces, it will work, but the language doesn't function that way. If I enable "Prefix mode", it will simply highlight the entire line.. which is no good. I want it to just find every instance of these keywords and highlight them without taking their context into account.

    Is it possible to fix these issues? If not, I'm going to have to go back to TextPad :(

    Thanks for reading,
    Jeremy

     
  • cchris
    cchris
    2013-03-03

    I notice the @Wz tokens are followed by a comma. Is the comma defined as an operator? That would help I guess.

    CChris

     
  • Loreia2
    Loreia2
    2013-03-03

    Hi Jer,

    Sp didn't notify me about your post, but I at least receiver Chris' answer.
    Here are your answers.

    1) If you define { } as Folding in code 1 style, than braces will be correctly picked by UDL regardless of surrounding characters. See this help section for details: http://udl20.weebly.com/folding-in-code.html

    2) Keywords1-8 will be recognized only of surrounded by whitespace or other "forward type" keyword. "Forward" and "backward" types are explained in detail in here: http://udl20.weebly.com/introduction.html
    In case given above, you just need to define " " as delimiter, and , as Operator1 type.

    BR,
    Loreia