Tilføj keyboardlayout (sprog)
Source: Download script
Last Updated: 11. September 2025 by Agnete Moos (agms@sonderborg.dk)
Parameters:
Navn | Type | Standardværdi | Påkrævet |
---|---|---|---|
Click to see the source code
#! /usr/bin/env sh
# SYNOPSIS
# dconf_keyboard_layout.sh [ENFORCE]
#
# DESCRIPTION
# This script installs a policy that adds a keyboard layout and as a
# side effect it makes the keyboard layout switcher viewable in the menu bar
#
# Use a boolean to decide whether to enforce or not. An unchecked box will
# remove the policy and a checked one will enforce it.
#
# IMPLEMENTATION
# copyright Copyright 2022, Magenta ApS
# license GNU General Public License
set -x
if get_os2borgerpc_config os2_product | grep --quiet kiosk; then
echo "Dette script er ikke designet til at blive anvendt på en kiosk-maskine."
exit 1
fi
ACTIVATE=$1
LANGUAGE_TO_ADD=$2 # Example: ua for Ukrainian
# Determine the default language by checking LANG in /etc/default/locale
# The equal sign is there to prevent matching LANGUAGE if it is present in the file
DEFAULT_LANGUAGE=$(grep LANG= /etc/default/locale | cut --delimiter '_' --fields 2 | cut --delimiter '.' --fields 1)
DEFAULT_LANGUAGE=$(echo "$DEFAULT_LANGUAGE" | tr '[:upper:]' '[:lower:]')
# Change these three to set a different policy to another value
POLICY_PATH="org/gnome/desktop/input-sources"
POLICY="sources"
POLICY_VALUE="[('xkb','$DEFAULT_LANGUAGE'),('xkb','$LANGUAGE_TO_ADD')]"
POLICY_FILE="/etc/dconf/db/os2borgerpc.d/00-keyboard-layout"
POLICY_LOCK_FILE="/etc/dconf/db/os2borgerpc.d/locks/00-keyboard-layout"
if [ "$ACTIVATE" = 'True' ]; then
cat > "$POLICY_FILE" <<-END
[$POLICY_PATH]
$POLICY=$POLICY_VALUE
END
# Tell the system that the values of the dconf keys we've just set can no
# longer be overridden by the user
cat > "$POLICY_LOCK_FILE" <<-END
/$POLICY_PATH/$POLICY
END
else
rm --force "$POLICY_FILE" "$POLICY_LOCK_FILE"
fi
# Incorporate all of the text files we've just created into the system's dconf databases
dconf update
Beskrivelse
Scriptet tilføjer et valgfrit sprog som alternativt keyboardlayout, og det vil i topmenuen til højre blive synligt, hvilket layout der pt. er valgt, og derfra kan det også skiftes.
Det valgte layout nulstilles til dansk efter logud, men med mulighed for at skifte.
Scriptet understøtter pt. kun et enkelt ekstra sprog ud over dansk ad gangen.
Dette script er blevet testet og virker på Ubuntu 22.04.
Parametre
Ønsker du at tilføje Ukrainsk tastaturlayout, skal du indtaste: “ua” (uden citationstegnene) som det andet parameter.
Første parameter afkrydses hvis du vil tilføje layoutet. Lad det stå tomt, hvis du ønsker at slette det. (Dvs. nulstille til standard).
Det navn du skal bruge for at få et givent keyboardlayout skulle stemme overens med navnene på denne liste, i første kolonne i tabellen: https://gist.github.com/jatcwang/ae3b7019f219b8cdc6798329108c9aee#file-gistfile1-txt-L190