mirror of
https://github.com/kovidgoyal/kitty
synced 2026-07-02 12:44:01 +02:00
Preserve auto setting when re-running choose-fonts on already selected family
This commit is contained in:
@@ -174,7 +174,7 @@ def render_family_sample(
|
||||
return ans
|
||||
|
||||
|
||||
ResolvedFace = Dict[Literal['family', 'spec'], str]
|
||||
ResolvedFace = Dict[Literal['family', 'spec', 'setting'], str]
|
||||
|
||||
|
||||
def spec_for_descriptor(d: Descriptor, font_size: float) -> str:
|
||||
@@ -187,7 +187,10 @@ def resolved_faces(opts: Options) -> Dict[OptNames, ResolvedFace]:
|
||||
ans: Dict[OptNames, ResolvedFace] = {}
|
||||
def d(key: Literal['medium', 'bold', 'italic', 'bi'], opt_name: OptNames) -> None:
|
||||
descriptor = font_files[key]
|
||||
ans[opt_name] = {'family': descriptor['family'], 'spec': spec_for_descriptor(descriptor, opts.font_size)}
|
||||
ans[opt_name] = {
|
||||
'family': descriptor['family'], 'spec': spec_for_descriptor(descriptor, opts.font_size),
|
||||
'setting': getattr(opts, opt_name).created_from_string
|
||||
}
|
||||
d('medium', 'font_family')
|
||||
d('bold', 'bold_font')
|
||||
d('italic', 'italic_font')
|
||||
|
||||
@@ -148,7 +148,8 @@ func (self *faces) on_enter(family string) error {
|
||||
self.family = family
|
||||
r := self.handler.listing.resolved_faces_from_kitty_conf
|
||||
d := func(conf ResolvedFace, setting *string, defval string) {
|
||||
*setting = utils.IfElse(family == conf.Family, conf.Spec, defval)
|
||||
s := utils.IfElse(conf.Setting == "auto", "auto", conf.Spec)
|
||||
*setting = utils.IfElse(family == conf.Family, s, defval)
|
||||
}
|
||||
d(r.Font_family, &self.settings.font_family, fmt.Sprintf(`family="%s"`, family))
|
||||
d(r.Bold_font, &self.settings.bold_font, "auto")
|
||||
|
||||
@@ -76,8 +76,9 @@ type VariableData struct {
|
||||
}
|
||||
|
||||
type ResolvedFace struct {
|
||||
Family string `json:"family"`
|
||||
Spec string `json:"spec"`
|
||||
Family string `json:"family"`
|
||||
Spec string `json:"spec"`
|
||||
Setting string `json:"setting"`
|
||||
}
|
||||
|
||||
type ResolvedFaces struct {
|
||||
|
||||
Reference in New Issue
Block a user