LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 05-31-2023, 12:03 AM   #1
etcetera
Member
 
Registered: Aug 2004
Posts: 436

Rep: Reputation: 17
How to install cyrillic keyboard


What is the Linux equivalent of this? Basically the keyboard is transliterated. It's not converted into the real Cyrillic keyboard but letters are transliterated. The following does it for Win10, how to do it in a Redhat derivative?

https://winrus.com/kbd_e.htm

I am running latest-greatest Oracle Linux 9.2.
 
Old 05-31-2023, 12:28 AM   #2
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 21,888

Rep: Reputation: 7317Reputation: 7317Reputation: 7317Reputation: 7317Reputation: 7317Reputation: 7317Reputation: 7317Reputation: 7317Reputation: 7317Reputation: 7317Reputation: 7317
is this what you are looking for?
https://askubuntu.com/questions/1011...russian-keyboa
 
Old 05-31-2023, 01:33 AM   #3
astrogeek
Moderator
 
Registered: Oct 2008
Distribution: Slackware [64]-X.{0|1|2|37|-current} ::12<=X<=15, FreeBSD_12{.0|.1}
Posts: 6,268
Blog Entries: 24

Rep: Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195
I think that what you mean by "transliterated" is that the keys are phonetically similar or the same. This is "phonetic" keymapping and is commonly called yawerty, the mappings I use are below:

Code:
qwerty <-> яверты
+-41+--2+--3+--4+--5+--6+--7+--8+--9+-10+-11+-12+-13+-----14+
|~ Ю|!  |@  |# ё|$ Ё|%  |^ Ъ|&  |*  |(  |)  |_ Ъ|+ Ч| BACK- |
|' ю|1  |2  |3  |4  |5  |6  |7  |8  |9  |0  |-  |= ч| SPACE |
+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
+---15+-16+-17+-18+-19+-20+-21+-22+-23+-24+-25+-26+-27+---43+
| TAB |Q Я|W В|E Е|R Р|T Т|Y Ы|U У|I И|O О|P П|{ Ш|} Щ|| Э  |
|     |q я|w в|e е|r р|t т|y ы|u у|i и|o о|p п|[ ш|] щ|\ э  |
+-----+---+---+---+---+---+---+---+---+---+---+---+---+-----+
+-----58+-30+-31+-32+-33+-34+-35+-36+-37+-38+-39+-40+-----28+
| CAPS  |A А|S С|D Д|F Ф|G Г|H Х|J Й|K К|L Л|:  |"  | ENTER |
| LOCK  |a а|s с|d д|f ф|g г|h х|j й|k к|l л|;  |'  |       |
+-------+---+---+---+---+---+---+---+---+---+---+---+-------+
+-------42+---+---+---+---+---+---+---+---+---+---+-------54+
| SHIFT   |Z З|X Ь|C Ц|V Ж|B Б|N Н|M М|<  |>  |?  | SHIFT   |
|         |z з|x ь|c ц|v ж|b б|n н|m м|,  |.  |/  |         |
+---------+---+---+---+---+---+---+---+---+---+---+---------+
If that looks like the keymapping you need then "yawerty" is what you want.

Next, do you need it to work in both console and in virtual terminals (i.e. under Xorg)?

I use a slightly modified keymap in console but I hesitate to just paste the configs here as it may frustrate you more than help without a little trial and error. I would suggest you see what Oracle support offers first, they may have just what you want. Otherwise I'll look in here tomorrow and see what we can do (I am on the way out the door for the night!).

But if you want to set it up under Xorg that may be a little more straight forward. I'll paste a snippet from my own notes below. I would read them carefully and compare with your existing Xorg setup (I know nothing at all about Oracle Linux). Make backups of your existing configs and see if any of this works for you, but do not copy/paste it all - that will not likely work!

Code:
To set the alternate keyboard per user/session, add something like the following
to the ~/.bashrc or /etc/bashrc:

alias RXKB='setxkbmap -option grp:alt_shift_toggle us,ru -variant ",phonetic" \
-display $DISPLAY && echo "Alt-Shift to toggle"'

where grp:alt_shift_toggle may be any valid option from man xkeyboard-config (see below).

User may then invoke RXKB to load alternate keymap and switch keymaps with Alt-Shift
(or other key combination) without further configuration.

To automatically load the alternate keymap for all users when X is started:

   cp /usr/share/X11/xorg.conf.d/90-keyboard-layout-evdev.conf /etc/X11/xorg.conf.d/

