Finder tercihini tüm dosya uzantılarını gösterecek şekilde açıkça ayarlasam da, bazı uygulamaların Spotlight sonuçlarında dosya adı uzantısını göstermediğini görüyorum.
İşte bazı örnekler.
Dağ aslanı yönetiyorum.
Finder tercihini tüm dosya uzantılarını gösterecek şekilde açıkça ayarlasam da, bazı uygulamaların Spotlight sonuçlarında dosya adı uzantısını göstermediğini görüyorum.
İşte bazı örnekler.
Dağ aslanı yönetiyorum.
Yanıtlar:
Temel olarak, macOS 10.13 High Sierra'da tanıtılan bir hata veya hata düzeltmesi: Spotlight artık dosya uzantılarını göstermek için Finder ayarına saygı duyuyor. Bu ayarın devre dışı bırakılması .app uzantısını Spotlight'tan kaldırır.
Bunun çok eski bir soru olduğunu biliyorum, ama 10.13 High Sierra'da bir déjà-vu vardı; bu konuda farklı ama bazı benzerlikler ile, bu yüzden araştırdım ve bu soru üzerine tökezledi ve işte cevabım:
Uygulamalar aslında tek bir dosyaymış gibi görüntülenen dizinlerdir; Apple bunu bir paket olarak adlandırır (Finder'ın bağlam menüsünde " Paket İçeriğini Göster " bölümünde olduğu gibi " Paket " olarak adlandırmasına rağmen ). Yalnızca uygulamalar paket değildir, Apple ayrıca çerçeveler, eklentiler, uygulama uzantıları, XPI hizmetleri, belirli yükleyici paketleri için paketler ve depolanan veriler birden fazla dosyadan oluşuyorsa, ancak tek bir dosya olarak görünecektir (ör. resimli bir RTF belgesi RTFD paketi olarak saklanabilir). Paketlerin her zaman gerçek bir adı vardır, diskteki dosya girişinin adı. Görüntülenecek başka bir şey yoksa, macOS bu adı her yerde görüntüler.
Ancak, paketler içinde, Info.plist
paketle ilgili her türlü meta veriyi içeren adlandırılmış bir bilgi dosyası vardır . Böyle bir bilgi dosyasının tanımlayabileceği bir şey Görünen Ad'dır . Böyle bir görünen ad ayarlanırsa, Finder dizinin gerçek adını değil, görünen adını görüntüler. Dizin yeniden seçildi sürece dizin adı eşleşmezse belirtecektim, Bulucu algılayabilir hangi paketi adı içinde Info.plist
dosyanın. Kabul ediyorum, biraz karmaşık. Bir örnekle deneyelim:
My App.app
Info.plist
DİRMy App
Info.plist
DİRMy Cool App
Bu kombinasyonla, Finder uygulamayı olarak gösterir My Cool App.app
(veya yalnızca My Cool App
uzantılar gizlenmişse). (1) ve (2) adında eşleştiği sürece, (3) görüntülenir.
Şimdi dizini yeniden adlandırırsam, My Boring App.app
Finder dizini My Boring App.app
(1) ve (2) adında eşleşmezse, kullanıcının uygulamasının yeniden adlandırılmasını istiyormuş gibi (1) görüntülenir Tabii, Finder kullanıcının seçtiği adı görüntülemeli, mantıklı değil mi?
Zaten yeterince karmaşık mı? Üzgünüm, ama şimdi daha da karmaşıklaşıyor. Info.plist
Kullanıcılara görüntülenen tüm değerler yerelleştirilebilir , bu nedenle sisteminiz ABD İngilizcesi olarak ayarlanmışsa, paket görünen adı olabilir My Cool App
, ancak sistem İngiltere İngilizcesi olarak ayarlanmışsa, bu olabilir My Amazing App
. Geçerli sistem dili için bir yerelleştirme varsa, Finder bu yerelleştirmeyi görüntüler, ancak yine yalnızca (1) ve (2) adları eşleşirse, aksi takdirde (1) tekrar kazanır.
Yerelleştirme yerleştirilerek yapılır .strings
adlandırılır alt dizinleri içine demetleri içine dosyaları <x>.lproj
, <x>
sadece bir dil kodu, örneğin olabilir en.lproj
İngilizce için, fr.lproj
ayrıca dil + ülke, gibi olabilir vs. Fransız Ama içinde en_US.lproj
, en_GB.lproj
, en_AU.lproj
, vb. Inside adlı bir dosyadır InfoPlist.strings
ve bu dosya dosyanın temel değerlerini geçersiz kılabilir Info.plist
. Eşleşen bir yerelleştirme bulunamazsa, dosya tarafından da tanımlanan temel yerelleştirmeden alınan değerler ( geliştirme bölgesi olarak adlandırılır ) kullanılır Info.plist
. Böyle bir yerelleştirme tanımlanmamışsa, 'den gelen değerler Info.plist
doğrudan kullanılır.
Doğrudan veya eşleşen yerelleştirmeden (1) ve (2) adında (1) eşleşmesi görüntülenirse, Spot Işığı Finder gibi davranır. (3) ayarlanmamışsa, (1) görüntülenir. Ancak Finder'ın aksine .app
, Finder tercihlerinde talep edilse bile her zaman uzantıyı eklemez . Tam olarak davranış modelini bulamadım, ancak belirli bir kurulum kombinasyonu, yapılandırdığınız şeyden bağımsız olarak Spotlight'ın uzantıyı göstermesini engelleyecektir. Bazı kullanıcılar için Çalışıyorsa sonra Bulucu ayarını değiştirerek ve sabitlenir sudo mdutil -E /
içinde Terminal
(ki yeniden endeksler her şey). Ancak, seçilen dil / bölge ile ilgisi olabilecek tüm kullanıcılar için çalışmıyor.
Temelde bir hata. Ya yeniden endeksleme sorunu düzeltir ya da düzeltilemez. Ve davranış, bazı macOS sürümlerinde Apple tarafından değiştirildi ve daha sonra sabit kaldı ... yani 10.13 High Sierra'ya kadar. Birdenbire tüm uygulamalarımın .app
Spotlight'ta uzantısı var , bu da Finder ayarımla eşleşiyor, 10.12 Sierra'da hiçbir uygulama, yeniden adlandırmadıkça veya etrafta yalan söylemem birden fazla olmadıkça Finder ayarına rağmen Spotlight'ta bir uzantıya sahip değildi.
Görünüşe göre Spotlight, uygulamaları gizleme ayarı etkin olmadan önce uygulamaları dizine eklediğinde gerçekleşir. Bu sorunu çözmek için uygulamaları yeniden dizine eklemeyi denemelisiniz.
Spotlight tercihlerindeki Gizlilik sekmesine gidin ve Uygulamalar dizinini hariç tutulan konumlara ekleyin. Bu, tüm uygulamaları Spotlight dizininden kaldırmalıdır. Ardından, Spotlight'ın uygulamaları doğru ayarlarla yeniden endekslemesi için hariç tutulan konumlardan tekrar kaldırın. Yeniden endekslemeden sonra ".app" uzantısı tüm sonuçlardan kaldırılmalıdır.
.App sorununu hemen çözecek