2012-04-24 10 views
6

Czy istnieje parser/biblioteka dla "css stylus" dostępna dla php?Skrypt/biblioteka Preprocessor PHP dla Stylusa?

Jeśli nie, proszę sugerować coś podobnego, jeśli nie lepsze. Prawdopodobnie jest to lekka biblioteka, która sprawia, że ​​twoje życie koduje css, łatwiej w php.

Składnia stylus oddziela wszystkie dwukropki, średniki, nawiasy i większość nawiasów od zwykłego skryptu CSS. Surowa prostota i elegancja przypomina mi Lispa. Zadziwiające jest to, że Stylus będzie również akceptował regularną składnię CSS w tym samym pliku, zmniejszając możliwe tarcie pomiędzy wieloma współtwórcami.

+0

Szczególnie podoba mi się [LESS] (http://lesscss.org/), ale znowu jest to po prostu inny sposób pisania CSS, nie rozumiem, w jaki sposób ci pomocnicy pasują do kategorii "php parser". Czy chcesz zapisać je w pliku php (aby był renderowany dynamicznie)? Wtedy nie trzeba "parsować" go, po prostu generować bezpośrednio w pożądany sposób (zwykły CSS, rozebrany styl CSS lub cokolwiek innego) –

+0

I zamiast kopiować "dodatkowy bezużyteczny opis" (który przypomina sposób SPAM, nawiasem mówiąc), mógłbyś dodać dodatkowe użyteczne informacje, tj. to, czego naprawdę potrzebujesz, czego szukasz, co robi parser (parsowanie już utworzonego arkusza stylusa css?), itp. –

+0

jasno określiłem, co naprawdę potrzebuję przeczytaj uważnie to pytanie, a następnie odpowiedz. – Amanpreet

Odpowiedz

2

Nie. Istnieje wiele alternatyw, na które można spojrzeć, np. LESS, Sass, HSS. Być może istnieje parser PHP dla jednego z nich.

+2

Sass jest fajną alternatywą, dzięki, ale chyba nie jest tak dobry jak rysik, myślę, że trzeba pisać parser od zera, dzięki jeszcze raz – Amanpreet

3

Bump. Wydaje się, że nadal nie ma łatwej w użyciu metody wprowadzania rysika do php. Oto moje obejście problemu (tylko Linux, tylko rozwój lokalny). Inspiruje mnie moja ostatnia question about FAM.

zainstalować incron i rysika, pod ubuntu to byłoby

sudo apt-get install incron 
sudo npm install stylus -g 

dostęp incron tablicy monitorującej

incrontab -e 

i dodać następujące z odpowiednimi modyfikacjami:

/var/www/css/my.styl IN_MODIFY /usr/local/bin/stylus /var/www/css/my.styl 

co w skrócie oznacza przekompiluj plik my.styl do pliku my.css podczas zmiany pliku.

add wynikające css html nagłówku

<link href="path/tom/my.css" rel="stylesheet" type="text/css" /> 

Kiedykolwiek zapisać plik .styl, twój .css będą zrekompilowane w tle. Pomiń plik styus we wdrożeniu, użyj skompilowanego pliku.

+0

Działa tak długo, jak plik jest statyczny, teraz powiedzmy, że css jest specyficzna dla wersji i generowana przez PHP mamy problem, więc ... także "incron" będzie obsługiwał zdarzenia w systemie plików, ale z dynamiczną zawartością PHP nie jestem pewien, czy to zadziała. Dzięki za podpowiedź była/warto się zagłębić. – Amanpreet

+2

Dlaczego nie po prostu "stylus - watch path/to/stylus/file.styl"? Stylus ma wbudowaną funkcję zegarka. – Roshambo

8

Ja też szukałem Stylus parser for PHP. Po znalezieniu żadnego, stworzyłem podstawowy i umieściłem go na GitHub, aby inni mogli go używać/ulepszać.

Aktualne funkcje 3/20/2013:

  • Omit szelki
  • pominąć średników
  • pominąć średników
  • funkcje niestandardowe
  • Importowanie innych plików
  • "& "nadrzędny odnośnik
  • Wstawki
  • interpolacji
  • Zmienne
2

Dlaczego nie wystarczy użyć oryginalną realizację node.js?

exec będzie działać dobrze, ale należy go używać tylko w środowisku programistycznym.

<?php exec('/path/to/stylus stylesheet.styl'); ?> 

Podczas produkcji należy wstępnie skompresować rysik, aby zapewnić zarówno wydajność, jak i bezpieczeństwo.