Editors
文本(從文件)到正在執行的程序
我手上有退行性骨病,我想製作看起來像是在 Sublime 或 Kate (KDE) 等文本編輯器中輸入的 YouTube 影片。
如何讓文本編輯器在執行時通過 stdin 接收輸入文本文件(鍵入效果) - 可能使用套接字、管道、程序 ID 等?
謝謝
使用基於終端的文本編輯器,例如 ,
vi
,jed
(joe
或//vim
儘管它們也有 GUI 版本),您可以使用諸如, ‘s或模擬輸入(或重播擷取的會話)之類的東西。emacs``xemacs``expect``zsh``zpty``screen``tmux``scriptreplay``script
對於 X11 文本編輯器(儘管也適用於在 X11 終端仿真器中執行的終端編輯器),您可以使用
xdotool
orxte
(fromxautomation
) 來模擬按鍵和釋放事件。
xdotool
有keydown
,keyup
子命令將相應的 X11 事件發送到視窗,或key
按順序組合兩者,並type
發送按鍵+釋放事件的序列以生成一些文本。xdotool type --delay 300 $'test\n'
模擬
t
,e
,s
,t
,Enter
按鍵按下+釋放,它們之間的間隔為 300 毫秒。使用
xte
,您可以通過以下方式實現相同的目的:xte << 'EOF' key t usleep 300000 key e usleep 300000 key s usleep 300000 key t usleep 300000 key Return EOF
有關詳細資訊,請參見各自的手冊頁。