Add following lines (modify as req'd):
        Option "XkbLayout" "us,ru" #keymaps to load, toggle sequence
        Option "XkbVariant" ",phonetic" #phonetic=yawerty, empty=ruwin
        Option "XkbOptions" "grp:alt_shift_toggle,terminate:ctrl_alt_bksp"

See man xkeyboard-config for alternate hot-key options, some examples:
        Option "XkbOptions" "grp:shift_caps_toggle,terminate:ctrl_alt_bksp"
        Option "XkbOptions" "grp:alt_shift_toggle,terminate:ctrl_alt_bksp"
        Option "XkbOptions" "grp:caps_switch,terminate:ctrl_alt_bksp" #grp:=hot-key

Note: There must be only one "XkbOptions" line within the group, or "Section".

You may optionally want/need to edit other optiona to work with a given system.
Hope that helps (and I didn't forget anything obvious), or at least sets you on the right path! I'll look in tomorrow.

Good luck!

Last edited by astrogeek; 05-31-2023 at 01:43 AM. Reason: tpoy
 
Old 05-31-2023, 02:18 AM   #4
etcetera
Member
 
Registered: Aug 2004
Posts: 436

Original Poster
Rep: Reputation: 17
Oracle Linux is just a clone of Redhat (Fedora or CentOS). Running latest-greatest Gnome 40 that I don't really care for.

Yeah, phonetic transliteration is what I want. How do I enable it?

I do tweak the map a bit, for example ` becomes ь and = becomes ю but most of the rest are the same. that is, C=ц.

I want to switch from one keyboard to another with a key sequence, like I do in Win10, is that possible?
Or program a key sequence to run a script which switches the keyboard.

I need the entire character map so I can modify it my standard.

Last edited by etcetera; 05-31-2023 at 02:19 AM.
 
Old 05-31-2023, 11:37 AM   #5
DavidMcCann
LQ Veteran
 
Registered: Jul 2006
Location: London
Distribution: PCLinuxOS, Debian
Posts: 6,142

Rep: Reputation: 2314Reputation: 2314Reputation: 2314Reputation: 2314Reputation: 2314Reputation: 2314Reputation: 2314Reputation: 2314Reputation: 2314Reputation: 2314Reputation: 2314
I assume that Oracle uses the Gnome desktop. If so the steps are to enable the alternative keyboard and to set a shortcut to switch between them: keyboards

If you need to customise a keyboard, the file is probably in /usr/share/X11/xkb/symbols. You can find which one it is with the command
Code:
setxkbmap -print | grep symbols
 
Old 05-31-2023, 11:37 AM   #6
astrogeek
Moderator
 
Registered: Oct 2008
Distribution: Slackware [64]-X.{0|1|2|37|-current} ::12<=X<=15, FreeBSD_12{.0|.1}
Posts: 6,268
Blog Entries: 24

Rep: Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195Reputation: 4195
Oracle and Red Hat are both unfamiliar to me, but other than distro specific Xorg configs I think everything else is from kernel and Xorg upstream so should be the same.

This short thread was my own introduction to the subject and should apply to just about any GNU/Linux distro. In particular the very helpful post #9 by member bormant should include everything you need to locate and modify a suitable keymap.

If you have a file /usr/share/kbd/keymaps/i386/qwerty/ru-yawerty.map.gz then you should be at the same starting point and can easily take it from there.

Another thread here at LQ started by member w1k0 may also be helpful to you.

Following is from my own config notes for console keymap and uses the keymap file referenced in above links (You will need to adapt the start script to your init system but can invoke it manually as shown with loadkeys).

Code:
You must first have set the console for UTF-8 in kernel:

   append=" vt.default_utf8=1 "

...and set console font to ter-v16n (or other UTF-8 Cyrillic)
in /etc/rc.d/rc.font (See fonts/README_FONTS)

Copy ru-yawerty_cplk-UTF-8.map.gz to
/usr/share/kbd/keymaps/i386/qwerty/ru-yawerty_cplk-UTF-8.map.gz

Insert the following lines into /etc/rc.d/rc.keymap:

if [ -x /usr/bin/loadkeys ]; then
    echo "Loading keybord layout, CapsLock to toggle"
    /usr/bin/loadkeys ru-yawerty_cplk-UTF-8
fi

To load the keymap immediately:

   loadkeys ru-yawerty_cplk-UTF-8

Note that a suitable font must be already loaded or an error such as:

   unknown keysym 'cyrillic_small_letter_io'

... will result.

To automatically load the keymap at boot:

   chmod +x /etc/rc.d/rc.keymap

Capslock toggles between US/Russian keymap
Shift-Capslock toggles caps lock
That should get you going without too much fuss!

Good luck!
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Cyrillic avi subtitles with Mplayer (--T--) Linux - Software 3 01-08-2009 11:59 AM
Window Maker and cyrillic keyboard layout vpv Linux - Desktop 4 10-22-2008 07:27 AM
how to toggle between keyboard maps in console-cyrillic? bezdomny Linux - Software 2 08-03-2008 06:59 PM
Problems with cyrillic encoding in Mandrake 9.2 buboleck Mandriva 1 12-31-2003 09:00 PM
I want to use Cyrillic (Russian) fonts! maximizer Linux - Software 10 12-26-2003 09:47 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 11:22 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration