Editors

文本(從文件)到正在執行的程序

  • March 24, 2022

我手上有退行性骨病,我想製作看起來像是在 Sublime 或 Kate (KDE) 等文本編輯器中輸入的 YouTube 影片。

如何讓文本編輯器在執行時通過 stdin 接收輸入文本文件(鍵入效果) - 可能使用套接字、管道、程序 ID 等?

謝謝

使用基於終端的文本編輯器,例如 , vi, jedjoe或//vim儘管它們也有 GUI 版本),您可以使用諸如, ‘s或模擬輸入(或重播擷取的會話)之類的東西。emacs``xemacs``expect``zsh``zpty``screen``tmux``scriptreplay``script

對於 X11 文本編輯器(儘管也適用於在 X11 終端仿真器中執行的終端編輯器),您可以使用xdotoolor xte(from xautomation) 來模擬按鍵和釋放事件。

xdotoolkeydown,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

有關詳細資訊,請參見各自的手冊頁。

引用自:https://unix.stackexchange.com/questions/696617