如何为特定 Pharo 图像设置自定义 StartupPreferences?

问题描述 投票:0回答:1

我希望在启动时使用特定设置运行特定图像,如此处所述

StartupPreferencesLoader default executeAtomicItems: { (StartupAction
             name: 'Start Literate Server'
             code: [
                 | class |
                 class := Smalltalk at: #LiterateServer ifAbsent: [
                              Metacello new
                                  baseline: 'LiterateSmalltalk';
                                  repository: 'github://jingtaozf/literate-smalltalk';
                                  onConflict: [ :ex | ex allow ];
                                  load.
                              Smalltalk at: #LiterateServer ].
                 class ifNotNil: [ LiterateServer start ] ]
             runOnce: false) }

有什么办法可以做到这一点吗?

image startup smalltalk preferences pharo
1个回答
0
投票

我认为创建 Emacs 键盘映射可能会更好。 我没有玩过它,所以我不知道它应该有多难。

以下是在 Pharo 中创建新自定义设置的快速方法:

首先为您的应用程序创建类:

Object subclass: #VfclistsApplication
    instanceVariableNames: ''
    classVariableNames: 'emacsSetting'
    package: 'VfclistPackage'

首先为变量创建 setter 和 getter。

具有延迟初始化的 Setter。这是为了防止设置为

nil
。 您的设置绝不能
nil

VfclistsApplication class>>emacsSetting
emacsSetting ifNil: [ emacsSetting := false ].
    ^ emacsSetting[

吸气剂:

VfclistsApplication class>>emacsSetting: aValue
    emacsSetting := aValue

VfclistsApplication
类中创建一个方法
emacsSettingSettingsOn:
,它定义应用程序中的设置:

VfclistsApplication class>>emacsSettingSettingsOn: aBuilder
    <systemsettings>
    (aBuilder setting: #emacsSetting)
        target: VfclistsApplication;
        label: 'Emacs setting' translated;
        description: 'A setting needed for the use of Emacs';
        parent: nil.
© www.soinside.com 2019 - 2024. All rights reserved.