我想这是一个与Can I use GNOME applet in Unity 相关的问题?(由@Jorge Castro的建议感动)
我想stickynotes_applet
在 Unity 中使用。现在在 Gnome 中,这个小程序被添加到一个栏,然后我必须单击它来创建一个新笔记,我可以调用首选项以将笔记粘贴在桌面上 - 这是我所需要的。
显然,正如这里提到的,在 Unity 中直接使用这个小程序是不可能的;但基本上,我需要做的就是打开“首选项”窗口(以便使笔记粘住),并以某种方式发出新笔记的命令(否则将通过单击小程序图标来执行)侏儒酒吧)。
我已经尝试运行' /usr/lib/gnome-applets/stickynotes_applet
'并且似乎它运行了,虽然没有显示小程序图标(这是预期的),也没有任何其他窗口(否则我希望会显示:))。
所以我在徘徊 - 鉴于这个小程序(似乎)没有任何与桌面相关的特殊内容 - 是否有命令行方式来基本上运行这个小程序,向它发出“显示首选项”命令,并发出新的注释在 Unity 环境中对它发出命令(目前我可以tomboy
从命令行调用它并且它可以工作 - 但它的窗口对于我的口味来说太笨重了)?
(还有一个额外的问题——你将如何仅从经典 Gnome 中的命令行启动一个与小程序相关的窗口?)
桌面集成对我来说并不重要 - 我很乐意从命令行手动运行它,只要我得到留在桌面上的小型紧凑笔记(只要进程处于活动状态)..
感谢您的任何评论,
干杯!
你可以有一个小的 gnome 面板只运行你的小程序。请参阅如何在 Unity 中使用 GNOME 面板?
我又回到了这个问题(仍然在 Natty 上);所以我想我会发布我的结果。
首先,我开始查找是否可以从命令行运行 Gnome 小程序,并在一个单独的窗口中 - 事实证明,这是一种调试 Python 小程序的技术;
invest-applet
(在 Python 中),所以它再次适用于 Natty;补丁可以在错误 #775387 “升级到 Natty 后无法启动 Invest-applet...” 中找到:错误:“gnome-applet”包:Ubuntuinvest-applet
在从命令行调用时实例化一个对象,并将其放在自己的窗口中——这恰好在 Unity 中工作:这是脚本:
...并且扩展脚本(带有调试输出和大量杂乱的注释)位于gtk_bonobo_applet_widget.py中。
这正是我想要的,起初,我认为它适用于所有小程序——至少在 Natty 中(以及其中
stickynotes
);但唉,不:现在,Natty 有点具体,因为它是最后一个 Gnome 2 Ubuntu - 但是,它还具有(第一个)Unity。像这样:
bonobo
/CORBA
接口(在 Python 中,通过gnomeapplet
);那些,likeinvest-applet
orbrightness-applet
,可以使用上述技术在他们自己的窗口中被提升 - 并且可以通过libbonobo2-bin
工具查询(likeactivation-client
)stickynotes
,已迁移到 GSettings/DBUS 基础(接口)事实上,在 Natty 出来前不久就
stickynotes
迁移bonobo
到了(在修订版Port to new libpanel-applet API 中);用 .替换宏很明显。可以说,如果一个人检查了based on的最新版本并构建它——一个人也应该能够使用上述技术在一个单独的窗口中实例化小程序,并从那里运行它,即使没有.dbus
PANEL_APPLET_BONOBO_FACTORY
PANEL_APPLET_OUT_PROCESS_FACTORY
stickynotes
bonobo
gnome-panel
否则我会相信,所有小程序(或者更确切地说,小程序开发框架)都应该能够在这样的单独窗口中运行 - 如果不是出于任何其他原因,那么在开发过程中促进小程序的调试。并且鉴于某些小程序具有用于在单独窗口中运行的命令行开关(上面的“初学者指南”以及
invest-applet
具有此类开关的功能)-我希望也可能stickynotes
具有此类命令行参数;但是,我确实通过它的源文件进行了 grep - 唉,我找不到任何关于命令行选项的提及。但后来,我想知道——为什么要迁移?好吧,这是因为
bonobo
现在(或者更确切地说,已经)弃用了一段时间:AppletsDbusMigration - GNOME Live!: (2009)
gnome-devel-list 邮件列表 - 什么将取代倭黑猩猩?(2009)
gnome-components 邮件列表“回复:什么将取代倭黑猩猩?” (2005)
好吧,废话——我自己认为,在这种情况下,“将一个应用程序嵌入另一个应用程序”非常有用——在 Unity 中运行(至少一些)小程序,并删除了对它们的支持
:)
当然,这是一个更少的“幸运”的 Natty 桌面包安排允许这样做(假设它仍然是 Gnome 2 并且仍然具有bonobo
库) - 显然,基于 Gnome 3 的更高版本已bonobo
完全删除 - 以及上面的 Python-script-instantiation-in -a-window 技术绝对不会在那里工作:/
最后一个问题是——我们是否可以类似地使用 Python 脚本,但使用 for 绑定
dbus
来实现类似于上述bonobo
脚本的功能?最接近我的是脚本gtk_dbus_applet_widget.py,但是,该脚本不会在窗口中引发小程序 - 甚至无法将小程序添加到栏!它唯一能做的就是通过 与小程序“工厂”对话
dbus
,并指示它创建一个小程序;但是这个小程序仍然只是文件系统上某处的数据(并且它在重新启动后仍然存在!),并且永远不会被实例化为 Gnome 小部件......鉴于上面的评论,我怀疑目前有类似的事情(好吧,在 Natty 上最少)可能与dbus
.总而言之-我想这与
gnome-panel
技术一起耗尽了在 Natty 的 Unity 下轻率运行小程序的可能性。Rhinonote有键盘快捷键
对于那些仍在寻找类似、方便和支持笔记类别功能的人,有指示器便笺。
安装:
希望它会有所帮助......享受!