-----------------------------------------------------------
XBrackets -     AkelPad
-----------------------------------------------------------

 :
1)   ([{""}]) - ..   
         .
     "" : 
   -   ([{   ;
   -   "    
     .
2)    - ..   
          .
3)     -  GoToMatchingBracket.
4)      - 
   SelToMatchingBracket.

:
     ,
 XBrackets::Main     
Coder::HighLight.
   GoToMatchingBracket  SelToMatchingBracket
    -     
  Main.

  :

  var lpBuffer;
  var a;
  var s = "";

  if ( lpBuffer = AkelPad.MemAlloc(64 * _TSIZE) )
  {
    var res;

    res = AkelPad.Call("XBrackets::SelToMatchingBracket", 1, lpBuffer);
    if ( res > 0 )
    {
      s = AkelPad.MemRead(lpBuffer, _TSTR);
    }

    AkelPad.MemFree(lpBuffer);
  }

  a = s.split(" ");
  if ( a.length == 3 )
  {
    WScript.Echo( "pos1 = " + a[0] + "\npos2 = " + a[1] + "\nbrackets = " + a[2] );
  }

  ( "AkelFiles\Plugs\XBrackets.ini"):
  common.user_brpairs =   
       ,   XBrackets 
      .  ,   , 
            
    (  ""  ''),    ,  
      ,      
           .
     ,     ,   :
    1)      (' ')
    2)        :  
        () ,     ()
       .         1  
       3   ,     .
    3)    30  .
    4)      /  
        'next_char_ok'/'prev_char_ok'  .

  autobrackets.next_char_ok = .,!?:;<)]}"'>/ 
     ,      
         .
     ,      
      : '\r', '\n', '\0', ' '  '\t'.
         90 .  .

  autobrackets.prev_char_ok = ([{<= 
     ,      
        .    
       ,      
      (  ""  '').
     ,      
      : '\r', '\n', '\0', ' '  '\t'.
         90 .  .

  autocomplete.all_autobr = 0
     :    
       'next_char_ok' (    'prev_char_ok' 
        ).
  autocomplete.all_autobr = 1
          (..  
    'next_char_ok' ).     
      "Even if corresponding right bracket exists".
  autocomplete.all_autobr = 2
          (.. 
    'prev_char_ok' ).     
      ,      
      (  ""  '').
  autocomplete.all_autobr = 3
           
    (..   'next_char_ok'  'prev_char_ok' ).

  autocomplete.ovr_autobr = 0
      " " (Overwrite)    
    .
  autocomplete.ovr_autobr = 1
      " " (Overwrite)    
       (   ).
  autocomplete.ovr_autobr = 2
      " " (Overwrite)    
       ( ).

  autocomplete.sel_autobr = 0
           (
      ).
  autocomplete.sel_autobr = 1
           
      .
  autocomplete.sel_autobr = 2
           
      ,      
    .        
      ,    .

  highlight.hlt_bothbr = 1
          , 
      .
  highlight.hlt_bothbr = 0
          , 
        (     ).

  highlight.hlt_style = 3
    XBrackets  ,   Coder.
          .
  highlight.hlt_style = 2
    XBrackets  ,   Coder.
           .
  highlight.hlt_style = 1
          .
    XBrackets   ,   Coder.
  highlight.hlt_style = 0
           .
    XBrackets   ,   Coder.

  highlight.hlt_xmode = 7
       ,   XBrackets   
      .      AkelEdit
      ,      
    .     .
         ,  
     :
    1 -      /;
    2 -  AEM_HLGETHIGHLIGHT (, );
    4 -  AEM_FINDFOLD ( ).

  highlight.quote_detect_lines = 1
     ,   XBrackets    
        (     
     , :  "  " ).
        'highlight.quote_max_lines',   
       'highlight.quote_max_lines'.
     1  "   ".
     0       .

  highlight.quote_max_lines = 10
     ,   XBrackets    
         (   
      , :  "a b" ).
     1  "   ".
     0     .

  highlight.br_max_lines = 0
     ,   XBrackets   
    .
     0  " " - ..   .

    ,   AkelPad.
  ,    :
  1.   "" ( -> ...)   
XBrackets::Main (  ).
  1. ( )  XBrackets::Settings   
   ..  "Status: the plugin is active", 
   "Status: the plugin is NOT active".
      .
  2.   "XBrackets.ini" (    ini-)
   "HKEY_CURRENT_USER\Software\Akelsoft\AkelPad\Plugs"  
  XBrackets.
     "XBrackets.ini".
  3.   XBrackets,   XBrackets::Main  
XBrackets::Settings       .. 
"Status: the plugin is NOT active".
      .

--------
:
--------
v.7.2 ( 2016)
 +  'highlight.hlt_xmode'

v.7.1 ( 2016)
 * AkelPad 4.9.8+

v.7.0 ( 2016)
 +   "  "  
    (  ,   "   //")

v.6.9 ( 2016)
 +     MSVCR =   

v.6.8 ( 2015)
 * AkelPad 4.9.7+
 +   '\0'   AEM_GETWORDDELIMITERS

v.6.7 ( 2015)
 +  Go/SelToMatchingBracket   XBrackets::Main,
        

v.6.6 ( 2015)
 * AkelPad 4.9.5+

v.6.5 ( 2015)
 * ()   (wrapped) 

v.6.4 ( 2015)
 +  XBrackets   (wrapped) 

v.6.3 ( 2015)
 +     

v.6.2 ( 2015)
 - :       
 +  /
 +  :  " "  
 +  /  
 +     " ", ' '  < >   :
   [v]  + 
   [o]  
   [ ] .

v.6.1 ( 2015)
 +     (. )

v.6.0 ( 2014)
 * AkelPad 4.9.1+

v.5.9 ( 2014)
 * ()    SPI_GETFONTSMOOTHING

v.5.8 ( 2014)
 - :    AKD_GETEDITINFO (TRUE  FALSE)

v.5.7 ( 2014)
 * AkelPad 4.8.8+

v.5.6 ( 2013)
 +      ClearType
   (   SpecialChar,  Instructor)
 *    +  'Escaped1FileExts' ()

v.5.5 ( 2013)
 * AkelPad 4.8.4+

v.5.4 ( 2013)
 * AkelPad 4.8.1+
 + 'highlight.br_max_lines'

v.5.3 ( 2012)
 + /      

v.5.2 ( 2012)
 - :      
 - :       Coder::HighLight

v.5.1 ( 2012)
 * AkelPad 4.7.7+

v.5.0 ( 2012)
 * AkelPad 4.7.5+

v.4.9 ( 2012)
 *  AkelPad 4.7.3+

v.4.8 ( 2011)
 *  AkelPad 4.7.1+
 + : autocomplete.sel_autobr=2
 - :        
 + :   ("XBrackets::SelToMatchingBracket", 1, lpBuffer)
 +    AkelPad

v.4.7 ( 2011)
 *  AkelPad 4.7.0+

v.4.6 ( 2011)
 - :   ,    4.4
   ( AutoBracketsFunc   sys_memalloc)

v.4.5 ( 2011)
 +     
 - :        

v.4.4 ( 2011)
 *  AkelPad 4.6.0+
 +  XBrackets    Coder (  )
 + :  'hlt_style', 'quote_detect_lines'  'quote_max_lines'
 * :       (. )
 +  /

v.4.3 ( 2011)
 +      
 +  /
 +  AkelPad x64

v.4.2 ( 2010)
 +   

v.4.1 ( 2010)
 *   ( se7h)

v.4.0 ( 2010)
 *   XBrackets :)
 *  AkelPad 4.5.0+
 * :  'hlt_bkgnd' (  )
 + :    ,   
 +   /
 +   ( se7h)

v.3.8 ( 2010)
 - :       read-only (-)
 - :      PMDI

v.3.7 ( 2010)
 *  AkelPad 4.4.4+

v.3.6 ( 2010)
 + SettingsDlg:     

v.3.5 ( 2010)
 +   'hlt_bkgnd'      

v.3.4 ( 2010)
 + :  'hlt_bkgnd'
 - :   XBrackets::Main    

v.3.3 ( 2010)
 *  AkelPad 3.7.4+/4.4.0+

v.3.2 ( 2009)
 + :  'sel_autobr = 1'    

v.3.1 ( 2009)
 + :  'all_autobr'

v.3.0 ( 2009)
 *   XBrackets :)
 + :     ""  
 + :  'ovr_autobr', 'sel_autobr', 'hlt_bothbr'
 + :  'user_brpairs' ( !)
 + :  'next_char_ok'  'prev_char_ok'
 +   

v.2.8 ( 2009)
 *  AkelPad 3.7.3+/4.3.0+

v.2.7 ( 2009)
 *  AkelPad 3.7.0+/4.2.0+

v.2.6 ( 2009)
 +  : SelToMatchingBracket
 - :     AkelPad 4.1.6

v.2.5 ( 2009)
 +     ,      //
 +   AkelEdit
 +   /

v.2.4 ( 2008)
 +     ""  
 +  :  ""  ( '\')

v.2.3 ( 2008)
 +  

v.2.2 ( 2008)
 *  AkelPad 3.6.0+/4.0.1+
 +  GoToMatchingBracket    
 +  

v.2.1 ( 2008)
 +  : GoToMatchingBracket
 +  

v.2.0 ( 2008)
 *  AkelPad 3.6.0+

v.1.9 ( 2008)
 *     XBrackets
 +   

v.1.8 ( 2008)
 - :    AkelPad 3.5.0

v.1.7 ( 2008)
 + ()  ' '
 + ()    < />

v.1.6 ( 2007)
 +   AkelPad 3.4.2+

v.1.5 ( 2007)
 *  AkelPad 3.4.0+
 - :   (C/C++/Pascal) 
   

v.1.4 ( 2007)
 *  AkelPad 3.3.0+
 - :       LineBoard
 - :     

v.1.3 ( 2007)
 *  AkelPad 3.3.0+
 +   C/C++/Pascal   //  
 +        (AkelBrackets::Main)
 +     /   

v.1.2 ( 2007)
 *  AkelPad 3.3.0+
 -     
 + ()       
 +   dll- (   Build.cmd)

v.1.1 ( 2007)
 *  AkelPad 3.2.1+
 +   
 +  

v.1.0 ( 2006)
 *   
 *  AkelPad 3.1.2+
 +  


     aka 
Instructor        
 .
-----------------------------------------------------------
The icon by se7h.
-----------------------------------------------------------
(C) Oct 2006 - Jul 2016, Vitaliy Dovgan aka DV
          dvv81 <at> ukr <dot> net

    (   ,
    );
      ,  AkelPad.
