How to clear Recent Items in OS X?

7,419

As far as I know, there is no built-in way this can be done, as the recent documents are stored in each application's preference file. However, a little AppleScript and:

tell application "Finder"
    set fls to every file in alias ":Users:ben:Library:Preferences:"
    set AppleScript's text item delimiters to {""}
    repeat with fl in fls
        if name extension of fl is "plist" then
            set fn to name of fl
            set pid to text items 1 thru -7 of fn as text
            if pid = "com.apple.Xcode" then
                try
                    do shell script "defaults delete " & pid & " NSRecentXCFileDocuments"
                    do shell script "defaults delete " & pid & " NSRecentXCProjectDocuments"
                end try
            else
                try
                    do shell script "defaults delete " & pid & " NSRecentDocumentRecords"
                end try
            end if
        end if
    end repeat
end tell
This deals with normal applications and Xcode, but not the Apple menu or other applications which don't follow the pattern.

Share:
7,419

Related videos on Youtube

pisfire
Author by

pisfire

iOS App Developer, Android App Developer, ReactJS Developer, Flutter

Updated on September 17, 2022

Comments

  • pisfire
    pisfire almost 2 years

    I want to clear the recent items lists on my computer regardless of what piece of software they are from. I know of the following lists so far:

    • Recent Applications, Documents and Servers are all available in the Recent menu in the Apple menu
    • Xcode has a recent projects and recent files menu
    • Safari has something similar as well
    • TextEdit has an Open Recent menu item as well.

    How do I clear the items in these menus?

  • pisfire
    pisfire almost 15 years
    By using Which editor do I type your Code ? Should I Use VI or text editor ? What extension should I give to this code file ? How to execute it ? Thanks for sharing your knowledge with me.
  • Benjamin Dobson
    Benjamin Dobson almost 15 years
    Open "Script Editor", paste in the code and click the Run button. It'll take a while, during which time the application will be unresponsive, but don't worry about it. It'll also fill up your log files with annoying messages, but I don't think there's anything I can do about that.