gettext 1.4.0-mswin32 → 1.5.0-mswin32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. data/ChangeLog +46 -0
  2. data/NEWS +9 -0
  3. data/README +28 -25
  4. data/data/locale/cs/LC_MESSAGES/rails.mo +0 -0
  5. data/data/locale/cs/LC_MESSAGES/rgettext.mo +0 -0
  6. data/data/locale/de/LC_MESSAGES/rails.mo +0 -0
  7. data/data/locale/de/LC_MESSAGES/rgettext.mo +0 -0
  8. data/data/locale/el/LC_MESSAGES/rails.mo +0 -0
  9. data/data/locale/el/LC_MESSAGES/rgettext.mo +0 -0
  10. data/data/locale/es/LC_MESSAGES/rails.mo +0 -0
  11. data/data/locale/es/LC_MESSAGES/rgettext.mo +0 -0
  12. data/data/locale/fr/LC_MESSAGES/rails.mo +0 -0
  13. data/data/locale/fr/LC_MESSAGES/rgettext.mo +0 -0
  14. data/data/locale/it/LC_MESSAGES/rgettext.mo +0 -0
  15. data/data/locale/ja/LC_MESSAGES/rails.mo +0 -0
  16. data/data/locale/ja/LC_MESSAGES/rgettext.mo +0 -0
  17. data/data/locale/ko/LC_MESSAGES/rails.mo +0 -0
  18. data/data/locale/ko/LC_MESSAGES/rgettext.mo +0 -0
  19. data/data/locale/nl/LC_MESSAGES/rails.mo +0 -0
  20. data/data/locale/nl/LC_MESSAGES/rgettext.mo +0 -0
  21. data/data/locale/pt_BR/LC_MESSAGES/rails.mo +0 -0
  22. data/data/locale/pt_BR/LC_MESSAGES/rgettext.mo +0 -0
  23. data/data/locale/ru/LC_MESSAGES/rails.mo +0 -0
  24. data/data/locale/ru/LC_MESSAGES/rgettext.mo +0 -0
  25. data/data/locale/sv/LC_MESSAGES/rgettext.mo +0 -0
  26. data/ext/gettext/Makefile +178 -0
  27. data/ext/gettext/locale_system-i386-mswin32.def +2 -0
  28. data/ext/gettext/locale_system.exp +0 -0
  29. data/ext/gettext/locale_system.lib +0 -0
  30. data/ext/gettext/locale_system.obj +0 -0
  31. data/ext/gettext/locale_system.pdb +0 -0
  32. data/ext/gettext/locale_system.so +0 -0
  33. data/ext/gettext/mkmf.log +16 -0
  34. data/ext/gettext/vc70.pdb +0 -0
  35. data/lib/gettext/mo.rb +31 -10
  36. data/lib/gettext/parser/activerecord.rb +15 -4
  37. data/lib/gettext/poparser.rb +2 -2
  38. data/lib/gettext/rails.rb +14 -5
  39. data/lib/gettext/string.rb +6 -1
  40. data/lib/gettext/textdomain.rb +33 -4
  41. data/lib/gettext/version.rb +1 -1
  42. data/po/cs/rails.po +16 -16
  43. data/po/cs/rgettext.po +2 -2
  44. data/po/de/rails.po +16 -16
  45. data/po/de/rgettext.po +2 -2
  46. data/po/el/rails.po +16 -16
  47. data/po/el/rgettext.po +2 -2
  48. data/po/es/rails.po +16 -16
  49. data/po/es/rgettext.po +2 -2
  50. data/po/fr/rails.po +16 -16
  51. data/po/fr/rgettext.po +2 -2
  52. data/po/it/rgettext.po +2 -2
  53. data/po/ja/rails.po +16 -16
  54. data/po/ja/rgettext.po +2 -2
  55. data/po/ko/rails.po +16 -16
  56. data/po/ko/rgettext.po +2 -2
  57. data/po/nl/rails.po +16 -16
  58. data/po/nl/rgettext.po +2 -2
  59. data/po/pt_BR/rails.po +16 -16
  60. data/po/pt_BR/rgettext.po +2 -2
  61. data/po/rails.pot +16 -16
  62. data/po/rgettext.pot +2 -2
  63. data/po/ru/rails.po +82 -0
  64. data/po/ru/rgettext.po +103 -0
  65. data/po/sv/rgettext.po +2 -2
  66. data/samples/cgi/locale/ru/LC_MESSAGES/helloerb1.mo +0 -0
  67. data/samples/cgi/locale/ru/LC_MESSAGES/helloerb2.mo +0 -0
  68. data/samples/cgi/locale/ru/LC_MESSAGES/hellolib.mo +0 -0
  69. data/samples/cgi/locale/ru/LC_MESSAGES/main.mo +0 -0
  70. data/samples/cgi/po/ru/helloerb1.po +58 -0
  71. data/samples/cgi/po/ru/helloerb2.po +50 -0
  72. data/samples/cgi/po/ru/hellolib.po +22 -0
  73. data/samples/cgi/po/ru/main.po +82 -0
  74. data/samples/locale/ru/LC_MESSAGES/hello.mo +0 -0
  75. data/samples/locale/ru/LC_MESSAGES/hello2.mo +0 -0
  76. data/samples/locale/ru/LC_MESSAGES/hello_noop.mo +0 -0
  77. data/samples/locale/ru/LC_MESSAGES/hello_plural.mo +0 -0
  78. data/samples/locale/ru/LC_MESSAGES/helloglade2.mo +0 -0
  79. data/samples/locale/ru/LC_MESSAGES/hellogtk.mo +0 -0
  80. data/samples/locale/ru/LC_MESSAGES/hellotk.mo +0 -0
  81. data/samples/po/ru/hello.po +22 -0
  82. data/samples/po/ru/hello2.po +30 -0
  83. data/samples/po/ru/hello_noop.po +26 -0
  84. data/samples/po/ru/hello_plural.po +25 -0
  85. data/samples/po/ru/helloglade2.po +30 -0
  86. data/samples/po/ru/hellogtk.po +22 -0
  87. data/samples/po/ru/hellotk.po +22 -0
  88. data/samples/rails/locale/ru/LC_MESSAGES/blog.mo +0 -0
  89. data/samples/rails/locale/ru/LC_MESSAGES/gettext_plugin.mo +0 -0
  90. data/samples/rails/po/ru/blog.po +108 -0
  91. data/samples/rails/po/ru/gettext_plugin.po +26 -0
  92. data/test/gettext_test_locale.rb +1 -1
  93. data/test/gettext_test_rails.rb +1 -1
  94. metadata +781 -723
