Mengapa beberapa hasil sorotan aplikasi menunjukkan ekstensi ".app", tetapi tidak semua?

11

Meskipun saya telah secara eksplisit mengatur preferensi Finder untuk menampilkan semua ekstensi file, saya masih menemukan bahwa beberapa aplikasi tidak menampilkan ekstensi nama file dalam hasil Spotlight mereka.

nama file exts

Berikut ini beberapa contohnya.

Saya menjalankan Mountain Lion.

skype
kata
burung gereja
catatan

Merah dan putih
sumber
Mungkinkah ini aplikasi yang menentukan nama bundel lokal? Sehingga nama bundel menunjukkan, berbeda dengan nama file?
Thilo
Pertanyaan ini sangat mirip dengan [yang ini] [1]. [1]: apple.stackexchange.com/questions/33378/…
mcw

Jawaban:

9

TL; DR

Pada dasarnya, ini adalah bug atau perbaikan bug yang diperkenalkan di macOS 10.13 High Sierra: Spotlight sekarang menghargai pengaturan Finder untuk menampilkan ekstensi file. Menonaktifkan pengaturan itu menghapus ekstensi .app dari Spotlight.

Jawaban lengkapnya

Saya tahu ini adalah pertanyaan yang sangat lama, tetapi saya baru saja mengalami déjà-vu di 10.13 Sierra Tinggi; berbeda dengan yang ini tetapi dengan beberapa kesamaan, jadi saya mencarinya dan menemukan pertanyaan ini dan inilah jawaban saya:

Aplikasi sebenarnya adalah direktori yang ditampilkan seolah-olah itu adalah satu file; Apple menyebut bundel itu (meskipun Finder menamakannya " Paket " seperti dalam " Tampilkan Isi Paket " di menu konteks). Bukan hanya aplikasi yang bundel, Apple juga menggunakan bundel untuk kerangka kerja, plugin, ekstensi aplikasi, layanan XPI, jenis paket penginstal tertentu, serta format penyimpanan data jika data yang disimpan terdiri dari beberapa file tetapi akan muncul hanya sebagai satu file (mis. dokumen RTF dengan gambar dapat disimpan sebagai bundel RTFD). Bundel selalu memiliki nama asli, nama entri file pada disk. Jadi jika tidak ada yang lain untuk ditampilkan, macOS menampilkan nama itu di mana-mana.

Namun, bundel memiliki file info di dalamnya, bernama Info.plist, yang berisi semua jenis data meta tentang bundel. Satu hal yang dapat didefinisikan oleh file info adalah Nama Tampilan . Jika nama tampilan seperti itu diatur, Finder akan menampilkan nama tampilan dan bukan nama sebenarnya dari direktori. Yaitu, kecuali direktori telah dinamai kembali, yang Finder dapat mendeteksi jika nama direktori tidak cocok dengan nama bundel dalam Info.plistfile. Saya akui, ini agak rumit. Mari kita coba dengan sebuah contoh:

  1. Direktori tersebut dinamai My App.app
  2. Nama bundel dalam Info.plistadalahMy App
  3. Nama tampilan bundel dalam Info.plistadalahMy Cool App

Dengan kombinasi itu, Finder akan menampilkan aplikasi sebagai My Cool App.app(atau hanya My Cool Appjika ekstensi disembunyikan). Selama (1) dan (2) cocok dengan nama, (3) ditampilkan.

Jika sekarang saya mengganti nama direktori My Boring App.app, maka Finder akan menampilkannya My Boring App.appsegera setelah (1) dan (2) tidak cocok dengan namanya, (1) ditampilkan, seolah-olah pengguna ingin aplikasinya diganti namanya, dari tentu saja, Finder harus menampilkan nama yang dipilih pengguna, masuk akal, bukan?

Sudah cukup rumit? Maaf, tetapi sekarang menjadi lebih rumit. Semua nilai dalam Info.plistyang ditampilkan kepada pengguna dapat dilokalkan , jadi jika sistem Anda diatur ke Bahasa Inggris AS, nama tampilan bundel mungkin My Cool App, tetapi jika sistem diatur ke Bahasa Inggris Inggris, itu bisa saja My Amazing App. Jika ada pelokalan untuk bahasa sistem saat ini, Finder akan menampilkan pelokalan itu, tetapi sekali lagi, hanya jika nama (1) dan (2) cocok, jika tidak (1) akan menang lagi.

Lokalisasi dilakukan dengan menempatkan .stringsfile ke dalam bundel ke sub-direktori yang diberi nama <x>.lproj, di mana <x>hanya bisa menjadi kode bahasa, misalnya en.lprojuntuk bahasa Inggris, fr.lprojuntuk Perancis, dll Tapi di juga bisa bahasa + negara, seperti en_US.lproj, en_GB.lproj, en_AU.lproj, dan sebagainya. Di dalamnya ada file bernama InfoPlist.stringsdan file ini dapat menimpa nilai-nilai dasar Info.plistfile. Jika tidak ada lokalisasi yang cocok ditemukan, nilai-nilai dari lokalisasi dasar digunakan (bernama wilayah pengembangan ) yang juga ditentukan oleh Info.plistfile. Jika tidak ada pelokalan seperti yang didefinisikan, nilai-nilai dari Info.plistdigunakan secara langsung.

