Loading ...
Sorry, an error occurred while loading the content.
 

NSIS (.nsi scripts) syntax highlighting feature request

Expand Messages
  • Timothy Madden
    Hello Could the statement inside the back-tick quoted string in an ${If} ${Cmd} condition also be highlighted ? This condition is used like this in an NSIS
    Message 1 of 2 , Jan 6, 2010
      Hello

      Could the statement inside the back-tick quoted string in an ${If} ${Cmd}  condition also be highlighted ?

      This condition is used like this in an NSIS installer script:

      ${If} ${Cmd} `MessageBox MB_YESNO|MB_ICONQUESTION "Install Visual C++ run-time redistributable components ?" ID_YES`
          GetTempFileName $R2
          File "/oname=$R2.exe" 'vcredist_x86.exe'
          ExecWait '"$R2.exe" /qb'
          Delete $R2
          Delete "$R2.exe"
      ${Else}
          DetailPrint "This application needs the Visual C++ redistributable components."
          DetailPrint "Please make sure you have the latest version of this components installed."
      ${EndIf}


      You can see here that the MessageBox instruction is written inside a back-tick quoted string, as required by the ${Cmd} macro,
      still it is a NSIS statement that could be highlighted for clear understanding.


      Thank you,
      Timothy Madden
    • Charles Campbell
      ... I don t know nsis; however, the maintainer of syntax/nsis.vim is Alex Jakushev (which you can see by looking at the .../vim72/syntax/nsis.vim). He hasn t
      Message 2 of 2 , Jan 6, 2010
        Timothy Madden wrote:
        > Hello
        >
        > Could the statement inside the back-tick quoted string in an ${If}
        > ${Cmd} condition also be highlighted ?
        >
        > This condition is used like this in an NSIS installer script:
        >
        > ${If} ${Cmd} `MessageBox MB_YESNO|MB_ICONQUESTION "Install Visual C++
        > run-time redistributable components ?" ID_YES`
        > GetTempFileName $R2
        > File "/oname=$R2.exe" 'vcredist_x86.exe'
        > ExecWait '"$R2.exe" /qb'
        > Delete $R2
        > Delete "$R2.exe"
        > ${Else}
        > DetailPrint "This application needs the Visual C++ redistributable
        > components."
        > DetailPrint "Please make sure you have the latest version of this
        > components installed."
        > ${EndIf}
        >
        >
        > You can see here that the MessageBox instruction is written inside a
        > back-tick quoted string, as required by the ${Cmd} macro,
        > still it is a NSIS statement that could be highlighted for clear
        > understanding.
        I don't know nsis; however, the maintainer of syntax/nsis.vim is Alex
        Jakushev (which you can see by looking at the
        .../vim72/syntax/nsis.vim). He hasn't changed it since 2004; you might
        do better by emailing him directly (again, look at the syntax file for
        his email address). Now, that was six years ago, so he may have "moved on".

        You might do even better if you can come up with a patch to send to him.

        Regards,
        Chip Campbell
      Your message has been successfully submitted and would be delivered to recipients shortly.