This post is only for those interested in hard-core deep-level computer programming.
It was driving me crazy that my dear Bohemicus would not 100% work with some online CAT tools… well, it sort of works, it is still very well usable, but not to 100%. And what’s the problem? The problem is that the Ctrl+Insert keyboard combo that is often used to insert text from source to target segment. This is a crutial functionality for Bohemicus, and without it, Bohemicus is somehow limited. It works well if you physically press it on your keyboard, but would stop working when you try to send it as a sendkey from Bohemicus.
This intrigued me a lot…. I even attempted sending physical scancodes to other applications, but to no avail….. and I felt: why in bloody hell would this not work?
After endless hours of researching, I found 2 reasons:
1. It seems that Firefox/Chrome/Edge simply block the Insert key. They just decided too many users were annoyed by this INS/OVR feature and so they simply turned the INSERT key off. And it cannot be turned back on. But still, using a PHYSICAL keyboard, it was possible to press the Ctrl+Insert combo to insert text from the source.
2. As it turns out, Windows applications have some means to distinguish between physical and virtual keyboard presses, it’s the LLKHF_INJECTED flag that is raised by Windows everytime an application tries to send a virtual keystroke to some other application…. so this is how applications can identify spoofed keystrokes.
And what it all means for me, the creator of Bohemicus? Basically, I can only see one solution to this problem: write my own keyboard driver that would work in conjunction with Bohemicus so that Windows really thinks this is a real physical keyboard. Hmmm, I have never written any driver…. looks like some studying lies ahead….
Edit (May 12, 2021): Ok, turns out I was wrong. The solution is much more simple. The primary cause of all these problems is the Insert key... There are actually 2 Insert keys on a PC keyboard: 1 is grey in the Insert/Del/Home/End/PgUp/PgDn group, the other one is the Numpad0, in the numeric block. And they have different keyboard scancodes. The grey one must be escaped by the 0xE0 value when sending scancodes. More info can be found in this great article that made me finally realize where the problem was: https://www.michaelwda.com/post/scancodes
This is the piece of code that explains it all:

