Хороший парень на redditпомог мне решить проблему. Я просто скопирую сюда его ответ. Ключевая команда:
xkb-switch -W
Со следующими строками в i3blocks.confвсе работает как сон.
# AUR package: xkb-switch-git
[keymap]
label=⌨
command=xkb-switch -W
#or
#command=bash -c 'xkb-switch;xkb-switch -W'
interval=persist
border=#0d5eaf
Конечно, просто используйте PowerShell. Пример ниже создает foo.zip, содержащий foo.txt.
PS C:\Users\steve_000> Compress-Archive -U -LiteralPath foo.txt -DestinationPath foo.zip
PS C:\Users\steve_000> dir foo.zip
Directory: C:\Users\steve_000
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 15/04/17 10:52 PM 1119 foo.zip
PS C:\Users\steve_000>
Подробнее см. https://msdn.microsoft.com/powershell/reference/5.1/microsoft.powershell.archive/Compress-Archive
Конечно, используйте Python zipfile модуль. Python установлен повсеместно, поэтому вам, скорее всего, не потребуется запрашивать его установку. Модуль zipfile поставляется вместе со стандартной библиотекой Python, поэтому он гарантированно будет установлен, если установлен сам Python.
Вы можете использовать его либо написав короткий сценарий на Python, либо используя собственный интерфейс командной строки (примеры в конце страницы документации).