7 votos

¿Cómo puedo configurar el navegador por defecto en función de la hora del día?

Tengo un MacBook Pro del trabajo. Para mantener mi historial de navegación separado, uso 2 navegadores diferentes. (Chrome = Trabajo, Safari = Diversión)

Quiero que mi navegador predeterminado sea Chrome mientras estoy en el trabajo (de 9 a 18 horas), y Safari mi navegador predeterminado por las noches. Esto evitará que abra accidentalmente un enlace en el navegador equivocado.

¿Cómo puedo cambiar mi navegador por defecto a horas predefinidas a lo largo del día?

Actualización

No parece haber un flujo de trabajo para "establecer el navegador por defecto" en Automator. ¿Quizás sea posible editar este archivo?

/Users/yourname/Library/Preferences/com.apple.LaunchServices.plist

https://discussions.apple.com/thread/2803775?tstart=0

9voto

NVRAM Puntos 2555

No tan complicada, pero quizás de valor, es la aplicación Elegante . Permite elegir el navegador cada vez que se abre un enlace en el exterior de un navegador. Aunque esto pueda parecer oneroso, en realidad es bastante transparente, y lo encuentro muy útil en el momento de poner en marcha un nuevo proyecto web y probarlo en múltiples navegadores una y otra vez

Podría ser adecuado si una pulsación de tecla añadida no es un problema. Por supuesto, una vez que estés dentro de Safari, los enlaces que se pulsen se abrirán en Safari (aunque hay incluso una forma de modificar este comportamiento).

POR CIERTO.

Elegante

6voto

SPRBRN Puntos 1008

Ampliando mi comentario anterior....


Ver el comentario del usuario kerma en este artículo de StackFlow relacionado

Su pequeña aplicación de línea de comandos en https://github.com/kerma/defaultbrowser hace lo que necesitas.

Él proporcionó el código fuente pero fue diseñado para 10.9. Un pequeño cambio puede hacer que compile en 10.6 también. Lo he probado en mi sistema y ha funcionado correctamente.

Todo lo que tienes que hacer es ejecutarlo así...

#defaultbrowser -set firefox

#defaultbrowser -set safari

Los cambios que hice, para que funcionara con 10.6, fueron

a) Añade el framework Cocoa

b) Haz el siguiente cambio de código...

Sustituir

NSString *split = HTTPHandlers[i];

con

NSString *split = [HTTPHandlers objectAtIndex:i];

EDITAR:

Como se señaló, el código no cambia el navegador por defecto para HTTPS. Para añadir esa funcionalidad, he añadido las siguientes líneas...

Encuentre la primera línea de abajo, y añada la segunda para https

CFStringRef urlschemeref = ( CFStringRef)@"http";
CFStringRef urlschemeref2 = ( CFStringRef)@"https";

y lo mismo aquí

OSStatus s = LSSetDefaultHandlerForURLScheme(urlschemeref, newHandler);
OSStatus s2 = LSSetDefaultHandlerForURLScheme(urlschemeref2, newHandler);

Por fin el cambio

if (s == 0) {

a

if (s == 0 && s2 == 0) {

En cuanto a la programación, ya que saben lo que es cron, supongo que saben cómo hacer los cambios necesarios. Si no es así, un búsqueda en google proporcionaría las respuestas necesarias. Así que las líneas cron serían...

0 9 0 0 1-5 /path/to/app/defaultbrowser -set chrome
0 18 0 0 1-5 /path/to/app/defaultbrowser -set safari

PERO, una manera mucho mejor, ya que las tareas cron no se ejecutarán cuando el sistema esté apagado, es tener un medio para detectar la ubicación (como la conexión wifi) y cambiar de acuerdo a eso. Así que si la tarea cron se establece a las 9am y llegas tarde al trabajo, enciendes tu dispositivo a las 9:15am no pasará nada...

Así que, tal y como se comenta aquí En este caso, les recomendaría que instalaran ControlPlane o algo parecido, y que programaran el cambio al conectarse a la wifi/red en su lugar.

Espero que eso haya ayudado.

1voto

petr k. Puntos 128

Basándome en la respuesta de Vic, esto es lo que se me ocurrió.

Descargar navegador por defecto Crear un cronjob para que se ejecute a las 9 de la mañana y a las 6 de la tarde. Debido a que no hay gui, requerirá aprovechar el hecho de que mac es unix.

Primero comprueba el código fuente de defaultbrowser y copiarlo en /usr/local/bin

git clone https://github.com/kerma/defaultbrowser.git /tmp/defaultbrowser
sudo cp /tmp/defaultbrowser/build/defaultbrowser /usr/local/bin/
sudo chmod +x /usr/local/bin/defaultbrowser

Luego, para programar el binario para que se ejecute en momentos específicos, ejecute lo siguiente:

EDITOR=NANO crontab -e

0 9 * * 1-5 /usr/local/bin/defaultbrowser -set chrome >> /Users/sowen/defaultbrowser.log 2>&1 && echo $(date) >> /Users/sowen/defaultbrowser.log 2>&1
0 18 * * 1-5 /usr/local/bin/defaultbrowser -set safari >> /Users/sowen/defaultbrowser.log 2>&1 && echo $(date) >> /Users/sowen/defaultbrowser.log 2>&1

Ahora mi navegador cambiará a las 9 de la mañana y a las 6 de la tarde en días laborables.

Explicación:

EDITOR=NANO crontab -e edita el archivo crontab
0 9 * * 1-5 significa que en los días 1-5 (lunes - viernes), ejecute el siguiente comando a las 9:00 /usr/local/bin/defaultbrowswer -set chrome establece el navegador por defecto
>> /Users/sowen/defaultbrowser.log se anexa a un archivo que llamo defaultbrowser.log en mi directorio personal
2>&1 sintaxis de fantasía que envía tanto los errores, como los registros al mismo lugar
&& combina dos comandos en uno
echo $(date) >> /Users/sowen/defaultbrowser.log 2>&1 Añade una marca de tiempo al archivo de registro

Tuve algunos problemas para crear el cronjob, tuve que usar nano basado en esta información .

También, esto podría haber sido reescrito usando launchd, sin embargo cron fue más fácil.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X