Programlama | Programlama Dilleri | C Programlama Dili |C++

Hata
  • XML Parsing Error at 1:82. Error 9: Invalid character
Anasayfa Programlama Php Pc Programlama Kod Renklendirici Joomla 1.5 Uygulama Eki


Pc Programlama Kod Renklendirici Joomla 1.5 Uygulama Eki

HazirProgramKod kod renklendiricisi, Joomla içerik yönetim sistemlerini kullanan internet sitelerinde yay?nlanan kodlar?n daha renkli ve okunabilir olmas?n? sa?lar.HazirProgramKod kod renklendiricisi Joomla ile kurulu gelen Geshi kod renklendirici(syntax highlighter) paketini kullan?r.HazirProgramKod mambotu Joomla ile tan?ml? gelen paketten farkl? olarak kod renklendirme yaparken "{" "}" parantezlerininin kullan?m?na izin verir.Joomla ile varsay?lan olarak gelen TinyMCE WYSIWYG editöründe sorunsuzca kullan?labilir.

Diller :
Joomla paketinin içinde gelen tan?ml? diller ?unlard?r: css,html,ini,javascript,mysql,php,sql,xml
Extradan diller eklemek isterseniz (Örne?in C++, Java vs.) Geshi projesninin sayfas?ndan indirdi?iniz proje dosyas?ndaki dilleri siteniz alt?ndaki libraries\geshi\geshi alt?na yükleyebilirsiniz.

Kullan?m? :

{HazirProgramKod dil="cpp" satirlar="var" renklendir="hayir"}

// Kodunuz buraya gelecek

{/HazirProgramKod}

renklendir="hayir" özelli?i kodlar?n renklendirilmesini engellemek içindir. Örne?in HazirPrograKod etiketini yukardaki gibi içeri?in herhangi bir yerinde göstermek isterseniz renklendir="hayir" özelli?ini aktif etmeniz gerekir. Varsay?lan olarak renklendirme vard?r.

hazirprogramkod.php dosyas?nda eklentinin kaynak kodu vard?r.

hazirprogramkod.php

  1. <?php
  2.  
  3.     /*
  4.    
  5.     HazirProgramKod Kod Renklendirici Joomla 1.5 Plugin
  6.     HazirProgramKod Kod Renklendirici highlights programming languages' codes.
  7.     Copyright (C) 2009 ?evket Umut ÇAKIR
  8.  
  9.     This program is free software: you can redistribute it and/or modify
  10.     it under the terms of the GNU General Public License as published by
  11.     the Free Software Foundation, either version 3 of the License, or
  12.     (at your option) any later version.
  13.  
  14.     This program is distributed in the hope that it will be useful,
  15.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  16.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  17.     GNU General Public License for more details.
  18.  
  19.     You should have received a copy of the GNU General Public License
  20.     along with this program.  If not, see <http://www.gnu.org/licenses/>.
  21.  
  22.     */
  23.  
  24.    
  25. // Direk eri?im yasaklan?yor...
  26. defined( '_JEXEC' ) or die( 'Restricted access' );
  27.  
  28. jimport( 'joomla.event.plugin' );
  29.  
  30. /**
  31. * HazirProgramKod plugin s?n?f?
  32. */
  33. class plgContentHazirProgramKod extends JPlugin {
  34.  
  35.   function plgContentHazirProgramKod( &$subject ) {
  36.     parent::__construct( $subject );
  37.     $this->_plugin =& JPluginHelper::getPlugin( 'content', 'hazirprogramkod' );
  38.     $this->_params = new JParameter( $this->_plugin->params );
  39.   }
  40.  
  41.  
  42.   function onPrepareContent( &$row, &$params, $page=0 ) {
  43.  
  44.     // etiketlerin bulundu?u yeri belirlemek için seçilen düzenli ifade
  45.     $O="{";
  46.     $C="}";
  47.     $tag="HazirProgramKod";
  48.     $regex="#{$O}({$tag}.*?){$C}((?>{$O}(?!/?{$tag}[^{$O}]*?{$C})|[^{$O}]|(?R))*){$O}/{$tag}{$C}#is";
  49.     $GLOBALS['_MAMBOT_HAZIRPROGRAMKOD_PARAMETRELER'] =& $this->_params;
  50.  
  51.     // yer de?i?tirmeyi gerçekle?tir.
  52.     $row->text = preg_replace_callback( $regex, 'plgContentHazirProgramKod::degistirici', $row->text );
  53.  
  54.     return true;
  55.   }
  56. /**
  57. * E?le?en etiketleri de?i?tirir.
  58. * @param array E?le?enlerin dizisi
  59. * @return string
  60. */
  61.   private static function degistirici( &$matches ) {
  62.     $params =& $GLOBALS['_MAMBOT_HAZIRPROGRAMKOD_PARAMETRELER'];
  63.     jimport('geshi.geshi');
  64.     jimport('domit.xml_saxy_shared');
  65.    
  66.     /*
  67.     for($i=0;$i<count($matches);$i++)
  68.     {
  69.         echo "<p><b>$i.</b></p>";
  70.         print_r($matches[$i]);
  71.     }
  72.     return "";
  73.     */
  74.     $args = SAXY_Parser_Base::parseAttributes( $matches[1] );
  75.     $text = $matches[2];
  76.    
  77.     //kod renklendirme i?leminin yap?l?p yap?lmayaca??n? belirleyen özellik
  78.     $renklendir = JArrayHelper::getValue( $args, 'renklendir', 'evet' );
  79.     if($renklendir=="hay?r" || $renklendir=="hayir")
  80.         return $matches[0];
  81.     //hangi dilin kullan?laca??n? belirleyen özellik
  82.     $dil = JArrayHelper::getValue( $args, 'dil', 'php' );
  83.     // Sat?r numaralar?n?n gösterilip, gösterilmeyece?ini belirleyen dalga
  84.     $satirlar = JArrayHelper::getValue( $args, 'satirlar', 'yok' );
  85.    
  86.     // HTML haricindeki dillerde paragraf etiketlerini \n'e çevir
  87.     if($dil!="html")
  88.     {
  89.         $html_entities_match = array( "|\<p\>|", "|\<\/p\>|" );
  90.         $html_entities_replace = array( "\n", "\n" );
  91.  
  92.         $text = preg_replace( $html_entities_match, $html_entities_replace, $text );
  93.     }
  94.    
  95.     $html_entities_match = array( "|\<br \/\>|", "#<#", "#>#", "|'|", '#"#', '# #' );
  96.     $html_entities_replace = array( "\n", "<", ">", "'", '"', ' ' );
  97.  
  98.     $text = preg_replace( $html_entities_match, $html_entities_replace, $text );
  99.  
  100.     $text = str_replace('<', '<', $text);
  101.     $text = str_replace('>', '>', $text);
  102.  
  103.     $text = str_replace( ' ', '  ', $text );
  104.     //normal \n leri göstermek için
  105.     $text = str_replace( '\n', '\n', $text );
  106.  
  107.     $geshi = new GeSHi( $text, $dil );
  108.     switch( $satirlar ) {
  109.       case 'var':
  110.         $geshi->enable_line_numbers( GESHI_NORMAL_LINE_NUMBERS );
  111.         break;
  112.       case 'fancy':
  113.         $geshi->enable_line_numbers( GESHI_FANCY_LINE_NUMBERS );
  114.         break;
  115.       case 'yok':
  116.       default:
  117.         break;
  118.     }
  119.     //konteyner tipinin belirlenmesi
  120.     $konteynertipi=$params->get( 'konteynertipi' );
  121.    
  122.     if($konteynertipi)
  123.     $geshi->set_header_type(GESHI_HEADER_DIV);
  124.     else
  125.     $geshi->set_header_type(GESHI_HEADER_PRE);
  126.    
  127.     if($params->get( 'cssstil' ))
  128.         $geshi->set_overall_style($params->get( 'cssstil' ));
  129.    
  130.     // renklendirme i?leminin gerçekle?tirilmesi
  131.     $text = $geshi->parse_code();
  132.  
  133.     $text = str_replace("\n", '<br />', $text);
  134.  
  135.     //normal \n leri göstermek için
  136.     $text = str_replace('\n', '\n', $text);
  137.    
  138.     return $text;
  139.   }
  140.  
  141. }

