In my lubuntu machine terminal the Arabic letters are being displayed from left-to-right and they are not bound together (Altogether on a text editor everything is working correctly).

The reason for wanting terminal to display Arabic is that I'm trying to develop a Python program which uses graphical elements like TextBox (actually Entry in tkinter). I found different modules to output strings consisting of Arabic letters in a correct form but while the user is typing in the Textbox it displays the same way as in my terminal (from left to right and with isolated individual letters).

How can I get these scripts to display correctly?


1 Answer 1


You need to install bicon for this purpose.

So you can use this method for enable Persian or Arabic in lxterminal:

First, install libfribidi0 and libfribidi-dev packages.

sudo apt update
sudo apt install libfribidi0 libfribidi-dev

Then download and install bicon:

For 64bit machines:

Download this package and then install with this command:

sudo dpkg -i bicon_0.2.0-1ubuntu0~ppa4_amd64.deb

For 32bit mchines:

Download this package and then install with this command:

sudo dpkg -i bicon_0.2.0-1ubuntu0~ppa4_i386.deb

Then for type Persian or Arabic in lxterminal you should run this command:


But for automate this process you can edit /usr/share/applications/lxterminal.desktop file with this command:

sudo nano /usr/share/applications/lxterminal.desktop

And apply this changes to that file:

  1. Change Exec=lxterminal to Exec=lxterminal -e bicon.bin
  2. Add Terminal=true to this file.

So after save the changes , you can see these lines in that file:

Exec=lxterminal -e bicon.bin

So After changes, you can tap on lxterminal icon and type Persian (or Arabic).

But if you want to run bicon , also with Ctrl+Alt+t buttons, you should do this steps:

Edit ~/.config/openbox/lubuntu-rc.xml file with this command:

nano ~/.config/openbox/lubuntu-rc.xml

Then change lxsession-default terminal command in <!-- Launch a terminal on Ctrl + Alt + T--> section to lxterminal -e bicon.bin.

So you should change:

  <!-- Launch a terminal on Ctrl + Alt + T-->
  <keybind key="C-A-T">
    <action name="Execute">
      <command>lxsession-default terminal</command>


  <!-- Launch a terminal on Ctrl + Alt + T-->
  <keybind key="C-A-T">
    <action name="Execute">
<command>lxterminal -e bicon.bin</command>

Then run this command to apply this changes:

openbox --reconfigure
  • It's better to overwrite /usr/share/applications/lxterminal.desktop by creating lxterminal.desktop in ~/.local/share/applications instead of implementing you changes straight to the original file. also it's a good idea to leave some references ;)
    – Ravexina
    Commented Jun 5, 2017 at 15:04
  • @Ravexina Thanks for your reply and your help ; I've update my answer as you said. Commented Jun 5, 2017 at 15:21
  • @Ravexina I'm so sorry ; but when I test your solution in the VM it's not be worked. so I undo the changes Commented Jun 5, 2017 at 15:48
  • @ali76 I truly stand at awe of your professional expertise as well as highly organized and legible instruction you made to guide a layman as I am. Now lxterminal displays Persian seemlessly. Thank you. But the funny thing for me is that still Python IDLE and tkinter widgets are not doing so :(
    – Ali
    Commented Jun 5, 2017 at 17:23

Not the answer you're looking for? Browse other questions tagged .