Author: Sébastien Helleu

# WeeChat preguntas frecuentes (FAQ)

Sébastien Helleu
flashcode@flashtux.org
versión 4.10.0

## 1. General

### 1.1. ¿De dónde proviene el nombre de "WeeChat"?

"Wee" es un acrónimo recursivo que proviene de "Wee Enhanced Environment" (Entorno Mejorado Wee). Así que el nombre completo sería "Wee Enhanced Environment for Chat" (Entorno Mejorado Wee para Chat).

"Wee" también significa "muy pequeño" (y sí, hay otros significados, pero estos no se aplican a WeeChat!).

### 1.2. ¿Por qué escoger WeeChat? X-Chat o Irssi son buenos…​

Porque WeeChat es muy ligero y ofrece funcionalidades innovadoras.

More info on the WeeChat features page ↗.

## 2. Compilación / instalación

### 2.1. ¿He oido que hay muchas interfaces gráficas de susuario (GUI) para WeeChat. ¿Cómo puedo compilarlas o usarlas?

Some remote GUIs are available, see the remote interfaces page ↗.

### 2.2. No puedo compilar WeeChat después de haber clonado el repositorio git, ¿por qué?

WeeChat must be compiled with CMake.

Please follow build instructions ↗ and ensure all required dependencies are installed.

If you still have issues, please report them to the developers.

### 2.3. ¿Cómo puedo instalar WeeChat en macOS?

Se recomienda utilizar Homebrew ↗, puede obtener ayuda con el comando:

    brew info weechat

Puede instalar WeeChat con este comando:

    brew install weechat

### 2.4. He lanzado WeeChat, pero estoy perdido, ¿qué puedo hacer?

Para consultar la ayuda, escriba `/help`. Para buscar ayuda con un comando, escriba `/help comando`. Las teclas ↗ y comandos ↗ aparecen listados en la documentación.

Se recomienda a las personas recién llegadas leer la guía rápida ↗.

## 3. Visualización

### 3.1. No veo algunos caracteres con acentos ¿qué puedo hacer?

Es un problema común con una variedad de causas, por favor lea detenidamente y compruebe TODAS las soluciones que se muestran a continuación:

- Compruebe que weechat está enlazado a libncursesw (atención: es necesario en la mayoría de distribuciones, pero no en todas): `ldd /ruta/a/weechat`.

- Compruebe que el complemento "charset" está cargado mediante el comando `/plugin` (si no lo está, entonces probablemente necesite el paquete "weechat-plugins").

- Compruebe la salida del comando `/charset` (en el buffer principal). Debería ver ISO-XXXXXX o UTF-8 para los caracteres de la terminal. Si ve ANSI_X3.4-1968 u otros valores, su idioma probablemente sea erróneo.
  Para solucionarlo, compruebe que tiene los idiomas instalados mediante `locale -a` y establezca un valor apropiado en $LANG, por ejemplo: `export LANG=es_ES.UTF-8`.

- Estableza un valor global, por ejemplo: `/set charset.default.decode "ISO-8859-15"`.

- Si está utilizando UTF-8:

  - Compruebe que su terminal está preparado para UTF-8 (la terminal recomendada para UTF-8 es rxvt-unicode).

  - Si está utilizando el multiplexador screen, compruebe que lo está ejecuando con el modo UTF-8 (“defutf8 on” en ~/.screenrc o `screen -U` al ejecutar screen).

- Compruebe si la opción weechat.look.eat_newline_glitch ↗ está en off (esta opción puede causar errores a la hora de mostrar el texto).

Nota | Se recomienda utilizar UTF-8 para WeeChat. Si está utilizando ISO u otras opciones, por favor, compruebe que todos sus ajustes (terminal, screen, ..) también están en ISO y no en UTF-8.

### 3.2. Algunos caracteres unicode se muestran en la terminal pero no en WeeChat, ¿por qué?

Esto puede estar causado por un error en libc en la función wcwidth, que debería estar solucionado en glibc 2.22 (quizás todavía no está disponible en su distribución).

Hay una solución temporal que es utilizar una función de wcwidth sin ese error: https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat ↗.

See this bug report ↗ for more information.

### 3.3. Las barras del título y de estado no aparecen rellenadas, el color de fondo desaparece después del texto, ¿por qué?

Esto puede estar causado por un valor erróneo en la variable TERM en su shell (eche un vistazo a la salida del comando `echo $TERM` en su terminal).

Dependiendo de donde ejecute WeeChat, debería tener:

- Si WeeChat se ejecuta de manera local o en una máquina remota sin el multiplexador de terminal screen ni tmux, esto depende de la terminal utilizada: xterm, xterm-256color, rxvt-unicode, rxvt-256color, etc.

- Si WeeChat se ejecuta en el multiplexador de terminal screen, debería tener screen o screen-256color.

- Si WeeChat se ejecuta en el multiplexador de la terminal tmux, debería tener tmux, tmux-256color, screen o screen-256color.

Si es necesario, modifique su variable TERM: `export TERM="xxx"`.

### 3.4. Cuando estoy utilizando WeeChat con screen o tmux, veo de manera aleatoria caracteres extraños, ¿cómo puedo solucionar eso?

