Menu

TSynWeb - adv. highlighter for (Uni)SynEdit

2006-05-28
2012-12-07
  • Krystian Bigaj

    Krystian Bigaj - 2006-05-28

    See here:
    http://flatdev.dotgeek.org/downloads.php?project=2

    Features:
    - support for embedded:
      - PHP, CSS, JS in HTML
      - PHP in CSS, JS
    - support for UniSynEdit
    - full validation for tags (also checks for valid '/>' or '/') and its attributes for HTML across difference versions (for XHTML - case sensitive)
    - values in tags without quotation are also highlighted as ValueAttrib (only in HTML, in XHTML is highlighted as error because, XHTML doesn't allow for unquoted values)
    - in CSS validation for tags (you can set also HTML version)
    - validation for Ampersand tags (eg. &, ©)
    - almost FULL validation for CSS across CSS1 and CSS2.1
    - support for <script language="php"> as start tag for PHP (also <?, <?php, <?=, <%)
    - end tags for PHP doesn't stop in strings, comments (stops only in singleline), etc, you can now write "<?xml ... ?>" and PHP mode doesn't stop,
    - suppor for custom HEREDOC names (defined in TStringList, or any you type - comparing based on CRC8)
    - supprt for encapusled vars or escaped chars in strings (different highlighter attrib) with error checking
    - any word (but not keyword or function name) writed in UpperCase highlighted as ConstantAttrib
    - ActiveHighlighterSwitch - see demo (check 'Active HL' in demo app)
    - parsed source code of php to get function names (for php4 and php5+PECL)
    - any many more.

    --
    Best regards,
    FlatDev

     
    • Pierre Fauconnier

      Many thanks, FlatDev,
      i've just downloaded your project and checked with the snippet below. Your highlighter seems excellent - just multi-line comments could need a little fix ;)

      Do you plan to add :
      - other highlighters like XML, SQL, INI and Unix shell script
      - ctrl+mouseWheel in order to zoom in and out
      - code folding feature

      Best regards,
      Pierre.

      <?php
      ~
      ?>
      /*-- multi-line comment
      <?php
      ~
      ?>
      --*/
      <?php
      function autoMake() {
      // beware of strings and heredoc
      $res = '<?php echo "Not yet" ?>';
      echo $res;
      echo <<<HERE1
      <?php echo $res ."Not yet" ?>;
      $res
      HERE1;
      return $res;
      }
      ?>

       

Log in to post a comment.

MongoDB Logo MongoDB