Site Tools


At the moment the geshi tool seems to malfunction when creating code snippets. This is probably because of recent changes which have veen made to the geshi protocol in DokuWiki. You can still, however, use the geshi tool to make non-downloadable code blocks. For how to use the editor to make downloadable snippets, see: https://www.dokuwiki.org/plugin:ckgedit:deprecated

This may be a transient problem.close In the latest tests this problem did not show up. See the discussion at: ckgedit's github issues.

test.php
  switch($state) {
          case DOKU_LEXER_ENTER :
           $match = str_replace(':','_',substr($match,2,-1));
               return array($state, $match);
          case DOKU_LEXER_UNMATCHED :
              if(preg_match("/<top>([\w\:]+)\<\/top\>/m",$match,$matches)) {
                   $id = $matches[1];
                   $text = io_readWikiPage(wikiFN($id, $rev), $id, false);
                   if($text) {
                      $match = preg_replace("/<top>.*?<\/top>/ms", "\n$text",$match);
                  }
              }
              if(preg_match("/<bottom>([\w\:]+)\<\/bottom\>/m",$match,$matches)) {
                   $id = $matches[1];
                   $text = io_readWikiPage(wikiFN($id, $rev), $id, false);
                   if($text) {
                      $match = preg_replace("/<bottom>.*?<\/bottom>/ms", "\
$text",$match);
                  }
              }
 
            //  msg(htmlentities($match));
              return array($state, $match);
          case DOKU_LEXER_EXIT :   return array($state, '');
          case DOKU_LEXER_SPECIAL:
              $inner = substr($match,6,-7);
              return array($state, $inner);
       }
 
// created in editor, as described at https://www.dokuwiki.org/plugin:ckgedit:deprecated
test-2.php
              if(file_exists($fn)) {
                  if(!copy($fn, $newf)) {
                     $this->ajax_debug ("(2nd try) could not copy $fn to $newf");
                     return;
                     }
                  if(!unlink($fn))  {
                     $this->ajax_debug ("could not delete $fn");
                     return;
                  }
              }
 
//Created with geshi tool in ckgedit