Translate

Tampilkan postingan dengan label linux. Tampilkan semua postingan
Tampilkan postingan dengan label linux. Tampilkan semua postingan

Kamis, 18 Januari 2018

File keymap Quran untuk xkbmap

Berikut ini adalah isi file qu, yang saya gunakan untuk menulis Quran melalui Puppy Linux. File ini harus ditempatkan pada folder /usr/share/X11/xkb/symbols/pc. Untuk menggunakannya cukup dengan perintah melalui terminal:

 setxkbmap -layout qu
Isi file qu adalah sbb:
default  partial alphanumeric_keys modifier_keys
xkb_symbols "qu" {                        
                        
    name[Group1]= "qur(Quranic)";          

 key <TLDE> {  [ U0630 , U0651 ]     };
 key <AE01> {  [ U0661 , U06D6 ]     };
 key <AE02> {  [ U0662 , U06D7 ]     };
 key <AE03> {  [ U0663 , U06D8 ]     };
 key <AE04> {  [ U0664 , U06D9 ]     };
 key <AE05> {  [ U0665 , U06DA ]     };
 key <AE06> {  [ U0666 , U06DB ]     };
 key <AE07> {  [ U0667 , U06DC ]     };
 key <AE08> {  [ U0668 , U06E2 ]     };
 key <AE09> {  [ U0669 , parenleft ]     };
 key <AE10> {  [ U0660 , parenright]     };
 key <AE11> {  [ U06E3 , U06E7 ]     };
 key <AE12> {  [ U06ED , U06E8 ]     };
      
 key <AD01> {  [ U0636 , U064E ]     };
 key <AD02> {  [ U0635 , U064B ]     };
 key <AD03> {  [ U062B , U064F ]     };
 key <AD04> {  [ U0642 , U064C ]     };
 key <AD05> {  [ U0641 , U0657 ]     };
 key <AD06> {  [ U063A , U0625 ]     };
 key <AD07> {  [ U0639 , U0670 ]     };
 key <AD08> {  [ U0647 , U0656 ]     };
 key <AD09> {  [ U062E , U06DE ]     };
 key <AD10> {  [ U062D , U061B ]     };
 key <AD11> {  [ U062C , U06E6 ]     };
 key <AD12> {  [ U062F , U06E5 ]     };
      
 key <AC01> {  [ U0634 , U0653 ]     };
 key <AC02> {  [ U0633 , U06E9 ]     };
 key <AC03> {  [ U064A , UFDFA ]     };
 key <AC04> {  [ U0628 , UFDFD ]     };
 key <AC05> {  [ U0644 , U0671 ]     };
 key <AC06> {  [ U0627 , U0623 ]     };
 key <AC07> {  [ U062A , U0640 ]     };
 key <AC08> {  [ U0646 , U060C ]     };
 key <AC09> {  [ U0645 , U0618 ]     };
 key <AC10> {  [ U0643 , colon ]     };
 key <AC11> {  [ U0637 , U06E4 ]     };
 key <BKSL> {  [ U061C , U200F  ]     };
      
 key <LSGT> {  [ bar,  brokenbar]     };
 key <AB01> {  [ U0626 , U06E1 ]     };
 key <AB02> {  [ U0621 , U0652 ]     };
 key <AB03> {  [ U0624 , U0650 ]     };
 key <AB04> {  [ U0631 , U064D ]     };
 key <AB05> {  [ U0654 , U0655 ]     };
 key <AB06> {  [ U0649 , U0622 ]     };
 key <AB07> {  [ U0629 , U08F3 ]     };
 key <AB08> {  [ U0648 , U06DD ]     };
 key <AB09> {  [ U0632 , period ]     };
 key <AB10> {  [ U0638 , U061F ]     }; 

    include "level3(ralt_switch)"
};

Keyboard Map-nya

Untuk penjelasan keymap-nya menggunakan keyboard US yang biasa dipakai di Indonesia, dapat dilihat melalui tabel berikut.

Font Arabic yang dipakai pada laman ini menggunakan font Amiri dari Google Font.

