mirror of
https://github.com/zoriya/noctalia-shell.git
synced 2025-12-18 12:35:33 +00:00
Compare commits
255 Commits
v3.1.0
...
shell-stat
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
74ba883dd8 | ||
|
|
01a26fd910 | ||
|
|
0293b8c8dd | ||
|
|
3914c32c96 | ||
|
|
4652691c4c | ||
|
|
679fd5c40e | ||
|
|
48c5435cef | ||
|
|
880ae9c7b9 | ||
|
|
0f650b36f7 | ||
|
|
823042b245 | ||
|
|
9c550af64e | ||
|
|
1bf54de99c | ||
|
|
7a68030f69 | ||
|
|
f46915d2c3 | ||
|
|
50ebc77513 | ||
|
|
522e7e4352 | ||
|
|
9f9e1341fd | ||
|
|
c919c54a32 | ||
|
|
6387dcc6d4 | ||
|
|
455014a39b | ||
|
|
a884f012d8 | ||
|
|
c5b23cc291 | ||
|
|
04e46815f8 | ||
|
|
f3d1e1f3d1 | ||
|
|
e2aa4ca2f8 | ||
|
|
d6edc55d16 | ||
|
|
e5912760ca | ||
|
|
7d981fb55b | ||
|
|
e97c46e96c | ||
|
|
c1afa199e3 | ||
|
|
530992a14b | ||
|
|
5d9cfeb9d0 | ||
|
|
8cb4711629 | ||
|
|
2d856882d2 | ||
|
|
f181bdf21c | ||
|
|
665aa84f70 | ||
|
|
b84452e04d | ||
|
|
d3c200f50c | ||
|
|
a39fbb5639 | ||
|
|
fe40758d4e | ||
|
|
63331c1018 | ||
|
|
9c955cdd39 | ||
|
|
d9e0f2fc10 | ||
|
|
1cbc793087 | ||
|
|
1a2ddbb9e3 | ||
|
|
e46c9cdf0e | ||
|
|
43cdc4494d | ||
|
|
5ed4c97ee5 | ||
|
|
ddd3ae364c | ||
|
|
3b793add39 | ||
|
|
71f4a8eb49 | ||
|
|
2f735eda81 | ||
|
|
ee33da8348 | ||
|
|
f7d7d7ac15 | ||
|
|
972ac47c1b | ||
|
|
0b0860a446 | ||
|
|
e8a27acb63 | ||
|
|
694fefeebd | ||
|
|
088431b20d | ||
|
|
63940703f8 | ||
|
|
e3c171840f | ||
|
|
857d1dbbb6 | ||
|
|
516fc47b68 | ||
|
|
e549cfcb78 | ||
|
|
6a840769ed | ||
|
|
ec92295a98 | ||
|
|
60d37576e0 | ||
|
|
067bbf20bc | ||
|
|
49aab3c487 | ||
|
|
868b14bbc3 | ||
|
|
b435d1f588 | ||
|
|
1fc1fa36aa | ||
|
|
04311f191f | ||
|
|
0726e6b92f | ||
|
|
9a3d04249f | ||
|
|
edd4ba1b15 | ||
|
|
c50776eeee | ||
|
|
e9114297d1 | ||
|
|
fbfdf787de | ||
|
|
3976a21dc7 | ||
|
|
c735eef75d | ||
|
|
1ceb97c08f | ||
|
|
42e2ba09ff | ||
|
|
074da9069c | ||
|
|
19672a3d46 | ||
|
|
da8fa306a1 | ||
|
|
d74f1feece | ||
|
|
6df39604c5 | ||
|
|
4d45b330b0 | ||
|
|
b7c50f4c23 | ||
|
|
0a6c06b092 | ||
|
|
9080a584a2 | ||
|
|
110917359c | ||
|
|
5275ccf0d7 | ||
|
|
d641eadf75 | ||
|
|
a9ccb4c133 | ||
|
|
16a79c7d5b | ||
|
|
1b4cd35504 | ||
|
|
17810d1d2f | ||
|
|
64f5d99a48 | ||
|
|
e4e3b1b85c | ||
|
|
4a0c2b7ef3 | ||
|
|
5e2f8c1462 | ||
|
|
97ba831cb4 | ||
|
|
5ade827a4c | ||
|
|
03554120be | ||
|
|
2917f02621 | ||
|
|
a18be7927c | ||
|
|
9bf8fd16d6 | ||
|
|
948c3c7e18 | ||
|
|
b2978113c5 | ||
|
|
87f62b288b | ||
|
|
ed373df99d | ||
|
|
529869f796 | ||
|
|
12766e411d | ||
|
|
79f79e0cff | ||
|
|
ca89a0dc35 | ||
|
|
6eaffb0e65 | ||
|
|
455ef3449e | ||
|
|
fef8535384 | ||
|
|
770c667794 | ||
|
|
9b805ef1c4 | ||
|
|
260cb34c96 | ||
|
|
592e261eb8 | ||
|
|
8242b0d97d | ||
|
|
aa218e153d | ||
|
|
af4ec4c694 | ||
|
|
7e43f3b0d6 | ||
|
|
9a76b54ce8 | ||
|
|
9170ece8d2 | ||
|
|
27dd8fd036 | ||
|
|
74b6e86835 | ||
|
|
1a4f151bbc | ||
|
|
4b507fa238 | ||
|
|
7262b7b00f | ||
|
|
3264b59d54 | ||
|
|
c3b73f02b3 | ||
|
|
ece5b95fb4 | ||
|
|
956a33a148 | ||
|
|
6655e96204 | ||
|
|
78698fa546 | ||
|
|
6b6517cac3 | ||
|
|
1d200e84a1 | ||
|
|
653d3b3cb2 | ||
|
|
0428dd1b50 | ||
|
|
6df544d560 | ||
|
|
6d032e5159 | ||
|
|
02e7588bca | ||
|
|
c407edb4e9 | ||
|
|
f3207b526f | ||
|
|
103bd91da8 | ||
|
|
66770625dd | ||
|
|
81c0c302d4 | ||
|
|
3283aacf9b | ||
|
|
1b114a0c5f | ||
|
|
0b4a7b2bcd | ||
|
|
f15c2a1e49 | ||
|
|
226213457f | ||
|
|
836029b567 | ||
|
|
8034297fb7 | ||
|
|
01b893c6e6 | ||
|
|
bc22bcac82 | ||
|
|
e36461acd2 | ||
|
|
069859828c | ||
|
|
1ba73c6fcb | ||
|
|
63f1404598 | ||
|
|
4a9cea1d84 | ||
|
|
8bca19f3f0 | ||
|
|
3bb8d8a7c2 | ||
|
|
7b926b68af | ||
|
|
5e398d387e | ||
|
|
f1d714ad9a | ||
|
|
7453a7c5d3 | ||
|
|
2ae5aa90c9 | ||
|
|
ca5f5cd506 | ||
|
|
2bf4b8ee71 | ||
|
|
ca64c4b436 | ||
|
|
4da1b08e19 | ||
|
|
22fefb3a8b | ||
|
|
c223737fd7 | ||
|
|
bb8107727c | ||
|
|
595ad0bb20 | ||
|
|
28e6fcdfe4 | ||
|
|
063ca70c57 | ||
|
|
48fb52dfe4 | ||
|
|
a7aa38fe1c | ||
|
|
0d478fc998 | ||
|
|
d4fb4f5889 | ||
|
|
d06f111c9a | ||
|
|
cd10f16b61 | ||
|
|
b2bfb71a91 | ||
|
|
b79ce196a6 | ||
|
|
24b8eeb1f4 | ||
|
|
a201b8a2c8 | ||
|
|
609c9900f7 | ||
|
|
f2ffed74be | ||
|
|
660287c7a1 | ||
|
|
ada3d7abf2 | ||
|
|
89a5efe6d1 | ||
|
|
83edb704a1 | ||
|
|
1f5b7ab3a1 | ||
|
|
8f6d1e06d2 | ||
|
|
aee415e82e | ||
|
|
a46c76b9d5 | ||
|
|
4f0bf28f06 | ||
|
|
474598ccae | ||
|
|
0426918be6 | ||
|
|
792c6848c4 | ||
|
|
40f68c5325 | ||
|
|
dddd934f06 | ||
|
|
dc08751ec2 | ||
|
|
1f0485dff2 | ||
|
|
064b894fbc | ||
|
|
8ec6040c29 | ||
|
|
df37511089 | ||
|
|
202d974a82 | ||
|
|
8e18f79acd | ||
|
|
d6de45275f | ||
|
|
39fd2517c3 | ||
|
|
d8adaf4d4b | ||
|
|
3ff5b7639f | ||
|
|
32905224b9 | ||
|
|
9919e0419e | ||
|
|
57b8be1504 | ||
|
|
0706285048 | ||
|
|
4fa6696a1c | ||
|
|
a6aa162db6 | ||
|
|
36e0ef91bc | ||
|
|
c09bf13c58 | ||
|
|
7280d827db | ||
|
|
9e454bd608 | ||
|
|
13532cc479 | ||
|
|
31a93fb211 | ||
|
|
01b44e0b28 | ||
|
|
de200a929c | ||
|
|
1a38c6d665 | ||
|
|
8af9643577 | ||
|
|
9d3dbd33b2 | ||
|
|
8e36b68789 | ||
|
|
78919bcc13 | ||
|
|
8ed927ab0a | ||
|
|
6c80fd3740 | ||
|
|
ef1b7cfd89 | ||
|
|
098e7f5645 | ||
|
|
a8787aa241 | ||
|
|
6494aec955 | ||
|
|
2735a489b5 | ||
|
|
b120af43fe | ||
|
|
f520466063 | ||
|
|
ead2b82680 | ||
|
|
3f1bcf1ae8 | ||
|
|
f9192f0424 | ||
|
|
cea0739a5e | ||
|
|
4ca358b5ba | ||
|
|
55addb651c |
2
.github/pull_request_template.md
vendored
2
.github/pull_request_template.md
vendored
@@ -1,5 +1,7 @@
|
|||||||
# Pull Request
|
# Pull Request
|
||||||
|
|
||||||
|
<!-- If this is a color scheme PR, please create it in https://github.com/noctalia-dev/noctalia-colorschemes instead -->
|
||||||
|
|
||||||
## Motivation
|
## Motivation
|
||||||
Provide a clear and concise explanation of what this PR does and why it is needed.
|
Provide a clear and concise explanation of what this PR does and why it is needed.
|
||||||
|
|
||||||
|
|||||||
@@ -1,38 +0,0 @@
|
|||||||
{
|
|
||||||
"dark": {
|
|
||||||
"mPrimary": "#C4A82E",
|
|
||||||
"mOnPrimary": "#0E1015",
|
|
||||||
"mSecondary": "#D14358",
|
|
||||||
"mOnSecondary": "#0E1015",
|
|
||||||
"mTertiary": "#00A66C",
|
|
||||||
"mOnTertiary": "#0E1015",
|
|
||||||
"mError": "#B32D2D",
|
|
||||||
"mOnError": "#0E1015",
|
|
||||||
"mSurface": "#0C1017",
|
|
||||||
"mOnSurface": "#5C8AC4",
|
|
||||||
"mSurfaceVariant": "#11151D",
|
|
||||||
"mOnSurfaceVariant": "#9B6BC1",
|
|
||||||
"mOutline": "#45A0D6",
|
|
||||||
"mShadow": "#090D13",
|
|
||||||
"mHover": "#00A66C",
|
|
||||||
"mOnHover": "#0E1015"
|
|
||||||
},
|
|
||||||
"light": {
|
|
||||||
"mPrimary": "#00B8B3",
|
|
||||||
"mOnPrimary": "#1A1914",
|
|
||||||
"mSecondary": "#D957A0",
|
|
||||||
"mOnSecondary": "#1A1914",
|
|
||||||
"mTertiary": "#45D395",
|
|
||||||
"mOnTertiary": "#1A1914",
|
|
||||||
"mError": "#E63E5D",
|
|
||||||
"mOnError": "#1A1914",
|
|
||||||
"mSurface": "#DAE6E8",
|
|
||||||
"mOnSurface": "#1A1914",
|
|
||||||
"mSurfaceVariant": "#C8DEE6",
|
|
||||||
"mOnSurfaceVariant": "#1A1914",
|
|
||||||
"mOutline": "#7B52AB",
|
|
||||||
"mShadow": "#B8D4E6",
|
|
||||||
"mHover": "#45D395",
|
|
||||||
"mOnHover": "#1A1914"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Cyberpunk)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#2b314a'
|
|
||||||
blue = '#4f8fff'
|
|
||||||
cyan = '#43c9ff'
|
|
||||||
green = '#89d36a'
|
|
||||||
magenta = '#9d6dff'
|
|
||||||
red = '#e64572'
|
|
||||||
white = '#d8e0ff'
|
|
||||||
yellow = '#d7a23a'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#d8e0ff'
|
|
||||||
text = '#0a0d14'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#0c0e14'
|
|
||||||
blue = '#4f8fff'
|
|
||||||
cyan = '#43c9ff'
|
|
||||||
green = '#89d36a'
|
|
||||||
magenta = '#9d6dff'
|
|
||||||
red = '#e64572'
|
|
||||||
white = '#b7c4f2'
|
|
||||||
yellow = '#d7a23a'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#0a0d14'
|
|
||||||
foreground = '#d8e0ff'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#d8e0ff'
|
|
||||||
text = '#0a0d14'
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Cyberpunk Light)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#a1a6c5'
|
|
||||||
blue = '#2e7de9'
|
|
||||||
cyan = '#007197'
|
|
||||||
green = '#587539'
|
|
||||||
magenta = '#9854f1'
|
|
||||||
red = '#f52a65'
|
|
||||||
white = '#3760bf'
|
|
||||||
yellow = '#8c6c3e'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#3760bf'
|
|
||||||
text = '#e1e2e7'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#e9e9ed'
|
|
||||||
blue = '#2e7de9'
|
|
||||||
cyan = '#007197'
|
|
||||||
green = '#587539'
|
|
||||||
magenta = '#9854f1'
|
|
||||||
red = '#f52a65'
|
|
||||||
white = '#6172b0'
|
|
||||||
yellow = '#8c6c3e'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#e1e2e7'
|
|
||||||
foreground = '#3760bf'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#99a7df'
|
|
||||||
text = '#3760bf'
|
|
||||||
@@ -1,27 +0,0 @@
|
|||||||
[cursor]
|
|
||||||
color=0a0d14 d8e0ff
|
|
||||||
|
|
||||||
[colors]
|
|
||||||
foreground=d8e0ff
|
|
||||||
background=0a0d14
|
|
||||||
|
|
||||||
regular0=0c0e14
|
|
||||||
regular1=e64572
|
|
||||||
regular2=89d36a
|
|
||||||
regular3=d7a23a
|
|
||||||
regular4=4f8fff
|
|
||||||
regular5=9d6dff
|
|
||||||
regular6=43c9ff
|
|
||||||
regular7=b7c4f2
|
|
||||||
|
|
||||||
bright0=2b314a
|
|
||||||
bright1=e64572
|
|
||||||
bright2=89d36a
|
|
||||||
bright3=d7a23a
|
|
||||||
bright4=4f8fff
|
|
||||||
bright5=9d6dff
|
|
||||||
bright6=43c9ff
|
|
||||||
bright7=d8e0ff
|
|
||||||
|
|
||||||
selection-foreground=0a0d14
|
|
||||||
selection-background=d8e0ff
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
[colors]
|
|
||||||
foreground=3760bf
|
|
||||||
background=e1e2e7
|
|
||||||
regular0=e9e9ed
|
|
||||||
regular1=f52a65
|
|
||||||
regular2=587539
|
|
||||||
regular3=8c6c3e
|
|
||||||
regular4=2e7de9
|
|
||||||
regular5=9854f1
|
|
||||||
regular6=007197
|
|
||||||
regular7=6172b0
|
|
||||||
bright0=a1a6c5
|
|
||||||
bright1=f52a65
|
|
||||||
bright2=587539
|
|
||||||
bright3=8c6c3e
|
|
||||||
bright4=2e7de9
|
|
||||||
bright5=9854f1
|
|
||||||
bright6=007197
|
|
||||||
bright7=3760bf
|
|
||||||
selection-foreground=3760bf
|
|
||||||
selection-background=99a7df
|
|
||||||
cursor=e1e2e7 3760bf
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
palette = 0=#0c0e14
|
|
||||||
palette = 1=#e64572
|
|
||||||
palette = 2=#89d36a
|
|
||||||
palette = 3=#d7a23a
|
|
||||||
palette = 4=#4f8fff
|
|
||||||
palette = 5=#9d6dff
|
|
||||||
palette = 6=#43c9ff
|
|
||||||
palette = 7=#b7c4f2
|
|
||||||
palette = 8=#2b314a
|
|
||||||
palette = 9=#e64572
|
|
||||||
palette = 10=#89d36a
|
|
||||||
palette = 11=#d7a23a
|
|
||||||
palette = 12=#4f8fff
|
|
||||||
palette = 13=#9d6dff
|
|
||||||
palette = 14=#43c9ff
|
|
||||||
palette = 15=#d8e0ff
|
|
||||||
|
|
||||||
background = #0a0d14
|
|
||||||
foreground = #d8e0ff
|
|
||||||
cursor-color = #d8e0ff
|
|
||||||
cursor-text = #0a0d14
|
|
||||||
selection-background = #d8e0ff
|
|
||||||
selection-foreground = #0a0d14
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#e9e9ed
|
|
||||||
palette = 1=#f52a65
|
|
||||||
palette = 2=#587539
|
|
||||||
palette = 3=#8c6c3e
|
|
||||||
palette = 4=#2e7de9
|
|
||||||
palette = 5=#9854f1
|
|
||||||
palette = 6=#007197
|
|
||||||
palette = 7=#6172b0
|
|
||||||
palette = 8=#a1a6c5
|
|
||||||
palette = 9=#f52a65
|
|
||||||
palette = 10=#587539
|
|
||||||
palette = 11=#8c6c3e
|
|
||||||
palette = 12=#2e7de9
|
|
||||||
palette = 13=#9854f1
|
|
||||||
palette = 14=#007197
|
|
||||||
palette = 15=#3760bf
|
|
||||||
background = #e1e2e7
|
|
||||||
foreground = #3760bf
|
|
||||||
cursor-color = #3760bf
|
|
||||||
cursor-text = #e1e2e7
|
|
||||||
selection-background = #99a7df
|
|
||||||
selection-foreground = #3760bf
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
color0 #0c0e14
|
|
||||||
color1 #e64572
|
|
||||||
color2 #89d36a
|
|
||||||
color3 #d7a23a
|
|
||||||
color4 #4f8fff
|
|
||||||
color5 #9d6dff
|
|
||||||
color6 #43c9ff
|
|
||||||
color7 #b7c4f2
|
|
||||||
color8 #2b314a
|
|
||||||
color9 #e64572
|
|
||||||
color10 #89d36a
|
|
||||||
color11 #d7a23a
|
|
||||||
color12 #4f8fff
|
|
||||||
color13 #9d6dff
|
|
||||||
color14 #43c9ff
|
|
||||||
color15 #d8e0ff
|
|
||||||
|
|
||||||
background #0a0d14
|
|
||||||
selection_foreground #0a0d14
|
|
||||||
cursor #d8e0ff
|
|
||||||
cursor_text_color #0a0d14
|
|
||||||
foreground #d8e0ff
|
|
||||||
selection_background #d8e0ff
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #e9e9ed
|
|
||||||
color1 #f52a65
|
|
||||||
color2 #587539
|
|
||||||
color3 #8c6c3e
|
|
||||||
color4 #2e7de9
|
|
||||||
color5 #9854f1
|
|
||||||
color6 #007197
|
|
||||||
color7 #6172b0
|
|
||||||
color8 #a1a6c5
|
|
||||||
color9 #f52a65
|
|
||||||
color10 #587539
|
|
||||||
color11 #8c6c3e
|
|
||||||
color12 #2e7de9
|
|
||||||
color13 #9854f1
|
|
||||||
color14 #007197
|
|
||||||
color15 #3760bf
|
|
||||||
background #e1e2e7
|
|
||||||
selection_foreground #e1e2e7
|
|
||||||
cursor #3760bf
|
|
||||||
cursor_text_color #e1e2e7
|
|
||||||
foreground #3760bf
|
|
||||||
selection_background #3760bf
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#0c0e14",
|
|
||||||
"#e64572",
|
|
||||||
"#89d36a",
|
|
||||||
"#d7a23a",
|
|
||||||
"#4f8fff",
|
|
||||||
"#9d6dff",
|
|
||||||
"#43c9ff",
|
|
||||||
"#b7c4f2",
|
|
||||||
]
|
|
||||||
background = "#0a0d14"
|
|
||||||
brights = [
|
|
||||||
"#2b314a",
|
|
||||||
"#e64572",
|
|
||||||
"#89d36a",
|
|
||||||
"#d7a23a",
|
|
||||||
"#4f8fff",
|
|
||||||
"#9d6dff",
|
|
||||||
"#43c9ff",
|
|
||||||
"#d8e0ff",
|
|
||||||
]
|
|
||||||
cursor_bg = "#d8e0ff"
|
|
||||||
cursor_border = "#d8e0ff"
|
|
||||||
cursor_fg = "#0a0d14"
|
|
||||||
foreground = "#d8e0ff"
|
|
||||||
selection_bg = "#d8e0ff"
|
|
||||||
selection_fg = "#0a0d14"
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
name = "Noctalia"
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#e9e9ed",
|
|
||||||
"#f52a65",
|
|
||||||
"#587539",
|
|
||||||
"#8c6c3e",
|
|
||||||
"#2e7de9",
|
|
||||||
"#9854f1",
|
|
||||||
"#007197",
|
|
||||||
"#6172b0",
|
|
||||||
]
|
|
||||||
background = "#e1e2e7"
|
|
||||||
brights = [
|
|
||||||
"#a1a6c5",
|
|
||||||
"#f52a65",
|
|
||||||
"#587539",
|
|
||||||
"#8c6c3e",
|
|
||||||
"#2e7de9",
|
|
||||||
"#9854f1",
|
|
||||||
"#007197",
|
|
||||||
"#3760bf",
|
|
||||||
]
|
|
||||||
cursor_bg = "#3760bf"
|
|
||||||
cursor_border = "#3760bf"
|
|
||||||
cursor_fg = "#e1e2e7"
|
|
||||||
foreground = "#3760bf"
|
|
||||||
selection_bg = "#3760bf"
|
|
||||||
selection_fg = "#e1e2e7"
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
name = "Noctalia"
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
{
|
|
||||||
"dark": {
|
|
||||||
"mPrimary": "#D3C6AA",
|
|
||||||
"mOnPrimary": "#232A2E",
|
|
||||||
"mSecondary": "#D3C6AA",
|
|
||||||
"mOnSecondary": "#232A2E",
|
|
||||||
"mTertiary": "#9DA9A0",
|
|
||||||
"mOnTertiary": "#232A2E",
|
|
||||||
"mError": "#E67E80",
|
|
||||||
"mOnError": "#232A2E",
|
|
||||||
"mSurface": "#232A2E",
|
|
||||||
"mOnSurface": "#859289",
|
|
||||||
"mSurfaceVariant": "#2D353B",
|
|
||||||
"mOnSurfaceVariant": "#D3C6AA",
|
|
||||||
"mOutline": "#D3C6AA",
|
|
||||||
"mShadow": "#475258",
|
|
||||||
"mHover": "#9DA9A0",
|
|
||||||
"mOnHover": "#232A2E"
|
|
||||||
},
|
|
||||||
"light": {
|
|
||||||
"mPrimary": "#434F55",
|
|
||||||
"mOnPrimary": "#D3C6AA",
|
|
||||||
"mSecondary": "#232a2e",
|
|
||||||
"mOnSecondary": "#D3C6AA",
|
|
||||||
"mTertiary": "#333c43",
|
|
||||||
"mOnTertiary": "#9DA9A0",
|
|
||||||
"mError": "#E66868",
|
|
||||||
"mOnError": "#9DA9A0",
|
|
||||||
"mSurface": "#9DA9A0",
|
|
||||||
"mOnSurface": "#232A2E",
|
|
||||||
"mSurfaceVariant": "#BEC5B2",
|
|
||||||
"mOnSurfaceVariant": "#333C43",
|
|
||||||
"mOutline": "#232A2E",
|
|
||||||
"mShadow": "#ECF5ED",
|
|
||||||
"mHover": "#333c43",
|
|
||||||
"mOnHover": "#9DA9A0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Everforest Dark Hard)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#a6b0a0'
|
|
||||||
blue = '#3a94c5'
|
|
||||||
cyan = '#35a77c'
|
|
||||||
green = '#8da101'
|
|
||||||
magenta = '#df69ba'
|
|
||||||
red = '#f85552'
|
|
||||||
white = '#fffbef'
|
|
||||||
yellow = '#dfa000'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#e69875'
|
|
||||||
text = '#4c3743'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#7a8478'
|
|
||||||
blue = '#7fbbb3'
|
|
||||||
cyan = '#83c092'
|
|
||||||
green = '#a7c080'
|
|
||||||
magenta = '#d699b6'
|
|
||||||
red = '#e67e80'
|
|
||||||
white = '#f2efdf'
|
|
||||||
yellow = '#dbbc7f'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#1e2326'
|
|
||||||
foreground = '#d3c6aa'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#4c3743'
|
|
||||||
text = '#d3c6aa'
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Everforest Light Med)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#a6b0a0'
|
|
||||||
blue = '#3a94c5'
|
|
||||||
cyan = '#35a77c'
|
|
||||||
green = '#8da101'
|
|
||||||
magenta = '#df69ba'
|
|
||||||
red = '#f85552'
|
|
||||||
white = '#fffbef'
|
|
||||||
yellow = '#dfa000'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#f57d26'
|
|
||||||
text = '#eaedc8'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#7a8478'
|
|
||||||
blue = '#7fbbb3'
|
|
||||||
cyan = '#83c092'
|
|
||||||
green = '#9ab373'
|
|
||||||
magenta = '#d699b6'
|
|
||||||
red = '#e67e80'
|
|
||||||
white = '#b2af9f'
|
|
||||||
yellow = '#c1a266'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#efebd4'
|
|
||||||
foreground = '#5c6a72'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#eaedc8'
|
|
||||||
text = '#5c6a72'
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
[colors]
|
|
||||||
foreground=d3c6aa
|
|
||||||
background=1e2326
|
|
||||||
regular0=7a8478
|
|
||||||
regular1=e67e80
|
|
||||||
regular2=a7c080
|
|
||||||
regular3=dbbc7f
|
|
||||||
regular4=7fbbb3
|
|
||||||
regular5=d699b6
|
|
||||||
regular6=83c092
|
|
||||||
regular7=f2efdf
|
|
||||||
bright0=a6b0a0
|
|
||||||
bright1=f85552
|
|
||||||
bright2=8da101
|
|
||||||
bright3=dfa000
|
|
||||||
bright4=3a94c5
|
|
||||||
bright5=df69ba
|
|
||||||
bright6=35a77c
|
|
||||||
bright7=fffbef
|
|
||||||
selection-foreground=d3c6aa
|
|
||||||
selection-background=4c3743
|
|
||||||
cursor=4c3743 e69875
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
[colors]
|
|
||||||
foreground=5c6a72
|
|
||||||
background=efebd4
|
|
||||||
regular0=7a8478
|
|
||||||
regular1=e67e80
|
|
||||||
regular2=9ab373
|
|
||||||
regular3=c1a266
|
|
||||||
regular4=7fbbb3
|
|
||||||
regular5=d699b6
|
|
||||||
regular6=83c092
|
|
||||||
regular7=b2af9f
|
|
||||||
bright0=a6b0a0
|
|
||||||
bright1=f85552
|
|
||||||
bright2=8da101
|
|
||||||
bright3=dfa000
|
|
||||||
bright4=3a94c5
|
|
||||||
bright5=df69ba
|
|
||||||
bright6=35a77c
|
|
||||||
bright7=fffbef
|
|
||||||
selection-foreground=5c6a72
|
|
||||||
selection-background=eaedc8
|
|
||||||
cursor=eaedc8 f57d26
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#7a8478
|
|
||||||
palette = 1=#e67e80
|
|
||||||
palette = 2=#a7c080
|
|
||||||
palette = 3=#dbbc7f
|
|
||||||
palette = 4=#7fbbb3
|
|
||||||
palette = 5=#d699b6
|
|
||||||
palette = 6=#83c092
|
|
||||||
palette = 7=#f2efdf
|
|
||||||
palette = 8=#a6b0a0
|
|
||||||
palette = 9=#f85552
|
|
||||||
palette = 10=#8da101
|
|
||||||
palette = 11=#dfa000
|
|
||||||
palette = 12=#3a94c5
|
|
||||||
palette = 13=#df69ba
|
|
||||||
palette = 14=#35a77c
|
|
||||||
palette = 15=#fffbef
|
|
||||||
background = #1e2326
|
|
||||||
foreground = #d3c6aa
|
|
||||||
cursor-color = #e69875
|
|
||||||
cursor-text = #4c3743
|
|
||||||
selection-background = #4c3743
|
|
||||||
selection-foreground = #d3c6aa
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#7a8478
|
|
||||||
palette = 1=#e67e80
|
|
||||||
palette = 2=#9ab373
|
|
||||||
palette = 3=#c1a266
|
|
||||||
palette = 4=#7fbbb3
|
|
||||||
palette = 5=#d699b6
|
|
||||||
palette = 6=#83c092
|
|
||||||
palette = 7=#b2af9f
|
|
||||||
palette = 8=#a6b0a0
|
|
||||||
palette = 9=#f85552
|
|
||||||
palette = 10=#8da101
|
|
||||||
palette = 11=#dfa000
|
|
||||||
palette = 12=#3a94c5
|
|
||||||
palette = 13=#df69ba
|
|
||||||
palette = 14=#35a77c
|
|
||||||
palette = 15=#fffbef
|
|
||||||
background = #efebd4
|
|
||||||
foreground = #5c6a72
|
|
||||||
cursor-color = #f57d26
|
|
||||||
cursor-text = #eaedc8
|
|
||||||
selection-background = #eaedc8
|
|
||||||
selection-foreground = #5c6a72
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #7a8478
|
|
||||||
color1 #e67e80
|
|
||||||
color2 #a7c080
|
|
||||||
color3 #dbbc7f
|
|
||||||
color4 #7fbbb3
|
|
||||||
color5 #d699b6
|
|
||||||
color6 #83c092
|
|
||||||
color7 #f2efdf
|
|
||||||
color8 #a6b0a0
|
|
||||||
color9 #f85552
|
|
||||||
color10 #8da101
|
|
||||||
color11 #dfa000
|
|
||||||
color12 #3a94c5
|
|
||||||
color13 #df69ba
|
|
||||||
color14 #35a77c
|
|
||||||
color15 #fffbef
|
|
||||||
background #1e2326
|
|
||||||
selection_foreground #1e2326
|
|
||||||
cursor #e69875
|
|
||||||
cursor_text_color #4c3743
|
|
||||||
foreground #d3c6aa
|
|
||||||
selection_background #d3c6aa
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #7a8478
|
|
||||||
color1 #e67e80
|
|
||||||
color2 #9ab373
|
|
||||||
color3 #c1a266
|
|
||||||
color4 #7fbbb3
|
|
||||||
color5 #d699b6
|
|
||||||
color6 #83c092
|
|
||||||
color7 #b2af9f
|
|
||||||
color8 #a6b0a0
|
|
||||||
color9 #f85552
|
|
||||||
color10 #8da101
|
|
||||||
color11 #dfa000
|
|
||||||
color12 #3a94c5
|
|
||||||
color13 #df69ba
|
|
||||||
color14 #35a77c
|
|
||||||
color15 #fffbef
|
|
||||||
background #efebd4
|
|
||||||
selection_foreground #efebd4
|
|
||||||
cursor #f57d26
|
|
||||||
cursor_text_color #eaedc8
|
|
||||||
foreground #5c6a72
|
|
||||||
selection_background #5c6a72
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#4b565c",
|
|
||||||
"#e67e80",
|
|
||||||
"#a7c080",
|
|
||||||
"#dbbc7f",
|
|
||||||
"#7fbbb3",
|
|
||||||
"#d699b6",
|
|
||||||
"#83c092",
|
|
||||||
"#d3c6aa",
|
|
||||||
]
|
|
||||||
background = "#2d353b"
|
|
||||||
brights = [
|
|
||||||
"#5c6a72",
|
|
||||||
"#f85552",
|
|
||||||
"#8da101",
|
|
||||||
"#dfa000",
|
|
||||||
"#3a94c5",
|
|
||||||
"#df69ba",
|
|
||||||
"#35a77c",
|
|
||||||
"#dfddc8",
|
|
||||||
]
|
|
||||||
cursor_bg = "#d3c6aa"
|
|
||||||
cursor_border = "#d3c6aa"
|
|
||||||
cursor_fg = "#2d353b"
|
|
||||||
foreground = "#d3c6aa"
|
|
||||||
|
|
||||||
[colors.indexed]
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
name = "Noctalia"
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#5c6a72",
|
|
||||||
"#f85552",
|
|
||||||
"#8da101",
|
|
||||||
"#dfa000",
|
|
||||||
"#3a94c5",
|
|
||||||
"#df69ba",
|
|
||||||
"#35a77c",
|
|
||||||
"#dfddc8",
|
|
||||||
]
|
|
||||||
background = "#fdf6e3"
|
|
||||||
brights = [
|
|
||||||
"#4b565c",
|
|
||||||
"#e67e80",
|
|
||||||
"#a7c080",
|
|
||||||
"#dbbc7f",
|
|
||||||
"#7fbbb3",
|
|
||||||
"#d699b6",
|
|
||||||
"#83c092",
|
|
||||||
"#d3c6aa",
|
|
||||||
]
|
|
||||||
cursor_bg = "#5c6a72"
|
|
||||||
cursor_border = "#5c6a72"
|
|
||||||
cursor_fg = "#fdf6e3"
|
|
||||||
foreground = "#5c6a72"
|
|
||||||
|
|
||||||
[colors.indexed]
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
name = "Noctalia"
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
{
|
|
||||||
"dark": {
|
|
||||||
"mPrimary": "#aaaaaa",
|
|
||||||
"mOnPrimary": "#111111",
|
|
||||||
"mSecondary": "#a7a7a7",
|
|
||||||
"mOnSecondary": "#111111",
|
|
||||||
"mTertiary": "#cccccc",
|
|
||||||
"mOnTertiary": "#111111",
|
|
||||||
"mError": "#dddddd",
|
|
||||||
"mOnError": "#111111",
|
|
||||||
"mSurface": "#111111",
|
|
||||||
"mOnSurface": "#828282",
|
|
||||||
"mSurfaceVariant": "#191919",
|
|
||||||
"mOnSurfaceVariant": "#5d5d5d",
|
|
||||||
"mOutline": "#3c3c3c",
|
|
||||||
"mShadow": "#000000",
|
|
||||||
"mHover": "#cccccc",
|
|
||||||
"mOnHover": "#111111"
|
|
||||||
},
|
|
||||||
"light": {
|
|
||||||
"mPrimary": "#555555",
|
|
||||||
"mOnPrimary": "#eeeeee",
|
|
||||||
"mSecondary": "#505058",
|
|
||||||
"mOnSecondary": "#eeeeee",
|
|
||||||
"mTertiary": "#333333",
|
|
||||||
"mOnTertiary": "#eeeeee",
|
|
||||||
"mError": "#222222",
|
|
||||||
"mOnError": "#efefef",
|
|
||||||
"mSurface": "#d4d4d4",
|
|
||||||
"mOnSurface": "#696969",
|
|
||||||
"mSurfaceVariant": "#e8e8e8",
|
|
||||||
"mOnSurfaceVariant": "#9e9e9e",
|
|
||||||
"mOutline": "#c3c3c3",
|
|
||||||
"mShadow": "#fafafa",
|
|
||||||
"mHover": "#333333",
|
|
||||||
"mOnHover": "#eeeeee"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Monochrome)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#3c3c3c'
|
|
||||||
blue = '#a7a7a7'
|
|
||||||
cyan = '#cccccc'
|
|
||||||
green = '#cccccc'
|
|
||||||
magenta = '#dddddd'
|
|
||||||
red = '#dddddd'
|
|
||||||
white = '#ffffff'
|
|
||||||
yellow = '#aaaaaa'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#aaaaaa'
|
|
||||||
text = '#111111'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#191919'
|
|
||||||
blue = '#a7a7a7'
|
|
||||||
cyan = '#cccccc'
|
|
||||||
green = '#cccccc'
|
|
||||||
magenta = '#dddddd'
|
|
||||||
red = '#dddddd'
|
|
||||||
white = '#828282'
|
|
||||||
yellow = '#aaaaaa'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#111111'
|
|
||||||
foreground = '#828282'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#828282'
|
|
||||||
text = '#111111'
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Monochrome Light)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#c3c3c3'
|
|
||||||
blue = '#505058'
|
|
||||||
cyan = '#333333'
|
|
||||||
green = '#333333'
|
|
||||||
magenta = '#222222'
|
|
||||||
red = '#222222'
|
|
||||||
white = '#000000'
|
|
||||||
yellow = '#555555'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#555555'
|
|
||||||
text = '#d4d4d4'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#e8e8e8'
|
|
||||||
blue = '#505058'
|
|
||||||
cyan = '#333333'
|
|
||||||
green = '#333333'
|
|
||||||
magenta = '#222222'
|
|
||||||
red = '#222222'
|
|
||||||
white = '#696969'
|
|
||||||
yellow = '#555555'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#d4d4d4'
|
|
||||||
foreground = '#696969'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#696969'
|
|
||||||
text = '#d4d4d4'
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
[colors]
|
|
||||||
foreground=828282
|
|
||||||
background=111111
|
|
||||||
regular0=191919
|
|
||||||
regular1=dddddd
|
|
||||||
regular2=cccccc
|
|
||||||
regular3=aaaaaa
|
|
||||||
regular4=a7a7a7
|
|
||||||
regular5=dddddd
|
|
||||||
regular6=cccccc
|
|
||||||
regular7=828282
|
|
||||||
bright0=3c3c3c
|
|
||||||
bright1=dddddd
|
|
||||||
bright2=cccccc
|
|
||||||
bright3=aaaaaa
|
|
||||||
bright4=a7a7a7
|
|
||||||
bright5=dddddd
|
|
||||||
bright6=cccccc
|
|
||||||
bright7=ffffff
|
|
||||||
selection-foreground=111111
|
|
||||||
selection-background=828282
|
|
||||||
cursor=111111 aaaaaa
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
[colors]
|
|
||||||
foreground=696969
|
|
||||||
background=d4d4d4
|
|
||||||
regular0=e8e8e8
|
|
||||||
regular1=222222
|
|
||||||
regular2=333333
|
|
||||||
regular3=555555
|
|
||||||
regular4=505058
|
|
||||||
regular5=222222
|
|
||||||
regular6=333333
|
|
||||||
regular7=696969
|
|
||||||
bright0=c3c3c3
|
|
||||||
bright1=222222
|
|
||||||
bright2=333333
|
|
||||||
bright3=555555
|
|
||||||
bright4=505058
|
|
||||||
bright5=222222
|
|
||||||
bright6=333333
|
|
||||||
bright7=000000
|
|
||||||
selection-foreground=d4d4d4
|
|
||||||
selection-background=696969
|
|
||||||
cursor=d4d4d4 555555
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#191919
|
|
||||||
palette = 1=#dddddd
|
|
||||||
palette = 2=#cccccc
|
|
||||||
palette = 3=#aaaaaa
|
|
||||||
palette = 4=#a7a7a7
|
|
||||||
palette = 5=#dddddd
|
|
||||||
palette = 6=#cccccc
|
|
||||||
palette = 7=#828282
|
|
||||||
palette = 8=#3c3c3c
|
|
||||||
palette = 9=#dddddd
|
|
||||||
palette = 10=#cccccc
|
|
||||||
palette = 11=#aaaaaa
|
|
||||||
palette = 12=#a7a7a7
|
|
||||||
palette = 13=#dddddd
|
|
||||||
palette = 14=#cccccc
|
|
||||||
palette = 15=#ffffff
|
|
||||||
background = #111111
|
|
||||||
foreground = #828282
|
|
||||||
cursor-color = #aaaaaa
|
|
||||||
cursor-text = #111111
|
|
||||||
selection-background = #828282
|
|
||||||
selection-foreground = #111111
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#e8e8e8
|
|
||||||
palette = 1=#222222
|
|
||||||
palette = 2=#333333
|
|
||||||
palette = 3=#555555
|
|
||||||
palette = 4=#505058
|
|
||||||
palette = 5=#222222
|
|
||||||
palette = 6=#333333
|
|
||||||
palette = 7=#696969
|
|
||||||
palette = 8=#c3c3c3
|
|
||||||
palette = 9=#222222
|
|
||||||
palette = 10=#333333
|
|
||||||
palette = 11=#555555
|
|
||||||
palette = 12=#505058
|
|
||||||
palette = 13=#222222
|
|
||||||
palette = 14=#333333
|
|
||||||
palette = 15=#000000
|
|
||||||
background = #d4d4d4
|
|
||||||
foreground = #696969
|
|
||||||
cursor-color = #555555
|
|
||||||
cursor-text = #d4d4d4
|
|
||||||
selection-background = #696969
|
|
||||||
selection-foreground = #d4d4d4
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #191919
|
|
||||||
color1 #dddddd
|
|
||||||
color2 #cccccc
|
|
||||||
color3 #aaaaaa
|
|
||||||
color4 #a7a7a7
|
|
||||||
color5 #dddddd
|
|
||||||
color6 #cccccc
|
|
||||||
color7 #828282
|
|
||||||
color8 #3c3c3c
|
|
||||||
color9 #dddddd
|
|
||||||
color10 #cccccc
|
|
||||||
color11 #aaaaaa
|
|
||||||
color12 #a7a7a7
|
|
||||||
color13 #dddddd
|
|
||||||
color14 #cccccc
|
|
||||||
color15 #ffffff
|
|
||||||
background #111111
|
|
||||||
selection_foreground #111111
|
|
||||||
cursor #aaaaaa
|
|
||||||
cursor_text_color #111111
|
|
||||||
foreground #828282
|
|
||||||
selection_background #828282
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #e8e8e8
|
|
||||||
color1 #222222
|
|
||||||
color2 #333333
|
|
||||||
color3 #555555
|
|
||||||
color4 #505058
|
|
||||||
color5 #222222
|
|
||||||
color6 #333333
|
|
||||||
color7 #696969
|
|
||||||
color8 #c3c3c3
|
|
||||||
color9 #222222
|
|
||||||
color10 #333333
|
|
||||||
color11 #555555
|
|
||||||
color12 #505058
|
|
||||||
color13 #222222
|
|
||||||
color14 #333333
|
|
||||||
color15 #000000
|
|
||||||
background #d4d4d4
|
|
||||||
selection_foreground #d4d4d4
|
|
||||||
cursor #555555
|
|
||||||
cursor_text_color #d4d4d4
|
|
||||||
foreground #696969
|
|
||||||
selection_background #696969
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#191919",
|
|
||||||
"#dddddd",
|
|
||||||
"#cccccc",
|
|
||||||
"#aaaaaa",
|
|
||||||
"#a7a7a7",
|
|
||||||
"#dddddd",
|
|
||||||
"#cccccc",
|
|
||||||
"#828282",
|
|
||||||
]
|
|
||||||
background = "#111111"
|
|
||||||
brights = [
|
|
||||||
"#3c3c3c",
|
|
||||||
"#dddddd",
|
|
||||||
"#cccccc",
|
|
||||||
"#aaaaaa",
|
|
||||||
"#a7a7a7",
|
|
||||||
"#dddddd",
|
|
||||||
"#cccccc",
|
|
||||||
"#ffffff",
|
|
||||||
]
|
|
||||||
cursor_bg = "#aaaaaa"
|
|
||||||
cursor_border = "#aaaaaa"
|
|
||||||
cursor_fg = "#111111"
|
|
||||||
foreground = "#828282"
|
|
||||||
selection_bg = "#828282"
|
|
||||||
selection_fg = "#111111"
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
name = "Noctalia"
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#e8e8e8",
|
|
||||||
"#222222",
|
|
||||||
"#333333",
|
|
||||||
"#555555",
|
|
||||||
"#505058",
|
|
||||||
"#222222",
|
|
||||||
"#333333",
|
|
||||||
"#696969",
|
|
||||||
]
|
|
||||||
background = "#d4d4d4"
|
|
||||||
brights = [
|
|
||||||
"#c3c3c3",
|
|
||||||
"#222222",
|
|
||||||
"#333333",
|
|
||||||
"#555555",
|
|
||||||
"#505058",
|
|
||||||
"#222222",
|
|
||||||
"#333333",
|
|
||||||
"#000000",
|
|
||||||
]
|
|
||||||
cursor_bg = "#555555"
|
|
||||||
cursor_border = "#555555"
|
|
||||||
cursor_fg = "#d4d4d4"
|
|
||||||
foreground = "#696969"
|
|
||||||
selection_bg = "#696969"
|
|
||||||
selection_fg = "#d4d4d4"
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
name = "Noctalia"
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
{
|
|
||||||
"dark": {
|
|
||||||
"mPrimary": "#c7a1d8",
|
|
||||||
"mOnPrimary": "#1a151f",
|
|
||||||
"mSecondary": "#a984c4",
|
|
||||||
"mOnSecondary": "#f3edf7",
|
|
||||||
"mTertiary": "#e0b7c9",
|
|
||||||
"mOnTertiary": "#20161f",
|
|
||||||
"mError": "#e9899d",
|
|
||||||
"mOnError": "#1e1418",
|
|
||||||
"mSurface": "#1c1822",
|
|
||||||
"mOnSurface": "#e9e4f0",
|
|
||||||
"mSurfaceVariant": "#262130",
|
|
||||||
"mOnSurfaceVariant": "#a79ab0",
|
|
||||||
"mOutline": "#3e364e",
|
|
||||||
"mShadow": "#120f18",
|
|
||||||
"mHover": "#e0b7c9",
|
|
||||||
"mOnHover": "#20161f"
|
|
||||||
},
|
|
||||||
"light": {
|
|
||||||
"mPrimary": "#9b59ba",
|
|
||||||
"mOnPrimary": "#ffffff",
|
|
||||||
"mSecondary": "#784999",
|
|
||||||
"mOnSecondary": "#ffffff",
|
|
||||||
"mTertiary": "#c17093",
|
|
||||||
"mOnTertiary": "#ffffff",
|
|
||||||
"mError": "#e9899d",
|
|
||||||
"mOnError": "#1e1418",
|
|
||||||
"mSurface": "#f5f1fa",
|
|
||||||
"mOnSurface": "#1c1822",
|
|
||||||
"mSurfaceVariant": "#e7dfee",
|
|
||||||
"mOnSurfaceVariant": "#4a3d59",
|
|
||||||
"mOutline": "#cebedc",
|
|
||||||
"mShadow": "#ffffff",
|
|
||||||
"mHover": "#c17093",
|
|
||||||
"mOnHover": "#ffffff"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Noctalia Legacy)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#3e364e'
|
|
||||||
blue = '#a984c4'
|
|
||||||
cyan = '#e0b7c9'
|
|
||||||
green = '#e0b7c9'
|
|
||||||
magenta = '#e9899d'
|
|
||||||
red = '#e9899d'
|
|
||||||
white = '#ffffff'
|
|
||||||
yellow = '#c7a1d8'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#c7a1d8'
|
|
||||||
text = '#1c1822'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#262130'
|
|
||||||
blue = '#a984c4'
|
|
||||||
cyan = '#e0b7c9'
|
|
||||||
green = '#e0b7c9'
|
|
||||||
magenta = '#e9899d'
|
|
||||||
red = '#e9899d'
|
|
||||||
white = '#e9e4f0'
|
|
||||||
yellow = '#c7a1d8'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#1c1822'
|
|
||||||
foreground = '#e9e4f0'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#e9e4f0'
|
|
||||||
text = '#1c1822'
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Noctalia Legacy Light)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#cebedc'
|
|
||||||
blue = '#784999'
|
|
||||||
cyan = '#c17093'
|
|
||||||
green = '#c17093'
|
|
||||||
magenta = '#e9899d'
|
|
||||||
red = '#e9899d'
|
|
||||||
white = '#1c1822'
|
|
||||||
yellow = '#9b59ba'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#9b59ba'
|
|
||||||
text = '#f5f1fa'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#e7dfee'
|
|
||||||
blue = '#784999'
|
|
||||||
cyan = '#c17093'
|
|
||||||
green = '#c17093'
|
|
||||||
magenta = '#e9899d'
|
|
||||||
red = '#e9899d'
|
|
||||||
white = '#1c1822'
|
|
||||||
yellow = '#9b59ba'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#f5f1fa'
|
|
||||||
foreground = '#1c1822'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#1c1822'
|
|
||||||
text = '#f5f1fa'
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
[colors]
|
|
||||||
foreground=e9e4f0
|
|
||||||
background=1c1822
|
|
||||||
regular0=262130
|
|
||||||
regular1=e9899d
|
|
||||||
regular2=e0b7c9
|
|
||||||
regular3=c7a1d8
|
|
||||||
regular4=a984c4
|
|
||||||
regular5=e9899d
|
|
||||||
regular6=e0b7c9
|
|
||||||
regular7=e9e4f0
|
|
||||||
bright0=3e364e
|
|
||||||
bright1=e9899d
|
|
||||||
bright2=e0b7c9
|
|
||||||
bright3=c7a1d8
|
|
||||||
bright4=a984c4
|
|
||||||
bright5=e9899d
|
|
||||||
bright6=e0b7c9
|
|
||||||
bright7=ffffff
|
|
||||||
selection-foreground=1c1822
|
|
||||||
selection-background=e9e4f0
|
|
||||||
cursor=1c1822 c7a1d8
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
[colors]
|
|
||||||
foreground=1c1822
|
|
||||||
background=f5f1fa
|
|
||||||
regular0=e7dfee
|
|
||||||
regular1=e9899d
|
|
||||||
regular2=c17093
|
|
||||||
regular3=9b59ba
|
|
||||||
regular4=784999
|
|
||||||
regular5=e9899d
|
|
||||||
regular6=c17093
|
|
||||||
regular7=1c1822
|
|
||||||
bright0=cebedc
|
|
||||||
bright1=e9899d
|
|
||||||
bright2=c17093
|
|
||||||
bright3=9b59ba
|
|
||||||
bright4=784999
|
|
||||||
bright5=e9899d
|
|
||||||
bright6=c17093
|
|
||||||
bright7=1c1822
|
|
||||||
selection-foreground=f5f1fa
|
|
||||||
selection-background=1c1822
|
|
||||||
cursor=f5f1fa 9b59ba
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#262130
|
|
||||||
palette = 1=#e9899d
|
|
||||||
palette = 2=#e0b7c9
|
|
||||||
palette = 3=#c7a1d8
|
|
||||||
palette = 4=#a984c4
|
|
||||||
palette = 5=#e9899d
|
|
||||||
palette = 6=#e0b7c9
|
|
||||||
palette = 7=#e9e4f0
|
|
||||||
palette = 8=#3e364e
|
|
||||||
palette = 9=#e9899d
|
|
||||||
palette = 10=#e0b7c9
|
|
||||||
palette = 11=#c7a1d8
|
|
||||||
palette = 12=#a984c4
|
|
||||||
palette = 13=#e9899d
|
|
||||||
palette = 14=#e0b7c9
|
|
||||||
palette = 15=#ffffff
|
|
||||||
background = #1c1822
|
|
||||||
foreground = #e9e4f0
|
|
||||||
cursor-color = #c7a1d8
|
|
||||||
cursor-text = #1c1822
|
|
||||||
selection-background = #e9e4f0
|
|
||||||
selection-foreground = #1c1822
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#e7dfee
|
|
||||||
palette = 1=#e9899d
|
|
||||||
palette = 2=#c17093
|
|
||||||
palette = 3=#9b59ba
|
|
||||||
palette = 4=#784999
|
|
||||||
palette = 5=#e9899d
|
|
||||||
palette = 6=#c17093
|
|
||||||
palette = 7=#1c1822
|
|
||||||
palette = 8=#cebedc
|
|
||||||
palette = 9=#e9899d
|
|
||||||
palette = 10=#c17093
|
|
||||||
palette = 11=#9b59ba
|
|
||||||
palette = 12=#784999
|
|
||||||
palette = 13=#e9899d
|
|
||||||
palette = 14=#c17093
|
|
||||||
palette = 15=#1c1822
|
|
||||||
background = #f5f1fa
|
|
||||||
foreground = #1c1822
|
|
||||||
cursor-color = #9b59ba
|
|
||||||
cursor-text = #f5f1fa
|
|
||||||
selection-background = #1c1822
|
|
||||||
selection-foreground = #f5f1fa
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #262130
|
|
||||||
color1 #e9899d
|
|
||||||
color2 #e0b7c9
|
|
||||||
color3 #c7a1d8
|
|
||||||
color4 #a984c4
|
|
||||||
color5 #e9899d
|
|
||||||
color6 #e0b7c9
|
|
||||||
color7 #e9e4f0
|
|
||||||
color8 #3e364e
|
|
||||||
color9 #e9899d
|
|
||||||
color10 #e0b7c9
|
|
||||||
color11 #c7a1d8
|
|
||||||
color12 #a984c4
|
|
||||||
color13 #e9899d
|
|
||||||
color14 #e0b7c9
|
|
||||||
color15 #ffffff
|
|
||||||
background #1c1822
|
|
||||||
selection_foreground #1c1822
|
|
||||||
cursor #c7a1d8
|
|
||||||
cursor_text_color #1c1822
|
|
||||||
foreground #e9e4f0
|
|
||||||
selection_background #e9e4f0
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #e7dfee
|
|
||||||
color1 #e9899d
|
|
||||||
color2 #c17093
|
|
||||||
color3 #9b59ba
|
|
||||||
color4 #784999
|
|
||||||
color5 #e9899d
|
|
||||||
color6 #c17093
|
|
||||||
color7 #1c1822
|
|
||||||
color8 #cebedc
|
|
||||||
color9 #e9899d
|
|
||||||
color10 #c17093
|
|
||||||
color11 #9b59ba
|
|
||||||
color12 #784999
|
|
||||||
color13 #e9899d
|
|
||||||
color14 #c17093
|
|
||||||
color15 #1c1822
|
|
||||||
background #f5f1fa
|
|
||||||
selection_foreground #f5f1fa
|
|
||||||
cursor #9b59ba
|
|
||||||
cursor_text_color #f5f1fa
|
|
||||||
foreground #1c1822
|
|
||||||
selection_background #1c1822
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#262130",
|
|
||||||
"#e9899d",
|
|
||||||
"#e0b7c9",
|
|
||||||
"#c7a1d8",
|
|
||||||
"#a984c4",
|
|
||||||
"#e9899d",
|
|
||||||
"#e0b7c9",
|
|
||||||
"#e9e4f0",
|
|
||||||
]
|
|
||||||
background = "#1c1822"
|
|
||||||
brights = [
|
|
||||||
"#3e364e",
|
|
||||||
"#e9899d",
|
|
||||||
"#e0b7c9",
|
|
||||||
"#c7a1d8",
|
|
||||||
"#a984c4",
|
|
||||||
"#e9899d",
|
|
||||||
"#e0b7c9",
|
|
||||||
"#ffffff",
|
|
||||||
]
|
|
||||||
cursor_bg = "#c7a1d8"
|
|
||||||
cursor_border = "#c7a1d8"
|
|
||||||
cursor_fg = "#1c1822"
|
|
||||||
foreground = "#e9e4f0"
|
|
||||||
selection_bg = "#e9e4f0"
|
|
||||||
selection_fg = "#1c1822"
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
name = "Noctalia"
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#e7dfee",
|
|
||||||
"#e9899d",
|
|
||||||
"#c17093",
|
|
||||||
"#9b59ba",
|
|
||||||
"#784999",
|
|
||||||
"#e9899d",
|
|
||||||
"#c17093",
|
|
||||||
"#1c1822",
|
|
||||||
]
|
|
||||||
background = "#f5f1fa"
|
|
||||||
brights = [
|
|
||||||
"#cebedc",
|
|
||||||
"#e9899d",
|
|
||||||
"#c17093",
|
|
||||||
"#9b59ba",
|
|
||||||
"#784999",
|
|
||||||
"#e9899d",
|
|
||||||
"#c17093",
|
|
||||||
"#1c1822",
|
|
||||||
]
|
|
||||||
cursor_bg = "#9b59ba"
|
|
||||||
cursor_border = "#9b59ba"
|
|
||||||
cursor_fg = "#f5f1fa"
|
|
||||||
foreground = "#1c1822"
|
|
||||||
selection_bg = "#1c1822"
|
|
||||||
selection_fg = "#f5f1fa"
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
name = "Noctalia"
|
|
||||||
@@ -1,38 +0,0 @@
|
|||||||
{
|
|
||||||
"dark": {
|
|
||||||
"mPrimary": "#1E9177",
|
|
||||||
"mOnPrimary": "#B8C8C4",
|
|
||||||
"mSecondary": "#167A63",
|
|
||||||
"mOnSecondary": "#B8C8C4",
|
|
||||||
"mTertiary": "#26A589",
|
|
||||||
"mOnTertiary": "#B8C8C4",
|
|
||||||
"mError": "#933636",
|
|
||||||
"mOnError": "#B8C8C4",
|
|
||||||
"mSurface": "#081512",
|
|
||||||
"mOnSurface": "#A6B5B1",
|
|
||||||
"mSurfaceVariant": "#0F251F",
|
|
||||||
"mOnSurfaceVariant": "#99A8A4",
|
|
||||||
"mOutline": "#1B6352",
|
|
||||||
"mShadow": "#040A09",
|
|
||||||
"mHover": "#26A589",
|
|
||||||
"mOnHover": "#B8C8C4"
|
|
||||||
},
|
|
||||||
"light": {
|
|
||||||
"mPrimary": "#3B7561",
|
|
||||||
"mOnPrimary": "#D8E5DB",
|
|
||||||
"mSecondary": "#526E4A",
|
|
||||||
"mOnSecondary": "#D8E5DB",
|
|
||||||
"mTertiary": "#4A8069",
|
|
||||||
"mOnTertiary": "#D8E5DB",
|
|
||||||
"mError": "#854145",
|
|
||||||
"mOnError": "#D8E5DB",
|
|
||||||
"mSurface": "#AEC2B4",
|
|
||||||
"mOnSurface": "#2C3D35",
|
|
||||||
"mSurfaceVariant": "#95AD9C",
|
|
||||||
"mOnSurfaceVariant": "#263731",
|
|
||||||
"mOutline": "#5C7A6A",
|
|
||||||
"mShadow": "#8A9E90",
|
|
||||||
"mHover": "#4A8069",
|
|
||||||
"mOnHover": "#D8E5DB"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Osaka Jade)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#464e50'
|
|
||||||
blue = '#71baf2'
|
|
||||||
cyan = '#67cbe7'
|
|
||||||
green = '#96d988'
|
|
||||||
magenta = '#ce89df'
|
|
||||||
red = '#ef7e7e'
|
|
||||||
white = '#bdc3c2'
|
|
||||||
yellow = '#f4d67a'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#dadada'
|
|
||||||
text = '#141b1e'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#232a2d'
|
|
||||||
blue = '#67b0e8'
|
|
||||||
cyan = '#6cbfbf'
|
|
||||||
green = '#8ccf7e'
|
|
||||||
magenta = '#c47fd5'
|
|
||||||
red = '#e57474'
|
|
||||||
white = '#b3b9b8'
|
|
||||||
yellow = '#e5c76b'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#141b1e'
|
|
||||||
foreground = '#dadada'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#141b1e'
|
|
||||||
text = '#dadada'
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Osaka Jade Light)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#a6b0a0'
|
|
||||||
blue = '#3a94c5'
|
|
||||||
cyan = '#35a77c'
|
|
||||||
green = '#8da101'
|
|
||||||
magenta = '#df69ba'
|
|
||||||
red = '#f85552'
|
|
||||||
white = '#fffbef'
|
|
||||||
yellow = '#dfa000'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#f57d26'
|
|
||||||
text = '#eaedc8'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#7a8478'
|
|
||||||
blue = '#7fbbb3'
|
|
||||||
cyan = '#83c092'
|
|
||||||
green = '#9ab373'
|
|
||||||
magenta = '#d699b6'
|
|
||||||
red = '#e67e80'
|
|
||||||
white = '#b2af9f'
|
|
||||||
yellow = '#c1a266'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#efebd4'
|
|
||||||
foreground = '#5c6a72'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#eaedc8'
|
|
||||||
text = '#5c6a72'
|
|
||||||
@@ -1,25 +0,0 @@
|
|||||||
|
|
||||||
[cursor]
|
|
||||||
color=141b1e dadada
|
|
||||||
|
|
||||||
[colors]
|
|
||||||
foreground=dadada
|
|
||||||
background=141b1e
|
|
||||||
regular0=232a2d
|
|
||||||
regular1=e57474
|
|
||||||
regular2=8ccf7e
|
|
||||||
regular3=e5c76b
|
|
||||||
regular4=67b0e8
|
|
||||||
regular5=c47fd5
|
|
||||||
regular6=6cbfbf
|
|
||||||
regular7=b3b9b8
|
|
||||||
bright0=464e50
|
|
||||||
bright1=ef7e7e
|
|
||||||
bright2=96d988
|
|
||||||
bright3=f4d67a
|
|
||||||
bright4=71baf2
|
|
||||||
bright5=ce89df
|
|
||||||
bright6=67cbe7
|
|
||||||
bright7=bdc3c2
|
|
||||||
selection-foreground=dadada
|
|
||||||
selection-background=141b1e
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
[colors]
|
|
||||||
foreground=5c6a72
|
|
||||||
background=efebd4
|
|
||||||
regular0=7a8478
|
|
||||||
regular1=e67e80
|
|
||||||
regular2=9ab373
|
|
||||||
regular3=c1a266
|
|
||||||
regular4=7fbbb3
|
|
||||||
regular5=d699b6
|
|
||||||
regular6=83c092
|
|
||||||
regular7=b2af9f
|
|
||||||
bright0=a6b0a0
|
|
||||||
bright1=f85552
|
|
||||||
bright2=8da101
|
|
||||||
bright3=dfa000
|
|
||||||
bright4=3a94c5
|
|
||||||
bright5=df69ba
|
|
||||||
bright6=35a77c
|
|
||||||
bright7=fffbef
|
|
||||||
selection-foreground=5c6a72
|
|
||||||
selection-background=eaedc8
|
|
||||||
cursor=eaedc8 f57d26
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#232a2d
|
|
||||||
palette = 1=#e57474
|
|
||||||
palette = 2=#8ccf7e
|
|
||||||
palette = 3=#e5c76b
|
|
||||||
palette = 4=#67b0e8
|
|
||||||
palette = 5=#c47fd5
|
|
||||||
palette = 6=#6cbfbf
|
|
||||||
palette = 7=#b3b9b8
|
|
||||||
palette = 8=#464e50
|
|
||||||
palette = 9=#ef7e7e
|
|
||||||
palette = 10=#96d988
|
|
||||||
palette = 11=#f4d67a
|
|
||||||
palette = 12=#71baf2
|
|
||||||
palette = 13=#ce89df
|
|
||||||
palette = 14=#67cbe7
|
|
||||||
palette = 15=#bdc3c2
|
|
||||||
background = #141b1e
|
|
||||||
foreground = #dadada
|
|
||||||
cursor-color = #dadada
|
|
||||||
cursor-text = #141b1e
|
|
||||||
selection-background = #141b1e
|
|
||||||
selection-foreground = #dadada
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#7a8478
|
|
||||||
palette = 1=#e67e80
|
|
||||||
palette = 2=#9ab373
|
|
||||||
palette = 3=#c1a266
|
|
||||||
palette = 4=#7fbbb3
|
|
||||||
palette = 5=#d699b6
|
|
||||||
palette = 6=#83c092
|
|
||||||
palette = 7=#b2af9f
|
|
||||||
palette = 8=#a6b0a0
|
|
||||||
palette = 9=#f85552
|
|
||||||
palette = 10=#8da101
|
|
||||||
palette = 11=#dfa000
|
|
||||||
palette = 12=#3a94c5
|
|
||||||
palette = 13=#df69ba
|
|
||||||
palette = 14=#35a77c
|
|
||||||
palette = 15=#fffbef
|
|
||||||
background = #efebd4
|
|
||||||
foreground = #5c6a72
|
|
||||||
cursor-color = #f57d26
|
|
||||||
cursor-text = #eaedc8
|
|
||||||
selection-background = #eaedc8
|
|
||||||
selection-foreground = #5c6a72
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #232a2d
|
|
||||||
color1 #e57474
|
|
||||||
color2 #8ccf7e
|
|
||||||
color3 #e5c76b
|
|
||||||
color4 #67b0e8
|
|
||||||
color5 #c47fd5
|
|
||||||
color6 #6cbfbf
|
|
||||||
color7 #b3b9b8
|
|
||||||
color8 #464e50
|
|
||||||
color9 #ef7e7e
|
|
||||||
color10 #96d988
|
|
||||||
color11 #f4d67a
|
|
||||||
color12 #71baf2
|
|
||||||
color13 #ce89df
|
|
||||||
color14 #67cbe7
|
|
||||||
color15 #bdc3c2
|
|
||||||
background #141b1e
|
|
||||||
selection_foreground #141b1e
|
|
||||||
cursor #dadada
|
|
||||||
cursor_text_color #141b1e
|
|
||||||
foreground #dadada
|
|
||||||
selection_background #dadada
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #7a8478
|
|
||||||
color1 #e67e80
|
|
||||||
color2 #9ab373
|
|
||||||
color3 #c1a266
|
|
||||||
color4 #7fbbb3
|
|
||||||
color5 #d699b6
|
|
||||||
color6 #83c092
|
|
||||||
color7 #b2af9f
|
|
||||||
color8 #a6b0a0
|
|
||||||
color9 #f85552
|
|
||||||
color10 #8da101
|
|
||||||
color11 #dfa000
|
|
||||||
color12 #3a94c5
|
|
||||||
color13 #df69ba
|
|
||||||
color14 #35a77c
|
|
||||||
color15 #fffbef
|
|
||||||
background #efebd4
|
|
||||||
selection_foreground #efebd4
|
|
||||||
cursor #f57d26
|
|
||||||
cursor_text_color #eaedc8
|
|
||||||
foreground #5c6a72
|
|
||||||
selection_background #5c6a72
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#232a2d",
|
|
||||||
"#e57474",
|
|
||||||
"#8ccf7e",
|
|
||||||
"#e5c76b",
|
|
||||||
"#67b0e8",
|
|
||||||
"#c47fd5",
|
|
||||||
"#6cbfbf",
|
|
||||||
"#b3b9b8",
|
|
||||||
]
|
|
||||||
background = "#141b1e"
|
|
||||||
brights = [
|
|
||||||
"#464e50",
|
|
||||||
"#ef7e7e",
|
|
||||||
"#96d988",
|
|
||||||
"#f4d67a",
|
|
||||||
"#71baf2",
|
|
||||||
"#ce89df",
|
|
||||||
"#67cbe7",
|
|
||||||
"#bdc3c2",
|
|
||||||
]
|
|
||||||
cursor_bg = "#dadada"
|
|
||||||
cursor_border = "#dadada"
|
|
||||||
cursor_fg = "#141b1e"
|
|
||||||
foreground = "#dadada"
|
|
||||||
selection_bg = "#dadada"
|
|
||||||
selection_fg = "#141b1e"
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
name = "Noctalia"
|
|
||||||
@@ -1,32 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#7a8478",
|
|
||||||
"#e67e80",
|
|
||||||
"#9ab373",
|
|
||||||
"#c1a266",
|
|
||||||
"#7fbbb3",
|
|
||||||
"#d699b6",
|
|
||||||
"#83c092",
|
|
||||||
"#b2af9f",
|
|
||||||
]
|
|
||||||
background = "#efebd4"
|
|
||||||
brights = [
|
|
||||||
"#a6b0a0",
|
|
||||||
"#f85552",
|
|
||||||
"#8da101",
|
|
||||||
"#dfa000",
|
|
||||||
"#3a94c5",
|
|
||||||
"#df69ba",
|
|
||||||
"#35a77c",
|
|
||||||
"#fffbef",
|
|
||||||
]
|
|
||||||
cursor_bg = "#f57d26"
|
|
||||||
cursor_border = "#f57d26"
|
|
||||||
cursor_fg = "#eaedc8"
|
|
||||||
foreground = "#5c6a72"
|
|
||||||
selection_bg = "#5c6a72"
|
|
||||||
selection_fg = "#efebd4"
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
name = "Noctalia"
|
|
||||||
|
|
||||||
@@ -8,7 +8,7 @@
|
|||||||
"mOnTertiary": "#e0def4",
|
"mOnTertiary": "#e0def4",
|
||||||
"mError": "#eb6f92",
|
"mError": "#eb6f92",
|
||||||
"mOnError": "#191724",
|
"mOnError": "#191724",
|
||||||
"mSurface": "#1f1d2e",
|
"mSurface": "#191724",
|
||||||
"mOnSurface": "#e0def4",
|
"mOnSurface": "#e0def4",
|
||||||
"mSurfaceVariant": "#26233a",
|
"mSurfaceVariant": "#26233a",
|
||||||
"mOnSurfaceVariant": "#908caa",
|
"mOnSurfaceVariant": "#908caa",
|
||||||
|
|||||||
@@ -1,38 +0,0 @@
|
|||||||
{
|
|
||||||
"dark": {
|
|
||||||
"mPrimary": "#b58900",
|
|
||||||
"mOnPrimary": "#002b36",
|
|
||||||
"mSecondary": "#d33682",
|
|
||||||
"mOnSecondary": "#002b36",
|
|
||||||
"mTertiary": "#cb4b16",
|
|
||||||
"mOnTertiary": "#002b36",
|
|
||||||
"mError": "#dc322f",
|
|
||||||
"mOnError": "#002b36",
|
|
||||||
"mSurface": "#002b36",
|
|
||||||
"mOnSurface": "#839496",
|
|
||||||
"mSurfaceVariant": "#073642",
|
|
||||||
"mOnSurfaceVariant": "#657b83",
|
|
||||||
"mOutline": "#0c5c70",
|
|
||||||
"mShadow": "#002b36",
|
|
||||||
"mHover": "#cb4b16",
|
|
||||||
"mOnHover": "#002b36"
|
|
||||||
},
|
|
||||||
"light": {
|
|
||||||
"mPrimary": "#b58900",
|
|
||||||
"mOnPrimary": "#fdf6e3",
|
|
||||||
"mSecondary": "#d33682",
|
|
||||||
"mOnSecondary": "#fdf6e3",
|
|
||||||
"mTertiary": "#cb4b16",
|
|
||||||
"mOnTertiary": "#fdf6e3",
|
|
||||||
"mError": "#dc322f",
|
|
||||||
"mOnError": "#fdf6e3",
|
|
||||||
"mSurface": "#fdf6e3",
|
|
||||||
"mOnSurface": "#657b83",
|
|
||||||
"mSurfaceVariant": "#eee8d5",
|
|
||||||
"mOnSurfaceVariant": "#839496",
|
|
||||||
"mOutline": "#dfd4b1",
|
|
||||||
"mShadow": "#eee8d5",
|
|
||||||
"mHover": "#cb4b16",
|
|
||||||
"mOnHover": "#fdf6e3"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Solarized Dark)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#335e69'
|
|
||||||
blue = '#839496'
|
|
||||||
cyan = '#93a1a1'
|
|
||||||
green = '#586e75'
|
|
||||||
magenta = '#6c71c4'
|
|
||||||
red = '#cb4b16'
|
|
||||||
white = '#fdf6e3'
|
|
||||||
yellow = '#657b83'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#839496'
|
|
||||||
text = '#073642'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#073642'
|
|
||||||
blue = '#268bd2'
|
|
||||||
cyan = '#2aa198'
|
|
||||||
green = '#859900'
|
|
||||||
magenta = '#d33682'
|
|
||||||
red = '#dc322f'
|
|
||||||
white = '#eee8d5'
|
|
||||||
yellow = '#b58900'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#002b36'
|
|
||||||
foreground = '#839496'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#073642'
|
|
||||||
text = '#93a1a1'
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
# Colors (Solarized Light)
|
|
||||||
|
|
||||||
[colors.bright]
|
|
||||||
black = '#002b36'
|
|
||||||
blue = '#839496'
|
|
||||||
cyan = '#93a1a1'
|
|
||||||
green = '#586e75'
|
|
||||||
magenta = '#6c71c4'
|
|
||||||
red = '#cb4b16'
|
|
||||||
white = '#fdf6e3'
|
|
||||||
yellow = '#657b83'
|
|
||||||
|
|
||||||
[colors.cursor]
|
|
||||||
cursor = '#657b83'
|
|
||||||
text = '#eee8d5'
|
|
||||||
|
|
||||||
[colors.normal]
|
|
||||||
black = '#073642'
|
|
||||||
blue = '#268bd2'
|
|
||||||
cyan = '#2aa198'
|
|
||||||
green = '#859900'
|
|
||||||
magenta = '#d33682'
|
|
||||||
red = '#dc322f'
|
|
||||||
white = '#bbb5a2'
|
|
||||||
yellow = '#b58900'
|
|
||||||
|
|
||||||
[colors.primary]
|
|
||||||
background = '#fdf6e3'
|
|
||||||
foreground = '#657b83'
|
|
||||||
|
|
||||||
[colors.selection]
|
|
||||||
background = '#eee8d5'
|
|
||||||
text = '#586e75'
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
[colors]
|
|
||||||
foreground=839496
|
|
||||||
background=002b36
|
|
||||||
regular0=073642
|
|
||||||
regular1=dc322f
|
|
||||||
regular2=859900
|
|
||||||
regular3=b58900
|
|
||||||
regular4=268bd2
|
|
||||||
regular5=d33682
|
|
||||||
regular6=2aa198
|
|
||||||
regular7=eee8d5
|
|
||||||
bright0=335e69
|
|
||||||
bright1=cb4b16
|
|
||||||
bright2=586e75
|
|
||||||
bright3=657b83
|
|
||||||
bright4=839496
|
|
||||||
bright5=6c71c4
|
|
||||||
bright6=93a1a1
|
|
||||||
bright7=fdf6e3
|
|
||||||
selection-foreground=93a1a1
|
|
||||||
selection-background=073642
|
|
||||||
cursor=073642 839496
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
|
|
||||||
[colors]
|
|
||||||
foreground=657b83
|
|
||||||
background=fdf6e3
|
|
||||||
regular0=073642
|
|
||||||
regular1=dc322f
|
|
||||||
regular2=859900
|
|
||||||
regular3=b58900
|
|
||||||
regular4=268bd2
|
|
||||||
regular5=d33682
|
|
||||||
regular6=2aa198
|
|
||||||
regular7=bbb5a2
|
|
||||||
bright0=002b36
|
|
||||||
bright1=cb4b16
|
|
||||||
bright2=586e75
|
|
||||||
bright3=657b83
|
|
||||||
bright4=839496
|
|
||||||
bright5=6c71c4
|
|
||||||
bright6=93a1a1
|
|
||||||
bright7=fdf6e3
|
|
||||||
selection-foreground=586e75
|
|
||||||
selection-background=eee8d5
|
|
||||||
cursor=eee8d5 657b83
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#073642
|
|
||||||
palette = 1=#dc322f
|
|
||||||
palette = 2=#859900
|
|
||||||
palette = 3=#b58900
|
|
||||||
palette = 4=#268bd2
|
|
||||||
palette = 5=#d33682
|
|
||||||
palette = 6=#2aa198
|
|
||||||
palette = 7=#eee8d5
|
|
||||||
palette = 8=#335e69
|
|
||||||
palette = 9=#cb4b16
|
|
||||||
palette = 10=#586e75
|
|
||||||
palette = 11=#657b83
|
|
||||||
palette = 12=#839496
|
|
||||||
palette = 13=#6c71c4
|
|
||||||
palette = 14=#93a1a1
|
|
||||||
palette = 15=#fdf6e3
|
|
||||||
background = #002b36
|
|
||||||
foreground = #839496
|
|
||||||
cursor-color = #839496
|
|
||||||
cursor-text = #073642
|
|
||||||
selection-background = #073642
|
|
||||||
selection-foreground = #93a1a1
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
palette = 0=#073642
|
|
||||||
palette = 1=#dc322f
|
|
||||||
palette = 2=#859900
|
|
||||||
palette = 3=#b58900
|
|
||||||
palette = 4=#268bd2
|
|
||||||
palette = 5=#d33682
|
|
||||||
palette = 6=#2aa198
|
|
||||||
palette = 7=#bbb5a2
|
|
||||||
palette = 8=#002b36
|
|
||||||
palette = 9=#cb4b16
|
|
||||||
palette = 10=#586e75
|
|
||||||
palette = 11=#657b83
|
|
||||||
palette = 12=#839496
|
|
||||||
palette = 13=#6c71c4
|
|
||||||
palette = 14=#93a1a1
|
|
||||||
palette = 15=#fdf6e3
|
|
||||||
background = #fdf6e3
|
|
||||||
foreground = #657b83
|
|
||||||
cursor-color = #657b83
|
|
||||||
cursor-text = #eee8d5
|
|
||||||
selection-background = #eee8d5
|
|
||||||
selection-foreground = #586e75
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #073642
|
|
||||||
color1 #dc322f
|
|
||||||
color2 #859900
|
|
||||||
color3 #b58900
|
|
||||||
color4 #268bd2
|
|
||||||
color5 #d33682
|
|
||||||
color6 #2aa198
|
|
||||||
color7 #eee8d5
|
|
||||||
color8 #335e69
|
|
||||||
color9 #cb4b16
|
|
||||||
color10 #586e75
|
|
||||||
color11 #657b83
|
|
||||||
color12 #839496
|
|
||||||
color13 #6c71c4
|
|
||||||
color14 #93a1a1
|
|
||||||
color15 #fdf6e3
|
|
||||||
background #002b36
|
|
||||||
selection_foreground #002b36
|
|
||||||
cursor #839496
|
|
||||||
cursor_text_color #073642
|
|
||||||
foreground #839496
|
|
||||||
selection_background #839496
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
color0 #073642
|
|
||||||
color1 #dc322f
|
|
||||||
color2 #859900
|
|
||||||
color3 #b58900
|
|
||||||
color4 #268bd2
|
|
||||||
color5 #d33682
|
|
||||||
color6 #2aa198
|
|
||||||
color7 #bbb5a2
|
|
||||||
color8 #002b36
|
|
||||||
color9 #cb4b16
|
|
||||||
color10 #586e75
|
|
||||||
color11 #657b83
|
|
||||||
color12 #839496
|
|
||||||
color13 #6c71c4
|
|
||||||
color14 #93a1a1
|
|
||||||
color15 #fdf6e3
|
|
||||||
background #fdf6e3
|
|
||||||
selection_foreground #fdf6e3
|
|
||||||
cursor #657b83
|
|
||||||
cursor_text_color #eee8d5
|
|
||||||
foreground #657b83
|
|
||||||
selection_background #657b83
|
|
||||||
@@ -1,29 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#002b36",
|
|
||||||
"#dc322f",
|
|
||||||
"#859900",
|
|
||||||
"#b58900",
|
|
||||||
"#268bd2",
|
|
||||||
"#6c71c4",
|
|
||||||
"#2aa198",
|
|
||||||
"#93a1a1",
|
|
||||||
]
|
|
||||||
background = "#002b36"
|
|
||||||
brights = [
|
|
||||||
"#657b83",
|
|
||||||
"#dc322f",
|
|
||||||
"#859900",
|
|
||||||
"#b58900",
|
|
||||||
"#268bd2",
|
|
||||||
"#6c71c4",
|
|
||||||
"#2aa198",
|
|
||||||
"#fdf6e3",
|
|
||||||
]
|
|
||||||
foreground = "#93a1a1"
|
|
||||||
|
|
||||||
[colors.indexed]
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
author = "Chris Kempson"
|
|
||||||
name = "Noctalia"
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
[colors]
|
|
||||||
ansi = [
|
|
||||||
"#002b36",
|
|
||||||
"#dc322f",
|
|
||||||
"#859900",
|
|
||||||
"#b58900",
|
|
||||||
"#268bd2",
|
|
||||||
"#6c71c4",
|
|
||||||
"#2aa198",
|
|
||||||
"#93a1a1",
|
|
||||||
]
|
|
||||||
background = "#fdf6e3"
|
|
||||||
brights = [
|
|
||||||
"#657b83",
|
|
||||||
"#dc322f",
|
|
||||||
"#859900",
|
|
||||||
"#b58900",
|
|
||||||
"#268bd2",
|
|
||||||
"#6c71c4",
|
|
||||||
"#2aa198",
|
|
||||||
"#fdf6e3",
|
|
||||||
]
|
|
||||||
foreground = "#586e75"
|
|
||||||
|
|
||||||
[colors.indexed]
|
|
||||||
|
|
||||||
[metadata]
|
|
||||||
author = "Chris Kempson"
|
|
||||||
name = "Noctalia"
|
|
||||||
|
|
||||||
139
Assets/MatugenTemplates/telegram.tdesktop-theme
Normal file
139
Assets/MatugenTemplates/telegram.tdesktop-theme
Normal file
@@ -0,0 +1,139 @@
|
|||||||
|
// Material You theme for Telegram Desktop
|
||||||
|
// Generated by matugen
|
||||||
|
|
||||||
|
COLOR_GRAY: {{colors.outline.default.hex}};
|
||||||
|
COLOR_DARK: {{colors.surface_variant.default.hex}};
|
||||||
|
|
||||||
|
windowBg: {{colors.background.default.hex}}; // Main background
|
||||||
|
windowFg: {{colors.on_background.default.hex}}; // Main text
|
||||||
|
windowBgOver: {{colors.surface_variant.default.hex}}; // Generic background on hover
|
||||||
|
windowBgRipple: {{colors.surface_variant.default.hex}}; // Ripple effect
|
||||||
|
windowFgOver: {{colors.on_surface_variant.default.hex}}; // Text on hover
|
||||||
|
windowSubTextFg: {{colors.outline.default.hex}}; // Minor text
|
||||||
|
windowSubTextFgOver: {{colors.outline.default.hex}}; // Minor text on hover
|
||||||
|
windowBoldFg: {{colors.on_background.default.hex}}; // Bold text
|
||||||
|
windowBoldFgOver: {{colors.on_surface_variant.default.hex}}; // Bold text on hover
|
||||||
|
windowBgActive: {{colors.primary.default.hex}}; // Active items background
|
||||||
|
windowFgActive: {{colors.on_primary.default.hex}}; // Active items text
|
||||||
|
windowActiveTextFg: {{colors.primary.default.hex}}; // Active items text
|
||||||
|
windowShadowFg: {{colors.shadow.default.hex}}; // Window shadow
|
||||||
|
windowShadowFgFallback: {{colors.shadow.default.hex}}; // Fallback for shadow
|
||||||
|
historyOutIconFg: {{colors.primary.default.hex}};
|
||||||
|
historyIconFgInverted: {{colors.on_surface.default.hex}};
|
||||||
|
|
||||||
|
msgServiceBg: {{colors.primary_container.default.hex}};
|
||||||
|
msgServiceFg: {{colors.on_surface.default.hex}};
|
||||||
|
msgOutBg: {{colors.primary_container.default.hex}};
|
||||||
|
msgOutBgSelected : {{colors.tertiary_container.default.hex}};
|
||||||
|
msgOutServiceFg: {{colors.on_surface.default.hex}};
|
||||||
|
msgOutDateFg: {{colors.on_surface.default.hex}};
|
||||||
|
historySentIconFg: {{colors.on_surface.default.hex}};
|
||||||
|
msgOutDateFgSelected: {{colors.on_surface.default.hex}};
|
||||||
|
msgDateImgFg: {{colors.on_surface.default.hex}};
|
||||||
|
dialogsSentIconFg: {{colors.primary.default.hex}};
|
||||||
|
dialogsSentIconFgOver: {{colors.primary.default.hex}};
|
||||||
|
dialogsOnlineBadgeFg: {{colors.primary.default.hex}};
|
||||||
|
|
||||||
|
|
||||||
|
shadowFg: {{colors.shadow.default.hex}}; // General shadow
|
||||||
|
slideFadeOutBg: {{colors.background.default.hex}};
|
||||||
|
slideFadeOutShadowFg: {{colors.shadow.default.hex}};
|
||||||
|
|
||||||
|
imageBg: {{colors.surface.default.hex}};
|
||||||
|
imageBgTransparent: {{colors.surface.default.hex}};
|
||||||
|
|
||||||
|
activeButtonBg: {{colors.primary.default.hex}}; // Active button background
|
||||||
|
activeButtonBgOver: {{colors.primary_container.default.hex}}; // Active button hover background
|
||||||
|
activeButtonBgRipple: {{colors.on_primary_container.default.hex}}; // Active button ripple
|
||||||
|
activeButtonFg: {{colors.on_primary.default.hex}}; // Active button text
|
||||||
|
activeButtonFgOver: {{colors.on_primary_container.default.hex}}; // Active button hover text
|
||||||
|
activeButtonSecondaryFg: {{colors.on_primary.default.hex}}; // Active button secondary text
|
||||||
|
activeButtonSecondaryFgOver: {{colors.on_primary_container.default.hex}}; // Active button secondary hover text
|
||||||
|
activeLineFg: {{colors.on_surface.default.hex}};
|
||||||
|
dialogsBgActive: {{colors.primary.default.hex}};
|
||||||
|
|
||||||
|
lightButtonBg: {{colors.surface.default.hex}}; // Light button background
|
||||||
|
lightButtonBgOver: {{colors.surface_variant.default.hex}}; // Light button hover background
|
||||||
|
lightButtonBgRipple: {{colors.primary.default.hex}}; // Light button ripple
|
||||||
|
lightButtonFg: {{colors.on_surface.default.hex}}; // Light button text
|
||||||
|
lightButtonFgOver: {{colors.on_surface_variant.default.hex}}; // Light button hover text
|
||||||
|
|
||||||
|
attentionButtonFg: {{colors.error.default.hex}};
|
||||||
|
attentionButtonFgOver: {{colors.error.default.hex}};
|
||||||
|
attentionButtonBgOver: {{colors.error_container.default.hex}};
|
||||||
|
attentionButtonBgRipple: {{colors.on_error_container.default.hex}};
|
||||||
|
|
||||||
|
outlineButtonBg: {{colors.surface.default.hex}}; // Outline button background
|
||||||
|
outlineButtonBgOver: {{colors.surface_variant.default.hex}}; // Outline button hover background
|
||||||
|
outlineButtonOutlineFg: {{colors.primary.default.hex}}; // Outline button color
|
||||||
|
outlineButtonBgRipple: {{colors.primary.default.hex}}; // Outline button ripple
|
||||||
|
|
||||||
|
menuBg: {{colors.surface.default.hex}};
|
||||||
|
menuBgOver: {{colors.surface_variant.default.hex}};
|
||||||
|
menuBgRipple: {{colors.primary.default.hex}};
|
||||||
|
menuIconFg: {{colors.on_surface.default.hex}};
|
||||||
|
menuIconFgOver: {{colors.on_surface_variant.default.hex}};
|
||||||
|
menuSubmenuArrowFg: {{colors.outline.default.hex}};
|
||||||
|
menuFgDisabled: {{colors.outline.default.hex}};
|
||||||
|
menuSeparatorFg: {{colors.outline.default.hex}};
|
||||||
|
|
||||||
|
scrollBarBg: {{colors.primary.default.hex}}40; // Scroll bar background (40% opacity)
|
||||||
|
scrollBarBgOver: {{colors.primary.default.hex}}60; // Scroll bar hover background (60% opacity)
|
||||||
|
scrollBg: {{colors.surface_variant.default.hex}}40; // Scroll bar track (40% opacity)
|
||||||
|
scrollBgOver: {{colors.surface_variant.default.hex}}60; // Scroll bar track on hover (60% opacity)
|
||||||
|
|
||||||
|
smallCloseIconFg: {{colors.outline.default.hex}};
|
||||||
|
smallCloseIconFgOver: {{colors.on_surface_variant.default.hex}};
|
||||||
|
|
||||||
|
radialFg: {{colors.primary.default.hex}};
|
||||||
|
radialBg: {{colors.surface.default.hex}};
|
||||||
|
|
||||||
|
placeholderFg: {{colors.outline.default.hex}}; // Placeholder text
|
||||||
|
placeholderFgActive: {{colors.primary.default.hex}}; // Active placeholder text
|
||||||
|
inputBorderFg: {{colors.outline.default.hex}}; // Input border
|
||||||
|
filterInputBorderFg: {{colors.outline.default.hex}}; // Search input border
|
||||||
|
filterInputInactiveBg: {{colors.surface.default.hex}}; // Inactive search input background
|
||||||
|
checkboxFg: {{colors.primary.default.hex}}; // Checkbox color
|
||||||
|
|
||||||
|
titleBg: {{colors.surface.default.hex}}; // Window title background
|
||||||
|
titleShadow: {{colors.shadow.default.hex}};
|
||||||
|
titleButtonFg: {{colors.on_surface.default.hex}}; // Title button color
|
||||||
|
titleButtonBgOver: {{colors.surface_variant.default.hex}}; // Title button hover background
|
||||||
|
titleButtonFgOver: {{colors.on_surface_variant.default.hex}}; // Title button hover color
|
||||||
|
titleButtonCloseBgOver: {{colors.error.default.hex}};
|
||||||
|
titleButtonCloseFgOver: {{colors.on_error.default.hex}};
|
||||||
|
titleFgActive: {{colors.on_surface.default.hex}}; // Active title text
|
||||||
|
titleFg: {{colors.on_surface.default.hex}}; // Inactive title text
|
||||||
|
|
||||||
|
trayCounterBg: {{colors.error.default.hex}}; // Tray counter background
|
||||||
|
trayCounterBgMute: {{colors.outline.default.hex}}; // Muted tray counter background
|
||||||
|
trayCounterFg: {{colors.on_error.default.hex}}; // Tray counter text
|
||||||
|
trayCounterBgMacInvert: {{colors.error.default.hex}}; // Mac tray counter
|
||||||
|
trayCounterFgMacInvert: {{colors.on_error.default.hex}}; // Mac tray counter text
|
||||||
|
|
||||||
|
layerBg: {{colors.surface.default.hex}}99; // Layer background (60% opacity)
|
||||||
|
|
||||||
|
cancelIconFg: {{colors.error.default.hex}}; // Cancel icon
|
||||||
|
cancelIconFgOver: {{colors.error.default.hex}}; // Cancel icon on hover
|
||||||
|
|
||||||
|
boxBg: {{colors.surface.default.hex}}; // Box background
|
||||||
|
boxTextFg: {{colors.on_surface.default.hex}}; // Box text
|
||||||
|
boxTextFgGood: {{colors.primary.default.hex}}; // Box good text
|
||||||
|
boxTextFgError: {{colors.error.default.hex}}; // Box error text
|
||||||
|
boxTitleFg: {{colors.on_surface.default.hex}}; // Box title text
|
||||||
|
boxSearchBg: {{colors.surface.default.hex}}; // Box search field background
|
||||||
|
boxSearchCancelIconFg: {{colors.error.default.hex}}; // Box search cancel icon
|
||||||
|
boxSearchCancelIconFgOver: {{colors.error.default.hex}}; // Box search cancel icon on hover
|
||||||
|
|
||||||
|
contactsBg: {{colors.surface.default.hex}}; // Contacts background
|
||||||
|
contactsBgOver: {{colors.surface_variant.default.hex}}; // Contacts background on hover
|
||||||
|
contactsNameFg: {{colors.on_surface.default.hex}}; // Contact name
|
||||||
|
contactsStatusFg: {{colors.outline.default.hex}}; // Contact status
|
||||||
|
contactsStatusFgOver: {{colors.on_surface_variant.default.hex}}; // Contact status on hover
|
||||||
|
contactsStatusFgOnline: {{colors.primary.default.hex}}; // Online contact status
|
||||||
|
|
||||||
|
photoCropFadeBg: {{colors.surface.default.hex}}cc; // Photo crop fade background
|
||||||
|
photoCropPointFg: {{colors.primary.default.hex}}; // Photo crop points
|
||||||
|
|
||||||
|
chat_inBubbleSelected: #313244; // inbox selected chat background
|
||||||
|
chat_outBubbleSelected: #313244; // outbox selected chat background
|
||||||
@@ -1,7 +1,6 @@
|
|||||||
[Unit]
|
[Unit]
|
||||||
Description=Noctalia Shell Service
|
Description=Noctalia Shell Service
|
||||||
Requisite=graphical-session.target
|
BindsTo=graphical-session.target
|
||||||
PartOf=graphical-session.target
|
|
||||||
After=graphical-session.target
|
After=graphical-session.target
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
|
|||||||
@@ -123,10 +123,6 @@
|
|||||||
"stream-description": "Geben Sie einen Befehl ein, der kontinuierlich ausgeführt werden soll."
|
"stream-description": "Geben Sie einen Befehl ein, der kontinuierlich ausgeführt werden soll."
|
||||||
},
|
},
|
||||||
"dynamic-text": "Dynamischer Text",
|
"dynamic-text": "Dynamischer Text",
|
||||||
"hide-vertical": {
|
|
||||||
"description": "Wenn aktiviert, wird der Text aus der Befehlsausgabe nicht angezeigt, wenn sich die Leiste in einem vertikalen Layout befindet (links oder rechts).",
|
|
||||||
"label": "Text in vertikaler Leiste ausblenden"
|
|
||||||
},
|
|
||||||
"icon": {
|
"icon": {
|
||||||
"description": "Symbol aus der Bibliothek auswählen.",
|
"description": "Symbol aus der Bibliothek auswählen.",
|
||||||
"label": "Symbol"
|
"label": "Symbol"
|
||||||
@@ -136,6 +132,14 @@
|
|||||||
"label": "Linksklick",
|
"label": "Linksklick",
|
||||||
"update-text": "Text auf Linksklick aktualisieren"
|
"update-text": "Text auf Linksklick aktualisieren"
|
||||||
},
|
},
|
||||||
|
"max-text-length-horizontal": {
|
||||||
|
"description": "Maximale Anzahl an Zeichen, die in horizontaler Leiste angezeigt werden (0 zum Ausblenden des Textes)",
|
||||||
|
"label": "Max. Textlänge (horizontal)"
|
||||||
|
},
|
||||||
|
"max-text-length-vertical": {
|
||||||
|
"description": "Maximale Anzahl an Zeichen, die in vertikaler Leiste angezeigt werden (0 zum Ausblenden des Textes)",
|
||||||
|
"label": "Max. Textlänge (vertikal)"
|
||||||
|
},
|
||||||
"middle-click": {
|
"middle-click": {
|
||||||
"description": "Befehl, der ausgeführt wird, wenn die Schaltfläche mit der mittleren Maustaste angeklickt wird.",
|
"description": "Befehl, der ausgeführt wird, wenn die Schaltfläche mit der mittleren Maustaste angeklickt wird.",
|
||||||
"label": "Mittelklick",
|
"label": "Mittelklick",
|
||||||
@@ -157,6 +161,23 @@
|
|||||||
"text-stream": {
|
"text-stream": {
|
||||||
"description": "Gestreamte Zeilen aus dem Befehl werden als Text auf der Schaltfläche angezeigt.",
|
"description": "Gestreamte Zeilen aus dem Befehl werden als Text auf der Schaltfläche angezeigt.",
|
||||||
"label": "Stream"
|
"label": "Stream"
|
||||||
|
},
|
||||||
|
"wheel": {
|
||||||
|
"description": "Befehl, der bei Verwendung des Scrollrads ausgeführt wird.\nVerwenden Sie $delta für die Scrollrad-Delta im Befehl",
|
||||||
|
"label": "Scrollrad",
|
||||||
|
"update-text": "Anzeigetext beim Scrollen aktualisieren"
|
||||||
|
},
|
||||||
|
"wheel-down": {
|
||||||
|
"description": "Befehl, der ausgeführt wird, wenn das Scrollrad heruntergescrollt wird.",
|
||||||
|
"label": "Scrollrad runter Befehl"
|
||||||
|
},
|
||||||
|
"wheel-mode-separate": {
|
||||||
|
"description": "Separate Befehle für Scrollrad hoch und runter aktivieren",
|
||||||
|
"label": "Separate Scrollrad-Befehle"
|
||||||
|
},
|
||||||
|
"wheel-up": {
|
||||||
|
"description": "Befehl, der ausgeführt wird, wenn das Scrollrad hochgescrollt wird.",
|
||||||
|
"label": "Scrollrad hoch Befehl"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dialog": {
|
"dialog": {
|
||||||
@@ -202,6 +223,10 @@
|
|||||||
"description": "Albumcover des aktuell abgespielten Tracks anzeigen.",
|
"description": "Albumcover des aktuell abgespielten Tracks anzeigen.",
|
||||||
"label": "Albumcover anzeigen"
|
"label": "Albumcover anzeigen"
|
||||||
},
|
},
|
||||||
|
"show-artist-first": {
|
||||||
|
"description": "Künstler - Titel anstatt Titel - Künstler anzeigen.",
|
||||||
|
"label": "Künstler zuerst anzeigen"
|
||||||
|
},
|
||||||
"show-visualizer": {
|
"show-visualizer": {
|
||||||
"description": "Audio-Visualizer anzeigen, wenn Musik abgespielt wird.",
|
"description": "Audio-Visualizer anzeigen, wenn Musik abgespielt wird.",
|
||||||
"label": "Visualizer anzeigen"
|
"label": "Visualizer anzeigen"
|
||||||
@@ -259,6 +284,10 @@
|
|||||||
"disk-critical-threshold": {
|
"disk-critical-threshold": {
|
||||||
"label": "Storage Space (Critical)"
|
"label": "Storage Space (Critical)"
|
||||||
},
|
},
|
||||||
|
"disk-path": {
|
||||||
|
"description": "Wählen Sie den Festplatten-Mountpunkt aus, der überwacht werden soll.",
|
||||||
|
"label": "Festplattenpfad"
|
||||||
|
},
|
||||||
"disk-warning-threshold": {
|
"disk-warning-threshold": {
|
||||||
"label": "Storage Space (Warning)"
|
"label": "Storage Space (Warning)"
|
||||||
},
|
},
|
||||||
@@ -314,13 +343,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"taskbar-grouped": {
|
"taskbar-grouped": {
|
||||||
"show-numbers-only-when-occupied": {
|
"show-labels-only-when-occupied": {
|
||||||
"description": "Arbeitsbereichsnummern nur für Arbeitsbereiche mit geöffneten Fenstern anzeigen.",
|
"description": "Zeige nur die Workspace-Bezeichnung für Workspaces an, die offene Fenster haben.",
|
||||||
"label": "Nur bei belegten Arbeitsbereichen anzeigen"
|
"label": "Zeige Label nur bei Belegung"
|
||||||
},
|
|
||||||
"show-workspace-numbers": {
|
|
||||||
"description": "Arbeitsbereichsnummern in der oberen linken Ecke der Task-Gruppen anzeigen.",
|
|
||||||
"label": "Arbeitsbereichsnummern anzeigen"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
@@ -363,13 +388,6 @@
|
|||||||
"health": "Zustand: {percent}%",
|
"health": "Zustand: {percent}%",
|
||||||
"idle": "Leerlauf.",
|
"idle": "Leerlauf.",
|
||||||
"no-battery-detected": "Keine Batterie erkannt.",
|
"no-battery-detected": "Keine Batterie erkannt.",
|
||||||
"panel": {
|
|
||||||
"balanced": "Ausgeglichen ({percent}%)",
|
|
||||||
"disabled": "Batteriemanager deaktiviert",
|
|
||||||
"full": "Volle Kapazität ({percent}%)",
|
|
||||||
"lifespan": "Verlängerte Lebensdauer ({percent}%)",
|
|
||||||
"title": "Ladeschwelle"
|
|
||||||
},
|
|
||||||
"plugged-in": "Angeschlossen.",
|
"plugged-in": "Angeschlossen.",
|
||||||
"time-left": "Verbleibende Zeit: {time}.",
|
"time-left": "Verbleibende Zeit: {time}.",
|
||||||
"time-until-full": "Zeit bis vollständig geladen: {time}."
|
"time-until-full": "Zeit bis vollständig geladen: {time}."
|
||||||
@@ -398,9 +416,61 @@
|
|||||||
"loading": "Wetter wird geladen…"
|
"loading": "Wetter wird geladen…"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"error": {
|
||||||
|
"fetch-failed": "Changelog-Daten konnten nicht geladen werden. Bitte versuche es später erneut.",
|
||||||
|
"rate-limit": "GitHub-Limit erreicht. Bitte versuche es in ein paar Minuten erneut."
|
||||||
|
},
|
||||||
|
"panel": {
|
||||||
|
"buttons": {
|
||||||
|
"discord": "Unserem Discord beitreten",
|
||||||
|
"dismiss": "Ok"
|
||||||
|
},
|
||||||
|
"empty": "Es sind noch keine Versionshinweise verfügbar.",
|
||||||
|
"highlight-title": "Highlights",
|
||||||
|
"section": {
|
||||||
|
"released": "Veröffentlicht am {date}",
|
||||||
|
"version": "Version {version}"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"fresh": "Danke, dass du Noctalia installiert hast! Das ist in diesem Build enthalten.",
|
||||||
|
"updated": "Aktualisiert von {previousVersion}"
|
||||||
|
},
|
||||||
|
"title": "Was ist neu in {version}",
|
||||||
|
"version": {
|
||||||
|
"new-user": "Neuinstallation"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"tooltip": "Kalender öffnen"
|
"tooltip": "Kalender öffnen"
|
||||||
},
|
},
|
||||||
|
"context-menu": {
|
||||||
|
"activate-app": "{app} aktivieren",
|
||||||
|
"clear-history": "Verlauf löschen",
|
||||||
|
"close-app": "{app} schließen",
|
||||||
|
"connect-vpn": "Mit {name} verbinden",
|
||||||
|
"cycle-visualizer": "Zyklus-Visualisierer",
|
||||||
|
"disable-bluetooth": "Bluetooth deaktivieren",
|
||||||
|
"disable-dnd": "Bitte nicht stören deaktivieren",
|
||||||
|
"disable-wifi": "WLAN deaktivieren",
|
||||||
|
"disconnect-vpn": "Verbindung zu {name} trennen",
|
||||||
|
"enable-bluetooth": "Bluetooth aktivieren",
|
||||||
|
"enable-dnd": "Nicht stören aktivieren",
|
||||||
|
"enable-wifi": "WLAN aktivieren",
|
||||||
|
"next": "Nächste/r/s",
|
||||||
|
"open-calendar": "Kalender öffnen",
|
||||||
|
"open-display-settings": "Anzeigeeinstellungen",
|
||||||
|
"open-launcher": "Launcher öffnen",
|
||||||
|
"open-mixer": "Audiomischer",
|
||||||
|
"open-settings": "Einstellungen öffnen",
|
||||||
|
"pause": "Pause",
|
||||||
|
"play": "Spielen",
|
||||||
|
"previous": "Vorherige",
|
||||||
|
"random-wallpaper": "Zufälliges Hintergrundbild",
|
||||||
|
"toggle-mute": "Stummschaltung umschalten",
|
||||||
|
"widget-settings": "Widget-Einstellungen"
|
||||||
|
},
|
||||||
"dock": {
|
"dock": {
|
||||||
"menu": {
|
"menu": {
|
||||||
"close": "Schließen",
|
"close": "Schließen",
|
||||||
@@ -564,6 +634,7 @@
|
|||||||
},
|
},
|
||||||
"workspace-labels": {
|
"workspace-labels": {
|
||||||
"index": "Index",
|
"index": "Index",
|
||||||
|
"index+name": "Index und Name",
|
||||||
"name": "Name",
|
"name": "Name",
|
||||||
"none": "Keine"
|
"none": "Keine"
|
||||||
}
|
}
|
||||||
@@ -579,8 +650,8 @@
|
|||||||
"search": "Suchen...",
|
"search": "Suchen...",
|
||||||
"search-icons": "z.B. noctalia, niri, battery, cloud",
|
"search-icons": "z.B. noctalia, niri, battery, cloud",
|
||||||
"search-launcher": "Einträge suchen... oder > für Befehle verwenden",
|
"search-launcher": "Einträge suchen... oder > für Befehle verwenden",
|
||||||
"search-wallpapers": "Zum Filtern von Hintergrundbildern eingeben...",
|
|
||||||
"search-wallhaven": "Wallhaven durchsuchen...",
|
"search-wallhaven": "Wallhaven durchsuchen...",
|
||||||
|
"search-wallpapers": "Zum Filtern von Hintergrundbildern eingeben...",
|
||||||
"select": "Auswählen",
|
"select": "Auswählen",
|
||||||
"test": "Test"
|
"test": "Test"
|
||||||
},
|
},
|
||||||
@@ -721,6 +792,11 @@
|
|||||||
"label": "Audio-Geräte"
|
"label": "Audio-Geräte"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"external-mixer": {
|
||||||
|
"description": "Geben Sie den Befehl oder den Anwendungspfad ein, der beim Aktivieren der externen Audiomixer-Funktion gestartet werden soll.",
|
||||||
|
"label": "Externer Audio-Mixer-Befehl",
|
||||||
|
"placeholder": "pwvucontrol || pavucontrol"
|
||||||
|
},
|
||||||
"media": {
|
"media": {
|
||||||
"excluded-player": {
|
"excluded-player": {
|
||||||
"description": "Stichwörter für Player hinzufügen, die das System ignorieren soll. Jedes Stichwort sollte in einer neuen Zeile stehen.",
|
"description": "Stichwörter für Player hinzufügen, die das System ignorieren soll. Jedes Stichwort sollte in einer neuen Zeile stehen.",
|
||||||
@@ -795,6 +871,10 @@
|
|||||||
"description": "Hintergrund-Transparenz der Statusleiste anpassen.",
|
"description": "Hintergrund-Transparenz der Statusleiste anpassen.",
|
||||||
"label": "Hintergrund-Transparenz"
|
"label": "Hintergrund-Transparenz"
|
||||||
},
|
},
|
||||||
|
"capsule-opacity": {
|
||||||
|
"description": "Deckkraft der Widget-Hintergründe festlegen, wenn Kapsel angezeigt wird.",
|
||||||
|
"label": "Kapsel-Deckkraft"
|
||||||
|
},
|
||||||
"density": {
|
"density": {
|
||||||
"description": "Innenabstand der Statusleiste für kompaktes oder geräumiges Aussehen anpassen.",
|
"description": "Innenabstand der Statusleiste für kompaktes oder geräumiges Aussehen anpassen.",
|
||||||
"label": "Statusleistendichte"
|
"label": "Statusleistendichte"
|
||||||
@@ -887,6 +967,41 @@
|
|||||||
"label": "Dunkler Modus"
|
"label": "Dunkler Modus"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"delete": {
|
||||||
|
"error": {
|
||||||
|
"description": "Fehler beim Löschen von {scheme}",
|
||||||
|
"title": "Löschen fehlgeschlagen"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} wurde erfolgreich gelöscht",
|
||||||
|
"title": "Farbschema gelöscht"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"download": {
|
||||||
|
"button": "Mehr herunterladen",
|
||||||
|
"delete": "Löschen",
|
||||||
|
"download": "Herunterladen",
|
||||||
|
"downloading": "Wird heruntergeladen...",
|
||||||
|
"empty": "Keine Farbschemata verfügbar",
|
||||||
|
"error": {
|
||||||
|
"api-error": "API-Fehler: {status}",
|
||||||
|
"description": "Fehler beim Herunterladen von {scheme}",
|
||||||
|
"download-failed": "Download fehlgeschlagen mit Exit-Code: {code}",
|
||||||
|
"invalid-response": "Ungültiges API-Antwortformat",
|
||||||
|
"no-files": "Keine Dateien für Schema gefunden",
|
||||||
|
"parse-failed": "Fehler beim Parsen der API-Antwort: {error}",
|
||||||
|
"rate-limit": "GitHub API-Ratenlimit überschritten",
|
||||||
|
"title": "Download fehlgeschlagen"
|
||||||
|
},
|
||||||
|
"fetching": "Verfügbare Farbschemata werden abgerufen...",
|
||||||
|
"installed": "Installiert",
|
||||||
|
"refresh": "Aktualisieren",
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} wurde erfolgreich heruntergeladen",
|
||||||
|
"title": "Farbschema heruntergeladen"
|
||||||
|
},
|
||||||
|
"title": "Farbschemata herunterladen"
|
||||||
|
},
|
||||||
"predefined": {
|
"predefined": {
|
||||||
"generate-templates": {
|
"generate-templates": {
|
||||||
"description": "Generiert Matugen-Templates (GTK, Terminal-Themes, etc.) bei der Verwendung vordefinierter Farbschemata.",
|
"description": "Generiert Matugen-Templates (GTK, Terminal-Themes, etc.) bei der Verwendung vordefinierter Farbschemata.",
|
||||||
@@ -926,7 +1041,11 @@
|
|||||||
"description-missing": "Erfordert die Installation von {app}"
|
"description-missing": "Erfordert die Installation von {app}"
|
||||||
},
|
},
|
||||||
"spicetify": {
|
"spicetify": {
|
||||||
"description": "Schreibe {Dateipfad}. Das Comfy-Theme muss manuell installiert und aktiviert werden",
|
"description": "Schreibe {filepath}. Das Comfy-Theme muss manuell installiert und aktiviert werden",
|
||||||
|
"description-missing": "Benötigt die Installation von {app}"
|
||||||
|
},
|
||||||
|
"telegram": {
|
||||||
|
"description": "Schreibe {filepath}.",
|
||||||
"description-missing": "Benötigt die Installation von {app}"
|
"description-missing": "Benötigt die Installation von {app}"
|
||||||
},
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
@@ -1125,6 +1244,10 @@
|
|||||||
"description": "Hintergrund-Transparenz des Docks anpassen.",
|
"description": "Hintergrund-Transparenz des Docks anpassen.",
|
||||||
"label": "Hintergrund-Transparenz"
|
"label": "Hintergrund-Transparenz"
|
||||||
},
|
},
|
||||||
|
"border-radius": {
|
||||||
|
"description": "Den Radius der Dock-Umrandung anpassen.",
|
||||||
|
"label": "Eckenradius"
|
||||||
|
},
|
||||||
"colorize-icons": {
|
"colorize-icons": {
|
||||||
"description": "Theme-Farben auf Dock-App-Symbole anwenden (nur nicht fokussierte Apps).",
|
"description": "Theme-Farben auf Dock-App-Symbole anwenden (nur nicht fokussierte Apps).",
|
||||||
"label": "Symbole einfärben"
|
"label": "Symbole einfärben"
|
||||||
@@ -1276,6 +1399,10 @@
|
|||||||
"description": "Hintergrund-Transparenz des Starters anpassen.",
|
"description": "Hintergrund-Transparenz des Starters anpassen.",
|
||||||
"label": "Hintergrund-Transparenz"
|
"label": "Hintergrund-Transparenz"
|
||||||
},
|
},
|
||||||
|
"clip-preview": {
|
||||||
|
"description": "Zeigt eine Vorschau des Inhalts der Zwischenablage an, wenn der Befehl >clip verwendet wird.",
|
||||||
|
"label": "Clip-Vorschau aktivieren"
|
||||||
|
},
|
||||||
"clipboard-history": {
|
"clipboard-history": {
|
||||||
"description": "Zugriff auf zuvor kopierte Elemente über den Launcher.",
|
"description": "Zugriff auf zuvor kopierte Elemente über den Launcher.",
|
||||||
"label": "Zwischenablageverlauf aktivieren"
|
"label": "Zwischenablageverlauf aktivieren"
|
||||||
@@ -1364,6 +1491,10 @@
|
|||||||
"description": "Bevorzugte Temperatureinheit wählen.",
|
"description": "Bevorzugte Temperatureinheit wählen.",
|
||||||
"label": "Wetter"
|
"label": "Wetter"
|
||||||
},
|
},
|
||||||
|
"show-effects": {
|
||||||
|
"description": "Zeigt zusätzliche visuelle Effekte (wie Regen, Schnee oder Blitze) auf der Wetterkarte an.",
|
||||||
|
"label": "Wettereffekte anzeigen"
|
||||||
|
},
|
||||||
"show-in-calendar": {
|
"show-in-calendar": {
|
||||||
"description": "Zeige die tägliche Wettervorhersage direkt in deiner Kalenderansicht an.",
|
"description": "Zeige die tägliche Wettervorhersage direkt in deiner Kalenderansicht an.",
|
||||||
"label": "Wetter im Kalender anzeigen"
|
"label": "Wetter im Kalender anzeigen"
|
||||||
@@ -1379,6 +1510,10 @@
|
|||||||
"description": "Den Bildschirm beim Suspendieren des Systems automatisch sperren.",
|
"description": "Den Bildschirm beim Suspendieren des Systems automatisch sperren.",
|
||||||
"label": "Sperren beim Ruhezustand"
|
"label": "Sperren beim Ruhezustand"
|
||||||
},
|
},
|
||||||
|
"show-hibernate": {
|
||||||
|
"description": "Die Option 'Ruhezustand' in den Energieaktionen anzeigen.",
|
||||||
|
"label": "Ruhezustand anzeigen"
|
||||||
|
},
|
||||||
"title": "Sperrbildschirm"
|
"title": "Sperrbildschirm"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -1663,6 +1798,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"user-interface": {
|
"user-interface": {
|
||||||
|
"allow-panels-without-bar": {
|
||||||
|
"description": "Wenn aktiviert, können sich Panels auf jedem Bildschirm öffnen. Wenn deaktiviert, öffnen sich Panels nur auf Bildschirmen mit einer Leiste, was den Speicherverbrauch reduzieren kann.",
|
||||||
|
"label": "Paneele auf Bildschirmen ohne Leiste zulassen"
|
||||||
|
},
|
||||||
"animation-disable": {
|
"animation-disable": {
|
||||||
"description": "Deaktivieren Sie alle Animationen für eine schnellere und reaktionsfreudigere Erfahrung.",
|
"description": "Deaktivieren Sie alle Animationen für eine schnellere und reaktionsfreudigere Erfahrung.",
|
||||||
"label": "UI-Animationen deaktivieren"
|
"label": "UI-Animationen deaktivieren"
|
||||||
@@ -1870,19 +2009,6 @@
|
|||||||
"low": "Niedriger Batteriestand",
|
"low": "Niedriger Batteriestand",
|
||||||
"low-desc": "Batterie ist bei {percent}%. Bitte schließen Sie das Ladegerät an."
|
"low-desc": "Batterie ist bei {percent}%. Bitte schließen Sie das Ladegerät an."
|
||||||
},
|
},
|
||||||
"battery-manager": {
|
|
||||||
"initial-setup": "Ersteinrichtung erforderlich",
|
|
||||||
"install-failed": "Installation fehlgeschlagen",
|
|
||||||
"install-missing": "Erforderliche Dateien fehlen",
|
|
||||||
"install-success": "Erfolgreich installiert",
|
|
||||||
"install-unsupported": "System wird nicht unterstützt",
|
|
||||||
"set-failed": "Fehler beim Setzen der Batterieschwelle",
|
|
||||||
"set-success-desc": "Batterieschwelle auf {percent}% gesetzt",
|
|
||||||
"title": "Batterieschwelle",
|
|
||||||
"uninstall-failed": "Deinstallation fehlgeschlagen",
|
|
||||||
"uninstall-setup": "Deinstallation, Authentifizierung erforderlich",
|
|
||||||
"uninstall-success": "Erfolgreich deinstalliert"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"disabled": "Deaktiviert",
|
"disabled": "Deaktiviert",
|
||||||
"enabled": "Aktiviert"
|
"enabled": "Aktiviert"
|
||||||
@@ -1951,6 +2077,10 @@
|
|||||||
"title-matugen": "Matugen-Templating-Verarbeitung fehlgeschlagen",
|
"title-matugen": "Matugen-Templating-Verarbeitung fehlgeschlagen",
|
||||||
"title-predefined": "Die Verarbeitung des vordefinierten Farbschemas ist fehlgeschlagen."
|
"title-predefined": "Die Verarbeitung des vordefinierten Farbschemas ist fehlgeschlagen."
|
||||||
},
|
},
|
||||||
|
"vpn": {
|
||||||
|
"connected": "Verbunden mit '{name}'",
|
||||||
|
"disconnected": "Verbindung zu '{name}' getrennt"
|
||||||
|
},
|
||||||
"wallpaper-colors": {
|
"wallpaper-colors": {
|
||||||
"disabled": "Hintergrundbild-Farben deaktiviert",
|
"disabled": "Hintergrundbild-Farben deaktiviert",
|
||||||
"enabled": "Hintergrundbild-Farben aktiviert",
|
"enabled": "Hintergrundbild-Farben aktiviert",
|
||||||
@@ -1984,6 +2114,7 @@
|
|||||||
"input-muted": "Audio-Eingabe stummschalten",
|
"input-muted": "Audio-Eingabe stummschalten",
|
||||||
"keep-awake": "Wach halten",
|
"keep-awake": "Wach halten",
|
||||||
"keyboard-layout": "{layout} Tastaturlayout",
|
"keyboard-layout": "{layout} Tastaturlayout",
|
||||||
|
"manage-vpn": "VPN-Verbindungen verwalten",
|
||||||
"manage-wifi": "WLAN verwalten",
|
"manage-wifi": "WLAN verwalten",
|
||||||
"microphone-volume-at": "Mikrofonlautstärke bei {volume}%.\nLinksklick für Einstellungen. Rechtsklick zum Stummschalten.\nScrollen zum Ändern der Lautstärke.",
|
"microphone-volume-at": "Mikrofonlautstärke bei {volume}%.\nLinksklick für Einstellungen. Rechtsklick zum Stummschalten.\nScrollen zum Ändern der Lautstärke.",
|
||||||
"move-to-center-section": "Zur mittleren Sektion verschieben",
|
"move-to-center-section": "Zur mittleren Sektion verschieben",
|
||||||
@@ -2047,6 +2178,11 @@
|
|||||||
"label": "Kategorien",
|
"label": "Kategorien",
|
||||||
"people": "Personen"
|
"people": "Personen"
|
||||||
},
|
},
|
||||||
|
"order": {
|
||||||
|
"asc": "Aufsteigend",
|
||||||
|
"desc": "Absteigend",
|
||||||
|
"label": "Reihenfolge"
|
||||||
|
},
|
||||||
"purity": {
|
"purity": {
|
||||||
"all": "Alle",
|
"all": "Alle",
|
||||||
"label": "Inhaltsfilter",
|
"label": "Inhaltsfilter",
|
||||||
@@ -2071,21 +2207,16 @@
|
|||||||
"toplist": "Topliste",
|
"toplist": "Topliste",
|
||||||
"views": "Aufrufe"
|
"views": "Aufrufe"
|
||||||
},
|
},
|
||||||
"order": {
|
|
||||||
"asc": "Aufsteigend",
|
|
||||||
"desc": "Absteigend",
|
|
||||||
"label": "Reihenfolge"
|
|
||||||
},
|
|
||||||
"wallhaven-settings": {
|
|
||||||
"apply": "Anwenden",
|
|
||||||
"title": "Wallhaven-Einstellungen"
|
|
||||||
},
|
|
||||||
"source": {
|
"source": {
|
||||||
"label": "Quelle",
|
"label": "Quelle",
|
||||||
"local": "Lokal",
|
"local": "Lokal",
|
||||||
"wallhaven": "Wallhaven"
|
"wallhaven": "Wallhaven"
|
||||||
},
|
},
|
||||||
"title": "Hintergrundbild-Auswahl"
|
"title": "Hintergrundbild-Auswahl",
|
||||||
|
"wallhaven-settings": {
|
||||||
|
"apply": "Anwenden",
|
||||||
|
"title": "Wallhaven-Einstellungen"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"transitions": {
|
"transitions": {
|
||||||
"disc": "Scheibe",
|
"disc": "Scheibe",
|
||||||
@@ -2096,10 +2227,11 @@
|
|||||||
"wipe": "Wischen"
|
"wipe": "Wischen"
|
||||||
},
|
},
|
||||||
"try-different-search": "Versuchen Sie eine andere Suchanfrage.",
|
"try-different-search": "Versuchen Sie eine andere Suchanfrage.",
|
||||||
|
"unknown": "Unbekannt",
|
||||||
"wallhaven": {
|
"wallhaven": {
|
||||||
"loading": "Hintergrundbilder werden geladen...",
|
"loading": "Hintergrundbilder werden geladen...",
|
||||||
"no-results": "Keine Hintergrundbilder gefunden. Versuchen Sie eine andere Suchanfrage.",
|
"no-results": "Keine Hintergrundbilder gefunden. Versuchen Sie eine andere Suchanfrage.",
|
||||||
"page": "Seite {current} von {total}"
|
"page": "{current} von {total}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weather": {
|
"weather": {
|
||||||
@@ -2209,6 +2341,7 @@
|
|||||||
},
|
},
|
||||||
"wifi": {
|
"wifi": {
|
||||||
"panel": {
|
"panel": {
|
||||||
|
"available-networks": "Verfügbare Netzwerke",
|
||||||
"connect": "Verbinden",
|
"connect": "Verbinden",
|
||||||
"connected": "Verbunden",
|
"connected": "Verbunden",
|
||||||
"disabled": "WLAN ist deaktiviert",
|
"disabled": "WLAN ist deaktiviert",
|
||||||
@@ -2219,6 +2352,7 @@
|
|||||||
"forget": "Vergessen",
|
"forget": "Vergessen",
|
||||||
"forget-network": "Dieses Netzwerk vergessen?",
|
"forget-network": "Dieses Netzwerk vergessen?",
|
||||||
"forgetting": "Wird vergessen...",
|
"forgetting": "Wird vergessen...",
|
||||||
|
"known-networks": "Bekannte Netzwerke",
|
||||||
"no-networks": "Keine Netzwerke gefunden",
|
"no-networks": "Keine Netzwerke gefunden",
|
||||||
"password": "Passwort",
|
"password": "Passwort",
|
||||||
"saved": "Gespeichert",
|
"saved": "Gespeichert",
|
||||||
|
|||||||
@@ -123,10 +123,6 @@
|
|||||||
"stream-description": "Enter a command to run continuously."
|
"stream-description": "Enter a command to run continuously."
|
||||||
},
|
},
|
||||||
"dynamic-text": "Dynamic text",
|
"dynamic-text": "Dynamic text",
|
||||||
"hide-vertical": {
|
|
||||||
"description": "If enabled, the text from the command output will not be shown when the bar is in a vertical layout (left or right).",
|
|
||||||
"label": "Hide text in vertical bar"
|
|
||||||
},
|
|
||||||
"icon": {
|
"icon": {
|
||||||
"description": "Select an icon from the library.",
|
"description": "Select an icon from the library.",
|
||||||
"label": "Icon"
|
"label": "Icon"
|
||||||
@@ -136,6 +132,14 @@
|
|||||||
"label": "Left click",
|
"label": "Left click",
|
||||||
"update-text": "Update displayed text on left-click"
|
"update-text": "Update displayed text on left-click"
|
||||||
},
|
},
|
||||||
|
"max-text-length-horizontal": {
|
||||||
|
"description": "Maximum number of characters to show in horizontal bar (0 to hide text)",
|
||||||
|
"label": "Max text length (horizontal)"
|
||||||
|
},
|
||||||
|
"max-text-length-vertical": {
|
||||||
|
"description": "Maximum number of characters to show in vertical bar (0 to hide text)",
|
||||||
|
"label": "Max text length (vertical)"
|
||||||
|
},
|
||||||
"middle-click": {
|
"middle-click": {
|
||||||
"description": "Command to execute when the button is middle-clicked.",
|
"description": "Command to execute when the button is middle-clicked.",
|
||||||
"label": "Middle click",
|
"label": "Middle click",
|
||||||
@@ -157,6 +161,23 @@
|
|||||||
"text-stream": {
|
"text-stream": {
|
||||||
"description": "Streamed lines from the command will be displayed as text on the button.",
|
"description": "Streamed lines from the command will be displayed as text on the button.",
|
||||||
"label": "Stream"
|
"label": "Stream"
|
||||||
|
},
|
||||||
|
"wheel": {
|
||||||
|
"description": "Command to execute when the scroll wheel is used.\nUse $delta for the scroll wheel delta in the command",
|
||||||
|
"label": "Scroll wheel",
|
||||||
|
"update-text": "Update displayed text on scroll"
|
||||||
|
},
|
||||||
|
"wheel-down": {
|
||||||
|
"description": "Command to execute when the scroll wheel is scrolled down.",
|
||||||
|
"label": "Wheel down command"
|
||||||
|
},
|
||||||
|
"wheel-mode-separate": {
|
||||||
|
"description": "Enable separate commands for wheel up and down",
|
||||||
|
"label": "Separate wheel commands"
|
||||||
|
},
|
||||||
|
"wheel-up": {
|
||||||
|
"description": "Command to execute when the scroll wheel is scrolled up.",
|
||||||
|
"label": "Wheel up command"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dialog": {
|
"dialog": {
|
||||||
@@ -202,6 +223,10 @@
|
|||||||
"description": "Display the album artwork for the currently playing track.",
|
"description": "Display the album artwork for the currently playing track.",
|
||||||
"label": "Show album art"
|
"label": "Show album art"
|
||||||
},
|
},
|
||||||
|
"show-artist-first": {
|
||||||
|
"description": "Display artist - title instead of title - artist.",
|
||||||
|
"label": "Show artist first"
|
||||||
|
},
|
||||||
"show-visualizer": {
|
"show-visualizer": {
|
||||||
"description": "Display an audio visualizer when music is playing.",
|
"description": "Display an audio visualizer when music is playing.",
|
||||||
"label": "Show visualizer"
|
"label": "Show visualizer"
|
||||||
@@ -259,6 +284,10 @@
|
|||||||
"disk-critical-threshold": {
|
"disk-critical-threshold": {
|
||||||
"label": "Storage Space (Critical)"
|
"label": "Storage Space (Critical)"
|
||||||
},
|
},
|
||||||
|
"disk-path": {
|
||||||
|
"description": "Select which disk mount point to monitor.",
|
||||||
|
"label": "Disk path"
|
||||||
|
},
|
||||||
"disk-warning-threshold": {
|
"disk-warning-threshold": {
|
||||||
"label": "Storage Space (Warning)"
|
"label": "Storage Space (Warning)"
|
||||||
},
|
},
|
||||||
@@ -314,13 +343,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"taskbar-grouped": {
|
"taskbar-grouped": {
|
||||||
"show-numbers-only-when-occupied": {
|
"show-labels-only-when-occupied": {
|
||||||
"description": "Only show workspace numbers for workspaces that have open windows.",
|
"description": "Only show workspace label for workspaces that have open windows.",
|
||||||
"label": "Show numbers only when occupied"
|
"label": "Show label only when occupied"
|
||||||
},
|
|
||||||
"show-workspace-numbers": {
|
|
||||||
"description": "Display workspace numbers in the top-left corner of task groups.",
|
|
||||||
"label": "Show workspace numbers"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
@@ -356,23 +381,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"battery": {
|
"battery": {
|
||||||
"charging": "Charging.",
|
"charging": "Charging",
|
||||||
"charging-rate": "Charging rate: {rate} W.",
|
"charging-rate": "Charging rate: {rate} W",
|
||||||
"discharging": "Discharging.",
|
"discharging": "Discharging",
|
||||||
"discharging-rate": "Discharging rate: {rate} W.",
|
"discharging-rate": "Discharging rate: {rate} W",
|
||||||
"health": "Health: {percent}%",
|
"health": "Health: {percent}%",
|
||||||
"idle": "Idle.",
|
"idle": "Idle",
|
||||||
"no-battery-detected": "No battery detected.",
|
"no-battery-detected": "No battery detected",
|
||||||
"panel": {
|
"plugged-in": "Plugged in",
|
||||||
"balanced": "Balanced ({percent}%)",
|
"time-left": "Time left: {time}",
|
||||||
"disabled": "Battery manager disabled",
|
"time-until-full": "Time until full: {time}"
|
||||||
"full": "Full capacity ({percent}%)",
|
|
||||||
"lifespan": "Extended lifespan ({percent}%)",
|
|
||||||
"title": "Charge threshold"
|
|
||||||
},
|
|
||||||
"plugged-in": "Plugged in.",
|
|
||||||
"time-left": "Time left: {time}.",
|
|
||||||
"time-until-full": "Time until full: {time}."
|
|
||||||
},
|
},
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"panel": {
|
"panel": {
|
||||||
@@ -398,9 +416,61 @@
|
|||||||
"loading": "Loading weather…"
|
"loading": "Loading weather…"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"error": {
|
||||||
|
"fetch-failed": "Unable to load changelog data. Please try again later.",
|
||||||
|
"rate-limit": "GitHub rate limit exceeded. Please try again in a few minutes."
|
||||||
|
},
|
||||||
|
"panel": {
|
||||||
|
"buttons": {
|
||||||
|
"discord": "Join our Discord",
|
||||||
|
"dismiss": "Ok"
|
||||||
|
},
|
||||||
|
"empty": "Release notes are not available yet.",
|
||||||
|
"highlight-title": "Highlights",
|
||||||
|
"section": {
|
||||||
|
"released": "Released on {date}",
|
||||||
|
"version": "Version {version}"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"fresh": "Thanks for installing Noctalia! Here is what’s included in this build.",
|
||||||
|
"updated": "Updated from {previousVersion}"
|
||||||
|
},
|
||||||
|
"title": "What's new in {version}",
|
||||||
|
"version": {
|
||||||
|
"new-user": "Fresh install"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"tooltip": "Open calendar"
|
"tooltip": "Open calendar"
|
||||||
},
|
},
|
||||||
|
"context-menu": {
|
||||||
|
"activate-app": "Activate {app}",
|
||||||
|
"clear-history": "Clear history",
|
||||||
|
"close-app": "Close {app}",
|
||||||
|
"connect-vpn": "Connect to {name}",
|
||||||
|
"cycle-visualizer": "Cycle visualizer",
|
||||||
|
"disable-bluetooth": "Disable Bluetooth",
|
||||||
|
"disable-dnd": "Disable Do Not Disturb",
|
||||||
|
"disable-wifi": "Disable Wi-Fi",
|
||||||
|
"disconnect-vpn": "Disconnect {name}",
|
||||||
|
"enable-bluetooth": "Enable Bluetooth",
|
||||||
|
"enable-dnd": "Enable Do Not Disturb",
|
||||||
|
"enable-wifi": "Enable Wi-Fi",
|
||||||
|
"next": "Next",
|
||||||
|
"open-calendar": "Open calendar",
|
||||||
|
"open-display-settings": "Display settings",
|
||||||
|
"open-launcher": "Open launcher",
|
||||||
|
"open-mixer": "Audio mixer",
|
||||||
|
"open-settings": "Open settings",
|
||||||
|
"pause": "Pause",
|
||||||
|
"play": "Play",
|
||||||
|
"previous": "Previous",
|
||||||
|
"random-wallpaper": "Random wallpaper",
|
||||||
|
"toggle-mute": "Toggle mute",
|
||||||
|
"widget-settings": "Widget settings"
|
||||||
|
},
|
||||||
"dock": {
|
"dock": {
|
||||||
"menu": {
|
"menu": {
|
||||||
"close": "Close",
|
"close": "Close",
|
||||||
@@ -564,6 +634,7 @@
|
|||||||
},
|
},
|
||||||
"workspace-labels": {
|
"workspace-labels": {
|
||||||
"index": "Index",
|
"index": "Index",
|
||||||
|
"index+name": "Index and Name",
|
||||||
"name": "Name",
|
"name": "Name",
|
||||||
"none": "None"
|
"none": "None"
|
||||||
}
|
}
|
||||||
@@ -579,8 +650,8 @@
|
|||||||
"search": "Search...",
|
"search": "Search...",
|
||||||
"search-icons": "e.g., noctalia, niri, battery, cloud",
|
"search-icons": "e.g., noctalia, niri, battery, cloud",
|
||||||
"search-launcher": "Search entries... or use > for commands",
|
"search-launcher": "Search entries... or use > for commands",
|
||||||
"search-wallpapers": "Type to filter wallpapers...",
|
|
||||||
"search-wallhaven": "Search Wallhaven...",
|
"search-wallhaven": "Search Wallhaven...",
|
||||||
|
"search-wallpapers": "Type to filter wallpapers...",
|
||||||
"select": "Select",
|
"select": "Select",
|
||||||
"test": "Test"
|
"test": "Test"
|
||||||
},
|
},
|
||||||
@@ -721,6 +792,11 @@
|
|||||||
"label": "Audio devices"
|
"label": "Audio devices"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"external-mixer": {
|
||||||
|
"description": "Enter the command or application path to launch when activating the external audio mixer feature.",
|
||||||
|
"label": "External Audio Mixer Command",
|
||||||
|
"placeholder": "pwvucontrol || pavucontrol"
|
||||||
|
},
|
||||||
"media": {
|
"media": {
|
||||||
"excluded-player": {
|
"excluded-player": {
|
||||||
"description": "Add keywords for players you want the system to ignore. Each keyword should be on a new line.",
|
"description": "Add keywords for players you want the system to ignore. Each keyword should be on a new line.",
|
||||||
@@ -795,6 +871,10 @@
|
|||||||
"description": "Adjust the background opacity of the bar.",
|
"description": "Adjust the background opacity of the bar.",
|
||||||
"label": "Background opacity"
|
"label": "Background opacity"
|
||||||
},
|
},
|
||||||
|
"capsule-opacity": {
|
||||||
|
"description": "Set the opacity level for widget backgrounds when capsule is shown.",
|
||||||
|
"label": "Capsule opacity"
|
||||||
|
},
|
||||||
"density": {
|
"density": {
|
||||||
"description": "Adjust the bar's padding for a compact or spacious look.",
|
"description": "Adjust the bar's padding for a compact or spacious look.",
|
||||||
"label": "Bar density"
|
"label": "Bar density"
|
||||||
@@ -887,6 +967,41 @@
|
|||||||
"label": "Dark mode"
|
"label": "Dark mode"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"delete": {
|
||||||
|
"error": {
|
||||||
|
"description": "Failed to delete {scheme}",
|
||||||
|
"title": "Delete Failed"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"description": "Successfully deleted {scheme}",
|
||||||
|
"title": "Color Scheme Deleted"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"download": {
|
||||||
|
"button": "Download more",
|
||||||
|
"delete": "Delete",
|
||||||
|
"download": "Download",
|
||||||
|
"downloading": "Downloading...",
|
||||||
|
"empty": "No color schemes available",
|
||||||
|
"error": {
|
||||||
|
"api-error": "API error: {status}",
|
||||||
|
"description": "Failed to download {scheme}",
|
||||||
|
"download-failed": "Download failed with exit code: {code}",
|
||||||
|
"invalid-response": "Invalid API response format",
|
||||||
|
"no-files": "No files found for scheme",
|
||||||
|
"parse-failed": "Failed to parse API response: {error}",
|
||||||
|
"rate-limit": "GitHub API rate limit exceeded",
|
||||||
|
"title": "Download Failed"
|
||||||
|
},
|
||||||
|
"fetching": "Fetching available color schemes...",
|
||||||
|
"installed": "Installed",
|
||||||
|
"refresh": "Refresh",
|
||||||
|
"success": {
|
||||||
|
"description": "Successfully downloaded {scheme}",
|
||||||
|
"title": "Color Scheme Downloaded"
|
||||||
|
},
|
||||||
|
"title": "Download Color Schemes"
|
||||||
|
},
|
||||||
"predefined": {
|
"predefined": {
|
||||||
"generate-templates": {
|
"generate-templates": {
|
||||||
"description": "Generate Matugen templates (GTK, terminal themes, etc.) when using predefined color schemes.",
|
"description": "Generate Matugen templates (GTK, terminal themes, etc.) when using predefined color schemes.",
|
||||||
@@ -929,6 +1044,10 @@
|
|||||||
"description": "Write {filepath}. Comfy theme needs to be installed and activated manually.",
|
"description": "Write {filepath}. Comfy theme needs to be installed and activated manually.",
|
||||||
"description-missing": "Requires {app} to be installed"
|
"description-missing": "Requires {app} to be installed"
|
||||||
},
|
},
|
||||||
|
"telegram": {
|
||||||
|
"description": "Write {filepath}.",
|
||||||
|
"description-missing": "Requires {app} to be installed"
|
||||||
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
"description": "Write {filepath} and reload",
|
"description": "Write {filepath} and reload",
|
||||||
"description-missing": "Requires {app} to be installed"
|
"description-missing": "Requires {app} to be installed"
|
||||||
@@ -1125,6 +1244,10 @@
|
|||||||
"description": "Adjust the dock's background opacity.",
|
"description": "Adjust the dock's background opacity.",
|
||||||
"label": "Background opacity"
|
"label": "Background opacity"
|
||||||
},
|
},
|
||||||
|
"border-radius": {
|
||||||
|
"description": "Adjust the dock's border radius.",
|
||||||
|
"label": "Border radius"
|
||||||
|
},
|
||||||
"colorize-icons": {
|
"colorize-icons": {
|
||||||
"description": "Apply theme colors to dock app icons (non-focused apps only).",
|
"description": "Apply theme colors to dock app icons (non-focused apps only).",
|
||||||
"label": "Colorize Icons"
|
"label": "Colorize Icons"
|
||||||
@@ -1276,6 +1399,10 @@
|
|||||||
"description": "Adjust the background opacity of the launcher.",
|
"description": "Adjust the background opacity of the launcher.",
|
||||||
"label": "Background opacity"
|
"label": "Background opacity"
|
||||||
},
|
},
|
||||||
|
"clip-preview": {
|
||||||
|
"description": "Show a preview of the clipboard content when using the >clip command.",
|
||||||
|
"label": "Enable clip preview"
|
||||||
|
},
|
||||||
"clipboard-history": {
|
"clipboard-history": {
|
||||||
"description": "Access previously copied items from the launcher.",
|
"description": "Access previously copied items from the launcher.",
|
||||||
"label": "Enable clipboard history"
|
"label": "Enable clipboard history"
|
||||||
@@ -1364,6 +1491,10 @@
|
|||||||
"description": "Choose your preferred temperature unit.",
|
"description": "Choose your preferred temperature unit.",
|
||||||
"label": "Weather"
|
"label": "Weather"
|
||||||
},
|
},
|
||||||
|
"show-effects": {
|
||||||
|
"description": "Shows additional visual effects (like rain, snow, or lightning) on the weather card.",
|
||||||
|
"label": "Display weather effects"
|
||||||
|
},
|
||||||
"show-in-calendar": {
|
"show-in-calendar": {
|
||||||
"description": "Show the daily weather forecast directly in your calendar view.",
|
"description": "Show the daily weather forecast directly in your calendar view.",
|
||||||
"label": "Display weather in calendar"
|
"label": "Display weather in calendar"
|
||||||
@@ -1379,6 +1510,10 @@
|
|||||||
"description": "Automatically lock the screen when suspending the system.",
|
"description": "Automatically lock the screen when suspending the system.",
|
||||||
"label": "Lock on suspend"
|
"label": "Lock on suspend"
|
||||||
},
|
},
|
||||||
|
"show-hibernate": {
|
||||||
|
"description": "Show the option 'hibernate' in the energy actions.",
|
||||||
|
"label": "Show hibernate"
|
||||||
|
},
|
||||||
"title": "Lock screen"
|
"title": "Lock screen"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -1663,6 +1798,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"user-interface": {
|
"user-interface": {
|
||||||
|
"allow-panels-without-bar": {
|
||||||
|
"description": "When enabled, panels can open on any screen. When disabled, panels will only open on screens that have a bar, which can reduce memory usage.",
|
||||||
|
"label": "Allow panels on screens without a bar"
|
||||||
|
},
|
||||||
"animation-disable": {
|
"animation-disable": {
|
||||||
"description": "Disable all animations for a faster, more responsive experience.",
|
"description": "Disable all animations for a faster, more responsive experience.",
|
||||||
"label": "Disable UI Animations"
|
"label": "Disable UI Animations"
|
||||||
@@ -1870,19 +2009,6 @@
|
|||||||
"low": "Low battery",
|
"low": "Low battery",
|
||||||
"low-desc": "Battery is at {percent}%. Please connect the charger."
|
"low-desc": "Battery is at {percent}%. Please connect the charger."
|
||||||
},
|
},
|
||||||
"battery-manager": {
|
|
||||||
"initial-setup": "Initial setup required",
|
|
||||||
"install-failed": "Installation failed",
|
|
||||||
"install-missing": "Required files are missing",
|
|
||||||
"install-success": "Installed successfully",
|
|
||||||
"install-unsupported": "System is not supported",
|
|
||||||
"set-failed": "Failed to set battery threshold",
|
|
||||||
"set-success-desc": "Battery threshold set to {percent}%",
|
|
||||||
"title": "Battery threshold",
|
|
||||||
"uninstall-failed": "Uninstallation failed",
|
|
||||||
"uninstall-setup": "Uninstalling, authentication required",
|
|
||||||
"uninstall-success": "Uninstalled successfully"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"disabled": "Disabled",
|
"disabled": "Disabled",
|
||||||
"enabled": "Enabled"
|
"enabled": "Enabled"
|
||||||
@@ -1951,6 +2077,10 @@
|
|||||||
"title-matugen": "Matugen templating processing failed",
|
"title-matugen": "Matugen templating processing failed",
|
||||||
"title-predefined": "Predefined color cheme processing failed"
|
"title-predefined": "Predefined color cheme processing failed"
|
||||||
},
|
},
|
||||||
|
"vpn": {
|
||||||
|
"connected": "Connected to '{name}'",
|
||||||
|
"disconnected": "Disconnected from '{name}'"
|
||||||
|
},
|
||||||
"wallpaper-colors": {
|
"wallpaper-colors": {
|
||||||
"disabled": "Wallpaper colors disabled",
|
"disabled": "Wallpaper colors disabled",
|
||||||
"enabled": "Wallpaper colors enabled",
|
"enabled": "Wallpaper colors enabled",
|
||||||
@@ -1967,39 +2097,40 @@
|
|||||||
"tooltips": {
|
"tooltips": {
|
||||||
"add-widget": "Add widget",
|
"add-widget": "Add widget",
|
||||||
"bluetooth-devices": "Bluetooth devices",
|
"bluetooth-devices": "Bluetooth devices",
|
||||||
"brightness-at": "Brightness: {brightness}%\nRight click for settings.\nScroll to modify brightness.",
|
"brightness-at": "Brightness: {brightness}%\nScroll to modify brightness",
|
||||||
"cancel-timer": "Cancel timer",
|
"cancel-timer": "Cancel timer",
|
||||||
"clear-history": "Clear history",
|
"clear-history": "Clear history",
|
||||||
"click-to-start-recording": "Click to start recording",
|
"click-to-start-recording": "Click to start recording",
|
||||||
"click-to-stop-recording": "Click to stop recording",
|
"click-to-stop-recording": "Click to stop recording",
|
||||||
"close": "Close",
|
"close": "Close",
|
||||||
"connect-disconnect-devices": "Left click to connect. Right click to forget.",
|
"connect-disconnect-devices": "Left click to connect\nRight click to forget",
|
||||||
"delete-notification": "Delete notification",
|
"delete-notification": "Delete notification",
|
||||||
"disable-keep-awake": "Click to disable keep awake.\nScroll to adjust timeout.",
|
"disable-keep-awake": "Click to disable keep awake.\nScroll to adjust timeout",
|
||||||
"do-not-disturb-disabled": "'Do not disturb' disabled",
|
"do-not-disturb-disabled": "'Do not disturb' disabled",
|
||||||
"do-not-disturb-enabled": "'Do not disturb' enabled",
|
"do-not-disturb-enabled": "'Do not disturb' enabled",
|
||||||
"enable-keep-awake": "Click to enable keep awake.\nScroll to adjust timeout.",
|
"enable-keep-awake": "Click to enable keep awake.\nScroll to adjust timeout",
|
||||||
"forget-network": "Forget network",
|
"forget-network": "Forget network",
|
||||||
"home": "Home",
|
"home": "Home",
|
||||||
"input-muted": "Toggle input mute",
|
"input-muted": "Toggle input mute",
|
||||||
"keep-awake": "Keep awake",
|
"keep-awake": "Keep awake",
|
||||||
"keyboard-layout": "{layout} keyboard layout",
|
"keyboard-layout": "{layout} keyboard layout",
|
||||||
|
"manage-vpn": "Manage VPN connections",
|
||||||
"manage-wifi": "Manage Wi-Fi",
|
"manage-wifi": "Manage Wi-Fi",
|
||||||
"microphone-volume-at": "Microphone volume at {volume}%\nLeft click for settings. Right click to toggle mute.\nScroll to modify volume.",
|
"microphone-volume-at": "Microphone volume at {volume}%\nScroll to modify volume",
|
||||||
"move-to-center-section": "Move to center section",
|
"move-to-center-section": "Move to center section",
|
||||||
"move-to-left-section": "Move to left section",
|
"move-to-left-section": "Move to left section",
|
||||||
"move-to-right-section": "Move to right section",
|
"move-to-right-section": "Move to right section",
|
||||||
"next-media": "Next media",
|
"next-media": "Next media",
|
||||||
"next-month": "Next month",
|
"next-month": "Next month",
|
||||||
"night-light-disabled": "Night light is disabled.\nLeft click to cycle mode.\nRight click to access settings.",
|
"night-light-disabled": "Night light is disabled.\nLeft click to cycle mode\nRight click to access settings",
|
||||||
"night-light-enabled": "Night light is enabled.\nLeft click to cycle mode.\nRight click to access settings.",
|
"night-light-enabled": "Night light is enabled.\nLeft click to cycle mode\nRight click to access settings",
|
||||||
"night-light-forced": "Night light is forced.\nLeft click to cycle mode.\nRight click to access settings.",
|
"night-light-forced": "Night light is forced.\nLeft click to cycle mode\nRight click to access settings",
|
||||||
"night-light-not-installed": "Night light is not available.\nwlsunset is not installed.",
|
"night-light-not-installed": "Night light is not available\nwlsunset is not installed",
|
||||||
"noctalia-performance-disabled": "Noctalia performance mode is disabled.\nLeft click to enable.",
|
"noctalia-performance-disabled": "Noctalia performance mode is disabled\nLeft click to enable",
|
||||||
"noctalia-performance-enabled": "Noctalia performance mode is enabled.\nLeft click to disable.",
|
"noctalia-performance-enabled": "Noctalia performance mode is enabled\nLeft click to disable",
|
||||||
"open-control-center": "Open control center",
|
"open-control-center": "Open control center",
|
||||||
"open-notification-history-disable-dnd": "Open notification history\nRight-click to disable \"Do not disturb\".",
|
"open-notification-history-disable-dnd": "Open notification history\nRight-click to disable \"Do not disturb\"",
|
||||||
"open-notification-history-enable-dnd": "Open notification history\nRight-click to enable \"Do not disturb\".",
|
"open-notification-history-enable-dnd": "Open notification history\nRight-click to enable \"Do not disturb\"",
|
||||||
"open-settings": "Open settings",
|
"open-settings": "Open settings",
|
||||||
"open-tray-dropdown": "Open tray dropdown",
|
"open-tray-dropdown": "Open tray dropdown",
|
||||||
"open-wallpaper-selector": "Open wallpaper selector",
|
"open-wallpaper-selector": "Open wallpaper selector",
|
||||||
@@ -2022,8 +2153,8 @@
|
|||||||
"switch-to-dark-mode": "Switch to dark mode",
|
"switch-to-dark-mode": "Switch to dark mode",
|
||||||
"switch-to-light-mode": "Switch to light mode",
|
"switch-to-light-mode": "Switch to light mode",
|
||||||
"up": "Up",
|
"up": "Up",
|
||||||
"volume-at": "Output volume at {volume}%\nLeft click for settings. Right click to toggle mute.\nScroll to modify volume.",
|
"volume-at": "Output volume at {volume}%\nScroll to modify volume",
|
||||||
"wallpaper-selector": "Left click: Open wallpaper selector.\nRight click: Set random wallpaper.",
|
"wallpaper-selector": "Left click: Open wallpaper selector.\nRight click: Set random wallpaper",
|
||||||
"widget-settings": "Widget settings"
|
"widget-settings": "Widget settings"
|
||||||
},
|
},
|
||||||
"wallpaper": {
|
"wallpaper": {
|
||||||
@@ -2047,6 +2178,11 @@
|
|||||||
"label": "Categories",
|
"label": "Categories",
|
||||||
"people": "People"
|
"people": "People"
|
||||||
},
|
},
|
||||||
|
"order": {
|
||||||
|
"asc": "Ascending",
|
||||||
|
"desc": "Descending",
|
||||||
|
"label": "Order"
|
||||||
|
},
|
||||||
"purity": {
|
"purity": {
|
||||||
"all": "All",
|
"all": "All",
|
||||||
"label": "Content filter",
|
"label": "Content filter",
|
||||||
@@ -2071,21 +2207,16 @@
|
|||||||
"toplist": "Toplist",
|
"toplist": "Toplist",
|
||||||
"views": "Views"
|
"views": "Views"
|
||||||
},
|
},
|
||||||
"order": {
|
|
||||||
"asc": "Ascending",
|
|
||||||
"desc": "Descending",
|
|
||||||
"label": "Order"
|
|
||||||
},
|
|
||||||
"wallhaven-settings": {
|
|
||||||
"apply": "Apply",
|
|
||||||
"title": "Wallhaven Settings"
|
|
||||||
},
|
|
||||||
"source": {
|
"source": {
|
||||||
"label": "Source",
|
"label": "Source",
|
||||||
"local": "Local",
|
"local": "Local",
|
||||||
"wallhaven": "Wallhaven"
|
"wallhaven": "Wallhaven"
|
||||||
},
|
},
|
||||||
"title": "Wallpaper Selector"
|
"title": "Wallpaper Selector",
|
||||||
|
"wallhaven-settings": {
|
||||||
|
"apply": "Apply",
|
||||||
|
"title": "Wallhaven Settings"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"transitions": {
|
"transitions": {
|
||||||
"disc": "Disc",
|
"disc": "Disc",
|
||||||
@@ -2100,7 +2231,7 @@
|
|||||||
"wallhaven": {
|
"wallhaven": {
|
||||||
"loading": "Loading wallpapers...",
|
"loading": "Loading wallpapers...",
|
||||||
"no-results": "No wallpapers found. Try a different search query.",
|
"no-results": "No wallpapers found. Try a different search query.",
|
||||||
"page": "Page {current} of {total}"
|
"page": "{current} of {total}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weather": {
|
"weather": {
|
||||||
@@ -2210,6 +2341,7 @@
|
|||||||
},
|
},
|
||||||
"wifi": {
|
"wifi": {
|
||||||
"panel": {
|
"panel": {
|
||||||
|
"available-networks": "Available Networks",
|
||||||
"connect": "Connect",
|
"connect": "Connect",
|
||||||
"connected": "Connected",
|
"connected": "Connected",
|
||||||
"disabled": "Wi-Fi is disabled",
|
"disabled": "Wi-Fi is disabled",
|
||||||
@@ -2220,6 +2352,7 @@
|
|||||||
"forget": "Forget",
|
"forget": "Forget",
|
||||||
"forget-network": "Forget this network?",
|
"forget-network": "Forget this network?",
|
||||||
"forgetting": "Forgetting...",
|
"forgetting": "Forgetting...",
|
||||||
|
"known-networks": "Known Networks",
|
||||||
"no-networks": "No networks found",
|
"no-networks": "No networks found",
|
||||||
"password": "Password",
|
"password": "Password",
|
||||||
"saved": "Saved",
|
"saved": "Saved",
|
||||||
|
|||||||
@@ -123,10 +123,6 @@
|
|||||||
"stream-description": "Introduce un comando para ejecutar continuamente."
|
"stream-description": "Introduce un comando para ejecutar continuamente."
|
||||||
},
|
},
|
||||||
"dynamic-text": "Texto dinámico",
|
"dynamic-text": "Texto dinámico",
|
||||||
"hide-vertical": {
|
|
||||||
"description": "Si está activado, el texto de la salida del comando no se mostrará cuando la barra esté en un diseño vertical (izquierda o derecha).",
|
|
||||||
"label": "Ocultar texto en barra vertical"
|
|
||||||
},
|
|
||||||
"icon": {
|
"icon": {
|
||||||
"description": "Selecciona un icono de la biblioteca.",
|
"description": "Selecciona un icono de la biblioteca.",
|
||||||
"label": "Icono"
|
"label": "Icono"
|
||||||
@@ -136,6 +132,14 @@
|
|||||||
"label": "Clic izquierdo",
|
"label": "Clic izquierdo",
|
||||||
"update-text": "Actualizar el texto mostrado al hacer clic izquierdo"
|
"update-text": "Actualizar el texto mostrado al hacer clic izquierdo"
|
||||||
},
|
},
|
||||||
|
"max-text-length-horizontal": {
|
||||||
|
"description": "Número máximo de caracteres a mostrar en la barra horizontal (0 para ocultar el texto)",
|
||||||
|
"label": "Longitud máxima de texto (horizontal)"
|
||||||
|
},
|
||||||
|
"max-text-length-vertical": {
|
||||||
|
"description": "Número máximo de caracteres a mostrar en la barra vertical (0 para ocultar el texto)",
|
||||||
|
"label": "Longitud máxima de texto (vertical)"
|
||||||
|
},
|
||||||
"middle-click": {
|
"middle-click": {
|
||||||
"description": "Comando a ejecutar cuando se hace clic medio en el botón.",
|
"description": "Comando a ejecutar cuando se hace clic medio en el botón.",
|
||||||
"label": "Clic medio",
|
"label": "Clic medio",
|
||||||
@@ -157,6 +161,23 @@
|
|||||||
"text-stream": {
|
"text-stream": {
|
||||||
"description": "Las líneas transmitidas desde el comando se mostrarán como texto en el botón.",
|
"description": "Las líneas transmitidas desde el comando se mostrarán como texto en el botón.",
|
||||||
"label": "Transmisión"
|
"label": "Transmisión"
|
||||||
|
},
|
||||||
|
"wheel": {
|
||||||
|
"description": "Comando a ejecutar cuando se usa la rueda de desplazamiento.\nUsa $delta para el delta de la rueda de desplazamiento en el comando",
|
||||||
|
"label": "Rueda de desplazamiento",
|
||||||
|
"update-text": "Actualizar texto mostrado al desplazarse"
|
||||||
|
},
|
||||||
|
"wheel-down": {
|
||||||
|
"description": "Comando a ejecutar cuando la rueda de desplazamiento se desplaza hacia abajo.",
|
||||||
|
"label": "Comando de rueda hacia abajo"
|
||||||
|
},
|
||||||
|
"wheel-mode-separate": {
|
||||||
|
"description": "Habilitar comandos separados para rueda arriba y abajo",
|
||||||
|
"label": "Comandos de rueda separados"
|
||||||
|
},
|
||||||
|
"wheel-up": {
|
||||||
|
"description": "Comando a ejecutar cuando la rueda de desplazamiento se desplaza hacia arriba.",
|
||||||
|
"label": "Comando de rueda hacia arriba"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dialog": {
|
"dialog": {
|
||||||
@@ -202,6 +223,10 @@
|
|||||||
"description": "Mostrar la portada del álbum de la pista que se está reproduciendo actualmente.",
|
"description": "Mostrar la portada del álbum de la pista que se está reproduciendo actualmente.",
|
||||||
"label": "Mostrar arte del álbum"
|
"label": "Mostrar arte del álbum"
|
||||||
},
|
},
|
||||||
|
"show-artist-first": {
|
||||||
|
"description": "Mostrar artista - título en lugar de título - artista.",
|
||||||
|
"label": "Mostrar primero al artista"
|
||||||
|
},
|
||||||
"show-visualizer": {
|
"show-visualizer": {
|
||||||
"description": "Mostrar un visualizador de audio cuando se reproduce música.",
|
"description": "Mostrar un visualizador de audio cuando se reproduce música.",
|
||||||
"label": "Mostrar visualizador"
|
"label": "Mostrar visualizador"
|
||||||
@@ -259,6 +284,10 @@
|
|||||||
"disk-critical-threshold": {
|
"disk-critical-threshold": {
|
||||||
"label": "Storage Space (Critical)"
|
"label": "Storage Space (Critical)"
|
||||||
},
|
},
|
||||||
|
"disk-path": {
|
||||||
|
"description": "Seleccione qué punto de montaje de disco desea supervisar.",
|
||||||
|
"label": "Ruta del disco"
|
||||||
|
},
|
||||||
"disk-warning-threshold": {
|
"disk-warning-threshold": {
|
||||||
"label": "Storage Space (Warning)"
|
"label": "Storage Space (Warning)"
|
||||||
},
|
},
|
||||||
@@ -314,13 +343,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"taskbar-grouped": {
|
"taskbar-grouped": {
|
||||||
"show-numbers-only-when-occupied": {
|
"show-labels-only-when-occupied": {
|
||||||
"description": "Mostrar números de espacio de trabajo solo para espacios de trabajo con ventanas abiertas.",
|
"description": "Mostrar solo la etiqueta del espacio de trabajo para los espacios de trabajo que tienen ventanas abiertas.",
|
||||||
"label": "Mostrar números solo cuando estén ocupados"
|
"label": "Mostrar etiqueta solo cuando esté ocupado."
|
||||||
},
|
|
||||||
"show-workspace-numbers": {
|
|
||||||
"description": "Mostrar números de espacio de trabajo en la esquina superior izquierda de los grupos de tareas.",
|
|
||||||
"label": "Mostrar números de espacio de trabajo"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
@@ -363,13 +388,6 @@
|
|||||||
"health": "Salud: {percent}%",
|
"health": "Salud: {percent}%",
|
||||||
"idle": "Inactivo.",
|
"idle": "Inactivo.",
|
||||||
"no-battery-detected": "No se detectó ninguna batería.",
|
"no-battery-detected": "No se detectó ninguna batería.",
|
||||||
"panel": {
|
|
||||||
"balanced": "Equilibrado ({percent}%)",
|
|
||||||
"disabled": "Administrador de batería deshabilitado",
|
|
||||||
"full": "Capacidad total ({percent}%)",
|
|
||||||
"lifespan": "Vida útil prolongada ({percent}%)",
|
|
||||||
"title": "Umbral de carga"
|
|
||||||
},
|
|
||||||
"plugged-in": "Conectado.",
|
"plugged-in": "Conectado.",
|
||||||
"time-left": "Tiempo restante: {time}.",
|
"time-left": "Tiempo restante: {time}.",
|
||||||
"time-until-full": "Tiempo hasta carga completa: {time}."
|
"time-until-full": "Tiempo hasta carga completa: {time}."
|
||||||
@@ -398,9 +416,61 @@
|
|||||||
"loading": "Cargando el clima…"
|
"loading": "Cargando el clima…"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"error": {
|
||||||
|
"fetch-failed": "No se pudieron cargar los datos del registro de cambios. Inténtalo de nuevo más tarde.",
|
||||||
|
"rate-limit": "Se alcanzó el límite de GitHub. Inténtalo de nuevo en unos minutos."
|
||||||
|
},
|
||||||
|
"panel": {
|
||||||
|
"buttons": {
|
||||||
|
"discord": "Únete a nuestro Discord",
|
||||||
|
"dismiss": "Ok"
|
||||||
|
},
|
||||||
|
"empty": "Las notas de la versión aún no están disponibles.",
|
||||||
|
"highlight-title": "Cambios destacados",
|
||||||
|
"section": {
|
||||||
|
"released": "Publicado el {date}",
|
||||||
|
"version": "Versión {version}"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"fresh": "Gracias por instalar Noctalia. Esto es lo que incluye esta compilación.",
|
||||||
|
"updated": "Actualizado desde {previousVersion}"
|
||||||
|
},
|
||||||
|
"title": "Novedades en {version}",
|
||||||
|
"version": {
|
||||||
|
"new-user": "Instalación nueva"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"tooltip": "Abrir calendario"
|
"tooltip": "Abrir calendario"
|
||||||
},
|
},
|
||||||
|
"context-menu": {
|
||||||
|
"activate-app": "Activar {app}",
|
||||||
|
"clear-history": "Borrar historial",
|
||||||
|
"close-app": "Cerrar {app}",
|
||||||
|
"connect-vpn": "Conectarse a {name}",
|
||||||
|
"cycle-visualizer": "Visualizador de ciclos",
|
||||||
|
"disable-bluetooth": "Desactivar Bluetooth",
|
||||||
|
"disable-dnd": "Desactivar No molestar",
|
||||||
|
"disable-wifi": "Desactivar Wi-Fi",
|
||||||
|
"disconnect-vpn": "Desconectar {name}",
|
||||||
|
"enable-bluetooth": "Activar Bluetooth",
|
||||||
|
"enable-dnd": "Activar No molestar",
|
||||||
|
"enable-wifi": "Activar Wi-Fi",
|
||||||
|
"next": "Siguiente",
|
||||||
|
"open-calendar": "Abrir calendario",
|
||||||
|
"open-display-settings": "Configuración de pantalla",
|
||||||
|
"open-launcher": "Abrir lanzador",
|
||||||
|
"open-mixer": "Mezclador de audio",
|
||||||
|
"open-settings": "Abrir ajustes",
|
||||||
|
"pause": "Pausa",
|
||||||
|
"play": "Jugar",
|
||||||
|
"previous": "Anterior",
|
||||||
|
"random-wallpaper": "Fondo de pantalla aleatorio",
|
||||||
|
"toggle-mute": "Activar/desactivar silencio",
|
||||||
|
"widget-settings": "Configuración del widget"
|
||||||
|
},
|
||||||
"dock": {
|
"dock": {
|
||||||
"menu": {
|
"menu": {
|
||||||
"close": "Cerrar",
|
"close": "Cerrar",
|
||||||
@@ -564,6 +634,7 @@
|
|||||||
},
|
},
|
||||||
"workspace-labels": {
|
"workspace-labels": {
|
||||||
"index": "Índice",
|
"index": "Índice",
|
||||||
|
"index+name": "Índice y Nombre",
|
||||||
"name": "Nombre",
|
"name": "Nombre",
|
||||||
"none": "Ninguno"
|
"none": "Ninguno"
|
||||||
}
|
}
|
||||||
@@ -579,8 +650,8 @@
|
|||||||
"search": "Buscar...",
|
"search": "Buscar...",
|
||||||
"search-icons": "ej., noctalia, niri, battery, cloud",
|
"search-icons": "ej., noctalia, niri, battery, cloud",
|
||||||
"search-launcher": "Buscar entradas... o usa > para comandos",
|
"search-launcher": "Buscar entradas... o usa > para comandos",
|
||||||
"search-wallpapers": "Escribe para filtrar fondos de pantalla...",
|
|
||||||
"search-wallhaven": "Buscar en Wallhaven...",
|
"search-wallhaven": "Buscar en Wallhaven...",
|
||||||
|
"search-wallpapers": "Escribe para filtrar fondos de pantalla...",
|
||||||
"select": "Seleccionar",
|
"select": "Seleccionar",
|
||||||
"test": "Probar"
|
"test": "Probar"
|
||||||
},
|
},
|
||||||
@@ -721,6 +792,11 @@
|
|||||||
"label": "Dispositivos de audio"
|
"label": "Dispositivos de audio"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"external-mixer": {
|
||||||
|
"description": "Ingrese el comando o la ruta de la aplicación para ejecutar al activar la función de mezclador de audio externo.",
|
||||||
|
"label": "Comando de mezclador de audio externo",
|
||||||
|
"placeholder": "pwvucontrol || pavucontrol"
|
||||||
|
},
|
||||||
"media": {
|
"media": {
|
||||||
"excluded-player": {
|
"excluded-player": {
|
||||||
"description": "Agrega palabras clave para los reproductores que deseas que el sistema ignore. Cada palabra clave debe estar en una línea nueva.",
|
"description": "Agrega palabras clave para los reproductores que deseas que el sistema ignore. Cada palabra clave debe estar en una línea nueva.",
|
||||||
@@ -795,6 +871,10 @@
|
|||||||
"description": "Ajusta la opacidad del fondo de la barra.",
|
"description": "Ajusta la opacidad del fondo de la barra.",
|
||||||
"label": "Opacidad del fondo"
|
"label": "Opacidad del fondo"
|
||||||
},
|
},
|
||||||
|
"capsule-opacity": {
|
||||||
|
"description": "Establecer el nivel de opacidad para los fondos de los widgets cuando se muestra la cápsula.",
|
||||||
|
"label": "Opacidad de la cápsula"
|
||||||
|
},
|
||||||
"density": {
|
"density": {
|
||||||
"description": "Ajusta el relleno de la barra para un aspecto compacto o espacioso.",
|
"description": "Ajusta el relleno de la barra para un aspecto compacto o espacioso.",
|
||||||
"label": "Densidad de la barra"
|
"label": "Densidad de la barra"
|
||||||
@@ -887,6 +967,41 @@
|
|||||||
"label": "Modo oscuro"
|
"label": "Modo oscuro"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"delete": {
|
||||||
|
"error": {
|
||||||
|
"description": "Error al eliminar {scheme}",
|
||||||
|
"title": "Error al eliminar"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} eliminado correctamente",
|
||||||
|
"title": "Esquema de colores eliminado"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"download": {
|
||||||
|
"button": "Descargar más",
|
||||||
|
"delete": "Eliminar",
|
||||||
|
"download": "Descargar",
|
||||||
|
"downloading": "Descargando...",
|
||||||
|
"empty": "No hay esquemas de colores disponibles",
|
||||||
|
"error": {
|
||||||
|
"api-error": "Error de API: {status}",
|
||||||
|
"description": "Error al descargar {scheme}",
|
||||||
|
"download-failed": "Error al descargar con código de salida: {code}",
|
||||||
|
"invalid-response": "Formato de respuesta de API inválido",
|
||||||
|
"no-files": "No se encontraron archivos para el esquema",
|
||||||
|
"parse-failed": "Error al analizar la respuesta de la API: {error}",
|
||||||
|
"rate-limit": "Límite de velocidad de la API de GitHub excedido",
|
||||||
|
"title": "Error al descargar"
|
||||||
|
},
|
||||||
|
"fetching": "Obteniendo esquemas de colores disponibles...",
|
||||||
|
"installed": "Instalado",
|
||||||
|
"refresh": "Actualizar",
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} descargado correctamente",
|
||||||
|
"title": "Esquema de colores descargado"
|
||||||
|
},
|
||||||
|
"title": "Descargar esquemas de colores"
|
||||||
|
},
|
||||||
"predefined": {
|
"predefined": {
|
||||||
"generate-templates": {
|
"generate-templates": {
|
||||||
"description": "Genera plantillas de Matugen (GTK, temas de terminal, etc.) al usar esquemas de colores predefinidos.",
|
"description": "Genera plantillas de Matugen (GTK, temas de terminal, etc.) al usar esquemas de colores predefinidos.",
|
||||||
@@ -929,6 +1044,10 @@
|
|||||||
"description": "Escribe {filepath}. El tema Comfy debe ser instalado y activado manualmente.",
|
"description": "Escribe {filepath}. El tema Comfy debe ser instalado y activado manualmente.",
|
||||||
"description-missing": "Requiere que {app} esté instalado/a."
|
"description-missing": "Requiere que {app} esté instalado/a."
|
||||||
},
|
},
|
||||||
|
"telegram": {
|
||||||
|
"description": "Escribe {filepath}.",
|
||||||
|
"description-missing": "Requiere que {app} esté instalado/a."
|
||||||
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
"description": "Escribir {filepath} y recargar",
|
"description": "Escribir {filepath} y recargar",
|
||||||
"description-missing": "Requiere que {app} esté instalado"
|
"description-missing": "Requiere que {app} esté instalado"
|
||||||
@@ -1125,6 +1244,10 @@
|
|||||||
"description": "Ajusta la opacidad del fondo del dock.",
|
"description": "Ajusta la opacidad del fondo del dock.",
|
||||||
"label": "Opacidad del fondo"
|
"label": "Opacidad del fondo"
|
||||||
},
|
},
|
||||||
|
"border-radius": {
|
||||||
|
"description": "Ajustar el radio del borde del dock.",
|
||||||
|
"label": "Radio de borde"
|
||||||
|
},
|
||||||
"colorize-icons": {
|
"colorize-icons": {
|
||||||
"description": "Aplicar colores del tema a los iconos de aplicaciones del dock (solo aplicaciones no enfocadas).",
|
"description": "Aplicar colores del tema a los iconos de aplicaciones del dock (solo aplicaciones no enfocadas).",
|
||||||
"label": "Colorear iconos"
|
"label": "Colorear iconos"
|
||||||
@@ -1276,6 +1399,10 @@
|
|||||||
"description": "Ajusta la opacidad del fondo del lanzador.",
|
"description": "Ajusta la opacidad del fondo del lanzador.",
|
||||||
"label": "Opacidad del fondo"
|
"label": "Opacidad del fondo"
|
||||||
},
|
},
|
||||||
|
"clip-preview": {
|
||||||
|
"description": "Muestra una vista previa del contenido del portapapeles al usar el comando >clip.",
|
||||||
|
"label": "Activar vista previa del portapapeles"
|
||||||
|
},
|
||||||
"clipboard-history": {
|
"clipboard-history": {
|
||||||
"description": "Accede a los elementos copiados anteriormente desde el lanzador.",
|
"description": "Accede a los elementos copiados anteriormente desde el lanzador.",
|
||||||
"label": "Activar historial del portapapeles"
|
"label": "Activar historial del portapapeles"
|
||||||
@@ -1364,6 +1491,10 @@
|
|||||||
"description": "Elige tu unidad de temperatura preferida.",
|
"description": "Elige tu unidad de temperatura preferida.",
|
||||||
"label": "Clima"
|
"label": "Clima"
|
||||||
},
|
},
|
||||||
|
"show-effects": {
|
||||||
|
"description": "Muestra efectos visuales adicionales (como lluvia, nieve o relámpagos) en la tarjeta del clima.",
|
||||||
|
"label": "Mostrar efectos climáticos"
|
||||||
|
},
|
||||||
"show-in-calendar": {
|
"show-in-calendar": {
|
||||||
"description": "Muestra el pronóstico del tiempo diario directamente en la vista de tu calendario.",
|
"description": "Muestra el pronóstico del tiempo diario directamente en la vista de tu calendario.",
|
||||||
"label": "Mostrar el clima en el calendario"
|
"label": "Mostrar el clima en el calendario"
|
||||||
@@ -1379,6 +1510,10 @@
|
|||||||
"description": "Bloquear la pantalla automáticamente al suspender el sistema.",
|
"description": "Bloquear la pantalla automáticamente al suspender el sistema.",
|
||||||
"label": "Bloquear al suspender"
|
"label": "Bloquear al suspender"
|
||||||
},
|
},
|
||||||
|
"show-hibernate": {
|
||||||
|
"description": "Mostrar la opción 'hibernar' en las acciones de energía.",
|
||||||
|
"label": "Mostrar hibernar"
|
||||||
|
},
|
||||||
"title": "Pantalla de bloqueo"
|
"title": "Pantalla de bloqueo"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -1663,6 +1798,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"user-interface": {
|
"user-interface": {
|
||||||
|
"allow-panels-without-bar": {
|
||||||
|
"description": "Cuando está activado, los paneles se pueden abrir en cualquier pantalla. Cuando está desactivado, los paneles solo se abrirán en las pantallas que tengan una barra, lo que puede reducir el uso de memoria.",
|
||||||
|
"label": "Permitir paneles en pantallas sin barra."
|
||||||
|
},
|
||||||
"animation-disable": {
|
"animation-disable": {
|
||||||
"description": "Desactiva todas las animaciones para una experiencia más rápida y con mayor capacidad de respuesta.",
|
"description": "Desactiva todas las animaciones para una experiencia más rápida y con mayor capacidad de respuesta.",
|
||||||
"label": "Desactivar animaciones de la interfaz de usuario"
|
"label": "Desactivar animaciones de la interfaz de usuario"
|
||||||
@@ -1870,19 +2009,6 @@
|
|||||||
"low": "Batería baja",
|
"low": "Batería baja",
|
||||||
"low-desc": "La batería está al {percent}%. Por favor, conecta el cargador."
|
"low-desc": "La batería está al {percent}%. Por favor, conecta el cargador."
|
||||||
},
|
},
|
||||||
"battery-manager": {
|
|
||||||
"initial-setup": "Configuración inicial requerida",
|
|
||||||
"install-failed": "Error en la instalación",
|
|
||||||
"install-missing": "Faltan archivos requeridos",
|
|
||||||
"install-success": "Instalado correctamente",
|
|
||||||
"install-unsupported": "El sistema no es compatible",
|
|
||||||
"set-failed": "No se pudo establecer el umbral de batería",
|
|
||||||
"set-success-desc": "Umbral de batería establecido en {percent}%",
|
|
||||||
"title": "Umbral de batería",
|
|
||||||
"uninstall-failed": "Error en la desinstalación",
|
|
||||||
"uninstall-setup": "Desinstalando, se requiere autenticación",
|
|
||||||
"uninstall-success": "Desinstalado correctamente"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"disabled": "Desactivado",
|
"disabled": "Desactivado",
|
||||||
"enabled": "Activado"
|
"enabled": "Activado"
|
||||||
@@ -1951,6 +2077,10 @@
|
|||||||
"title-matugen": "Falló el procesamiento de la plantilla Matugen.",
|
"title-matugen": "Falló el procesamiento de la plantilla Matugen.",
|
||||||
"title-predefined": "Falló el procesamiento del esquema de color predefinido."
|
"title-predefined": "Falló el procesamiento del esquema de color predefinido."
|
||||||
},
|
},
|
||||||
|
"vpn": {
|
||||||
|
"connected": "Conectado a '{name}'",
|
||||||
|
"disconnected": "Desconectado de '{name}'"
|
||||||
|
},
|
||||||
"wallpaper-colors": {
|
"wallpaper-colors": {
|
||||||
"disabled": "Colores del fondo de pantalla desactivados",
|
"disabled": "Colores del fondo de pantalla desactivados",
|
||||||
"enabled": "Colores del fondo de pantalla activados",
|
"enabled": "Colores del fondo de pantalla activados",
|
||||||
@@ -1984,6 +2114,7 @@
|
|||||||
"input-muted": "Silenciar entrada de audio",
|
"input-muted": "Silenciar entrada de audio",
|
||||||
"keep-awake": "Mantener despierto",
|
"keep-awake": "Mantener despierto",
|
||||||
"keyboard-layout": "Distribución de teclado {layout}",
|
"keyboard-layout": "Distribución de teclado {layout}",
|
||||||
|
"manage-vpn": "Administrar conexiones VPN",
|
||||||
"manage-wifi": "Gestionar Wi-Fi",
|
"manage-wifi": "Gestionar Wi-Fi",
|
||||||
"microphone-volume-at": "Volumen del micrófono al {volume}%.\nClic izquierdo para ajustes. Clic derecho para activar/desactivar el silencio.\nDesplázate para modificar el volumen.",
|
"microphone-volume-at": "Volumen del micrófono al {volume}%.\nClic izquierdo para ajustes. Clic derecho para activar/desactivar el silencio.\nDesplázate para modificar el volumen.",
|
||||||
"move-to-center-section": "Mover a la sección central",
|
"move-to-center-section": "Mover a la sección central",
|
||||||
@@ -2047,6 +2178,11 @@
|
|||||||
"label": "Categorías",
|
"label": "Categorías",
|
||||||
"people": "Personas"
|
"people": "Personas"
|
||||||
},
|
},
|
||||||
|
"order": {
|
||||||
|
"asc": "Ascendente",
|
||||||
|
"desc": "Descendente",
|
||||||
|
"label": "Orden"
|
||||||
|
},
|
||||||
"purity": {
|
"purity": {
|
||||||
"all": "Todo",
|
"all": "Todo",
|
||||||
"label": "Filtro de contenido",
|
"label": "Filtro de contenido",
|
||||||
@@ -2071,21 +2207,16 @@
|
|||||||
"toplist": "Lista superior",
|
"toplist": "Lista superior",
|
||||||
"views": "Visualizaciones"
|
"views": "Visualizaciones"
|
||||||
},
|
},
|
||||||
"order": {
|
|
||||||
"asc": "Ascendente",
|
|
||||||
"desc": "Descendente",
|
|
||||||
"label": "Orden"
|
|
||||||
},
|
|
||||||
"wallhaven-settings": {
|
|
||||||
"apply": "Aplicar",
|
|
||||||
"title": "Configuración de Wallhaven"
|
|
||||||
},
|
|
||||||
"source": {
|
"source": {
|
||||||
"label": "Fuente",
|
"label": "Fuente",
|
||||||
"local": "Local",
|
"local": "Local",
|
||||||
"wallhaven": "Wallhaven"
|
"wallhaven": "Wallhaven"
|
||||||
},
|
},
|
||||||
"title": "Selector de fondo de pantalla"
|
"title": "Selector de fondo de pantalla",
|
||||||
|
"wallhaven-settings": {
|
||||||
|
"apply": "Aplicar",
|
||||||
|
"title": "Configuración de Wallhaven"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"transitions": {
|
"transitions": {
|
||||||
"disc": "Disco",
|
"disc": "Disco",
|
||||||
@@ -2096,10 +2227,11 @@
|
|||||||
"wipe": "Barrido"
|
"wipe": "Barrido"
|
||||||
},
|
},
|
||||||
"try-different-search": "Intenta con una búsqueda diferente.",
|
"try-different-search": "Intenta con una búsqueda diferente.",
|
||||||
|
"unknown": "Desconocido",
|
||||||
"wallhaven": {
|
"wallhaven": {
|
||||||
"loading": "Cargando fondos de pantalla...",
|
"loading": "Cargando fondos de pantalla...",
|
||||||
"no-results": "No se encontraron fondos de pantalla. Intenta con una búsqueda diferente.",
|
"no-results": "No se encontraron fondos de pantalla. Intenta con una búsqueda diferente.",
|
||||||
"page": "Página {current} de {total}"
|
"page": "{current} de {total}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weather": {
|
"weather": {
|
||||||
@@ -2209,6 +2341,7 @@
|
|||||||
},
|
},
|
||||||
"wifi": {
|
"wifi": {
|
||||||
"panel": {
|
"panel": {
|
||||||
|
"available-networks": "Redes disponibles",
|
||||||
"connect": "Conectar",
|
"connect": "Conectar",
|
||||||
"connected": "Conectado",
|
"connected": "Conectado",
|
||||||
"disabled": "Wi-Fi está desactivado",
|
"disabled": "Wi-Fi está desactivado",
|
||||||
@@ -2219,6 +2352,7 @@
|
|||||||
"forget": "Olvidar",
|
"forget": "Olvidar",
|
||||||
"forget-network": "¿Olvidar esta red?",
|
"forget-network": "¿Olvidar esta red?",
|
||||||
"forgetting": "Olvidando...",
|
"forgetting": "Olvidando...",
|
||||||
|
"known-networks": "Redes conocidas",
|
||||||
"no-networks": "No se encontraron redes",
|
"no-networks": "No se encontraron redes",
|
||||||
"password": "Contraseña",
|
"password": "Contraseña",
|
||||||
"saved": "Guardado",
|
"saved": "Guardado",
|
||||||
|
|||||||
@@ -123,10 +123,6 @@
|
|||||||
"stream-description": "Entrez une commande à exécuter en continu."
|
"stream-description": "Entrez une commande à exécuter en continu."
|
||||||
},
|
},
|
||||||
"dynamic-text": "Texte dynamique",
|
"dynamic-text": "Texte dynamique",
|
||||||
"hide-vertical": {
|
|
||||||
"description": "Si activé, le texte de la sortie de la commande ne sera pas affiché lorsque la barre est en disposition verticale (gauche ou droite).",
|
|
||||||
"label": "Masquer le texte dans la barre verticale"
|
|
||||||
},
|
|
||||||
"icon": {
|
"icon": {
|
||||||
"description": "Sélectionnez une icône dans la bibliothèque.",
|
"description": "Sélectionnez une icône dans la bibliothèque.",
|
||||||
"label": "Icône"
|
"label": "Icône"
|
||||||
@@ -136,6 +132,14 @@
|
|||||||
"label": "Clic gauche",
|
"label": "Clic gauche",
|
||||||
"update-text": "Mettre à jour le texte affiché au clic gauche."
|
"update-text": "Mettre à jour le texte affiché au clic gauche."
|
||||||
},
|
},
|
||||||
|
"max-text-length-horizontal": {
|
||||||
|
"description": "Nombre maximal de caractères à afficher dans la barre horizontale (0 pour masquer le texte)",
|
||||||
|
"label": "Longueur max du texte (horizontal)"
|
||||||
|
},
|
||||||
|
"max-text-length-vertical": {
|
||||||
|
"description": "Nombre maximal de caractères à afficher dans la barre verticale (0 pour masquer le texte)",
|
||||||
|
"label": "Longueur max du texte (vertical)"
|
||||||
|
},
|
||||||
"middle-click": {
|
"middle-click": {
|
||||||
"description": "Commande à exécuter quand le bouton est cliqué au milieu.",
|
"description": "Commande à exécuter quand le bouton est cliqué au milieu.",
|
||||||
"label": "Clic milieu",
|
"label": "Clic milieu",
|
||||||
@@ -157,6 +161,23 @@
|
|||||||
"text-stream": {
|
"text-stream": {
|
||||||
"description": "Les lignes diffusées depuis la commande seront affichées sous forme de texte sur le bouton.",
|
"description": "Les lignes diffusées depuis la commande seront affichées sous forme de texte sur le bouton.",
|
||||||
"label": "Flux"
|
"label": "Flux"
|
||||||
|
},
|
||||||
|
"wheel": {
|
||||||
|
"description": "Commande à exécuter lorsque la molette est utilisée.\nUtilisez $delta pour le delta de la molette dans la commande",
|
||||||
|
"label": "Molette",
|
||||||
|
"update-text": "Mettre à jour le texte affiché au défilement"
|
||||||
|
},
|
||||||
|
"wheel-down": {
|
||||||
|
"description": "Commande à exécuter lorsque la molette est défilée vers le bas.",
|
||||||
|
"label": "Commande molette bas"
|
||||||
|
},
|
||||||
|
"wheel-mode-separate": {
|
||||||
|
"description": "Activer des commandes séparées pour la molette haut et bas",
|
||||||
|
"label": "Commandes de molette séparées"
|
||||||
|
},
|
||||||
|
"wheel-up": {
|
||||||
|
"description": "Commande à exécuter lorsque la molette est défilée vers le haut.",
|
||||||
|
"label": "Commande molette haut"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dialog": {
|
"dialog": {
|
||||||
@@ -202,6 +223,10 @@
|
|||||||
"description": "Afficher la pochette d'album de la piste en cours de lecture.",
|
"description": "Afficher la pochette d'album de la piste en cours de lecture.",
|
||||||
"label": "Afficher la pochette d'album"
|
"label": "Afficher la pochette d'album"
|
||||||
},
|
},
|
||||||
|
"show-artist-first": {
|
||||||
|
"description": "Afficher artiste - titre au lieu de titre - artiste.",
|
||||||
|
"label": "Afficher l'artiste en premier"
|
||||||
|
},
|
||||||
"show-visualizer": {
|
"show-visualizer": {
|
||||||
"description": "Afficher un visualiseur audio quand la musique est en cours de lecture.",
|
"description": "Afficher un visualiseur audio quand la musique est en cours de lecture.",
|
||||||
"label": "Afficher le visualiseur"
|
"label": "Afficher le visualiseur"
|
||||||
@@ -259,6 +284,10 @@
|
|||||||
"disk-critical-threshold": {
|
"disk-critical-threshold": {
|
||||||
"label": "Storage Space (Critical)"
|
"label": "Storage Space (Critical)"
|
||||||
},
|
},
|
||||||
|
"disk-path": {
|
||||||
|
"description": "Sélectionnez le point de montage du disque à surveiller.",
|
||||||
|
"label": "Chemin du disque"
|
||||||
|
},
|
||||||
"disk-warning-threshold": {
|
"disk-warning-threshold": {
|
||||||
"label": "Storage Space (Warning)"
|
"label": "Storage Space (Warning)"
|
||||||
},
|
},
|
||||||
@@ -314,13 +343,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"taskbar-grouped": {
|
"taskbar-grouped": {
|
||||||
"show-numbers-only-when-occupied": {
|
"show-labels-only-when-occupied": {
|
||||||
"description": "Afficher les numéros d'espace de travail uniquement pour les espaces de travail avec des fenêtres ouvertes.",
|
"description": "Afficher uniquement l'étiquette de l'espace de travail pour les espaces de travail qui ont des fenêtres ouvertes.",
|
||||||
"label": "Afficher les numéros seulement lorsqu'occupés"
|
"label": "Afficher l'étiquette uniquement lorsque c'est occupé."
|
||||||
},
|
|
||||||
"show-workspace-numbers": {
|
|
||||||
"description": "Afficher les numéros d'espace de travail dans le coin supérieur gauche des groupes de tâches.",
|
|
||||||
"label": "Afficher les numéros d'espace de travail"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
@@ -363,13 +388,6 @@
|
|||||||
"health": "État : {percent}%",
|
"health": "État : {percent}%",
|
||||||
"idle": "Inactif.",
|
"idle": "Inactif.",
|
||||||
"no-battery-detected": "Aucune batterie détectée.",
|
"no-battery-detected": "Aucune batterie détectée.",
|
||||||
"panel": {
|
|
||||||
"balanced": "Équilibré ({percent}%)",
|
|
||||||
"disabled": "Gestionnaire de batterie désactivé",
|
|
||||||
"full": "Capacité totale ({percent}%)",
|
|
||||||
"lifespan": "Durée de vie prolongée ({percent}%)",
|
|
||||||
"title": "Seuil de charge"
|
|
||||||
},
|
|
||||||
"plugged-in": "Branché.",
|
"plugged-in": "Branché.",
|
||||||
"time-left": "Temps restant : {time}.",
|
"time-left": "Temps restant : {time}.",
|
||||||
"time-until-full": "Temps jusqu'à charge complète : {time}."
|
"time-until-full": "Temps jusqu'à charge complète : {time}."
|
||||||
@@ -398,9 +416,61 @@
|
|||||||
"loading": "Chargement de la météo…"
|
"loading": "Chargement de la météo…"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"error": {
|
||||||
|
"fetch-failed": "Impossible de charger les données du journal des modifications. Veuillez réessayer plus tard.",
|
||||||
|
"rate-limit": "Limite de GitHub atteinte. Réessayez dans quelques minutes."
|
||||||
|
},
|
||||||
|
"panel": {
|
||||||
|
"buttons": {
|
||||||
|
"discord": "Rejoindre notre Discord",
|
||||||
|
"dismiss": "Ok"
|
||||||
|
},
|
||||||
|
"empty": "Les notes de version ne sont pas encore disponibles.",
|
||||||
|
"highlight-title": "Points importants",
|
||||||
|
"section": {
|
||||||
|
"released": "Publié le {date}",
|
||||||
|
"version": "Version {version}"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"fresh": "Merci d’avoir installé Noctalia ! Voici ce que contient cette version.",
|
||||||
|
"updated": "Mise à jour depuis {previousVersion}"
|
||||||
|
},
|
||||||
|
"title": "Quoi de neuf dans {version}",
|
||||||
|
"version": {
|
||||||
|
"new-user": "Nouvelle installation"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"tooltip": "Ouvrir le calendrier"
|
"tooltip": "Ouvrir le calendrier"
|
||||||
},
|
},
|
||||||
|
"context-menu": {
|
||||||
|
"activate-app": "Activer {app}",
|
||||||
|
"clear-history": "Effacer l'historique",
|
||||||
|
"close-app": "Fermer {app}",
|
||||||
|
"connect-vpn": "Se connecter à {name}",
|
||||||
|
"cycle-visualizer": "Visualiseur de cycle",
|
||||||
|
"disable-bluetooth": "Désactiver le Bluetooth",
|
||||||
|
"disable-dnd": "Désactiver le mode Ne pas déranger",
|
||||||
|
"disable-wifi": "Désactiver le Wi-Fi",
|
||||||
|
"disconnect-vpn": "Se déconnecter de {name}",
|
||||||
|
"enable-bluetooth": "Activer le Bluetooth",
|
||||||
|
"enable-dnd": "Activer le mode Ne pas déranger",
|
||||||
|
"enable-wifi": "Activer le Wi-Fi",
|
||||||
|
"next": "Suivant",
|
||||||
|
"open-calendar": "Ouvrir le calendrier",
|
||||||
|
"open-display-settings": "Paramètres d'affichage",
|
||||||
|
"open-launcher": "Ouvrir le lanceur",
|
||||||
|
"open-mixer": "Table de mixage audio",
|
||||||
|
"open-settings": "Ouvrir les paramètres",
|
||||||
|
"pause": "Pause",
|
||||||
|
"play": "Jouer",
|
||||||
|
"previous": "Précédent",
|
||||||
|
"random-wallpaper": "Fond d'écran aléatoire",
|
||||||
|
"toggle-mute": "Activer/désactiver le mode muet",
|
||||||
|
"widget-settings": "Paramètres du widget"
|
||||||
|
},
|
||||||
"dock": {
|
"dock": {
|
||||||
"menu": {
|
"menu": {
|
||||||
"close": "Fermer",
|
"close": "Fermer",
|
||||||
@@ -564,6 +634,7 @@
|
|||||||
},
|
},
|
||||||
"workspace-labels": {
|
"workspace-labels": {
|
||||||
"index": "Index",
|
"index": "Index",
|
||||||
|
"index+name": "Index et Nom",
|
||||||
"name": "Nom",
|
"name": "Nom",
|
||||||
"none": "Aucun"
|
"none": "Aucun"
|
||||||
}
|
}
|
||||||
@@ -579,8 +650,8 @@
|
|||||||
"search": "Rechercher...",
|
"search": "Rechercher...",
|
||||||
"search-icons": "ex: noctalia, niri, batterie, nuage",
|
"search-icons": "ex: noctalia, niri, batterie, nuage",
|
||||||
"search-launcher": "Rechercher des entrées... ou utilisez > pour les commandes",
|
"search-launcher": "Rechercher des entrées... ou utilisez > pour les commandes",
|
||||||
"search-wallpapers": "Tapez pour filtrer les fonds d'écran...",
|
|
||||||
"search-wallhaven": "Rechercher sur Wallhaven...",
|
"search-wallhaven": "Rechercher sur Wallhaven...",
|
||||||
|
"search-wallpapers": "Tapez pour filtrer les fonds d'écran...",
|
||||||
"select": "Sélectionner",
|
"select": "Sélectionner",
|
||||||
"test": "Tester"
|
"test": "Tester"
|
||||||
},
|
},
|
||||||
@@ -721,6 +792,11 @@
|
|||||||
"label": "Périphériques audio"
|
"label": "Périphériques audio"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"external-mixer": {
|
||||||
|
"description": "Entrez la commande ou le chemin d'accès de l'application à lancer lors de l'activation de la fonctionnalité de mixeur audio externe.",
|
||||||
|
"label": "Commande de mixeur audio externe",
|
||||||
|
"placeholder": "pwvucontrol || pavucontrol"
|
||||||
|
},
|
||||||
"media": {
|
"media": {
|
||||||
"excluded-player": {
|
"excluded-player": {
|
||||||
"description": "Ajoutez des mots-clés pour les lecteurs que le système doit ignorer. Chaque mot-clé doit être sur une nouvelle ligne.",
|
"description": "Ajoutez des mots-clés pour les lecteurs que le système doit ignorer. Chaque mot-clé doit être sur une nouvelle ligne.",
|
||||||
@@ -795,6 +871,10 @@
|
|||||||
"description": "Ajustez l'opacité de l'arrière-plan de la barre.",
|
"description": "Ajustez l'opacité de l'arrière-plan de la barre.",
|
||||||
"label": "Opacité de l'arrière-plan"
|
"label": "Opacité de l'arrière-plan"
|
||||||
},
|
},
|
||||||
|
"capsule-opacity": {
|
||||||
|
"description": "Définir le niveau d'opacité des arrière-plans des widgets quand la capsule est affichée.",
|
||||||
|
"label": "Opacité de la capsule"
|
||||||
|
},
|
||||||
"density": {
|
"density": {
|
||||||
"description": "Ajustez le remplissage de la barre pour un aspect compact ou spacieux.",
|
"description": "Ajustez le remplissage de la barre pour un aspect compact ou spacieux.",
|
||||||
"label": "Densité de la barre"
|
"label": "Densité de la barre"
|
||||||
@@ -887,6 +967,41 @@
|
|||||||
"label": "Mode sombre"
|
"label": "Mode sombre"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"delete": {
|
||||||
|
"error": {
|
||||||
|
"description": "Échec de la suppression de {scheme}",
|
||||||
|
"title": "Échec de la suppression"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} supprimé avec succès",
|
||||||
|
"title": "Jeu de couleurs supprimé"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"download": {
|
||||||
|
"button": "Télécharger plus",
|
||||||
|
"delete": "Supprimer",
|
||||||
|
"download": "Télécharger",
|
||||||
|
"downloading": "Téléchargement...",
|
||||||
|
"empty": "Aucun jeu de couleurs disponible",
|
||||||
|
"error": {
|
||||||
|
"api-error": "Erreur API: {status}",
|
||||||
|
"description": "Échec du téléchargement de {scheme}",
|
||||||
|
"download-failed": "Échec du téléchargement avec le code de sortie: {code}",
|
||||||
|
"invalid-response": "Format de réponse API invalide",
|
||||||
|
"no-files": "Aucun fichier trouvé pour le jeu de couleurs",
|
||||||
|
"parse-failed": "Échec de l'analyse de la réponse API: {error}",
|
||||||
|
"rate-limit": "Limite de débit de l'API GitHub dépassée",
|
||||||
|
"title": "Échec du téléchargement"
|
||||||
|
},
|
||||||
|
"fetching": "Récupération des jeux de couleurs disponibles...",
|
||||||
|
"installed": "Installé",
|
||||||
|
"refresh": "Actualiser",
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} téléchargé avec succès",
|
||||||
|
"title": "Jeu de couleurs téléchargé"
|
||||||
|
},
|
||||||
|
"title": "Télécharger des jeux de couleurs"
|
||||||
|
},
|
||||||
"predefined": {
|
"predefined": {
|
||||||
"generate-templates": {
|
"generate-templates": {
|
||||||
"description": "Génère des modèles Matugen (GTK, thèmes de terminal, etc.) lors de l'utilisation de schémas de couleurs prédéfinis.",
|
"description": "Génère des modèles Matugen (GTK, thèmes de terminal, etc.) lors de l'utilisation de schémas de couleurs prédéfinis.",
|
||||||
@@ -929,6 +1044,10 @@
|
|||||||
"description": "Écrire {filepath}. Le thème Comfy doit être installé et activé manuellement.",
|
"description": "Écrire {filepath}. Le thème Comfy doit être installé et activé manuellement.",
|
||||||
"description-missing": "Nécessite l'installation de {app}"
|
"description-missing": "Nécessite l'installation de {app}"
|
||||||
},
|
},
|
||||||
|
"telegram": {
|
||||||
|
"description": "Écrire {filepath}.",
|
||||||
|
"description-missing": "Nécessite l'installation de {app}"
|
||||||
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
"description": "Écrire {filepath} et recharger",
|
"description": "Écrire {filepath} et recharger",
|
||||||
"description-missing": "Nécessite que le lanceur {app} soit installé"
|
"description-missing": "Nécessite que le lanceur {app} soit installé"
|
||||||
@@ -1125,6 +1244,10 @@
|
|||||||
"description": "Ajustez l'opacité de l'arrière-plan du dock.",
|
"description": "Ajustez l'opacité de l'arrière-plan du dock.",
|
||||||
"label": "Opacité de l'arrière-plan"
|
"label": "Opacité de l'arrière-plan"
|
||||||
},
|
},
|
||||||
|
"border-radius": {
|
||||||
|
"description": "Ajuster le rayon de bordure du dock.",
|
||||||
|
"label": "Rayon de bordure"
|
||||||
|
},
|
||||||
"colorize-icons": {
|
"colorize-icons": {
|
||||||
"description": "Appliquer les couleurs du thème aux icônes d'applications du dock (applications non focalisées uniquement).",
|
"description": "Appliquer les couleurs du thème aux icônes d'applications du dock (applications non focalisées uniquement).",
|
||||||
"label": "Coloriser les icônes"
|
"label": "Coloriser les icônes"
|
||||||
@@ -1276,6 +1399,10 @@
|
|||||||
"description": "Ajustez l'opacité de l'arrière-plan du lanceur.",
|
"description": "Ajustez l'opacité de l'arrière-plan du lanceur.",
|
||||||
"label": "Opacité de l'arrière-plan"
|
"label": "Opacité de l'arrière-plan"
|
||||||
},
|
},
|
||||||
|
"clip-preview": {
|
||||||
|
"description": "Afficher un aperçu du contenu du presse-papiers lors de l'utilisation de la commande >clip.",
|
||||||
|
"label": "Activer l'aperçu du presse-papiers"
|
||||||
|
},
|
||||||
"clipboard-history": {
|
"clipboard-history": {
|
||||||
"description": "Accédez aux éléments précédemment copiés depuis le lanceur.",
|
"description": "Accédez aux éléments précédemment copiés depuis le lanceur.",
|
||||||
"label": "Activer l'historique du presse-papiers"
|
"label": "Activer l'historique du presse-papiers"
|
||||||
@@ -1364,6 +1491,10 @@
|
|||||||
"description": "Choisissez votre unité de température préférée.",
|
"description": "Choisissez votre unité de température préférée.",
|
||||||
"label": "Météo"
|
"label": "Météo"
|
||||||
},
|
},
|
||||||
|
"show-effects": {
|
||||||
|
"description": "Affiche des effets visuels supplémentaires (comme la pluie, la neige ou la foudre) sur la carte météo.",
|
||||||
|
"label": "Afficher les effets météorologiques"
|
||||||
|
},
|
||||||
"show-in-calendar": {
|
"show-in-calendar": {
|
||||||
"description": "Afficher les prévisions météo quotidiennes directement dans votre vue calendrier.",
|
"description": "Afficher les prévisions météo quotidiennes directement dans votre vue calendrier.",
|
||||||
"label": "Afficher la météo dans le calendrier"
|
"label": "Afficher la météo dans le calendrier"
|
||||||
@@ -1379,6 +1510,10 @@
|
|||||||
"description": "Verrouiller automatiquement l'écran lors de la mise en veille du système.",
|
"description": "Verrouiller automatiquement l'écran lors de la mise en veille du système.",
|
||||||
"label": "Verrouiller à la suspension"
|
"label": "Verrouiller à la suspension"
|
||||||
},
|
},
|
||||||
|
"show-hibernate": {
|
||||||
|
"description": "Afficher l’option 'hiberner' dans les actions d’énergie.",
|
||||||
|
"label": "Afficher l’hibernation"
|
||||||
|
},
|
||||||
"title": "Écran de verrouillage"
|
"title": "Écran de verrouillage"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -1663,6 +1798,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"user-interface": {
|
"user-interface": {
|
||||||
|
"allow-panels-without-bar": {
|
||||||
|
"description": "Quand cette option est activée, les panneaux peuvent s'ouvrir sur n'importe quel écran. Quand elle est désactivée, les panneaux s'ouvriront uniquement sur les écrans qui ont une barre, ce qui peut réduire l'utilisation de la mémoire.",
|
||||||
|
"label": "Autoriser les panneaux sur les écrans sans barre."
|
||||||
|
},
|
||||||
"animation-disable": {
|
"animation-disable": {
|
||||||
"description": "Désactiver toutes les animations pour une expérience plus rapide et plus réactive.",
|
"description": "Désactiver toutes les animations pour une expérience plus rapide et plus réactive.",
|
||||||
"label": "Désactiver les animations de l'interface utilisateur"
|
"label": "Désactiver les animations de l'interface utilisateur"
|
||||||
@@ -1870,19 +2009,6 @@
|
|||||||
"low": "Batterie faible",
|
"low": "Batterie faible",
|
||||||
"low-desc": "La batterie est à {percent}%. Veuillez brancher le chargeur."
|
"low-desc": "La batterie est à {percent}%. Veuillez brancher le chargeur."
|
||||||
},
|
},
|
||||||
"battery-manager": {
|
|
||||||
"initial-setup": "Configuration initiale requise",
|
|
||||||
"install-failed": "Échec de l'installation",
|
|
||||||
"install-missing": "Fichiers requis manquants",
|
|
||||||
"install-success": "Installation réussie",
|
|
||||||
"install-unsupported": "Système non pris en charge",
|
|
||||||
"set-failed": "Échec de la définition du seuil de batterie",
|
|
||||||
"set-success-desc": "Seuil de batterie défini à {percent}%",
|
|
||||||
"title": "Seuil de batterie",
|
|
||||||
"uninstall-failed": "Échec de la désinstallation",
|
|
||||||
"uninstall-setup": "Désinstallation, authentification requise",
|
|
||||||
"uninstall-success": "Désinstallation réussie"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"disabled": "Désactivé",
|
"disabled": "Désactivé",
|
||||||
"enabled": "Activé"
|
"enabled": "Activé"
|
||||||
@@ -1951,6 +2077,10 @@
|
|||||||
"title-matugen": "Le traitement du modèle Matugen a échoué.",
|
"title-matugen": "Le traitement du modèle Matugen a échoué.",
|
||||||
"title-predefined": "Le traitement du schéma de couleurs prédéfini a échoué."
|
"title-predefined": "Le traitement du schéma de couleurs prédéfini a échoué."
|
||||||
},
|
},
|
||||||
|
"vpn": {
|
||||||
|
"connected": "Connecté à '{name}'",
|
||||||
|
"disconnected": "Déconnecté de '{name}'"
|
||||||
|
},
|
||||||
"wallpaper-colors": {
|
"wallpaper-colors": {
|
||||||
"disabled": "Couleurs du fond d'écran désactivées",
|
"disabled": "Couleurs du fond d'écran désactivées",
|
||||||
"enabled": "Couleurs du fond d'écran activées",
|
"enabled": "Couleurs du fond d'écran activées",
|
||||||
@@ -1984,6 +2114,7 @@
|
|||||||
"input-muted": "Couper l'entrée audio",
|
"input-muted": "Couper l'entrée audio",
|
||||||
"keep-awake": "Rester éveillé",
|
"keep-awake": "Rester éveillé",
|
||||||
"keyboard-layout": "Disposition du clavier {layout}",
|
"keyboard-layout": "Disposition du clavier {layout}",
|
||||||
|
"manage-vpn": "Gérer les connexions VPN",
|
||||||
"manage-wifi": "Gérer le Wi-Fi",
|
"manage-wifi": "Gérer le Wi-Fi",
|
||||||
"microphone-volume-at": "Volume du microphone à {volume}%.\nClic gauche pour les paramètres. Clic droit pour activer/désactiver le mode muet.\nFaites défiler pour modifier le volume.",
|
"microphone-volume-at": "Volume du microphone à {volume}%.\nClic gauche pour les paramètres. Clic droit pour activer/désactiver le mode muet.\nFaites défiler pour modifier le volume.",
|
||||||
"move-to-center-section": "Déplacer vers la section centrale",
|
"move-to-center-section": "Déplacer vers la section centrale",
|
||||||
@@ -2047,6 +2178,11 @@
|
|||||||
"label": "Catégories",
|
"label": "Catégories",
|
||||||
"people": "Personnes"
|
"people": "Personnes"
|
||||||
},
|
},
|
||||||
|
"order": {
|
||||||
|
"asc": "Croissant",
|
||||||
|
"desc": "Décroissant",
|
||||||
|
"label": "Ordre"
|
||||||
|
},
|
||||||
"purity": {
|
"purity": {
|
||||||
"all": "Tout",
|
"all": "Tout",
|
||||||
"label": "Filtre de contenu",
|
"label": "Filtre de contenu",
|
||||||
@@ -2071,21 +2207,16 @@
|
|||||||
"toplist": "Top liste",
|
"toplist": "Top liste",
|
||||||
"views": "Vues"
|
"views": "Vues"
|
||||||
},
|
},
|
||||||
"order": {
|
|
||||||
"asc": "Croissant",
|
|
||||||
"desc": "Décroissant",
|
|
||||||
"label": "Ordre"
|
|
||||||
},
|
|
||||||
"wallhaven-settings": {
|
|
||||||
"apply": "Appliquer",
|
|
||||||
"title": "Paramètres Wallhaven"
|
|
||||||
},
|
|
||||||
"source": {
|
"source": {
|
||||||
"label": "Source",
|
"label": "Source",
|
||||||
"local": "Local",
|
"local": "Local",
|
||||||
"wallhaven": "Wallhaven"
|
"wallhaven": "Wallhaven"
|
||||||
},
|
},
|
||||||
"title": "Sélecteur de fond d'écran"
|
"title": "Sélecteur de fond d'écran",
|
||||||
|
"wallhaven-settings": {
|
||||||
|
"apply": "Appliquer",
|
||||||
|
"title": "Paramètres Wallhaven"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"transitions": {
|
"transitions": {
|
||||||
"disc": "Disque",
|
"disc": "Disque",
|
||||||
@@ -2096,10 +2227,11 @@
|
|||||||
"wipe": "Balayage"
|
"wipe": "Balayage"
|
||||||
},
|
},
|
||||||
"try-different-search": "Essayez une autre requête de recherche.",
|
"try-different-search": "Essayez une autre requête de recherche.",
|
||||||
|
"unknown": "Inconnu(e)",
|
||||||
"wallhaven": {
|
"wallhaven": {
|
||||||
"loading": "Chargement des fonds d'écran...",
|
"loading": "Chargement des fonds d'écran...",
|
||||||
"no-results": "Aucun fond d'écran trouvé. Essayez une autre requête de recherche.",
|
"no-results": "Aucun fond d'écran trouvé. Essayez une autre requête de recherche.",
|
||||||
"page": "Page {current} sur {total}"
|
"page": "{current} sur {total}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weather": {
|
"weather": {
|
||||||
@@ -2209,6 +2341,7 @@
|
|||||||
},
|
},
|
||||||
"wifi": {
|
"wifi": {
|
||||||
"panel": {
|
"panel": {
|
||||||
|
"available-networks": "Réseaux disponibles",
|
||||||
"connect": "Connecter",
|
"connect": "Connecter",
|
||||||
"connected": "Connecté",
|
"connected": "Connecté",
|
||||||
"disabled": "Le Wi-Fi est désactivé",
|
"disabled": "Le Wi-Fi est désactivé",
|
||||||
@@ -2219,6 +2352,7 @@
|
|||||||
"forget": "Oublier",
|
"forget": "Oublier",
|
||||||
"forget-network": "Oublier ce réseau ?",
|
"forget-network": "Oublier ce réseau ?",
|
||||||
"forgetting": "Oubli en cours...",
|
"forgetting": "Oubli en cours...",
|
||||||
|
"known-networks": "Réseaux connus",
|
||||||
"no-networks": "Aucun réseau trouvé",
|
"no-networks": "Aucun réseau trouvé",
|
||||||
"password": "Mot de passe",
|
"password": "Mot de passe",
|
||||||
"saved": "Enregistré",
|
"saved": "Enregistré",
|
||||||
|
|||||||
@@ -123,10 +123,6 @@
|
|||||||
"stream-description": "Voer een commando in dat continu wordt uitgevoerd."
|
"stream-description": "Voer een commando in dat continu wordt uitgevoerd."
|
||||||
},
|
},
|
||||||
"dynamic-text": "Dynamische tekst",
|
"dynamic-text": "Dynamische tekst",
|
||||||
"hide-vertical": {
|
|
||||||
"description": "Indien ingeschakeld wordt de tekst uit de commando-uitvoer niet getoond wanneer de balk verticaal is (links of rechts).",
|
|
||||||
"label": "Tekst verbergen in verticale balk"
|
|
||||||
},
|
|
||||||
"icon": {
|
"icon": {
|
||||||
"description": "Selecteer een pictogram uit de bibliotheek.",
|
"description": "Selecteer een pictogram uit de bibliotheek.",
|
||||||
"label": "Pictogram"
|
"label": "Pictogram"
|
||||||
@@ -136,6 +132,14 @@
|
|||||||
"label": "Linkermuisklik",
|
"label": "Linkermuisklik",
|
||||||
"update-text": "Tekst bijwerken bij linksklik"
|
"update-text": "Tekst bijwerken bij linksklik"
|
||||||
},
|
},
|
||||||
|
"max-text-length-horizontal": {
|
||||||
|
"description": "Maximaal aantal tekens dat moet worden weergegeven in horizontale balk (0 om tekst te verbergen)",
|
||||||
|
"label": "Max. tekstlengte (horizontaal)"
|
||||||
|
},
|
||||||
|
"max-text-length-vertical": {
|
||||||
|
"description": "Maximaal aantal tekens dat moet worden weergegeven in verticale balk (0 om tekst te verbergen)",
|
||||||
|
"label": "Max. tekstlengte (verticaal)"
|
||||||
|
},
|
||||||
"middle-click": {
|
"middle-click": {
|
||||||
"description": "Commando dat wordt uitgevoerd wanneer met de middelste muisknop op de knop wordt geklikt.",
|
"description": "Commando dat wordt uitgevoerd wanneer met de middelste muisknop op de knop wordt geklikt.",
|
||||||
"label": "Middelste muisklik",
|
"label": "Middelste muisklik",
|
||||||
@@ -157,6 +161,23 @@
|
|||||||
"text-stream": {
|
"text-stream": {
|
||||||
"description": "Gestreamde regels uit het commando worden als tekst op de knop weergegeven.",
|
"description": "Gestreamde regels uit het commando worden als tekst op de knop weergegeven.",
|
||||||
"label": "Stream"
|
"label": "Stream"
|
||||||
|
},
|
||||||
|
"wheel": {
|
||||||
|
"description": "Commando om uit te voeren wanneer het scrollwiel wordt gebruikt.\nGebruik $delta voor de scrollwiel-delta in het commando",
|
||||||
|
"label": "Scrollwiel",
|
||||||
|
"update-text": "Weergegeven tekst bij scrollen bijwerken"
|
||||||
|
},
|
||||||
|
"wheel-down": {
|
||||||
|
"description": "Commando om uit te voeren wanneer het scrollwiel omlaag wordt bewogen.",
|
||||||
|
"label": "Scrollwiel omlaag commando"
|
||||||
|
},
|
||||||
|
"wheel-mode-separate": {
|
||||||
|
"description": "Afzonderlijke commando's inschakelen voor scrollwiel omhoog en omlaag",
|
||||||
|
"label": "Afzonderlijke scrollwielcommando's"
|
||||||
|
},
|
||||||
|
"wheel-up": {
|
||||||
|
"description": "Commando om uit te voeren wanneer het scrollwiel omhoog wordt bewogen.",
|
||||||
|
"label": "Scrollwiel omhoog commando"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dialog": {
|
"dialog": {
|
||||||
@@ -202,6 +223,10 @@
|
|||||||
"description": "Toon de albumhoes van het huidige nummer.",
|
"description": "Toon de albumhoes van het huidige nummer.",
|
||||||
"label": "Albumhoes tonen"
|
"label": "Albumhoes tonen"
|
||||||
},
|
},
|
||||||
|
"show-artist-first": {
|
||||||
|
"description": "Toon artiest - titel in plaats van titel - artiest.",
|
||||||
|
"label": "Toon eerst de artiest"
|
||||||
|
},
|
||||||
"show-visualizer": {
|
"show-visualizer": {
|
||||||
"description": "Toon een audiovisualizer wanneer muziek wordt afgespeeld.",
|
"description": "Toon een audiovisualizer wanneer muziek wordt afgespeeld.",
|
||||||
"label": "Visualizer tonen"
|
"label": "Visualizer tonen"
|
||||||
@@ -259,6 +284,10 @@
|
|||||||
"disk-critical-threshold": {
|
"disk-critical-threshold": {
|
||||||
"label": "Opslagruimte (Kritiek)"
|
"label": "Opslagruimte (Kritiek)"
|
||||||
},
|
},
|
||||||
|
"disk-path": {
|
||||||
|
"description": "Selecteer welk schijfkoppelpunt u wilt monitoren.",
|
||||||
|
"label": "Schijfpad"
|
||||||
|
},
|
||||||
"disk-warning-threshold": {
|
"disk-warning-threshold": {
|
||||||
"label": "Opslagruimte (Waarschuwing)"
|
"label": "Opslagruimte (Waarschuwing)"
|
||||||
},
|
},
|
||||||
@@ -314,13 +343,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"taskbar-grouped": {
|
"taskbar-grouped": {
|
||||||
"show-numbers-only-when-occupied": {
|
"show-labels-only-when-occupied": {
|
||||||
"description": "Toon werkruimtenummers alleen voor werkruimten met open vensters.",
|
"description": "Toon alleen de werkomgevinglabels voor werkomgevingen met open vensters.",
|
||||||
"label": "Nummers alleen tonen wanneer bezet"
|
"label": "Label alleen tonen wanneer bezet"
|
||||||
},
|
|
||||||
"show-workspace-numbers": {
|
|
||||||
"description": "Toon werkruimtenummers in de linkerbovenhoek van taakgroepen.",
|
|
||||||
"label": "Werkruimtenummers tonen"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
@@ -363,13 +388,6 @@
|
|||||||
"health": "Gezondheid: {percent}%",
|
"health": "Gezondheid: {percent}%",
|
||||||
"idle": "In rust.",
|
"idle": "In rust.",
|
||||||
"no-battery-detected": "Geen batterij gedetecteerd.",
|
"no-battery-detected": "Geen batterij gedetecteerd.",
|
||||||
"panel": {
|
|
||||||
"balanced": "Gebalanceerd ({percent}%)",
|
|
||||||
"disabled": "Batterijbeheer uitgeschakeld",
|
|
||||||
"full": "Volledige capaciteit ({percent}%)",
|
|
||||||
"lifespan": "Verlengde levensduur ({percent}%)",
|
|
||||||
"title": "Batterijdrempel"
|
|
||||||
},
|
|
||||||
"plugged-in": "Op netstroom.",
|
"plugged-in": "Op netstroom.",
|
||||||
"time-left": "Resterende tijd: {time}.",
|
"time-left": "Resterende tijd: {time}.",
|
||||||
"time-until-full": "Tijd tot vol: {time}."
|
"time-until-full": "Tijd tot vol: {time}."
|
||||||
@@ -398,9 +416,61 @@
|
|||||||
"loading": "Weer laden…"
|
"loading": "Weer laden…"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"error": {
|
||||||
|
"fetch-failed": "Kan changeloggegevens niet laden. Probeer het later opnieuw.",
|
||||||
|
"rate-limit": "GitHub-limiet bereikt. Probeer het over enkele minuten opnieuw."
|
||||||
|
},
|
||||||
|
"panel": {
|
||||||
|
"buttons": {
|
||||||
|
"discord": "Word lid van onze Discord",
|
||||||
|
"dismiss": "Ok"
|
||||||
|
},
|
||||||
|
"empty": "Er zijn nog geen release-opmerkingen beschikbaar.",
|
||||||
|
"highlight-title": "Hoogtepunten",
|
||||||
|
"section": {
|
||||||
|
"released": "Uitgebracht op {date}",
|
||||||
|
"version": "Versie {version}"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"fresh": "Bedankt voor het installeren van Noctalia! Dit zit er in deze build.",
|
||||||
|
"updated": "Bijgewerkt vanaf {previousVersion}"
|
||||||
|
},
|
||||||
|
"title": "Wat is er nieuw in {version}",
|
||||||
|
"version": {
|
||||||
|
"new-user": "Nieuwe installatie"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"tooltip": "Kalender openen"
|
"tooltip": "Kalender openen"
|
||||||
},
|
},
|
||||||
|
"context-menu": {
|
||||||
|
"activate-app": "Activeer {app}",
|
||||||
|
"clear-history": "Geschiedenis wissen",
|
||||||
|
"close-app": "Sluit {app}",
|
||||||
|
"connect-vpn": "Verbinding maken met {name}",
|
||||||
|
"cycle-visualizer": "Cyclusvisualisatie",
|
||||||
|
"disable-bluetooth": "Bluetooth uitschakelen",
|
||||||
|
"disable-dnd": "Niet Storen uitschakelen",
|
||||||
|
"disable-wifi": "Wi-Fi uitschakelen",
|
||||||
|
"disconnect-vpn": "Verbinding met {name} verbreken",
|
||||||
|
"enable-bluetooth": "Bluetooth inschakelen",
|
||||||
|
"enable-dnd": "Niet Storen inschakelen",
|
||||||
|
"enable-wifi": "Wi-Fi inschakelen",
|
||||||
|
"next": "Volgende",
|
||||||
|
"open-calendar": "Open agenda",
|
||||||
|
"open-display-settings": "Beeldscherminstellingen",
|
||||||
|
"open-launcher": "Launcher openen",
|
||||||
|
"open-mixer": "Audiomixer",
|
||||||
|
"open-settings": "Instellingen openen",
|
||||||
|
"pause": "Pauze",
|
||||||
|
"play": "Spelen",
|
||||||
|
"previous": "Vorige",
|
||||||
|
"random-wallpaper": "Willekeurige achtergrond",
|
||||||
|
"toggle-mute": "Dempen aan/uit",
|
||||||
|
"widget-settings": "Widgetinstellingen"
|
||||||
|
},
|
||||||
"dock": {
|
"dock": {
|
||||||
"menu": {
|
"menu": {
|
||||||
"close": "Sluiten",
|
"close": "Sluiten",
|
||||||
@@ -564,6 +634,7 @@
|
|||||||
},
|
},
|
||||||
"workspace-labels": {
|
"workspace-labels": {
|
||||||
"index": "Index",
|
"index": "Index",
|
||||||
|
"index+name": "Index en Naam",
|
||||||
"name": "Naam",
|
"name": "Naam",
|
||||||
"none": "Geen"
|
"none": "Geen"
|
||||||
}
|
}
|
||||||
@@ -579,8 +650,8 @@
|
|||||||
"search": "Zoeken...",
|
"search": "Zoeken...",
|
||||||
"search-icons": "bijv. noctalia, niri, battery, cloud",
|
"search-icons": "bijv. noctalia, niri, battery, cloud",
|
||||||
"search-launcher": "Items zoeken... of gebruik > voor commando's",
|
"search-launcher": "Items zoeken... of gebruik > voor commando's",
|
||||||
"search-wallpapers": "Typ om achtergronden te filteren...",
|
|
||||||
"search-wallhaven": "Zoek in Wallhaven...",
|
"search-wallhaven": "Zoek in Wallhaven...",
|
||||||
|
"search-wallpapers": "Typ om achtergronden te filteren...",
|
||||||
"select": "Selecteren",
|
"select": "Selecteren",
|
||||||
"test": "Test"
|
"test": "Test"
|
||||||
},
|
},
|
||||||
@@ -721,6 +792,11 @@
|
|||||||
"label": "Audio-apparaten"
|
"label": "Audio-apparaten"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"external-mixer": {
|
||||||
|
"description": "Voer het commando of het applicatiepad in om te starten bij het activeren van de externe audiomixerfunctie.",
|
||||||
|
"label": "Extern audio mixer commando",
|
||||||
|
"placeholder": "pwvucontrol || pavucontrol"
|
||||||
|
},
|
||||||
"media": {
|
"media": {
|
||||||
"excluded-player": {
|
"excluded-player": {
|
||||||
"description": "Voeg trefwoorden toe voor spelers die het systeem moet negeren. Elk trefwoord moet op een nieuwe regel staan.",
|
"description": "Voeg trefwoorden toe voor spelers die het systeem moet negeren. Elk trefwoord moet op een nieuwe regel staan.",
|
||||||
@@ -795,6 +871,10 @@
|
|||||||
"description": "Pas de achtergronddekking van de balk aan.",
|
"description": "Pas de achtergronddekking van de balk aan.",
|
||||||
"label": "Achtergronddekking"
|
"label": "Achtergronddekking"
|
||||||
},
|
},
|
||||||
|
"capsule-opacity": {
|
||||||
|
"description": "Stel het doorzichtigheidsniveau in voor widget-achtergronden wanneer capsule wordt getoond.",
|
||||||
|
"label": "Capsule-doorzichtigheid"
|
||||||
|
},
|
||||||
"density": {
|
"density": {
|
||||||
"description": "Pas de opvulling van de balk aan voor een compacte of ruime uitstraling.",
|
"description": "Pas de opvulling van de balk aan voor een compacte of ruime uitstraling.",
|
||||||
"label": "Balkdichtheid"
|
"label": "Balkdichtheid"
|
||||||
@@ -887,6 +967,41 @@
|
|||||||
"label": "Donkere modus"
|
"label": "Donkere modus"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"delete": {
|
||||||
|
"error": {
|
||||||
|
"description": "Verwijderen van {scheme} mislukt",
|
||||||
|
"title": "Verwijderen mislukt"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} succesvol verwijderd",
|
||||||
|
"title": "Kleurenschema verwijderd"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"download": {
|
||||||
|
"button": "Meer downloaden",
|
||||||
|
"delete": "Verwijderen",
|
||||||
|
"download": "Downloaden",
|
||||||
|
"downloading": "Downloaden...",
|
||||||
|
"empty": "Geen kleurenschema's beschikbaar",
|
||||||
|
"error": {
|
||||||
|
"api-error": "API-fout: {status}",
|
||||||
|
"description": "Download van {scheme} mislukt",
|
||||||
|
"download-failed": "Download mislukt met afsluitcode: {code}",
|
||||||
|
"invalid-response": "Ongeldig API-antwoordformaat",
|
||||||
|
"no-files": "Geen bestanden gevonden voor schema",
|
||||||
|
"parse-failed": "Fout bij parseren van API-antwoord: {error}",
|
||||||
|
"rate-limit": "GitHub API-snelheidslimiet overschreden",
|
||||||
|
"title": "Download mislukt"
|
||||||
|
},
|
||||||
|
"fetching": "Beschikbare kleurenschema's ophalen...",
|
||||||
|
"installed": "Geïnstalleerd",
|
||||||
|
"refresh": "Vernieuwen",
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} succesvol gedownload",
|
||||||
|
"title": "Kleurenschema gedownload"
|
||||||
|
},
|
||||||
|
"title": "Kleurenschema's downloaden"
|
||||||
|
},
|
||||||
"predefined": {
|
"predefined": {
|
||||||
"generate-templates": {
|
"generate-templates": {
|
||||||
"description": "Genereer Matugen-sjablonen (GTK, terminalthema's, enz.) bij gebruik van vooraf gedefinieerde kleurenschema's.",
|
"description": "Genereer Matugen-sjablonen (GTK, terminalthema's, enz.) bij gebruik van vooraf gedefinieerde kleurenschema's.",
|
||||||
@@ -929,6 +1044,10 @@
|
|||||||
"description": "Schrijf {filepath}. Het Comfy-thema moet handmatig worden geïnstalleerd en geactiveerd.",
|
"description": "Schrijf {filepath}. Het Comfy-thema moet handmatig worden geïnstalleerd en geactiveerd.",
|
||||||
"description-missing": "Vereist dat {app} is geïnstalleerd."
|
"description-missing": "Vereist dat {app} is geïnstalleerd."
|
||||||
},
|
},
|
||||||
|
"telegram": {
|
||||||
|
"description": "Schrijf {filepath}.",
|
||||||
|
"description-missing": "Vereist dat {app} is geïnstalleerd."
|
||||||
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
"description": "Schrijf {filepath} en herlaad.",
|
"description": "Schrijf {filepath} en herlaad.",
|
||||||
"description-missing": "Vereist dat {app} is geïnstalleerd."
|
"description-missing": "Vereist dat {app} is geïnstalleerd."
|
||||||
@@ -1125,6 +1244,10 @@
|
|||||||
"description": "Pas de achtergronddekking van de dock aan.",
|
"description": "Pas de achtergronddekking van de dock aan.",
|
||||||
"label": "Achtergronddekking"
|
"label": "Achtergronddekking"
|
||||||
},
|
},
|
||||||
|
"border-radius": {
|
||||||
|
"description": "Pas de randradius van het dock aan.",
|
||||||
|
"label": "Randradius"
|
||||||
|
},
|
||||||
"colorize-icons": {
|
"colorize-icons": {
|
||||||
"description": "Pas themakleuren toe op dock-pictogrammen (alleen niet-focuste apps).",
|
"description": "Pas themakleuren toe op dock-pictogrammen (alleen niet-focuste apps).",
|
||||||
"label": "Pictogrammen inkleuren"
|
"label": "Pictogrammen inkleuren"
|
||||||
@@ -1276,6 +1399,10 @@
|
|||||||
"description": "Pas de achtergronddekking van de launcher aan.",
|
"description": "Pas de achtergronddekking van de launcher aan.",
|
||||||
"label": "Achtergronddekking"
|
"label": "Achtergronddekking"
|
||||||
},
|
},
|
||||||
|
"clip-preview": {
|
||||||
|
"description": "Toon een voorbeeld van de inhoud van het klembord bij gebruik van het >clip-commando.",
|
||||||
|
"label": "Klembordvoorbeeld inschakelen"
|
||||||
|
},
|
||||||
"clipboard-history": {
|
"clipboard-history": {
|
||||||
"description": "Toegang tot eerder gekopieerde items vanuit de launcher.",
|
"description": "Toegang tot eerder gekopieerde items vanuit de launcher.",
|
||||||
"label": "Klembordgeschiedenis inschakelen"
|
"label": "Klembordgeschiedenis inschakelen"
|
||||||
@@ -1364,6 +1491,10 @@
|
|||||||
"description": "Kies je voorkeurseenheid voor temperatuur.",
|
"description": "Kies je voorkeurseenheid voor temperatuur.",
|
||||||
"label": "Weer"
|
"label": "Weer"
|
||||||
},
|
},
|
||||||
|
"show-effects": {
|
||||||
|
"description": "Toont extra visuele effecten (zoals regen, sneeuw of bliksem) op de weerkaart.",
|
||||||
|
"label": "Weerseffecten weergeven"
|
||||||
|
},
|
||||||
"show-in-calendar": {
|
"show-in-calendar": {
|
||||||
"description": "Toon de dagelijkse weersverwachting direct in je kalenderview.",
|
"description": "Toon de dagelijkse weersverwachting direct in je kalenderview.",
|
||||||
"label": "Weer in kalender weergeven"
|
"label": "Weer in kalender weergeven"
|
||||||
@@ -1379,6 +1510,10 @@
|
|||||||
"description": "Vergrendel het scherm automatisch wanneer het systeem wordt onderbroken.",
|
"description": "Vergrendel het scherm automatisch wanneer het systeem wordt onderbroken.",
|
||||||
"label": "Vergrendelen bij onderbreken"
|
"label": "Vergrendelen bij onderbreken"
|
||||||
},
|
},
|
||||||
|
"show-hibernate": {
|
||||||
|
"description": "De optie 'sluimerstand' tonen in de energieacties.",
|
||||||
|
"label": "Sluimerstand tonen"
|
||||||
|
},
|
||||||
"title": "Vergrendelscherm"
|
"title": "Vergrendelscherm"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -1663,6 +1798,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"user-interface": {
|
"user-interface": {
|
||||||
|
"allow-panels-without-bar": {
|
||||||
|
"description": "Indien ingeschakeld, kunnen panelen op elk scherm worden geopend. Indien uitgeschakeld, worden panelen alleen geopend op schermen met een balk, wat het geheugengebruik kan verminderen.",
|
||||||
|
"label": "Sta panelen toe op schermen zonder balk."
|
||||||
|
},
|
||||||
"animation-disable": {
|
"animation-disable": {
|
||||||
"description": "Schakel alle animaties uit voor een snellere, responsievere ervaring.",
|
"description": "Schakel alle animaties uit voor een snellere, responsievere ervaring.",
|
||||||
"label": "UI-animaties uitschakelen"
|
"label": "UI-animaties uitschakelen"
|
||||||
@@ -1870,19 +2009,6 @@
|
|||||||
"low": "Batterij bijna leeg",
|
"low": "Batterij bijna leeg",
|
||||||
"low-desc": "De batterij is op {percent}%. Sluit de oplader aan."
|
"low-desc": "De batterij is op {percent}%. Sluit de oplader aan."
|
||||||
},
|
},
|
||||||
"battery-manager": {
|
|
||||||
"initial-setup": "Initiële configuratie vereist",
|
|
||||||
"install-failed": "Installatie mislukt",
|
|
||||||
"install-missing": "Vereiste bestanden ontbreken",
|
|
||||||
"install-success": "Succesvol geïnstalleerd",
|
|
||||||
"install-unsupported": "Systeem wordt niet ondersteund",
|
|
||||||
"set-failed": "Instellen van batterijdrempel mislukt",
|
|
||||||
"set-success-desc": "Batterijdrempel ingesteld op {percent}%",
|
|
||||||
"title": "Batterijdrempel",
|
|
||||||
"uninstall-failed": "Deïnstallatie mislukt",
|
|
||||||
"uninstall-setup": "Verwijderen, authenticatie vereist",
|
|
||||||
"uninstall-success": "Succesvol verwijderd"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"disabled": "Uitgeschakeld",
|
"disabled": "Uitgeschakeld",
|
||||||
"enabled": "Ingeschakeld"
|
"enabled": "Ingeschakeld"
|
||||||
@@ -1951,6 +2077,10 @@
|
|||||||
"title-matugen": "Matugen-sjabloonverwerking mislukt",
|
"title-matugen": "Matugen-sjabloonverwerking mislukt",
|
||||||
"title-predefined": "Verwerken van vooraf gedefinieerd kleurenschema mislukt"
|
"title-predefined": "Verwerken van vooraf gedefinieerd kleurenschema mislukt"
|
||||||
},
|
},
|
||||||
|
"vpn": {
|
||||||
|
"connected": "Verbonden met '{name}'",
|
||||||
|
"disconnected": "Verbinding met '{name}' verbroken"
|
||||||
|
},
|
||||||
"wallpaper-colors": {
|
"wallpaper-colors": {
|
||||||
"disabled": "Achtergrondkleuren uitgeschakeld",
|
"disabled": "Achtergrondkleuren uitgeschakeld",
|
||||||
"enabled": "Achtergrondkleuren ingeschakeld",
|
"enabled": "Achtergrondkleuren ingeschakeld",
|
||||||
@@ -1984,6 +2114,7 @@
|
|||||||
"input-muted": "Invoermicrofoon dempen in-/uitschakelen",
|
"input-muted": "Invoermicrofoon dempen in-/uitschakelen",
|
||||||
"keep-awake": "Wakker houden",
|
"keep-awake": "Wakker houden",
|
||||||
"keyboard-layout": "{layout}-toetsenbordindeling",
|
"keyboard-layout": "{layout}-toetsenbordindeling",
|
||||||
|
"manage-vpn": "VPN-verbindingen beheren",
|
||||||
"manage-wifi": "Wi-Fi beheren",
|
"manage-wifi": "Wi-Fi beheren",
|
||||||
"microphone-volume-at": "Microfoonvolume {volume}%\nLinks klikken voor instellingen. Rechts klikken om te dempen.\nScroll om het volume aan te passen.",
|
"microphone-volume-at": "Microfoonvolume {volume}%\nLinks klikken voor instellingen. Rechts klikken om te dempen.\nScroll om het volume aan te passen.",
|
||||||
"move-to-center-section": "Verplaatsen naar middelste sectie",
|
"move-to-center-section": "Verplaatsen naar middelste sectie",
|
||||||
@@ -2047,6 +2178,11 @@
|
|||||||
"label": "Categorieën",
|
"label": "Categorieën",
|
||||||
"people": "Mensen"
|
"people": "Mensen"
|
||||||
},
|
},
|
||||||
|
"order": {
|
||||||
|
"asc": "Oplopend",
|
||||||
|
"desc": "Aflopend",
|
||||||
|
"label": "Volgorde"
|
||||||
|
},
|
||||||
"purity": {
|
"purity": {
|
||||||
"all": "Alles",
|
"all": "Alles",
|
||||||
"label": "Inhoudsfilter",
|
"label": "Inhoudsfilter",
|
||||||
@@ -2071,21 +2207,16 @@
|
|||||||
"toplist": "Toplijst",
|
"toplist": "Toplijst",
|
||||||
"views": "Weergaven"
|
"views": "Weergaven"
|
||||||
},
|
},
|
||||||
"order": {
|
|
||||||
"asc": "Oplopend",
|
|
||||||
"desc": "Aflopend",
|
|
||||||
"label": "Volgorde"
|
|
||||||
},
|
|
||||||
"wallhaven-settings": {
|
|
||||||
"apply": "Toepassen",
|
|
||||||
"title": "Wallhaven-instellingen"
|
|
||||||
},
|
|
||||||
"source": {
|
"source": {
|
||||||
"label": "Bron",
|
"label": "Bron",
|
||||||
"local": "Lokaal",
|
"local": "Lokaal",
|
||||||
"wallhaven": "Wallhaven"
|
"wallhaven": "Wallhaven"
|
||||||
},
|
},
|
||||||
"title": "Achtergrondkiezer"
|
"title": "Achtergrondkiezer",
|
||||||
|
"wallhaven-settings": {
|
||||||
|
"apply": "Toepassen",
|
||||||
|
"title": "Wallhaven-instellingen"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"transitions": {
|
"transitions": {
|
||||||
"disc": "Schijf",
|
"disc": "Schijf",
|
||||||
@@ -2096,10 +2227,11 @@
|
|||||||
"wipe": "Vegen"
|
"wipe": "Vegen"
|
||||||
},
|
},
|
||||||
"try-different-search": "Probeer een andere zoekopdracht.",
|
"try-different-search": "Probeer een andere zoekopdracht.",
|
||||||
|
"unknown": "Onbekend",
|
||||||
"wallhaven": {
|
"wallhaven": {
|
||||||
"loading": "Achtergronden laden...",
|
"loading": "Achtergronden laden...",
|
||||||
"no-results": "Geen achtergronden gevonden. Probeer een andere zoekopdracht.",
|
"no-results": "Geen achtergronden gevonden. Probeer een andere zoekopdracht.",
|
||||||
"page": "Pagina {current} van {total}"
|
"page": "{current} van {total}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weather": {
|
"weather": {
|
||||||
@@ -2209,6 +2341,7 @@
|
|||||||
},
|
},
|
||||||
"wifi": {
|
"wifi": {
|
||||||
"panel": {
|
"panel": {
|
||||||
|
"available-networks": "Beschikbare netwerken",
|
||||||
"connect": "Verbinden",
|
"connect": "Verbinden",
|
||||||
"connected": "Verbonden",
|
"connected": "Verbonden",
|
||||||
"disabled": "Wi-Fi is uitgeschakeld",
|
"disabled": "Wi-Fi is uitgeschakeld",
|
||||||
@@ -2219,6 +2352,7 @@
|
|||||||
"forget": "Vergeten",
|
"forget": "Vergeten",
|
||||||
"forget-network": "Dit netwerk vergeten?",
|
"forget-network": "Dit netwerk vergeten?",
|
||||||
"forgetting": "Vergeten...",
|
"forgetting": "Vergeten...",
|
||||||
|
"known-networks": "Bekende netwerken",
|
||||||
"no-networks": "Geen netwerken gevonden",
|
"no-networks": "Geen netwerken gevonden",
|
||||||
"password": "Wachtwoord",
|
"password": "Wachtwoord",
|
||||||
"saved": "Opgeslagen",
|
"saved": "Opgeslagen",
|
||||||
|
|||||||
@@ -123,10 +123,6 @@
|
|||||||
"stream-description": "Insira um comando para executar continuamente."
|
"stream-description": "Insira um comando para executar continuamente."
|
||||||
},
|
},
|
||||||
"dynamic-text": "Texto dinâmico",
|
"dynamic-text": "Texto dinâmico",
|
||||||
"hide-vertical": {
|
|
||||||
"description": "Se ativado, o texto da saída do comando não será exibido quando a barra estiver em um layout vertical (esquerda ou direita).",
|
|
||||||
"label": "Ocultar texto na barra vertical"
|
|
||||||
},
|
|
||||||
"icon": {
|
"icon": {
|
||||||
"description": "Selecione um ícone da biblioteca.",
|
"description": "Selecione um ícone da biblioteca.",
|
||||||
"label": "Ícone"
|
"label": "Ícone"
|
||||||
@@ -136,6 +132,14 @@
|
|||||||
"label": "Clique esquerdo",
|
"label": "Clique esquerdo",
|
||||||
"update-text": "Atualizar texto exibido ao clicar com o botão esquerdo"
|
"update-text": "Atualizar texto exibido ao clicar com o botão esquerdo"
|
||||||
},
|
},
|
||||||
|
"max-text-length-horizontal": {
|
||||||
|
"description": "Número máximo de caracteres a serem exibidos na barra horizontal (0 para ocultar o texto)",
|
||||||
|
"label": "Comprimento máximo do texto (horizontal)"
|
||||||
|
},
|
||||||
|
"max-text-length-vertical": {
|
||||||
|
"description": "Número máximo de caracteres a serem exibidos na barra vertical (0 para ocultar o texto)",
|
||||||
|
"label": "Comprimento máximo do texto (vertical)"
|
||||||
|
},
|
||||||
"middle-click": {
|
"middle-click": {
|
||||||
"description": "Comando a executar quando o botão é clicado com o botão do meio.",
|
"description": "Comando a executar quando o botão é clicado com o botão do meio.",
|
||||||
"label": "Clique do meio",
|
"label": "Clique do meio",
|
||||||
@@ -157,6 +161,23 @@
|
|||||||
"text-stream": {
|
"text-stream": {
|
||||||
"description": "As linhas transmitidas do comando serão exibidas como texto no botão.",
|
"description": "As linhas transmitidas do comando serão exibidas como texto no botão.",
|
||||||
"label": "Transmissão"
|
"label": "Transmissão"
|
||||||
|
},
|
||||||
|
"wheel": {
|
||||||
|
"description": "Comando a executar quando a roda de rolagem é usada.\nUse $delta para o delta da roda de rolagem no comando",
|
||||||
|
"label": "Roda de rolagem",
|
||||||
|
"update-text": "Atualizar texto exibido ao rolar"
|
||||||
|
},
|
||||||
|
"wheel-down": {
|
||||||
|
"description": "Comando a executar quando a roda de rolagem é rolada para baixo.",
|
||||||
|
"label": "Comando de roda para baixo"
|
||||||
|
},
|
||||||
|
"wheel-mode-separate": {
|
||||||
|
"description": "Ativar comandos separados para roda para cima e para baixo",
|
||||||
|
"label": "Comandos de roda separados"
|
||||||
|
},
|
||||||
|
"wheel-up": {
|
||||||
|
"description": "Comando a executar quando a roda de rolagem é rolada para cima.",
|
||||||
|
"label": "Comando de roda para cima"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dialog": {
|
"dialog": {
|
||||||
@@ -202,6 +223,10 @@
|
|||||||
"description": "Exibir a arte do álbum da faixa atualmente sendo reproduzida.",
|
"description": "Exibir a arte do álbum da faixa atualmente sendo reproduzida.",
|
||||||
"label": "Mostrar arte do álbum"
|
"label": "Mostrar arte do álbum"
|
||||||
},
|
},
|
||||||
|
"show-artist-first": {
|
||||||
|
"description": "Exibir artista - título em vez de título - artista.",
|
||||||
|
"label": "Mostrar o artista primeiro"
|
||||||
|
},
|
||||||
"show-visualizer": {
|
"show-visualizer": {
|
||||||
"description": "Exibir um visualizador de áudio quando música está sendo reproduzida.",
|
"description": "Exibir um visualizador de áudio quando música está sendo reproduzida.",
|
||||||
"label": "Mostrar visualizador"
|
"label": "Mostrar visualizador"
|
||||||
@@ -259,6 +284,10 @@
|
|||||||
"disk-critical-threshold": {
|
"disk-critical-threshold": {
|
||||||
"label": "Storage Space (Critical)"
|
"label": "Storage Space (Critical)"
|
||||||
},
|
},
|
||||||
|
"disk-path": {
|
||||||
|
"description": "Selecione qual ponto de montagem de disco monitorar.",
|
||||||
|
"label": "Caminho do disco"
|
||||||
|
},
|
||||||
"disk-warning-threshold": {
|
"disk-warning-threshold": {
|
||||||
"label": "Storage Space (Warning)"
|
"label": "Storage Space (Warning)"
|
||||||
},
|
},
|
||||||
@@ -314,13 +343,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"taskbar-grouped": {
|
"taskbar-grouped": {
|
||||||
"show-numbers-only-when-occupied": {
|
"show-labels-only-when-occupied": {
|
||||||
"description": "Mostrar números do espaço de trabalho apenas para espaços de trabalho com janelas abertas.",
|
"description": "Mostrar apenas o rótulo da área de trabalho para áreas de trabalho que têm janelas abertas.",
|
||||||
"label": "Mostrar números apenas quando ocupados"
|
"label": "Mostrar rótulo somente quando ocupado."
|
||||||
},
|
|
||||||
"show-workspace-numbers": {
|
|
||||||
"description": "Exibir números do espaço de trabalho no canto superior esquerdo dos grupos de tarefas.",
|
|
||||||
"label": "Mostrar números do espaço de trabalho"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
@@ -363,13 +388,6 @@
|
|||||||
"health": "Saúde: {percent}%",
|
"health": "Saúde: {percent}%",
|
||||||
"idle": "Ocioso.",
|
"idle": "Ocioso.",
|
||||||
"no-battery-detected": "Nenhuma bateria detectada.",
|
"no-battery-detected": "Nenhuma bateria detectada.",
|
||||||
"panel": {
|
|
||||||
"balanced": "Balanceado ({percent}%)",
|
|
||||||
"disabled": "Gerenciador de bateria desativado",
|
|
||||||
"full": "Capacidade máxima ({percent}%)",
|
|
||||||
"lifespan": "Vida útil prolongada ({percent}%)",
|
|
||||||
"title": "Limite de carga"
|
|
||||||
},
|
|
||||||
"plugged-in": "Conectado.",
|
"plugged-in": "Conectado.",
|
||||||
"time-left": "Tempo restante: {time}.",
|
"time-left": "Tempo restante: {time}.",
|
||||||
"time-until-full": "Tempo até carga completa: {time}."
|
"time-until-full": "Tempo até carga completa: {time}."
|
||||||
@@ -398,9 +416,61 @@
|
|||||||
"loading": "Carregando o clima…"
|
"loading": "Carregando o clima…"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"error": {
|
||||||
|
"fetch-failed": "Não foi possível carregar os dados do changelog. Tente novamente mais tarde.",
|
||||||
|
"rate-limit": "Limite do GitHub atingido. Tente novamente em alguns minutos."
|
||||||
|
},
|
||||||
|
"panel": {
|
||||||
|
"buttons": {
|
||||||
|
"discord": "Entre no nosso Discord",
|
||||||
|
"dismiss": "Ok"
|
||||||
|
},
|
||||||
|
"empty": "As notas da versão ainda não estão disponíveis.",
|
||||||
|
"highlight-title": "Destaques",
|
||||||
|
"section": {
|
||||||
|
"released": "Lançado em {date}",
|
||||||
|
"version": "Versão {version}"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"fresh": "Obrigado por instalar o Noctalia! Veja o que está incluído nesta compilação.",
|
||||||
|
"updated": "Atualizado a partir da {previousVersion}"
|
||||||
|
},
|
||||||
|
"title": "Novidades na {version}",
|
||||||
|
"version": {
|
||||||
|
"new-user": "Nova instalação"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"tooltip": "Abrir calendário"
|
"tooltip": "Abrir calendário"
|
||||||
},
|
},
|
||||||
|
"context-menu": {
|
||||||
|
"activate-app": "Ativar {app}",
|
||||||
|
"clear-history": "Limpar histórico",
|
||||||
|
"close-app": "Fechar {app}",
|
||||||
|
"connect-vpn": "Conectar-se a {name}",
|
||||||
|
"cycle-visualizer": "Visualizador de ciclo",
|
||||||
|
"disable-bluetooth": "Desativar Bluetooth",
|
||||||
|
"disable-dnd": "Desativar o Não Perturbe",
|
||||||
|
"disable-wifi": "Desativar Wi-Fi",
|
||||||
|
"disconnect-vpn": "Desconectar {name}",
|
||||||
|
"enable-bluetooth": "Ativar Bluetooth",
|
||||||
|
"enable-dnd": "Ativar Não Perturbe",
|
||||||
|
"enable-wifi": "Ativar Wi-Fi",
|
||||||
|
"next": "Próximo(a)",
|
||||||
|
"open-calendar": "Abrir calendário",
|
||||||
|
"open-display-settings": "Configurações de exibição",
|
||||||
|
"open-launcher": "Abrir iniciador",
|
||||||
|
"open-mixer": "Mesa de som",
|
||||||
|
"open-settings": "Abrir configurações",
|
||||||
|
"pause": "Pausa",
|
||||||
|
"play": "Jogar",
|
||||||
|
"previous": "Anterior",
|
||||||
|
"random-wallpaper": "Papel de parede aleatório",
|
||||||
|
"toggle-mute": "Alternar mudo",
|
||||||
|
"widget-settings": "Configurações do widget"
|
||||||
|
},
|
||||||
"dock": {
|
"dock": {
|
||||||
"menu": {
|
"menu": {
|
||||||
"close": "Fechar",
|
"close": "Fechar",
|
||||||
@@ -564,6 +634,7 @@
|
|||||||
},
|
},
|
||||||
"workspace-labels": {
|
"workspace-labels": {
|
||||||
"index": "Índice",
|
"index": "Índice",
|
||||||
|
"index+name": "Índice e Nome",
|
||||||
"name": "Nome",
|
"name": "Nome",
|
||||||
"none": "Nenhum"
|
"none": "Nenhum"
|
||||||
}
|
}
|
||||||
@@ -579,8 +650,8 @@
|
|||||||
"search": "Pesquisar...",
|
"search": "Pesquisar...",
|
||||||
"search-icons": "ex., noctalia, niri, battery, cloud",
|
"search-icons": "ex., noctalia, niri, battery, cloud",
|
||||||
"search-launcher": "Pesquisar entradas... ou use > para comandos",
|
"search-launcher": "Pesquisar entradas... ou use > para comandos",
|
||||||
"search-wallpapers": "Digite para filtrar papéis de parede...",
|
|
||||||
"search-wallhaven": "Pesquisar no Wallhaven...",
|
"search-wallhaven": "Pesquisar no Wallhaven...",
|
||||||
|
"search-wallpapers": "Digite para filtrar papéis de parede...",
|
||||||
"select": "Selecionar",
|
"select": "Selecionar",
|
||||||
"test": "Testar"
|
"test": "Testar"
|
||||||
},
|
},
|
||||||
@@ -721,6 +792,11 @@
|
|||||||
"label": "Dispositivos de áudio"
|
"label": "Dispositivos de áudio"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"external-mixer": {
|
||||||
|
"description": "Insira o comando ou o caminho do aplicativo para iniciar ao ativar o recurso de mixer de áudio externo.",
|
||||||
|
"label": "Comando de Mixer de Áudio Externo",
|
||||||
|
"placeholder": "pwvucontrol || pavucontrol"
|
||||||
|
},
|
||||||
"media": {
|
"media": {
|
||||||
"excluded-player": {
|
"excluded-player": {
|
||||||
"description": "Adicione palavras-chave para os reprodutores que você deseja que o sistema ignore. Cada palavra-chave deve estar em uma nova linha.",
|
"description": "Adicione palavras-chave para os reprodutores que você deseja que o sistema ignore. Cada palavra-chave deve estar em uma nova linha.",
|
||||||
@@ -795,6 +871,10 @@
|
|||||||
"description": "Ajuste a opacidade do fundo da barra.",
|
"description": "Ajuste a opacidade do fundo da barra.",
|
||||||
"label": "Opacidade do fundo"
|
"label": "Opacidade do fundo"
|
||||||
},
|
},
|
||||||
|
"capsule-opacity": {
|
||||||
|
"description": "Define o nível de opacidade para fundos dos widgets quando a cápsula é mostrada.",
|
||||||
|
"label": "Opacidade da cápsula"
|
||||||
|
},
|
||||||
"density": {
|
"density": {
|
||||||
"description": "Ajuste o preenchimento da barra para um visual compacto ou espaçoso.",
|
"description": "Ajuste o preenchimento da barra para um visual compacto ou espaçoso.",
|
||||||
"label": "Densidade da barra"
|
"label": "Densidade da barra"
|
||||||
@@ -887,6 +967,41 @@
|
|||||||
"label": "Modo escuro"
|
"label": "Modo escuro"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"delete": {
|
||||||
|
"error": {
|
||||||
|
"description": "Falha ao excluir {scheme}",
|
||||||
|
"title": "Falha ao excluir"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} excluído com sucesso",
|
||||||
|
"title": "Esquema de cores excluído"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"download": {
|
||||||
|
"button": "Baixar mais",
|
||||||
|
"delete": "Excluir",
|
||||||
|
"download": "Baixar",
|
||||||
|
"downloading": "Baixando...",
|
||||||
|
"empty": "Nenhum esquema de cores disponível",
|
||||||
|
"error": {
|
||||||
|
"api-error": "Erro da API: {status}",
|
||||||
|
"description": "Falha ao baixar {scheme}",
|
||||||
|
"download-failed": "Falha no download com código de saída: {code}",
|
||||||
|
"invalid-response": "Formato de resposta da API inválido",
|
||||||
|
"no-files": "Nenhum arquivo encontrado para o esquema",
|
||||||
|
"parse-failed": "Falha ao analisar a resposta da API: {error}",
|
||||||
|
"rate-limit": "Limite de taxa da API do GitHub excedido",
|
||||||
|
"title": "Falha no download"
|
||||||
|
},
|
||||||
|
"fetching": "Buscando esquemas de cores disponíveis...",
|
||||||
|
"installed": "Instalado",
|
||||||
|
"refresh": "Atualizar",
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} baixado com sucesso",
|
||||||
|
"title": "Esquema de cores baixado"
|
||||||
|
},
|
||||||
|
"title": "Baixar esquemas de cores"
|
||||||
|
},
|
||||||
"predefined": {
|
"predefined": {
|
||||||
"generate-templates": {
|
"generate-templates": {
|
||||||
"description": "Gera modelos Matugen (GTK, temas de terminal, etc.) ao usar esquemas de cores predefinidos.",
|
"description": "Gera modelos Matugen (GTK, temas de terminal, etc.) ao usar esquemas de cores predefinidos.",
|
||||||
@@ -929,6 +1044,10 @@
|
|||||||
"description": "Escreva em {filepath}. O tema Comfy precisa ser instalado e ativado manualmente.",
|
"description": "Escreva em {filepath}. O tema Comfy precisa ser instalado e ativado manualmente.",
|
||||||
"description-missing": "Requer que o {app} esteja instalado."
|
"description-missing": "Requer que o {app} esteja instalado."
|
||||||
},
|
},
|
||||||
|
"telegram": {
|
||||||
|
"description": "Escreva em {filepath}.",
|
||||||
|
"description-missing": "Requer que o {app} esteja instalado."
|
||||||
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
"description": "Escrever {filepath} e recarregar",
|
"description": "Escrever {filepath} e recarregar",
|
||||||
"description-missing": "Requer que o {app} esteja instalado"
|
"description-missing": "Requer que o {app} esteja instalado"
|
||||||
@@ -1125,6 +1244,10 @@
|
|||||||
"description": "Ajuste a opacidade do fundo da dock.",
|
"description": "Ajuste a opacidade do fundo da dock.",
|
||||||
"label": "Opacidade do fundo"
|
"label": "Opacidade do fundo"
|
||||||
},
|
},
|
||||||
|
"border-radius": {
|
||||||
|
"description": "Ajustar o raio da borda da dock.",
|
||||||
|
"label": "Raio da borda"
|
||||||
|
},
|
||||||
"colorize-icons": {
|
"colorize-icons": {
|
||||||
"description": "Aplicar cores do tema aos ícones de aplicativos da dock (apenas aplicativos não focados).",
|
"description": "Aplicar cores do tema aos ícones de aplicativos da dock (apenas aplicativos não focados).",
|
||||||
"label": "Colorir ícones"
|
"label": "Colorir ícones"
|
||||||
@@ -1276,6 +1399,10 @@
|
|||||||
"description": "Ajuste a opacidade do fundo do lançador.",
|
"description": "Ajuste a opacidade do fundo do lançador.",
|
||||||
"label": "Opacidade do fundo"
|
"label": "Opacidade do fundo"
|
||||||
},
|
},
|
||||||
|
"clip-preview": {
|
||||||
|
"description": "Mostra uma pré-visualização do conteúdo da área de transferência ao usar o comando >clip.",
|
||||||
|
"label": "Ativar pré-visualização da área de transferência"
|
||||||
|
},
|
||||||
"clipboard-history": {
|
"clipboard-history": {
|
||||||
"description": "Acesse itens copiados anteriormente a partir do lançador.",
|
"description": "Acesse itens copiados anteriormente a partir do lançador.",
|
||||||
"label": "Ativar histórico da área de transferência"
|
"label": "Ativar histórico da área de transferência"
|
||||||
@@ -1364,6 +1491,10 @@
|
|||||||
"description": "Escolha sua unidade de temperatura preferida.",
|
"description": "Escolha sua unidade de temperatura preferida.",
|
||||||
"label": "Clima"
|
"label": "Clima"
|
||||||
},
|
},
|
||||||
|
"show-effects": {
|
||||||
|
"description": "Mostra efeitos visuais adicionais (como chuva, neve ou relâmpagos) no cartão de clima.",
|
||||||
|
"label": "Exibir efeitos climáticos"
|
||||||
|
},
|
||||||
"show-in-calendar": {
|
"show-in-calendar": {
|
||||||
"description": "Mostre a previsão do tempo diária diretamente na sua visualização de calendário.",
|
"description": "Mostre a previsão do tempo diária diretamente na sua visualização de calendário.",
|
||||||
"label": "Exibir clima no calendário"
|
"label": "Exibir clima no calendário"
|
||||||
@@ -1379,6 +1510,10 @@
|
|||||||
"description": "Bloquear a tela automaticamente ao suspender o sistema.",
|
"description": "Bloquear a tela automaticamente ao suspender o sistema.",
|
||||||
"label": "Bloquear ao suspender"
|
"label": "Bloquear ao suspender"
|
||||||
},
|
},
|
||||||
|
"show-hibernate": {
|
||||||
|
"description": "Mostrar a opção 'hibernar' nas ações de energia.",
|
||||||
|
"label": "Mostrar hibernar"
|
||||||
|
},
|
||||||
"title": "Tela de bloqueio"
|
"title": "Tela de bloqueio"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -1663,6 +1798,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"user-interface": {
|
"user-interface": {
|
||||||
|
"allow-panels-without-bar": {
|
||||||
|
"description": "Quando ativado, os painéis podem abrir em qualquer tela. Quando desativado, os painéis só abrirão em telas que tenham uma barra, o que pode reduzir o uso de memória.",
|
||||||
|
"label": "Permitir painéis em telas sem uma barra."
|
||||||
|
},
|
||||||
"animation-disable": {
|
"animation-disable": {
|
||||||
"description": "Desative todas as animações para uma experiência mais rápida e responsiva.",
|
"description": "Desative todas as animações para uma experiência mais rápida e responsiva.",
|
||||||
"label": "Desativar animações da interface do usuário"
|
"label": "Desativar animações da interface do usuário"
|
||||||
@@ -1870,19 +2009,6 @@
|
|||||||
"low": "Bateria Fraca",
|
"low": "Bateria Fraca",
|
||||||
"low-desc": "A bateria está em {percent}%. Por favor, conecte o carregador."
|
"low-desc": "A bateria está em {percent}%. Por favor, conecte o carregador."
|
||||||
},
|
},
|
||||||
"battery-manager": {
|
|
||||||
"initial-setup": "Configuração inicial necessária",
|
|
||||||
"install-failed": "Falha na instalação",
|
|
||||||
"install-missing": "Arquivos necessários ausentes",
|
|
||||||
"install-success": "Instalado com sucesso",
|
|
||||||
"install-unsupported": "Sistema não suportado",
|
|
||||||
"set-failed": "Falha ao definir o limite da bateria",
|
|
||||||
"set-success-desc": "Limite da bateria definido para {percent}%",
|
|
||||||
"title": "Limite da bateria",
|
|
||||||
"uninstall-failed": "Falha na desinstalação",
|
|
||||||
"uninstall-setup": "Desinstalando, autenticação necessária",
|
|
||||||
"uninstall-success": "Desinstalado com sucesso"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"disabled": "Desativado",
|
"disabled": "Desativado",
|
||||||
"enabled": "Ativado"
|
"enabled": "Ativado"
|
||||||
@@ -1951,6 +2077,10 @@
|
|||||||
"title-matugen": "Falha no processamento do template Matugen",
|
"title-matugen": "Falha no processamento do template Matugen",
|
||||||
"title-predefined": "O processamento do esquema de cores predefinido falhou."
|
"title-predefined": "O processamento do esquema de cores predefinido falhou."
|
||||||
},
|
},
|
||||||
|
"vpn": {
|
||||||
|
"connected": "Conectado a '{name}'",
|
||||||
|
"disconnected": "Desconectado de '{name}'"
|
||||||
|
},
|
||||||
"wallpaper-colors": {
|
"wallpaper-colors": {
|
||||||
"disabled": "Cores do papel de parede desativadas",
|
"disabled": "Cores do papel de parede desativadas",
|
||||||
"enabled": "Cores do papel de parede ativadas",
|
"enabled": "Cores do papel de parede ativadas",
|
||||||
@@ -1984,6 +2114,7 @@
|
|||||||
"input-muted": "Silenciar entrada de áudio",
|
"input-muted": "Silenciar entrada de áudio",
|
||||||
"keep-awake": "Manter acordado",
|
"keep-awake": "Manter acordado",
|
||||||
"keyboard-layout": "Layout de teclado {layout}",
|
"keyboard-layout": "Layout de teclado {layout}",
|
||||||
|
"manage-vpn": "Gerenciar conexões VPN",
|
||||||
"manage-wifi": "Gerenciar Wi-Fi",
|
"manage-wifi": "Gerenciar Wi-Fi",
|
||||||
"microphone-volume-at": "Volume do microfone em {volume}%.\nClique esquerdo para configurações. Clique direito para ativar/desativar o mudo.\nRole para modificar o volume.",
|
"microphone-volume-at": "Volume do microfone em {volume}%.\nClique esquerdo para configurações. Clique direito para ativar/desativar o mudo.\nRole para modificar o volume.",
|
||||||
"move-to-center-section": "Mover para a seção central",
|
"move-to-center-section": "Mover para a seção central",
|
||||||
@@ -2047,6 +2178,11 @@
|
|||||||
"label": "Categorias",
|
"label": "Categorias",
|
||||||
"people": "Pessoas"
|
"people": "Pessoas"
|
||||||
},
|
},
|
||||||
|
"order": {
|
||||||
|
"asc": "Crescente",
|
||||||
|
"desc": "Decrescente",
|
||||||
|
"label": "Ordem"
|
||||||
|
},
|
||||||
"purity": {
|
"purity": {
|
||||||
"all": "Tudo",
|
"all": "Tudo",
|
||||||
"label": "Filtro de conteúdo",
|
"label": "Filtro de conteúdo",
|
||||||
@@ -2071,21 +2207,16 @@
|
|||||||
"toplist": "Lista superior",
|
"toplist": "Lista superior",
|
||||||
"views": "Visualizações"
|
"views": "Visualizações"
|
||||||
},
|
},
|
||||||
"order": {
|
|
||||||
"asc": "Crescente",
|
|
||||||
"desc": "Decrescente",
|
|
||||||
"label": "Ordem"
|
|
||||||
},
|
|
||||||
"wallhaven-settings": {
|
|
||||||
"apply": "Aplicar",
|
|
||||||
"title": "Configurações do Wallhaven"
|
|
||||||
},
|
|
||||||
"source": {
|
"source": {
|
||||||
"label": "Fonte",
|
"label": "Fonte",
|
||||||
"local": "Local",
|
"local": "Local",
|
||||||
"wallhaven": "Wallhaven"
|
"wallhaven": "Wallhaven"
|
||||||
},
|
},
|
||||||
"title": "Seletor de papel de parede"
|
"title": "Seletor de papel de parede",
|
||||||
|
"wallhaven-settings": {
|
||||||
|
"apply": "Aplicar",
|
||||||
|
"title": "Configurações do Wallhaven"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"transitions": {
|
"transitions": {
|
||||||
"disc": "Disco",
|
"disc": "Disco",
|
||||||
@@ -2096,10 +2227,11 @@
|
|||||||
"wipe": "Limpar"
|
"wipe": "Limpar"
|
||||||
},
|
},
|
||||||
"try-different-search": "Tente uma busca diferente.",
|
"try-different-search": "Tente uma busca diferente.",
|
||||||
|
"unknown": "Desconhecido",
|
||||||
"wallhaven": {
|
"wallhaven": {
|
||||||
"loading": "Carregando papéis de parede...",
|
"loading": "Carregando papéis de parede...",
|
||||||
"no-results": "Nenhum papel de parede encontrado. Tente uma busca diferente.",
|
"no-results": "Nenhum papel de parede encontrado. Tente uma busca diferente.",
|
||||||
"page": "Página {current} de {total}"
|
"page": "{current} de {total}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weather": {
|
"weather": {
|
||||||
@@ -2209,6 +2341,7 @@
|
|||||||
},
|
},
|
||||||
"wifi": {
|
"wifi": {
|
||||||
"panel": {
|
"panel": {
|
||||||
|
"available-networks": "Redes Disponíveis",
|
||||||
"connect": "Conectar",
|
"connect": "Conectar",
|
||||||
"connected": "Conectado",
|
"connected": "Conectado",
|
||||||
"disabled": "O Wi-Fi está desativado",
|
"disabled": "O Wi-Fi está desativado",
|
||||||
@@ -2219,6 +2352,7 @@
|
|||||||
"forget": "Esquecer",
|
"forget": "Esquecer",
|
||||||
"forget-network": "Esquecer esta rede?",
|
"forget-network": "Esquecer esta rede?",
|
||||||
"forgetting": "Esquecendo...",
|
"forgetting": "Esquecendo...",
|
||||||
|
"known-networks": "Redes Conhecidas",
|
||||||
"no-networks": "Nenhuma rede encontrada",
|
"no-networks": "Nenhuma rede encontrada",
|
||||||
"password": "Senha",
|
"password": "Senha",
|
||||||
"saved": "Salva",
|
"saved": "Salva",
|
||||||
|
|||||||
@@ -123,10 +123,6 @@
|
|||||||
"stream-description": "Введите команду для непрерывного выполнения."
|
"stream-description": "Введите команду для непрерывного выполнения."
|
||||||
},
|
},
|
||||||
"dynamic-text": "Динамический текст",
|
"dynamic-text": "Динамический текст",
|
||||||
"hide-vertical": {
|
|
||||||
"description": "Если включено, текст из вывода команды не будет отображаться, когда панель находится в вертикальном макете (слева или справа).",
|
|
||||||
"label": "Скрывать текст в вертикальной панели"
|
|
||||||
},
|
|
||||||
"icon": {
|
"icon": {
|
||||||
"description": "Выберите иконку из библиотеки.",
|
"description": "Выберите иконку из библиотеки.",
|
||||||
"label": "Иконка"
|
"label": "Иконка"
|
||||||
@@ -136,6 +132,14 @@
|
|||||||
"label": "Клик левой кнопкой",
|
"label": "Клик левой кнопкой",
|
||||||
"update-text": "Обновить отображаемый текст по левому клику"
|
"update-text": "Обновить отображаемый текст по левому клику"
|
||||||
},
|
},
|
||||||
|
"max-text-length-horizontal": {
|
||||||
|
"description": "Максимальное количество символов для отображения в горизонтальной панели (0 для скрытия текста)",
|
||||||
|
"label": "Макс. длина текста (горизонтально)"
|
||||||
|
},
|
||||||
|
"max-text-length-vertical": {
|
||||||
|
"description": "Максимальное количество символов для отображения в вертикальной панели (0 для скрытия текста)",
|
||||||
|
"label": "Макс. длина текста (вертикально)"
|
||||||
|
},
|
||||||
"middle-click": {
|
"middle-click": {
|
||||||
"description": "Команда для выполнения при нажатии средней кнопкой мыши.",
|
"description": "Команда для выполнения при нажатии средней кнопкой мыши.",
|
||||||
"label": "Клик средней кнопкой",
|
"label": "Клик средней кнопкой",
|
||||||
@@ -157,6 +161,23 @@
|
|||||||
"text-stream": {
|
"text-stream": {
|
||||||
"description": "Потоковые строки из команды будут отображаться как текст на кнопке.",
|
"description": "Потоковые строки из команды будут отображаться как текст на кнопке.",
|
||||||
"label": "Поток"
|
"label": "Поток"
|
||||||
|
},
|
||||||
|
"wheel": {
|
||||||
|
"description": "Команда для выполнения при использовании колеса прокрутки.\nИспользуйте $delta для дельты колеса прокрутки в команде",
|
||||||
|
"label": "Колесо прокрутки",
|
||||||
|
"update-text": "Обновить отображаемый текст при прокрутке"
|
||||||
|
},
|
||||||
|
"wheel-down": {
|
||||||
|
"description": "Команда для выполнения при прокрутке колеса вниз.",
|
||||||
|
"label": "Команда прокрутки колеса вниз"
|
||||||
|
},
|
||||||
|
"wheel-mode-separate": {
|
||||||
|
"description": "Включить раздельные команды для колеса прокрутки вверх и вниз",
|
||||||
|
"label": "Раздельные команды колеса прокрутки"
|
||||||
|
},
|
||||||
|
"wheel-up": {
|
||||||
|
"description": "Команда для выполнения при прокрутке колеса вверх.",
|
||||||
|
"label": "Команда прокрутки колеса вверх"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dialog": {
|
"dialog": {
|
||||||
@@ -202,6 +223,10 @@
|
|||||||
"description": "Отображать обложку альбома для текущего воспроизводимого трека.",
|
"description": "Отображать обложку альбома для текущего воспроизводимого трека.",
|
||||||
"label": "Показывать обложку альбома"
|
"label": "Показывать обложку альбома"
|
||||||
},
|
},
|
||||||
|
"show-artist-first": {
|
||||||
|
"description": "Исполнитель - название вместо название - исполнитель.",
|
||||||
|
"label": "Сначала исполнитель"
|
||||||
|
},
|
||||||
"show-visualizer": {
|
"show-visualizer": {
|
||||||
"description": "Отображать аудиовизуализатор при воспроизведении музыки.",
|
"description": "Отображать аудиовизуализатор при воспроизведении музыки.",
|
||||||
"label": "Показывать визуализатор"
|
"label": "Показывать визуализатор"
|
||||||
@@ -259,6 +284,10 @@
|
|||||||
"disk-critical-threshold": {
|
"disk-critical-threshold": {
|
||||||
"label": "Место на диске (Критично)"
|
"label": "Место на диске (Критично)"
|
||||||
},
|
},
|
||||||
|
"disk-path": {
|
||||||
|
"description": "Выберите точку монтирования диска для мониторинга.",
|
||||||
|
"label": "Путь к диску"
|
||||||
|
},
|
||||||
"disk-warning-threshold": {
|
"disk-warning-threshold": {
|
||||||
"label": "Место на диске (Предупреждение)"
|
"label": "Место на диске (Предупреждение)"
|
||||||
},
|
},
|
||||||
@@ -314,13 +343,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"taskbar-grouped": {
|
"taskbar-grouped": {
|
||||||
"show-numbers-only-when-occupied": {
|
"show-labels-only-when-occupied": {
|
||||||
"description": "Показывать номера рабочих пространств только для тех, на которых есть открытые окна.",
|
"description": "Отображать метку рабочего пространства только для тех рабочих пространств, в которых есть открытые окна.",
|
||||||
"label": "Показывать номера только при занятости"
|
"label": "Показывать метку только когда занято"
|
||||||
},
|
|
||||||
"show-workspace-numbers": {
|
|
||||||
"description": "Отображать номера рабочих пространств в верхнем левом углу групп задач.",
|
|
||||||
"label": "Показывать номера рабочих пространств"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
@@ -363,13 +388,6 @@
|
|||||||
"health": "Здоровье: {percent}%",
|
"health": "Здоровье: {percent}%",
|
||||||
"idle": "Простой.",
|
"idle": "Простой.",
|
||||||
"no-battery-detected": "Батарея не обнаружена.",
|
"no-battery-detected": "Батарея не обнаружена.",
|
||||||
"panel": {
|
|
||||||
"balanced": "Сбалансированный ({percent}%)",
|
|
||||||
"disabled": "Диспетчер батареи отключен",
|
|
||||||
"full": "Полная емкость ({percent}%)",
|
|
||||||
"lifespan": "Увеличенный срок службы ({percent}%)",
|
|
||||||
"title": "Порог зарядки"
|
|
||||||
},
|
|
||||||
"plugged-in": "Подключено.",
|
"plugged-in": "Подключено.",
|
||||||
"time-left": "Осталось времени: {time}.",
|
"time-left": "Осталось времени: {time}.",
|
||||||
"time-until-full": "Время до полной зарядки: {time}."
|
"time-until-full": "Время до полной зарядки: {time}."
|
||||||
@@ -398,9 +416,61 @@
|
|||||||
"loading": "Загрузка погоды…"
|
"loading": "Загрузка погоды…"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"error": {
|
||||||
|
"fetch-failed": "Не удалось загрузить данные журнала изменений. Пожалуйста, попробуйте позже.",
|
||||||
|
"rate-limit": "Превышен лимит GitHub. Попробуйте снова через несколько минут."
|
||||||
|
},
|
||||||
|
"panel": {
|
||||||
|
"buttons": {
|
||||||
|
"discord": "Присоединиться к нашему Discord",
|
||||||
|
"dismiss": "Ок"
|
||||||
|
},
|
||||||
|
"empty": "Примечания к выпуску пока недоступны.",
|
||||||
|
"highlight-title": "Основные изменения",
|
||||||
|
"section": {
|
||||||
|
"released": "Выпущено {date}",
|
||||||
|
"version": "Версия {version}"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"fresh": "Спасибо за установку Noctalia! Вот что входит в этот билд.",
|
||||||
|
"updated": "Обновлено с {previousVersion}"
|
||||||
|
},
|
||||||
|
"title": "Что нового в {version}",
|
||||||
|
"version": {
|
||||||
|
"new-user": "Новая установка"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"tooltip": "Открыть календарь"
|
"tooltip": "Открыть календарь"
|
||||||
},
|
},
|
||||||
|
"context-menu": {
|
||||||
|
"activate-app": "Активировать {app}",
|
||||||
|
"clear-history": "Очистить историю",
|
||||||
|
"close-app": "Закрыть {app}",
|
||||||
|
"connect-vpn": "Подключиться к {name}",
|
||||||
|
"cycle-visualizer": "Визуализатор циклов",
|
||||||
|
"disable-bluetooth": "Отключить Bluetooth",
|
||||||
|
"disable-dnd": "Отключить режим \"Не беспокоить\"",
|
||||||
|
"disable-wifi": "Отключить Wi-Fi",
|
||||||
|
"disconnect-vpn": "Отключить {name}",
|
||||||
|
"enable-bluetooth": "Включить Bluetooth",
|
||||||
|
"enable-dnd": "Не беспокоить",
|
||||||
|
"enable-wifi": "Включить Wi-Fi",
|
||||||
|
"next": "Следующий",
|
||||||
|
"open-calendar": "Открыть календарь",
|
||||||
|
"open-display-settings": "Настройки экрана",
|
||||||
|
"open-launcher": "Открыть лаунчер",
|
||||||
|
"open-mixer": "Аудиомикшер",
|
||||||
|
"open-settings": "Открыть настройки",
|
||||||
|
"pause": "Пауза",
|
||||||
|
"play": "Играть",
|
||||||
|
"previous": "Предыдущий",
|
||||||
|
"random-wallpaper": "Случайные обои",
|
||||||
|
"toggle-mute": "Включить/выключить звук",
|
||||||
|
"widget-settings": "Настройки виджета"
|
||||||
|
},
|
||||||
"dock": {
|
"dock": {
|
||||||
"menu": {
|
"menu": {
|
||||||
"close": "Закрыть",
|
"close": "Закрыть",
|
||||||
@@ -564,6 +634,7 @@
|
|||||||
},
|
},
|
||||||
"workspace-labels": {
|
"workspace-labels": {
|
||||||
"index": "Индекс",
|
"index": "Индекс",
|
||||||
|
"index+name": "Индекс и название",
|
||||||
"name": "Имя",
|
"name": "Имя",
|
||||||
"none": "Нет"
|
"none": "Нет"
|
||||||
}
|
}
|
||||||
@@ -579,8 +650,8 @@
|
|||||||
"search": "Поиск...",
|
"search": "Поиск...",
|
||||||
"search-icons": "например, noctalia, niri, battery, cloud",
|
"search-icons": "например, noctalia, niri, battery, cloud",
|
||||||
"search-launcher": "Поиск записей... или используйте > для команд",
|
"search-launcher": "Поиск записей... или используйте > для команд",
|
||||||
"search-wallpapers": "Введите для фильтрации обоев...",
|
|
||||||
"search-wallhaven": "Поиск в Wallhaven...",
|
"search-wallhaven": "Поиск в Wallhaven...",
|
||||||
|
"search-wallpapers": "Введите для фильтрации обоев...",
|
||||||
"select": "Выбрать",
|
"select": "Выбрать",
|
||||||
"test": "Тест"
|
"test": "Тест"
|
||||||
},
|
},
|
||||||
@@ -721,6 +792,11 @@
|
|||||||
"label": "Аудиоустройства"
|
"label": "Аудиоустройства"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"external-mixer": {
|
||||||
|
"description": "Введите команду или путь к приложению для запуска при активации функции внешнего аудиомикшера.",
|
||||||
|
"label": "Команда внешнего аудиомикшера",
|
||||||
|
"placeholder": "pwvucontrol || pavucontrol"
|
||||||
|
},
|
||||||
"media": {
|
"media": {
|
||||||
"excluded-player": {
|
"excluded-player": {
|
||||||
"description": "Добавьте ключевые слова для плееров, которые система должна игнорировать. Каждое ключевое слово должно быть на новой строке.",
|
"description": "Добавьте ключевые слова для плееров, которые система должна игнорировать. Каждое ключевое слово должно быть на новой строке.",
|
||||||
@@ -795,6 +871,10 @@
|
|||||||
"description": "Настройка непрозрачности фона панели.",
|
"description": "Настройка непрозрачности фона панели.",
|
||||||
"label": "Непрозрачность фона"
|
"label": "Непрозрачность фона"
|
||||||
},
|
},
|
||||||
|
"capsule-opacity": {
|
||||||
|
"description": "Установить уровень непрозрачности для фона виджетов, когда капсула отображается.",
|
||||||
|
"label": "Непрозрачность капсулы"
|
||||||
|
},
|
||||||
"density": {
|
"density": {
|
||||||
"description": "Настройка отступов панели для компактного или просторного вида.",
|
"description": "Настройка отступов панели для компактного или просторного вида.",
|
||||||
"label": "Плотность панели"
|
"label": "Плотность панели"
|
||||||
@@ -887,6 +967,41 @@
|
|||||||
"label": "Темный режим"
|
"label": "Темный режим"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"delete": {
|
||||||
|
"error": {
|
||||||
|
"description": "Не удалось удалить {scheme}",
|
||||||
|
"title": "Ошибка удаления"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} успешно удалена",
|
||||||
|
"title": "Цветовая схема удалена"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"download": {
|
||||||
|
"button": "Загрузить ещё",
|
||||||
|
"delete": "Удалить",
|
||||||
|
"download": "Загрузить",
|
||||||
|
"downloading": "Загрузка...",
|
||||||
|
"empty": "Нет доступных цветовых схем",
|
||||||
|
"error": {
|
||||||
|
"api-error": "Ошибка API: {status}",
|
||||||
|
"description": "Не удалось загрузить {scheme}",
|
||||||
|
"download-failed": "Ошибка загрузки с кодом выхода: {code}",
|
||||||
|
"invalid-response": "Неверный формат ответа API",
|
||||||
|
"no-files": "Файлы для схемы не найдены",
|
||||||
|
"parse-failed": "Ошибка парсинга ответа API: {error}",
|
||||||
|
"rate-limit": "Превышен лимит запросов GitHub API",
|
||||||
|
"title": "Ошибка загрузки"
|
||||||
|
},
|
||||||
|
"fetching": "Получение доступных цветовых схем...",
|
||||||
|
"installed": "Установлено",
|
||||||
|
"refresh": "Обновить",
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} успешно загружена",
|
||||||
|
"title": "Цветовая схема загружена"
|
||||||
|
},
|
||||||
|
"title": "Загрузить цветовые схемы"
|
||||||
|
},
|
||||||
"predefined": {
|
"predefined": {
|
||||||
"generate-templates": {
|
"generate-templates": {
|
||||||
"description": "Генерировать шаблоны Matugen (GTK, темы терминала и т. д.) при использовании предопределенных цветовых схем.",
|
"description": "Генерировать шаблоны Matugen (GTK, темы терминала и т. д.) при использовании предопределенных цветовых схем.",
|
||||||
@@ -929,6 +1044,10 @@
|
|||||||
"description": "Записать {filepath}. Тему Comfy нужно установить и активировать вручную.",
|
"description": "Записать {filepath}. Тему Comfy нужно установить и активировать вручную.",
|
||||||
"description-missing": "Требуется установка {app}"
|
"description-missing": "Требуется установка {app}"
|
||||||
},
|
},
|
||||||
|
"telegram": {
|
||||||
|
"description": "Записать {filepath}.",
|
||||||
|
"description-missing": "Требуется установка {app}"
|
||||||
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
"description": "Записать {filepath} и перезагрузить",
|
"description": "Записать {filepath} и перезагрузить",
|
||||||
"description-missing": "Требуется установка {app}"
|
"description-missing": "Требуется установка {app}"
|
||||||
@@ -1125,6 +1244,10 @@
|
|||||||
"description": "Настройка непрозрачности фона панели приложений.",
|
"description": "Настройка непрозрачности фона панели приложений.",
|
||||||
"label": "Непрозрачность фона"
|
"label": "Непрозрачность фона"
|
||||||
},
|
},
|
||||||
|
"border-radius": {
|
||||||
|
"description": "Измените радиус границы дока.",
|
||||||
|
"label": "Радиус скругления границы"
|
||||||
|
},
|
||||||
"colorize-icons": {
|
"colorize-icons": {
|
||||||
"description": "Применить цвета темы к иконкам приложений на панели (только для нефокусированных приложений).",
|
"description": "Применить цвета темы к иконкам приложений на панели (только для нефокусированных приложений).",
|
||||||
"label": "Раскрасить иконки"
|
"label": "Раскрасить иконки"
|
||||||
@@ -1276,6 +1399,10 @@
|
|||||||
"description": "Настройка непрозрачности фона запуска.",
|
"description": "Настройка непрозрачности фона запуска.",
|
||||||
"label": "Непрозрачность фона"
|
"label": "Непрозрачность фона"
|
||||||
},
|
},
|
||||||
|
"clip-preview": {
|
||||||
|
"description": "Показывать предварительный просмотр содержимого буфера обмена при использовании команды >clip.",
|
||||||
|
"label": "Включить предварительный просмотр буфера обмена"
|
||||||
|
},
|
||||||
"clipboard-history": {
|
"clipboard-history": {
|
||||||
"description": "Доступ к ранее скопированным элементам из запуска.",
|
"description": "Доступ к ранее скопированным элементам из запуска.",
|
||||||
"label": "Включить историю буфера обмена"
|
"label": "Включить историю буфера обмена"
|
||||||
@@ -1364,6 +1491,10 @@
|
|||||||
"description": "Выберите предпочитаемую единицу измерения температуры.",
|
"description": "Выберите предпочитаемую единицу измерения температуры.",
|
||||||
"label": "Погода"
|
"label": "Погода"
|
||||||
},
|
},
|
||||||
|
"show-effects": {
|
||||||
|
"description": "Отображает дополнительные визуальные эффекты (например, дождь, снег или молнию) на карточке погоды.",
|
||||||
|
"label": "Отображать погодные эффекты"
|
||||||
|
},
|
||||||
"show-in-calendar": {
|
"show-in-calendar": {
|
||||||
"description": "Показывать ежедневный прогноз погоды непосредственно в вашем календаре.",
|
"description": "Показывать ежедневный прогноз погоды непосредственно в вашем календаре.",
|
||||||
"label": "Отображать погоду в календаре"
|
"label": "Отображать погоду в календаре"
|
||||||
@@ -1379,6 +1510,10 @@
|
|||||||
"description": "Автоматически блокировать экран при приостановке работы системы.",
|
"description": "Автоматически блокировать экран при приостановке работы системы.",
|
||||||
"label": "Блокировать при приостановке"
|
"label": "Блокировать при приостановке"
|
||||||
},
|
},
|
||||||
|
"show-hibernate": {
|
||||||
|
"description": "Показывать опцию 'спящий режим' в действиях питания.",
|
||||||
|
"label": "Показывать спящий режим"
|
||||||
|
},
|
||||||
"title": "Экран блокировки"
|
"title": "Экран блокировки"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -1663,6 +1798,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"user-interface": {
|
"user-interface": {
|
||||||
|
"allow-panels-without-bar": {
|
||||||
|
"description": "Когда включено, панели могут открываться на любом экране. Когда выключено, панели будут открываться только на экранах с панелью, что может снизить использование памяти.",
|
||||||
|
"label": "Разрешить панели на экранах без панели задач."
|
||||||
|
},
|
||||||
"animation-disable": {
|
"animation-disable": {
|
||||||
"description": "Отключить все анимации для более быстрого и отзывчивого взаимодействия.",
|
"description": "Отключить все анимации для более быстрого и отзывчивого взаимодействия.",
|
||||||
"label": "Отключить анимации интерфейса"
|
"label": "Отключить анимации интерфейса"
|
||||||
@@ -1870,19 +2009,6 @@
|
|||||||
"low": "Низкий заряд батареи",
|
"low": "Низкий заряд батареи",
|
||||||
"low-desc": "Заряд батареи {percent}%. Пожалуйста, подключите зарядное устройство."
|
"low-desc": "Заряд батареи {percent}%. Пожалуйста, подключите зарядное устройство."
|
||||||
},
|
},
|
||||||
"battery-manager": {
|
|
||||||
"initial-setup": "Требуется начальная настройка",
|
|
||||||
"install-failed": "Сбой установки",
|
|
||||||
"install-missing": "Отсутствуют необходимые файлы",
|
|
||||||
"install-success": "Успешно установлено",
|
|
||||||
"install-unsupported": "Система не поддерживается",
|
|
||||||
"set-failed": "Не удалось установить порог зарядки батареи",
|
|
||||||
"set-success-desc": "Порог зарядки батареи установлен на {percent}%",
|
|
||||||
"title": "Порог зарядки батареи",
|
|
||||||
"uninstall-failed": "Сбой удаления",
|
|
||||||
"uninstall-setup": "Удаление, требуется аутентификация",
|
|
||||||
"uninstall-success": "Успешно удалено"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"disabled": "Отключен",
|
"disabled": "Отключен",
|
||||||
"enabled": "Включен"
|
"enabled": "Включен"
|
||||||
@@ -1951,6 +2077,10 @@
|
|||||||
"title-matugen": "Сбой обработки шаблонов Matugen",
|
"title-matugen": "Сбой обработки шаблонов Matugen",
|
||||||
"title-predefined": "Сбой обработки предопределенной цветовой схемы"
|
"title-predefined": "Сбой обработки предопределенной цветовой схемы"
|
||||||
},
|
},
|
||||||
|
"vpn": {
|
||||||
|
"connected": "Подключено к '{name}'",
|
||||||
|
"disconnected": "Отключено от '{name}'"
|
||||||
|
},
|
||||||
"wallpaper-colors": {
|
"wallpaper-colors": {
|
||||||
"disabled": "Цвета обоев отключены",
|
"disabled": "Цвета обоев отключены",
|
||||||
"enabled": "Цвета обоев включены",
|
"enabled": "Цвета обоев включены",
|
||||||
@@ -1984,6 +2114,7 @@
|
|||||||
"input-muted": "Переключить заглушение ввода",
|
"input-muted": "Переключить заглушение ввода",
|
||||||
"keep-awake": "Не засыпать",
|
"keep-awake": "Не засыпать",
|
||||||
"keyboard-layout": "Раскладка клавиатуры {layout}",
|
"keyboard-layout": "Раскладка клавиатуры {layout}",
|
||||||
|
"manage-vpn": "Управлять VPN-подключениями",
|
||||||
"manage-wifi": "Управление Wi-Fi",
|
"manage-wifi": "Управление Wi-Fi",
|
||||||
"microphone-volume-at": "Громкость микрофона {volume}%\nЛевый клик для настроек. Правый клик для переключения заглушения.\nПрокрутка для изменения громкости.",
|
"microphone-volume-at": "Громкость микрофона {volume}%\nЛевый клик для настроек. Правый клик для переключения заглушения.\nПрокрутка для изменения громкости.",
|
||||||
"move-to-center-section": "Переместить в центральную секцию",
|
"move-to-center-section": "Переместить в центральную секцию",
|
||||||
@@ -2047,6 +2178,11 @@
|
|||||||
"label": "Категории",
|
"label": "Категории",
|
||||||
"people": "Люди"
|
"people": "Люди"
|
||||||
},
|
},
|
||||||
|
"order": {
|
||||||
|
"asc": "По возрастанию",
|
||||||
|
"desc": "По убыванию",
|
||||||
|
"label": "Порядок"
|
||||||
|
},
|
||||||
"purity": {
|
"purity": {
|
||||||
"all": "Все",
|
"all": "Все",
|
||||||
"label": "Фильтр контента",
|
"label": "Фильтр контента",
|
||||||
@@ -2071,21 +2207,16 @@
|
|||||||
"toplist": "Топ-лист",
|
"toplist": "Топ-лист",
|
||||||
"views": "Просмотры"
|
"views": "Просмотры"
|
||||||
},
|
},
|
||||||
"order": {
|
|
||||||
"asc": "По возрастанию",
|
|
||||||
"desc": "По убыванию",
|
|
||||||
"label": "Порядок"
|
|
||||||
},
|
|
||||||
"wallhaven-settings": {
|
|
||||||
"apply": "Применить",
|
|
||||||
"title": "Настройки Wallhaven"
|
|
||||||
},
|
|
||||||
"source": {
|
"source": {
|
||||||
"label": "Источник",
|
"label": "Источник",
|
||||||
"local": "Локальный",
|
"local": "Локальный",
|
||||||
"wallhaven": "Wallhaven"
|
"wallhaven": "Wallhaven"
|
||||||
},
|
},
|
||||||
"title": "Выбор обоев"
|
"title": "Выбор обоев",
|
||||||
|
"wallhaven-settings": {
|
||||||
|
"apply": "Применить",
|
||||||
|
"title": "Настройки Wallhaven"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"transitions": {
|
"transitions": {
|
||||||
"disc": "Диск",
|
"disc": "Диск",
|
||||||
@@ -2096,10 +2227,11 @@
|
|||||||
"wipe": "Стирание"
|
"wipe": "Стирание"
|
||||||
},
|
},
|
||||||
"try-different-search": "Попробуйте другой поисковый запрос.",
|
"try-different-search": "Попробуйте другой поисковый запрос.",
|
||||||
|
"unknown": "Неизвестно",
|
||||||
"wallhaven": {
|
"wallhaven": {
|
||||||
"loading": "Загрузка обоев...",
|
"loading": "Загрузка обоев...",
|
||||||
"no-results": "Обои не найдены. Попробуйте другой поисковый запрос.",
|
"no-results": "Обои не найдены. Попробуйте другой поисковый запрос.",
|
||||||
"page": "Страница {current} из {total}"
|
"page": "{current} из {total}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weather": {
|
"weather": {
|
||||||
@@ -2209,6 +2341,7 @@
|
|||||||
},
|
},
|
||||||
"wifi": {
|
"wifi": {
|
||||||
"panel": {
|
"panel": {
|
||||||
|
"available-networks": "Доступные сети",
|
||||||
"connect": "Подключить",
|
"connect": "Подключить",
|
||||||
"connected": "Подключено",
|
"connected": "Подключено",
|
||||||
"disabled": "Wi-Fi отключен",
|
"disabled": "Wi-Fi отключен",
|
||||||
@@ -2219,6 +2352,7 @@
|
|||||||
"forget": "Забыть",
|
"forget": "Забыть",
|
||||||
"forget-network": "Забыть эту сеть?",
|
"forget-network": "Забыть эту сеть?",
|
||||||
"forgetting": "Забывание...",
|
"forgetting": "Забывание...",
|
||||||
|
"known-networks": "Известные сети",
|
||||||
"no-networks": "Сети не найдены",
|
"no-networks": "Сети не найдены",
|
||||||
"password": "Пароль",
|
"password": "Пароль",
|
||||||
"saved": "Сохранено",
|
"saved": "Сохранено",
|
||||||
|
|||||||
@@ -123,10 +123,6 @@
|
|||||||
"stream-description": "Sürekli çalıştırılacak bir komut girin."
|
"stream-description": "Sürekli çalıştırılacak bir komut girin."
|
||||||
},
|
},
|
||||||
"dynamic-text": "Dinamik metin",
|
"dynamic-text": "Dinamik metin",
|
||||||
"hide-vertical": {
|
|
||||||
"description": "Etkinleştirilirse, komut çıktısındaki metin, çubuk dikey düzende (sol veya sağ) olduğunda gösterilmeyecektir.",
|
|
||||||
"label": "Dikey çubukta metni gizle"
|
|
||||||
},
|
|
||||||
"icon": {
|
"icon": {
|
||||||
"description": "Kütüphaneden bir ikon seçin.",
|
"description": "Kütüphaneden bir ikon seçin.",
|
||||||
"label": "İkon"
|
"label": "İkon"
|
||||||
@@ -136,6 +132,14 @@
|
|||||||
"label": "Sol tıklama",
|
"label": "Sol tıklama",
|
||||||
"update-text": "Sol tıklamayla görüntülenen metni güncelle"
|
"update-text": "Sol tıklamayla görüntülenen metni güncelle"
|
||||||
},
|
},
|
||||||
|
"max-text-length-horizontal": {
|
||||||
|
"description": "Yatay çubukta gösterilecek maksimum karakter sayısı (metni gizlemek için 0)",
|
||||||
|
"label": "Maks. metin uzunluğu (yatay)"
|
||||||
|
},
|
||||||
|
"max-text-length-vertical": {
|
||||||
|
"description": "Dikey çubukta gösterilecek maksimum karakter sayısı (metni gizlemek için 0)",
|
||||||
|
"label": "Maks. metin uzunluğu (dikey)"
|
||||||
|
},
|
||||||
"middle-click": {
|
"middle-click": {
|
||||||
"description": "Butona orta tıklandığında yürütülecek komut.",
|
"description": "Butona orta tıklandığında yürütülecek komut.",
|
||||||
"label": "Orta tıklama",
|
"label": "Orta tıklama",
|
||||||
@@ -157,6 +161,23 @@
|
|||||||
"text-stream": {
|
"text-stream": {
|
||||||
"description": "Komuttan gelen akış satırları butonda metin olarak gösterilecektir.",
|
"description": "Komuttan gelen akış satırları butonda metin olarak gösterilecektir.",
|
||||||
"label": "Akış"
|
"label": "Akış"
|
||||||
|
},
|
||||||
|
"wheel": {
|
||||||
|
"description": "Kaydırma tekerleği kullanıldığında yürütülecek komut.\nKomutta kaydırma tekerleği deltası için $delta kullanın",
|
||||||
|
"label": "Kaydırma tekerleği",
|
||||||
|
"update-text": "Kaydırmada gösterilen metni güncelle"
|
||||||
|
},
|
||||||
|
"wheel-down": {
|
||||||
|
"description": "Kaydırma tekerleği aşağı kaydırıldığında yürütülecek komut.",
|
||||||
|
"label": "Kaydırma tekerleği aşağı komutu"
|
||||||
|
},
|
||||||
|
"wheel-mode-separate": {
|
||||||
|
"description": "Kaydırma tekerleği yukarı ve aşağı için ayrı komutları etkinleştir",
|
||||||
|
"label": "Ayrı kaydırma tekerleği komutları"
|
||||||
|
},
|
||||||
|
"wheel-up": {
|
||||||
|
"description": "Kaydırma tekerleği yukarı kaydırıldığında yürütülecek komut.",
|
||||||
|
"label": "Kaydırma tekerleği yukarı komutu"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dialog": {
|
"dialog": {
|
||||||
@@ -202,6 +223,10 @@
|
|||||||
"description": "Şu anda çalan parçanın albüm kapak sanatını göster.",
|
"description": "Şu anda çalan parçanın albüm kapak sanatını göster.",
|
||||||
"label": "Albüm kapağını göster"
|
"label": "Albüm kapağını göster"
|
||||||
},
|
},
|
||||||
|
"show-artist-first": {
|
||||||
|
"description": "Sanatçı - başlık yerine başlık - sanatçı olarak göster.",
|
||||||
|
"label": "Önce sanatçıyı göster"
|
||||||
|
},
|
||||||
"show-visualizer": {
|
"show-visualizer": {
|
||||||
"description": "Müzik çalarken bir ses görselleştirici göster.",
|
"description": "Müzik çalarken bir ses görselleştirici göster.",
|
||||||
"label": "Görselleştiriciyi göster"
|
"label": "Görselleştiriciyi göster"
|
||||||
@@ -259,6 +284,10 @@
|
|||||||
"disk-critical-threshold": {
|
"disk-critical-threshold": {
|
||||||
"label": "Depolama Alanı (Kritik)"
|
"label": "Depolama Alanı (Kritik)"
|
||||||
},
|
},
|
||||||
|
"disk-path": {
|
||||||
|
"description": "İzlenecek disk bağlama noktasını seçin.",
|
||||||
|
"label": "Disk yolu"
|
||||||
|
},
|
||||||
"disk-warning-threshold": {
|
"disk-warning-threshold": {
|
||||||
"label": "Depolama Alanı (Uyarı)"
|
"label": "Depolama Alanı (Uyarı)"
|
||||||
},
|
},
|
||||||
@@ -314,13 +343,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"taskbar-grouped": {
|
"taskbar-grouped": {
|
||||||
"show-numbers-only-when-occupied": {
|
"show-labels-only-when-occupied": {
|
||||||
"description": "Çalışma alanı numaralarını yalnızca açık pencereleri olan çalışma alanları için göster.",
|
"description": "Sadece açık pencereleri olan çalışma alanları için çalışma alanı etiketini göster.",
|
||||||
"label": "Yalnızca dolu olduğunda numaraları göster"
|
"label": "Sadece dolu olduğunda etiketi göster."
|
||||||
},
|
|
||||||
"show-workspace-numbers": {
|
|
||||||
"description": "Görev gruplarının sol üst köşesinde çalışma alanı numaralarını göster.",
|
|
||||||
"label": "Çalışma alanı numaralarını göster"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
@@ -363,13 +388,6 @@
|
|||||||
"health": "Sağlık: {percent}%",
|
"health": "Sağlık: {percent}%",
|
||||||
"idle": "Boşta.",
|
"idle": "Boşta.",
|
||||||
"no-battery-detected": "Pil tespit edilmedi.",
|
"no-battery-detected": "Pil tespit edilmedi.",
|
||||||
"panel": {
|
|
||||||
"balanced": "Dengeli ({percent}%)",
|
|
||||||
"disabled": "Pil yöneticisi devre dışı",
|
|
||||||
"full": "Tam kapasite ({percent}%)",
|
|
||||||
"lifespan": "Uzatılmış ömür ({percent}%)",
|
|
||||||
"title": "Şarj eşiği"
|
|
||||||
},
|
|
||||||
"plugged-in": "Prize takılı.",
|
"plugged-in": "Prize takılı.",
|
||||||
"time-left": "Kalan süre: {time}.",
|
"time-left": "Kalan süre: {time}.",
|
||||||
"time-until-full": "Dolma süresi: {time}."
|
"time-until-full": "Dolma süresi: {time}."
|
||||||
@@ -398,9 +416,61 @@
|
|||||||
"loading": "Hava durumu yükleniyor..."
|
"loading": "Hava durumu yükleniyor..."
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"error": {
|
||||||
|
"fetch-failed": "Değişiklik günlüğü verileri yüklenemedi. Lütfen daha sonra tekrar dene.",
|
||||||
|
"rate-limit": "GitHub sınırına ulaşıldı. Lütfen birkaç dakika sonra tekrar dene."
|
||||||
|
},
|
||||||
|
"panel": {
|
||||||
|
"buttons": {
|
||||||
|
"discord": "Discord sunucumuza katıl",
|
||||||
|
"dismiss": "Tamam"
|
||||||
|
},
|
||||||
|
"empty": "Sürüm notları henüz hazır değil.",
|
||||||
|
"highlight-title": "Öne çıkanlar",
|
||||||
|
"section": {
|
||||||
|
"released": "{date} tarihinde yayımlandı",
|
||||||
|
"version": "Sürüm {version}"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"fresh": "Noctalia’yı kurduğun için teşekkürler! Bu sürümde gelenler bunlar.",
|
||||||
|
"updated": "{previousVersion} sürümünden güncellendi"
|
||||||
|
},
|
||||||
|
"title": "{version} sürümünde neler yeni",
|
||||||
|
"version": {
|
||||||
|
"new-user": "Yeni kurulum"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"tooltip": "Takvimi aç"
|
"tooltip": "Takvimi aç"
|
||||||
},
|
},
|
||||||
|
"context-menu": {
|
||||||
|
"activate-app": "{app}'i etkinleştir",
|
||||||
|
"clear-history": "Geçmişi temizle",
|
||||||
|
"close-app": "{app}'i kapat",
|
||||||
|
"connect-vpn": "{name} bağlantısına bağlan",
|
||||||
|
"cycle-visualizer": "Döngü görselleştirici",
|
||||||
|
"disable-bluetooth": "Bluetooth'u kapat",
|
||||||
|
"disable-dnd": "Rahatsız Etmeyin'i Kapat",
|
||||||
|
"disable-wifi": "Wi-Fi'ı kapat",
|
||||||
|
"disconnect-vpn": "{name} bağlantısını kes",
|
||||||
|
"enable-bluetooth": "Bluetooth'u etkinleştir",
|
||||||
|
"enable-dnd": "Rahatsız Etmeyin'i Etkinleştir",
|
||||||
|
"enable-wifi": "Wi-Fi'ı etkinleştir",
|
||||||
|
"next": "Sonraki",
|
||||||
|
"open-calendar": "Takvimi aç",
|
||||||
|
"open-display-settings": "Ekran ayarları",
|
||||||
|
"open-launcher": "Başlatıcıyı aç",
|
||||||
|
"open-mixer": "Ses mikseri",
|
||||||
|
"open-settings": "Ayarları aç",
|
||||||
|
"pause": "Duraklat",
|
||||||
|
"play": "Oyna",
|
||||||
|
"previous": "Önceki",
|
||||||
|
"random-wallpaper": "Rastgele duvar kağıdı",
|
||||||
|
"toggle-mute": "Sesi kapat/aç",
|
||||||
|
"widget-settings": "Araç ayarları"
|
||||||
|
},
|
||||||
"dock": {
|
"dock": {
|
||||||
"menu": {
|
"menu": {
|
||||||
"close": "Kapat",
|
"close": "Kapat",
|
||||||
@@ -564,6 +634,7 @@
|
|||||||
},
|
},
|
||||||
"workspace-labels": {
|
"workspace-labels": {
|
||||||
"index": "İndeks",
|
"index": "İndeks",
|
||||||
|
"index+name": "Dizin ve Ad",
|
||||||
"name": "İsim",
|
"name": "İsim",
|
||||||
"none": "Hiçbiri"
|
"none": "Hiçbiri"
|
||||||
}
|
}
|
||||||
@@ -579,8 +650,8 @@
|
|||||||
"search": "Ara...",
|
"search": "Ara...",
|
||||||
"search-icons": "örn., noctalia, niri, battery, cloud",
|
"search-icons": "örn., noctalia, niri, battery, cloud",
|
||||||
"search-launcher": "Girişleri arayın... veya > komutları için kullanın",
|
"search-launcher": "Girişleri arayın... veya > komutları için kullanın",
|
||||||
"search-wallpapers": "Duvar kağıtlarını filtrelemek için yazın...",
|
|
||||||
"search-wallhaven": "Wallhaven'da ara...",
|
"search-wallhaven": "Wallhaven'da ara...",
|
||||||
|
"search-wallpapers": "Duvar kağıtlarını filtrelemek için yazın...",
|
||||||
"select": "Seç",
|
"select": "Seç",
|
||||||
"test": "Test"
|
"test": "Test"
|
||||||
},
|
},
|
||||||
@@ -721,6 +792,11 @@
|
|||||||
"label": "Ses cihazları"
|
"label": "Ses cihazları"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"external-mixer": {
|
||||||
|
"description": "Harici ses mikseri özelliği etkinleştirilirken başlatılacak komutu veya uygulama yolunu girin.",
|
||||||
|
"label": "Harici Ses Mikseri Komutu",
|
||||||
|
"placeholder": "pwvucontrol || pavucontrol"
|
||||||
|
},
|
||||||
"media": {
|
"media": {
|
||||||
"excluded-player": {
|
"excluded-player": {
|
||||||
"description": "Sistemin yoksaymasını istediğiniz oynatıcılar için anahtar kelimeler ekleyin. Her anahtar kelime ayrı bir satırda olmalıdır.",
|
"description": "Sistemin yoksaymasını istediğiniz oynatıcılar için anahtar kelimeler ekleyin. Her anahtar kelime ayrı bir satırda olmalıdır.",
|
||||||
@@ -795,6 +871,10 @@
|
|||||||
"description": "Barın arka plan opaklığını ayarlayın.",
|
"description": "Barın arka plan opaklığını ayarlayın.",
|
||||||
"label": "Arka plan opaklığı"
|
"label": "Arka plan opaklığı"
|
||||||
},
|
},
|
||||||
|
"capsule-opacity": {
|
||||||
|
"description": "Kapsül gösterildiğinde widget arka planlarının saydamlık seviyesini ayarla.",
|
||||||
|
"label": "Kapsül saydamlığı"
|
||||||
|
},
|
||||||
"density": {
|
"density": {
|
||||||
"description": "Sıkı veya geniş bir görünüm için barın dolgusunu ayarlayın.",
|
"description": "Sıkı veya geniş bir görünüm için barın dolgusunu ayarlayın.",
|
||||||
"label": "Bar yoğunluğu"
|
"label": "Bar yoğunluğu"
|
||||||
@@ -887,6 +967,41 @@
|
|||||||
"label": "Koyu mod"
|
"label": "Koyu mod"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"delete": {
|
||||||
|
"error": {
|
||||||
|
"description": "{scheme} silinemedi",
|
||||||
|
"title": "Silme başarısız"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} başarıyla silindi",
|
||||||
|
"title": "Renk şeması silindi"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"download": {
|
||||||
|
"button": "Daha fazla indir",
|
||||||
|
"delete": "Sil",
|
||||||
|
"download": "İndir",
|
||||||
|
"downloading": "İndiriliyor...",
|
||||||
|
"empty": "Mevcut renk şeması yok",
|
||||||
|
"error": {
|
||||||
|
"api-error": "API hatası: {status}",
|
||||||
|
"description": "{scheme} indirilemedi",
|
||||||
|
"download-failed": "İndirme başarısız, çıkış kodu: {code}",
|
||||||
|
"invalid-response": "Geçersiz API yanıt formatı",
|
||||||
|
"no-files": "Şema için dosya bulunamadı",
|
||||||
|
"parse-failed": "API yanıtı ayrıştırılamadı: {error}",
|
||||||
|
"rate-limit": "GitHub API hız sınırı aşıldı",
|
||||||
|
"title": "İndirme başarısız"
|
||||||
|
},
|
||||||
|
"fetching": "Mevcut renk şemaları alınıyor...",
|
||||||
|
"installed": "Yüklü",
|
||||||
|
"refresh": "Yenile",
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} başarıyla indirildi",
|
||||||
|
"title": "Renk şeması indirildi"
|
||||||
|
},
|
||||||
|
"title": "Renk şemalarını indir"
|
||||||
|
},
|
||||||
"predefined": {
|
"predefined": {
|
||||||
"generate-templates": {
|
"generate-templates": {
|
||||||
"description": "Önceden tanımlanmış renk şemaları kullanırken Matugen şablonları (GTK, terminal temaları vb.) oluşturun.",
|
"description": "Önceden tanımlanmış renk şemaları kullanırken Matugen şablonları (GTK, terminal temaları vb.) oluşturun.",
|
||||||
@@ -929,6 +1044,10 @@
|
|||||||
"description": "{filepath} dosyasına yaz. Comfy temasının kurulu ve manuel olarak etkinleştirilmiş olması gerekir.",
|
"description": "{filepath} dosyasına yaz. Comfy temasının kurulu ve manuel olarak etkinleştirilmiş olması gerekir.",
|
||||||
"description-missing": "Kurulum için {app} gereklidir"
|
"description-missing": "Kurulum için {app} gereklidir"
|
||||||
},
|
},
|
||||||
|
"telegram": {
|
||||||
|
"description": "{filepath} dosyasına yaz.",
|
||||||
|
"description-missing": "Kurulum için {app} gereklidir"
|
||||||
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
"description": "{filepath} dosyasına yaz ve yeniden yükle",
|
"description": "{filepath} dosyasına yaz ve yeniden yükle",
|
||||||
"description-missing": "Kurulum için {app} gereklidir"
|
"description-missing": "Kurulum için {app} gereklidir"
|
||||||
@@ -1125,6 +1244,10 @@
|
|||||||
"description": "Dock'un arka plan opaklığını ayarlayın.",
|
"description": "Dock'un arka plan opaklığını ayarlayın.",
|
||||||
"label": "Arka plan opaklığı"
|
"label": "Arka plan opaklığı"
|
||||||
},
|
},
|
||||||
|
"border-radius": {
|
||||||
|
"description": "Dock'un kenar yarıçapını ayarla.",
|
||||||
|
"label": "Kenar yarıçapı"
|
||||||
|
},
|
||||||
"colorize-icons": {
|
"colorize-icons": {
|
||||||
"description": "Dock uygulama simgelerine tema renklerini uygulayın (sadece odaklanılmamış uygulamalar).",
|
"description": "Dock uygulama simgelerine tema renklerini uygulayın (sadece odaklanılmamış uygulamalar).",
|
||||||
"label": "Simgeleri Renklendir"
|
"label": "Simgeleri Renklendir"
|
||||||
@@ -1276,6 +1399,10 @@
|
|||||||
"description": "Başlatıcının arka plan opaklığını ayarlayın.",
|
"description": "Başlatıcının arka plan opaklığını ayarlayın.",
|
||||||
"label": "Arka plan opaklığı"
|
"label": "Arka plan opaklığı"
|
||||||
},
|
},
|
||||||
|
"clip-preview": {
|
||||||
|
"description": ">clip komutu kullanılırken panodaki içeriğin önizlemesini gösterir.",
|
||||||
|
"label": "Panoyu önizlemeyi etkinleştir"
|
||||||
|
},
|
||||||
"clipboard-history": {
|
"clipboard-history": {
|
||||||
"description": "Başlatıcıdan daha önce kopyalanan öğelere erişin.",
|
"description": "Başlatıcıdan daha önce kopyalanan öğelere erişin.",
|
||||||
"label": "Pano geçmişini etkinleştir"
|
"label": "Pano geçmişini etkinleştir"
|
||||||
@@ -1364,6 +1491,10 @@
|
|||||||
"description": "Tercih ettiğiniz sıcaklık birimini seçin.",
|
"description": "Tercih ettiğiniz sıcaklık birimini seçin.",
|
||||||
"label": "Hava durumu"
|
"label": "Hava durumu"
|
||||||
},
|
},
|
||||||
|
"show-effects": {
|
||||||
|
"description": "Hava durumu kartında ek görsel efektler (yağmur, kar veya şimşek gibi) gösterir.",
|
||||||
|
"label": "Hava efektlerini göster"
|
||||||
|
},
|
||||||
"show-in-calendar": {
|
"show-in-calendar": {
|
||||||
"description": "Günlük hava durumu tahminini doğrudan takvim görünümünüzde gösterin.",
|
"description": "Günlük hava durumu tahminini doğrudan takvim görünümünüzde gösterin.",
|
||||||
"label": "Takvimde hava durumunu göster"
|
"label": "Takvimde hava durumunu göster"
|
||||||
@@ -1379,6 +1510,10 @@
|
|||||||
"description": "Sistemi askıya alırken otomatik olarak ekranı kilitler.",
|
"description": "Sistemi askıya alırken otomatik olarak ekranı kilitler.",
|
||||||
"label": "Askıya alırken kilitle"
|
"label": "Askıya alırken kilitle"
|
||||||
},
|
},
|
||||||
|
"show-hibernate": {
|
||||||
|
"description": "Güç işlemlerinde 'hazırda beklet' seçeneğini göster.",
|
||||||
|
"label": "Hazırda beklet seçeneğini göster"
|
||||||
|
},
|
||||||
"title": "Ekran Kilit"
|
"title": "Ekran Kilit"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -1663,6 +1798,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"user-interface": {
|
"user-interface": {
|
||||||
|
"allow-panels-without-bar": {
|
||||||
|
"description": "Etkinleştirildiğinde, paneller herhangi bir ekranda açılabilir. Devre dışı bırakıldığında, paneller yalnızca bir çubuğu olan ekranlarda açılır, bu da bellek kullanımını azaltabilir.",
|
||||||
|
"label": "Çubuksuz ekranlardaki panellere izin ver."
|
||||||
|
},
|
||||||
"animation-disable": {
|
"animation-disable": {
|
||||||
"description": "Daha hızlı ve daha duyarlı bir deneyim için tüm animasyonları devre dışı bırakın.",
|
"description": "Daha hızlı ve daha duyarlı bir deneyim için tüm animasyonları devre dışı bırakın.",
|
||||||
"label": "UI Animasyonlarını Devre Dışı Bırak"
|
"label": "UI Animasyonlarını Devre Dışı Bırak"
|
||||||
@@ -1870,19 +2009,6 @@
|
|||||||
"low": "Düşük batarya",
|
"low": "Düşük batarya",
|
||||||
"low-desc": "Batarya % {percent}. Lütfen şarj bağlantısını yapın."
|
"low-desc": "Batarya % {percent}. Lütfen şarj bağlantısını yapın."
|
||||||
},
|
},
|
||||||
"battery-manager": {
|
|
||||||
"initial-setup": "Başlangıç kurulumu gerekli",
|
|
||||||
"install-failed": "Kurulum başarısız oldu",
|
|
||||||
"install-missing": "Gerekli dosyalar eksik",
|
|
||||||
"install-success": "Başarıyla kuruldu",
|
|
||||||
"install-unsupported": "Sistem desteklenmiyor",
|
|
||||||
"set-failed": "Batarya eşiği ayarlanamadı",
|
|
||||||
"set-success-desc": "Batarya eşiği % {percent} olarak ayarlandı",
|
|
||||||
"title": "Batarya eşiği",
|
|
||||||
"uninstall-failed": "Kaldırma başarısız oldu",
|
|
||||||
"uninstall-setup": "Kaldırılıyor, kimlik doğrulama gerekli",
|
|
||||||
"uninstall-success": "Başarıyla kaldırıldı"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"disabled": "Devre dışı",
|
"disabled": "Devre dışı",
|
||||||
"enabled": "Etkin"
|
"enabled": "Etkin"
|
||||||
@@ -1951,6 +2077,10 @@
|
|||||||
"title-matugen": "Matugen şablon işleme başarısız oldu.",
|
"title-matugen": "Matugen şablon işleme başarısız oldu.",
|
||||||
"title-predefined": "Önceden tanımlanmış renk şeması işleme başarısız oldu."
|
"title-predefined": "Önceden tanımlanmış renk şeması işleme başarısız oldu."
|
||||||
},
|
},
|
||||||
|
"vpn": {
|
||||||
|
"connected": "'{name}' ile bağlantı kuruldu",
|
||||||
|
"disconnected": "'{name}' bağlantısı kesildi"
|
||||||
|
},
|
||||||
"wallpaper-colors": {
|
"wallpaper-colors": {
|
||||||
"disabled": "Duvar kağıdı renkleri devre dışı",
|
"disabled": "Duvar kağıdı renkleri devre dışı",
|
||||||
"enabled": "Duvar kağıdı renkleri etkin",
|
"enabled": "Duvar kağıdı renkleri etkin",
|
||||||
@@ -1984,6 +2114,7 @@
|
|||||||
"input-muted": "Giriş sessizliğini değiştir",
|
"input-muted": "Giriş sessizliğini değiştir",
|
||||||
"keep-awake": "Uyanık kal",
|
"keep-awake": "Uyanık kal",
|
||||||
"keyboard-layout": "{layout} klavye düzeni",
|
"keyboard-layout": "{layout} klavye düzeni",
|
||||||
|
"manage-vpn": "VPN bağlantılarını yönet",
|
||||||
"manage-wifi": "Wi-Fi yönet",
|
"manage-wifi": "Wi-Fi yönet",
|
||||||
"microphone-volume-at": "Mikrofon sesi %{volume}\nAyarlar için sol tık. Sessize almak için sağ tık.\nSesi değiştirmek için kaydırın.",
|
"microphone-volume-at": "Mikrofon sesi %{volume}\nAyarlar için sol tık. Sessize almak için sağ tık.\nSesi değiştirmek için kaydırın.",
|
||||||
"move-to-center-section": "Orta bölüme taşı",
|
"move-to-center-section": "Orta bölüme taşı",
|
||||||
@@ -2047,6 +2178,11 @@
|
|||||||
"label": "Kategoriler",
|
"label": "Kategoriler",
|
||||||
"people": "İnsanlar"
|
"people": "İnsanlar"
|
||||||
},
|
},
|
||||||
|
"order": {
|
||||||
|
"asc": "Artan",
|
||||||
|
"desc": "Azalan",
|
||||||
|
"label": "Sıra"
|
||||||
|
},
|
||||||
"purity": {
|
"purity": {
|
||||||
"all": "Tümü",
|
"all": "Tümü",
|
||||||
"label": "İçerik filtresi",
|
"label": "İçerik filtresi",
|
||||||
@@ -2071,21 +2207,16 @@
|
|||||||
"toplist": "En iyi liste",
|
"toplist": "En iyi liste",
|
||||||
"views": "Görüntülemeler"
|
"views": "Görüntülemeler"
|
||||||
},
|
},
|
||||||
"order": {
|
|
||||||
"asc": "Artan",
|
|
||||||
"desc": "Azalan",
|
|
||||||
"label": "Sıra"
|
|
||||||
},
|
|
||||||
"wallhaven-settings": {
|
|
||||||
"apply": "Uygula",
|
|
||||||
"title": "Wallhaven Ayarları"
|
|
||||||
},
|
|
||||||
"source": {
|
"source": {
|
||||||
"label": "Kaynak",
|
"label": "Kaynak",
|
||||||
"local": "Yerel",
|
"local": "Yerel",
|
||||||
"wallhaven": "Wallhaven"
|
"wallhaven": "Wallhaven"
|
||||||
},
|
},
|
||||||
"title": "Duvar kağıdı seçici"
|
"title": "Duvar kağıdı seçici",
|
||||||
|
"wallhaven-settings": {
|
||||||
|
"apply": "Uygula",
|
||||||
|
"title": "Wallhaven Ayarları"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"transitions": {
|
"transitions": {
|
||||||
"disc": "Disk",
|
"disc": "Disk",
|
||||||
@@ -2096,10 +2227,11 @@
|
|||||||
"wipe": "Silme"
|
"wipe": "Silme"
|
||||||
},
|
},
|
||||||
"try-different-search": "Farklı bir arama sorgusu deneyin.",
|
"try-different-search": "Farklı bir arama sorgusu deneyin.",
|
||||||
|
"unknown": "Bilinmiyor",
|
||||||
"wallhaven": {
|
"wallhaven": {
|
||||||
"loading": "Duvar kağıtları yükleniyor...",
|
"loading": "Duvar kağıtları yükleniyor...",
|
||||||
"no-results": "Duvar kağıdı bulunamadı. Farklı bir arama sorgusu deneyin.",
|
"no-results": "Duvar kağıdı bulunamadı. Farklı bir arama sorgusu deneyin.",
|
||||||
"page": "Sayfa {current} / {total}"
|
"page": "{current} / {total}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weather": {
|
"weather": {
|
||||||
@@ -2209,6 +2341,7 @@
|
|||||||
},
|
},
|
||||||
"wifi": {
|
"wifi": {
|
||||||
"panel": {
|
"panel": {
|
||||||
|
"available-networks": "Kullanılabilir Ağlar",
|
||||||
"connect": "Bağlan",
|
"connect": "Bağlan",
|
||||||
"connected": "Bağlı",
|
"connected": "Bağlı",
|
||||||
"disabled": "Wi-Fi devre dışı",
|
"disabled": "Wi-Fi devre dışı",
|
||||||
@@ -2219,6 +2352,7 @@
|
|||||||
"forget": "Unut",
|
"forget": "Unut",
|
||||||
"forget-network": "Bu ağı unut?",
|
"forget-network": "Bu ağı unut?",
|
||||||
"forgetting": "Unutuluyor...",
|
"forgetting": "Unutuluyor...",
|
||||||
|
"known-networks": "Bilinen Ağlar",
|
||||||
"no-networks": "Ağ bulunamadı",
|
"no-networks": "Ağ bulunamadı",
|
||||||
"password": "Şifre",
|
"password": "Şifre",
|
||||||
"saved": "Kaydedildi",
|
"saved": "Kaydedildi",
|
||||||
|
|||||||
@@ -123,10 +123,6 @@
|
|||||||
"stream-description": "Введіть команду для безперервного запуску."
|
"stream-description": "Введіть команду для безперервного запуску."
|
||||||
},
|
},
|
||||||
"dynamic-text": "Динамічний текст",
|
"dynamic-text": "Динамічний текст",
|
||||||
"hide-vertical": {
|
|
||||||
"description": "Якщо увімкнено, текст з виводу команди не відображатиметься, коли панель знаходиться у вертикальному розташуванні (ліворуч або праворуч).",
|
|
||||||
"label": "Приховати текст у вертикальній панелі"
|
|
||||||
},
|
|
||||||
"icon": {
|
"icon": {
|
||||||
"description": "Вибрати значок з бібліотеки.",
|
"description": "Вибрати значок з бібліотеки.",
|
||||||
"label": "Значок"
|
"label": "Значок"
|
||||||
@@ -136,6 +132,14 @@
|
|||||||
"label": "Лівий клік",
|
"label": "Лівий клік",
|
||||||
"update-text": "Оновити текст, що відображається, при натисканні лівою кнопкою миші"
|
"update-text": "Оновити текст, що відображається, при натисканні лівою кнопкою миші"
|
||||||
},
|
},
|
||||||
|
"max-text-length-horizontal": {
|
||||||
|
"description": "Максимальна кількість символів для відображення в горизонтальній панелі (0 щоб приховати текст)",
|
||||||
|
"label": "Макс. довжина тексту (горизонтально)"
|
||||||
|
},
|
||||||
|
"max-text-length-vertical": {
|
||||||
|
"description": "Максимальна кількість символів для відображення в вертикальній панелі (0 щоб приховати текст)",
|
||||||
|
"label": "Макс. довжина тексту (вертикально)"
|
||||||
|
},
|
||||||
"middle-click": {
|
"middle-click": {
|
||||||
"description": "Команда для виконання при середньому кліку на кнопку.",
|
"description": "Команда для виконання при середньому кліку на кнопку.",
|
||||||
"label": "Середній клік",
|
"label": "Середній клік",
|
||||||
@@ -157,6 +161,23 @@
|
|||||||
"text-stream": {
|
"text-stream": {
|
||||||
"description": "Потокові рядки з команди відображатимуться як текст на кнопці.",
|
"description": "Потокові рядки з команди відображатимуться як текст на кнопці.",
|
||||||
"label": "Потік"
|
"label": "Потік"
|
||||||
|
},
|
||||||
|
"wheel": {
|
||||||
|
"description": "Команда для виконання при використанні колеса прокрутки.\nВикористовуйте $delta для дельти колеса прокрутки в команді",
|
||||||
|
"label": "Колесо прокрутки",
|
||||||
|
"update-text": "Оновити відображуваний текст при прокрутці"
|
||||||
|
},
|
||||||
|
"wheel-down": {
|
||||||
|
"description": "Команда для виконання при прокрутці колеса вниз.",
|
||||||
|
"label": "Команда прокрутки колеса вниз"
|
||||||
|
},
|
||||||
|
"wheel-mode-separate": {
|
||||||
|
"description": "Увімкнути окремі команди для колеса прокрутки вгору та вниз",
|
||||||
|
"label": "Окремі команди колеса прокрутки"
|
||||||
|
},
|
||||||
|
"wheel-up": {
|
||||||
|
"description": "Команда для виконання при прокрутці колеса вгору.",
|
||||||
|
"label": "Команда прокрутки колеса вгору"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dialog": {
|
"dialog": {
|
||||||
@@ -202,6 +223,10 @@
|
|||||||
"description": "Відображати обкладинку альбому для поточного треку.",
|
"description": "Відображати обкладинку альбому для поточного треку.",
|
||||||
"label": "Показувати обкладинку альбому"
|
"label": "Показувати обкладинку альбому"
|
||||||
},
|
},
|
||||||
|
"show-artist-first": {
|
||||||
|
"description": "Відображати виконавець - назва замість назва - виконавець.",
|
||||||
|
"label": "Показувати спочатку виконавця"
|
||||||
|
},
|
||||||
"show-visualizer": {
|
"show-visualizer": {
|
||||||
"description": "Відображати аудіовізуалізатор під час відтворення музики.",
|
"description": "Відображати аудіовізуалізатор під час відтворення музики.",
|
||||||
"label": "Показувати візуалізатор"
|
"label": "Показувати візуалізатор"
|
||||||
@@ -259,6 +284,10 @@
|
|||||||
"disk-critical-threshold": {
|
"disk-critical-threshold": {
|
||||||
"label": "Місце на диску (Критичний)"
|
"label": "Місце на диску (Критичний)"
|
||||||
},
|
},
|
||||||
|
"disk-path": {
|
||||||
|
"description": "Виберіть точку монтування диска для моніторингу.",
|
||||||
|
"label": "Шлях до диска"
|
||||||
|
},
|
||||||
"disk-warning-threshold": {
|
"disk-warning-threshold": {
|
||||||
"label": "Місце на диску (Попередження)"
|
"label": "Місце на диску (Попередження)"
|
||||||
},
|
},
|
||||||
@@ -314,13 +343,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"taskbar-grouped": {
|
"taskbar-grouped": {
|
||||||
"show-numbers-only-when-occupied": {
|
"show-labels-only-when-occupied": {
|
||||||
"description": "Показувати номери лише для робочих просторів з відкритими вікнами",
|
"description": "Показувати мітку робочого простору лише для робочих просторів, які мають відкриті вікна.",
|
||||||
"label": "Показувати номера лише коли зайнято"
|
"label": "Показувати мітку лише коли зайнято"
|
||||||
},
|
|
||||||
"show-workspace-numbers": {
|
|
||||||
"description": "Показувати номери робочих просторів у лівому верхньому куті групи завдань",
|
|
||||||
"label": "Показувати номери робочих просторів"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
@@ -363,13 +388,6 @@
|
|||||||
"health": "Здоров'я: {percent}%",
|
"health": "Здоров'я: {percent}%",
|
||||||
"idle": "Бездіяльність.",
|
"idle": "Бездіяльність.",
|
||||||
"no-battery-detected": "Батарею не виявлено.",
|
"no-battery-detected": "Батарею не виявлено.",
|
||||||
"panel": {
|
|
||||||
"balanced": "Збалансований ({percent}%)",
|
|
||||||
"disabled": "Менеджер батареї вимкнено",
|
|
||||||
"full": "Повна ємність ({percent}%)",
|
|
||||||
"lifespan": "Подовжений термін служби ({percent}%)",
|
|
||||||
"title": "Поріг зарядки"
|
|
||||||
},
|
|
||||||
"plugged-in": "Підключено.",
|
"plugged-in": "Підключено.",
|
||||||
"time-left": "Залишилось часу: {time}.",
|
"time-left": "Залишилось часу: {time}.",
|
||||||
"time-until-full": "Час до повного заряду: {time}."
|
"time-until-full": "Час до повного заряду: {time}."
|
||||||
@@ -398,9 +416,61 @@
|
|||||||
"loading": "Завантаження погоди…"
|
"loading": "Завантаження погоди…"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"error": {
|
||||||
|
"fetch-failed": "Не вдалося завантажити дані журналу змін. Будь ласка, спробуйте пізніше.",
|
||||||
|
"rate-limit": "Перевищено ліміт GitHub. Спробуйте ще раз за кілька хвилин."
|
||||||
|
},
|
||||||
|
"panel": {
|
||||||
|
"buttons": {
|
||||||
|
"discord": "Приєднатися до нашого Discord",
|
||||||
|
"dismiss": "Ок"
|
||||||
|
},
|
||||||
|
"empty": "Примітки до релізу ще недоступні.",
|
||||||
|
"highlight-title": "Основні зміни",
|
||||||
|
"section": {
|
||||||
|
"released": "Випущено {date}",
|
||||||
|
"version": "Версія {version}"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"fresh": "Дякуємо, що встановили Noctalia! Ось що містить цей білд.",
|
||||||
|
"updated": "Оновлено з {previousVersion}"
|
||||||
|
},
|
||||||
|
"title": "Що нового у {version}",
|
||||||
|
"version": {
|
||||||
|
"new-user": "Нове встановлення"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"tooltip": "Відкрити календар"
|
"tooltip": "Відкрити календар"
|
||||||
},
|
},
|
||||||
|
"context-menu": {
|
||||||
|
"activate-app": "Активувати {app}",
|
||||||
|
"clear-history": "Очистити історію",
|
||||||
|
"close-app": "Закрити {app}",
|
||||||
|
"connect-vpn": "Підключитися до {name}",
|
||||||
|
"cycle-visualizer": "Візуалізатор циклів",
|
||||||
|
"disable-bluetooth": "Вимкнути Bluetooth",
|
||||||
|
"disable-dnd": "Вимкнути режим \"Не турбувати\"",
|
||||||
|
"disable-wifi": "Вимкнути Wi-Fi",
|
||||||
|
"disconnect-vpn": "Відключити {name}",
|
||||||
|
"enable-bluetooth": "Увімкнути Bluetooth",
|
||||||
|
"enable-dnd": "Увімкнути режим \"Не турбувати\"",
|
||||||
|
"enable-wifi": "Увімкнути Wi-Fi",
|
||||||
|
"next": "Наступний",
|
||||||
|
"open-calendar": "Відкрити календар",
|
||||||
|
"open-display-settings": "Параметри дисплея",
|
||||||
|
"open-launcher": "Відкрити панель запуску",
|
||||||
|
"open-mixer": "Аудіомікшер",
|
||||||
|
"open-settings": "Відкрити налаштування",
|
||||||
|
"pause": "Пауза",
|
||||||
|
"play": "Грати",
|
||||||
|
"previous": "Попередній",
|
||||||
|
"random-wallpaper": "Випадкові шпалери",
|
||||||
|
"toggle-mute": "Увімкнути/вимкнути звук",
|
||||||
|
"widget-settings": "Налаштування віджета"
|
||||||
|
},
|
||||||
"dock": {
|
"dock": {
|
||||||
"menu": {
|
"menu": {
|
||||||
"close": "Закрити",
|
"close": "Закрити",
|
||||||
@@ -564,6 +634,7 @@
|
|||||||
},
|
},
|
||||||
"workspace-labels": {
|
"workspace-labels": {
|
||||||
"index": "Індекс",
|
"index": "Індекс",
|
||||||
|
"index+name": "Індекс та назва",
|
||||||
"name": "Назва",
|
"name": "Назва",
|
||||||
"none": "Немає"
|
"none": "Немає"
|
||||||
}
|
}
|
||||||
@@ -579,8 +650,8 @@
|
|||||||
"search": "Пошук...",
|
"search": "Пошук...",
|
||||||
"search-icons": "напр., noctalia, niri, battery, cloud",
|
"search-icons": "напр., noctalia, niri, battery, cloud",
|
||||||
"search-launcher": "Пошук записів... або використовуйте > для команд",
|
"search-launcher": "Пошук записів... або використовуйте > для команд",
|
||||||
"search-wallpapers": "Введіть для фільтрації шпалер...",
|
|
||||||
"search-wallhaven": "Пошук у Wallhaven...",
|
"search-wallhaven": "Пошук у Wallhaven...",
|
||||||
|
"search-wallpapers": "Введіть для фільтрації шпалер...",
|
||||||
"select": "Вибрати",
|
"select": "Вибрати",
|
||||||
"test": "Тест"
|
"test": "Тест"
|
||||||
},
|
},
|
||||||
@@ -721,6 +792,11 @@
|
|||||||
"label": "Аудіопристрої"
|
"label": "Аудіопристрої"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"external-mixer": {
|
||||||
|
"description": "Введіть команду або шлях до програми для запуску при активації функції зовнішнього аудіомікшера.",
|
||||||
|
"label": "Команда зовнішнього аудіомікшера",
|
||||||
|
"placeholder": "pwvucontrol || pavucontrol"
|
||||||
|
},
|
||||||
"media": {
|
"media": {
|
||||||
"excluded-player": {
|
"excluded-player": {
|
||||||
"description": "Додайте ключові слова для плеєрів, які система має ігнорувати. Кожне ключове слово на новому рядку.",
|
"description": "Додайте ключові слова для плеєрів, які система має ігнорувати. Кожне ключове слово на новому рядку.",
|
||||||
@@ -795,6 +871,10 @@
|
|||||||
"description": "Налаштуйте непрозорість фону панелі.",
|
"description": "Налаштуйте непрозорість фону панелі.",
|
||||||
"label": "Непрозорість фону"
|
"label": "Непрозорість фону"
|
||||||
},
|
},
|
||||||
|
"capsule-opacity": {
|
||||||
|
"description": "Встановити рівень непрозорості для фону віджетів, коли показано капсулу.",
|
||||||
|
"label": "Непрозорість капсули"
|
||||||
|
},
|
||||||
"density": {
|
"density": {
|
||||||
"description": "Налаштуйте відступи панелі для компактного або просторого вигляду.",
|
"description": "Налаштуйте відступи панелі для компактного або просторого вигляду.",
|
||||||
"label": "Щільність панелі"
|
"label": "Щільність панелі"
|
||||||
@@ -887,6 +967,41 @@
|
|||||||
"label": "Темний режим"
|
"label": "Темний режим"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"delete": {
|
||||||
|
"error": {
|
||||||
|
"description": "Не вдалося видалити {scheme}",
|
||||||
|
"title": "Помилка видалення"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} успішно видалено",
|
||||||
|
"title": "Кольорову схему видалено"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"download": {
|
||||||
|
"button": "Завантажити ще",
|
||||||
|
"delete": "Видалити",
|
||||||
|
"download": "Завантажити",
|
||||||
|
"downloading": "Завантаження...",
|
||||||
|
"empty": "Немає доступних кольорових схем",
|
||||||
|
"error": {
|
||||||
|
"api-error": "Помилка API: {status}",
|
||||||
|
"description": "Не вдалося завантажити {scheme}",
|
||||||
|
"download-failed": "Помилка завантаження з кодом виходу: {code}",
|
||||||
|
"invalid-response": "Невірний формат відповіді API",
|
||||||
|
"no-files": "Файли для схеми не знайдено",
|
||||||
|
"parse-failed": "Помилка парсингу відповіді API: {error}",
|
||||||
|
"rate-limit": "Перевищено ліміт запитів GitHub API",
|
||||||
|
"title": "Помилка завантаження"
|
||||||
|
},
|
||||||
|
"fetching": "Отримання доступних кольорових схем...",
|
||||||
|
"installed": "Встановлено",
|
||||||
|
"refresh": "Оновити",
|
||||||
|
"success": {
|
||||||
|
"description": "{scheme} успішно завантажено",
|
||||||
|
"title": "Кольорову схему завантажено"
|
||||||
|
},
|
||||||
|
"title": "Завантажити кольорові схеми"
|
||||||
|
},
|
||||||
"predefined": {
|
"predefined": {
|
||||||
"generate-templates": {
|
"generate-templates": {
|
||||||
"description": "Генерувати шаблони Matugen (GTK, теми терміналу тощо) при використанні попередньо визначених колірних схем.",
|
"description": "Генерувати шаблони Matugen (GTK, теми терміналу тощо) при використанні попередньо визначених колірних схем.",
|
||||||
@@ -929,6 +1044,10 @@
|
|||||||
"description": "Записати {filepath}. Тему Comfy потрібно встановити та активувати вручну.",
|
"description": "Записати {filepath}. Тему Comfy потрібно встановити та активувати вручну.",
|
||||||
"description-missing": "Потрібна установка {app}"
|
"description-missing": "Потрібна установка {app}"
|
||||||
},
|
},
|
||||||
|
"telegram": {
|
||||||
|
"description": "Записати {filepath}.",
|
||||||
|
"description-missing": "Потрібна установка {app}"
|
||||||
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
"description": "Записати {filepath} та перезавантажити",
|
"description": "Записати {filepath} та перезавантажити",
|
||||||
"description-missing": "Потрібна установка {app}"
|
"description-missing": "Потрібна установка {app}"
|
||||||
@@ -1125,6 +1244,10 @@
|
|||||||
"description": "Налаштуйте непрозорість фону дока.",
|
"description": "Налаштуйте непрозорість фону дока.",
|
||||||
"label": "Непрозорість фону"
|
"label": "Непрозорість фону"
|
||||||
},
|
},
|
||||||
|
"border-radius": {
|
||||||
|
"description": "Налаштуйте радіус заокруглення країв док-панелі.",
|
||||||
|
"label": "Радіус заокруглення"
|
||||||
|
},
|
||||||
"colorize-icons": {
|
"colorize-icons": {
|
||||||
"description": "Застосувати кольори теми до значків програм у доці (тільки неактивні програми).",
|
"description": "Застосувати кольори теми до значків програм у доці (тільки неактивні програми).",
|
||||||
"label": "Розфарбувати значки"
|
"label": "Розфарбувати значки"
|
||||||
@@ -1276,6 +1399,10 @@
|
|||||||
"description": "Налаштуйте непрозорість фону запускача.",
|
"description": "Налаштуйте непрозорість фону запускача.",
|
||||||
"label": "Непрозорість фону"
|
"label": "Непрозорість фону"
|
||||||
},
|
},
|
||||||
|
"clip-preview": {
|
||||||
|
"description": "Показувати попередній перегляд вмісту буфера обміну при використанні команди >clip.",
|
||||||
|
"label": "Увімкнути попередній перегляд буфера обміну"
|
||||||
|
},
|
||||||
"clipboard-history": {
|
"clipboard-history": {
|
||||||
"description": "Отримати доступ до раніше скопійованих елементів із запускача.",
|
"description": "Отримати доступ до раніше скопійованих елементів із запускача.",
|
||||||
"label": "Увімкнути історію буфера обміну"
|
"label": "Увімкнути історію буфера обміну"
|
||||||
@@ -1364,6 +1491,10 @@
|
|||||||
"description": "Виберіть бажану одиницю температури.",
|
"description": "Виберіть бажану одиницю температури.",
|
||||||
"label": "Погода"
|
"label": "Погода"
|
||||||
},
|
},
|
||||||
|
"show-effects": {
|
||||||
|
"description": "Показує додаткові візуальні ефекти (наприклад, дощ, сніг або блискавку) на картці погоди.",
|
||||||
|
"label": "Відображати погодні ефекти"
|
||||||
|
},
|
||||||
"show-in-calendar": {
|
"show-in-calendar": {
|
||||||
"description": "Показувати щоденний прогноз погоди безпосередньо в календарі.",
|
"description": "Показувати щоденний прогноз погоди безпосередньо в календарі.",
|
||||||
"label": "Відображати погоду в календарі"
|
"label": "Відображати погоду в календарі"
|
||||||
@@ -1379,6 +1510,10 @@
|
|||||||
"description": "Автоматично блокувати екран при призупиненні системи.",
|
"description": "Автоматично блокувати екран при призупиненні системи.",
|
||||||
"label": "Блокувати при призупиненні"
|
"label": "Блокувати при призупиненні"
|
||||||
},
|
},
|
||||||
|
"show-hibernate": {
|
||||||
|
"description": "Показувати опцію 'сплячий режим' у діях живлення.",
|
||||||
|
"label": "Показувати сплячий режим"
|
||||||
|
},
|
||||||
"title": "Екран блокування"
|
"title": "Екран блокування"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -1663,6 +1798,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"user-interface": {
|
"user-interface": {
|
||||||
|
"allow-panels-without-bar": {
|
||||||
|
"description": "Якщо ввімкнено, панелі можуть відкриватися на будь-якому екрані. Якщо вимкнено, панелі відкриватимуться лише на екранах, де є панель завдань, що може зменшити використання пам'яті.",
|
||||||
|
"label": "Дозволити панелі на екранах без панелі завдань."
|
||||||
|
},
|
||||||
"animation-disable": {
|
"animation-disable": {
|
||||||
"description": "Вимкнути всі анімації для швидшого, більш відгукового досвіду.",
|
"description": "Вимкнути всі анімації для швидшого, більш відгукового досвіду.",
|
||||||
"label": "Вимкнути анімації інтерфейсу"
|
"label": "Вимкнути анімації інтерфейсу"
|
||||||
@@ -1870,19 +2009,6 @@
|
|||||||
"low": "Низький заряд батареї",
|
"low": "Низький заряд батареї",
|
||||||
"low-desc": "Батарея на {percent}%. Будь ласка, підключіть зарядний пристрій."
|
"low-desc": "Батарея на {percent}%. Будь ласка, підключіть зарядний пристрій."
|
||||||
},
|
},
|
||||||
"battery-manager": {
|
|
||||||
"initial-setup": "Потрібне початкове налаштування",
|
|
||||||
"install-failed": "Помилка встановлення",
|
|
||||||
"install-missing": "Необхідні файли відсутні",
|
|
||||||
"install-success": "Встановлено успішно",
|
|
||||||
"install-unsupported": "Система не підтримується",
|
|
||||||
"set-failed": "Не вдалося встановити поріг батареї",
|
|
||||||
"set-success-desc": "Поріг батареї встановлено на {percent}%",
|
|
||||||
"title": "Поріг батареї",
|
|
||||||
"uninstall-failed": "Помилка видалення",
|
|
||||||
"uninstall-setup": "Видалення, потрібна автентифікація",
|
|
||||||
"uninstall-success": "Видалено успішно"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"disabled": "Вимкнено",
|
"disabled": "Вимкнено",
|
||||||
"enabled": "Увімкнено"
|
"enabled": "Увімкнено"
|
||||||
@@ -1951,6 +2077,10 @@
|
|||||||
"title-matugen": "Помилка обробки шаблонів Matugen",
|
"title-matugen": "Помилка обробки шаблонів Matugen",
|
||||||
"title-predefined": "Помилка обробки попередньо визначеної колірної схеми"
|
"title-predefined": "Помилка обробки попередньо визначеної колірної схеми"
|
||||||
},
|
},
|
||||||
|
"vpn": {
|
||||||
|
"connected": "Підключено до '{name}'",
|
||||||
|
"disconnected": "Відключено від '{name}'"
|
||||||
|
},
|
||||||
"wallpaper-colors": {
|
"wallpaper-colors": {
|
||||||
"disabled": "Кольори шпалер вимкнено",
|
"disabled": "Кольори шпалер вимкнено",
|
||||||
"enabled": "Кольори шпалер увімкнено",
|
"enabled": "Кольори шпалер увімкнено",
|
||||||
@@ -1984,6 +2114,7 @@
|
|||||||
"input-muted": "Перемкнути вимкнення входу",
|
"input-muted": "Перемкнути вимкнення входу",
|
||||||
"keep-awake": "Не спати",
|
"keep-awake": "Не спати",
|
||||||
"keyboard-layout": "Розкладка клавіатури {layout}",
|
"keyboard-layout": "Розкладка клавіатури {layout}",
|
||||||
|
"manage-vpn": "Керувати підключеннями VPN",
|
||||||
"manage-wifi": "Керувати Wi-Fi",
|
"manage-wifi": "Керувати Wi-Fi",
|
||||||
"microphone-volume-at": "Гучність мікрофона на {volume}%\nЛівий клік для налаштувань. Правий клік для вимкнення звуку.\nПрокрутка для зміни гучності.",
|
"microphone-volume-at": "Гучність мікрофона на {volume}%\nЛівий клік для налаштувань. Правий клік для вимкнення звуку.\nПрокрутка для зміни гучності.",
|
||||||
"move-to-center-section": "Перемістити в центральну секцію",
|
"move-to-center-section": "Перемістити в центральну секцію",
|
||||||
@@ -2047,6 +2178,11 @@
|
|||||||
"label": "Категорії",
|
"label": "Категорії",
|
||||||
"people": "Люди"
|
"people": "Люди"
|
||||||
},
|
},
|
||||||
|
"order": {
|
||||||
|
"asc": "За зростанням",
|
||||||
|
"desc": "За спаданням",
|
||||||
|
"label": "Порядок"
|
||||||
|
},
|
||||||
"purity": {
|
"purity": {
|
||||||
"all": "Всі",
|
"all": "Всі",
|
||||||
"label": "Фільтр контенту",
|
"label": "Фільтр контенту",
|
||||||
@@ -2071,21 +2207,16 @@
|
|||||||
"toplist": "Топ-лист",
|
"toplist": "Топ-лист",
|
||||||
"views": "Перегляди"
|
"views": "Перегляди"
|
||||||
},
|
},
|
||||||
"order": {
|
|
||||||
"asc": "За зростанням",
|
|
||||||
"desc": "За спаданням",
|
|
||||||
"label": "Порядок"
|
|
||||||
},
|
|
||||||
"wallhaven-settings": {
|
|
||||||
"apply": "Застосувати",
|
|
||||||
"title": "Налаштування Wallhaven"
|
|
||||||
},
|
|
||||||
"source": {
|
"source": {
|
||||||
"label": "Джерело",
|
"label": "Джерело",
|
||||||
"local": "Локальний",
|
"local": "Локальний",
|
||||||
"wallhaven": "Wallhaven"
|
"wallhaven": "Wallhaven"
|
||||||
},
|
},
|
||||||
"title": "Вибір шпалер"
|
"title": "Вибір шпалер",
|
||||||
|
"wallhaven-settings": {
|
||||||
|
"apply": "Застосувати",
|
||||||
|
"title": "Налаштування Wallhaven"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"transitions": {
|
"transitions": {
|
||||||
"disc": "Диск",
|
"disc": "Диск",
|
||||||
@@ -2096,10 +2227,11 @@
|
|||||||
"wipe": "Змітання"
|
"wipe": "Змітання"
|
||||||
},
|
},
|
||||||
"try-different-search": "Спробуйте інший пошуковий запит.",
|
"try-different-search": "Спробуйте інший пошуковий запит.",
|
||||||
|
"unknown": "Невідомо",
|
||||||
"wallhaven": {
|
"wallhaven": {
|
||||||
"loading": "Завантаження шпалер...",
|
"loading": "Завантаження шпалер...",
|
||||||
"no-results": "Шпалери не знайдено. Спробуйте інший пошуковий запит.",
|
"no-results": "Шпалери не знайдено. Спробуйте інший пошуковий запит.",
|
||||||
"page": "Сторінка {current} з {total}"
|
"page": "{current} з {total}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weather": {
|
"weather": {
|
||||||
@@ -2209,6 +2341,7 @@
|
|||||||
},
|
},
|
||||||
"wifi": {
|
"wifi": {
|
||||||
"panel": {
|
"panel": {
|
||||||
|
"available-networks": "Доступні мережі",
|
||||||
"connect": "Підключити",
|
"connect": "Підключити",
|
||||||
"connected": "Підключено",
|
"connected": "Підключено",
|
||||||
"disabled": "Wi-Fi вимкнено",
|
"disabled": "Wi-Fi вимкнено",
|
||||||
@@ -2219,6 +2352,7 @@
|
|||||||
"forget": "Забути",
|
"forget": "Забути",
|
||||||
"forget-network": "Забути цю мережу?",
|
"forget-network": "Забути цю мережу?",
|
||||||
"forgetting": "Забування...",
|
"forgetting": "Забування...",
|
||||||
|
"known-networks": "Відомі мережі",
|
||||||
"no-networks": "Мереж не знайдено",
|
"no-networks": "Мереж не знайдено",
|
||||||
"password": "Пароль",
|
"password": "Пароль",
|
||||||
"saved": "Збережено",
|
"saved": "Збережено",
|
||||||
|
|||||||
@@ -123,10 +123,6 @@
|
|||||||
"stream-description": "输入一个要持续运行的命令。"
|
"stream-description": "输入一个要持续运行的命令。"
|
||||||
},
|
},
|
||||||
"dynamic-text": "动态文本",
|
"dynamic-text": "动态文本",
|
||||||
"hide-vertical": {
|
|
||||||
"description": "如果启用,当栏处于垂直布局(左或右)时,将不显示命令输出的文本。",
|
|
||||||
"label": "在垂直栏中隐藏文本"
|
|
||||||
},
|
|
||||||
"icon": {
|
"icon": {
|
||||||
"description": "从库中选择图标。",
|
"description": "从库中选择图标。",
|
||||||
"label": "图标"
|
"label": "图标"
|
||||||
@@ -136,6 +132,14 @@
|
|||||||
"label": "左键点击",
|
"label": "左键点击",
|
||||||
"update-text": "左键单击时更新显示的文本"
|
"update-text": "左键单击时更新显示的文本"
|
||||||
},
|
},
|
||||||
|
"max-text-length-horizontal": {
|
||||||
|
"description": "在水平栏中显示的最大字符数(0 为隐藏文本)",
|
||||||
|
"label": "最大文本长度(水平)"
|
||||||
|
},
|
||||||
|
"max-text-length-vertical": {
|
||||||
|
"description": "在垂直栏中显示的最大字符数(0 为隐藏文本)",
|
||||||
|
"label": "最大文本长度(垂直)"
|
||||||
|
},
|
||||||
"middle-click": {
|
"middle-click": {
|
||||||
"description": "中键点击按钮时执行的命令。",
|
"description": "中键点击按钮时执行的命令。",
|
||||||
"label": "中键点击",
|
"label": "中键点击",
|
||||||
@@ -157,6 +161,23 @@
|
|||||||
"text-stream": {
|
"text-stream": {
|
||||||
"description": "来自命令的流式输出行将作为文本显示在按钮上。",
|
"description": "来自命令的流式输出行将作为文本显示在按钮上。",
|
||||||
"label": "流"
|
"label": "流"
|
||||||
|
},
|
||||||
|
"wheel": {
|
||||||
|
"description": "使用滚轮时执行的命令。\n在命令中使用 $delta 表示滚轮增量",
|
||||||
|
"label": "滚轮",
|
||||||
|
"update-text": "滚轮滚动时更新显示的文本"
|
||||||
|
},
|
||||||
|
"wheel-down": {
|
||||||
|
"description": "滚轮向下滚动时执行的命令。",
|
||||||
|
"label": "滚轮向下命令"
|
||||||
|
},
|
||||||
|
"wheel-mode-separate": {
|
||||||
|
"description": "为滚轮向上和向下启用单独的命令",
|
||||||
|
"label": "分开滚轮命令"
|
||||||
|
},
|
||||||
|
"wheel-up": {
|
||||||
|
"description": "滚轮向上滚动时执行的命令。",
|
||||||
|
"label": "滚轮向上命令"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dialog": {
|
"dialog": {
|
||||||
@@ -202,6 +223,10 @@
|
|||||||
"description": "显示当前播放曲目的专辑封面。",
|
"description": "显示当前播放曲目的专辑封面。",
|
||||||
"label": "显示专辑封面"
|
"label": "显示专辑封面"
|
||||||
},
|
},
|
||||||
|
"show-artist-first": {
|
||||||
|
"description": "显示艺术家 - 标题,而不是标题 - 艺术家。",
|
||||||
|
"label": "先显示艺术家"
|
||||||
|
},
|
||||||
"show-visualizer": {
|
"show-visualizer": {
|
||||||
"description": "播放音乐时显示音频可视化器。",
|
"description": "播放音乐时显示音频可视化器。",
|
||||||
"label": "显示可视化器"
|
"label": "显示可视化器"
|
||||||
@@ -224,10 +249,10 @@
|
|||||||
"notification-history": {
|
"notification-history": {
|
||||||
"hide-badge-when-zero": {
|
"hide-badge-when-zero": {
|
||||||
"description": "当没有未读通知时隐藏通知徽章。",
|
"description": "当没有未读通知时隐藏通知徽章。",
|
||||||
"label": "零时隐藏徽章"
|
"label": "空时隐藏徽章"
|
||||||
},
|
},
|
||||||
"show-unread-badge": {
|
"show-unread-badge": {
|
||||||
"description": "显示显示未读通知数量的徽章。",
|
"description": "显示一个用于展示未读通知数量的徽章。",
|
||||||
"label": "显示未读徽章"
|
"label": "显示未读徽章"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -259,6 +284,10 @@
|
|||||||
"disk-critical-threshold": {
|
"disk-critical-threshold": {
|
||||||
"label": "存储空间(严重)"
|
"label": "存储空间(严重)"
|
||||||
},
|
},
|
||||||
|
"disk-path": {
|
||||||
|
"description": "选择要监控的磁盘挂载点。",
|
||||||
|
"label": "磁盘路径"
|
||||||
|
},
|
||||||
"disk-warning-threshold": {
|
"disk-warning-threshold": {
|
||||||
"label": "存储空间(警告)"
|
"label": "存储空间(警告)"
|
||||||
},
|
},
|
||||||
@@ -314,13 +343,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"taskbar-grouped": {
|
"taskbar-grouped": {
|
||||||
"show-numbers-only-when-occupied": {
|
"show-labels-only-when-occupied": {
|
||||||
"description": "只为有打开窗口的工作区显示编号",
|
"description": "只显示有打开窗口的工作区标签。",
|
||||||
"label": "仅在有窗口时显示编号"
|
"label": "仅在被占用时显示标签"
|
||||||
},
|
|
||||||
"show-workspace-numbers": {
|
|
||||||
"description": "在任务组左上角显示工作区编号",
|
|
||||||
"label": "显示工作区编号"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tray": {
|
"tray": {
|
||||||
@@ -363,13 +388,6 @@
|
|||||||
"health": "健康状况:{percent}%",
|
"health": "健康状况:{percent}%",
|
||||||
"idle": "空闲。",
|
"idle": "空闲。",
|
||||||
"no-battery-detected": "未检测到电池。",
|
"no-battery-detected": "未检测到电池。",
|
||||||
"panel": {
|
|
||||||
"balanced": "平衡 ({percent}%)",
|
|
||||||
"disabled": "电池管理器已禁用",
|
|
||||||
"full": "完全容量 ({percent}%)",
|
|
||||||
"lifespan": "延长寿命 ({percent}%)",
|
|
||||||
"title": "充电阈值"
|
|
||||||
},
|
|
||||||
"plugged-in": "已接通电源。",
|
"plugged-in": "已接通电源。",
|
||||||
"time-left": "剩余时间:{time}。",
|
"time-left": "剩余时间:{time}。",
|
||||||
"time-until-full": "充满所需时间:{time}。"
|
"time-until-full": "充满所需时间:{time}。"
|
||||||
@@ -398,9 +416,61 @@
|
|||||||
"loading": "正在加载天气…"
|
"loading": "正在加载天气…"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"error": {
|
||||||
|
"fetch-failed": "无法加载更新日志数据,请稍后再试。",
|
||||||
|
"rate-limit": "已达到 GitHub 速率限制,请稍后再试。"
|
||||||
|
},
|
||||||
|
"panel": {
|
||||||
|
"buttons": {
|
||||||
|
"discord": "加入我们的 Discord",
|
||||||
|
"dismiss": "确定"
|
||||||
|
},
|
||||||
|
"empty": "暂时没有可用的发行说明。",
|
||||||
|
"highlight-title": "重点更新",
|
||||||
|
"section": {
|
||||||
|
"released": "{date} 发布",
|
||||||
|
"version": "版本 {version}"
|
||||||
|
},
|
||||||
|
"subtitle": {
|
||||||
|
"fresh": "感谢安装 Noctalia!以下是本次构建包含的内容。",
|
||||||
|
"updated": "已从 {previousVersion} 更新"
|
||||||
|
},
|
||||||
|
"title": "{version} 有哪些更新",
|
||||||
|
"version": {
|
||||||
|
"new-user": "全新安装"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"tooltip": "打开日历"
|
"tooltip": "打开日历"
|
||||||
},
|
},
|
||||||
|
"context-menu": {
|
||||||
|
"activate-app": "激活 {app}",
|
||||||
|
"clear-history": "清除历史记录",
|
||||||
|
"close-app": "关闭 {app}",
|
||||||
|
"connect-vpn": "连接 {name}",
|
||||||
|
"cycle-visualizer": "切换可视化器样式",
|
||||||
|
"disable-bluetooth": "禁用蓝牙",
|
||||||
|
"disable-dnd": "关闭勿扰模式",
|
||||||
|
"disable-wifi": "禁用Wi-Fi",
|
||||||
|
"disconnect-vpn": "断开 {name}",
|
||||||
|
"enable-bluetooth": "启用蓝牙",
|
||||||
|
"enable-dnd": "启用勿扰模式",
|
||||||
|
"enable-wifi": "启用 Wi-Fi",
|
||||||
|
"next": "下一首",
|
||||||
|
"open-calendar": "打开日历",
|
||||||
|
"open-display-settings": "显示设置",
|
||||||
|
"open-launcher": "打开启动器",
|
||||||
|
"open-mixer": "音频混音器",
|
||||||
|
"open-settings": "打开设置",
|
||||||
|
"pause": "暂停",
|
||||||
|
"play": "播放",
|
||||||
|
"previous": "上一首",
|
||||||
|
"random-wallpaper": "随机壁纸",
|
||||||
|
"toggle-mute": "切换静音",
|
||||||
|
"widget-settings": "小部件设置"
|
||||||
|
},
|
||||||
"dock": {
|
"dock": {
|
||||||
"menu": {
|
"menu": {
|
||||||
"close": "关闭",
|
"close": "关闭",
|
||||||
@@ -564,6 +634,7 @@
|
|||||||
},
|
},
|
||||||
"workspace-labels": {
|
"workspace-labels": {
|
||||||
"index": "索引",
|
"index": "索引",
|
||||||
|
"index+name": "索引和名称",
|
||||||
"name": "名称",
|
"name": "名称",
|
||||||
"none": "无"
|
"none": "无"
|
||||||
}
|
}
|
||||||
@@ -579,8 +650,8 @@
|
|||||||
"search": "搜索...",
|
"search": "搜索...",
|
||||||
"search-icons": "例如:noctalia, niri, battery, cloud",
|
"search-icons": "例如:noctalia, niri, battery, cloud",
|
||||||
"search-launcher": "搜索条目...或使用 > 执行命令",
|
"search-launcher": "搜索条目...或使用 > 执行命令",
|
||||||
"search-wallpapers": "输入以筛选壁纸...",
|
|
||||||
"search-wallhaven": "搜索 Wallhaven...",
|
"search-wallhaven": "搜索 Wallhaven...",
|
||||||
|
"search-wallpapers": "输入以筛选壁纸...",
|
||||||
"select": "选择",
|
"select": "选择",
|
||||||
"test": "测试"
|
"test": "测试"
|
||||||
},
|
},
|
||||||
@@ -721,6 +792,11 @@
|
|||||||
"label": "音频设备"
|
"label": "音频设备"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"external-mixer": {
|
||||||
|
"description": "输入激活外部音频混音器功能时要启动的命令或应用程序路径。",
|
||||||
|
"label": "外部音频混音器命令",
|
||||||
|
"placeholder": "pwvucontrol || pavucontrol"
|
||||||
|
},
|
||||||
"media": {
|
"media": {
|
||||||
"excluded-player": {
|
"excluded-player": {
|
||||||
"description": "添加您希望系统忽略的播放器关键词。每个关键词应单独占一行。",
|
"description": "添加您希望系统忽略的播放器关键词。每个关键词应单独占一行。",
|
||||||
@@ -795,6 +871,10 @@
|
|||||||
"description": "调整状态栏的背景不透明度。",
|
"description": "调整状态栏的背景不透明度。",
|
||||||
"label": "背景不透明度"
|
"label": "背景不透明度"
|
||||||
},
|
},
|
||||||
|
"capsule-opacity": {
|
||||||
|
"description": "设置显示胶囊时小部件背景的不透明度。",
|
||||||
|
"label": "胶囊不透明度"
|
||||||
|
},
|
||||||
"density": {
|
"density": {
|
||||||
"description": "调整状态栏的内边距以获得紧凑或宽松的外观。",
|
"description": "调整状态栏的内边距以获得紧凑或宽松的外观。",
|
||||||
"label": "状态栏密度"
|
"label": "状态栏密度"
|
||||||
@@ -887,6 +967,41 @@
|
|||||||
"label": "深色模式"
|
"label": "深色模式"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"delete": {
|
||||||
|
"error": {
|
||||||
|
"description": "删除 {scheme} 失败",
|
||||||
|
"title": "删除失败"
|
||||||
|
},
|
||||||
|
"success": {
|
||||||
|
"description": "成功删除 {scheme}",
|
||||||
|
"title": "配色方案已删除"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"download": {
|
||||||
|
"button": "下载更多",
|
||||||
|
"delete": "删除",
|
||||||
|
"download": "下载",
|
||||||
|
"downloading": "正在下载...",
|
||||||
|
"empty": "没有可用的配色方案",
|
||||||
|
"error": {
|
||||||
|
"api-error": "API 错误: {status}",
|
||||||
|
"description": "下载 {scheme} 失败",
|
||||||
|
"download-failed": "下载失败,退出代码: {code}",
|
||||||
|
"invalid-response": "无效的 API 响应格式",
|
||||||
|
"no-files": "未找到方案的文件",
|
||||||
|
"parse-failed": "解析 API 响应失败: {error}",
|
||||||
|
"rate-limit": "GitHub API 速率限制已超出",
|
||||||
|
"title": "下载失败"
|
||||||
|
},
|
||||||
|
"fetching": "正在获取可用的配色方案...",
|
||||||
|
"installed": "已安装",
|
||||||
|
"refresh": "刷新",
|
||||||
|
"success": {
|
||||||
|
"description": "成功下载 {scheme}",
|
||||||
|
"title": "配色方案已下载"
|
||||||
|
},
|
||||||
|
"title": "下载配色方案"
|
||||||
|
},
|
||||||
"predefined": {
|
"predefined": {
|
||||||
"generate-templates": {
|
"generate-templates": {
|
||||||
"description": "使用预定义配色方案时生成 Matugen 模板(GTK、终端主题等)。",
|
"description": "使用预定义配色方案时生成 Matugen 模板(GTK、终端主题等)。",
|
||||||
@@ -929,6 +1044,10 @@
|
|||||||
"description": "写入 {filepath}。Comfy 主题需要手动安装和激活。",
|
"description": "写入 {filepath}。Comfy 主题需要手动安装和激活。",
|
||||||
"description-missing": "需要安装 {app}"
|
"description-missing": "需要安装 {app}"
|
||||||
},
|
},
|
||||||
|
"telegram": {
|
||||||
|
"description": "写入 {filepath}。",
|
||||||
|
"description-missing": "需要安装 {app}"
|
||||||
|
},
|
||||||
"vicinae": {
|
"vicinae": {
|
||||||
"description": "写入 {filepath} 并重新加载",
|
"description": "写入 {filepath} 并重新加载",
|
||||||
"description-missing": "需要安装 {app}"
|
"description-missing": "需要安装 {app}"
|
||||||
@@ -1125,6 +1244,10 @@
|
|||||||
"description": "调整 Dock 的背景不透明度。",
|
"description": "调整 Dock 的背景不透明度。",
|
||||||
"label": "背景不透明度"
|
"label": "背景不透明度"
|
||||||
},
|
},
|
||||||
|
"border-radius": {
|
||||||
|
"description": "调整程序坞的边框半径。",
|
||||||
|
"label": "边框半径"
|
||||||
|
},
|
||||||
"colorize-icons": {
|
"colorize-icons": {
|
||||||
"description": "将主题颜色应用到 Dock 应用图标(仅限非聚焦应用)。",
|
"description": "将主题颜色应用到 Dock 应用图标(仅限非聚焦应用)。",
|
||||||
"label": "着色图标"
|
"label": "着色图标"
|
||||||
@@ -1276,6 +1399,10 @@
|
|||||||
"description": "调整启动器的背景不透明度。",
|
"description": "调整启动器的背景不透明度。",
|
||||||
"label": "背景不透明度"
|
"label": "背景不透明度"
|
||||||
},
|
},
|
||||||
|
"clip-preview": {
|
||||||
|
"description": "在使用 >clip 命令时显示剪贴板内容的预览。",
|
||||||
|
"label": "启用剪贴板预览"
|
||||||
|
},
|
||||||
"clipboard-history": {
|
"clipboard-history": {
|
||||||
"description": "从启动器访问之前复制的项目。",
|
"description": "从启动器访问之前复制的项目。",
|
||||||
"label": "启用剪贴板历史记录"
|
"label": "启用剪贴板历史记录"
|
||||||
@@ -1364,6 +1491,10 @@
|
|||||||
"description": "选择您喜欢的温度单位。",
|
"description": "选择您喜欢的温度单位。",
|
||||||
"label": "天气"
|
"label": "天气"
|
||||||
},
|
},
|
||||||
|
"show-effects": {
|
||||||
|
"description": "在天气卡片上显示额外的视觉效果(如雨、雪或闪电)。",
|
||||||
|
"label": "显示天气效果"
|
||||||
|
},
|
||||||
"show-in-calendar": {
|
"show-in-calendar": {
|
||||||
"description": "直接在您的日历视图中显示每日天气预报。",
|
"description": "直接在您的日历视图中显示每日天气预报。",
|
||||||
"label": "在日历中显示天气"
|
"label": "在日历中显示天气"
|
||||||
@@ -1379,6 +1510,10 @@
|
|||||||
"description": "系统挂起时自动锁定屏幕。",
|
"description": "系统挂起时自动锁定屏幕。",
|
||||||
"label": "挂起时锁定"
|
"label": "挂起时锁定"
|
||||||
},
|
},
|
||||||
|
"show-hibernate": {
|
||||||
|
"description": "在电源操作中显示'休眠'选项。",
|
||||||
|
"label": "显示休眠"
|
||||||
|
},
|
||||||
"title": "锁屏"
|
"title": "锁屏"
|
||||||
},
|
},
|
||||||
"network": {
|
"network": {
|
||||||
@@ -1663,6 +1798,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"user-interface": {
|
"user-interface": {
|
||||||
|
"allow-panels-without-bar": {
|
||||||
|
"description": "启用后,面板可以在任何屏幕上打开。禁用后,面板将仅在有栏的屏幕上打开,这可以减少内存使用。",
|
||||||
|
"label": "允许在没有栏的屏幕上显示面板"
|
||||||
|
},
|
||||||
"animation-disable": {
|
"animation-disable": {
|
||||||
"description": "禁用所有动画以获得更快、更流畅的体验。",
|
"description": "禁用所有动画以获得更快、更流畅的体验。",
|
||||||
"label": "禁用 UI 动画"
|
"label": "禁用 UI 动画"
|
||||||
@@ -1870,19 +2009,6 @@
|
|||||||
"low": "电量低",
|
"low": "电量低",
|
||||||
"low-desc": "电量为 {percent}%。请连接充电器。"
|
"low-desc": "电量为 {percent}%。请连接充电器。"
|
||||||
},
|
},
|
||||||
"battery-manager": {
|
|
||||||
"initial-setup": "需要初始设置",
|
|
||||||
"install-failed": "安装失败",
|
|
||||||
"install-missing": "缺少必要文件",
|
|
||||||
"install-success": "安装成功",
|
|
||||||
"install-unsupported": "系统不受支持",
|
|
||||||
"set-failed": "设置电池阈值失败",
|
|
||||||
"set-success-desc": "电池阈值已设置为 {percent}%",
|
|
||||||
"title": "电池阈值",
|
|
||||||
"uninstall-failed": "卸载失败",
|
|
||||||
"uninstall-setup": "正在卸载,需要身份验证",
|
|
||||||
"uninstall-success": "卸载成功"
|
|
||||||
},
|
|
||||||
"bluetooth": {
|
"bluetooth": {
|
||||||
"disabled": "已禁用",
|
"disabled": "已禁用",
|
||||||
"enabled": "已启用"
|
"enabled": "已启用"
|
||||||
@@ -1951,6 +2077,10 @@
|
|||||||
"title-matugen": "Matugen模板处理失败",
|
"title-matugen": "Matugen模板处理失败",
|
||||||
"title-predefined": "预定义的颜色方案处理失败"
|
"title-predefined": "预定义的颜色方案处理失败"
|
||||||
},
|
},
|
||||||
|
"vpn": {
|
||||||
|
"connected": "已连接到“{name}”",
|
||||||
|
"disconnected": "已断开与“{name}”的连接"
|
||||||
|
},
|
||||||
"wallpaper-colors": {
|
"wallpaper-colors": {
|
||||||
"disabled": "壁纸颜色已禁用",
|
"disabled": "壁纸颜色已禁用",
|
||||||
"enabled": "壁纸颜色已启用",
|
"enabled": "壁纸颜色已启用",
|
||||||
@@ -1984,6 +2114,7 @@
|
|||||||
"input-muted": "静音输入设备",
|
"input-muted": "静音输入设备",
|
||||||
"keep-awake": "保持唤醒",
|
"keep-awake": "保持唤醒",
|
||||||
"keyboard-layout": "{layout} 键盘布局",
|
"keyboard-layout": "{layout} 键盘布局",
|
||||||
|
"manage-vpn": "管理 VPN 连接",
|
||||||
"manage-wifi": "管理 Wi-Fi",
|
"manage-wifi": "管理 Wi-Fi",
|
||||||
"microphone-volume-at": "麦克风音量 {volume}%\n左键点击进入设置。右键点击切换静音。\n滚动滚轮调节音量。",
|
"microphone-volume-at": "麦克风音量 {volume}%\n左键点击进入设置。右键点击切换静音。\n滚动滚轮调节音量。",
|
||||||
"move-to-center-section": "移动到中央部分",
|
"move-to-center-section": "移动到中央部分",
|
||||||
@@ -2047,6 +2178,11 @@
|
|||||||
"label": "分类",
|
"label": "分类",
|
||||||
"people": "人物"
|
"people": "人物"
|
||||||
},
|
},
|
||||||
|
"order": {
|
||||||
|
"asc": "升序",
|
||||||
|
"desc": "降序",
|
||||||
|
"label": "顺序"
|
||||||
|
},
|
||||||
"purity": {
|
"purity": {
|
||||||
"all": "全部",
|
"all": "全部",
|
||||||
"label": "内容过滤器",
|
"label": "内容过滤器",
|
||||||
@@ -2071,21 +2207,16 @@
|
|||||||
"toplist": "排行榜",
|
"toplist": "排行榜",
|
||||||
"views": "浏览量"
|
"views": "浏览量"
|
||||||
},
|
},
|
||||||
"order": {
|
|
||||||
"asc": "升序",
|
|
||||||
"desc": "降序",
|
|
||||||
"label": "顺序"
|
|
||||||
},
|
|
||||||
"wallhaven-settings": {
|
|
||||||
"apply": "应用",
|
|
||||||
"title": "Wallhaven 设置"
|
|
||||||
},
|
|
||||||
"source": {
|
"source": {
|
||||||
"label": "来源",
|
"label": "来源",
|
||||||
"local": "本地",
|
"local": "本地",
|
||||||
"wallhaven": "Wallhaven"
|
"wallhaven": "Wallhaven"
|
||||||
},
|
},
|
||||||
"title": "壁纸选择器"
|
"title": "壁纸选择器",
|
||||||
|
"wallhaven-settings": {
|
||||||
|
"apply": "应用",
|
||||||
|
"title": "Wallhaven 设置"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"transitions": {
|
"transitions": {
|
||||||
"disc": "圆盘",
|
"disc": "圆盘",
|
||||||
@@ -2096,10 +2227,11 @@
|
|||||||
"wipe": "擦除"
|
"wipe": "擦除"
|
||||||
},
|
},
|
||||||
"try-different-search": "尝试不同的搜索查询。",
|
"try-different-search": "尝试不同的搜索查询。",
|
||||||
|
"unknown": "未知",
|
||||||
"wallhaven": {
|
"wallhaven": {
|
||||||
"loading": "正在加载壁纸...",
|
"loading": "正在加载壁纸...",
|
||||||
"no-results": "未找到壁纸。请尝试不同的搜索查询。",
|
"no-results": "未找到壁纸。请尝试不同的搜索查询。",
|
||||||
"page": "第 {current} 页,共 {total} 页"
|
"page": "{current} / {total}"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"weather": {
|
"weather": {
|
||||||
@@ -2209,6 +2341,7 @@
|
|||||||
},
|
},
|
||||||
"wifi": {
|
"wifi": {
|
||||||
"panel": {
|
"panel": {
|
||||||
|
"available-networks": "可用网络",
|
||||||
"connect": "连接",
|
"connect": "连接",
|
||||||
"connected": "已连接",
|
"connected": "已连接",
|
||||||
"disabled": "Wi-Fi 已禁用",
|
"disabled": "Wi-Fi 已禁用",
|
||||||
@@ -2219,6 +2352,7 @@
|
|||||||
"forget": "忘记",
|
"forget": "忘记",
|
||||||
"forget-network": "忘记此网络?",
|
"forget-network": "忘记此网络?",
|
||||||
"forgetting": "正在忘记...",
|
"forgetting": "正在忘记...",
|
||||||
|
"known-networks": "已知网络",
|
||||||
"no-networks": "未找到网络",
|
"no-networks": "未找到网络",
|
||||||
"password": "密码",
|
"password": "密码",
|
||||||
"saved": "已保存",
|
"saved": "已保存",
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
"monitors": [],
|
"monitors": [],
|
||||||
"density": "default",
|
"density": "default",
|
||||||
"showCapsule": true,
|
"showCapsule": true,
|
||||||
|
"capsuleOpacity": 1,
|
||||||
"floating": false,
|
"floating": false,
|
||||||
"marginVertical": 0.25,
|
"marginVertical": 0.25,
|
||||||
"marginHorizontal": 0.25,
|
"marginHorizontal": 0.25,
|
||||||
@@ -59,7 +60,7 @@
|
|||||||
},
|
},
|
||||||
"general": {
|
"general": {
|
||||||
"avatarImage": "",
|
"avatarImage": "",
|
||||||
"dimmerOpacity": 0.8,
|
"dimmerOpacity": 0.6,
|
||||||
"showScreenCorners": false,
|
"showScreenCorners": false,
|
||||||
"forceBlackScreenCorners": false,
|
"forceBlackScreenCorners": false,
|
||||||
"scaleRatio": 1,
|
"scaleRatio": 1,
|
||||||
@@ -73,7 +74,8 @@
|
|||||||
"shadowDirection": "bottom_right",
|
"shadowDirection": "bottom_right",
|
||||||
"shadowOffsetX": 2,
|
"shadowOffsetX": 2,
|
||||||
"shadowOffsetY": 3,
|
"shadowOffsetY": 3,
|
||||||
"language": ""
|
"language": "",
|
||||||
|
"allowPanelsOnScreenWithoutBar": true
|
||||||
},
|
},
|
||||||
"ui": {
|
"ui": {
|
||||||
"fontDefault": "Roboto",
|
"fontDefault": "Roboto",
|
||||||
@@ -88,6 +90,7 @@
|
|||||||
"location": {
|
"location": {
|
||||||
"name": "Tokyo",
|
"name": "Tokyo",
|
||||||
"weatherEnabled": true,
|
"weatherEnabled": true,
|
||||||
|
"weatherShowEffects": true,
|
||||||
"useFahrenheit": false,
|
"useFahrenheit": false,
|
||||||
"use12hourFormat": false,
|
"use12hourFormat": false,
|
||||||
"showWeekNumberInCalendar": false,
|
"showWeekNumberInCalendar": false,
|
||||||
@@ -127,7 +130,7 @@
|
|||||||
"hideWallpaperFilenames": false,
|
"hideWallpaperFilenames": false,
|
||||||
"useWallhaven": false,
|
"useWallhaven": false,
|
||||||
"wallhavenQuery": "",
|
"wallhavenQuery": "",
|
||||||
"wallhavenSorting": "date_added",
|
"wallhavenSorting": "relevance",
|
||||||
"wallhavenOrder": "desc",
|
"wallhavenOrder": "desc",
|
||||||
"wallhavenCategories": "111",
|
"wallhavenCategories": "111",
|
||||||
"wallhavenPurity": "100",
|
"wallhavenPurity": "100",
|
||||||
@@ -137,6 +140,7 @@
|
|||||||
},
|
},
|
||||||
"appLauncher": {
|
"appLauncher": {
|
||||||
"enableClipboardHistory": false,
|
"enableClipboardHistory": false,
|
||||||
|
"enableClipPreview": true,
|
||||||
"position": "center",
|
"position": "center",
|
||||||
"pinnedExecs": [],
|
"pinnedExecs": [],
|
||||||
"useApp2Unit": false,
|
"useApp2Unit": false,
|
||||||
@@ -217,6 +221,7 @@
|
|||||||
"enabled": true,
|
"enabled": true,
|
||||||
"displayMode": "always_visible",
|
"displayMode": "always_visible",
|
||||||
"backgroundOpacity": 1,
|
"backgroundOpacity": 1,
|
||||||
|
"radiusRatio": 0.1,
|
||||||
"floatingRatio": 1,
|
"floatingRatio": 1,
|
||||||
"size": 1,
|
"size": 1,
|
||||||
"onlySameOutput": true,
|
"onlySameOutput": true,
|
||||||
@@ -286,7 +291,8 @@
|
|||||||
"visualizerType": "linear",
|
"visualizerType": "linear",
|
||||||
"visualizerQuality": "high",
|
"visualizerQuality": "high",
|
||||||
"mprisBlacklist": [],
|
"mprisBlacklist": [],
|
||||||
"preferredPlayer": ""
|
"preferredPlayer": "",
|
||||||
|
"externalMixer": "pwvucontrol || pavucontrol"
|
||||||
},
|
},
|
||||||
"brightness": {
|
"brightness": {
|
||||||
"brightnessStep": 5,
|
"brightnessStep": 5,
|
||||||
@@ -330,12 +336,12 @@
|
|||||||
"manualSunrise": "06:30",
|
"manualSunrise": "06:30",
|
||||||
"manualSunset": "18:30"
|
"manualSunset": "18:30"
|
||||||
},
|
},
|
||||||
|
"changelog": {
|
||||||
|
"lastSeenVersion": ""
|
||||||
|
},
|
||||||
"hooks": {
|
"hooks": {
|
||||||
"enabled": false,
|
"enabled": false,
|
||||||
"wallpaperChange": "",
|
"wallpaperChange": "",
|
||||||
"darkModeChange": ""
|
"darkModeChange": ""
|
||||||
},
|
|
||||||
"battery": {
|
|
||||||
"chargingMode": 0
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
# Battery charge control paths
|
|
||||||
# Add one path per line
|
|
||||||
/sys/class/power_supply/BAT0/charge_control_end_threshold
|
|
||||||
/sys/class/power_supply/BAT1/charge_control_end_threshold
|
|
||||||
/sys/class/power_supply/BAT0/charge_stop_threshold
|
|
||||||
@@ -1,178 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
set -e
|
|
||||||
|
|
||||||
SUCCESS=0
|
|
||||||
FAILURE=1
|
|
||||||
MISSING_FILES=2
|
|
||||||
UNSUPPORTED=3
|
|
||||||
|
|
||||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
||||||
|
|
||||||
print_error() {
|
|
||||||
echo -e "$1" >&2
|
|
||||||
}
|
|
||||||
|
|
||||||
print_info() {
|
|
||||||
echo -e "$1"
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ "$EUID" -ne 0 ]; then
|
|
||||||
print_error "This script must be run with root privileges"
|
|
||||||
exit $FAILURE
|
|
||||||
fi
|
|
||||||
|
|
||||||
print_info "Installing Battery Manager..."
|
|
||||||
echo
|
|
||||||
|
|
||||||
if [ -n "$PKEXEC_UID" ]; then
|
|
||||||
ACTUAL_USER=$(getent passwd "$PKEXEC_UID" | cut -d: -f1)
|
|
||||||
else
|
|
||||||
ACTUAL_USER="$SUDO_USER"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$ACTUAL_USER" ]; then
|
|
||||||
print_error "Could not determine the actual user"
|
|
||||||
exit $FAILURE
|
|
||||||
fi
|
|
||||||
|
|
||||||
print_info "Installing for user: $ACTUAL_USER"
|
|
||||||
echo
|
|
||||||
|
|
||||||
print_info "Checking required files..."
|
|
||||||
|
|
||||||
MISSING_FILES_LIST=()
|
|
||||||
|
|
||||||
if [ ! -f "$SCRIPT_DIR/battery-paths.conf" ]; then
|
|
||||||
MISSING_FILES_LIST+=("battery-paths.conf")
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -f "$SCRIPT_DIR/templates/battery-manager.sh" ]; then
|
|
||||||
MISSING_FILES_LIST+=("battery-manager.sh")
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -f "$SCRIPT_DIR/templates/battery-manager.policy" ]; then
|
|
||||||
MISSING_FILES_LIST+=("battery-manager.policy")
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -f "$SCRIPT_DIR/templates/battery-manager.rules" ]; then
|
|
||||||
MISSING_FILES_LIST+=("battery-manager.rules")
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ${#MISSING_FILES_LIST[@]} -gt 0 ]; then
|
|
||||||
print_error "Missing required files in $SCRIPT_DIR:"
|
|
||||||
for file in "${MISSING_FILES_LIST[@]}"; do
|
|
||||||
print_error " - $file"
|
|
||||||
done
|
|
||||||
exit $MISSING_FILES
|
|
||||||
fi
|
|
||||||
|
|
||||||
print_info "All required files found"
|
|
||||||
|
|
||||||
print_info "Checking battery paths..."
|
|
||||||
BATTERY_PATHS=($(grep -v '^#' "$SCRIPT_DIR/battery-paths.conf" | grep -v '^$'))
|
|
||||||
EXISTING_PATHS=()
|
|
||||||
|
|
||||||
for path in "${BATTERY_PATHS[@]}"; do
|
|
||||||
if [ -f "$path" ]; then
|
|
||||||
EXISTING_PATHS+=("$path")
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ ${#EXISTING_PATHS[@]} -eq 0 ]; then
|
|
||||||
print_error "None of the battery control files exist. Please check your hardware compatibility."
|
|
||||||
exit $UNSUPPORTED
|
|
||||||
fi
|
|
||||||
|
|
||||||
print_info "Found ${#EXISTING_PATHS[@]} compatible battery control file(s)"
|
|
||||||
|
|
||||||
print_info "Installing battery manager script..."
|
|
||||||
BATTERY_MANAGER_SCRIPT="/usr/bin/battery-manager-$ACTUAL_USER"
|
|
||||||
|
|
||||||
SHEBANG=$(head -n 1 "$SCRIPT_DIR/templates/battery-manager.sh")
|
|
||||||
echo "$SHEBANG" > "$BATTERY_MANAGER_SCRIPT"
|
|
||||||
echo "" >> "$BATTERY_MANAGER_SCRIPT"
|
|
||||||
|
|
||||||
echo "BATTERY_PATHS=(" >> "$BATTERY_MANAGER_SCRIPT"
|
|
||||||
for path in "${EXISTING_PATHS[@]}"; do
|
|
||||||
echo " \"$path\"" >> "$BATTERY_MANAGER_SCRIPT"
|
|
||||||
done
|
|
||||||
echo ")" >> "$BATTERY_MANAGER_SCRIPT"
|
|
||||||
|
|
||||||
echo "" >> "$BATTERY_MANAGER_SCRIPT"
|
|
||||||
|
|
||||||
tail -n +2 "$SCRIPT_DIR/templates/battery-manager.sh" >> "$BATTERY_MANAGER_SCRIPT"
|
|
||||||
|
|
||||||
chmod +x "$BATTERY_MANAGER_SCRIPT"
|
|
||||||
|
|
||||||
print_info "Battery manager script created from $SCRIPT_DIR/templates/battery-manager.sh with compatible paths"
|
|
||||||
print_info "Script installed at $BATTERY_MANAGER_SCRIPT"
|
|
||||||
|
|
||||||
print_info "Creating log file..."
|
|
||||||
touch /var/log/battery-manager.log
|
|
||||||
chmod 644 /var/log/battery-manager.log
|
|
||||||
print_info "Log file created at /var/log/battery-manager.log"
|
|
||||||
|
|
||||||
print_info "Creating polkit policy..."
|
|
||||||
|
|
||||||
POLICY_FILE="/usr/share/polkit-1/actions/com.local.battery-manager.$ACTUAL_USER.policy"
|
|
||||||
|
|
||||||
sed -e "s/ACTUAL_USER_PLACEHOLDER/$ACTUAL_USER/g" \
|
|
||||||
"$SCRIPT_DIR/templates/battery-manager.policy" > "$POLICY_FILE"
|
|
||||||
|
|
||||||
print_info "Polkit policy copied from $SCRIPT_DIR/templates/battery-manager.policy"
|
|
||||||
print_info "Polkit policy created at $POLICY_FILE"
|
|
||||||
print_info "Creating polkit rule..."
|
|
||||||
|
|
||||||
RULES_FILE="/etc/polkit-1/rules.d/50-battery-manager-$ACTUAL_USER.rules"
|
|
||||||
|
|
||||||
sed "s/ACTUAL_USER_PLACEHOLDER/$ACTUAL_USER/g" \
|
|
||||||
"$SCRIPT_DIR/templates/battery-manager.rules" > "$RULES_FILE"
|
|
||||||
|
|
||||||
print_info "Polkit rule copied from $SCRIPT_DIR/templates/battery-manager.rules"
|
|
||||||
print_info "Polkit rule created for user: $ACTUAL_USER at $RULES_FILE"
|
|
||||||
|
|
||||||
print_info "Restarting polkit..."
|
|
||||||
if systemctl restart polkit 2>/dev/null; then
|
|
||||||
print_info "Polkit restarted"
|
|
||||||
else
|
|
||||||
print_info "Could not restart polkit automatically, you may need to reboot"
|
|
||||||
fi
|
|
||||||
|
|
||||||
print_info "Creating uninstall script..."
|
|
||||||
UNINSTALL_SCRIPT="$SCRIPT_DIR/uninstall-battery-manager.sh"
|
|
||||||
|
|
||||||
|
|
||||||
if [ -f "$SCRIPT_DIR/templates/uninstall-template" ]; then
|
|
||||||
SHEBANG=$(head -n 1 "$SCRIPT_DIR/templates/uninstall-template")
|
|
||||||
else
|
|
||||||
SHEBANG="#!/usr/bin/env bash"
|
|
||||||
fi
|
|
||||||
echo "$SHEBANG" > "$UNINSTALL_SCRIPT"
|
|
||||||
echo "" >> "$UNINSTALL_SCRIPT"
|
|
||||||
|
|
||||||
cat >> "$UNINSTALL_SCRIPT" << EOF
|
|
||||||
SCRIPT_PATH="$BATTERY_MANAGER_SCRIPT"
|
|
||||||
POLICY_PATH="$POLICY_FILE"
|
|
||||||
RULE_PATH="$RULES_FILE"
|
|
||||||
LOG_PATH="/var/log/battery-manager.log"
|
|
||||||
|
|
||||||
EOF
|
|
||||||
|
|
||||||
if [ -f "$SCRIPT_DIR/templates/uninstall-template" ]; then
|
|
||||||
tail -n +2 "$SCRIPT_DIR/templates/uninstall-template" >> "$UNINSTALL_SCRIPT"
|
|
||||||
fi
|
|
||||||
|
|
||||||
chmod 744 "$UNINSTALL_SCRIPT"
|
|
||||||
chown root:root "$UNINSTALL_SCRIPT"
|
|
||||||
|
|
||||||
print_info "Uninstall script created at $UNINSTALL_SCRIPT"
|
|
||||||
|
|
||||||
|
|
||||||
echo
|
|
||||||
print_info "Installation complete!"
|
|
||||||
echo
|
|
||||||
print_info "Log file: /var/log/battery-manager.log"
|
|
||||||
print_info "User-specific script: $BATTERY_MANAGER_SCRIPT"
|
|
||||||
print_info "User-specific policy: $POLICY_FILE"
|
|
||||||
print_info "User-specific rules: $RULES_FILE"
|
|
||||||
print_info "User-specific uninstall script: $UNINSTALL_SCRIPT"
|
|
||||||
@@ -1,86 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
||||||
SUPPRESS_NOTIFICATIONS=false
|
|
||||||
|
|
||||||
print_error() {
|
|
||||||
echo -e "$1" >&2
|
|
||||||
}
|
|
||||||
|
|
||||||
print_info() {
|
|
||||||
echo -e "$1"
|
|
||||||
}
|
|
||||||
|
|
||||||
send_notification() {
|
|
||||||
local urgency="$1"
|
|
||||||
local title="$2"
|
|
||||||
local message="$3"
|
|
||||||
|
|
||||||
if [ "$SUPPRESS_NOTIFICATIONS" = false ] && command -v notify-send >/dev/null 2>&1; then
|
|
||||||
notify-send -u "$urgency" "$title" "$message"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
while [[ $# -gt 0 ]]; do
|
|
||||||
case "$1" in
|
|
||||||
-q|--quiet)
|
|
||||||
SUPPRESS_NOTIFICATIONS=true
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-*)
|
|
||||||
print_error "Unknown option: $1"
|
|
||||||
echo "Usage: $0 [OPTIONS] <number>" >&2
|
|
||||||
echo "Options:" >&2
|
|
||||||
echo " -q, --quiet Suppress notifications" >&2
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
BATTERY_LEVEL="$1"
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ -z "$BATTERY_LEVEL" ]; then
|
|
||||||
print_error "Battery level not specified"
|
|
||||||
echo "Usage: $0 [OPTIONS] <number>" >&2
|
|
||||||
echo "Options:" >&2
|
|
||||||
echo " -q, --quiet Suppress notifications" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! [[ "$BATTERY_LEVEL" =~ ^[0-9]+$ ]] || [ "$BATTERY_LEVEL" -gt 100 ] || [ "$BATTERY_LEVEL" -lt 0 ]; then
|
|
||||||
print_error "Battery level must be a number between 0-100"
|
|
||||||
echo "Usage: $0 [OPTIONS] <number>" >&2
|
|
||||||
echo "Options:" >&2
|
|
||||||
echo " -q, --quiet Suppress notifications" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
CURRENT_USER="$USER"
|
|
||||||
if [ -z "$CURRENT_USER" ]; then
|
|
||||||
CURRENT_USER="$(whoami)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
BATTERY_MANAGER_PATH="/usr/bin/battery-manager-$CURRENT_USER"
|
|
||||||
|
|
||||||
SUCCESS=0
|
|
||||||
MISSING_FILES=2
|
|
||||||
|
|
||||||
if [ ! -f "$BATTERY_MANAGER_PATH" ]; then
|
|
||||||
print_error "Battery manager components missing for user $CURRENT_USER!"
|
|
||||||
exit $MISSING_FILES
|
|
||||||
fi
|
|
||||||
|
|
||||||
print_info "Setting battery charging threshold to $BATTERY_LEVEL% for user $CURRENT_USER..."
|
|
||||||
|
|
||||||
if pkexec "$BATTERY_MANAGER_PATH" "$BATTERY_LEVEL"; then
|
|
||||||
print_info "Battery charging threshold set to $BATTERY_LEVEL%"
|
|
||||||
send_notification "normal" "Battery Threshold Updated" \
|
|
||||||
"Battery charging threshold has been set to $BATTERY_LEVEL%"
|
|
||||||
else
|
|
||||||
print_error "Failed to set battery charging threshold"
|
|
||||||
send_notification "critical" "Battery Threshold Failed" \
|
|
||||||
"Failed to set battery charging threshold to $BATTERY_LEVEL%"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE policyconfig PUBLIC
|
|
||||||
"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
|
|
||||||
"http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
|
|
||||||
<policyconfig>
|
|
||||||
<action id="com.local.battery-manager.ACTUAL_USER_PLACEHOLDER">
|
|
||||||
<description>Manage battery settings for ACTUAL_USER_PLACEHOLDER</description>
|
|
||||||
<message>Authentication is required to manage battery settings</message>
|
|
||||||
<defaults>
|
|
||||||
<allow_any>no</allow_any>
|
|
||||||
<allow_inactive>no</allow_inactive>
|
|
||||||
<allow_active>yes</allow_active>
|
|
||||||
</defaults>
|
|
||||||
<annotate key="org.freedesktop.policykit.exec.path">/usr/bin/battery-manager-ACTUAL_USER_PLACEHOLDER</annotate>
|
|
||||||
<annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
|
|
||||||
</action>
|
|
||||||
</policyconfig>
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
polkit.addRule(function(action, subject) {
|
|
||||||
if (action.id == "com.local.battery-manager.ACTUAL_USER_PLACEHOLDER" &&
|
|
||||||
subject.user == "ACTUAL_USER_PLACEHOLDER") {
|
|
||||||
|
|
||||||
// Check if the parent process is quickshell or set-battery-threshold
|
|
||||||
var pid = subject.pid;
|
|
||||||
var ppid = polkit.spawn(["ps", "-o", "ppid=", "-p", pid.toString()]).trim();
|
|
||||||
var parentCmd = polkit.spawn(["ps", "-o", "comm=", "-p", ppid]).trim();
|
|
||||||
|
|
||||||
if (parentCmd.indexOf("quickshell") !== -1 || parentCmd.indexOf("set-battery-treshold") !== -1) {
|
|
||||||
return polkit.Result.YES;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
@@ -1,53 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
LOG_FILE="/var/log/battery-manager.log"
|
|
||||||
|
|
||||||
log_message() {
|
|
||||||
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" >> "$LOG_FILE"
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ -z "$1" ]; then
|
|
||||||
echo "Error: No battery level provided" >&2
|
|
||||||
log_message "ERROR: No battery level provided"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
BATTERY_LEVEL="$1"
|
|
||||||
|
|
||||||
if ! [[ "$BATTERY_LEVEL" =~ ^[0-9]+$ ]] || [ "$BATTERY_LEVEL" -gt 100 ] || [ "$BATTERY_LEVEL" -lt 0 ]; then
|
|
||||||
echo "Error: Invalid battery level. Must be 0-100" >&2
|
|
||||||
log_message "ERROR: Invalid battery level: $BATTERY_LEVEL"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
SUCCESS_COUNT=0
|
|
||||||
FAIL_COUNT=0
|
|
||||||
|
|
||||||
for path in "${BATTERY_PATHS[@]}"; do
|
|
||||||
[[ -z "$path" || "$path" =~ ^# ]] && continue
|
|
||||||
|
|
||||||
if [ -f "$path" ] && [ -w "$path" ]; then
|
|
||||||
if echo "$BATTERY_LEVEL" > "$path" 2>/dev/null; then
|
|
||||||
echo "Updated: $path"
|
|
||||||
log_message "SUCCESS: Updated $path to $BATTERY_LEVEL"
|
|
||||||
((SUCCESS_COUNT++))
|
|
||||||
else
|
|
||||||
echo "Failed to write: $path" >&2
|
|
||||||
log_message "ERROR: Failed to write to $path"
|
|
||||||
((FAIL_COUNT++))
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "Skipped (not found/writable): $path"
|
|
||||||
log_message "INFO: Skipped $path (not found or not writable)"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
log_message "SUMMARY: Updated $SUCCESS_COUNT file(s), failed $FAIL_COUNT, battery level: $BATTERY_LEVEL"
|
|
||||||
|
|
||||||
if [ "$SUCCESS_COUNT" -eq 0 ]; then
|
|
||||||
echo "Error: No battery files were updated" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Successfully updated $SUCCESS_COUNT battery file(s)"
|
|
||||||
exit 0
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
if [ "$(id -u)" -ne 0 ]; then
|
|
||||||
echo "This script must be run as root"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Uninstalling battery manager..."
|
|
||||||
|
|
||||||
if [ -f "$SCRIPT_PATH" ]; then
|
|
||||||
rm -f "$SCRIPT_PATH"
|
|
||||||
echo "Removed script from $SCRIPT_PATH"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -f "$POLICY_PATH" ]; then
|
|
||||||
rm -f "$POLICY_PATH"
|
|
||||||
echo "Removed policy file from $POLICY_PATH"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -f "$RULE_PATH" ]; then
|
|
||||||
rm -f "$RULE_PATH"
|
|
||||||
echo "Removed udev rule from $RULE_PATH"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -f "$LOG_PATH" ]; then
|
|
||||||
rm -f "$LOG_PATH"
|
|
||||||
echo "Removed log file from $LOG_PATH"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Uninstallation completed successfully"
|
|
||||||
@@ -2,42 +2,25 @@
|
|||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
# QML Formatter Script
|
# QML Formatter Script
|
||||||
# Uses: https://github.com/jesperhh/qmlfmt
|
|
||||||
# Install: AUR package "qmlfmt-git" (requires qt6-5compat)
|
|
||||||
|
|
||||||
# Find the available QML formatter command and define format_file accordingly
|
# Find qmlformat binary
|
||||||
if command -v qmlfmt &>/dev/null; then
|
if [ ! -x "/usr/lib/qt6/bin/qmlformat" ]; then
|
||||||
echo "Using 'qmlfmt' for formatting."
|
echo "No 'qmlformat' found in /usr/lib/qt6/bin." >&2
|
||||||
format_file() { qmlfmt -e -b 360 -t 2 -i 2 -w "$1" || { echo "Failed: $1" >&2; return 1; }; }
|
echo "Install it via 'qt6-tools' or 'qt6-declarative-tools' to proceed." >&2
|
||||||
elif command -v qmlformat &>/dev/null; then
|
|
||||||
echo "Using 'qmlformat' for formatting."
|
|
||||||
format_file() { qmlformat -i --indent-width 2 --semicolon-rule essential "$1" || { echo "Failed: $1" >&2; return 1; }; }
|
|
||||||
else
|
|
||||||
echo "Neither 'qmlfmt' nor 'qmlformat' found in PATH." >&2
|
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
format_file() {
|
||||||
|
/usr/lib/qt6/bin/qmlformat -w 2 -W 360 -S --semicolon-rule always -i "$1" || { echo "Failed: $1" >&2; return 1; }
|
||||||
|
}
|
||||||
|
|
||||||
export -f format_file
|
export -f format_file
|
||||||
|
|
||||||
# Find all .qml files
|
# Find all .qml files
|
||||||
mapfile -t all_files < <(find "${1:-.}" -name "*.qml" -type f)
|
mapfile -t all_files < <(find "${1:-.}" -name "*.qml" -type f)
|
||||||
[ ${#all_files[@]} -eq 0 ] && { echo "No QML files found"; exit 0; }
|
[ ${#all_files[@]} -eq 0 ] && { echo "No QML files found"; exit 0; }
|
||||||
|
|
||||||
echo "Scanning ${#all_files[@]} files for array destructuring..."
|
echo "Formatting ${#all_files[@]} files..."
|
||||||
safe_files=()
|
printf '%s\0' "${all_files[@]}" | \
|
||||||
for file in "${all_files[@]}"; do
|
|
||||||
# Checks for a comma inside brackets followed by an equals sign aka "array destructuring"
|
|
||||||
# as this ES6 syntax is not supported by qmlfmt and will result in breakage.
|
|
||||||
if grep -qE '\[.*,.*\]\s*=' "$file"; then
|
|
||||||
echo "-> Skipping (Array destructuring detected): $file" >&2
|
|
||||||
else
|
|
||||||
safe_files+=("$file")
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
[ ${#safe_files[@]} -eq 0 ] && { echo "No safe files to format after filtering."; exit 0; }
|
|
||||||
|
|
||||||
echo "Formatting ${#safe_files[@]} files..."
|
|
||||||
printf '%s\0' "${safe_files[@]}" | \
|
|
||||||
xargs -0 -P "${QMLFMT_JOBS:-$(nproc)}" -I {} bash -c 'format_file "$@"' _ {} \
|
xargs -0 -P "${QMLFMT_JOBS:-$(nproc)}" -I {} bash -c 'format_file "$@"' _ {} \
|
||||||
&& echo "Done" || { echo "Errors occurred" >&2; exit 1; }
|
&& echo "Done" || { echo "Errors occurred" >&2; exit 1; }
|
||||||
@@ -15,10 +15,48 @@ fi
|
|||||||
# Create the destination directory if it doesn't exist.
|
# Create the destination directory if it doesn't exist.
|
||||||
mkdir -p "$DEST_DIR"
|
mkdir -p "$DEST_DIR"
|
||||||
|
|
||||||
# Loop through all files in the source directory ending with .frag
|
# Array to hold the list of full paths to the shaders.
|
||||||
for shader in "$SOURCE_DIR"*.frag; do
|
SHADERS_TO_COMPILE=()
|
||||||
# Check if a file was found (to handle the case of no .frag files).
|
|
||||||
if [ -f "$shader" ]; then
|
# Specific files mode.
|
||||||
|
if [ "$#" -gt 0 ]; then
|
||||||
|
|
||||||
|
# Loop through all command-line arguments ($@ holds all arguments).
|
||||||
|
for SINGLE_FILE in "$@"; do
|
||||||
|
|
||||||
|
# Construct the full path to the source file.
|
||||||
|
FULL_PATH="$SOURCE_DIR$SINGLE_FILE"
|
||||||
|
|
||||||
|
# Check if the specified file exists in the SOURCE_DIR.
|
||||||
|
if [ ! -f "$FULL_PATH" ]; then
|
||||||
|
echo "Error: Specified file '$SINGLE_FILE' not found in $SOURCE_DIR! Skipping."
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Add the valid file to the compilation list.
|
||||||
|
SHADERS_TO_COMPILE+=("$FULL_PATH")
|
||||||
|
done
|
||||||
|
|
||||||
|
# Check if any valid files were found to compile.
|
||||||
|
if [ ${#SHADERS_TO_COMPILE[@]} -eq 0 ]; then
|
||||||
|
echo "No valid shaders found to compile."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Whole directory mode (no argument provided).
|
||||||
|
else
|
||||||
|
# Use find to generate the list of files and assign it to the array.
|
||||||
|
while IFS= read -r shader_path; do
|
||||||
|
if [ -n "$shader_path" ]; then
|
||||||
|
SHADERS_TO_COMPILE+=("$shader_path")
|
||||||
|
fi
|
||||||
|
done < <(find "$SOURCE_DIR" -maxdepth 1 -name "*.frag")
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Loop through the list of shaders to compile.
|
||||||
|
for shader in "${SHADERS_TO_COMPILE[@]}"; do
|
||||||
|
|
||||||
# Get the base name of the file (e.g., wp_fade).
|
# Get the base name of the file (e.g., wp_fade).
|
||||||
shader_name=$(basename "$shader" .frag)
|
shader_name=$(basename "$shader" .frag)
|
||||||
|
|
||||||
@@ -26,11 +64,10 @@ for shader in "$SOURCE_DIR"*.frag; do
|
|||||||
output_path="$DEST_DIR$shader_name.frag.qsb"
|
output_path="$DEST_DIR$shader_name.frag.qsb"
|
||||||
|
|
||||||
# Construct and run the qsb command.
|
# Construct and run the qsb command.
|
||||||
qsb --qt6 -o "$output_path" "$shader"
|
/usr/lib/qt6/bin/qsb --qt6 -o "$output_path" "$shader"
|
||||||
|
|
||||||
# Print a message to confirm compilation.
|
# Print a message to confirm compilation.
|
||||||
echo "Compiled $shader to $output_path"
|
echo "Compiled $(basename "$shader") to $output_path"
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
|
||||||
echo "Shader compilation complete."
|
echo "Shader compilation complete."
|
||||||
@@ -5,7 +5,6 @@ import Quickshell
|
|||||||
import Quickshell.Io
|
import Quickshell.Io
|
||||||
import qs.Commons
|
import qs.Commons
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Noctalia is not strictly a Material Design project, it supports both some predefined
|
Noctalia is not strictly a Material Design project, it supports both some predefined
|
||||||
color schemes and dynamic color generation from the wallpaper (using Matugen).
|
color schemes and dynamic color generation from the wallpaper (using Matugen).
|
||||||
@@ -20,96 +19,66 @@ Singleton {
|
|||||||
id: root
|
id: root
|
||||||
|
|
||||||
// --- Key Colors: These are the main accent colors that define your app's style
|
// --- Key Colors: These are the main accent colors that define your app's style
|
||||||
property color mPrimary: customColors.mPrimary
|
readonly property color mPrimary: customColorsData.mPrimary
|
||||||
property color mOnPrimary: customColors.mOnPrimary
|
readonly property color mOnPrimary: customColorsData.mOnPrimary
|
||||||
property color mSecondary: customColors.mSecondary
|
readonly property color mSecondary: customColorsData.mSecondary
|
||||||
property color mOnSecondary: customColors.mOnSecondary
|
readonly property color mOnSecondary: customColorsData.mOnSecondary
|
||||||
property color mTertiary: customColors.mTertiary
|
readonly property color mTertiary: customColorsData.mTertiary
|
||||||
property color mOnTertiary: customColors.mOnTertiary
|
readonly property color mOnTertiary: customColorsData.mOnTertiary
|
||||||
|
|
||||||
// --- Utility Colors: These colors serve specific, universal purposes like indicating errors
|
// --- Utility Colors: These colors serve specific, universal purposes like indicating errors
|
||||||
property color mError: customColors.mError
|
readonly property color mError: customColorsData.mError
|
||||||
property color mOnError: customColors.mOnError
|
readonly property color mOnError: customColorsData.mOnError
|
||||||
|
|
||||||
// --- Surface and Variant Colors: These provide additional options for surfaces and their contents, creating visual hierarchy
|
// --- Surface and Variant Colors: These provide additional options for surfaces and their contents, creating visual hierarchy
|
||||||
property color mSurface: customColors.mSurface
|
readonly property color mSurface: customColorsData.mSurface
|
||||||
property color mOnSurface: customColors.mOnSurface
|
readonly property color mOnSurface: customColorsData.mOnSurface
|
||||||
|
|
||||||
property color mSurfaceVariant: customColors.mSurfaceVariant
|
readonly property color mSurfaceVariant: customColorsData.mSurfaceVariant
|
||||||
property color mOnSurfaceVariant: customColors.mOnSurfaceVariant
|
readonly property color mOnSurfaceVariant: customColorsData.mOnSurfaceVariant
|
||||||
|
|
||||||
property color mOutline: customColors.mOutline
|
readonly property color mOutline: customColorsData.mOutline
|
||||||
property color mShadow: customColors.mShadow
|
readonly property color mShadow: customColorsData.mShadow
|
||||||
|
|
||||||
property color mHover: customColors.mHover
|
readonly property color mHover: customColorsData.mHover
|
||||||
property color mOnHover: customColors.mOnHover
|
readonly property color mOnHover: customColorsData.mOnHover
|
||||||
|
|
||||||
// --- Absolute Colors
|
// --- Absolute Colors
|
||||||
property color transparent: "transparent"
|
readonly property color transparent: "transparent"
|
||||||
property color black: "#000000"
|
readonly property color black: "#000000"
|
||||||
property color white: "#ffffff"
|
readonly property color white: "#ffffff"
|
||||||
|
|
||||||
// --------------------------------
|
// --------------------------------
|
||||||
// Default colors: RosePine
|
// Default colors: RosePine
|
||||||
QtObject {
|
QtObject {
|
||||||
id: defaultColors
|
id: defaultColors
|
||||||
|
|
||||||
property color mPrimary: "#c7a1d8"
|
readonly property color mPrimary: "#c7a1d8"
|
||||||
property color mOnPrimary: "#1a151f"
|
readonly property color mOnPrimary: "#1a151f"
|
||||||
|
|
||||||
property color mSecondary: "#a984c4"
|
readonly property color mSecondary: "#a984c4"
|
||||||
property color mOnSecondary: "#f3edf7"
|
readonly property color mOnSecondary: "#f3edf7"
|
||||||
|
|
||||||
property color mTertiary: "#e0b7c9"
|
readonly property color mTertiary: "#e0b7c9"
|
||||||
property color mOnTertiary: "#20161f"
|
readonly property color mOnTertiary: "#20161f"
|
||||||
|
|
||||||
property color mError: "#e9899d"
|
readonly property color mError: "#e9899d"
|
||||||
property color mOnError: "#1e1418"
|
readonly property color mOnError: "#1e1418"
|
||||||
|
|
||||||
property color mSurface: "#1c1822"
|
readonly property color mSurface: "#1c1822"
|
||||||
property color mOnSurface: "#e9e4f0"
|
readonly property color mOnSurface: "#e9e4f0"
|
||||||
|
|
||||||
property color mSurfaceVariant: "#262130"
|
readonly property color mSurfaceVariant: "#262130"
|
||||||
property color mOnSurfaceVariant: "#a79ab0"
|
readonly property color mOnSurfaceVariant: "#a79ab0"
|
||||||
|
|
||||||
property color mOutline: "#342c42"
|
readonly property color mOutline: "#342c42"
|
||||||
property color mShadow: "#120f18"
|
readonly property color mShadow: "#120f18"
|
||||||
|
|
||||||
property color mHover: "#e0b7c9"
|
readonly property color mHover: "#e0b7c9"
|
||||||
property color mOnHover: "#20161f"
|
readonly property color mOnHover: "#20161f"
|
||||||
}
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------
|
// ----------------------------------------------------------------
|
||||||
// Custom colors loaded from colors.json
|
|
||||||
// These can be generated by matugen or simply come from a well know color scheme (Dracula, Gruvbox, Nord, ...)
|
|
||||||
QtObject {
|
|
||||||
id: customColors
|
|
||||||
|
|
||||||
property color mPrimary: customColorsData.mPrimary
|
|
||||||
property color mOnPrimary: customColorsData.mOnPrimary
|
|
||||||
|
|
||||||
property color mSecondary: customColorsData.mSecondary
|
|
||||||
property color mOnSecondary: customColorsData.mOnSecondary
|
|
||||||
|
|
||||||
property color mTertiary: customColorsData.mTertiary
|
|
||||||
property color mOnTertiary: customColorsData.mOnTertiary
|
|
||||||
|
|
||||||
property color mError: customColorsData.mError
|
|
||||||
property color mOnError: customColorsData.mOnError
|
|
||||||
|
|
||||||
property color mSurface: customColorsData.mSurface
|
|
||||||
property color mOnSurface: customColorsData.mOnSurface
|
|
||||||
|
|
||||||
property color mSurfaceVariant: customColorsData.mSurfaceVariant
|
|
||||||
property color mOnSurfaceVariant: customColorsData.mOnSurfaceVariant
|
|
||||||
|
|
||||||
property color mOutline: customColorsData.mOutline
|
|
||||||
property color mShadow: customColorsData.mShadow
|
|
||||||
|
|
||||||
property color mHover: customColorsData.mHover
|
|
||||||
property color mOnHover: customColorsData.mOnHover
|
|
||||||
}
|
|
||||||
|
|
||||||
// FileView to load custom colors data from colors.json
|
// FileView to load custom colors data from colors.json
|
||||||
FileView {
|
FileView {
|
||||||
id: customColorsFile
|
id: customColorsFile
|
||||||
@@ -117,24 +86,25 @@ Singleton {
|
|||||||
printErrors: false
|
printErrors: false
|
||||||
watchChanges: true
|
watchChanges: true
|
||||||
onFileChanged: {
|
onFileChanged: {
|
||||||
Logger.i("Color", "Reloading colors from disk")
|
Logger.i("Color", "Reloading colors from disk");
|
||||||
reload()
|
reload();
|
||||||
}
|
}
|
||||||
onAdapterUpdated: {
|
onAdapterUpdated: {
|
||||||
Logger.i("Color", "Writing colors to disk")
|
Logger.i("Color", "Writing colors to disk");
|
||||||
writeAdapter()
|
writeAdapter();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Trigger initial load when path changes from empty to actual path
|
// Trigger initial load when path changes from empty to actual path
|
||||||
onPathChanged: {
|
onPathChanged: {
|
||||||
if (path !== undefined) {
|
if (path !== undefined) {
|
||||||
reload()
|
reload();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
onLoadFailed: function (error) {
|
onLoadFailed: function (error) {
|
||||||
if (error.toString().includes("No such file") || error === 2) {
|
// Error code 2 = ENOENT (No such file or directory)
|
||||||
|
if (error === 2 || error.toString().includes("No such file")) {
|
||||||
// File doesn't exist, create it with default values
|
// File doesn't exist, create it with default values
|
||||||
writeAdapter()
|
writeAdapter();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
JsonAdapter {
|
JsonAdapter {
|
||||||
|
|||||||
252
Commons/I18n.qml
252
Commons/I18n.qml
@@ -12,6 +12,7 @@ Singleton {
|
|||||||
property string langCode: ""
|
property string langCode: ""
|
||||||
property var locale: Qt.locale()
|
property var locale: Qt.locale()
|
||||||
property string systemDetectedLangCode: ""
|
property string systemDetectedLangCode: ""
|
||||||
|
property string fullLocaleCode: "" // Preserves regional locale variants
|
||||||
property var availableLanguages: []
|
property var availableLanguages: []
|
||||||
property var translations: ({})
|
property var translations: ({})
|
||||||
property var fallbackTranslations: ({})
|
property var fallbackTranslations: ({})
|
||||||
@@ -32,13 +33,13 @@ Singleton {
|
|||||||
|
|
||||||
onExited: function (exitCode, exitStatus) {
|
onExited: function (exitCode, exitStatus) {
|
||||||
if (exitCode === 0) {
|
if (exitCode === 0) {
|
||||||
var output = stdoutCollector.text || ""
|
var output = stdoutCollector.text || "";
|
||||||
parseDirectoryListing(output)
|
parseDirectoryListing(output);
|
||||||
} else {
|
} else {
|
||||||
Logger.e("I18n", `Failed to scan translation directory`)
|
Logger.e("I18n", `Failed to scan translation directory`);
|
||||||
// Fallback to default languages
|
// Fallback to default languages
|
||||||
availableLanguages = ["en"]
|
availableLanguages = ["en"];
|
||||||
detectLanguage()
|
detectLanguage();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -50,21 +51,21 @@ Singleton {
|
|||||||
onFileChanged: reload()
|
onFileChanged: reload()
|
||||||
onLoaded: {
|
onLoaded: {
|
||||||
try {
|
try {
|
||||||
var data = JSON.parse(text())
|
var data = JSON.parse(text());
|
||||||
root.translations = data
|
root.translations = data;
|
||||||
Logger.i("I18n", `Loaded translations for "${root.langCode}"`)
|
Logger.i("I18n", `Loaded translations for "${root.langCode}"`);
|
||||||
Logger.d("I18n", `Available root keys: ${Object.keys(data).join(", ")}`)
|
Logger.d("I18n", `Available root keys: ${Object.keys(data).join(", ")}`);
|
||||||
|
|
||||||
root.isLoaded = true
|
root.isLoaded = true;
|
||||||
root.translationsLoaded()
|
root.translationsLoaded();
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
Logger.e("I18n", `Failed to parse translation file: ${e}`)
|
Logger.e("I18n", `Failed to parse translation file: ${e}`);
|
||||||
setLanguage("en")
|
setLanguage("en");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
onLoadFailed: function (error) {
|
onLoadFailed: function (error) {
|
||||||
setLanguage("en")
|
setLanguage("en");
|
||||||
Logger.e("I18n", `Failed to load translation file: ${error}`)
|
Logger.e("I18n", `Failed to load translation file: ${error}`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -75,152 +76,161 @@ Singleton {
|
|||||||
onFileChanged: reload()
|
onFileChanged: reload()
|
||||||
onLoaded: {
|
onLoaded: {
|
||||||
try {
|
try {
|
||||||
var data = JSON.parse(text())
|
var data = JSON.parse(text());
|
||||||
root.fallbackTranslations = data
|
root.fallbackTranslations = data;
|
||||||
Logger.d("I18n", `Loaded english fallback translations`)
|
Logger.d("I18n", `Loaded english fallback translations`);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
Logger.e("I18n", `Failed to parse fallback translation file: ${e}`)
|
Logger.e("I18n", `Failed to parse fallback translation file: ${e}`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
onLoadFailed: function (error) {
|
onLoadFailed: function (error) {
|
||||||
Logger.e("I18n", `Failed to load fallback translation file: ${error}`)
|
Logger.e("I18n", `Failed to load fallback translation file: ${error}`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
Logger.i("I18n", "Service started")
|
Logger.i("I18n", "Service started");
|
||||||
scanAvailableLanguages()
|
scanAvailableLanguages();
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------
|
// -------------------------------------------
|
||||||
function scanAvailableLanguages() {
|
function scanAvailableLanguages() {
|
||||||
Logger.d("I18n", "Scanning for available translation files...")
|
Logger.d("I18n", "Scanning for available translation files...");
|
||||||
directoryScanner.running = true
|
directoryScanner.running = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------
|
// -------------------------------------------
|
||||||
function parseDirectoryListing(output) {
|
function parseDirectoryListing(output) {
|
||||||
var languages = []
|
var languages = [];
|
||||||
|
|
||||||
try {
|
try {
|
||||||
if (!output || output.trim() === "") {
|
if (!output || output.trim() === "") {
|
||||||
Logger.w("I18n", "Empty directory listing output")
|
Logger.w("I18n", "Empty directory listing output");
|
||||||
availableLanguages = ["en"]
|
availableLanguages = ["en"];
|
||||||
detectLanguage()
|
detectLanguage();
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const entries = output.trim().split('\n')
|
const entries = output.trim().split('\n');
|
||||||
|
|
||||||
for (var i = 0; i < entries.length; i++) {
|
for (var i = 0; i < entries.length; i++) {
|
||||||
const entry = entries[i].trim()
|
const entry = entries[i].trim();
|
||||||
if (entry && entry.endsWith('.json')) {
|
if (entry && entry.endsWith('.json')) {
|
||||||
// Extract language code from filename (e.g., "en.json" -> "en")
|
// Extract language code from filename (e.g., "en.json" -> "en")
|
||||||
const langCode = entry.substring(0, entry.lastIndexOf('.json'))
|
const langCode = entry.substring(0, entry.lastIndexOf('.json'));
|
||||||
if (langCode.length >= 2 && langCode.length <= 5) {
|
if (langCode.length >= 2 && langCode.length <= 5) {
|
||||||
// Basic validation for language codes
|
// Basic validation for language codes
|
||||||
languages.push(langCode)
|
languages.push(langCode);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sort languages alphabetically, but ensure "en" comes first if available
|
// Sort languages alphabetically, but ensure "en" comes first if available
|
||||||
languages.sort()
|
languages.sort();
|
||||||
const enIndex = languages.indexOf("en")
|
const enIndex = languages.indexOf("en");
|
||||||
if (enIndex > 0) {
|
if (enIndex > 0) {
|
||||||
languages.splice(enIndex, 1)
|
languages.splice(enIndex, 1);
|
||||||
languages.unshift("en")
|
languages.unshift("en");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (languages.length === 0) {
|
if (languages.length === 0) {
|
||||||
Logger.w("I18n", "No translation files found, using fallback")
|
Logger.w("I18n", "No translation files found, using fallback");
|
||||||
languages = ["en"] // Fallback
|
languages = ["en"]; // Fallback
|
||||||
}
|
}
|
||||||
|
|
||||||
availableLanguages = languages
|
availableLanguages = languages;
|
||||||
Logger.d("I18n", `Found ${languages.length} available languages: ${languages.join(', ')}`)
|
Logger.d("I18n", `Found ${languages.length} available languages: ${languages.join(', ')}`);
|
||||||
|
|
||||||
// Detect language after scanning
|
// Detect language after scanning
|
||||||
detectLanguage()
|
detectLanguage();
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
Logger.e("I18n", `Failed to parse directory listing: ${e}`)
|
Logger.e("I18n", `Failed to parse directory listing: ${e}`);
|
||||||
// Fallback to default languages
|
// Fallback to default languages
|
||||||
availableLanguages = ["en"]
|
availableLanguages = ["en"];
|
||||||
detectLanguage()
|
detectLanguage();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------
|
// -------------------------------------------
|
||||||
function detectLanguage() {
|
function detectLanguage() {
|
||||||
Logger.d("I18n", `detectLanguage() called. Available languages: [${availableLanguages.join(', ')}]`)
|
Logger.d("I18n", `detectLanguage() called. Available languages: [${availableLanguages.join(', ')}]`);
|
||||||
|
|
||||||
if (availableLanguages.length === 0) {
|
if (availableLanguages.length === 0) {
|
||||||
Logger.w("I18n", "No available languages found")
|
Logger.w("I18n", "No available languages found");
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var detectedLang = ""
|
var detectedLang = "";
|
||||||
|
var detectedFullLocale = "";
|
||||||
|
|
||||||
// First, determine the system's preferred language
|
// First, determine the system's preferred language
|
||||||
for (var i = 0; i < Qt.locale().uiLanguages.length; i++) {
|
for (var i = 0; i < Qt.locale().uiLanguages.length; i++) {
|
||||||
const fullUserLang = Qt.locale().uiLanguages[i]
|
const fullUserLang = Qt.locale().uiLanguages[i];
|
||||||
|
|
||||||
if (availableLanguages.includes(fullUserLang)) {
|
if (availableLanguages.includes(fullUserLang)) {
|
||||||
detectedLang = fullUserLang
|
detectedLang = fullUserLang;
|
||||||
break
|
detectedFullLocale = fullUserLang;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
const shortUserLang = fullUserLang.substring(0, 2)
|
const shortUserLang = fullUserLang.substring(0, 2);
|
||||||
if (availableLanguages.includes(shortUserLang)) {
|
if (availableLanguages.includes(shortUserLang)) {
|
||||||
detectedLang = shortUserLang
|
detectedLang = shortUserLang;
|
||||||
break
|
detectedFullLocale = fullUserLang;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// If no system language is found among available languages, fallback
|
// If no system language is found among available languages, fallback
|
||||||
if (detectedLang === "") {
|
if (detectedLang === "") {
|
||||||
detectedLang = availableLanguages.includes("en") ? "en" : availableLanguages[0]
|
detectedLang = availableLanguages.includes("en") ? "en" : availableLanguages[0];
|
||||||
|
detectedFullLocale = detectedLang;
|
||||||
}
|
}
|
||||||
|
|
||||||
root.systemDetectedLangCode = detectedLang
|
root.systemDetectedLangCode = detectedLang;
|
||||||
Logger.d("I18n", `System detected language: "${root.systemDetectedLangCode}"`)
|
root.fullLocaleCode = detectedFullLocale;
|
||||||
|
Logger.d("I18n", `System detected language: "${root.systemDetectedLangCode}" (full locale: "${root.fullLocaleCode}")`);
|
||||||
|
|
||||||
// Now, apply the language: user-defined, then system-detected
|
// Now, apply the language: user-defined, then system-detected
|
||||||
if (Settings.data.general.language !== "" && availableLanguages.includes(Settings.data.general.language)) {
|
if (Settings.data.general.language !== "" && availableLanguages.includes(Settings.data.general.language)) {
|
||||||
Logger.d("I18n", `User-defined language found: "${Settings.data.general.language}"`)
|
Logger.d("I18n", `User-defined language found: "${Settings.data.general.language}"`);
|
||||||
setLanguage(Settings.data.general.language)
|
setLanguage(Settings.data.general.language);
|
||||||
} else {
|
} else {
|
||||||
Logger.d("I18n", `No user-defined language, using system detected: "${root.systemDetectedLangCode}"`)
|
Logger.d("I18n", `No user-defined language, using system detected: "${root.systemDetectedLangCode}"`);
|
||||||
setLanguage(root.systemDetectedLangCode)
|
setLanguage(root.systemDetectedLangCode, root.fullLocaleCode);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------
|
// -------------------------------------------
|
||||||
function setLanguage(newLangCode) {
|
function setLanguage(newLangCode, fullLocale) {
|
||||||
|
if (typeof fullLocale === "undefined") {
|
||||||
|
fullLocale = newLangCode;
|
||||||
|
}
|
||||||
|
|
||||||
if (newLangCode !== langCode && availableLanguages.includes(newLangCode)) {
|
if (newLangCode !== langCode && availableLanguages.includes(newLangCode)) {
|
||||||
langCode = newLangCode
|
langCode = newLangCode;
|
||||||
locale = Qt.locale(langCode)
|
fullLocaleCode = fullLocale;
|
||||||
Logger.i("I18n", `Language set to "${langCode}"`)
|
locale = Qt.locale(fullLocale);
|
||||||
languageChanged(langCode)
|
Logger.i("I18n", `Language set to "${langCode}" with locale "${fullLocale}"`);
|
||||||
loadTranslations()
|
languageChanged(langCode);
|
||||||
|
loadTranslations();
|
||||||
} else if (!availableLanguages.includes(newLangCode)) {
|
} else if (!availableLanguages.includes(newLangCode)) {
|
||||||
Logger.w("I18n", `Language "${newLangCode}" is not available`)
|
Logger.w("I18n", `Language "${newLangCode}" is not available`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------
|
// -------------------------------------------
|
||||||
function loadTranslations() {
|
function loadTranslations() {
|
||||||
if (langCode === "")
|
if (langCode === "")
|
||||||
return
|
return;
|
||||||
|
const filePath = `file://${Quickshell.shellDir}/Assets/Translations/${langCode}.json`;
|
||||||
const filePath = `file://${Quickshell.shellDir}/Assets/Translations/${langCode}.json`
|
fileView.path = filePath;
|
||||||
fileView.path = filePath
|
isLoaded = false;
|
||||||
isLoaded = false
|
Logger.d("I18n", `Loading translations: ${langCode}`);
|
||||||
Logger.d("I18n", `Loading translations: ${langCode}`)
|
|
||||||
|
|
||||||
// Only load fallback translations if we are not using english and english is available
|
// Only load fallback translations if we are not using english and english is available
|
||||||
if (langCode !== "en" && availableLanguages.includes("en")) {
|
if (langCode !== "en" && availableLanguages.includes("en")) {
|
||||||
fallbackFileView.path = `file://${Quickshell.shellDir}/Assets/Translations/en.json`
|
fallbackFileView.path = `file://${Quickshell.shellDir}/Assets/Translations/en.json`;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -228,133 +238,133 @@ Singleton {
|
|||||||
// Check if a translation exists
|
// Check if a translation exists
|
||||||
function hasTranslation(key) {
|
function hasTranslation(key) {
|
||||||
if (!isLoaded)
|
if (!isLoaded)
|
||||||
return false
|
return false;
|
||||||
|
|
||||||
const keys = key.split(".")
|
const keys = key.split(".");
|
||||||
var value = translations
|
var value = translations;
|
||||||
|
|
||||||
for (var i = 0; i < keys.length; i++) {
|
for (var i = 0; i < keys.length; i++) {
|
||||||
if (value && typeof value === "object" && keys[i] in value) {
|
if (value && typeof value === "object" && keys[i] in value) {
|
||||||
value = value[keys[i]]
|
value = value[keys[i]];
|
||||||
} else {
|
} else {
|
||||||
return false
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return typeof value === "string"
|
return typeof value === "string";
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------
|
// -------------------------------------------
|
||||||
// Get all translation keys (useful for debugging)
|
// Get all translation keys (useful for debugging)
|
||||||
function getAllKeys(obj, prefix) {
|
function getAllKeys(obj, prefix) {
|
||||||
if (typeof obj === "undefined")
|
if (typeof obj === "undefined")
|
||||||
obj = translations
|
obj = translations;
|
||||||
if (typeof prefix === "undefined")
|
if (typeof prefix === "undefined")
|
||||||
prefix = ""
|
prefix = "";
|
||||||
|
|
||||||
var keys = []
|
var keys = [];
|
||||||
for (var key in (obj || {})) {
|
for (var key in (obj || {})) {
|
||||||
const value = obj[key]
|
const value = obj[key];
|
||||||
const fullKey = prefix ? `${prefix}.${key}` : key
|
const fullKey = prefix ? `${prefix}.${key}` : key;
|
||||||
if (typeof value === "object" && value !== null) {
|
if (typeof value === "object" && value !== null) {
|
||||||
keys = keys.concat(getAllKeys(value, fullKey))
|
keys = keys.concat(getAllKeys(value, fullKey));
|
||||||
} else if (typeof value === "string") {
|
} else if (typeof value === "string") {
|
||||||
keys.push(fullKey)
|
keys.push(fullKey);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return keys
|
return keys;
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------
|
// -------------------------------------------
|
||||||
// Reload translations (useful for development)
|
// Reload translations (useful for development)
|
||||||
function reload() {
|
function reload() {
|
||||||
Logger.d("I18n", "Reloading translations")
|
Logger.d("I18n", "Reloading translations");
|
||||||
loadTranslations()
|
loadTranslations();
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------
|
// -------------------------------------------
|
||||||
// Main translation function
|
// Main translation function
|
||||||
function tr(key, interpolations) {
|
function tr(key, interpolations) {
|
||||||
if (typeof interpolations === "undefined")
|
if (typeof interpolations === "undefined")
|
||||||
interpolations = {}
|
interpolations = {};
|
||||||
|
|
||||||
if (!isLoaded) {
|
if (!isLoaded) {
|
||||||
//Logger.d("I18n", "Translations not loaded yet")
|
//Logger.d("I18n", "Translations not loaded yet")
|
||||||
return key
|
return key;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Navigate nested keys (e.g., "menu.file.open")
|
// Navigate nested keys (e.g., "menu.file.open")
|
||||||
const keys = key.split(".")
|
const keys = key.split(".");
|
||||||
|
|
||||||
// Look-up translation in the active language
|
// Look-up translation in the active language
|
||||||
var value = translations
|
var value = translations;
|
||||||
var notFound = false
|
var notFound = false;
|
||||||
for (var i = 0; i < keys.length; i++) {
|
for (var i = 0; i < keys.length; i++) {
|
||||||
if (value && typeof value === "object" && keys[i] in value) {
|
if (value && typeof value === "object" && keys[i] in value) {
|
||||||
value = value[keys[i]]
|
value = value[keys[i]];
|
||||||
} else {
|
} else {
|
||||||
Logger.d("I18n", `Translation key "${key}" not found at part "${keys[i]}"`)
|
Logger.d("I18n", `Translation key "${key}" not found at part "${keys[i]}"`);
|
||||||
Logger.d("I18n", `Available keys: ${Object.keys(value || {}).join(", ")}`)
|
Logger.d("I18n", `Available keys: ${Object.keys(value || {}).join(", ")}`);
|
||||||
notFound = true
|
notFound = true;
|
||||||
break
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fallback to english if not found
|
// Fallback to english if not found
|
||||||
if (notFound && availableLanguages.includes("en") && langCode !== "en") {
|
if (notFound && availableLanguages.includes("en") && langCode !== "en") {
|
||||||
value = fallbackTranslations
|
value = fallbackTranslations;
|
||||||
for (var i = 0; i < keys.length; i++) {
|
for (var i = 0; i < keys.length; i++) {
|
||||||
if (value && typeof value === "object" && keys[i] in value) {
|
if (value && typeof value === "object" && keys[i] in value) {
|
||||||
value = value[keys[i]]
|
value = value[keys[i]];
|
||||||
} else {
|
} else {
|
||||||
// Indicate this key does not even exists in the english fallback
|
// Indicate this key does not even exists in the english fallback
|
||||||
return `## ${key} ##`
|
return `## ${key} ##`;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Make untranslated string easy to spot
|
// Make untranslated string easy to spot
|
||||||
value = `<i>${value}</i>`
|
value = `<i>${value}</i>`;
|
||||||
} else if (notFound) {
|
} else if (notFound) {
|
||||||
// No fallback available
|
// No fallback available
|
||||||
return `## ${key} ##`
|
return `## ${key} ##`;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof value !== "string") {
|
if (typeof value !== "string") {
|
||||||
Logger.d("I18n", `Translation key "${key}" is not a string`)
|
Logger.d("I18n", `Translation key "${key}" is not a string`);
|
||||||
return key
|
return key;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Handle interpolations (e.g., "Hello {name}!")
|
// Handle interpolations (e.g., "Hello {name}!")
|
||||||
var result = value
|
var result = value;
|
||||||
for (var placeholder in interpolations) {
|
for (var placeholder in interpolations) {
|
||||||
const regex = new RegExp(`\\{${placeholder}\\}`, 'g')
|
const regex = new RegExp(`\\{${placeholder}\\}`, 'g');
|
||||||
result = result.replace(regex, interpolations[placeholder])
|
result = result.replace(regex, interpolations[placeholder]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return result
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------
|
// -------------------------------------------
|
||||||
// Plural translation function
|
// Plural translation function
|
||||||
function trp(key, count, defaultSingular, defaultPlural, interpolations) {
|
function trp(key, count, defaultSingular, defaultPlural, interpolations) {
|
||||||
if (typeof defaultSingular === "undefined")
|
if (typeof defaultSingular === "undefined")
|
||||||
defaultSingular = ""
|
defaultSingular = "";
|
||||||
if (typeof defaultPlural === "undefined")
|
if (typeof defaultPlural === "undefined")
|
||||||
defaultPlural = ""
|
defaultPlural = "";
|
||||||
if (typeof interpolations === "undefined")
|
if (typeof interpolations === "undefined")
|
||||||
interpolations = {}
|
interpolations = {};
|
||||||
|
|
||||||
const pluralKey = count === 1 ? key : `${key}_plural`
|
const pluralKey = count === 1 ? key : `${key}_plural`;
|
||||||
const defaultValue = count === 1 ? defaultSingular : defaultPlural
|
const defaultValue = count === 1 ? defaultSingular : defaultPlural;
|
||||||
|
|
||||||
// Merge interpolations with count (QML doesn't support spread operator)
|
// Merge interpolations with count (QML doesn't support spread operator)
|
||||||
var finalInterpolations = {
|
var finalInterpolations = {
|
||||||
"count": count
|
"count": count
|
||||||
}
|
};
|
||||||
for (var prop in interpolations) {
|
for (var prop in interpolations) {
|
||||||
finalInterpolations[prop] = interpolations[prop]
|
finalInterpolations[prop] = interpolations[prop];
|
||||||
}
|
}
|
||||||
|
|
||||||
return tr(pluralKey, finalInterpolations)
|
return tr(pluralKey, finalInterpolations);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,15 +26,15 @@ Singleton {
|
|||||||
signal fontReloaded
|
signal fontReloaded
|
||||||
|
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
Logger.i("Icons", "Service started")
|
Logger.i("Icons", "Service started");
|
||||||
loadFontWithCacheBusting()
|
loadFontWithCacheBusting();
|
||||||
}
|
}
|
||||||
|
|
||||||
Connections {
|
Connections {
|
||||||
target: Quickshell
|
target: Quickshell
|
||||||
function onReloadCompleted() {
|
function onReloadCompleted() {
|
||||||
Logger.d("Icons", "Quickshell reload completed - forcing font reload")
|
Logger.d("Icons", "Quickshell reload completed - forcing font reload");
|
||||||
reloadFont()
|
reloadFont();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -42,20 +42,20 @@ Singleton {
|
|||||||
function get(iconName) {
|
function get(iconName) {
|
||||||
// Check in aliases first
|
// Check in aliases first
|
||||||
if (aliases[iconName] !== undefined) {
|
if (aliases[iconName] !== undefined) {
|
||||||
iconName = aliases[iconName]
|
iconName = aliases[iconName];
|
||||||
}
|
}
|
||||||
|
|
||||||
// Find the appropriate codepoint
|
// Find the appropriate codepoint
|
||||||
return icons[iconName]
|
return icons[iconName];
|
||||||
}
|
}
|
||||||
|
|
||||||
function loadFontWithCacheBusting() {
|
function loadFontWithCacheBusting() {
|
||||||
Logger.d("Icons", "Loading font with cache busting")
|
Logger.d("Icons", "Loading font with cache busting");
|
||||||
|
|
||||||
// Destroy old loader first
|
// Destroy old loader first
|
||||||
if (currentFontLoader) {
|
if (currentFontLoader) {
|
||||||
currentFontLoader.destroy()
|
currentFontLoader.destroy();
|
||||||
currentFontLoader = null
|
currentFontLoader = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create new loader with cache-busting URL
|
// Create new loader with cache-busting URL
|
||||||
@@ -64,22 +64,22 @@ Singleton {
|
|||||||
FontLoader {
|
FontLoader {
|
||||||
source: "${cacheBustingPath}"
|
source: "${cacheBustingPath}"
|
||||||
}
|
}
|
||||||
`, root, "dynamicFontLoader_" + fontVersion)
|
`, root, "dynamicFontLoader_" + fontVersion);
|
||||||
|
|
||||||
// Connect to the new loader's status changes
|
// Connect to the new loader's status changes
|
||||||
currentFontLoader.statusChanged.connect(function () {
|
currentFontLoader.statusChanged.connect(function () {
|
||||||
if (currentFontLoader.status === FontLoader.Ready) {
|
if (currentFontLoader.status === FontLoader.Ready) {
|
||||||
Logger.d("Icons", "Font loaded successfully:", currentFontLoader.name, "(version " + fontVersion + ")")
|
Logger.d("Icons", "Font loaded successfully:", currentFontLoader.name, "(version " + fontVersion + ")");
|
||||||
fontReloaded()
|
fontReloaded();
|
||||||
} else if (currentFontLoader.status === FontLoader.Error) {
|
} else if (currentFontLoader.status === FontLoader.Error) {
|
||||||
Logger.e("Icons", "Font failed to load (version " + fontVersion + ")")
|
Logger.e("Icons", "Font failed to load (version " + fontVersion + ")");
|
||||||
}
|
}
|
||||||
})
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function reloadFont() {
|
function reloadFont() {
|
||||||
Logger.d("Icons", "Forcing font reload...")
|
Logger.d("Icons", "Forcing font reload...");
|
||||||
fontVersion++
|
fontVersion++;
|
||||||
loadFontWithCacheBusting()
|
loadFontWithCacheBusting();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -310,8 +310,8 @@ Singleton {
|
|||||||
"align-left": "\u{ea09}",
|
"align-left": "\u{ea09}",
|
||||||
"align-left-2": "\u{ff00}",
|
"align-left-2": "\u{ff00}",
|
||||||
"align-right": "\u{ea0a}",
|
"align-right": "\u{ea0a}",
|
||||||
"alpha"//"align-right-2": "\u{feff}",
|
//"align-right-2": "\u{feff}",
|
||||||
: "\u{f543}",
|
"alpha": "\u{f543}",
|
||||||
"alphabet-arabic": "\u{ff2f}",
|
"alphabet-arabic": "\u{ff2f}",
|
||||||
"alphabet-bangla": "\u{ff2e}",
|
"alphabet-bangla": "\u{ff2e}",
|
||||||
"alphabet-cyrillic": "\u{f1df}",
|
"alphabet-cyrillic": "\u{f1df}",
|
||||||
@@ -3143,8 +3143,8 @@ Singleton {
|
|||||||
"friends": "\u{eab0}",
|
"friends": "\u{eab0}",
|
||||||
"friends-off": "\u{f136}",
|
"friends-off": "\u{f136}",
|
||||||
"frustum": "\u{fa9f}",
|
"frustum": "\u{fa9f}",
|
||||||
"frustum-plus"//"frustum-off": "\u{fa9d}",
|
//"frustum-off": "\u{fa9d}",
|
||||||
: "\u{fa9e}",
|
"frustum-plus": "\u{fa9e}",
|
||||||
"function": "\u{f225}",
|
"function": "\u{f225}",
|
||||||
"function-filled": "\u{fc2b}",
|
"function-filled": "\u{fc2b}",
|
||||||
"function-off": "\u{f3f0}",
|
"function-off": "\u{f3f0}",
|
||||||
@@ -3403,13 +3403,13 @@ Singleton {
|
|||||||
"hexagon-letter-x": "\u{f479}",
|
"hexagon-letter-x": "\u{f479}",
|
||||||
"hexagon-letter-x-filled": "\u{fe30}",
|
"hexagon-letter-x-filled": "\u{fe30}",
|
||||||
"hexagon-letter-y": "\u{f47a}",
|
"hexagon-letter-y": "\u{f47a}",
|
||||||
"hexagon-letter-z"//"hexagon-letter-y-filled": "\u{fe2f}",
|
//"hexagon-letter-y-filled": "\u{fe2f}",
|
||||||
: "\u{f47b}",
|
"hexagon-letter-z": "\u{f47b}",
|
||||||
"hexagon-minus"//"hexagon-letter-z-filled": "\u{fe2e}",
|
//"hexagon-letter-z-filled": "\u{fe2e}",
|
||||||
: "\u{fc8f}",
|
"hexagon-minus": "\u{fc8f}",
|
||||||
"hexagon-minus-2": "\u{fc8e}",
|
"hexagon-minus-2": "\u{fc8e}",
|
||||||
"hexagon-number-0"//"hexagon-minus-filled": "\u{fe2d}",
|
//"hexagon-minus-filled": "\u{fe2d}",
|
||||||
: "\u{f459}",
|
"hexagon-number-0": "\u{f459}",
|
||||||
"hexagon-number-0-filled": "\u{f74c}",
|
"hexagon-number-0-filled": "\u{f74c}",
|
||||||
"hexagon-number-1": "\u{f45a}",
|
"hexagon-number-1": "\u{f45a}",
|
||||||
"hexagon-number-1-filled": "\u{f74d}",
|
"hexagon-number-1-filled": "\u{f74d}",
|
||||||
@@ -3432,8 +3432,8 @@ Singleton {
|
|||||||
"hexagon-off": "\u{ee9c}",
|
"hexagon-off": "\u{ee9c}",
|
||||||
"hexagon-plus": "\u{fc45}",
|
"hexagon-plus": "\u{fc45}",
|
||||||
"hexagon-plus-2": "\u{fc90}",
|
"hexagon-plus-2": "\u{fc90}",
|
||||||
"hexagonal-prism"//"hexagon-plus-filled": "\u{fe2c}",
|
//"hexagon-plus-filled": "\u{fe2c}",
|
||||||
: "\u{faa5}",
|
"hexagonal-prism": "\u{faa5}",
|
||||||
"hexagonal-prism-off": "\u{faa3}",
|
"hexagonal-prism-off": "\u{faa3}",
|
||||||
"hexagonal-prism-plus": "\u{faa4}",
|
"hexagonal-prism-plus": "\u{faa4}",
|
||||||
"hexagonal-pyramid": "\u{faa8}",
|
"hexagonal-pyramid": "\u{faa8}",
|
||||||
@@ -3463,8 +3463,8 @@ Singleton {
|
|||||||
"home-eco": "\u{f351}",
|
"home-eco": "\u{f351}",
|
||||||
"home-edit": "\u{f352}",
|
"home-edit": "\u{f352}",
|
||||||
"home-exclamation": "\u{f33c}",
|
"home-exclamation": "\u{f33c}",
|
||||||
"home-hand"//"home-filled": "\u{fe2b}",
|
//"home-filled": "\u{fe2b}",
|
||||||
: "\u{f504}",
|
"home-hand": "\u{f504}",
|
||||||
"home-heart": "\u{f353}",
|
"home-heart": "\u{f353}",
|
||||||
"home-infinity": "\u{f505}",
|
"home-infinity": "\u{f505}",
|
||||||
"home-link": "\u{f354}",
|
"home-link": "\u{f354}",
|
||||||
@@ -3582,8 +3582,8 @@ Singleton {
|
|||||||
"ironing-2-filled": "\u{1006e}",
|
"ironing-2-filled": "\u{1006e}",
|
||||||
"ironing-3": "\u{f2f6}",
|
"ironing-3": "\u{f2f6}",
|
||||||
"ironing-3-filled": "\u{1006d}",
|
"ironing-3-filled": "\u{1006d}",
|
||||||
"ironing-off"//"ironing-filled": "\u{fe2a}",
|
//"ironing-filled": "\u{fe2a}",
|
||||||
: "\u{f2f7}",
|
"ironing-off": "\u{f2f7}",
|
||||||
"ironing-steam": "\u{f2f9}",
|
"ironing-steam": "\u{f2f9}",
|
||||||
"ironing-steam-filled": "\u{1006c}",
|
"ironing-steam-filled": "\u{1006c}",
|
||||||
"ironing-steam-off": "\u{f2f8}",
|
"ironing-steam-off": "\u{f2f8}",
|
||||||
@@ -3593,8 +3593,8 @@ Singleton {
|
|||||||
"italic": "\u{eb93}",
|
"italic": "\u{eb93}",
|
||||||
"jacket": "\u{f661}",
|
"jacket": "\u{f661}",
|
||||||
"jetpack": "\u{f581}",
|
"jetpack": "\u{f581}",
|
||||||
"jewish-star"//"jetpack-filled": "\u{fe29}",
|
//"jetpack-filled": "\u{fe29}",
|
||||||
: "\u{f3ff}",
|
"jewish-star": "\u{f3ff}",
|
||||||
"jewish-star-filled": "\u{f67e}",
|
"jewish-star-filled": "\u{f67e}",
|
||||||
"join-bevel": "\u{ff4c}",
|
"join-bevel": "\u{ff4c}",
|
||||||
"join-round": "\u{ff4b}",
|
"join-round": "\u{ff4b}",
|
||||||
@@ -3608,8 +3608,8 @@ Singleton {
|
|||||||
"kering": "\u{efb8}",
|
"kering": "\u{efb8}",
|
||||||
"kerning": "\u{efb8}",
|
"kerning": "\u{efb8}",
|
||||||
"key": "\u{eac7}",
|
"key": "\u{eac7}",
|
||||||
"key-off"//"key-filled": "\u{fe28}",
|
//"key-filled": "\u{fe28}",
|
||||||
: "\u{f14b}",
|
"key-off": "\u{f14b}",
|
||||||
"keyboard": "\u{ebd6}",
|
"keyboard": "\u{ebd6}",
|
||||||
"keyboard-filled": "\u{100a2}",
|
"keyboard-filled": "\u{100a2}",
|
||||||
"keyboard-hide": "\u{ec7e}",
|
"keyboard-hide": "\u{ec7e}",
|
||||||
@@ -3665,20 +3665,20 @@ Singleton {
|
|||||||
"layers-union": "\u{eacb}",
|
"layers-union": "\u{eacb}",
|
||||||
"layout": "\u{eadb}",
|
"layout": "\u{eadb}",
|
||||||
"layout-2": "\u{eacc}",
|
"layout-2": "\u{eacc}",
|
||||||
"layout-align-left"//"layout-2-filled": "\u{fe27}",
|
//"layout-2-filled": "\u{fe27}",
|
||||||
//"layout-align-bottom": "\u{eacd}",
|
//"layout-align-bottom": "\u{eacd}",
|
||||||
//"layout-align-bottom-filled": "\u{fe26}",
|
//"layout-align-bottom-filled": "\u{fe26}",
|
||||||
//"layout-align-center": "\u{eace}",
|
//"layout-align-center": "\u{eace}",
|
||||||
//"layout-align-center-filled": "\u{fe25}",
|
//"layout-align-center-filled": "\u{fe25}",
|
||||||
: "\u{eacf}",
|
"layout-align-left": "\u{eacf}",
|
||||||
"layout-align-middle"// "layout-align-left-filled": "\u{fe24}",
|
//"layout-align-left-filled": "\u{fe24}",
|
||||||
: "\u{ead0}",
|
"layout-align-middle": "\u{ead0}",
|
||||||
"layout-align-right"//"layout-align-middle-filled": "\u{fe23}",
|
//"layout-align-middle-filled": "\u{fe23}",
|
||||||
: "\u{ead1}",
|
"layout-align-right": "\u{ead1}",
|
||||||
"layout-align-top"//"layout-align-right-filled": "\u{fe22}",
|
//"layout-align-right-filled": "\u{fe22}",
|
||||||
: "\u{ead2}",
|
"layout-align-top": "\u{ead2}",
|
||||||
"layout-board"//"layout-align-top-filled": "\u{fe21}",
|
//"layout-align-top-filled": "\u{fe21}",
|
||||||
: "\u{ef95}",
|
"layout-board": "\u{ef95}",
|
||||||
"layout-board-filled": "\u{10182}",
|
"layout-board-filled": "\u{10182}",
|
||||||
"layout-board-split": "\u{ef94}",
|
"layout-board-split": "\u{ef94}",
|
||||||
"layout-board-split-filled": "\u{10183}",
|
"layout-board-split-filled": "\u{10183}",
|
||||||
@@ -3690,8 +3690,8 @@ Singleton {
|
|||||||
"layout-bottombar-filled": "\u{fc37}",
|
"layout-bottombar-filled": "\u{fc37}",
|
||||||
"layout-bottombar-inactive": "\u{fd45}",
|
"layout-bottombar-inactive": "\u{fd45}",
|
||||||
"layout-cards": "\u{ec13}",
|
"layout-cards": "\u{ec13}",
|
||||||
"layout-collage"// "layout-cards-filled": "\u{fe20}",
|
//"layout-cards-filled": "\u{fe20}",
|
||||||
: "\u{f389}",
|
"layout-collage": "\u{f389}",
|
||||||
"layout-columns": "\u{ead4}",
|
"layout-columns": "\u{ead4}",
|
||||||
"layout-dashboard": "\u{f02c}",
|
"layout-dashboard": "\u{f02c}",
|
||||||
"layout-dashboard-filled": "\u{fe1f}",
|
"layout-dashboard-filled": "\u{fe1f}",
|
||||||
@@ -4172,14 +4172,14 @@ Singleton {
|
|||||||
"microphone": "\u{eaf0}",
|
"microphone": "\u{eaf0}",
|
||||||
"microphone-2": "\u{ef2c}",
|
"microphone-2": "\u{ef2c}",
|
||||||
"microphone-2-off": "\u{f40d}",
|
"microphone-2-off": "\u{f40d}",
|
||||||
"microphone-off"//"microphone-filled": "\u{fe0f}",
|
//"microphone-filled": "\u{fe0f}",
|
||||||
: "\u{ed16}",
|
"microphone-off": "\u{ed16}",
|
||||||
"microscope": "\u{ef64}",
|
"microscope": "\u{ef64}",
|
||||||
"microscope-filled": "\u{10166}",
|
"microscope-filled": "\u{10166}",
|
||||||
"microscope-off": "\u{f40e}",
|
"microscope-off": "\u{f40e}",
|
||||||
"microwave": "\u{f248}",
|
"microwave": "\u{f248}",
|
||||||
"microwave-off"//"microwave-filled": "\u{fe0e}",
|
//"microwave-filled": "\u{fe0e}",
|
||||||
: "\u{f264}",
|
"microwave-off": "\u{f264}",
|
||||||
"military-award": "\u{f079}",
|
"military-award": "\u{f079}",
|
||||||
"military-rank": "\u{efcf}",
|
"military-rank": "\u{efcf}",
|
||||||
"military-rank-filled": "\u{ff5e}",
|
"military-rank-filled": "\u{ff5e}",
|
||||||
@@ -4413,7 +4413,7 @@ Singleton {
|
|||||||
"number-4-small": "\u{fcf9}",
|
"number-4-small": "\u{fcf9}",
|
||||||
"number-40-small": "\u{fffa}",
|
"number-40-small": "\u{fffa}",
|
||||||
"number-41-small": "\u{fff9}",
|
"number-41-small": "\u{fff9}",
|
||||||
"number-5"//"number-42-small": "\u{fff8}",
|
//"number-42-small": "\u{fff8}",
|
||||||
//"number-43-small": "\u{fff7}",
|
//"number-43-small": "\u{fff7}",
|
||||||
//"number-44-small": "\u{fff6}",
|
//"number-44-small": "\u{fff6}",
|
||||||
//"number-45-small": "\u{fff5}",
|
//"number-45-small": "\u{fff5}",
|
||||||
@@ -4421,10 +4421,10 @@ Singleton {
|
|||||||
//"number-47-small": "\u{fff3}",
|
//"number-47-small": "\u{fff3}",
|
||||||
//"number-48-small": "\u{fff2}",
|
//"number-48-small": "\u{fff2}",
|
||||||
//"number-49-small": "\u{fff1}",
|
//"number-49-small": "\u{fff1}",
|
||||||
: "\u{edf5}",
|
"number-5": "\u{edf5}",
|
||||||
"number-5-small": "\u{fcfa}",
|
"number-5-small": "\u{fcfa}",
|
||||||
"number-51-small"// "number-50-small": "\u{fff0}",
|
//"number-50-small": "\u{fff0}",
|
||||||
: "\u{ffef}",
|
"number-51-small": "\u{ffef}",
|
||||||
"number-52-small": "\u{ffee}",
|
"number-52-small": "\u{ffee}",
|
||||||
"number-53-small": "\u{ffed}",
|
"number-53-small": "\u{ffed}",
|
||||||
"number-54-small": "\u{ffec}",
|
"number-54-small": "\u{ffec}",
|
||||||
@@ -4864,11 +4864,11 @@ Singleton {
|
|||||||
"quote": "\u{efbe}",
|
"quote": "\u{efbe}",
|
||||||
"quote-filled": "\u{1009c}",
|
"quote-filled": "\u{1009c}",
|
||||||
"quote-off": "\u{f188}",
|
"quote-off": "\u{f188}",
|
||||||
"radar"//"quotes": "\u{fb1e}",
|
//"quotes": "\u{fb1e}",
|
||||||
: "\u{f017}",
|
"radar": "\u{f017}",
|
||||||
"radar-2": "\u{f016}",
|
"radar-2": "\u{f016}",
|
||||||
"radar-off"//"radar-filled": "\u{fe0d}",
|
//"radar-filled": "\u{fe0d}",
|
||||||
: "\u{f41f}",
|
"radar-off": "\u{f41f}",
|
||||||
"radio": "\u{ef2d}",
|
"radio": "\u{ef2d}",
|
||||||
"radio-off": "\u{f420}",
|
"radio-off": "\u{f420}",
|
||||||
"radioactive": "\u{ecc0}",
|
"radioactive": "\u{ecc0}",
|
||||||
@@ -4928,12 +4928,12 @@ Singleton {
|
|||||||
"regex-off": "\u{f421}",
|
"regex-off": "\u{f421}",
|
||||||
"registered": "\u{eb14}",
|
"registered": "\u{eb14}",
|
||||||
"relation-many-to-many": "\u{ed7f}",
|
"relation-many-to-many": "\u{ed7f}",
|
||||||
"relation-one-to-many"//"relation-many-to-many-filled": "\u{fe0c}",
|
//"relation-many-to-many-filled": "\u{fe0c}",
|
||||||
: "\u{ed80}",
|
"relation-one-to-many": "\u{ed80}",
|
||||||
"relation-one-to-one"//"relation-one-to-many-filled": "\u{fe0b}",
|
//"relation-one-to-many-filled": "\u{fe0b}",
|
||||||
: "\u{ed81}",
|
"relation-one-to-one": "\u{ed81}",
|
||||||
"reload"//"relation-one-to-one-filled": "\u{fe0a}",
|
//"relation-one-to-one-filled": "\u{fe0a}",
|
||||||
: "\u{f3ae}",
|
"reload": "\u{f3ae}",
|
||||||
"reorder": "\u{fc15}",
|
"reorder": "\u{fc15}",
|
||||||
"repeat": "\u{eb72}",
|
"repeat": "\u{eb72}",
|
||||||
"repeat-off": "\u{f18e}",
|
"repeat-off": "\u{f18e}",
|
||||||
@@ -5085,8 +5085,8 @@ Singleton {
|
|||||||
"search": "\u{eb1c}",
|
"search": "\u{eb1c}",
|
||||||
"search-off": "\u{f19c}",
|
"search-off": "\u{f19c}",
|
||||||
"section": "\u{eed5}",
|
"section": "\u{eed5}",
|
||||||
"section-sign"//"section-filled": "\u{fe09}",
|
//"section-filled": "\u{fe09}",
|
||||||
: "\u{f019}",
|
"section-sign": "\u{f019}",
|
||||||
"seeding": "\u{ed51}",
|
"seeding": "\u{ed51}",
|
||||||
"seeding-filled": "\u{10006}",
|
"seeding-filled": "\u{10006}",
|
||||||
"seeding-off": "\u{f19d}",
|
"seeding-off": "\u{f19d}",
|
||||||
@@ -5294,8 +5294,8 @@ Singleton {
|
|||||||
"sort-z-a": "\u{f550}",
|
"sort-z-a": "\u{f550}",
|
||||||
"sos": "\u{f24a}",
|
"sos": "\u{f24a}",
|
||||||
"soup": "\u{ef2e}",
|
"soup": "\u{ef2e}",
|
||||||
"soup-off"//"soup-filled": "\u{fe08}",
|
//"soup-filled": "\u{fe08}",
|
||||||
: "\u{f42d}",
|
"soup-off": "\u{f42d}",
|
||||||
"source-code": "\u{f4a2}",
|
"source-code": "\u{f4a2}",
|
||||||
"space": "\u{ec0c}",
|
"space": "\u{ec0c}",
|
||||||
"space-off": "\u{f1aa}",
|
"space-off": "\u{f1aa}",
|
||||||
@@ -5388,22 +5388,22 @@ Singleton {
|
|||||||
"square-half": "\u{effb}",
|
"square-half": "\u{effb}",
|
||||||
"square-key": "\u{f638}",
|
"square-key": "\u{f638}",
|
||||||
"square-letter-a": "\u{f47c}",
|
"square-letter-a": "\u{f47c}",
|
||||||
"square-letter-b"//"square-letter-a-filled": "\u{fe07}",
|
//"square-letter-a-filled": "\u{fe07}",
|
||||||
: "\u{f47d}",
|
"square-letter-b": "\u{f47d}",
|
||||||
"square-letter-c"//"square-letter-b-filled": "\u{fe06}",
|
//"square-letter-b-filled": "\u{fe06}",
|
||||||
: "\u{f47e}",
|
"square-letter-c": "\u{f47e}",
|
||||||
"square-letter-d"//"square-letter-c-filled": "\u{fe05}",
|
//"square-letter-c-filled": "\u{fe05}",
|
||||||
: "\u{f47f}",
|
"square-letter-d": "\u{f47f}",
|
||||||
"square-letter-e"//"square-letter-d-filled": "\u{fe04}",
|
//"square-letter-d-filled": "\u{fe04}",
|
||||||
: "\u{f480}",
|
"square-letter-e": "\u{f480}",
|
||||||
"square-letter-f"//"square-letter-e-filled": "\u{fe03}",
|
//"square-letter-e-filled": "\u{fe03}",
|
||||||
: "\u{f481}",
|
"square-letter-f": "\u{f481}",
|
||||||
"square-letter-g"//"square-letter-f-filled": "\u{fe02}",
|
//"square-letter-f-filled": "\u{fe02}",
|
||||||
: "\u{f482}",
|
"square-letter-g": "\u{f482}",
|
||||||
"square-letter-h"//"square-letter-g-filled": "\u{fe01}",
|
//"square-letter-g-filled": "\u{fe01}",
|
||||||
: "\u{f483}",
|
"square-letter-h": "\u{f483}",
|
||||||
"square-letter-i"//"square-letter-h-filled": "\u{fe00}",
|
//"square-letter-h-filled": "\u{fe00}",
|
||||||
: "\u{f484}",
|
"square-letter-i": "\u{f484}",
|
||||||
"square-letter-i-filled": "\u{fdff}",
|
"square-letter-i-filled": "\u{fdff}",
|
||||||
"square-letter-j": "\u{f485}",
|
"square-letter-j": "\u{f485}",
|
||||||
"square-letter-j-filled": "\u{fdfe}",
|
"square-letter-j-filled": "\u{fdfe}",
|
||||||
|
|||||||
@@ -7,63 +7,63 @@ Singleton {
|
|||||||
id: root
|
id: root
|
||||||
|
|
||||||
function _formatMessage(...args) {
|
function _formatMessage(...args) {
|
||||||
var t = Time.getFormattedTimestamp()
|
var t = Time.getFormattedTimestamp();
|
||||||
if (args.length > 1) {
|
if (args.length > 1) {
|
||||||
const maxLength = 14
|
const maxLength = 14;
|
||||||
var module = args.shift().substring(0, maxLength).padStart(maxLength, " ")
|
var module = args.shift().substring(0, maxLength).padStart(maxLength, " ");
|
||||||
return `\x1b[36m[${t}]\x1b[0m \x1b[35m${module}\x1b[0m ` + args.join(" ")
|
return `\x1b[36m[${t}]\x1b[0m \x1b[35m${module}\x1b[0m ` + args.join(" ");
|
||||||
} else {
|
} else {
|
||||||
return `[\x1b[36m[${t}]\x1b[0m ` + args.join(" ")
|
return `[\x1b[36m[${t}]\x1b[0m ` + args.join(" ");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function _getStackTrace() {
|
function _getStackTrace() {
|
||||||
try {
|
try {
|
||||||
throw new Error("Stack trace")
|
throw new Error("Stack trace");
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
return e.stack
|
return e.stack;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Debug log (only when Settings.isDebug is true)
|
// Debug log (only when Settings.isDebug is true)
|
||||||
function d(...args) {
|
function d(...args) {
|
||||||
if (Settings && Settings.isDebug) {
|
if (Settings?.isDebug) {
|
||||||
var msg = _formatMessage(...args)
|
var msg = _formatMessage(...args);
|
||||||
console.debug(msg)
|
console.debug(msg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Info log (always visible)
|
// Info log (always visible)
|
||||||
function i(...args) {
|
function i(...args) {
|
||||||
var msg = _formatMessage(...args)
|
var msg = _formatMessage(...args);
|
||||||
console.info(msg)
|
console.info(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Warning log (always visible)
|
// Warning log (always visible)
|
||||||
function w(...args) {
|
function w(...args) {
|
||||||
var msg = _formatMessage(...args)
|
var msg = _formatMessage(...args);
|
||||||
console.warn(msg)
|
console.warn(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Error log (always visible)
|
// Error log (always visible)
|
||||||
function e(...args) {
|
function e(...args) {
|
||||||
var msg = _formatMessage(...args)
|
var msg = _formatMessage(...args);
|
||||||
console.error(msg)
|
console.error(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
function callStack() {
|
function callStack() {
|
||||||
var stack = _getStackTrace()
|
var stack = _getStackTrace();
|
||||||
Logger.i("Debug", "--------------------------")
|
Logger.i("Debug", "--------------------------");
|
||||||
Logger.i("Debug", "Current call stack")
|
Logger.i("Debug", "Current call stack");
|
||||||
// Split the stack into lines and log each one
|
// Split the stack into lines and log each one
|
||||||
var stackLines = stack.split('\n')
|
var stackLines = stack.split('\n');
|
||||||
for (var i = 0; i < stackLines.length; i++) {
|
for (var i = 0; i < stackLines.length; i++) {
|
||||||
var line = stackLines[i].trim() // Remove leading/trailing whitespace
|
var line = stackLines[i].trim(); // Remove leading/trailing whitespace
|
||||||
if (line.length > 0) {
|
if (line.length > 0) {
|
||||||
// Only log non-empty lines
|
// Only log non-empty lines
|
||||||
Logger.i("Debug", `- ${line}`)
|
Logger.i("Debug", `- ${line}`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Logger.i("Debug", "--------------------------")
|
Logger.i("Debug", "--------------------------");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,9 +3,9 @@ pragma Singleton
|
|||||||
import QtQuick
|
import QtQuick
|
||||||
import Quickshell
|
import Quickshell
|
||||||
import Quickshell.Io
|
import Quickshell.Io
|
||||||
|
import "../Helpers/QtObj2JS.js" as QtObj2JS
|
||||||
import qs.Commons
|
import qs.Commons
|
||||||
import qs.Services.UI
|
import qs.Services.UI
|
||||||
import "../Helpers/QtObj2JS.js" as QtObj2JS
|
|
||||||
|
|
||||||
Singleton {
|
Singleton {
|
||||||
id: root
|
id: root
|
||||||
@@ -42,30 +42,30 @@ Singleton {
|
|||||||
// Ensure directories exist before FileView tries to read files
|
// Ensure directories exist before FileView tries to read files
|
||||||
Component.onCompleted: {
|
Component.onCompleted: {
|
||||||
// ensure settings dir exists
|
// ensure settings dir exists
|
||||||
Quickshell.execDetached(["mkdir", "-p", configDir])
|
Quickshell.execDetached(["mkdir", "-p", configDir]);
|
||||||
Quickshell.execDetached(["mkdir", "-p", cacheDir])
|
Quickshell.execDetached(["mkdir", "-p", cacheDir]);
|
||||||
|
|
||||||
Quickshell.execDetached(["mkdir", "-p", cacheDirImagesWallpapers])
|
Quickshell.execDetached(["mkdir", "-p", cacheDirImagesWallpapers]);
|
||||||
Quickshell.execDetached(["mkdir", "-p", cacheDirImagesNotifications])
|
Quickshell.execDetached(["mkdir", "-p", cacheDirImagesNotifications]);
|
||||||
|
|
||||||
// Mark directories as created and trigger file loading
|
// Mark directories as created and trigger file loading
|
||||||
directoriesCreated = true
|
directoriesCreated = true;
|
||||||
|
|
||||||
// This should only be activated once when the settings structure has changed
|
// This should only be activated once when the settings structure has changed
|
||||||
// Then it should be commented out again, regular users don't need to generate
|
// Then it should be commented out again, regular users don't need to generate
|
||||||
// default settings on every start
|
// default settings on every start
|
||||||
if (isDebug) {
|
if (isDebug) {
|
||||||
generateDefaultSettings()
|
generateDefaultSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Patch-in the local default, resolved to user's home
|
// Patch-in the local default, resolved to user's home
|
||||||
adapter.general.avatarImage = defaultAvatar
|
adapter.general.avatarImage = defaultAvatar;
|
||||||
adapter.screenRecorder.directory = defaultVideosDirectory
|
adapter.screenRecorder.directory = defaultVideosDirectory;
|
||||||
adapter.wallpaper.directory = defaultWallpapersDirectory
|
adapter.wallpaper.directory = defaultWallpapersDirectory;
|
||||||
adapter.wallpaper.defaultWallpaper = Quickshell.shellDir + "/Assets/Wallpaper/noctalia.png"
|
adapter.wallpaper.defaultWallpaper = Quickshell.shellDir + "/Assets/Wallpaper/noctalia.png";
|
||||||
|
|
||||||
// Set the adapter to the settingsFileView to trigger the real settings load
|
// Set the adapter to the settingsFileView to trigger the real settings load
|
||||||
settingsFileView.adapter = adapter
|
settingsFileView.adapter = adapter;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Don't write settings to disk immediately
|
// Don't write settings to disk immediately
|
||||||
@@ -75,7 +75,7 @@ Singleton {
|
|||||||
running: false
|
running: false
|
||||||
interval: 1000
|
interval: 1000
|
||||||
onTriggered: {
|
onTriggered: {
|
||||||
root.saveImmediate()
|
root.saveImmediate();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -90,31 +90,31 @@ Singleton {
|
|||||||
// Trigger initial load when path changes from empty to actual path
|
// Trigger initial load when path changes from empty to actual path
|
||||||
onPathChanged: {
|
onPathChanged: {
|
||||||
if (path !== undefined) {
|
if (path !== undefined) {
|
||||||
reload()
|
reload();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
onLoaded: function () {
|
onLoaded: function () {
|
||||||
if (!isLoaded) {
|
if (!isLoaded) {
|
||||||
Logger.i("Settings", "Settings loaded")
|
Logger.i("Settings", "Settings loaded");
|
||||||
|
|
||||||
upgradeSettingsData()
|
upgradeSettingsData();
|
||||||
validateMonitorConfigurations()
|
validateMonitorConfigurations();
|
||||||
isLoaded = true
|
isLoaded = true;
|
||||||
|
|
||||||
// Emit the signal
|
// Emit the signal
|
||||||
root.settingsLoaded()
|
root.settingsLoaded();
|
||||||
|
|
||||||
// Finally, update our local settings version
|
// Finally, update our local settings version
|
||||||
adapter.settingsVersion = settingsVersion
|
adapter.settingsVersion = settingsVersion;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
onLoadFailed: function (error) {
|
onLoadFailed: function (error) {
|
||||||
if (error.toString().includes("No such file") || error === 2) {
|
if (error.toString().includes("No such file") || error === 2) {
|
||||||
// File doesn't exist, create it with default values
|
// File doesn't exist, create it with default values
|
||||||
writeAdapter()
|
writeAdapter();
|
||||||
// Also write to fallback if set
|
// Also write to fallback if set
|
||||||
if (Quickshell.env("NOCTALIA_SETTINGS_FALLBACK")) {
|
if (Quickshell.env("NOCTALIA_SETTINGS_FALLBACK")) {
|
||||||
settingsFallbackFileView.writeAdapter()
|
settingsFallbackFileView.writeAdapter();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -141,6 +141,7 @@ Singleton {
|
|||||||
property list<string> monitors: []
|
property list<string> monitors: []
|
||||||
property string density: "default" // "compact", "default", "comfortable"
|
property string density: "default" // "compact", "default", "comfortable"
|
||||||
property bool showCapsule: true
|
property bool showCapsule: true
|
||||||
|
property real capsuleOpacity: 1.0
|
||||||
|
|
||||||
// Floating bar settings
|
// Floating bar settings
|
||||||
property bool floating: false
|
property bool floating: false
|
||||||
@@ -156,40 +157,55 @@ Singleton {
|
|||||||
// Widget configuration for modular bar system
|
// Widget configuration for modular bar system
|
||||||
property JsonObject widgets
|
property JsonObject widgets
|
||||||
widgets: JsonObject {
|
widgets: JsonObject {
|
||||||
property list<var> left: [{
|
property list<var> left: [
|
||||||
|
{
|
||||||
"id": "ControlCenter"
|
"id": "ControlCenter"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "SystemMonitor"
|
"id": "SystemMonitor"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "ActiveWindow"
|
"id": "ActiveWindow"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "MediaMini"
|
"id": "MediaMini"
|
||||||
}]
|
}
|
||||||
property list<var> center: [{
|
]
|
||||||
|
property list<var> center: [
|
||||||
|
{
|
||||||
"id": "Workspace"
|
"id": "Workspace"
|
||||||
}]
|
}
|
||||||
property list<var> right: [{
|
]
|
||||||
|
property list<var> right: [
|
||||||
|
{
|
||||||
"id": "ScreenRecorder"
|
"id": "ScreenRecorder"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "Tray"
|
"id": "Tray"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "NotificationHistory"
|
"id": "NotificationHistory"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "Battery"
|
"id": "Battery"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "Volume"
|
"id": "Volume"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "Brightness"
|
"id": "Brightness"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "Clock"
|
"id": "Clock"
|
||||||
}]
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// general
|
// general
|
||||||
property JsonObject general: JsonObject {
|
property JsonObject general: JsonObject {
|
||||||
property string avatarImage: ""
|
property string avatarImage: ""
|
||||||
property real dimmerOpacity: 0.8
|
property real dimmerOpacity: 0.6
|
||||||
property bool showScreenCorners: false
|
property bool showScreenCorners: false
|
||||||
property bool forceBlackScreenCorners: false
|
property bool forceBlackScreenCorners: false
|
||||||
property real scaleRatio: 1.0
|
property real scaleRatio: 1.0
|
||||||
@@ -204,6 +220,7 @@ Singleton {
|
|||||||
property int shadowOffsetX: 2
|
property int shadowOffsetX: 2
|
||||||
property int shadowOffsetY: 3
|
property int shadowOffsetY: 3
|
||||||
property string language: ""
|
property string language: ""
|
||||||
|
property bool allowPanelsOnScreenWithoutBar: true
|
||||||
}
|
}
|
||||||
|
|
||||||
// ui
|
// ui
|
||||||
@@ -222,6 +239,7 @@ Singleton {
|
|||||||
property JsonObject location: JsonObject {
|
property JsonObject location: JsonObject {
|
||||||
property string name: defaultLocation
|
property string name: defaultLocation
|
||||||
property bool weatherEnabled: true
|
property bool weatherEnabled: true
|
||||||
|
property bool weatherShowEffects: true
|
||||||
property bool useFahrenheit: false
|
property bool useFahrenheit: false
|
||||||
property bool use12hourFormat: false
|
property bool use12hourFormat: false
|
||||||
property bool showWeekNumberInCalendar: false
|
property bool showWeekNumberInCalendar: false
|
||||||
@@ -266,7 +284,7 @@ Singleton {
|
|||||||
// Wallhaven settings
|
// Wallhaven settings
|
||||||
property bool useWallhaven: false
|
property bool useWallhaven: false
|
||||||
property string wallhavenQuery: ""
|
property string wallhavenQuery: ""
|
||||||
property string wallhavenSorting: "date_added"
|
property string wallhavenSorting: "relevance"
|
||||||
property string wallhavenOrder: "desc"
|
property string wallhavenOrder: "desc"
|
||||||
property string wallhavenCategories: "111" // general,anime,people
|
property string wallhavenCategories: "111" // general,anime,people
|
||||||
property string wallhavenPurity: "100" // sfw only
|
property string wallhavenPurity: "100" // sfw only
|
||||||
@@ -278,6 +296,7 @@ Singleton {
|
|||||||
// applauncher
|
// applauncher
|
||||||
property JsonObject appLauncher: JsonObject {
|
property JsonObject appLauncher: JsonObject {
|
||||||
property bool enableClipboardHistory: false
|
property bool enableClipboardHistory: false
|
||||||
|
property bool enableClipPreview: true
|
||||||
// Position: center, top_left, top_right, bottom_left, bottom_right, bottom_center, top_center
|
// Position: center, top_left, top_right, bottom_left, bottom_right, bottom_center, top_center
|
||||||
property string position: "center"
|
property string position: "center"
|
||||||
property list<string> pinnedExecs: []
|
property list<string> pinnedExecs: []
|
||||||
@@ -294,41 +313,57 @@ Singleton {
|
|||||||
property string position: "close_to_bar_button"
|
property string position: "close_to_bar_button"
|
||||||
property JsonObject shortcuts
|
property JsonObject shortcuts
|
||||||
shortcuts: JsonObject {
|
shortcuts: JsonObject {
|
||||||
property list<var> left: [{
|
property list<var> left: [
|
||||||
|
{
|
||||||
"id": "WiFi"
|
"id": "WiFi"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "Bluetooth"
|
"id": "Bluetooth"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "ScreenRecorder"
|
"id": "ScreenRecorder"
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "WallpaperSelector"
|
"id": "WallpaperSelector"
|
||||||
}]
|
|
||||||
property list<var> right: [{
|
|
||||||
"id": "Notifications"
|
|
||||||
}, {
|
|
||||||
"id": "PowerProfile"
|
|
||||||
}, {
|
|
||||||
"id": "KeepAwake"
|
|
||||||
}, {
|
|
||||||
"id": "NightLight"
|
|
||||||
}]
|
|
||||||
}
|
}
|
||||||
property list<var> cards: [{
|
]
|
||||||
|
property list<var> right: [
|
||||||
|
{
|
||||||
|
"id": "Notifications"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "PowerProfile"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "KeepAwake"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "NightLight"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
property list<var> cards: [
|
||||||
|
{
|
||||||
"id": "profile-card",
|
"id": "profile-card",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "shortcuts-card",
|
"id": "shortcuts-card",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "audio-card",
|
"id": "audio-card",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "weather-card",
|
"id": "weather-card",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"id": "media-sysmon-card",
|
"id": "media-sysmon-card",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}]
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
// system monitor
|
// system monitor
|
||||||
@@ -351,6 +386,7 @@ Singleton {
|
|||||||
property bool enabled: true
|
property bool enabled: true
|
||||||
property string displayMode: "always_visible" // "always_visible", "auto_hide", "exclusive"
|
property string displayMode: "always_visible" // "always_visible", "auto_hide", "exclusive"
|
||||||
property real backgroundOpacity: 1.0
|
property real backgroundOpacity: 1.0
|
||||||
|
property real radiusRatio: 0.1
|
||||||
property real floatingRatio: 1.0
|
property real floatingRatio: 1.0
|
||||||
property real size: 1
|
property real size: 1
|
||||||
property bool onlySameOutput: true
|
property bool onlySameOutput: true
|
||||||
@@ -371,25 +407,32 @@ Singleton {
|
|||||||
property int countdownDuration: 10000
|
property int countdownDuration: 10000
|
||||||
property string position: "center"
|
property string position: "center"
|
||||||
property bool showHeader: true
|
property bool showHeader: true
|
||||||
property list<var> powerOptions: [{
|
property list<var> powerOptions: [
|
||||||
|
{
|
||||||
"action": "lock",
|
"action": "lock",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"action": "suspend",
|
"action": "suspend",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"action": "hibernate",
|
"action": "hibernate",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"action": "reboot",
|
"action": "reboot",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"action": "logout",
|
"action": "logout",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}, {
|
},
|
||||||
|
{
|
||||||
"action": "shutdown",
|
"action": "shutdown",
|
||||||
"enabled": true
|
"enabled": true
|
||||||
}]
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
// notifications
|
// notifications
|
||||||
@@ -425,6 +468,7 @@ Singleton {
|
|||||||
property string visualizerQuality: "high"
|
property string visualizerQuality: "high"
|
||||||
property list<string> mprisBlacklist: []
|
property list<string> mprisBlacklist: []
|
||||||
property string preferredPlayer: ""
|
property string preferredPlayer: ""
|
||||||
|
property string externalMixer: "pwvucontrol || pavucontrol"
|
||||||
}
|
}
|
||||||
|
|
||||||
// brightness
|
// brightness
|
||||||
@@ -476,98 +520,97 @@ Singleton {
|
|||||||
property string manualSunset: "18:30"
|
property string manualSunset: "18:30"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
property JsonObject changelog: JsonObject {
|
||||||
|
property string lastSeenVersion: ""
|
||||||
|
}
|
||||||
|
|
||||||
// hooks
|
// hooks
|
||||||
property JsonObject hooks: JsonObject {
|
property JsonObject hooks: JsonObject {
|
||||||
property bool enabled: false
|
property bool enabled: false
|
||||||
property string wallpaperChange: ""
|
property string wallpaperChange: ""
|
||||||
property string darkModeChange: ""
|
property string darkModeChange: ""
|
||||||
}
|
}
|
||||||
|
|
||||||
// battery
|
|
||||||
property JsonObject battery: JsonObject {
|
|
||||||
property int chargingMode: 0
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// -----------------------------------------------------
|
// -----------------------------------------------------
|
||||||
// Function to preprocess paths by expanding "~" to user's home directory
|
// Function to preprocess paths by expanding "~" to user's home directory
|
||||||
function preprocessPath(path) {
|
function preprocessPath(path) {
|
||||||
if (typeof path !== "string" || path === "") {
|
if (typeof path !== "string" || path === "") {
|
||||||
return path
|
return path;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Expand "~" to user's home directory
|
// Expand "~" to user's home directory
|
||||||
if (path.startsWith("~/")) {
|
if (path.startsWith("~/")) {
|
||||||
return Quickshell.env("HOME") + path.substring(1)
|
return Quickshell.env("HOME") + path.substring(1);
|
||||||
} else if (path === "~") {
|
} else if (path === "~") {
|
||||||
return Quickshell.env("HOME")
|
return Quickshell.env("HOME");
|
||||||
}
|
}
|
||||||
|
|
||||||
return path
|
return path;
|
||||||
}
|
}
|
||||||
|
|
||||||
// -----------------------------------------------------
|
// -----------------------------------------------------
|
||||||
// Public function to trigger immediate settings saving
|
// Public function to trigger immediate settings saving
|
||||||
function saveImmediate() {
|
function saveImmediate() {
|
||||||
settingsFileView.writeAdapter()
|
settingsFileView.writeAdapter();
|
||||||
// Write to fallback location if set
|
// Write to fallback location if set
|
||||||
if (Quickshell.env("NOCTALIA_SETTINGS_FALLBACK")) {
|
if (Quickshell.env("NOCTALIA_SETTINGS_FALLBACK")) {
|
||||||
settingsFallbackFileView.writeAdapter()
|
settingsFallbackFileView.writeAdapter();
|
||||||
}
|
}
|
||||||
root.settingsSaved() // Emit signal after saving
|
root.settingsSaved(); // Emit signal after saving
|
||||||
}
|
}
|
||||||
|
|
||||||
// -----------------------------------------------------
|
// -----------------------------------------------------
|
||||||
// Generate default settings at the root of the repo
|
// Generate default settings at the root of the repo
|
||||||
function generateDefaultSettings() {
|
function generateDefaultSettings() {
|
||||||
try {
|
try {
|
||||||
Logger.d("Settings", "Generating settings-default.json")
|
Logger.d("Settings", "Generating settings-default.json");
|
||||||
|
|
||||||
// Prepare a clean JSON
|
// Prepare a clean JSON
|
||||||
var plainAdapter = QtObj2JS.qtObjectToPlainObject(adapter)
|
var plainAdapter = QtObj2JS.qtObjectToPlainObject(adapter);
|
||||||
var jsonData = JSON.stringify(plainAdapter, null, 2)
|
var jsonData = JSON.stringify(plainAdapter, null, 2);
|
||||||
|
|
||||||
var defaultPath = Quickshell.shellDir + "/Assets/settings-default.json"
|
var defaultPath = Quickshell.shellDir + "/Assets/settings-default.json";
|
||||||
|
|
||||||
// Encode transfer it has base64 to avoid any escaping issue
|
// Encode transfer it has base64 to avoid any escaping issue
|
||||||
var base64Data = Qt.btoa(jsonData)
|
var base64Data = Qt.btoa(jsonData);
|
||||||
Quickshell.execDetached(["sh", "-c", `echo "${base64Data}" | base64 -d > "${defaultPath}"`])
|
Quickshell.execDetached(["sh", "-c", `echo "${base64Data}" | base64 -d > "${defaultPath}"`]);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
Logger.e("Settings", "Failed to generate default settings file: " + error)
|
Logger.e("Settings", "Failed to generate default settings file: " + error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// -----------------------------------------------------
|
// -----------------------------------------------------
|
||||||
// Function to validate monitor configurations
|
// Function to validate monitor configurations
|
||||||
function validateMonitorConfigurations() {
|
function validateMonitorConfigurations() {
|
||||||
var availableScreenNames = []
|
var availableScreenNames = [];
|
||||||
for (var i = 0; i < Quickshell.screens.length; i++) {
|
for (var i = 0; i < Quickshell.screens.length; i++) {
|
||||||
availableScreenNames.push(Quickshell.screens[i].name)
|
availableScreenNames.push(Quickshell.screens[i].name);
|
||||||
}
|
}
|
||||||
|
|
||||||
Logger.d("Settings", "Available monitors: [" + availableScreenNames.join(", ") + "]")
|
Logger.d("Settings", "Available monitors: [" + availableScreenNames.join(", ") + "]");
|
||||||
Logger.d("Settings", "Configured bar monitors: [" + adapter.bar.monitors.join(", ") + "]")
|
Logger.d("Settings", "Configured bar monitors: [" + adapter.bar.monitors.join(", ") + "]");
|
||||||
|
|
||||||
// Check bar monitors
|
// Check bar monitors
|
||||||
if (adapter.bar.monitors.length > 0) {
|
if (adapter.bar.monitors.length > 0) {
|
||||||
var hasValidBarMonitor = false
|
var hasValidBarMonitor = false;
|
||||||
for (var j = 0; j < adapter.bar.monitors.length; j++) {
|
for (var j = 0; j < adapter.bar.monitors.length; j++) {
|
||||||
if (availableScreenNames.includes(adapter.bar.monitors[j])) {
|
if (availableScreenNames.includes(adapter.bar.monitors[j])) {
|
||||||
hasValidBarMonitor = true
|
hasValidBarMonitor = true;
|
||||||
break
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!hasValidBarMonitor) {
|
if (!hasValidBarMonitor) {
|
||||||
Logger.w("Settings", "No configured bar monitors found on system, clearing bar monitor list to show on all screens")
|
Logger.w("Settings", "No configured bar monitors found on system, clearing bar monitor list to show on all screens");
|
||||||
adapter.bar.monitors = []
|
adapter.bar.monitors = [];
|
||||||
} else {
|
} else
|
||||||
|
|
||||||
//Logger.i("Settings", "Found valid bar monitors, keeping configuration")
|
//Logger.i("Settings", "Found valid bar monitors, keeping configuration")
|
||||||
}
|
{}
|
||||||
} else {
|
} else
|
||||||
|
|
||||||
//Logger.i("Settings", "Bar monitor list is empty, will show on all available screens")
|
//Logger.i("Settings", "Bar monitor list is empty, will show on all available screens")
|
||||||
}
|
{}
|
||||||
}
|
}
|
||||||
|
|
||||||
// -----------------------------------------------------
|
// -----------------------------------------------------
|
||||||
@@ -576,50 +619,50 @@ Singleton {
|
|||||||
function upgradeSettingsData() {
|
function upgradeSettingsData() {
|
||||||
// Wait for BarWidgetRegistry to be ready
|
// Wait for BarWidgetRegistry to be ready
|
||||||
if (!BarWidgetRegistry.widgets || Object.keys(BarWidgetRegistry.widgets).length === 0) {
|
if (!BarWidgetRegistry.widgets || Object.keys(BarWidgetRegistry.widgets).length === 0) {
|
||||||
Logger.w("Settings", "BarWidgetRegistry not ready, deferring upgrade")
|
Logger.w("Settings", "BarWidgetRegistry not ready, deferring upgrade");
|
||||||
Qt.callLater(upgradeSettingsData)
|
Qt.callLater(upgradeSettingsData);
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const sections = ["left", "center", "right"]
|
const sections = ["left", "center", "right"];
|
||||||
|
|
||||||
// -----------------
|
// -----------------
|
||||||
// 1st. convert old widget id to new id
|
// 1st. convert old widget id to new id
|
||||||
for (var s = 0; s < sections.length; s++) {
|
for (var s = 0; s < sections.length; s++) {
|
||||||
const sectionName = sections[s]
|
const sectionName = sections[s];
|
||||||
for (var i = 0; i < adapter.bar.widgets[sectionName].length; i++) {
|
for (var i = 0; i < adapter.bar.widgets[sectionName].length; i++) {
|
||||||
var widget = adapter.bar.widgets[sectionName][i]
|
var widget = adapter.bar.widgets[sectionName][i];
|
||||||
|
|
||||||
switch (widget.id) {
|
switch (widget.id) {
|
||||||
case "DarkModeToggle":
|
case "DarkModeToggle":
|
||||||
widget.id = "DarkMode"
|
widget.id = "DarkMode";
|
||||||
break
|
break;
|
||||||
case "PowerToggle":
|
case "PowerToggle":
|
||||||
widget.id = "SessionMenu"
|
widget.id = "SessionMenu";
|
||||||
break
|
break;
|
||||||
case "ScreenRecorderIndicator":
|
case "ScreenRecorderIndicator":
|
||||||
widget.id = "ScreenRecorder"
|
widget.id = "ScreenRecorder";
|
||||||
break
|
break;
|
||||||
case "SidePanelToggle":
|
case "SidePanelToggle":
|
||||||
widget.id = "ControlCenter"
|
widget.id = "ControlCenter";
|
||||||
break
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// -----------------
|
// -----------------
|
||||||
// 2nd. remove any non existing widget type
|
// 2nd. remove any non existing widget type
|
||||||
var removedWidget = false
|
var removedWidget = false;
|
||||||
for (var s = 0; s < sections.length; s++) {
|
for (var s = 0; s < sections.length; s++) {
|
||||||
const sectionName = sections[s]
|
const sectionName = sections[s];
|
||||||
const widgets = adapter.bar.widgets[sectionName]
|
const widgets = adapter.bar.widgets[sectionName];
|
||||||
// Iterate backward through the widgets array, so it does not break when removing a widget
|
// Iterate backward through the widgets array, so it does not break when removing a widget
|
||||||
for (var i = widgets.length - 1; i >= 0; i--) {
|
for (var i = widgets.length - 1; i >= 0; i--) {
|
||||||
var widget = widgets[i]
|
var widget = widgets[i];
|
||||||
if (!BarWidgetRegistry.hasWidget(widget.id)) {
|
if (!BarWidgetRegistry.hasWidget(widget.id)) {
|
||||||
Logger.w(`Settings`, `Deleted invalid widget ${widget.id}`)
|
Logger.w(`Settings`, `Deleted invalid widget ${widget.id}`);
|
||||||
widgets.splice(i, 1)
|
widgets.splice(i, 1);
|
||||||
removedWidget = true
|
removedWidget = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -627,18 +670,18 @@ Singleton {
|
|||||||
// -----------------
|
// -----------------
|
||||||
// 3nd. upgrade widget settings
|
// 3nd. upgrade widget settings
|
||||||
for (var s = 0; s < sections.length; s++) {
|
for (var s = 0; s < sections.length; s++) {
|
||||||
const sectionName = sections[s]
|
const sectionName = sections[s];
|
||||||
for (var i = 0; i < adapter.bar.widgets[sectionName].length; i++) {
|
for (var i = 0; i < adapter.bar.widgets[sectionName].length; i++) {
|
||||||
var widget = adapter.bar.widgets[sectionName][i]
|
var widget = adapter.bar.widgets[sectionName][i];
|
||||||
|
|
||||||
// Check if widget registry supports user settings, if it does not, then there is nothing to do
|
// Check if widget registry supports user settings, if it does not, then there is nothing to do
|
||||||
const reg = BarWidgetRegistry.widgetMetadata[widget.id]
|
const reg = BarWidgetRegistry.widgetMetadata[widget.id];
|
||||||
if ((reg === undefined) || (reg.allowUserSettings === undefined) || !reg.allowUserSettings) {
|
if ((reg === undefined) || (reg.allowUserSettings === undefined) || !reg.allowUserSettings) {
|
||||||
continue
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (upgradeWidget(widget)) {
|
if (upgradeWidget(widget)) {
|
||||||
Logger.d("Settings", `Upgraded ${widget.id} widget:`, JSON.stringify(widget))
|
Logger.d("Settings", `Upgraded ${widget.id} widget:`, JSON.stringify(widget));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -647,14 +690,14 @@ Singleton {
|
|||||||
// 4th. safety check
|
// 4th. safety check
|
||||||
// if a widget was deleted, ensure we still have a control center
|
// if a widget was deleted, ensure we still have a control center
|
||||||
if (removedWidget) {
|
if (removedWidget) {
|
||||||
var gotControlCenter = false
|
var gotControlCenter = false;
|
||||||
for (var s = 0; s < sections.length; s++) {
|
for (var s = 0; s < sections.length; s++) {
|
||||||
const sectionName = sections[s]
|
const sectionName = sections[s];
|
||||||
for (var i = 0; i < adapter.bar.widgets[sectionName].length; i++) {
|
for (var i = 0; i < adapter.bar.widgets[sectionName].length; i++) {
|
||||||
var widget = adapter.bar.widgets[sectionName][i]
|
var widget = adapter.bar.widgets[sectionName][i];
|
||||||
if (widget.id === "ControlCenter") {
|
if (widget.id === "ControlCenter") {
|
||||||
gotControlCenter = true
|
gotControlCenter = true;
|
||||||
break
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -663,8 +706,8 @@ Singleton {
|
|||||||
//const obj = JSON.parse('{"id": "ControlCenter"}');
|
//const obj = JSON.parse('{"id": "ControlCenter"}');
|
||||||
adapter.bar.widgets["right"].push(({
|
adapter.bar.widgets["right"].push(({
|
||||||
"id": "ControlCenter"
|
"id": "ControlCenter"
|
||||||
}))
|
}));
|
||||||
Logger.w("Settings", "Added a ControlCenter widget to the right section")
|
Logger.w("Settings", "Added a ControlCenter widget to the right section");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -674,31 +717,31 @@ Singleton {
|
|||||||
if (adapter.settingsVersion < 21) {
|
if (adapter.settingsVersion < 21) {
|
||||||
// Read raw JSON file to access properties not in adapter schema
|
// Read raw JSON file to access properties not in adapter schema
|
||||||
try {
|
try {
|
||||||
var rawJson = settingsFileView.text()
|
var rawJson = settingsFileView.text();
|
||||||
|
|
||||||
if (rawJson) {
|
if (rawJson) {
|
||||||
var parsed = JSON.parse(rawJson)
|
var parsed = JSON.parse(rawJson);
|
||||||
var anyDiscordEnabled = false
|
var anyDiscordEnabled = false;
|
||||||
|
|
||||||
// Check if any Discord client was enabled
|
// Check if any Discord client was enabled
|
||||||
const discordClients = ["discord_vesktop", "discord_webcord", "discord_armcord", "discord_equibop", "discord_lightcord", "discord_dorion", "discord_vencord"]
|
const discordClients = ["discord_vesktop", "discord_webcord", "discord_armcord", "discord_equibop", "discord_lightcord", "discord_dorion", "discord_vencord"];
|
||||||
|
|
||||||
if (parsed.templates) {
|
if (parsed.templates) {
|
||||||
for (var i = 0; i < discordClients.length; i++) {
|
for (var i = 0; i < discordClients.length; i++) {
|
||||||
if (parsed.templates[discordClients[i]]) {
|
if (parsed.templates[discordClients[i]]) {
|
||||||
anyDiscordEnabled = true
|
anyDiscordEnabled = true;
|
||||||
break
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set unified discord property
|
// Set unified discord property
|
||||||
adapter.templates.discord = anyDiscordEnabled
|
adapter.templates.discord = anyDiscordEnabled;
|
||||||
|
|
||||||
Logger.i("Settings", "Migrated Discord templates to unified 'discord' property (enabled:", anyDiscordEnabled + ")")
|
Logger.i("Settings", "Migrated Discord templates to unified 'discord' property (enabled:", anyDiscordEnabled + ")");
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
Logger.w("Settings", "Failed to read raw JSON for Discord migration:", error)
|
Logger.w("Settings", "Failed to read raw JSON for Discord migration:", error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -708,20 +751,20 @@ Singleton {
|
|||||||
if (adapter.settingsVersion < 22) {
|
if (adapter.settingsVersion < 22) {
|
||||||
// Read raw JSON file to access properties not in adapter schema
|
// Read raw JSON file to access properties not in adapter schema
|
||||||
try {
|
try {
|
||||||
var rawJson = settingsFileView.text()
|
var rawJson = settingsFileView.text();
|
||||||
|
|
||||||
if (rawJson) {
|
if (rawJson) {
|
||||||
var parsed = JSON.parse(rawJson)
|
var parsed = JSON.parse(rawJson);
|
||||||
if (parsed.appLauncher && parsed.appLauncher.backgroundOpacity !== undefined) {
|
if (parsed.appLauncher && parsed.appLauncher.backgroundOpacity !== undefined) {
|
||||||
var oldOpacity = parsed.appLauncher.backgroundOpacity
|
var oldOpacity = parsed.appLauncher.backgroundOpacity;
|
||||||
if (adapter.ui) {
|
if (adapter.ui) {
|
||||||
adapter.ui.panelBackgroundOpacity = oldOpacity
|
adapter.ui.panelBackgroundOpacity = oldOpacity;
|
||||||
Logger.i("Settings", "Migrated appLauncher.backgroundOpacity to ui.panelBackgroundOpacity (value:", oldOpacity + ")")
|
Logger.i("Settings", "Migrated appLauncher.backgroundOpacity to ui.panelBackgroundOpacity (value:", oldOpacity + ")");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
Logger.w("Settings", "Failed to read raw JSON for migration:", error)
|
Logger.w("Settings", "Failed to read raw JSON for migration:", error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -732,23 +775,23 @@ Singleton {
|
|||||||
if (adapter.settingsVersion < 23) {
|
if (adapter.settingsVersion < 23) {
|
||||||
// Read raw JSON file to access dimDesktop property
|
// Read raw JSON file to access dimDesktop property
|
||||||
try {
|
try {
|
||||||
var rawJson = settingsFileView.text()
|
var rawJson = settingsFileView.text();
|
||||||
|
|
||||||
if (rawJson) {
|
if (rawJson) {
|
||||||
var parsed = JSON.parse(rawJson)
|
var parsed = JSON.parse(rawJson);
|
||||||
if (parsed.general && parsed.general.dimDesktop === true) {
|
if (parsed.general && parsed.general.dimDesktop === true) {
|
||||||
// Check if dimmerOpacity exists in raw JSON (not adapter default)
|
// Check if dimmerOpacity exists in raw JSON (not adapter default)
|
||||||
var dimmerOpacityInJson = parsed.general.dimmerOpacity
|
var dimmerOpacityInJson = parsed.general.dimmerOpacity;
|
||||||
|
|
||||||
// If dimmerOpacity wasn't explicitly set in JSON or was 0, set it to 0.8 (80% dimming)
|
// If dimmerOpacity wasn't explicitly set in JSON or was 0, set it to 0.8 (80% dimming)
|
||||||
if (dimmerOpacityInJson === undefined || dimmerOpacityInJson === 0) {
|
if (dimmerOpacityInJson === undefined || dimmerOpacityInJson === 0) {
|
||||||
adapter.general.dimmerOpacity = 0.8
|
adapter.general.dimmerOpacity = 0.8;
|
||||||
Logger.i("Settings", "Migrated dimDesktop=true: set dimmerOpacity to 0.8 (80% dimming)")
|
Logger.i("Settings", "Migrated dimDesktop=true: set dimmerOpacity to 0.8 (80% dimming)");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
Logger.w("Settings", "Failed to read raw JSON for dimDesktop migration:", error)
|
Logger.w("Settings", "Failed to read raw JSON for dimDesktop migration:", error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -756,35 +799,35 @@ Singleton {
|
|||||||
// -----------------------------------------------------
|
// -----------------------------------------------------
|
||||||
function upgradeWidget(widget) {
|
function upgradeWidget(widget) {
|
||||||
// Backup the widget definition before altering
|
// Backup the widget definition before altering
|
||||||
const widgetBefore = JSON.stringify(widget)
|
const widgetBefore = JSON.stringify(widget);
|
||||||
|
|
||||||
// Get all existing custom settings keys
|
// Get all existing custom settings keys
|
||||||
const keys = Object.keys(BarWidgetRegistry.widgetMetadata[widget.id])
|
const keys = Object.keys(BarWidgetRegistry.widgetMetadata[widget.id]);
|
||||||
|
|
||||||
// Delete deprecated user settings from the wiget
|
// Delete deprecated user settings from the wiget
|
||||||
for (const k of Object.keys(widget)) {
|
for (const k of Object.keys(widget)) {
|
||||||
if (k === "id" || k === "allowUserSettings") {
|
if (k === "id" || k === "allowUserSettings") {
|
||||||
continue
|
continue;
|
||||||
}
|
}
|
||||||
if (!keys.includes(k)) {
|
if (!keys.includes(k)) {
|
||||||
delete widget[k]
|
delete widget[k];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Inject missing default setting (metaData) from BarWidgetRegistry
|
// Inject missing default setting (metaData) from BarWidgetRegistry
|
||||||
for (var i = 0; i < keys.length; i++) {
|
for (var i = 0; i < keys.length; i++) {
|
||||||
const k = keys[i]
|
const k = keys[i];
|
||||||
if (k === "id" || k === "allowUserSettings") {
|
if (k === "id" || k === "allowUserSettings") {
|
||||||
continue
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (widget[k] === undefined) {
|
if (widget[k] === undefined) {
|
||||||
widget[k] = BarWidgetRegistry.widgetMetadata[widget.id][k]
|
widget[k] = BarWidgetRegistry.widgetMetadata[widget.id][k];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Compare settings, to detect if something has been upgraded
|
// Compare settings, to detect if something has been upgraded
|
||||||
const widgetAfter = JSON.stringify(widget)
|
const widgetAfter = JSON.stringify(widget);
|
||||||
return (widgetAfter !== widgetBefore)
|
return (widgetAfter !== widgetBefore);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
183
Commons/ShellState.qml
Normal file
183
Commons/ShellState.qml
Normal file
@@ -0,0 +1,183 @@
|
|||||||
|
pragma Singleton
|
||||||
|
|
||||||
|
import QtQuick
|
||||||
|
import Quickshell
|
||||||
|
import Quickshell.Io
|
||||||
|
|
||||||
|
// Centralized shell state management for small cache files
|
||||||
|
Singleton {
|
||||||
|
id: root
|
||||||
|
|
||||||
|
property string stateFile: ""
|
||||||
|
property bool isLoaded: false
|
||||||
|
|
||||||
|
// State properties for different services
|
||||||
|
readonly property alias data: adapter
|
||||||
|
|
||||||
|
// Signals for state changes
|
||||||
|
signal displayStateChanged
|
||||||
|
signal notificationsStateChanged
|
||||||
|
signal changelogStateChanged
|
||||||
|
signal colorSchemesListChanged
|
||||||
|
|
||||||
|
Component.onCompleted: {
|
||||||
|
// Setup state file path (needs Settings to be available)
|
||||||
|
Qt.callLater(() => {
|
||||||
|
if (typeof Settings !== 'undefined' && Settings.cacheDir) {
|
||||||
|
stateFile = Settings.cacheDir + "shell-state.json";
|
||||||
|
stateFileView.path = stateFile;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// FileView for shell state
|
||||||
|
FileView {
|
||||||
|
id: stateFileView
|
||||||
|
printErrors: false
|
||||||
|
watchChanges: false
|
||||||
|
|
||||||
|
adapter: JsonAdapter {
|
||||||
|
id: adapter
|
||||||
|
|
||||||
|
// CompositorService: display scales
|
||||||
|
property var display: ({})
|
||||||
|
|
||||||
|
// NotificationService: notification state
|
||||||
|
property var notificationsState: ({
|
||||||
|
lastSeenTs: 0
|
||||||
|
})
|
||||||
|
|
||||||
|
// UpdateService: changelog state
|
||||||
|
property var changelogState: ({
|
||||||
|
lastSeenVersion: ""
|
||||||
|
})
|
||||||
|
|
||||||
|
// SchemeDownloader: color schemes list
|
||||||
|
property var colorSchemesList: ({
|
||||||
|
schemes: [],
|
||||||
|
timestamp: 0
|
||||||
|
})
|
||||||
|
|
||||||
|
// WallpaperService: current wallpapers per screen
|
||||||
|
property var wallpapers: ({})
|
||||||
|
}
|
||||||
|
|
||||||
|
onLoaded: {
|
||||||
|
root.isLoaded = true;
|
||||||
|
Logger.d("ShellState", "Loaded state file");
|
||||||
|
}
|
||||||
|
|
||||||
|
onLoadFailed: error => {
|
||||||
|
if (error === 2) {
|
||||||
|
// File doesn't exist, will be created on first write
|
||||||
|
root.isLoaded = true;
|
||||||
|
Logger.d("ShellState", "State file doesn't exist, will create on first write");
|
||||||
|
} else {
|
||||||
|
Logger.e("ShellState", "Failed to load state file:", error);
|
||||||
|
root.isLoaded = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Debounced save timer
|
||||||
|
Timer {
|
||||||
|
id: saveTimer
|
||||||
|
interval: 300
|
||||||
|
onTriggered: performSave()
|
||||||
|
}
|
||||||
|
|
||||||
|
property bool saveQueued: false
|
||||||
|
|
||||||
|
function save() {
|
||||||
|
saveQueued = true;
|
||||||
|
saveTimer.restart();
|
||||||
|
}
|
||||||
|
|
||||||
|
function performSave() {
|
||||||
|
if (!saveQueued || !stateFile) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
saveQueued = false;
|
||||||
|
|
||||||
|
try {
|
||||||
|
// Ensure cache directory exists
|
||||||
|
Quickshell.execDetached(["mkdir", "-p", Settings.cacheDir]);
|
||||||
|
|
||||||
|
Qt.callLater(() => {
|
||||||
|
try {
|
||||||
|
stateFileView.writeAdapter();
|
||||||
|
Logger.d("ShellState", "Saved state file");
|
||||||
|
} catch (writeError) {
|
||||||
|
Logger.e("ShellState", "Failed to write state file:", writeError);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} catch (error) {
|
||||||
|
Logger.e("ShellState", "Failed to save state:", error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Convenience functions for each service
|
||||||
|
|
||||||
|
// Display state (CompositorService)
|
||||||
|
function setDisplay(displayData) {
|
||||||
|
adapter.display = displayData;
|
||||||
|
save();
|
||||||
|
displayStateChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
function getDisplay() {
|
||||||
|
return adapter.display || {};
|
||||||
|
}
|
||||||
|
|
||||||
|
// Notifications state (NotificationService)
|
||||||
|
function setNotificationsState(stateData) {
|
||||||
|
adapter.notificationsState = stateData;
|
||||||
|
save();
|
||||||
|
notificationsStateChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
function getNotificationsState() {
|
||||||
|
return adapter.notificationsState || {
|
||||||
|
lastSeenTs: 0
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
// Changelog state (UpdateService)
|
||||||
|
function setChangelogState(stateData) {
|
||||||
|
adapter.changelogState = stateData;
|
||||||
|
save();
|
||||||
|
changelogStateChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
function getChangelogState() {
|
||||||
|
return adapter.changelogState || {
|
||||||
|
lastSeenVersion: ""
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
// Color schemes list (SchemeDownloader)
|
||||||
|
function setColorSchemesList(listData) {
|
||||||
|
adapter.colorSchemesList = listData;
|
||||||
|
save();
|
||||||
|
colorSchemesListChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
function getColorSchemesList() {
|
||||||
|
return adapter.colorSchemesList || {
|
||||||
|
schemes: [],
|
||||||
|
timestamp: 0
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
// Wallpapers (WallpaperService)
|
||||||
|
function setWallpapers(wallpapersData) {
|
||||||
|
adapter.wallpapers = wallpapersData;
|
||||||
|
save();
|
||||||
|
}
|
||||||
|
|
||||||
|
function getWallpapers() {
|
||||||
|
return adapter.wallpapers || {};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@@ -7,108 +7,102 @@ import qs.Services.Power
|
|||||||
Singleton {
|
Singleton {
|
||||||
id: root
|
id: root
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
Preset sizes for font, radii, ?
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Font size
|
// Font size
|
||||||
property real fontSizeXXS: 8
|
readonly property real fontSizeXXS: 8
|
||||||
property real fontSizeXS: 9
|
readonly property real fontSizeXS: 9
|
||||||
property real fontSizeS: 10
|
readonly property real fontSizeS: 10
|
||||||
property real fontSizeM: 11
|
readonly property real fontSizeM: 11
|
||||||
property real fontSizeL: 13
|
readonly property real fontSizeL: 13
|
||||||
property real fontSizeXL: 16
|
readonly property real fontSizeXL: 16
|
||||||
property real fontSizeXXL: 18
|
readonly property real fontSizeXXL: 18
|
||||||
property real fontSizeXXXL: 24
|
readonly property real fontSizeXXXL: 24
|
||||||
|
|
||||||
// Font weight
|
// Font weight
|
||||||
property int fontWeightRegular: 400
|
readonly property int fontWeightRegular: 400
|
||||||
property int fontWeightMedium: 500
|
readonly property int fontWeightMedium: 500
|
||||||
property int fontWeightSemiBold: 600
|
readonly property int fontWeightSemiBold: 600
|
||||||
property int fontWeightBold: 700
|
readonly property int fontWeightBold: 700
|
||||||
|
|
||||||
// Radii
|
// Radii
|
||||||
property int radiusXXS: Math.round(4 * Settings.data.general.radiusRatio)
|
readonly property int radiusXXS: Math.round(4 * Settings.data.general.radiusRatio)
|
||||||
property int radiusXS: Math.round(8 * Settings.data.general.radiusRatio)
|
readonly property int radiusXS: Math.round(8 * Settings.data.general.radiusRatio)
|
||||||
property int radiusS: Math.round(12 * Settings.data.general.radiusRatio)
|
readonly property int radiusS: Math.round(12 * Settings.data.general.radiusRatio)
|
||||||
property int radiusM: Math.round(16 * Settings.data.general.radiusRatio)
|
readonly property int radiusM: Math.round(16 * Settings.data.general.radiusRatio)
|
||||||
property int radiusL: Math.round(20 * Settings.data.general.radiusRatio)
|
readonly property int radiusL: Math.round(20 * Settings.data.general.radiusRatio)
|
||||||
property int screenRadius: Math.round(20 * Settings.data.general.screenRadiusRatio)
|
readonly property int screenRadius: Math.round(20 * Settings.data.general.screenRadiusRatio)
|
||||||
|
|
||||||
// Border
|
// Border
|
||||||
property int borderS: Math.max(1, Math.round(1 * uiScaleRatio))
|
readonly property int borderS: Math.max(1, Math.round(1 * uiScaleRatio))
|
||||||
property int borderM: Math.max(1, Math.round(2 * uiScaleRatio))
|
readonly property int borderM: Math.max(1, Math.round(2 * uiScaleRatio))
|
||||||
property int borderL: Math.max(1, Math.round(3 * uiScaleRatio))
|
readonly property int borderL: Math.max(1, Math.round(3 * uiScaleRatio))
|
||||||
|
|
||||||
// Margins (for margins and spacing)
|
// Margins (for margins and spacing)
|
||||||
property int marginXXS: Math.round(2 * uiScaleRatio)
|
readonly property int marginXXS: Math.round(2 * uiScaleRatio)
|
||||||
property int marginXS: Math.round(4 * uiScaleRatio)
|
readonly property int marginXS: Math.round(4 * uiScaleRatio)
|
||||||
property int marginS: Math.round(6 * uiScaleRatio)
|
readonly property int marginS: Math.round(6 * uiScaleRatio)
|
||||||
property int marginM: Math.round(9 * uiScaleRatio)
|
readonly property int marginM: Math.round(9 * uiScaleRatio)
|
||||||
property int marginL: Math.round(13 * uiScaleRatio)
|
readonly property int marginL: Math.round(13 * uiScaleRatio)
|
||||||
property int marginXL: Math.round(18 * uiScaleRatio)
|
readonly property int marginXL: Math.round(18 * uiScaleRatio)
|
||||||
|
|
||||||
// Opacity
|
// Opacity
|
||||||
property real opacityNone: 0.0
|
readonly property real opacityNone: 0.0
|
||||||
property real opacityLight: 0.25
|
readonly property real opacityLight: 0.25
|
||||||
property real opacityMedium: 0.5
|
readonly property real opacityMedium: 0.5
|
||||||
property real opacityHeavy: 0.75
|
readonly property real opacityHeavy: 0.75
|
||||||
property real opacityAlmost: 0.95
|
readonly property real opacityAlmost: 0.95
|
||||||
property real opacityFull: 1.0
|
readonly property real opacityFull: 1.0
|
||||||
|
|
||||||
// Shadows
|
// Shadows
|
||||||
property real shadowOpacity: 0.85
|
readonly property real shadowOpacity: 0.85
|
||||||
property real shadowBlur: 1.0
|
readonly property real shadowBlur: 1.0
|
||||||
property int shadowBlurMax: 22
|
readonly property int shadowBlurMax: 22
|
||||||
property real shadowHorizontalOffset: Settings.data.general.shadowOffsetX
|
readonly property real shadowHorizontalOffset: Settings.data.general.shadowOffsetX
|
||||||
property real shadowVerticalOffset: Settings.data.general.shadowOffsetY
|
readonly property real shadowVerticalOffset: Settings.data.general.shadowOffsetY
|
||||||
|
|
||||||
// Animation duration (ms)
|
// Animation duration (ms)
|
||||||
property int animationFaster: (Settings.data.general.animationDisabled || PowerProfileService.noctaliaPerformanceMode) ? 0 : Math.round(75 / Settings.data.general.animationSpeed)
|
readonly property int animationFaster: (Settings.data.general.animationDisabled || PowerProfileService.noctaliaPerformanceMode) ? 0 : Math.round(75 / Settings.data.general.animationSpeed)
|
||||||
property int animationFast: (Settings.data.general.animationDisabled || PowerProfileService.noctaliaPerformanceMode) ? 0 : Math.round(150 / Settings.data.general.animationSpeed)
|
readonly property int animationFast: (Settings.data.general.animationDisabled || PowerProfileService.noctaliaPerformanceMode) ? 0 : Math.round(150 / Settings.data.general.animationSpeed)
|
||||||
property int animationNormal: (Settings.data.general.animationDisabled || PowerProfileService.noctaliaPerformanceMode) ? 0 : Math.round(300 / Settings.data.general.animationSpeed)
|
readonly property int animationNormal: (Settings.data.general.animationDisabled || PowerProfileService.noctaliaPerformanceMode) ? 0 : Math.round(300 / Settings.data.general.animationSpeed)
|
||||||
property int animationSlow: (Settings.data.general.animationDisabled || PowerProfileService.noctaliaPerformanceMode) ? 0 : Math.round(450 / Settings.data.general.animationSpeed)
|
readonly property int animationSlow: (Settings.data.general.animationDisabled || PowerProfileService.noctaliaPerformanceMode) ? 0 : Math.round(450 / Settings.data.general.animationSpeed)
|
||||||
property int animationSlowest: (Settings.data.general.animationDisabled || PowerProfileService.noctaliaPerformanceMode) ? 0 : Math.round(750 / Settings.data.general.animationSpeed)
|
readonly property int animationSlowest: (Settings.data.general.animationDisabled || PowerProfileService.noctaliaPerformanceMode) ? 0 : Math.round(750 / Settings.data.general.animationSpeed)
|
||||||
|
|
||||||
// Delays
|
// Delays
|
||||||
property int tooltipDelay: 300
|
readonly property int tooltipDelay: 300
|
||||||
property int tooltipDelayLong: 1200
|
readonly property int tooltipDelayLong: 1200
|
||||||
property int pillDelay: 500
|
readonly property int pillDelay: 500
|
||||||
|
|
||||||
// Widgets base size
|
// Widgets base size
|
||||||
property real baseWidgetSize: 33
|
readonly property real baseWidgetSize: 33
|
||||||
property real sliderWidth: 200
|
readonly property real sliderWidth: 200
|
||||||
|
|
||||||
property real uiScaleRatio: Settings.data.general.scaleRatio
|
readonly property real uiScaleRatio: Settings.data.general.scaleRatio
|
||||||
|
|
||||||
// Bar Dimensions
|
// Bar Dimensions
|
||||||
property real barHeight: {
|
readonly property real barHeight: {
|
||||||
switch (Settings.data.bar.density) {
|
switch (Settings.data.bar.density) {
|
||||||
case "mini":
|
case "mini":
|
||||||
return (Settings.data.bar.position === "left" || Settings.data.bar.position === "right") ? 22 : 20
|
return (Settings.data.bar.position === "left" || Settings.data.bar.position === "right") ? 22 : 20;
|
||||||
case "compact":
|
case "compact":
|
||||||
return (Settings.data.bar.position === "left" || Settings.data.bar.position === "right") ? 27 : 25
|
return (Settings.data.bar.position === "left" || Settings.data.bar.position === "right") ? 27 : 25;
|
||||||
case "comfortable":
|
case "comfortable":
|
||||||
return (Settings.data.bar.position === "left" || Settings.data.bar.position === "right") ? 39 : 37
|
return (Settings.data.bar.position === "left" || Settings.data.bar.position === "right") ? 39 : 37;
|
||||||
default:
|
default:
|
||||||
|
|
||||||
case "default":
|
case "default":
|
||||||
return (Settings.data.bar.position === "left" || Settings.data.bar.position === "right") ? 33 : 31
|
return (Settings.data.bar.position === "left" || Settings.data.bar.position === "right") ? 33 : 31;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
property real capsuleHeight: {
|
readonly property real capsuleHeight: {
|
||||||
switch (Settings.data.bar.density) {
|
switch (Settings.data.bar.density) {
|
||||||
case "mini":
|
case "mini":
|
||||||
return Math.round(barHeight * 1.0)
|
return Math.round(barHeight * 1.0);
|
||||||
case "compact":
|
case "compact":
|
||||||
return Math.round(barHeight * 0.85)
|
return Math.round(barHeight * 0.85);
|
||||||
case "comfortable":
|
case "comfortable":
|
||||||
return Math.round(barHeight * 0.73)
|
return Math.round(barHeight * 0.73);
|
||||||
default:
|
default:
|
||||||
|
|
||||||
case "default":
|
case "default":
|
||||||
return Math.round(barHeight * 0.82)
|
return Math.round(barHeight * 0.82);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
readonly property color capsuleColor: Settings.data.bar.showCapsule ? Qt.alpha(Color.mSurfaceVariant, Settings.data.bar.capsuleOpacity) : Color.transparent
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,46 +7,46 @@ Singleton {
|
|||||||
id: root
|
id: root
|
||||||
|
|
||||||
function iconFromName(iconName, fallbackName) {
|
function iconFromName(iconName, fallbackName) {
|
||||||
const fallback = fallbackName || "application-x-executable"
|
const fallback = fallbackName || "application-x-executable";
|
||||||
try {
|
try {
|
||||||
if (iconName && typeof Quickshell !== 'undefined' && Quickshell.iconPath) {
|
if (iconName && typeof Quickshell !== 'undefined' && Quickshell.iconPath) {
|
||||||
const p = Quickshell.iconPath(iconName, fallback)
|
const p = Quickshell.iconPath(iconName, fallback);
|
||||||
if (p && p !== "")
|
if (p && p !== "")
|
||||||
return p
|
return p;
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e)
|
||||||
|
|
||||||
// ignore and fall back
|
// ignore and fall back
|
||||||
}
|
{}
|
||||||
try {
|
try {
|
||||||
return Quickshell.iconPath ? (Quickshell.iconPath(fallback, true) || "") : ""
|
return Quickshell.iconPath ? (Quickshell.iconPath(fallback, true) || "") : "";
|
||||||
} catch (e2) {
|
} catch (e2) {
|
||||||
return ""
|
return "";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Resolve icon path for a DesktopEntries appId - safe on missing entries
|
// Resolve icon path for a DesktopEntries appId - safe on missing entries
|
||||||
function iconForAppId(appId, fallbackName) {
|
function iconForAppId(appId, fallbackName) {
|
||||||
const fallback = fallbackName || "application-x-executable"
|
const fallback = fallbackName || "application-x-executable";
|
||||||
if (!appId)
|
if (!appId)
|
||||||
return iconFromName(fallback, fallback)
|
return iconFromName(fallback, fallback);
|
||||||
try {
|
try {
|
||||||
if (typeof DesktopEntries === 'undefined' || !DesktopEntries.byId)
|
if (typeof DesktopEntries === 'undefined' || !DesktopEntries.byId)
|
||||||
return iconFromName(fallback, fallback)
|
return iconFromName(fallback, fallback);
|
||||||
const entry = (DesktopEntries.heuristicLookup) ? DesktopEntries.heuristicLookup(appId) : DesktopEntries.byId(appId)
|
const entry = (DesktopEntries.heuristicLookup) ? DesktopEntries.heuristicLookup(appId) : DesktopEntries.byId(appId);
|
||||||
const name = entry && entry.icon ? entry.icon : ""
|
const name = entry && entry.icon ? entry.icon : "";
|
||||||
return iconFromName(name || fallback, fallback)
|
return iconFromName(name || fallback, fallback);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
return iconFromName(fallback, fallback)
|
return iconFromName(fallback, fallback);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Distro logo helper (absolute path or empty string)
|
// Distro logo helper (absolute path or empty string)
|
||||||
function distroLogoPath() {
|
function distroLogoPath() {
|
||||||
try {
|
try {
|
||||||
return (typeof OSInfo !== 'undefined' && OSInfo.distroIconPath) ? OSInfo.distroIconPath : ""
|
return (typeof OSInfo !== 'undefined' && OSInfo.distroIconPath) ? OSInfo.distroIconPath : "";
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
return ""
|
return "";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user