hnruby 0.01

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: dddb492033269661ba8dc31860d12e871be3ab48
4
+ data.tar.gz: 24ff007b41e12b0314e27486b244199f6a883280
5
+ SHA512:
6
+ metadata.gz: 95d298a93c691ec7495bb8a4034890561406ef0c54a24184ce5673f157cc129a4f27641fab8725fd1c09e2b4ba38967ec0f06bbc5110e132fd5cdd89e3bd0773
7
+ data.tar.gz: 636cf406397b229a70d82a5e92a76d0004ff56f289608700c5481d634c4b8fd36201be719a06209db8e96528f17de77a70511e19229ce7db94d4470597e09c35
data/Rakefile ADDED
@@ -0,0 +1,8 @@
1
+ require 'rake/testtask'
2
+
3
+ Rake::TestTask.new do |t|
4
+ t.libs << "test"
5
+ end
6
+
7
+ desc "Run tests"
8
+ task :default => :test
data/bin/hn ADDED
@@ -0,0 +1,131 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'hnruby'
4
+
5
+ require 'terminfo'
6
+ require 'optparse'
7
+ require 'cgi'
8
+
9
+ class String
10
+ def gray; "\e[37m" + self; end
11
+ def blue; "\e[34m" + self; end
12
+ def orange; "\e[95m" + self; end
13
+
14
+ def emph; "\e[03m" + self; end
15
+
16
+ def normal; self + "\e[39m"; end
17
+ def reset; self + "\e[00m"; end
18
+
19
+ def width
20
+ gsub(/\e\[[0-9]{2}m/, "").length
21
+ end
22
+ end
23
+
24
+ def puts_news items
25
+ items.map do |item|
26
+ lines = [(item.number.to_s.+". ").ljust(4).gray + item.title.orange.normal]
27
+ if item.article?
28
+ lines << " #{item.points} points by #{item.submitter} #{item.time.gray}"
29
+ else
30
+ lines << " #{item.time.gray}"
31
+ end
32
+
33
+ lines.each do |line|
34
+ if line.width <= TermInfo.screen_columns
35
+ puts line
36
+ else
37
+ puts "#{line[0..(TermInfo.screen_columns - 3)]}..."
38
+ end
39
+ end
40
+ end
41
+
42
+ print "".reset
43
+ end
44
+
45
+ def puts_item item
46
+ if item.article?
47
+ {
48
+ "url" => item.url.blue.normal,
49
+ "title" => item.title,
50
+ "points" => item.points,
51
+ "submitter" => item.submitter,
52
+ "time" => item.time,
53
+ "comments" => item.comments,
54
+ "comments page" => item.comment_url.blue.normal
55
+ }.each { |name, info| puts ("#{name}: ".orange.normal + info.to_s) }
56
+ else
57
+ {
58
+ "url" => item.url.blue.normal,
59
+ "title" => item.title,
60
+ "time" => item.time
61
+ }.each { |name, info| puts ("#{name}: ".orange.normal + info) }
62
+ end
63
+ end
64
+
65
+ def format_html content
66
+ {
67
+ "<p>" => "\n", "</p>" => "",
68
+ "<pre><code>" => "".gray, "</code></pre>" => "".normal,
69
+ "<i>" => "".emph, "</i>" => "".reset,
70
+ /<a href=[^>]*>/ => "".blue, "</a>" => "".normal
71
+ }.each { |match, replace| content.gsub!(match, replace) }
72
+
73
+ CGI.unescapeHTML(content).split("\n")
74
+ end
75
+
76
+ def puts_comment_page page
77
+ page.to_a.each do |i|
78
+ print (" │ " * i.depth).gray
79
+ puts "#{i.submitter.orange} #{i.time.gray.normal}"
80
+
81
+ content = format_html(i.content)
82
+
83
+ content.map {|i| i.empty? ? [""] : i.split}.each do |paragraph|
84
+ until paragraph.empty?
85
+ line = (" │ " * i.depth).gray.normal
86
+ if 1 + paragraph.first.width + line.length > TermInfo.screen_columns
87
+ line += " " + paragraph.shift
88
+ end
89
+
90
+ until paragraph.empty? ||
91
+ line.length + paragraph.first.width + 1 > TermInfo.screen_columns
92
+
93
+ line += " " + paragraph.shift
94
+ end
95
+ puts line
96
+ end
97
+ end
98
+ end
99
+ end
100
+
101
+ status = 0
102
+
103
+ opt_parser = OptionParser.new do |args|
104
+ args.on "-i", "--info STORY", Integer,
105
+ "Display information about STORY" do |story|
106
+ if story < 1
107
+ puts "#{story} out of bounds\n"
108
+ else
109
+ puts "#{story}:"
110
+ puts_item HackerNews::StoryList.at story
111
+ puts
112
+ end
113
+ end
114
+
115
+ args.on "-c", "--comment STORY", "Display comment page for STORY" do |story|
116
+ if story.to_i.to_s == story #Support index number or URL
117
+ cpage = HackerNews::StoryList.at(story.to_i).comment_page
118
+ puts_comment_page cpage if cpage
119
+ else
120
+ puts_comment_page HackerNews::CommentPage.new story
121
+ end
122
+ end
123
+
124
+ args.on "-p", "--page NUMBER", Integer,
125
+ "List stories on NUMBERth page" do |num|
126
+ puts_news HackerNews::StoryList.page num
127
+ end
128
+ end
129
+
130
+ opt_parser.parse ARGV
131
+ puts_news HackerNews::StoryList.front_page if ARGV.empty?
@@ -0,0 +1,117 @@
1
+ require 'nokogiri'
2
+ require 'open-uri'
3
+
4
+ module HackerNews
5
+
6
+ # Represents a single comment from a CommentPage. Since its constructor is
7
+ # passed raw bits of html, this isn't meant to be accessed directly, but rather
8
+ # via a CommentPage object:
9
+ # page = HackerNews::StoryList[1].comment_page
10
+ # comment = page[1] #=> <Comment> by user 1 day ago
11
+ class Comment
12
+ # Returns the nesting depth of a comment--- top-level comments are zero,
13
+ # replies to same are one, etc.
14
+ attr_reader :depth
15
+ # Returns the username of the comment's author.
16
+ attr_reader :submitter
17
+ # Returns (as a human-readable string) how long ago the comment was
18
+ # submitted.
19
+ # comment.time #=> "5 minutes ago"
20
+ attr_reader :time
21
+ # Returns the actual content of the comment, as a string (with original html
22
+ # formatting).
23
+ # comment.content #=> "This is a comment. It <i>even has formatting<i>!"
24
+ attr_reader :content
25
+ # Returns the ID number of the comment.
26
+ # comment.id #=> 6630625
27
+ attr_reader :id
28
+ # Returns the Comment object representing this parent's comment, or
29
+ # <tt>nil</tt> if this is a top-level comment.
30
+ # commentpage[1].depth #=> 1
31
+ # commentpage[1].parent #=> <Comment> by user 10 hours ago
32
+ #
33
+ # commentpage[0].depth #=> 0
34
+ # commentpage[0].parent #=> nil
35
+ attr_accessor :parent
36
+
37
+ # :stopdoc:
38
+ def initialize(html_raw)
39
+ html = html_raw / "td"
40
+
41
+ @depth = html.at("img").attribute("width").content.to_i / 40
42
+ @id = (html / "a")[2].attribute("href").content.delete("item?id=").to_i
43
+ @submitter = (html / "a")[1].content
44
+ @submitter_url = (html / "a")[1].attribute("href").content
45
+ @time = (html / "span")[1].content.split[1..-3].join " "
46
+ @content = (html / "font")[-2].inner_html
47
+ end
48
+ # :startdoc:
49
+
50
+ # Returns the comment's content, minus html formatting:
51
+ #
52
+ # comment.content #=> "This is a comment <i>with html formatting</i>."
53
+ # comment.plaintext #=> "This is a comment with html formatting."
54
+ def plaintext
55
+ Nokogiri::HTML(@content).content
56
+ end
57
+
58
+ # Returns true if +comment+ is a child of +self+.
59
+ def parent_of?(comment)
60
+ comment.parent && comment.parent.id == @id
61
+ end
62
+
63
+ # Returns true if +self+ is a child of +comment+.
64
+ def child_of?(comment)
65
+ @parent && @parent.id == comment.id
66
+ end
67
+
68
+ # :nodoc:
69
+ def inspect
70
+ "<Comment> by #{@submitter} at #{@time}"
71
+ end
72
+ end
73
+
74
+ # Represents the list of comments pertaining to a particluar HN story.
75
+ class CommentPage
76
+ # Returns a new CommentPage corresponding to <tt>url</tt>.
77
+ # cpage = HackerNews::CommentPage.new\
78
+ # "https://news.ycombinator.com/item?id=6621679" #=> "C--" <12 Comments>
79
+ def initialize(url)
80
+ html = Nokogiri::HTML open(url)
81
+ @title = html.title.chomp " | Hacker News"
82
+
83
+ html = (html / "tr")[8..-3]
84
+ @comments = []
85
+ lineage = []
86
+ (0...html.length).select{ |i| i.even? }.each do |i|
87
+ com = Comment.new html[i]
88
+ com.parent = lineage[com.depth - 1]
89
+ lineage[com.depth] = com
90
+ @comments << com
91
+ end
92
+ end
93
+
94
+ # Returns array containing every Comment object within the page.
95
+ def to_a
96
+ @comments
97
+ end
98
+
99
+ # :arg: index
100
+ # Returns the Comment object at <tt>index</tt>.
101
+ def [](i)
102
+ @comments[i]
103
+ end
104
+ # :arg: index
105
+ # Returns the Comment object at <tt>index</tt>.
106
+ # Equivalent to <tt>self[index]</tt>.
107
+ def at(i)
108
+ @comments[i]
109
+ end
110
+
111
+ # :nodoc:
112
+ def inspect
113
+ "\"#{@title}\" <#{@comments.length} comments>"
114
+ end
115
+ end
116
+
117
+ end
@@ -0,0 +1,102 @@
1
+ require 'nokogiri'
2
+
3
+ module HackerNews
4
+
5
+ # Represents a story on HN--- access more or less all information about it
6
+ #
7
+ # Since this class's constructor takes bits of raw html, it's not meant to be
8
+ # accessed except via the <tt>HackerNews::StoryList</tt> module:
9
+ # news_item = HackerNews::StoryList[1]\
10
+ # #=> "Profitless Prosperity" <article: 6622394>
11
+ class NewsItem
12
+ # Returns <tt>self</tt>'s rank on Hacker News at the time <tt>self</tt> was
13
+ # created.
14
+ attr_reader :number
15
+ # Returns the story's URL.
16
+ attr_reader :url
17
+ # Returns the story's title.
18
+ attr_reader :title
19
+ # Returns the number of points the story has, or had at the time
20
+ # <tt>self</tt> was created.
21
+ #
22
+ # If <tt>self</tt> is a job offer, returns <tt>nil</tt>.
23
+ attr_reader :points
24
+ # Returns the username of the story's submitter.
25
+ # If <tt>self</tt> is a job offer, returns <tt>nil</tt>.
26
+ attr_reader :submitter
27
+ # Returns the (as a string) how long ago the comment was submitted.
28
+ # nitem.time #=> "5 minutes ago"
29
+ attr_reader :time
30
+ # Returns the number of comments the story currently has.
31
+ # If <tt>self</tt> is a job offer, returns <tt>nil</tt>.
32
+ attr_reader :comments
33
+
34
+ # :stopdoc:
35
+ def initialize(article_raw, meta_raw)
36
+ article = article_raw / "td"
37
+ meta = meta_raw / "td"
38
+
39
+ @number = article.first.content.to_i
40
+ @url = article[2].at("a").attributes["href"].value
41
+ @url = HN_URL + @url if url.start_with? "item?id="
42
+ @title = article[2].children.first.content
43
+
44
+ if meta.children.length == 5
45
+ #This is a normal article
46
+ @category = :article
47
+
48
+ @points = meta[1].children.first.content.to_i
49
+ @submitter = meta[1].children[2].content
50
+ @time = meta[1].children[3].content.delete("|").strip
51
+ @comment_url = meta[1].children[4].attributes["href"].value
52
+ @comment_page = nil #Don't needlessly download until asked
53
+ @comments = meta[1].children[4].content.to_i
54
+ else
55
+ #This, by contrast, is a job offer, which lacks all meta-info aside
56
+ #from submission time
57
+ @category = :joboffer
58
+
59
+ @time = meta[1].content
60
+ @points, @submitter, @comment_url, @comment_page, @comments = nil
61
+ end
62
+ end
63
+ # :startdoc:
64
+
65
+ # Returns true if <tt>self</tt> is an article (with points, comments, etc.).
66
+ def article?
67
+ @category == :article
68
+ end
69
+ # Returns true if <tt>self</tt> is a job offer (without points, comments,
70
+ # etc.).
71
+ def joboffer?
72
+ @category == :joboffer
73
+ end
74
+
75
+ # Returns the URL to the HN profile of the submitter.
76
+ # news_item.submitter_url #=> "https://news.ycombinator.com/user?id=user"
77
+ def submitter_url
78
+ "#{HN_URL}user?id=#{@submitter}" if @submitter
79
+ end
80
+
81
+ # Returns the URL to the story's comment page.
82
+ # On self-posts, this will be equivalent to <tt>url</tt>.
83
+ # news_item.comment_url\
84
+ # #=> "https://news.ycombinator.com/item?id=6620598"
85
+ def comment_url
86
+ "#{HN_URL}#{@comment_url}" if @comment_url
87
+ end
88
+ # Returns the CommentPage corresponding to <tt>self</tt>
89
+ # news_item.comment_page\
90
+ # #=> "Amazon and the "profitless business model" fallacy" <21 comments>
91
+ def comment_page
92
+ return @comment_page if @comment_page
93
+ @comment_page = CommentPage.new comment_url if @comment_url
94
+ end
95
+
96
+ # :nodoc:
97
+ def inspect
98
+ "\"#{@title}\" <#{@category}: #{@comment_url[8..-1]}>"
99
+ end
100
+ end
101
+
102
+ end
@@ -0,0 +1,86 @@
1
+ require 'nokogiri'
2
+ require 'open-uri'
3
+
4
+ module HackerNews
5
+
6
+ # Represents an opaque list of all stories on Hacker News.
7
+ #
8
+ # Each story is cached the first time it's accessed (or the first time the page
9
+ # it's on is accessed), so they may become out of date quickly. If you need to
10
+ # refresh constantly, call StoryList.update before retrieving any stories.
11
+ #
12
+ # story = HackerNews::StoryList[1]
13
+ # sleep 300
14
+ # story == HackerNews::StoryList[1] #=> true
15
+ # HackerNews::StoryList.update
16
+ # story == HackerNews::StoryList[1] #=> false
17
+ module StoryList
18
+ @@items = {}
19
+
20
+ private
21
+ def self.update_page(index)
22
+ url = HN_URL + "#{"news#{index}" if index > 1}"
23
+ html = (Nokogiri::HTML(open(url)) / "tr").to_a[4..-6]
24
+
25
+ (0...html.length).step(3) do |i|
26
+ item = NewsItem.new(html[i], html[i + 1])
27
+ @@items[item.number] = item
28
+ end
29
+ end
30
+
31
+ public
32
+ #Clear story cache--- any actual NewsItem objects will still need to be
33
+ #updated, though.
34
+ def self.update
35
+ @@items = {}
36
+ end
37
+
38
+ # If <tt>index</tt> is a number, returns a NewsItem representing the story
39
+ # currently at <tt>index</tt>.
40
+ #
41
+ # If <tt>index</tt> is a range, return all stories with ranks in
42
+ # <tt>index</tt>.
43
+ #
44
+ # s = HackerNews::StoryList[1] \
45
+ # #=> "DMCA takedown on GPL-copyrighted code" <article: 6623329>
46
+ #
47
+ # s = HackerNews::StoryList[2..3] \
48
+ # #=> ["C--" <article: 6621679>, "Profitless Prosperity" <article: 6622394>]
49
+ # :arg: index
50
+ def self.[](i)
51
+ if i.is_a? Numeric
52
+ self.at i.to_i
53
+ elsif i.is_a? Enumerable
54
+ self.stories i
55
+ else
56
+ raise TypeError
57
+ end
58
+ end
59
+
60
+ # Returns a NewsItem representing the story currently at <tt>index</tt>.
61
+ # Equivalent to <tt>HackerNews::StoryList[index]</tt>.
62
+ # :arg: index
63
+ def self.at(i)
64
+ update_page ((i - 1) / 30) + 1 unless @@items[i]
65
+
66
+ @@items[i]
67
+ end
68
+
69
+ # Returns an array of all the stories on the <tt>index</tt>th page.
70
+ def self.page(index)
71
+ ((((index - 1) * 30) + 1)..(index * 30)).map{ |i| at i }
72
+ end
73
+
74
+ # Returns an array of the stories currently on the front page.
75
+ def self.front_page
76
+ (1..30).map{ |i| at i }
77
+ end
78
+
79
+ # Returns all the stories with ranks in <tt>range</tt>.
80
+ # Equivalent to <tt>HackerNews::StoryList[range]</tt>.
81
+ def self.stories(range)
82
+ range.map{ |i| at i }
83
+ end
84
+ end
85
+
86
+ end
data/lib/hnruby.rb ADDED
@@ -0,0 +1,49 @@
1
+ require 'hnruby/comment.rb'
2
+ require 'hnruby/newsitem.rb'
3
+ require 'hnruby/storylist.rb'
4
+
5
+ # The HackerNews module is a set of tools for reading from Hacker News.
6
+ #
7
+ # ==Simple Example
8
+ #
9
+ # Print out information about the top news item:
10
+ #
11
+ # require 'hnruby'
12
+ #
13
+ # top = HackerNews::StoryList[1]
14
+ #
15
+ # puts "Title: #{top.title}"
16
+ # puts "URL: #{top.url}"
17
+ # puts "Comments: #{top.comment_url}"
18
+ # puts "Submitted: #{top.time}"
19
+ # puts "Has #{top.points} points and #{top.comments} comments."
20
+ #
21
+ # ==Accessing Content
22
+ #
23
+ # ===Stories
24
+ #
25
+ # Stories are only really accessible via index, via the HackerNews::StoryList
26
+ # module like in the above example.
27
+ #
28
+ # ===Comments
29
+ #
30
+ # Comments are accessed via the CommentPage class, which represents all comments
31
+ # on a given HN story. These are also easiest to access via StoryList:
32
+ #
33
+ # cpage = HackerNews::StoryList[1].comment_page\
34
+ # #=> "Fixing Unix Filenames (2012)" <27 Comments>
35
+ #
36
+ # However, it's also possible to pass a URL directly to the CommentPage
37
+ # constructor:
38
+ #
39
+ # page = HackerNews::CommentPage.new\
40
+ # ("https://news.ycombinator.com/item?id=6644955")\
41
+ # #=> "Fixing Unix Filenames (2012)" <27 Comments>
42
+ #
43
+ # From a CommentPage, specific comments can be accessed via index:
44
+ # comment = cpage[1] #=> <Comment> by user 1 day ago
45
+ module HackerNews
46
+ #Because clearly this is in danger of changing at any moment.
47
+ HN_URL = "https://news.ycombinator.com/"
48
+
49
+ end
@@ -0,0 +1,102 @@
1
+ <html><head><link rel="stylesheet" type="text/css" href="news.css?A1ofZU1bpLuQ1ISVDhPS">
2
+ <link rel="shortcut icon" href="favicon.ico">
3
+ <script type="text/javascript">
4
+ function byId(id) {
5
+ return document.getElementById(id);
6
+ }
7
+
8
+ function vote(node) {
9
+ var v = node.id.split(/_/); // {'up', '123'}
10
+ var item = v[1];
11
+
12
+ // hide arrows
13
+ byId('up_' + item).style.visibility = 'hidden';
14
+ byId('down_' + item).style.visibility = 'hidden';
15
+
16
+ // ping server
17
+ var ping = new Image();
18
+ ping.src = node.href;
19
+
20
+ return false; // cancel browser nav
21
+ } </script><title>Ionicons – Free and beautiful icons, MIT licensed | Hacker News</title></head><body><center><table border=0 cellpadding=0 cellspacing=0 width="85%" bgcolor=#f6f6ef><tr><td bgcolor=#ff6600><table border=0 cellpadding=0 cellspacing=0 width="100%" style="padding:2px"><tr><td style="width:18px;padding-right:4px"><a href="http://ycombinator.com"><img src="y18.gif" width=18 height=18 style="border:1px #ffffff solid;"></img></a></td><td style="line-height:12pt; height:10px;"><span class="pagetop"><b><a href="news">Hacker News</a></b><img src="s.gif" height=1 width=10><a href="newest">new</a> | <a href="newcomments">comments</a> | <a href="ask">ask</a> | <a href="jobs">jobs</a> | <a href="submit">submit</a></span></td><td style="text-align:right;padding-right:4px;"><span class="pagetop"><a href="newslogin?whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">login</a></span></td></tr></table></td></tr><tr style="height:10px"></tr><tr><td><table border=0><tr><td><center><a id=up_6637369 href="vote?for=6637369&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637369></span></center></td><td class="title"><a href="http://ionicons.com/">Ionicons – Free and beautiful icons, MIT licensed</a><span class="comhead"> (ionicons.com) </span></td></tr><tr><td colspan=1></td><td class="subtext"><span id=score_6637369>279 points</span> by <a href="user?id=yesimahuman">yesimahuman</a> 11 hours ago | <a href="item?id=6637369">72 comments</a></td></tr><tr style="height:10px"></tr><tr><td></td><td><form method=post action="/r"><input type=hidden name="fnid" value="N8ASIKkfxX8ZGRZB9thB9o"><textarea name="text" rows=6 cols=60></textarea><br><br>
22
+ <input type=submit value="add comment"></form></td></tr></table><br><br>
23
+ <table border=0><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637572 href="vote?for=6637572&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637572></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=slg">slg</a> 10 hours ago | <a href="item?id=6637572">link</a></span></div><br>
24
+ <span class="comment"><font color=#000000>It seems a little dangerous to include logos for various companies. I could see the likes of Reddit and Y Combinator turning a blind eye, but would we expect the same from Google, Microsoft, and Apple? I am no legal expert, but wouldn&#x27;t those icons present a long term problem if this project were to truly become successful?</font></span><p><font size=1><u><a href="reply?id=6637572&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637992 href="vote?for=6637992&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637992></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=baddox">baddox</a> 9 hours ago | <a href="item?id=6637992">link</a></span></div><br>
25
+ <span class="comment"><font color=#000000>Don&#x27;t many of these companies have specific terms on how their logos should be used on external sites to represent things like platform-specific apps? I&#x27;m not sure if custom-made fonts would be included in those terms, but I know these companies aren&#x27;t dead set against there being <i>no</i> external usage.</font></span><p><font size=1><u><a href="reply?id=6637992&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=80></td><td valign=top><center><a id=up_6638801 href="vote?for=6638801&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638801></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=asperous">asperous</a> 7 hours ago | <a href="item?id=6638801">link</a></span></div><br>
26
+ <span class="comment"><font color=#000000>Custom fonts are fine as long as they match the guidelines. I think they will have some issue-- mostly the ones that look different than the original icons (i.e. the white outlined versions).<p><a href="https://twitter.com/logo" rel="nofollow">https:&#x2F;&#x2F;twitter.com&#x2F;logo</a><p><a href="https://github.com/logos" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;logos</a><p><a href="https://www.facebookbrand.com/dos-donts" rel="nofollow">https:&#x2F;&#x2F;www.facebookbrand.com&#x2F;dos-donts</a><p><a href="http://www.apple.com/legal/sales-support/certification/docs/logo_guidelines.pdf" rel="nofollow">http:&#x2F;&#x2F;www.apple.com&#x2F;legal&#x2F;sales-support&#x2F;certification&#x2F;docs&#x2F;...</a><p>Page 12 -- No go &quot;Do not use the Apple logo alone in channel affiliate communications, including web pages.&quot; (I.e. You can&#x27;t just show the Apple Icon)<p><a href="https://www.dropbox.com/branding" rel="nofollow">https:&#x2F;&#x2F;www.dropbox.com&#x2F;branding</a><p>Yahoo&#x27;s icon actually doesn&#x27;t look like Yahoos brand icon so I would call that one a pass<p><a href="http://developer.android.com/distribute/googleplay/promote/brand.html" rel="nofollow">http:&#x2F;&#x2F;developer.android.com&#x2F;distribute&#x2F;googleplay&#x2F;promote&#x2F;b...</a><p>Pretty much no restrictions for the robot-- accept you need attribution according to Creative Commons 3.0 Attribution License.<p><a href="http://developer.linkedin.com/documents/branding-guidelines" rel="nofollow">http:&#x2F;&#x2F;developer.linkedin.com&#x2F;documents&#x2F;branding-guidelines</a><p>Linked in is specific in what the logo can be used <i>for</i>, instead of what it looks like. So this font is fine, but even in the preview the logo should point to a linked in page or profile.<p><a href="http://www.youtube.com/yt/brand/using-logo.html" rel="nofollow">http:&#x2F;&#x2F;www.youtube.com&#x2F;yt&#x2F;brand&#x2F;using-logo.html</a><p>The logo the author used isn&#x27;t the one trademarked-- fair use here.<p><a href="https://vine.co/logo" rel="nofollow">https:&#x2F;&#x2F;vine.co&#x2F;logo</a><p>&quot;Use only the official, unmodified files to represent our brand.&quot; So this ones a no (though it&#x27;s confusing... what if the author used the original glyph? Is conversion considered modification? I suppose)<p><a href="http://www.microsoft.com/en-us/legal/intellectualproperty/Trademarks/Logo/Programs.aspx" rel="nofollow">http:&#x2F;&#x2F;www.microsoft.com&#x2F;en-us&#x2F;legal&#x2F;intellectualproperty&#x2F;Tr...</a><p>Unless that glyph isn&#x27;t trademarked it&#x27;s not okay to use, even the logos mentioned state:<p>&quot;Do not use in... Web sites for any purpose except pursuant to an express written trademark license from Microsoft.&quot;<p><a href="https://en.bitcoin.it/wiki/Promotional_graphics" rel="nofollow">https:&#x2F;&#x2F;en.bitcoin.it&#x2F;wiki&#x2F;Promotional_graphics</a><p>Bitcoins assets are fair game.<p><a href="http://dribbble.com/branding" rel="nofollow">http:&#x2F;&#x2F;dribbble.com&#x2F;branding</a><p>Seems to be okay, since colors are &#x27;encouraged&#x27; and the gylph is shown as ones that are okay to use.<p><a href="http://www.reddit.com/about/alien/" rel="nofollow">http:&#x2F;&#x2F;www.reddit.com&#x2F;about&#x2F;alien&#x2F;</a><p>Absolutely no go: &quot;We require a license to use these logos in anything outside reddit, both for free and for profit.&quot;<p>---<p>Summing up here I was surprised to learn that the restrictions are more stringent than I thought. If I were the author I&#x27;d clean up the alternate version and remove the Glyphs that aren&#x27;t specifically allowed, otherwise anyone who uses your font is technically opening themselves up to trademark violations.</font></span><p><font size=1><u><a href="reply?id=6638801&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=120></td><td valign=top><center><a id=up_6639843 href="vote?for=6639843&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6639843></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=akrakesh">akrakesh</a> 2 hours ago | <a href="item?id=6639843">link</a></span></div><br>
27
+ <span class="comment"><font color=#000000>I went a step ahead and included none of the social icons in my Clear icon set <a href="http://appzgear.com/products/clear-icons.htm" rel="nofollow">http:&#x2F;&#x2F;appzgear.com&#x2F;products&#x2F;clear-icons.htm</a> I found each company has specific guidelines on usage of their of their trademarks&#x2F;service marks with no clear mention of selling them as part of an icon set. I&#x27;m not an expert and I don&#x27;t want to risk getting into a legal quagmire.</font></span><p><font size=1><u><a href="reply?id=6639843&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=80></td><td valign=top><center><a id=up_6638414 href="vote?for=6638414&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638414></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=alrs">alrs</a> 8 hours ago | <a href="item?id=6638414">link</a></span></div><br>
28
+ <span class="comment"><font color=#000000>&quot;not dead set against .. no&quot; is awfully hard to parse.</font></span><p><font size=1><u><a href="reply?id=6638414&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=120></td><td valign=top><center><a id=up_6638656 href="vote?for=6638656&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638656></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=baddox">baddox</a> 7 hours ago | <a href="item?id=6638656">link</a></span></div><br>
29
+ <span class="comment"><font color=#000000>I don&#x27;t think so. I can&#x27;t really invert the &quot;not dead set&quot; part.</font></span><p><font size=1><u><a href="reply?id=6638656&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=120></td><td valign=top><center><a id=up_6638769 href="vote?for=6638769&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638769></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=anigbrowl">anigbrowl</a> 7 hours ago | <a href="item?id=6638769">link</a></span></div><br>
30
+ <span class="comment"><font color=#000000>It should be &#x27;not dead set against any external usage.&#x27;</font></span><p><font size=1><u><a href="reply?id=6638769&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637665 href="vote?for=6637665&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637665></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=Bahamut">Bahamut</a> 10 hours ago | <a href="item?id=6637665">link</a></span></div><br>
31
+ <span class="comment"><font color=#000000>Font Awesome is pretty popular and I haven&#x27;t seen anything happening there with regards to this situation, so this is a non-issue IMO.</font></span><p><font size=1><u><a href="reply?id=6637665&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=80></td><td valign=top><center><a id=up_6637734 href="vote?for=6637734&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637734></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=slg">slg</a> 10 hours ago | <a href="item?id=6637734">link</a></span></div><br>
32
+ <span class="comment"><font color=#000000>I am not sure if the &quot;But Mom, all my friends were doing it&quot; defense will hold up in court.<p>In all seriousness, they are claiming copyright over an icon that is clearly meant to represent a brand&#x27;s copyrighted and trademarked logo. Then they are rereleasing that logo under a MIT license. I have never gone to law school, but I can&#x27;t imagine that Apple&#x27;s lawyers will be thrilled by that.</font></span><p><font size=1><u><a href="reply?id=6637734&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=120></td><td valign=top><center><a id=up_6637790 href="vote?for=6637790&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637790></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=Bahamut">Bahamut</a> 10 hours ago | <a href="item?id=6637790">link</a></span></div><br>
33
+ <span class="comment"><font color=#000000>I understand, but it&#x27;s not always so cut and dry. Seeing that a popular almost identical non-controversial product is doing the same thing without any legal action is a vote of confidence in my book. Having been part of a hobbyist organization who has had experience with dealing with large corporations who hold copyrights (in music), I am privy to information you might be surprised at what companies choose to let slide as unofficial policy.</font></span><p><font size=1><u><a href="reply?id=6637790&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=160></td><td valign=top><center><a id=up_6638926 href="vote?for=6638926&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638926></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=Silhouette">Silhouette</a> 6 hours ago | <a href="item?id=6638926">link</a></span></div><br>
34
+ <span class="comment"><font color=#000000>Different kinds of IP have different properties in different places. In particular, in some cases, the rights continue until they run out unless they are deliberately relinquished, while in other cases the rights must be defended or they can be weakened. Just because you&#x27;ve seen organisations let copyright infringement slide in the past, that doesn&#x27;t necessarily mean they would let something like trademark use go unchallenged in the same way.</font></span><p><font size=1><u><a href="reply?id=6638926&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6639106 href="vote?for=6639106&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6639106></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=minor_nitwit">minor_nitwit</a> 5 hours ago | <a href="item?id=6639106">link</a></span></div><br>
35
+ <span class="comment"><font color=#000000>I&#x27;m disappointed that there&#x27;s no penguin.</font></span><p><font size=1><u><a href="reply?id=6639106&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=80></td><td valign=top><center><a id=up_6640025 href="vote?for=6640025&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6640025></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=vincie">vincie</a> 53 minutes ago | <a href="item?id=6640025">link</a></span></div><br>
36
+ <span class="comment"><font color=#000000>No BSD daemons, or Puffy logos either. Damn these hipsters!</font></span><p><font size=1><u><a href="reply?id=6640025&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637677 href="vote?for=6637677&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637677></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=radley">radley</a> 10 hours ago | <a href="item?id=6637677">link</a></span></div><br>
37
+ <span class="comment"><font color=#000000>Not at all. Is common pattern for icons.</font></span><p><font size=1><u><a href="reply?id=6637677&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6640155 href="vote?for=6640155&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6640155></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=i386">i386</a> 5 minutes ago | <a href="item?id=6640155">link</a></span></div><br>
38
+ <span class="comment"><font color=#000000>Would they scale up ok if I were to use them for Mac OS X apps?</font></span><p><font size=1><u><a href="reply?id=6640155&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637553 href="vote?for=6637553&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637553></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 11 hours ago | <a href="item?id=6637553">link</a></span></div><br>
39
+ <span class="comment"><font color=#000000>So looks like we got hit with a perfect storm of Github going down for the archive download, and the icons not loading on Firefox. Working on fixing the second one, but the repo with all the icons is here: <a href="https://github.com/driftyco/ionicons" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;driftyco&#x2F;ionicons</a></font></span><p><font size=1><u><a href="reply?id=6637553&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6638012 href="vote?for=6638012&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638012></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 9 hours ago | <a href="item?id=6638012">link</a></span></div><br>
40
+ <span class="comment"><font color=#000000>Okay, the firefox issue was fixed and github is back. For those curious, looks like one of our new icons was not processed correctly by icomoon and ruined the whole font file. Lesson learned.<p>So, if you got the v1.2 version, download the new 1.2.2 version instead :)</font></span><p><font size=1><u><a href="reply?id=6638012&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6639775 href="vote?for=6639775&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6639775></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=welder">welder</a> 2 hours ago | <a href="item?id=6639775">link</a></span></div><br>
41
+ <span class="comment"><font color=#000000>Why are you creating your own instead of adding to FontAwesome?<p><a href="http://fortawesome.github.io/Font-Awesome/icons/" rel="nofollow">http:&#x2F;&#x2F;fortawesome.github.io&#x2F;Font-Awesome&#x2F;icons&#x2F;</a></font></span><p><font size=1><u><a href="reply?id=6639775&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6639952 href="vote?for=6639952&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6639952></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=snarkyturtle">snarkyturtle</a> 1 hour ago | <a href="item?id=6639952">link</a></span></div><br>
42
+ <span class="comment"><font color=#000000>Probably because they&#x27;re creating their own mobile framework and want to stand out a bit and not be cookie-cutter.</font></span><p><font size=1><u><a href="reply?id=6639952&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637683 href="vote?for=6637683&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637683></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=Samuel_Michon">Samuel_Michon</a> 10 hours ago | <a href="item?id=6637683">link</a></span></div><br>
43
+ <span class="comment"><font color=#000000>I love it and I’ll be using it, thanks. Previous similar sets of icons I found didn’t include all of the icons I needed. The main ones I need are: email, home, share, arrows, checkmark, cross, help, love, and link.<p>I’m thrilled that this collection doesn’t only include the old iOS ‘share’ button, but also the new iOS 7 style button.<p>I also like that you not only included an icon webfont for all the symbols, but also SVG files for all of the icons.<p>NB: Just an idea: on the website, it’d be nice if you‘d have hover tooltips for the icons that would show the description. (it took me a while to find out I had to click on the icon to see the description – to me, clicking means I will download the icon)</font></span><p><font size=1><u><a href="reply?id=6637683&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6640146 href="vote?for=6640146&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6640146></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=DonGateley">DonGateley</a> 7 minutes ago | <a href="item?id=6640146">link</a></span></div><br>
44
+ <span class="comment"><font color=#000000>Monochrome and flat. How much more ucking fugly anything could be I can&#x27;t imagine.</font></span><p><font size=1><u><a href="reply?id=6640146&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637467 href="vote?for=6637467&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637467></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=castis">castis</a> 11 hours ago | <a href="item?id=6637467">link</a></span></div><br>
45
+ <span class="comment"><font color=#000000>The ones I can see are great! I know I&#x27;m most likely not your target market but I&#x27;d want to know. <a href="http://i.imgur.com/T661sDN.jpg" rel="nofollow">http:&#x2F;&#x2F;i.imgur.com&#x2F;T661sDN.jpg</a> FF 24 - ubuntu 12.04</font></span><p><font size=1><u><a href="reply?id=6637467&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637749 href="vote?for=6637749&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637749></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=Samuel_Michon">Samuel_Michon</a> 10 hours ago | <a href="item?id=6637749">link</a></span></div><br>
46
+ <span class="comment"><font color=#000000>I don’t want to come across as gloating, but just to add a data point: Chrome 30 on OS X 10.9 works fine. I’m toying around with the icons right now.</font></span><p><font size=1><u><a href="reply?id=6637749&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637509 href="vote?for=6637509&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637509></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=puredemo">puredemo</a> 11 hours ago | <a href="item?id=6637509">link</a></span></div><br>
47
+ <span class="comment"><font color=#000000>Same thing on FF 24 on windows.</font></span><p><font size=1><u><a href="reply?id=6637509&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637502 href="vote?for=6637502&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637502></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 11 hours ago | <a href="item?id=6637502">link</a></span></div><br>
48
+ <span class="comment"><font color=#000000>Sorry about that, fixing right now.</font></span><p><font size=1><u><a href="reply?id=6637502&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6639115 href="vote?for=6639115&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6639115></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=minor_nitwit">minor_nitwit</a> 5 hours ago | <a href="item?id=6639115">link</a></span></div><br>
49
+ <span class="comment"><font color=#000000>FF 24 on 13.10 works.</font></span><p><font size=1><u><a href="reply?id=6639115&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637904 href="vote?for=6637904&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637904></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=rfrey">rfrey</a> 10 hours ago | <a href="item?id=6637904">link</a></span></div><br>
50
+ <span class="comment"><font color=#000000>Lovely, thanks.<p>I have to feel like it&#x27;s the end of an era when new icon sets don&#x27;t include a floppy disk, though. :`&#x2F;</font></span><p><font size=1><u><a href="reply?id=6637904&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6638313 href="vote?for=6638313&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638313></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=joshschreuder">joshschreuder</a> 8 hours ago | <a href="item?id=6638313">link</a></span></div><br>
51
+ <span class="comment"><font color=#000000>Isn&#x27;t it still a valid icon to indicate saving though? Is there another better representation of saving?</font></span><p><font size=1><u><a href="reply?id=6638313&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=80></td><td valign=top><center><a id=up_6638872 href="vote?for=6638872&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638872></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=lotyrin">lotyrin</a> 6 hours ago | <a href="item?id=6638872">link</a></span></div><br>
52
+ <span class="comment"><font color=#000000>What is saving these days aside from &quot;We&#x27;ve bizarrely held your changes since the last time you clicked this button shaped like an antiquity aside just in case you wanted to risk losing them all by navigating away.&quot;?</font></span><p><font size=1><u><a href="reply?id=6638872&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=120></td><td valign=top><center><a id=up_6639300 href="vote?for=6639300&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6639300></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=blahedo">blahedo</a> 4 hours ago | <a href="item?id=6639300">link</a></span></div><br>
53
+ <span class="comment"><font color=#000000>Maybe something like &quot;please force my changes to be saved to disk now, even if your autosave would not normally sync for another little while&quot;, or &quot;please tag the version as of this moment as a relevant consistent state&quot;? There&#x27;s still merit in the idea of &quot;saving&quot; even now (and even before allowing for the possibility of buggy implementations of always-save).</font></span><p><font size=1><u><a href="reply?id=6639300&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=120></td><td valign=top><center><a id=up_6639297 href="vote?for=6639297&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6639297></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=jeorgun"><font color=#3c963c>jeorgun</font></a> 4 hours ago | <a href="item?id=6639297">link</a></span></div><br>
54
+ <span class="comment"><font color=#000000>What&#x27;s git-commit aside from &quot;We&#x27;ve bizarrely held your changes since the last time you ran this command via an antiquated interface just in case you wanted to risk losing them all by accidentally running rm in the wrong directory?&quot;<p>Being able to screw around with things without fear of recovering not being able to recover your original content isn&#x27;t an outdated concept.</font></span><p><font size=1><u><a href="reply?id=6639297&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=80></td><td valign=top><center><a id=up_6638359 href="vote?for=6638359&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638359></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=city41">city41</a> 8 hours ago | <a href="item?id=6638359">link</a></span></div><br>
55
+ <span class="comment"><font color=#000000>Saving being a distinct step is fading away.</font></span><p><font size=1><u><a href="reply?id=6638359&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=80></td><td valign=top><center><a id=up_6638361 href="vote?for=6638361&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638361></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 8 hours ago | <a href="item?id=6638361">link</a></span></div><br>
56
+ <span class="comment"><font color=#000000>That should be in there. working on it, thanks.</font></span><p><font size=1><u><a href="reply?id=6638361&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637446 href="vote?for=6637446&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637446></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=pplante">pplante</a> 11 hours ago | <a href="item?id=6637446">link</a></span></div><br>
57
+ <span class="comment"><font color=#000000>these icons look great. really nice work.<p>it seems the css for them suffers from the same glob css selectors which font-awesome switched away from in 4.x. im not entirely sure if this is really that big of an issue as people made it out to be. i wonder if ionicons will switch in the future?<p>here is the font awesome issue: <a href="https://github.com/FortAwesome/Font-Awesome/issues/568" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;FortAwesome&#x2F;Font-Awesome&#x2F;issues&#x2F;568</a></font></span><p><font size=1><u><a href="reply?id=6637446&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637525 href="vote?for=6637525&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637525></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 11 hours ago | <a href="item?id=6637525">link</a></span></div><br>
58
+ <span class="comment"><font color=#000000>Good point, we should tweak that. Made a GH issue for it <a href="https://github.com/driftyco/ionicons/issues/7" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;driftyco&#x2F;ionicons&#x2F;issues&#x2F;7</a></font></span><p><font size=1><u><a href="reply?id=6637525&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6638715 href="vote?for=6638715&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638715></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=ris">ris</a> 7 hours ago | <a href="item?id=6638715">link</a></span></div><br>
59
+ <span class="comment"><font color=#000000>Oh look another page full of unicode placeholder symbols.<p>When did the web become a place that is hostile to people who want to choose the fonts they read things in?</font></span><p><font size=1><u><a href="reply?id=6638715&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6638798 href="vote?for=6638798&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638798></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 7 hours ago | <a href="item?id=6638798">link</a></span></div><br>
60
+ <span class="comment"><font color=#000000>What? Not sure what you mean. The fonts use unicode characters for the icons like any other icon font. Anything we could do to make it more friendly?</font></span><p><font size=1><u><a href="reply?id=6638798&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6638760 href="vote?for=6638760&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638760></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=akivabamberger">akivabamberger</a> 7 hours ago | <a href="item?id=6638760">link</a></span></div><br>
61
+ <span class="comment"><font color=#000000>I think that might have been 1990 or 1991 but I am not sure about the exact date.</font></span><p><font size=1><u><a href="reply?id=6638760&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6638332 href="vote?for=6638332&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638332></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=_greim_">_greim_</a> 8 hours ago | <a href="item?id=6638332">link</a></span></div><br>
62
+ <span class="comment"><font color=#000000><p><pre><code> [class*=&quot;icon-&quot;]
63
+ </code></pre>
64
+ Correct me if I&#x27;m wrong but isn&#x27;t this bad for performance?</font></span><p><font size=1><u><a href="reply?id=6638332&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6638358 href="vote?for=6638358&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638358></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 8 hours ago | <a href="item?id=6638358">link</a></span></div><br>
65
+ <span class="comment"><font color=#000000>Yea, we&#x27;re on it :) <a href="https://github.com/driftyco/ionicons/issues/7" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;driftyco&#x2F;ionicons&#x2F;issues&#x2F;7</a></font></span><p><font size=1><u><a href="reply?id=6638358&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637652 href="vote?for=6637652&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637652></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=iambateman">iambateman</a> 10 hours ago | <a href="item?id=6637652">link</a></span></div><br>
66
+ <span class="comment"><font color=#000000>This looks like a great complement to Font Awesome. Bless you for including a Cheatsheet in the download. These look great!<p>As an aside, I wish there was a way to search these icons sets by idea. So &quot;Money&quot; returns icon-ios7-pricetag and icon-social-bitcoin. (obviously I can cmd+F to look for the exact name).</font></span><p><font size=1><u><a href="reply?id=6637652&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637686 href="vote?for=6637686&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637686></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 10 hours ago | <a href="item?id=6637686">link</a></span></div><br>
67
+ <span class="comment"><font color=#000000>Did you try that exact search? It works just as you described :) We tried to make sure you could search by generic concepts rather than just the text in the class names.</font></span><p><font size=1><u><a href="reply?id=6637686&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6639600 href="vote?for=6639600&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6639600></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=themodelplumber">themodelplumber</a> 3 hours ago | <a href="item?id=6639600">link</a></span></div><br>
68
+ <span class="comment"><font color=#000000>So Ionic is big on AngularJS...is AngularJS pretty hard to learn? It seems complicated. Say if my only framework experience was a few blogs with Python and PHP frameworks plus some average JS &amp; jQuery experience.</font></span><p><font size=1><u><a href="reply?id=6639600&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637775 href="vote?for=6637775&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637775></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=kenrikm">kenrikm</a> 10 hours ago | <a href="item?id=6637775">link</a></span></div><br>
69
+ <span class="comment"><font color=#000000>Icon fonts are awesome, thanks for taking the time to create these. For those interested I have a post&#x2F;example project on my blog on how to use them in iOS6+. <a href="http://kenrikmarch.com/posts/4" rel="nofollow">http:&#x2F;&#x2F;kenrikmarch.com&#x2F;posts&#x2F;4</a></font></span><p><font size=1><u><a href="reply?id=6637775&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637742 href="vote?for=6637742&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637742></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=electic">electic</a> 10 hours ago | <a href="item?id=6637742">link</a></span></div><br>
70
+ <span class="comment"><font color=#000000>It would be nice if people would contribute to Font Awesome instead of creating whole new sets.</font></span><p><font size=1><u><a href="reply?id=6637742&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637774 href="vote?for=6637774&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637774></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=DanBC">DanBC</a> 10 hours ago | <a href="item?id=6637774">link</a></span></div><br>
71
+ <span class="comment"><font color=#000000>What licence is FA under?</font></span><p><font size=1><u><a href="reply?id=6637774&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=80></td><td valign=top><center><a id=up_6637974 href="vote?for=6637974&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637974></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=aperrien">aperrien</a> 9 hours ago | <a href="item?id=6637974">link</a></span></div><br>
72
+ <span class="comment"><font color=#000000>Looks like MIT, mostly:<p><a href="http://fortawesome.github.io/Font-Awesome/license/" rel="nofollow">http:&#x2F;&#x2F;fortawesome.github.io&#x2F;Font-Awesome&#x2F;license&#x2F;</a></font></span><p><font size=1><u><a href="reply?id=6637974&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637691 href="vote?for=6637691&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637691></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=Bahamut">Bahamut</a> 10 hours ago | <a href="item?id=6637691">link</a></span></div><br>
73
+ <span class="comment"><font color=#000000>I like these icons, but one suggestion - can you put a link to the GitHub repo at the top of the ionicon page? It should be much more accessible than at the bottom.<p>Edit: Oh, and register this on Bower!<p>Edit #2: And maybe LESS and SASS support please? :)</font></span><p><font size=1><u><a href="reply?id=6637691&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637440 href="vote?for=6637440&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637440></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=mfer">mfer</a> 11 hours ago | <a href="item?id=6637440">link</a></span></div><br>
74
+ <span class="comment"><font color=#000000>Unfortunately, it fails to display in Firefox for me on either a Mac or Linux. Works in Chrome though.</font></span><p><font size=1><u><a href="reply?id=6637440&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637452 href="vote?for=6637452&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637452></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 11 hours ago | <a href="item?id=6637452">link</a></span></div><br>
75
+ <span class="comment"><font color=#000000>Ah! Good catch, we will fix that right away.</font></span><p><font size=1><u><a href="reply?id=6637452&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=80></td><td valign=top><center><a id=up_6638825 href="vote?for=6638825&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638825></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 7 hours ago | <a href="item?id=6638825">link</a></span></div><br>
76
+ <span class="comment"><font color=#000000>Fixed!</font></span><p><font size=1><u><a href="reply?id=6638825&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637521 href="vote?for=6637521&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637521></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=arfar">arfar</a> 11 hours ago | <a href="item?id=6637521">link</a></span></div><br>
77
+ <span class="comment"><font color=#000000>Same for me. Ubuntu 12.04, Firefox 24</font></span><p><font size=1><u><a href="reply?id=6637521&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6638382 href="vote?for=6638382&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638382></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=nickpresta">nickpresta</a> 8 hours ago | <a href="item?id=6638382">link</a></span></div><br>
78
+ <span class="comment"><font color=#000000>Unfortunately, the icons look terrible on my Windows machine: <a href="http://i.imgur.com/WeTwez6.png" rel="nofollow">http:&#x2F;&#x2F;i.imgur.com&#x2F;WeTwez6.png</a> (for example)<p>Windows 7, Chrome 31.0.1650.34 beta-m.</font></span><p><font size=1><u><a href="reply?id=6638382&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6638778 href="vote?for=6638778&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638778></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=arunitc">arunitc</a> 7 hours ago | <a href="item?id=6638778">link</a></span></div><br>
79
+ <span class="comment"><font color=#000000>That&#x27;s a Chrome bug - <a href="https://code.google.com/p/chromium/issues/detail?id=137692" rel="nofollow">https:&#x2F;&#x2F;code.google.com&#x2F;p&#x2F;chromium&#x2F;issues&#x2F;detail?id=137692</a> - been pending for over a year now</font></span><p><font size=1><u><a href="reply?id=6638778&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=80></td><td valign=top><center><a id=up_6639374 href="vote?for=6639374&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6639374></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 4 hours ago | <a href="item?id=6639374">link</a></span></div><br>
80
+ <span class="comment"><font color=#000000>Yea, I see the same on GitHub&#x27;s icons. Not sure this is something we can do anything about at this point.</font></span><p><font size=1><u><a href="reply?id=6639374&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6638422 href="vote?for=6638422&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638422></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 8 hours ago | <a href="item?id=6638422">link</a></span></div><br>
81
+ <span class="comment"><font color=#000000>Hmm, odd. Looking into it.</font></span><p><font size=1><u><a href="reply?id=6638422&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637950 href="vote?for=6637950&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637950></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=samdunne">samdunne</a> 9 hours ago | <a href="item?id=6637950">link</a></span></div><br>
82
+ <span class="comment"><font color=#000000>When I hover over anything in Safari it disappears.
83
+ <a href="https://www.dropbox.com/s/7j32ek1lmb0l6zd/Screenshot%202013-10-29%2022.27.21.png" rel="nofollow">https:&#x2F;&#x2F;www.dropbox.com&#x2F;s&#x2F;7j32ek1lmb0l6zd&#x2F;Screenshot%202013-...</a><p>Doesn&#x27;t load in Firefox or any mobile browser I have on iOS (Chrome, Mobile Safari &amp; Dolphin)</font></span><p><font size=1><u><a href="reply?id=6637950&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6638190 href="vote?for=6638190&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638190></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=antrix">antrix</a> 9 hours ago | <a href="item?id=6638190">link</a></span></div><br>
84
+ <span class="comment"><font color=#000000>Why doesn&#x27;t Pinboard get any love in any of these icon fonts? If they did, I&#x27;d switch from images to fonts for my personal site.</font></span><p><font size=1><u><a href="reply?id=6638190&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637431 href="vote?for=6637431&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637431></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=Oculus">Oculus</a> 11 hours ago | <a href="item?id=6637431">link</a></span></div><br>
85
+ <span class="comment"><font color=#000000>Some of these are very nice, will definitely use them in my next project, thanks!</font></span><p><font size=1><u><a href="reply?id=6637431&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6638561 href="vote?for=6638561&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638561></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=mixmastamyk">mixmastamyk</a> 8 hours ago | <a href="item?id=6638561">link</a></span></div><br>
86
+ <span class="comment"><font color=#000000>Many of these are already unicode characters. Do the fonts of these icon sets use the corresponding characters?</font></span><p><font size=1><u><a href="reply?id=6638561&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637845 href="vote?for=6637845&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637845></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=chmars">chmars</a> 10 hours ago | <a href="item?id=6637845">link</a></span></div><br>
87
+ <span class="comment"><font color=#000000>I&#x27;m missing emoticons … ;)</font></span><p><font size=1><u><a href="reply?id=6637845&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637649 href="vote?for=6637649&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637649></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=tambourine_man">tambourine_man</a> 10 hours ago | <a href="item?id=6637649">link</a></span></div><br>
88
+ <span class="comment"><font color=#000000>They look great, but the page is crashing mobile Safari (4s iOS 7) after a bit of scrolling.</font></span><p><font size=1><u><a href="reply?id=6637649&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6638680 href="vote?for=6638680&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638680></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=willchilcutt">willchilcutt</a> 7 hours ago | <a href="item?id=6638680">link</a></span></div><br>
89
+ <span class="comment"><font color=#000000>Is it just me or is the .ttf missing some of the icons? When I open the font in Font Book on my mac there are only a small fraction of the icons showing.</font></span><p><font size=1><u><a href="reply?id=6638680&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6638692 href="vote?for=6638692&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638692></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 7 hours ago | <a href="item?id=6638692">link</a></span></div><br>
90
+ <span class="comment"><font color=#000000>Hmm. We had some issues today so we are going through each icon and making sure everything is good and then going to rebuild the font files.</font></span><p><font size=1><u><a href="reply?id=6638692&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637814 href="vote?for=6637814&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637814></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=adamdbradley">adamdbradley</a> 10 hours ago | <a href="item?id=6637814">link</a></span></div><br>
91
+ <span class="comment"><font color=#000000>Ben also wrote a great post describing how he built Ionicons: <a href="http://ionicframework.com/blog/building-ionicons/" rel="nofollow">http:&#x2F;&#x2F;ionicframework.com&#x2F;blog&#x2F;building-ionicons&#x2F;</a></font></span><p><font size=1><u><a href="reply?id=6637814&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637496 href="vote?for=6637496&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637496></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=alexgaribay">alexgaribay</a> 11 hours ago | <a href="item?id=6637496">link</a></span></div><br>
92
+ <span class="comment"><font color=#000000>These are really beautiful! Awesome set of icons!</font></span><p><font size=1><u><a href="reply?id=6637496&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637880 href="vote?for=6637880&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637880></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=Rampoina">Rampoina</a> 10 hours ago | <a href="item?id=6637880">link</a></span></div><br>
93
+ <span class="comment"><font color=#000000>I just see kanji&#x27;s and a some arabic characters. I checked and firefox is set to allow pages to use their fonts.</font></span><p><font size=1><u><a href="reply?id=6637880&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6638106 href="vote?for=6638106&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638106></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 9 hours ago | <a href="item?id=6638106">link</a></span></div><br>
94
+ <span class="comment"><font color=#000000>Fixed, sorry about that!</font></span><p><font size=1><u><a href="reply?id=6638106&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637492 href="vote?for=6637492&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637492></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=JoelAnair">JoelAnair</a> 11 hours ago | <a href="item?id=6637492">link</a></span></div><br>
95
+ <span class="comment"><font color=#000000>Really nice icons. Thanks for sharing.</font></span><p><font size=1><u><a href="reply?id=6637492&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=0></td><td valign=top><center><a id=up_6637703 href="vote?for=6637703&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637703></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yOutely">yOutely</a> 10 hours ago | <a href="item?id=6637703">link</a></span></div><br>
96
+ <span class="comment"><font color=#888888>Monotone icons can never be beautiful.</font></span><p><font size=1><u><a href="reply?id=6637703&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6637920 href="vote?for=6637920&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6637920></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=steven777400">steven777400</a> 10 hours ago | <a href="item?id=6637920">link</a></span></div><br>
97
+ <span class="comment"><font color=#000000>Although &quot;never&quot; is probably too strong a word, I prefer colorful icons as well :)</font></span><p><font size=1><u><a href="reply?id=6637920&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr><tr><td><table border=0><tr><td><img src="s.gif" height=1 width=40></td><td valign=top><center><a id=up_6638018 href="vote?for=6638018&amp;dir=up&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39"><div class="votearrow" title="upvote"></div></a><span id=down_6638018></span></center></td><td class="default"><div style="margin-top:2px; margin-bottom:-10px; "><span class="comhead"><a href="user?id=yesimahuman">yesimahuman</a> 9 hours ago | <a href="item?id=6638018">link</a></span></div><br>
98
+ <span class="comment"><font color=#000000>You can do some cool stuff with background colors and all of that. But I agree, we&#x27;d love to do multi-color icons :)</font></span><p><font size=1><u><a href="reply?id=6638018&amp;whence=%69%74%65%6d%3f%69%64%3d%36%36%33%37%33%36%39">reply</a></u></font></td></tr></table></td></tr></table><br><br>
99
+ </td></tr><tr><td><img src="s.gif" height=10 width=0><table width="100%" cellspacing=0 cellpadding=1><tr><td bgcolor=#ff6600></td></tr></table><br>
100
+ <center><span class="yclinks"><a href="lists">Lists</a> | <a href="rss">RSS</a> | <a href="http://ycombinator.com/bookmarklet.html">Bookmarklet</a> | <a href="http://ycombinator.com/newsguidelines.html">Guidelines</a> | <a href="http://ycombinator.com/newsfaq.html">FAQ</a> | <a href="dmca.html">DMCA</a> | <a href="http://ycombinator.com/newsnews.html">News News</a> | <a href="item?id=363">Feature Requests</a> | <a href="https://github.com/HackerNews/HN/issues">Bugs</a> | <a href="http://ycombinator.com">Y Combinator</a> | <a href="http://ycombinator.com/apply.html">Apply</a> | <a href="http://ycombinator.com/lib.html">Library</a></span><br><br>
101
+ <form method=get action="//www.hnsearch.com/search#request/all">Search: <input type=text name="q" value="" size=17></form><br>
102
+ </center></td></tr></table></center></body></html>
@@ -0,0 +1,29 @@
1
+ <html><head><script type="text/javascript">
2
+ //<![CDATA[
3
+ try{if (!window.CloudFlare) { var CloudFlare=[{verbose:0,p:0,byc:0,owlid:"cf",bag2:1,mirage2:0,oracle:0,paths:{cloudflare:"/cdn-cgi/nexp/abv=2980380653/"},atok:"aa86dcac9c4945060fe7932f9c44df72",petok:"ff7547fe05f09bc221203a1d94b8abc5-1383157013-1800",zone:"ycombinator.com",rocket:"0",apps:{}}];CloudFlare.push({"apps":{"ape":"90b361cbca4f10dda2eb862c86eae9ce"}});var a=document.createElement("script"),b=document.getElementsByTagName("script")[0];a.async=!0;a.src="//ajax.cloudflare.com/cdn-cgi/nexp/abv=616370820/cloudflare.min.js";b.parentNode.insertBefore(a,b);}}catch(e){};
4
+ //]]>
5
+ </script>
6
+ <link rel="stylesheet" type="text/css" href="news.css?A1ofZU1bpLuQ1ISVDhPS">
7
+ <link rel="shortcut icon" href="favicon.ico">
8
+ <script type="text/javascript">
9
+ function byId(id) {
10
+ return document.getElementById(id);
11
+ }
12
+
13
+ function vote(node) {
14
+ var v = node.id.split(/_/); // {'up', '123'}
15
+ var item = v[1];
16
+
17
+ // hide arrows
18
+ byId('up_' + item).style.visibility = 'hidden';
19
+ byId('down_' + item).style.visibility = 'hidden';
20
+
21
+ // ping server
22
+ var ping = new Image();
23
+ ping.src = node.href;
24
+
25
+ return false; // cancel browser nav
26
+ } </script><title>Hacker News</title></head><body><center><table border=0 cellpadding=0 cellspacing=0 width="85%" bgcolor=#f6f6ef><tr><td bgcolor=#ff6600><table border=0 cellpadding=0 cellspacing=0 width="100%" style="padding:2px"><tr><td style="width:18px;padding-right:4px"><a href="http://ycombinator.com"><img src="y18.gif" width=18 height=18 style="border:1px #ffffff solid;"></img></a></td><td style="line-height:12pt; height:10px;"><span class="pagetop"><b><a href="news">Hacker News</a></b><img src="s.gif" height=1 width=10><a href="newest">new</a> | <a href="newcomments">comments</a> | <a href="ask">ask</a> | <a href="jobs">jobs</a> | <a href="submit">submit</a></span></td><td style="text-align:right;padding-right:4px;"><span class="pagetop"><a href="newslogin?whence=%6e%65%77%73">login</a></span></td></tr></table></td></tr><tr style="height:10px"></tr><tr><td><table border=0 cellpadding=0 cellspacing=0><tr><td align=right valign=top class="title">1.</td><td><center><a id=up_6641378 href="vote?for=6641378&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641378></span></center></td><td class="title"><a href="http://www.washingtonpost.com/world/national-security/nsa-infiltrates-links-to-yahoo-google-data-centers-worldwide-snowden-documents-say/2013/10/30/e51d661e-4166-11e3-8b74-d89d714ca4dd_story.html?Post+generic=%3Ftid%3Dsm_twitter_washingtonpost">NSA infiltrates links to Yahoo, Google data centers worldwide</a><span class="comhead"> (washingtonpost.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641378>343 points</span> by <a href="user?id=nqureshi">nqureshi</a> 1 hour ago | <a href="item?id=6641378">120 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">2.</td><td><center><a id=up_6641050 href="vote?for=6641050&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641050></span></center></td><td class="title"><a href="https://github.com/YaroslavGaponov/node-jvm#!">Java Virtual Machine in pure Node.js</a><span class="comhead"> (github.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641050>111 points</span> by <a href="user?id=binarymax">binarymax</a> 2 hours ago | <a href="item?id=6641050">53 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">3.</td><td><center><a id=up_6641431 href="vote?for=6641431&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641431></span></center></td><td class="title"><a href="http://blog.kirigin.com/personal-analytics">Startup Idea: Solve Personal Analytics</a><span class="comhead"> (kirigin.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641431>45 points</span> by <a href="user?id=socmoth">socmoth</a> 1 hour ago | <a href="item?id=6641431">22 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">4.</td><td><center><a id=up_6641117 href="vote?for=6641117&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641117></span></center></td><td class="title"><a href="http://compilers.iecc.com/crenshaw/">Let's Build a Compiler</a><span class="comhead"> (iecc.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641117>65 points</span> by <a href="user?id=_virtu">_virtu</a> 2 hours ago | <a href="item?id=6641117">14 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">5.</td><td><center><a id=up_6640324 href="vote?for=6640324&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640324></span></center></td><td class="title"><a href="https://brendaneich.com/2013/10/ciscos-h-264-good-news/">Cisco to release BSD-licensed H.264 stack</a><span class="comhead"> (brendaneich.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640324>183 points</span> by <a href="user?id=padenot">padenot</a> 5 hours ago | <a href="item?id=6640324">46 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">6.</td><td><center><a id=up_6640363 href="vote?for=6640363&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640363></span></center></td><td class="title"><a href="http://gigaom.com/2013/10/30/mozilla-will-add-h-264-to-firefox-as-cisco-makes-eleventh-hour-push-for-webrtcs-future/">Mozilla will add H.264 to Firefox as Cisco makes push for WebRTC’s future</a><span class="comhead"> (gigaom.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640363>130 points</span> by <a href="user?id=gz5">gz5</a> 5 hours ago | <a href="item?id=6640363">26 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">7.</td><td><center><a id=up_6640563 href="vote?for=6640563&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640563></span></center></td><td class="title"><a href="http://xiphmont.livejournal.com/61927.html">Comments on Cisco, Mozilla, and H.264</a><span class="comhead"> (xiphmont.livejournal.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640563>80 points</span> by <a href="user?id=0x006A">0x006A</a> 4 hours ago | <a href="item?id=6640563">5 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">8.</td><td><center><a id=up_6640431 href="vote?for=6640431&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640431></span></center></td><td class="title"><a href="http://robohub.org/insect-inspired-flying-robot-handles-collisions-goes-where-other-robots-cant/">Insect-inspired flying robot handles collisions, goes where other robots can’t</a><span class="comhead"> (robohub.org) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640431>94 points</span> by <a href="user?id=robotgal">robotgal</a> 5 hours ago | <a href="item?id=6640431">17 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">9.</td><td><center><a id=up_6641826 href="vote?for=6641826&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641826></span></center></td><td class="title"><a href="https://coderwall.com/p/crj69a">From a useless Git Diff to a useful one</a><span class="comhead"> (coderwall.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641826>11 points</span> by <a href="user?id=bitsweet">bitsweet</a> 37 minutes ago | <a href="item?id=6641826">1 comment</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">10.</td><td><center><a id=up_6641770 href="vote?for=6641770&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641770></span></center></td><td class="title"><a href="http://rawgithub.com/Continuities/adarkroom/master/index.html">A Dark Room - A Minimalist Text Adventure Game</a><span class="comhead"> (rawgithub.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641770>12 points</span> by <a href="user?id=pkhamre">pkhamre</a> 45 minutes ago | <a href="item?id=6641770">4 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">11.</td><td><center><a id=up_6640532 href="vote?for=6640532&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640532></span></center></td><td class="title"><a href="https://plus.google.com/+CeciliaAbadie/posts/Kofr18UWLfc">California woman ticketed for wearing Google Glass while driving</a><span class="comhead"> (plus.google.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640532>70 points</span> by <a href="user?id=tga">tga</a> 4 hours ago | <a href="item?id=6640532">97 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">12.</td><td><center><a id=up_6640963 href="vote?for=6640963&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640963></span></center></td><td class="title"><a href="http://rhizome.org/editorial/2013/sep/23/impossible-music-black-midi/">The Impossible Music of Black MIDI</a><span class="comhead"> (rhizome.org) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640963>54 points</span> by <a href="user?id=wodow">wodow</a> 2 hours ago | <a href="item?id=6640963">46 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">13.</td><td><center><a id=up_6640942 href="vote?for=6640942&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640942></span></center></td><td class="title"><a href="http://www.kurzweilai.net/evidence-that-dendrites-actively-process-information-in-the-brain">Evidence that dendrites actively process information in the brain</a><span class="comhead"> (kurzweilai.net) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640942>38 points</span> by <a href="user?id=atpaino">atpaino</a> 3 hours ago | <a href="item?id=6640942">7 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">14.</td><td><center><a id=up_6641264 href="vote?for=6641264&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641264></span></center></td><td class="title"><a href="http://www.cnbc.com/id/101138137">No one's really interested in the Twitter IPO?</a><span class="comhead"> (cnbc.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641264>23 points</span> by <a href="user?id=wikiburner">wikiburner</a> 2 hours ago | <a href="item?id=6641264">8 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">15.</td><td><center><a id=up_6640430 href="vote?for=6640430&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640430></span></center></td><td class="title"><a href="http://kzhu.net/does-life-end-at-35.html">Does life end after 35?</a><span class="comhead"> (kzhu.net) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640430>371 points</span> by <a href="user?id=hakkasan">hakkasan</a> 5 hours ago | <a href="item?id=6640430">153 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">16.</td><td><center><a id=up_6640333 href="vote?for=6640333&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640333></span></center></td><td class="title"><a href="https://www.schneier.com/blog/archives/2013/10/the_battle_for_1.html">The Battle for Power on the Internet</a><span class="comhead"> (schneier.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640333>78 points</span> by <a href="user?id=hatchan">hatchan</a> 5 hours ago | <a href="item?id=6640333">11 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">17.</td><td><center><a id=up_6641787 href="vote?for=6641787&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641787></span></center></td><td class="title"><a href="http://georgemdallas.wordpress.com/2013/10/30/principal-component-analysis-4-dummies-eigenvectors-eigenvalues-and-dimension-reduction/">Intuitive Guide to Principal Component Analysis</a><span class="comhead"> (georgemdallas.wordpress.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641787>8 points</span> by <a href="user?id=jackkinsella">jackkinsella</a> 41 minutes ago | <a href="item?id=6641787">1 comment</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">18.</td><td><center><a id=up_6640492 href="vote?for=6640492&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640492></span></center></td><td class="title"><a href="http://www.bbc.co.uk/news/technology-24740873">Adobe hack: At least 38 million accounts breached</a><span class="comhead"> (bbc.co.uk) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640492>50 points</span> by <a href="user?id=tareqak">tareqak</a> 4 hours ago | <a href="item?id=6640492">22 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">19.</td><td><center><a id=up_6640970 href="vote?for=6640970&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640970></span></center></td><td class="title"><a href="http://ryanhoover.me/post/65523627397/is-your-product-too-engaging">Is Your Product Too Engaging?</a><span class="comhead"> (ryanhoover.me) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640970>23 points</span> by <a href="user?id=ovechtrick">ovechtrick</a> 2 hours ago | <a href="item?id=6640970">9 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">20.</td><td><center><a id=up_6640394 href="vote?for=6640394&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640394></span></center></td><td class="title"><a href="http://victorsavkin.com/post/65519559752/contrasting-backbone-and-angular">Contrasting Backbone and Angular</a><span class="comhead"> (victorsavkin.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640394>51 points</span> by <a href="user?id=vsavkin">vsavkin</a> 5 hours ago | <a href="item?id=6640394">20 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">21.</td><td><center><a id=up_6641733 href="vote?for=6641733&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641733></span></center></td><td class="title"><a href="http://mixpanel.com/mobile-surveys">Mixpanel launches mobile surveys</a><span class="comhead"> (mixpanel.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641733>7 points</span> by <a href="user?id=jbwyme">jbwyme</a> 51 minutes ago | <a href="item?id=6641733">discuss</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">22.</td><td><center><a id=up_6640214 href="vote?for=6640214&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640214></span></center></td><td class="title"><a href="http://www.theatlantic.com/infocus/2013/08/stalins-rope-roads/100577/">Stalin's Rope Roads</a><span class="comhead"> (theatlantic.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640214>74 points</span> by <a href="user?id=v4us">v4us</a> 6 hours ago | <a href="item?id=6640214">17 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">23.</td><td></td><td class="title"><a href="item?id=6641163">GoCardless (YC S11) is looking for software developers in London</a></td></tr><tr><td colspan=2></td><td class="subtext">2 hours ago</td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">24.</td><td><center><a id=up_6640408 href="vote?for=6640408&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640408></span></center></td><td class="title"><a href="https://github.com/blog/1675-disabling-old-ip-addresses">Disabling old IP addresses</a><span class="comhead"> (github.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640408>44 points</span> by <a href="user?id=gregman">gregman</a> 5 hours ago | <a href="item?id=6640408">10 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">25.</td><td><center><a id=up_6641952 href="vote?for=6641952&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641952></span></center></td><td class="title"><a href="http://leaguewarrior.com/index.html" rel="nofollow">Show HN: League Warrior</a><span class="comhead"> (leaguewarrior.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641952>4 points</span> by <a href="user?id=hodgesmr">hodgesmr</a> 18 minutes ago | <a href="item?id=6641952">discuss</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">26.</td><td><center><a id=up_6640749 href="vote?for=6640749&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640749></span></center></td><td class="title"><a href="http://www.cnbc.com/id/101152612">Why Goldman Sachs wants junior bankers to take weekends off</a><span class="comhead"> (cnbc.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640749>29 points</span> by <a href="user?id=codegeek">codegeek</a> 3 hours ago | <a href="item?id=6640749">25 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">27.</td><td><center><a id=up_6638604 href="vote?for=6638604&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6638604></span></center></td><td class="title"><a href="http://en.community.dell.com/support-forums/laptop/f/3518/t/19512174.aspx">Users complain their Dell 6430u laptops smell like cat piss</a><span class="comhead"> (dell.com) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6638604>293 points</span> by <a href="user?id=kmfrk">kmfrk</a> 17 hours ago | <a href="item?id=6638604">150 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">28.</td><td><center><a id=up_6641994 href="vote?for=6641994&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6641994></span></center></td><td class="title"><a href="http://bistro.is" rel="nofollow">Show HN: Online Reputation Management for Restaurants</a><span class="comhead"> (bistro.is) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6641994>3 points</span> by <a href="user?id=zachflower">zachflower</a> 12 minutes ago | <a href="item?id=6641994">discuss</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">29.</td><td><center><a id=up_6640353 href="vote?for=6640353&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640353></span></center></td><td class="title"><a href="http://www.cam.ac.uk/research/news/future-internet-aims-to-sever-links-with-servers">Future Internet aims to sever links with servers</a><span class="comhead"> (cam.ac.uk) </span></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640353>30 points</span> by <a href="user?id=Libertatea">Libertatea</a> 5 hours ago | <a href="item?id=6640353">29 comments</a></td></tr><tr style="height:5px"></tr><tr><td align=right valign=top class="title">30.</td><td><center><a id=up_6640210 href="vote?for=6640210&amp;dir=up&amp;whence=%6e%65%77%73"><div class="votearrow" title="upvote"></div></a><span id=down_6640210></span></center></td><td class="title"><a href="item?id=6640210">Hacker News was down</a></td></tr><tr><td colspan=2></td><td class="subtext"><span id=score_6640210>154 points</span> by <a href="user?id=daraosn">daraosn</a> 7 hours ago | <a href="item?id=6640210">88 comments</a></td></tr><tr style="height:5px"></tr><tr style="height:10px"></tr><tr><td colspan=2></td><td class="title"><a href="news2">More</a></td></tr></table></td></tr><tr><td><img src="s.gif" height=10 width=0><table width="100%" cellspacing=0 cellpadding=1><tr><td bgcolor=#ff6600></td></tr></table><br>
27
+ <center><span class="yclinks"><a href="lists">Lists</a> | <a href="rss">RSS</a> | <a href="http://ycombinator.com/bookmarklet.html">Bookmarklet</a> | <a href="http://ycombinator.com/newsguidelines.html">Guidelines</a> | <a href="http://ycombinator.com/newsfaq.html">FAQ</a> | <a href="dmca.html">DMCA</a> | <a href="http://ycombinator.com/newsnews.html">News News</a> | <a href="item?id=363">Feature Requests</a> | <a href="https://github.com/HackerNews/HN/issues">Bugs</a> | <a href="http://ycombinator.com">Y Combinator</a> | <a href="http://ycombinator.com/apply.html">Apply</a> | <a href="http://ycombinator.com/lib.html">Library</a></span><br><br>
28
+ <form method=get action="//www.hnsearch.com/search#request/all">Search: <input type=text name="q" value="" size=17></form><br>
29
+ </center></td></tr></table></center></body></html>
@@ -0,0 +1,88 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'hnruby'
4
+ require 'test/unit'
5
+ require 'fakeweb'
6
+
7
+ class TestHackerNews < Test::Unit::TestCase
8
+ def test_news_items
9
+ FakeWeb.register_uri(:get, /https:\/\/news.ycombinator.com/,
10
+ :body => File.dirname(__FILE__) + "/frontpage.html")
11
+ FakeWeb.allow_net_connect = false
12
+
13
+ first = HackerNews::StoryList[1]
14
+
15
+ assert_equal 1, first.number
16
+ assert_equal "http://www.washingtonpost.com/world/national-security/nsa-infiltrates-links-to-yahoo-google-data-centers-worldwide-snowden-documents-say/2013/10/30/e51d661e-4166-11e3-8b74-d89d714ca4dd_story.html?Post+generic=%3Ftid%3Dsm_twitter_washingtonpost",
17
+ first.url
18
+ assert_equal "NSA infiltrates links to Yahoo, Google data centers worldwide",
19
+ first.title
20
+ assert_equal 343, first.points
21
+ assert_equal "nqureshi", first.submitter
22
+ assert_equal "1 hour ago", first.time
23
+ assert_equal 120, first.comments
24
+ assert first.article?
25
+ assert !first.joboffer?
26
+ assert_equal "https://news.ycombinator.com/user?id=nqureshi", first.submitter_url
27
+ assert_equal "https://news.ycombinator.com/item?id=6641378", first.comment_url
28
+
29
+ joboffer = HackerNews::StoryList[23]
30
+
31
+ assert_equal 23, joboffer.number
32
+ assert_equal "https://news.ycombinator.com/item?id=6641163", joboffer.url
33
+ assert_equal "GoCardless (YC S11) is looking for software developers in London",
34
+ joboffer.title
35
+ assert_equal nil, joboffer.points
36
+ assert_equal nil, joboffer.submitter
37
+ assert_equal "2 hours ago", joboffer.time
38
+ assert_equal nil, joboffer.comments
39
+ assert !joboffer.article?
40
+ assert joboffer.joboffer?
41
+ assert_equal nil, joboffer.submitter_url
42
+ assert_equal nil, joboffer.comment_url
43
+ end
44
+
45
+ def test_comments
46
+ cpage = HackerNews::CommentPage.new File.dirname(__FILE__)+"/commentpage.html"
47
+
48
+ first = cpage[0]
49
+
50
+ assert_equal 0, first.depth
51
+ assert_equal "slg", first.submitter
52
+ assert_equal "10 hours ago", first.time
53
+ assert_equal "It seems a little dangerous to include logos for various companies. I could see the likes of Reddit and Y Combinator turning a blind eye, but would we expect the same from Google, Microsoft, and Apple? I am no legal expert, but wouldn't those icons present a long term problem if this project were to truly become successful?",
54
+ first.content
55
+ assert_equal 6637572, first.id
56
+ assert_equal nil, first.parent
57
+ assert_equal first.content, first.plaintext
58
+ assert first.parent_of?(cpage[1])
59
+ assert !first.child_of?(cpage[1])
60
+
61
+ formatted = cpage[8]
62
+
63
+ assert_equal 2, formatted.depth
64
+ assert_equal "slg", formatted.submitter
65
+ assert_equal "10 hours ago", formatted.time
66
+ assert_equal "I am not sure if the \"But Mom, all my friends were doing it\" defense will hold up in court.<p>In all seriousness, they are claiming copyright over an icon that is clearly meant to represent a brand's copyrighted and trademarked logo. Then they are rereleasing that logo under a MIT license. I have never gone to law school, but I can't imagine that Apple's lawyers will be thrilled by that.</p>",
67
+ formatted.content
68
+ assert_equal 6637734, formatted.id
69
+ assert_equal cpage[7], formatted.parent
70
+ assert_equal "I am not sure if the \"But Mom, all my friends were doing it\" defense will hold up in court.In all seriousness, they are claiming copyright over an icon that is clearly meant to represent a brand's copyrighted and trademarked logo. Then they are rereleasing that logo under a MIT license. I have never gone to law school, but I can't imagine that Apple's lawyers will be thrilled by that.",
71
+ formatted.plaintext
72
+ assert !formatted.parent_of?(cpage[6])
73
+ assert formatted.child_of?(cpage[7])
74
+
75
+ noob = cpage[30]
76
+ assert_equal 3, noob.depth
77
+ assert_equal "jeorgun", noob.submitter
78
+ assert_equal "4 hours ago", noob.time
79
+ assert_equal "What's git-commit aside from \"We've bizarrely held your changes since the last time you ran this command via an antiquated interface just in case you wanted to risk losing them all by accidentally running rm in the wrong directory?\"<p>Being able to screw around with things without fear of recovering not being able to recover your original content isn't an outdated concept.</p>",
80
+ noob.content
81
+ assert_equal 6639297, noob.id
82
+ assert_equal "What's git-commit aside from \"We've bizarrely held your changes since the last time you ran this command via an antiquated interface just in case you wanted to risk losing them all by accidentally running rm in the wrong directory?\"Being able to screw around with things without fear of recovering not being able to recover your original content isn't an outdated concept.",
83
+ noob.plaintext
84
+ assert !noob.parent_of?(cpage[31])
85
+ assert !noob.child_of?(cpage[29])
86
+ assert noob.child_of?(cpage[28])
87
+ end
88
+ end
metadata ADDED
@@ -0,0 +1,97 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: hnruby
3
+ version: !ruby/object:Gem::Version
4
+ version: '0.01'
5
+ platform: ruby
6
+ authors:
7
+ - Jem Orgun
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-10-31 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: ruby-terminfo
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: nokogiri
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: fakeweb
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ description: A simple library for accessing Hacker News.
56
+ email:
57
+ - jeorgun@gmail.com
58
+ executables:
59
+ - hn
60
+ extensions: []
61
+ extra_rdoc_files: []
62
+ files:
63
+ - lib/hnruby.rb
64
+ - lib/hnruby/comment.rb
65
+ - lib/hnruby/newsitem.rb
66
+ - lib/hnruby/storylist.rb
67
+ - Rakefile
68
+ - test/test_hackernews.rb
69
+ - test/frontpage.html
70
+ - test/commentpage.html
71
+ - bin/hn
72
+ homepage: https://github.com/jeorgun/hn-ruby
73
+ licenses:
74
+ - GPL
75
+ metadata: {}
76
+ post_install_message:
77
+ rdoc_options: []
78
+ require_paths:
79
+ - lib
80
+ required_ruby_version: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - '>='
83
+ - !ruby/object:Gem::Version
84
+ version: '0'
85
+ required_rubygems_version: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ requirements: []
91
+ rubyforge_project:
92
+ rubygems_version: 2.0.3
93
+ signing_key:
94
+ specification_version: 4
95
+ summary: Hacker News scraper
96
+ test_files:
97
+ - test/test_hackernews.rb