我正在尝试:
xdotool type 'date;'
但不是预期的
date;
我明白了:
dateq
我有一个希腊键盘,但是当我发出命令时,语言设置为美国。注意:当使用希腊语时,键盘的键'q'用于分号';' (这是默认的behavior/mapping)
如何使用xdotool的类型获得分号?
我在XUbuntu上使用Xfce 4.8
$ xfce4-terminal -V
xfce4-terminal 0.4.8 (Xfce 4.8)
$ setxkbmap -print -verbose 10
Setting verbose level to 10
locale is C
Applied rules from evdev:
rules: evdev
model: pc105
layout: us,gr
variant: ,
options: grp:caps_toggle
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete
symbols: pc+us+gr:2+inet(evdev)+capslock(grouplock)
geometry: pc(pc105)
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+gr:2+inet(evdev)+capslock(grouplock)" };
xkb_geometry { include "pc(pc105)" };
};
$ sudo lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 12.04.2 LTS
Release: 12.04
Codename: precise
答案 0 :(得分:5)
尝试
setxkbmap <yourlocale>
在调用xdotool之前
答案 1 :(得分:2)
这是一个已知的错误。您可以尝试的一件事是升级到最新版本的xdotool。如果这不起作用,那么请查看此页面,尤其是回答#29:
http://code.google.com/p/semicomplete/issues/detail?id=13
问题由this pull request在2014-04-07(现在已超过3年前)解决。如果有人今天仍然遇到这个问题,我认为你最好的选择是升级xdotool。
答案 2 :(得分:0)
这些对我有用:
echo "date;" | xvkbd -xsendevent -file -
xvkbd -xsendevent -text 'date;'
(删除-xsendevent选项,你会遇到与xdotool相同的问题)
答案 3 :(得分:0)
扩展fazae的答案:
看来,我拥有最新版本的xdotool。但是错误仍然存在:
$ xdotool --version
xdotool version 2.20110530.1
$ xdotool type ';'
$
输入'$'而不是';'。
$ xdotool type ':'
^
输入'^'而不是':'
FIX(用于us和ru语言环境的示例,用于切换布局的alt + shift):将语言环境设置为我们,使用alt + shift启用布局切换:
$ setxkbmap us && xdotool type ':' && setxkbmap -option grp:alt_shift_toggle us,ru
: