xsendkey

xsendkey は X11 ウインドウにキーイベントを送るツール。 ライセンスは GPL である。

# Makefile for xsendkey
CC=gcc
CFLAGS=-g -Wall
LDFLAGS=-L /usr/X11R6/lib -lX11
all: xsendkey
xsendkey: xsendkey.o
clean:
	rm -f xsendkey.o xsendkey

xsel と組み合わせると、任意のウィンドウに任意の文字列を流し込めそうだ。

つまり、xsel でクリップボードに(日本語の)文字列を入れて、xsendkey で Ctrl-V を送ればよい。

試した環境は ubuntu 9.04 + lxde

準備

sudo apt-get install xsel

Window ID は xwininfo で調べる。

root 以外のウィンドウは、クリックして選択して調べる。

#!/bin/bash
# saved with utf-8-unix
echo 'select window: ready..'
sleep 3
echo 'select window: click!'
WID=`xwininfo | grep "Window id" | cut -f4 -d' '`
echo $WID
KEY='Control+V'
echo -n 'hoge日本語' | xsel -i -b
echo 'focus to edit window..'
sleep 3
./xsendkey -window $WID $KEY
xsendkey.txt · 最終更新: 2010/09/02 11:23 (外部編集)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0