hazirprogramkod.xml dosyas? eklentinin Joomla sistemlerine kurulabilmesi için gerekli dosyad?r. ?çerisinde eklenti ile ilgili özellikler ve tan?mlamalar mevcuttur.

hazirprogramkod.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <install version="1.5" type="plugin" group="content">
  3.   <name>HazirProgramKod kod renklendirici</name>
  4.   <author>?evket Umut ÇAKIR</author>
  5.   <creationDate>2009-01-01</creationDate>
  6.   <copyright>Copyright</copyright>
  7.   <license>http://www.gnu.org/licenses/gpl-3.0.html GNU/GPL</license>
  8.   <authorUrl>www.pcprogramlama.com</authorUrl>
  9.   <authorEmail> Bu e-posta adresini spambotlara karşı korumak için JavaScript desteğini açmalısınız </authorEmail>
  10.   <version>1.0</version>
  11.   <description>Aciklama</description>
  12.   <languages>
  13.    <language tag="tr-TR">language/tr-TR/tr-TR.plg_content_hazirprogramkod.ini</language>
  14.    <language tag="en-GB">language/en-GB/en-GB.plg_content_hazirprogramkod.ini</language>
  15.     </languages>
  16.   <files>
  17.     <filename plugin="hazirprogramkod">hazirprogramkod.php</filename>
  18.   </files>
  19.   <params>
  20.     <param name="cssstil" type="textarea" cols="30" rows="5" default="width:500px;margin: 2px 0px 2px 0px;padding: 10px 10px 10px 10px;border: 1px dotted #aab4be;border-left: 20px solid #b4b4b4;background: #f4f5f6;font-size: 90%;overflow: auto;white-space: nowrap;" size="40" label="CSS Stili" description="Css Stili Aciklama" />
  21.    <param name="konteynertipi" type="list" default="0" label="Konteyner Tipi" description="Konteyner Tipi Aciklama">
  22.      <option value="0">DIV</option>
  23.      <option value="1">PRE</option>
  24.    </param>
  25.   </params>
  26. </install>
  27.  

Eklentinin çoklu dil deste?i olmas? için a?a??daki 2 dosya olu?turulmu?tur. Dil dosyalar?n?n tan?mlamalar? hazirprogramkod.xml dosyas?n?n içindedir.

tr-TR.plg_content_hazirprogramkod.ini

  1. CSS STILI=CSS Stili
  2. CSS STILI ACIKLAMA=Kodlar gösterilirken, kod eleman?na uygulanacak CSS stili
  3. KONTEYNER TIPI=Konteyner Tipi
  4. ACIKLAMA=<a href="http://www.pcprogramlama.com" target="_blank" title="www.pcprogramlama.com"><strong>www.pcprogramlama.com</strong></a> kod renklendirici(code syntax highlighter) <br> <p>Yazar: <a href="mailto: Bu e-posta adresini spambotlara karşı korumak için JavaScript desteğini açmalısınız ">?evket Umut ÇAKIR</a></p> <br> <p><strong>Aç?klama :</strong> HazirProgramKod kod renklendiricisi Joomla ile kurulu gelen Geshi kod renklendirici(syntax highlighter) paketini kullan?r.HazirProgramKod mambotu Joomla ile tan?ml? gelen paketten farkl? olarak kod renklendirme yaparken "{" "}" parantezlerininin kullan?m?na izin verir.Joomla ile varsay?lan olarak gelen TinMCE WYSIWYG editöründe sorunsuzca kullan?labilir.</p> <p>Bu program GNU/LGPL lisans? alt?ndad?r.</p> <div> <strong>Diller :</strong> </div> <div> Joomla paketinin içinde gelen tan?ml? diller ?unlard?r: css,html,ini,javascript,mysql,php,sql,xml </div> <div> Extradan diller eklemek isterseniz (Örne?in C++, Java vs.) Geshi projesninin sayfas?ndan indirdi?iniz proje dosyas?ndaki dilleri siteniz alt?ndaki libraries\geshi\geshi alt?na yükleyebilirsiniz. </div> <div> Kulland???n?z için te?ekkürler. </div> <p><strong>Kullan?m? :</strong></p> <div style="width: 382px; height: 100px; background-color:#FFFFEE;"> <p>{HazirProgramKod dil="cpp" satirlar="var"}</p> <p><em>// Kodunuz buraya gelecek</em></p> <p>{/HazirProgramKod}</p> </div>
  5. KONTEYNER TIPI ACIKLAMA=Bu özellik renklendirilen kodlar?n konteyner(container) tipini belirler.Tipler div ve pre html elemanlar?d?r.
  6. COPYRIGHT=Copyright (C) 2009 www.pcprogramlama.com Tüm haklar? sakl?d?r.

