[[command_weechat_away]]
[command]*`away`* imposta o elimina lo stato di assenza::

----
/away  [-all] [<messaggio>]

     -all: imposta o elimina lo stato di assenza su tutti i server connessi
messaggio: messaggio di assenza (se non specificato, lo stato di assenza viene rimosso)
----

[[command_weechat_bar]]
[command]*`bar`* gestione delle barre::

----
/bar  list|listfull|listitems
      add <nome> <type>[,<condizione>] <posizione> <dimensione> <separatore> <item1>[,<item2>...]
      default [input|title|status|nicklist]
      del <nome>|-all
      set <nome> <opzione> <valore>
      hide|show|toggle <nome>
      scroll <nome> <finestra> <scroll_value>

         list: list all bars
     listfull: list all bars (verbose)
    listitems: list all bar items
          add: add a new bar
         name: name of bar (must be unique)
         type:   root: outside windows,
               window: inside windows, with optional conditions (see below)
    condition: condition(s) for displaying bar (only for type "window"):
                 active: on active window
               inactive: on inactive windows
               nicklist: on windows with nicklist
               other condition: see /help weechat.bar.xxx.conditions and /help eval
               without condition, the bar is always displayed
     position: bottom, top, left or right
         size: size of bar (in chars)
    separator: 1 for using separator (line), 0 or nothing means no separator
    item1,...: items for this bar (items can be separated by comma (space between items) or "+" (glued items))
      default: create a default bar (all default bars if no bar name is given)
          del: delete a bar (or all bars with -all)
          set: set a value for a bar property
       option: option to change (for options list, look at /set weechat.bar.<barname>.*)
        value: new value for option
         hide: hide a bar
         show: show an hidden bar
       toggle: hide/show a bar
       scroll: scroll bar
       window: window number (use '*' for current window or for root bars)
 scroll_value: value for scroll: 'x' or 'y' (optional), followed by '+', '-', 'b' (beginning) or 'e' (end), value (for +/-), and optional % (to scroll by % of width/height, otherwise value is number of chars)

Examples:
  create a bar with time, buffer number + name, and completion:
    /bar add mybar root bottom 1 0 [time],buffer_number+:+buffer_name,completion
  hide a bar:
    /bar hide mybar
  scroll nicklist 10 lines down on current buffer:
    /bar scroll nicklist * y+10
  scroll to end of nicklist on current buffer:
    /bar scroll nicklist * ye
----

[[command_weechat_buffer]]
[command]*`buffer`* gestione dei buffer::

----
/buffer  list
         clear [<number>|<name>|-merged|-all [<number>|<name>...]]
         move <number>|-|+
         swap <number1>|<name1> [<number2>|<name2>]
         merge <number>
         unmerge [<number>|-all]
         hide [<number>|<name>|-all [<number>|<name>...]]
         unhide [<number>|<name>|-all [<number>|<name>...]]
         renumber [<number1> [<number2> [<start>]]]
         close [<n1>[-<n2>]|<name>]
         notify <level>
         localvar
         set <property> <value>
         get <property>
         <number>|-|+|<name>

    list: list buffers (without argument, this list is displayed)
   clear: clear buffer content (number for a buffer, -merged for merged buffers, -all for all buffers, or nothing for current buffer)
    move: move buffer in the list (may be relative, for example -1); "-" = move to first buffer number, "+" = move to last buffer number + 1
    swap: swap two buffers (swap with current buffer if only one number/name given)
   merge: merge current buffer to another buffer (chat area will be mix of both buffers)
          (by default ctrl-x switches between merged buffers)
 unmerge: unmerge buffer from other buffers which have same number
    hide: hide the buffer
  unhide: unhide the buffer
renumber: renumber buffers (works only if option weechat.look.buffer_auto_renumber is off)
   close: close buffer (number/range or name is optional)
  notify: set notify level for current buffer: this level determines whether buffer will be added to hotlist or not:
               none: never
          highlight: for highlights only
            message: for messages from users + highlights
                all: all messages
              reset: reset to default value (all)
localvar: display local variables for current buffer
     set: set a property for current buffer
     get: display a property of current buffer
  number: jump to buffer by number, possible prefix:
          '+': relative jump, add number to current
          '-': relative jump, sub number to current
          '*': jump to number, using option "weechat.look.jump_current_to_previous_buffer"
       -: jump to first buffer number
       +: jump to last buffer number
    name: jump to buffer by (partial) name

Examples:
  clear current buffer:
    /buffer clear
  move buffer to number 5:
    /buffer move 5
  swap buffer 1 with 3:
    /buffer swap 1 3
  swap buffer #weechat with current buffer:
    /buffer swap #weechat
  merge with core buffer:
    /buffer merge 1
  unmerge buffer:
    /buffer unmerge
  close current buffer:
    /buffer close
  close buffers 5 to 7:
    /buffer close 5-7
  jump to #weechat:
    /buffer #weechat
  jump to next buffer:
    /buffer +1
  jump to last buffer number:
    /buffer +
----

[[command_weechat_color]]
[command]*`color`* definisce gli alias dei colori e visualizza la tavolozza dei colori::

----
/color  alias <color> <name>
        unalias <color>
        reset
        term2rgb <color>
        rgb2term <rgb> [<limit>]
        -o

   alias: add an alias for a color
 unalias: delete an alias
   color: color number (greater than or equal to 0, max depends on terminal, commonly 63 or 255)
    name: alias name for color (for example: "orange")
   reset: reset all color pairs (required when no more color pairs are available if automatic reset is disabled, see option weechat.look.color_pairs_auto_reset)
term2rgb: convert a terminal color (0-255) to RGB color
rgb2term: convert a RGB color to terminal color (0-255)
   limit: number of colors to use in terminal table (starting from 0); default is 256
      -o: send terminal/colors info to current buffer as input

Without argument, this command displays colors in a new buffer.

Examples:
  add alias "orange" for color 214:
    /color alias 214 orange
  delete color 214:
    /color unalias 214
----

[[command_weechat_command]]
[command]*`command`* esegui comando o plugin di WeeChat esplicito::

----
/command  [-buffer <name>] <plugin> <command>

-buffer: execute the command on this buffer
 plugin: execute the command from this plugin; 'core' for a WeeChat command, '*' for automatic plugin (it depends on the buffer where the command is executed)
command: command to execute (a '/' is automatically added if not found at beginning of command)
----

[[command_weechat_cursor]]
[command]*`cursor`* movimento libero del cursore sullo schermo per eseguire azioni su aree specifiche dello schermo::

----
/cursor  go chat|<barra>|<x>,<y>
         move up|down|left|right|area_up|area_down|area_left|area_right
         stop

  go: sposta il cursore su un'area di chat, una barra (usando il nome della barra) o le coordinate "x.y"
move: sposta il cursore con direzione
stop: interrompe la modalità cursore

Senza argomenti, il comando abilita/disabilita la modalità cursore

Quando il mouse è abilitato (consultare /help mouse), per default il click con il tasto centrale avvia la modalità cursore in questa posizione.

Esempi:
  vai alla lista nick:
    /cursor go nicklist
  vai alle coordinate x=10, y=5:
    /cursor go 10,5
----

[[command_weechat_debug]]
[command]*`debug`* attiva debug per core/plugin::

----
/debug  list
        set <plugin> <livello>
        dump [<plugin>]
        buffer|color|infolists|memory|tags|term|windows
        mouse|cursor [verbose]
        hdata [free]

     list: list plugins with debug levels
      set: set debug level for plugin
   plugin: name of plugin ("core" for WeeChat core)
    level: debug level for plugin (0 = disable debug)
     dump: save memory dump in WeeChat log file (same dump is written when WeeChat crashes)
   buffer: dump buffer content with hexadecimal values in log file
    color: display infos about current color pairs
   cursor: toggle debug for cursor mode
     dirs: display directories
    hdata: display infos about hdata (with free: remove all hdata in memory)
    hooks: display infos about hooks
infolists: display infos about infolists
     libs: display infos about external libraries used
   memory: display infos about memory usage
    mouse: toggle debug for mouse
     tags: display tags for lines
     term: display infos about terminal
  windows: display windows tree
----

[[command_weechat_eval]]
[command]*`eval`* evaluate expression::

----
/eval  [-n] <espressione>
       [-n] -c <espressione1> <operatore> <espressione2>

        -n: display result without sending it to buffer (debug mode)
        -c: evaluate as condition: use operators and parentheses, return a boolean value ("0" or "1")
expression: expression to evaluate, variables with format ${variable} are replaced (see below); many commands can be separated by semicolons
  operator: a logical or comparison operator:
            - logical operators:
                &&  boolean "and"
                ||  boolean "or"
            - comparison operators:
                ==  equal
                !=  not equal
                <=  less or equal
                <   less
                >=  greater or equal
                >   greater
                =~  is matching POSIX extended regex
                !~  is NOT matching POSIX extended regex

An expression is considered as "true" if it is not NULL, not empty, and different from "0".
The comparison is made using integers if the two expressions are valid integers.
To force a string comparison, add double quotes around each expression, for example:
  50 > 100      ==> 0
  "50" > "100"  ==> 1

Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
  1. a string with escaped chars (format: "esc:xxx" or "\xxx")
  2. a color (format: "color:xxx")
  3. an info (format: "info:name,arguments", arguments are optional)
  4. an option (format: "file.section.option")
  5. a local variable in buffer
  6. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
Format for hdata can be one of following:
  hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed)
  hdata[list].var1.var2...: start with a hdata using a list, for example:
    ${buffer[gui_buffers].full_name}: full name of first buffer in linked list of buffers
    ${plugin[weechat_plugins].name}: name of first plugin in linked list of plugins
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".

Examples (simple strings):
  /eval -n ${info:version}                 ==> 0.4.3
  /eval -n ${weechat.look.scroll_amount}   ==> 3
  /eval -n ${window}                       ==> 0x2549aa0
  /eval -n ${window.buffer}                ==> 0x2549320
  /eval -n ${window.buffer.full_name}      ==> core.weechat
  /eval -n ${window.buffer.number}         ==> 1
  /eval -n ${\t}                           ==> <tab>

Examples (conditions):
  /eval -n -c ${window.buffer.number} > 2  ==> 0
  /eval -n -c ${window.win_width} > 100    ==> 1
  /eval -n -c (8 > 12) || (5 > 2)          ==> 1
  /eval -n -c (8 > 12) && (5 > 2)          ==> 0
  /eval -n -c abcd =~ ^ABC                 ==> 1
  /eval -n -c abcd =~ (?-i)^ABC            ==> 0
  /eval -n -c abcd =~ (?-i)^abc            ==> 1
  /eval -n -c abcd !~ abc                  ==> 0
----

[[command_weechat_filter]]
[command]*`filter`* filtra messaggi nei buffer, per nascondere/mostrare in base a tag o regexp::

----
/filter  list
         enable|disable|toggle [<name>|@]
         add <name> <buffer>[,<buffer>...] <tags> <regex>
         rename <name> <new_name>
         del <name>|-all

   list: list all filters
 enable: enable filters (filters are enabled by default)
disable: disable filters
 toggle: toggle filters
   name: filter name ("@" = enable/disable all filters in current buffer)
    add: add a filter
 rename: rename a filter
    del: delete a filter
   -all: delete all filters
 buffer: comma separated list of buffers where filter is active:
         - this is full name including plugin (example: "irc.freenode.#weechat")
         - "*" means all buffers
         - a name starting with '!' is excluded
         - wildcard "*" is allowed
   tags: comma separated list of tags, for example "irc_join,irc_part,irc_quit"
         - logical "and": use "+" between tags (for example: "nick_toto+irc_action")
         - wildcard "*" is allowed
         - if tag starts with '!', then it is excluded and must NOT be in message
  regex: POSIX extended regular expression to search in line
         - use '\t' to separate prefix from message, special chars like '|' must be escaped: '\|'
         - if regex starts with '!', then matching result is reversed (use '\!' to start with '!')
         - two regular expressions are created: one for prefix and one for message
         - regex are case insensitive, they can start by "(?-i)" to become case sensitive

The default key alt+'=' toggles filtering on/off.

Tags most commonly used:
  no_filter, no_highlight, no_log, log0..log9 (log level),
  notify_none, notify_message, notify_private, notify_highlight,
  nick_xxx (xxx is nick in message), prefix_nick_ccc (ccc is color of nick),
  host_xxx (xxx is username + host in message),
  irc_xxx (xxx is command name or number, see /server raw or /debug tags),
  irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info.
To see tags for lines in buffers: /debug tags

