我在 Wine 中安装了 Lingoes 字典。它有一个由剪贴板更改触发的弹出式翻译器。当我复制或选择一个项目时,它必须翻译该词,但在 Wine 中,当我复制或选择一个词时,Lingoes 词典仍然没有响应,就好像没有复制任何内容一样。我可以通过右键单击上下文菜单粘贴到 Lingoes 字典中,然后进行翻译。
如何在 Wine 和 X11 之间启用自动剪贴板同步?
该线程列出了解决方案,即您需要创建注册表项
[HKEY_CURRENT_USER\Software\Wine\X11 Driver]
"UsePrimarySelection"="1"
Run Code Online (Sandbox Code Playgroud)
(一些消息来源表明"UsePrimarySelection"="y",但这具有相同的效果)。
欲了解更多信息,请参阅这篇文章。特别是如果您想将文本从VNC服务器(例如Linux)复制到VNC客户端(例如Windows),您需要额外安装autocutsel并添加~/.vnc/xstartup如下内容:
autocutsel -s PRIMARY -fork
Run Code Online (Sandbox Code Playgroud)
这是必需的,因为历史上VNC 协议使用旧的和已弃用的 CUTBUFFER(传奇应用程序xterm从远古时代就支持它开箱即用),而像 Wine 这样的新应用程序默认使用 CLIPBOARD(通过上面的注册表选项切换到 PRIMARY)。autocutsel应该用于同步所有这些类型的缓冲区。
感谢dma_ks 的回答,我找到了一个适合我的变体。
export WINEPREFIX=~/.wine32/ 使用您定义的 WINEPREFIXexport WINEDEBUG=fixme-all:~$ wine reg query "HKLM\Software\Wine\X11 Driver"
reg: The system was unable to find the specified registry key or value
:~$ wine reg query "HKCU\Software\Wine\X11 Driver"
reg: The system was unable to find the specified registry key or value
Run Code Online (Sandbox Code Playgroud)
:~$ wine reg add "HKCU\Software\Wine\X11 Driver" /v UsePrimarySelection /t REG_SZ /d 1
The operation completed successfully
:~$ wine reg add "HKLM\Software\Wine\X11 Driver" /v UsePrimarySelection /t REG_SZ /d 1
The operation completed successfully
Run Code Online (Sandbox Code Playgroud)
在示例中,我将其设置为1定义 TRUE。源文件中定义的其他有效选项是
y Y t T 1n N f F 0注意1:WINEPREFIX必须设置为与应用程序运行的 wineprefix 一致,如果每个应用程序运行在不同的前缀上,您可能需要修改每个前缀
注2:HKLM和HKCU分别是HKEY_LOCAL_MACHINE和HKEY_CURRENT_USER的注册表键快捷方式
注意 3:您也可以使用 GUI 应用程序 regedit 来执行所有这些操作。您可以使用 启动它wine regedit。
细节:
查看源代码,它显示为 wine
HKCU\Software\Wine\AppDefaults\app.exe\X11 Driver\UsePrimarySelection,如果存在则返回其分配的值HKCU\Software\Wine\X11 Driver\UsePrimarySelection并返回其分配的值(如果存在)有关的: