Memasang Pygments Di Gitlab

Mengenal Syntax Highlighter

Syntax Highlighter merupakan sebuah fasilitas yang berfungsi untuk memberikan warna, font, atau tampilan lainnya dari sebuah kode agar bisa disisipkan pada sebuah tulisan di internet.

Pernahkan anda menuliskan sebuah kode dari bahasa pemrograman dalam sebuah website secara langsung? Misalkan anda langsung menuliskan kode HTML pada tulisan tersebut seperti tag <title> Judul tulisan </title>, lalu tulisan tersebut kemudian hilang saat dipublish. Itu karena kita memerlukan perantara agar dapat menyisipkan beberapa kode bahasa pemrograman, selain itu kita juga perlu mempertegas tulisan tersebut agar dapat dipahami sebagai sebuah kode dari bahasa tertentu, dan bukan tulisan biasa.

SyntaxHighlighter will help a developer/coder to post code snippets online with ease and have it look pretty. It’s 100% Java Script based and it doesn’t care what you have on your server.

Mengenal Pygments

Pygments merupakan tool generic syntax highlighter yang cocok digunakan untuk menuliskan kode pemrograman pada sebuah hosting, forum, WIKI, atau aplikasi lainnya yang butuh untuk dipercantik.

Fungsi Pygments

Bila kita hanya menggunakan Highlighter biasa mungkin akan tampak seperti: <?php echo "Seperti ini"; ?>
Dan bila kita memasang pygments, akan bisa kita ubah menjadi seperti:

<?php
	echo "Seperti ini";
?>

atau dengan menambahkan beberapa fasilitas lain seperti:

1 <?php
2 	echo "Seperti ini";
3 ?>

Bagaimana Cara Memasang Pygments?

Pada kasus kali ini, saya mencoba memasang pygments pada repository Gitlab.Com, tentu saja dengan memasukannya kedalam .gitlab-ci.yml.

Untuk mempermudah, kita bisa mengambil template .gitlab-ci.yml yang sudah ada di alamat Resmi Gitlab. Selanjutnya pilih pemrograman dari web yang digunakan, misalkan pada tulisan ini saya menggunakan Hugo dengan bahasa Go-nya. Maka, saya cukup menyalin .gitlab-ci.yml dari sini, salin semua isi dari file tersebut:

 1 image: alpine
 2 
 3 variables:
 4   HUGO_VERSION: '0.23'
 5   HUGO_SHA: 'c9cf515067f396807161466c9968f10e61f762f49d766215db37b01402ca7ca7'
 6 
 7 before_script:
 8   - apk update && apk add openssl ca-certificates
 9   - wget -O ${HUGO_VERSION}.tar.gz https://github.com/spf13/hugo/releases/download/v${HUGO_VERSION}/hugo_${HUGO_VERSION}_Linux-64bit.tar.gz
10   - echo "${HUGO_SHA}  ${HUGO_VERSION}.tar.gz" | sha256sum -c
11   - tar xf ${HUGO_VERSION}.tar.gz && mv hugo* /usr/bin/hugo
12   - hugo version
13 
14 test:
15   script:
16   - hugo
17       except:
18   - master
19 
20 pages:
21   script:
22   - hugo
23       artifacts:
24     paths:
25     - public
26     only:
27   - master
28     

Lalu apa yang harus ditambahkan?
Yang harus kita tambahkan adalah skrip yang akan menginstall pip dan juga pygments, sisipkan pada bagian before_script:, maka .gitlab-ci.yml kita akan berubah menjadi seperti berikut:

 1 image: alpine
 2 
 3 variables:
 4   HUGO_VERSION: '0.23'
 5   HUGO_SHA: 'c9cf515067f396807161466c9968f10e61f762f49d766215db37b01402ca7ca7'
 6 
 7 before_script:
 8   - apk update && apk add openssl ca-certificates py-pip
 9   - pip install Pygments
10   - wget -O ${HUGO_VERSION}.tar.gz https://github.com/spf13/hugo/releases/download/v${HUGO_VERSION}/hugo_${HUGO_VERSION}_Linux-64bit.tar.gz
11   - echo "${HUGO_SHA}  ${HUGO_VERSION}.tar.gz" | sha256sum -c
12   - tar xf ${HUGO_VERSION}.tar.gz && mv hugo* /usr/bin/hugo
13   - hugo version
14 
15 test:
16   script:
17   - hugo
18       except:
19   - master
20 
21 pages:
22   script:
23   - hugo
24       artifacts:
25     paths:
26     - public
27     only:
28   - master
29     

Bilah sudah ditambahkan, kita tinggal upload .gitlab-ci.yml ke repositori utama kita.

Leave a comment