Examples:
  use IRC smart filter on all buffers:
    /filter add irc_smart * irc_smart_filter *
  use IRC smart filter on all buffers except those with "#weechat" in name:
    /filter add irc_smart *,!*#weechat* irc_smart_filter *
  filter all IRC join/part/quit messages:
    /filter add joinquit * irc_join,irc_part,irc_quit *
  filter nicks displayed when joining channels or with /names:
    /filter add nicks * irc_366 *
  filter nick "toto" on IRC channel #weechat:
    /filter add toto irc.freenode.#weechat nick_toto *
  filter IRC join/action messages from nick "toto":
    /filter add toto * nick_toto+irc_join,nick_toto+irc_action *
  filter lines containing "weechat sucks" on IRC channel #weechat:
    /filter add sucks irc.freenode.#weechat * weechat sucks
----

[[command_weechat_help]]
[command]*`help`* visualizza l'aiuto su comandi e opzioni::

----
/help  -list|-listfull [<plugin> [<plugin>...]]
       <comando>
       <opzione>

    -list: elenca i comandi, per plugin (senza argomento, viene mostrata questa lista)
-listfull: elenca i comandi con la relativa descrizione, per plugin
   plugin: elenca i comandi per questo plugin
  comando: nome di un comando
  opzione: nome di un'opzione (usare /set per consultare la lista)
----

[[command_weechat_history]]
[command]*`history`* mostra la cronologia dei comandi del buffer::

----
/history  <clear
          valore>

 clear: pulisci cronologia
valore: numero delle voci nella cronologia da mostrare
----

[[command_weechat_input]]
[command]*`input`* funzioni per la riga di comando::

----
/input  <azioni> [<argomenti>]

list of actions:
  return: simulate key "enter"
  complete_next: complete word with next completion
  complete_previous: complete word with previous completion
  search_text: search text in buffer
  search_switch_case: switch exact case for search
  search_switch_regex: switch search type: string/regular expression
  search_switch_where: switch search in messages/prefixes
  search_previous: search previous line
  search_next: search next line
  search_stop: stop search
  delete_previous_char: delete previous char
  delete_next_char: delete next char
  delete_previous_word: delete previous word
  delete_next_word: delete next word
  delete_beginning_of_line: delete from beginning of line until cursor
  delete_end_of_line: delete from cursor until end of line
  delete_line: delete entire line
  clipboard_paste: paste from clipboard
  transpose_chars: transpose two chars
  undo: undo last command line action
  redo: redo last command line action
  move_beginning_of_line: move cursor to beginning of line
  move_end_of_line: move cursor to end of line
  move_previous_char: move cursor to previous char
  move_next_char: move cursor to next char
  move_previous_word: move cursor to previous word
  move_next_word: move cursor to next word
  history_previous: recall previous command in current buffer history
  history_next: recall next command in current buffer history
  history_global_previous: recall previous command in global history
  history_global_next: recall next command in global history
  jump_smart: jump to next buffer with activity
  jump_last_buffer_displayed: jump to last buffer displayed (before last jump to a buffer)
  jump_previously_visited_buffer: jump to previously visited buffer
  jump_next_visited_buffer: jump to next visited buffer
  hotlist_clear: clear hotlist
  grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds)
  grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds)
  grab_mouse: grab mouse event code
  grab_mouse_area: grab mouse event code with area
  set_unread: set unread marker for all buffers
  set_unread_current_buffer: set unread marker for current buffer
  switch_active_buffer: switch to next merged buffer
  switch_active_buffer_previous: switch to previous merged buffer
  zoom_merged_buffer: zoom on merged buffer
  insert: insert text in command line (escaped chars are allowed, see /help print)
  send: send text to the buffer
  paste_start: start paste (bracketed paste mode)
  paste_stop: stop paste (bracketed paste mode)

This command is used by key bindings or plugins.
----

[[command_weechat_key]]
[command]*`key`* associa/disassocia tasti::

----
/key  list|listdefault|listdiff [<contesto>]
      bind <tasto> [<comando> [<arg>]]
      bindctxt <contesto> <tasto> [<comando> <arg>]]
      unbind <tasto>
      unbindctxt <contesto> <chiave>
      reset <tasto>
      resetctxt <contesto> <tasto>
      resetall -yes [<contesto>]
      missing [<contesto>]

       list: list all current keys (without argument, this list is displayed)
listdefault: list default keys
   listdiff: list differences between current and default keys (keys added, redefined or deleted)
    context: name of context ("default" or "search")
       bind: bind a command to a key or display command bound to key (for context "default")
   bindctxt: bind a command to a key or display command bound to key, for given context
    command: command (many commands can be separated by semicolons)
     unbind: remove a key binding (for context "default")
 unbindctxt: remove a key binding for given context
      reset: reset a key to default binding (for context "default")
  resetctxt: reset a key to default binding, for given context
   resetall: restore bindings to the default values and delete ALL personal bindings (use carefully!)
    missing: add missing keys (using default bindings), useful after installing new WeeChat version

