Mac शॉर्टकट्स में किसी स्थानीय Markdown फ़ाइल की सामग्री पढ़ने के लिए, फ़ाइल इनपुट का उपयोग करने से पहले उसे टेक्स्ट में बदलें। किसी अस्थायी नमूने से परिणाम जाँचें; अगर रूपांतरण विफल हो, तो फ़ाइल को cat से पढ़ें और उसकी सामग्री शॉर्टकट में पाइप करें।

यह चरण-दर-चरण मार्गदर्शिका Finder में एक स्थानीय Markdown फ़ाइल चुनने और उसका मूल स्रोत टेक्स्ट दिखाने के लिए है, जिसमें शीर्षक चिह्न और सूची के विराम-चिह्न भी शामिल हैं। यहाँ तीन चीज़ों के बीच का अंतर उपयोगी है: चुनी गई फ़ाइल, उसका पाथनेम और उसमें रखा टेक्स्ट।

शॉर्टकट को टेक्स्ट के बजाय फ़ाइल क्यों मिलती है?

Finder फ़ाइल इनपुट देता है। Apple, Shortcuts के इनपुट प्रकारों Files और Text को अलग-अलग परिभाषित करता है: फ़ाइल किसी भी प्रकार का दस्तावेज़ हो सकती है, जबकि टेक्स्ट बिना लागू फ़ॉर्मैटिंग वाला सादा टेक्स्ट होता है। इसलिए Markdown फ़ाइल स्वीकार करने से अपने आप यह तय नहीं होता कि अगली कार्रवाई को उसकी सामग्री टेक्स्ट के रूप में मिलेगी। Mac पर Shortcuts में इनपुट प्रकारों को समझना।

जब कार्रवाइयों को अलग-अलग प्रकारों के बीच रूपांतरण चाहिए, तो Shortcuts अपने Content Graph का उपयोग करता है। Apple एक स्पष्ट नियंत्रण का भी दस्तावेज़ देता है: वैरिएबल टोकन पर क्लिक करें और उसका Type बदलें। यह रूपांतरण, फ़ाइल के नाम जैसी कोई प्रॉपर्टी चुनने से अलग है। नाम या पाथनेम फ़ाइल का केवल विवरण होता है। Content Graph इंजन, Mac पर Shortcuts में वैरिएबल समायोजित करना।

Apple की उद्धृत मार्गदर्शिका रूपांतरण की प्रक्रिया समझाती है, लेकिन यह आश्वासन नहीं देती कि .md एक्सटेंशन वाली हर फ़ाइल अपने स्रोत टेक्स्ट में बदली जा सकेगी। ज्ञात सामग्री से रूपांतरण की जाँच करें। नीचे दी गई कमांड-आधारित विधि, मूल रूपांतरण से अपेक्षित टेक्स्ट न मिलने पर फ़ाइल पढ़ने का स्पष्ट तरीका देती है।

ज्ञात सामग्री वाली अस्थायी Markdown फ़ाइल बनाएँ

इस कृत्रिम नमूने का उपयोग करें, ताकि फ़ाइल के नाम को सफलतापूर्वक पढ़े जाने का प्रमाण न समझ लिया जाए। पूरा सेटअप Terminal में पेस्ट करें। यह एक नई अस्थायी डायरेक्टरी बनाता है, उसमें एक उदाहरण फ़ाइल लिखता है और Finder में वह डायरेक्टरी खोलता है।

demo_dir=$(/usr/bin/mktemp -d /tmp/markdown-shortcuts.XXXXXX) &&
printf '%s\n' '# Sample board' '' '- Blue square' '- Green circle' > "$demo_dir/sample.md" &&
/usr/bin/open "$demo_dir"

फ़ाइल में अपेक्षित सामग्री यह है:

# Sample board

- Blue square
- Green circle

