DockNest

Launcher Docka dla narzędzi deweloperskich, który pozwala utrzymać Dock w porządku.

Po co istnieje

Trzymanie każdego IDE, edytora, terminala i narzędzia w Docku kosztuje miejsce i uwagę. DockNest otwiera się jako lekki popover zakotwiczony wokół Docka, wykrywa już zainstalowane narzędzia deweloperskie, grupuje je i pozwala otworzyć plik lub katalog przez upuszczenie go na kafelek.

Co robi

Stack

Użycie

open DockNest.xcodeproj
xcodebuild -project DockNest.xcodeproj -scheme DockNest \
  -configuration Debug -destination 'platform=macOS' build

Notatki inżynierskie

Wykrywanie opiera się na metadanych, a nie na zaszytej liście — właśnie dlatego działa w różnych konfiguracjach deweloperskich bez utrzymywania stałego zbioru aplikacji: IDE i narzędzia deweloperskie są rozpoznawane po LSApplicationCategoryType równym public.app-category.developer-tools, a terminale po metadanych obsługi dokumentów powiązanych z powłoką, takich jak CFBundleTypeRole równy Shell oraz typ com.apple.terminal.shell-script. Ukryte preferencje aplikacji są zapisywane lokalnie w UserDefaults, a aplikacja nie czyta zawartości żadnych plików.

Ograniczenia

Źródło: Ahmetshbzz/DockNest