When binding a command to a key, it is recommended to use key alt+k (or Esc then k), and then press the key to bind: this will insert key code in command line.

For context "mouse" (possible in context "cursor" too), key has format: "@area:key" or "@area1>area2:key" where area can be:
          *: any area on screen
       chat: chat area (any buffer)
  chat(xxx): char area for buffer with name "xxx" (full name including plugin)
     bar(*): any bar
   bar(xxx): bar "xxx"
    item(*): any bar item
  item(xxx): bar item "xxx"
Wildcard "*" is allowed in key to match many mouse events.
A special value for command with format "hsignal:name" can be used for context mouse, this will send the hsignal "name" with the focus hashtable as argument.
Another special value "-" can be used to disable key (it will be ignored when looking for keys).

Examples:
  key alt-x to toggle nicklist bar:
    /key bind meta-x /bar toggle nicklist
  key alt-r to jump to #weechat IRC channel:
    /key bind meta-r /buffer #weechat
  restore default binding for key alt-r:
    /key reset meta-r
  key "tab" to stop search in buffer:
    /key bindctxt search ctrl-I /input search_stop
  middle button of mouse on a nick to retrieve info on nick:
    /key bindctxt mouse @item(buffer_nicklist):button3 /msg nickserv info ${nick}
----

[[command_weechat_layout]]
[command]*`layout`* manage buffers/windows layouts::

----
/layout  store [<name>] [buffers|windows]
         apply [<name>] [buffers|windows]
         leave
         del [<name>] [buffers|windows]
         rename <name> <new_name>

  store: store current buffers/windows in a layout
  apply: apply stored layout
  leave: leave current layout (does not update any layout)
    del: delete buffers and/or windows in a stored layout
         (if neither "buffers" nor "windows" is given after the name, the layout is deleted)
 rename: rename a layout
   name: name for stored layout (default is "default")
buffers: store/apply only buffers (order of buffers)
windows: store/apply only windows (buffer displayed by each window)

Without argument, this command displays stored layouts.
----

[[command_weechat_mouse]]
[command]*`mouse`* controllo mouse::

----
/mouse  enable|disable|toggle [<ritardo>]

 enable: abilita mouse
disable: disabilita mouse
 toggle: abilita/disabilita mouse
ritardo: ritardo (in secondi) dopo il quale viene ripristinato lo stato iniziale del mouse (utile per disattivarlo temporaneamente)

Lo stato del mouse viene salvato nell'opzione "weechat.look.mouse".

Esempi:
  abilita mouse:
    /mouse enable
  abilita/disabilita mouse per 5 secondi:
    /mouse toggle 5
----

[[command_weechat_mute]]
[command]*`mute`* esegue un comando in silenzio::

----
/mute  [-core | -current | -buffer <name>] <command>

   -core: no output on WeeChat core buffer
-current: no output on current buffer
 -buffer: no output on specified buffer
    name: full buffer name (examples: "irc.server.freenode", "irc.freenode.#weechat")
 command: command to execute silently (a '/' is automatically added if not found at beginning of command)

If no target is specified (-core, -current or -buffer), then default is to mute all buffers.

Examples:
  config save:
    /mute save
  message to current IRC channel:
    /mute -current msg * hi!
  message to #weechat channel:
    /mute -buffer irc.freenode.#weechat msg #weechat hi!
----

[[command_weechat_plugin]]
[command]*`plugin`* elenca/carica/scarica plugin::

