2009-06-05 14 views
5

समस्या को संरक्षित करने के लिए tinymce (इन-ब्राउजर "समृद्ध संपादक") कैसे प्राप्त करें समस्या: मैं एक समृद्ध संपादक के साथ ड्रूपल का उपयोग करता हूं, और समृद्ध संपादक इंडेंटेशन और स्वरूपण को अलग करके अपने पाठ को पकड़ना पसंद करता है। यह एक डेस्कटॉप संपादक में अस्वीकार्य होगा, लेकिन लोग इसे ब्राउज़र में wyswigs के साथ सहन करने लगते हैं।इंडेंटेशन

प्रश्न: मैं इसे कैसे बंद कर सकता हूं। मैंने चारों ओर खोज की है और मुझे अभी तक अपने इंडेंटेशन और टेक्स्ट स्वरूपण को संरक्षित रखने के लिए समृद्ध संपादक को बताने का सबसे अच्छा अभ्यास तरीका खोजना है।

उत्तर

3

TinyMCE init स्क्रिप्ट

tinymce.init({ 
    protect: [/[\n\f\r\t\v]/g] 
}); 
+0

यह काम नहीं करता है, tinymce अभी भी लोड होने वाली किसी भी सामग्री में \ t वर्णों को स्ट्रिप्स करता है – skerit

1

ऐसा होने का कारण यह है कि अमीर संपादक वास्तव में एक एक्सएचटीएमएल संपादक है। एक्सएचटीएमएल में, अधिकांश टैग (प्री टैग के अपवाद के साथ) डिफ़ॉल्ट रूप से, एक ही स्थान पर एकाधिक व्हाइटस्पेस वर्णों को मर्ज करें। और content_css के रूप में स्टाइलशीट संदर्भ जब संपादक आरंभ

* {white-space: pre;} 

:

tinyMCE में इस पर काबू पाने के लिए, आप एक स्टाइलशीट युक्त बनाने की आवश्यकता होगी। ध्यान रखें कि जब आप अपने प्रारूप को संरक्षित करेंगे, तो यह एचआईटीएसवाईवायजी नहीं होगा, एचटीएमएल की प्रकृति के कारण मंगिंग सफेद हो जाएगा।

एक और विकल्प अपने कोड को एक PRE तत्व में लपेटना है, लेकिन डिफ़ॉल्ट रूप से tinyMCE (या तो मुझे विश्वास है) में ऐसा करने के लिए कोई बटन नहीं है।

संपादित करें:

Mikl से उल्लेख किया है, tinyMCE भी है एक configuration option for preformatted

1

नहीं है एक "पूर्वस्वरूपित" TinyMCE prefrerences में स्थापित करने (इस मामले में, WYSIWYG module के माध्यम से, लेकिन यह में नहीं है TinyMCE मॉड्यूल भी)। यह चाल करना चाहिए।

Screenshot of setting http://www.quicksnapper.com/files/3603/2949292644A2CF2A72BC21_m.png

+3

निश्चित रूप से एक बहुत स्क्रीनशॉट यही कारण है कि इस विन्यास जोड़ें।दुर्भाग्यवश, यह कम से कम मेरे लिए काम नहीं करता है। जैसे ही "समृद्ध संपादक" ब्राउज़र टेक्स्टरेरा पर आक्रमण करता है, जीयूआई नियंत्रण के अंदर मार्कअप तुरंत रिक्त स्थान से छीन लिया जाता है और डरावनी "एचटीएमएल की सिंगल लाइन बिना किसी व्हाइटस्पेस संरक्षण के" के रूप में प्रस्तुत किया जाता है। – dreftymac

+1

+1 मैं विश्वास नहीं कर सकता Ive पहले preformatted विन्यास विकल्प अनदेखा! उस मणि के लिए धन्यवाद! – Matt

+0

नहीं, यह मेरे लिए भी काम नहीं करता है। मुझे आश्चर्य है कि क्यों नहीं ... –

2

यह नहीं हो सकता है आप के लिए वास्तव में क्या देख रहे हैं, लेकिन Drupal htmlpurifier मॉड्यूल एचटीएमएल को साफ़ रखने और अपने HTML मानक के अनुरूप कर सकते हैं। यह इंडेंटेशन को हटा सकता है लेकिन यह बहुत उपयोगी है।

एक और आसान मॉड्यूल htmltidy है, यह सुनिश्चित नहीं है कि यह इंडेंटेशन को संरक्षित रख सके या नहीं।

0

मैं सामान्य रूप से TinyMCE के लिए यह वही उत्तर खोज रहा था, और मई 2015 तक, TinyMCE के लेखक (ओं) एक विशेषता को अलग करने पर व्हाइटस्पेस पर विचार करते हैं। यह अक्षम नहीं किया जा सकता है, भले ही दस्तावेज़ कॉन्फ़िगरेशन विकल्प preformatted इंगित करते हैं, <pre> टैग जैसे व्हाइटस्पेस को सुरक्षित रखेगा। मुझे अभी तक इसे काम करने के लिए, या कुछ और नहीं मिला है, और मेरा मानना ​​है कि दस्तावेज़ में कोड में अब सुविधा का वर्णन नहीं करना चाहिए।

http://community.tinymce.com/forum/viewtopic.php?id=26021

धागा बार-बार पता चलता है एक WYSIWYG में उस कोड की कुल प्रारूपित करने के निष्पक्ष खेल है, और एक सर्वर साइड reformatting सबसे अच्छा है। यह न मानें कि लक्ष्य न्यूनतम सुधार करना है, इसलिए सर्वर-साइड टूल दस्तावेज़ संरचना के लिए उतना ही विनाशकारी है। यह TinyMCE डेवलपर के अनुसार एक WONTFIX है, इसलिए मुझे संदेह है कि यह भविष्य के भविष्य में बदल जाएगा।

+0

संस्करण 3.4.5 चेंजलॉग में 'whitespace_elements' सूचीबद्ध करता है, लेकिन मुझे इसके लिए दस्तावेज़ नहीं मिला है और यह या तो काम नहीं करता है। निश्चित नहीं। यह निश्चित रूप से कोड में है, लेकिन यह 'प्री स्क्रिप्ट नोस्क्रिप्ट स्टाइल टेक्स्टरेरा' से शुरू होता है और यह स्पष्ट नहीं है कि उपयोगकर्ता कॉन्फ़िगरेशन इसे ओवरराइड कर सकता है (मैंने कोशिश की है, लेकिन शायद मैं कुछ गलत कर रहा हूं)। – jimp