flickru 0.0.12 → 0.0.13

Sign up to get free protection for your applications and to get access to all the features.
data/bin/geowiki CHANGED
@@ -1,21 +1,42 @@
1
1
  #!/usr/bin/env bash
2
2
 
3
+ ###########
4
+ # Globals #
5
+ ###########
6
+
3
7
  APP_NAME=`basename $0`
8
+ PAGE=`echo "$1" | tr ' ' '_'`
4
9
 
5
- function error {
6
- # \E[31m 0
7
- echo -e "\033[31m$APP_NAME: $1: $2\033[0m" 1>&2
8
- }
10
+ #############
11
+ # Functions #
12
+ #############
9
13
 
10
- if [ $# -ne 1 ]; then
14
+ function usage {
11
15
  echo "$APP_NAME - find coordinates of a place described by Wikipedia"
12
16
  echo "usage: $APP_NAME <place Wikipedia page>"
13
17
  echo "example: $APP_NAME 'Mille-Isles, Quebec'"
18
+ }
19
+
20
+ function error {
21
+ echo -e "\033[31m$APP_NAME: $1: $2\033[0m" 1>&2
22
+ }
23
+
24
+ #################
25
+ # Preconditions #
26
+ #################
27
+
28
+ if [ "$1" == "-h" -o "$1" == "--help" ]; then
29
+ usage
30
+ exit
31
+ elif [ $# -ne 1 ]; then
32
+ usage
14
33
  error $LINENO "wrong number of arguments"
15
34
  exit 1
16
35
  fi
17
36
 
18
- PAGE=`echo "$1" | tr ' ' '_'`
37
+ #########
38
+ # Setup #
39
+ #########
19
40
 
20
41
  # temporal file management
21
42
  if [ -d /tmp ]; then
@@ -29,7 +50,11 @@ function clean_up {
29
50
  }
30
51
  trap clean_up SIGHUP SIGINT SIGTERM
31
52
 
32
- curl "http://en.wikipedia.org/wiki/$PAGE" > "$TMP" 2> /dev/null
53
+ ########
54
+ # Main #
55
+ ########
56
+
57
+ curl "http://en.wikipedia.org/wiki/$PAGE" -o "$TMP" 2> /dev/null
33
58
 
34
59
  if [ $? -ne 0 ]; then
35
60
  error $LINENO "Wikipedia page '$PAGE' not found"
@@ -43,13 +68,14 @@ URL=`cat "$TMP" | tr '"' '\n' | grep geohack | head -n 1 | sed -e 's|&amp;|\&|'`
43
68
  clean_up 1
44
69
  fi
45
70
 
46
- curl "$URL" > "$TMP" 2> /dev/null
71
+ curl "$URL" -o "$TMP" 2> /dev/null
47
72
 
48
73
  if [ $? -ne 0 ]; then
49
74
  error $LINENO "GeoHack URL '$URL' not found"
50
75
  clean_up 1
51
76
  fi
52
77
 
53
- cat "$TMP" | grep '<span class="geo"' | sed -e 's|^.*"Latitude">\([^<]*\)</span>, .*"Longitude">\([^<]*\)</span>.*$|\1, \2|'
78
+ cat "$TMP" | grep '<span class="geo"' \
79
+ | sed -e 's|^.*"Latitude">\([^<]*\)</span>, .*"Longitude">\([^<]*\)</span>.*$|\1, \2|'
54
80
 
55
81
  clean_up
data/lib/flickru.rb CHANGED
@@ -89,7 +89,7 @@ def self.flickru photo_dir
89
89
  " and better collection mosaics can be randomised."
90
90
  rescue Exception => e
91
91
  file_line = e.backtrace[0].split(':')
92
- Printer.error "error:#{File.basename file_line[0]}:#{file_line[1]}: #{e.message}"
92
+ Printer.error "error:#{File.basename file_line[-3]}:#{file_line[-2]}: #{e.message}"
93
93
  exit 1
94
94
  end
95
95
 
@@ -62,10 +62,12 @@ private
62
62
  def self.locate place
63
63
  the_place = place # needed for RuntimeError reporting
64
64
  begin
65
- is_win = RbConfig::CONFIG['target_os'].downcase.include? 'mswin32'
66
- command = Escape.shell_command (if is_win then ['bash', GEOWIKI, place]
67
- else [ GEOWIKI, place] end)
68
- place = `#{command} 2> /dev/null`[0..-2] \
65
+ is_win = case RbConfig::CONFIG['target_os']
66
+ when /mswin|mingw|cygwin/i then true
67
+ else false end
68
+ command = Escape.shell_command((is_win ? ['bash'] : []) + [GEOWIKI, place])
69
+ null = is_win ? 'NUL' : '/dev/null'
70
+ place = `#{command} 2> #{null}`[0..-2] \
69
71
  if place !~ /^#{COORD_PATTERN}, *#{COORD_PATTERN}$/
70
72
  if place =~ /^#{COORD_PATTERN}, *#{COORD_PATTERN}$/
71
73
  # latitude, longitude
@@ -1,5 +1,5 @@
1
1
  module Flickru
2
2
  unless defined? VERSION
3
- VERSION = "0.0.12"
3
+ VERSION = "0.0.13"
4
4
  end
5
5
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: flickru
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.12
5
+ version: 0.0.13
6
6
  platform: ruby
7
7
  authors:
8
8
  - Jesus Pardillo