18 votos

¿Cómo pegar automáticamente la fecha de hoy con un atajo de teclado?

Estoy en El Capitan OS X.

Quiero poder pulsar algún atajo de teclado y que la fecha de hoy se emita automáticamente.

Ejemplo:

Cuando pulso Opción + D, se pega "2016_06_13" en el campo de texto.

La fecha se calcularía automáticamente en función de mi zona horaria.

Lo ideal sería poder hacerlo de forma universal. Es decir, en Finder, Safari, TextEdit, etc., y no sólo en un programa.

Tener este acceso directo agilizaría mi flujo de trabajo.

¿Es esto posible?

19voto

Joonas Puntos 216

Puedes hacerlo con Automator así:

  1. Crear nuevo: Services
  2. Servicios recibe no input en any application
  3. Utiliza la búsqueda para encontrar y añadir acciones: Run Applescript
    • Copie y pegue lo siguiente en el campo de la derecha:

tell application "System Events"
    set _Date to (current date)
    keystroke ¬
        (year of _Date as text) & "_" & ¬
        text -2 thru -1 of ("00" & ((month of _Date) as integer)) & "_" & ¬
        (day of _Date as text)
end tell

Tenga en cuenta que el day no tendrá un cero inicial como el month lo hace. Si quieres eso, puedes sustituir la línea por: (day of _Date as text) con: text -2 thru -1 of ("00" & ((day of _Date) as integer))


  1. Ahorra con: Cmd + S . Dale un nombre que puedas recordar en el siguiente paso.
    • Si simplemente utiliza el Save comando ( Cmd + S ) en lugar de Save as... el archivo de servicio se coloca automáticamente en el lugar correcto.

enter image description here

El último paso sería definir un acceso directo para el servicio que acabas de hacer.

Ir a mac System preferences > Keyboard > Shortcuts > Services y luego encontrar el servicio que guardó antes. Debería encontrarlo en la zona inferior de la lista. Haga doble clic en el none a la derecha del nombre del servicio y darle un acceso directo.

0 votos

¿Sería posible aprender a hacerlo sin interferencias del portapapeles?

0 votos

@rubik'ssphere Actualizada la respuesta.

1 votos

Ahora se produce un error: "System Events got an error: com.automator.runner.xpc is not allowed to send keystrokes." relacionado: foros.developer.apple.com/thread/106949

16voto

Javaxpert Puntos 1107

Una respuesta más sencilla y rápida:

Quería utilizar el formato de fecha del sistema por coherencia, en lugar de programarlo en el acceso directo.

Sólo se tarda unos 30 segundos en configurarlo.

EN AUTOMÁTICO (Carpeta de aplicaciones)

  1. Nuevo servicio e

  2. Recibe sin entrada en cualquier aplicación

  3. Arrastre Ejecutar Applescript de la sección Utilidades de la izquierda en el panel derecho

  4. Consulte La salida reemplaza el texto seleccionado en la parte superior del panel derecho

  5. En la ventana de Applescript reemplazar todo el texto con

on run {input, parameters} set _date to short date string of (current date) tell application "System Events"     keystroke _date end tell end run

  1. Guarde el servicio como Fecha corta flujo de trabajo

enter image description here

EN LAS PREFERENCIAS DEL SISTEMA (Teclado ' Atajos)

  1. Haga clic en Servicios a la izquierda

  2. Fecha corta aparecerá en Texto en el panel derecho

  3. Añade un combinación de teclas para el nuevo servicio Short Date

enter image description here

EN LAS PREFERENCIAS DEL SISTEMA (Idioma y región ' Avanzado)

  1. Haga clic en el botón Fechas ficha

  2. Modificar el Corto: formato que se desee

  3. Haga clic en OK

enter image description here

Nota: este sistema depende del menú Servicios en el menú Aplicación. Cuando el menú no es accesible, el servicio tampoco lo es. No funciona, por ejemplo, en el diálogo de abrir y guardar.

0 votos

¿Qué puedo hacer para averiguar exactamente por qué no me funciona? :/

0 votos

Deberías ver "fecha corta" en el menú de servicios, bajo el menú de la aplicación que estés usando. Ahora mismo estoy en Chrome, y bajo "Chrome ' Servicios" veo "Short Date". Hay algunos contextos en los que no funcionará, como el diálogo de abrir y guardar. Debería haberlo mencionado en mi respuesta, y la modificaré.

1 votos

Automator is not allowed to send keystrokes

5voto

Denis Gburg Puntos 36

La forma más fácil que conozco de hacerlo es con aplicaciones de expansión de texto de terceros. Personalmente utilizo Typinator con una regla que expande la palabra dt (es decir, teclear D entonces T ) a {YYYY}_{MM}_{DD} que es el formato de Typinator para la fecha actual. El programa utiliza la hora del sistema local y las características de accesibilidad del sistema operativo para rellenar casi cualquier campo de texto, por lo que sería una buena opción para su caso de uso.

Hay otros programas que también hacen esto, el más conocido es probablemente TextExpander. Lifehacker tiene un buen resumen de aplicaciones de expansión de texto de hace unos años que pueden merecer un vistazo.

También es posible lograr esto con AppleScript y una aplicación de lanzamiento como Alfred o Quicksilver, como en esta respuesta pero para mí la comodidad de poder expandir muchas abreviaturas diferentes con una sintaxis y una interfaz de usuario fáciles de aprender supera el ahorro de costes que supone utilizar AppleScript.

0voto

methode Puntos 1920

Las opciones anteriores funcionan bien hasta Mojave. Estaba intentando insertar la fecha actual en la aplicación Recordatorios con una pulsación de tecla y me sale un error que sugiere que el automatizador no tiene permisos para realizar un comando de pulsación de tecla. Para permitirlo hay que ir a "Ajustes del sistema -> Seguridad y privacidad -> Privacidad -> Accesibilidad -> Recordatorios" Es molesto que sólo permita la acción en la app específica pero parece que es así.

0voto

Roloc Puntos 469

Me doy cuenta de que este hilo es un poco viejo, sin embargo, parece que he resuelto el problema con automator, en este caso, al menos. si usted mira en Seguridad y Privacidad verá la supervisión de entrada. Cogí mi script y lo dropeé para añadirlo desde la carpeta de servicios. Una vez hecho dejé de recibir el error de flujo de trabajo.

Así que:

abrir el buscador pulse la opción y abra la biblioteca abrir servicios

verás la fecha corta script

abrir ajustes ==> seguridad y privacidad ==> privacidad ===> supervisión de entradas

desbloquear

arrastre su script de la carpeta de servicios a la lista.

Por lo que veo es como con virtualbox, virtualbox tiene que tener permiso para monitorizar las pulsaciones para poder usarlas en el sistema. Parece que para este script es la misma idea.

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