diff --git a/.travis.yml b/.travis.yml index 352bd92d..4f7cd3ed 100644 --- a/.travis.yml +++ b/.travis.yml @@ -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 diff --git a/README.md b/README.md index 0fd39c37..f88c9241 100644 --- a/README.md +++ b/README.md @@ -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. diff --git a/neofetch b/neofetch index 95eef80a..c8669bab 100755 --- a/neofetch +++ b/neofetch @@ -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,17 @@ 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??@/ @ } + + else + resolution=$(system_profiler SPDisplaysDataType |\ + awk '/Resolution:/ {printf $2"x"$4" @ "$6"Hz, "}') + fi + + [[ "$refresh_rate" == "off" ]] && \ + resolution=${resolution// @ +([0-9])Hz} ;; "Windows")