en-GB.plg_content_hazirprogramkod.ini

  1. CSS STILI=CSS Style
  2. CSS STILI ACIKLAMA=CSS style to be applied to codes when showing codes.
  3. KONTEYNER TIPI=Container Type
  4. ACIKLAMA=<a href="http://www.pcprogramlama.com" target="_blank" title="www.pcprogramlama.com"><strong>www.pcprogramlama.com</strong></a> kod renklendirici(code syntax highlighter) <br> <p>Author: <a href="mailto: Bu e-posta adresini spambotlara karşı korumak için JavaScript desteğini açmalısınız ">?evket Umut ÇAKIR</a></p> <br> <p><strong>Description  :</strong> HazirProgramKod code syntax highlighter uses Geshi syntax highlighter which is installed in Joomla by default.HazirProgramKod plugin, allows usage of "{" "}" brackets unlike Joomla default syntax highlighter.HazirProgramKod plugin can be easily used with TinMCE WYSIWYG which is installed in Joomla by default.</p> <p>This program is licensed under GNU/LGPL.</p> <div> <strong>Programming Languages :</strong> </div> <div> Here are the programming languages which Geshi can highlight with default Joomla installation: css,html,ini,javascript,mysql,php,sql,xml </div> <div> If you wish to install some extra programming languages (e.g. c++, java, etc.), you can install language code files,which you can find at the web page of Geshi project, to libraries\geshi\geshi directory.</div> <div> Thanks for using this plugin.</div> <p><strong>Usage :</strong></p> <div style="width: 382px; height: 100px; background-color:#FFFFEE;"> <p>{HazirProgramKod dil="cpp" satirlar="var"}</p> <p><em>// Write your code here.</em></p> <p>{/HazirProgramKod}</p> </div>
  5. KONTEYNER TIPI ACIKLAMA=This property specifies the container type of highlighted codes.Types are div and pre html tags.
  6. COPYRIGHT=Copyright (C) 2009 www.pcprogramlama.com All rights reserved.
  7.  

Eklentinin Joomla 1.5 sistemlerine kurulabilir halini a?a??daki linkten bilgisayar?n?za indirebilirsiniz.

Linki Görebilmeniz ?çin Üye Olman?z Gerekmektedir...

Üye Kay?t

Yorumlar (2)
  • gokhan  - kullanamad?m
    kurulumda herhangi bir problem yok fakat uygulama a?amas?nda bir sonuç alamad?m. örnek sayfa: http://www.gokhanca.com/index.php?option=com_content&view=article&id=52:asal-saymlma-program&catid=25:c-nekleri&Itemid=32
  • NEO  - Ba?arm????n
    avatar
    Bakt?m ben sitene biraz geç oldu yorum bile?eni ile ilgili s?k?nt?lardan dolay? çözünce gördüm, sitene de bakt?m yapm??s?n :)
Sadece kayıtlı kullanıcılar yorum yazabilir!
Son Güncelleme ( Cuma, 08 Nisan 2011 00:28 )  
404 Not Found

Server Error

404

Page Not Found

This page either doesn't exist, or it moved somewhere else.


That's what you can do