कुछ ऐप स्पॉटलाइट परिणाम ".app" एक्सटेंशन क्यों दिखाते हैं, लेकिन सभी नहीं?


11

भले ही मैंने स्पष्ट रूप से सभी फ़ाइल एक्सटेंशन प्रदर्शित करने के लिए खोजक वरीयता निर्धारित की है, मैं अभी भी पा रहा हूं कि कुछ एप्लिकेशन अपने स्पॉटलाइट परिणाम में फ़ाइल नाम एक्सटेंशन नहीं दिखाते हैं।

फ़ाइल नाम छूट जाता है

यहाँ कुछ उदाहरण हैं।

मैं माउंटेन लायन चला रहा हूं।

स्काइप
शब्द
गौरैया
टिप्पणियाँ


क्या यह एक स्थानीय बंडल नाम निर्दिष्ट करने वाले अनुप्रयोग हो सकते हैं? फ़ाइल नाम के विपरीत बंडल नाम दिखाता है?
थिलो सेप

यह प्रश्न [यह एक] [१] से मिलता-जुलता है। [१]: apple.stackexchange.com/questions/33378/…
mcw

जवाबों:


9

टी एल; डॉ

असल में, यह macOS 10.13 हाई सिएरा में पेश किया गया बग या बग फिक्स है: स्पॉटलाइट अब फाइल एक्सटेंशन दिखाने के लिए फाइंडर सेटिंग का सम्मान करता है। उस सेटिंग को अक्षम करना स्पॉटलाइट से .app एक्सटेंशन को हटा देता है।

पूर्ण लंबाई का जवाब

मुझे पता है कि यह एक बहुत पुराना सवाल है, लेकिन मैंने 10.13 सिएरा में सिर्फ एक डीजे-वु किया था; यह अलग है, लेकिन कुछ समानताओं के साथ, इसलिए मैंने इसे खोजा और इस सवाल पर अड़ गया और यहां मेरा जवाब है:

एप्लिकेशन वास्तव में निर्देशिकाओं में प्रदर्शित होते हैं जैसे कि वे एक ही फाइल थे; Apple उस बंडल को कहता है (खोजक के नाम के बावजूद " पैकेज " को संदर्भ मेनू में " पैकेज पैकेज दिखाएं " के रूप में नामित किया गया है)। न सिर्फ एप्लिकेशन बंडल हैं, ऐप्पल बंडल का उपयोग फ्रेमवर्क, प्लगइन्स, एप्लिकेशन एक्सटेंशन, एक्सपीआई सेवाओं, कुछ विशेष प्रकार के इंस्टॉलर पैकेजों के साथ-साथ डेटा स्टोरेज प्रारूप के लिए भी करता है यदि संग्रहीत डेटा में कई फाइलें शामिल हैं, लेकिन केवल एक फाइल के रूप में दिखाई देगी (जैसे चित्रों के साथ एक RTF दस्तावेज़ को RTFD बंडल के रूप में संग्रहीत किया जा सकता है)। बंडलों में हमेशा एक वास्तविक नाम होता है, डिस्क पर फ़ाइल प्रविष्टि का नाम। इसलिए यदि प्रदर्शन करने के लिए और कुछ नहीं है, तो macOS हर जगह उस नाम को प्रदर्शित करता है।

हालाँकि, बंडलों में एक सूचना फ़ाइल होती है, जिसका नाम है Info.plist, जिसमें बंडल के बारे में सभी प्रकार के मेटा डेटा होते हैं। इस तरह की एक जानकारी फ़ाइल को परिभाषित कर सकते हैं एक प्रदर्शन नाम है । यदि ऐसा प्रदर्शन नाम सेट है, तो खोजक प्रदर्शन नाम प्रदर्शित करेगा न कि निर्देशिका का वास्तविक नाम। यही है, जब तक कि निर्देशिका को फिर से नाम नहीं दिया गया है, जिसे खोजकर्ता यह पता लगा सकता है कि निर्देशिका नाम फ़ाइल में बंडल नाम से मेल नहीं खाता है या नहीं Info.plist। खैर, मैं मानता हूँ, यह थोड़ा जटिल है। आइए इसे एक उदाहरण से देखें:

  1. निर्देशिका का नाम है My App.app
  2. बंडल नाम में Info.plistहैMy App
  3. बंडल प्रदर्शन नाम में Info.plistहैMy Cool App

