* New layout. * new dvorak bepo layout. * first commit of new ergodox_ez dvorak keyboard for qwerty and bepo.
		
			
				
	
	
		
			75 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env zsh
 | 
						|
 | 
						|
# Switch the keyboard to en-us by default, bepo, or en-dvorak.
 | 
						|
 | 
						|
help(){
 | 
						|
    print 'switch-kbd - helper for setxkbmap'
 | 
						|
    print ' '
 | 
						|
    print 'Change the keyboard to en-us, fr-bepo, or en-dvorak.'
 | 
						|
    print 'Uses setxkbmap, so the change only affects the current'
 | 
						|
    print 'session.  This mainly to avoid using a toggle key.'
 | 
						|
    print ' '
 | 
						|
    print ' -b           Bepo'
 | 
						|
    print ' -d           Dvorak'
 | 
						|
    print ' -n           do not execute'
 | 
						|
    print ' -h           help text.'
 | 
						|
    print ' '
 | 
						|
    print ' The default is to set the keyboard to en-us.'
 | 
						|
    exit
 | 
						|
}
 | 
						|
 | 
						|
layout="-layout us"
 | 
						|
variant=""
 | 
						|
let "execute = 1"
 | 
						|
let "verose = 0"
 | 
						|
 | 
						|
# $opt will hold the current option
 | 
						|
local opt
 | 
						|
while getopts bdnvh opt; do
 | 
						|
    # loop continues till options finished
 | 
						|
    # see which pattern $opt matches...
 | 
						|
    case $opt in
 | 
						|
        (b)
 | 
						|
            layout="-layout fr"
 | 
						|
            variant="-variant bepo"
 | 
						|
            ;;
 | 
						|
 | 
						|
        (d)
 | 
						|
            layout="-layout en"
 | 
						|
            variant="-variant dvorak"
 | 
						|
            ;;
 | 
						|
        (n) 
 | 
						|
            let "execute = 0"
 | 
						|
	    ;;
 | 
						|
        (v) 
 | 
						|
            let "verbose = 1"
 | 
						|
	    ;;
 | 
						|
        (h)
 | 
						|
            help
 | 
						|
            ;;
 | 
						|
	# matches a question mark
 | 
						|
	# (and nothing else, see text)
 | 
						|
        (\?)
 | 
						|
            print "Bad option:" $*
 | 
						|
            print " "
 | 
						|
            help
 | 
						|
            return 1
 | 
						|
            ;;
 | 
						|
    esac
 | 
						|
done
 | 
						|
(( OPTIND > 1 )) && shift $(( OPTIND - 1 ))
 | 
						|
##print Remaining arguments are: $*
 | 
						|
 | 
						|
mycommand='setxkbmap '${layout}' '${variant}
 | 
						|
 | 
						|
if [[ ( $verbose -ne 0 ) ]]; then;
 | 
						|
	print "setxkbmap Command:" $mycommand
 | 
						|
fi
 | 
						|
 | 
						|
if [[ ( $execute -ne 0 ) ]]
 | 
						|
then;
 | 
						|
	eval $mycommand
 | 
						|
else;
 | 
						|
        print "did not execute"
 | 
						|
fi
 |