Esto puede ser causado por un valor erróneo de la variable TERM en su shell (eche un vistazo a la salida del comando `echo $TERM` en su terminal, fuera de una sesión de screen o tmux).
Por ejemplo, xterm-color puede mostrar caracteres extraños, puede utilizar xterm que es mejor (como muchos otros valores).
Si es necesario, cambie el valor se su variable TERM mediante: `export TERM="xxx"`.

Si está utilizando gnome-terminal, compruebe que la opción "Ambiguous-width characters" en el menú Preferencias/Perfil/Compatibilidad está establecida a `narrow` o `estrecho`.

### 3.5. He compilado WeeChat en macOS, y veo "(null)" por todas partes en screen, ¿qué está mal?

Si ha compilado ncursesw usted mismo, trate de utilizar el ncurses estándar (el que viene con el sistema).

Es más, en macOS, se recomienda instalar WeeChat mediante el gesto de paquetes Homebrew.

### 3.6. He escuchado cosas sobre "buffers" y "ventanas", ¿cual es la diferencia?

Un buffer está compuesto por un número, un nombre, y unas líneas mostradas (y algunos otros datos).

Una ventana es un área de la pantalla en la que se muestra un buffer. Es posible dividir su pantalla en muchas ventanas.

Cada ventana muestra un buffer, o un grupo de buffers unidos. Un buffer puede ser ocultado (no mostrado en una ventana) o mostrado por una o más ventanas.

### 3.7. ¿Cómo mostrar un listado de los buffers en la parte izquierda?

El complemento buflist ↗ está cargado y habilitado de manera predeterminada.

Para limitar el tamaño de la barra:

    /set weechat.bar.buflist.size_max 15

Para mover la barra a la parte inferior:

    /set weechat.bar.buflist.position bottom

Para desplazar la barra (hacer scroll): si el ratón está habilitado (key: `Alt`+`m`), puede hacerlo con la rueda del ratón.

Las teclas predeterminadas para hacer scroll en la barra son `F1` (o `Ctrl`+`F1`), `F2` (o `Ctrl`+`F2`), `Alt`+`F1` y `Alt`+`F2`.

### 3.8. ¿Cómo puedo personalizar la lista de lista de buffers, como el color del buffer activo?

Puede navegar por las opciones del listado de buffers con el comando:

    /fset buflist

El fondo del buffer activo es azul de manera predeterminada, puede cambiarlo así, por ejemplo a rojo `red`:

    /set buflist.format.buffer_current "${color:,red}${format_buffer}"

Nota | Hay una coma antes del nombre color "red" porque es utilizado como fondo, no el color del texto. También se puede utilizar cualquier color numérico en vez del nombre `red`, como `237` para gris oscuro.

El complemento del listado de buffers buflist ofrece múltiples opciones que puede configurar, por favor lea la ayuda de cada opción.

There’s also a wiki page ↗ with examples of advanced buflist configuration.

### 3.9. ¿Cómo puedo reducir la longitud de los apodos o eliminar la alineación de los apodos en el área del chat?

Para reducir la longitud máxima de los apodos en el área del chat:

    /set weechat.look.prefix_align_max 15

Para eliminar la alineación de los apodos:

    /set weechat.look.prefix_align none

### 3.10. ¿Qué significa el texto [H: 3(1,8), 2(4)] que aparece en la barra de estado?

Esto es lo que se llama "hotlist", una lista de buffers con el número de mensajes sin leer, por orden: resaltados, mensajes privados, mensajes, otros mensajes (como mensajes de unión o abandono de la sala).
El número de "mensajes sin leer" es el número de mensajes mostrados/recibidos desde que iniciaste el buffer.

En este ejemplo `[H: 3(1,8), 2(4)]`, son:

- En el buffer #3 hay 1 mensaje resaltado y 8 mensajes sin leer.

- En el buffer #2 hay 4 mensajes sin leer.

El color del buffer/contador depende del tipo de mensaje, los colores predeterminados son:

- resaltado: `lightmagenta` / `magenta`

- mensaje privado: `lightgreen` / `green`

- mensaje: `yellow` / `brown`

- otros mensajes: `default` / `default` (color del texto de la terminal)

Estos colores pueden ser cambiados con las opciones weechat.color.status_data_* (buffers) y weechat.color.status_count_* (contadores).
Otras opciones de la lista rápida o hotlist pueden ser cambiadas con las opciones weechat.look.hotlist_*.

Vea la Guía de usuario / diseño de la pantalla ↗ para más información sobre este tema.

### 3.11. ¿Cómo utilizar la línea de comandos con más de una línea?

La opción size en la barra de entrada puede ser ajustada a un valor mayor que 1 (para un tamaño fijo, el tamaño predeterminado es 1) o 0 para un tamaño dinámico, y después la opción size_max establecerá el tamaño máximo (0 = sin límite).

Ejemplo con tamaño dinámico:

    /set weechat.bar.input.size 0

Máximo tamano de 2:

    /set weechat.bar.input.size_max 2

