Hi,

Some other opinions?

Thanks,
Caty


On Wed, Jan 29, 2014 at 11:42 AM, Guillaume "Louis-Marie" Delhumeau <
[email protected]> wrote:

> One more thing:
>
> = Cient-Side compilation =
>
> LESS is written in javascript. It is possible to "compile" a .less file to
> .css on the server-side, but it is also possible to do it on the
> client-side (see: http://www.lesscss.org/#usage ).
>
> In my opinion, it should be always done server-side, but except in one
> case:
> in the color theme editor.
>
> In this case, it is possible to use the JS API of LESS in the browser:
>
> less.modifyVars({
>     '@buttonFace': '#5B83AD',
>     '@buttonText': '#D9EEF2'
> });
>
> In this example, it changes the color or every buttons on the fly.
>
> = Integration with java =
>
> Some links:
>
> * Official LESS CSS Compiler for Java
> ** https://github.com/marceloverdijk/lesscss-java
> ** The compiler uses Rhino, Envjs (simulated browser environment written in
> JavaScript), and the official LESS JavaScript compiler.
>
> Example of use:
>
> // Instantiate the LESS compiler
> LessCompiler lessCompiler = new LessCompiler();
>
> // Compile LESS input string to CSS output string
> String css = lessCompiler.compile("@color: #4D926F; #header { color:
> @color; }");
>
> // Or compile LESS input file to CSS output file
> lessCompiler.compile(new File("main.less"), new File("main.css"));
>
>
>
> * LessCSS4j
> ** https://github.com/localmatters/lesscss4j
> ** the author claims it has better performances that the official compiler.
>
> Example of use:
>
> StyleSheetResource resource = new FileStyleSheetResource(filename);
> LessCssCompiler compiler = new DefaultLessCssCompilerFactory().create();
> compiler.compile(resource, System.out, null);
>
>
> * Sass-Java:
> ** https://github.com/darrinholst/sass-java
> ** "Compiles sass to css on-the-fly with compass
> <http://compass-style.org/>via a j2ee servlet filter".
> ** Not sure if we can use it.
>
> * Others java compilers for sass look dead.
>
> Louis-Marie
>
>
> 2014-01-28 Guillaume "Louis-Marie" Delhumeau <[email protected]>
>
> > Just my 2 cents:
> >
> > = About variables =
> > - in LESS, variables are prefixed by @:
> >   @defaultColor: #004400;
> >
> > - in SASS, variables are prefixed $, just like velocity:
> >   $defaultColor: #004400;
> >
> > So, if we use velocity and SASS, what $defaultColor is? A velocity
> > variable? A sass variable?
> >
> > We can escape the $ to make the distinction between sass and velocity
> > variables, but it is not very friendly.
> >
> > = About mixins =
> > Mixins are kind of macros, that we have in velocity. I prefer the
> > implementation of SASS than LESS. The logical operations seem better in
> > SASS too.
> > See: http://css-tricks.com/sass-vs-less/
> >
> > Louis-Marie
> >
> >
> > 2014-01-28 Ecaterina Moraru (Valica) <[email protected]>
> >
> > Hi,
> >>
> >> As part of the 6.0 Roadmap we have as entry the creation/integration of
> a
> >> new Skin inside XWiki.
> >>
> >> Currently there are 2 proposals for the new skin:
> >> Flamingo http://design.xwiki.org/xwiki/bin/view/Improvements/Skin4x
> >> Junco http://design.xwiki.org/xwiki/bin/view/Proposal/JuncoSkin
> >>
> >> Both proposals are done using Twitter's Bootstrap framework (
> >> http://getbootstrap.com).
> >> Bootstrap officially is written using Less ( http://www.lesscss.org/ )
> >> and
> >> is the default pre-processor they support. There is also a Sass (
> >> http://sass-lang.com/ ) version for Bootstrap (
> >> https://github.com/twbs/bootstrap-sass ) so the idea is that the
> >> preprocessor variant is not limiting us in integrating Bootstrap.
> >>
> >> The question we discuss in this thread is what preprocessor we should
> >> integrate in platform when we integrate Bootstrap (that in the case we
> >> integrate either of these tools).
> >>
> >> Currently Junco's extension is done with Bootstrap + Less. My decision
> to
> >> use this combination was done after a light research and mostly based
> on a
> >> personal preference of the Less language.
> >>
> >> We are having this preprocessors discussion so late (they appeared in
> >> 2007-2009) because we didn't really need a preprocessor until now. The
> >> base
> >> functionality they add we solved by using Velocity (we have CSS3 prefix
> >> macros defined in macro.vm that are similar to the compatibility mixins
> >> provided by Bootstrap, we have also a ColorThemes variables solution for
> >> reusing color values and because we can have Velocity code inside our
> >> stylesheets we cover most of the functions&operations need).
> >>
> >> The only downside for us using Velocity to do these kind of things is
> that
> >> the functionality we cover is very basic and was done only if we had a
> >> certain need. This is not necessarily a bad thing but it's kind of a
> >> limitation for external developers that might want to make more complex
> >> things. Less and Sass community members are very active and they make
> sure
> >> their functionality is tested and covers most of the cases. Also there
> are
> >> some features (like extends, etc.) that would be hard for us to
> duplicate
> >> in Velocity.
> >>
> >> Just as a note, adding Less doesn't mean we are replacing Velocity. We
> are
> >> just replacing the CSS things done in Velocity with Less functionality.
> >> Replacing Velocity with another templating engine should be the topic
> for
> >> another thread (in case we are considering this).
> >>
> >> If we integrate Less, what is currently done with CSS+Velocity will be
> >> done
> >> using Less(CSS)+Velocity(less code).
> >> If we integrate Sass (because Sass also has control directives) we
> >> transform CSS+Velocity in Sass(CSS)+Velocity(even less code) but the API
> >> calls will still need to be added with Velocity (so still we will not
> have
> >> just Sass).
> >>
> >> One of the problems with the preprocessors is that they depend on
> >> Javascript or Ruby (there are some versions also on Java in case of
> Sass,
> >> but not officially maintained). So first we need to find a solution to
> >> compile Less/Scss files into CSS, inside our platform.
> >>
> >> If you make a Google search you'll see that there are much more
> >> 'recommendations' to pick Sass over Less. One remark regarding this is
> >> that
> >> we need to understand that right now Sass is used on a different
> >> technologies stack (mostly for Ruby applications). Sass is very
> attractive
> >> because of its power. But what we need to ask ourselves is if we need
> the
> >> full power of Sass (because some of it is already covered by Velocity).
> >>
> >> Personally I prefer Less, but that's because of the separation of
> concerns
> >> (structure, presentation, behavior). I prefer the limitations Less has
> >> (regarding control structure) in order to not be tempted to write logic
> >> with a language that is not supposed to do that (even though it can).
> >> Preprocessors should be used exclusively to write CSS and especially to
> >> write it more rapid (nesting, mixins).
> >> Also Less syntax is more close to default CSS syntax, which IMO is a big
> >> plus.
> >>
> >> But because of its power, Sass could be in the future the new 'JQuery',
> >> since right now it has a bigger community. One of the advantages of
> >> picking
> >> a technology later is that at least you see some clear candidates (and
> we
> >> don't need to consider other preprocessors like Stylus, etc.).
> >>
> >> Let me know what you think.
> >> Thanks,
> >> Caty
> >> _______________________________________________
> >> devs mailing list
> >> [email protected]
> >> http://lists.xwiki.org/mailman/listinfo/devs
> >>
> >
> >
> _______________________________________________
> devs mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/devs
>
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to