data/ChangeLog CHANGED
@@ -1,3 +1,49 @@
1
+ 2006-05-07 Masao Mutoh <mutoh@highway.ne.jp>
2
+
3
+ * lib/gettext/version.rb: Increment revision number.
4
+ * NEWS: Updated.
5
+
6
+ 2006-05-06 Masao Mutoh <mutoh@highway.ne.jp>
7
+
8
+ * lib/gettext/rails.rb: error_messages_for works same as
9
+ actionpack-1.12.1 when nil or symbol are given as @object_name.
10
+ By arton.
11
+ * test/gettext_test_rails.rb: Works again.
12
+
13
+ 2006-05-05 Masao Mutoh <mutoh@highway.ne.jp>
14
+
15
+ * lib/gettext/parser/activerecord.rb: Fixed again.
16
+
17
+ 2006-05-04 Masao Mutoh <mutoh@highway.ne.jp>
18
+
19
+ * lib/gettext/parser/activerecord.rb: Fixed "duplicate message definition"
20
+ error in rake updatepo task using ActiveRecord::Base.set_table_name.
21
+ Reported by Karel Miarka.
22
+
23
+ 2006-05-02 Masao Mutoh <mutoh@highway.ne.jp>
24
+
25
+ * lib/gettext/rails.rb: Fixed an abort when Rails::Info isn't
26
+ required like as Typo. Reported by Masayoshi Takahashi.
27
+
28
+ 2006-04-30 Masao Mutoh <mutoh@highway.ne.jp>
29
+
30
+ * lib/gettext/textdomain.rb: Added GetText::TextDomain#check_mo=,
31
+ #check_mo?. When the value is true, check the MOFile and if it's
32
+ updated, reload MOFile again. This is usefule for development
33
+ time.
34
+ * lib/gettext/rails.rb: When development mode, check mo files
35
+ and reload it if it's updated.
36
+ * lib/gettext/mo.rb: Added MOFile#update!.
37
+ * lib/gettext/string.rb: String#% doesn't raise ArgumentError
38
+ when execute ruby with -d option.
39
+
40
+ 2006-04-21 Masao Mutoh <mutoh@highway.ne.jp>
41
+
42
+ * samples/po/ru/*.po, samples/cgi/po/ru/*.po,
43
+ samples/rails/po/ru/*.po, po/rgettext.po,
44
+ rails.po: Added Russian locale by Yuri Kozlov.
45
+ * README: Revised.
46
+
1
47
  2006-04-15 Masao Mutoh <mutoh@highway.ne.jp>
2
48
 
3
49
  * NEWS: Updated.
data/NEWS CHANGED
@@ -1,3 +1,12 @@
1
+ = Ruby-GetText-Package-1.5.0 (2006-05-07)
2
+
3
+ * Support Russian.
4
+ * Fix bugs.
5
+ * Refresh mo option was added.
6
+ Check mo files and reload it if it's updated.
7
+ ruby -d or GetText::TextDomain#check_mo=(true).
8
+ Or development mode in Ruby on Rails.
9
+
1
10
  = Ruby-GetText-Package-1.4.0 (2006-04-15)
2
11
 
3
12
  * Support OpenBSD.
data/README CHANGED
@@ -101,34 +101,37 @@ License
101
101
 
102
102
  Translators
103
103
  -----------
104
- Czech - Karel Miarka <kajism at yahoo.com>
105
- Dutch - Menno Jonkers <ruby-gettext at jonkers.com>
106
- French - Laurent Sansonetti <laurent.sansonetti at gmail.com>
107
- German - Detlef Reichl <detlef.reichl at gmx.org>
108
- Sven Herzberg <herzi at abi02.de>
109
- Sascha Ebach <se at digitale-wertschoepfung.de>
110
- Greek - Damphyr <damphyr at gmx.net>
111
- Italian - Gabriele Renzi <surrender_it at yahoo.it>
112
- Japanese - Masao Mutoh <mutoh at highway.ne.jp>
113
- Korean - Gyoung-Yoon Noh <nohmad at gmail.com>
114
- Portuguese(Brazil) - Joao Pedrosa <joaopedrosa at gmail.com>
115
- Spanish - David Espada <davinci at escomposlinux.org> (current)
116
- David Moreno Garza <damog at damog.net>
117
- Swedish - Nikolai Weibull <mailing-lists.ruby-talk at rawuncut.elitemail.org>
104
+ Czech(cs) - Karel Miarka <kajism at yahoo.com>
105
+ Dutch(nl) - Menno Jonkers <ruby-gettext at jonkers.com>
106
+ French(fr) - Laurent Sansonetti <laurent.sansonetti at gmail.com>
107
+ German(de) - Detlef Reichl <detlef.reichl at gmx.org>
108
+ Sven Herzberg <herzi at abi02.de>
109
+ Sascha Ebach <se at digitale-wertschoepfung.de>
110
+ Greek(el) - Damphyr <damphyr at gmx.net>
111
+ Italian(it) - Gabriele Renzi <surrender_it at yahoo.it>
112
+ Japanese(ja) - Masao Mutoh <mutoh at highway.ne.jp>
113
+ Korean(ko) - Gyoung-Yoon Noh <nohmad at gmail.com>
114
+ Portuguese(Brazil)(pt_BR) - Joao Pedrosa <joaopedrosa at gmail.com>
115
+ Russian(ru) - Yuri Kozlov <kozlov.y at gmail.com>
116
+ Spanish(es) - David Espada <davinci at escomposlinux.org> (current)
117
+ David Moreno Garza <damog at damog.net>
118
+ Swedish(sv) - Nikolai Weibull <mailing-lists.ruby-talk at rawuncut.elitemail.org>
118
119
 
119
120
  Status of translations
120
121
  ----------------------
121
- cs - 1.4.0
122
- fr - 1.4.0
123
- de - 1.4.0
124
- el - 1.4.0
125
- es - 1.4.0
126
- it - 1.0.0 (old)
127
- ja - 1.4.0
128
- ko - 1.4.0
129
- nl - 1.4.0
130
- pt_BR - 1.4.0
131
- sv - 0.8.0 (old)
122
+ Czech(cs) - 1.5.0
123
+ Dutch(nl) - 1.5.0
124
+ English(default) - 1.5.0
125
+ French(fr) - 1.5.0
126
+ German(de) - 1.5.0
127
+ Greek(el) - 1.5.0
128
+ Spanish(es) - 1.5.0
129
+ Italian(it) - 1.0.0 (old)
130
+ Japanese(ja) - 1.5.0
131
+ Korean(ko) - 1.5.0
132
+ Portuguese(Brazil)(pt_BR) - 1.5.0
133
+ Russian(ru) - 1.5.0
134
+ Swedish(sv) - 0.8.0 (old)
132
135
 
133
136
  Maintainer
134
137
  ----------
@@ -0,0 +1,178 @@
1
+
2
+ SHELL = /bin/sh
3
+
4
+ #### Start of system configuration section. ####
5
+
6
+ srcdir = .
7
+ topdir = e:/ruby/lib/ruby/1.8/i386-mswin32
8
+ hdrdir = $(topdir)
9
+ VPATH = $(srcdir);$(topdir);$(hdrdir)
10
+
11
+ DESTDIR = e:
12
+ prefix = $(DESTDIR)/ruby
13
+ exec_prefix = $(prefix)
14
+ sitedir = $(prefix)/lib/ruby/site_ruby
15
+ rubylibdir = $(libdir)/ruby/$(ruby_version)
16
+ top_srcdir = $(DESTDIR)/develop/win/ruby/ruby-1.8.4
17
+ archdir = $(rubylibdir)/$(arch)
18
+ sbindir = $(exec_prefix)/sbin
19
+ datadir = $(prefix)/share
20
+ includedir = $(prefix)/include
21
+ infodir = $(prefix)/info
22
+ sysconfdir = $(prefix)/etc
23
+ mandir = $(prefix)/man
24
+ libdir = $(exec_prefix)/lib
25
+ sharedstatedir = $(DESTDIR)/etc
26
+ oldincludedir = $(DESTDIR)/usr/include
27
+ sitearchdir = $(sitelibdir)/$(sitearch)
28
+ localstatedir = $(DESTDIR)/var
29
+ bindir = $(exec_prefix)/bin
30
+ sitelibdir = $(sitedir)/$(ruby_version)
31
+ libexecdir = $(exec_prefix)/libexec
32
+
33
+ CC = cl -nologo
34
+ LIBRUBY = $(RUBY_SO_NAME).lib
35
+ LIBRUBY_A = $(RUBY_SO_NAME)-static.lib
36
+ LIBRUBYARG_SHARED = $(LIBRUBY)
37
+ LIBRUBYARG_STATIC = $(LIBRUBY_A)
38
+
39
+ CFLAGS = -MD -Zi -O2b2xg- -G6
40
+ CPPFLAGS = -I. -I$(topdir) -I$(hdrdir) -I$(srcdir) -DHAVE_WINDOWS_H
41
+ CXXFLAGS = $(CFLAGS)
42
+ DLDFLAGS = -link -incremental:no -debug -opt:ref -opt:icf -dll $(LIBPATH) -def:$(DEFFILE) -implib:$(*F:.so=)-$(arch).lib -pdb:$(*F:.so=)-$(arch).pdb
43
+ LDSHARED = cl -nologo -LD
44
+ AR = lib -nologo
45
+ EXEEXT = .exe
46
+
47
+ RUBY_INSTALL_NAME = ruby
48
+ RUBY_SO_NAME = msvcrt-ruby18
49
+ arch = i386-mswin32
50
+ sitearch = i386-msvcrt
51
+ ruby_version = 1.8
52
+ ruby = e:/ruby/bin/ruby
53
+ RUBY = $(ruby:/=\)
54
+ RM = $(RUBY) -run -e rm -- -f
55
+ MAKEDIRS = @$(RUBY) -run -e mkdir -- -p
56
+ INSTALL = copy > nul
57
+ INSTALL_PROG = $(INSTALL)
58
+ INSTALL_DATA = $(INSTALL)
59
+ COPY = copy > nul
60
+
61
+ #### End of system configuration section. ####
62
+
63
+ preload =
64
+
65
+ libpath = $(libdir)
66
+ LIBPATH = -libpath:"$(libdir)"
67
+ DEFFILE = $(TARGET)-$(arch).def
68
+
69
+ CLEANFILES =
70
+ DISTCLEANFILES = vc*.pdb $(DEFFILE)
71
+
72
+ extout =
73
+ extout_prefix =
74
+ target_prefix =
75
+ LOCAL_LIBS =
76
+ LIBS = $(LIBRUBYARG_SHARED) oldnames.lib user32.lib advapi32.lib wsock32.lib
77
+ SRCS = locale_system.c
78
+ OBJS = locale_system.obj
79
+ TARGET = locale_system
80
+ DLLIB = $(TARGET).so
81
+ STATIC_LIB =
82
+
83
+ RUBYCOMMONDIR = $(sitedir)$(target_prefix)
84
+ RUBYLIBDIR = $(sitelibdir)$(target_prefix)
85
+ RUBYARCHDIR = $(sitearchdir)$(target_prefix)
86
+
87
+ TARGET_SO = $(DLLIB)
88
+ CLEANLIBS = $(TARGET).so $(TARGET).il? $(TARGET).tds $(TARGET).map
89
+ CLEANOBJS = *.obj *.lib *.s[ol] *.pdb *.exp *.bak
90
+
91
+ all: $(DLLIB)
92
+ static: $(STATIC_LIB)
93
+
94
+ clean:
95
+ @-$(RM) $(CLEANLIBS:/=\) $(CLEANOBJS:/=\) $(CLEANFILES:/=\)
96
+
97
+ distclean: clean
98
+ @-$(RM) Makefile extconf.h conftest.* mkmf.log
99
+ @-$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES:/=\)
100
+
101
+ realclean: distclean
102
+ install: install-so install-rb
103
+
104
+ install-so: $(RUBYARCHDIR)
105
+ install-so: $(RUBYARCHDIR)/$(DLLIB)
106
+ $(RUBYARCHDIR)/$(DLLIB): $(DLLIB)
107
+ $(INSTALL_PROG) $(DLLIB:/=\) $(RUBYARCHDIR:/=\)
108
+ install-rb: pre-install-rb install-rb-default
109
+ install-rb-default: pre-install-rb-default
110
+ pre-install-rb: Makefile
111
+ pre-install-rb-default: Makefile
112
+ $(RUBYARCHDIR):
113
+ $(MAKEDIRS) $@
114
+
115
+ site-install: site-install-so site-install-rb
116
+ site-install-so: install-so
117
+ site-install-rb: install-rb
118
+
119
+ .SUFFIXES: .c .m .cc .cxx .cpp .obj
120
+
121
+ {$(srcdir)}.cc{}.obj:
122
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
123
+
124
+ {$(topdir)}.cc{}.obj:
125
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
126
+
127
+ {$(hdrdir)}.cc{}.obj:
128
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
129
+
130
+ .cc.obj:
131
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
132
+
133
+ {$(srcdir)}.cxx{}.obj:
134
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
135
+
136
+ {$(topdir)}.cxx{}.obj:
137
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
138
+
139
+ {$(hdrdir)}.cxx{}.obj:
140
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
141
+
142
+ .cxx.obj:
143
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
144
+
145
+ {$(srcdir)}.cpp{}.obj:
146
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
147
+
148
+ {$(topdir)}.cpp{}.obj:
149
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
150
+
151
+ {$(hdrdir)}.cpp{}.obj:
152
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
153
+
154
+ .cpp.obj:
155
+ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -Tp$(<:\=/)
156
+
157
+ {$(srcdir)}.c{}.obj:
158
+ $(CC) $(CFLAGS) $(CPPFLAGS) -c -Tc$(<:\=/)
159
+
160
+ {$(topdir)}.c{}.obj:
161
+ $(CC) $(CFLAGS) $(CPPFLAGS) -c -Tc$(<:\=/)
162
+
163
+ {$(hdrdir)}.c{}.obj:
164
+ $(CC) $(CFLAGS) $(CPPFLAGS) -c -Tc$(<:\=/)
165
+
166
+ .c.obj:
167
+ $(CC) $(CFLAGS) $(CPPFLAGS) -c -Tc$(<:\=/)
168
+
169
+ $(DLLIB): $(DEFFILE) $(OBJS)
170
+ @-$(RM) $@
171
+ $(LDSHARED) -Fe$(@) $(OBJS) $(LIBS) $(LOCAL_LIBS) $(DLDFLAGS)
172
+
173
+
174
+
175
+ $(DEFFILE):
176
+ $(RUBY) -e "puts 'EXPORTS', 'Init_$(TARGET)'" > $@
177
+
178
+ $(OBJS): {.;$(srcdir);$(topdir);$(hdrdir)}ruby.h {.;$(srcdir);$(topdir);$(hdrdir)}defines.h
@@ -0,0 +1,2 @@
1
+ EXPORTS
2
+ Init_locale_system
@@ -0,0 +1,16 @@
1
+ have_header: checking for windows.h... -------------------- yes
2
+
3
+ "cl -I. -Ie:/ruby/lib/ruby/1.8/i386-mswin32 -MD -Zi -O2b2xg- -G6 conftest.c -P"
4
+ Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 14.00.50727.42 for 80x86
5
+ Copyright (C) Microsoft Corporation. All rights reserved.
6
+
7
+ cl : Command line warning D9035 : option 'Og-' has been deprecated and will be removed in a future release
8
+ cl : Command line warning D9002 : ignoring unknown option '-G6'
9
+ conftest.c
10
+ checked program was:
11
+ /* begin */
12
+ #include <windows.h>
13
+ /* end */
14
+
15
+ --------------------
16
+
Binary file
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  mo.rb - A simple class for operating GNU MO file.
3
3
 
