diff options
| -rw-r--r-- | init.lua | 1 | ||||
| -rw-r--r-- | keyboard_layout.lua | 35 | 
2 files changed, 36 insertions, 0 deletions
| @@ -20,6 +20,7 @@ require("hs.ipc")  require('application_switch')  require('catalina_brightness_bullshit')  require('gdrive_mouseover_item') +require('keyboard_layout')  require('mouse')  require('terminal_tab_hotkeys')  require('ufo') diff --git a/keyboard_layout.lua b/keyboard_layout.lua new file mode 100644 index 0000000..a230f9b --- /dev/null +++ b/keyboard_layout.lua @@ -0,0 +1,35 @@ +-- Copyright (c) 2021  Teddy Wing +-- +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program. If not, see <https://www.gnu.org/licenses/>. + + +-- Change keyboard layouts depending on presence of external keyboard. + + +keyboard_usb_watcher = hs.usb.watcher.new(function(event) +	if event['productName'] ~= 'iMate, USB To ADB Adaptor' +		and event['vendorID'] ~= 1917 +		and event['productID'] ~= 1029 +	then +		return +	end + +	if event['eventType'] == 'added' then +		hs.keycodes.setLayout('U.S.') +	elseif event['eventType'] == 'removed' then +		hs.keycodes.setLayout('QWAZERTY2') +	end +end) + +keyboard_usb_watcher:start() | 
