请不要在此宣传Nautilus或Glamour。我正在使用Pharo 1.3(没有计划迁移到Pharo 1.4或2.0)。它似乎是OmniBrowser的许多版本。哪一个是最受测试的(在覆盖范围内)或者只是无人驾驶?
我有一些问题:
由于
答案 0 :(得分:6)
Omnibrowser预先安装在Pharo 1.3中。
如果您正在讨论将其安装在1.3核心中,请使用:
Gofer new
squeaksource: 'MetacelloRepository';
package: 'ConfigurationOfOmniBrowser';
load.
((Smalltalk at: #ConfigurationOfOmniBrowser) project perform: #version: with: '1.3') load: #( Dev ).
关于你的其他问题...... 它适用于Shout吗?是。
我可以在没有AST和重构引擎的情况下加载吗?是。加载#Core组而不是#Dev。
我可以在没有Morphic的情况下加载吗?否。
它与任何版本的Squeak兼容?是。您可以使用以下命令将其加载到Squeak 4.2和4.3中:
Installer ss
project: 'MetacelloRepository';
install: #ConfigurationOfOmniBrowser.
((Smalltalk at: #ConfigurationOfOmniBrowser) project perform: #stableVersion) load: #( Dev ).
虽然它似乎有些问题。例如,重构似乎没有采取,我不得不将一些#createCompletionController方法更改为:
createCompletionController
^ OController model: self
在Cuis中可以加载吗?非常怀疑。
答案 1 :(得分:5)
存储库http://source.wiresong.ca/ob/是Squeak的官方OmniBrowser存储库(使用Tool-Builder)。存储库http://source.lukas-renggli.ch/omnibrowser是Pharo的官方OmniBrowser存储库(使用Polymorph)。在这两个存储库中,核心软件包都是相同的,并且会定期镜像。
存储库http://source.lukas-renggli.ch/ob21已过时,它源于我多年前开始的一项实验。我暂时删除了存储库以避免进一步混淆。所有其他存储库(以及各种Metacello配置)都基于过时和分叉代码。你在那里获得的代码缺乏许多改进,并且错过了很久以前实现的重要修复。
对于Pharo 1.3,正如Philippe指出的那样,你只需要输入https://github.com/renggli/builder/blob/master/scripts/omnibrowser.st来获得稳定的安装。 Shout,eCompletion,Refactoring Engine和各种其他扩展是可选的。只需从脚本中删除不需要的部分即可。技术上也不需要Morphic,但是你没有得到默认的用户界面。您可以加载其他几个接口,例如OB-Web
和OB-Mars
,但我不知道它们目前的效果如何。
同样的文件也适用于Squeak。您只需要替换以下包:
Refactoring-Pharo-Platform
与Refactoring-Squeak-Platform
(如果您需要重构引擎)OB-Pharo-Platform
与OB-Squeak-Platform
OB-Polymorph
与OB-ToolBuilder
Shout
预装在Squeak中,不需要eCompletion
在吱吱声中不起作用(据我所知)我不认为OmniBrowser在Cuis工作。可以通过提供必要的平台和UI包来使其工作。 Phani 1.4或Pharo 2.0不太可能支持OmniBrowser,因为反射系统的中心部分(例如MethodReference
和SystemNavigation
)发生了巨大变化。
答案 2 :(得分:2)
我使用http://source.lukas-renggli.ch/omnibrowser中的那个,因为我知道Lukas住在哪里;-) Lukas已经维护了几年了,我从来没有遇到任何问题。据说它只适用于Pharo 1.3。
我使用来自的加载脚本 https://github.com/renggli/builder/blob/master/scripts/omnibrowser.st遗憾的是,没有Metacello配置。