### 3.12. ¿Es posible mostrar solo una barra de entrada para todas las ventanas (después de haberla dividido)?

Sí, deberá crear una barra con el tipo "root" (con un elemento conocido en qué ventana está), después eliminar la barra de entrada.

Por ejemplo:

    /bar add rootinput root bottom 1 0 [buffer_name]+[input_prompt]+(away),[input_search],[input_paste],input_text
    /bar del input

Si alguna vez no le safisface esto, simplemente elimine la nueva barra, WeeChat automáticamente creará la barra predeterminada "input" si el elemento "input_text" no está utilizado en ninguna barra:

    /bar del rootinput

### 3.13. ¿Cómo puedo copiar/pegar texto sin pegar la lista de apodos?

You can use the bare display (default key: `Alt`+`l` (`L`)), which shows just the contents of the currently selected window, without any formatting.

Puede utilizar una terminal con selección rectangualr (como rxvt-unicode, konsole, gnome-terminal, etc.). La tecla normalmente es `Ctrl` + `Alt` + la selección con el ratón.

You can toggle nicklist and make it visible only when needed, with key `Alt`+`Shift`+`N`.

Otra solución es mover la lista de apodos a la parte superior o inferior, por ejemplo:

    /set weechat.bar.nicklist.position top
    /set weechat.bar.nicklist.size_max 8

### 3.14. ¿Cómo puedo hacer clic sobre direcciones URL largas (de más de una línea)?

You can use the bare display (default key: `Alt`+`l` (`L`)).

Para abrir direcciones URL más fácilmente, puede:

- toggle nicklist and make it visible only when needed, with key `Alt`+`Shift`+`N`

- mover la lista de apodos a la parte superior con este comando:

    /set weechat.bar.nicklist.position top
    /set weechat.bar.nicklist.size_max 8

- inhabilitar la alineación de palabras multilínea:

    /set weechat.look.align_multiline_words off

- o para todas las líneas unidas:

    /set weechat.look.align_end_of_lines time

You can enable option "eat_newline_glitch", so that new line char is not added at the end of each line displayed (it will not break URL selection):

    /set weechat.look.eat_newline_glitch on

Importante | Esta opción puede causar errores al mostrar el contenido. Si experimenta algún problema de estos, deberá eliminar esa opción.

Otra solución es utilizar un script:

    /script search url

### 3.15. Quiero cambiar el lenguaje utilizado por WeeChat para los mensajes, pero sin salir de WeeChat, ¿es esto posible?

Por supuesto que es posible:

    /set env LANG en_US.UTF-8
    /upgrade

### 3.16. ¿Cómo puedo cambiar la zona horaria?

No hay razón en WeeChat para cambiar la zona horaria, la variable de entorno `TZ` deberá estar ajustada al valor apropiado.

En el archivo de inicialización de su shell o en la línea de comando, antes de ejecutar WeeChat:

    export TZ=America/New_York

En WeeChat, el nuevo valor es inmediatamente utilizado:

    /set env TZ America/New_York

### 3.17. ¿Cómo puedo utilizar 256 colors en WeeChat?

Primero compruebe que su variable de entorno TERM es correcta, los valores recomendados son:

- en screen: screen-256color

- en tmux: screen-256color or tmux-256color

- fuera de screen/tmux: xterm-256color, rxvt-256color, putty-256color, …​

Nota | Puede tener que instalar el paquete "ncurses-term" para utilizar estos valores en la variable TERM.

Si está utilizando el multiplexador screen, puede añadir esta línea en su archivo de configuración ~/.screenrc:

    term screen-256color

Si su variable TERM tiene un valor erróneo y ya WeeChat está ejecutándose, puede cambiarlo con estos dos comandos:

    /set env TERM screen-256color
    /upgrade

You can use any color number in options (optional: you can add color aliases with command `/color`).

Por favor lea la Guía del usuario / Colores ↗ para más información sobre la gestión de los colores.

### 3.18. ¿Cómo busco texto en un buffer (como /lastlog en irssi)?

La tecla predeterminada es `Ctrl`+`s` (el comando es: `/input texto_a_buscar_aquí`). Y para saltar a los textos resaltados: `Alt`+`p` / `Alt`+`n`.

Vea la Guía del usuario / Atajos de teclado ↗ para más información sobre esta funcionalidad.

### 3.19. ¿Cómo puedo ejecutar comandos cuando la terminal tiene o pierde el foco?

Puede habilitar el foco de los eventos con un código enviado a la terminal.

Importante:

- Deberá utilizar una terminal moderna compatible con xterm.

- De manera adicional, parece importante que su valor de la variable TERM sea igual a xterm o xterm-256color.

- Si está utilizando tmux, deberá de manera adiciona habilitar los eventos del foco añadiendo `set -g focus-events on` en su fichero de configuración .tmux.conf.

- Esto no funciona bajo el multiplexado screen.

Para enviar el código cuando WeeChat es arrancado:

    /set weechat.startup.command_after_plugins "/print -stdout \033[?1004h\n"

