我知道大家普遍认为 Photoshop 在 Wine 下最多只能勉强使用。我是少数幸运儿之一,CS2(显然是最不奇怪的版本之一)在 Ubuntu 12.04 的 Wine 1.4 下运行良好。所有提到的怪异现象(例如文本工具引起的崩溃)均未出现。除了 Bridge 拒绝启动(对于我的实际目的而言)这个不重要的例外之外,其余都运行良好。
它唯一的严重缺陷是,关闭时,它会完全弄乱 Unity 桌面,自动失去 3D 外观,给我留下了一个 D2 桌面,方角窗口和没有(x)(-)([]) 按钮和窗口标题。这迫使我通过 Ctrl-Q 关闭窗口并最终重新启动以恢复正确的桌面和窗口外观。
在可能的情况下,这种行为没有解决方案,是否有一个命令或脚本可以用来恢复通常的桌面?这将允许我放置一个用于该目的的发射器。
我会很感激任何与寻找 Photoshop 替代品无关的评论。我已经尝试了所有方法,但它们无法让我以实际方式完成我需要做的事情。
提前谢谢了。
乔治。
更新时间:2012 年 5 月 27 日 14:20 CST:
伊莱亚·卡根和艾尔文帮助我将问题定位到 3D 会话。因此,到目前为止,解决方案涉及注销 3D 会话并使用 2D 会话重新登录前启动 Photoshop;然后它正常退出并且不会打扰桌面。
有很大的帮助无需注销然后重新登录即可关闭 3D 效果的方法,如果可行的话。更大的帮助将是一个用于自动执行此操作的 BASH 脚本。
更新时间:2012 年 5 月 27 日 19:10 CST:
jasmines 建议执行的操作compiz --replace
无法正确终止,尽管订单仍在循环中,但桌面看起来正常。但是,关闭终端或中断循环会将会话状态恢复为残缺的桌面,没有顶部面板,没有启动器,没有窗口顶部栏和控件,现在;没有键盘。
最终输出compiz——替换卡住的地方是这样的:
WARN 2012-05-27 20:44:32 unity <unknown>:0 Unable to fetch children: No existe la interfaz «org.ayatana.bamf.view» en el objeto en la ruta /org/ayatana/bamf/application62801462
WARN 2012-05-27 20:44:32 unity <unknown>:0 Unable to fetch children: No existe la interfaz «org.ayatana.bamf.view» en el objeto en la ruta /org/ayatana/bamf/application62801462
希望有人能破译这个。对我来说这是梵文。问题的答案仍然悬而未决……
解决了!
看维尔帕拉的回答。我根据他的建议创建了脚本,并在我的桌面上放置了一个启动器。效果非常好,不到一分钟就解决了我的 Photoshop 退出问题 :-)
添加 3 张屏幕截图之前、之中和之后。
很美。这里是知识的宝库。非常感谢所有参与者。
答案1
回答是因为说script to restore Unity 3D without rebooting will do.
在您喜欢的任意位置创建一个文件(我将在其中创建/usr/bin
)
gksudo gedit /usr/bin/restore-unity
传递并粘贴
#!/bin/bash
sudo killall compiz
compiz --replace
在 gedit 中关闭 gedit。现在您有了名为 的脚本restore-unity
。/usr/bin/
授予执行权限。
sudo chmod +x /usr/bin/restore-unity
运行,打开终端并运行
restore-unity
笔记:
以命令 ( alt+ F2) 的形式运行它。如果你从终端运行它,你必须保持终端运行,如果你中断或关闭终端,事情就会变得混乱。或者
即使终端关闭也能使其持久,只需使用前缀nohup
就是这样。
答案2
compiz 还在运行吗?如果是,请尝试将其终止然后重新启动:
sudo killall compiz
compiz --replace
报告错误!
Jorge M. Treviño(OP)写道(这些是OP的评论,我已将其包含在内以供将来参考):
sudo killall compiz
由于没有键盘,我无法发出下一个命令,但sudo killall compiz && compiz --replace
给出了以下输出:
(compiz:5223): GConf-CRITICAL **: gconf_client_add_dir: assertion gconf_valid_key (dirname, NULL)' failed Initializing unityshell options...done
compiz (decor) - Warn: failed to bind pixmap to texture compiz (decor) - Warn: failed to bind pixmap to texture
compiz (decor) - Warn: failed to bind pixmap to texture Starting gtk-window-decorator
WARN 2012-05-27 15:01:52 unity.libindicator <unknown>:0 Desktop file '/usr/share/applications/firefox.desktop' is using a deprecated format for its actions that will be dropped soon.
WARN 2012-05-27 15:01:52 unity.libindicator <unknown>:0
类似的警告也随之而来……我不知道如何将它们放在这里。然后
(compiz:5223): GConf-CRITICAL **: gconf_client_add_dir: assertion `gconf_valid_key (dirname, NULL)' failed Initializing unityshell options...done
compiz (decor) - Warn: failed to bind pixmap to texture compiz (decor) - Warn: failed to bind pixmap to texture
compiz (decor) - Warn: failed to bind pixmap to texture
以及更多警告...
最后,
ERROR 2012-05-27 15:01:53 unity.glib-gobject <unknown>:0
g_object_unref: assertion G_IS_OBJECT (object)' failed
但是是的!这让我回到了顶部面板,启动器和 3D 窗口!
哎呀!大家请稍安勿躁。我太急了,说这解决了问题。
输出失败后终端就卡住了G_IS_OBJECT (object)
,我没有注意到我没有收到提示。compiz --replace
用Ctrl+打破顺序C让我再次面对残缺的桌子。我将在 2D 模式下再次尝试此操作,看看会发生什么……
不行,输出是:
(compiz:30135): GConf-CRITICAL **: gconf_client_add_dir: assertion `gconf_valid_key (dirname, NULL)' failed Initializing unityshell options...done
WARN 2012-05-27 20:44:32 unity <unknown>:0 Unable to fetch children: No existe la interfaz «org.ayatana.bamf.view» en el objeto en la ruta /org/ayatana/bamf/application62801462
好的,总结如下:compiz --replace
即使在 2D 会话中,也会陷入错误循环,并出现两个警告,提示使用+interface «org.ayatana.bamf.view» not existing.
终止循环会使桌面瘫痪。再次,有什么想法吗?CtrlC
这些是 OP 的评论,尽管他现在已经解决了(供将来参考)
答案3
我认为“compiz --replace”是个坏主意。
只需使用 Alt-F2,“compiz-decorator” - 将恢复帧而无需重新启动 compiz。
答案4
请注意 - 你可能遇到了 12.04 和 wine 中的一个已知错误,它会影响 wine 中的许多程序,但其他程序则没问题