Reemplace Text Edit como el editor de texto predeterminado

He visto preguntas como esta que no resuelven mi problema.

Me gustaría hacer de Sublime Text 3 el visor/editor de archivos predeterminado para todos los archivos que actualmente usan textedit.

La mayoría de estos archivos pueden tener command+ i'd, pero los que no tienen extensión no pueden. Dan todo tipo de errores de permisos como los de esta imagen.no hay suficiente información disponible

¿Hay alguna forma de no usar nunca textedit y, en su lugar, configurar sublime como el editor predeterminado para todos los archivos ?

Respuestas (11)

Para configurar Sublime Text como el controlador predeterminado para public.plain-text:

Mavericks (10.9) y anteriores

defaults write com.apple.LaunchServices \
    LSHandlers -array-add \
    '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.sublimetext.3;}'

Yosemite (10.10) y posterior

Utilice com.apple.LaunchServices/com.apple.launchservices.secure .

defaults write com.apple.LaunchServices/com.apple.launchservices.secure \
    LSHandlers -array-add \
    '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.sublimetext.3;}'

Recuerde reiniciar para recoger los cambios.

Esto pareció funcionar bastante bien. Desafortunadamente, solo funcionó durante unos días, luego el controlador desapareció mágicamente del plist nuevamente: /