-d विकल्प mktemp को डायरेक्टरी बनाने के लिए कहता है, और अंत के X वर्ण उसे एक अद्वितीय नाम चुनने देते हैं। इसलिए हर सफल सेटअप को एक नई डायरेक्टरी मिलती है। अगर निर्माण विफल हो, तो && शृंखला बाद की कमांड चलने से रोकती है। Apple संबंधित mktemp मैनुअल वितरित करता है।

printf कमांड कृत्रिम पंक्तियाँ लिखती है, जिसमें खाली पंक्ति भी शामिल है। इसका आउटपुट रीडायरेक्शन नई डायरेक्टरी के अंदर sample.md बनाता है। साधारण > रीडायरेक्शन किसी मौजूदा फ़ाइल को अधिलेखित कर सकता है, इसलिए इस सेटअप को जस का तस रखें और इसका गंतव्य किसी मौजूदा दस्तावेज़ पर न बदलें। इस उदाहरण में नई डायरेक्टरी नाम के टकराव से बचाती है। Apple का printf मैनुअल, शेल इनपुट और आउटपुट।

ऐसा Finder शॉर्टकट बनाएँ जो स्पष्ट रूप से टेक्स्ट माँगे

Read Markdown Text नाम का शॉर्टकट बनाएँ। Apple टूलबार के ऐड बटन से शॉर्टकट बनाने, उसका नाम रखने और ऐक्शन लाइब्रेरी से कार्रवाइयाँ जोड़ने का तरीका बताता है। Mac पर कस्टम शॉर्टकट बनाएँ।

Finder में प्रवेश-बिंदु सेट करें:

  1. शॉर्टकट का Details पैनल खोलें।
  2. Use as Quick Action चालू करें और Finder चुनें।
  3. एडिटर के ऊपर इनपुट ब्लॉक में Files और Text स्वीकार करें। Finder वर्कफ़्लो के लिए फ़ाइलें और नीचे दिए गए Terminal वैकल्पिक तरीके के लिए टेक्स्ट उपयोगी है।
  4. इनपुट न मिलने पर Stop and Respond चुनें और Select one example Markdown file. दर्ज करें।

Apple Finder विकल्प का दस्तावेज़ देता है और बताता है कि इसे चालू करने के लिए फ़ाइल या फ़ोल्डर इनपुट आवश्यक हो सकता है। इसकी इनपुट सेटिंग में कुछ न मिलने पर जवाब देकर रुकने का विकल्प भी है। Mac पर काम करते समय शॉर्टकट चलाएँ, शॉर्टकट के इनपुट को सीमित करें।

अब सामग्री को प्रोसेस करने वाली कार्रवाइयाँ जोड़ें:

  1. Text कार्रवाई जोड़ें।
  2. उसके टेक्स्ट फ़ील्ड में केवल Shortcut Input वैरिएबल रखें।
  3. उस वैरिएबल टोकन पर क्लिक करें, उसका Type मेनू खोलें और Text चुनें। फ़ाइल नाम वाली प्रॉपर्टी न चुनें।
  4. Text कार्रवाई के बाद Quick Look जोड़ें और उसे Text कार्रवाई का आउटपुट दें।

स्पष्ट वैरिएबल रूपांतरण, इनपुट का उपयोग होने के स्थान पर टेक्स्ट माँगता है। बाद की टेक्स्ट प्रोसेसिंग में Text कार्रवाई का आउटपुट इस्तेमाल करें। Apple वैरिएबल एडिटर से वैरिएबल प्रकार बदलने का तरीका बताता है। Mac पर Shortcuts में वैरिएबल समायोजित करना।

अपने इंस्टॉल किए हुए संस्करण में पुष्टि करने के लिए किसी कार्रवाई के आइकन पर Control-क्लिक करें और Show Info चुनें। Apple इसे किसी कार्रवाई के स्वीकार किए जाने वाले इनपुट और उससे मिलने वाले आउटपुट देखने का तरीका बताता है। यह खास तौर पर तब उपयोगी है जब आप किसी मौजूदा शॉर्टकट को बदल रहे हों जिसमें कई फ़ाइल और टेक्स्ट वैरिएबल हों। Mac पर Shortcuts में कार्रवाई सूची पर जाएँ।

