made resolution way faster on OS X

This commit is contained in:
Andrew Titmuss 2016-03-27 19:50:09 +11:00
parent c29cb10a2c
commit 9779e91672
3 changed files with 24 additions and 11 deletions

View file

@ -5,6 +5,10 @@ os:
- linux
- osx
before_install:
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install screenresolution; fi
script:
- sudo make install
- neofetch --test --ascii --color_blocks off --config off --ascii_distro travis

View file

@ -95,7 +95,7 @@ your distro's logo or any ascii art of your choice!
##### OSX
- Current Song: `itunes`
- Resolution (quicker): `screenresolution
\[1\] See **[#79](https://github.com/dylanaraps/neofetch/issues/79)** about why this is now a required dependency.

View file

@ -12,10 +12,12 @@
# Optional Dependencies: (You'll lose these features without them)
# Displaying Images: w3m + w3m-img
# Image Cropping: ImageMagick
# Displaying song with Google Play Music: gpmdp-bash
# [ Linux / BSD ] Wallpaper Display: feh, nitrogen or gsettings
# [ Linux / BSD ] Current Song: mpc, cmus, moc
# [ Linux ] Current Song: spotify
# [ Linux / BSD ] Resolution detection: xorg-xdpyinfo
# [ OS X ] Getting screen resolution (faster): screenresolution
#
# Created by Dylan Araps
# https://github.com/dylanaraps/
@ -1251,16 +1253,23 @@ getresolution () {
;;
"Mac OS X")
case "$refresh_rate" in
"on")
resolution=$(system_profiler SPDisplaysDataType |\
awk '/Resolution:/ {printf $2"x"$4" @ "$6"Hz, "}')
;;
"off")
resolution=$(system_profiler SPDisplaysDataType |\
awk '/Resolution:/ {printf $2"x"$4", "}')
;;
esac
if type -p screenresolution >/dev/null 2>&1; then
resolution=$(screenresolution get 2>&1 | awk '/Display/ {printf $6"Hz, "}')
resolution=${resolution//x??@/ @ }
[[ "$refresh_rate" == "off" ]] && resolution=${resolution// @ +([0-9])Hz}
else
case "$refresh_rate" in
"on")
resolution=$(system_profiler SPDisplaysDataType |\
awk '/Resolution:/ {printf $2"x"$4" @ "$6"Hz, "}')
;;
"off")
resolution=$(system_profiler SPDisplaysDataType |\
awk '/Resolution:/ {printf $2"x"$4", "}')
;;
esac
fi
;;
"Windows")