Update light.sh to work with keycombo in sway

Hello.

This really isn't a problem or anything but I was wondering if the light.sh could be updated to handle being called by a key combo also? (Like I could do SHIFT + i (eye)) to disable/enable it.

System:
  Kernel: 5.16.11-zen1-1-zen x86_64 bits: 64 compiler: gcc v: 11.2.0
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
    root=UUID=5ea32362-776b-4a64-a2e7-1e1492b1137b rw [email protected]
    quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
    systemd.unified_cgroup_hierarchy=1
    resume=UUID=99213909-149f-4663-8cb0-b7431f100328 loglevel=3
  Desktop: sway 1.7 info: waybar vt: 1 dm: greetd Distro: Garuda Linux
    base: Arch Linux
Machine:
  Type: Laptop System: Dell product: XPS 13 9350 v: N/A
    serial: <superuser required> Chassis: type: 9 serial: <superuser required>
  Mobo: Dell model: 0PWNCR v: A01 serial: <superuser required> UEFI: Dell
    v: 1.11.1 date: 08/01/2019
Battery:
  ID-1: BAT0 charge: 30.4 Wh (100.0%) condition: 30.4/56.0 Wh (54.3%)
    volts: 8.6 min: 7.6 model: LGC-LGC7.3 DELL 5K9CP5A type: Li-ion
    serial: <filter> status: Full
CPU:
  Info: model: Intel Core i7-6500U bits: 64 type: MT MCP arch: Skylake
    family: 6 model-id: 0x4E (78) stepping: 3 microcode: 0xEC
  Topology: cpus: 1x cores: 2 tpc: 2 threads: 4 smt: enabled cache:
    L1: 128 KiB desc: d-2x32 KiB; i-2x32 KiB L2: 512 KiB desc: 2x256 KiB
    L3: 4 MiB desc: 1x4 MiB
  Speed (MHz): avg: 2550 high: 2984 min/max: 400/3100 scaling:
    driver: intel_pstate governor: performance cores: 1: 2984 2: 2521 3: 2362
    4: 2333 bogomips: 20799
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities:
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf
    mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: spec_store_bypass
    mitigation: Speculative Store Bypass disabled via prctl
  Type: spectre_v1
    mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
    IBRS_FW, STIBP: conditional, RSB filling
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel Skylake GT2 [HD Graphics 520] vendor: Dell driver: i915
    v: kernel ports: active: eDP-1 empty: DP-1, DP-2, HDMI-A-1, HDMI-A-2
    bus-ID: 00:02.0 chip-ID: 8086:1916 class-ID: 0300
  Device-2: Microdia Integrated Webcam HD type: USB driver: uvcvideo
    bus-ID: 1-5:4 chip-ID: 0c45:670c class-ID: 0e02
  Display: wayland server: Xwayland v: 22.1.0 compositor: sway v: 1.7
    driver: gpu: i915 display-ID: 1
  Monitor-1: eDP-1 model: Sharp built: 2015 res: 3200x1800 hz: 60 dpi: 276
    gamma: 1.2 scale: 2 size: 294x165mm (11.6x6.5") diag: 337mm (13.3")
    ratio: 16:9 modes: 3200x1800
  Message: Wayland GBM/EGL data currently not available.
Audio:
  Device-1: Intel Sunrise Point-LP HD Audio vendor: Dell
    driver: snd_hda_intel v: kernel alternate: snd_soc_skl bus-ID: 00:1f.3
    chip-ID: 8086:9d70 class-ID: 0403
  Sound Server-1: ALSA v: k5.16.11-zen1-1-zen running: yes
  Sound Server-2: sndio v: N/A running: no
  Sound Server-3: PulseAudio v: 15.0 running: no
  Sound Server-4: PipeWire v: 0.3.47 running: yes
Network:
  Device-1: Intel Wireless 7265 driver: iwlwifi v: kernel pcie: gen: 1
    speed: 2.5 GT/s lanes: 1 bus-ID: 3a:00.0 chip-ID: 8086:095a class-ID: 0280
  IF: wlp58s0 state: up mac: <filter>
Bluetooth:
  Device-1: Intel Bluetooth wireless interface type: USB driver: btusb v: 0.8
    bus-ID: 1-3:3 chip-ID: 8087:0a2a class-ID: e001
  Report: bt-adapter ID: hci0 rfk-id: 3 state: down
    bt-service: enabled,running rfk-block: hardware: no software: no
    address: <filter>
RAID:
  Hardware-1: Intel 82801 Mobile SATA Controller [RAID mode] driver: ahci
    v: 3.0 port: f060 bus-ID: 00:17.0 chip-ID: 8086:282a rev: N/A
    class-ID: 0104
Drives:
  Local Storage: total: 465.76 GiB used: 50.13 GiB (10.8%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/sda maj-min: 8:0 vendor: Samsung model: SSD 860 EVO M.2 500GB
    size: 465.76 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    type: SSD serial: <filter> rev: 2B6Q scheme: GPT
Partition:
  ID-1: / raw-size: 456.66 GiB size: 456.66 GiB (100.00%)
    used: 50.13 GiB (11.0%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 576 KiB (0.2%) fs: vfat dev: /dev/sda1 maj-min: 8:1
  ID-3: /home raw-size: 456.66 GiB size: 456.66 GiB (100.00%)
    used: 50.13 GiB (11.0%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
  ID-4: /var/log raw-size: 456.66 GiB size: 456.66 GiB (100.00%)
    used: 50.13 GiB (11.0%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
  ID-5: /var/tmp raw-size: 456.66 GiB size: 456.66 GiB (100.00%)
    used: 50.13 GiB (11.0%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
  ID-1: swap-1 type: zram size: 7.63 GiB used: 2 MiB (0.0%) priority: 100
    dev: /dev/zram0
  ID-2: swap-2 type: partition size: 8.8 GiB used: 0 KiB (0.0%)
    priority: -2 dev: /dev/sda3 maj-min: 8:3
Sensors:
  System Temperatures: cpu: 56.0 C pch: 45.5 C mobo: 39.0 C sodimm: SODIMM C
  Fan Speeds (RPM): cpu: 0
Info:
  Processes: 229 Uptime: 1d 21h 4m wakeups: 5 Memory: 7.63 GiB
  used: 2.71 GiB (35.6%) Init: systemd v: 250 tool: systemctl Compilers:
  gcc: 11.2.0 clang: 13.0.1 Packages: pacman: 1324 lib: 327 Shell: Zsh
  v: 5.8.1 running-in: alacritty inxi: 3.3.13
Garuda (2.5.5-1):
  System install date:     2021-12-08
  Last full system update: 2022-03-01
  Is partially upgraded:   No
  Relevant software:       NetworkManager
  Windows dual boot:       No/Undetected
  Snapshots:               Snapper
  Failed units:

I looked at the light.sh and it looks like a simple if statement could make this work? Is this something that anyone else would use?

#!/bin/sh
CONTENT=$(curl -s https://freegeoip.app/json/)
longitude=$(echo $CONTENT | jq .longitude)
latitude=$(echo $CONTENT | jq .latitude)
PID=$(pgrep wlsunset)
if [ $PID ]; then
	kill $PID
else
	wlsunset -l $latitude -L $longitude &
fi