aboutsummaryrefslogtreecommitdiff
path: root/.i3-blocks/blocks/keymap
diff options
context:
space:
mode:
authorNeodarZ <neodarz@neodarz.ovh>2016-09-18 02:11:28 +0200
committerNeodarZ <neodarz@neodarz.ovh>2016-09-18 02:11:28 +0200
commit9b6d154afb2b32f81dae99cc45392b4cace2a29d (patch)
treeaadff76c1ae09353713378e20a3a24819730b499 /.i3-blocks/blocks/keymap
parentd16075fbc32b9d8dde5b0638efc9cd9d241acdab (diff)
downloaddotfiles-9b6d154afb2b32f81dae99cc45392b4cace2a29d.tar.xz
dotfiles-9b6d154afb2b32f81dae99cc45392b4cace2a29d.zip
Add more conf
Diffstat (limited to '')
-rwxr-xr-x.i3-blocks/blocks/keymap27
1 files changed, 27 insertions, 0 deletions
diff --git a/.i3-blocks/blocks/keymap b/.i3-blocks/blocks/keymap
new file mode 100755
index 0000000..f25ee98
--- /dev/null
+++ b/.i3-blocks/blocks/keymap
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+KEYMAP_DIRECTORY='/usr/share/kbd/keymaps'
+
+# Aprrently localectl status does not update on keymap change. However, setxkbmap does.
+XKB_OUTPUT=$(setxkbmap -query)
+VC_KEYMAP=$(echo "${XKB_OUTPUT}" | grep "layout" | awk -F ':' '{print $2}' | tr -d ' ')
+VC_VARIANT=$(echo "${XKB_OUTPUT}" | grep "variant" | awk -F ':' '{print $2}' | tr -d ' ')
+
+# Keymap has not been specific, so it's not configured properly
+if [[ "${VC_KEYMAP}" == "" ]]; then
+ exit 1
+fi
+
+KEYMAP_FILE="${VC_KEYMAP}*"
+
+if [[ "${VC_VARIANT}" != "" ]]; then
+ KEYMAP_FILE="${KEYMAP_FILE}${VC_VARIANT}*"
+fi
+
+KEYMAP_NAME=$(basename $(dirname $(find ${KEYMAP_DIRECTORY} -name "${KEYMAP_FILE}")))
+
+if [[ "${KEYMAP_NAME}" ]]; then
+ echo "${KEYMAP_NAME}"
+ echo "${KEYMAP_NAME}"
+ echo ""
+fi \ No newline at end of file