# Otras características

## Guardado de páginas web

Puedes elegir entre diferentes formatos de archivo a la hora de guardar páginas web.

Archivo Web (ZIP)
  Este tipo de archivo guarda la página web completa incluyendo imágenes además de archivos externos como pueden ser JavaScript y Style Sheet (hojas de estilo) en un único archivo ZIP totalmente estándar. Este archivo puede ser abierto directamente en iCab para así mostrar la página web de nuevo. También es posible acceder al contenido del mismo (los diferentes archivos en su interior) por medio de aplicaciones para expandir archivos comprimidos como ZIP, si bien pueden presentarse algunas limitaciones en alguna de esas aplicaciones.

  El archivo ZIP puede utilizarse no tan solo para guargar una página web de manera individual, sino también un sitio web completo o cualquier número de páginas web requiriendo para ello un único archivo ZIP. Esto se realiza por medio del Gestor de Descargas o grabando una Sesión.

Archivo Web (Safari)
  Este formato de archivo es utilizado por Safari para guardar una página web completa incluyendo imágenes y otros archivos externos en un solo archivo resultante. Resulta similar al método utilizado para crear un Archivo Web (ZIP) con la limitación de que un Archivo Web de Safari puede almacenar una única página web. iCab 4puede leer y crear Archivos Web de Safari, de modo que puedes utilizar este formato de archivo si deseas abrir el archivo creado en Safari.
Código HTML
  Por medio de este formato iCab guardará tan solo el código HTML de la página web. No se guardarán imagen alguna ni archivos externos a la página web.
Texto
  Este formato guarda tan solo el contenido en texto de la página web como texto normal sin atributos. Cualquier imagen y archivo externo no será guardado. El texto carecerá de formato o estilo alguno. Resulta de utilidad por ejemplo, si deseas utilizar el contenido de la página web en un procesador de texto.
PDF
  Guarda la página web como un archivo PDF, conservándose las imágenes y el formatéo del texto.

## Snap-Back

iCab soporta los atajos de teclado de la característica "Snap-Back" feature de Safari

- Cmd-Alt-P: regresa en el Historial hasta que encuentra la página inicial del sitio web que se actualmente se esté mostrando en el navegador.
- Cmd-Alt-S: regresa a los últimos resultados de una petición realizada a un motor de búsqueda (iniciados por ejemplo por medio de un campo de búsqueda).

## Variantes del Cursor

Si mueves el puntero del ratón por una página web notarás que el cursor puede adoptar diferentes formas. Dependiendo de ellas puedes obtener alguna información de utilidad acerca del contexto.

Mano donde el pulgar apunta a la esquina superior derecha
  El ratón se encuentra sobre un enlace, y un clic de ratón abrirá la página web enlazada. Dicha página no está almacenada en la Caché Web, de modo que iCab ha de cargar la página desde internet.
Mano donde el pulgar apunta hacia arriba
  El ratón se encuentra sobre un enlace, y un clic de ratón abrirá la página web enlazada. Dicha página está almacenada en la Caché Web, de modo que iCab puede cargar la página sin necesidad de una conexión a internet cuando se encuentre en modo Offline.
Mano con un montón de documentos
  Al hacer clic en el enlace se abrirá una nueva ventana o pestaña. (Como sabes de antemano que el enlace abrirá una nueva ventana o pestaña, y si no quieres que esto suceda así, puedes optar por abrir el enlace en 'esta ventana' por medio del ítem de menú contextual Enlace > Abrir enlace en esta pestaña/Ventana)
Mano apuntando con una marca de exclamación
  El enlace proporciona información adicional que se mostrará como un tooltip (una sugerencia de ayuda).
Flecha con un documento adjunto
  Por medio del menú contextual puedes obtener una descripción detallada del objeto sobre el que se ha hecho clic (p.e. una imagen).

## Codificación de Texto

Las páginas web pueden codificarse en multitud de codificaciones de texto (UTF-8, ISO-8859-1, etc). Por lo general iCab es capaz de determinar la codificación adecuada para mostrar el texto correctamente. Pero existen todavía un cierto número de páginas web que no disponen de la apropiada declaración de su codificación de texto y por ello la codificación utilizada no puede ser determinada de manera automática. En este caso iCab utilizará la codificación de texto que esté estipulada en el ítem de menú Ver > Codificación texto. Así en caso de que aprecies que en cierta página web algunos caracteres no se muestran correctamente, puedes intentar un diferente ajuste para la codificación de texto.

## Código JavaScript definido por el usuario

