SQLcl संस्करण 21.2 से शुरू होकर, अब हम सिंटैक्स हाइलाइटिंग के लिए SQLcl को कॉन्फ़िगर कर सकते हैं।
इसका मतलब है कि आपके द्वारा लागू किए गए सिंटैक्स हाइलाइटिंग नियमों के आधार पर, SQLcl में आप जो कोड लिखते हैं, वह कलर कोडेड हो सकता है।
डिफ़ॉल्ट (सिंटैक्स हाइलाइटिंग बंद)
यहाँ एक प्रश्न है जो मैंने अपने टर्मिनल में सिंटैक्स हाइलाइटिंग के बिना लिखा है:
तो, कोई रंग कोडिंग नहीं हुई है। यह उन रंगों का उपयोग करता है जिन्हें मैंने अपने टर्मिनल की प्राथमिकताओं में कॉन्फ़िगर किया था, जो मूल रूप से एक काले रंग की पृष्ठभूमि पर सिर्फ सफेद पाठ था।
सिंटेक्स हाइलाइटिंग सक्षम करें
आप निम्न पंक्ति के साथ सिंटैक्स हाइलाइटिंग सक्षम कर सकते हैं:
set highlighting on
यह सिंटैक्स हाइलाइटिंग का एक बुनियादी स्तर प्रदान करता है।
यहाँ वही क्वेरी अब कैसी दिखती है:
मूल रूप से, SQL कीवर्ड को सियान में हाइलाइट किया जाता है, लेकिन कुछ और नहीं है।
और कलर कोडिंग जोड़ें
सौभाग्य से, हम कुछ और रंग कोडिंग जोड़ सकते हैं।
उदाहरण के लिए:
set highlighting identifier foreground magenta
यह सभी पहचानकर्ताओं को मैजेंटा के अग्रभूमि रंग से रंग देता है:
सेटिंग को login.sql
में सेव करें फ़ाइल
आप अपनी सिंटैक्स हाइलाइटिंग सेटिंग को login.sql
. में सहेज सकते हैं फ़ाइल।
ऐसा करने से, आप हर बार SQLcl का उपयोग करके कनेक्ट होने पर इन सेटिंग्स को कॉन्फ़िगर करने से खुद को बचा लेंगे। ऐसा इसलिए है क्योंकि आप इसे इस तरह से कॉन्फ़िगर कर सकते हैं कि login.sql
फ़ाइल हर बार SQLcl का उपयोग करके कनेक्ट होने पर चलती है।
यहां login.sql
का एक उदाहरण दिया गया है फ़ाइल जिसमें सिंटैक्स हाइलाइटिंग कमांड शामिल हैं:
set sqlformat ansiconsole
set highlighting on
set highlighting keyword foreground blue
set highlighting identifier foreground magenta
set highlighting string foreground green
set highlighting number foreground cyan
set highlighting comment foreground yellow
यहाँ, मेरी पहली पंक्ति सिंटैक्स फ़ॉर्मेटिंग से संबंधित नहीं है - यह केवल sqlformat
. सेट करती है करने के लिए ansiconsole
।
शेष पंक्तियाँ सिंटैक्स हाइलाइटिंग को सक्षम करती हैं और निर्दिष्ट करती हैं कि किन रंगों का उपयोग करना है।
एक बार जब आप अपने login.sql
. में हाइलाइटिंग सिंटैक्स जोड़ लेते हैं फ़ाइल, SQLcl से बाहर निकलें और पुनः कनेक्ट करें। जब यह फिर से जुड़ता है, तो यह login.sql
चलाएगा फ़ाइल, और वे सभी आदेश प्रभावी होंगे।
उपरोक्त आदेशों को मेरे login.sql
. में जोड़ने के बाद फ़ाइल, यहाँ मेरी क्वेरी अब कैसी दिखती है (SQLcl से बाहर निकलने और फिर से जुड़ने के बाद):
शायद मुझे खोजशब्दों को सियान पर छोड़ देना चाहिए था?
अन्य सिंटैक्स हाइलाइटिंग विकल्प
अन्य विकल्प भी हैं, जैसे पृष्ठभूमि रंग सेट करने की क्षमता, बोल्ड फ़्लैग सेट करना आदि।
इन्हें खोजने का सबसे अच्छा तरीका निम्न कमांड को चलाना है:
help set highlighting
इस लेखन के समय मेरे लिए जो कुछ भी लौटाया गया है वह यहां दिया गया है:
set highlighting <flag> | <type> RESET | <type> FOREGROUND <color> | <type> BACKGROUND <color> | <type> BOLD <flag> | <type> ULINE <flag> | <type> INVERSE <flag> <type> = DEFAULT | COMMENT | STRING | NUMBER | PUNCTUATION | KEYWORD | IDENTIFIER <color> = RED | BLUE | BLACK | CYAN | GREEN | MAGENTA | WHITE | YELLOW <flag> = ON | OFF | RESET EXAMPLES set highlighting on
रंगों की सूची काफी छोटी है (कम से कम लेखन के समय), लेकिन यह अभी भी कुछ अच्छे सिंटैक्स हाइलाइटिंग प्रदान करने के लिए पर्याप्त है।
यह देखते हुए कि सिंटैक्स हाइलाइटिंग एक नई सुविधा है, यह संभावना है कि उपरोक्त सहायता विकल्प बदल जाएंगे और भविष्य में इसका विस्तार किया जाएगा।