Zezwalaj OSX na selektywne włączanie określonych typów plików w ostatnich dokumentach

1

Preferencja systemowa & gt; Wygląd & gt; Liczba ostatnich elementów & gt; Ustawienie dokumentu to wszystko lub nic.

Czy jest to sposób na [zezwolenie | zapobieganie] dodatkom do listy dokumentów na podstawie [Rozszerzenie pliku | Aplikacja | Rodzaj]?

Mogę chcieć, aby dokumenty Worda były na liście, ale nie obrazy. Lub zezwól VLC na dołączanie plików, ale nie Xee.

AppleScript prawdopodobnie miałby sens.

** edytować ** Chodzić na palcach jest potencjalnym rozwiązaniem.

Craig
źródło

Odpowiedzi:

1

To nie poszczególne aplikacje robią to ręcznie, jest kontrolowane przez Uruchom usługi .

Jednak aplikacje mogą nie dodawać ich do menu ostatnich plików / aplikacji, ustawiając flagę kLSLaunchDontAddToRecents w LSLaunchFlags gdy dzwonisz np. LSOpenFromRefSpec .

Teraz możesz samodzielnie modyfikować aplikacje open-source, lub łatać ich pliki binarne, lub łatać je w pamięci, np. za pomocą Menedżerowie wprowadzania . Pierwsza opcja to prawdopodobnie za dużo pracy, pozostałe są po prostu szalone.

W istocie nie ma (rozsądnego) sposobu na zmianę tego zachowania.


Możesz oczywiście przechwycić zmiany na ~/Library/Preferences/com.apple.RecentItems.plist i przez wszystkie elementy na tych listach za pomocą Nazwy nie lubisz

Daniel Beck
źródło
Czy monitor AppleScript może przechwytywać zmiany w tym pliku? Czy AppleScript może działać jak proces w tle?
Craig
@Craig Myślałem o tym bardziej na wzór Interfejs API zdarzeń systemu plików , ale możesz spróbować zmodyfikować new item alert akcja folderu AppleScript. To mógłby praca, ponieważ zmiany w tym plist są realizowane przez zastąpienie istniejącego pliku. Może to prowadzić do monitorowania problemów z wydajnością ~/Library/Preferences/, chociaż.
Daniel Beck
1

Zastrzeżenie: Jestem twórcą Chodzić na palcach aplikacja, którą wspomniałeś w edycji do swojego pytania.

Wydaje się, że Tiptoe może w pewnym stopniu zaspokoić twoje wymagania.

Poniżej opisano, jak działa Tiptoe. Ten proces można wykorzystać do opracowania skryptu lub programu, który wykonuje podobne zadanie. (Nie znam wystarczającej ilości AppleScript, aby wiedzieć, czy jest to możliwe w ten sposób) ...

  1. Możesz otworzyć aplikację za pomocą Tiptoe. Tiptoe zapisuje pliki preferencji aplikacji w tymczasowej lokalizacji.
  2. Aplikacja jest następnie otwierana za pomocą połączenia do NSWorkspace używając opcji, aby zapobiec dodaniu go do System & gt; Ostatnie elementy Lista aplikacji.
  3. Tiptoe czeka na wiadomość z NSWorkspace informującą o tym, kiedy aplikacja zakończy działanie.
  4. Gdy wykryje, że aplikacja została zamknięta, porównuje listę ostatnio zapisanych elementów z tymi, które są teraz w preferencjach.
  5. Usuwa różnicę między tymi dwoma (tj. Plikami, do których uzyskano dostęp podczas bieżącej sesji z aplikacją) z pliku System & gt; Ostatnie elementy Lista dokumentów za pomocą Uruchom usługi .
  6. Następnie usuwa te same elementy z aktualnie przechowywanych preferencji.
  7. Usuwa pliki tymczasowe przechowywane w kroku 1., ponieważ nie są one już potrzebne.

Wadą korzystania z Tiptoe jest to, że działa tylko z określonymi aplikacjami, dla których został zbudowany, ale nowe aplikacje są dodawane z każdą wersją i żądania są mile widziane.

Jeśli jesteś zainteresowany wypróbowaniem Tiptoe, jest on dostępny jako 15-dniowy darmowy okres próbny po pobraniu ze strony internetowej.

zenopolis
źródło