Additional information about BiCon's behavior
=============================================

BiCon behaves differently if called as "bicon" or "bicon.bin", and also
started from the console (or a tty) versus in a graphical environment.

BiCon ships two keymaps: arabic.map.gz and ir.map.gz and some console
fonts, mainly bicon-8x16-512.psfu.gz.

It can be started as "bicon" or "bicon.bin"

If started as "bicon" it sets the keymap or keyboard layout in a way that
depends whether the "bicon" command is given or not an argument.

1) If started as "bicon" from the console.

If a two character country code is given as argument it is considered
to choose the keymap, else the country (or "territory" to be accurate)
part of LANG is used.
- If the country (converted to lowercase letters) is found in this list:
  ae dz eg iq jo ko kw lb ly ma om qa sa sd sy tn ye
  then the keymap "arabic" is chosen.
- If the country is "IR" or "ir" then the keymap "ir" is chosen.

The font bicon-8x16-512 is always used with its Unicode map.

IMPORTANT. You won't be able to use the "setfont" command after having
started bicon as a regular user. You will have to temporarily become root
with "su" to change the font if you want.

2) If started as "bicon" from an X terminal.

You will need to use an UTF-8 capable or enabled terminal.

A switchable keyboard layout (US + the language that corresponds to the
country set by the user or found in LANG) is set.

IMPORTANT:
- BiCon doesn't set the font. You'll have to do that yourself. Be careful
  to use a font including the needed glyphs.
- BiCon sets the "option" for the X server to:
    "grp:alt_shift_toggle,grp_led:scroll"
  and the "layout" to:
    "us,<ir or (country code)>"

This will override the key combination that you possibly have set in
/etc/X11/xorg.conf.d/90-keyboard-layout.conf to toggle keyboards.

But you can change the settings made by BiCon with a command like this
one (after having started BiCon, of course):
  setxkbmap \
    -display "$DISPLAY" \
    -layout "<layout1>,<layout2>" \
    -option "<your options"> \
    -print | \
  xkbcomp -w 2 - "$DISPLAY"

3) If started as bicon.bin, BiCon doesn't load any font or keymap.
You might prefer it that way if you want to keep your own settings.

Reference: file bin/bicon.in in the source archive.

See also:
- man bicon
- man bicon.bin
- documents in /usr/doc/bicon-<version>

Didier Spaier <didier at slint dot fr>, 27/07/2015
