# Quicksilver (software)

Quicksilver (QS) es una aplicación informática gratuita desarrollada por Blacktree Software para el sistema operativo Mac OS X de Apple. Pertenece al grupo de utilidades del sistema y su propósito es ofrecer al usuario una forma rápida e intuitiva de iniciar aplicaciones, manejar archivos y datos, ejecutar scripts e interactuar con otros programas.

## Instalación

Al instalar Quicksilver, se inicia un asistente que ayuda a configurar los parámetros básicos:
* En primer lugar rastrea el disco duro para recopilar las aplicaciones instaladas, incluido el propio QS; una vez terminado el proceso, muestra un listado con los módulos recomendados.
* Después se escoge la combinación del teclado principal (Hot Key) que se encargará de invocarlo (por ejemplo: ⌘ Cmd+Espacio).
* También preguntará por la frecuencia de actualización del catálogo.
* Por último, orienta al nuevo usuario sobre los primeros pasos y los recursos de soporte en línea disponibles.
Finalizada la instalación, el programa permanece en segundo plano, por detrás de los procesos activos de la sesión, a la espera de recibir instrucciones. De hecho, en la configuración predeterminada, no aparecerá entre las aplicaciones abiertas cuando el usuario activa ⌘ Cmd + Tab ↹, ni en la lista de cierre forzado de procesos ⌘ Cmd + Alt + Esc, ni en el Dock. Puede, incluso, ser instruido para que ni siquiera muestre su icono en la barra de menús del sistema, de tal forma que solo se manifestará al pulsar la combinación de teclas especificada. En cualquier caso, también puede mostrar, si así se desea, la interfaz convencional basada en barras de menú.

## Configuración

Los ajustes de funcionamiento se agrupan en cuatro categorías principales: Preferences, Triggers, Catalog y Plug-ins. Para que una funcionalidad esté plenamente operativa debe estar debidamente configurada en una o varias de estas categorías.
(Algunas funciones necesitan que el acceso a los dispositivos de ayuda (Menú Manzana/Preferencias del sistema/Sistema/Acceso universal) esté activado.)

### Preferencias
#### Aplicación

El primer grupo de pestañas de este bloque (que incluye Application, Appearance, Command y Extras) sirve para configurar la propia aplicación: aspecto, modo de activación y comportamiento general. Para disponer de funcionalidad plena (aun a costa de cierta inestabilidad por estar todavía en fase de desarrollo) deben activarse las características avanzadas (advanced features).

#### Acciones

El segundo viene encabezado por el panel de Acciones, una lista con todas las acciones que servirán para construir consultas o comandos (el “verbo” de la frase que se indica en el segundo panel de la Ventana de órdenes) y la posición relativa de cada una de ellas. Desde aquí el usuario puede modificar esta posición según sus necesidades.

### Activadores (Triggers)

En este apartado se gestionan las combinaciones de teclado, de ratón o mixtas que ponen en marcha, o “disparan” (trigger: "gatillo"), comandos directamente. Desde aquí se crean, se borran, se asignan, etc., tanto los atajos creados por el usuario como los de los módulos instalados que así lo requieran. El fichero que almacena el conjunto de atajos, Triggers.plist, se aloja en la carpeta ~Librería/Application Support/Quicksilver, por lo que para poder compartir los atajos entre ordenadores basta copiarlo en la carpeta equivalente de la unidad de destino.

### Catálogo

Desde este panel se puede configurar la base de datos interna en la que QS registra la localización de archivos y carpetas del disco, documentos, archivos multimedia, direcciones de la Agenda, marcadores de Internet, scripts, contenido del portapapeles, etc. Se pueden añadir localizaciones y establecer niveles de profundidad o bien eliminarlas para no ralentizar la indexación, que se lleva a cabo a intervalos regulares fijados también por el usuario.

### Extensiones (Plug-ins)

La arquitectura modular de la aplicación se basa en extensiones ('plug-ins') agrupadas en “módulos” que permiten a QS comunicarse con otras aplicaciones del Mac además de potenciar sus propias funcionalidades. Estos módulos, que se instalan, activan o se inhabilitan en el último panel, amplían el repertorio de acciones disponibles desde QS. Y en la mayoría de los casos, sin necesidad de invocarlas ni abrirlas: de este modo, el usuario puede realizar tareas organizativas como adjuntar un archivo a un contacto de la Agenda o añadir un evento a iCal sin salir de la aplicación de trabajo.

## Funcionamiento

QS trabaja de tres modos básicos:
* Modo 1: tras invocar a QS, se formula una petición a través de la ventana de órdenes;
* Modo 2: tras invocar a QS, se ejecuta alguna de sus funciones integradas;
* Modo 3: se inicia directamente un activador.

### 1. La ventana de órdenes

El usuario interactúa con la aplicación, principalmente, a través de la ventana de órdenes (Command Window), formada por paneles.

#### Paneles de consulta

Las consultas se construyen habitualmente con ayuda dos paneles y, si es necesario, de un tercero. Para pasar de uno a otro se utiliza el tabulador (Tab ↹) o su inversa (⇧ Mayús + Tab ↹).
* En el primero se escriben los caracteres que pueden identificar el objeto de la búsqueda (una aplicación, un archivo, una canción, etc.); con las teclas de dirección se puede bajar por la lista de resultados. Para encontrar coincidencias, el algoritmo interno de QS considera no solo el principio de los términos escritos sino también iniciales, si son varias palabras, y abreviaturas.
* En el segundo se selecciona la acción que se desea efectuar sobre el objeto (abrir, borrar, pausa/reanudar canción). El contenido de este listado y su extensión depende de las extensiones instaladas.
* Si la acción requiere un argumento, se abre un tercer panel. Operaciones típicas de este tipo son renombrar archivos, adjuntar un fichero a un contacto por correo electrónico o añadir texto a un documento sin abrirlo.

