commit - 1efd7a9d62b423b22ca03bf9bdde862885af2289
commit + 77230597c322b1e43ae05226fcc82b4ebd4647e2
blob - 08401aa2ce2a9c65daf70981f272fb51051dadcd
blob + 658e0f8f23a6d2616983f775191ddff113bd6fb7
--- dtoggle
+++ dtoggle
-#!/bin/bash
+#!/usr/bin/env bash
# Quick-n-dirty script to turn external/internal displays on/off with xrandr
#
-# 2013-14 by Matthias Schmidt <xhr giessen.ccc.de>
+# 2013-14,2020 by Matthias Schmidt <xhr giessen.ccc.de>
#
# License GNU GPL
function run_xrandr()
{
- echo "$CMD $XRANDROPTS" | sh
+ echo "$CMD $XRANDROPTS" | bash
}
function read_config()
EXTERN[2]=
EXTERN[3]=
+# Use GNU sed if available (gsed on BSDs)
+if [ -f /usr/local/bin/gsed ]; then
+ SED=gsed
+else
+ SED=sed
+fi
+
# Clone screen on all displays
CFLAG=0
# Enable only external displays
# Default status
STATE=0
# Connected displays. Stolen from ArchLinux wiki
-CONNDIS=$(xrandr | grep " connected" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/")
+CONNDIS=$(xrandr | grep " connected" | $SED -e "s/\([A-Z0-9]\+\) connected.*/\1/")
while getopts "ciehmnrlp:vxt" opt; do
case $opt in