win32ole-pp 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,8 @@
1
+ == 1.2.0 / 2007-07/16
2
+
3
+ * ignore RuntimeError on #ole_obj_help and fallback to original #to_s.
4
+ * add '*' to pointer type.
5
+
1
6
  == 1.1.0 / 2007-02-25
2
7
 
3
8
  * minor bug fix.
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2007 MIYAMUKO Katsuyuki <mailto:miyamuko@gmail.com>
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,9 +1,15 @@
1
- CHANGELOG.txt
2
1
  History.txt
2
+ License.txt
3
3
  Manifest.txt
4
4
  README.txt
5
5
  Rakefile
6
+ examples/idl.rb
7
+ examples/oletype.rb
6
8
  examples/test.rb
9
+ helper/helper.rb
10
+ helper/rake.rb
11
+ helper/rake_sh_filter.rb
12
+ helper/util.rb
7
13
  lib/win32ole_pp.rb
8
14
  lib/win32ole_pp/extentions.rb
9
15
  lib/win32ole_pp/extentions/common.rb
@@ -17,6 +23,7 @@ lib/win32ole_pp/init.rb
17
23
  lib/win32ole_pp/pp.rb
18
24
  lib/win32ole_pp/to_s.rb
19
25
  lib/win32ole_pp/version.rb
26
+ scripts/rdoc_filter.rb
20
27
  setup.rb
21
28
  test/helper.rb
22
29
  test/test_version.rb
data/README.txt CHANGED
@@ -1,21 +1,12 @@
1
- == win32ole-pp
1
+ == win32ole-pp - Pretty Printer for WIN32OLE
2
2
 
3
- * Author: MIYAMUKO Katsuyuki <mailto:miyamuko@gmail.com>
4
- * Home URL: http://win32ole-pp.rubyforge.org
5
- * Project URL: http://rubyforge.org/projects/win32ole-pp
6
-
7
- === DESCRIPTION:
3
+ === DESCRIPTION
8
4
 
9
5
  win32ole-pp provides smart #to_s and pretty printer for WIN32OLE object.
10
6
 
11
7
  This library helps to develop/debug WIN32OLE applications.
12
8
 
13
- === FEATURES:
14
-
15
- * add WIN32OLE#pretty_print method for pp.
16
- * override WIN32OLE#to_s.
17
-
18
- === SYNOPSIS:
9
+ === SYNOPSIS
19
10
 
20
11
  require "pp"
21
12
  require "win32ole"
@@ -121,36 +112,26 @@ This library helps to develop/debug WIN32OLE applications.
121
112
  end
122
113
 
123
114
 
124
- === REQUIREMENTS:
115
+ === REQUIREMENTS
125
116
 
126
117
  * pp (standard library)
127
118
  * win32ole (standard library)
128
119
 
129
- === INSTALL:
120
+ === INSTALL
130
121
 
131
122
  gem install win32ole-pp
132
123
 
133
- === LICENSE:
134
-
135
- win32ole-pp is released under the MIT license.
124
+ === COPYRIGHT
136
125
 
137
126
  Copyright (c) 2007 MIYAMUKO Katsuyuki.
138
127
 