#### Búsqueda adaptativa

QS empieza a ofrecer resultados incluso antes de empezar a teclear, ya que guarda y propone la última búsqueda efectuada. Y al escribir los primeros caracteres, la aplicación va ofreciendo resultados dinámicamente, de modo similar a Spotlight.
Pero lo más importante es que QS va “aprendiendo” de las acciones más habituales del usuario. Sus algoritmos internos se encargan de posicionar antes los lugares y comandos más frecuentados por el usuario, de modo que cada vez éste llegará antes y escribiendo menos hasta lo que busca.
Otra ventaja de este modo de comunicación con el ordenador radica en que el usuario no necesita preguntarse qué aplicación necesita abrir o en qué lugar del disco duro se encuentra determinado documento; le basta saber el nombre o una parte del mismo, y QS lo buscará por él.

#### Modo texto

Para pasar al modo texto, es decir, para indicar a QS que la entrada ha de interpretarse literalmente y no como una instrucción, la primera pulsación ha de ser un punto. Esta modalidad es útil para enviar comandos a una sesión de Terminal, mensajes para iChat o Adium o líneas a un fichero de texto.

#### Varios objetos, una acción

Se puede ejecutar una misma acción sobre varios objetos (por ejemplo, mover varios archivos a una carpeta o adjuntar un archivo a varios contactos de la Agenda); para ello, basta una coma detrás de cada uno de ellos a medida que se van seleccionando en el panel.

#### Selección inmediata

Cuando se han escrito los caracteres suficientes para situar al principio de la lista el ítem buscado, no es necesario saltar a la tecla de confirmación ↵ Entrar: bastará con mantener pulsado último carácter que lo identifica definitivamente.

#### Metaobjetos

Un tipo especial de objetos son los metaobjetos (Proxy Objects), "contenedores" virtuales para datos variables que pueden ser requeridos y manejados por una aplicación distinta de la original. Algunos ejemplos son:
* Contenido del portapapeles
* Selección actual
* Página abierta en el navegador
* Ítem seleccionado en el Finder
* Discos montados
* Aplicación en primer plano
* iTunes: canción o artista en reproducción
El listado de metaobjetos disponibles se encuentra en Catalog/Proxy Objects/Contents.

#### Consideraciones sobre nomenclatura

El resultado de una consulta construida con ayuda de los paneles es una sentencia esquemática que recuerda la de las oraciones pasivas de una lengua natural. Sin embargo, no hay acuerdo en la nomenclatura para referirse a los elementos de una consulta de QS.

### 2. Funciones integradas

Tras activar QS, se pueden ejecutar comandos sin necesidad de escribir en la ventana de órdenes, sino tecleando alguno de los atajos predefinidos. Algunos de estos atajos, disponibles en cualquier momento de la sesión, controlan la propia aplicación y otros muestran paneles especiales. Entre estos se encuentran: Clipboard History y Show Shelf.

#### Clipboard History

El clipboard es el clip del board. Sin embargo, QS dispone de un historial del portapapeles (Clipboard History) en el que se van acumulando los últimos textos o imágenes copiados. Luego, se puede traer a primer plano este nuevo panel (al que se accede invocando a QS, pulsando el atajo predefinido: ⌘ Cmd + L) y, desde aquí se van pegando en el lugar de destino deseado. Este historial se guarda en el disco, por lo que perdura de una sesión a otra.

#### El Shelf

Los ítems más antiguos van desapareciendo del historial del portapapeles para hacer sitio a los nuevos. Para almacenar permanentemente y poder recuperar objetos copiados, QS tiene el Shelf ('estante'), donde se pueden guardar, por ejemplo, direcciones de correo o teléfonos y, también, nombres de usuario o contraseñas de foros e, incluso, logos o firmas gráficas. El atajo predefinido es ⌘ Cmd + Alt + S.

### 3. Activadores

Los triggers ('activadores' o 'disparadores') pueden ejecutar comandos (tanto mediante el teclado como con el ratón) directamente, sin pasar por la ventana de comandos. No obstante, como hay que memorizar la combinación escogida (elección que, además, puede estar condicionada por la aplicación de trabajo), esta técnica se suele reservar a los procesos más mecánicos o repetitivos, como iniciar una aplicación, controlar iTunes o realizar búsquedas.

## Evolución

* El 26 de octubre de 2007, Apple lanzó la versión 10.5 (Leopard) de Mac OS X, lo que originó diversos problemas de inestabilidad en las versiones más antiguas.
* Entre sus novedades, la nueva revisión del sistema operativo traía importantes mejoras en su herramienta de búsqueda Spotlight, mejoras que amenazaban la alternativa representada por Quicksilver en sus aplicaciones más básicas.
* Pocos días después, el desarrollador de Quicksilver, Nicholas Jitkoff (de sobrenombre Alcor), anunció que había liberado el código fuente de la aplicación como un proyecto Google Code. A continuación, Nicholas se incorporó a Google para impulsar el desarrollo del proyecto qsb-mac (Quick Search Box for the mac).