Массив меньшего количества петель с защитой примеси

Я ищу ответ об этом:

У меня есть миксины с петлей внутри:

@global-language-array: fr, de, es, en;
@language-array-length: length(@global-language-array);

        .landing-specific(  @landing-name,
                        @landing-color,
                        @landing-bg-color,
                        @landing-alt-start: 0,
                        @landing-alt-end: 0,
                        @landing-search-color: @landing-color,
                        @custom-heart: false,
                        @landing-multi-language: false) {

                & when (@landing-multi-language) {
                    .lang-loop (@language-array-length) when (@language-array-length > 0) {
                        @lang: extract(@global-language-array, @language-array-length); 
                                html[lang="@{lang}"] & {
                                    background-image: url(../img/bg/texture.png), url(~"../img/culture/@{lang}/view/landing-default/@{landing-name}/banner-lg.jpg");
                                }
                            .lang-loop (@language-array-length - 1);  
                        }
                    .lang-loop(@language-array-length);
                    }
    }

Я искал везде в Интернете, но я не могу помочь себе и найти, как я мог бы: переопределить мою @language-array-length в моих аргументах, специфичных для .landing, чтобы зацикливаться только на этом новом массиве обновлений.

Я не уверен, что я очень ясен, извините за мой английский и спасибо, кто может помочь мне в этой кропотливой задаче.

Это css, которого я пытаюсь достичь:

@media (min-width: 1200px) {
  .organisation.alt-1 .banner-landing {
    background-image: url(../img/bg/texture.png), url(../img/view/landing-default/organisation/banner-alt-1-lg.jpg);
  }
  .organisation .banner-landing {
    background-image: url(../img/bg/texture.png), url(../img/view/landing-default/organisation/banner-lg.jpg);
  }
  html[lang="en"] .organisation .banner-landing {
    background-image: url(../img/bg/texture.png), url(../img/culture/en/view/landing-default/organisation/banner-lg.jpg);
  }
  html[lang="es"] .organisation .banner-landing {
    background-image: url(../img/bg/texture.png), url(../img/culture/es/view/landing-default/organisation/banner-lg.jpg);
  }
  html[lang="de"] .organisation .banner-landing {
    background-image: url(../img/bg/texture.png), url(../img/culture/de/view/landing-default/organisation/banner-lg.jpg);
  }
  html[lang="fr"] .organisation .banner-landing {
    background-image: url(../img/bg/texture.png), url(../img/culture/fr/view/landing-default/organisation/banner-lg.jpg);
  }
  .organisation .slide-fade {
    background-image: url(../img/bg/texture.png), url(../img/view/landing-default/organisation/banner-lg-fade.jpg);
  }
}

Для каждой страницы у меня есть миксины, например: .landing-specific(organization, #487e19, #a0d474, 1, 1);

Я хочу генерировать стили, специфичные для языка, только если язык находится в массиве.

Это относительно сложно объяснить, извините :/


person Jean-Yves Le Cabellec    schedule 17.02.2016    source источник
comment
Извините, не совсем понятно, что вы пытаетесь сделать. Можете ли вы показать нам ожидаемый результат CSS? Может быть, таким образом мы сможем сопоставить.   -  person Harry    schedule 17.02.2016
comment
Здравствуйте, я добавил CSS, как вы просили.   -  person Jean-Yves Le Cabellec    schedule 17.02.2016
comment
специфичные для языка стили, только если язык находится в массиве. Вы имеете в виду, что хотите отправить массив в миксин (скажем, en, es, xy) и сгенерировать специфичные для языка стили только для en, es, потому что они находятся в вашем глобальном массиве и игнорируют xy?   -  person Harry    schedule 17.02.2016
comment
Хм, я думаю, я прекрасно понимаю вопрос, но что до сих пор пробовал оп? (мы не должны писать для него код, не так ли?) - параметрические миксины имеют достаточно информации для начала. @Jean Ты пытался понять, что делает миксин? Если вы этого не сделали, я боюсь, что мы не сможем помочь, потому что вы действительно просто просите нас написать код для вас, а здесь, в SO, это не рекомендуется.   -  person seven-phases-max    schedule 17.02.2016
comment
Или, другими словами, начните с базового примера и попытайтесь адаптировать его к вашим конкретным потребностям (тогда мы могли бы помочь, если вы остановитесь с конкретная проблема).   -  person seven-phases-max    schedule 17.02.2016
comment
@Harry: точно, мне удается сделать это в существующем массиве, но я не могу добиться этого, передав их в новый обновленный массив.   -  person Jean-Yves Le Cabellec    schedule 17.02.2016
comment
@seven: я просто пытаюсь найти помощь. И я закрепил документацию less.js в своем браузере, так что...   -  person Jean-Yves Le Cabellec    schedule 17.02.2016
comment
@seven-phases-max: спасибо за ваши ссылки, я нашел решение, выполнив новый миксин (например, перевод из вашей ссылки), и я назвал его там, где это было необходимо. Не лучшее оптимизированное решение, но оно работает.   -  person Jean-Yves Le Cabellec    schedule 17.02.2016