उस संयोजन के साथ, फ़ाइंडर ऐप को इस रूप में दिखाएगा My Cool App.app(या My Cool Appयदि एक्सटेंशन छिपा हुआ है)। जब तक (1) और (2) के नाम पर मिलान होता है, (3) प्रदर्शित होता है।

अगर मैं अब निर्देशिका का नाम बदल देता हूं My Boring App.app, तो खोजक इसे My Boring App.appतब से ही प्रदर्शित करेगा जब तक कि (1) और (2) नाम में मेल न खाए, (1) प्रदर्शित होता है, जैसे कि उपयोगकर्ता चाहता है कि उसका / उसकी ऐप का नाम बदल दिया जाए, बेशक, खोजक को उपयोगकर्ता के चुने हुए नाम को प्रदर्शित करना चाहिए, समझ में आता है, है ना?

पर्याप्त पहले से ही जटिल? खैर, मुझे खेद है, लेकिन यह अब और भी अधिक जटिल हो गया है। Info.plistउपयोगकर्ताओं को प्रदर्शित किए जाने वाले सभी मानों को स्थानीयकृत किया जा सकता है , इसलिए यदि आपका सिस्टम यूएस अंग्रेजी पर सेट है, तो बंडल डिस्प्ले नाम हो सकता है My Cool App, लेकिन यदि सिस्टम यूके अंग्रेजी में सेट है, तो यह हो सकता है My Amazing App। यदि वर्तमान प्रणाली भाषा के लिए कोई स्थानीयकरण मौजूद है, तो खोजक उस स्थानीयकरण को प्रदर्शित करेगा, लेकिन फिर, केवल तभी जब (1) और (2) के नाम मेल खाते हैं, अन्यथा (1) फिर से जीत जाएगा।

स्थानीयकृत रखकर किया जाता है .stringsएक उप-निर्देशिका में बंडलों कि नाम हैं में फ़ाइलों <x>.lproj, जहां <x>सिर्फ एक भाषा कोड, जैसे हो सकता है en.lprojअंग्रेजी के लिए, fr.lprojफ्रेंच, आदि के लिए लेकिन में भी भाषा + देश, जैसे हो सकता है en_US.lproj, en_GB.lproj, en_AU.lproj, और इतने पर। अंदर एक फ़ाइल नाम है InfoPlist.stringsऔर यह फ़ाइल फ़ाइल के आधार मान को ओवरराइड कर सकती है Info.plist। यदि कोई मिलान स्थानीयकरण नहीं पाया जाता है, तो आधार स्थानीयकरण से मूल्यों का उपयोग किया जाता है ( विकास क्षेत्र का नाम ) जिसे Info.plistफ़ाइल द्वारा भी परिभाषित किया गया है। यदि इस तरह के किसी स्थानीयकरण को परिभाषित नहीं किया जाता है, तो Info.plistसीधे उपयोग किए जाने वाले मानों का उपयोग किया जाता है।

स्पॉटलाइट खोजक की तरह व्यवहार करता है, अगर (1) और (2) नाम में मैच (3) प्रदर्शित किया जाता है, या तो सीधे या मिलान स्थानीयकरण से। यदि (3) सेट नहीं है, (1) प्रदर्शित किया जाता है। लेकिन फाइंडर के विपरीत यह हमेशा .appएक्सटेंशन को नहीं जोड़ता है , भले ही फाइंडर वरीयताओं में अनुरोध किया गया हो। मैं कभी भी सटीक व्यवहार पैटर्न नहीं ढूंढ पाया, लेकिन सेटअप का एक निश्चित संयोजन स्पॉटलाइट को एक्सटेंशन दिखाने से रोक देगा, चाहे आपने जो भी कॉन्फ़िगर किया हो। कुछ उपयोगकर्ताओं के लिए यह खोजक सेटिंग को बदलने और उसके बाद चलाकर तय हो गई है sudo mdutil -E /में Terminal(जो फिर से अनुक्रमित सब कुछ)। लेकिन यह सभी उपयोगकर्ताओं के लिए काम नहीं कर रहा है, जिसमें चुने हुए भाषा / क्षेत्र के साथ कुछ करना हो सकता है।

