gettext 1.0.0
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/COPYING +55 -0
- data/COPYING.ja +51 -0
- data/ChangeLog +492 -0
- data/NEWS +99 -0
- data/README +112 -0
- data/README.ja +115 -0
- data/Rakefile +170 -0
- data/bin/rgettext +22 -0
- data/bin/rmsgfmt +22 -0
- data/data/locale/de/LC_MESSAGES/rgettext.mo +0 -0
- data/data/locale/de/LC_MESSAGES/rmsgfmt.mo +0 -0
- data/data/locale/es/LC_MESSAGES/rgettext.mo +0 -0
- data/data/locale/es/LC_MESSAGES/rmsgfmt.mo +0 -0
- data/data/locale/fr/LC_MESSAGES/rgettext.mo +0 -0
- data/data/locale/fr/LC_MESSAGES/rmsgfmt.mo +0 -0
- data/data/locale/it/LC_MESSAGES/rgettext.mo +0 -0
- data/data/locale/it/LC_MESSAGES/rmsgfmt.mo +0 -0
- data/data/locale/ja/LC_MESSAGES/rgettext.mo +0 -0
- data/data/locale/ja/LC_MESSAGES/rmsgfmt.mo +0 -0
- data/data/locale/ko/LC_MESSAGES/rgettext.mo +0 -0
- data/data/locale/ko/LC_MESSAGES/rmsgfmt.mo +0 -0
- data/data/locale/pt_BR/LC_MESSAGES/rgettext.mo +0 -0
- data/data/locale/pt_BR/LC_MESSAGES/rmsgfmt.mo +0 -0
- data/data/locale/sv/LC_MESSAGES/rgettext.mo +0 -0
- data/data/locale/sv/LC_MESSAGES/rmsgfmt.mo +0 -0
- data/ext/gettext/gettext/MANIFEST +3 -0
- data/ext/gettext/gettext/_locale.c +86 -0
- data/ext/gettext/gettext/extconf.rb +20 -0
- data/lib/gettext.rb +127 -0
- data/lib/gettext/cgi.rb +83 -0
- data/lib/gettext/container.rb +30 -0
- data/lib/gettext/erb.rb +28 -0
- data/lib/gettext/iconv.rb +80 -0
- data/lib/gettext/locale.rb +71 -0
- data/lib/gettext/locale_default.rb +35 -0
- data/lib/gettext/locale_table_win32.rb +192 -0
- data/lib/gettext/locale_win32.rb +35 -0
- data/lib/gettext/mo.rb +262 -0
- data/lib/gettext/parser/erb.rb +34 -0
- data/lib/gettext/parser/glade.rb +98 -0
- data/lib/gettext/parser/ruby.rb +211 -0
- data/lib/gettext/rails.rb +40 -0
- data/lib/gettext/rgettext.rb +181 -0
- data/lib/gettext/rmsgfmt.rb +363 -0
- data/lib/gettext/textdomain.rb +168 -0
- data/lib/gettext/version.rb +12 -0
- data/po/de/rgettext.po +49 -0
- data/po/de/rmsgfmt.po +45 -0
- data/po/es/rgettext.po +47 -0
- data/po/es/rmsgfmt.po +43 -0
- data/po/fr/rgettext.po +47 -0
- data/po/fr/rmsgfmt.po +43 -0
- data/po/it/rgettext.po +47 -0
- data/po/it/rmsgfmt.po +44 -0
- data/po/ja/rgettext.po +49 -0
- data/po/ja/rmsgfmt.po +43 -0
- data/po/ko/rgettext.po +46 -0
- data/po/ko/rmsgfmt.po +40 -0
- data/po/pt_BR/rgettext.po +47 -0
- data/po/pt_BR/rmsgfmt.po +42 -0
- data/po/rgettext.pot +45 -0
- data/po/rmsgfmt.pot +40 -0
- data/po/sv/rgettext.po +48 -0
- data/po/sv/rmsgfmt.po +43 -0
- data/post-setup.rb +12 -0
- data/pre-setup.rb +12 -0
- data/samples/README +20 -0
- data/samples/cgi/README +43 -0
- data/samples/cgi/Rakefile +9 -0
- data/samples/cgi/cookie.cgi +57 -0
- data/samples/cgi/gettext.css +116 -0
- data/samples/cgi/helloerb.rhtml +27 -0
- data/samples/cgi/helloerb1.cgi +47 -0
- data/samples/cgi/helloerb2.cgi +41 -0
- data/samples/cgi/hellolib.rb +21 -0
- data/samples/cgi/http.rb +54 -0
- data/samples/cgi/index.cgi +104 -0
- data/samples/cgi/locale/de/LC_MESSAGES/helloerb1.mo +0 -0
- data/samples/cgi/locale/de/LC_MESSAGES/helloerb2.mo +0 -0
- data/samples/cgi/locale/de/LC_MESSAGES/hellolib.mo +0 -0
- data/samples/cgi/locale/de/LC_MESSAGES/main.mo +0 -0
- data/samples/cgi/locale/es/LC_MESSAGES/helloerb1.mo +0 -0
- data/samples/cgi/locale/es/LC_MESSAGES/helloerb2.mo +0 -0
- data/samples/cgi/locale/es/LC_MESSAGES/hellolib.mo +0 -0
- data/samples/cgi/locale/es/LC_MESSAGES/main.mo +0 -0
- data/samples/cgi/locale/fr/LC_MESSAGES/helloerb1.mo +0 -0
- data/samples/cgi/locale/fr/LC_MESSAGES/helloerb2.mo +0 -0
- data/samples/cgi/locale/fr/LC_MESSAGES/hellolib.mo +0 -0
- data/samples/cgi/locale/fr/LC_MESSAGES/main.mo +0 -0
- data/samples/cgi/locale/it/LC_MESSAGES/helloerb1.mo +0 -0
- data/samples/cgi/locale/it/LC_MESSAGES/helloerb2.mo +0 -0
- data/samples/cgi/locale/it/LC_MESSAGES/hellolib.mo +0 -0
- data/samples/cgi/locale/it/LC_MESSAGES/main.mo +0 -0
- data/samples/cgi/locale/ja/LC_MESSAGES/helloerb1.mo +0 -0
- data/samples/cgi/locale/ja/LC_MESSAGES/helloerb2.mo +0 -0
- data/samples/cgi/locale/ja/LC_MESSAGES/hellolib.mo +0 -0
- data/samples/cgi/locale/ja/LC_MESSAGES/main.mo +0 -0
- data/samples/cgi/locale/ko/LC_MESSAGES/helloerb1.mo +0 -0
- data/samples/cgi/locale/ko/LC_MESSAGES/helloerb2.mo +0 -0
- data/samples/cgi/locale/ko/LC_MESSAGES/hellolib.mo +0 -0
- data/samples/cgi/locale/ko/LC_MESSAGES/main.mo +0 -0
- data/samples/cgi/other.rhtml +20 -0
- data/samples/cgi/po/de/helloerb1.po +60 -0
- data/samples/cgi/po/de/helloerb2.po +52 -0
- data/samples/cgi/po/de/hellolib.po +23 -0
- data/samples/cgi/po/de/main.po +76 -0
- data/samples/cgi/po/es/helloerb1.po +59 -0
- data/samples/cgi/po/es/helloerb2.po +50 -0
- data/samples/cgi/po/es/hellolib.po +22 -0
- data/samples/cgi/po/es/main.po +74 -0
- data/samples/cgi/po/fr/helloerb1.po +59 -0
- data/samples/cgi/po/fr/helloerb2.po +51 -0
- data/samples/cgi/po/fr/hellolib.po +22 -0
- data/samples/cgi/po/fr/main.po +75 -0
- data/samples/cgi/po/helloerb1.pot +60 -0
- data/samples/cgi/po/helloerb2.pot +52 -0
- data/samples/cgi/po/hellolib.pot +23 -0
- data/samples/cgi/po/it/helloerb1.po +61 -0
- data/samples/cgi/po/it/helloerb2.po +52 -0
- data/samples/cgi/po/it/hellolib.po +24 -0
- data/samples/cgi/po/it/main.po +76 -0
- data/samples/cgi/po/ja/helloerb1.po +59 -0
- data/samples/cgi/po/ja/helloerb2.po +52 -0
- data/samples/cgi/po/ja/hellolib.po +23 -0
- data/samples/cgi/po/ja/main.po +76 -0
- data/samples/cgi/po/ko/helloerb1.po +58 -0
- data/samples/cgi/po/ko/helloerb2.po +52 -0
- data/samples/cgi/po/ko/hellolib.po +22 -0
- data/samples/cgi/po/ko/main.po +74 -0
- data/samples/cgi/po/main.pot +76 -0
- data/samples/cgi/ruby.bat +4 -0
- data/samples/hello.rb +12 -0
- data/samples/hello2.rb +15 -0
- data/samples/hello_noop.rb +18 -0
- data/samples/hello_plural.rb +15 -0
- data/samples/hello_textdomain.rb +12 -0
- data/samples/helloglade2.glade +70 -0
- data/samples/helloglade2.rb +24 -0
- data/samples/hellogtk.rb +26 -0
- data/samples/hellogtk2.rb +28 -0
- data/samples/hellotk.rb +18 -0
- data/samples/locale/de/LC_MESSAGES/hello.mo +0 -0
- data/samples/locale/de/LC_MESSAGES/hello2.mo +0 -0
- data/samples/locale/de/LC_MESSAGES/hello_noop.mo +0 -0
- data/samples/locale/de/LC_MESSAGES/hello_plural.mo +0 -0
- data/samples/locale/de/LC_MESSAGES/helloglade2.mo +0 -0
- data/samples/locale/de/LC_MESSAGES/hellogtk.mo +0 -0
- data/samples/locale/de/LC_MESSAGES/hellotk.mo +0 -0
- data/samples/locale/es/LC_MESSAGES/hello.mo +0 -0
- data/samples/locale/es/LC_MESSAGES/hello2.mo +0 -0
- data/samples/locale/es/LC_MESSAGES/hello_noop.mo +0 -0
- data/samples/locale/es/LC_MESSAGES/hello_plural.mo +0 -0
- data/samples/locale/es/LC_MESSAGES/helloglade2.mo +0 -0
- data/samples/locale/es/LC_MESSAGES/hellogtk.mo +0 -0
- data/samples/locale/es/LC_MESSAGES/hellotk.mo +0 -0
- data/samples/locale/fr/LC_MESSAGES/hello.mo +0 -0
- data/samples/locale/fr/LC_MESSAGES/hello2.mo +0 -0
- data/samples/locale/fr/LC_MESSAGES/hello_noop.mo +0 -0
- data/samples/locale/fr/LC_MESSAGES/hello_plural.mo +0 -0
- data/samples/locale/fr/LC_MESSAGES/helloglade2.mo +0 -0
- data/samples/locale/fr/LC_MESSAGES/hellogtk.mo +0 -0
- data/samples/locale/fr/LC_MESSAGES/hellotk.mo +0 -0
- data/samples/locale/it/LC_MESSAGES/hello.mo +0 -0
- data/samples/locale/it/LC_MESSAGES/hello2.mo +0 -0
- data/samples/locale/it/LC_MESSAGES/hello_noop.mo +0 -0
- data/samples/locale/it/LC_MESSAGES/hello_plural.mo +0 -0
- data/samples/locale/it/LC_MESSAGES/helloglade2.mo +0 -0
- data/samples/locale/it/LC_MESSAGES/hellogtk.mo +0 -0
- data/samples/locale/it/LC_MESSAGES/hellotk.mo +0 -0
- data/samples/locale/ja/LC_MESSAGES/hello.mo +0 -0
- data/samples/locale/ja/LC_MESSAGES/hello2.mo +0 -0
- data/samples/locale/ja/LC_MESSAGES/hello_noop.mo +0 -0
- data/samples/locale/ja/LC_MESSAGES/hello_plural.mo +0 -0
- data/samples/locale/ja/LC_MESSAGES/helloglade2.mo +0 -0
- data/samples/locale/ja/LC_MESSAGES/hellogtk.mo +0 -0
- data/samples/locale/ja/LC_MESSAGES/hellotk.mo +0 -0
- data/samples/locale/ko/LC_MESSAGES/hello.mo +0 -0
- data/samples/locale/ko/LC_MESSAGES/hello2.mo +0 -0
- data/samples/locale/ko/LC_MESSAGES/hello_noop.mo +0 -0
- data/samples/locale/ko/LC_MESSAGES/hello_plural.mo +0 -0
- data/samples/locale/ko/LC_MESSAGES/helloglade2.mo +0 -0
- data/samples/locale/ko/LC_MESSAGES/hellogtk.mo +0 -0
- data/samples/locale/ko/LC_MESSAGES/hellotk.mo +0 -0
- data/samples/locale/pt_BR/LC_MESSAGES/hello.mo +0 -0
- data/samples/locale/pt_BR/LC_MESSAGES/hello2.mo +0 -0
- data/samples/locale/pt_BR/LC_MESSAGES/hello_noop.mo +0 -0
- data/samples/locale/pt_BR/LC_MESSAGES/hello_plural.mo +0 -0
- data/samples/locale/pt_BR/LC_MESSAGES/helloglade2.mo +0 -0
- data/samples/locale/pt_BR/LC_MESSAGES/hellogtk.mo +0 -0
- data/samples/locale/pt_BR/LC_MESSAGES/hellotk.mo +0 -0
- data/samples/locale/sv/LC_MESSAGES/hello.mo +0 -0
- data/samples/locale/sv/LC_MESSAGES/hello2.mo +0 -0
- data/samples/locale/sv/LC_MESSAGES/hello_noop.mo +0 -0
- data/samples/locale/sv/LC_MESSAGES/hello_plural.mo +0 -0
- data/samples/locale/sv/LC_MESSAGES/helloglade2.mo +0 -0
- data/samples/locale/sv/LC_MESSAGES/hellogtk.mo +0 -0
- data/samples/locale/sv/LC_MESSAGES/hellotk.mo +0 -0
- data/samples/makemo.rb +3 -0
- data/samples/po/de/hello.po +20 -0
- data/samples/po/de/hello2.po +28 -0
- data/samples/po/de/hello_noop.po +24 -0
- data/samples/po/de/hello_plural.po +22 -0
- data/samples/po/de/helloglade2.po +27 -0
- data/samples/po/de/hellogtk.po +20 -0
- data/samples/po/de/hellotk.po +20 -0
- data/samples/po/es/hello.po +21 -0
- data/samples/po/es/hello2.po +28 -0
- data/samples/po/es/hello_noop.po +24 -0
- data/samples/po/es/hello_plural.po +23 -0
- data/samples/po/es/helloglade2.po +28 -0
- data/samples/po/es/hellogtk.po +20 -0
- data/samples/po/es/hellotk.po +20 -0
- data/samples/po/fr/hello.po +18 -0
- data/samples/po/fr/hello2.po +26 -0
- data/samples/po/fr/hello_noop.po +22 -0
- data/samples/po/fr/hello_plural.po +21 -0
- data/samples/po/fr/helloglade2.po +27 -0
- data/samples/po/fr/hellogtk.po +18 -0
- data/samples/po/fr/hellotk.po +18 -0
- data/samples/po/hello.pot +20 -0
- data/samples/po/hello2.pot +28 -0
- data/samples/po/hello_noop.pot +24 -0
- data/samples/po/hello_plural.pot +22 -0
- data/samples/po/helloglade2.pot +27 -0
- data/samples/po/hellogtk.pot +20 -0
- data/samples/po/hellotk.pot +20 -0
- data/samples/po/it/hello.po +20 -0
- data/samples/po/it/hello2.po +28 -0
- data/samples/po/it/hello_noop.po +24 -0
- data/samples/po/it/hello_plural.po +24 -0
- data/samples/po/it/helloglade2.po +28 -0
- data/samples/po/it/hellogtk.po +21 -0
- data/samples/po/it/hellotk.po +21 -0
- data/samples/po/ja/hello.po +20 -0
- data/samples/po/ja/hello2.po +28 -0
- data/samples/po/ja/hello_noop.po +23 -0
- data/samples/po/ja/hello_plural.po +22 -0
- data/samples/po/ja/helloglade2.po +26 -0
- data/samples/po/ja/hellogtk.po +19 -0
- data/samples/po/ja/hellotk.po +19 -0
- data/samples/po/ko/hello.po +19 -0
- data/samples/po/ko/hello2.po +27 -0
- data/samples/po/ko/hello_noop.po +23 -0
- data/samples/po/ko/hello_plural.po +23 -0
- data/samples/po/ko/helloglade2.po +29 -0
- data/samples/po/ko/hellogtk.po +19 -0
- data/samples/po/ko/hellotk.po +20 -0
- data/samples/po/pt_BR/hello.po +20 -0
- data/samples/po/pt_BR/hello2.po +28 -0
- data/samples/po/pt_BR/hello_noop.po +24 -0
- data/samples/po/pt_BR/hello_plural.po +23 -0
- data/samples/po/pt_BR/helloglade2.po +28 -0
- data/samples/po/pt_BR/hellogtk.po +20 -0
- data/samples/po/pt_BR/hellotk.po +20 -0
- data/samples/po/sv/hello.po +20 -0
- data/samples/po/sv/hello2.po +28 -0
- data/samples/po/sv/hello_noop.po +24 -0
- data/samples/po/sv/hello_plural.po +23 -0
- data/samples/po/sv/helloglade2.po +28 -0
- data/samples/po/sv/hellogtk.po +20 -0
- data/samples/po/sv/hellotk.po +20 -0
- data/samples/rails/README +79 -0
- data/samples/rails/Rakefile +212 -0
- data/samples/rails/app/controllers/application.rb +37 -0
- data/samples/rails/app/controllers/blog_controller.rb +62 -0
- data/samples/rails/app/helpers/application_helper.rb +3 -0
- data/samples/rails/app/helpers/blog_helper.rb +61 -0
- data/samples/rails/app/models/article.rb +2 -0
- data/samples/rails/app/views/blog/_form.rhtml +25 -0
- data/samples/rails/app/views/blog/edit.rhtml +22 -0
- data/samples/rails/app/views/blog/list.rhtml +30 -0
- data/samples/rails/app/views/blog/new.rhtml +21 -0
- data/samples/rails/app/views/blog/show.rhtml +18 -0
- data/samples/rails/app/views/layouts/blog.rhtml +36 -0
- data/samples/rails/config/database.yml +32 -0
- data/samples/rails/config/environment.rb +88 -0
- data/samples/rails/config/environments/development.rb +14 -0
- data/samples/rails/config/environments/production.rb +8 -0
- data/samples/rails/config/environments/test.rb +17 -0
- data/samples/rails/config/routes.rb +19 -0
- data/samples/rails/db/mysql.sql +8 -0
- data/samples/rails/db/postgresql.sql +7 -0
- data/samples/rails/locale/de/LC_MESSAGES/blog.mo +0 -0
- data/samples/rails/locale/de/LC_MESSAGES/lang_helper.mo +0 -0
- data/samples/rails/locale/es/LC_MESSAGES/blog.mo +0 -0
- data/samples/rails/locale/es/LC_MESSAGES/lang_helper.mo +0 -0
- data/samples/rails/locale/fr/LC_MESSAGES/blog.mo +0 -0
- data/samples/rails/locale/fr/LC_MESSAGES/lang_helper.mo +0 -0
- data/samples/rails/locale/ja/LC_MESSAGES/blog.mo +0 -0
- data/samples/rails/locale/ja/LC_MESSAGES/lang_helper.mo +0 -0
- data/samples/rails/locale/ko/LC_MESSAGES/blog.mo +0 -0
- data/samples/rails/locale/ko/LC_MESSAGES/lang_helper.mo +0 -0
- data/samples/rails/po/blog.pot +90 -0
- data/samples/rails/po/de/blog.po +91 -0
- data/samples/rails/po/de/lang_helper.po +28 -0
- data/samples/rails/po/es/blog.po +90 -0
- data/samples/rails/po/es/lang_helper.po +28 -0
- data/samples/rails/po/fr/blog.po +89 -0
- data/samples/rails/po/fr/lang_helper.po +27 -0
- data/samples/rails/po/ja/blog.po +89 -0
- data/samples/rails/po/ja/lang_helper.po +28 -0
- data/samples/rails/po/ko/blog.po +87 -0
- data/samples/rails/po/ko/lang_helper.po +26 -0
- data/samples/rails/po/lang_helper.pot +28 -0
- data/samples/rails/public/404.html +8 -0
- data/samples/rails/public/500.html +8 -0
- data/samples/rails/public/dispatch.cgi +10 -0
- data/samples/rails/public/dispatch.fcgi +24 -0
- data/samples/rails/public/dispatch.rb +10 -0
- data/samples/rails/public/favicon.ico +0 -0
- data/samples/rails/public/index.html +78 -0
- data/samples/rails/public/javascripts/controls.js +446 -0
- data/samples/rails/public/javascripts/dragdrop.js +537 -0
- data/samples/rails/public/javascripts/effects.js +612 -0
- data/samples/rails/public/javascripts/prototype.js +1038 -0
- data/samples/rails/public/stylesheets/blog.css +132 -0
- data/samples/rails/public/stylesheets/scaffold.css +74 -0
- data/samples/rails/script/benchmarker +19 -0
- data/samples/rails/script/breakpointer +4 -0
- data/samples/rails/script/console +23 -0
- data/samples/rails/script/destroy +7 -0
- data/samples/rails/script/generate +7 -0
- data/samples/rails/script/profiler +34 -0
- data/samples/rails/script/runner +29 -0
- data/samples/rails/script/server +49 -0
- data/samples/rails/test/fixtures/articles.yml +5 -0
- data/samples/rails/test/functional/blog_controller_test.rb +88 -0
- data/samples/rails/test/test_helper.rb +26 -0
- data/samples/rails/test/unit/article_test.rb +14 -0
- data/samples/rails/vendor/lang_helper.rb +49 -0
- data/setup.rb +1360 -0
- data/src/rmsgfmt.ry +233 -0
- data/test/README +10 -0
- data/test/gettext_runner.rb +18 -0
- data/test/gettext_test.rb +202 -0
- data/test/gettext_test_parser.rb +80 -0
- data/test/locale/cr/LC_MESSAGES/plural.mo +0 -0
- data/test/locale/da/LC_MESSAGES/plural.mo +0 -0
- data/test/locale/da/LC_MESSAGES/plural_error.mo +0 -0
- data/test/locale/fr/LC_MESSAGES/plural.mo +0 -0
- data/test/locale/fr/LC_MESSAGES/plural_error.mo +0 -0
- data/test/locale/fr/LC_MESSAGES/test1.mo +0 -0
- data/test/locale/fr/LC_MESSAGES/test2.mo +0 -0
- data/test/locale/ir/LC_MESSAGES/plural.mo +0 -0
- data/test/locale/ja/LC_MESSAGES/plural.mo +0 -0
- data/test/locale/ja/LC_MESSAGES/plural_error.mo +0 -0
- data/test/locale/ja/LC_MESSAGES/test1.mo +0 -0
- data/test/locale/ja/LC_MESSAGES/test2.mo +0 -0
- data/test/locale/ja/LC_MESSAGES/test_rubyparser.mo +0 -0
- data/test/locale/ja/LC_MESSAGES/test_sgettext.mo +0 -0
- data/test/locale/la/LC_MESSAGES/plural.mo +0 -0
- data/test/locale/li/LC_MESSAGES/plural.mo +0 -0
- data/test/locale/po/LC_MESSAGES/plural.mo +0 -0
- data/test/locale/sl/LC_MESSAGES/plural.mo +0 -0
- data/test/po/cr/plural.po +23 -0
- data/test/po/da/plural.po +22 -0
- data/test/po/da/plural_error.po +20 -0
- data/test/po/fr/plural.po +22 -0
- data/test/po/fr/plural_error.po +19 -0
- data/test/po/fr/test1.po +23 -0
- data/test/po/fr/test2.po +19 -0
- data/test/po/ir/plural.po +23 -0
- data/test/po/ja/plural.po +22 -0
- data/test/po/ja/plural_error.po +20 -0
- data/test/po/ja/test1.po +23 -0
- data/test/po/ja/test2.po +19 -0
- data/test/po/ja/test_rubyparser.po +43 -0
- data/test/po/ja/test_sgettext.po +47 -0
- data/test/po/la/plural.po +23 -0
- data/test/po/li/plural.po +23 -0
- data/test/po/po/plural.po +23 -0
- data/test/po/sl/plural.po +24 -0
- data/test/test.sh +7 -0
- data/test/test_erb.rhtml +15 -0
- data/test/test_gladeparser.glade +183 -0
- data/test/test_rubyparser.rb +77 -0
- data/test/test_rubyparser_N.rb +66 -0
- data/test/test_rubyparser_n.rb +64 -0
- data/test/test_sgettext.rb +48 -0
- data/test/testlib1.rb +20 -0
- data/test/testlib2.rb +11 -0
- data/test/testlib3.rb +12 -0
- data/test/testlib4.rb +11 -0
- metadata +580 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# application.rb - a sample script for Ruby on Rails
|
|
2
|
+
#
|
|
3
|
+
# Copyright (C) 2005 Masao Mutoh
|
|
4
|
+
#
|
|
5
|
+
# This file is distributed under the same license as Ruby-GetText-Package.
|
|
6
|
+
|
|
7
|
+
# Require 'gettext/rails' first.
|
|
8
|
+
require 'gettext/rails'
|
|
9
|
+
|
|
10
|
+
# lang_helper is sample helper. It has its own textdomain(lang_helper).
|
|
11
|
+
# (See vendor/lang_helper.rb).
|
|
12
|
+
require 'lang_helper'
|
|
13
|
+
|
|
14
|
+
class ApplicationController < ActionController::Base
|
|
15
|
+
# for lang_helper.
|
|
16
|
+
helper LangHelper
|
|
17
|
+
include LangHelper
|
|
18
|
+
|
|
19
|
+
# Initialize GetText and Content-Type.
|
|
20
|
+
# You need to call this once a request from WWW browser.
|
|
21
|
+
# You can select the scope of the textdomain.
|
|
22
|
+
# 1. If you call bindtextdomain in ApplicationControler,
|
|
23
|
+
# The textdomain apply whole your application.
|
|
24
|
+
# 2. If you call bindtextdomain in each controllers
|
|
25
|
+
# (In this sample, blog_controller.rb is applicable)
|
|
26
|
+
# The textdomains are applied to each controllers/views.
|
|
27
|
+
before_filter :init_gettext
|
|
28
|
+
def init_gettext
|
|
29
|
+
# The locale is set automatically or use Cookie value, parameter "lang".
|
|
30
|
+
bindtextdomain("blog", request.cgi) #You need to pass CGI object first.
|
|
31
|
+
|
|
32
|
+
# Or set locale forcely.
|
|
33
|
+
#bindtextdomain("blog", request.cgi, "ja")
|
|
34
|
+
|
|
35
|
+
@headers["Content-Type"] = "text/html; charset=UTF-8"
|
|
36
|
+
end
|
|
37
|
+
end
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# blog_controller.rb - a sample script for Ruby on Rails
|
|
2
|
+
#
|
|
3
|
+
# Copyright (C) 2005 Masao Mutoh
|
|
4
|
+
#
|
|
5
|
+
# This file is distributed under the same license as Ruby-GetText-Package.
|
|
6
|
+
|
|
7
|
+
class BlogController < ApplicationController
|
|
8
|
+
# If you want to have textdomains each as controllers.
|
|
9
|
+
# You need to bind textdomain here.
|
|
10
|
+
|
|
11
|
+
#before_filter :init_gettext
|
|
12
|
+
#def init_gettext
|
|
13
|
+
# bindtextdomain("blog", request.cgi) #You need to pass CGI object first.
|
|
14
|
+
# @headers["Content-Type"] = "text/html; charset=UTF-8"
|
|
15
|
+
#end
|
|
16
|
+
|
|
17
|
+
def index
|
|
18
|
+
list
|
|
19
|
+
render :action => 'list'
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def list
|
|
23
|
+
@articles = Article.find(:all, :order => 'lastupdate desc, id desc')
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def show
|
|
27
|
+
@article = Article.find(params[:id])
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def new
|
|
31
|
+
@article = Article.new
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def create
|
|
35
|
+
@article = Article.new(params[:article])
|
|
36
|
+
if @article.save
|
|
37
|
+
flash[:notice] = _('Article was successfully created.')
|
|
38
|
+
redirect_to :action => 'list'
|
|
39
|
+
else
|
|
40
|
+
render :action => 'new'
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def edit
|
|
45
|
+
@article = Article.find(params[:id])
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def update
|
|
49
|
+
@article = Article.find(params[:id])
|
|
50
|
+
if @article.update_attributes(params[:article])
|
|
51
|
+
flash[:notice] = _('Article was successfully updated.')
|
|
52
|
+
redirect_to :action => 'show', :id => @article
|
|
53
|
+
else
|
|
54
|
+
render :action => 'edit'
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
def destroy
|
|
59
|
+
Article.find(params[:id]).destroy
|
|
60
|
+
redirect_to :action => 'list'
|
|
61
|
+
end
|
|
62
|
+
end
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# blog_helper.rb - a sample script for Ruby on Rails
|
|
2
|
+
#
|
|
3
|
+
# Copyright (C) 2005 Masao Mutoh
|
|
4
|
+
#
|
|
5
|
+
# This file is distributed under the same license as Ruby-GetText-Package.
|
|
6
|
+
|
|
7
|
+
#
|
|
8
|
+
# BlogHelper is bound a textdomain which is bound in application.rb or
|
|
9
|
+
# blog_controller.rb.
|
|
10
|
+
# So you don't need to call bindtextdomain here.
|
|
11
|
+
#
|
|
12
|
+
|
|
13
|
+
module BlogHelper
|
|
14
|
+
def show_article(article, show_link = true)
|
|
15
|
+
ret = %Q[
|
|
16
|
+
<h2>#{article["title"]} (#{article["lastupdate"]})</h2>
|
|
17
|
+
<pre>#{article["description"]}</pre>
|
|
18
|
+
]
|
|
19
|
+
if show_link
|
|
20
|
+
ret += %Q[<p style="text-align:right;margin-right:3em">#{link_to(_("Show"), :action => 'show', :id => article)}</p>]
|
|
21
|
+
end
|
|
22
|
+
ret
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def show_list(articles)
|
|
26
|
+
ret = ""
|
|
27
|
+
articles.each_with_index do |article, index|
|
|
28
|
+
ret << %Q[<li>#{article["lastupdate"]}: #{link_to((h article["title"]), :action => 'show', :id => article)}</li>]
|
|
29
|
+
break if index > 9
|
|
30
|
+
end
|
|
31
|
+
ret
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
def show_navigation
|
|
35
|
+
articles = BlogController.new.list
|
|
36
|
+
%Q[
|
|
37
|
+
<div class="navigation">
|
|
38
|
+
<img src="http://web.rubyonrails.com/images/rails_logo_remix.gif" />
|
|
39
|
+
<div class="window">
|
|
40
|
+
#{show_language}
|
|
41
|
+
</div>
|
|
42
|
+
<div class="window">
|
|
43
|
+
<h4>] + _("Ruby Links") + %Q[</h4>
|
|
44
|
+
<dl>
|
|
45
|
+
<li><a href="http://www.ruby-lang.org/">Ruby</a></li>
|
|
46
|
+
<li><a href="http://rubyforge.org/projects/gettext/">Ruby-GetText-Package</a></li>
|
|
47
|
+
<li><a href="http://wiki.rubyonrails.com/">Ruby on Rails Wiki</a></li>
|
|
48
|
+
</dl>
|
|
49
|
+
</div>
|
|
50
|
+
<div class="window">
|
|
51
|
+
<h4>] + _("Old articles") + %Q[</h4>
|
|
52
|
+
<p>
|
|
53
|
+
<dl>
|
|
54
|
+
#{show_list(articles)}
|
|
55
|
+
</dl>
|
|
56
|
+
</p>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
]
|
|
60
|
+
end
|
|
61
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<%
|
|
2
|
+
# _form.rhtml - a sample script for Ruby on Rails
|
|
3
|
+
#
|
|
4
|
+
# Copyright (C) 2005 Masao Mutoh
|
|
5
|
+
#
|
|
6
|
+
# This file is distributed under the same license as Ruby-GetText-Package.
|
|
7
|
+
|
|
8
|
+
# Views are bound a textdomain which is bound in application.rb or
|
|
9
|
+
# blog_controller.rb.
|
|
10
|
+
# So you don't need to call bindtextdomain here.
|
|
11
|
+
%>
|
|
12
|
+
|
|
13
|
+
<%= error_messages_for 'article' %>
|
|
14
|
+
|
|
15
|
+
<!--[form:article]-->
|
|
16
|
+
<p><label for="article_lastupdate"><%= _("Lastupdate") %></label><br/>
|
|
17
|
+
<%= date_select 'article', 'lastupdate', :use_month_numbers => true %></p>
|
|
18
|
+
<p><label for="article_title"><%= _("Title") %></label><br/>
|
|
19
|
+
<%= text_field 'article', 'title' %></p>
|
|
20
|
+
|
|
21
|
+
<p><label for="article_description"><%= _("Description") %></label><br/>
|
|
22
|
+
<%= text_area 'article', 'description' %></p>
|
|
23
|
+
|
|
24
|
+
<!--[eoform:article]-->
|
|
25
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
<%
|
|
2
|
+
# edit.rhtml - a sample script for Ruby on Rails
|
|
3
|
+
#
|
|
4
|
+
# Copyright (C) 2005 Masao Mutoh
|
|
5
|
+
#
|
|
6
|
+
# This file is distributed under the same license as Ruby-GetText-Package.
|
|
7
|
+
|
|
8
|
+
# Views are bound a textdomain which is bound in application.rb or
|
|
9
|
+
# blog_controller.rb.
|
|
10
|
+
# So you don't need to call bindtextdomain here.
|
|
11
|
+
%>
|
|
12
|
+
<h1><%= _('Editing article') %></h1>
|
|
13
|
+
|
|
14
|
+
<%= start_form_tag :action => 'update', :id => @article %>
|
|
15
|
+
<%= render_partial 'form' %>
|
|
16
|
+
<p><%= submit_tag _('Edit') %></p>
|
|
17
|
+
<%= end_form_tag %>
|
|
18
|
+
<p>
|
|
19
|
+
<%= link_to _('Show'), :action => 'show', :id => @article %> |
|
|
20
|
+
<%= link_to _('Destroy'), {:action => 'destroy', :id => @article}, :confirm => _('Are you sure?') %> |
|
|
21
|
+
<%= link_to _('Back'), :action => 'list' %>
|
|
22
|
+
</p>
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<%
|
|
2
|
+
# list.rhtml - a sample script for Ruby on Rails
|
|
3
|
+
#
|
|
4
|
+
# Copyright (C) 2005 Masao Mutoh
|
|
5
|
+
#
|
|
6
|
+
# This file is distributed under the same license as Ruby-GetText-Package.
|
|
7
|
+
|
|
8
|
+
# Views are bound a textdomain which is bound in application.rb or
|
|
9
|
+
# blog_controller.rb.
|
|
10
|
+
# So you don't need to call bindtextdomain here.
|
|
11
|
+
%>
|
|
12
|
+
|
|
13
|
+
<h1><%= _("GetText Sample Blog on RoR") %></h1>
|
|
14
|
+
<p style="text-align:right">
|
|
15
|
+
<%= link_to _('New article'), :action => 'new' %>
|
|
16
|
+
</p>
|
|
17
|
+
<% if @articles.size == 0 %>
|
|
18
|
+
<p><%= _("No articles were found.") %></p>
|
|
19
|
+
<% else %>
|
|
20
|
+
<%
|
|
21
|
+
@articles.each_with_index do |article, index|
|
|
22
|
+
%>
|
|
23
|
+
<%= show_article(article) %>
|
|
24
|
+
<%
|
|
25
|
+
break if index > 1
|
|
26
|
+
end
|
|
27
|
+
%>
|
|
28
|
+
<% end %>
|
|
29
|
+
|
|
30
|
+
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
<%
|
|
2
|
+
# new.rhtml - a sample script for Ruby on Rails
|
|
3
|
+
#
|
|
4
|
+
# Copyright (C) 2005 Masao Mutoh
|
|
5
|
+
#
|
|
6
|
+
# This file is distributed under the same license as Ruby-GetText-Package.
|
|
7
|
+
|
|
8
|
+
# Views are bound a textdomain which is bound in application.rb or
|
|
9
|
+
# blog_controller.rb.
|
|
10
|
+
# So you don't need to call bindtextdomain here.
|
|
11
|
+
%>
|
|
12
|
+
|
|
13
|
+
<h1><%= _('New article') %></h1>
|
|
14
|
+
|
|
15
|
+
<%= start_form_tag :action => 'create' %>
|
|
16
|
+
<%= render_partial 'form' %>
|
|
17
|
+
<p><%= submit_tag _('Create') %></p>
|
|
18
|
+
<%= end_form_tag %>
|
|
19
|
+
<p>
|
|
20
|
+
<%= link_to _('Back'), :action => 'list' %>
|
|
21
|
+
</p>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<%
|
|
2
|
+
# show.rhtml - a sample script for Ruby on Rails
|
|
3
|
+
#
|
|
4
|
+
# Copyright (C) 2005 Masao Mutoh
|
|
5
|
+
#
|
|
6
|
+
# This file is distributed under the same license as Ruby-GetText-Package.
|
|
7
|
+
|
|
8
|
+
# Views are bound a textdomain which is bound in application.rb or
|
|
9
|
+
# blog_controller.rb.
|
|
10
|
+
# So you don't need to call bindtextdomain here.
|
|
11
|
+
%>
|
|
12
|
+
|
|
13
|
+
<h1><%= _("GetText Sample Blog on RoR") %></h1>
|
|
14
|
+
<%= show_article(@article, false) %>
|
|
15
|
+
<p>
|
|
16
|
+
<%= link_to _('Edit'), :action => 'edit', :id => @article %> |
|
|
17
|
+
<%= link_to _('Back'), :action => 'list' %>
|
|
18
|
+
</p>
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
<%
|
|
2
|
+
# blog.rhtml - a sample script for Ruby on Rails
|
|
3
|
+
#
|
|
4
|
+
# Copyright (C) 2005 Masao Mutoh
|
|
5
|
+
#
|
|
6
|
+
# This file is distributed under the same license as Ruby-GetText-Package.
|
|
7
|
+
|
|
8
|
+
# Views are bound a textdomain which is bound in application.rb or
|
|
9
|
+
# blog_controller.rb.
|
|
10
|
+
# So you don't need to call bindtextdomain here.
|
|
11
|
+
%>
|
|
12
|
+
<html>
|
|
13
|
+
<head>
|
|
14
|
+
<title><%= _('GetText Sample Blog on RoR') %></title>
|
|
15
|
+
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
|
16
|
+
<%= stylesheet_link_tag 'scaffold' %>
|
|
17
|
+
<%= stylesheet_link_tag 'blog' %>
|
|
18
|
+
</head>
|
|
19
|
+
<body>
|
|
20
|
+
<div class="main">
|
|
21
|
+
<% if flash[:notice] %>
|
|
22
|
+
<p class="notice"><%= flash[:notice] %></p>
|
|
23
|
+
<% end %>
|
|
24
|
+
|
|
25
|
+
<%= @content_for_layout %>
|
|
26
|
+
|
|
27
|
+
<div class="copyright">
|
|
28
|
+
Copyright (C) 2005 Masao Mutoh
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
</div>
|
|
32
|
+
|
|
33
|
+
<%= show_navigation %>
|
|
34
|
+
|
|
35
|
+
</body>
|
|
36
|
+
</html>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
development:
|
|
2
|
+
adapter: mysql
|
|
3
|
+
socket: /var/lib/mysql/mysql.sock
|
|
4
|
+
# socket: /tmp/mysql.sock
|
|
5
|
+
database: blog
|
|
6
|
+
host: localhost
|
|
7
|
+
username: root
|
|
8
|
+
password:
|
|
9
|
+
|
|
10
|
+
#development:
|
|
11
|
+
# adapter: postgresql
|
|
12
|
+
# database: blog
|
|
13
|
+
# host: localhost
|
|
14
|
+
# username: mutoh
|
|
15
|
+
# password:
|
|
16
|
+
|
|
17
|
+
# Warning: The database defined as 'test' will be erased and
|
|
18
|
+
# re-generated from your development database when you run 'rake'.
|
|
19
|
+
# Do not set this db to the same as development or production.
|
|
20
|
+
test:
|
|
21
|
+
adapter: mysql
|
|
22
|
+
database: rails_test
|
|
23
|
+
host: localhost
|
|
24
|
+
username: root
|
|
25
|
+
password:
|
|
26
|
+
|
|
27
|
+
production:
|
|
28
|
+
adapter: mysql
|
|
29
|
+
database: rails_production
|
|
30
|
+
host: localhost
|
|
31
|
+
username: root
|
|
32
|
+
password:
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# Load the Rails framework and configure your application.
|
|
2
|
+
# You can include your own configuration at the end of this file.
|
|
3
|
+
#
|
|
4
|
+
# Be sure to restart your webserver when you modify this file.
|
|
5
|
+
|
|
6
|
+
$KCODE = "u"
|
|
7
|
+
|
|
8
|
+
# The path to the root directory of your application.
|
|
9
|
+
RAILS_ROOT = File.join(File.dirname(__FILE__), '..')
|
|
10
|
+
|
|
11
|
+
# The environment your application is currently running. Don't set
|
|
12
|
+
# this here; put it in your webserver's configuration as the RAILS_ENV
|
|
13
|
+
# environment variable instead.
|
|
14
|
+
#
|
|
15
|
+
# See config/environments/*.rb for environment-specific configuration.
|
|
16
|
+
RAILS_ENV = ENV['RAILS_ENV'] || 'development'
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
# Load the Rails framework. Mock classes for testing come first.
|
|
20
|
+
ADDITIONAL_LOAD_PATHS = ["#{RAILS_ROOT}/test/mocks/#{RAILS_ENV}"]
|
|
21
|
+
|
|
22
|
+
# Then model subdirectories.
|
|
23
|
+
ADDITIONAL_LOAD_PATHS.concat(Dir["#{RAILS_ROOT}/app/models/[_a-z]*"])
|
|
24
|
+
ADDITIONAL_LOAD_PATHS.concat(Dir["#{RAILS_ROOT}/components/[_a-z]*"])
|
|
25
|
+
|
|
26
|
+
# Followed by the standard includes.
|
|
27
|
+
ADDITIONAL_LOAD_PATHS.concat %w(
|
|
28
|
+
app
|
|
29
|
+
app/models
|
|
30
|
+
app/controllers
|
|
31
|
+
app/helpers
|
|
32
|
+
app/apis
|
|
33
|
+
components
|
|
34
|
+
config
|
|
35
|
+
lib
|
|
36
|
+
vendor
|
|
37
|
+
vendor/rails/railties
|
|
38
|
+
vendor/rails/railties/lib
|
|
39
|
+
vendor/rails/actionpack/lib
|
|
40
|
+
vendor/rails/activesupport/lib
|
|
41
|
+
vendor/rails/activerecord/lib
|
|
42
|
+
vendor/rails/actionmailer/lib
|
|
43
|
+
vendor/rails/actionwebservice/lib
|
|
44
|
+
).map { |dir| "#{RAILS_ROOT}/#{dir}" }.select { |dir| File.directory?(dir) }
|
|
45
|
+
|
|
46
|
+
# Prepend to $LOAD_PATH
|
|
47
|
+
ADDITIONAL_LOAD_PATHS.reverse.each { |dir| $:.unshift(dir) if File.directory?(dir) }
|
|
48
|
+
|
|
49
|
+
# Require Rails libraries.
|
|
50
|
+
require 'rubygems' unless File.directory?("#{RAILS_ROOT}/vendor/rails")
|
|
51
|
+
|
|
52
|
+
require 'active_support'
|
|
53
|
+
require 'active_record'
|
|
54
|
+
require 'action_controller'
|
|
55
|
+
require 'action_mailer'
|
|
56
|
+
require 'action_web_service'
|
|
57
|
+
|
|
58
|
+
# Environment-specific configuration.
|
|
59
|
+
require_dependency "environments/#{RAILS_ENV}"
|
|
60
|
+
ActiveRecord::Base.configurations = File.open("#{RAILS_ROOT}/config/database.yml") { |f| YAML::load(f) }
|
|
61
|
+
ActiveRecord::Base.establish_connection
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
# Configure defaults if the included environment did not.
|
|
65
|
+
begin
|
|
66
|
+
RAILS_DEFAULT_LOGGER = Logger.new("#{RAILS_ROOT}/log/#{RAILS_ENV}.log")
|
|
67
|
+
RAILS_DEFAULT_LOGGER.level = (RAILS_ENV == 'production' ? Logger::INFO : Logger::DEBUG)
|
|
68
|
+
rescue StandardError
|
|
69
|
+
RAILS_DEFAULT_LOGGER = Logger.new(STDERR)
|
|
70
|
+
RAILS_DEFAULT_LOGGER.level = Logger::WARN
|
|
71
|
+
RAILS_DEFAULT_LOGGER.warn(
|
|
72
|
+
"Rails Error: Unable to access log file. Please ensure that log/#{RAILS_ENV}.log exists and is chmod 0666. " +
|
|
73
|
+
"The log level has been raised to WARN and the output directed to STDERR until the problem is fixed."
|
|
74
|
+
)
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
[ActiveRecord, ActionController, ActionMailer].each { |mod| mod::Base.logger ||= RAILS_DEFAULT_LOGGER }
|
|
78
|
+
[ActionController, ActionMailer].each { |mod| mod::Base.template_root ||= "#{RAILS_ROOT}/app/views/" }
|
|
79
|
+
|
|
80
|
+
# Set up routes.
|
|
81
|
+
ActionController::Routing::Routes.reload
|
|
82
|
+
|
|
83
|
+
Controllers = Dependencies::LoadingModule.root(
|
|
84
|
+
File.join(RAILS_ROOT, 'app', 'controllers'),
|
|
85
|
+
File.join(RAILS_ROOT, 'components')
|
|
86
|
+
)
|
|
87
|
+
|
|
88
|
+
# Include your app's configuration here:
|