En los ajustes JavaScript de las Preferencias de iCab puedes configurar un archivo con código JavaScript que será ejecutado en cada página web que visites. En los ajustes JavaScript del Gestor de filtros se puede realizar esto mismo pero de modo específico a cada sitio web.

El ejecutar códifo JavaScript definido por el usuario te permite incluir características adicionales a las páginas web, o modificar su estructura o comportamiento. Esta es una característica realmente potente, si bien se requiere cierto conocimiento de HTML, JavaScript y de la Web para ser capaz de crear tu propio códigoJavaScript definido por el usuario.

En la carpeta de iCab > Filter Manager Expamples hay un ejemplo de esta característica: el YouTube video download filter (filtro de descarga de vídeo YouTube). Este filtro es un archivo que tan solo has de importar por medio del Gestor de filtros de iCab (hacer doble clic en él desde el Finder servirá de igual modo). Entonces cada vez que visites www.youtube.com y abras uno de los vídeos, iCab añadirá una barra amarilla en la parte superior de la página web con enlaces de descarga para el vídeo. YouTube no ofrece enlaces de descarga, pero con este filtro iCab es capaz de añadir dicha característica. El filtro utiliza el código JavaScript definido por el usuario para tal propósito. De este modo y utilizando filtros como en el caso para YouTube, incluso usuarios sin conocimientos de HTML y JavaScript pueden beneficiarse de esta característica.

El código JavaScript definido por el usuario es simple código JavaScript, el cual será ejecutado cuando una página web sea cargada. A este código se le considera parte de la página web, de modo que dispone de acceso completo al contenido y código de la página web.

El código JavaScript definido por el usuario se ejecuta previa carga de la página web. Así puede realizar acciones incluso antes de que la página tenga oportunidad de hacer algo. Esto requiere Mac OS X 10.4.11 o posterior. Con versiones menos recientes de Mac OS ello no funcionará de manera satisfactoria. Así cuando el script definido por el usuario se vea en la necesidad de funcionar bajo una versión no tan reciente de Mac OS X, el usuario no podrá definir un manejador "onload" el cual será llamado una vez la página complete su carga, debido a que el manejador podría no ser llamado en todos los casos (ello es una limitación de antiguas versiones de MacOS/WebKit). Cuando el script pueda ser ejecutado exclusivamente en MacOSX 10.4.11 y posteriores versiones, el usuario puede definir una función "initFunction" la cual realizará el trabajo e instalará un manejador 'onload' que remitirá a dicha función. Se realiza del siguiente modo:

    function initFunction() {
    	// Do all the work here
    }

    window.addEventListener("load",initFunction);

Cuando la página web haya completado su carga, se hace una llamada a la función "initFunction" la cual realizará el trabajo del script.

Como se ha mencionado con anterioridad, con versiones más antiguas de Mac OS esto no funcionará de manera satisfactoria, los manejadores de eventos definidos no se encuentran activos una vez la página ha sido cargada. De modo que iCab ofrece un modo alternativo de solventar este problema. El usuario puede declarar su función inializadora al comienzo del archivo, así (ten en cuenta que la línea ha de comenzar por "//"):

    // @init = initFunction

y entonces definir la función de inicialización como de costumbre:

    function initFunction() {
    	// Do all the work here
    }

Una vez la página es cargada, iCab realizará de modo automático una llamada a la función "initFunction", tal como se haría de haber definido un manejador "onload". Esto funciona con todas las versiones de MacOS.

En caso de que quisieras añadir un enlace a una página web la cual debería comenzar una descarga inclusi si iCab fuese capaz de mostrar el enlace por sí mismo, puedes añadir un atributo `TARGET` con un valor especial al tag de enlace (el tag `<A>`). iCab interpreta este valor especial e iniciará la descarga en lugar de limitarse a abrir el enlace como de costumbre. Este valor especial es `_icab_open_in_downloadmanager_`. Aquí puedes ver un ejemplo:

    <a target="_icab_open_in_downloadmanager_" href="download-url">Download</a>

Puedes incluso añadir un parámetro a este valor para definir un nombre de archivo a utilizar para guardar la descarga en el disco. Ejemplo:

    <a target="_icab_open_in_downloadmanager_;filename=xyz" href="download-url">Download</a>

Esto guardará la descarga con el nombre de "xyz"

## Ajustes Experimentales

iCab proporciona ciertos ajustes muy especiales que son de utilidad tan solo para unos pocos usuarios. Puedes acceder a ellos escribiendo "settings:" en la barra de dirección de URL y presionando la tecla Return a continuación.