2008-09-03 8 views
6

मुझे सहायक फाइलों के बंच मिल गए हैं जो कोड और लाटेक्स दस्तावेजों द्वारा उत्पन्न किए गए हैं जो मुझे को संभावित खोज उम्मीदवारों के रूप में स्पॉटलाइट द्वारा सुझाए जाने की इच्छा नहीं है। मैं example.log की तलाश नहीं कर रहा हूं, मुझे example.tex की तलाश है!मैक ओएस एक्स की स्पॉटलाइट कुछ फ़ाइल प्रकारों को अनदेखा करने के लिए कॉन्फ़िगर किया जा सकता है?

तो स्पॉटलाइट को सभी .log फ़ाइलों को अनदेखा करने के लिए कॉन्फ़िगर किया जा सकता है?

(मुझे पता है, मुझे पता है, मैं बस के बजाय पारा का उपयोग करना चाहिए ...)


@diciu एक दिलचस्प जवाब है।

चित्रा बाहर जो आयातक फ़ाइल

मुझे यकीन है कि नहीं कर रहा हूँ के प्रकार अगर फाइल के अपने प्रकार किसी एक आयातक द्वारा नियंत्रित किया जाता संभालता है: मेरे मामले में समस्या है? चूंकि उन्हें सभी अजीब एक्सटेंशन (.aux, .glo, .out, जो भी हो) मिलते हैं, मुझे लगता है कि यह असंभव है कि को इंडेक्स करने के लिए एक आयातक है। लेकिन क्योंकि वे सादा पाठ हैं, उन्हें जेनेरिक फाइलों के रूप में उठाया जा रहा है। (वैसे, मैं स्पॉटलाइट के अनुक्रमण बारे में ज्यादा पता नहीं है, इसलिए मैं इस पर पूरी तरह से गलत हो सकता है।)


@diciu फिर से: TextImporterDontImportList बहुत आशाजनक लगता है, मैं सिर से निकल जाऊंगा और देख सकता हूं कि इसमें कुछ भी आता है या नहीं।

जैसा कि आप कहते हैं, ऐसा लगता है कि पूरे यूटीआई सिस्टम वास्तव में कुछ खोजने की अनुमति नहीं देता है। अपेक्षाकृत कठिन यद्यपि मुझे सामान्य अर्थ में स्थापित करने के लिए के लिए


@Raynet फ़ाइलें अदृश्य बनाना, एक अच्छा विचार है वास्तव में है। यदि सबसे बुरी स्थिति सबसे खराब होती है, तो मैं उसे एक शॉट दे सकता हूं (लेकिन संभवतः क्विकसिल्वर जैसे अन्य विकल्पों को समाप्त करने के बाद)। (ओह, और SetFile डेवलपर उपकरण की आवश्यकता है, लेकिन मैं हर किसी को यहाँ अनुमान लगा रहा हूँ उन्हें वैसे भी :) इंस्टॉल किया होगा)

+0

