fnando / i18n-js Goto Github PK
View Code? Open in Web Editor NEWIt's a small library to provide the I18n translations on the Javascript. It comes with Rails support.
License: MIT License
It's a small library to provide the I18n translations on the Javascript. It comes with Rails support.
License: MIT License
When attempting to run rake i18n:js:setup
on JRuby 1.6.4, the following error is occurring:
C:\Temp\foobar>jruby -S rake i18n:js:setup --trace
** Invoke i18n:js:setup (first_time)
** Invoke environment (first_time)
** Execute environment
rake aborted!
undefined method `assets' for #<Rails::Application::Configuration:0xdd67cf>
org/jruby/RubyKernel.java:238:in `method_missing'
C:/skunkworx/jruby/jruby-1.6.4/lib/ruby/gems/1.8/gems/railties-3.0.10/lib/rails/railtie/configuration.rb:77:in `method_missing'
C:/skunkworx/jruby/jruby-1.6.4/lib/ruby/gems/1.8/gems/i18n-js-2.1.0/lib/i18n-js/railtie.rb:9:in `Railtie'
....
I believe that this error is stemming from an assumption that the gem is being used with Rails 3.1.
Please see line 9 in lib/i18n-js/railtie.rb
:
app.config.middleware.use(Middleware) if Rails.env.development? && !Rails.configuration.assets.enabled
... where Rails.configuration.assets
is present in Rails 3.1, but not present in versions lower than 3.1.
Here are my ruby and gem details:
C:\Temp\foobar>jruby -v
jruby 1.6.4 (ruby-1.8.7-p330) (2011-08-23 17ea768) (Java HotSpot(TM) Client VM 1.6.0_13) [Windows XP-x86-java]
C:\Temp\foobar>jruby -S gem env
RubyGems Environment:
- RUBYGEMS VERSION: 1.5.1
- RUBY VERSION: 1.8.7 (2011-08-23 patchlevel 330) [java]
- INSTALLATION DIRECTORY: C:/skunkworx/jruby/jruby-1.6.4/lib/ruby/gems/1.8
- RUBY EXECUTABLE: C:/skunkworx/jruby/jruby-1.6.4/bin/jruby.exe
- EXECUTABLE DIRECTORY: C:/skunkworx/jruby/jruby-1.6.4/bin
- RUBYGEMS PLATFORMS:
- ruby
- universal-java-1.6
- GEM PATHS:
- C:/skunkworx/jruby/jruby-1.6.4/lib/ruby/gems/1.8
- C:/Documents and Settings/6008895/.gem/jruby/1.8
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- "install" => "--no-rdoc --no-ri --env-shebang"
- "update" => "--no-rdoc --no-ri --env-shebang"
- REMOTE SOURCES:
- http://rubygems.org/
C:\Temp\foobar>jruby -S gem li
*** LOCAL GEMS ***
abstract (1.0.0)
actionmailer (3.0.10)
actionpack (3.0.10)
activemodel (3.0.10)
activerecord (3.0.10)
activeresource (3.0.10)
activesupport (3.0.10)
arel (2.0.10)
bouncy-castle-java (1.5.0146.1)
builder (2.1.2)
bundler (1.0.21)
erubis (2.6.6)
i18n (0.6.0, 0.5.0)
i18n-js (2.1.0)
jruby-openssl (0.7.4)
json (1.6.1 java)
mail (2.2.19)
mime-types (1.16)
polyglot (0.3.2)
rack (1.2.4)
rack-mount (0.6.14)
rack-test (0.5.7)
rails (3.0.10)
railties (3.0.10)
rake (0.9.2, 0.8.7)
rdoc (3.11)
sources (0.0.1)
thor (0.14.6)
treetop (1.4.10)
tzinfo (0.3.30)
Hi Nando,
Thanks for releasing i18n-js, it's really cool!
I stumbled across a small bug today running (padrino) rake i18n:js:update:
RuntimeError: redirection forbidden: http://github.com/fnando/i18n-js/raw/master/lib/i18n.js -> https://github.com/fnando/i18n- js/raw/master/lib/i18n.js
Looks like replacing line 80 on i18n-js.rb with
open('https://raw.github.com/fnando/i18n-js/master/lib/i18n-js.rb').read
should do the trick, looks like the URL for accessing raw source files on github has changed.
Cheers!
I18n.l("date.formats.short", "2009-09-18");
"Fri Sep 18 2009 00:00:00 GMT+0300 (EEST)"
We got this error in Rails 3.1.3 with the asset pipeline enabled as soon as we include the
//= require i18n/translations
line in the application.js
file. It may be related with a bug in sprockets we found:
We worked around the problem by running rake i18n:js:setup
. This created the config file and everything seems to work now.
To achieve parity with rail's I18n.
I'm upgrading an existing Rails 3.0 app to Rails 3.1 (with i18n-js-1.1.0), but I have problems in test environment. The translations are not working, they result in [missing ... translation]
.
It makes no difference whether I run the cucumber tests or the server directly in the test environment.
auto_export: yes
translations:
- file: "app/assets/javascripts/i18n/translations.js"
asset_pipeline: yes
[...]
//= require i18n
//= require i18n/translations
[...]
auto_export
flag works and creates the translations.js
file if it doesn't existRAILS_ENV=test rake i18n:js:export assets:precompile
produces a applications.js
where my translations are included, but the error still occurs.Is this a configuration issue or how is it supposed to work in test/production environment?
I want to use i18n:setup
, i18n:export
for my own, more general, tasks. i18n-js's tasks should be namespaced as i18n:js:setup
, i18n:js:export
, etc.
when formatting a date between 12:00 - 12:59 the meridian is AM when it should be PM
Often in a production deployment, public assets are in a different location than in development. Sometimes not even under Rails.root (this is the case for my project). Sometimes not even on the same physical machine. In such cases, the export triggered by init.rb fails.
I'm not sure exactly how, but exporting on boot needs to be configurable, maybe even off by default. I've worked around it by removing the export in init.rb and having my pre-deploy script run an export.
RuntimeError Cannot precompile i18n-js translations unless environment is initialized. Please set config.assets.initialize_on_precompile to true. (in /Users/Kir/.rvm/gems/ruby-1.9.2-p290@ools/gems/i18n-js-2.1.2/vendor/assets/javascripts/i18n/translations.js.erb)
But config.assets.initialize_on_precompile = true
is already set in application.rb.
Rails version Rails 3.1.0.
What about export with gem ya2yaml for js
because now it is not very redable
I18n.translations = {"ru":{"widget":{"global":{"all":"\u0412\u0441\u0435:","save":"\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c",
Hi there everyone!
I just rewrote the I18n.js. I was trying to apply some PRs and notice the whole codebase just got messy. Both the Ruby and JavaScript part. So here's what I did:
I'm planning to release this thing next week, so if you're using I18n.js, please give it some love and test it. The new codebase lives on https://github.com/fnando/i18n-js/tree/rewrite. You can easily test it by following the README's install instruction and adding the gem as a Git repository.
gem "i18n-js", :git => "git://github.com/fnando/i18n-js.git", :branch => "rewrite"
Thanks! ;)
https://gist.github.com/b7eafbcfc79a4bda2a4f
Sorry about whitespace differences.
Right now, I have to use I18n.pluralize to do any transations involving count. I18n.pluralize, however does not have the try/catch safe-guard that I18n.translate has.
To match Rails, delimiter should be the thousands delimiter, defaulting to comma, and separator should be the units separator, defaulting to period. In toNumber and toCurrency, their meanings are reversed, leading to unexpected formatting.
The standard i18n option "strip_insignificant_zeros" is not implemented and by default the insignificant zeros are not striped.
The addition will be really appreciated, thanks
Rails has two methods for formatting numbers: number_with_delimiter and number_with_precision. I18n.js has only localize("number")/toNumber, which is closest to number_with_precision in result. But typically when formatting an integer you do not wish to add any precision nor a units separator, only add thousands delimiters. I.e., there should be a way to get number_with_delimiter-like behavior.
After adding your gem in my rails 3.1 application each http url was taking 1s to load in development mode (and I mean each: css, js, html), I quickly looked at the source but could not figure why it was taking so long until I realized that th etranslation.js file was genrated on every request :s
Why not generate the file once for all and serves it using the asset pipeline (or copy it in app folder for older rails versions) ?
This would make I18n.translate compliant with rails.
I have rails 2.3.8 project with bundler for gem management. (Described here: http://gembundler.com/rails23.html)
I'm installing this gem by putting in my Gemfile this:
gem "i18n-js"
and
bundle install
after that.
So after install I can't see this rake tasks: https://github.com/fnando/i18n-js/blob/master/lib/tasks/i18n-js_tasks.rake
via rake -T and can't execute them as well.
I'm trying to run i18n-js 2.1.0 (last version) with Rails 3.0.9 but I'd this error:
/Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.9/lib/rails/railtie/configuration.rb:77:in `method_missing': undefined method `assets' for #<Rails::Application::Configuration:0x000001033b60d8> (NoMethodError)
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/i18n-js-2.1.0/lib/i18n-js/railtie.rb:9:in `block in <class:Railtie>'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.9/lib/rails/initializable.rb:25:in `instance_exec'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.9/lib/rails/initializable.rb:25:in `run'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.9/lib/rails/initializable.rb:50:in `block in run_initializers'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.9/lib/rails/initializable.rb:49:in `each'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.9/lib/rails/initializable.rb:49:in `run_initializers'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.9/lib/rails/application.rb:134:in `initialize!'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/railties-3.0.9/lib/rails/application.rb:77:in `method_missing'
from /Users/estevao/Projects/Ledface/config/environment.rb:7:in `<top (required)>'
from /Users/estevao/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /Users/estevao/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /Users/estevao/Projects/Ledface/config.ru:3:in `block in <main>'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/rack-1.2.4/lib/rack/builder.rb:46:in `instance_eval'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/rack-1.2.4/lib/rack/builder.rb:46:in `initialize'
from /Users/estevao/Projects/Ledface/config.ru:1:in `new'
from /Users/estevao/Projects/Ledface/config.ru:1:in `<main>'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/thin-1.2.11/lib/rack/adapter/loader.rb:36:in `eval'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/thin-1.2.11/lib/rack/adapter/loader.rb:36:in `load'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/thin-1.2.11/lib/rack/adapter/loader.rb:45:in `for'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/thin-1.2.11/lib/thin/controllers/controller.rb:169:in `load_adapter'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/thin-1.2.11/lib/thin/controllers/controller.rb:73:in `start'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/thin-1.2.11/lib/thin/runner.rb:185:in `run_command'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/thin-1.2.11/lib/thin/runner.rb:151:in `run!'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/gems/thin-1.2.11/bin/thin:6:in `<top (required)>'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/bin/thin:19:in `load'
from /Users/estevao/.rvm/gems/ruby-1.9.2-p180/bin/thin:19:in `<main>'
What could I do about it?
And btw thanks, awesome gem! :)
I think you should remove console.debug(placeholder) and console.debug(name) from the i18n.js file.
I got an error message on IE7.
I18n.fallbacks = true;
I18n.locale = 'qq'; //not existent locale
I18n.t('some.key'); // => missing translation, though translation for some.key exists in default locale
// workaround:
I18n.translations.qq = {}
I18n.t('some.key'); // => now it works as expected
Heroku requires
config.assets.initialize_on_precompile = false
On the other hand i18n-js requires this to be true. Any idea on how to use i18n-js when deploying to Heroku except manually exporting translations before each push...?
Hi,
I guess it was, but now it's missing on the rubygems: https://rubygems.org/gems/i18n-js
Can you update rubygems and upload .gem file?
Thanks!
GNU C library supports a ton of standard and not-so-standard strftime options.
http://www.gnu.org/software/libc/manual/html_node/Formatting-Calendar-Time.html
Not sure how many of those we want to get to. The one of interest to me is the '-' conversion specifier, which indicates no padding for numbers. I want my en datetime format to be "%-m/%-d/%y %-I:%M %p". For example, Ruby 1.9:
$ ruby1.9 -e 'puts Time.now.strftime("%-m/%-d/%y %-I:%M %p")'
2/26/10 3:07 PM
BTW, just updated to the latest -- the new number formatting stuff rocks.
I've installed plugin with:
script/plugin install git://github.com/fnando/i18n-js.git
And executed rake task:
rake i18n:setup
And I've got an error:
uninitialized constant SimplesIdeias
See http://rdoc.info/github/svenfuchs/i18n/master/I18n/Config#default_separator-instance_method
Would be nice to have an equivalent in i18n.js.
Hey,
if i change my i18n backend to
# config/initializers/i18n_backend.rb
TRANSLATION_STORE = Redis.new
I18n.backend = I18n::Backend::Chain.new(I18n::Backend::KeyValue.new(TRANSLATION_STORE), I18n.backend)
it throws an
NoMethodError (undefined method `initialized?' for #<I18n::Backend::Chain:0x007fca09d6c920>):
error.
if i remove the i18n.js gem it works fine.... i dont have any more backtrace for debugging...
kalle
ps. nice gem by the way, love it !
Patch : http://github.com/ZenCocoon/i18n-js/tree/properZ
P.S. : Thanks for your great lib, responsiveness and specifying your preferred patching process
Sébastien Grosjean - ZenCocoon
"You should change the path in i18n.js.yml to app/assets/javascripts/i18n to make full use of the asset pipeline."
Next add the following lines to your application.js to make the javascripts and translations available to your app:
3. To confirm, I'm supposed to add these two lines to "public/javascripts/application.js"?
//= require i18n
//= require i18n/translations
➜ maxhost git:(master) ✗ rake i18n:export --trace
(in /Users/ernest/Projekty/maxhost)
** Invoke i18n:export (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute i18n:export
rake aborted!
stack level too deep
/Users/ernest/Projekty/maxhost/vendor/plugins/i18n-js/lib/i18n-js.rb:66:in `to_json'
/Users/ernest/Projekty/maxhost/vendor/plugins/i18n-js/lib/i18n-js.rb:66:in `save'
/Users/ernest/Projekty/maxhost/vendor/plugins/i18n-js/lib/i18n-js.rb:63:in `open'
/Users/ernest/Projekty/maxhost/vendor/plugins/i18n-js/lib/i18n-js.rb:63:in `save'
/Users/ernest/Projekty/maxhost/vendor/plugins/i18n-js/lib/i18n-js.rb:22:in `export!'
/Users/ernest/Projekty/maxhost/vendor/plugins/i18n-js/lib/i18n-js.rb:18:in `each'
/Users/ernest/Projekty/maxhost/vendor/plugins/i18n-js/lib/i18n-js.rb:18:in `export!'
/Users/ernest/Projekty/maxhost/vendor/plugins/i18n-js/lib/tasks/i18n-js_tasks.rake:9
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `call'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:636:in `execute'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in `each'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:631:in `execute'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:597:in `invoke_with_call_chain'
/opt/ruby18/lib/ruby/1.8/monitor.rb:242:in `synchronize'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:590:in `invoke_with_call_chain'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:583:in `invoke'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2051:in `invoke_task'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `top_level'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `each'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in `top_level'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2023:in `top_level'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2001:in `run'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1998:in `run'
/opt/ruby18/lib/ruby/gems/1.8/gems/rake-0.8.7/bin/rake:31
/opt/ruby18/bin/rake:19:in `l
when rake i18n:export
Hi, first up: crackerjack plugin, I love it. (Using it on http://twerpscan.com/.)
I've found a tiny issue with the generated messages.js — it's missing a semicolon at the very end. The I18n.translations = …
is a variable declaration and the line needs to be ended properly. A problem arises if you make messages.js
a part of the javascript_include_tag
call. In production mode, all JS is concatenated, and if messages.js
wasn't the last entry in the list, it might "break" the generated all.js
, i.e. some JS parsers are stumbling over the missing semicolon.
Hi Nando,
Thanks for the tool! It's brilliant!
I've integrated the plugin to Padrino's framework.
All tests continue to pass and no major code was added to the base.
Feel free to integrate the branch in here https://github.com/dariocravero/i18n-js/tree/padrino_integration :)
Cheers!
Darío
Right now translation file write's everytime when middleware called. It should somehow check before write (by md5 hash or similar), that locales haven't changed since the last file write.
If you don't have a time, please advice me how to do it better and I'll attach patch in some time later.
Is it planned to include ability to specify pluralization rules for the languages other than English?
For example in Russian there are much more word forms depending on the count of objects. Pluralization rules for most languages can be found at Unicode site — http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/language_plural_rules.html
That's it for the gem part : http://github.com/ZenCocoon/i18n-js/tree/gem
Just make sure the descriptions, requirement suits your expectation in the Rakefie.
If you do some update there, don't forget to push your changes to the gemspec by doing :
rake gemspec
Once you happy with the release, check http://github.com/technicalpickles/jeweler at "Releasing to Gemcutter" to push it to gemcutter ;-)
Check jeweler "Versioning" to help you pushing version updates before each release, pretty simple thought ;-)
Let me know if something block ;-)
Whenever the lowercase word "yes" appears in the Rails language yaml (e.g. en.yml), and rake i18n:export is run, the resulting javascript translation will replace the word with "true". The same applies for "no" becoming false.
en:
yes: yes
no: no
other: Yes
becomes
{"en":{"true":"true","false":"false","other":"Yes"}
Hi Nando!
It seems that i18n-js has some problems with latest rubygems :(
I added it to my Gemfile and got this error:
bundle install
Invalid gemspec in [/Users/user/.rvm/gems/ruby-1.9.2-p180@chk2/specifications/i18n-js-1.1.0.gemspec]: Illformed requirement ["#<Syck::DefaultKey:0x00000105255d90> 0.8.7"]
Invalid gemspec in [/Users/user/.rvm/gems/ruby-1.9.2-p180@chk2/specifications/i18n-js-1.1.0.gemspec]: Illformed requirement ["#<Syck::DefaultKey:0x00000105255d90> 0.8.7"]
Fetching source index for http://rubygems.org/
/Users/user/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:289:in `load': uninitialized constant Syck::Syck (NameError)
My rubygems version:
gem -v
1.8.10
How can I fix this problem?
http://github.com/ZenCocoon/i18n-js/tree/percentz
Sébastien Grosjean - ZenCocoon
Include Railtie for Rails 3.
Basically, have one file per locale. So this would generate
app/assets/javascripts/
i18n/
en.js
pt-BR.js
es.js
If I want to change locales without reloading the page, or I don't care about having multiple locales loaded at the same time, I can just:
//= require_tree ./i18n
If, however, I want to require only the current locale because to change locales I need to reload anyway, and want to save some space on the request size:
<%= javascript_include_tag :i18n, "i18n/#{I18n.current_locale}", :application %>
Any thoughts on this?
From the Facebook and the Twitter API I get timestamps in different formats. I want to display them in a german locale with I18n.l()
, but the displayed time is not correct (the Facebook timestamp is 2 hours behind). I digged a little into the code and found that the I18n.parseDate()
method behaves (IMHO) strange. It doesn't respect the timezone information (other than 'Z'), whereas the Date.parse()
fallback handles it correctly.
I18n.locale = "de";
// From Facebook API
I18n.parseDate('2011-07-20T12:51:55+0000');
Wed Jul 20 2011 12:51:55 GMT+0200 (CEST)
I18n.parseDate('2011-07-20T12:51:55Z');
Wed Jul 20 2011 14:51:55 GMT+0200 (CEST)
// From Twitter API
I18n.parseDate("Wed Jul 20 13:03:39 +0000 2011");
Wed Jul 20 2011 15:03:39 GMT+0200 (CEST)
Is there a reason to have an own parseDate
implementation?
Here we go: http://github.com/ZenCocoon/i18n-js/tree/config
Configuration files management with support for :
only
keywordonly
supports scopes like "*.admin.*.title"
or even arrays like ["*.activerecord", "*.admin.*.title"]
The patch comes with test suits and updated documentation. Still make sure to review it anyway.
Sébastien Grosjean - ZenCocoon
I have a application-wide i18n file plus some controller-specific i18n files.
Now when I load both on a page, only the translations from the i18n file loaded last are available, the others are missing.
As a hack I included all application-wide translations in the controller-specific i18n file in i18n-js.yml thus loading the application-wide translations twice on those pages.
Am I doing something wrong in terms of configuration?
I suppose a reasonable solution would be not to set I18n.translations equal the following array of translations, but to add the array of translations to it thus making it possible to have multiple files in one page.
The gem allows a variety of ways to generate and organize the files with translations. There is also the public/javascripts/i18n.js
file, that is required by all the generated scripts. The README does not specify if there is a recommended way to include these in HTML files and ERB templates.
Is there a recommended approach?
When toNumber is passed a negative number it can result in output like this: -,123. The delimiter should not be present. The problem appears to be that the n array ends up with the negative character as the first element. Here is a possible fix that is work for me. It would start at line 255 in i18n.js:
var negative = null;
if (number.charAt(0) == '-') {
negative = number.substr(0, 1);
number = number.substr(1, number.length);
}
while (number.length > 0) {
n.unshift(number.substr(Math.max(0, number.length - 3), 3));
number = number.substr(0, number.length -3);
}
var formattedNumber = n.join(options["delimiter"]);
if (negative != null) {
formattedNumber = negative + formattedNumber;
}
I'm not sure if the proper etiquette is to fork and keeping going or to let the author know. I've opted for the later but, feel free to tell me to buzz off and do the former.
I am using rails 2.2.2
While running "rake i18n:js:setup", i am getting following error
Don't know how to build task 'i18n:js:setup'
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.