...
Where is the locale to be set that the browser can know the locale ? Thanks very much! Cheers, Neil On Oct 26, 7:50 pm, Timothy Perrett <timo...@getintheloop.eu> wrote: > setLocale was a method created by me, specific to my application - it > does not exist in Lift... hence why I removed it in my simplified > example. > > Cheers, Tim > > On 26 Oct 2009, at 11:45, Neil.Lv wrote: > > > > > I have a silly question , where is the setLocale method ? > > > I don't know where the package located. > > > src\main\scala\bootstrap\liftweb\Boot.scala:63: error: not found: > > value setLocale > > setLocale(selectedLocale) > > > :) > > > Cheers, > > Neil > > > On Oct 26, 5:50 pm, Timothy Perrett <timo...@getintheloop.eu> wrote: > >> Yes, your template code is right - your just seeing the default value > >> because you have not told lift what resources to use when it gets the > >> locale header from the browser. > > >> tryo() is like try/catch however, it will catch exceptions and > >> returns > >> Box[T] > > >> I would really suggest starting with something a lot simpler than the > >> one i detailed that uses cookies and all sorts. Perhaps something > >> like: > > >> def localeCalculator(request : Box[HTTPRequest]): Locale = > >> request.flatMap(r => { > >> tryo(r.locale) match { > >> // your match here > >> } > > >> }).openOr(java.util.Locale.getDefault()) > > >> Hope that helps > > >> Cheers, Tim > > >> On 26 Oct 2009, at 09:21, Neil.Lv wrote: > > >>> <lift:loc locid="login">Log in 222</lift:loc> > >>> That means this code is correctly, the problem is that the browser > >>> doesn't know the locale? > > >>> So we need to calculate the locale in the Boot.scala file ? > > >>> Cheers, > >>> Neil > > >>> On Oct 26, 5:09 pm, "Neil.Lv" <anim...@gmail.com> wrote: > >>>> tryo(r.getParameter("locale")) match { > >>>> case Full(null) => workOutLocale > >>>> case Empty => workOutLocale > >>>> case Failure(_,_,_) => workOutLocale > >>>> case Full(selectedLocale) => { > >>>> setLocale(selectedLocale) > >>>> selectedLocale > >>>> } > >>>> } > > >>>> In this code , what's the tryo ? is try ? > >>>> tryo () match {} > > >>>> What's the changes about the HTTP container providers? > > >>>> Thanks very much! > > >>>> Cheers, > >>>> Neil > > >>>> On Oct 26, 4:44 pm, Timothy Perrett <timo...@getintheloop.eu> > >>>> wrote: > > >>>>> Hmm - you posted a link to my article at the begining of this > >>>>> thread; > >>>>> in that article I explain lifts locale calculator. Without this, > >>>>> Lift > >>>>> has no idea how you want to handle different locales. By default, > >>>>> the > >>>>> following is used: > > >>>>> var localeCalculator: Box[HTTPRequest] => Locale = > >>>>> defaultLocaleCalculator _ > > >>>>> def defaultLocaleCalculator(request: Box[HTTPRequest]) = > >>>>> request.flatMap(_.locale).openOr(Locale.getDefault()) > > >>>>> As you can see, that will get only the locale of your JVM, not the > >>>>> browser. You will need to write the appropriate locale calculator; > >>>>> the > >>>>> one in my article is a little out of date as there was a breaking > >>>>> change not so long ago to the HTTP container providers but it > >>>>> should > >>>>> give you enough to go on. > > >>>>> Does that help? > > >>>>> Cheers, Tim > > >>>>> On Oct 26, 8:35 am, "Neil.Lv" <anim...@gmail.com> wrote: > > >>>>>> 1:) I create a file in the i18n folder > >>>>>> /src/main/resources/i18n/lift-core_zh_CN.properties > >>>>>> ..... > >>>>>> login = \u767b\u5f55 > >>>>>> logout = \u9000\u51fa > >>>>>> log.in = \u767b\u5f55 > >>>>>> log.out = \u9000\u51fa > >>>>>> sign.up = \u6ce8\u518c > >>>>>> logged.in = \u5df2\u7ecf\u767b\u5f55 > >>>>>> ...... > >>>>>> the others are default (copy from lift-core_en_US.properties) > > >>>>>> 2:) > >>>>>> ### index.html > >>>>>> <lift:surround with="default" at="content"> > >>>>>> <lift:loc id="login">Log in 111</lift:loc> > >>>>>> <lift:loc locid="login">Log in 222</lift:loc> > >>>>>> </lift:surround> > > >>>>>> The lift:loc doesn't work that it should read the i18n string > >>>>>> from the > >>>>>> lift-core_zh_CN.properties and show the chinese chars, (login = > >>>>>> \u767b > >>>>>> \u5f55) > > >>>>>> but it always shows the default string (Log in 111, Log in 222). > > >>>>>> Has anything will be config ? > > >>>>>> Cheers, > >>>>>> Neil > > >>>>>> On Oct 26, 4:17 pm, Timothy Perrett <timo...@getintheloop.eu> > >>>>>> wrote: > > >>>>>>> Neil, > > >>>>>>> Can you zip and send me an example? It's quite likley your > >>>>>>> missing > >>>>>>> something and without seeing the code it's difficult to say. > > >>>>>>> Cheers, Tim > > >>>>>>> Sent from my iPhone > > >>>>>>> On 26 Oct 2009, at 03:54, "Neil.Lv" <anim...@gmail.com> wrote: > > >>>>>>>> in the /index.html > >>>>>>>> ### both of them are not work ! > >>>>>>>> <lift:loc locid="log.in">Log in</lift:loc> > >>>>>>>> <lift:loc id="log.in">Log in</lift:loc> > >>>>>>>> ### > > >>>>>>>> Cheers, > >>>>>>>> Neil > > >>>>>>>> On Oct 25, 6:27 pm, Timothy Perrett <timo...@getintheloop.eu> > >>>>>>>> wrote: > >>>>>>>>> Neil, > > >>>>>>>>> This is normal practice with java localisation - the best > >>>>>>>>> thing is do > >>>>>>>>> write all your strings then use native2ascii or similar > >>>>>>>>> tooling to > >>>>>>>>> convert it into the unicode representation. > > >>>>>>>>> Glad you found my article helpful. > > >>>>>>>>> Cheers, Tim > > >>>>>>>>> On Oct 25, 5:02 am, "Neil.Lv" <anim...@gmail.com> wrote: > > >>>>>>>>>> if i use this code and it works correctly ! > > >>>>>>>>>> Code: > >>>>>>>>>> ### > >>>>>>>>>> login = \u52a8\u4f5c > >>>>>>>>>> ### > > >>>>>>>>>> But it's so difficult to write code ! > > >>>>>>>>>> I don't know what happens with it . > > >>>>>>>>>> Cheers, > >>>>>>>>>> Neil > > >>>>>>>>>> On Oct 25, 7:19 am, David Pollak > >>>>>>>>>> <feeder.of.the.be...@gmail.com> > >>>>>>>>>> wrote: > > >>>>>>>>>>> Please make sure your lift-core_zh_CN.properties was saved > >>>>>>>>>>> as UTF-8 > > >>>>>>>>>>> On Sat, Oct 24, 2009 at 11:31 AM, Neil.Lv > >>>>>>>>>>> <anim...@gmail.com> > >>>>>>>>>>> wrote: > > >>>>>>>>>>>> Hi all, > > >>>>>>>>>>>> I create a props file in the resources folder /src/main/ > >>>>>>>>>>>> resources/ > >>>>>>>>>>>> i18n/lift-core_zh_CN.properties > > >>>>>>>>>>>> And i changed the "log.in" text value. > > >>>>>>>>>>>> Now i use this code in my index.html page, and it doesn't > >>>>>>>>>>>> corretly. > >>>>>>>>>>>> (garbled) > > >>>>>>>>>>>> ### it doesn't work > >>>>>>>>>>>> <lift:loc locid="log.in">Log in</lift:loc> > >>>>>>>>>>>> ### > > >>>>>>>>>>>> This information from: > > >>>>>>>>>>>>http://blog.getintheloop.eu/2009/7/26/how-to-extensive-localization-w > >>>>>>>>>>>> ... > > >>>>>>>>>>>> Cheers, > >>>>>>>>>>>> Neil > > >>>>>>>>>>> -- > >>>>>>>>>>> Lift, the simply functional web frameworkhttp://liftweb.net > >>>>>>>>>>> Beginning Scalahttp://www.apress.com/book/view/1430219890 > >>>>>>>>>>> Follow me:http://twitter.com/dpp > >>>>>>>>>>> Surf the harmonics --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~----------~----~----~----~------~----~------~--~---