มีวิธีใช้ Sass หรือ Compass หรืออะไรทำนองนั้นโดยไม่มี Ruby หรือไม่?
ฉันมองหาทั่ว Google และไซต์นี้ แต่ไม่พบอะไรเลยขอความช่วยเหลือใด ๆ ขอบคุณ
มีวิธีใช้ Sass หรือ Compass หรืออะไรทำนองนั้นโดยไม่มี Ruby หรือไม่?
ฉันมองหาทั่ว Google และไซต์นี้ แต่ไม่พบอะไรเลยขอความช่วยเหลือใด ๆ ขอบคุณ
คำตอบ:
Sass เดิมเขียนขึ้นสำหรับ Ruby แต่ตอนนี้พวกเขาได้สร้างlibSassซึ่งเป็นC/C++
พอร์ตของเอ็นจิ้น Sass ซึ่งทำให้ง่ายต่อการรวมเอ็นจิ้นเข้ากับ IDE หรือภาษาอื่น ณ จุดนี้คุณสามารถใช้ Sass engine ใน Ruby, Node.js , Python , PHP , Java , .NETและอื่น ๆ สำหรับข้อมูลเพิ่มเติมโปรดเยี่ยมชมlibSass นอกจากนี้ IDE ของคุณอาจมีปลั๊กอินที่รองรับ Sass โดยไม่จำเป็นต้องใช้ทับทิมโดยใช้ libSass
คำตอบเดิมด้านล่างนี้อาจใช้ได้กับสถานการณ์ของคุณหรือไม่ก็ได้ (ขึ้นอยู่กับว่าภาษาของคุณรองรับ libSass หรือไม่) ฉันตัดสินใจที่จะทิ้งมันไว้ด้วยเหตุผลด้านการเก็บถาวร
Sass (ต้องใช้ Ruby)
Sass เขียนด้วย Ruby ดังนั้นคุณจะต้องติดตั้ง Ruby ด้วย นำมาจากเว็บไซต์ของ sass
เข็มทิศ (ต้องใช้ Ruby เนื่องจากขึ้นอยู่กับ SASS)
เข็มทิศเป็นเฟรมเวิร์กการเขียน CSS แบบโอเพนซอร์สซึ่งใช้ภาษาสไตล์ชีท Sass เพื่อทำให้การเขียนสไตล์ชีตมีประสิทธิภาพและง่ายดาย นำมาจากเว็บไซต์ของเข็มทิศ
น้อยกว่า (เขียนด้วย js ต้องใช้ node.js หรือ less.js ที่รวมอยู่ในเพจ)
LESS ขยาย CSS ด้วยพฤติกรรมแบบไดนามิกเช่นตัวแปรมิกซ์อินการดำเนินการและฟังก์ชัน LESS ทำงานบนทั้งฝั่งไคลเอ็นต์ (Chrome, Safari, Firefox) และฝั่งเซิร์ฟเวอร์โดยมี Node.js และ Rhino นำมาจากไซต์ของ Less
นี่คือโปรเซสเซอร์หลักที่ฉันรู้จัก คุณสามารถเขียน parser / port ของคุณเองสำหรับภาษาอื่นที่คุณเลือก
กล่าวอีกนัยหนึ่งคุณไม่สามารถใช้ sass / เข็มทิศได้โดยไม่ต้องมี Ruby เพราะตัวโปรแกรม (sass & compass) นั้นเขียนด้วย Ruby ดังนั้นคุณจะต้องใช้มันอย่างแน่นอนเพื่อเรียกใช้งาน
เป็นเรื่องจริงที่คำถามยังไม่ชัดเจนเพียงพอ แต่ฉันจะพยายามแก้ไขปัญหาบางอย่าง มีมี CSS ก่อนประมวลผลอื่น ๆ ที่ไม่ต้องพึ่งพาทับทิม (สองมาอยู่ในใจของฉันตอนนี้มีน้อยซึ่งผมเคยใช้และชอบ แต่ไม่ได้ประสิทธิภาพเท่า Sass และสไตลัสที่ฉันไม่ได้ใช้ ทั้งสองใช้ JavaScript) แต่เมื่อคุณถามเกี่ยวกับ Sass + Compass โดยเฉพาะและในขณะที่ฉันยังคงมองหาคำตอบเดียวกันฉันจะพูดถึงเรื่องนั้น
@JamundFerguson กล่าวว่า:
มีวิธีรวบรวม Sass โดยไม่ใช้ Ruby หรือไม่? ขึ้นอยู่กับ
Sass เป็นภาษาก่อนการประมวลผล มีคอมไพเลอร์ที่สร้างขึ้นใน Ruby และทุกคนสามารถเขียนคอมไพเลอร์ในภาษาใดก็ได้ มีการใช้งาน C ของคอมไพเลอร์ Sass ที่เรียกว่าlibsassซึ่งสามารถใช้กับภาษาใดก็ได้ที่อนุญาตให้นำเข้า C libs มันเป็นไลบรารีที่node-sass ใช้ซึ่งเป็นคอมไพเลอร์ที่สร้างขึ้นในNode.jsซึ่งฉันยังไม่ได้ลองและไม่รู้ว่ามันจะทำงานได้อย่างไรและพร้อมสำหรับการใช้งานจริงหรือไม่ มันอาจจะเป็นคำถามของเวลาสำหรับเข็มทิศที่จะรังเพลิง (บางทีคุณอาจจะจบลงด้วยการทำแบบนั้น?) และเพื่อให้เราสามารถมีคอมไพเลอร์ที่ไม่ได้ขึ้นอยู่กับอัญมณีรูบี (ปัจจุบันมีโหนดเข็มทิศโมดูลที่ไม่ต้องอาศัย อัญมณีทับทิม)
จนถึงตอนนี้ฉันได้กล่าวถึงความเป็นไปได้สำหรับคอมไพเลอร์ Node.js ซึ่งอย่างที่คุณทราบมันเป็นสภาพแวดล้อม JavaScript ซึ่งเป็นภาษาของเว็บและภาษาที่ฉันเลือก แต่คุณไม่ได้ระบุว่าต้องการให้คอมไพเลอร์เขียนเป็นภาษาใด ฉันคิดว่าอาจมีคอมไพเลอร์ที่สร้างขึ้นในหลายภาษาเช่น @EricMeyer กล่าวถึงคอมไพเลอร์Python บางทีเขาอาจใช้pyScss ? ดูเหมือนว่าจะมีการรองรับเข็มทิศในตัว แต่คุณต้องมีสภาพแวดล้อม Python ดังนั้นสิ่งที่เป็น: คุณจะต้องมีสภาพแวดล้อมสำหรับคอมไพเลอร์เว้นแต่คุณจะเรียกใช้ไบนารีที่คอมไพล์โดยกำเนิด (Less มี less.js ซึ่งสามารถรวมไว้ในเพจเพื่อเรียกใช้ฝั่งไคลเอ็นต์และหลีกเลี่ยงขั้นตอนการคอมไพล์ แต่ไม่ได้มีไว้สำหรับใช้ในการผลิต)
ฉันทำงานกับCodeKitมาหนึ่งปีแล้วซึ่งทำได้ดีมากรวบรวมภาษา Sass / Compass, Less, Stylus และเทมเพลตเช่น Haml, Slim, Jade ฯลฯ สร้างสินทรัพย์ของคุณใหม่เมื่อมีการเปลี่ยนแปลงโดยอัตโนมัติและคุณจะเห็นการเปลี่ยนแปลงบนเบราว์เซอร์ของคุณทันที สิ่งเดียวที่ฉันไม่ชอบคือเมื่อย้ายไปที่คอมพิวเตอร์เครื่องอื่นติดตั้ง CodeKit ตรวจสอบโปรเจ็กต์และพยายามใช้งานฉันต้องกำหนดค่าการตั้งค่าโปรเจ็กต์ใหม่ซึ่งฉันต้องจำไว้เพื่อที่ฉันจะได้สร้าง เหมือนกับที่ฉันสร้างในคอมพิวเตอร์เครื่องอื่น นอกจากนี้ฉันเริ่มทำงานกับทีมและพวกเขายังต้องกำหนดค่าโครงการด้วยการตั้งค่าเดียวกัน (บางครั้งการไม่มีการกำหนดค่าโครงการเดียวกันทำให้เกิดความไม่สอดคล้องกันอย่างน่าเกลียด) และสมาชิกในทีมที่ใช้ Ubuntu ก็ไม่สามารถใช้งานได้ ที่'ทันทีและตกหลุมรักมัน ตามที่ @Dave กล่าวไว้มีScoutและยังมีLiveReloadแต่ยังไม่ได้ใช้
สรุปคือฉันยังไม่ได้ข้อสรุปที่ชัดเจน ฉันยังคงมองหาคำตอบเดิม แต่ฉันหวังว่าคำตอบนี้จะช่วยให้กระจ่างเกี่ยวกับสถานะของการรวบรวม Sass / Compass นอกสภาพแวดล้อม Ruby
จริงๆแล้วมีไลบรารีที่ให้การผูก Node.js กับ libsass เวอร์ชัน C ของ Sass: https://npmjs.org/package/node-sass
ช่วยให้คุณสามารถคอมไพล์ไฟล์. scss เป็น css ด้วยความเร็วที่เหลือเชื่อโดยไม่ต้องติดตั้ง Ruby
ในการติดตั้งเพียงแค่เรียกใช้:
npm install node-sass
และยังมีส่วนขยาย Grunt หากต้องการ: https://github.com/sindresorhus/grunt-sass (นี่คือสิ่งที่ฉันกำลังมองหาในคำถามนี้)
ค้นหาข้อมูลเพิ่มเติมได้ที่: https://github.com/andrew/node-sass
การอัปเดตเพียงเล็กน้อยคุณสามารถใช้ไฟล์ SCSS / SASS และสร้างไฟล์ที่ถูกต้องได้ทันทีโดยไม่ต้องติดตั้ง Ruby โดยใช้โปรแกรมที่เรียกว่า Scout
Scout มีสภาพแวดล้อมทับทิมในตัวเองและถูกเข้ารหัสด้วย java ดังนั้นโปรดตรวจสอบให้แน่ใจว่า java ของคุณเป็นปัจจุบันก่อนใช้งาน Linky ที่นี่
ความนับถือ :)
คุณสามารถแยกวิเคราะห์ sass ได้โดยไม่ต้องใช้ทับทิมคุณสามารถใช้ node-sass รายละเอียดที่นี่: https://github.com/andrew/node-sass
หากนี่เป็น .NET มีในขณะนี้คือเสื้อคลุมสำหรับ libsass ได้จากNuget
Adobe Brackets (ฟรีโอเพนซอร์ส) สามารถรวบรวม LESS, SASS และ Stylus ได้เมื่อไฟล์มีการเปลี่ยนแปลงและอัปเดตรูปแบบระหว่างการแสดงตัวอย่างแบบสดคุณเพียงแค่ต้องติดตั้งส่วนขยายที่จำเป็นจากตัวจัดการส่วนขยาย รับวงเล็บและสนุก!
แก้ไข: เนื่องจากคำถามอื่น ๆ แนะนำว่าnode-sassเป็นตัวเลือกที่ดีเช่นกันหากคุณติดตั้ง nodejs ไว้แล้ว