----
/plugin  list|listfull [<nome>]
         load <nome_file> [<argomenti>]
         autoload [<argomenti>]
         reload [<nome> [<argomenti>]]
         unload [<nome>]

     list: elenca i plugin caricati
 listfull: elenca i plugin caricati (dettagliato)
     load: carica un plugin
 autoload: carica automaticamente un plugin nella directory di sistema o utente
   reload: ricarica un plugin (se non specificato, scarica e poi ricarica tutti i plugin)
   unload: scarica un plugin (se non specificato, scarica tutti i plugin
 nomefile: plugin (file) da caricare
     nome: nome di un plugin
argomenti: argomenti passati al plugin durante il caricamento

Senza argomento, questo comando elenca i plugin caricati.
----

[[command_weechat_print]]
[command]*`print`* display text on a buffer::

----
/print  [-buffer <number>|<name>] [-core] [-escape] [-date <date>] [-tags <tags>] [-action|-error|-join|-network|-quit] [<text>]
        -stdout|-stderr [<text>]
        -beep

 -buffer: display text in this buffer (default: buffer where command is executed)
   -core: alias of "-buffer core.weechat"
-current: display text on current buffer
 -escape: interpret escaped chars (for example \a, \07, \x07)
   -date: message date, format can be:
            -n: 'n' seconds before now
            +n: 'n' seconds in the future
             n: 'n' seconds since the Epoch (see man time)
            date/time (ISO 8601): yyyy-mm-ddThh:mm:ss, example: 2014-01-19T04:32:55
            time: hh:mm:ss (example: 04:32:55)
   -tags: comma-separated list of tags (see /help filter for a list of tags most commonly used)
    text: text to display (prefix and message must be separated by "\t", if text starts with "-", then add a "\" before)
 -stdout: display text on stdout (escaped chars are interpreted)
 -stderr: display text on stderr (escaped chars are interpreted)
   -beep: alias of "-stderr \a"

The options -action ... -quit use the prefix defined in options "weechat.look.prefix_*".

Following escaped chars are supported:
  \" \\ \a \b \e \f \n \r \t \v \0ooo \xhh \uhhhh \Uhhhhhhhh

Examples:
  display a reminder on core buffer with a highlight:
    /print -core -tags notify_highlight Reminder: buy milk
  display an error on core buffer:
    /print -core -error Some error here
  display message on core buffer with prefix "abc":
    /print -core abc\tThe message
  display a message on channel #weechat:
    /print -buffer irc.freenode.#weechat Message on #weechat
  display a snowman (U+2603):
    /print -escape \u2603
  send alert (BEL):
    /print -beep
----

[[command_weechat_proxy]]
[command]*`proxy`* gestione dei proxy::

----
/proxy  list
        add <nome> <tipo> <indirizzo> <porta> [<nomeutente> [<password>]]
        del <nome>|-all
        set <nome> <opzione> <valore>

    list: elenca tutti i proxy
     add: aggiunge un nuovo proxy
    nome: nome del proxy (deve essere unico)
    tipo: http, socks4 o socks5
 address: IP o nome host
    port: porta
username: nome utente (opzionale)
password: password (opzionale)
     del: elimina un proxy (o tutti i proxy con -all)
     set: imposta un valore per la proprietà di un proxy
  option: opzione da modificare (per una lista di opzioni, consultare /set weechat.proxy.<nomeproxy>.*)
   value: nuovo valore per l'opzione

Esempi:
  crea un proxy http, in esecuzione sull'host locale, porta 8888:
    /proxy add local http 127.0.0.1 8888
  crea un proxy http usando il protocollo IPv6:
    /proxy add local http ::1 8888
    /proxy set local ipv6 on
  crea un proxy socks5 con nomeutente/password:
    /proxy add myproxy socks5 sample.host.org 3128 myuser mypass
  elimina un proxy:
    /proxy del mioproxy
----

[[command_weechat_quit]]
[command]*`quit`* esce da WeeChat::

----
/quit  [-yes] [<argomenti>]

     -yes: richiesto se l'opzione option weechat.look.confirm_quit è abilitata
argomenti: testo inviato con il segnale "quit"
           (ad esempio il plugin irc usa questo testo per inviare il messaggio di uscita al server)
----

[[command_weechat_reload]]
[command]*`reload`* ricarica i file di configurazione da disco::

----
/reload  [<file> [<file....>]]

file: file di configurazione da ricaricare (senza estensione ".conf")

Senza argomento, vengono ricaricati tutti i file (WeeChat e plugin).
----

[[command_weechat_repeat]]
[command]*`repeat`* esegue un comando più volte::

----
/repeat  [-interval <ritardo>] <numero> <comando>

ritardo: ritardo tra l'esecuzione dei comandi (in millisecondi)
 numero: numero di volte in cui eseguire il comando
comando: comando da eseguire (una '/' viene aggiunta automaticamente se non viene trovata all'inizio del comando)

Tutti i comandi sono eseguiti sul buffer su cui viene dato il comando.

Esempio:
  scorre due pagine in alto:
    /repeat 2 /window page_up
----

[[command_weechat_save]]
[command]*`save`* salva i file di configurazione su disco::

----
/save  [<file> [<file....>]]

file: file di configurazione da salvare (senza estensione ".conf")

Senza argomento, vengono salvati tutti i file (WeeChat e plugin).
----

[[command_weechat_secure]]
[command]*`secure`* gestione dei dati sensibili (password o file privati cifrati nel file sec.conf)::

----
/secure  passphrase <chiave di cifratura>|-delete
         decrypt <chiave di cifratura|-discard
         set <nome> <valore>
         del <nome>

passphrase: change the passphrase (without passphrase, data is stored as plain text in file sec.conf)
   -delete: delete passphrase
   decrypt: decrypt data still encrypted (it happens only if passphrase was not given on startup)
  -discard: discard all data still encrypted
       set: add or change secured data
       del: delete secured data

Without argument, this command displays secured data in a new buffer.

When a passphrase is used (data encrypted), it is asked by WeeChat on startup.
It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade).

Secured data with format ${sec.data.xxx} can be used in:
  - command line argument "--run-command"
  - options weechat.startup.command_{before|after}_plugins
  - proxy options: username, password
  - irc server options: autojoin, command, password, sasl_{username|password}, username, realname
  - option relay.network.password
  - command /eval.

Examples:
  set a passphrase:
    /secure passphrase this is my passphrase
  encrypt freenode SASL password:
    /secure set freenode mypassword
    /set irc.server.freenode.sasl_password "${sec.data.freenode}"
  encrypt oftc password for nickserv:
    /secure set oftc mypassword
    /set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}"
  alias to ghost the nick "mynick":
    /alias ghost /eval /msg -server freenode nickserv ghost mynick ${sec.data.freenode}
----

[[command_weechat_set]]
[command]*`set`* set config options and environment variables::

----
/set  [<option> [<value>]]
      diff [<option> [<option>...]]
      env [<variable> [<value>]]

option: name of an option (wildcard "*" is allowed)
 value: new value for option, according to type:
          boolean: on, off or toggle
          integer: number, ++number or --number
           string: any string ("" for empty string)
            color: color name, ++number or --number
        Note: for all types, you can use null to remove option value (undefined value). This works only for some special plugin variables.
  diff: display only changed options
   env: display or set an environment variable (use value "" to unset a variable)

Examples:
  display options about highlight:
    /set *highlight*
  add a word to highlight:
    /set weechat.look.highlight "word"
  display changed options:
    /set diff
  display changed options in irc plugin:
    /set diff irc.*
  display value of environment variable LANG:
    /set env LANG
  set environment variable LANG and use it:
    /set env LANG fr_FR.UTF-8
    /upgrade
  unset environment variable ABC:
    /set env ABC ""
----

[[command_weechat_unset]]
[command]*`unset`* annulla/ripristina opzione::

----
/unset  <option>
        -mask <option>

option: name of an option
 -mask: use a mask in option (wildcard "*" is allowed to mass-reset options, use carefully!)

According to option, it's reset (for standard options) or removed (for optional settings, like server values).

Examples:
  reset one option:
    /unset weechat.look.item_time_format
  reset all color options:
    /unset -mask weechat.color.*
----

[[command_weechat_upgrade]]
[command]*`upgrade`* aggiorna WeeChat senza disconnettere dai server::

----
/upgrade  [<path_del_binario>|-quit]

path_to_binary: path to WeeChat binary (default is current binary)
        -dummy: do nothing (option used to prevent accidental completion with "-quit")
         -quit: close *ALL* connections, save session and quit WeeChat, which makes possible a delayed restoration (see below)

This command upgrades and reloads a running WeeChat session. The new WeeChat binary must have been compiled or installed with a package manager before running this command.

Note: SSL connections are lost during upgrade, because reload of SSL sessions is currently not possible with GnuTLS. There is automatic reconnection after upgrade.

Upgrade process has 4 steps:
  1. save session into files for core and plugins (buffers, history, ..)
  2. unload all plugins (configuration files (*.conf) are written on disk)
  3. save WeeChat configuration (weechat.conf)
  4. execute new WeeChat binary and reload session.

With option "-quit", the process is slightly different:
  1. close *ALL* connections (irc, xfer, relay, ...)
  2. save session into files (*.upgrade)
  3. unload all plugins
  4. save WeeChat configuration
  5. quit WeeChat
Then later you can restore session with command: weechat --upgrade
IMPORTANT: you must restore the session with exactly same configuration (files *.conf).
It is possible to restore WeeChat session on another machine if you copy the content of directory "~/.weechat".
----

[[command_weechat_uptime]]
[command]*`uptime`* mostra l'uptime di WeeChat::

----
/uptime  [-o | -ol]

 -o: invia l'uptime al buffer corrente come input (stringa in inglese)
-ol: invia l'uptime al buffer corrente come input (stringa tradotta)
----

[[command_weechat_version]]
[command]*`version`* mostra la versione e la data di compilazione di WeeChat::

----
/version  [-o | -ol]

 -o: invia la versione al buffer corrente come input (stringa inglese)
-ol: invia la versione al buffer corrente come input (stringa tradotta)
----

[[command_weechat_wait]]
[command]*`wait`* pianifica l'esecuzione di un comando::

----
/wait  <numero>[<unità>] <comando>

 numero: tempo di attesa (numero intero)
  unità: valori opzionali sono:
           ms: millisecondi
            s: secondi (predefinito)
            m: minuti
            h: ore
comando: comando da eseguire (o testo da inviare al buffer se il comando non inizia con '/')

Nota: il comando viene eseguito sui buffer dove /wait è stato eseguito (se il buffer non viene trovato (per esempio se è stato chiuso prima dell'esecuzione), allora il comando verrà eseguito sul buffer core di WeeChat)

Esempi:
  entra nel canale tra 10 secondi:
    /wait 10 /join #test
  imposta assenza tra 15 minuti:
    /wait 15m /away -all Sono assente
  scrive 'ciao' tra 2 minuti:
    /wait 2m ciao
----

[[command_weechat_window]]
[command]*`window`* gestione delle finestre::

----
/window  list
         -1|+1|b#|up|down|left|right [-window <number>]
         <number>
         splith|splitv [-window <number>] [<pct>]
         resize [-window <number>] [+/-]<pct>
         balance
         merge [-window <number>] [all]
         page_up|page_down [-window <number>]
         refresh
         scroll [-window <number>] [+/-]<value>[s|m|h|d|M|y]
         scroll_horiz [-window <number>] [+/-]<value>[%]
         scroll_up|scroll_down|scroll_top|scroll_bottom|scroll_beyond_end|scroll_previous_highlight|scroll_next_highlight|scroll_unread [-window <number>]
         swap [-window <number>] [up|down|left|right]
         zoom[-window <number>]
         bare [<delay>]

         list: list opened windows (without argument, this list is displayed)
           -1: jump to previous window
           +1: jump to next window
           b#: jump to next window displaying buffer number #
           up: switch to window above current one
         down: switch to window below current one
         left: switch to window on the left
        right: switch to window on the right
       number: window number (see /window list)
       splith: split current window horizontally
       splitv: split current window vertically
       resize: resize window size, new size is <pct> percentage of parent window
      balance: balance the sizes of all windows
        merge: merge window with another (all = keep only one window)
      page_up: scroll one page up
    page_down: scroll one page down
      refresh: refresh screen
       scroll: scroll a number of lines (+/-N) or with time: s=seconds, m=minutes, h=hours, d=days, M=months, y=years
 scroll_horiz: scroll horizontally a number of columns (+/-N) or percentage of window size (this scrolling is possible only on buffers with free content)
    scroll_up: scroll a few lines up
  scroll_down: scroll a few lines down
   scroll_top: scroll to top of buffer
scroll_bottom: scroll to bottom of buffer
scroll_beyond_end: scroll beyond the end of buffer
scroll_previous_highlight: scroll to previous highlight
scroll_next_highlight: scroll to next highlight
scroll_unread: scroll to unread marker
         swap: swap buffers of two windows (with optional direction for target window)
         zoom: zoom on window
         bare: toggle bare display (with optional delay in seconds for automatic return to standard display mode)

For splith and splitv, pct is a percentage which represents size of new window, computed with current window as size reference. For example 25 means create a new window with size = current_size / 4

Examples:
  jump to window displaying buffer #1:
    /window b1
  scroll 2 lines up:
    /window scroll -2
  scroll 2 days up:
    /window scroll -2d
  scroll to beginning of current day:
    /window scroll -d
  zoom on window #2:
    /window zoom -window 2
  enable bare display for 2 seconds:
    /window bare 2
----