मूल रूप से यह एक बग है। या तो पुन: अनुक्रमण इसे ठीक करता है या इसे ठीक नहीं किया जा सकता है। और Apple द्वारा व्यवहार को कुछ macOS रिलीज़ में बदल दिया गया और उसके बाद लगातार बना रहा ... यानी 10.13 हाई सिएरा तक। अचानक मेरे सभी ऐप .appमें स्पॉटलाइट में एक्सटेंशन होता है, जो मेरे फाइंडर सेटिंग से मेल खाता है, जबकि 10.12 में सिएरा में किसी ऐप का फाइटर में एक्सटेंशन नहीं था, फाइंडर सेटिंग के बावजूद, जब तक मैंने इसका नाम नहीं बदला या जब तक कि मेरे पास झूठ बोलने की कई प्रतियां नहीं थीं।


1
मेरे पास macos 10.13 (हाई सिएरा) में अपग्रेड करने के बाद से एक ही मुद्दा है। QA को Apple में कुछ समय के लिए गंभीरता से कमी है :(
Xavier

मेरे पास एक मशीन है जो ".app" दिखाती है और एक ऐसा नहीं है। वह जो करता है वह यह है कि मैं एक मशीन से माइग्रेट हो गया था। जो ताज़ा नहीं था, उसे मिटा दिया गया और फिर से स्थापित किया गया।
पॉल टॉम्बलिन

वाक्य के लिए आपका स्रोत क्या है 'कुछ उपयोगकर्ताओं के लिए यह निश्चित है ...'? अन्यथा एक महान जवाब!
एरिक

@ एरिक I ऐप्पल सपोर्ट फोरम को ब्राउज़ कर रहा था और यह एक सुझाया गया फिक्स था। कुछ उपयोगकर्ताओं ने उत्तर दिया "हां, यह तय हो गया" और उपयोगकर्ताओं की समान मात्रा के बारे में उत्तर दिया "कोशिश की, लेकिन कोई अंतर नहीं"। मेरे लिए यह काम नहीं किया, इसलिए मैं अंतिम श्रेणी से संबंधित हूं। मुझे लगता है कि ऐसे कई कारण मौजूद हैं जो एक ही मुद्दे को जन्म देते हैं और उन पर फिर से अनुक्रमण द्वारा तय किया जा सकता है लेकिन अन्य कारणों से इस तरह तय नहीं किया जाएगा - लेकिन यह सिर्फ अटकलें हैं।
मैकी

2

ऐसा लगता है कि यह तब होता है जब स्पॉटलाइट एक्सटेंशन छिपाने के लिए सेटिंग से पहले ऐप्स को अनुक्रमित करता है। आपको इस समस्या को हल करने के लिए रीइन्डेक्सिंग अनुप्रयोगों का प्रयास करना चाहिए।

स्पॉटलाइट प्राथमिकताओं में गोपनीयता टैब पर जाएं और बहिष्कृत स्थानों पर एप्लिकेशन निर्देशिका जोड़ें। यह स्पॉटलाइट इंडेक्स से सभी एप्लिकेशन को हटा देना चाहिए। फिर इसे फिर से बाहर किए गए स्थानों से हटा दें ताकि स्पॉटलाइट सही सेटिंग्स के साथ अनुप्रयोगों को फिर से खोल देगा। ".App" एक्सटेंशन को reindexing करने के बाद सभी परिणामों से हटा दिया जाना चाहिए।


मैं आपको नीचा दिखा रहा था क्योंकि आपका जवाब उस बिंदु पर शुद्ध अटकलबाजी था, जो एक उत्तर की तुलना में टिप्पणी के लिए बेहतर है।
गेरी

ओह ठीक। क्षमा करें, मैं इस साइट के कामकाज से परिचित नहीं हूं ..
Frédéric Dénommé

कोई समस्या नहीं है, साइट पर आपका स्वागत है।
गेरी

1
यह मेरे लिए काम नहीं करता है जब मैं एक्सटेंशन दिखाने के लिए सेटिंग में बदलाव करता हूं और सभी एप्लिकेशन को फिर से इंस्टॉल करता हूं।
गेरी

0
  1. पर जाएं: खोजक> प्राथमिकताएँ> उन्नत
  2. "सभी फ़ाइल एक्सटेंशन दिखाएं" को अनचेक करें

यह .app समस्या को तुरंत हल करेगा


अलग पूछने के लिए आपका स्वागत है। हम पसंद करते हैं कि उत्तर इस बात की जानकारी देते हैं कि वे क्यों काम करेंगे। कृपया देखें कि अच्छी गुणवत्ता वाले उत्तर प्रदान करने के सुझावों के लिए कैसे उत्तर दें । - पढ़ने से।
fsb
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.