Finder में केवल sample.md चुनें, उस पर Control-क्लिक करें और Quick Actions, फिर Read Markdown Text चुनें। Apple इस तरीके से शॉर्टकट चलाने का दस्तावेज़ देता है। शॉर्टकट दिखाई न दे, तो पहले उसकी Finder सेटिंग और स्वीकार किए जाने वाले इनपुट प्रकार जाँचें। Mac पर काम करते समय शॉर्टकट चलाएँ।

सफल परिणाम में # Sample board और सूची की दोनों प्रविष्टियाँ होंगी। केवल sample.md या उसकी डायरेक्टरी का पाथ दिखना इस जाँच में सफल नहीं माना जाएगा। Apple शॉर्टकट में आगे जा रही सामग्री देखने के लिए कार्रवाइयों के बीच Quick Look रखने की सलाह देता है। Mac पर Shortcuts में अपनी कार्रवाइयों का परीक्षण करें।

अगर रूपांतरण विफल हो, तो Shortcuts चलाने से पहले सामग्री पढ़ें

पढ़ने की प्रक्रिया स्पष्ट करने के लिए Terminal का उपयोग करें। Apple की Terminal मार्गदर्शिका cat को टेक्स्ट फ़ाइलों की सामग्री देखने के एक टूल के रूप में बताती है। इसकी Shortcuts कमांड-लाइन मार्गदर्शिका -i से दिए गए फ़ाइल इनपुट और पाइप के ज़रिए दिए गए टेक्स्ट के बीच अंतर बताती है। Mac पर Terminal में टेक्स्ट फ़ाइलें देखें, कमांड लाइन से शॉर्टकट चलाएँ।

नीचे दी गई कमांड सेटअप उदाहरण को आगे बढ़ाती है; यह स्वतंत्र प्रोग्राम नहीं है। सेटअप सफल होने के बाद, उसी Terminal टैब में इसे चलाएँ और सुनिश्चित करें कि शॉर्टकट ठीक Read Markdown Text नाम से सेव हो:

(
    set -o pipefail

    if [ -f "$demo_dir/sample.md" ] && [ -r "$demo_dir/sample.md" ]; then
        /bin/cat "$demo_dir/sample.md" |
            /usr/bin/shortcuts run "Read Markdown Text"
    else
        printf '%s\n' 'The example file is missing or unreadable.' >&2
        exit 1
    fi
)

यहाँ, cat फ़ाइल पढ़ता है और उसकी सामग्री को मानक आउटपुट में लिखता है। पाइप उस सामग्री को शॉर्टकट तक पहुँचाता है। पाथनेम को उद्धरणों में रखने से वह एक ही आर्ग्युमेंट के रूप में रहता है। -f और -r जाँचें सुनिश्चित करती हैं कि फ़ाइल मौजूद हो, सामान्य फ़ाइल हो और पढ़ी जा सके। कमांड लाइन की मूल बातें, Apple का test मैनुअल।

कोष्ठक शेल विकल्प में बदलाव को इसी कमांड समूह तक सीमित रखते हैं। pipefail पाइपलाइन के विफल चरण को समूह की निकास स्थिति में दिखाता है। शुरुआती जाँचें यह गारंटी नहीं देतीं कि बाद में पढ़ते समय फ़ाइल उपलब्ध रहेगी; अगर cat को पढ़ने में त्रुटि आए, तो आंशिक पूर्वावलोकन को पूरा मानने के बजाय उस त्रुटि की जाँच करें।

इस वैकल्पिक तरीके से शॉर्टकट का आने वाला इनपुट फ़ाइल के बजाय टेक्स्ट हो जाता है। इससे Markdown फ़ाइल का नाम नहीं बदलता और न ही उसका परिवर्तित दस्तावेज़ बनता है। मौजूदा Text और Quick Look कार्रवाइयाँ इस आने वाले टेक्स्ट की जाँच कर सकती हैं।

