Fix keyboard layout and timezone menus (#2153)
This commit is contained in:
parent
edbc135903
commit
dc69acd4b4
|
|
@ -44,7 +44,7 @@ def ask_for_a_timezone(preset: Optional[str] = None) -> Optional[str]:
|
|||
|
||||
choice = Menu(
|
||||
_('Select a timezone'),
|
||||
list(timezones),
|
||||
timezones,
|
||||
preset_values=preset,
|
||||
default_option=default
|
||||
).run()
|
||||
|
|
@ -95,7 +95,7 @@ def select_language(preset: Optional[str] = None) -> Optional[str]:
|
|||
"""
|
||||
kb_lang = list_keyboard_languages()
|
||||
# sort alphabetically and then by length
|
||||
sorted_kb_lang = sorted(sorted(list(kb_lang)), key=len)
|
||||
sorted_kb_lang = sorted(kb_lang, key=lambda x: (len(x), x))
|
||||
|
||||
choice = Menu(
|
||||
_('Select keyboard layout'),
|
||||
|
|
|
|||
|
|
@ -139,7 +139,7 @@ def select_kb_layout(preset: Optional[str] = None) -> Optional[str]:
|
|||
"""
|
||||
kb_lang = list_keyboard_languages()
|
||||
# sort alphabetically and then by length
|
||||
sorted_kb_lang = sorted(sorted(list(kb_lang)), key=len)
|
||||
sorted_kb_lang = sorted(kb_lang, key=lambda x: (len(x), x))
|
||||
|
||||
choice = Menu(
|
||||
_('Select keyboard layout'),
|
||||
|
|
|
|||
|
|
@ -1,16 +1,15 @@
|
|||
from typing import Iterator, List
|
||||
from typing import List
|
||||
|
||||
from ..exceptions import ServiceException, SysCallError
|
||||
from ..general import SysCommand
|
||||
from ..output import error
|
||||
|
||||
|
||||
def list_keyboard_languages() -> Iterator[str]:
|
||||
for line in SysCommand(
|
||||
def list_keyboard_languages() -> List[str]:
|
||||
return SysCommand(
|
||||
"localectl --no-pager list-keymaps",
|
||||
environment_vars={'SYSTEMD_COLORS': '0'}
|
||||
).decode():
|
||||
yield line
|
||||
).decode().splitlines()
|
||||
|
||||
|
||||
def list_locales() -> List[str]:
|
||||
|
|
@ -24,12 +23,11 @@ def list_locales() -> List[str]:
|
|||
return locales
|
||||
|
||||
|
||||
def list_x11_keyboard_languages() -> Iterator[str]:
|
||||
for line in SysCommand(
|
||||
def list_x11_keyboard_languages() -> List[str]:
|
||||
return SysCommand(
|
||||
"localectl --no-pager list-x11-keymap-layouts",
|
||||
environment_vars={'SYSTEMD_COLORS': '0'}
|
||||
).decode():
|
||||
yield line
|
||||
).decode().splitlines()
|
||||
|
||||
|
||||
def verify_keyboard_layout(layout :str) -> bool:
|
||||
|
|
@ -62,9 +60,8 @@ def set_kb_layout(locale :str) -> bool:
|
|||
return False
|
||||
|
||||
|
||||
def list_timezones() -> Iterator[str]:
|
||||
for line in SysCommand(
|
||||
def list_timezones() -> List[str]:
|
||||
return SysCommand(
|
||||
"timedatectl --no-pager list-timezones",
|
||||
environment_vars={'SYSTEMD_COLORS': '0'}
|
||||
).decode():
|
||||
yield line
|
||||
).decode().splitlines()
|
||||
|
|
|
|||
Loading…
Reference in New Issue