swdyh-gisty 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.rdoc +42 -0
- data/Rakefile +103 -0
- data/bin/gisty +95 -0
- data/lib/gisty.rb +133 -0
- data/test/fixtures/24835 +241 -0
- data/test/fixtures/30119 +376 -0
- data/test/fixtures/bar.user.js +1 -0
- data/test/fixtures/foo.user.js +1 -0
- data/test/fixtures/mine_login_foo_token_bar +494 -0
- data/test/fixtures/mine_page_1_login_foo_token_bar +495 -0
- data/test/fixtures/mine_page_2_login_foo_token_bar +455 -0
- data/test/fixtures/swdyh +302 -0
- data/test/fixtures/swdyh_page_4 +178 -0
- data/test/gisty_test.rb +159 -0
- data/test/test_helper.rb +3 -0
- metadata +79 -0
data/README.rdoc
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
|
2
|
+
= gisty
|
3
|
+
|
4
|
+
|
5
|
+
== Description
|
6
|
+
|
7
|
+
yet another command line client for gist
|
8
|
+
|
9
|
+
== Installation
|
10
|
+
|
11
|
+
=== Gem Installation
|
12
|
+
|
13
|
+
sudo gem install nokogiri
|
14
|
+
|
15
|
+
gem sources -a http://gems.github.com (you only have to do this once)
|
16
|
+
sudo gem install swdyh-gisty
|
17
|
+
|
18
|
+
set environment variable GISTY_DIR.
|
19
|
+
example .zshrc
|
20
|
+
|
21
|
+
export GISTY_DIR="$HOME/dev/gists"
|
22
|
+
|
23
|
+
zsh command completion: http://github.com/swdyh/gisty/raw/master/_gisty
|
24
|
+
|
25
|
+
== Features/Problems
|
26
|
+
|
27
|
+
|
28
|
+
== Synopsis
|
29
|
+
|
30
|
+
gisty list show local list.
|
31
|
+
gisty post file1 file2 ... post new gist.
|
32
|
+
gisty private_post file1 file2 ... post new private gist.
|
33
|
+
gisty sync sync remote gist.
|
34
|
+
gisty sync_delete sync remote gist. delete local gist if remote gist was deleted.
|
35
|
+
gisty version show gisty version
|
36
|
+
gisty help show help
|
37
|
+
|
38
|
+
== Copyright
|
39
|
+
|
40
|
+
Author:: swdyh <http://mailhide.recaptcha.net/d?k=01AhB7crgrlHptVaYRD0oPwA==&c=L_iqOZrGmo6hcGpPTFg1QYnjr-WpAStyQ4Y8ShfgOHs=>
|
41
|
+
Copyright:: Copyright (c) 2008 swdyh
|
42
|
+
License:: MIT
|
data/Rakefile
ADDED
@@ -0,0 +1,103 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'rake'
|
3
|
+
require 'rake/clean'
|
4
|
+
require 'rake/testtask'
|
5
|
+
require 'rake/packagetask'
|
6
|
+
require 'rake/gempackagetask'
|
7
|
+
require 'rake/rdoctask'
|
8
|
+
require 'rake/contrib/rubyforgepublisher'
|
9
|
+
require 'rake/contrib/sshpublisher'
|
10
|
+
require 'fileutils'
|
11
|
+
require 'lib/gisty'
|
12
|
+
include FileUtils
|
13
|
+
|
14
|
+
NAME = "gisty"
|
15
|
+
AUTHOR = "swdyh"
|
16
|
+
EMAIL = "http://mailhide.recaptcha.net/d?k=01AhB7crgrlHptVaYRD0oPwA==&c=L_iqOZrGmo6hcGpPTFg1QYnjr-WpAStyQ4Y8ShfgOHs="
|
17
|
+
DESCRIPTION = "yet another command line client for gist"
|
18
|
+
RUBYFORGE_PROJECT = "gisty"
|
19
|
+
HOMEPATH = "http://github.com/swdyh/gisty/tree/master"
|
20
|
+
BIN_FILES = %w( gisty )
|
21
|
+
|
22
|
+
VERS = Gisty::VERSION
|
23
|
+
REV = File.read(".svn/entries")[/committed-rev="(d+)"/, 1] rescue nil
|
24
|
+
CLEAN.include ['**/.*.sw?', '*.gem', '.config', '*.gemspec']
|
25
|
+
RDOC_OPTS = [
|
26
|
+
'--title', "#{NAME} documentation",
|
27
|
+
"--charset", "utf-8",
|
28
|
+
"--opname", "index.html",
|
29
|
+
"--line-numbers",
|
30
|
+
"--main", "README.rdoc",
|
31
|
+
"--inline-source",
|
32
|
+
]
|
33
|
+
|
34
|
+
task :default => [:test]
|
35
|
+
task :package => [:clean]
|
36
|
+
|
37
|
+
Rake::TestTask.new("test") do |t|
|
38
|
+
t.libs << "test"
|
39
|
+
t.pattern = "test/**/*_test.rb"
|
40
|
+
t.verbose = true
|
41
|
+
end
|
42
|
+
|
43
|
+
spec = Gem::Specification.new do |s|
|
44
|
+
s.name = NAME
|
45
|
+
s.version = VERS
|
46
|
+
s.platform = Gem::Platform::RUBY
|
47
|
+
s.has_rdoc = true
|
48
|
+
s.extra_rdoc_files = ["README.rdoc"]
|
49
|
+
s.rdoc_options += RDOC_OPTS + ['--exclude', '^(examples|extras)/']
|
50
|
+
s.summary = DESCRIPTION
|
51
|
+
s.description = DESCRIPTION
|
52
|
+
s.author = AUTHOR
|
53
|
+
s.email = EMAIL
|
54
|
+
s.homepage = HOMEPATH
|
55
|
+
s.executables = BIN_FILES
|
56
|
+
s.rubyforge_project = RUBYFORGE_PROJECT
|
57
|
+
s.bindir = "bin"
|
58
|
+
s.require_path = "lib"
|
59
|
+
#s.autorequire = ""
|
60
|
+
s.test_files = Dir["test/*_test.rb"]
|
61
|
+
|
62
|
+
#s.add_dependency('activesupport', '>=1.3.1')
|
63
|
+
#s.required_ruby_version = '>= 1.8.2'
|
64
|
+
|
65
|
+
s.files = %w(README.rdoc Rakefile) +
|
66
|
+
Dir.glob("{bin,doc,test,lib,templates,generator,extras,website,script}/**/*") +
|
67
|
+
Dir.glob("ext/**/*.{h,c,rb}") +
|
68
|
+
Dir.glob("examples/**/*.rb") +
|
69
|
+
Dir.glob("tools/*.rb") +
|
70
|
+
Dir.glob("rails/*.rb")
|
71
|
+
|
72
|
+
s.extensions = FileList["ext/**/extconf.rb"].to_a
|
73
|
+
end
|
74
|
+
|
75
|
+
|
76
|
+
Rake::GemPackageTask.new(spec) do |p|
|
77
|
+
p.need_tar = true
|
78
|
+
p.gem_spec = spec
|
79
|
+
end
|
80
|
+
|
81
|
+
Rake::RDocTask.new do |rdoc|
|
82
|
+
rdoc.rdoc_dir = 'html'
|
83
|
+
rdoc.options += RDOC_OPTS
|
84
|
+
rdoc.template = "resh"
|
85
|
+
#rdoc.template = "#{ENV['template']}.rb" if ENV['template']
|
86
|
+
if ENV['DOC_FILES']
|
87
|
+
rdoc.rdoc_files.include(ENV['DOC_FILES'].split(/,\s*/))
|
88
|
+
else
|
89
|
+
rdoc.rdoc_files.include('README.rdoc')
|
90
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
91
|
+
rdoc.rdoc_files.include('ext/**/*.c')
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
desc 'Update gem spec'
|
96
|
+
task :gemspec do
|
97
|
+
open("#{NAME}.gemspec", 'w') { |f| f.puts spec.to_ruby }
|
98
|
+
end
|
99
|
+
|
100
|
+
desc 'gem build'
|
101
|
+
task :build_gem => [:gemspec] do
|
102
|
+
sh "gem build #{NAME}.gemspec"
|
103
|
+
end
|
data/bin/gisty
ADDED
@@ -0,0 +1,95 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'gisty'
|
5
|
+
|
6
|
+
@cmds = {}
|
7
|
+
|
8
|
+
def cmd name
|
9
|
+
@cmds[name.to_s] = Proc.new { |i| yield i }
|
10
|
+
end
|
11
|
+
|
12
|
+
cmd :version do
|
13
|
+
puts Gisty::VERSION
|
14
|
+
end
|
15
|
+
|
16
|
+
cmd :help do
|
17
|
+
puts <<-EOS
|
18
|
+
usage:
|
19
|
+
gisty commands
|
20
|
+
commands:
|
21
|
+
gisty list show local list.
|
22
|
+
gisty post file1 file2 ... post new gist.
|
23
|
+
gisty private_post file1 file2 ... post new private gist.
|
24
|
+
gisty sync sync remote gist.
|
25
|
+
gisty sync_delete sync remote gist. delete local gist if remote gist was deleted.
|
26
|
+
gisty version show gisty version
|
27
|
+
gisty help show help
|
28
|
+
EOS
|
29
|
+
end
|
30
|
+
|
31
|
+
cmd :list do
|
32
|
+
@g.list.each do |i|
|
33
|
+
puts "#{i[0]}: #{i[1].join(' ')}"
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
cmd :sync do
|
38
|
+
@g.sync
|
39
|
+
puts '---'
|
40
|
+
puts 'sync finished.'
|
41
|
+
end
|
42
|
+
|
43
|
+
cmd :sync_delete do
|
44
|
+
@g.sync true
|
45
|
+
puts '---'
|
46
|
+
puts 'sync finished.'
|
47
|
+
end
|
48
|
+
|
49
|
+
cmd :post do |fs|
|
50
|
+
if fs.size > 0
|
51
|
+
begin
|
52
|
+
url = @g.create fs
|
53
|
+
rescue Exception => e
|
54
|
+
puts 'error.'
|
55
|
+
else
|
56
|
+
system "open #{url}"
|
57
|
+
id = url.split('/').last
|
58
|
+
@g.clone id
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
cmd :private_post do |fs|
|
64
|
+
if fs.size > 0
|
65
|
+
begin
|
66
|
+
url = @g.create fs, :private => true
|
67
|
+
rescue Exception => e
|
68
|
+
puts 'error.'
|
69
|
+
else
|
70
|
+
system "open #{url}"
|
71
|
+
id = url.split('/').last
|
72
|
+
@g.clone id
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
|
78
|
+
if ENV['GISTY_DIR']
|
79
|
+
@g = Gisty.new ENV['GISTY_DIR']
|
80
|
+
else
|
81
|
+
puts "error: please set ENV['GISTY_DIR']"
|
82
|
+
exit
|
83
|
+
end
|
84
|
+
|
85
|
+
if ARGV.size == 0
|
86
|
+
@cmds['help'].call []
|
87
|
+
else
|
88
|
+
c = @cmds[ARGV.first]
|
89
|
+
if c
|
90
|
+
c.call ARGV.last(ARGV.size - 1)
|
91
|
+
else
|
92
|
+
puts '...'
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
data/lib/gisty.rb
ADDED
@@ -0,0 +1,133 @@
|
|
1
|
+
require 'pathname'
|
2
|
+
require 'net/http'
|
3
|
+
require 'open-uri'
|
4
|
+
require 'rubygems'
|
5
|
+
require 'nokogiri'
|
6
|
+
|
7
|
+
class Gisty
|
8
|
+
VERSION = '0.0.3'
|
9
|
+
GIST_URL = 'http://gist.github.com/'
|
10
|
+
|
11
|
+
def self.extract_ids url
|
12
|
+
doc = Nokogiri::HTML open(url)
|
13
|
+
doc.css('.file .info a').map { |i| i['href'].sub('/', '') }
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.extract url
|
17
|
+
doc = Nokogiri::HTML open(url)
|
18
|
+
{
|
19
|
+
:id => url.split('/').last,
|
20
|
+
:author => doc.css('#owner a').inner_text,
|
21
|
+
:files => doc.css('.meta .info').map { |i| i.inner_text.strip },
|
22
|
+
:clone => doc.css('a[rel="#git-clone"]').inner_text,
|
23
|
+
}
|
24
|
+
end
|
25
|
+
|
26
|
+
def initialize path, login = nil, token = nil
|
27
|
+
@auth = (login && token) ? { :login => login, :token => token } : auth
|
28
|
+
@auth_query = "login=#{@auth[:login]}&token=#{@auth[:token]}"
|
29
|
+
@dir = Pathname.pwd.realpath.join path
|
30
|
+
FileUtils.mkdir_p @dir unless @dir.exist?
|
31
|
+
end
|
32
|
+
|
33
|
+
def page_num
|
34
|
+
url = GIST_URL + 'mine?' + @auth_query
|
35
|
+
doc = Nokogiri::HTML open(url)
|
36
|
+
as = doc.css('.pagination a')
|
37
|
+
(as.size < 2) ? 1 : as[as.size - 2].inner_text.to_i
|
38
|
+
end
|
39
|
+
|
40
|
+
def page_urls
|
41
|
+
Array.new(page_num) { |i| GIST_URL + "mine?page=#{i + 1}&#{@auth_query}" }
|
42
|
+
end
|
43
|
+
|
44
|
+
def remote_ids
|
45
|
+
page_urls.map { |u| Gisty.extract_ids u }.flatten.uniq.sort
|
46
|
+
end
|
47
|
+
|
48
|
+
def clone id
|
49
|
+
FileUtils.cd @dir do
|
50
|
+
c = "git clone git@gist.github.com:#{id}.git"
|
51
|
+
Kernel.system c
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
def list
|
56
|
+
dirs = Pathname.glob(@dir.to_s + '/*')
|
57
|
+
dirs.map do |i|
|
58
|
+
[i.basename.to_s,
|
59
|
+
Pathname.glob(i.to_s + '/*').map { |i| i.basename.to_s }]
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
def local_ids
|
64
|
+
dirs = Pathname.glob(@dir.to_s + '/*')
|
65
|
+
dirs.map { |i| i.basename.to_s }
|
66
|
+
end
|
67
|
+
|
68
|
+
def delete id
|
69
|
+
FileUtils.rm_rf @dir.join(id) if @dir.join(id).exist?
|
70
|
+
end
|
71
|
+
|
72
|
+
def sync delete = false
|
73
|
+
remote = remote_ids
|
74
|
+
local = local_ids
|
75
|
+
|
76
|
+
if delete
|
77
|
+
(local - remote).each do |id|
|
78
|
+
# puts "delete #{id}"
|
79
|
+
delete id
|
80
|
+
end
|
81
|
+
ids = remote
|
82
|
+
else
|
83
|
+
ids = (remote + local).uniq
|
84
|
+
end
|
85
|
+
|
86
|
+
FileUtils.cd @dir do
|
87
|
+
ids.each do |id|
|
88
|
+
if File.exist? id
|
89
|
+
FileUtils.cd id do
|
90
|
+
c = "git pull"
|
91
|
+
Kernel.system c
|
92
|
+
end
|
93
|
+
else
|
94
|
+
c = "git clone git@gist.github.com:#{id}.git"
|
95
|
+
Kernel.system c
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
def auth
|
102
|
+
user = `git config --global github.user`.strip
|
103
|
+
token = `git config --global github.token`.strip
|
104
|
+
user.empty? ? {} : { :login => user, :token => token }
|
105
|
+
end
|
106
|
+
|
107
|
+
def post params
|
108
|
+
url = URI.parse('http://gist.github.com/gists')
|
109
|
+
req = Net::HTTP.post_form(url, params)
|
110
|
+
req['Location']
|
111
|
+
end
|
112
|
+
|
113
|
+
def build_params paths
|
114
|
+
list = (Array === paths ? paths : [paths]).map { |i| Pathname.new i }
|
115
|
+
raise 'file error' if list.any?{ |i| !i.file? }
|
116
|
+
|
117
|
+
params = {}
|
118
|
+
list.each_with_index do |i, index|
|
119
|
+
params["file_ext[gistfile#{index + 1}]"] = i.extname
|
120
|
+
params["file_name[gistfile#{index + 1}]"] = i.basename.to_s
|
121
|
+
params["file_contents[gistfile#{index + 1}]"] = IO.read(i)
|
122
|
+
end
|
123
|
+
params
|
124
|
+
end
|
125
|
+
|
126
|
+
def create paths, opt = { :private => false }
|
127
|
+
params = build_params paths
|
128
|
+
if opt[:private]
|
129
|
+
params['private'] = 'on'
|
130
|
+
end
|
131
|
+
post params.merge(auth)
|
132
|
+
end
|
133
|
+
end
|
data/test/fixtures/24835
ADDED
@@ -0,0 +1,241 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
|
4
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
5
|
+
<head>
|
6
|
+
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
|
7
|
+
|
8
|
+
<title>gist: 24835 — GitHub</title>
|
9
|
+
|
10
|
+
<link href="/stylesheets/facebox.css" media="screen" rel="stylesheet" type="text/css" />
|
11
|
+
<link href="/stylesheets/gist/screen.css" media="screen" rel="stylesheet" type="text/css" />
|
12
|
+
<link href="/stylesheets/pygment_trac.css" media="screen" rel="stylesheet" type="text/css" />
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
</head>
|
18
|
+
|
19
|
+
<body>
|
20
|
+
<div id="main">
|
21
|
+
<div id="header" class="">
|
22
|
+
<div class="site">
|
23
|
+
<div class="logo">
|
24
|
+
<a href="/"><img src="/images/modules/header/logo_gist.png" alt="git-hub" /></a>
|
25
|
+
</div>
|
26
|
+
|
27
|
+
<div class="actions">
|
28
|
+
<a href="/">New</a>
|
29
|
+
<a href="/gists">All Gists</a>
|
30
|
+
<a href="/login?return_to=gist">Login</a>
|
31
|
+
<a href="http://github.com/signup?return_to=gist">Signup for a GitHub Account</a>
|
32
|
+
</div>
|
33
|
+
|
34
|
+
</div>
|
35
|
+
</div>
|
36
|
+
|
37
|
+
<div class="site">
|
38
|
+
|
39
|
+
<div id="gist_data">
|
40
|
+
<div id="repos">
|
41
|
+
<div class="repo public">
|
42
|
+
<div class="title">
|
43
|
+
<div class="path">
|
44
|
+
gist: 24835
|
45
|
+
|
46
|
+
|
47
|
+
<a href="/gists/24835/download"><img alt="Download_button" border="0" class="button" src="/images/modules/repos/download_button.png?9eb59f95332165fee30c4fdb22748a8fe02eb123" /></a>
|
48
|
+
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
<a href="http://github.com/signup"><img alt="fork" class="button" src="/images/modules/repos/fork_button.png?9eb59f95332165fee30c4fdb22748a8fe02eb123" /></a>
|
53
|
+
|
54
|
+
</div>
|
55
|
+
|
56
|
+
|
57
|
+
<div class="security public_security" style="">
|
58
|
+
<a href="#public_repo" rel="facebox"><img src="/images/icons/public.png" alt="public" /></a>
|
59
|
+
</div>
|
60
|
+
|
61
|
+
|
62
|
+
<div id="private_repo" class="hidden">
|
63
|
+
This gist is private.
|
64
|
+
All pages are served over SSL and all pushing and pulling is done over SSH.
|
65
|
+
No one may fork, clone, or view it unless they are given this private URL.
|
66
|
+
<br/>
|
67
|
+
<br/>
|
68
|
+
Every gist with this icon (<img src="/images/icons/private.png" alt="private" />) is private.
|
69
|
+
</div>
|
70
|
+
<div class="security public_security" style="display:none">
|
71
|
+
<a href="#public_repo" rel="facebox"><img src="/images/icons/public.png" alt="public" /></a>
|
72
|
+
</div>
|
73
|
+
<div id="public_repo" class="hidden">
|
74
|
+
This gist is public.
|
75
|
+
Anyone may fork, clone, or view it.
|
76
|
+
<br/>
|
77
|
+
<br/>
|
78
|
+
Every repository with this icon (<img src="/images/icons/public.png" alt="public" />) is public.
|
79
|
+
</div>
|
80
|
+
</div>
|
81
|
+
|
82
|
+
<div class="meta">
|
83
|
+
<table>
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
<tr>
|
88
|
+
<td class="label">Public Clone URL:</td>
|
89
|
+
<td>
|
90
|
+
<a rel="#git-clone" class="git_url_facebox" href="git://gist.github.com/24835.git">git://gist.github.com/24835.git</a>
|
91
|
+
<div id="git-clone" style="display:none; min-width:500px">
|
92
|
+
Give this clone URL to anyone.
|
93
|
+
<br/>
|
94
|
+
|
95
|
+
<code>git clone git://gist.github.com/24835.git gist-24835</code>
|
96
|
+
</div>
|
97
|
+
</td>
|
98
|
+
</tr>
|
99
|
+
|
100
|
+
|
101
|
+
|
102
|
+
|
103
|
+
</table>
|
104
|
+
</div>
|
105
|
+
</div>
|
106
|
+
</div>
|
107
|
+
|
108
|
+
<div id="files">
|
109
|
+
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
|
114
|
+
<div class="file">
|
115
|
+
<div class="meta">
|
116
|
+
<div class="info">
|
117
|
+
<span>delicious_hide_do_not_share.user.css</span>
|
118
|
+
</div>
|
119
|
+
<div class="actions">
|
120
|
+
|
121
|
+
<div id="gist-embed" style="display:inline;">
|
122
|
+
<a href="#" id="gist-embed-link">embed</a>
|
123
|
+
<input id="gist-embed-box" type="text" size="25" value='<script src="http://gist.github.com/24835.js"></script>' style="display:none;"/>
|
124
|
+
</div>
|
125
|
+
|
126
|
+
<a href="/raw/24835/43a86b56175c85f452af3fca4ce0df0997ff3bc2">raw</a>
|
127
|
+
</div>
|
128
|
+
</div>
|
129
|
+
|
130
|
+
<div class="data syntax">
|
131
|
+
|
132
|
+
<table cellpadding="0" cellspacing="0">
|
133
|
+
<tr>
|
134
|
+
<td>
|
135
|
+
|
136
|
+
<pre class="line_numbers">
|
137
|
+
<span id="LID1" rel="#L1">1</span>
|
138
|
+
<span id="LID2" rel="#L2">2</span>
|
139
|
+
<span id="LID3" rel="#L3">3</span>
|
140
|
+
<span id="LID4" rel="#L4">4</span>
|
141
|
+
<span id="LID5" rel="#L5">5</span>
|
142
|
+
<span id="LID6" rel="#L6">6</span>
|
143
|
+
<span id="LID7" rel="#L7">7</span>
|
144
|
+
</pre>
|
145
|
+
</td>
|
146
|
+
<td width="100%">
|
147
|
+
|
148
|
+
|
149
|
+
<div class="highlight"><pre><div class="line" id="LC1"><span class="k">@namespace</span> <span class="nt">url</span><span class="o">(</span><span class="nt">http</span><span class="o">://</span><span class="nt">www</span><span class="nc">.w3.org</span><span class="o">/</span><span class="nt">1999</span><span class="o">/</span><span class="nt">xhtml</span><span class="o">)</span><span class="p">;</span></div><div class="line" id="LC2"> </div><div class="line" id="LC3"><span class="k">@-moz-document</span> <span class="nt">domain</span><span class="o">(</span><span class="s2">"delicious.com"</span><span class="o">)</span> <span class="p">{</span></div><div class="line" id="LC4"> <span class="nc">.share</span> <span class="p">{</span></div><div class="line" id="LC5"> <span class="k">display</span><span class="o">:</span> <span class="k">none</span> <span class="cp">!important</span><span class="p">;</span></div><div class="line" id="LC6"> <span class="p">}</span></div><div class="line" id="LC7"><span class="p">}</span></div></pre></div>
|
150
|
+
|
151
|
+
</td>
|
152
|
+
</tr>
|
153
|
+
</table>
|
154
|
+
|
155
|
+
</div>
|
156
|
+
|
157
|
+
|
158
|
+
</div>
|
159
|
+
|
160
|
+
|
161
|
+
|
162
|
+
<!-- cache end -->
|
163
|
+
|
164
|
+
|
165
|
+
|
166
|
+
</div>
|
167
|
+
</div> <!-- gist_data -->
|
168
|
+
|
169
|
+
<div id="gist_meta">
|
170
|
+
|
171
|
+
|
172
|
+
|
173
|
+
<div id="owner">
|
174
|
+
<h3>Owner</h3>
|
175
|
+
|
176
|
+
<a href="#"><a href="/swdyh">swdyh</a></a>
|
177
|
+
|
178
|
+
</div>
|
179
|
+
|
180
|
+
|
181
|
+
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
<div id="revisions">
|
187
|
+
<h3>Revisions</h3>
|
188
|
+
<ul>
|
189
|
+
|
190
|
+
|
191
|
+
|
192
|
+
<li class="current">
|
193
|
+
<img src="/images/modules/gist/dot_green.png" alt=""/><img src="/images/modules/gist/dot_green.png" alt=""/><img src="/images/modules/gist/dot_green.png" alt=""/><img src="/images/modules/gist/dot_green.png" alt=""/><img src="/images/modules/gist/dot_green.png" alt=""/><img src="/images/modules/gist/dot_green.png" alt=""/><img src="/images/modules/gist/dot_gray.png" alt=""/>
|
194
|
+
<a href="http://gist.github.com/24835/a48c0b23c8fe5fe879ba2c21f38deb1f224d43b4" class="id">a48c0b</a>
|
195
|
+
|
196
|
+
|
197
|
+
<a href="/swdyh" class="author">swdyh</a>
|
198
|
+
|
199
|
+
<span class="date"><abbr class="relatize" title="2008-11-14 01:20:54">Fri Nov 14 01:20:54 -0800 2008</abbr></span>
|
200
|
+
</li>
|
201
|
+
|
202
|
+
</ul>
|
203
|
+
</div>
|
204
|
+
|
205
|
+
</div> <!-- gist_meta -->
|
206
|
+
|
207
|
+
</div> <!-- site -->
|
208
|
+
|
209
|
+
<div class="push"></div>
|
210
|
+
|
211
|
+
</div>
|
212
|
+
|
213
|
+
<div id="footer">
|
214
|
+
<div class="site">
|
215
|
+
<div class="info">
|
216
|
+
<div style="float: left; margin-right: 2em; margin-top: -.6em;">
|
217
|
+
<a href="http://github.com/">
|
218
|
+
<img src="/images/modules/header/logo_white.png" alt="GitHub" />
|
219
|
+
</a>
|
220
|
+
</div>
|
221
|
+
<div class="links" style="float: left; width: 18em;">
|
222
|
+
<a href="http://github.com/blog"><strong>The Github Blog</strong></a> |
|
223
|
+
<a href="http://support.github.com/">Support</a> |
|
224
|
+
<a href="http://github.com/contact">Contact Us</a>
|
225
|
+
</div>
|
226
|
+
<div class="company">
|
227
|
+
<span id="_rrt" title="0.07346s from gist.github.com">It's</span>
|
228
|
+
<a href="http://logicalawesome.com/">Logical Awesome</a> | ©2008
|
229
|
+
</div>
|
230
|
+
</div>
|
231
|
+
<div class="sponsor">
|
232
|
+
<a href="http://engineyard.com">Hosting provided by</a>
|
233
|
+
<a href="http://engineyard.com">
|
234
|
+
<img src="/images/modules/footer/engine_yard_logo.gif" alt="Hosted by Engine Yard" />
|
235
|
+
</a>
|
236
|
+
</div>
|
237
|
+
|
238
|
+
</div>
|
239
|
+
</div>
|
240
|
+
</body>
|
241
|
+
</html>
|