What it means: In order to send the correct grey Insert key scancode, 2 scan codes must be actually sent: the escaping 0xe0, followed by the actual Insert key scancode (0x52). Also, dwFlags and VirtualKeyCode must be set to 0 when sending the escaping code (0xe0). Took me 3 days to figure this out….
Thank you very much Michael!
You can use Bohemicus to translate PO (Portable Object) files with DeepL, Gemini, GPT or... Read more...
I have improved the algorithm to translate MS Word/Excel files in Bohemicus. Previously, if there... Read more...
Large DeepL glossaries are now supported - there was a bug in Bohemicus that prevented glossaries... Read more...
You can now translate MS Word/Excel files directly using ChatGPT-4o, DeepL, ModernMT,... Read more...
Users on Windows 7 might have experienced issues when activating Bohemicus. This was due to my... Read more...
Voicetyping requirements These are the advantages of voice-typing with Bohemicus: 1) No... Read more...
People usually try to export their files from Across to e.g. Trados, because Across is a pain... Read more...
This is how you REMOVE your machine-translation markers from your memoQ files:... Read more...
I have added support for the latest iteration of ChatGPT, the gpt-4o version. Simply select it... Read more...
I have improved the DeepL glossaries functionality - Bohemicus will now go through your glossary... Read more...
You can create a glossary for DeepL manually directly in Bohemicus DeepL Glossary Setting... Read more...
You can rephrase any text in many languages using ChatGPT You can rephrase any text in many... Read more...
You can now use Bohemicus to machine translate texts in any CAT tool, or directly Trados... Read more...
Dear Translator, in the video below, I am going to show you how you can easily use machine... Read more...
Me pretending some work… I have been a professional technical translator since 2007, ... Read more...
Learn how to use Bohemicus with Crowdin I am going to show you how you can very effectively use... Read more...
What's new: improved machine-translation-marks remover, now removes also the AMT marks... Read more...
If you are a translator, I am sure, you want to make more money. Just like everyone. But well,... Read more...
You can use Bohemicus to keep track of your business records, and to issue invoices. Before you... Read more...
This feature can be very helpful when you need to preview the content of a Trados package. For... Read more...
You can very easily remove those light-blue AT or NMT marks in machine-translated... Read more...
This has happened a couple of times to me: I just forgot to do a job! This usually happens to me... Read more...
This post can especially be useful to users of older SDL Studio versions. If you are using newer... Read more...
What's new Support for online CAT tools (SmartCat, Crowdin, XTM, Coach...) has been... Read more...
The PDF format is truly ingenious - documents in the PDF format will appear exactly as... Read more...
Before I explain the basic idea behind all CAT tools, let me consider the naive approach to... Read more...
This post is only for those interested in hard-core deep-level computer programming. It was... Read more...
Translating a webpage is a very easy task... if you know how to do it. Definition of a... Read more...
Yes, this is indeed possible. I remember those times 13 years back when translating 5000... Read more...
This is a short video on how you can configure the Across CAT tool (made by Across GmbH, Germany) ... Read more...
These are a few tips I would give to every aspiring translator trying to start his/her career... Read more...
(from the translator's perspective) This article is based on my 13 years of experience... Read more...
The raison d'etre The Ctrl+Alt+Space shortcut was originally conceived to deal with the... Read more...
The new version of Bohemicus is out! What's new: 1) added support for Memsource 2)... Read more...
These are the 10 features of Bohemicus I use every day. You can watch this video to see... Read more...
Unit conversion is something you will definitely encounter when working as a... Read more...
What are they? As soon as you try to machine translate just about anything in any major... Read more...
Definition of a clipboard manager For those who don't know what a clipboard manager is.... Read more...
So, this is the core idea of Bohemicus: Let's create an interface between you and your CAT... Read more...
This is the story of how I became a professional translator. The beginnings I certainly... Read more...
So, I suppose, the original idea of a CAT tool was something like this: Let's create a... Read more...
And why do some people seem to utterly hate it ...without even trying it out? Am I getting... Read more...
I have never really understood this concept. So, an agency requires you to do a translation... Read more...
Why is file extension rename useful? You can very easily rename a file extension. This... Read more...
You can very easily and conveniently send large files up to 100 MB through the Bohemicus... Read more...
What are hotkeys? Hotkeys are the heart of Bohemicus. They are simply combinations of... Read more...
If you want to use the speech-to-text feature, you can connect your Android phone/tablet also... Read more...
What is it good for? You can very quickly and easily open your pre-defined folders just by... Read more...
Setting it up Machine translation is very easy in Bohemicus. First, you need to set it up -... Read more...
You can very easily and conveniently launch the Windows Snipping Tool to make screenshots by... Read more...
What are hints in hintboxes Every time you press the Ctrl key, a couple of semi-transparent... Read more...
Activating Bohemicus is easy. You will need your activation code that you received upon your... Read more...
Prerequisities 1. In order to receive a Google API translation key, you will need a Google... Read more...
You should set up Bohemicus before you run it for the first time. Set up the machine... Read more...
If you want to work with online CAT tools, such as SmartCat, XTM, Crowdin, Coach, etc..., just... Read more...
Converting metric/imperial units is very easy with Bohemicus. You can set up 3 hotkeys to... Read more...
Now, let's see how to connect your Android phone to your Windows and then to Bohemicus. If... Read more...
Why you should use Bluetooth Bluetooth is the preferred way of connecting Bohemicus both in... Read more...
In Bohemicus, you can very easily transfer files and folders between 2 or more local computers... Read more...
Why do translators and writers take notes Note taking is an important task for all... Read more...
How to work with translation memories in Bohemicus Use your own translation memories...... Read more...
What is it good for? You can use this function to e. g. distinguish various folders from... Read more...
What are they good for? Non-breakable spaces are an important text element in case you want... Read more...
We have all been there: you need to google someting, so normally you would just select your... Read more...
Quotation marks can be a hassle Different languages use different quotation marks. The... Read more...
Make more money as a translator If you are a translator, I am sure, you want to make more... Read more...
Bohemicus offers a bunch of text editing features that can be really handy. It is... Read more...
Speech recognition, or speech-to-text functionality, or just voice dictation, is... Read more...
You can use Bohemicus to interactively search in online dictionaries. How it... Read more...
While working with Bohemicus, you can plug-in 2 local offline dictionaries. This can be very... Read more...
Voice dictation (speech-to-text functionality) is an extremely important feature of Bohemicus. Why... Read more...
Recent announcements: • PO files can now be translated in Bohemicus! Click to learn... Read more...
Machine translation can greatly increase your translation speed, there's no doubt about it.... Read more...
User using the Windows clipboard What is a clipboard manager? As you probably know there is this... Read more...
Here is a video presentation of the Bohemicus Imperial/metric unit conversin... Read more...