lunes, 31 de enero de 2011

Como trasladar los eventos o citas de varios calendarios de iCal a uno solo.

"Unificar calendarios".

Si has creado manualmente varios calendarios en iCal, o bien has sincronizado tu Mac con diferentes dispositivos o servicios (Mobile Me, Gmail, Blackberry…) puedes encontrarte en la situación de tener docenas o centenares de eventos futuros y pasados repartidos entre diferentes calendarios. Esto puede ser engorroso por ejemplo, cuando se quiere sincronizar con un único dispositivo o servicio, y tal vez te plantees cómo mover los eventos a un único calendario o "unificar" los calendarios sin tener que hacerlo uno a uno.


El procedimiento es sencillo si para ello utilizamos las funciones de importar y exportar del mismo iCal, ya que éste permite exportar el conjunto de eventos de un determinado calendario en un único archivo .ics, y  que pueden ser posteriormente  importados a un calendario diferente. El primer paso a seguir será por tanto, ir al menú Archivo, Exportar, y al sub-menú Exportar:


Suponiendo que queremos mover todos los eventos al calendario Personal, iremos exportando uno a uno el resto de calendarios como archivos ICS al Escritorio o cualquier ubicación del Finder. Veremos que, por cada uno de los calendarios exportados se genera un archivo ICS con el nombre correspondiente:


Una vez exportados los calendarios deberemos borrarlos. Para ello, haremos clic sobre el calendario a borrar e iremos de nuevo al menú Archivo, donde elegiremos Eliminar. Repetiremos esto con cada uno de los calendarios antes exportados:


Ahora se trata de mover al único calendario que nos queda los eventos que antes estaban en los calendarios borrados. Nuevamente iremos al menú Archivo, aunque esta vez para elegir Importar…, y en el sub-menú, de nuevo Importar… y seleccionaremos alguno de los archivos ICS que hemos creado antes. Veremos aparecer el cuadro de diálogo Añadir eventos, en el que se nos pide que definamos en qué calendario queremos añadir los eventos. Como es lógico seleccionaremos el único calendario que habíamos dejado en iCal. Retiremos la operación, uno a uno, con los otros archivos ICS que queden.



El resultado es el esperado: todos los eventos que antes teníamos repartidos en diferentes calendarios aparecen ahora reunidos en uno solo, y ocupando la posición correcta en cuanto a fecha y hora.


Mover eventos de un calendario a otro mediante un script.

Todo esto también se puede hacer mediante scripts como el que encontramos aquí y que hace lo siguiente: selecciona todos los eventos que encuentra del calendario "from-ibook", nos pregunta a qué calendario los queremos asignar (home o work) y los copia en el calendario elegido para luego borrarlos de "from-ibook".
Es de suponer que nuestros calendarios tengan nombres diferentes, por lo que habría que editar el script cambiando estos nombres.


tell application "iCal"
 2   set ibook to every event in calendar "from-ibook"
 3   repeat with i in ibook
 4     set summ to summary of i
 5     set sdate to start date of i
 6     set edate to end date of i
 7     set aday to allday event of i
 8     if location of i is missing value then
 9       set loc to ""
10     else
11       set loc to location of i
12     end if
13     if description of i is missing value then
14       set desc to ""
15     else
16       set desc to description of i
17     end if
18     set sday to short date string of sdate
19     display dialog ("Move " & quote & summ & quote & " on " & sday & " to:") buttons ["Home", "Work", "Neither"] default button 1
20     if button returned of result = "Home" then
21       make new event at end of events of calendar "home" with properties {start date:sdate, end date:edate, allday event:aday, summary:summ, description:desc, location:loc}
22       delete i
23     else if button returned of result = "Work" then
24       make new event at end of events of calendar "work" with properties {start date:sdate, end date:edate, allday event:aday, summary:summ, description:desc, location:loc}
25       delete i
26     end if
27   end repeat
28   reload calendars
29  end tell

5 comentarios:
  1. Hey Miguel, una pregunta.
    No hay manera de hacer pirular el FH cono los Mac que tienen el sistema Corel Intel?....
    La rebelión de las máquinas.
    JV Paredes.

    ResponderEliminar
  2. Te refieres a los Mac con procesador Intel Core 2 Duo, con sistema operativo Leopard o Snow Leopard :) Funcionar, puede funcionar; de hecho, muchos aún lo utilizamos con mayor o menor frecuencia. Otra cosa es que todo funcione bien siempre.
    De todos modos, yo me iría acostumbrando a InDesign e Illustrator...

    ResponderEliminar
  3. Ya, pero y de la instalación del programa que me dices....
    Yo lo instale pero no me deja abrirlo.
    Y si habrá qie ir pensando en cambiar, pero me resisto por que no son tan ágiles para el diseño como el FH.
    Gracias por tú respuesta.
    JV Paredes.

    ResponderEliminar
  4. Adone publicó hace unos meses "un parche" para que Freehand funcione en Snow Leopard:
    http://kb2.adobe.com/cps/504/cpsid_50468.html

    Descarga el archivo en cuestión:
    http://kb2.adobe.com/cps/504/cpsid_50468/attachments/FreeHand_MXa_Registration.zip

    ...y colócalo en la carpeta:
    Macintosh HD\Library\Application Support\Macromedia.

    ResponderEliminar
  5. Si tenéis calendarios compartidos, podéis publicarlos en http://www.icalendarios.com, de forma que otros usuarios puedan encontrarlos y utilizarlos. Ahí tenéis un montón de calendarios ical a los que os podéis suscribir

    ResponderEliminar