¿Alguna forma de eliminar campos personalizados de tarjetas en Contactos.app?


0

Algunos campos personalizados de tarjetas de contacto en Contacts.app son realmente molestos. Por ejemplo, los apodos siempre aparecen en Mail.app. Para empeorar las cosas, parece que no hay una opción de menú para eliminar campos personalizados de las tarjetas una vez creadas.

¿Hay alguna forma de eliminar archivos personalizados de las tarjetas? Por ejemplo, con un AppleScript ? Traté de escribir uno pero fallé.

La versión OS X de mi Mac es 10.8.2.


Oh, otra cosa son los prefijos. Solía ​​agregar al Sr., la Sra., El Dr., el Prof. etc. para distinguir, pero resultaron ser realmente superfluos y tontos.
4ae1e1

Respuestas:


0

Pude eliminar el campo de apodo de un contacto simplemente vaciándolo. Sin embargo, aquí hay un AppleScript que le permitirá seleccionar apodos para eliminar.

tell application "Contacts" 
  -- Get a list of people who have nicknames
  set ListOfNicknames to people whose nickname is not missing value

  repeat with x in ListOfNicknames
    -- For each person, ask if their nickname should be removed
    set dialogResult to display dialog ¬
      "Remove nickname \"" & x's nickname & "\" from " & x's name & "?" ¬
      with icon caution ¬
      buttons {"No", "Yes"} ¬
      default button "No"

    if button returned of dialogResult is "Yes" then
      set nickname of x to missing value
      save
    end if    
  end repeat
end tell

Debería poder modificar esto fácilmente si desea eliminar todos los apodos, o manejar un campo diferente como el prefijo (conocido por AppleScript como el title).

Gracias:
Mac OS X Tips , por mostrarme el savecomando que me faltaba;
La documentación de AppleScript , para existente;
Y @KevinSayHi, por darme la oportunidad de repasar mi AppleScript.


1
No sé qué versión de OS X está ejecutando (supongo que debería ser 10.8, ya que Contactos solo se introdujo para reemplazar la Libreta de direcciones en 10.8), pero el código no se compilará en mi Editor AppleScript. fieldNo es una clase. Mensaje de error: "The variable field is not defined."En realidad, busqué en la biblioteca Contactos.app y no hay ninguna entrada con nombre field.
4ae1e1

Además, Contactos nunca me permitió vaciar el campo de apodo una vez creado. Lo mejor que puedo hacer es ingresar un carácter en blanco, y el contacto aparecerá en Mail como algo así Tyler Wayne " " twayne@askdifferent.com. Estoy ejecutando 10.8.2, pero creo que ocurrió lo mismo en 10.8.0 y 10.8.1. Lo he intentado muchas veces.
4ae1e1

Oh, lo siento, no leí tu código cuidadosamente la última vez. Cuando hice eso, entendí lo que quieres decir. Funciona. ¡Muchas gracias! Guión genial
4ae1e1

Además, la última vez hice algo similar pero fallé. Resultó que intenté eliminar los campos, en lugar de configurarlos missing value. Debería haber leído la biblioteca con más cuidado :(
4ae1e1

En realidad, tenías razón. fieldfue mi intento de facilitar el manejo de algo más que solo nickname. Fue un error de mi parte; He editado el código para que sea correcto ahora. Gracias.
Tyler Wayne el
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.