मुझे वेब पर microtypography मुद्दों में दिलचस्पी है। "; ( माइक्रोटोग्राफी और ग्लाइफ मुद्दों को ठीक करने के लिए एचटीएमएल पार्सिंग
- उद्धरण
- बोली के बजाय) खोलने (& # 8220) ":
मैं एक उपकरण को ठीक करना चाहते हैं के बजाय ")
- बोली के बजाय) खोलने (& # 8220) ":
- Apostrophe
- '(& # 8217;) एपॉस्ट्रॉफ़ि (बजाय')
- डैश और हाइफ़न
- - (& # 8211; या & ndash;) एन डैश, श्रेणियों के लिए उपयोग किया जाता है, उदा। "13-15 नवंबर" (इसके बजाए -
- - (& # 8212; या & mdash;) em dash, विचारों के परिवर्तन के लिए उपयोग किया जाता है, उदा। "स्टार वार्स है-के रूप में हर कोई जानता है-अद्भुत।" (बजाय -, या -)
- अंडाकार
- ... (& # 8230; या & hellip;) क्षैतिज अंडाकार, इंगित करने के लिए प्रयोग किया जाता है एक चूक या एक विराम (... के बजाय)
- और अधिक \ o/
सभी उन सुधारों सामग्री भाषा पर निर्भर हैं। उदाहरण के लिए, हमें प्रत्येक रचनाकृत ग्लाइफ (:
, ;
, …
, ?
, !
, ...) से पहले एक असुरक्षित (गैर-ब्रेकिंग) स्थान जोड़ना होगा ...), और हमारे उद्धरण «इस तरह» हैं।
इस तरह के एक उपकरण के लिए कई बाधाओं के होते हैं:
- यह किसी भी HTML के अंदर संरक्षित टैग संपादित नहीं कर सकते (
pre
,code
...) - यह तेजी से (एक सीएमएस उत्पादन पर इस्तेमाल किया) किया जाना चाहिए
- यह HTML
- और अन्यथा तोड़ना नहीं चाहिए।
- http://michelf.ca/projects/php-smartypants/typographer/
- http://kingdesk.com/projects/php-typography/
- http://code.google.com/p/typogrify/
वे सब कम या ज्यादा होनहार व्यक्ति पर आधारित हैं, एक 2005 lib,:
वहां पहले से ही बाजार पर कुछ उपकरण हैं परीक्षण नहीं किया गया, दस्तावेज नहीं किया गया है, मैन्युअल रूप से HTML को पार्स कर रहा है और अंग्रेजी से अन्य नियमों से निपट नहीं रहा है। बिलकुल नहीं।
तो मेरी प्रश्न हैं:
- आप इस तरह किसी भी सभ्य उपकरण का पता है?
- मैं इसे कैसे कर सकता है? मैं पहले से ही एक POC DomCrawler का उपयोग कर, लेकिन मैं आश्वस्त नहीं हूँ। PHP में HTML को पार्स और संपादित करने का सबसे अच्छा तरीका क्या है?
संपादित करें जुलाई 2013: मैं परीक्षण और विशेषज्ञता मैं इस मुद्दे के साथ प्राप्त की से JoliTypo विकसित किया है। कोई मौजूदा lib ऐसा नहीं कर रहा था जो मैं करना चाहता था।
ग्रेट सवाल, हालांकि मैं सोच रहा हूं कि यह ऐसा नहीं है बात यह है कि उस बिंदु पर प्रक्रिया करना बेहतर होगा जहां डेटा बचाया गया है, उस बिंदु के बजाए जहां यह आउटपुट है?विशेष रूप से यदि आपके पास बहुत अधिक टेक्स्ट है (जो मामला है जहां यह सबसे उपयोगी होगा), विवरणों के लिए प्रसंस्करण की कल्पना करना मुश्किल है (जैसे उपयुक्त एम और एन डैश उपयोग के बीच अंतर करना) ताकि वह काफी कुशल तरीके से ' टी लोडिंग समय में भारी वृद्धि नहीं करता है। –
@MichaelCSchuller इसे कैश सिस्टम आईएमओ द्वारा संभाला जाना चाहिए। मुझे लगता है कि उपयोगकर्ता द्वारा सबमिट की गई सामग्री को संपादित करना और इसे जारी रखना एक बुरा विचार है क्योंकि टाइप-लिखित संस्करण को वापस पाने का कोई तरीका नहीं है। उपयोगकर्ता और रूपांतरित पाठ दोनों को संग्रहीत करना प्रदर्शन संबंधी मुद्दों के लिए एक समाधान हो सकता है। – Damien
यह निश्चित रूप से आउटपुट के आउटपुट को मूल पाठ में प्रवेश करने वाले उपयोगकर्ता के लिए कुछ अपारदर्शी बनाने का जोखिम चलाता है, लेकिन मुझे लगता है कि यह एक तकनीकी प्रश्न के बजाय दार्शनिक है। एक कारण है कि मुझे लगता है कि मार्कडाउन जैसी चीजें टेक्स्ट इनपुट स्वरूपण के लिए इतना अच्छा समाधान है कि आप जानते हैं कि वास्तव में कौन से परिवर्तन लागू किए जाएंगे (और जैसा कि आप कहते हैं, जैसा कि आप दर्ज किए गए मूल को वापस प्राप्त कर सकते हैं)। –