खोजक किस तंत्र द्वारा किसी ऐप के नाम में एक स्थान सम्मिलित करता है?


4

मैं नोटिफिकेशन सेंटर के साथ एक समस्या पर शोध कर रहा था और पाया कि फाइंडर नोटिफिकेशन सेंटर के रूप में प्रोग्राम दिखाता है , फिर भी डिस्क पर और पैकेज रिसीव और इंस्टॉलेशन मीडिया में, फाइल वास्तव में NotificationCenter.app है (और इसका पूरा रास्ता है) - "सिस्टम" लाइब्रेरी / CoreServices / NotificationCenter.app)

अधिसूचना केंद्र - एक स्थान के साथ और बिना

मैं समझता हूं कि खोजक डिफ़ॉल्ट रूप से .app एक्सटेंशन कैसे छोड़ता है, लेकिन इस ऐप के नाम में स्थान जोड़ने के लिए सिस्टम को कहां पता है?


अभी मेरे मैक पर नहीं है इसलिए मैं पुष्टि नहीं कर सकता, लेकिन क्या यह बंडल के अंदर की तरफ सूचीबद्ध नहीं होगा?
ट्यूबडॉग

@tubedogg मैंने वहां चेक किया - इस मैक पर मैंने जो भी टेक्स्ट प्लिस्ट फाइल लगाई है उसमें कोई स्पेस नहीं है। क्या अजीब है कोड हस्ताक्षर भी बिना किसी रिक्ति के नाम पर हस्ताक्षर करता है (दोनों .app और अंतिम सामग्री / MacOS हिस्से में है, इसलिए मेरा अनुमान है कि यह इस बिंदु पर एक खोजक विषमता है।)
bmike

जवाबों:


8

यह स्थानीयकरण द्वारा नियंत्रित किया जाता है।

यदि आप Info.plist की जाँच करते हैं, तो सच्चे के मान के साथ एक प्रमुख LSHasLocalizedDisplayName है। इसका मतलब है कि आवेदन के लिए स्थानीयकृत नाम हैं। स्थानीयकरण एप्लिकेशन बंडल में सामग्री / संसाधन में संग्रहीत किए जाते हैं। जब से मैं अंग्रेजी का उपयोग कर रहा हूं, मैं /System/Library/CoreServices/NotificationCenter.app/Contents/Resources/en.lproj/InfoPlist.strings में देख सकता हूं, और इसमें अंतरिक्ष के साथ ऐप का नाम देख सकता हूं।

स्ट्रिंग्स फाइलें वास्तव में बाइनरी प्लास्ट हैं। आप उन्हें मानव-पठनीय शैली में देख सकते हैं

$ plutil -p /System/Library/CoreServices/NotificationCenter.app/Contents/Resources/en.lproj/InfoPlist.strings
{
  "CFBundleDisplayName" => "Notification Center"
  "CFBundleName" => "Notification Center"
}

चूंकि वह फ़ाइल एक बाइनरी प्रारूप में संग्रहीत है, तो क्या आप उस नाम का विस्तार "कैसे" कर सकते हैं, यदि आपने फ़ाइल को यादृच्छिक स्ट्रिंग्स नहीं निकाला है जैसा कि मैंने ऊपर संपादित किया है? कमांड लाइन टूल के लिए बोनस अंक जो एक निश्चित स्थान के लिए सही स्थानीयकरण निर्देशिका को डंप करता है।
bmike

हम्म्म्म ... अभी भी सही निर्देशिका खोजने का एक तरीका खोजने की कोशिश कर रहा है, क्योंकि बोली-विशिष्ट निर्देशिकाएं इसे और अधिक जटिल बनाती हैं।
एलन शटको

यह वास्तव में एक अलग सवाल है अगर हमें स्थानीयकरण के पीछे एक त्वरित "अगला कदम - यहां गहरा तंत्र" नहीं है। यह स्थानीयकृत है कि यहां लड़ाई का 90% हिस्सा है।
bmike
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.