माणिक के बिना सैस या कम्पास?


102

क्या रूबी के बिना सैस या कम्पास या ऐसा कुछ भी इस्तेमाल करने का कोई तरीका है?

मैं Google और इस साइट को देख रहा हूँ और इसे कुछ भी नहीं पा रहा हूँ, किसी भी मदद की सराहना की जाएगी। धन्यवाद



3
क्या यह वास्तविक प्रश्न है? मेरा मतलब है कि यह स्पष्ट नहीं है कि आपका क्या मतलब है। क्या अन्य सीएसएस प्री-प्रोसेसर हैं जो रूबी पर भरोसा नहीं करते हैं? हाँ। क्या रूबी के बिना सैस को संकलित करने का एक तरीका है? निर्भर करता है। हमें और पृष्ठभूमि चाहिए।
जमुंड फर्ग्यूसन

लेकिन आप यह निर्दिष्ट नहीं करते हैं कि आप किस भाषा में पार्सर को लिखना पसंद करेंगे।
अलेजांद्रो गार्सिया इग्लेसियस

1
क्या पूर्व-संकलित संस्करण डाउनलोड करने का एक तरीका है?
विलियम

जवाबों:


53

सैस मूल रूप से रूबी के लिए लिखा गया था, लेकिन अब उन्होंने लिबास बनाया है जो C/C++सैस इंजन का एक बंदरगाह है, जिससे इंजन को आईडीई या किसी अन्य भाषा में एकीकृत करना आसान हो जाता है। इस बिंदु पर, आप Ruby, Node.js , Python , PHP , Java , .NET और अन्य में Sass इंजन का उपयोग कर सकते हैं। अधिक जानकारी के लिए, libSass पर जाएं । इसके अलावा, आपके IDE में एक प्लगइन हो सकता है, जो Sass को सपोर्ट करेगा, बिना libSass का उपयोग करके रूबी की आवश्यकता के बिना।

नीचे दिए गए मूल उत्तर आपकी स्थिति पर लागू हो सकते हैं या नहीं भी हो सकते हैं (यह निर्भर करता है कि आपकी भाषा ने libSass के लिए समर्थन लागू किया है या नहीं)। मैंने इसे संग्रह के कारणों के लिए छोड़ने का फैसला किया।


सैस (रूबी की आवश्यकता है)

रूबी में सैस लिखा है, इसलिए आपको रूबी को भी इंस्टॉल करना होगा। Sass की साइट से लिया गया

कम्पास (रूबी की आवश्यकता है, क्योंकि यह एसएएस पर आधारित है)

Compass एक ओपन-सोर्स CSS ऑथरिंग फ्रेमवर्क है जो लेखन स्टाइलशीट को शक्तिशाली और आसान बनाने के लिए Sass स्टाइलशीट भाषा का उपयोग करता है। कम्पास की साइट से लिया गया

कम (js में लिखा गया है, नोड की आवश्यकता है। पृष्ठ में शामिल j.js या उससे कम। Js)

LESS CSS को डायनेमिक व्यवहार जैसे कि चर, मिश्रण, संचालन और कार्यों के साथ बढ़ाता है। Lode Node.js और Rhino के साथ क्लाइंट-साइड (क्रोम, सफारी, फ़ायरफ़ॉक्स) और सर्वर-साइड दोनों पर चलता है। कम साइट से लिया गया

ये मुख्य प्रोसेसर हैं जो मुझे पता हैं। आप अपनी पसंद के किसी भी अन्य भाषा के लिए अपना पार्सर / पोर्ट लिख सकते हैं।

दूसरे शब्दों में, नहीं, आप रूबी होने के बिना sass / कम्पास का उपयोग नहीं कर सकते क्योंकि प्रोग्राम खुद (sass & कम्पास) रूबी में लिखा गया है। तो आपको इसे चलाने के लिए निश्चित रूप से इसकी आवश्यकता होगी।


यह तकनीकी रूप से सटीक है लेकिन वास्तव में इस बिंदु पर नहीं है क्योंकि विभिन्न प्लगइन्स आपके लिए इसकी देखभाल कर सकते हैं। उदाहरण के लिए Visual Studio में Mindscape Workbench प्लगइन है जिसमें एक आत्म निहित रूबी वातावरण है जिसके बारे में आपको चिंता करने की आवश्यकता नहीं होगी। इसमें आपके लिए कम्पास शामिल नहीं होगा जो कि एक तरह का डाउनर है।
जॉर्ज मौएर

@ ट्रॉयोसेंटीनो या स्टाइलस
एलेजांद्रो गार्सिया इग्लेसियस

