I suppose one could create an ad hoc script (with desktop launcher) that, could deactivate the personal layout files by, say, simply renaming /home/purism/.local/share/squeekboard/keyboards to cause it to be ignored, e.g. /home/purism/.local/share/squeekboard/Xkeyboards. That lets the default behavior take over, as testing confirms.
Taking that a step further, one could probably create persistent rules to apply the script on a per app basis, right?
EDIT: Here’s a script and launcher to change keyboards at will, assuming you’ve created the personal squeekboard layout files:
1. Save this script as SwitchKeyboard.sh (- I have it in my home folder -), then make it executable with: chmod u+x SwitchKeyboard.sh:
#!/bin/bash
# Apply default or personalized squeekboard layout via home screen app launcher.
# Use default squeekboard layout:
if [ -d /home/purism/.local/share/squeekboard/keyboards ]; then
mv /home/purism/.local/share/squeekboard/keyboards /home/purism/.local/share/squeekboard/Xkeyboards
# Use personalized squeekboard layout:
elif [ -d /home/purism/.local/share/squeekboard/Xkeyboards ]; then
mv /home/purism/.local/share/squeekboard/Xkeyboards /home/purism/.local/share/squeekboard/keyboards
fi
2- Place an appropriate icon in /home/purism/.local/share/icons and name it SwitchKeyboard.png. (Here’s one I made):
3- Create SwitchKeyboard.desktop containing this:
[Desktop Entry]
Name=SwitchKeyboard
Exec=gnome-terminal -x "./SwitchKeyboard.sh"
StartupNotify=true
Terminal=false
Type=Application
Categories=Utilities;
Icon=/home/purism/.local/share/icons/SwitchKeyboard.png
and save the file to /home/purism/.local/share/applications.
Now you can change between personal layout and the default squeekboard layout/behavior by launching the script from the app grid.
P.S. The script doesn’t affect the keyboard inside the terminal, which will use the “Terminal” layout by default, regardless.
