簡體   English   中英

如何在pharo或squeak中更改CommandShell窗口中的字體?

[英]How can I change the font in a CommandShell window in pharo or squeak?

在Pharo和Squeak中,如果已安裝,則可以鍵入CommandShell open. 它將打開一個命令窗口,它基本上就像一個“bash shell”或“終端窗口”,但它使用的是近似微觀尺寸的默認字體。 我似乎無法弄清楚如何改變它。

我發現smalltalk中的一般方法是瀏覽類的實現,看看你是否可以找到你可以對類說的東西,告訴它你想要什么,或者你可以修改類的一些方法讓它回答一些問題不同於其他一些類,造成了預期的效果。 anInstanceOfCommandShell someViewOrControllerThingy setDefaultFont:blahblahblah東西。

似乎CommandShell使用ShellWindowMorph並且它接受setFont消息。 我是Smalltalk和Squeak的新人,不知道下一步該做什么。

我正在使用Pharo 2.0,但如果有人知道如何在Squeak中做到這一點,我相信它會大致相同。

請注意,我已經找到了pharo的設置,並且常規設置更改會影響主要腳本窗口,但不會以任何方式影響特殊的CommandShellTranscript或其內容。

在此輸入圖像描述

我用來以編程方式更改其余字體的代碼是另一個問題的答案 它說這樣做:

|font codeFont|

font := LogicalFont familyName: 'Consolas' pointSize: 10.
codeFont := LogicalFont familyName: 'Consolas' pointSize: 9.
StandardFonts listFont: codeFont.
...

您可以通過以下方法覆蓋ShellWindowMorph默認#textStyle:

textStyle
    " Answer a font for the text morph"

    ^ TextStyle default

該窗口應該有一種直接從shell菜單(右上角的箭頭)或設置瀏覽器設置字體的方法。 您可以通過將“Halo”菜單置於您感興趣的變形上(Alt + Shift +左鍵單擊MS Windows下)並選擇紅色圖標來修改任何變形屬性。 然后選擇Debug - > Explore morph並直接從Explorer中設置文本樣式:

self textMorph setTextStyle: TextStyle default

ShellWindowMorph使用系統范圍的DefaultFixedTextStyle。

在Squeak中,您可以像這樣更改它:

TextConstants
    at: #DefaultFixedTextStyle
    put: (TextStyle fontArray: {StrikeFont fromUser}).

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM