2013-09-29 3 views
7

मैं अपने मौजूदा प्रोजेक्ट में कम्पास जोड़ना चाहता हूं। मैं अपने वर्तमान परियोजना संरचना है, जो इस तरह दिखता है (सरलीकृत) बनाए रखना चाहते हैं: \ संपत्ति \ सीएसएस \ एससीएसएस तहतकम्पास config.rb स्थान

app/ 
build/  
|-compass/ 
assets/ 
|-css/ 
    |-scss 
|-js/ 
|-img/ 

तो मैं अपने सभी एस.ए.एस.एस. फ़ाइलें चाहता हूँ और मैं उत्पादन के लिए संकलित सीएसएस फ़ाइलें चाहते \ संपत्ति \ सीएसएस पर।

रनिंग:

compass create --bare --sass-dir "assets\css\scss" --css-dir "assets\css" 

सीधे मेरी जड़ के नीचे कम्पास config.rb फ़ाइल बनाता है।

हालांकि, मैं चाहता हूं कि फ़ाइल \ build \ compass के अंतर्गत हो।

  1. मैं कहां नियंत्रित कर सकता हूं कि कम्पास config.rb फ़ाइल कहां बनाता है?
  2. कम्पास दस्तावेज कहता है कि config.rb में घोषणाएं (उदा। Css_dir, sass_dir, आदि) सभी project_path से संबंधित हैं। मैं project_path कहां परिभाषित करूं?

उत्तर

3

कम्पास उसी निर्देशिका में config.rb बनाता है जहां से आप कमांड चलाते हैं। प्रोजेक्ट पथ वह है जहां config.rb रहता है। जब भी आप अपनी संपत्ति के लिए पथ समायोजित करते हैं, तब तक आप config.rb को कहीं भी स्थानांतरित करने के लिए स्वतंत्र हैं।

# Require any additional compass plugins here. 
require 'compass/import-once/activate' 

# Set this to the root of your project when deployed: 
http_path = "/" 
css_dir = "../../assets/css" 
sass_dir = "../../assets/css/scss" 

# You can select your preferred output style here (can be overridden via the command line): 
# output_style = :expanded or :nested or :compact or :compressed 
output_style = :expanded 

# To disable debugging comments that display the original location of your selectors. Uncomment: 
line_comments = false 

# Enable source map 
sourcemap = true 

और यह config.rb सेटिंग्स के साथ, अपनी परियोजना फ़ोल्डर की तरह होना चाहिए (जैसा कि आप ने लिखा):

+0

मैं प्रोजेक्ट रूट से कमांड चलाता हूं, और यही वह जगह है जहां config.rb बनाया गया है। अगर मैं फ़ाइल को स्थानांतरित करता हूं, तो कम्पास कैसे जानता है कि मैंने इसे कहां स्थानांतरित किया? उदाहरण के लिए, संकलन आदेश चलाने के लिए इसे जानने की आवश्यकता है। इसके अलावा, फ़ाइल को स्थानांतरित करने के बाद, वहां परिभाषित पथों के संबंध में रहने की आवश्यकता है जहां से मैंने आदेश दिया था, न कि नए स्थान पर। तो मैं सिर्फ फाइल कैसे ले जा सकता हूं? – elanh

+0

आप उसी config से 'sass watch' (या संकलित) चलाते हैं जैसे आपकी config.rb – cimmanon

+2

यह मेरे लिए बहुत भ्रमित है। लाइब्रेरी क्यों उम्मीद करेगी कि यह "सामान्य" जैसे सामान्य नाम का उपयोग कर सकती है और इसे रूट में रख सकती है? मैं इसे एम्बर-क्ली और एक खरीदी गई थीम के साथ काम करने के लिए संघर्ष कर रहा हूं, यह स्पष्ट नहीं है कि अन्य उपकरणों के साथ एकीकृत कैसे करें जो अपनी धारणाएं बनाते हैं। – aceofspades

1

यह config.rb का एक उदाहरण है

MyFolder 
├ app 
├ build 
│ └ compass 
│ └ config.rb 
└ assets 
    ├ css/ 
    │ └ scss/ 
    ├ js 
    └ img 

यदि आपके पास config.rb नहीं है, बस एक नई फाइल "config.rb" बनाएं और मैंने लिखा कॉन्फ़िगरेशन के अंदर कॉपी/पेस्ट करें।

अपने टर्मिनल खोलें, MyFolder/निर्माण/कम्पास में दर्ज करें और फिर अपने कम्पास आदेश शुरू करते हैं, जैसे: compass watch


याद रखें

आप एक ही फ़ोल्डर में अपने कम्पास आदेश पर अमल करने के लिए है config.rb फ़ाइल कहां है। तो इस मामले में माईफोल्डर/बिल्ड/कंपास में। अन्यथा कंपास काम नहीं करता है।

-1

मुझे नहीं लगता कि आप इस तरह की एक परियोजना क्यों तैयार करेंगे ... मेरा मतलब है कि निर्माण में स्कैस क्यों न डालें और फिर संपत्तियों में सबकुछ उत्पादन के लिए तैनात किया जा सकता है?

तो: 1।

compass create build --http-pat="../" --sass-dir="compass/scss" --css-dir="../assets/css" --javascripts-dir="../assets/js" --images-dir="../assets/img" 

जैसे परियोजना फ़ोल्डर और फ़ाइलें पैदा करेगा ("एप्लिकेशन" निर्देशिका से) चल रहा है:

app 
|-- build 
|  |--config.rb 
|  |-- compass 
|   |-- scss 
|-- assets 
|  |-- css 
|  |-- img 
|  |-- js 
  1. फिर, अनुप्रयोग निर्देशिका के भीतर से चल रहा है, :

compass config "build/config.rb" --http-pat="../" --sass-dir="compass/scss" --css-dir="../assets/css" --javascripts-dir="../assets/js" --images-dir="../assets/img"

बस निर्माण निर्देशिका एक पैदा करेगा डी इन कॉन्फ़िगरेशन फ़ाइल को इन मानों के साथ रखें।

+0

यह क्यों मायने रखता है कि ओपी अपनी निर्देशिका कहां रखना चाहता है? ऐसा लगता है कि आप इस सवाल का जवाब नहीं दे रहे हैं। – cimmanon

+0

मेरा उत्तर पूरी तरह से अच्छी तरह से काम करता है। अगर वह संपत्ति/सीएसएस फ़ोल्डर ओपी में एसएसएस को केवल एसएस-डीआईआर को संशोधित करना चाहता है। मेरा उत्तर एक से अधिक परिदृश्य या फ़ोल्डर संरचना के लिए प्रासंगिक है। –

+0

और आपके एसएसएस से आउटपुट अलग करने के बारे में मेरा बिंदु बिल्कुल मान्य है! –

संबंधित मुद्दे