Otra opción es usar duti ( https://github.com/moretension/duti ).

Ejecutar brew install duti, guardar un tipo de archivo como este como:

duti -s com.sublimetext.4 public.plain-text all

Los cambios deben aplicarse de inmediato, para que no tenga que reiniciar como cuando edita com.apple.LaunchServices.plist.

Para cambiar también la aplicación predeterminada para scripts ejecutables sin extensión de nombre de archivo, agregue una línea como esta:

duti -s com.sublimetext.4 public.unix-executable all

Algunos archivos también se consideran 'public.data', no 'public.plain-text', por lo que también puede hacer esto:

duti -s com.sublimetext.4 public.data all
Para mayor comodidad: si desea usar MacVim en su lugar, reemplácelo com.sublimetext.3con com.vim.macvim. Si desea usar VS Code en su lugar, reemplácelo con com.microsoft.VSCode.
Encontré este artículo muy bien escrito. Puede ejecutar esto para configurar esto para casi todas las extensiones brew install duti python-yq curl "https://raw.githubusercontent.com/github/linguist/master/lib/linguist/languages.yml" \ | yq -r "to_entries | (map(.value.extensions) | flatten) - [null] | unique | .[]" \ | xargs -L 1 -I "{}" duti -s com.microsoft.VSCode {} all alexpeattie.com/blog/…
verifique su versión, la compilación actual 4167 era la versión 4: com.sublimetext.4
@sickerin: ese artículo es increíble . Seguro que me ahorró muchos clics de memoria.

Probé la solución de grg en el pasado y creo que funcionó. Sin embargo, en Yosemite y El Capitán tuve problemas.

El comentario de DonnaLea en esa solución me indicó cómo crear una solución. Agregué la ruta de la carpeta antes com.apple.launchservicesde que el archivo tuviera un nombre ligeramente diferente com.apple.launchservices.secure.

Puede ver el archivo o las carpetas que se están modificando en la siguiente ruta:

/user/Library/Preferences/com.apple.LaunchServices/com.apple.launchservices.secure.plist

Captura de pantalla para referencia:ingrese la descripción de la imagen aquí

Aquí está el comando que usé en la terminal:

defaults write com.apple.LaunchServices/com.apple.launchservices.secure LSHandlers -array-add \
'{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.sublimetext.3;}'

Por último, después de reiniciar mi máquina, funcionó como se anuncia.

  1. Haga clic derecho en un archivo .txt en Finder.
  2. Elija "Obtener información".
  3. Expanda "Abrir con:" y elija su editor de texto preferido en el menú desplegable.
  4. Presione el botón "Cambiar todo..." debajo del menú desplegable y luego confirme en el cuadro de diálogo que aparece con "Continuar".

Esto funciona en Yosemite (OS X 10.10).

Esto no responde la pregunta. La pregunta es cómo hacer esto para todos los archivos, incluso aquellos sin extensión de archivo.
Incluso si la respuesta está un poco fuera de tema, aún así me ayudó con una búsqueda en Google. +1
wrossmck Básicamente tiene razón: mi respuesta incluso repite las preguntas y respuestas mencionadas en la primera línea de esta pregunta. Pero no me di cuenta de esto hasta después de que reconstruí mi respuesta de otras respuestas en esta página y publiqué esta respuesta. Tal vez el problema es que las búsquedas de la respuesta simple (es decir, archivos .txt) conducen a esta página y no a las demás (como @Teddy y yo encontramos).
@wrossmck Esto me funciona en High Sierra. Una vez que hice esto en un archivo .txt, escribí algo como si open -t script.sqltodavía lo abriera en mi editor de texto preferido que configuré usando estas instrucciones, aunque la extensión no es .txt

Las soluciones propuestas aquí funcionan perfectamente para Sublime, pero quería hacer esto para Visual Studio Code. La única diferencia es que debe encontrar el "identificador del paquete de aplicaciones" para cualquier editor de texto que use. Ejecuté este comando:

/usr/libexec/PlistBuddy -c 'Print CFBundleIdentifier' /Applications/Visual\ Studio\ Code.app/Contents/Info.plist 

enlace de referencia

para obtener el identificador "com.microsoft.VSCode". Luego instalé "duti" y ejecuté este comando:

duti -s com.microsoft.VSCode public.plain-text all

Esto debería funcionar para cualquier editor de texto que desee que esté instalado en /Aplicaciones. Espero que esto ayude a los usuarios que no son Sublime.

Exactamente lo que estaba buscando. En caso de que estés leyendo esto y te hayas perdido las instrucciones de instalación dutianteriores, está aquí apple.stackexchange.com/a/123954/251846 .

Centralizo toda la gestión de mis aplicaciones predeterminadas con Magic Launch . Puede configurarlo para abrir todo txtcon Sublime Text por defecto sin línea de comando (además, puede cambiarlo fácilmente desde System Preferences).

Preferencias de lanzamiento mágico

Otra característica excepcional y útil de Magic Launch es que puede establecer reglas basadas en el nombre del archivo, la ubicación de las carpetas, que utilizo de forma intensiva para elegir diferentes aplicaciones para el desarrollo y la escritura.

RCDefaultApp todavía funciona en macOS Sierra. Puede seleccionar fácilmente qué programa es el predeterminado para texto sin formato (BBEedit en mi caso).

Captura de pantalla de RCDefaultApp

¿Funciona esto para archivos que no tienen extensión?
Absolutamente. En la pestaña que te estoy mostrando, básicamente verás una interfaz gráfica para las respuestas de la línea de comando. Si estuviera interesado en configurar solo en base a extensiones (por qué sé que no lo está), tendría que ir a la pestaña "Erweiterungen" = Extensiones.

Estoy usando Catalina 10.15.6. Tomar los siguientes dos pasos funcionó para mí.

Guarde archivos SublimeText con la extensión ".txt" por defecto

  1. Abre SublimeText.
  2. Vaya a SublimeText > Preferencias > Configuración.
  3. Agregue la siguiente línea en el archivo "Preferences.sublime-settings--User":"default_extension": "txt",
  4. Guarde y cierre el archivo de configuración actualizado.

Configure su Mac para abrir todos los archivos ".txt" con SublimeText por defecto

[Siga estos pasos, según lo publicado por David Resnick en una respuesta anterior]

  1. Haga clic derecho en un archivo .txt en Finder.
  2. Elija "Obtener información".
  3. Expanda "Abrir con:" y elija su editor de texto preferido en el menú desplegable.
  4. Presione el botón "Cambiar todo..." debajo del menú desplegable y luego confirme en el cuadro de diálogo que aparece con "Continuar".
No todos los archivos pueden ser .txt, la extensión debe ser St por otras razones que no son de edición.
@mmmmmm: parece que se opone a la sugerencia de configurar la extensión predeterminada en ".txt". Establecerlo en el valor predeterminado aún brinda la opción de modificar la extensión al momento de guardar un archivo determinado.

Haga clic con el botón derecho en el archivo --> Otro --> Elija su editor de texto favorito (elijo Texto sublime en mi carpeta de aplicaciones) --> Marque la casilla de verificación 'Abrir siempre con' --> Abrir.

Esta configuración se aplicará automáticamente a todos los demás archivos de la máquina.

Sin necesidad de reiniciar o sin necesidad de ningún software de terceros.

Eso no funciona cuando no hay extensión de archivo.
@grgarside: no creo que esto funcione en absoluto, independientemente de la extensión del archivo. Realmente no culpo a Hari ya que esta es una de esas características básicas que "simplemente deberían funcionar". Apple tiene un error abierto (lo llené hace años y Apple aparentemente se niega a solucionarlo).
@jww Parece funcionar muy bien para mí para archivos con extensiones; así es como suelo cambiar las asociaciones de archivos.

Esta solución está extraída de un video de YouTube, pero funciona perfectamente para mi situación (solo estoy usando Sublime para editar archivos en lenguajes como Python, Java y Ruby).

Para cualquier archivo en particular, haga clic derecho, seleccione "Más información" y haga clic en la pestaña "Abrir con". Puede seleccionar qué editor de texto desea aquí y usar "Cambiar todo" para usar el editor para todos los archivos de este tipo. Obviamente, esto no funciona para archivos sin extensión, pero ha sido una solución rápida y fácil para mí.

Esto no es tan útil porque deberá hacerlo extensión por extensión. La pregunta buscaba una solución de una vez por todas

Primero obtenga información sobre el archivo en el que desea configurar el texto sublime como predeterminado. Luego ve a la sección abierta como y elige sublime. Después de eso, presione cambiar todo, luego continúe en el menú emergente y listo.Instrucciones parte 1

Parte 2

Esto no funciona cuando el tipo de archivo no tiene extensión.