नहीं, मैंने अन्य भाषाओं में समान संकलक खोजने की कोशिश नहीं की है। आपको किसी भी सभ्य भाषा में खरोंच से एक संकलन लिखने में सक्षम होना चाहिए, लेकिन यह संभवतः आपको बहुत समय लगेगा। पहले आपको सीएसएस को पार्स करने में सक्षम होना चाहिए (और सीएसएस सिंटैक्स में किसी भी त्रुटि का पता लगाना) और फिर आपको "संकलन" करना होगा (जो कि ज्यादातर सुधार है - यानी सीएसएस कोड एक पंक्ति है) सीएसएस। उसके बाद आप संभवतः विरासत के साथ कई सीएसएस जोड़ना चाहेंगे। यदि आपको लगता है कि आपके पास समय है, तो आप इसे करने की कोशिश कर सकते हैं और परिणाम हमारे साथ साझा कर सकते हैं :)
tftd

1
नेट भी नेटली नेटगेट पैकेज का उपयोग कर नेट में संभव है।
डेविड बोइक

27

यह सच है कि प्रश्न पर्याप्त रूप से स्पष्ट नहीं है, लेकिन मैं कुछ मुद्दों को संबोधित करने का प्रयास करूंगा। वहाँ रहे हैं अन्य सीएसएस पूर्व प्रोसेसर कि रूबी (दो पर भरोसा नहीं करते अभी मेरे दिमाग में आ रहे हैं उससे कम है, जो मैं इस्तेमाल किया है और पसंद किया है, लेकिन सास के रूप में के रूप में शक्तिशाली नहीं है, और स्टाइलस , जो मैं उपयोग नहीं किया है, दोनों जावास्क्रिप्ट के आधार पर), लेकिन जैसा कि आप विशेष रूप से सैस + कम्पास के बारे में पूछ रहे हैं, और जैसा कि मैं अभी भी उसी उत्तर की तलाश में हूं, मैं उस बारे में बात करूंगा।

@JamundFerguson ने कहा:

क्या रूबी के बिना सैस को संकलित करने का एक तरीका है? निर्भर करता है।

वहाँ है

सैस एक पूर्व-प्रसंस्करण भाषा है। रूबी में इसके लिए एक कंपाइलर बनाया गया है और कोई भी किसी भी भाषा में कंपाइलर लिख सकता है। वहाँ एक Cass कंपाइलर का कार्यान्वयन है जिसे libsass कहा जाता है जिसका उपयोग किसी भी भाषा पर किया जा सकता है जो C libs को आयात करने की अनुमति देता है। यह नोड-एसएएस द्वारा उपयोग की जाने वाली लाइब्रेरी है , जो कि Node.js में निर्मित एक कंपाइलर है , जिसे मैंने अभी तक कोशिश नहीं की है और यह नहीं जानता कि यह कैसे काम कर सकता है और यदि यह उत्पादन उपयोग के लिए तैयार है। यह समय का सवाल हो सकता है कम्पास पोर्ट की करने के लिए (शायद आपको लगता है कि कर अंत?) और इसलिए हम एक संकलक जो रूबी मणि पर निर्भर करता है नहीं करता है हो सकता है (वर्तमान में, वहाँ एक है नोड कम्पास मॉड्यूल करता है पर निर्भर करता है माणिक रत्न)।

अन्य भाषाएँ

अब तक मैंने एक Node.js संकलक के लिए संभावना का उल्लेख किया है, जो, जैसा कि आप जानते हैं, यह एक जावास्क्रिप्ट वातावरण है, वेब की भाषा और मेरी पसंद की भाषा होने के नाते। लेकिन आपने यह निर्दिष्ट नहीं किया कि आप किस भाषा में संकलक लिखना चाहते हैं। मुझे लगता है कि कई भाषाओं में निर्मित कंपाइलर हो सकते हैं, उदाहरण के लिए, @EricMeyer ने पायथन कंपाइलर का उल्लेख किया है । शायद वह pyScss का उपयोग कर रहा है ? ऐसा लगता है कि कंपास के लिए बिल्ट-इन सपोर्ट है। लेकिन फिर आपको पायथन पर्यावरण की आवश्यकता है। तो बात यह है: आप एक संकलक के लिए कुछ वातावरण की आवश्यकता होगी जब तक आप मूल रूप से संकलित बायनेरिज़ चलाते हैं। (कम में कम.जेएस हैं जो क्लाइंट-साइड चलाने और संकलन चरण से बचने के लिए पेज पर शामिल किए जा सकते हैं, लेकिन इसका उपयोग उत्पादन पर करने के लिए नहीं है।)

नेटिव एप्स