इन तीन कमांड रूपों के अर्थ अलग-अलग हैं:

कमांड रूप शॉर्टकट को क्या मिलता है
shortcuts run "Read Markdown Text" -i "$demo_dir/sample.md" फ़ाइल इनपुट; शॉर्टकट के भीतर अब भी रूपांतरण करना होगा।
printf '%s\n' "$demo_dir/sample.md" | shortcuts run "Read Markdown Text" पाथनेम टेक्स्ट के रूप में।
cat "$demo_dir/sample.md" | shortcuts run "Read Markdown Text" मानक इनपुट के ज़रिए फ़ाइल की सामग्री।

तालिका, -i से फ़ाइल पाथ देने और पाइप से टेक्स्ट देने के बीच Apple के दस्तावेज़ित अंतर को दिखाती है। पाइप से पहले की कार्रवाई तय करती है कि वह टेक्स्ट पाथनेम है या दस्तावेज़ का मुख्य भाग। कमांड लाइन से शॉर्टकट चलाएँ।

और कार्रवाइयाँ जोड़ने से पहले परिणाम का पता लगाएँ

क्या ठीक करना है, यह तय करने के लिए ज्ञात नमूने का उपयोग करें:

  • केवल फ़ाइल का नाम दिखता है: जाँचें कि वैरिएबल टेक्स्ट माँगने के बजाय नाम वाली प्रॉपर्टी तो नहीं निकाल रहा।
  • केवल पाथनेम दिखता है: जाँचें कि कमांड फ़ाइल पढ़ने के बजाय उसका पाथ तो नहीं दिखा रही।
  • मूल रूपांतरण विफल है, लेकिन Terminal तरीका काम करता है: इस वर्कफ़्लो के लिए स्पष्ट रीड तरीका अपनाएँ; केवल इनपुट लेबल बदलने से रूपांतरण ठीक नहीं हुआ है।
  • कोई इनपुट नहीं मिलता: चुनी हुई Finder फ़ाइल से या दस्तावेज़ित Terminal कमांड से चलाएँ। Dock से शॉर्टकट चलाने पर चुनी हुई फ़ाइल अपने आप नहीं मिलती।
  • स्रोत खाली है: नमूने से तुलना करें। वैध खाली फ़ाइल और गायब फ़ाइल अलग स्थितियाँ हैं।

Apple वैरिएबल प्रॉपर्टी और सामग्री प्रकार के रूपांतरण का अलग-अलग दस्तावेज़ देता है और बताता है कि Dock से चलाए गए शॉर्टकट को शुरुआती इनपुट शायद न मिले। आगे की कार्रवाइयाँ बदलने से पहले इन अंतरों से समस्या का स्थान पता लगाने में मदद मिलती है। Mac पर Shortcuts में वैरिएबल समायोजित करना, शॉर्टकट के इनपुट को सीमित करें।

परीक्षण के दौरान वर्कफ़्लो को एक छोटी स्थानीय टेक्स्ट फ़ाइल तक सीमित रखें। कई फ़ाइलें चुनने पर तय करना होगा कि हर फ़ाइल को अलग से प्रोसेस करना है या उनकी सामग्री को मिलाना है। इस उदाहरण का उद्देश्य पढ़ने योग्य स्रोत टेक्स्ट पाना है; यह फ़ाइल की बाइट-दर-बाइट कॉपी बनाने की प्रक्रिया नहीं है।

जब पूर्वावलोकन में अपेक्षित शीर्षक और सूची की पंक्तियाँ दिखें, तो आगे की टेक्स्ट प्रोसेसिंग कार्रवाइयों को Text कार्रवाई के आउटपुट से जोड़ें। पूरी प्रक्रिया काम करने तक कृत्रिम नमूना रखें, फिर Finder में उसकी अस्थायी डायरेक्टरी हटाएँ। ज़रूरी जाँच आसान है: अगली कार्रवाई को वही दस्तावेज़ सामग्री मिलनी चाहिए जिसकी आपने पुष्टि की है।

स्रोत