Y después enlazar dos teclas para el foco (reemplazar los comandos `/print` por los comandos que prefiera):

    /key bind meta-[I /print -core focus
    /key bind meta-[O /print -core unfocus

Por ejemplo, para marcar buffers como leidos cuando una terminal pierde el foco:

    /key bind meta-[O /allbuf /buffer set unread

### 3.20. Cuando WeeChat se está ejecutando en el multiplexador screen, al pegar texto en otra ventana de screen añade ~0 y ~1 alrededor del texto, ¿por qué?

Esto es causado por la opción de pegado de corchetes que está habilitado de manera predeterminada, y no está adecuadamente gestionada por screen en otras ventanas.

Puede inhabilitar este modo de pegado con este comando:

    /set weechat.look.paste_bracketed off

### 3.21. ¿Cómo puedo personalizar cómo se muestra para tamaños de terminales pequeñas (como 80x25), para no malgastar espacio?

Puede eliminar las barras laterales (lista de buffers y lista de apodos), cambie el formato en que se muestra la hora para mostrar solo horas y minutos, inhabilite la alineación de mensajes y un juego de caracteres para prefijos/sufijos de apodos:

    /set buflist.look.enabled off
    /bar hide nicklist
    /set weechat.look.buffer_time_format "%H:%M"
    /set weechat.look.prefix_align none
    /set weechat.look.align_end_of_lines prefix
    /set weechat.look.nick_suffix ">"
    /set weechat.look.nick_prefix "<"

Terminal 80x25, con configuración predeterminada:

    ┌────────────────────────────────────────────────────────────────────────────────┐
    │1.local     │Welcome on WeeChat channel!                                        │
    │  weechat   │16:27:16        --> | FlashCode (~flashcode@localhost)  │@FlashCode│
    │2.  #weechat│                    | has joined #weechat               │ bob      │
    │            │16:27:16         -- | Mode #weechat [+nt] by hades.arpa │          │
    │            │16:27:16         -- | Channel #weechat: 1 nick (1 op, 0 │          │
    │            │                    | voices, 0 normals)                │          │
    │            │16:27:18         -- | Channel created on Sun, 22 Mar    │          │
    │            │                    | 2020 16:27:16                     │          │
    │            │17:02:28        --> | bob (~bob_user@localhost) has     │          │
    │            │                    | joined #weechat                   │          │
    │            │17:03:12 @FlashCode | hi bob, you're the first user     │          │
    │            │                    | here, welcome on the WeeChat      │          │
    │            │                    | support channel!                  │          │
    │            │17:03:33        bob | hi FlashCode                      │          │
    │            │                                                        │          │
    │            │                                                        │          │
    │            │                                                        │          │
    │            │                                                        │          │
    │            │                                                        │          │
    │            │                                                        │          │
    │            │                                                        │          │
    │            │                                                        │          │
    │            │                                                        │          │
    │            │[17:04] [2] [irc/local] 2:#weechat(+nt){2}                         │
    │            │[@FlashCode(i)] █                                                  │
    └────────────────────────────────────────────────────────────────────────────────┘

Terminal 80x25, después de los cambios:

    ┌────────────────────────────────────────────────────────────────────────────────┐
    │Welcome on WeeChat channel!                                                     │
    │16:27 --> FlashCode (~flashcode@localhost) has joined #weechat                  │
    │16:27 -- Mode #weechat [+nt] by hades.arpa                                      │
    │16:27 -- Channel #weechat: 1 nick (1 op, 0 voices, 0 normals)                   │
    │16:27 -- Channel created on Sun, 22 Mar 2020 16:27:16                           │
    │17:02 --> bob (~bob_user@localhost) has joined #weechat                         │
    │17:03 <@FlashCode> hi bob, you're the first user here, welcome on the WeeChat   │
    │      support channel!                                                          │
    │17:03 <bob> hi FlashCode                                                        │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │                                                                                │
    │[17:04] [2] [irc/local] 2:#weechat(+nt){2}                                      │
    │[@FlashCode(i)] █                                                               │
    └────────────────────────────────────────────────────────────────────────────────┘

## 4. Atajos de teclado

### 4.1. Algunas teclas (alt + tecla) no funcionan, ¿por qué?

Si está utilizando algunas terminales como xterm o uxterm, algunas teclas no funcionan de manera predeterminada. Puede añadir una línea en el archivo ~/.Xresources:

- Para xterm:

    XTerm*metaSendsEscape: true

- Para uxterm:

    UXTerm*metaSendsEscape: true

Y después recargar el archivo (`xrdb -override ~/.Xresources`) o reiniciar el servidor gráfico X.

Si está utilizando aplicación Terminal de macOS, habilite la opción "Use option as meta key" en el menú Settings/Keyboard después de la cual puede utilizar la tecla `Option` como tecla meta.

### 4.2. Some keys including Enter are not working, why?

If you run a WeeChat < 4.0.0 with configuration files created by any version ≥ 4.0.0, the keys names become invalid and many keys won’t work at all.
To repair them, exit WeeChat, remove all sections `[key*]` from weechat.conf and start WeeChat again: all default keys will be created.

### 4.3. Key F11 maximizes the terminal window, how can I scroll up the nicklist?

The key `F11` is commonly used by terminals to maximize the window, and `F11`/`F12` are the default keys in WeeChat to scroll the nicklist.

You can bind other keys, for example `Shift`+`F11` and `Shift`+`F12`, with WeeChat ≥ 4.0.0:

    /key bind shift-f11 /bar scroll nicklist * -100%
    /key bind shift-f12 /bar scroll nicklist * +100%

Other solution is to enable mouse (key: `Alt`+`m`) and scroll with the mouse wheel (see also questions about mouse).

### 4.4. ¿Cómo puedo personalizar los atajos de teclado?

Los atajos de teclado son personalizables con el comando `/key`.

La combinación predeterminadad `Alt`+`k` le permite guardar el código de la tecla e insertarlo en la línea de comando.

### 4.5. ¿Cual es la tecla para saltar al buffer 11 (o un número mayor)?

La tecla es `Alt`+`j` y después introducir 2 dígitos, por ejemplo `Alt`+`j`, `1`, `1` para saltar al buffer 11.

Puede crear un atajo de teclado, por ejemplo:

    /key bind meta-q /buffer *11

Tiene una lista de las teclas predeterminadas en la Guía del usuario / Atajos de teclado ↗.

Para saltar a un buffer mayor de 100, podría definir un disparador y después utilizar comandos como `/123` para saltar al buffer #123:

    /trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"

For an easy jump to buffers, you can also install the go.py script:

    /script install go.py

### 4.6. ¿Cómo utilizar el historial global (en vez del historial del buffer) con las teclas de las flechas arriba y abajo?

Puede asociar las teclas de las flechas arriba y abajo en el historial global (las teclas predeterminadas para el historial global son `Ctrl`+`↑` y `Ctrl`+`↓`).

Ejemplo:

    /key bind up /input history_global_previous
    /key bind down /input history_global_next

With WeeChat ≤ 3.8, you must use the raw key code (press `Alt`+`k` then key to display its code):

    /key bind meta2-A /input history_global_previous
    /key bind meta2-B /input history_global_next

## 5. Ratón

### 5.1. El ratón no funciona en absoluto, ¿qué puedo hacer?

Primero trate de habilitar el ratón:

    /mouse enable

Si el ratón sigue sin funcionar, compruebe la variable TERM en su shell (eche un vistazo a la salida de `echo $TERM` en su terminal). De acuerdo a la información usada, el ratón podrá o no estar soportado.

Puede comprobar el soporte del ratón en la terminal:

    printf '\033[?1002h'

Y después haga clic en el primer caracter de la terminal (superior izquierdo). Debería ver " !!#!!".

Para inhabilitar el ratón en la terminal:

    printf '\033[?1002l'

### 5.2. El ratón no hace nada para coordenadas X o Y mayores de 94 (o 222), ¿por qué?

Algunas terminales solo envían caracteres ISO para las coordenadas del ratón, así que esto no funciona para X/Y mayores de 94 (o 222).

Debería utilizar una terminal que admitiera coordenadas UTF-8 para el ratón, como rxvt-unicode.

### 5.3. ¿Cómo puedo seleccionar o pegar texto en la terminal cuando el ratón está habilitado en WeeChat?

Cuando el ratón está habilitado en WeeChat, puede utilizar el modificador `Shift` para seleccionar o hacer clic en la terminal, como si el ratón estuviera inhabilitado (en algunos terminales como iTerm, tiene que utilizar `Alt` en vez de `Shift`).

## 6. IRC

### 6.1. Tengo algunos problemas al conectarme a un servidor utilizando TLS, ¿qué puedo hacer?

Si está utilizando macOS, deberá instalar `openssl` desde Homebrew. Se añadirá un archivo CA que utiliza los certificados del sistema.

Si ve errores en gnutls handshake, puede intentar utilizar una clave de cifrado menor Diffie-Hellman (la predeterminada es 2048):

    /set irc.server.example.tls_dhkey_size 1024

Si ve errores sobre el certificado, puede inhabilitar "tls_verify" (tenga cuidado, la conexión será menos segura haciendo esto):

    /set irc.server.example.tls_verify off

Si el servidor tiene un certificado inválido y usted conoce qué certificado debería ser, puede especificar la huella (fingerprint) (SHA-512, SHA-256 or SHA-1):

    /set irc.server.example.tls_fingerprint 0c06e399d3c3597511dc8550848bfd2a502f0ce19883b728b73f6b7e8604243b

### 6.2. Al conectar a un servidor con TLS, solo veo el error "TLS handshake failed", ¿qué puedo hacer?

Puede intentar una cadena de prioridad diferente, reemplace "xxx" por el nombre de su servidor:

    /set irc.server.xxx.tls_priorities "NORMAL:%COMPAT"

### 6.3. ¿Cómo puedo conectarme al servidor libera utilizando TLS?

Check that you have certificates installed on your system, this is commonly provided by the package "ca-certificates".

Establezca el puerto del servidor, TLS, después conecte:

    /set irc.server.libera.addresses "irc.libera.chat/6697"
    /set irc.server.libera.tls on
    /connect libera

### 6.4. ¿Cómo conectar con un servidor que pide "oauth"?

Algunos servidores como twitch requiere oauth para conectarse.

oauth es simplemente una contraseña con el valor "oauth:XXXX".

Puede añadir cualquier servidor y conectar con los siguientes comandos (reemplace el nombre y dirección con los valores apropiados en su caso):

    /server add name irc.server.org -password=oauth:XXXX
    /connect name

### 6.5. ¿Cómo puedo ser identificado antes de unirme a los canales?

Si el servidor admite SASL, debería usar esto en vez de enviar el comando para la autenticación del apodo mediante nickserv, por ejemplo:

    /set irc.server.libera.sasl_username "miapodo"
    /set irc.server.libera.sasl_password "xxxxxxx"

Si el servidor no admite SASL, puede añadir un retraso (entre el comando y unirse a los canales):

    /set irc.server.libera.command_delay 5

### 6.6. ¿Cómo puedo añadir/eliminar canales de la opción autojoin?

With WeeChat ≥ 3.5, you can automatically record the channels you manually join and part in the "autojoin" server option.

For all servers:

    /set irc.server_default.autojoin_dynamic on

For a single server:

    /set irc.server.libera.autojoin_dynamic on

You can also add the current channel in the "autojoin" server option using the `/autojoin` command:

    /autojoin add

Or another channel:

    /autojoin add #test

There are also scripts:

    /script search autojoin

### 6.7. ¿Cual es la diferencia entre los comando /ignore y /filter?

El comando `/ignore` es un comando de IRC, así que solo se aplica en los buffers de IRC (servidores y canales). Le permite ignorar algunos apodos o nombres de host de usuarios de un servidor o cana (el comando no se aplicará al contenido de mensajes). Los mensajes que coincidan son eliminado por el complemento IRC antes de mostrarse (así que nunca los verá, y no podrá recuperarlos eliminado la opción ignore).

El comando `/filter` es un comando del núcleo de WeeChat, así que se aplica a cualquier buffer. Le permite filtar algunas líneas de los buffers con etiquetas o expresiones regulares para prefijar el contenido de la línea. Las líneas flitradas solo son ocultadas, no eliminadas, y podrá verlas si inhabilita los filtros (de manera predeteminada, la tecla `Alt`+`=` alterna esos filtros).

### 6.8. How can I filter join/part/quit and other annoying messages on IRC channels?

See User’s guide / IRC smart filter ↗.

### 6.9. ¿Cómo puedo filtrar algunos mensajes mostrados cuando me uno a un canal IRC?

You can choose which messages are displayed when joining a channel with the option irc.look.display_join_message (see `/help irc.look.display_join_message` for more info).

Para ocultar mensajes (pero mantenerlos en el buffer), puede filtrarlos utilizando la etiqueta propia del mensaje (por ejemplo irc_329 para la fecha de creación del canal). Vea `/help filter` para más información con los filtros.

### 6.10. ¿Cómo puedo filtrar mensajes de voz (por ejemplo en el servidor Bitlbee)?

No es sencillo filtrar mensajes de voz, debido a que el modo de voz no puede ser establecido con otros modos en el mismo mensaje IRC.

Si quiere hacer eso, es probablemente porque Bitlbee utiliza la voz para mostrar cuando se van los usuarios y se ve abrumado por la cantidad de mensajes de voz. Además, puede cambiar que WeeChat utilice un color especial para los apodos en la lista de apodos para aquellos que se retiran.

Para Bitlbee ≥ 3, utilice esto en el canal de control &bitlbee:

    channel set show_users online,away

Para versiones más antiguas de Bitlbee, utilice esto en el canal de control &bitlbee:

    set away_devoice false

Para comprobar los apodos que se retiran en WeeChat, vea las preguntas sobre apodos que están fuera.

Si realmente quiere filtrar los mensajes de voz, puede utilizar este comando pero este no es perfecto (solo funcionará si primer modo cambiado es voz):

    /filter add hidevoices * irc_mode (\+|\-)v

### 6.11. ¿Cómo puedo ver los apodos que están fuera en la lista de apodos?

Debe establecer la opción irc.server_default.away_check a un valor positivo (son los minutos entre cada comprobación de apodos que están fuera).

Puede establecer la opción irc.server_default.away_check_max_nicks para limitar la comprobación solo en canales pequeños.

Por ejemplo, para comprobar cada 5 minutos los apodos que están fuera, para canales con un máximo de 25 apodos:

    /set irc.server_default.away_check 5
    /set irc.server_default.away_check_max_nicks 25

### 6.12. ¿Cómo puedo ser advertido cuando alguien me menciona en un canal?

There is a default trigger "beep" which sends a BEL to the terminal on a highlight or private message. Thus you can configure your terminal (or multiplexer like screen/tmux) to run a command or play a sound when a BEL occurs.

O puede añadir un comando al disparador "beep":

    /set trigger.trigger.beep.command "/print -beep;/exec -bg /ruta/al/comando argumentos"

Con versiones anteriores de WeeChat, puede utilizar un script como beep.pl o launcher.pl.

Para launcher.pl, debe configurar un comando:

    /set plugins.var.perl.launcher.signal.weechat_highlight "/path/to/command arguments"

Otros scripts para este tema:

    /script search notify

### 6.13. ¿Cómo puedo inhabilitar las menciones de unos apodos específicos?

You can use the hotlist_max_level_nicks_add ↗ buffer property to set the max hotlist level for some nicks, per buffer, or per group of buffers (like IRC servers).

Para únicamente inhabilitar las notificaciones, debería establecerlo a 2.

For the current buffer:

    /buffer setauto hotlist_max_level_nicks_add joe:2,mike:2

For all channels on server "libera":

    /set weechat.buffer.irc.libera.*.hotlist_max_level_nicks_add joe:2,mike:2

### 6.14. ¿Cómo puedo cambiar el objetivo del buffer para comandos en buffers unidos (como en un buffer con servidores)?

La tecla predeterminada es `Ctrl`+`x` (el comando es: `/buffer switch`).

## 7. Complementos / scripts

### 7.1. Estoy utiizando OpenBSD y WeeChat no carga ningún complemento, ¿qué está pasando?

Bajo OpenBSD, los nombres de los archivos de complementos acaban con ".so.0.0" (".so" para Linux).

Deberá configurar lo siguiente:

    /set weechat.plugin.extension ".so.0.0"
    /plugin autoload

### 7.2. ¿Cómo puedo instalar scripts? ¿Son los scripts compatibles con otros clientes IRC?

You can use the command `/script` to install and manage scripts (see `/help script` for help).

Los scripts no son compatibles con otros clientes IRC.

### 7.3. El comando "/script update" no puede leer los scripts, ¿Cómo puedo solucionar eso?

Primero compruebe las preguntas sobre la conexión TLS en este documento.

Si todavía no funciona, trate de manera manual eliminar los archivos de scripts (escriba en su terminal):

    rm ~/.cache/weechat/script/plugins.xml.gz

Nota | If you are not using the XDG directories, the path could be: ~/.weechat/script/plugins.xml.gz.

Y vuelva a actualitar los scripts de nuevo en WeeChat:

    /script update

Si todavía persiste un error, entonces debe inhabilitar la actualización automática del archivo en WeeChat y descargue el archivo manualmente fuera de WeeChat (esto significa que tendrá que actualizar manualmente el archivo usted mismo para obtener las actualizaciones del script):

- en WeeChat:

    /set script.scripts.cache_expire -1

- en su terminal, con el software curl instalado:

    cd ~/.cache/weechat/script
    curl -O https://weechat.org/files/plugins.xml.gz

If you’re running macOS and the downloaded file has a size of 0 bytes, try to set this variable in your shell initialization file or on command line, before starting WeeChat:

    export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES

### 7.4. Instalé los diccionarios aspell en mi sistema, ¿cómo puedo utilizarlos sin necesidad de reiniciar WeeChat?

Deberá recargar el complemento spell:

    /plugin reload spell

## 8. Ajustes

### 8.1. ¿Puedo editar de manera manual los archivos de configuración (*.conf)?

Puede, pero NO es recomendable.

El comando `/set` en WeeChat es lo recomendado:

- Puede completar el nombre y valor de la opción con la tecla `Tab` (o `Shift`+`Tab` para un autocompletado parcial, útil para el nombre).

- El valor es comprobado y se muestra un mensaje en caso de error.

- El valor es utilizado inmediatamente, no necesita reiniciar nada.

Si todavía quiere editar los archivos a mano, debería tener mucho cuidado:

- Si pone un valor inválido en una opción, WeeChat mostrará un error en la carga y descartará el valor (se utilizará el valor de la opción predeterminado).

- Cuando WeeChat está ejecutándose, tendrá que ejecutar el comando `/reload`, y si algún ajuste ha sido cambiado y no fue guardado con `/save`, lo perderá.

### 8.2. ¿Cómo puede hacer que WeeChat consuma menos memoria?

Puede intentar estos trucos para consumir menos memoria:

- Utilice la última versión estable (ya que se supone que tendrá menos problemas de memoria que las versiones anteriores).

- No cargue los complementos que no vaya a utilizar, por ejemplo: buflist, fifo, logger, perl, python, ruby, lua, tcl, guile, javascript, php, spell, xfer (usado para DCC). Vea `/help weechat.plugin.autoload`.

- Cargue solo los scripts que realmente necesite.

- No cargue los certificados del sistema si TLS NO es utilizado: inhabilite esta opción mediante: weechat.network.gnutls_ca_system.

- Reduzca el valor de la opción weechat.history.max_buffer_lines_number o establezca el valor de la opción weechat.history.max_buffer_lines_minutes.

- Reduzca el valor de la opción weechat.history.max_commands.

### 8.3. Cómo puedo hacer que WeeChat utilice menos CPU?

Puede seguir los mismos consejo que para la memoria y estos otros:

- Oculte la barra de la lista de apodos: `/bar hide nicklist` (key: `Alt`+`Shift`+`N`).

- Disable "buflist": `/buflist disable` (key: `Alt`+`Shift`+`B`).

- Elimine que se muestren los segundos en la hora de la barra de estado: `/set weechat.look.item_time_format "%H:%M"` (este es el valor predeterminado).

- Inhabilite la comprobación en tiempo real de palabras erróneas en la línea de comandos (si lo había habilitado previamente): `/set spell.check.real_time off`.

- Establezca la variable TZ (por ejemplo: `export TZ="Europe/Paris"`), para prevenir el acceso frecuente al archivo /etc/localtime.

### 8.4. Soy un paranoico con la seguridad, ¿qué ajustes podría cambiar para conseguir aún más seguridad?

Inhabilite los mensajes de abandono y salida de IRC:

    /set irc.server_default.msg_part ""
    /set irc.server_default.msg_quit ""

Inhabilite las respuestas a todas las peticiones CTCP:

    /set irc.ctcp.clientinfo ""
    /set irc.ctcp.source ""
    /set irc.ctcp.time ""
    /set irc.ctcp.version ""
    /set irc.ctcp.ping ""

With WeeChat < 4.1.0, other CTCP queries were replied by default and must be disabled as well:

    /set irc.ctcp.finger ""
    /set irc.ctcp.userinfo ""

Elimine de la memoria e inhabilite la carga automática del complemento "xfer" (utilizdo para IRC DCC):

    /plugin unload xfer
    /set weechat.plugin.autoload "*,!xfer"

Defina una frase de paso y utilice datos seguros cada vez que pueda para datos sensibles como contraseñas: vea `/help secure` y `/help` en las opciones (si puede utilice datos seguros, está escrito en la ayuda). Ver también Guía del usuario / Datos seguros ↗.

Por ejemplo:

    /secure passphrase xxxxxxxxxx
    /secure set libera_username username
    /secure set libera_password xxxxxxxx
    /set irc.server.libera.sasl_username "${sec.data.libera_username}"
    /set irc.server.libera.sasl_password "${sec.data.libera_password}"

### 8.5. Quiero compartir mi configuración de WeeChat, ¿qué archivos debería compartir y cuales mantener en privado?

Puede compartir los archivos de configuración *.conf excepto el archivo sec.conf que contiene sus contraseñas cifradas con su frase de paso.

Algunos otros archivos pueden contener información sensible como contraseñas (si no están almacenadas en sec.conf con el comando `/secure`).

Vea la Guía del usuario / Archivos y directorios ↗ para más información relacionada con los archivos de configuración.

### 8.6. I want to move my WeeChat to another device and keep my config, what should I copy?

First check directories used by WeeChat with this command: `/debug dirs`.
Directories home/config and home/data must be copied (all files and sub-directories).

For example if you’re using XDG directories (default with WeeChat ≥ 3.2), the directories should be `$HOME/.config/weechat` and `$HOME/.local/share/weechat`.
If you’re using a single directory (default with WeeChat < 3.2), the directory should be `$HOME/.weechat`.

Importante | The WeeChat version on the new device must be greater than or equal to the version on the initial device. Downgrading WeeChat configuration is NOT SUPPORTED and can break it, leading to unusable WeeChat.

Steps:

1. Quit Weechat: `/quit` (or `/upgrade -quit` if you want to resume the session, which includes content of all buffers).

2. Copy all directories, sub-directories and files to the new device, keeping same names and permissions.

3. Optional: copy any file outside these directories that you refer to in your configuration (it’s not recommended to use files outside WeeChat directories).

4. Start WeeChat on the new device: `weechat` (or `weechat --upgrade` if you saved the session).

## 9. Desarrollo

### 9.1. ¿Cómo podría informar de errores, pedir nuevas funcionalidades o enviar parches?

See this page ↗.

### 9.2. Cuando ejecuto WeeChat bajo gdb, hay un error con la muestra de las conversaciones, ¿qué puedo hacer?

Cuando ejecuta WeeChat bajo gdb, puede tener este error:

    $ gdb /ruta/a/weechat
    (gdb) run
    [Thread debugging using libthread_db enabled]
    Cannot find new threads: generic error

Para solucionar esto, puede ejecutar gdb con este comando (reemplace la ruta a libpthread y WeeChat con las rutas de su sistema):

    $ LD_PRELOAD=/lib/libpthread.so.0 gdb /ruta/a/weechat
    (gdb) run

### 9.3. ¿Cual es la lista de plataformas para las que está disponible WeeChat? ¿Será portado a otros sistemas operativos?

WeeChat se ejecuta sin problemas en la mayoría de distribuciones Linux/BSD, GNU/Hurd, macOS y Windows (Cygwin y Windows Subsystem para Linux).

Hacemos todo lo posible para que pueda ser ejecutado en cuantas plataformas sea posible. La ayuda es bienvenida para algunos sistemas operativos en los que no podemos probar WeeChat.

### 9.4. Quiero ayudar a quienes desarrollan WeeChat. ¿Qué puedo hacer?

Hay muchas tareas que hacer (probar, escribir código, documentación, etc.)

Please contact us via IRC or mail, look at support page ↗.

### 9.5. ¿Puedo donar dinero u otras cosas a las personas que desarrollan WeeChat?

You can give us money to help development. Details on donation page ↗.