Spotlight berperilaku seperti Finder, jika (1) dan (2) cocok dengan nama (3) ditampilkan, baik secara langsung atau dari lokalisasi yang cocok. Jika (3) tidak disetel, (1) ditampilkan. Tetapi tidak seperti Finder, itu tidak selalu menambahkan .appekstensi, bahkan jika diminta dalam preferensi Finder. Saya tidak dapat menemukan pola perilaku yang tepat, tetapi kombinasi pengaturan tertentu akan mencegah Spotlight menampilkan ekstensi, terlepas dari apa yang telah Anda konfigurasikan. Untuk beberapa pengguna itu diperbaiki dengan mengubah pengaturan Finder dan kemudian berjalan sudo mdutil -E /di Terminal(yang mengindeks ulang semuanya). Tapi itu tidak berfungsi untuk semua pengguna, yang mungkin ada hubungannya dengan bahasa / wilayah yang dipilih.

Pada dasarnya ini adalah bug. Pengindeksan ulang memperbaikinya atau tidak dapat diperbaiki. Dan perilakunya diubah oleh Apple pada beberapa rilis macOS dan tetap konstan setelahnya ... yaitu, sampai 10.13 High Sierra. Tiba-tiba semua aplikasi saya memiliki .appekstensi di Spotlight, yang cocok dengan pengaturan Finder saya, sedangkan di 10.12 Sierra tidak ada aplikasi memiliki ekstensi di Spotlight, terlepas dari pengaturan Finder, kecuali saya telah mengganti nama atau kecuali jika saya memiliki beberapa salinan tergeletak di sekitar.

Mecki
sumber
1
Saya memiliki masalah yang sama sejak memutakhirkan ke macos 10.13 (High Sierra). QA benar-benar kurang untuk sementara waktu di Apple :(
Xavier
Saya punya satu mesin yang menunjukkan ".app" dan yang lain tidak. Salah satu yang dilakukan adalah yang saya migrasi dari mesin yang telah dimigrasi. Yang tidak baru dihapus dan diinstal ulang.
Paul Tomblin
Apa sumber Anda untuk kalimat 'Untuk sebagian pengguna itu sudah diperbaiki ...'? Kalau tidak, jawaban yang bagus!
Erik
@Erik Saya sedang menelusuri forum dukungan Apple dan ini adalah perbaikan yang disarankan. Beberapa pengguna menjawab "Ya, itu memperbaikinya" dan sekitar jumlah yang sama dari pengguna menjawab "Sudah mencoba, tetapi tidak ada perbedaan". Bagi saya itu tidak berhasil, jadi saya termasuk dalam kategori terakhir. Saya berasumsi bahwa ada beberapa penyebab yang mengarah ke masalah yang sama dan salah satunya dapat diperbaiki dengan mengindeks ulang tetapi penyebab lainnya tidak akan diperbaiki seperti itu - tapi itu hanya spekulasi.
Mecki
2

Sepertinya ini terjadi ketika Spotlight mengindeks aplikasi sebelum pengaturan untuk menyembunyikan ekstensi berlaku. Anda harus mencoba mengindeks ulang aplikasi untuk menyelesaikan masalah ini.

Buka tab Privasi di preferensi Spotlight dan tambahkan direktori Aplikasi ke lokasi yang dikecualikan. Ini harus menghapus semua aplikasi dari indeks Spotlight. Kemudian hapus lagi dari lokasi yang dikecualikan sehingga Spotlight akan mengindeks ulang aplikasi dengan pengaturan yang benar. Setelah mengindeks ulang ekstensi ".app" harus dihapus dari semua hasil.

Frédéric Dénommé
sumber
Saya tidak memilih Anda karena jawaban Anda murni spekulasi pada saat itu, yang lebih cocok untuk komentar daripada jawaban.
Gerry
OH OKE. Maaf saya tidak terbiasa dengan cara kerja situs ini ..
Frédéric Dénommé
Tidak masalah, selamat datang di situs ini.
Gerry
1
Ini sepertinya tidak berfungsi untuk saya ketika saya mengubah pengaturan untuk menampilkan ekstensi dan mengindeks ulang semua Aplikasi.
Gerry
0
  1. Pergi ke: Finder> Preferences> Advanced
  2. hapus centang pada "Tampilkan semua ekstensi file"

Ini akan menyelesaikan masalah .app segera

Milos Dimic
sumber
Selamat Datang di Tanya Berbeda. Kami lebih suka jawaban memberikan informasi mengapa mereka akan bekerja. Silakan lihat Cara Menjawab untuk kiat tentang memberikan jawaban berkualitas baik. - Dari Ulasan.
fsb