आप एक यूआई के साथ इस तरह निंजा चीज़ें करने लीप या HoudahSpot की तरह एक कार्यक्रम खरीद सकते हैं।डेटाबेस में आइटम छोड़ने की संभावना बेहतर है, और बस एक बेहतर खोज उपकरण का उपयोग करें। स्पॉटलाइट सिस्टम उदाहरण के लिए फ़ाइल प्रकारों को छोड़कर पूरी तरह से समर्थन करता है। (या आप mmfind का उपयोग kmDItemContentType जैसी चीजों के साथ कर सकते हैं! = 'जो भी आप नहीं चाहते हैं' –

उत्तर

3

@Will - इन बातों है कि प्रकारों को परिभाषित uniform type identifiers कहा जाता है।

समस्या यह है कि वे एक्सटेंशन (जैसे .txt) और जेनेरिक प्रकारों का संयोजन हैं (यानी public.plain-text txt फ़ाइल से पूरी तरह से सामग्री पर आधारित txt एक्सटेंशन के बिना मेल खाता है) तो यह एक जैसा दिखने जैसा आसान नहीं है विस्तार।

RichText.mdimporter शायद आयातक जो आपकी टेक्स्ट फ़ाइल आयात करता है। यह आसानी से फ़ाइलें आप अनुक्रमित नहीं करना चाहती में से एक पर डिबग मोड में mdimport चलाकर सत्यापित किया जाना चाहिए:

 
cristi:~ diciu$ echo "All work and no play makes Jack a dull boy" > ~/input.txt 
cristi:~ diciu$ mdimport -d 4 -n ~/input.txt 2>&1 | grep Imported 
    kMD2008-09-03 12:05:06.342 mdimport[1230:10b] Imported '/Users/diciu/input.txt' of type 'public.plain-text' with plugIn /System/Library/Spotlight/RichText.mdimporter. 

प्रकार है कि मेरे उदाहरण में से मेल खाता है public.plain-पाठ किया जाता है।

मुझे नहीं पता कि आप वास्तव में यूटीआई के लिए एक्सटेंशन-आधारित अपवाद कैसे लिखते हैं (जैसे सार्वजनिक। प्लेन-टेक्स्ट .log में समाप्त होने वाली किसी चीज़ को छोड़कर)।

बाद में संपादित करें: मैं भी हालांकि RichText mdimporter द्विआधारी देखा है और एक होनहार स्ट्रिंग पाया, लेकिन मैं समझ नहीं करता है, तो यह वास्तव में (एक प्राथमिकता नाम या जो कुछ भी रूप में) का उपयोग किया जा रहा है:

 
cristi:FoodBrowser diciu$ strings /System/Library/Spotlight/RichText.mdimporter/Contents/MacOS/RichText |grep Text 

TextImporterDontImportList 

2

कैसे एक फ़ाइल प्रकार स्तर पर यह करने के लिए सुनिश्चित नहीं हैं, लेकिन आप एक फ़ोल्डर स्तर पर यह कर सकते हैं:

स्रोत: यदि आप पूरी तरह फ़ोल्डर का नाम बदलने नहीं कर सकते क्योंकि अन्य सॉफ्टवेयर पर निर्भर करता है एक और तकनीक आगे जाना है और निर्देशिका में समाप्त करने के लिए "का नाम बदलने के लिए है http://lists.apple.com/archives/spotlight-dev/2008/Jul/msg00007.html

मेक सुर्खियों एक फ़ोल्डर

उपेक्षा .noindex ", लेकिन फिर crea मूल नाम का उपयोग कर वास्तविक स्थान की ओर इशारा करते हुए एक ही स्थान पर एक सिम्लिंक te te।

अधिकांश सॉफ़्टवेयर मूल नाम के साथ सिम्लिंक का उपयोग करने में प्रसन्न हैं, लेकिन स्पॉटलाइट सिम्लिंक को अनदेखा करता है और "असली" नाम * .indindex में समाप्त होता है और उस स्थान को अनदेखा कर देगा।

शायद की तरह कुछ:

mv OriginalName OriginalName.noindex ln -s OriginalName।नोइंडेक्स
OriginalName

ls -l

lrwxr-XR-एक्स 1 एंडी व्यवस्थापक 24 जनवरी 9 2008 OriginalName -> OriginalName.noindex drwxr-XR-x 11 एंडी व्यवस्थापक 374 जुला 11 07:03 Original.noindex

2

यहां बताया गया है कि यह काम हो सकता है।

नोट: यह एक सिस्टम अपडेट परिवर्तन आप प्रदर्शन करेंगे ऊपर लिख देगा के रूप में एक बहुत अच्छा समाधान नहीं है।

सभी आयातकों

 
cristi:~ diciu$ mdimport -L 
2008-09-03 10:42:27.144 mdimport[727:10b] Paths: id(501) (
    "/System/Library/Spotlight/Audio.mdimporter", 
    "/System/Library/Spotlight/Chat.mdimporter", 
    "/Developer/Applications/Xcode.app/Contents/Library/Spotlight/SourceCode.mdimporter", 

चित्रा बाहर जो आयातक (ऑडियो आयातक के लिए उदाहरण) आपके प्रकार की फ़ाइल हैंडल की एक सूची प्राप्त:

 
cristi:~ diciu$ cat /System/Library/Spotlight/Audio.mdimporter/Contents/Info.plist 




[..] 
      CFBundleTypeRole 
      MDImporter 
      LSItemContentTypes 
      
       public.mp3 
       public.aifc-audio 
       public.aiff-audio 

ऑल्टर प्रकार नष्ट करने के लिए आयातक के plist आप अनदेखा करना चाहते हैं।

पुन: आयात आयातक के प्रकार इतना प्रणाली परिवर्तन को चुनता है:

 
mdimport -r /System/Library/Spotlight/Chat.mdimporter 
1

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

आप उन फ़ाइलों को खोजक के लिए अदृश्य बनाने का प्रयास कर सकते हैं, स्पॉटलाइट अदृश्य फ़ाइलों को सूचीबद्ध नहीं करेगा। फाइलों पर kIsInvisible ध्वज स्थापित करने के लिए आदेश है:

SetFile -एक वी [फ़ाइल नाम (रों)]

संबंधित मुद्दे