6

问题

我正在尝试做:

xdotool type 'date;'

但不是预期的

date;

我得到:

dateq

我有一个希腊键盘,但是当我发出命令时,语言设置为美国。注意:当使用希腊语时,键盘的键 'q' 用于分号';' (这是默认行为/映射

问题

我该怎么做才能得到一个带有 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
4

4 回答 4

8

尝试

setxkbmap <yourlocale>

在调用 xdotool 之前

于 2016-04-07T15:27:03.403 回答
1

这是一个已知的错误。您可以尝试的一件事是升级到最新版本的 xdotool。如果这不起作用,请查看此页面,尤其是回答 #29:

http://code.google.com/p/semicomplete/issues/detail?id=13

该问题已通过2014-04-07 的拉取请求(现在是 3 年多前)得到解决。如果今天还有人遇到这个问题,我认为你最好的选择是升级 xdotool。

于 2013-08-20T09:16:21.350 回答
0

这些对我有用:

echo "date;" | xvkbd -xsendevent -file -
xvkbd -xsendevent -text 'date;'

(删除 -xsendevent 选项,您会遇到与 xdotool 相同的问题)

于 2015-07-06T23:35:42.537 回答
0

扩展 fazae 的答案:

我似乎有最新版本的 xdotool。但是错误仍然存​​在:

$ xdotool --version
xdotool version 2.20110530.1

$ xdotool type ';'
$

键入“$”而不是“;”。

$ xdotool type ':'
^

输入 '^' 而不是 ':'

FIX(例如 us 和 ru 语言环境,alt+shift 用于切换布局):将语言环境设置为 us,使用 alt+shift 启用布局切换:

$ setxkbmap us && xdotool type ':' && setxkbmap -option grp:alt_shift_toggle us,ru
:
于 2019-06-11T10:39:29.793 回答