Introduce separate setting for pulseaudio symbol font size
This commit is contained in:
10
config.go
10
config.go
@@ -209,9 +209,9 @@ type MyConfig struct {
|
||||
} `json:"vpn,omitempty"`
|
||||
|
||||
SimpleVolumePa struct {
|
||||
Enabled bool `json:"enabled,omitempty"`
|
||||
Symbol string `json:"symbol,omitempty"`
|
||||
|
||||
Enabled bool `json:"enabled,omitempty"`
|
||||
Symbol string `json:"symbol,omitempty"`
|
||||
FontSize string `json:"font_size,omitempty"`
|
||||
Separator struct {
|
||||
Left struct {
|
||||
Enabled bool `json:"enabled,omitempty"`
|
||||
@@ -1117,6 +1117,10 @@ func readConf() (MyConfig, error) {
|
||||
sampleConfig.SimpleVolumePa.Symbol = `🔊`
|
||||
}
|
||||
|
||||
if sampleConfig.SimpleVolumePa.FontSize == "" {
|
||||
sampleConfig.SimpleVolumePa.FontSize = "medium"
|
||||
}
|
||||
|
||||
if sampleConfig.SimpleVolumePa.Step == 0 {
|
||||
sampleConfig.SimpleVolumePa.Step = 5
|
||||
}
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "▶",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
},
|
||||
|
||||
@@ -27,8 +27,8 @@
|
||||
// If omitted, used "|" (no quotes) as default
|
||||
"symbol": "◀",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
}
|
||||
},
|
||||
@@ -45,8 +45,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "▶",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
},
|
||||
|
||||
@@ -56,8 +56,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "◀",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
}
|
||||
}
|
||||
@@ -74,8 +74,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "▶",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
},
|
||||
|
||||
@@ -85,8 +85,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "◀",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
}
|
||||
}
|
||||
@@ -104,8 +104,8 @@
|
||||
"color": "#3e78fd",
|
||||
"symbol": "▶",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
},
|
||||
|
||||
@@ -115,8 +115,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "◀",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
}
|
||||
},
|
||||
@@ -148,8 +148,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "▶",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
},
|
||||
|
||||
@@ -159,8 +159,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "◀",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
}
|
||||
},
|
||||
@@ -178,15 +178,24 @@
|
||||
"simple-volume-pa": {
|
||||
"enabled": false,
|
||||
"symbol": "🔊",
|
||||
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of the relative sizes
|
||||
// ‘smaller’ or ‘larger’. If omitted set to medium by default.
|
||||
"font_size": "medium",
|
||||
|
||||
// If not defined - will be "true"
|
||||
"right_click_cmd": ["pavucontrol"],
|
||||
|
||||
// Change volume step in %, if not configured it is 5
|
||||
"step": 3,
|
||||
|
||||
// We'll change volume level with mouse wheel. Under X11 it is mapped to some buttons, typically 4 and 5 (z-axis).
|
||||
// If omited, default value is 4
|
||||
"wheel_up": 4,
|
||||
|
||||
// If omited, default value is 5
|
||||
"wheel_down": 5,
|
||||
|
||||
// Maximum sound volume, can be over 100%, but sould not be :) Default value 100 if not set.
|
||||
"max_volume_limit": 120,
|
||||
|
||||
@@ -197,8 +206,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "▶",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’,, or one of the relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
},
|
||||
|
||||
@@ -208,8 +217,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "◀",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of the relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
}
|
||||
}
|
||||
@@ -228,8 +237,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "▶",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
},
|
||||
|
||||
@@ -239,8 +248,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "◀",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
}
|
||||
},
|
||||
@@ -276,8 +285,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "▶",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
},
|
||||
|
||||
@@ -287,8 +296,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "◀",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
}
|
||||
}
|
||||
@@ -305,8 +314,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "▶",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
},
|
||||
|
||||
@@ -316,8 +325,8 @@
|
||||
"background": "#000000",
|
||||
"symbol": "◀",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
}
|
||||
},
|
||||
@@ -368,8 +377,8 @@
|
||||
"color": "#3e78fd",
|
||||
"symbol": "▶",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
},
|
||||
|
||||
@@ -378,8 +387,8 @@
|
||||
"color": "#3e78fd",
|
||||
"symbol": "◀",
|
||||
"font": "Noto Sans",
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or a percentage (e.g. ‘200%’), or
|
||||
// one of the relative sizes ‘smaller’ or ‘larger’
|
||||
// ‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’, or one of relative sizes
|
||||
// ‘smaller’ or ‘larger’
|
||||
"font_size": "medium"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,7 +35,12 @@ func UpdateVolumeInfo() {
|
||||
return
|
||||
}
|
||||
|
||||
SoundVolume = fmt.Sprintf("%s:%d%%", Conf.SimpleVolumePa.Symbol, int64(vol*100))
|
||||
SoundVolume = fmt.Sprintf(
|
||||
"<span size='%s'>%s</span>:%d%%",
|
||||
Conf.SimpleVolumePa.FontSize,
|
||||
Conf.SimpleVolumePa.Symbol,
|
||||
int64(vol*100),
|
||||
)
|
||||
|
||||
UpdateReady <- true
|
||||
|
||||
@@ -59,7 +64,12 @@ func UpdateVolumeInfo() {
|
||||
return
|
||||
}
|
||||
|
||||
SoundVolume = fmt.Sprintf("%s:%d%%", Conf.SimpleVolumePa.Symbol, int64(vol*100))
|
||||
SoundVolume = fmt.Sprintf(
|
||||
"<span size='%s'>%s:%d%%",
|
||||
Conf.SimpleVolumePa.FontSize,
|
||||
Conf.SimpleVolumePa.Symbol,
|
||||
int64(vol*100),
|
||||
)
|
||||
|
||||
UpdateReady <- true
|
||||
}
|
||||
@@ -72,7 +82,7 @@ func UpdateVolumeInfo() {
|
||||
}
|
||||
|
||||
// This code is unreachable :(
|
||||
pa.Close()
|
||||
pa.Close() //nolint:govet
|
||||
}
|
||||
|
||||
// PaReinit re-inits pulseaudio and connection to it.
|
||||
@@ -90,13 +100,13 @@ func PaReinit() error {
|
||||
|
||||
if err := cmd.Run(); err != nil {
|
||||
return fmt.Errorf("unable to initialize pulseaudio server instance: %w", err)
|
||||
} //nolint:wsl
|
||||
}
|
||||
|
||||
pa, err = p.NewClient()
|
||||
|
||||
if err != nil {
|
||||
return fmt.Errorf("unable to make client connection to pulseaudio: %s", err)
|
||||
} //nolint:wsl
|
||||
}
|
||||
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user