vim includes many keyboard layouts, defined as mappings for symbols of the english layout. Unfortunately, these maps are not useful when the base layout is german. QWERTZ vs QWERTY is not the only difference. Now, deutsch-russisch und deutsch-arabisch vim keymaps sind da.
I have no idea how to press "CTRL-^", therefore decided to use another combination: "Shift-F1". Add to vimrc:
map! <S-F1> <C-^>
Put the file "russian-jcuken-z.vim" to the directory "~/.vim/keymap". Add to vimrc:
set keymap=russian-jcuken-z set imsearch=-1 set iminsert=0
Only the first line is important, the rest is my preferences.
Put the file "arabic_utf-8.vim" to the directory "~/.vim/keymap".
Modify Python script "keymap-de-nn.py" to your needs.