Як я можу видалити піктограму Finder з док-станції?


31

Я почав використовувати Forklift як заміну Finder, тому мені не потрібен Finder в моєму доку. Насправді, я б швидше хотів би, щоб Forklift був найдальшим лівим значком, тому я випадково не натискав на Finder.

Звичайний метод перетягування програми з док-станції не працює, а також перетягування команд. Контекстне меню не дозволяє видалити піктограму.

Чи є на Леві якийсь спосіб видалити Finder з док-станції?
Можливо, є база даних чи файл плістів, які я можу змінити?


cDock має таку можливість.
Wowfunhappy

Відповіді:


31

Немає простого способу зробити це, але є невеликий хакер :)

  1. Перейдіть до /System/Library/CoreServices/Dock.app/Contents/Resources/
  2. Резервне копіювання DockMenus.plist
  3. Відкрийте DockMenus.plist у вашому улюбленому текстовому редакторі з кореневим доступом
  4. Знайдіть розділ finder-runningта додайте новий підрозділ

    <dict>
        <key>command</key>
        <integer>1004</integer>
        <key>name</key>
        <string>REMOVE_FROM_DOCK</string>
    </dict>
    

    або просто завантажити мою версію DockMenus.plist

  5. Файл редактора плістів повинен виглядати так:

    Редактор списку

  6. Відкрийте термінал і запустіть killall Dock.

  7. Клацніть правою кнопкою миші на піктограмі Finder у Dock - Бінго!

    Шукач "Видалити з доку"

ps Після перезавантаження Dock (перезавантаження вручну або перезавантаження Mac) потрібно видалити значок Finder вручну з Dock


7
Oneliner :) f=/System/Library/CoreServices/Dock.app/Contents/Resources/DockMenus; sudo cp $f.plist $f-old.plist; sudo defaults write $f finder-running -array-add '<dict><key>command</key><integer>1004</integer><key>name</key><string>REMOVE_FROM_DOCK</string></dict>'; sudo chmod 644 $f.plist; osascript -e 'quit app "Dock"'. Я не знайшов іншого способу (крім графічного графічного інтерфейсу) автоматично видалити Finder з Dock після повторних реєстрацій.
Лрі

1
@Lri oneliner ефективний, але завжди заплутаний. Про підпис коду - у випадку проблем із зміненим Dock.app ви можете відновити * .plist із резервної копії та запустити codeign -v /System/Library/CoreServices/Dock.app/Contents/MacOS/Dock.Це має вирішити проблему.
Олександр Мазанов

4
Дивовижне, дякую! Я налаштував сценарій для запуску під час входу, щоб натиснути на пункт меню:tell application "System Events" to tell UI element "Finder" of list 1 of process "Dock" perform action "AXShowMenu" click menu item "Remove from Dock" of menu 1 end tell
Натан Грінштейн

3
Працює для мене на Mavericks. За винятком того, що біле "світло" під іконою (а точніше там, де була б ікона) все ще є).
eebbesen

2
@eebbesen, вам доведеться вийти з Finder, перш ніж видалити його з Dock.
AfzalivE

1

Він працює для мене на HighSierra (10.13.6) з відключеним SIP.

Я використовував таку команду для редагування .plist-файлу:

PL="/System/Library/CoreServices/Dock.app/Contents/Resources/DockMenus.plist"&&
sudo -- defaults write $PL finder-running -array-add  '<dict><key>command</key><integer>1004</integer><key>name</key><string>REMOVE_FROM_DOCK</string></dict>'

Перевірте результат за допомогою sudo defaults read $PL finder-running.

Якщо це добре виглядає sudo chmod -v +r $PL; killall Dock.

Ось італійська форматована версія цього AppleScript:

tell application "System Events"
    tell UI element "Finder" of list 1 of process "Dock"
        perform action "AXShowMenu"
        click menu item "Rimuovi dal Dock" of menu 1
    end tell
end tell

Це все, я сподіваюся, що він корисний як швидкий повний резюме.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.