.. _47: 47 Funciones de Hiperenlace y Navegación web ============================================ Las siguientes subsecciones describen características convenientes para manejar URLs y otros tipos de enlaces que ocurren en el texto del búfer de Emacs. 47.1 Navegación web con EWW --------------------------- *EWW*, Emacs Web Wowser, es un navegador web para Emacs. Permite navegar por URLs dentro de un buffer de Emacs. El comando ``M-x eww`` abrirá una URL o buscará en la web. Puede abrir un archivo usando el comando ``M-x eww-open-file``. Puedes usar EWW como navegador web para ``browse-url``, ver :ref:`47.3`. Para más detalles, ver **EWW** en The Emacs Web Wowser Manual. 47.2 Widgets WebKit incrustados ------------------------------- Si Emacs fue compilado con los paquetes de soporte apropiados, es capaz de mostrar widgets de navegador en sus buffers. El comando ``M-x xwidget-webkit-browse-url`` pide una URL para mostrar en el widget del navegador. La URL por defecto normalmente es la URL en o antes del punto, pero si hay una región activa (ver :ref:`12`), la URL por defecto viene de la región en su lugar, después de eliminar cualquier espacio en blanco de la misma. A continuación, el comando crea un nuevo búfer con el navegador incrustado que muestra la URL especificada. El búfer se pone en el modo Xwidget-WebKit (similar al modo Imagen, ver :ref:`19.19`), que proporciona comandos de una tecla para desplazar el widget, cambiar su tamaño y recargarlo. Escriba :kbd:`Ctrl`-:kbd:`h` :kbd:`b` (``C-h b``) en ese búfer para ver las combinaciones de teclas. Por defecto, escribir un carácter de autoinserción dentro de un búfer xwidget webkit no hará nada, o desencadenará alguna acción especial. Para hacer que esos caracteres y otras teclas de edición comunes se inserten solas al pulsarlas, puede activar ``xwidget-webkit-edit-mode``, que las redefine para pasarlas al xwidget WebKit. También puede activar el modo xwidget-webkit-edit escribiendo e dentro del búfer xwidget webkit. ``xwidget-webkit-isearch-mode`` es un modo menor que se comporta de forma similar a la búsqueda incremental (ver :ref:`16.1`), pero opera sobre el contenido de un widget WebKit en lugar del búfer actual. Está vinculado a ``C-s`` y ``C-r`` dentro de los búferes xwidget-webkit. Cuando se invoca mediante ``C-r``, la búsqueda inicial se realizará en sentido inverso. Si se escribe cualquier carácter autoinsertado, éste se insertará en la consulta de búsqueda actual. Si se teclea :kbd:`Ctrl`-:kbd:`s` (``C-s``), el widget WebKit mostrará el siguiente resultado de la búsqueda, mientras que si se teclea :kbd:`Ctrl`-:kbd:`r` (``C-r``) mostrará el anterior. Para salir de la búsqueda incremental, puede teclear :kbd:`Ctrl`-:kbd:`g` (``C-g``). El comando ``xwidget-webkit-browse-history`` muestra un búfer que contiene una lista de páginas previamente cargadas por el buffer WebKit actual, y le permite navegar a esas páginas pulsando :kbd:`RETURN` (``RET``). Está vinculado a ``H``. .. _47.3: 47.3 Seguir URL --------------- :kbd:`Alt`-:kbd:`x` ``browser-url`` :kbd:`RETURN` *url* :kbd:`RETURN` (``M-x browse-url RET`` *url* ``RET``) Cargar una URL en un navegador Web. El paquete Browse-URL permite seguir URLs fácilmente desde Emacs. La mayoría de las URLs se siguen invocando un navegador web; las URLs ``mailto:`` se siguen invocando el comando Emacs ``compose-mail`` para enviar correo a la dirección especificada (ver :ref:`33`). El comando ``M-x browse-url`` pide una URL, y la sigue. Si el punto se encuentra cerca de una URL plausible, esa URL se ofrece por defecto. El paquete Browse-URL también proporciona otros comandos que puede asociar a teclas, como ``browse-url-at-point`` y ``browse-url-at-mouse``. Puede personalizar el comportamiento de Browse-URL mediante varias opciones del grupo browse-url Customize. En particular, la opción ``browse-url-mailto-function`` le permite definir cómo seguir las URLs ``mailto:``, mientras que ``browse-url-browser-function`` especifica su navegador por defecto. Puede definir que ciertas URLs sean exploradas con otras funciones personalizando ``browse-url-handlers``, una lista de expresiones regulares o predicados emparejados con funciones para explorar URLs coincidentes. Para más información, consulte el comentario del paquete escribiendo :kbd:`Ctrl`-:kbd:`h` :kbd:`P` ``browse-url`` :kbd:`RETURN` (``C-h P browse-url RET``). Emacs también tiene un modo menor que tiene cierto soporte para manejar URLs como si fueran ficheros. ``url-handler-mode`` es un modo menor global que afecta a la mayoría de los comandos y operaciones primitivas de Emacs que tratan con nombres de archivos. Después de activar este modo, puedes decir, por ejemplo, ``C-x C-f`` *https://www.gnu.org/* ``RET`` para ver el HTML de esa página web, y entonces puedes editarlo y guardarlo en un archivo local, por ejemplo. Puede definir que ciertas URLs sean exploradas con otras funciones personalizando ``browse-url-handlers``, una lista de expresiones regulares o predicados emparejados con funciones para explorar URLs coincidentes. Para más información, consulte el comentario del paquete escribiendo :kbd:`Ctrl`-:kbd:`h` :kbd:`P` ``browse-url`` :kbd:`RETURN` (``C-h P browse-url RET``). .. _47.4: 47.4 Activar URLs ----------------- :kbd:`Alt`-:kbd:`x` ``goto-address-mode`` (``M-x goto-address-mode``) Activa URL y direcciones de correo electrónico en el búfer actual. :kbd:`Alt`-:kbd:`x` ``global-goto-address-mode`` (``M-x global-goto-address-mode``) Activa ``goto-address-mode`` en todos los búferes. Puede hacer que Emacs marque las URLs especialmente en el búfer actual, tecleando :kbd:`Alt`-:kbd:`x` ``goto-address-mode`` (``M-x goto-address-mode``). Cuando este modo menor del búfer está activado, encuentra todas las URLs en el búfer, las resalta, y las convierte en botones clicables. Puede seguir la URL tecleando :kbd:`Ctrl`-:kbd:`c` :kbd:`RETURN` (``C-c RET``, ``goto-address-at-point``) mientras el punto está en su texto; o haciendo click con ``ratón-2``, o haciendo click con ``ratón-1`` rápidamente (ver :ref:`22.3`). Seguir una URL se hace llamando a ``browse-url`` como subrutina (ver :ref:`47.3`). Puede ser útil añadir ``goto-address-mode`` a los ganchos de modo y ganchos para mostrar un mensaje entrante (por ejemplo, ``rmail-show-message-hook`` para Rmail). Esto no es necesario para Gnus o MH-E, que tienen características similares propias. .. _47.5: 47.5 Encontrar Archivos y URLs en un Punto ------------------------------------------ El paquete FFAP sustituye ciertas combinaciones de teclas para buscar archivos, como ``C-x C-f``, por órdenes que proporcionan valores por defecto más sensibles. Estos comandos se comportan como los habituales cuando se les da un argumento prefijo. De lo contrario, obtienen el nombre de archivo o la URL por defecto del texto alrededor del punto. Si lo que se encuentra en el búfer tiene la forma de una URL en lugar de un nombre de archivo, los comandos utilizan ``browse-url`` para verlo (véase :ref:`47.3`). Esta función es útil para seguir referencias en búferes de correo o noticias, archivos ``README``, archivos ``MANIFEST``, etc. Para obtener más información, consulte el comentario del paquete escribiendo :kbd:`Ctrl`-:kbd:`h` :kbd:`P` ``ffap`` :kbd:`RETURN` (``C-h P ffap RET``). Para activar FFAP, escriba :kbd:`Alt`-:kbd:`x` ``ffap-bindings`` (``M-x ffap-bindings``). Esto hace que los siguientes enlaces de teclas, y también instala ganchos para la funcionalidad FFAP adicional en Rmail, Gnus y VM búferes de artículos. | :kbd:`Ctrl`-:kbd:`x` :kbd:`Ctrl`-:kbd:`f` *nombre-archivo* :kbd:`RETURN` | (``C-x C-f`` *nombre-archivo* ``RET``) Busca nombre de archivo, adivinando un valor predeterminado a partir del texto alrededor del punto (``find-file-at-point``, buscar-archivo-en-el-punto). | :kbd:`Ctrl`-:kbd:`x` :kbd:`Ctrl`-:kbd:`r` *nombre-archivo* :kbd:`RETURN` | (``C-x C-r`` *nombre-archivo* ``RET``) ``ffap-read-only``, análogo a ``find-file-read-only``. | :kbd:`Ctrl`-:kbd:`x` :kbd:`Ctrl`-:kbd:`v` *nombre-archivo* :kbd:`RETURN` | (``C-x C-v`` *nombre-archivo* ``RET``) ``ffap-alternate-file``, análogo a ``find-alternate-file``. | :kbd:`Ctrl`-:kbd:`x` :kbd:`d` *directorio* :kbd:`RETURN` | (``C-x d`` *directorio* ``RET``) Inicia Dired en *directorio*, por defecto en donde está el punto (``dired-at-point``). | :kbd:`Ctrl`-:kbd:`x` :kbd:`Ctrl`-:kbd:`d` *directorio* :kbd:`RETURN` | (``C-x C-d`` *directorio* ``RET``) ``ffap-list-directory``, análogo a ``list-directory``. | :kbd:`Ctrl`-:kbd:`x` :kbd:`4`:kbd:`f` *nombre-directorio* :kbd:`RETURN` | (``C-x 4 f`` *nombre-archivo* ``RET``) ``ffap-other-window``, análogo a ``find-file-other-window``. | :kbd:`Ctrl`-:kbd:`x` :kbd:`4`:kbd:`f` *nombre-directorio* :kbd:`RETURN` | (``C-x 4 r`` *nombre-archivo* ``RET``) ``ffap-read-only-other-window``, análogo a ``find-file-read-only-other-window``. | :kbd:`Ctrl`-:kbd:`x` :kbd:`4`:kbd:`d` *directorio* :kbd:`RETURN` | (``C-x 4 d`` *directorio* ``RET``) ``ffap-dired-other-window``, como ``dired-other-window``. | :kbd:`Ctrl`-:kbd:`x` :kbd:`5`:kbd:`f` *nombre-archivo* :kbd:`RETURN` | (``C-x 5 f`` *nombre-archivo* ``RET``) ``ffap-other-frame``, análogo a ``find-file-other-frame``. | :kbd:`Ctrl`-:kbd:`x` :kbd:`5`:kbd:`r` *nombre-archivo* :kbd:`RETURN` | (``C-x 5 r`` *nombre-archivo* ``RET``) ``ffap-read-only-other-frame``, análogo a ``find-file-read-only-other-frame``. | :kbd:`Ctrl`-:kbd:`x` :kbd:`5`:Kbd:`d` *directorio* :kbd:`RETURN` | (``C-x 5 d`` *directorio* ``RET``) ``ffap-dired-other-frame``, análogo a ``dired-other-frame``. | :kbd:`Ctrl`-:kbd:`x` :kbd:`t` :kbd:`Ctrl`-:kbd:`f` *nombre-archivo* :kbd:`RETURN` | (``C-x t C-f`` *nombre-archivo* ``RET``) ``ffap-other-tab``, análogo a ``find-file-other-tab``. | :kbd:`Ctrl`-:kbd:`x` :kbd:`t` :kbd:`Ctrl`-:kbd:`r` *nombre-archivo* :kbd:`RETURN` | (``C-x t C-r`` *nombre-archivo* ``RET``) ``ffap-read-only-other-tab``, análogo a ``find-file-read-only-other-tab``. :kbd:`ALt`-:kbd:`x` ``ffpap-net`` (``M-x ffpap-net``) Busca en el búfer el siguiente nombre de archivo o URL y, a continuación, encuentra ese archivo o URL. :kbd:`Shift`-``ratón-3`` (``S-ratón-3``) ``ffap-at-mouse`` encuentra el archivo adivinado a partir del texto alrededor de la posición donde se hizo clic con el ratón. :kbd:`Ctrl`-:kbd:`Shift` ``ratón-3`` (``C-S ratón-3``) Muestra un menú de archivos y URLs mencionado en el búfer actual y luego busca el que selecciona (``ffap-menu``).