Skip to content

Instantly share code, notes, and snippets.

@ShadowRZ
Last active November 10, 2023 12:38
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ShadowRZ/8db83c8d8dfc4a8f90c2d4e252c2c30b to your computer and use it in GitHub Desktop.
Save ShadowRZ/8db83c8d8dfc4a8f90c2d4e252c2c30b to your computer and use it in GitHub Desktop.
WeeChat 上手指南

WeeChat 上手手册

翻译者:

1. 启动 WeeChat

X 之下一个推荐的(但不是必须的)终端模拟器是 rxvt-unicode: 它有很好的 UTF-8 支持,并且在默认键位下毫无问题~

在你的 Shell 运行:

$ weechat

2. 在线帮助 / 设置

WeeChat 有所有指令的帮助,只需输入:

/help

要得到特定指令的帮助,输入:

/help command

要设置选项,输入:

/set config.section.option valve

config 指配置名称(对于核心就是 weechat,或插件名),section 指此配置所属节,option 即设置名)

WeeChat 会立即使用新值(你在更改配置后*永不*需要重启 WeeChat)

你可以用部分名和在前或后的通配符"*" 来显示全部包含这些字符的设置,例 如:

  • 显示所有设置(WeeChat 和插件):

/set
  • 显示 WeeChat 的设置:

/set weechat.*
  • 显示 IRC 插件设置:

/set irc.*

你可以用 /help 显示设置的帮助,例如:

/help weechat.look.highlight

当 WeeChat 结束时所有设置都会被保存(或者用 /save 指令强制写入设置)。

Important
手工编辑配置文件是 不被建议 的,因为 WeeChat 可能随时写入它 们(如当 /quit 时)且做了任何修改后你必须运行 /reload 指令(有丢失 没有用 /save 保存的其他更改的风险)。你可以使用 /set 指令,它会检 查值并立刻应用更改。

3. 核心 vs 插件

WeeChat"核心"只是用来在屏幕上显示数据并与用户交互,那意味着没有插件的 WeeChat 核心毫无用处(忠诚的用户们:IRC 在版本 =< 0.2.6 时是核心的一部 分)。

类似 IRC 的网路协议都在独立的插件提供。

/plugin 指令来加载插件,你应该在列表中看到"irc"和其他插件。

4. 添加 IRC 服务器

你可以用 /server 指令添加 IRC 服务器,例如:

/server add freenode chat.freenode.net

一如往常,如果你不知所措的话,可以查看帮助文档:

/help server

5. 设置自定义 IRC 服务器设置

WeeChat 对所有服务器使用默认设置("后备值"),如果你不对一个服务器设置 一个值。这些默认值就是"irc.server_default.*"。

对于每个服务器设置,如果定义了的话 WeeChat 就使用这个值(而非 "null")。 否则 WeeChat 使用默认值("irc.server_default.xxx")

比如就有默认昵称(基于你的 un*x 登陆名),你可以对 freenode 服务器用下 列指令覆盖它们:

/set irc.server.freenode.nicks "mynick,mynick2,mynick3,mynick4,mynick5"

要设置用户名和真实姓名:

/set irc.server.freenode.username "My user name"
/set irc.server.freenode.realname "My real name"

要带上 SSL 连接:

/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on

如果服务器支持 SASL,你可以用它来验证(你会在加入频道前被验证):

/set irc.server.freenode.sasl_username "mynick"
/set irc.server.freenode.sasl_password "xxxxxxx"

要在连接服务器后运行指令,例如向 nickserv 验证(只在你不用 SASL 验证的 时候):

/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
Note
在设置 command 里的许多指令可以用 ; (分号)分隔。

如果你想在配置文件里保护你的密码,你可以使用安全数据。

首先设置密码:

/secure passphrase this is my secret passphrase

然后用你的 freenode 密码添加安全数据:

/secure set freenode_password xxxxxxx

然后你就可以用 ${sec.data.freenode_password} 在上面提到的 IRC 设置里 代替你的密码,例如:

/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"

要在连接服务器后自动加入频道:

/set irc.server.freenode.autojoin "#channel1,#channel2"
Tip
你可以用 kbd:[Tab] 补全设置名字和值并用 kbd:[Shift+Tab] 部分补全(在像 设置名这么长的词时很有用)

要移除一个服务器设置的值,并改用默认设置,例如使用默认昵称 (irc.server_default.nicks):

/set irc.server.freenode.nicks null

其他设置:你可以设置用以下指令设置其他设置("xxx"是设置名):

/set irc.server.freenode.xxx value

6. 连接 IRC 服务器和自动加入频道

/connect freenode
Note
这个指令可以用来在无需用 /server 添加服务器的清况下建立并连接到一个 新服务器(我应该再告诉你你可以用 /help connect 查看这个指令的帮助, 吗?)

默认下,服务器与 WeeChat _核心_缓存区合并。要在_核心_缓存区和服务器缓 存区切换,你可以用 kbd:[Ctrl+x]。

也可以关闭服务器缓存区自动合并以有独立的服务器缓存区:

/set irc.look.server_buffer independent

7. 加入 / 离开 IRC 频道

加入频道:

/join #channel

离开频道(保持缓存区开启):

/part [quit message]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment