|
|
|
@ -1,6 +1,5 @@ |
|
|
|
|
#!/usr/bin/env sh |
|
|
|
|
SXMO_GPSLOCATIONSFILE="/usr/share/sxmo/places_for_gps.tsv" |
|
|
|
|
EDITOR=vis |
|
|
|
|
CTILESIZE=256 |
|
|
|
|
CLN2=0.693147180559945309417 |
|
|
|
|
CPI=3.14159265358979323846 |
|
|
|
@ -54,7 +53,7 @@ px2lon() { |
|
|
|
|
|
|
|
|
|
killexistingfoxtrotgps() { |
|
|
|
|
ACTIVEWIN="$(xdotool getactivewindow)" |
|
|
|
|
WMCLASS="${1:-$(xprop -id $ACTIVEWIN | grep WM_CLASS | cut -d ' ' -f3-)}" |
|
|
|
|
WMCLASS="$(xprop -id "$ACTIVEWIN" | grep WM_CLASS | cut -d ' ' -f3-)" |
|
|
|
|
if echo "$WMCLASS" | grep -i foxtrot; then |
|
|
|
|
xdotool windowkill "$ACTIVEWIN" && return 0 |
|
|
|
|
return 1 |
|
|
|
@ -68,32 +67,31 @@ gpslatlonget() { |
|
|
|
|
Y="$(gsettings get org.foxtrotgps global-y)" |
|
|
|
|
X="$(gsettings get org.foxtrotgps global-x)" |
|
|
|
|
WINH="$( |
|
|
|
|
xwininfo -id $(xdotool getactivewindow) | grep -E '^\s*Height' | cut -d: -f2 |
|
|
|
|
xwininfo -id "$(xdotool getactivewindow)" | grep -E '^\s*Height' | cut -d: -f2 |
|
|
|
|
)" |
|
|
|
|
WINW="$( |
|
|
|
|
xwininfo -id $(xdotool getactivewindow) | grep -E '^\s*Width' | cut -d: -f2 |
|
|
|
|
xwininfo -id "$(xdotool getactivewindow)" | grep -E '^\s*Width' | cut -d: -f2 |
|
|
|
|
)" |
|
|
|
|
LAT="$(px2lat "$(echo "$Y + ($WINH / 2)" | bc -l)" "$ZOOM")" |
|
|
|
|
LON="$(px2lon "$(echo "$X + ($WINW / 2)" | bc -l)" "$ZOOM")" |
|
|
|
|
echo "$LAT" "$LON" "$ZOOM" |
|
|
|
|
} |
|
|
|
|
gpslatlonset() { |
|
|
|
|
CORDS="$(echo "$@" | tr -d ',°')" |
|
|
|
|
CURRENTPOS="$(echo $CORDS | cut -d' ' -f1)" |
|
|
|
|
LAT="$(echo $CORDS | cut -d' ' -f1)" |
|
|
|
|
LON="$(echo $CORDS | cut -d' ' -f2)" |
|
|
|
|
ZOOM="$(echo $CORDS | cut -d' ' -f3)" |
|
|
|
|
CORDS="$(echo $@ | tr -d ',°')" |
|
|
|
|
LAT="$(echo "$CORDS" | cut -d' ' -f1)" |
|
|
|
|
LON="$(echo "$CORDS" | cut -d' ' -f2)" |
|
|
|
|
ZOOM="$(echo "$CORDS" | cut -d' ' -f3)" |
|
|
|
|
[ -z "$ZOOM" ] && ZOOM=10 |
|
|
|
|
WINW="$( |
|
|
|
|
xwininfo -id $(xdotool getactivewindow) | grep -E '^\s*Width' | cut -d: -f2 |
|
|
|
|
xwininfo -id "$(xdotool getactivewindow)" | grep -E '^\s*Width' | cut -d: -f2 |
|
|
|
|
)" |
|
|
|
|
WINH="$( |
|
|
|
|
xwininfo -id $(xdotool getactivewindow) | grep -E '^\s*Height' | cut -d: -f2 |
|
|
|
|
xwininfo -id "$(xdotool getactivewindow)" | grep -E '^\s*Height' | cut -d: -f2 |
|
|
|
|
)" |
|
|
|
|
|
|
|
|
|
# Translate lat&lon into pixel values |
|
|
|
|
Y="$(echo "$(lat2px $LAT $ZOOM) - ($WINH / 2)" | bc -l | cut -d. -f1)" |
|
|
|
|
X="$(echo "$(lon2px $LON $ZOOM) - ($WINW / 2)" | bc -l | cut -d. -f1)" |
|
|
|
|
Y="$(echo "$(lat2px "$LAT" "$ZOOM") - ($WINH / 2)" | bc -l | cut -d. -f1)" |
|
|
|
|
X="$(echo "$(lon2px "$LON" "$ZOOM") - ($WINW / 2)" | bc -l | cut -d. -f1)" |
|
|
|
|
|
|
|
|
|
gsettings set org.foxtrotgps global-zoom "$ZOOM" |
|
|
|
|
gsettings set org.foxtrotgps global-x "$X" |
|
|
|
@ -101,10 +99,8 @@ gpslatlonset() { |
|
|
|
|
killexistingfoxtrotgps && st -e foxtrotgps --lat="$LAT" --lon="$LON" & |
|
|
|
|
} |
|
|
|
|
gpsgeoclueget() { |
|
|
|
|
# Retrieves latlon from geoclue |
|
|
|
|
# Will retrieve and set latlon from geoclue |
|
|
|
|
echo foo |
|
|
|
|
#gsettings set org.foxtrotgps myposition-lat "$LAT" |
|
|
|
|
#gsettings set org.foxtrotgps myposition-lon "$LON" |
|
|
|
|
} |
|
|
|
|
copy() { |
|
|
|
|
COORDS="$(gpslatlonget)" |
|
|
|
@ -123,15 +119,15 @@ droppin() { |
|
|
|
|
|
|
|
|
|
details() { |
|
|
|
|
COORDS="$(gpslatlonget)" |
|
|
|
|
LAT="$(echo $COORDS | cut -d' ' -f1)" |
|
|
|
|
LON="$(echo $COORDS | cut -d' ' -f2)" |
|
|
|
|
ZOOM="$(echo $COORDS | cut -d' ' -f3)" |
|
|
|
|
LAT="$(echo "$COORDS" | cut -d' ' -f1)" |
|
|
|
|
LON="$(echo "$COORDS" | cut -d' ' -f2)" |
|
|
|
|
ZOOM="$(echo "$COORDS" | cut -d' ' -f3)" |
|
|
|
|
surf -S "https://nominatim.openstreetmap.org/reverse.php?lat=${LAT}&lon=${LON}&zoom=${ZOOM}&format=html" & |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
menuregionsearch() { |
|
|
|
|
WINH="$(xwininfo -id $(xdotool getactivewindow) | grep -E '^\s*Height' | cut -d: -f2)" |
|
|
|
|
WINW="$(xwininfo -id $(xdotool getactivewindow) | grep -E '^\s*Width' | cut -d: -f2)" |
|
|
|
|
WINH="$(xwininfo -id "$(xdotool getactivewindow)" | grep -E '^\s*Height' | cut -d: -f2)" |
|
|
|
|
WINW="$(xwininfo -id "$(xdotool getactivewindow)" | grep -E '^\s*Width' | cut -d: -f2)" |
|
|
|
|
|
|
|
|
|
POIS=" |
|
|
|
|
Close Menu |
|
|
|
@ -140,7 +136,6 @@ menuregionsearch() { |
|
|
|
|
Restaurant |
|
|
|
|
Pizza |
|
|
|
|
Barbershop |
|
|
|
|
Barber |
|
|
|
|
" |
|
|
|
|
QUERY="$( |
|
|
|
|
printf %b "$POIS" | |
|
|
|
@ -169,21 +164,16 @@ menulocations() { |
|
|
|
|
printf %b "$( |
|
|
|
|
echo "Close Menu"; |
|
|
|
|
cat "$SXMO_GPSLOCATIONSFILE"; |
|
|
|
|
echo "Edit" |
|
|
|
|
)" | |
|
|
|
|
grep -vE '^#' | |
|
|
|
|
sed "s/\t/: /g" | |
|
|
|
|
sxmo_dmenu_with_kb.sh -i -c -l 10 -fn Terminus-18 -p "Locations" |
|
|
|
|
)" |
|
|
|
|
ZOOM=14 |
|
|
|
|
|
|
|
|
|
if [ $CHOICE = "Edit" ]; then |
|
|
|
|
RES="$(st -e $EDITOR "$SXMO_GPSLOCATIONSFILE")" |
|
|
|
|
exit 0 |
|
|
|
|
elif [ "$CHOICE" = "Close Menu" ]; then |
|
|
|
|
if [ "$CHOICE" = "Close Menu" ]; then |
|
|
|
|
exit 0 |
|
|
|
|
else |
|
|
|
|
LATLON="$(echo -e "$CHOICE" | cut -d: -f2- )" |
|
|
|
|
LATLON="$(printf %b "$CHOICE" | cut -d: -f2- )" |
|
|
|
|
gpslatlonset "$LATLON $ZOOM" |
|
|
|
|
fi |
|
|
|
|
} |
|
|
|
@ -214,4 +204,4 @@ menumaptype() { |
|
|
|
|
done |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$@ |
|
|
|
|
"$1" "$2" "$3" "$4" "$5" |