139
- Permission is hereby granted, free of charge, to any person obtaining
140
- a copy of this software and associated documentation files (the
141
- 'Software'), to deal in the Software without restriction, including
142
- without limitation the rights to use, copy, modify, merge, publish,
143
- distribute, sublicense, and/or sell copies of the Software, and to
144
- permit persons to whom the Software is furnished to do so, subject to
145
- the following conditions:
146
-
147
- The above copyright notice and this permission notice shall be
148
- included in all copies or substantial portions of the Software.
149
-
150
- THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
151
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
152
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
153
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
154
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
155
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
156
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
128
+ win32ole-pp is released under an MIT license.
129
+ See {License.txt}[link:files/License_txt.html] for full license.
130
+
131
+
132
+ === OTHER STUFF
133
+
134
+ Author:: MIYAMUKO Katsuyuki <mailto:miyamuko@gmail.com>
135
+ Home URL:: http://win32ole-pp.rubyforge.org
136
+ Project URL:: http://rubyforge.org/projects/win32ole-pp
137
+ Blog (Japanese):: {id:miyamuko}[http://d.hatena.ne.jp/miyamuko/]
data/Rakefile CHANGED
@@ -1,92 +1,157 @@
1
1
  # -*- ruby -*-
2
2
 
3
3
  require 'rubygems'
4
- require 'hoe'
4
+ require 'rake'
5
+ require 'rake/clean'
6
+ require 'rake/testtask'
7
+ require 'rake/packagetask'
8
+ require 'rake/gempackagetask'
9
+ require 'rake/rdoctask'
5
10
  require 'rake/contrib/rubyforgepublisher'
6
- require './lib/win32ole_pp/version.rb'
11
+ require 'fileutils'
12
+ require 'hoe'
7
13
 
14
+ require './lib/win32ole_pp/version.rb'
15
+ require 'helper/helper.rb'
8
16
 
17
+ AUTHOR = 'MIYAMUKO Katsuyuki' # can also be an array of Authors
18
+ EMAIL = "miyamuko@gmail.com"
19
+ GEM_NAME = 'win32ole-pp'
9
20
  RUBYFORGE_PROJECT = 'win32ole-pp'
10
-
11
- # command filter hack.
12
- $shell_command_filter = []
13
- alias sh_original sh
14
- def sh(*cmd, &block)
15
- cmd = $shell_command_filter.inject(cmd){|c,filter| filter.call(c) or c }
16
- sh_original(*cmd, &block)
17
- end
18
-
19
- # rake publish_docs SCP=pscp
20
- if ENV["SCP"] and ENV["SCP"] != "scp"
21
- $shell_command_filter << lambda {|cmd|
22
- cmd[0] = cmd[0].sub(/\Ascp/, ENV["SCP"]).sub(/-rq/, "-r") if cmd[0] =~ /\Ascp /
23
- cmd
24
- }
25
- end
26
-
27
- def remove_task(task_name)
28
- Rake.application.instance_eval {
29
- @tasks.delete(task_name.to_s)
30
- }
21
+ HOMEPATH = "http://#{RUBYFORGE_PROJECT}.rubyforge.org"
22
+ DOWNLOAD_PATH = "http://rubyforge.org/projects/#{RUBYFORGE_PROJECT}"
23
+ NEWS_FILE = "news.txt"
24
+
25
+ VERS = WIN32OLE_PP::VERSION::STRING
26
+ CLEAN.include ['**/.*.sw?', '*.gem', '.config', '**/.DS_Store', '**/.cache', NEWS_FILE]
27
+
28
+ @config_file = "~/.rubyforge/user-config.yml"
29
+ @config = nil
30
+ def rubyforge_username
31
+ unless @config
32
+ begin
33
+ @config = YAML.load(File.read(File.expand_path(@config_file)))
34
+ rescue
35
+ puts "ERROR: No rubyforge config file found: #{@config_file}"
36
+ puts "Run 'rubyforge setup' to prepare your env for access to Rubyforge"
37
+ exit
38
+ end
39
+ end
40
+ @rubyforge_username ||= @config["username"]
31
41
  end
32
42
 
33
- def with_temporary_rename(from, to)
34
- mv from, to
35
- yield
36
- ensure
37
- mv to, from
43
+ class Hoe
44
+ def extra_deps
45
+ @extra_deps.reject!{|x| Array(x).first == 'hoe' }
46
+ @extra_deps
47
+ end
38
48
  end
39
49
 
40
-
41
- Hoe.new(RUBYFORGE_PROJECT, WIN32OLE_PP::VERSION::STRING) do |p|
50
+ hoe = Hoe.new(RUBYFORGE_PROJECT, VERS) do |p|
42
51
  p.rubyforge_name = RUBYFORGE_PROJECT
43
- p.author = ["MIYAMUKO Katsuyuki"]
44
- p.email = "miyamuko@gmail.com"
45
- p.url = "http://win32ole-pp.rubyforge.org/"
52
+ p.author = [AUTHOR]
53
+ p.email = EMAIL
54
+ p.url = HOMEPATH
46
55
 
47
- p.summary = p.paragraphs_of('README.txt', 3..3)[0]
48
- p.description = p.paragraphs_of('README.txt', 3..4).join("\n\n")
56
+ p.summary = p.paragraphs_of('README.txt', 2..2)[0]
57
+ p.description = p.paragraphs_of('README.txt', 2..3).join("\n\n")
49
58
  p.changes = p.paragraphs_of('History.txt', 0..1).join("\n\n")
50
59
 
51
60
  p.need_zip = true
52
61
  p.need_tar = false
53
62
  end
54
63
 
64
+ desc 'Release the website and new gem version'
65
+ task :deploy => [:check_manifest!, :check_version, :publish_docs, :release]
66
+
67
+ task :check_manifest! => [:check_manifest] do
68
+ unless $?.success?
69
+ puts "----"
70
+ puts "Please update Manifest.txt."
71
+ exit 1
72
+ end
73
+ end
74
+
75
+ task :check_version do
76
+ unless ENV['VERSION']
77
+ puts 'Must pass a VERSION=x.y.z release version'
78
+ exit
79
+ end
80
+ unless ENV['VERSION'] == VERS
81
+ puts "Please update your version.rb to match the release version, currently #{VERS}"
82
+ exit
83
+ end
84
+ histver = File.read("History.txt")[/^== (\d+\.\d+\.\d+)/, 1]
85
+ unless ENV['VERSION'] == histver
86
+ puts "Please update your History.txt to match the release version, currently #{histver}"
87
+ exit
88
+ end
89
+ end
90
+
91
+ # remove HTML comment and so on.
92
+ task :docs do
93
+ ruby "scripts/rdoc_filter.rb doc/**/*.html"
94
+ end
95
+
55
96
 
56
97
  #
57
98
  # new task
58
99
  #
59
100
 
60
101
  desc 'Uninstall the gem package'
61
- task :uninstall_gem do
62
- sh "gem.bat uninstall #{RUBYFORGE_PROJECT}"
102
+ task_for_windows :uninstall_gem do
103
+ sh "gem.bat uninstall #{ENV['GEMOPTS']} #{GEM_NAME}"
63
104
  end
64
105
 
65
106
 
66
107
  #
67
- # overwrite hoe defined tasks for Windows
108
+ # overwrite hoe defined tasks.
68
109
  #
69
110
 
70
- remove_task(:install_gem)
71
- desc 'Install the package as a gem'
72
- task :install_gem => [:clean, :package] do
73
- sh "gem.bat install pkg/*.gem"
111
+ task_for_windows :install_gem do
112
+ sh "gem.bat install #{ENV['GEMOPTS']} pkg/*.gem"
74
113
  end
75
114
 
76
- remove_task(:ridocs)
77
- desc "Generate ri locally for testing"
78
- task :ridocs => :clean do
115
+ task_for_windows :ridocs do
79
116
  sh "rdoc.bat --ri -o ri ."
80
117
  end
81
118
 
82
- remove_task(:publish_docs)
83
- desc 'Publish RDoc to RubyForge'
84
- task :publish_docs => [:clean, :docs] do
85
- config = YAML.load(File.read(File.expand_path("~/.rubyforge/user-config.yml")))
119
+ task_for_windows :publish_docs do
86
120
  with_temporary_rename("doc", "html") {
87
- Rake::RubyForgePublisher.new(RUBYFORGE_PROJECT, config["username"]).upload
121
+ Rake::RubyForgePublisher.new(RUBYFORGE_PROJECT, rubyforge_username).upload
122
+ }
123
+ end
124
+
125
+ # rake publish_docs SCP=pscp
126
+ if ENV["SCP"] and ENV["SCP"] != "scp"
127
+ add_sh_filter_for(/\Ascp /) {|cmd|
128
+ cmd[0].sub!(/\Ascp/, ENV["SCP"])
129
+ cmd[0].sub!(/-rq/, "-r")
130
+ cmd
88
131
  }
89
132
  end
90
133
 
91
134
 
135
+ task :create_news do
136
+ subject, title, body, urls = hoe.announcement
137
+ open(NEWS_FILE, "w") do |w|
138
+ w.puts subject
139
+ w.puts "#{title}\n\n#{body}\n\n"
140
+ w.puts "--"
141
+ w.puts "Home URL: #{HOMEPATH}"
142
+ w.puts "Project URL: #{DOWNLOAD_PATH}"
143
+ end
144
+ puts File.read(NEWS_FILE)
145
+ end
146
+
147
+ override_task :post_news do
148
+ subject, body = File.read(NEWS_FILE).split(/\n/, 2)
149
+ require 'rubyforge'
150
+ rf = RubyForge.new
151
+ rf.login
152
+ rf.post_news(RUBYFORGE_PROJECT, subject, body)
153
+ puts "Posted to rubyforge `#{subject}'."
154
+ rm_f NEWS_FILE
155
+ end
156
+
92
157
  # vim: syntax=Ruby
@@ -0,0 +1,25 @@
1
+ require "pp"
2
+ require "win32ole"
3
+
4
+ $LOAD_PATH << File.join(File.dirname(__FILE__), "../lib")
5
+ require "win32ole_pp"
6
+
7
+ ignore = [
8
+ :AddRef,
9
+ :QueryInterface,
10
+ :Release,
11
+ :GetTypeInfoCount,
12
+ :GetTypeInfo,
13
+ :GetIDsOfNames,
14
+ :Invoke,
15
+ ]
16
+
17
+ progid = ARGV[0] || 'InternetExplorer.Application'
18
+ WIN32OLE.new(progid).ole_methods.reject{|e| ignore.include?(e.name.intern) }.each do |e|
19
+ print "["
20
+ print %Q{id(%d), helpstring("%s")} % [e.dispid, e.helpstring]
21
+ print ", %s" % [e.invoke_kind] if e.invoke_kind != "FUNC"
22
+ puts "]"
23
+ puts e.display_string
24
+ puts
25
+ end
@@ -0,0 +1,8 @@
1
+ require "pp"
2
+ require "win32ole"
3
+
4
+ $LOAD_PATH << File.join(File.dirname(__FILE__), "../lib")
5
+ require "win32ole_pp"
6
+
7
+ progid = ARGV[0] || 'InternetExplorer.Application'
8
+ pp WIN32OLE.new(progid).ole_obj_help
@@ -0,0 +1,3 @@
1
+ require "helper/util"
2
+ require "helper/rake"
3
+ require "helper/rake_sh_filter"
@@ -0,0 +1,58 @@
1
+ require "rubygems"
2
+ require "rake"
3
+
4
+ def tasks
5
+ Rake.application.instance_eval { @tasks }
6
+ end
7
+
8
+ def current_scope
9
+ Rake.application.instance_eval { @scope.last }
10
+ end
11
+
12
+ def task_defined?(task_name)
13
+ Rake::Task.task_defined?(task_name)
14
+ end
15
+
16
+ def remove_tasks(*task_names)
17
+ task_names.flatten.each do |task_name|
18
+ remove_task(task_name)
19
+ end
20
+ end
21
+
22
+ def remove_task(task_name)
23
+ tasks.delete(task_name.to_s)
24
+ end
25
+
26
+ def lookup_task(task_name)
27
+ Rake::Task[task_name] rescue nil
28
+ end
29
+
30
+ def rakecall(task_name)
31
+ lookup_task(task_name).invoke
32
+ end
33
+
34
+ def override_task(task_args, &block)
35
+ task_name, deps = Rake.application.resolve_args(task_args)
36
+ original = lookup_task(task_name)
37
+ orgproc = lambda {} # nop
38
+ if original
39
+ Rake.application.last_comment = original.comment
40
+ deps |= original.prerequisites
41
+ orgproc = lambda{ original.execute }
42
+ end
43
+
44
+ remove_task(task_name)
45
+ Rake::Task.define_task(task_name => deps) do |t|
46
+ block.call(t, orgproc)
47
+ end
48
+ end
49
+
50
+ def task_for_windows(task_args, &block)
51
+ override_task(task_args) do |t, org|
52
+ if windows?
53
+ block.call(t)
54
+ else
55
+ org.call
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,23 @@
1
+ module FileUtils
2
+ SHELL_COMMAND_FILTER = []
3
+
4
+ alias sh_original sh
5
+ def sh(*cmd, &block)
6
+ cmd = SHELL_COMMAND_FILTER.inject(cmd){|c,filter| filter.call(c) or c }
7
+ sh_original(*cmd, &block)
8
+ end
9
+
10
+ def add_sh_filter(&block)
11
+ SHELL_COMMAND_FILTER << block
12
+ end
13
+
14
+ def add_sh_filter_for(pattern, &block)
15
+ add_sh_filter {|cmd|
16
+ if cmd[0] =~ pattern
17
+ block.call(cmd)
18
+ else
19
+ cmd
20
+ end
21
+ }
22
+ end
23
+ end
@@ -0,0 +1,19 @@
1
+ def windows?
2
+ RUBY_PLATFORM =~ /win/
3
+ end
4
+
5
+ def with_temporary_rename(from, to)
6
+ mv from, to
7
+ yield
8
+ ensure
9
+ mv to, from
10
+ end
11
+
12
+ def has_dot?
13
+ if windows?
14
+ v = `dot -V 2>&1` rescue nil
15
+ v and v =~ /Graphviz/
16
+ else
17
+ `which dot` =~ /\/dot/
18
+ end
19
+ end
@@ -12,6 +12,14 @@ module WIN32OLE_PP
12
12
  "%s:0x%x" % [self.class, object_id << 1]
13
13
  end
14
14
  end
15
+
16
+ def type(type, type_detail)
17
+ if type_detail.include?("PTR")
18
+ "#{type}*"
19
+ else
20
+ type
21
+ end
22
+ end
15
23
  end
16
24
 
17
25
  module PrettyPrint
@@ -39,6 +47,8 @@ module WIN32OLE_PP
39
47
 
40
48
  def to_s_ext
41
49
  "#<%s>" % [address_banner(display_string)]
50
+ rescue
51
+ to_s_original
42
52
  end
43
53
  end
44
54
 
@@ -6,9 +6,9 @@ module WIN32OLE_PP
6
6
  include WIN32OLE_PP::Extentions::Common::InitializeHook
7
7
 
8
8
  def initialize_ext(ole, event = nil)
9
- @ole_class = ole.ole_obj_help.name
10
- @event = event
11
9
  initialize_original(ole, event)
10
+ @ole_class = ole.ole_obj_help.name rescue ole.to_s_original
11
+ @event = event
12
12
  end
13
13
  end
14
14
 
@@ -6,8 +6,12 @@ module WIN32OLE_PP
6
6
  include WIN32OLE_PP::Extentions::Common::ToStringBase
7
7
  include WIN32OLE_PP::Extentions::Common::ToStringHook
8
8
 
9
+ def display_type
10
+ type(return_type, return_type_detail)
11
+ end
12
+
9
13
  def display_string
10
- "%s %s(%s)" % [return_type, name, params.map{|e| e.display_string} * ', ']
14
+ "%s %s(%s)" % [display_type, name, params.map{|e| e.display_string} * ', ']
11
15
  end
12
16
  end
13
17
 
@@ -6,16 +6,22 @@ module WIN32OLE_PP
6
6
  include WIN32OLE_PP::Extentions::Common::ToStringBase
7
7
  include WIN32OLE_PP::Extentions::Common::ToStringHook
8
8
 
9
+ def display_type
10
+ type = type(ole_type, ole_type_detail)
11
+ end
12
+
13
+ def qualifier
14
+ k = %W(in out retval optional)
15
+ v = [input?, output?, retval?, optional?]
16
+ k.zip(v).select{|e| e[1]}.map{|e| e[0]}
17
+ end
18
+
9
19
  def display_string
10
- type = []
11
- type << "in" if input?
12
- type << "out" if output?
13
- type << "retval" if retval?
14
- type << "optional" if optional?
15
- if type.empty?
16
- "%s %s" % [ole_type, name]
20
+ q = qualifier
21
+ if q.empty?
22
+ "%s %s" % [display_type, name]
17
23
  else
18
- "[%s] %s %s" % [type * ", ", ole_type, name]
24
+ "[%s] %s %s" % [q * ", ", display_type, name]
19
25
  end
20
26
  end
21
27
  end
@@ -17,17 +17,17 @@ module WIN32OLE_PP
17
17
  PROPERTIES = [
18
18
  :name,
19
19
  :guid,
20
- :helpstring,
21
- :helpcontext,
22
- :helpfile,
23
- :major_version,
24
- :minor_version,
25
- :ole_methods,
26
20
  :ole_type,
27
21
  :typekind,
28
22
  :progid,
29
23
  :src_type,
30
24
  :visible?,
25
+ :major_version,
26
+ :minor_version,
27
+ :helpstring,
28
+ :helpcontext,
29
+ :helpfile,
30
+ :ole_methods,
31
31
  :variables,
32
32
  ]
33
33
 
@@ -1 +1,3 @@
1
+ require "win32ole_pp/extentions.rb"
2
+
1
3
  WIN32OLE_PP::include_extentions(:Initializer)
@@ -1,7 +1,7 @@
1
1
  module WIN32OLE_PP
2
2
  module VERSION
3
3
  MAJOR = 1
4
- MINOR = 1
4
+ MINOR = 2
5
5
  TINY = 0
6
6
 
7
7
  STRING = [MAJOR, MINOR, TINY].join('.')
@@ -0,0 +1,59 @@
1
+ class Filter
2
+
3
+ def initialize
4
+ @filter = []
5
+ end
6
+
7
+ def define_replace(regexp, replace, key)
8
+ @filter << [regexp, lambda { replace }, key]
9
+ end
10
+
11
+ def define_insert_before(tag, snippet, key)
12
+ @filter << [tag, lambda { snippet + tag }, key]
13
+ end
14
+
15
+ def define_insert_after(tag, snippet, key)
16
+ @filter << [tag, lambda { tag + snippet }, key]
17
+ end
18
+
19
+ def update!(file)
20
+ b = File.read(file)
21
+ a = @filter.inject(b) {|bb,subs|
22
+ re, sub, key = *subs
23
+ if key and bb =~ /#{Regexp.quote(key)}/
24
+ bb
25
+ else
26
+ bb.gsub(re, &sub)
27
+ end
28
+ }
29
+ if b != a
30
+ puts file
31
+ File.open(file, "w") {|w| w.puts a }
32
+ end
33
+ end
34
+
35
+ end
36
+
37
+ f = Filter.new
38
+ f.define_replace(/\A\s+/m, "", nil)
39
+ f.define_replace(/\s*<!--.*?-->\s*<html/m, "<html", nil)
40
+ f.define_insert_before("</body>", <<GOOGLE, '<div id="google-analytics">')
41
+
42
+ <!-- Google Analytics -->
43
+ <div id="google-analytics">
44
+ <script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
45
+ </script>
46
+ <script type="text/javascript">
47
+ _uacct = "UA-1161245-6";
48
+ urchinTracker();
49
+ </script>
50
+ </div>
51
+
52
+ GOOGLE
53
+
54
+ tag = %Q{\n<meta name="verify-v1" content="4xi61YK06FtgbbYoHU2oPltUGvJZLrQogTtv+vaPYTI=" />\n}
55
+ f.define_insert_after("<head>", tag, '<meta name="verify-v1"')
56
+
57
+ ARGV.each do |html|
58
+ f.update!(html)
59
+ end
@@ -18,9 +18,9 @@ class TestWin32oleMethod < Test::Unit::TestCase
18
18
  end
19
19
 
20
20
  def test_to_s
21
- assert_match(re("#<WIN32OLE_METHOD:0x14c73da: IDriveCollection Drives\\(\\)>"),
21
+ assert_match(re("#<WIN32OLE_METHOD:0x14c73da: IDriveCollection\\* Drives\\(\\)>"),
22
22
  @method_drives.to_s)
23
- assert_match(re("#<WIN32OLE_METHOD:0x14c72f4: IFolder CreateFolder\\(\\[in\\] BSTR Path\\)>"),
23
+ assert_match(re("#<WIN32OLE_METHOD:0x14c72f4: IFolder\\* CreateFolder\\(\\[in\\] BSTR Path\\)>"),
24
24
  @method_create_folder.to_s)
25
25
  assert_match(re("#<WIN32OLE_METHOD:0x14c6cd2: VOID DeleteFolder\\(\\[in\\] BSTR FolderSpec, \\[in, optional\\] BOOL Force\\)>"),
26
26
  @method_delete_folder.to_s)
@@ -23,17 +23,17 @@ class TestWin32oleType < Test::Unit::TestCase
23
23
  #<WIN32OLE_TYPE:0x14b6e2c: ScriptControlConstants
24
24
  name=.*?,
25
25
  guid=.*?,
26
- helpstring=.*?,
27
- helpcontext=.*?,
28
- helpfile=.*?,
29
- major_version=.*?,
30
- minor_version=.*?,
31
- ole_methods=.*?,
32
26
  ole_type=.*?,
33
27
  typekind=.*?,
34
28
  progid=.*?,
35
29
  src_type=.*?,
36
30
  visible\\?=.*?,
31
+ major_version=.*?,
32
+ minor_version=.*?,
33
+ helpstring=.*?,
34
+ helpcontext=.*?,
35
+ helpfile=.*?,
36
+ ole_methods=.*?,
37
37
  variables=
38
38
  \\[#<WIN32OLE_VARIABLE:0x14b69d6: GlobalModule
39
39
  name=.*?,
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
- rubygems_version: 0.9.0
2
+ rubygems_version: 0.9.4
3
3
  specification_version: 1
4
4
  name: win32ole-pp
5
5
  version: !ruby/object:Gem::Version
6
- version: 1.1.0
7
- date: 2007-02-25 00:00:00 +09:00
6
+ version: 1.2.0
7
+ date: 2007-07-16 00:00:00 +09:00
8
8
  summary: "win32ole-pp provides smart #to_s and pretty printer for WIN32OLE object."
9
9
  require_paths:
10
10
  - lib
11
11
  email: miyamuko@gmail.com
12
- homepage: http://win32ole-pp.rubyforge.org/
12
+ homepage: http://win32ole-pp.rubyforge.org
13
13
  rubyforge_project: win32ole-pp
14
14
  description: "win32ole-pp provides smart #to_s and pretty printer for WIN32OLE object. This library helps to develop/debug WIN32OLE applications."
15
15
  autorequire:
@@ -29,12 +29,18 @@ post_install_message:
29
29
  authors:
30
30
  - MIYAMUKO Katsuyuki
31
31
  files:
32
- - CHANGELOG.txt
33
32
  - History.txt
33
+ - License.txt
34
34
  - Manifest.txt
35
35
  - README.txt
36
36
  - Rakefile
37
+ - examples/idl.rb
38
+ - examples/oletype.rb
37
39
  - examples/test.rb
40
+ - helper/helper.rb
41
+ - helper/rake.rb
42
+ - helper/rake_sh_filter.rb
43
+ - helper/util.rb
38
44
  - lib/win32ole_pp.rb
39
45
  - lib/win32ole_pp/extentions.rb
40
46
  - lib/win32ole_pp/extentions/common.rb
@@ -48,6 +54,7 @@ files:
48
54
  - lib/win32ole_pp/pp.rb
49
55
  - lib/win32ole_pp/to_s.rb
50
56
  - lib/win32ole_pp/version.rb
57
+ - scripts/rdoc_filter.rb
51
58
  - setup.rb
52
59
  - test/helper.rb
53
60
  - test/test_version.rb
@@ -65,23 +72,19 @@ test_files:
65
72
  - test/test_win32ole_param.rb
66
73
  - test/test_win32ole_type.rb
67
74
  - test/test_win32ole_variable.rb
68
- rdoc_options: []
69
-
70
- extra_rdoc_files: []
71
-
75
+ rdoc_options:
76
+ - --main
77
+ - README.txt
78
+ extra_rdoc_files:
79
+ - History.txt
80
+ - License.txt
81
+ - Manifest.txt
82
+ - README.txt
72
83
  executables: []
73
84
 
74
85
  extensions: []
75
86
 
76
87
  requirements: []
77
88
 
78
- dependencies:
79
- - !ruby/object:Gem::Dependency
80
- name: hoe
81
- version_requirement:
82
- version_requirements: !ruby/object:Gem::Version::Requirement
83
- requirements:
84
- - - ">="
85
- - !ruby/object:Gem::Version
86
- version: 1.2.0
87
- version:
89
+ dependencies: []
90
+
@@ -1,14 +0,0 @@
1
- 2007-02-25 MIYAMUKO Katsuyuki
2
-
3
- * win32ole-pp 1.1.0 released!
4
-
5
- * extentions/win32ole_method.rb,
6
- extentions/win32ole_param.rb,
7
- extentions/win32ole_type.rb,
8
- extentions/win32ole_variable.rb (pretty_print): adjust property order.
9
-
10
- * extentions/common.rb (address_banner): fix wrong object address.
11
-
12
- 2007-02-12 MIYAMUKO Katsuyuki
13
-
14
- * win32ole-pp 1.0.0 released!