KeyboardKarakterPenjelasanKeyboardKarakterPenjelasan
[`]ذdzal[~]ّshaddah
[1]١Digit Satu[!]ۖLigatur atas Shod dengan Lam dan Alif Maksuro
[2]٢Digit Dua[@]ۗLigatur atas Qof dengan Lam dan Alif Maksuro
[3]٣Digit Tiga[#]ۘMim atas bentuk awal
[4]٤Digit Empat[$]ۙLam Alif atas
[5]٥Digit Lima[%]ۚjim atas
[6]٦Digit Enam[^]ۛtitik tiga atas
[7]٧Digit Tujuh[&]ۜSin atas
[8]٨Digit Delapan[*]ۢmim bentuk tunggal atas
[9]٩Digit Sembilan[(](kurung buka
[0]٠Digit Nol[)])kurung tutup
[-]ۣSin kecil bawah[_]ۧYa atas
[=]ۭMim kecil bawah[+]ۨNun atas
 
[q]ضdhod[Q]َfathah
[w]صshod[W]ًfathatain
[e]ثtsa[E]ُdammah
[r]قqof[R]ٌdammatain
[t]فfa[T]ٗDammah terbalik
[y]غghain[Y]إhamza di bawah alif
[u]عain[U]ٰAlif Superscript
[i]هha[I]ٖAlif Subscript
[o]خkho[O]۞Rub El Hizb
[p]حhah[P]؛titik koma
[[]جjim[{]ۦYa kecil
[]]دdal[}]ۥWau kecil
 
[a]شsyin[A]ٓMaddah atas
[s]سsin[S]۩Tanda Sajadah
[d]يya[D]Shalla llaahu alaihi wa sallam
[f]بba[F]Basmalah
[g]لlam[G]ٱAlif Wasol
[h]اalif[H]أhamza di alif
[j]تta[J]ـtatwil
[k]نnun[K]،koma
[l]مmim[L]ؘfathah kecil
[;]كkaf[:]:titik dua
[']طtho["]ۤMad atas
 
[z]ئhamza di ya[Z]ۡKepala Hah
[x]ءhamza[X]ْsukun
[c]ؤhamza di waw[C]ِkasrah
[v]رro[V]ٍkasratain
[b]ٔHamza atas[B]ٕHamza bawah
[n]ىalif maksuro[N]آmad di alif
[m]ةta marbutoh[M]Wau atas kecil
[,]وwaw[<]۝Tanda akhir ayat
[.]زzai[>].titik dua
[/]ظzho[?]؟tanda tanya
 
[\]Arabic Letter Mark[|]Right to Left Mark

Contoh

بِسۡمِ اللهِ الرَّحۡمٰنِ الرَّحِيۡمِ ۝١ اَلۡحَمۡدُ لِلهِ رَبِّ الۡعَالَمِيۡنَ ۝٢ الرَّحۡمٰنِ الرَّحِيۡمِ ۝٣ مَالِكِ يَوۡمِ الدِّيۡنِ ۝٤ اِيَّاكَ نَعۡبُدُ وَاِيَّاكَ نَسۡتَعِيۡنُ ۝٥ اهۡدِنَا الصِّرَاطَ الۡمُسۡتَقِيۡمَ ۝٦ صِرَاطَ الَّذِيۡنَ اَنۡعَمۡتَ عَلَيۡهِمۡ. غَيۡرِ الۡمَغۡضُوۡبِ عَلَيۡهِمۡ وَلَا الضَّآلِّيۡنَ ۝٧‏

Bila ada karakter yang ingin diganti dan ditambah silakan merujuk ke website-nya Unicode.


Penyunting Teks Arab: Leafpad 0.8.18.1
Penyunting Laman: Geany 1.25
Peramban: Pale Moon 25.8.1 (Turunan dari Mozilla Firefox)
Sistem Operasi: Tahrpup 6.0.5 Live

Senin, 29 Mei 2017

itools: program islami di Linux

Bagi anda yang beragama muslim, juga sekaligus pengguna sistem operasi Linux, maka program ini yang mungkin anda butuhkan. Program ini bernama itools (mungkin singkatan dari islamic-tools) yang berisi 3 (tiga) program berbasis baris-perintah (CLI-Command Line Interface) yaitu

  • ical
  • ipraytime
  • idate

Pada distro linux Ubuntu beserta turunannya, program ini dapat di instal dengan cara mengetikkan perintah pada terminal sebagai berikut:

$ sudo apt-get install itools

Program ini juga dapat diinstal langsung dari kode sumber-nya, namun harus di-compile terlebih dahulu. Cara meng-compile disesuaikan dengan masing-masing distro.

ical

Perintah ini akan menampilkan kalender islam pada konsol terminal. Cara pakainya di terminal diantaranya:

$ ical
     Ramadan 1438 (A.H)
  S  Ah   I   T  Ar   K   J
  1 [ 2]  3   4   5   6   7 
  8   9  10  11  12  13  14 
 15  16  17  18  19  20  21 
 22  23  24  25  26  27  28 
 29  30 

Atau,

$ ical --dual
From/To (May 2017 / Shaaban - Ramadan 1438):

  Sat/   Sun/   Mon/   Tue/   Wed/   Thu/   Fri/
  Sab    Ahd    Ith    Tha    Arb    Kha    Jum
-------------------------------------------------
               01/04  02/05  03/06  04/07  05/08 
 06/09  07/10  08/11  09/12  10/13  11/14  12/15 
 13/16  14/17  15/18  16/19  17/20  18/21  19/22 
 20/23  21/24  22/25  23/26  24/27  25/28  26/29 
 27/01  28/02 [29/03] 30/04  31/05 

Penjelasan mengenai opsi pada perintah ini dapat dilihat di Ubuntu Manpage: ical - A Hijri_Islamic calendar (and converter).

ipraytime

Menampilkan lima waktu shalat. Bila ingin mengubah kota-nya (default-nya Makkah), maka buat saja file .iprayrc pada direktori home anda, lalu isi parameter-parameter berikut (sebagai contoh Kota Jakarta ajah yaa...):

City: Jakarta
Latitude: -6.2146200
Longitude: 106.8451300
SeaLevel: 16
UTC: 7
AngleMethod: 1
Mathhab: 1
ImsaakInterval: 10
OffsetList: 0 0 0 0 0 0

Untuk keterangan mengenai parameter dapat dilihat di Ubuntu Manpage: ipraytime - An Islamic Prayer Times Calculator. Sedangkan untuk mendapatkan Latitude dan Longitude suatu kota, dapat dicari lewat internet misalnya: Google Map.

Bila data Latitude/Longitude yang didapat ber-format derajat-menit-detik seperti contoh di bawah ini:

Latitude: 6°12′52″ S
Longitude: 106°50′42″ E

Maka dapat kita ubah ke format derajat yang diperlukan oleh ipraytime dengan rumus berikut:

Latitude :   6 + 12*60 + 52*3600 * (-1) = -6.214444°
Longitude: 106 + 50*60 + 42*3600 * (+1) = 106.84500°

Catatan:
S dan W bernilai -1
N dan E bernilai +1

Hasilnya, saat kita beri perintah ipraytime maka akan menampilkan:

$ ipraytime

Prayer schedule for,
 City             : Jakarta
 Latitude         : 006° 12' 52" S
 Longitude        : 106° 50' 42" E
 Angle Method     : Egyptian General Authority of Survey
 TimeZone         : UTC+7.0
 Qibla            : 064° 50' 46" W of true North

     Date         Fajr    Shorooq   Zuhr     Asr    Maghrib   Isha 
--------------------------------------------------------------------
 [29-05-2017]     4:33     5:55    11:49    15:14    17:43    18:57

Today's Imsaak    :   4:22
Tomorrow's Imsaak :   4:22
Tomorrow's Fajr   :   4:33

Bila ingin mengetahui daftar lima waktu shalat selama sebulan (misal: bulan Juni) dapat menggunakan perintah:

$ ipraytime -m 6

Atau setahun,

$ ipraytime -y 2017

idate

Berfungsi untuk mengubah dari/ke tanggal masehi ke/dari tanggal Hijriah. Contoh dari masehi ke hijriah:

$ idate --gregorian 20170626
Date Format (dd/mm/yyyy):
+ Input    : 26/ 6/2017      -     Monday(Mon) -         June(Jun)
-----------------------------
+ Output   :  1/10/1438 A.H  -    Ithnain(Ith) -      Shawwal(Sha)

(*) Event on this Day : Eid Al-Fitr

Contoh dari hijriah ke masehi :

$ idate --hijri 14381210
Date Format (dd/mm/yyyy):
+ Input    : 10/12/1438      -       Sabt(Sab) -   Thul-Hijja(Hij)
-----------------------------
+ Output   :  2/ 9/2017 A.D  -   Saturday(Sat) -    September(Sep)

Keterangan lebih lanjut mengenai perintah ini dapat dilihat di Ubuntu Manpage: idate - A Gregorian_Meladi to_from Hijri_Islamic date converter.


Sekian.com

Selasa, 01 November 2016

Mengolah dokumen PDF di Linux

Dokumen berjenis PDF yang merupakan salah-satu jenis dokumen yang dapat dibaca pada semua platform sistem operasi komputer yang beredar saat ini. Dan beberapa format file dokumen pun, juga telah lama dapat diubah menjadi file berformat PDF baik melalui aplikasi pengolah dokumen maupun situs online.

Dan untuk mengolah kembali file PDF, maka dibutuhkan sebuah aplikasi khusus untuk menyuntingnya. Pada sistem operasi Windöws dapat digunakan Adöbé Acrobåt. Sedang pada sistem Linux lain lagi masalahnya. Dan kali ini yang dibahas adalah pengolahan PDF di sistem operasi Linux, dengan sistem yang digunakan oleh penulis adalah Slitaz 4.0 GNU/Linux.

Aplikasi yang dibutuhkan

  • poppler-apps
  • imagemagick
  • gocr

Aplikasi poppler-apps termasuk aplikasi bawaan baku beberapa distro Linux seperti Ubuntu. Aplikasi ini bila dipasang akan menghasilkan beberapa perintah berikut:

  • pdffonts -- analisa font
  • pdfimages -- ekstraksi gambar
  • pdfinfo -- informasi dokumen
  • pdfseparate -- alat pengekstrak halaman
  • pdftocairo -- pengubah PDF ke PNG/JPEG/PDF/PS/EPS/SVG menggunakan Cairo
  • pdftohtml -- pengubah PDF ke HTML
  • pdftoppm -- pengubah PDF ke gambar PPM/PNG/JPEG
  • pdftops -- pengubah PDF ke PostScript (PS)
  • pdftotext -- ekstraksi teks
  • pdfunite -- alat penggabung dokumen PDF

Sedangkan aplikasi gocr berfungsi untuk mengekstrak teks dari file berformat gambar, dengan menggunakan proses yang disebut dengan Optical Character Recognition.

Untuk menginstal paket-paket di atas pada Linux Slitaz dapat dilakukan dengan memberikan perintah pada terminal:

# tazpkg -gi poppler-apps gocr imagemagick

Mengubah PDF berjenis teks

Ciri dokumen PDF yang berjenis teks adalah

  • dapat dilakukan proses salin-tempel pada teks yang dipilih pada dokumen tersebut.
  • merupakan dokumen yang dibuat dari aplikasi pengolah kata.

Untuk mengekstrak halaman dokumen PDF berjenis teks menjadi file berformat teks dapat dilakukan dengan perintah pdftotext seperti contoh di bawah ini.

$ pdftotext -f 10 -l 14 -x 72 -y 36 -W 500 -H 706 dokumen.pdf dokumen10-14

Sedangkan untuk mengubahnya menjadi file berformat html, dapat menggunakan pdftohtml, seperti contoh berikut:

$ pdftohtml  -f 10 -l 14 -i -noframes dokumen.pdf dokumen10-14.html

Mengubah PDF berjenis gambar

Ciri dokumen PDF yang berjenis gambar adalah

  • pemilihan teks tidak dapat dilakukan pada dokumen tersebut, begitu pula proses salin-tempel.
  • merupakan dokumen yang dibuat dari mesin pemindai atau aplikasi pengolah gambar.

Untuk mengekstrak teks dari dokumen PDF dapat dilakukan melalui tahapan:

  • PDF --> Gambar; menggunakan pdfimages
  • Penyunting Gambar; mengatur kembali file gambar bila gambar ada yang miring. Dapat menggunakan mtpaint atau imagemagick
  • Gambar --> teks; menggunakan gocr.

Contoh prosesnya:

$ pdfimages -p -f 5 -l 7 dokumen.pdf test

Contoh lainnya:

$ touch test;for x in `seq 5 7`;do pdfimages -p -f $x -l $x dokumen.pdf test;gocr -i test-00$x-000.pbm >> test;rm test-00$x-000.pbm;done

Penjelasan perintah terakhir di atas:

touch test;  # Buat file kosong test
for x in `seq 5 7`; # pengulangan for untuk proses halaman 5 s/d 7
do 
  pdfimages -p -f $x -l $x dokumen.pdf test; # ubah halaman PDF ke-x ke file gambar test-00x-000.pbm
  gocr -i test-00$x-000.pbm >> test;     # ubah file gambar ke teks lalu tambahkan ke file test
  rm test-00$x-000.pbm;       # hapus file test-00x-000.pbm
done

Pemisahan dan Penggabungan dokumen PDF

Pemisahan

$ pdfseparate -f 1 -l 5 dokumen.pdf %d.pdf

Pemisahan oleh pdfseparate dilakukan secara halaman per halaman.

Penggabungan

Contoh prosesnya menggunakan pdfunite:

$ pdfunite 1.pdf 2.pdf 3.pdf dokumen1-3.pdf
$ pdfunite 4.pdf 5.pdf dokumen4-5.pdf
$ pdfunite dokumen1-3.pdf dokumen4-5.pdf dokumen_doc.pdf

Konversi file ke PDF

Untuk dokumen berbasis office seperti Abiword dan Gnumeric dapat dilakukan saat penyimpanan melalui:
Menu File --> Save as --> ketik nama file --> ubah pilihan File type menjadi PDF --> Tekan tombol Save.

Dokumen yang berjenis teks dan html, dapat dilakukan dengan cara:
Buka dokumen menggunakan Peramban (misal: Firefox) --> Pilih Menu/tombol Print pada peramban --> Print to File --> Output Format: PDF --> Ubah folder penyimpanan di isian Save in folder --> Tekan tombol Print

Untuk gambar dapat menggunakan perintah convert dari imagemagick pada terminal, dengan contoh berikut ini.

$ convert 1.png 2.jpg 3.gif gambar.pdf
$ convert *.png gambar.pdf

Rabu, 19 Oktober 2016

Install Puppy dan DSL Linux secara frugal

Bootloader yang digunakan masih sama seperti bahasan sebelumnya yaitu extlinux, namun bisa saja menggunakan syslinux dengan hasil yang sama.

Bahan-bahan yang dibutuhkan hampir sama seperti pembahasan sebelumnya. Namun file iso dari kedua jenis Linux tersebut harus dikupas dulu.

Jadi istilah 'frugal' mengacu pada proses instalasi sistem yang dilakukan cukup dengan menyalin isi file iso ke boot drive media target.

Pada bahasan ini digunakan dua file iso yaitu dari puppy linux, dan dari damn small linux. File iso puppy yang digunakan adalah: puppy-4.2.1retro-k2.6.21.7-seamonkey.iso, dan file zip damn small linux adalah dsl-4.4.9-embedded.zip.

Patut untuk dicatat bahwa tidak semua file iso dari sebuah distro dapat dilakukan instalasi dengan gaya frugal ini. Perlu untuk mencari informasi terlebih dahulu mengenai file installer yang dapat digunakan secara frugal.

Proses

  • Buat folder di boot drive (partisi media yang sudah diinstal extlinux dan ada file ldlinux.sys -nya) dengan nama puppy dan dsl
  • Buka file iso dari puppy dan file zip dari dsl
  • Salin semua file dan pindahkan ke folder yang telah dibuat
  • Tambahkan pada isi extlinux.conf beberapa baris berikut ini
  • label puppy
     MENU LABEL ^puppy
     kernel /puppy/vmlinuz
     append initrd=/puppy/initrd.gz pmedia=usbflash
    
    
    LABEL dsl
     MENU LABEL ^dsl-4.4.9 embedded
     KERNEL /dsl/linux24
     APPEND ramdisk_size=100000 init=/etc/init lang=us apm=power-off vga=normal initrd=/dsl/minirt24.gz nomce noapic qemu quiet BOOT_IMAGE=knoppix knoppix_dir=/dsl/KNOPPIX frugal
    
    
  • Boot ulang untuk melihat hasilnya

Kamis, 13 Oktober 2016

Hex Editing sederhana pada Linux

Hex editing merupakan cara pengeditan file dalam format biner, dimana kita dapat mengubah isi file secara byte per byte. Hex editing sering digunakan dalam pengubahan nilai pada file-file penyimpanan aplikasi game, juga yang tak kalah penting adalah untuk dapat megubah nilai pada file backup master boot record yang berbentuk biner.

Dalam Linux, untuk dapat melakukan Hex editing dapat dilakukan dengan cara paling sederhana, yaitu menggunakan editor teks vim. Contohnya adalah sebagai berikut:

Kita siapkan file binernya, dalam hal ini kita buat saja dengan menyimpan isi master boot record dari media penyimpan yang terpasang menggunakan perintah dd pada terminal.

# dd if=/dev/sdb of=mbr.bin bs=512 count=1
1+0 records in
1+0 records out

Lalu kita jalankan vim.

# vim -b mbr.bin

Pilihan -b pada perintah di atas berguna untuk mengaktifkan mode binary pada vim. Atau bila sudah terlanjur masuk vim, dapat menggunakan perintah :set binary.

Di dalam vim, tampilan awalan file terlihat seperti berikut:

binary file

Lalu, saat masih berada di mode perintah, langsung ketik

:%!xxd

Tampilannya langsung berubah menjadi format hexdump, dengan terlihat adanya tampilan alamat offset pada sisi kiri

binary2 file

Sekarang kita dapat mengedit isi file dengan mengacu kepada alamat offset yang ada. Dan lebih baik dalam mengubah tiap nilai heksadesimal-nya, menggunakan tombol keyboard r (replace).

Kembali ke tampilan semula, dengan menggunakan perintah:

:%!xxd -r

Simpan lalu keluar dengan

:wq!