4
- Copyright (C) 2003-2005 Masao Mutoh
4
+ Copyright (C) 2003-2006 Masao Mutoh
5
5
  Copyright (C) 2002 Masahiro Sakai, Masao Mutoh
6
6
  Copyright (C) 2001 Masahiro Sakai
7
7
 
@@ -12,7 +12,7 @@
12
12
  of Ruby. License of Ruby is included with Ruby distribution in
13
13
  the file "README".
14
14
 
15
- $Id: mo.rb,v 1.3 2006/02/23 14:53:59 mutoh Exp $
15
+ $Id: mo.rb,v 1.4 2006/04/29 17:17:15 mutoh Exp $
16
16
  =end
17
17
 
18
18
  require 'gettext/iconv'
@@ -33,21 +33,42 @@ class MOFile < Hash #:nodoc:
33
33
 
34
34
  def self.open(arg = nil, output_charset = nil)
35
35
  result = self.new(output_charset)
36
- case arg
37
- when String
38
- result.load_from_file(arg)
39
- when IO
40
- result.load_from_stream(arg)
41
- end
42
- result
36
+ result.load(arg)
43
37
  end
44
38
 
45
39
  def initialize(output_charset = nil)
40
+ @filename = nil
41
+ @last_modified = Time.now
46
42
  @little_endian = true
47
43
  @output_charset = output_charset
48
44
  super()
49
45
  end
50
46
 
47
+ def update!
48
+ if FileTest.exist?(@filename)
49
+ load (@filename) unless (@last_modified == File.ctime(@filename))
50
+ else
51
+ puts "#{@filename} was lost." if $DEBUG
52
+ clear
53
+ end
54
+ self
55
+ end
56
+
57
+ def load(arg)
58
+ case arg
59
+ when String
60
+ begin
61
+ @last_modified = File.ctime(arg)
62
+ rescue Exception
63
+ end
64
+ load_from_file(arg)
65
+ when IO
66
+ load_from_stream(arg)
67
+ end
68
+ @filename = arg
69
+ self
70
+ end
71
+
51
72
  def load_from_stream(io)
52
73
  magic = io.read(4)
53
74
  case magic
@@ -238,7 +259,7 @@ class MOFile < Hash #:nodoc:
238
259
  end
239
260
 
240
261
 
241
- attr_accessor :little_endian
262
+ attr_accessor :little_endian, :path, :last_modified
242
263
  attr_reader :charset, :nplurals, :plural
243
264
  end
244
265