Tại sao một số kết quả nổi bật của ứng dụng lại hiển thị phần mở rộng .app, nhưng không phải tất cả?


11

Mặc dù tôi đã đặt rõ ràng tùy chọn Finder để hiển thị tất cả các tiện ích mở rộng tệp, tôi vẫn thấy rằng một số ứng dụng không hiển thị tiện ích mở rộng tên tệp trong kết quả Spotlight của chúng.

tên tập tin

Dưới đây là một số ví dụ.

Tôi đang điều hành Mountain Lion.

Ứng dụng trò chuyện
từ
chim sẻ
ghi chú


Đây có thể là các ứng dụng chỉ định tên gói cục bộ không? Vì vậy, tên gói hiển thị, trái ngược với tên tập tin?
Thilo

Câu hỏi này rất giống với [câu hỏi này] [1]. [1]: apple.stackexchange.com/questions/33378/ từ
mcw

Câu trả lời:


9

TL; DR

Về cơ bản, đó là một lỗi hoặc sửa lỗi được giới thiệu trong macOS 10.13 High Sierra: Spotlight hiện tôn trọng cài đặt Finder để hiển thị các phần mở rộng tệp. Vô hiệu hóa cài đặt đó sẽ xóa phần mở rộng .app khỏi Spotlight.

Câu trả lời đầy đủ

Tôi biết đây là một câu hỏi rất cũ, nhưng tôi vừa có một déjà-vu trong 10.13 High Sierra; khác với câu hỏi này nhưng có một số điểm tương đồng, vì vậy tôi đã tìm kiếm nó và tình cờ thấy câu hỏi này và đây là câu trả lời của tôi:

Các ứng dụng trong các thư mục thực tế được hiển thị như thể chúng là một tệp duy nhất; Apple gọi đó một (mặc dù Finder đặt tên nó là " trọn gói " như trong " Show Package Contents " trong menu ngữ cảnh). Không chỉ các ứng dụng là gói, Apple cũng sử dụng các gói cho khung, plugin, tiện ích mở rộng ứng dụng, dịch vụ XPI, một số gói trình cài đặt, cũng như định dạng lưu trữ dữ liệu nếu dữ liệu được lưu trữ bao gồm nhiều tệp nhưng sẽ xuất hiện dưới dạng một tệp (ví dụ: một tài liệu RTF với hình ảnh có thể được lưu trữ dưới dạng gói RTFD). Gói luôn có tên thật, tên của mục nhập tệp trên đĩa. Vì vậy, nếu không có gì khác để hiển thị, macOS hiển thị tên đó ở mọi nơi.

Tuy nhiên, các gói có một tệp thông tin bên trong, được đặt tên Info.plist, chứa tất cả các loại dữ liệu meta về gói. Một điều mà một tệp thông tin có thể định nghĩa là Tên hiển thị . Nếu tên hiển thị như vậy được đặt, Finder sẽ hiển thị tên hiển thị và không phải tên thật của thư mục. Đó là, trừ khi thư mục đã được đặt tên lại, mà Finder có thể phát hiện nếu tên thư mục không khớp với tên gói trong Info.plisttệp. Chà, tôi thừa nhận, nó hơi phức tạp. Hãy thử với một ví dụ:

  1. Thư mục được đặt tên My App.app
  2. Tên gói trong Info.plistMy App
  3. Tên hiển thị bó trong Info.plistMy Cool App

Với sự kết hợp đó, Finder sẽ hiển thị ứng dụng dưới dạng My Cool App.app(hoặc chỉ My Cool Appkhi các tiện ích mở rộng bị ẩn). Miễn là (1) và (2) trùng khớp về tên, (3) được hiển thị.

Nếu bây giờ tôi đổi tên thư mục thành My Boring App.app, thì Finder sẽ hiển thị My Boring App.appngay sau khi (1) và (2) không khớp với tên, (1) được hiển thị, như thể người dùng muốn đổi tên ứng dụng của mình Tất nhiên, Finder sẽ hiển thị tên người dùng đã chọn, có ý nghĩa không?

Đủ phức tạp rồi? Vâng, tôi xin lỗi, nhưng nó thậm chí còn phức tạp hơn bây giờ. Tất cả các giá trị Info.plistđược hiển thị cho người dùng đều có thể được bản địa hóa , vì vậy nếu hệ thống của bạn được đặt thành US English, tên hiển thị theo gói có thể là My Cool App, nhưng nếu hệ thống được đặt thành UK English, thì có thể là vậy My Amazing App. Nếu bản địa hóa tồn tại cho ngôn ngữ hệ thống hiện tại, Finder sẽ hiển thị bản địa hóa đó, nhưng một lần nữa, chỉ khi tên của (1) và (2) khớp, nếu không (1) sẽ giành lại.

Địa hóa được thực hiện bằng cách đặt .stringscác file vào bó vào thư mục con được đặt tên <x>.lproj, nơi <x>chỉ có thể là một mã ngôn ngữ, ví dụ như en.lprojtiếng Anh, fr.lprojtiếng Pháp, vv Tuy nhiên, trong cũng có thể là ngôn ngữ + nước, giống như en_US.lproj, en_GB.lproj, en_AU.lproj, và vân vân. Bên trong là một tệp có tên InfoPlist.stringsvà tệp này có thể ghi đè các giá trị cơ bản của Info.plisttệp. Nếu không tìm thấy nội địa hóa phù hợp, các giá trị từ nội địa hóa cơ sở được sử dụng (tên vùng phát triển ) cũng được xác định bởi Info.plisttệp. Nếu không có nội địa hóa như vậy được xác định, các giá trị từ Info.plistđược sử dụng trực tiếp.

