Latest News

Cara Menambahkan Syntax Highlighter di Blogger

Syntax Highlighter cukup dikenal oleh banyak sekali platform, misalnya WordPress, Apache, Mozilla, Yahoo, Aptana, dan banyak lainnya. Apa itu Syntax Highlighter? Kita para blogger seringkali membuatkan script/kode untuk blogger atau siapapun yang membutuhkannya untuk pengembangan web/blog. Kebanyakan dari kita menggunakan blockquote sebagai "wadah" dari script/kode tersebut dan menandai dengan beberapa warna khusus sebagai indikator atau petunjuk. Nah, SyntaxHighlighting ialah upaya untuk mempresentasikan script/kode tersebut dengan cara dan tampilan yang lebih baik berdasarkan jenis kode, misalnya Javascript, CSS, HTML, Phyton, PHP, dan masih banyak lagi. Ide ini tak lain datang dari si pembuat SyntaxHighlighter, Alex Gorbachev (thanks for the script).

Script SyntaxHighlighter ada beberapa jenis, yang terbaru bersama-sama lebih canggih lagi. Tetapi aku akan membagi versi standard-nya alasannya ialah memiliki beberapa opsi dikala mouse diarahkan ke atas script (muncul di pojok kanan atas) yaitu: View Source (dalam blank page, pop out), Copy to Clipboard, dan Print. Ketiganya sangat memudahkan dalam meng-copy, melihat isyarat dalam bentuk dan susunan aslinya, serta cetak kode. Masing-masing isyarat diterjemahkan oleh script yang disebut Brush.

Di beberapa platform menyerupai WordPress, Drupal, dan Joomla, kita mampu menggunakan banyak sekali jenis modul atau plugin SyntaxHighlighter siap pakai, tetapi di Blogger, kita harus menambahkannya secara manual. Berikut step by step-nya:

Menambahkan Script dan Brush ke dalam Template

1. Buka dashboard > template > edit HTML
2. Cari ]]></b:skin> (ctrl + F dan masukkan ke dalam kotak pencarian, enter)
3.Sekaligus sebagai demo, berikut ialah teladan syntax highlighting-nya. Arahkan mouse ke atas script, di bab pojok kanan atas akan muncul opsi, View Source, Copy to Clipboard, dan Print. Juga ada berita script dari pembuatnya. Copy script berikut tepat di bawah ]]></b:skin>.
<link href='http://alexgorbatchev.com/pub/sh/2.1.382/styles/shCore.css' rel='stylesheet' type='text/css'/>  <link href='http://alexgorbatchev.com/pub/sh/2.1.382/styles/shThemeDefault.css' rel='stylesheet' type='text/css'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shCore.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushCpp.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushCSharp.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushCss.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shYouBrushJava.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushJScript.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushPhp.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushPython.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushRuby.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushSql.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushVb.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushXml.js' type='text/javascript'/>  <script src='http://alexgorbatchev.com/pub/sh/2.1.382/scripts/shBrushPerl.js' type='text/javascript'/>  <script language='javascript'>  SyntaxHighlighter.config.bloggerMode = true;  SyntaxHighlighter.config.clipboardSwf = &#39;http://alexgorbatchev.com/pub/sh/2.1.382/scripts/clipboard.swf&#39;;  SyntaxHighlighter.all();  </script>  
4. Save template.

Masing-masing script brush di atas berfungsi untuk menerjemahkan dan memberi style (warna) pada banyak sekali jenis script/kode menyerupai HTML, JS, CSS, PHP, Perl, Phyton, Ruby, XML, Java, dan banyak sekali script standard lainnya. Jika anda hanya membutuhkannya untuk highlighting script tertentu yang anda butuhkan, hapus yang tidak diperlukan.

Cara Menggunakan SyntaxHighlighther di dalam Post/Artikel Blog

Setiap jenis isyarat yang ingin ditampilkan di dalam halaman sebuah web biasanya menggunakan tag <pre>, meskipun dalam beberapa hal juga mampu menggunakan tag <code>. Untuk post blogger, kita akan menggunakan tag yang pertama. Kemudian masing-masing brush yang dibutuhkan dipanggil menggunakan atribut class. Contoh penulisannya:
<pre class="brush:css, brush:html, brush:js, brush:php, brush:sql, brush:python">
Kode Di Sini
</pre>
Pada teladan di atas, kita lihat nantinya jenis-jenis isyarat yang akan di highlight ialah gabungan antara CSS, JS, PHP, SQL, dan Phyton. Jika anda hanya membutuhkan beberapa jenis saja, sekiranya yang diperlukan, maka gunakan brush sesuai jenis script saja. Misalnya, kalau aku hanya butuh highlight HTML, JS, dan CSS, maka yang dibutuhkan adalah:
<pre class="brush:css, brush:html, brush:js">
Kode Di Sini
</pre>
Menggunakan yang dibutuhkan saja akan menghemat waktu load dan menghindari load script yang tidak perlu. Kaprikornus kalau anda biasanya hanya membuatkan isyarat campuran yang terdiri dari 3 script umum di atas, gunakan susunan menyerupai teladan terakhir itu.

Berikut langkah-langkah menambahkan Syntax Highlighter ke dalam Post:
1. Ketika akan memasukkan kode, pindah dari mode "Compose" ke mode "HTML"
2. Kemudian masukkan tag <pre> dan class sesuai yang diinginkan, atau anda mampu copy teladan aku di atas.
3. Sebelum memasukkan isyarat di antara tag <pre>, anda harus parse dulu isyarat tersebut. Ini Penting. Karena kalau tidak di parse, maka isyarat yang dimasukkan ke dalam editor HTML akan diterjemahkan sebagai perintah, bukan teks biasa. Gunakan HTML/Script Parser, parse isyarat ke dalam tool tersebut, copy hasilnya, dan sisipkan ke dalam tag <pre>.
Contoh yang benar:
<pre class="brush:css, brush:html, brush:js"> &lt;script type=&#039;text/javascript&#039;&gt;
//&lt;![CDATA[
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = &quot;//connect.facebook.net/en_US/all.js#xfbml=1&amp;appId=App-ID&quot;;
  fjs.parentNode.insertBefore(js, fjs);
}(document, &#039;script&#039;, &#039;facebook-jssdk&#039;));
//]]&gt;
&lt;/script&gt;
</pre>
Dan berikut hasilnya:
<div id='fb-root'/> <script type='text/javascript'> //<![CDATA[ (function(d, s, id) {   var js, fjs = d.getElementsByTagName(s)[0];   if (d.getElementById(id)) return;   js = d.createElement(s); js.id = id;   js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=App-ID";   fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk')); //]]> </script> 
4. Anda mampu kembali ke mode "compose" kalau ingin melanjutkan menulis, sebelum mempublikasikan artikel.
5. Done.

catatan: script akan diload paling simpulan oleh browser, jadi akan muncul belakangan setelah semua script dan elemen diload terlebih dahulu. Kaprikornus syntaxt highlighter akan muncul paling akhir.

Itu beliau bagaimana cara menggunakan Syntax Highlighter dengan benar di Blogger. Anda bersama-sama juga mampu menggunakan metode yang sama pada website lain, apabila ingin menambahkannya secara manual tentunya. Syntax Highlighter untuk Blogger di atas masih menggunakan denah warna default, ada beberapa variasi denah warna lain yang ke depan Insya Tuhan akan aku share. Juga. That's it for now and have a nice blogging, as always. :)