मैंने एक साल तक CodeKit के साथ काम किया है, जो बहुत अच्छा करता है, Sass / Compass, Less, Stylus और टेम्पलेट लैंग्वेज जैसे Haml, Slim, Jade, आदि को संकलित करता है जब आपकी संपत्तियाँ बदल जाती हैं, जब वे अपने आप बदल जाती हैं और आप तुरंत अपने ब्राउज़र पर परिवर्तित होते देखते हैं। केवल एक चीज जो मुझे पसंद नहीं थी वह यह थी कि जब एक अलग कंप्यूटर पर जाना, कोडकिट स्थापित करना, परियोजना की जांच करना और इसका उपयोग करने की कोशिश करना, तो मुझे परियोजना सेटिंग्स को फिर से कॉन्फ़िगर करना पड़ा, जिसे मुझे याद रखना था ताकि मैं एक बिल्ड में पहुंच सकूं जैसे मैं दूसरे कंप्यूटर में बना हूं। इसके अलावा, मैंने एक टीम के साथ काम करना शुरू कर दिया, और उनके पास एक ही सेटिंग्स के साथ प्रोजेक्ट को कॉन्फ़िगर करने के लिए भी था (कभी-कभी एक ही प्रोजेक्ट कॉन्फिग को बदसूरत असंगति पैदा नहीं करता है) और उबंटू का उपयोग करने वाली टीम के सदस्य भी इसका उपयोग नहीं कर सकते थे। इसलिए मैंने प्रोजेक्ट बनाने और खोजे जाने के लिए कमांड-लाइन टूल बनाने पर विचार करना शुरू कियातुरंत, और इसके साथ प्यार हो गया। जैसा कि @Dave ने उल्लेख किया है, स्काउट है और वहां LiveReload भी है , लेकिन उनका उपयोग नहीं किया है।

निष्कर्ष

निष्कर्ष I एक मजबूत निष्कर्ष नहीं है। मैं अभी भी उसी उत्तर की तलाश कर रहा हूं, लेकिन मुझे उम्मीद है कि यह उत्तर रूबी पर्यावरण के बाहर सैस / कम्पास को संकलित करने की स्थिति पर थोड़ा प्रकाश डालता है।


1
परिवाद की स्थिति के लिए: solitr.com/blog/2014/01/state-of-libsass , जिस पर नोड- sass और अन्य sass- लाइब्रेरी निर्भर करती हैं।
एहतेश चौधरी

27

वास्तव में एक पुस्तकालय है जो Node.js को libsass, Sass के C संस्करण के लिए बाइंडिंग प्रदान करता है: https://npmjs.org/package/node-sass

यह आपको रूबी स्थापित किए बिना अविश्वसनीय गति से सीएसएस फ़ाइलों को मूल रूप से संकलित करने की अनुमति देता है।

बस चलाने के लिए:

npm install node-sass

और जरूरत पड़ने पर ग्रन्ट एक्सटेंशन भी होता है: https://github.com/sindresorhus/grunt-sass (यह वही है जो मैं इस सवाल की तलाश में था)

और अधिक जानकारी प्राप्त करें: https://github.com/andrew/node-sass


1
ग्रंट-सस मैं जो देख रहा था।
9ilsdx 9rvj 0lo

11

इस पर बस थोड़ा सा अपडेट, आप SCSS / SASS फ़ाइलों का उपयोग कर सकते हैं और स्काउट नामक एक कार्यक्रम का उपयोग करके रूबी को स्थापित किए बिना मक्खी पर सही फाइलें उत्पन्न कर सकते हैं।

स्काउट का अपना स्वयं का रूबी वातावरण होता है और जावा में कूट-कूट कर भरा होता है इसलिए सुनिश्चित करें कि आप उपयोग करने से पहले जावा तक अद्यतित हैं। यहाँ लिंक करें।

सादर :)


8
मैं बल्कि जावा पर माणिक चाहता हूँ;)
बैसारट

वास्तव में फिलहाल मैं लिखता हूं कि स्काउट एडोब एयर का उपयोग करता है। शायद एक पुराने संस्करण जावा का इस्तेमाल किया?
iconoclast

3
अभी भी रूबी एयर से बेहतर है :)
x0x



2

Adobe Brackets (मुक्त, खुला स्रोत) फ़ाइलों को बदलने पर LESS, SASS और स्टाइलस को संकलित कर सकता है, और लाइव पूर्वावलोकन के दौरान शैलियों को अपडेट कर सकता है, आपको बस एक्सटेंशन मैनेजर से आवश्यक एक्सटेंशन इंस्टॉल करने की आवश्यकता होती है। कोष्ठक जाओऔर आनंद लें!

संपादित करें: यदि अन्य प्रश्न सुझाते हैं कि नोड-एसएएस भी एक अच्छा विकल्प है यदि आपके पास पहले से ही नोडज स्थापित है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.