Desactivar la función Resume para una aplicación o para todo el sistema
macOS Lion tiene una función llamada Resume que se encarga de guardar el estado de las ventanas de las aplicaciones (documentos abiertos, posición y tamaño de las ventanas, etc.) y las restaura al arrancar de nuevo la aplicación. Esto puede ser un inconveniente en determinadas circunstancias. Este comportamiento se puede desactivar para aplicaciones seleccionadas o de forma global para todas las aplicaciones.
Desactivar Resume por aplicación
Se puede realizar con el comando defaults que modifica las preferencias de las aplicaciones actuando sobre los archivos plist de la carpeta ~/Library/Preferences. Es necesario conocer el nombre del archivo plist (lo que se llama el dominio de la aplicación), por ejemplo es com.apple.TextEdit para TextEdit (el nombre del archivo sin la extensión plist), en este caso concreto el comando sería éste:
defaults write com.apple.TextEdit NSQuitAlwaysKeepsWindows -bool FALSE
Comandos para aplicaciones de uso frecuente (puedes configurar las tuyas propias):
defaults write com.apple.iWork.Numbers NSQuitAlwaysKeepsWindows -bool FALSE defaults write com.apple.iWork.Pages NSQuitAlwaysKeepsWindows -bool FALSE defaults write com.apple.iWork.Keynote NSQuitAlwaysKeepsWindows -bool FALSE defaults write com.apple.Preview NSQuitAlwaysKeepsWindows -bool FALSE defaults write com.apple.TextEdit NSQuitAlwaysKeepsWindows -bool FALSE defaults write com.apple.Xcode NSQuitAlwaysKeepsWindows -bool FALSE defaults write com.apple.dt.Xcode NSQuitAlwaysKeepsWindows -bool FALSE defaults write com.apple.QuickTimePlayerX NSQuitAlwaysKeepsWindows -bool FALSE defaults write com.pixelmatorteam.pixelmator NSQuitAlwaysKeepsWindows -bool FALSE defaults write com.pixelmatorteam.pixelmator.LSSharedFileList NSQuitAlwaysKeepsWindows -bool FALSE
Después conviene reiniciar sesión.
Desactivar Resume globalmente con defaults
El comando que desactiva esta función para todas las aplicaciones es:
defaults write NSGlobalDomain NSQuitAlwaysKeepsWindows -bool FALSE
Después conviene reiniciar sesión.
Desactivar Resume globalmente actuando sobre la carpeta Saved Application State
Hay una forma más drástica de inhabilitar esta función para todo el sistema. Si tenemos en cuenta que los estados de las aplicaciones se guardan en la carpeta ~/Library/Saved Application State, si vaciamos la carpeta e inmediatamente después cambiamos sus propiedades con el botón derecho del ratón > Obtener información > marcar la casilla Bloqueado, la carpeta no podrá sufrir modificaciones por lo que no se guardarán los estados de las aplicaciones.
Nota: aparte de lo comentado en este artículo, cuando cerramos la aplicación con las teclas Comando+Opción+Q (en lugar del Comando+Q habitual) no se guardará el estado de las ventanas de la aplicación.