Spotlight hoạt động giống như Finder, nếu (1) và (2) khớp với tên (3) được hiển thị, trực tiếp hoặc từ nội địa hóa phù hợp. Nếu (3) không được đặt, (1) được hiển thị. Nhưng không giống như Finder, nó không phải lúc nào cũng thêm .apptiện ích mở rộng, ngay cả khi được yêu cầu trong tùy chọn Finder. Tôi chưa thể tìm thấy mẫu hành vi chính xác, nhưng một sự kết hợp thiết lập nhất định sẽ ngăn Spotlight hiển thị tiện ích mở rộng, bất kể bạn đã định cấu hình gì. Đối với một số người sử dụng nó được cố định bằng cách thay đổi các thiết lập Finder và sau đó chạy sudo mdutil -E /trong Terminal(mà tái chỉ mục tất cả mọi thứ). Nhưng nó không hoạt động đối với tất cả người dùng, có thể liên quan đến ngôn ngữ / khu vực đã chọn.

Về cơ bản đó là một lỗi. Hoặc lập chỉ mục lại sửa nó hoặc nó không thể được sửa chữa. Và hành vi đã được Apple thay đổi tại một số phiên bản macOS và không đổi sau đó ... tức là cho đến 10.13 High Sierra. Thật bất ngờ, tất cả các ứng dụng của tôi đều có .apptiện ích mở rộng trong Spotlight, phù hợp với cài đặt Finder của tôi, trong khi ở 10.12 Sierra không có ứng dụng nào có tiện ích mở rộng trong Spotlight, mặc dù cài đặt Finder, trừ khi tôi đã đổi tên hoặc trừ khi tôi có nhiều bản sao nói dối.


1
Tôi gặp vấn đề tương tự kể từ khi nâng cấp lên macos 10.13 (High Sierra). QA đã thiếu trầm trọng một thời gian tại Apple :(
Xavier

Tôi có một máy hiển thị ".app" và một máy không. Cái mà tôi đã di chuyển từ một chiếc máy đã được di chuyển. Một cái không được xóa sạch và cài đặt lại.
Paul Tomblin

Nguồn của bạn cho câu 'Đối với một số người dùng, nó đã được sửa ...'? Nếu không thì một câu trả lời tuyệt vời!
Erik

@Erik Tôi đang duyệt diễn đàn hỗ trợ của Apple và đây là một sửa chữa được đề xuất. Một vài người dùng đã trả lời "Có, đã sửa nó" và về cùng một lượng người dùng đã trả lời "Đã thử, nhưng không có gì khác biệt". Đối với tôi nó không hoạt động, vì vậy tôi thuộc vào loại cuối cùng. Tôi cho rằng tồn tại nhiều nguyên nhân dẫn đến cùng một vấn đề và chúng có thể được khắc phục bằng cách lập chỉ mục lại nhưng các nguyên nhân khác sẽ không được khắc phục theo cách đó - nhưng đó chỉ là suy đoán.
Mecki

2

Có vẻ như điều này xảy ra khi Spotlight lập chỉ mục các ứng dụng trước khi cài đặt ẩn tiện ích mở rộng có hiệu lực. Bạn nên thử reindexing các ứng dụng để giải quyết vấn đề này.

Chuyển đến tab Quyền riêng tư trong tùy chọn Spotlight và thêm thư mục Ứng dụng vào các vị trí bị loại trừ. Điều này sẽ xóa tất cả các ứng dụng khỏi chỉ mục Spotlight. Sau đó xóa lại từ các vị trí bị loại trừ để Spotlight sẽ giới thiệu lại các ứng dụng với các cài đặt chính xác. Sau khi giới thiệu lại, phần mở rộng ".app" sẽ bị xóa khỏi tất cả các kết quả.


Tôi đã đánh giá thấp bạn bởi vì câu trả lời của bạn là suy đoán thuần túy vào thời điểm đó, nó phù hợp hơn cho một nhận xét hơn là một câu trả lời.
Gerry

Ồ ĐƯỢC THÔI. Xin lỗi tôi không quen với hoạt động của trang này ..
Frédéric Dénommé

Không có vấn đề, chào mừng đến với trang web.
Gerry

1
Điều này dường như không hoạt động đối với tôi khi tôi thay đổi cài đặt để hiển thị tiện ích mở rộng và giới thiệu lại tất cả Ứng dụng.
Gerry

0
  1. Truy cập: Finder> Tùy chọn> Nâng cao
  2. bỏ chọn "Hiển thị tất cả các phần mở rộng tập tin"

Nó sẽ giải quyết vấn đề .app ngay lập tức


Chào mừng bạn đến hỏi khác nhau. Chúng tôi muốn câu trả lời cung cấp thông tin về lý do tại sao chúng sẽ hoạt động. Vui lòng xem Làm thế nào để trả lời cho lời khuyên về việc cung cấp câu trả lời chất lượng tốt. - Từ đánh giá.
fsb
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.