mirror of
https://github.com/weechat/weechat.git
synced 2026-06-12 22:24:47 +02:00
Compare commits
872 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| e5a159c74f | |||
| b74aa71442 | |||
| 8fb7987633 | |||
| bb76a5d266 | |||
| db21a0da90 | |||
| 7508337240 | |||
| 98375b8ffc | |||
| d6d83474c7 | |||
| 43bafa59d8 | |||
| e8c255770f | |||
| 59a4142b00 | |||
| dbc59965ac | |||
| 6ffebec1a6 | |||
| 1c7b431bc8 | |||
| 749bc26926 | |||
| 9ac9dc7023 | |||
| bbf55b734c | |||
| 2095887be9 | |||
| fa05f75b74 | |||
| a96d2c28fb | |||
| 4a115fdedd | |||
| 3a0e54d236 | |||
| 24fe646c4e | |||
| 8cf5848116 | |||
| 3e1a5b4447 | |||
| 1fb82b4062 | |||
| d4dc1467c9 | |||
| c64bdeaed3 | |||
| 37ed420108 | |||
| b825ce49c2 | |||
| 33bf2dec43 | |||
| 0fe3661eab | |||
| aee4d283c9 | |||
| d3cdccc274 | |||
| 42a0a19828 | |||
| 8788fcedc8 | |||
| 84e6e84347 | |||
| 38efd63012 | |||
| 031819173b | |||
| de3d670ca7 | |||
| d2394f6432 | |||
| 2c4bad8120 | |||
| 8ac67ff540 | |||
| b8ef7e2f65 | |||
| 21ca625f10 | |||
| 9644df21ad | |||
| 17ae43aa03 | |||
| 487406cfd9 | |||
| cd4db84feb | |||
| 55a796f30b | |||
| d81813cd6a | |||
| 2006c2c940 | |||
| f3d2f9bbe1 | |||
| 2c61a24413 | |||
| 10501a34fe | |||
| 99dcdae5b0 | |||
| 86f110db98 | |||
| a1a9303b14 | |||
| 5ef4731c62 | |||
| 007958e82c | |||
| 5876a8335f | |||
| cefed25912 | |||
| 79438c72e1 | |||
| d99fe0bc76 | |||
| 540ff62c60 | |||
| 3e8580b5e5 | |||
| 0f1f9bc87f | |||
| f0572474d4 | |||
| d4d8117461 | |||
| 4d8df89bb5 | |||
| b7f3127bf8 | |||
| f69ef840e0 | |||
| e46d2567ea | |||
| 8be5759ef7 | |||
| 78317f8b55 | |||
| d16640130e | |||
| 95cf2aa956 | |||
| dc367a83f6 | |||
| 2a2428902b | |||
| 51ed9ec93e | |||
| 46033a7ee9 | |||
| a2e43a732e | |||
| 674f52bf58 | |||
| 0af960dbde | |||
| 07b54a9932 | |||
| 9fceaa465d | |||
| 94555e043c | |||
| f02b172716 | |||
| 9b1184e180 | |||
| f39553152f | |||
| 89f49040f3 | |||
| 95d0b89d1d | |||
| 01f9bcbaba | |||
| 6fb6fad7e9 | |||
| 0e6497612c | |||
| a794bf39bb | |||
| 5f543f26cc | |||
| 0d8ced6c32 | |||
| db28e2133d | |||
| bab175f5b4 | |||
| d3b42fae83 | |||
| ef41998179 | |||
| 05e65cdd31 | |||
| 872ff1cc6d | |||
| 8123cb3e0b | |||
| 15e11ecc0c | |||
| 827db6dc31 | |||
| 44e0414970 | |||
| 9a19cc5d59 | |||
| 3289bd2882 | |||
| 6e75f93e1f | |||
| 13482b38d0 | |||
| 6004139098 | |||
| 116f533e0d | |||
| c943d3507f | |||
| 869279e9b6 | |||
| 947ca33c14 | |||
| 44ec7e8cfa | |||
| 4629b17173 | |||
| e5e3a9d2da | |||
| fbbed9fbf7 | |||
| 310b4dd2a0 | |||
| 55f1655064 | |||
| 55aa40e087 | |||
| 68f395d433 | |||
| 22a36665e3 | |||
| 65e08ffe07 | |||
| 8781187771 | |||
| 197a7a01e4 | |||
| 47e71a1bbd | |||
| 3a4a9459e7 | |||
| cd6b83470e | |||
| 3f9c46468c | |||
| 9a286c65c6 | |||
| aadd0772fe | |||
| bb03e18425 | |||
| 5d809df6ed | |||
| 74ba21a8c4 | |||
| 02bdf854bc | |||
| 8c66070136 | |||
| 9cfdb4a324 | |||
| c1e65e8edd | |||
| f81a0dc4d9 | |||
| d06f1e8486 | |||
| ffb6cc3208 | |||
| dc779b5179 | |||
| 7228262591 | |||
| e4f93a7f30 | |||
| fd27faf899 | |||
| 7486ea6dc1 | |||
| 9e9e252ff3 | |||
| db368b5824 | |||
| 214e3cb1c2 | |||
| b4a14ef1dd | |||
| 40ff9beb10 | |||
| d359e8135e | |||
| 8700e0bb36 | |||
| 601bd7e0b8 | |||
| d3a9ce29fc | |||
| f39c6a58d0 | |||
| 4068dc8da5 | |||
| 7051c0fc2b | |||
| 7f8e5b892d | |||
| e0db08c782 | |||
| 6fbfb2f476 | |||
| a2bb57bf82 | |||
| ba7ff87d19 | |||
| d7c8b16c4f | |||
| d0c857934b | |||
| e8c59e1f5b | |||
| ec86c33789 | |||
| 608f56020d | |||
| 9259442dbf | |||
| bf3241208b | |||
| 28d6b71d9e | |||
| 083662cb34 | |||
| bf9cf3875f | |||
| fc2f564950 | |||
| efaf88d857 | |||
| 05a9457504 | |||
| 3110740777 | |||
| a62f8f6f75 | |||
| 05eb897771 | |||
| 113f93e5db | |||
| f2aef8c13c | |||
| 3983f01ee7 | |||
| 0ebf3dbede | |||
| 13fb3649dd | |||
| 6a88bbb4cc | |||
| b018f8d5c8 | |||
| 574f1837f9 | |||
| 5172f20217 | |||
| ab7c4c0147 | |||
| 28fc2e7cbf | |||
| 2d6ab2ec0a | |||
| c44b79dce7 | |||
| ab12d384ea | |||
| c775242a4c | |||
| 619f09f2d6 | |||
| e6f65122a9 | |||
| 50167ca96f | |||
| b54d06630d | |||
| c13aa86c79 | |||
| bda7bb64d2 | |||
| dee7313fcc | |||
| 305608ce89 | |||
| f8915129bf | |||
| 0e57d01076 | |||
| 286338f627 | |||
| 9bbab7ff02 | |||
| 6670fd2a87 | |||
| 0d6b18bc54 | |||
| 8c49475f75 | |||
| 08e0d3912a | |||
| 532d46bb93 | |||
| b66298d369 | |||
| 5c6fc8c4bd | |||
| ee96b9b867 | |||
| 1c022d3bda | |||
| dd2b19ec42 | |||
| df0506dbdf | |||
| 93eafae2fe | |||
| 7fb1dd94cc | |||
| c8a8680d60 | |||
| af067f18e2 | |||
| 454c0acbcf | |||
| 498194f6fc | |||
| d5c391b1ee | |||
| 20e219a2c9 | |||
| abb7d3642a | |||
| 7f2cce2970 | |||
| 7a0fdd1966 | |||
| fae6bbb40e | |||
| 5bb56e0f57 | |||
| 5de21ddfc0 | |||
| 778594d68f | |||
| 37d4d2ac65 | |||
| 2376b6aa5e | |||
| 5a24ffd951 | |||
| a1cc70b752 | |||
| 1cedb78348 | |||
| 0123abb83e | |||
| 463517bd1e | |||
| 46f3bee2ff | |||
| d80b27af64 | |||
| e2d44181d7 | |||
| ba4f762964 | |||
| dad3e6099c | |||
| 5208552a98 | |||
| 07721d3dc1 | |||
| d236171035 | |||
| a4d560e0aa | |||
| 7bf0a5c734 | |||
| 10a8732d41 | |||
| fd017ce474 | |||
| 1c0d8f5fd3 | |||
| 160ffe8e11 | |||
| 4c7b898666 | |||
| 391d0a18a1 | |||
| a5db952842 | |||
| 7cb5147e74 | |||
| a5ffd8b800 | |||
| 66384544b5 | |||
| c88428fb41 | |||
| 71991fcc73 | |||
| b82a9c44fd | |||
| 637c7bb3d4 | |||
| 268cb53238 | |||
| 9e721d0ad5 | |||
| 287d5146b4 | |||
| 1cfb5e5d1e | |||
| 866fef2595 | |||
| 2dabce9ac8 | |||
| f33e9b6737 | |||
| 50cea48b51 | |||
| ae891ab322 | |||
| 0a14441d35 | |||
| f2310dae42 | |||
| 67a364550f | |||
| 64592951b5 | |||
| 3a38879590 | |||
| d447755b1f | |||
| 2564fa2882 | |||
| 928ed152ed | |||
| 7014322b2e | |||
| 9b6606394c | |||
| 198872c027 | |||
| c8776b14f6 | |||
| 35c26fb001 | |||
| eca9c89747 | |||
| aed64f5020 | |||
| 266233636d | |||
| be753046b7 | |||
| 15f5bc7944 | |||
| 27a480c7d7 | |||
| fe9768f484 | |||
| aace0a1a58 | |||
| 792739ee42 | |||
| 8b11fa86cd | |||
| 28d013b704 | |||
| 5fffaf89e4 | |||
| 006964c4dc | |||
| 05d31b476b | |||
| 50edb33f1c | |||
| c82358c17c | |||
| d64050bafb | |||
| 1556e4ac5a | |||
| a3924a27a0 | |||
| cbadaecc4f | |||
| 7cad1230e6 | |||
| 997559e55b | |||
| d98940fecb | |||
| f2ad57ceb9 | |||
| d4650183ba | |||
| a6c40d2190 | |||
| 563a6db02d | |||
| 5ddd72c0e9 | |||
| 80b86ea647 | |||
| bbcdb90fbb | |||
| 253b25db03 | |||
| 4c9e7ed09e | |||
| 12043622e6 | |||
| f4a1baaed3 | |||
| 9303f5abd9 | |||
| 1b8ad40b81 | |||
| 2f177dd188 | |||
| edfc415e9e | |||
| 8bb5e33348 | |||
| b3cf7658f7 | |||
| 2081fa54af | |||
| 2da2172593 | |||
| 018a4bda53 | |||
| 14c6ef3d83 | |||
| 9c5837d143 | |||
| 5e08f9876a | |||
| ee66fc3a85 | |||
| 13472adfff | |||
| 60b374901f | |||
| d8a3a0137c | |||
| f66e55564e | |||
| 6e83225e6f | |||
| f03622d141 | |||
| 4f20417cb2 | |||
| f15337ea9a | |||
| 49221b56b9 | |||
| 75f71cd311 | |||
| 505a9f937a | |||
| 08d3e3b2b7 | |||
| fb4d947a8c | |||
| 2ca6420e17 | |||
| cde0d5f7a5 | |||
| ba5b744397 | |||
| 1447c7ad83 | |||
| b57d19c893 | |||
| 9063546acc | |||
| f1cb767001 | |||
| 634eac455d | |||
| 2f90fc0299 | |||
| d2bd952210 | |||
| 9fbe18eb27 | |||
| 2ca37a9128 | |||
| a73e9eb8ca | |||
| a3ddeba9f9 | |||
| baa91a45a8 | |||
| 6124bf3c92 | |||
| 6a8ec55118 | |||
| 4b6038975c | |||
| 5e63161b5b | |||
| 32c99047f4 | |||
| 2ef9509dbe | |||
| c7cb025582 | |||
| 96288d69e2 | |||
| aad86a1955 | |||
| dcbf534d53 | |||
| c8329da6e0 | |||
| 3e1b621f52 | |||
| 56cb9e50af | |||
| 9b17f1fee4 | |||
| cee4bf7e3c | |||
| 027ecc6b0e | |||
| 22ecfda777 | |||
| 2ae974f5c3 | |||
| 99d565f6df | |||
| 5546b0af0e | |||
| 741343e9aa | |||
| 0e9710de81 | |||
| 32ae101096 | |||
| 3a5a2abeea | |||
| de567aa1d3 | |||
| a5e470a16a | |||
| b3ce8b5282 | |||
| 31b15c1423 | |||
| 60c9beab2b | |||
| 10a1c9bda4 | |||
| 6f8f547242 | |||
| 2509486c6a | |||
| df9c32b0c3 | |||
| c577da0375 | |||
| 4e1d40034e | |||
| a1a4f337ff | |||
| e412a34668 | |||
| 3c7d4b0516 | |||
| 572bcc2c59 | |||
| 3360cadd55 | |||
| f51f3dbe29 | |||
| efecdf5d45 | |||
| 76b75ad5cd | |||
| 74ceaa1a68 | |||
| 12a4519448 | |||
| 033fbf63b0 | |||
| 1029780ce2 | |||
| 0ea0b24563 | |||
| ec816b4be5 | |||
| 7c1ea1cb32 | |||
| 27f554659e | |||
| 5389ceb237 | |||
| 03e0122155 | |||
| 8d12187f3d | |||
| bf8c85f422 | |||
| 179822fb91 | |||
| 5e712d7145 | |||
| 8ea41d91c9 | |||
| 7a88e007a5 | |||
| 257fe7362a | |||
| 52cc1165c4 | |||
| 0be96b7c66 | |||
| 9d4119232f | |||
| adcc04cc5a | |||
| e5996f626b | |||
| d8c7cf41b5 | |||
| 5123483c33 | |||
| 33a3c485be | |||
| 7b4d48c46d | |||
| 4ee82d1c70 | |||
| a1a4d627e1 | |||
| 5a5c2cbd1a | |||
| 2bd3681eef | |||
| 604415e19e | |||
| e653ee04d2 | |||
| 3c737ca304 | |||
| 1f83df7a18 | |||
| eda8ad9de5 | |||
| df6f32a7bb | |||
| a2a733fc36 | |||
| 56edeba7fc | |||
| 15392e4a81 | |||
| cb856a7f3a | |||
| 69c457287d | |||
| 5458382bb8 | |||
| 849105ebd6 | |||
| cbc4073815 | |||
| c4b4d80936 | |||
| f0898eae64 | |||
| 9378a7572b | |||
| 3cd97b5131 | |||
| d8b8bf5a84 | |||
| 238c17bd0e | |||
| 1206e9e5c3 | |||
| f3b4336bc4 | |||
| 55df7805c2 | |||
| 9102e4f552 | |||
| 57ad90c3c0 | |||
| ed9104fbea | |||
| 68a3aca643 | |||
| 6fe354439c | |||
| 63b93a8147 | |||
| ad5fa7c99f | |||
| 9548a4cf74 | |||
| 301f0942c6 | |||
| fb57ad147e | |||
| 3ee2f40fb3 | |||
| edd1971ae8 | |||
| a6826af796 | |||
| bd21b25bad | |||
| 48a4a043b7 | |||
| 3b9217e460 | |||
| eaacd805ae | |||
| e9d303c4fa | |||
| fb1bf569a9 | |||
| e00937875d | |||
| 5dbf24d179 | |||
| 9d7cac2396 | |||
| 04977fa9da | |||
| 4aa2b86ee2 | |||
| f3fc1f5f85 | |||
| a7d3f9d4e8 | |||
| 91d32be93c | |||
| a76eedcd1f | |||
| 7742b48098 | |||
| 4d0245711d | |||
| 7d1b557627 | |||
| 5b3929b321 | |||
| 8852e9fd0c | |||
| d5b68e6b75 | |||
| 2446e5814f | |||
| 885b470d51 | |||
| 97b809d164 | |||
| 97bdd51112 | |||
| 75b9ba03a1 | |||
| 5fb7ebdfce | |||
| 6fc6166cfe | |||
| 12be3b8c33 | |||
| 5b5626a82b | |||
| 968d17b806 | |||
| 2de272ee6c | |||
| 009a2889e3 | |||
| 86e3c672bb | |||
| 254c1a3e8b | |||
| fa3cd3dd08 | |||
| 89b28e362c | |||
| cf27302dac | |||
| da8b7a85bb | |||
| 964d3e54d1 | |||
| 960b633517 | |||
| addd80e7b7 | |||
| 8e676edd1a | |||
| 415ea95eb4 | |||
| ede09a843c | |||
| 5442612bc9 | |||
| 2b12b4077a | |||
| 61c3169068 | |||
| 5b48eef4fe | |||
| 9b75118b83 | |||
| def564c5af | |||
| 57ea636fd6 | |||
| 84d8120060 | |||
| 20866a0457 | |||
| 79d50837c9 | |||
| 791b910a77 | |||
| d89c4f559c | |||
| 0be4020b68 | |||
| 72a9b87c1c | |||
| 88d59de940 | |||
| 6ff46776a4 | |||
| 77d96fec23 | |||
| 9404097756 | |||
| a16616637a | |||
| 2b1582c816 | |||
| efea27bb24 | |||
| 6052c1a5c0 | |||
| 3199877bc0 | |||
| b0d4b9aaba | |||
| 6a1425d5ba | |||
| 64b52da406 | |||
| 5ae4af1549 | |||
| f79929b382 | |||
| a4507539fb | |||
| 5b87e0c544 | |||
| 1746e832ec | |||
| ed24930547 | |||
| 7c83ee02f2 | |||
| 8dc75564c2 | |||
| 5b7f55090b | |||
| de61048cd2 | |||
| 252d1bbc9d | |||
| 0355f3fc1a | |||
| 09d871deb4 | |||
| 503a3cb755 | |||
| c127d1693a | |||
| 134f4374f8 | |||
| ab916d3d90 | |||
| 3d54365d67 | |||
| 3c920f9a80 | |||
| 954f943e8e | |||
| bba300e191 | |||
| 7954dbc1f4 | |||
| b108e97085 | |||
| dccf605e66 | |||
| b585ec09f8 | |||
| 5253478279 | |||
| 8a11a18dc5 | |||
| 9432b44a2b | |||
| 1ac800906b | |||
| 5d4adf8010 | |||
| 689a2c1705 | |||
| 9bd737ae1a | |||
| f1761b66c6 | |||
| 2205bb6b45 | |||
| e84a3676f6 | |||
| 253598d83c | |||
| ff6bc95429 | |||
| 61a6b0c705 | |||
| ff8beb1918 | |||
| 59853d9b30 | |||
| a48a615613 | |||
| 5a59482cc8 | |||
| 2478a4187a | |||
| 0fb88527ce | |||
| 7a0020f067 | |||
| f662ca9398 | |||
| 8f19798834 | |||
| 22a7e18842 | |||
| 51123b755d | |||
| b1cf12700d | |||
| 8ea1ee06e5 | |||
| 23c46c3f2b | |||
| b3b4ef648b | |||
| 60b9e36ae2 | |||
| 3d3cdf3884 | |||
| e04cc87f60 | |||
| f2d1acb899 | |||
| 1fb2fcbbd4 | |||
| 296f795ff3 | |||
| ef318cb70c | |||
| 947f73bd50 | |||
| 5a89825669 | |||
| eb2a42c99e | |||
| 60d4489b5e | |||
| 2225ac4e56 | |||
| fa785e8668 | |||
| 0ceccb9798 | |||
| 0b7e4977be | |||
| bfa0b4376c | |||
| 70c1a002e3 | |||
| e4b6db5de2 | |||
| e8cdda318f | |||
| 51740eb21e | |||
| 936e2fddaf | |||
| 70b66c4f6b | |||
| 0525922ee4 | |||
| b8baee1c06 | |||
| 88edc19149 | |||
| f6a4841dab | |||
| 19e41eb28a | |||
| 31b22fec09 | |||
| 1624b0ba97 | |||
| 9fe937a7fd | |||
| f6d1991833 | |||
| 70c09f1f5a | |||
| 1adf6927e5 | |||
| de6575dd32 | |||
| 4b3785ad1e | |||
| 2a71d79b37 | |||
| 5775e9cd10 | |||
| 7dd3b0016c | |||
| f8872c415b | |||
| 8c57e8abd3 | |||
| e365e66eeb | |||
| 5cffb7179f | |||
| 6ac6cf7293 | |||
| 576406888c | |||
| ae60c3ec66 | |||
| 466fed4f5b | |||
| b21589944e | |||
| 4a41625989 | |||
| a9b976274e | |||
| 1181ab454e | |||
| c676148a63 | |||
| f3428d48f3 | |||
| 557dd8f4a5 | |||
| d4f3bc596d | |||
| ddc5d56a65 | |||
| b94907c249 | |||
| dfdd5b1c50 | |||
| 7cc61cdbb3 | |||
| e5f58b77c1 | |||
| 18c82fc5c7 | |||
| f55dcde4ff | |||
| a25f0f1928 | |||
| c20d3778d6 | |||
| 1a7e49ac3f | |||
| 8bd0df9b70 | |||
| afaff533c8 | |||
| 08ab8bef83 | |||
| 14c5e656f2 | |||
| dc46bbf63d | |||
| 0577fd1c99 | |||
| 6915f4e4c0 | |||
| f7dd2dbd55 | |||
| d436ab6b0d | |||
| 0886b38725 | |||
| e3f4c4811f | |||
| 35b35f6923 | |||
| f8419c6aa6 | |||
| 9ac3f887a5 | |||
| 15b001b011 | |||
| d949ebb088 | |||
| b74af1d2da | |||
| e350437c81 | |||
| 4065972000 | |||
| 916f57f31d | |||
| badd231b82 | |||
| 2f2cf55f74 | |||
| 5d4ee9e471 | |||
| d09fe80fd1 | |||
| 447abad79e | |||
| b43958ac92 | |||
| a071ee5012 | |||
| cf7ac76de9 | |||
| 215f12d859 | |||
| 59d1811987 | |||
| 89e43eaf40 | |||
| e03642e9df | |||
| 58c66474ce | |||
| 431b799b01 | |||
| 4c25151f31 | |||
| dd916d5e52 | |||
| d18680e442 | |||
| 92410e9949 | |||
| e6a3d08704 | |||
| 5bce484c01 | |||
| 7e10038f4b | |||
| 94c902adfc | |||
| 670c5cd745 | |||
| a7db77e253 | |||
| 3102eccda2 | |||
| b714d3dc91 | |||
| 0d8aeee738 | |||
| 9d96d5d450 | |||
| 168dbaf020 | |||
| 13cb870b9a | |||
| a5903e8020 | |||
| fafe2c9d2e | |||
| 3e122ed900 | |||
| 33767b22f3 | |||
| 11b311ce2f | |||
| bbdeb51bc1 | |||
| c588ee21bc | |||
| b7112e4090 | |||
| be575e5400 | |||
| 7f8f5f94e3 | |||
| 6e528a1d62 | |||
| a9e210121b | |||
| 6925ea3ccb | |||
| 70cdf21681 | |||
| 87d4ea9286 | |||
| d9f5bce6ee | |||
| f71b4f78fd | |||
| a3f8647a72 | |||
| 664fb12db7 | |||
| cb4c3b0226 | |||
| 7d75d82f6a | |||
| 49844a71f0 | |||
| 5210d501d4 | |||
| 3833b965e4 | |||
| 703106a31f | |||
| 43ba8d3b73 | |||
| 6170f97cd6 | |||
| 19bf10647c | |||
| 4459119409 | |||
| 047a668275 | |||
| 36847bd305 | |||
| 005ef8a4a9 | |||
| 7e79145d46 | |||
| d2c5bba356 | |||
| 0f9640a5f3 | |||
| 4c5fcb743b | |||
| 269576eea2 | |||
| 9eecad496d | |||
| 5361722699 | |||
| e07221d7c5 | |||
| 39b629550b | |||
| d7d594873b | |||
| f923524a21 | |||
| e5d18e1221 | |||
| 9e7d052517 | |||
| f3f3c54372 | |||
| b222e75019 | |||
| aa7860c942 | |||
| ed560a785a | |||
| e95fdc3a0a | |||
| 9f0e7fb47e | |||
| bcd889cf90 | |||
| 65ea67204c | |||
| 2c674a54d4 | |||
| 2fbedfec1a | |||
| 1181ac069e | |||
| 950c2bb898 | |||
| 6b62456119 | |||
| 1df1903d23 | |||
| ae39b7ce61 | |||
| 044bcd0751 | |||
| 5d30e0faac | |||
| e58c827c91 | |||
| 1f0636bab6 | |||
| 7bd23700de | |||
| 937ecb62c4 | |||
| 2e67b13edd | |||
| 7c5cbefd51 | |||
| b6b78df3d2 | |||
| 4da5647e9f | |||
| fae9bdf8f8 | |||
| 3bf585ba04 | |||
| 1aefb0a546 | |||
| efd5a8bd14 | |||
| 4f606ceb64 | |||
| 027966e5e9 | |||
| 6b23d855d8 | |||
| e8a58a27cd | |||
| 472eab38e5 | |||
| aa4beb99e8 | |||
| 741c1b4e87 | |||
| a715403d60 | |||
| 40ab0bb11e | |||
| 3b76a8dd82 | |||
| bcddb06094 | |||
| 611ea27edc | |||
| bacd50c7a7 | |||
| da91ddef98 | |||
| 692d313fe3 | |||
| 4d96a3a84d | |||
| 0d5b7ae9d0 | |||
| 8ee7d46605 | |||
| c54cadace5 | |||
| 84d9de798a | |||
| e4ff17e162 | |||
| 0dc7fbcb0c | |||
| bb41de8c02 | |||
| a02a2fbaae | |||
| e37f2569f9 | |||
| ab282db3a6 | |||
| 8c793fe7cc | |||
| 35b5adbc4c | |||
| a4440ba8e5 | |||
| 3bdae5b464 | |||
| d2c56084f8 | |||
| 5311c103d5 | |||
| 39bd4e2099 | |||
| 35ca5cde9c | |||
| c49255a851 | |||
| 2b1c2d6d05 | |||
| ae2f25109c | |||
| 7dd7da1d7b | |||
| 3983e9fa1e | |||
| 4307733853 | |||
| 4014c1140a | |||
| 65a732449e | |||
| 4fd3c5e1d6 | |||
| e9c8b8bf0f | |||
| ca4d7b37c6 | |||
| 23a3096e1d | |||
| c17aeeba29 | |||
| c3cc06ff27 | |||
| 3ca58c2fd9 | |||
| 1862f4b3d2 | |||
| f06d434a0c | |||
| 00d6183cd8 | |||
| ceaf480ba7 | |||
| 0f71b4ccc8 | |||
| a811da3a42 | |||
| 83379469aa | |||
| 6a7da6d473 | |||
| 7b15742a11 | |||
| 5339e6aa17 | |||
| 2a31544242 | |||
| 3d587ad37d | |||
| 5725c8561c | |||
| 49ac7dd9f5 | |||
| d10e8342d3 | |||
| 1a86036edb | |||
| ab47c1abf7 | |||
| 69af1ac0ae | |||
| b6a935b1c3 | |||
| 45c372ebc8 | |||
| 840551dcfa | |||
| 630fe0581f | |||
| d74f2e3183 | |||
| 00409cba6a | |||
| 8a6a135b45 | |||
| 47112a113e | |||
| d08e9aed1c | |||
| 1c3c8c92c7 | |||
| df12f8de34 | |||
| 84d4be1bee | |||
| f1c681c832 | |||
| fe9ec8fbda | |||
| a93e598c35 | |||
| 64fe602aae | |||
| a34959a619 | |||
| 42a86f0a36 | |||
| a250a50ca5 | |||
| 8bdc58f32d |
+110
-15
@@ -1,46 +1,58 @@
|
||||
name: CI
|
||||
|
||||
on: [push, pull_request]
|
||||
on:
|
||||
- push
|
||||
- pull_request
|
||||
|
||||
env:
|
||||
WEECHAT_DEPENDENCIES: devscripts equivs python3-pip libenchant-dev autopoint cmake ninja-build lcov pkg-config libncursesw5-dev gem2deb libperl-dev python2-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.2-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev libzstd-dev zlib1g-dev curl libcpputest-dev php8.0-dev libphp8.0-embed libargon2-dev libsodium-dev pylint python3-bandit asciidoctor ruby-pygments.rb
|
||||
|
||||
jobs:
|
||||
|
||||
build:
|
||||
tests_linux:
|
||||
|
||||
name: ${{ matrix.config.name }}
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os:
|
||||
- ubuntu-20.04
|
||||
config:
|
||||
- { name: "cmake_gcc", cc: "gcc", cxx: "g++", tool: "cmake", args: "" }
|
||||
- { name: "cmake_gcc_ninja", cc: "gcc", cxx: "g++", tool: "cmake", args: "-G Ninja" }
|
||||
- { name: "cmake_gcc_no_nls", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_NLS=OFF" }
|
||||
- { name: "cmake_gcc_py2", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_PYTHON2=ON" }
|
||||
- { name: "cmake_gcc_coverage", cc: "gcc", cxx: "g++", tool: "cmake", args: "-DENABLE_CODE_COVERAGE=ON" }
|
||||
- { name: "cmake_clang", cc: "clang", cxx: "clang++", tool: "cmake", args: "" }
|
||||
- { name: "autotools_gcc", cc: "gcc", cxx: "g++", tool: "autotools", args: "" }
|
||||
- { name: "autotools_clang", cc: "clang", cxx: "clang++", tool: "autotools", args: "" }
|
||||
|
||||
name: "Tests: ${{ matrix.config.name }} on ${{ matrix.os }}"
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-add-repository --yes ppa:ondrej/php
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get --yes --no-install-recommends install devscripts equivs python-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev zlib1g-dev curl libcpputest-dev php7.4-dev libphp7.4-embed libargon2-0-dev libsodium-dev pylint3 asciidoctor
|
||||
sudo -H pip install --ignore-installed msgcheck
|
||||
|
||||
- name: Test patches
|
||||
run: ./tools/build-debian.sh test-patches
|
||||
sudo apt-get --yes purge php8.1-dev
|
||||
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }}
|
||||
sudo -H pip3 install --ignore-installed msgcheck
|
||||
|
||||
- name: Check gettext files
|
||||
run: msgcheck po/*.po
|
||||
|
||||
- name: Check Python scripts
|
||||
run: |
|
||||
pylint3 --additional-builtins=_ doc/docgen.py
|
||||
pylint3 tests/scripts/python/testapigen.py
|
||||
pylint3 tests/scripts/python/testapi.py
|
||||
pylint3 tests/scripts/python/unparse.py
|
||||
pylint --additional-builtins=_ doc/docgen.py
|
||||
pylint doc/python_stub.py
|
||||
pylint tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
|
||||
bandit doc/docgen.py doc/python_stub.py
|
||||
bandit tests/scripts/python/testapigen.py tests/scripts/python/testapi.py tests/scripts/python/unparse.py
|
||||
|
||||
- name: Check Python stub file
|
||||
run: ./doc/python_stub.py | diff src/plugins/python/weechat.pyi -
|
||||
|
||||
- name: Build and run tests
|
||||
env:
|
||||
@@ -59,7 +71,7 @@ jobs:
|
||||
weechat --colors
|
||||
weechat --license
|
||||
weechat --version
|
||||
weechat --temp-dir --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
|
||||
- name: Code coverage
|
||||
if: ${{ matrix.config.name == 'cmake_gcc_coverage' }}
|
||||
@@ -71,3 +83,86 @@ jobs:
|
||||
lcov --remove coverage.info '/usr/*' --output-file coverage.info
|
||||
lcov --list coverage.info
|
||||
bash <(curl -s https://codecov.io/bash) -f coverage.info || echo 'Codecov error'
|
||||
|
||||
tests_macos:
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
os:
|
||||
- macos-11
|
||||
- macos-10.15
|
||||
config:
|
||||
- { name: "cmake_gcc", cc: "gcc", cxx: "g++" }
|
||||
- { name: "cmake_clang", cc: "clang", cxx: "clang++" }
|
||||
|
||||
name: "Tests: ${{ matrix.config.name }} on ${{ matrix.os }}"
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
brew update
|
||||
brew install asciidoctor lua ruby
|
||||
|
||||
- name: Build
|
||||
env:
|
||||
CC: ${{ matrix.config.cc }}
|
||||
CXX: ${{ matrix.config.cxx }}
|
||||
run: |
|
||||
mkdir build-tmp && cd build-tmp
|
||||
cmake .. -DENABLE_MAN=ON -DENABLE_DOC=ON -DENABLE_PHP=OFF
|
||||
make VERBOSE=1 -j2
|
||||
sudo make install
|
||||
|
||||
- name: Run WeeChat
|
||||
env:
|
||||
TERM: xterm-256color
|
||||
run: |
|
||||
weechat --help
|
||||
weechat-curses --help
|
||||
weechat --colors
|
||||
weechat --license
|
||||
weechat --version
|
||||
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
|
||||
build_debian:
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
os:
|
||||
- ubuntu-20.04
|
||||
|
||||
name: "Build Debian on ${{ matrix.os }}"
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-add-repository --yes ppa:ondrej/php
|
||||
sudo apt-get update -qq
|
||||
sudo apt-get --yes purge php8.1-dev
|
||||
sudo apt-get --yes --no-install-recommends install ${{ env.WEECHAT_DEPENDENCIES }} php-dev
|
||||
|
||||
- name: Test Debian patches
|
||||
run: ./tools/build-debian.sh test-patches
|
||||
|
||||
- name: Build Debian packages
|
||||
run: ./tools/build-debian.sh devel ubuntu/focal
|
||||
|
||||
- name: Install Debian packages
|
||||
run: sudo dpkg -i ../weechat-devel*.deb
|
||||
|
||||
- name: Run WeeChat
|
||||
env:
|
||||
TERM: xterm-256color
|
||||
run: |
|
||||
weechat --help
|
||||
weechat-curses --help
|
||||
weechat --version
|
||||
weechat --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
|
||||
@@ -11,7 +11,9 @@ Sébastien Helleu <flashcode@flashtux.org> <flashcode>
|
||||
Sébastien Helleu <flashcode@flashtux.org> <uid67137>
|
||||
Nils Görs <weechatter@arcor.de>
|
||||
Ryuunosuke Ayanokouzi <i38w7i3@yahoo.co.jp>
|
||||
Krzysztof Korościk <soltys1@gmail.com> <soltys@szluug.org> <soltys@soltys.info>
|
||||
Krzysztof Korościk <soltys@soltys.info>
|
||||
Krzysztof Korościk <soltys@soltys.info> <soltys1@gmail.com>
|
||||
Krzysztof Korościk <soltys@soltys.info> <soltys@szluug.org>
|
||||
Marco Paolone <marcopaolone@gmail.com>
|
||||
<marcopaolone@gmail.com> <marco@DrB4tch.sitecomwl601>
|
||||
<mikaela.suomalainen@outlook.com> <mkaysi@outlook.com>
|
||||
|
||||
-46
@@ -1,46 +0,0 @@
|
||||
dist: bionic
|
||||
sudo: required
|
||||
language: c
|
||||
|
||||
env:
|
||||
- CC="gcc" CXX="g++" BUILDTOOL="cmake" BUILDARGS=""
|
||||
- CC="gcc" CXX="g++" BUILDTOOL="cmake" BUILDARGS="-DENABLE_PYTHON2=ON"
|
||||
# - CC="gcc" CXX="g++" BUILDTOOL="cmake" BUILDARGS="-DENABLE_CODE_COVERAGE=ON" CODECOVERAGE="1"
|
||||
- CC="gcc" CXX="g++" BUILDTOOL="autotools" BUILDARGS=""
|
||||
- CC="gcc" CXX="g++" BUILDTOOL="autotools" BUILDARGS="--enable-python2"
|
||||
- CC="clang" CXX="clang++" BUILDTOOL="cmake" BUILDARGS=""
|
||||
- CC="clang" CXX="clang++" BUILDTOOL="cmake" BUILDARGS="-DENABLE_PYTHON2=ON"
|
||||
- CC="clang" CXX="clang++" BUILDTOOL="autotools" BUILDARGS=""
|
||||
- CC="clang" CXX="clang++" BUILDTOOL="autotools" BUILDARGS="--enable-python2"
|
||||
|
||||
matrix:
|
||||
fast_finish: true
|
||||
|
||||
before_script:
|
||||
- echo 'APT::Install-Recommends "false";' | sudo tee -a /etc/apt/apt.conf
|
||||
- travis_retry sudo apt-get update -qq
|
||||
- travis_retry sudo apt-get -y install devscripts equivs python-pip libenchant-dev autopoint cmake lcov pkg-config libncursesw5-dev gem2deb libperl-dev python-dev python3-dev libaspell-dev liblua5.3-dev tcl8.6-dev guile-2.0-dev libv8-dev libcurl4-gnutls-dev libgcrypt20-dev libgnutls28-dev zlib1g-dev curl libcpputest-dev php7.2-dev libphp7.2-embed libargon2-0-dev libsodium-dev pylint3
|
||||
- travis_retry sudo gem install asciidoctor
|
||||
- travis_retry sudo -H pip install --ignore-installed msgcheck
|
||||
- phpenv local system
|
||||
# work around broken travis environment variables, see https://github.com/travis-ci/travis-ci/issues/5301
|
||||
- unset PYTHON_CFLAGS
|
||||
|
||||
script:
|
||||
- ./tools/build-test.sh
|
||||
- msgcheck po/*.po
|
||||
- pylint3 --version
|
||||
- pylint3 --additional-builtins=_ doc/docgen.py
|
||||
- pylint3 tests/scripts/python/testapigen.py
|
||||
- pylint3 tests/scripts/python/testapi.py
|
||||
- pylint3 tests/scripts/python/unparse.py
|
||||
- ./tools/build-debian.sh test-patches
|
||||
|
||||
after_success:
|
||||
- weechat --help
|
||||
- weechat-curses --help
|
||||
- weechat --colors
|
||||
- weechat --license
|
||||
- weechat --version
|
||||
- weechat --temp-dir --run-command "/debug dirs;/debug libs" --run-command "/quit"
|
||||
# - if [ "$CODECOVERAGE" = "1" ]; then bash <(curl -s https://codecov.io/bash) -f coverage.info || echo "Codecov error"; fi
|
||||
+6
-2
@@ -43,7 +43,9 @@ Alphabetically:
|
||||
* Elizabeth Myers (Elizacat)
|
||||
* Elián Hanisch (m4v)
|
||||
* Emanuele Giaquinta
|
||||
* Emir Sarı
|
||||
* emk
|
||||
* Érico Nogueira
|
||||
* Esteban I. Ruiz Moreno (Exio)
|
||||
* Evgeny Shmarnev
|
||||
* Felix Eckhofer
|
||||
@@ -54,6 +56,7 @@ Alphabetically:
|
||||
* Guido Berhoerster
|
||||
* Gwenn
|
||||
* Hasan Kiran (turgay)
|
||||
* Ivan Pešić
|
||||
* Ivan Sichmann Freitas
|
||||
* Jakub Jirutka
|
||||
* Jan Palus
|
||||
@@ -128,6 +131,7 @@ Alphabetically:
|
||||
* Simmo Saan (sim642)
|
||||
* Simon Arlott
|
||||
* Simon Kuhnle
|
||||
* Simon Ser
|
||||
* Stefano Pigozzi
|
||||
* Stfn
|
||||
* Sven Knurr (Cthulhux)
|
||||
@@ -141,6 +145,7 @@ Alphabetically:
|
||||
* Trevor Bergeron
|
||||
* Valentin Lorentz (progval)
|
||||
* Vasco Almeida
|
||||
* Victorhck
|
||||
* Voroskoi
|
||||
* Wojciech Kwolek
|
||||
* W. Trevor King
|
||||
@@ -150,5 +155,4 @@ Alphabetically:
|
||||
|
||||
== Contact
|
||||
|
||||
See https://weechat.org/files/doc/devel/weechat_user.en.html#support[user's guide]
|
||||
or https://weechat.org/about/support
|
||||
See the https://weechat.org/about/support/[support page].
|
||||
|
||||
+10
-17
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2007-2008 Julien Louis <ptitlouis@sysif.net>
|
||||
# Copyright (C) 2008-2009 Emmanuel Bouthenot <kolter@openics.org>
|
||||
#
|
||||
@@ -27,8 +27,8 @@ project(weechat C)
|
||||
set(CMAKE_VERBOSE_MAKEFILE OFF)
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH})
|
||||
set(CMAKE_SKIP_RPATH ON)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -Wall -Wextra -Werror-implicit-function-declaration")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -Wall -Wextra")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra -Werror-implicit-function-declaration")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsigned-char -fms-extensions -Wall -Wextra")
|
||||
|
||||
# version
|
||||
execute_process(COMMAND ${CMAKE_SOURCE_DIR}/version.sh devel-major OUTPUT_VARIABLE VERSION_MAJOR)
|
||||
@@ -115,6 +115,7 @@ option(ENABLE_PHP "Enable PHP scripting language" ON)
|
||||
option(ENABLE_SPELL "Enable Spell checker plugin" ON)
|
||||
option(ENABLE_ENCHANT "Enable Enchant lib for Spell checker plugin" OFF)
|
||||
option(ENABLE_TRIGGER "Enable Trigger plugin" ON)
|
||||
option(ENABLE_TYPING "Enable Typing plugin" ON)
|
||||
option(ENABLE_XFER "Enable Xfer plugin" ON)
|
||||
option(ENABLE_MAN "Enable build of man page" OFF)
|
||||
option(ENABLE_DOC "Enable build of documentation" OFF)
|
||||
@@ -134,23 +135,11 @@ if(ENABLE_TESTS AND NOT ENABLE_HEADLESS)
|
||||
endif()
|
||||
|
||||
# option WEECHAT_HOME
|
||||
if(NOT DEFINED WEECHAT_HOME OR "${WEECHAT_HOME}" STREQUAL "")
|
||||
set(WEECHAT_HOME "~/.weechat")
|
||||
endif()
|
||||
set(WEECHAT_HOME "${WEECHAT_HOME}" CACHE
|
||||
STRING "WeeChat home directory for config, logs, scripts.. (default is \"~/.weechat\")"
|
||||
STRING "Force a single WeeChat home directory for config, logs, scripts, etc."
|
||||
FORCE)
|
||||
mark_as_advanced(CLEAR WEECHAT_HOME)
|
||||
|
||||
# option CA_FILE
|
||||
if(NOT DEFINED CA_FILE OR "${CA_FILE}" STREQUAL "")
|
||||
set(CA_FILE "/etc/ssl/certs/ca-certificates.crt")
|
||||
endif()
|
||||
set(CA_FILE "${CA_FILE}" CACHE
|
||||
STRING "File containing the certificate authorities (default is \"/etc/ssl/certs/ca-certificates.crt\"). This is the default value of option \"weechat.network.gnutls_ca_file\"."
|
||||
FORCE)
|
||||
mark_as_advanced(CLEAR CA_FILE)
|
||||
|
||||
if(COMMAND cmake_policy)
|
||||
if(POLICY CMP0003)
|
||||
cmake_policy(SET CMP0003 NEW)
|
||||
@@ -170,6 +159,7 @@ check_include_files("langinfo.h" HAVE_LANGINFO_CODESET)
|
||||
check_include_files("sys/resource.h" HAVE_SYS_RESOURCE_H)
|
||||
|
||||
check_function_exists(mallinfo HAVE_MALLINFO)
|
||||
check_function_exists(mallinfo2 HAVE_MALLINFO2)
|
||||
|
||||
check_symbol_exists("eat_newline_glitch" "term.h" HAVE_EAT_NEWLINE_GLITCH)
|
||||
|
||||
@@ -206,7 +196,10 @@ list(APPEND EXTRA_LIBS gnutls)
|
||||
|
||||
# Check for zlib
|
||||
find_package(ZLIB REQUIRED)
|
||||
add_definitions(-DHAVE_ZLIB)
|
||||
|
||||
# Check for zstd
|
||||
include(FindPkgConfig)
|
||||
pkg_check_modules(LIBZSTD REQUIRED libzstd)
|
||||
|
||||
# Check for iconv
|
||||
find_package(Iconv)
|
||||
|
||||
@@ -671,4 +671,4 @@ into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications with
|
||||
the library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License. But first, please read
|
||||
<https://www.gnu.org/philosophy/why-not-lgpl.html>.
|
||||
<https://www.gnu.org/licenses/why-not-lgpl.html>.
|
||||
|
||||
+694
-439
File diff suppressed because it is too large
Load Diff
+7
-8
@@ -29,8 +29,8 @@ please include:
|
||||
_WeeChat 1.7-dev (git: v1.6-6-g997f47f)_. +
|
||||
If WeeChat does not start at all, please include the version displayed by
|
||||
`weechat --help` (or the version installed with your package manager).
|
||||
* Your *operating system*: its name and version (examples: Linux Debian Wheezy,
|
||||
FreeBSD 10.0, Windows/Cygwin 64-bit, Windows/Ubuntu 64-bit...).
|
||||
* Your *operating system*: its name and version (examples: Linux Debian Bullseye,
|
||||
FreeBSD 13.0, Windows/Cygwin 64-bit, Windows/Ubuntu 64-bit...).
|
||||
* The *steps to reproduce*: if possible, please include a reproducible example:
|
||||
explain the steps which led you to the problem. +
|
||||
It's even better if you can reproduce the problem with a new config (and no
|
||||
@@ -38,8 +38,7 @@ please include:
|
||||
problem here.
|
||||
* The *gdb's backtrace* (only for a crash): if you can reproduce the crash
|
||||
(or if you have a core file), please include the backtrace from gdb (look at
|
||||
https://weechat.org/files/doc/devel/weechat_user.en.html#report_crashes[User's guide]
|
||||
for more info).
|
||||
https://weechat.org/doc/user/#report_crashes[User's guide] for more info).
|
||||
* The *actual result*.
|
||||
* The *expected result*: the correct result you are expecting.
|
||||
|
||||
@@ -69,22 +68,22 @@ time, for https://github.com/weechat/weechat[WeeChat] and the website
|
||||
https://github.com/weechat/weechat.org[weechat.org].
|
||||
|
||||
To start a translation in a new language (not yet supported), please look at
|
||||
https://weechat.org/files/doc/devel/weechat_dev.en.html#translations[translations]
|
||||
https://weechat.org/doc/dev/#translations[translations]
|
||||
in Developer's guide.
|
||||
|
||||
== Feature requests
|
||||
|
||||
WeeChat is under active development, so your idea may already have been
|
||||
implemented, or scheduled for a future version (you can check in
|
||||
https://weechat.org/dev[roadmap] or
|
||||
https://weechat.org/dev/[roadmap] or
|
||||
https://github.com/weechat/weechat/milestones[milestones] on GitHub.
|
||||
|
||||
Pull requests on GitHub are welcome for minor new features.
|
||||
|
||||
For major new features, it's better to discuss about it in IRC
|
||||
(server: _chat.freenode.net_, channel _#weechat_).
|
||||
(server: _irc.libera.chat_, channel _#weechat_).
|
||||
|
||||
Before submitting any pull request, be sure you have read the
|
||||
https://weechat.org/files/doc/devel/weechat_dev.en.html#coding_rules[coding rules]
|
||||
https://weechat.org/doc/dev/#coding_rules[coding rules]
|
||||
in Developer's guide, which contains info about styles used, naming convention
|
||||
and other useful info.
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2005 Julien Louis <ptitlouis@sysif.net>
|
||||
# Copyright (C) 2006-2009 Emmanuel Bouthenot <kolter@openics.org>
|
||||
#
|
||||
|
||||
+9
-78
@@ -23,13 +23,13 @@ Homepage: https://weechat.org/
|
||||
|
||||
== Features
|
||||
|
||||
* *Modular chat client*: WeeChat has a lightweight core and optional https://weechat.org/files/doc/stable/weechat_user.en.html#plugins[plugins]. All plugins (including https://weechat.org/files/doc/stable/weechat_user.en.html#irc_plugin[IRC]) are independent and can be unloaded.
|
||||
* *Modular chat client*: WeeChat has a lightweight core and optional https://weechat.org/doc/user/#plugins[plugins]. All plugins (including https://weechat.org/doc/user/#irc[IRC]) are independent and can be unloaded.
|
||||
* *Multi-platform*: WeeChat runs on GNU/Linux, *BSD, GNU/Hurd, Haiku, macOS and Windows (Bash/Ubuntu and Cygwin).
|
||||
* *Multi-protocols*: WeeChat is designed to support multiple protocols by plugins, like IRC.
|
||||
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://tools.ietf.org/html/rfc1459[1459], https://tools.ietf.org/html/rfc2810[2810], https://tools.ietf.org/html/rfc2811[2811], https://tools.ietf.org/html/rfc2812[2812] and https://tools.ietf.org/html/rfc2813[2813].
|
||||
* *Small, fast and very light*: the core is and should stay as light and fast as possible.
|
||||
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/stable/language/perl/[Perl], https://weechat.org/scripts/stable/language/python/[Python], https://weechat.org/scripts/stable/language/ruby[Ruby], https://weechat.org/scripts/stable/language/lua/[Lua], https://weechat.org/scripts/stable/language/tcl/[Tcl], https://weechat.org/scripts/stable/language/guile/[Scheme], https://weechat.org/scripts/stable/language/javascript/[JavaScript] and https://weechat.org/scripts/stable/language/php/[PHP]).
|
||||
* *Fully documented*: there is comprehensive https://weechat.org/doc/[documentation], which is https://weechat.org/files/doc/stable/weechat_dev.en.html#translations[translated] into several languages.
|
||||
* *Standards-compliant*: the IRC plugin is compliant with RFCs https://tools.ietf.org/html/rfc1459[1459], https://tools.ietf.org/html/rfc2810[2810], https://tools.ietf.org/html/rfc2811[2811], https://tools.ietf.org/html/rfc2812[2812], and https://tools.ietf.org/html/rfc2813[2813].
|
||||
* *Small, fast, and very light*: the core is and should stay as light and fast as possible.
|
||||
* *Customizable and extensible*: there are a lot of options to customize WeeChat, and it is extensible with C plugins and https://weechat.org/scripts/[scripts] (https://weechat.org/scripts/language/perl/[Perl], https://weechat.org/scripts/language/python/[Python], https://weechat.org/scripts/language/ruby[Ruby], https://weechat.org/scripts/language/lua/[Lua], https://weechat.org/scripts/language/tcl/[Tcl], https://weechat.org/scripts/language/guile/[Scheme], https://weechat.org/scripts/language/javascript/[JavaScript] and https://weechat.org/scripts/language/php/[PHP]).
|
||||
* *Fully documented*: there is comprehensive https://weechat.org/doc/[documentation], which is https://weechat.org/doc/dev/#translations[translated] into several languages.
|
||||
* *Developed from scratch*: WeeChat was built from scratch and is not based on any other client.
|
||||
* *Free software*: WeeChat is released under https://www.gnu.org/licenses/gpl-3.0.html[GPLv3].
|
||||
|
||||
@@ -37,84 +37,15 @@ pass:[<p align="center">] image:https://weechat.org/media/images/screenshots/wee
|
||||
|
||||
On WeeChat's website you can find https://weechat.org/about/screenshots/[more screenshots].
|
||||
|
||||
== Install
|
||||
== Installation
|
||||
|
||||
=== Dependencies
|
||||
WeeChat can be installed using your favorite package manager (recommended) or by compiling it yourself.
|
||||
|
||||
Following packages are *required*:
|
||||
|
||||
* CMake
|
||||
* libncurses
|
||||
* libcurl
|
||||
* zlib
|
||||
* libgcrypt
|
||||
|
||||
Following packages are optional:
|
||||
|
||||
* for i18n: gettext
|
||||
* for SSL: gnutls, ca-certificates
|
||||
* for spell checking: aspell or enchant
|
||||
* for scripting: python, perl, ruby, lua, tcl, guile, libv8 (javascript), php
|
||||
* for building doc and man page: asciidoctor
|
||||
* for building tests: C++ compiler, CppUTest
|
||||
|
||||
For a complete list of dependencies and versions recommended, please look at
|
||||
https://weechat.org/files/doc/devel/weechat_user.en.html#dependencies[user's guide].
|
||||
|
||||
=== Compile
|
||||
|
||||
WeeChat can be built with https://cmake.org/[CMake] (recommended) or autotools.
|
||||
|
||||
[NOTE]
|
||||
Only CMake is officially supported to build WeeChat. You should only use
|
||||
autotools if you are not able to use CMake. +
|
||||
Building with autotools requires more dependencies and is slower than with CMake.
|
||||
|
||||
* Installation in system directories (requires _root_ privileges):
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake ..
|
||||
$ make
|
||||
$ sudo make install
|
||||
----
|
||||
|
||||
* Installation in custom directory (for example your home):
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/directory
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
For more information or installation with autotools, please look at
|
||||
https://weechat.org/files/doc/devel/weechat_user.en.html#compile_with_autotools[user's guide].
|
||||
|
||||
=== Run tests
|
||||
|
||||
Following packages are *required* to compile tests:
|
||||
|
||||
* libcpputest-dev
|
||||
* C++ compiler
|
||||
|
||||
Tests must be enabled when compiling WeeChat:
|
||||
|
||||
----
|
||||
$ cmake .. -DENABLE_TESTS=ON
|
||||
----
|
||||
|
||||
They can be launched after compilation from the build directory:
|
||||
|
||||
----
|
||||
$ ctest -V
|
||||
----
|
||||
For detailed instructions, please check the https://weechat.org/doc/user/#install[WeeChat user's guide].
|
||||
|
||||
== Copyright
|
||||
|
||||
Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
|
||||
This file is part of WeeChat, the extensible chat client.
|
||||
|
||||
|
||||
+667
-256
File diff suppressed because it is too large
Load Diff
+4
-4
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2005 Julien Louis <ptitlouis@sysif.net>
|
||||
# Copyright (C) 2005-2006 Emmanuel Bouthenot <kolter@openics.org>
|
||||
#
|
||||
@@ -34,7 +34,7 @@ err ()
|
||||
echo "-------"
|
||||
echo "Error :"
|
||||
echo "---8<-----------------------------------"
|
||||
cat $AUTOGEN_LOG
|
||||
cat "$AUTOGEN_LOG"
|
||||
echo "----------------------------------->8---"
|
||||
exit 1
|
||||
}
|
||||
@@ -42,7 +42,7 @@ err ()
|
||||
run ()
|
||||
{
|
||||
printf "Running \"%s\"..." "$@"
|
||||
if eval "$@" >$AUTOGEN_LOG 2>&1 ; then
|
||||
if eval "$@" >"$AUTOGEN_LOG" 2>&1 ; then
|
||||
echo " OK"
|
||||
else
|
||||
echo " FAILED"
|
||||
@@ -66,4 +66,4 @@ run "rm -rf intl"
|
||||
run "autoreconf -vi"
|
||||
|
||||
# ending
|
||||
rm -f $AUTOGEN_LOG
|
||||
rm -f "$AUTOGEN_LOG"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2014-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2014-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -34,12 +34,12 @@ set(GCRYPT_CFLAGS)
|
||||
|
||||
if(LIBGCRYPT_CONFIG_EXECUTABLE)
|
||||
|
||||
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS)
|
||||
exec_program(${LIBGCRYPT_CONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS)
|
||||
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --libs RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_LDFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
|
||||
execute_process(COMMAND ${LIBGCRYPT_CONFIG_EXECUTABLE} --cflags RESULT_VARIABLE _return_VALUE OUTPUT_VARIABLE GCRYPT_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
|
||||
|
||||
if(${GCRYPT_CFLAGS} MATCHES "\n")
|
||||
set(GCRYPT_CFLAGS " ")
|
||||
endif()
|
||||
if(NOT DEFINED ${GCRYPT_CFLAGS})
|
||||
set(GCRYPT_CFLAGS " ")
|
||||
endif()
|
||||
|
||||
endif()
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2007 Julien Louis <ptitlouis@sysif.net>
|
||||
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2011-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2011-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -35,5 +35,5 @@ endif()
|
||||
|
||||
find_package(PkgConfig)
|
||||
if(PKG_CONFIG_FOUND)
|
||||
pkg_search_module(LUA lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
|
||||
pkg_search_module(LUA lua5.4 lua-5.4 lua54 lua5.3 lua-5.3 lua53 lua5.2 lua-5.2 lua52 lua5.1 lua-5.1 lua51 lua-5.0 lua5.0 lua50 lua)
|
||||
endif()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
+11
-7
@@ -1,6 +1,6 @@
|
||||
#
|
||||
# Copyright (C) 2017 Adam Saponara <as@php.net>
|
||||
# Copyright (C) 2017-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2017-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -24,26 +24,30 @@ endif()
|
||||
|
||||
find_package(PkgConfig)
|
||||
if(PKG_CONFIG_FOUND)
|
||||
pkg_search_module(PHP php7)
|
||||
pkg_search_module(PHP php8 php7)
|
||||
endif()
|
||||
|
||||
if(NOT PHP_FOUND)
|
||||
find_program(PHP_CONFIG_EXECUTABLE NAMES
|
||||
php-config8.1 php-config81
|
||||
php-config8.0 php-config80
|
||||
php-config8
|
||||
php-config7.4 php-config74
|
||||
php-config7.3 php-config73
|
||||
php-config7.2 php-config72
|
||||
php-config7.1 php-config71
|
||||
php-config7.0 php-config70
|
||||
php-config php-config7
|
||||
php-config7
|
||||
php-config
|
||||
)
|
||||
if (PHP_CONFIG_EXECUTABLE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --prefix OUTPUT_VARIABLE PHP_LIB_PREFIX OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --includes OUTPUT_VARIABLE PHP_INCLUDE_DIRS OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --libs OUTPUT_VARIABLE PHP_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND ${PHP_CONFIG_EXECUTABLE} --version OUTPUT_VARIABLE PHP_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if(${PHP_VERSION} MATCHES "^7")
|
||||
if(${PHP_VERSION} MATCHES "^[78]")
|
||||
find_library(PHP_LIB
|
||||
NAMES php7.4 php7.3 php7.2 php7.1 php7.0 php7
|
||||
NAMES php8.1 php8.0 php8 php7.4 php7.3 php7.2 php7.1 php7.0 php7 php
|
||||
HINTS ${PHP_LIB_PREFIX} ${PHP_LIB_PREFIX}/lib ${PHP_LIB_PREFIX}/lib64
|
||||
)
|
||||
if(PHP_LIB)
|
||||
@@ -58,9 +62,9 @@ if(NOT PHP_FOUND)
|
||||
endif()
|
||||
|
||||
if(NOT PHP_FOUND)
|
||||
message(WARNING "Could not find libphp7. "
|
||||
message(WARNING "Could not find libphp. "
|
||||
"Ensure PHP >=7.0.0 development libraries are installed and compiled with `--enable-embed`. "
|
||||
"Ensure `php-config` is in `PATH`. "
|
||||
"You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp7."
|
||||
"You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing libphp."
|
||||
)
|
||||
endif()
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2009 Julien Louis <ptitlouis@sysif.net>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
|
||||
+9
-47
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -33,51 +33,13 @@ endif()
|
||||
|
||||
find_package(PkgConfig)
|
||||
if(PKG_CONFIG_FOUND)
|
||||
pkg_search_module(RUBY ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9)
|
||||
endif()
|
||||
|
||||
if(RUBY_FOUND)
|
||||
set(RUBY_LIB "")
|
||||
mark_as_advanced(RUBY_LIB)
|
||||
else()
|
||||
find_program(RUBY_EXECUTABLE
|
||||
NAMES ruby2.7.0 ruby270 ruby2.7 ruby2.6.0 ruby260 ruby2.6 ruby2.5.0 ruby250 ruby2.5 ruby2.4.0 ruby240 ruby2.4 ruby2.3.0 ruby230 ruby2.3 ruby23 ruby2.2.3 ruby223 ruby2.2.2 ruby222 ruby2.2.1 ruby221 ruby2.2.0 ruby220 ruby2.2 ruby22 ruby2.1.7 ruby217 ruby2.1.6 ruby216 ruby2.1.5 ruby215 ruby2.1.4 ruby214 ruby2.1.3 ruby213 ruby2.1.2 ruby212 ruby2.1.1 ruby211 ruby2.1.0 ruby210 ruby2.1 ruby21 ruby2.0 ruby20 ruby1.9.3 ruby193 ruby1.9.2 ruby192 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby
|
||||
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
|
||||
)
|
||||
if(RUBY_EXECUTABLE)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubyhdrdir'] || RbConfig::CONFIG['archdir']"
|
||||
OUTPUT_VARIABLE RUBY_ARCH_DIR
|
||||
)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['arch']"
|
||||
OUTPUT_VARIABLE RUBY_ARCH
|
||||
)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['libdir']"
|
||||
OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH
|
||||
)
|
||||
execute_process(
|
||||
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubylibdir']"
|
||||
OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH
|
||||
)
|
||||
find_path(RUBY_INCLUDE_DIRS
|
||||
NAMES ruby.h
|
||||
PATHS ${RUBY_ARCH_DIR}
|
||||
)
|
||||
set(RUBY_INCLUDE_ARCH "${RUBY_INCLUDE_DIRS}/${RUBY_ARCH}")
|
||||
find_library(RUBY_LIB
|
||||
NAMES ruby-1.9.3 ruby1.9.3 ruby193 ruby-1.9.2 ruby1.9.2 ruby192 ruby-1.9.1 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby
|
||||
PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH}
|
||||
)
|
||||
if(RUBY_LIB AND RUBY_INCLUDE_DIRS)
|
||||
set(RUBY_FOUND TRUE)
|
||||
endif()
|
||||
set(RUBY_INCLUDE_DIRS "${RUBY_INCLUDE_DIRS};${RUBY_INCLUDE_ARCH}")
|
||||
mark_as_advanced(
|
||||
RUBY_INCLUDE_DIRS
|
||||
RUBY_LIBRARY_DIRS
|
||||
RUBY_LIB
|
||||
)
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# set specific search path for macOS
|
||||
set(ENV{PKG_CONFIG_PATH} "$ENV{PKG_CONFIG_PATH}:/usr/local/opt/ruby/lib/pkgconfig")
|
||||
endif()
|
||||
pkg_search_module(RUBY ruby-3.1 ruby-3.0 ruby-2.7 ruby-2.6 ruby-2.5 ruby-2.4 ruby-2.3 ruby-2.2 ruby-2.1 ruby-2.0 ruby-1.9 ruby)
|
||||
if(RUBY_FOUND AND ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
# FIXME: weird hack: hardcoding the Ruby lib location on macOS
|
||||
set(RUBY_LDFLAGS "${RUBY_LDFLAGS} -L/usr/local/opt/ruby/lib")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2015-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2015-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -28,9 +28,7 @@ list(REVERSE files)
|
||||
foreach(file ${files})
|
||||
message(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
|
||||
if(EXISTS "$ENV{DESTDIR}${file}")
|
||||
exec_program("@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
|
||||
OUTPUT_VARIABLE rm_out
|
||||
RETURN_VARIABLE rm_retval)
|
||||
execute_process(COMMAND "@CMAKE_COMMAND@" -E remove "$ENV{DESTDIR}${file}" OUTPUT_VARIABLE rm_out RESULT_VARIABLE rm_retval)
|
||||
if("${rm_retval}" GREATER 0)
|
||||
message(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
|
||||
endif()
|
||||
|
||||
+1
-1
@@ -5,6 +5,7 @@
|
||||
#cmakedefine HAVE_BACKTRACE
|
||||
#cmakedefine ICONV_2ARG_IS_CONST 1
|
||||
#cmakedefine HAVE_MALLINFO
|
||||
#cmakedefine HAVE_MALLINFO2
|
||||
#cmakedefine HAVE_EAT_NEWLINE_GLITCH
|
||||
#cmakedefine HAVE_ASPELL_VERSION_STRING
|
||||
#cmakedefine HAVE_ENCHANT_GET_VERSION
|
||||
@@ -17,5 +18,4 @@
|
||||
#define WEECHAT_SHAREDIR "@WEECHAT_SHAREDIR@"
|
||||
#define LOCALEDIR "@LOCALEDIR@"
|
||||
#define WEECHAT_HOME "@WEECHAT_HOME@"
|
||||
#define CA_FILE "@CA_FILE@"
|
||||
#define _GNU_SOURCE 1
|
||||
|
||||
+80
-43
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2005 Benoit Papillault <benoit.papillault@free.fr>
|
||||
# Copyright (C) 2005-2006 Julien Louis <ptitlouis@sysif.net>
|
||||
# Copyright (C) 2005-2009 Emmanuel Bouthenot <kolter@openics.org>
|
||||
@@ -64,7 +64,7 @@ darwin*)
|
||||
esac
|
||||
|
||||
# Gettext
|
||||
ALL_LINGUAS="cs de es fr hu it ja pl pt pt_BR ru tr"
|
||||
ALL_LINGUAS="cs de es fr hu it ja pl pt pt_BR ru sr tr"
|
||||
AM_GNU_GETTEXT
|
||||
AM_GNU_GETTEXT_VERSION([0.18])
|
||||
|
||||
@@ -98,6 +98,7 @@ AC_MSG_RESULT($ac_cv_type_socklen_t)
|
||||
AC_FUNC_SELECT_ARGTYPES
|
||||
AC_TYPE_SIGNAL
|
||||
AC_CHECK_FUNCS([mallinfo])
|
||||
AC_CHECK_FUNCS([mallinfo2])
|
||||
|
||||
# Variables in config.h
|
||||
|
||||
@@ -129,12 +130,12 @@ AH_VERBATIM([PLUGIN_GUILE], [#undef PLUGIN_GUILE])
|
||||
AH_VERBATIM([PLUGIN_JAVASCRIPT], [#undef PLUGIN_JAVASCRIPT])
|
||||
AH_VERBATIM([PLUGIN_SPELL], [#undef PLUGIN_SPELL])
|
||||
AH_VERBATIM([PLUGIN_TRIGGER], [#undef PLUGIN_TRIGGER])
|
||||
AH_VERBATIM([PLUGIN_TYPING], [#undef PLUGIN_TYPING])
|
||||
AH_VERBATIM([PLUGIN_XFER], [#undef PLUGIN_XFER])
|
||||
AH_VERBATIM([TESTS], [#undef TESTS])
|
||||
AH_VERBATIM([MAN], [#undef MAN])
|
||||
AH_VERBATIM([DOC], [#undef DOC])
|
||||
AH_VERBATIM([WEECHAT_HOME], [#define WEECHAT_HOME "~/.weechat"])
|
||||
AH_VERBATIM([CA_FILE], [#define CA_FILE "/etc/ssl/certs/ca-certificates.crt"])
|
||||
AH_VERBATIM([WEECHAT_HOME], [#define WEECHAT_HOME ""])
|
||||
|
||||
# Arguments for ./configure
|
||||
|
||||
@@ -164,6 +165,7 @@ AC_ARG_ENABLE(php, [ --disable-php turn off PHP script plugi
|
||||
AC_ARG_ENABLE(spell, [ --disable-spell turn off Spell checker plugin (default=compiled)],enable_spell=$enableval,enable_spell=yes)
|
||||
AC_ARG_ENABLE(enchant, [ --enable-enchant turn on Enchant lib for Spell checker plugin (default=off)],enable_enchant=$enableval,enable_enchant=no)
|
||||
AC_ARG_ENABLE(trigger, [ --disable-trigger turn off Trigger plugin (default=compiled)],enable_trigger=$enableval,enable_trigger=yes)
|
||||
AC_ARG_ENABLE(typing, [ --disable-typing turn off Typing plugin (default=compiled)],enable_trigger=$enableval,enable_typing=yes)
|
||||
AC_ARG_ENABLE(xfer, [ --disable-xfer turn off Xfer (file transfer) plugin (default=compiled)],enable_xfer=$enableval,enable_xfer=yes)
|
||||
AC_ARG_WITH(tclconfig, [ --with-tclconfig=DIR directory containing tcl configuration (tclConfig.sh)],tclconfig=$withval,tclconfig='')
|
||||
AC_ARG_WITH(debug, [ --with-debug debugging: 0=no debug, 1=debug compilation (default=0)],debug=$withval,debug=0)
|
||||
@@ -171,19 +173,10 @@ AC_ARG_ENABLE(tests, [ --enable-tests turn on build of tests (d
|
||||
AC_ARG_ENABLE(man, [ --enable-man turn on build of man page (default=not built)],enable_man=$enableval,enable_man=no)
|
||||
AC_ARG_ENABLE(doc, [ --enable-doc turn on build of documentation (default=not built)],enable_doc=$enableval,enable_doc=no)
|
||||
|
||||
AC_ARG_VAR(WEECHAT_HOME, [WeeChat home directory for config, logs, scripts.. (default is "~/.weechat")])
|
||||
AC_ARG_VAR(CA_FILE, [File containing the certificate authorities (default is "/etc/ssl/certs/ca-certificates.crt"). This is the default value of option "weechat.network.gnutls_ca_file".])
|
||||
AC_ARG_VAR(WEECHAT_HOME, [Force a single WeeChat home directory for config, logs, scripts, etc.])
|
||||
|
||||
if test "x$WEECHAT_HOME" = "x" ; then
|
||||
WEECHAT_HOME="~/.weechat"
|
||||
fi
|
||||
AC_DEFINE_UNQUOTED(WEECHAT_HOME, "$WEECHAT_HOME")
|
||||
|
||||
if test "x$CA_FILE" = "x" ; then
|
||||
CA_FILE="/etc/ssl/certs/ca-certificates.crt"
|
||||
fi
|
||||
AC_DEFINE_UNQUOTED(CA_FILE, "$CA_FILE")
|
||||
|
||||
not_asked=""
|
||||
not_found=""
|
||||
|
||||
@@ -508,7 +501,7 @@ RUBY_VERSION=
|
||||
if test "x$enable_ruby" = "xyes" ; then
|
||||
RUBY_CFLAGS=""
|
||||
RUBY_LFLAGS=""
|
||||
for v in "2.7" "2.6" "2.5" "2.4" "2.3" "2.2" "2.1" "2.0" "1.9" "1.8" ; do
|
||||
for v in "3.1" "3.0" "2.7" "2.6" "2.5" "2.4" "2.3" "2.2" "2.1" "2.0" "1.9" "1.8" ; do
|
||||
pkgconfig_ruby_found=`$PKGCONFIG --exists ruby-$v 2>/dev/null`
|
||||
if test "x$?" = "x0" ; then
|
||||
RUBY_VERSION=`$PKGCONFIG --modversion ruby-$v`
|
||||
@@ -580,7 +573,7 @@ if test "x$enable_lua" = "xyes" ; then
|
||||
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
|
||||
AC_MSG_CHECKING(for Lua headers and libraries with pkg-config)
|
||||
echo
|
||||
for l in "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do
|
||||
for l in "54" "5.4" "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do
|
||||
pkgconfig_lua_found=`$PKGCONFIG --exists lua$l 2>/dev/null`
|
||||
if test "x$?" = "x0" ; then
|
||||
LUA_VERSION=`$PKGCONFIG --modversion lua$l`
|
||||
@@ -599,7 +592,7 @@ if test "x$enable_lua" = "xyes" ; then
|
||||
|
||||
if test "x$LUA_CFLAGS" = "x" -o "x$LUA_LFLAGS" = "x" ; then
|
||||
LUACONFIG=""
|
||||
AC_CHECK_PROGS(LUACONFIG, lua-config53 lua-config5.3 lua-config52 lua-config5.2 lua-config51 lua-config5.1 lua-config50 lua-config5.0 lua-config)
|
||||
AC_CHECK_PROGS(LUACONFIG, lua-config54 lua-config5.4 lua-config53 lua-config5.3 lua-config52 lua-config5.2 lua-config51 lua-config5.1 lua-config50 lua-config5.0 lua-config)
|
||||
if test "x$LUACONFIG" != "x" ; then
|
||||
AC_MSG_CHECKING(for Lua headers and libraries with lua-config)
|
||||
echo
|
||||
@@ -617,7 +610,7 @@ if test "x$enable_lua" = "xyes" ; then
|
||||
if test "x$ac_found_lua_header" = "xyes" -a "x$ac_found_liblua_header" = "xyes"; then
|
||||
LUA_CFLAGS="$CFLAGS"
|
||||
fi
|
||||
for l in "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do
|
||||
for l in "54" "5.4" "53" "5.3" "52" "5.2" "51" "5.1" "50" "5.0" "$lua_suffix" "" ; do
|
||||
AC_CHECK_LIB(lua$l,lua_call,ac_found_lua_lib="yes",ac_found_lua_lib="no")
|
||||
if test "x$ac_found_lua_lib" = "xyes" ; then
|
||||
LUA_VERSION=">=5.1.0"
|
||||
@@ -840,6 +833,7 @@ if test "x$enable_php" = "xyes" ; then
|
||||
|
||||
PHP_CFLAGS=""
|
||||
PHP_LFLAGS=""
|
||||
PHP_VERSIONS="8.1 81 8.0 80 8 7.4 74 7.3 73 7.2 72 7.1 71 7.0 70 7 $php_suffix"
|
||||
|
||||
if test -n "$php_inc"; then
|
||||
CFLAGS="$CFLAGS -I$php_inc"
|
||||
@@ -852,7 +846,7 @@ if test "x$enable_php" = "xyes" ; then
|
||||
if test "x$PHP_CFLAGS" = "x" -o "x$PHP_LFLAGS" = "x" ; then
|
||||
AC_MSG_CHECKING(for PHP headers and libraries with pkg-config)
|
||||
echo
|
||||
for l in "7.4" "74" "7.3" "73" "7.2" "72" "7.1" "71" "7.0" "70" "7" "$php_suffix" "" ; do
|
||||
for l in $PHP_VERSIONS "" ; do
|
||||
pkgconfig_php_found=`$PKGCONFIG --exists php$l 2>/dev/null`
|
||||
if test "x$?" = "x0" ; then
|
||||
pkgconfig_php_found=`$PKGCONFIG --atleast-version=7 php$l 2>/dev/null`
|
||||
@@ -869,11 +863,12 @@ if test "x$enable_php" = "xyes" ; then
|
||||
if test "x$PHP_CFLAGS" = "x" -o "x$PHP_LFLAGS" = "x" ; then
|
||||
PHPCONFIG=""
|
||||
AC_MSG_CHECKING(for PHP headers and libraries with php-config)
|
||||
for l in "7.4" "74" "7.3" "73" "7.2" "72" "7.1" "71" "7.0" "70" "7" "$php_suffix" "" ; do
|
||||
echo
|
||||
for l in $PHP_VERSIONS "" ; do
|
||||
AC_CHECK_PROG(PHPCONFIG, "php-config$l", "php-config$l")
|
||||
if test "x$PHPCONFIG" != "x" ; then
|
||||
php_config_version=`$PHPCONFIG --version`
|
||||
if test "x${php_config_version#7}" != "x${php_config_version}" ; then
|
||||
if echo "x$php_config_version" | grep -e "^x7" -e "^x8" 1>/dev/null 2>&1 ; then
|
||||
PHP_VERSION=$php_config_version
|
||||
PHP_CFLAGS=`$PHPCONFIG --includes`
|
||||
PHP_LFLAGS="-L$($PHPCONFIG --prefix)/lib/ $($PHPCONFIG --libs) -lphp$l"
|
||||
@@ -890,23 +885,25 @@ if test "x$enable_php" = "xyes" ; then
|
||||
if test "x$ac_found_php_header" = "xyes" ; then
|
||||
PHP_CFLAGS="$CFLAGS"
|
||||
fi
|
||||
for l in "7.4" "74" "7.3" "73" "7.2" "72" "7.1" "71" "7.0" "70" "7" "$php_suffix" "" ; do
|
||||
AC_CHECK_LIB(php$l,php_execute_script,ac_found_php_lib="yes",ac_found_php_lib="no")
|
||||
if test "x$ac_found_php_lib" = "xyes" ; then
|
||||
PHP_VERSION=">=7.0.0"
|
||||
for l in $PHP_VERSIONS "" ; do
|
||||
for PHP_LIB_SUFFIX in "$l" "$(echo $l | cut -c1)" "" ; do
|
||||
AC_CHECK_LIB(php$PHP_LIB_SUFFIX,php_execute_script,ac_found_php_lib="yes",ac_found_php_lib="no")
|
||||
if test "x$ac_found_php_lib" = "xyes" ; then
|
||||
PHP_VERSION=">=7.0.0"
|
||||
|
||||
PHP_LFLAGS="$LDFLAGS -lphp7 -lm"
|
||||
PHP_LFLAGS="$LDFLAGS -lphp$PHP_LIB_SUFFIX -lm"
|
||||
|
||||
ac2_save_LDFLAGS="$LDFLAGS"
|
||||
LDFLAGS="$LDFLAGS -lphp7 -lm"
|
||||
ac2_save_LDFLAGS="$LDFLAGS"
|
||||
LDFLAGS="$LDFLAGS -lphp$PHP_LIB_SUFFIX -lm"
|
||||
|
||||
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
|
||||
LDFLAGS="$LDFLAGS -ldl"
|
||||
if echo "$host_os" | grep "^linux" 1>/dev/null 2>&1 ; then
|
||||
LDFLAGS="$LDFLAGS -ldl"
|
||||
fi
|
||||
|
||||
LDFLAGS="$ac2_save_LDFLAGS"
|
||||
break 2
|
||||
fi
|
||||
|
||||
LDFLAGS="$ac2_save_LDFLAGS"
|
||||
break
|
||||
fi
|
||||
done
|
||||
done
|
||||
fi
|
||||
|
||||
@@ -1022,6 +1019,18 @@ else
|
||||
not_asked="$not_asked trigger"
|
||||
fi
|
||||
|
||||
# ---------------------------------- typing ------------------------------------
|
||||
|
||||
if test "x$enable_typing" = "xyes" ; then
|
||||
TYPING_CFLAGS=""
|
||||
TYPING_LFLAGS=""
|
||||
AC_SUBST(TYPING_CFLAGS)
|
||||
AC_SUBST(TYPING_LFLAGS)
|
||||
AC_DEFINE(PLUGIN_TYPING)
|
||||
else
|
||||
not_asked="$not_asked typing"
|
||||
fi
|
||||
|
||||
# ---------------------------------- xfer --------------------------------------
|
||||
|
||||
if test "x$enable_xfer" = "xyes" ; then
|
||||
@@ -1166,6 +1175,27 @@ else
|
||||
AC_SUBST(ZLIB_LFLAGS)
|
||||
fi
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# zstd
|
||||
# ------------------------------------------------------------------------------
|
||||
|
||||
AC_CHECK_HEADER(zstd.h,ac_found_zstd_header="yes",ac_found_zstd_header="no")
|
||||
AC_CHECK_LIB(zstd,ZSTD_compress,ac_found_zstd_lib="yes",ac_found_zstd_lib="no")
|
||||
|
||||
AC_MSG_CHECKING(for zstd headers and libraries)
|
||||
if test "x$ac_found_zstd_header" = "xno" -o "x$ac_found_zstd_lib" = "xno" ; then
|
||||
AC_MSG_RESULT(no)
|
||||
AC_MSG_ERROR([
|
||||
*** zstd was not found. You may want to get it from https://github.com/facebook/zstd
|
||||
*** or try to install it with your software package manager.])
|
||||
else
|
||||
AC_MSG_RESULT(yes)
|
||||
ZSTD_CFLAGS=`pkg-config libzstd --cflags`
|
||||
ZSTD_LFLAGS=`pkg-config libzstd --libs`
|
||||
AC_SUBST(ZSTD_CFLAGS)
|
||||
AC_SUBST(ZSTD_LFLAGS)
|
||||
fi
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# curl
|
||||
# ------------------------------------------------------------------------------
|
||||
@@ -1254,7 +1284,7 @@ if test "x$enable_man" = "xyes" -o "x$enable_doc" = "xyes"; then
|
||||
enable_man="no"
|
||||
enable_doc="no"
|
||||
fi
|
||||
ASCIIDOCTOR_ARGS="-a experimental -a 'prewrap!' -a icons=font -a sectanchors -a source-highlighter=prettify"
|
||||
ASCIIDOCTOR_ARGS="-a experimental -a reproducible -a 'prewrap!' -a 'webfonts!' -a icons=font -a sectanchors -a source-highlighter=pygments -a pygments-style=native"
|
||||
AC_SUBST(ASCIIDOCTOR)
|
||||
AC_SUBST(ASCIIDOCTOR_ARGS)
|
||||
fi
|
||||
@@ -1374,6 +1404,7 @@ AM_CONDITIONAL(PLUGIN_JAVASCRIPT, test "$enable_javascript" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_PHP, test "$enable_php" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_SPELL, test "$enable_spell" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_TRIGGER, test "$enable_trigger" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_TYPING, test "$enable_typing" = "yes")
|
||||
AM_CONDITIONAL(PLUGIN_XFER, test "$enable_xfer" = "yes")
|
||||
AM_CONDITIONAL(TESTS, test "$enable_tests" = "yes")
|
||||
AM_CONDITIONAL(MAN, test "$enable_man" = "yes")
|
||||
@@ -1382,15 +1413,16 @@ AM_CONDITIONAL(DOC, test "$enable_doc" = "yes")
|
||||
AC_OUTPUT([Makefile
|
||||
icons/Makefile
|
||||
doc/Makefile
|
||||
doc/cs/Makefile
|
||||
doc/de/Makefile
|
||||
doc/en/Makefile
|
||||
doc/es/Makefile
|
||||
doc/fr/Makefile
|
||||
doc/it/Makefile
|
||||
doc/de/Makefile
|
||||
doc/pl/Makefile
|
||||
doc/es/Makefile
|
||||
doc/ru/Makefile
|
||||
doc/ja/Makefile
|
||||
doc/cs/Makefile
|
||||
doc/pl/Makefile
|
||||
doc/ru/Makefile
|
||||
doc/sr/Makefile
|
||||
src/Makefile
|
||||
src/core/Makefile
|
||||
src/plugins/Makefile
|
||||
@@ -1414,6 +1446,7 @@ AC_OUTPUT([Makefile
|
||||
src/plugins/php/Makefile
|
||||
src/plugins/spell/Makefile
|
||||
src/plugins/trigger/Makefile
|
||||
src/plugins/typing/Makefile
|
||||
src/plugins/xfer/Makefile
|
||||
src/gui/Makefile
|
||||
src/gui/curses/Makefile
|
||||
@@ -1502,6 +1535,9 @@ fi
|
||||
if test "x$enable_trigger" = "xyes"; then
|
||||
listplugins="$listplugins trigger"
|
||||
fi
|
||||
if test "x$enable_typing" = "xyes"; then
|
||||
listplugins="$listplugins typing"
|
||||
fi
|
||||
if test "x$enable_xfer" = "xyes"; then
|
||||
listplugins="$listplugins xfer"
|
||||
fi
|
||||
@@ -1547,7 +1583,6 @@ echo " Compile with debug..... : $msg_debug"
|
||||
echo " Compile tests.......... : $msg_tests"
|
||||
echo " Man page............... : $msg_man"
|
||||
echo " Documentation.......... : $msg_doc"
|
||||
echo " Certificate authorities : ${CA_FILE}"
|
||||
|
||||
if test "x$not_asked" != "x" || test "x$not_found" != "x"; then
|
||||
echo ""
|
||||
@@ -1561,8 +1596,10 @@ if test "x$not_asked" != "x" || test "x$not_found" != "x"; then
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "WeeChat home directory is ${WEECHAT_HOME}"
|
||||
echo ""
|
||||
if test "x$WEECHAT_HOME" != "x" ; then
|
||||
echo "WeeChat home directory is forced by default to: ${WEECHAT_HOME}"
|
||||
echo ""
|
||||
fi
|
||||
eval echo "WeeChat will be installed in $bindir"
|
||||
echo ""
|
||||
echo "configure complete, now type 'make' to build WeeChat $VERSION"
|
||||
|
||||
@@ -4,6 +4,7 @@ Priority: optional
|
||||
Maintainer: Sébastien Helleu <flashcode@flashtux.org>
|
||||
Build-Depends:
|
||||
asciidoctor (>= 1.5.4),
|
||||
ruby-pygments.rb,
|
||||
debhelper (>= 12),
|
||||
cmake, pkg-config,
|
||||
libncursesw5-dev,
|
||||
@@ -14,13 +15,14 @@ Build-Depends:
|
||||
liblua5.3-dev,
|
||||
tcl8.6-dev,
|
||||
guile-2.2-dev,
|
||||
php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
|
||||
php-dev, libphp-embed, libargon2-dev, libsodium-dev,
|
||||
libxml2-dev,
|
||||
libcurl4-gnutls-dev,
|
||||
libgcrypt20-dev,
|
||||
libgnutls28-dev,
|
||||
libzstd-dev,
|
||||
zlib1g-dev
|
||||
Standards-Version: 4.4.0
|
||||
Standards-Version: 4.6.0.1
|
||||
Homepage: https://weechat.org/
|
||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||
@@ -153,6 +155,7 @@ Description: Fast, light and extensible chat client - plugins
|
||||
- FIFO pipe for remote control
|
||||
- Relay (IRC proxy and WeeChat protocol)
|
||||
- Trigger
|
||||
- Typing
|
||||
|
||||
Package: weechat-devel-python
|
||||
Architecture: any
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-faq-es
|
||||
Title: WeeChat FAQ (Spanish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document answers frequently asked questions
|
||||
about the WeeChat IRC client (Spanish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_faq.es.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_faq.es.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-de
|
||||
Title: WeeChat tester's guide (German)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (German version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.de.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.de.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-en
|
||||
Title: WeeChat tester's guide (English)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (English version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.en.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.en.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-fr
|
||||
Title: WeeChat tester's guide (French)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (French version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.fr.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.fr.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-it
|
||||
Title: WeeChat tester's guide (Italian)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Italian version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.it.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.it.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-ja
|
||||
Title: WeeChat tester's guide (Japanese)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Japanese version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.ja.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.ja.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-pl
|
||||
Title: WeeChat tester's guide (Polish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Polish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-devel-doc/html/weechat_tester.pl.html
|
||||
Files: /usr/share/doc/weechat-devel-doc/html/weechat_tester.pl.html
|
||||
@@ -1,3 +1,70 @@
|
||||
weechat (3.5-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
* Add build dependency on libzstd-dev
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Thu, 31 Mar 2022 11:36:01 +0000
|
||||
|
||||
weechat (3.4.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
- Fix a possible man-in-the-middle attack in TLS connection to servers
|
||||
* Update build dependency from libargon2-0-dev to libargon2-dev
|
||||
(libargon2-0-dev is now virtual package) (Closes: #1005703)
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 22 Mar 2022 05:55:14 +0000
|
||||
|
||||
weechat (3.4-2) unstable; urgency=medium
|
||||
|
||||
* Remove build dependency on ruby-pygments.rb (no longer required)
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 08 Jan 2022 06:00:17 +0000
|
||||
|
||||
weechat (3.4-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release (Closes: #1001654, #1001245)
|
||||
* Remove tester's guide from weechat-doc (according to upstream changes)
|
||||
* Refresh ASCII Doctor options patch
|
||||
* Update lintian override on weechat-plugins
|
||||
* Update copyright (new year)
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Fri, 07 Jan 2022 23:03:49 +0000
|
||||
|
||||
weechat (3.3-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
* Remove patch merged upstream (which command detection in libgcrypt)
|
||||
* Minor updates in debian/copyright
|
||||
* Enable Typing plugin
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Mon, 20 Sep 2021 10:05:56 +0000
|
||||
|
||||
weechat (3.2.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
- fix CVE-2021-40516: possible denial of service (crash) via a crafted
|
||||
WebSocket in relay plugin (Closes: #993803)
|
||||
* Add a patch to fix a FTBFS (related to recent changes on which command
|
||||
output) (Closes: #993333)
|
||||
* Bump Standards-Version to 4.6.0.1
|
||||
* Remove useless HomePage field in upstream/metadata
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Tue, 07 Sep 2021 20:25:39 +0000
|
||||
|
||||
weechat (3.0.1-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
* Bump Standards-Version to 4.5.1
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Wed, 03 Mar 2021 05:30:44 +0000
|
||||
|
||||
weechat (3.0-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
* Build against Guile 3.0 (instead of 2.2) (Closes: #969680)
|
||||
|
||||
-- Emmanuel Bouthenot <kolter@debian.org> Sat, 21 Nov 2020 07:34:12 +0000
|
||||
|
||||
weechat (2.9-1) unstable; urgency=medium
|
||||
|
||||
* New upstream release
|
||||
|
||||
@@ -4,6 +4,7 @@ Priority: optional
|
||||
Maintainer: Emmanuel Bouthenot <kolter@debian.org>
|
||||
Build-Depends:
|
||||
asciidoctor (>= 1.5.4),
|
||||
ruby-pygments.rb,
|
||||
debhelper (>= 12),
|
||||
cmake, pkg-config,
|
||||
libncursesw5-dev,
|
||||
@@ -14,13 +15,14 @@ Build-Depends:
|
||||
liblua5.3-dev,
|
||||
tcl8.6-dev,
|
||||
guile-2.2-dev,
|
||||
php-dev, libphp-embed, libargon2-0-dev, libsodium-dev,
|
||||
php-dev, libphp-embed, libargon2-dev, libsodium-dev,
|
||||
libxml2-dev,
|
||||
libcurl4-gnutls-dev,
|
||||
libgcrypt20-dev,
|
||||
libgnutls28-dev,
|
||||
libzstd-dev,
|
||||
zlib1g-dev
|
||||
Standards-Version: 4.4.0
|
||||
Standards-Version: 4.6.0.1
|
||||
Homepage: https://weechat.org/
|
||||
Vcs-Git: https://salsa.debian.org/kolter/weechat.git
|
||||
Vcs-Browser: https://salsa.debian.org/kolter/weechat
|
||||
@@ -148,6 +150,7 @@ Description: Fast, light and extensible chat client - plugins
|
||||
- FIFO pipe for remote control
|
||||
- Relay (IRC proxy and WeeChat protocol)
|
||||
- Trigger
|
||||
- Typing
|
||||
|
||||
Package: weechat-python
|
||||
Architecture: any
|
||||
|
||||
@@ -4,7 +4,7 @@ Upstream-Contact: Sébastien Helleu <flashcode@flashtux.org>
|
||||
Source: https://weechat.org/
|
||||
|
||||
Files: *
|
||||
Copyright: 2003-2021, Sébastien Helleu <flashcode@flashtux.org>
|
||||
Copyright: 2003-2022, Sébastien Helleu <flashcode@flashtux.org>
|
||||
License: GPL-3+
|
||||
|
||||
Files: src/core/wee-command.c
|
||||
|
||||
+2
-2
@@ -1,2 +1,2 @@
|
||||
version=3
|
||||
opts=pgpsigurlmangle=s/$/.asc/ https://weechat.org/files/src/weechat-(\d.*)\.tar\.bz2
|
||||
version=4
|
||||
opts=pgpsigurlmangle=s/$/.asc/ https://weechat.org/download/ /files/src/weechat-(\d.*)\.tar\.xz
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
Document: weechat-faq-es
|
||||
Title: WeeChat FAQ (Spanish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document answers frequently asked questions
|
||||
about the WeeChat IRC client (Spanish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_faq.es.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-de
|
||||
Title: WeeChat tester's guide (German)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (German version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.de.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.de.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-en
|
||||
Title: WeeChat tester's guide (English)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (English version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.en.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.en.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-fr
|
||||
Title: WeeChat tester's guide (French)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (French version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.fr.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.fr.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-it
|
||||
Title: WeeChat tester's guide (Italian)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Italian version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.it.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.it.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-ja
|
||||
Title: WeeChat tester's guide (Japanese)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Japanese version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.ja.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.ja.html
|
||||
@@ -1,10 +0,0 @@
|
||||
Document: weechat-tester-pl
|
||||
Title: WeeChat tester's guide (Polish)
|
||||
Author: Sébastien Helleu
|
||||
Abstract: This document describes how to test and report
|
||||
bugs against the WeeChat IRC Client (Polish version).
|
||||
Section: Network/Communication
|
||||
|
||||
Format: HTML
|
||||
Index: /usr/share/doc/weechat-doc/html/weechat_tester.pl.html
|
||||
Files: /usr/share/doc/weechat-doc/html/weechat_tester.pl.html
|
||||
@@ -4,3 +4,4 @@ usr/lib/*/weechat/plugins/relay.so
|
||||
usr/lib/*/weechat/plugins/script.so
|
||||
usr/lib/*/weechat/plugins/spell.so
|
||||
usr/lib/*/weechat/plugins/trigger.so
|
||||
usr/lib/*/weechat/plugins/typing.so
|
||||
|
||||
+54
-2
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2009 Emmanuel Bouthenot <kolter@openics.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
@@ -21,7 +21,58 @@
|
||||
if(ENABLE_MAN OR ENABLE_DOC)
|
||||
find_package(Asciidoctor)
|
||||
if(ASCIIDOCTOR_FOUND)
|
||||
set(ASCIIDOCTOR_ARGS -a experimental -a "prewrap!" -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=prettify)
|
||||
# common asciidoctor arguments
|
||||
set(ASCIIDOCTOR_ARGS -a experimental -a reproducible -a "prewrap!" -a "webfonts!" -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=pygments -a pygments-style=native)
|
||||
|
||||
# sed arguments used to replace links in ChangeLog and release notes
|
||||
set(SED_LINKS_ARGS
|
||||
-e "'s/issue #\\([0-9][0-9]*\\)/https:\\/\\/github.com\\/weechat\\/weechat\\/issues\\/\\1[issue #\\1^]/g'"
|
||||
-e "'s/bug #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/bugs\\/?\\1[bug #\\1^]/g'"
|
||||
-e "'s/task #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/task\\/?\\1[task #\\1^]/g'"
|
||||
-e "'s/patch #\\([0-9][0-9]*\\)/https:\\/\\/savannah.nongnu.org\\/patch\\/?\\1[patch #\\1^]/g'"
|
||||
-e "'s/debian #\\([0-9][0-9]*\\)/http:\\/\\/bugs.debian.org\\/cgi-bin\\/bugreport.cgi?bug=\\1[debian bug #\\1^]/g'"
|
||||
-e "'s/\\(CVE-[0-9][0-9]*-[0-9][0-9]*\\)/https:\\/\\/cve.mitre.org\\/cgi-bin\\/cvename.cgi?name=\\1[\\1^]/g'"
|
||||
)
|
||||
|
||||
# ChangeLog
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
|
||||
COMMAND sed ARGS ${SED_LINKS_ARGS} ${CMAKE_CURRENT_SOURCE_DIR}/../ChangeLog.adoc > ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../ChangeLog.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -a docinfodir="${CMAKE_CURRENT_SOURCE_DIR}" -o ChangeLog.html ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ChangeLog-links.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building ChangeLog.html"
|
||||
)
|
||||
add_custom_target(changelog DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ChangeLog.html)
|
||||
|
||||
# Release notes
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
|
||||
COMMAND sed ARGS ${SED_LINKS_ARGS} ${CMAKE_CURRENT_SOURCE_DIR}/../ReleaseNotes.adoc > ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../ReleaseNotes.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -a docinfodir="${CMAKE_CURRENT_SOURCE_DIR}" -o ReleaseNotes.html ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/docinfo.html
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes-links.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building ReleaseNotes.html"
|
||||
)
|
||||
add_custom_target(rn DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ReleaseNotes.html)
|
||||
|
||||
# man/doc in all languages
|
||||
add_subdirectory(cs)
|
||||
add_subdirectory(de)
|
||||
add_subdirectory(en)
|
||||
@@ -31,6 +82,7 @@ if(ENABLE_MAN OR ENABLE_DOC)
|
||||
add_subdirectory(ja)
|
||||
add_subdirectory(pl)
|
||||
add_subdirectory(ru)
|
||||
add_subdirectory(sr)
|
||||
else()
|
||||
message(SEND_ERROR "Asciidoctor not found")
|
||||
endif()
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2006 Julien Louis <ptitlouis@sysif.net>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
@@ -18,7 +18,7 @@
|
||||
# along with WeeChat. If not, see <https://www.gnu.org/licenses/>.
|
||||
#
|
||||
|
||||
SUBDIRS = . cs de en es fr it ja pl ru
|
||||
SUBDIRS = . cs de en es fr it ja pl ru sr
|
||||
|
||||
EXTRA_DIST = docgen.py \
|
||||
docinfo.html \
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
|
||||
@@ -16,11 +16,11 @@
|
||||
(works only with the command *weechat-headless*, not compatible with option
|
||||
"--daemon").
|
||||
|
||||
// TRANSLATION MISSING
|
||||
*-d*, *--dir* _<path>_::
|
||||
Nastav cestu jako dovmský adresář pro WeeChat (použitou pro konfigurační
|
||||
soubory, logy, uživatelské pluginy a skripty), výchozí hodnota je
|
||||
"~/.weechat" (poznámka: složka bude vytvořena pokud nebude nalezena
|
||||
Weechatem)
|
||||
Force a single directory for all WeeChat files (directory is created if not found).
|
||||
Four directories can be given, separated by colons (in this order: config,
|
||||
data, cache, runtime).
|
||||
Pokud tato volba není zadána, použije se promněná prostředí WEECHAT_HOME
|
||||
(pokud není prázdná)
|
||||
|
||||
|
||||
+31
-28
@@ -1,6 +1,6 @@
|
||||
// tag::plugin_options[]
|
||||
Pro kompletní dokumentaci nastavení pluginů a jejich volby podívejte se na
|
||||
https://weechat.org/doc[WeeChat user's guide].
|
||||
https://weechat.org/doc/[WeeChat user's guide].
|
||||
|
||||
S irc pluginem se můžete doččasně připojit na server s URL jako:
|
||||
|
||||
@@ -8,7 +8,7 @@ S irc pluginem se můžete doččasně připojit na server s URL jako:
|
||||
|
||||
K připojení na IRC kanál Weechatu pro podporu s přezdívkou "mynick":
|
||||
|
||||
irc://mynick@chat.freenode.net/#weechat
|
||||
irc://mynick@irc.libera.chat/#weechat
|
||||
|
||||
IPv6 adresa může být uzavřena do hranatých závorek k přidání portu, například:
|
||||
|
||||
@@ -16,79 +16,82 @@ IPv6 adresa může být uzavřena do hranatých závorek k přidání portu, nap
|
||||
// end::plugin_options[]
|
||||
|
||||
// tag::files[]
|
||||
$HOME/.weechat/weechat.conf::
|
||||
$HOME/.config/weechat/weechat.conf::
|
||||
hlavní konfigurační soubor WeeChatu
|
||||
|
||||
$HOME/.weechat/plugins.conf::
|
||||
$HOME/.config/weechat/plugins.conf::
|
||||
soubor konfigurace pluginů
|
||||
|
||||
$HOME/.weechat/sec.conf::
|
||||
$HOME/.config/weechat/sec.conf::
|
||||
konfigurační soubor s chráněnými daty
|
||||
|
||||
$HOME/.weechat/alias.conf::
|
||||
$HOME/.config/weechat/alias.conf::
|
||||
configurační soubor pro _alias_ plugin
|
||||
|
||||
$HOME/.weechat/buflist.conf::
|
||||
$HOME/.config/weechat/buflist.conf::
|
||||
konfigurační soubor pro _buflist_ plugin
|
||||
|
||||
$HOME/.weechat/charset.conf::
|
||||
$HOME/.config/weechat/charset.conf::
|
||||
konfigurační soubor pro _charset_ plugin
|
||||
|
||||
$HOME/.weechat/exec.conf::
|
||||
$HOME/.config/weechat/exec.conf::
|
||||
konfigurační soubor pro _exec_ plugin
|
||||
|
||||
$HOME/.weechat/fifo.conf::
|
||||
$HOME/.config/weechat/fifo.conf::
|
||||
konfigurační soubor pro _fifo_ plugin
|
||||
|
||||
$HOME/.weechat/fset.conf::
|
||||
$HOME/.config/weechat/fset.conf::
|
||||
konfigurační soubor pro _fset_ plugin
|
||||
|
||||
$HOME/.weechat/guile.conf::
|
||||
$HOME/.config/weechat/guile.conf::
|
||||
konfigurační soubor pro _guile_ plugin
|
||||
|
||||
$HOME/.weechat/irc.conf::
|
||||
$HOME/.config/weechat/irc.conf::
|
||||
konfigurační soubor pro _irc_ plugin
|
||||
|
||||
$HOME/.weechat/javascript.conf::
|
||||
$HOME/.config/weechat/javascript.conf::
|
||||
konfigurační soubor pro _javascript_ plugin
|
||||
|
||||
$HOME/.weechat/logger.conf::
|
||||
$HOME/.config/weechat/logger.conf::
|
||||
konfigurační soubor pro _logger_ plugin
|
||||
|
||||
$HOME/.weechat/lua.conf::
|
||||
$HOME/.config/weechat/lua.conf::
|
||||
konfigurační soubor pro _lua_ plugin
|
||||
|
||||
$HOME/.weechat/perl.conf::
|
||||
$HOME/.config/weechat/perl.conf::
|
||||
konfigurační soubor pro _perl_ plugin
|
||||
|
||||
$HOME/.weechat/php.conf::
|
||||
$HOME/.config/weechat/php.conf::
|
||||
konfigurační soubor pro _php_ plugin
|
||||
|
||||
$HOME/.weechat/python.conf::
|
||||
$HOME/.config/weechat/python.conf::
|
||||
konfigurační soubor pro _python_ plugin
|
||||
|
||||
$HOME/.weechat/relay.conf::
|
||||
$HOME/.config/weechat/relay.conf::
|
||||
konfigurační soubor pro _relay_ plugin
|
||||
|
||||
$HOME/.weechat/ruby.conf::
|
||||
$HOME/.config/weechat/ruby.conf::
|
||||
konfigurační soubor pro _ruby_ plugin
|
||||
|
||||
$HOME/.weechat/script.conf::
|
||||
$HOME/.config/weechat/script.conf::
|
||||
konfigurační soubor pro _script_ plugin
|
||||
|
||||
$HOME/.weechat/spell.conf::
|
||||
$HOME/.config/weechat/spell.conf::
|
||||
konfigurační soubor pro _spell_ plugin
|
||||
|
||||
$HOME/.weechat/tcl.conf::
|
||||
$HOME/.config/weechat/tcl.conf::
|
||||
konfigurační soubor pro _tcl_ plugin
|
||||
|
||||
$HOME/.weechat/trigger.conf::
|
||||
$HOME/.config/weechat/trigger.conf::
|
||||
konfigurační soubor pro _trigger_ plugin
|
||||
|
||||
$HOME/.weechat/xfer.conf::
|
||||
$HOME/.config/weechat/typing.conf::
|
||||
konfigurační soubor pro _typing_ plugin
|
||||
|
||||
$HOME/.config/weechat/xfer.conf::
|
||||
konfigurační soubor pro _xfer_ plugin
|
||||
|
||||
$HOME/.weechat/weechat.log::
|
||||
$HOME/.local/share/weechat/weechat.log::
|
||||
soubor záznamů WeeChatu
|
||||
// end::files[]
|
||||
|
||||
@@ -96,7 +99,7 @@ $HOME/.weechat/weechat.log::
|
||||
WeeChat je napsán Sébastienem Helleu a přispěvovateli (kompletní seznam je v
|
||||
souboru AUTHORS.adoc).
|
||||
|
||||
Copyright (C) 2003-2021 {author}
|
||||
Copyright (C) 2003-2022 {author}
|
||||
|
||||
WeeChat is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -67,4 +67,4 @@ include::includes/man.cs.adoc[tag=copyright]
|
||||
|
||||
== PODPORA / HLÁŠENÍ CHYB
|
||||
|
||||
Pro pomoc nebo hlášení chyb https://weechat.org/about/support
|
||||
Pro pomoc nebo hlášení chyb https://weechat.org/about/support/
|
||||
|
||||
@@ -62,4 +62,4 @@ include::includes/man.cs.adoc[tag=copyright]
|
||||
|
||||
== PODPORA / HLÁŠENÍ CHYB
|
||||
|
||||
Pro pomoc nebo hlášení chyb https://weechat.org/about/support
|
||||
Pro pomoc nebo hlášení chyb https://weechat.org/about/support/
|
||||
|
||||
@@ -113,13 +113,13 @@ Použijte příkaz `/plugin` k zobrazení nahraných pluginů, pravděpodobně u
|
||||
Můžete přidat irc server příkazem `/server`, například:
|
||||
|
||||
----
|
||||
/server add freenode chat.freenode.net
|
||||
/server add libera irc.libera.chat/6697 -ssl
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
In this command, `freenode` is the internal server name used by WeeChat:
|
||||
you'll be able to connect with `/connect freenode` and the server options
|
||||
are _irc.server.freenode.xxx_.
|
||||
In this command, `libera` is the internal server name used by WeeChat:
|
||||
you'll be able to connect with `/connect libera` and the server options
|
||||
are _irc.server.libera.xxx_.
|
||||
|
||||
Jako obvykle je poskytována nápověda pokud se ztratíte:
|
||||
|
||||
@@ -138,45 +138,38 @@ Pro každou serverovou volbu WeeChat použije její hodnotu pokud je definována
|
||||
(není "prázdná"). Jinak WeeChat použije výchozí hodnotu ("irc.server_default.xxx).
|
||||
|
||||
Například, je zde výchozí přezdívka (založena na vašem un*x loginu), můžete
|
||||
ji přepsat pro freenode s následujícím příkazem:
|
||||
ji přepsat pro libera s následujícím příkazem:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
|
||||
/set irc.server.libera.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
|
||||
----
|
||||
|
||||
Nastavení username a realname:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.username "Mé uživatelské jméno"
|
||||
/set irc.server.freenode.realname "Mé skutečné jméno"
|
||||
/set irc.server.libera.username "Mé uživatelské jméno"
|
||||
/set irc.server.libera.realname "Mé skutečné jméno"
|
||||
----
|
||||
|
||||
K zapnutí automatického připojení při spuštění:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.autoconnect on
|
||||
----
|
||||
|
||||
K připojení s SSL:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.addresses "chat.freenode.net/7000"
|
||||
/set irc.server.freenode.ssl on
|
||||
/set irc.server.libera.autoconnect on
|
||||
----
|
||||
|
||||
Pokud je na serveru podporován SASL, můžete jej použít pro autentizaci (mužete
|
||||
být identifikován před připojením kanálů):
|
||||
|
||||
----
|
||||
/set irc.server.freenode.sasl_username "mynick"
|
||||
/set irc.server.freenode.sasl_password "xxxxxxx"
|
||||
/set irc.server.libera.sasl_username "mynick"
|
||||
/set irc.server.libera.sasl_password "xxxxxxx"
|
||||
----
|
||||
|
||||
K spuštění příkazů po připojení k serveru, například k autentizaci s nickserv
|
||||
(pouze pokud nepoužíváte autentizaci přes SASL):
|
||||
|
||||
----
|
||||
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
|
||||
/set irc.server.libera.command "/msg nickserv identify xxxxxxx"
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
@@ -194,24 +187,50 @@ First setup a passphrase:
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
Then add a secured data with your freenode password:
|
||||
Then add a secured data with your libera password:
|
||||
|
||||
----
|
||||
/secure set freenode_password xxxxxxx
|
||||
/secure set libera_password xxxxxxx
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
Then you can use `+${sec.data.freenode_password}+` instead of your password in
|
||||
Then you can use `+${sec.data.libera_password}+` instead of your password in
|
||||
IRC options mentioned above, for example:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
|
||||
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
|
||||
----
|
||||
|
||||
K automatickému připojení některých kanálů při připojování k serveru:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.autojoin "#channel1,#channel2"
|
||||
/set irc.server.libera.autojoin "#channel1,#channel2"
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
The `/autojoin` command lets you configure the _autojoin_ option easily
|
||||
(see `/help autojoin`).
|
||||
|
||||
// TRANSLATION MISSING
|
||||
You can also configure WeeChat to automatically update the _autojoin_ option
|
||||
when you join or leave channels:
|
||||
|
||||
----
|
||||
/set irc.server_default.autojoin_dynamic on
|
||||
----
|
||||
|
||||
K smazání hodnoty serverové volby a k použití výchozí hodnoty místo ní,
|
||||
například k požití výchozích přezdívek (irc.server_default.nicks):
|
||||
|
||||
----
|
||||
/unset irc.server.libera.nicks
|
||||
----
|
||||
|
||||
Ostatní volby: můžete nastavit ostatní volby s následujícím příkazem ("xxx" je
|
||||
název volby):
|
||||
|
||||
----
|
||||
/set irc.server.libera.xxx value
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
@@ -220,29 +239,15 @@ You can complete name and value of options with the kbd:[Tab] key
|
||||
and kbd:[Shift+Tab] for a partial completion (useful for long words like
|
||||
the name of option).
|
||||
|
||||
K smazání hodnoty serverové volby a k použití výchozí hodnoty místo ní,
|
||||
například k požití výchozích přezdívek (irc.server_default.nicks):
|
||||
|
||||
----
|
||||
/unset irc.server.freenode.nicks
|
||||
----
|
||||
|
||||
Ostatní volby: můžete nastavit ostatní volby s následujícím příkazem ("xxx" je
|
||||
název volby):
|
||||
|
||||
----
|
||||
/set irc.server.freenode.xxx value
|
||||
----
|
||||
|
||||
[[connect_to_irc_server]]
|
||||
== Připojení k IRC serveru
|
||||
|
||||
----
|
||||
/connect freenode
|
||||
/connect libera
|
||||
----
|
||||
|
||||
// TRANSLATION MISSING
|
||||
With this command, WeeChat connects to the freenode server and auto-joins the
|
||||
With this command, WeeChat connects to the libera server and auto-joins the
|
||||
channels configured in the "autojoin" server option.
|
||||
|
||||
// TRANSLATION MISSING
|
||||
@@ -396,14 +401,16 @@ například:
|
||||
|
||||
Zkuste `/help script` pro více informací.
|
||||
|
||||
|
||||
A seznam skriptů je dostupný v WeeChatu s příkazem `/script` nebo na této
|
||||
adrese https://weechat.org/scripts
|
||||
// TRANSLATION MISSING
|
||||
A list of scripts is available in WeeChat with `/script` or on
|
||||
https://weechat.org/scripts/[this page ^↗^,window=_blank].
|
||||
|
||||
[[more_doc]]
|
||||
== Další dokumentace
|
||||
|
||||
Nyní jste schopni používat WeeChat a můžete si přečíst FAQ/dokumentaci pro
|
||||
jakékoliv další otázky: https://weechat.org/doc
|
||||
// TRANSLATION MISSING
|
||||
You can now use WeeChat and read
|
||||
https://weechat.org/doc/[FAQ/documentation ^↗^,window=_blank]
|
||||
for any other questions.
|
||||
|
||||
Ať máte radost z použití WeeChatu!
|
||||
|
||||
+1
-14
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -107,17 +107,4 @@ if(ENABLE_DOC)
|
||||
add_custom_target(doc-quickstart-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# tester's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_tester.de.html"
|
||||
)
|
||||
add_custom_target(doc-tester-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
endif()
|
||||
|
||||
+2
-8
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2006 Julien Louis <ptitlouis@sysif.net>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
@@ -28,7 +28,6 @@ EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_scripting.de.adoc \
|
||||
weechat_faq.de.adoc \
|
||||
weechat_quickstart.de.adoc \
|
||||
weechat_tester.de.adoc \
|
||||
includes/autogen_api_completions.de.adoc \
|
||||
includes/autogen_api_hdata.de.adoc \
|
||||
includes/autogen_api_infolists.de.adoc \
|
||||
@@ -53,8 +52,7 @@ if DOC
|
||||
doc_targets = weechat_user.de.html \
|
||||
weechat_scripting.de.html \
|
||||
weechat_faq.de.html \
|
||||
weechat_quickstart.de.html \
|
||||
weechat_tester.de.html
|
||||
weechat_quickstart.de.html
|
||||
doc_install = install-doc
|
||||
doc_uninstall = uninstall-doc
|
||||
endif
|
||||
@@ -82,10 +80,6 @@ weechat_faq.de.html: weechat_faq.de.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
weechat_quickstart.de.html: weechat_quickstart.de.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.de.html $(abs_top_srcdir)/doc/de/weechat_quickstart.de.adoc
|
||||
|
||||
# tester's guide
|
||||
weechat_tester.de.html: weechat_tester.de.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.de.html $(abs_top_srcdir)/doc/de/weechat_tester.de.adoc
|
||||
|
||||
# install man/docs
|
||||
|
||||
install-data-hook: $(man_install) $(doc_install)
|
||||
|
||||
@@ -18,23 +18,25 @@
|
||||
|
||||
| guile | guile_script | Liste der Skripten
|
||||
|
||||
| irc | irc_channel | aktueller IRC-Channel
|
||||
| irc | irc_channel | aktueller IRC-Kanal
|
||||
|
||||
| irc | irc_channel_nicks_hosts | Liste der Nicks und Hostnamen des aktuellen Channels
|
||||
| irc | irc_channel_nicks_hosts | Liste der Nicks und Hostnamen des aktuellen Kanals
|
||||
|
||||
| irc | irc_channel_topic | Thema des aktuellen IRC-Channels
|
||||
| irc | irc_channel_topic | Thema des aktuellen IRC-Kanals
|
||||
|
||||
| irc | irc_channels | Channels auf allen IRC Servern
|
||||
| irc | irc_channels | Kanäle auf allen IRC Servern
|
||||
|
||||
| irc | irc_channels_autojoin | Kanäle, die automatisch auf dem aktuellen Server betreten werden (Option "autojoin")
|
||||
|
||||
| irc | irc_ignores_numbers | Anzahl für festgelegte Ignorierungen
|
||||
|
||||
| irc | irc_modelist_masks | Modelist Maske für aktuellen IRC Channel; benötigtes Argument: modelist mode
|
||||
| irc | irc_modelist_masks | Modelist Maske für aktuellen IRC Kanal; benötigtes Argument: modelist mode
|
||||
|
||||
| irc | irc_modelist_numbers | Modelist Nummern für aktuellen IRC Channel; benötigtes Argument: modelist mode
|
||||
| irc | irc_modelist_numbers | Modelist Nummern für aktuellen IRC Kanal; benötigtes Argument: modelist mode
|
||||
|
||||
| irc | irc_msg_kick | Standardmitteilung wenn man jemanden aus einem Channel wirft
|
||||
| irc | irc_msg_kick | Standardmitteilung wenn man jemanden aus einem Kanal wirftchannel
|
||||
|
||||
| irc | irc_msg_part | Standardmitteilung beim Verlassen (/part) eines IRC-Channels
|
||||
| irc | irc_msg_part | Standardmitteilung beim Verlassen (/part) eines IRC-Kanals
|
||||
|
||||
| irc | irc_notify_nicks | Nicks für die eine Benachrichtigung existiert
|
||||
|
||||
@@ -44,17 +46,17 @@
|
||||
|
||||
| irc | irc_server | aktueller IRC-Server
|
||||
|
||||
| irc | irc_server_channels | Channels des derzeitigen IRC-Server
|
||||
| irc | irc_server_channels | Kanäle des derzeitigen IRC-Server
|
||||
|
||||
| irc | irc_server_nick | Nick beim derzeitigen IRC-Server
|
||||
|
||||
| irc | irc_server_nicks | Nicks für alle Channels auf dem aktuellen IRC-Server
|
||||
| irc | irc_server_nicks | Nicks für alle Kanäle auf dem aktuellen IRC-Server
|
||||
|
||||
| irc | irc_server_privates | Privat auf aktuellem IRC Server
|
||||
|
||||
| irc | irc_servers | IRC-Server (interne Namen)
|
||||
|
||||
| irc | nick | Liste der Nicks im aktuellen Channel
|
||||
| irc | nick | Liste der Nicks im aktuellen Kanal
|
||||
|
||||
| javascript | javascript_script | Liste der Skripten
|
||||
|
||||
@@ -92,6 +94,8 @@
|
||||
|
||||
| tcl | tcl_script | Liste der Skripten
|
||||
|
||||
| trigger | trigger_add_arguments | Argumente für den Befehl, der einen Trigger hinzufügt: Name des Triggers, Hooks, Hook-Argumente, Hook-Bedingungen, Hook-Regex, Hook-Befehl, Hook-Rückgabecode, nachfolgende Aktionen
|
||||
|
||||
| trigger | trigger_hook_arguments | Standardargumente für einen Hook
|
||||
|
||||
| trigger | trigger_hook_command | Standardbefehl für einen Hook
|
||||
@@ -146,6 +150,14 @@
|
||||
|
||||
| weechat | cursor_areas | Bereiche in denen der Cursor frei bewegt werden kann ("chat" oder Name einer Bar)
|
||||
|
||||
| weechat | custom_bar_item_add_arguments | Argumente für den Befehl, der ein benutzerdefiniertes Bar-Item hinzufügt: Elementname, Bedingungen,Inhalt
|
||||
|
||||
| weechat | custom_bar_item_conditions | Bedingungen für benutzerdefinierte Bar-Items
|
||||
|
||||
| weechat | custom_bar_item_contents | Inhalte für benutzerdefinierte Bar-Items
|
||||
|
||||
| weechat | custom_bar_items_names | Namen der benutzerdefinierten Bar-Items
|
||||
|
||||
| weechat | env_value | Wert einer Umgebungsvariable
|
||||
|
||||
| weechat | env_vars | Umgebungsvariablen
|
||||
|
||||
@@ -53,7 +53,7 @@ _next_script_ (pointer, hdata: "guile_script") +
|
||||
|
||||
| irc
|
||||
| [[hdata_irc_channel]]<<hdata_irc_channel,irc_channel>>
|
||||
| IRC-Channel
|
||||
| IRC-Kanal
|
||||
| -
|
||||
| _type_ (integer) +
|
||||
_name_ (string) +
|
||||
@@ -79,6 +79,8 @@ _last_nick_speaking_time_ (pointer, hdata: "irc_channel_speaking") +
|
||||
_modelists_ (pointer, hdata: "irc_modelist") +
|
||||
_last_modelist_ (pointer, hdata: "irc_modelist") +
|
||||
_join_smart_filtered_ (hashtable) +
|
||||
_typing_state_ (integer) +
|
||||
_typing_status_sent_ (time) +
|
||||
_buffer_ (pointer, hdata: "buffer") +
|
||||
_buffer_as_string_ (string) +
|
||||
_prev_channel_ (pointer, hdata: "irc_channel") +
|
||||
@@ -87,7 +89,7 @@ _next_channel_ (pointer, hdata: "irc_channel") +
|
||||
|
||||
| irc
|
||||
| [[hdata_irc_channel_speaking]]<<hdata_irc_channel_speaking,irc_channel_speaking>>
|
||||
| IRC channel_speaking
|
||||
| irc channel_speaking
|
||||
| -
|
||||
| _nick_ (string) +
|
||||
_time_last_message_ (time) +
|
||||
@@ -233,6 +235,12 @@ _hook_connect_ (pointer, hdata: "hook") +
|
||||
_hook_fd_ (pointer, hdata: "hook") +
|
||||
_hook_timer_connection_ (pointer, hdata: "hook") +
|
||||
_hook_timer_sasl_ (pointer, hdata: "hook") +
|
||||
_sasl_scram_client_first_ (string) +
|
||||
_sasl_scram_salted_pwd_ (other) +
|
||||
_sasl_scram_salted_pwd_size_ (integer) +
|
||||
_sasl_scram_auth_message_ (string) +
|
||||
_sasl_temp_username_ (string) +
|
||||
_sasl_temp_password_ (string) +
|
||||
_is_connected_ (integer) +
|
||||
_ssl_connected_ (integer) +
|
||||
_disconnected_ (integer) +
|
||||
@@ -263,6 +271,10 @@ _chantypes_ (string) +
|
||||
_chanmodes_ (string) +
|
||||
_monitor_ (integer) +
|
||||
_monitor_time_ (time) +
|
||||
_clienttagdeny_ (string) +
|
||||
_clienttagdeny_count_ (integer) +
|
||||
_clienttagdeny_array_ (string, array_size: "clienttagdeny_count") +
|
||||
_typing_allowed_ (integer) +
|
||||
_reconnect_delay_ (integer) +
|
||||
_reconnect_start_ (time) +
|
||||
_command_time_ (time) +
|
||||
|
||||
@@ -18,17 +18,17 @@
|
||||
|
||||
| guile | guile_script | Liste der Skripten | Skript Pointer (optional) | Name des Skriptes (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
| irc | irc_channel | Liste der Channels eines IRC-Servers | Channel Pointer (optional) | Server,Channel (Channel ist optional)
|
||||
| irc | irc_channel | Liste der Kanäle eines IRC-Servers | Pointer vom Kanal (optional) | Server,Kanal (Kanal ist optional)
|
||||
|
||||
| irc | irc_color_weechat | Zuordnung der IRC Farbkodierung und der WeeChat Farbnamen | - | -
|
||||
|
||||
| irc | irc_ignore | Liste von ignorierten IRCs | Ignore Pointer (optional) | -
|
||||
|
||||
| irc | irc_modelist | Liste der Channel-Mode-Liste für einen IRC-Channel | Modelist Pointer (optional) | Server,Channel,Type (Type ist optional)
|
||||
| irc | irc_modelist | Liste der Kanalmoduslisten für einen IRC-Kanal | Modelist Pointer (optional) | Server,Channel,Type (Type ist optional)
|
||||
|
||||
| irc | irc_modelist_item | Liste der Items in der Channel-Modeliste | Modelist Item Pointer (optional) | Server,Channel,Type,Nummer (Nummer ist optional)
|
||||
| irc | irc_modelist_item | Liste der Items in der Kanal-Modeliste | Modelist Item Pointer (optional) | Server,Channel,Type,Nummer (Nummer ist optional)
|
||||
|
||||
| irc | irc_nick | Liste der Nicks im IRC-Channel | Nick Pointer (optional) | server,channel,nick (nick ist optional)
|
||||
| irc | irc_nick | Liste der Nicks im IRC-Kanal | Nick Pointer (optional) | server,channel,nick (nick ist optional)
|
||||
|
||||
| irc | irc_notify | Liste mit Benachrichtigungen | Benachrichtigungspointer (optional) | Servername (Platzhalter "*" kann verwendet werden) (optional)
|
||||
|
||||
|
||||
@@ -16,9 +16,11 @@
|
||||
|
||||
| guile | guile_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| irc | irc_buffer | holt Buffer Pointer für einen IRC Server/Channel/Nick | server,channel,nick (Channel und Nicks sind optional)
|
||||
| irc | irc_buffer | holt Buffer Pointer für einen IRC Server/Kanal/Nick | server,channel,nick (Kanal und Nicks sind optional)
|
||||
|
||||
| irc | irc_is_channel | 1, falls die Zeichenkette ein gültiger IRC-Channelname für den Server ist | Server,Channel (Server ist optional)
|
||||
| irc | irc_is_channel | 1, falls die Zeichenkette ein gültiger IRC-Kanalname für den Server ist | Server,Kanal (Server ist optional)
|
||||
|
||||
| irc | irc_is_message_ignored | 1, wenn der Nick ignoriert wird (Meldung wird nicht angezeigt) | Server,Nachricht (Nachricht ist die unverarbeitete IRC Nachricht)
|
||||
|
||||
| irc | irc_is_nick | 1, falls die Zeichenkette ein gültiger IRC Nickname ist | Server,Nickname (Server ist optional)
|
||||
|
||||
@@ -58,7 +60,7 @@
|
||||
|
||||
| php | php_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| python | python2_bin | Pfad für Python 2.x Interpreter | -
|
||||
| python | python2_bin | Pfad zum Python 2.x Interpreter (*veraltet*, seit WeeChat Version 2.6 müssen Skripten Python3 verwenden) | -
|
||||
|
||||
| python | python_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
|
||||
|
||||
@@ -74,7 +76,7 @@
|
||||
|
||||
| ruby | ruby_version | Version des verwendeten Interpreters | -
|
||||
|
||||
| spell | spell_dict | durch Kommata getrennte Liste von Wörterbüchern, die in diesem Buffer genutzt werden sollen | Buffer-Pointer ("0x12345678") oder der vollständige Buffername ("irc.freenode.#weechat")
|
||||
| spell | spell_dict | durch Kommata getrennte Liste von Wörterbüchern, die in diesem Buffer genutzt werden sollen | Buffer-Pointer ("0x12345678") oder der vollständige Buffername ("irc.libera.#weechat")
|
||||
|
||||
| tcl | tcl_eval | Evaluierung des Quelltextes | Quelltext welcher ausgeführt werden soll
|
||||
|
||||
@@ -132,7 +134,15 @@
|
||||
|
||||
| weechat | version_number | WeeChat-Version (als Zahl) | -
|
||||
|
||||
| weechat | weechat_dir | WeeChat Verzeichnis | -
|
||||
| weechat | weechat_cache_dir | WeeChat Cache-Verzeichnis | -
|
||||
|
||||
| weechat | weechat_config_dir | WeeChat Konfigurationsverzeichnis | -
|
||||
|
||||
| weechat | weechat_daemon | 1, falls WeeChat im Daemon-Modus ausgeführt wird (ohne Oberfläche, im Hintergrund) | -
|
||||
|
||||
| weechat | weechat_data_dir | WeeChat-Datenverzeichnis | -
|
||||
|
||||
| weechat | weechat_dir | WeeChat-Verzeichnis (*veraltet* seit Version 3.2, ersetzt durch "weechat_config_dir", "weechat_data_dir", "weechat_cache_dir" und "weechat_runtime_dir") | -
|
||||
|
||||
| weechat | weechat_headless | 1, falls WeeChat im Hintergrundmodus ausgeführt wird | -
|
||||
|
||||
@@ -140,6 +150,8 @@
|
||||
|
||||
| weechat | weechat_localedir | "lokales" Verzeichnis von WeeChat | -
|
||||
|
||||
| weechat | weechat_runtime_dir | WeeChat-Laufzeitverzeichnis | -
|
||||
|
||||
| weechat | weechat_sharedir | WeeChat "share" Verzeichnis | -
|
||||
|
||||
| weechat | weechat_site | WeeChat Seite | -
|
||||
|
||||
@@ -8,11 +8,13 @@
|
||||
|===
|
||||
| Erweiterung | Name | Beschreibung | Hashtable (Eingabe) | Hashtable (Ausgabe)
|
||||
|
||||
| irc | irc_message_parse | Parse eine IRC Nachricht | "message": IRC Nachricht, "server": Servername (optional) | "tags": Tags, "message_without_tags": Nachrichten ohne Tags, "nick": Nick, "user": Benutzername, "host": Host, "command": Befehl, "channel": Channel, "arguments": Argumente (schließt Channel ein), "text": Text (zum Beispiel eine Nachricht von einem User), "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird)
|
||||
| irc | irc_message_parse | Parse eine IRC Nachricht | "message": IRC Nachricht, "server": Servername (optional) | "tags": Tags, "tag_xxx": Wert des Tags "xxx" ohne Escapezeichen (ein Schlüssel pro Tag), "message_without_tags": Nachrichten ohne Tags, "nick": Nick, "user": Benutzer, "host": Host, "command": Befehl, "channel": Kanal, "arguments": Argumente (schließt Kanal ein), "text": Text (zum Beispiel eine Nachricht von einem User), "param1" ... "paramN": geparste Befehlsparameter, "num_params": Anzahl geparste Befehlsparameter, "pos_command": Index der "command" Nachricht ("-1" falls "command" nicht gefunden wird), "pos_arguments": Index der "arguments" Nachricht ("-1" falls "arguments" nicht gefunden wird), "pos_channel": Index der "channel" Nachricht ("-1" falls "channel" nicht gefunden wird),"pos_text": Index für "text" Nachricht ("-1" falls "text" nicht gefunden wird)
|
||||
|
||||
| irc | irc_message_split | trennt eine IRC Nachricht (standardmäßig in 512 Bytes große Nachrichten) | "message": IRC Nachricht, "server": Servername (optional) | "msg1" ... "msgN": Nachrichten die versendet werden sollen (ohne abschließendes "\r\n"), "args1" ... "argsN": Argumente für Nachrichten, "count": Anzahl der Nachrichten
|
||||
|
||||
| weechat | focus_info | Fokusinformationen abrufen | "x": x-Koordinate (Zeichenfolge mit Ganzzahl >= 0), "y": y-Koordinate (Zeichenfolge mit Ganzzahl >= 0) | siehe Funktion "hook_focus" in API Dokumentation
|
||||
|
||||
| weechat | secured_data | schutzwürdige Daten | - | schutzwürdige Daten: Namen und Werte (Vorsicht: Dies sind vertrauliche Daten: drucken oder protokollieren Sie diese NICHT)
|
||||
|
||||
|===
|
||||
// end::infos_hashtable[]
|
||||
|
||||
@@ -4,18 +4,26 @@
|
||||
//
|
||||
|
||||
// tag::plugins_priority[]
|
||||
. charset (15000)
|
||||
. logger (14000)
|
||||
. exec (13000)
|
||||
. trigger (12000)
|
||||
. spell (11000)
|
||||
. alias (10000)
|
||||
. buflist (9000)
|
||||
. fifo (8000)
|
||||
. charset (16000)
|
||||
. logger (15000)
|
||||
. exec (14000)
|
||||
. trigger (13000)
|
||||
. spell (12000)
|
||||
. alias (11000)
|
||||
. buflist (10000)
|
||||
. fifo (9000)
|
||||
. typing (8000)
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile, javascript, lua, perl, php, python, ruby, tcl (4000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
// end::plugins_priority[]
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -16,8 +16,8 @@
|
||||
** Werte: sha224, sha256, sha384, sha512
|
||||
** Standardwert: `+sha256+`
|
||||
|
||||
* [[option_sec.crypt.passphrase_file]] *sec.crypt.passphrase_file*
|
||||
** Beschreibung: pass:none[Pfad zu einer Datei die die Passphrase enthält um damit schutzwürdige Daten zu ver- und entschlüsseln. Diese Einstellung findet nur Anwendung, wenn die Datei sec.conf gelesen wird. Es wird auch nur die erste Zeile eingelesen. Diese Datei wird nur verwendet, falls die Umgebungsvariable "WEECHAT_PASSPHRASE" nicht genutzt wird (die Umgebungsvariable besitzt eine höhere Priorität). Sicherheitshinweis: Es ist anzuraten dieser Datei nur für die eigene Person Leserechte zu gewähren und die Datei nicht im Heimatverzeichnis von WeeChat zu sichern (zum Beispiel im /home/ Order); Beispiel: "~/.weechat-passphrase"]
|
||||
* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command*
|
||||
** Beschreibung: pass:none[Auslesen der Passphrase aus der Ausgabe des angegebenen Befehls (nur die erste Zeile wird verwendet und darf kein zusätzliches Zeichen enthalten); Diese Option wird nur verwendet, wenn die Datei sec.conf gelesen wird und wenn die Umgebungsvariable "WEECHAT_PASSPHRASE" nicht festgelegt ist (die Umgebungsvariable hat eine höhere Priorität); Beispiel mit Passwortspeicher: "/usr/bin/pass show weechat / passphrase"]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
@@ -55,7 +55,7 @@
|
||||
** Standardwert: `+white+`
|
||||
|
||||
* [[option_weechat.color.chat_channel]] *weechat.color.chat_channel*
|
||||
** Beschreibung: pass:none[Farbe für den Channel-Namen]
|
||||
** Beschreibung: pass:none[Farbe für den Kanalnamen]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+white+`
|
||||
@@ -403,7 +403,7 @@
|
||||
** Standardwert: `+default+`
|
||||
|
||||
* [[option_weechat.color.status_number]] *weechat.color.status_number*
|
||||
** Beschreibung: pass:none[Farbe des aktuellen Channels in der Statuszeile]
|
||||
** Beschreibung: pass:none[Farbe des aktuellen Kanals in der Statuszeile]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+yellow+`
|
||||
@@ -846,6 +846,12 @@
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_weechat.look.hotlist_update_on_buffer_switch]] *weechat.look.hotlist_update_on_buffer_switch*
|
||||
** Beschreibung: pass:none[Aktualisiert die Hotlist, wenn der Buffer gewechselt wird]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_weechat.look.input_cursor_scroll]] *weechat.look.input_cursor_scroll*
|
||||
** Beschreibung: pass:none[Anzahl an Zeichen die nach links verschoben werden sollen, falls das Ende der Eingabezeile erreicht wird]
|
||||
** Typ: integer
|
||||
@@ -1140,6 +1146,12 @@
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"- "+`
|
||||
|
||||
* [[option_weechat.look.read_marker_update_on_buffer_switch]] *weechat.look.read_marker_update_on_buffer_switch*
|
||||
** Beschreibung: pass:none[Aktualisiert das Lesezeichen, wenn der Buffer gewechselt wird]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_weechat.look.save_config_on_exit]] *weechat.look.save_config_on_exit*
|
||||
** Beschreibung: pass:none[die aktuelle Konfiguration wird beim Beenden automatisch gesichert]
|
||||
** Typ: boolesch
|
||||
@@ -1248,11 +1260,17 @@
|
||||
** Werte: 1 .. 2147483647
|
||||
** Standardwert: `+60+`
|
||||
|
||||
* [[option_weechat.network.gnutls_ca_file]] *weechat.network.gnutls_ca_file*
|
||||
** Beschreibung: pass:none[Datei beinhaltet die digitalen Zertifikate ("%h" wird durch das WeeChat Verzeichnis ersetzt, Standardverzeichnis: "~/.weechat")]
|
||||
* [[option_weechat.network.gnutls_ca_system]] *weechat.network.gnutls_ca_system*
|
||||
** Beschreibung: pass:none[lädt die standardmäßigen vertrauenswürdigen Zertifizierungsstellen des Systems beim Start; Dies kann deaktiviert werden, um Speicherplatz zu sparen, falls keine SSL-Verbindungen verwendet werden]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_weechat.network.gnutls_ca_user]] *weechat.network.gnutls_ca_user*
|
||||
** Beschreibung: pass:none[zusätzliche Datei(en) bei den Zertifizierungsstellen; mehrere Dateien müssen durch Doppelpunkte getrennt werden (jeder Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"/etc/ssl/certs/ca-certificates.crt"+`
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_weechat.network.gnutls_handshake_timeout]] *weechat.network.gnutls_handshake_timeout*
|
||||
** Beschreibung: pass:none[Zeitüberschreitung für gnutls Handshake (in Sekunden)]
|
||||
@@ -1272,12 +1290,6 @@
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"*"+`
|
||||
|
||||
* [[option_weechat.plugin.debug]] *weechat.plugin.debug*
|
||||
** Beschreibung: pass:none[aktiviert Debug-Nachrichten für alle Erweiterungen (diese Einstellung ist standardmäßig deaktiviert und das ist auch gut so)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_weechat.plugin.extension]] *weechat.plugin.extension*
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Dateinamenserweiterungen, welche für die Erweiterungen genutzt werden sollen]
|
||||
** Typ: Zeichenkette
|
||||
@@ -1285,10 +1297,10 @@
|
||||
** Standardwert: `+".so,.dll"+`
|
||||
|
||||
* [[option_weechat.plugin.path]] *weechat.plugin.path*
|
||||
** Beschreibung: pass:none[Suchpfad für Erweiterungen ("%h"' wird durch das WeeChat-Basisverzeichnis ersetzt, voreingestellt ist "~/.weechat")]
|
||||
** Beschreibung: pass:none[Pfad für die Suche nach Erweiterungen (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"%h/plugins"+`
|
||||
** Standardwert: `+"${weechat_data_dir}/plugins"+`
|
||||
|
||||
* [[option_weechat.plugin.save_config_on_unload]] *weechat.plugin.save_config_on_unload*
|
||||
** Beschreibung: pass:none[speichert Konfigurationen, falls Erweiterungen beendet werden]
|
||||
@@ -1296,14 +1308,44 @@
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_weechat.signal.sighup]] *weechat.signal.sighup*
|
||||
** Beschreibung: pass:none[Befehl welcher ausgeführt werden soll, wenn das Signal empfangen wird. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"${if:${info:weechat_headless}?/reload:/quit -yes}"+`
|
||||
|
||||
* [[option_weechat.signal.sigquit]] *weechat.signal.sigquit*
|
||||
** Beschreibung: pass:none[Befehl welcher ausgeführt werden soll, wenn das Signal empfangen wird. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"/quit -yes"+`
|
||||
|
||||
* [[option_weechat.signal.sigterm]] *weechat.signal.sigterm*
|
||||
** Beschreibung: pass:none[Befehl welcher ausgeführt werden soll, wenn das Signal empfangen wird. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"/quit -yes"+`
|
||||
|
||||
* [[option_weechat.signal.sigusr1]] *weechat.signal.sigusr1*
|
||||
** Beschreibung: pass:none[Befehl welcher ausgeführt werden soll, wenn das Signal empfangen wird. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_weechat.signal.sigusr2]] *weechat.signal.sigusr2*
|
||||
** Beschreibung: pass:none[Befehl welcher ausgeführt werden soll, wenn das Signal empfangen wird. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_weechat.startup.command_after_plugins]] *weechat.startup.command_after_plugins*
|
||||
** Beschreibung: pass:none[Nach dem Start von WeeChat wird dieser Befehl aufgerufen. Dies geschieht nachdem die Erweiterungen geladen worden sind (mehrere Befehle sind durch ";" zu trennen) (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
|
||||
** Beschreibung: pass:none[Befehl wird ausgeführt, wenn WeeChat gestartet wird, nachdem die Erweiterungen geladen wurden. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_weechat.startup.command_before_plugins]] *weechat.startup.command_before_plugins*
|
||||
** Beschreibung: pass:none[Nach dem Start von WeeChat wird dieser Befehl aufgerufen. Dies geschieht bevor die Erweiterungen geladen werden (mehrere Befehle sind durch ";" zu trennen) (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
|
||||
** Beschreibung: pass:none[Befehl wird ausgeführt, wenn WeeChat gestartet wird, bevor Erweiterungen geladen werden. Mehrere Befehle können durch Semikolons getrennt werden (Hinweis: Inhalt wird ausgewertet, siehe / help eval)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
@@ -1409,10 +1451,10 @@
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_logger.file.path]] *logger.file.path*
|
||||
** Beschreibung: pass:none[Pfad für WeeChat Protokolldateien; "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat"); eine Datumsspezifikation ist zulässig (siehe: man strftime) (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
|
||||
** Beschreibung: pass:none[Pfad für WeeChat-Protokolldateien; Datumsangaben sind zulässig (siehe man strftime) (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"%h/logs/"+`
|
||||
** Standardwert: `+"${weechat_data_dir}/logs"+`
|
||||
|
||||
* [[option_logger.file.replacement_char]] *logger.file.replacement_char*
|
||||
** Beschreibung: pass:none[Ersatzzeichen für Dateinamen, falls der Dateiname Sonderzeichen beinhaltet (z.B. das Trennzeichen bei Verzeichnissen "/")]
|
||||
@@ -1675,7 +1717,7 @@
|
||||
** Standardwert: `+"${color:default},"+`
|
||||
|
||||
* [[option_buflist.format.indent]] *buflist.format.indent*
|
||||
** Beschreibung: pass:none[Zeichenkette die beim Einrücken von Channel und privaten Buffern angezeigt wird (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
|
||||
** Beschreibung: pass:none[Zeichenkette die beim Einrücken von Kanal und privaten Buffern angezeigt wird (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+" "+`
|
||||
@@ -1693,7 +1735,7 @@
|
||||
** Standardwert: `+"${name}"+`
|
||||
|
||||
* [[option_buflist.format.nick_prefix]] *buflist.format.nick_prefix*
|
||||
** Beschreibung: pass:none[Format des Nick-Präfix für einen Channel (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
|
||||
** Beschreibung: pass:none[Format des Nick-Präfix für einen Kanal (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"${color_nick_prefix}${nick_prefix}"+`
|
||||
@@ -1704,6 +1746,12 @@
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"${color:green}${number}${if:${number_displayed}?.: }"+`
|
||||
|
||||
* [[option_buflist.format.tls_version]] *buflist.format.tls_version*
|
||||
** Beschreibung: pass:none[Format für die TLS-Version für einen IRC-Serverbuffer (Hinweis: Inhalt wird evaluiert, siehe /help buflist)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+" ${color:default}(${if:${tls_version}==TLS1.3?${color:green}:${if:${tls_version}==TLS1.2?${color:yellow}:${color:red}}}${translate:${tls_version}}${color:default})"+`
|
||||
|
||||
* [[option_buflist.look.add_newline]] *buflist.look.add_newline*
|
||||
** Beschreibung: pass:none[fügt einen Zeilenumbruch zwischen die einzelnen Buffer hinzu um pro Zeile einen Buffer anzuzeigen (empfohlen); falls deaktiviert muss ein Zeilenumbruch manuell hinzugefügt werden, "${\\n}", des Weiteren ist die Mausunterstützung nicht mehr gegeben]
|
||||
** Typ: boolesch
|
||||
@@ -1765,10 +1813,16 @@
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_buflist.look.sort]] *buflist.look.sort*
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Feldern um die Buffer zu sortieren; jedes Feld ist entweder eine hdata Variable von Buffer ("var"), eine hdata Variable vom Typ IRC Server ("irc_server.var") oder eine hdata Variable vom Typ IRC Channel ("irc_channel.var"); wird das "-" Zeichen vor einem Feld angewendet, wird die Ausgabe umgekehrt, um bei einem Vergleich nicht zwischen Groß- und Kleinschreibung zu unterscheiden wird das Zeichen "~" verwendet; Beispiel: "-~short_name" sortiert die Buffer nach ihrem Kurznamen, wobei dies invertiert passiert und nicht zwischen Groß-oder Kleinschreibung unterschieden wird (Hinweis: der Inhalt ist evaluiert, nur der Pointer der bar_item kann genutzt werden, Beispiel "bar_item.name")]
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Feldern um die Buffer zu sortieren; jedes Feld ist entweder eine hdata Variable von Buffer ("var"), eine hdata Variable vom Typ IRC Server ("irc_server.var") oder eine hdata Variable vom Typ IRC Kanal ("irc_channel.var"); wird das "-" Zeichen vor einem Feld angewendet, wird die Ausgabe umgekehrt, um bei einem Vergleich nicht zwischen Groß- und Kleinschreibung zu unterscheiden wird das Zeichen "~" verwendet; Beispiel: "-~short_name" sortiert die Buffer nach ihren Kurznamen, wobei dies invertiert passiert und nicht zwischen Groß-oder Kleinschreibung unterschieden wird (Hinweis: der Inhalt ist evaluiert, vor dem Aufteilen in Felder, kann nur die Variable "bar_item" genutzt werden, um zwischen verschiedenen Buffer-Items zu unterscheiden, zum Beispiel "${bar_item.name}")]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"number,-active"+`
|
||||
|
||||
* [[option_buflist.look.use_items]] *buflist.look.use_items*
|
||||
** Beschreibung: pass:none[Anzahl der Buflist-Bar-Items, die verwendet werden können; die Item-Namen sind: "buflist", "buflist2", "buflist3"; Seien Sie vorsichtig, wenn Sie mehr als ein Bar-Item verwenden, wird die Anzeige der Bufferliste verlangsamt]
|
||||
** Typ: integer
|
||||
** Werte: 1 .. 3
|
||||
** Standardwert: `+1+`
|
||||
// end::buflist_options[]
|
||||
|
||||
// tag::fifo_options[]
|
||||
@@ -1779,12 +1833,56 @@
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_fifo.file.path]] *fifo.file.path*
|
||||
** Beschreibung: pass:none[Pfad für eingehende Dateien: "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat"); WeeChat PID kann mit ${info:pid} genutzt werden (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
|
||||
** Beschreibung: pass:none[Pfad für FIFO-Datei; WeeChat PID kann im Pfad mit ${info:pid} verwendet werden (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"%h/weechat_fifo"+`
|
||||
** Standardwert: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
|
||||
// end::fifo_options[]
|
||||
|
||||
// tag::typing_options[]
|
||||
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
|
||||
** Beschreibung: pass:none[Anzahl der Sekunden, nachdem der Pausenstatus gesetzt wurde: wenn erreicht, wird der Tippstatus entfernt]
|
||||
** Typ: integer
|
||||
** Werte: 1 .. 2147483647
|
||||
** Standardwert: `+30+`
|
||||
|
||||
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
|
||||
** Beschreibung: pass:none[Anzahl der Sekunden nach Setzen des Tippstatuses: wenn erreicht, wird der Tipptatus entfernt]
|
||||
** Typ: integer
|
||||
** Werte: 1 .. 2147483647
|
||||
** Standardwert: `+6+`
|
||||
|
||||
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
|
||||
** Beschreibung: pass:none[Anzahl der Sekunden nach Eingabe des letzten Zeichens: wenn erreicht, wird der Schreibstatus "pausiert" und es werden keine Schreibsignale mehr gesendet]
|
||||
** Typ: integer
|
||||
** Werte: 1 .. 2147483647
|
||||
** Standardwert: `+10+`
|
||||
|
||||
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
|
||||
** Beschreibung: pass:none[Tippfunktion für andere Nicks aktiviert (Anzeige von Tippinfos für Nicks, die im aktuellen Buffer schreiben)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
|
||||
** Beschreibung: pass:none[Tippfunktion für eigene Nachrichten aktiviert (Schreibinformationen an andere Benutzer senden)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
|
||||
** Beschreibung: pass:none[Mindestanzahl von Zeichen in der Nachricht, um das Senden von Tippsignalen auszulösen]
|
||||
** Typ: integer
|
||||
** Werte: 1 .. 2147483647
|
||||
** Standardwert: `+4+`
|
||||
|
||||
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
|
||||
** Beschreibung: pass:none[maximale Anzahl von Zeichen, die im Bar-Item "typing" angezeigt werden (0 = Inhalt nicht abschneiden)]
|
||||
** Typ: integer
|
||||
** Werte: 0 .. 2147483647
|
||||
** Standardwert: `+0+`
|
||||
// end::typing_options[]
|
||||
|
||||
// tag::xfer_options[]
|
||||
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
|
||||
** Beschreibung: pass:none[Textfarbe für Status: "abgebrochen"]
|
||||
@@ -1853,7 +1951,7 @@
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_xfer.file.auto_accept_nicks]] *xfer.file.auto_accept_nicks*
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nicks deren Chat- und Transferanfragen automatisch akzeptiert werden. Format : "server.nick" (für einen speziellen Server) oder "nick" (global, für alle Server); Beispiel: "freenode.FlashCode,andrew"]
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nicks deren Chat- und Transferanfragen automatisch akzeptiert werden. Format : "server.nick" (für einen speziellen Server) oder "nick" (global, für alle Server); Beispiel: "libera.FlashCode,andrew"]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
@@ -1883,10 +1981,10 @@
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_xfer.file.download_path]] *xfer.file.download_path*
|
||||
** Beschreibung: pass:none[Pfad für eingehende Dateien: "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat") (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
|
||||
** Beschreibung: pass:none[Pfad zum Schreiben eingehender Dateien (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"%h/xfer"+`
|
||||
** Standardwert: `+"${weechat_data_dir}/xfer"+`
|
||||
|
||||
* [[option_xfer.file.download_temporary_suffix]] *xfer.file.download_temporary_suffix*
|
||||
** Beschreibung: pass:none[Dateiendung der temporären Datei, die während eines eingehenden Datei-Transfers genutzt wird und die gelöscht wird, sobald die Übertragung erfolgreich beendet wurde; wenn -leer-, dann wird keine temporäre Dateiendung während des Transfers genutzt]
|
||||
@@ -1895,7 +1993,7 @@
|
||||
** Standardwert: `+".part"+`
|
||||
|
||||
* [[option_xfer.file.upload_path]] *xfer.file.upload_path*
|
||||
** Beschreibung: pass:none[Pfad für ausgehende Dateien (falls kein Pfad durch den Anwender angegeben wurde): "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat") (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
|
||||
** Beschreibung: pass:none[Pfad zum Lesen von Dateien beim Senden (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"~"+`
|
||||
@@ -1981,7 +2079,7 @@
|
||||
** Standardwert: `+lightcyan+`
|
||||
|
||||
* [[option_irc.color.item_channel_modes]] *irc.color.item_channel_modes*
|
||||
** Beschreibung: pass:none[Farbe der Channel-Modes (neben dem Channelnamen)]
|
||||
** Beschreibung: pass:none[Farbe der Kanal-Modes (neben des Kanalnamens)]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+default+`
|
||||
@@ -2004,6 +2102,24 @@
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+default+`
|
||||
|
||||
* [[option_irc.color.item_tls_version_deprecated]] *irc.color.item_tls_version_deprecated*
|
||||
** Beschreibung: pass:none[Farbe die für eine unsicherere TLS-Version im Bar-Item "tls_version" genutzt wird]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+yellow+`
|
||||
|
||||
* [[option_irc.color.item_tls_version_insecure]] *irc.color.item_tls_version_insecure*
|
||||
** Beschreibung: pass:none[Farbe die für eine unsichere TLS-Versionen im Bar-Item "tls_version" genutzt wirdFarbe für unsichere TLS-Versionen im Balkenelement "tls_version"]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+red+`
|
||||
|
||||
* [[option_irc.color.item_tls_version_ok]] *irc.color.item_tls_version_ok*
|
||||
** Beschreibung: pass:none[Farbe die für eine sicherere TLS-Version im Bar-Item "tls_version" genutzt wird]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+green+`
|
||||
|
||||
* [[option_irc.color.message_account]] *irc.color.message_account*
|
||||
** Beschreibung: pass:none[Textfarbe für "account" Nachrichten]
|
||||
** Typ: Farbe
|
||||
@@ -2017,7 +2133,7 @@
|
||||
** Standardwert: `+brown+`
|
||||
|
||||
* [[option_irc.color.message_join]] *irc.color.message_join*
|
||||
** Beschreibung: pass:none[Textfarbe in der die Meldungen für das Betreten eines Channels angezeigt werden soll]
|
||||
** Beschreibung: pass:none[Textfarbe in der die Meldungen für das Betreten eines Kanals angezeigt werden soll]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+green+`
|
||||
@@ -2029,7 +2145,7 @@
|
||||
** Standardwert: `+red+`
|
||||
|
||||
* [[option_irc.color.message_quit]] *irc.color.message_quit*
|
||||
** Beschreibung: pass:none[Textfarbe in der die Meldungen für das Verlassen/Beenden eines Channels angezeigt werden soll]
|
||||
** Beschreibung: pass:none[Textfarbe in der die Meldungen für das Verlassen/Beenden eines Kanals angezeigt werden soll]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+red+`
|
||||
@@ -2065,49 +2181,49 @@
|
||||
** Standardwert: `+default+`
|
||||
|
||||
* [[option_irc.color.topic_current]] *irc.color.topic_current*
|
||||
** Beschreibung: pass:none[Farbe in dem das aktuelle Thema des Channels dargestellt werden soll (wenn ein Channel betreten oder der Befehl /topic genutzt wird)]
|
||||
** Beschreibung: pass:none[Farbe in dem das aktuelle Thema des Kanals dargestellt werden soll (wenn ein Kanal betreten oder der Befehl /topic genutzt wird)]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+default+`
|
||||
|
||||
* [[option_irc.color.topic_new]] *irc.color.topic_new*
|
||||
** Beschreibung: pass:none[Farbe in dem das neue Thema des Channels dargestellt werden soll, falls das Thema des Channels geändert wurde]
|
||||
** Beschreibung: pass:none[Farbe in dem das neue Thema des Kanals dargestellt werden soll, falls das Thema des Kanals geändert wurde]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+white+`
|
||||
|
||||
* [[option_irc.color.topic_old]] *irc.color.topic_old*
|
||||
** Beschreibung: pass:none[Farbe in dem das alte Thema des Channels dargestellt werden soll, falls das Thema des Channels geändert wurde]
|
||||
** Beschreibung: pass:none[Farbe in dem das alte Thema des Kanals dargestellt werden soll, falls das Thema des Kanals geändert wurde]
|
||||
** Typ: Farbe
|
||||
** Werte: ein Farbname für WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), eine Terminal-Farbnummer oder ein Alias; Attribute können vor eine Farbe gesetzt werden (gilt ausschließlich für die Textfarbe und nicht für den Hintergrund): "*" für fett, "!" für invertiert, "/" für kursiv, "_" für unterstrichen
|
||||
** Standardwert: `+default+`
|
||||
|
||||
* [[option_irc.look.buffer_open_before_autojoin]] *irc.look.buffer_open_before_autojoin*
|
||||
** Beschreibung: pass:none[betritt man automatisch einen Channel-Buffer (mittels autojoin Option) wird dieser direkt geöffnet, ohne auf die JOIN Nachricht des Servers zu warten; dies ist sinnvoll um die Channels immer an der selben Position bei einem Neustart zu öffnen]
|
||||
** Beschreibung: pass:none[betritt man automatisch einen Kanal-Buffer (mittels autojoin Option) wird dieser direkt geöffnet, ohne auf die JOIN Nachricht des Servers zu warten; dies ist sinnvoll um die Kanäle immer an der selben Position bei einem Neustart zu öffnen]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.buffer_open_before_join]] *irc.look.buffer_open_before_join*
|
||||
** Beschreibung: pass:none[betritt man mittels dem /join Befehl einen Channel wird der Buffer direkt geöffnet, ohne auf die JOIN Nachricht des Servers zu warten]
|
||||
** Beschreibung: pass:none[betritt man mittels dem /join Befehl einen Kanal wird der Buffer direkt geöffnet, ohne auf die JOIN Nachricht des Servers zu warten]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.look.buffer_switch_autojoin]] *irc.look.buffer_switch_autojoin*
|
||||
** Beschreibung: pass:none[wechselt automatisch zum Channel-Buffer falls dieser automatisch betreten wurde (mittels der Serveroption "autojoin")]
|
||||
** Beschreibung: pass:none[wechselt automatisch zum Kanal-Buffer falls dieser automatisch betreten wurde (mittels der Serveroption "autojoin")]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.buffer_switch_join]] *irc.look.buffer_switch_join*
|
||||
** Beschreibung: pass:none[wechselt automatisch zum Channel-Buffer falls dieser manuell betreten wurde (mittels dem /join Befehl)]
|
||||
** Beschreibung: pass:none[wechselt automatisch zum Kanal-Buffer falls dieser manuell betreten wurde (mittels dem /join Befehl)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.color_nicks_in_names]] *irc.look.color_nicks_in_names*
|
||||
** Beschreibung: pass:none[nutzt in der Ausgabe von /names die jeweiligen Farbe des Nick (oder bei der Auflistung der Nicks wenn man einen Channel betritt)]
|
||||
** Beschreibung: pass:none[nutzt in der Ausgabe von /names die jeweiligen Farbe des Nick (oder bei der Auflistung der Nicks wenn man einen Kanal betritt)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
@@ -2125,7 +2241,7 @@
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.color_pv_nick_like_channel]] *irc.look.color_pv_nick_like_channel*
|
||||
** Beschreibung: pass:none[nutzt die selbe Farbe für die Darstellung des Nicks im Channel wie auch im privaten Buffer]
|
||||
** Beschreibung: pass:none[nutzt die selbe Farbe für die Darstellung des Nicks im Kanal wie auch im privaten Buffer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
@@ -2136,8 +2252,14 @@
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"%a, %d %b %Y %T %z"+`
|
||||
|
||||
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
|
||||
** Beschreibung: pass:none[ACCOUNT Nachrichten anzeigen, die empfangen wurden, wenn die Funktion account-notify aktiviert ist]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.display_away]] *irc.look.display_away*
|
||||
** Beschreibung: pass:none[zeigt eine Nachricht an, sobald der Abwesenheitsstatus ein- bzw. ausgeschaltet wird (off: zeigt/sendet keine Nachricht, local: eine Nachricht wird lokal angezeigt, channel: sendet eine Nachricht an die Channels)]
|
||||
** Beschreibung: pass:none[zeigt eine Nachricht an, sobald der Abwesenheitsstatus ein- bzw. ausgeschaltet wird (off: zeigt/sendet keine Nachricht, local: eine Nachricht wird lokal angezeigt, channel: sendet eine Nachricht an die Kanäle)]
|
||||
** Typ: integer
|
||||
** Werte: off, local, channel
|
||||
** Standardwert: `+local+`
|
||||
@@ -2160,6 +2282,12 @@
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
|
||||
** Beschreibung: pass:none[zusätzliche Informationen in den JOIN-Nachrichten anzeigen: Kontoname und richtiger Name (Funktion extended-join muss aktiviert sein)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.display_host_join]] *irc.look.display_host_join*
|
||||
** Beschreibung: pass:none[zeigt den Host innerhalb einer join Nachricht an]
|
||||
** Typ: boolesch
|
||||
@@ -2179,13 +2307,13 @@
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.display_join_message]] *irc.look.display_join_message*
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nachrichten die beim Betreten eines Channels angezeigt werden sollen: 324 = Channel-Modi, 329 = Erstellungsdatum des Channels, 332 = Topic, 333 = Nick/Datum für Topic, 353 = genutzte Namen im Channel, 366 = Anzahl der Nicks im Channel]
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nachrichten die beim Betreten eines Kanals angezeigt werden sollen: 324 = Channel-Modi, 329 = Erstellungsdatum des Kanals, 332 = Topic, 333 = Nick/Datum für Topic, 353 = genutzte Namen im Kanal, 366 = Anzahl der Nicks im Kanal]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"329,332,333,366"+`
|
||||
|
||||
* [[option_irc.look.display_old_topic]] *irc.look.display_old_topic*
|
||||
** Beschreibung: pass:none[zeige das alte Thema an, falls das Thema des Channels geändert wurde]
|
||||
** Beschreibung: pass:none[zeige das alte Thema an, falls das Thema des Kanals geändert wurde]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
@@ -2209,7 +2337,7 @@
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.look.highlight_channel]] *irc.look.highlight_channel*
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Wörtern die in Channel-Buffern als Highlight erscheinen sollen (zwischen Groß- und Kleinschreibung wird nicht unterschieden. Um zwischen Groß- und Kleinschreibung zu unterscheiden muss zu Beginn "(?-i)" genutzt werden; des Weiteren können folgende Variablen genutzt werden: $nick, $channel und $server). Wird ein Buffer geöffnet, dann werden die angegeben Wörter dem Buffer-Merkmal "highlight_words" hinzugefügt. Dies bedeutet, dass diese Einstellung keinen direkten Einfluss auf schon geöffnete Buffer hat. Eine leere Zeichenkette deaktiviert ein Highlight für den Nick. Beispiel: "$nick", "(?-i)$nick"]
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Wörtern die im Kanal-Buffern als Highlight erscheinen sollen (zwischen Groß- und Kleinschreibung wird nicht unterschieden. Um zwischen Groß- und Kleinschreibung zu unterscheiden muss zu Beginn "(?-i)" genutzt werden; des Weiteren können folgende Variablen genutzt werden: $nick, $channel und $server). Wird ein Buffer geöffnet, dann werden die angegeben Wörter dem Buffer-Merkmal "highlight_words" hinzugefügt. Dies bedeutet, dass diese Einstellung keinen direkten Einfluss auf schon geöffnete Buffer hat. Eine leere Zeichenkette deaktiviert ein Highlight für den Nick. Beispiel: "$nick", "(?-i)$nick"]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"$nick"+`
|
||||
@@ -2233,7 +2361,7 @@
|
||||
** Standardwert: `+"irc_privmsg,irc_notice"+`
|
||||
|
||||
* [[option_irc.look.item_channel_modes_hide_args]] *irc.look.item_channel_modes_hide_args*
|
||||
** Beschreibung: pass:none[unterdrückt die Ausgabe von Argumenten die die Channel-Modi betreffen, sofern der entsprechende Modus für den Channel gesetzt ist ("*" unterdrückt jedwede Ausgabe von Argumenten; wird kein Wert angegeben, dann werden alle Argumente angezeigt); Beispiele: "kf" unterdrückt die Argumente, falls "k" oder "f" für den Channel gesetzt sind]
|
||||
** Beschreibung: pass:none[unterdrückt die Ausgabe von Argumenten die die Kanalmodi betreffen, sofern der entsprechende Modus für den Kanal gesetzt ist ("*" unterdrückt jedwede Ausgabe von Argumenten; wird kein Wert angegeben, dann werden alle Argumente angezeigt); Beispiele: "kf" unterdrückt die Argumente, falls "k" oder "f" für den Kanal gesetzt sind]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"k"+`
|
||||
@@ -2257,7 +2385,7 @@
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.join_auto_add_chantype]] *irc.look.join_auto_add_chantype*
|
||||
** Beschreibung: pass:none[es wird dem Channelnamen automatisch der Channel-Typ vorangestellt, falls bei der Benutzung des /join Befehls der angegebene Channel-Name keinen gültigen Typ besitzt; Beispiel: "/join weechat" wird als: "/join #weechat" versendet]
|
||||
** Beschreibung: pass:none[es wird dem Kanalnamen automatisch der Kanal-Typ vorangestellt, falls bei der Benutzung des /join Befehls der angegebene Kanalname keinen gültigen Typ besitzt; Beispiel: "/join weechat" wird als: "/join #weechat" versendet]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
@@ -2269,13 +2397,13 @@
|
||||
** Standardwert: `+current+`
|
||||
|
||||
* [[option_irc.look.new_channel_position]] *irc.look.new_channel_position*
|
||||
** Beschreibung: pass:none[ein neu geöffneter Channel wird auf eine Position gezwungen (none = standardmäßige Position (sollte der letzte Buffer in der Liste sein), next = aktueller Buffer + 1, near_server = nach dem letztem Channel/privaten Buffer des jeweiligen Servers)]
|
||||
** Beschreibung: pass:none[ein neu geöffneter Kanal wird auf eine Position gezwungen (none = standardmäßige Position (sollte der letzte Buffer in der Liste sein), next = aktueller Buffer + 1, near_server = nach dem letztem Kanal/privaten Buffer des jeweiligen Servers)]
|
||||
** Typ: integer
|
||||
** Werte: none, next, near_server
|
||||
** Standardwert: `+none+`
|
||||
|
||||
* [[option_irc.look.new_pv_position]] *irc.look.new_pv_position*
|
||||
** Beschreibung: pass:none[ein neuer privater Buffer wird auf eine Position gezwungen (none = standardmäßige Position (sollte der letzte Buffer in der Liste sein), next = aktueller Buffer + 1, near_server = nach dem letztem Channel/privaten Buffer des jeweiligen Servers)]
|
||||
** Beschreibung: pass:none[ein neuer privater Buffer wird auf eine Position gezwungen (none = standardmäßige Position (sollte der letzte Buffer in der Liste sein), next = aktueller Buffer + 1, near_server = nach dem letztem Kanal/privaten Buffer des jeweiligen Servers)]
|
||||
** Typ: integer
|
||||
** Werte: none, next, near_server
|
||||
** Standardwert: `+none+`
|
||||
@@ -2311,13 +2439,13 @@
|
||||
** Standardwert: `+auto+`
|
||||
|
||||
* [[option_irc.look.notice_welcome_redirect]] *irc.look.notice_welcome_redirect*
|
||||
** Beschreibung: pass:none[automatische Weiterleitung von Willkommen Nachrichten in den entsprechenden Channel-Buffer. Solche Nachrichten haben als Empfänger den entsprechenden Nick. Der Channelname wird aber der Nachricht vorangestellt. Eine solche ENTRYMSG Nachricht sieht auf dem Atheme IRC Server wie folgt aus: "[#channel\] Herzlich Willkommen in diesem Channel ..."]
|
||||
** Beschreibung: pass:none[automatische Weiterleitung von Willkommen Nachrichten in den entsprechenden Kanal-Buffer. Solche Nachrichten haben als Empfänger den entsprechenden Nick. Der Kanalname wird aber der Nachricht vorangestellt. Eine solche ENTRYMSG Nachricht sieht auf dem Atheme IRC Server wie folgt aus: "[#channel\] Herzlich Willkommen in diesem Kanal ..."]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.notice_welcome_tags]] *irc.look.notice_welcome_tags*
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Schlagwörtern für Willkommen-Nachrichten die in einen Channel umgeleitet werden. Zum Beispiel: "notify_private"]
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Schlagwörtern für Willkommen-Nachrichten die in einen Kanal umgeleitet werden. Zum Beispiel: "notify_private"]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
@@ -2335,7 +2463,7 @@
|
||||
** Standardwert: `+"notify_message"+`
|
||||
|
||||
* [[option_irc.look.part_closes_buffer]] *irc.look.part_closes_buffer*
|
||||
** Beschreibung: pass:none[schließt den Buffer wenn "/part" im Channel ausgeführt wird]
|
||||
** Beschreibung: pass:none[schließt den Buffer wenn "/part" im Kanal ausgeführt wird]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
@@ -2365,7 +2493,7 @@
|
||||
** Standardwert: `+merge_with_core+`
|
||||
|
||||
* [[option_irc.look.smart_filter]] *irc.look.smart_filter*
|
||||
** Beschreibung: pass:none[filtert join/part/quit/nick Nachrichten für einen Nick der einige Minuten im Channel inaktiv gewesen ist (dazu muss ein Filter mit dem Schlagwort "irc_smart_filter" erstellt werden, siehe /help filter)]
|
||||
** Beschreibung: pass:none[filtert join/part/quit/nick Nachrichten für einen Nick der einige Minuten im Kanal inaktiv gewesen ist (dazu muss ein Filter mit dem Schlagwort "irc_smart_filter" erstellt werden, siehe /help filter)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
@@ -2395,7 +2523,7 @@
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.look.smart_filter_join_unmask]] *irc.look.smart_filter_join_unmask*
|
||||
** Beschreibung: pass:none[Verzögerung (in Minuten) um Join Mitteilungen rückwirkend anzuzeigen, falls diese mittels "irc_smart_filter" unterdrückt wurden. Sollte ein Nick während der vorgegeben Zeit etwas im Channel schreiben, dann wird seine Join Mitteilung angezeigt. Dies bezieht sich auf Nachrichten, eine Notice, Änderungen am Topic oder falls der Nick gewechselt wird (0 = deaktiviert: join-Mitteilungen bleiben verborgen)]
|
||||
** Beschreibung: pass:none[Verzögerung (in Minuten) um Join Mitteilungen rückwirkend anzuzeigen, falls diese mittels "irc_smart_filter" unterdrückt wurden. Sollte ein Nick während der vorgegeben Zeit etwas im Kanal schreiben, dann wird seine Join Mitteilung angezeigt. Dies bezieht sich auf Nachrichten, eine Notice, Änderungen am Topic oder falls der Nick gewechselt wird (0 = deaktiviert: join-Mitteilungen bleiben verborgen)]
|
||||
** Typ: integer
|
||||
** Werte: 0 .. 10080
|
||||
** Standardwert: `+30+`
|
||||
@@ -2425,7 +2553,19 @@
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.look.topic_strip_colors]] *irc.look.topic_strip_colors*
|
||||
** Beschreibung: pass:none[Farben werden im Channel-Thema entfernt (wird nur genutzt wenn der Buffer-Titel angezeigt wird)]
|
||||
** Beschreibung: pass:none[Farben werden im Kanalthema entfernt (wird nur genutzt wenn der Buffer-Titel angezeigt wird)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
|
||||
** Beschreibung: pass:none[Nicks in der Bar-Item "typing" anzeigen, die in dem Kanal tippen (Option typing.look.enabled_nicks muss aktiviert sein und die Fähigkeit "message-tags" muss auf dem Server aktiviert sein)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
|
||||
** Beschreibung: pass:none[sendet den eigenen Tippstatus an Kanäle, damit andere Benutzer sehen, wenn Sie eine Nachricht schreiben (Option typing.look.enabled_self muss aktiviert sein und die Fähigkeit "message-tags" muss auf dem Server aktiviert sein)]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
@@ -2545,11 +2685,17 @@
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.server_default.autojoin]] *irc.server_default.autojoin*
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Channels, die beim Verbinden mit dem Server automatisch betreten werden (nachdem die Einstellungen command + delay ausgeführt wurden). Channels die einen Schlüssel benötigen müssen in der Auflistung als erstes aufgeführt werden. Die Schlüssel, zu den jeweiligen Channels, werden nach den Channels aufgeführt (eine Trennung von Channels und Schlüssel erfolgt mittels einem Leerzeichen. Schlüssel werden untereinander auch durch Kommata voneinander getrennt) (Beispiel: "#channel1,#channel2,#channnel3 key1,key2", #channel1 und #channel2 sind durch jeweils einen Schlüssel, key1 und key2, geschützt) (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Kanälen, die beim Verbinden mit dem Server automatisch betreten werden (nachdem die Einstellungen command + delay ausgeführt wurden). Kanäle, die einen Schlüssel benötigen, müssen in der Auflistung als erstes aufgeführt werden. Die Schlüssel, zu den jeweiligen Kanälen, werden nach den Kanälen aufgeführt (eine Trennung von Kanälen und Schlüssel erfolgt mittels eines Leerzeichens. Schlüssel werden hintereinander auch durch Kommata voneinander getrennt) (Beispiel: "#channel1,#channel2,#channnel3 key1,key2", #channel1 und #channel2 sind durch jeweils einen Schlüssel, key1 und key2, geschützt) (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_irc.server_default.autojoin_dynamic]] *irc.server_default.autojoin_dynamic*
|
||||
** Beschreibung: pass:none[Setze automatisch die "autojoin"-Option entsprechend den Kanälen, die du manuell beitrittst bzw. verlässt, mit den Befehlen /join und /part]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.server_default.autoreconnect]] *irc.server_default.autoreconnect*
|
||||
** Beschreibung: pass:none[Nach einer Trennung vom Server die Verbindung automatisch wiederherstellen]
|
||||
** Typ: boolesch
|
||||
@@ -2563,13 +2709,13 @@
|
||||
** Standardwert: `+10+`
|
||||
|
||||
* [[option_irc.server_default.autorejoin]] *irc.server_default.autorejoin*
|
||||
** Beschreibung: pass:none[Channels automatisch betreten, falls man rausgeworfen wurde. Es kann eine lokale Buffer Variable für einen Channel erstellt werden, diese lokale Variable wird vorrangig behandelt (Name der lokalen Variable: "autorejoin", Wert: "on" oder "off")]
|
||||
** Beschreibung: pass:none[Kanäle automatisch betreten, falls man rausgeworfen wurde. Es kann eine lokale Buffer Variable für einen Kanal erstellt werden, diese lokale Variable wird vorrangig behandelt (Name der lokalen Variable: "autorejoin", Wert: "on" oder "off")]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.server_default.autorejoin_delay]] *irc.server_default.autorejoin_delay*
|
||||
** Beschreibung: pass:none[Wartezeit, in Sekunden, die verstreichen soll bevor man den Channel automatisch erneut betritt (nachdem man rausgeworfen wurde)]
|
||||
** Beschreibung: pass:none[Wartezeit, in Sekunden, die verstreichen soll bevor man den Kanal automatisch erneut betritt (nachdem man rausgeworfen wurde)]
|
||||
** Typ: integer
|
||||
** Werte: 0 .. 86400
|
||||
** Standardwert: `+30+`
|
||||
@@ -2581,31 +2727,31 @@
|
||||
** Standardwert: `+0+`
|
||||
|
||||
* [[option_irc.server_default.away_check_max_nicks]] *irc.server_default.away_check_max_nicks*
|
||||
** Beschreibung: pass:none[Die Abwesenheit von Nutzern in Channels wird nicht überprüft wenn die Anzahl der Nutzer höher ist, als der angegebene Wert (0 = unbegrenzte Anzahl an Nutzern im Channel)]
|
||||
** Beschreibung: pass:none[Die Abwesenheit von Nutzern in Kanälen wird nicht überprüft wenn die Anzahl der Nutzer höher ist, als der angegebene Wert (0 = unbegrenzte Anzahl an Nutzern im Kanal)]
|
||||
** Typ: integer
|
||||
** Werte: 0 .. 1000000
|
||||
** Standardwert: `+25+`
|
||||
|
||||
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von erweiterten Client-Fähigkeiten ("client capabilities"), welche vom Server angeboten und genutzt werden sollen (siehe /help cap um eine Liste von Fähigkeiten zu erhalten die von WeeChat unterstützt werden) (Beispiel: "away-notify,multi-prefix")]
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von erweiterten Client-Fähigkeiten ("client capabilities"), welche vom Server angeboten und genutzt werden sollen (siehe /help cap um eine Liste von Fähigkeiten zu erhalten die von WeeChat unterstützt werden); "*" aktiviert standardmäßig alle Funktionen (die sowohl vom Server als auch von WeeChat unterstützt werden); Platzhalter "*" ist erlaubt; eine Fähigkeit, die mit "!" beginnt, wird ignoriert (Beispiel: "*,!account-*,!extended-join")]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
** Standardwert: `+"*"+`
|
||||
|
||||
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
|
||||
** Beschreibung: pass:none[Teil der IRC Nachricht (empfangen oder gesendet) die zum Zielzeichensatz dekodiert/kodiert werden soll; message = die komplette IRC Nachricht (Standard), channel = beginnend mit dem Channel-Namen (sofern dieser gefunden wird, ansonsten Fallback auf text), text = beginnend mit dem Nachrichtentext (dieser Wert sollte ausprobiert werden, falls es Probleme bei der Kodierung des Channel-Namen geben sollte)]
|
||||
** Beschreibung: pass:none[Teil der IRC Nachricht (empfangen oder gesendet) die zum Zielzeichensatz dekodiert/kodiert werden soll; message = die komplette IRC Nachricht (Standard), channel = beginnend mit dem Kanalnamen (sofern dieser gefunden wird, ansonsten Fallback auf text), text = beginnend mit dem Nachrichtentext (dieser Wert sollte ausprobiert werden, falls es Probleme bei der Kodierung des Kanalnamens geben sollte)]
|
||||
** Typ: integer
|
||||
** Werte: message, channel, text
|
||||
** Standardwert: `+message+`
|
||||
|
||||
* [[option_irc.server_default.command]] *irc.server_default.command*
|
||||
** Beschreibung: pass:none[Befehl(e) welche nach einem Verbindungsaufbau zum Server und vor dem automatischem Betreten von Channels ausgeführt werden sollen (mehrere Befehle müssen durch ";" getrennt werden, soll ein Semikolon genutzt werden, schreibt man "\;", die Platzhalter $nick,$channel und $server werden durch den entsprechenden Wert ersetzt) (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
|
||||
** Beschreibung: pass:none[Befehl(e) welche nach einem Verbindungsaufbau zum Server und vor dem automatischem Betreten von Kanälen ausgeführt werden sollen (mehrere Befehle können durch ";" getrennt werden, will man ein Semikolon nutzen, schreibt man "\;", die Platzhalter $nick,$channel und $server werden durch den entsprechenden Wert ersetzt) (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_irc.server_default.command_delay]] *irc.server_default.command_delay*
|
||||
** Beschreibung: pass:none[Wartezeit (in Sekunden) nach Ausführung des Befehls und bevor Channels automatisch betreten werden (Beispiel: es wird eine gewisse Zeit gewartet, um eine Authentifizierung zu ermöglichen)]
|
||||
** Beschreibung: pass:none[Wartezeit (in Sekunden) nach Ausführung des Befehls und bevor Kanäle automatisch betreten werden (Beispiel: es wird eine gewisse Zeit gewartet, um eine Authentifizierung zu ermöglichen)]
|
||||
** Typ: integer
|
||||
** Werte: 0 .. 3600
|
||||
** Standardwert: `+0+`
|
||||
@@ -2617,7 +2763,7 @@
|
||||
** Standardwert: `+60+`
|
||||
|
||||
* [[option_irc.server_default.default_chantypes]] *irc.server_default.default_chantypes*
|
||||
** Beschreibung: pass:none[channel type prefixes to use if the server does not send them in message 005 (default is "#&")]
|
||||
** Beschreibung: pass:none[Kanal-Typ-Präfix, die verwendet werden sollen, wenn der Server diese nicht in Nachricht 005 sendet (Standard ist "#&")]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"#&"+`
|
||||
@@ -2635,7 +2781,7 @@
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_irc.server_default.msg_kick]] *irc.server_default.msg_kick*
|
||||
** Beschreibung: pass:none[Standardmitteilung einer kick-Nachricht, für die Befehle "/kick" und "/kickban" (Hinweis: Inhalt wird evaluiert, siehe /help eval; Variablen die genutzt werden können: ${nick}, ${channel} und ${server})]
|
||||
** Beschreibung: pass:none[Standardmitteilung einer kick-Nachricht, für die Befehle "/kick" und "/kickban" (Hinweis: Inhalt wird evaluiert, siehe /help eval; besondere Variablen ${nick} (eigener Nick), ${target} (betroffener Nick), ${channel} und ${server}, werden durch den entsprechenden Wert ersetzt)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
@@ -2692,18 +2838,18 @@
|
||||
** Beschreibung: pass:none[auszuführende Aktion falls die SASL Authentifizierung fehlschlägt: "continue" ignoriert das Problem welches bei der Authentifizierung aufgetreten ist, "reconnect" versucht erneut eine Verbindung herzustellen, "disconnect" trennt die Verbindung zum Server (siehe Option irc.network.sasl_fail_unavailable)]
|
||||
** Typ: integer
|
||||
** Werte: continue, reconnect, disconnect
|
||||
** Standardwert: `+continue+`
|
||||
** Standardwert: `+reconnect+`
|
||||
|
||||
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
|
||||
** Beschreibung: pass:none[Datei mit privatem ECC Schlüssel für den "ecdsa-nist256p-challenge" Mechanismus ("%h" wird durch das WeeChat Verzeichnis ersetzt, standardmäßig "~/.weechat")]
|
||||
** Beschreibung: pass:none[Datei mit privatem ECC-Schlüssel für den Mechanismus "ecdsa-nist256p-challenge" (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
|
||||
** Beschreibung: pass:none[Verfahren welches bei einer SASL Authentifizierung angewandt werden soll: "plain" Passwort wird im Klartext gesendet, "ecdsa-nist256p-challenge" für öffentlich/private Schlüsselmethode, "external" SSL Zertifikat welches auf Client Seite vorliegt wird verwendet, "dh-blowfish" Passwort wird mittels blowfish verschlüsselt (unsicher, wird nicht empfohlen), "dh-aes" Passwort wird mittels AES verschlüsselt (unsicher, wird nicht empfohlen)]
|
||||
** Beschreibung: pass:none[Verfahren welches bei einer SASL Authentifizierung angewandt werden soll: "plain" Passwort wird im Klartext gesendet, "scram-sha-1" für SCRAM-Authentifizierung mit SHA-1-Digest-Algorithmus, "scram-sha-256" für SCRAM-Authenrifizierung mit SHA-256 Digest-Algorithmus, "scram-sha-512" für SCRAM-Authentifizierung mit SHA-512 Digest-Algorithmus, "ecdsa-nist256p-challenge" für öffentlich/private Schlüsselmethode, "external" ein SSL Zertifikat welches auf Client Seite vorliegt wird verwendet]
|
||||
** Typ: integer
|
||||
** Werte: plain, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes
|
||||
** Werte: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
|
||||
** Standardwert: `+plain+`
|
||||
|
||||
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
|
||||
@@ -2737,7 +2883,7 @@
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_irc.server_default.ssl_cert]] *irc.server_default.ssl_cert*
|
||||
** Beschreibung: pass:none[Datei für SSL Zertifikat um automatisch den eigenen Nick zu identifizieren ("%h" wird durch das WeeChat Verzeichnis ersetzt, Standardverzeichnis: "~/.weechat")]
|
||||
** Beschreibung: pass:none[SSL-Zertifikatdatei zur automatischen Identifizierung Ihres Nick (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
@@ -2773,7 +2919,7 @@
|
||||
** Standardwert: `+on+`
|
||||
|
||||
* [[option_irc.server_default.usermode]] *irc.server_default.usermode*
|
||||
** Beschreibung: pass:none[Usermode(s) der direkt nach der Verbindung zum Server gesetzt werden soll. Dies geschieht bevor Befehle für den Server ausgeführt und bevor Channels automatisch betreten werden; Beispiele: "+R" (um den Modus "R" zu setzen), "+R-i" (setzt den Modus "R" und entfernt den Modus "i"); siehe /help mode um den Befehlssatz angezeigt zu bekommen (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
|
||||
** Beschreibung: pass:none[Usermode(s) der direkt nach der Verbindung zum Server gesetzt werden soll. Dies geschieht bevor Befehle für den Server ausgeführt und bevor Kanäle automatisch betreten werden; Beispiele: "+R" (um den Modus "R" zu setzen), "+R-i" (setzt den Modus "R" und entfernt den Modus "i"); siehe /help mode um den Befehlssatz angezeigt zu bekommen (Hinweis: Inhalt wird evaluiert, siehe /help eval; Serveroptionen sind mittels ${irc_server.xxx} evaluiert und ${server} wird durch den eigentlichen Servernamen ersetzt)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+""+`
|
||||
@@ -2841,13 +2987,13 @@
|
||||
** Standardwert: `+white+`
|
||||
|
||||
* [[option_relay.irc.backlog_max_minutes]] *relay.irc.backlog_max_minutes*
|
||||
** Beschreibung: pass:none[Zeitangabe, in Minuten, wie lange die Zeilen im Verlaufsspeicher für jeden IRC Channel gehalten werden sollen (0 = unbegrenzt, Beispiele: 1440 = einen Tag, 10080 = eine Woche, 43200 = einen Monat, 525600 = ein Jahr)]
|
||||
** Beschreibung: pass:none[Zeitangabe, in Minuten, wie lange die Zeilen im Verlaufsspeicher für jeden IRC Kanal gehalten werden sollen (0 = unbegrenzt, Beispiele: 1440 = einen Tag, 10080 = eine Woche, 43200 = einen Monat, 525600 = ein Jahr)]
|
||||
** Typ: integer
|
||||
** Werte: 0 .. 2147483647
|
||||
** Standardwert: `+0+`
|
||||
|
||||
* [[option_relay.irc.backlog_max_number]] *relay.irc.backlog_max_number*
|
||||
** Beschreibung: pass:none[maximale Anzahl an Zeilen im Verlaufsspeicher. Dies gilt für jeden IRC Channel (0: keine Zeilenbegrenzung)]
|
||||
** Beschreibung: pass:none[maximale Anzahl an Zeilen im Verlaufsspeicher. Dies gilt für jeden IRC Kanal (0: keine Zeilenbegrenzung)]
|
||||
** Typ: integer
|
||||
** Werte: 0 .. 2147483647
|
||||
** Standardwert: `+1024+`
|
||||
@@ -2865,7 +3011,7 @@
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_relay.irc.backlog_tags]] *relay.irc.backlog_tags*
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nachrichten-Tags welche im Verlaufsspeicher von IRC Channels angezeigt werden (unterstützte Tags: "irc_join", "irc_part", "irc_quit", "irc_nick", "irc_privmsg"), "*" = alle unterstützten Tags]
|
||||
** Beschreibung: pass:none[durch Kommata getrennte Liste von Nachrichten-Tags welche im Verlaufsspeicher von IRC Kanälen angezeigt werden (unterstützte Tags: "irc_join", "irc_part", "irc_quit", "irc_nick", "irc_privmsg"), "*" = alle unterstützten Tags]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"irc_privmsg"+`
|
||||
@@ -2918,11 +3064,11 @@
|
||||
** Werte: -1 .. 43200
|
||||
** Standardwert: `+0+`
|
||||
|
||||
* [[option_relay.network.compression_level]] *relay.network.compression_level*
|
||||
** Beschreibung: pass:none[Kompressionsstärke der Pakete die durch das WeeChat Protokoll an den Client gesendet werden sollen (0 = Kompression deaktiviert, 1 = niedrige Kompression ... 9 = stärkste Kompression)]
|
||||
* [[option_relay.network.compression]] *relay.network.compression*
|
||||
** Beschreibung: pass:none[Komprimierung von Nachrichten, die mittels "weechat" Protokoll an Clients gesendet werden: 0 = Komprimierung deaktivieren, 1 = geringe Komprimierung / schnell ... 100 = beste Komprimierung / langsam; dieser Wert ist eine Prozentangabe, welcher für zlib nach 1-9 und für zstd nach 1-19 umgewandelt wird; der Standardwert wird empfohlen, denn er bietet einen guten Kompromiss zwischen Kompression und Geschwindigkeit]
|
||||
** Typ: integer
|
||||
** Werte: 0 .. 9
|
||||
** Standardwert: `+6+`
|
||||
** Werte: 0 .. 100
|
||||
** Standardwert: `+20+`
|
||||
|
||||
* [[option_relay.network.ipv6]] *relay.network.ipv6*
|
||||
** Beschreibung: pass:none[lauscht standardmäßig am IPv6 Socket (zusätzlich zu IPv4, welches als Standardprotokoll genutzt wird); mittels des Protokollnamens kann das IPv4 und IPv6 Protokoll, einzeln oder gemeinsam, erzwungen werden (siehe /help relay)]
|
||||
@@ -2961,10 +3107,10 @@
|
||||
** Standardwert: `+100000+`
|
||||
|
||||
* [[option_relay.network.ssl_cert_key]] *relay.network.ssl_cert_key*
|
||||
** Beschreibung: pass:none[Datei mit SSL Zertifikat und privatem Schlüssel (zur Nutzung von Clients mit SSL)]
|
||||
** Beschreibung: pass:none[Datei mit SSL-Zertifikat und privatem Schlüssel (zum Bedienen von Clients mit SSL) (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"%h/ssl/relay.pem"+`
|
||||
** Standardwert: `+"${weechat_config_dir}/ssl/relay.pem"+`
|
||||
|
||||
* [[option_relay.network.ssl_priorities]] *relay.network.ssl_priorities*
|
||||
** Beschreibung: pass:none[Zeichenkette mit Prioritäten für gnutls (für die korrekte Syntax siehe gnutls Dokumentation unter Funktion gnutls_priority_init. Gebräuchliche Zeichenketten sind: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
|
||||
@@ -2997,34 +3143,6 @@
|
||||
** Standardwert: `+""+`
|
||||
// end::relay_options[]
|
||||
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::guile_options[]
|
||||
* [[option_guile.look.check_license]] *guile.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
@@ -3039,19 +3157,33 @@
|
||||
** Standardwert: `+on+`
|
||||
// end::guile_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::tcl_options[]
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::perl_options[]
|
||||
* [[option_perl.look.check_license]] *perl.look.check_license*
|
||||
@@ -3081,20 +3213,6 @@
|
||||
** Standardwert: `+on+`
|
||||
// end::php_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::python_options[]
|
||||
* [[option_python.look.check_license]] *python.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
@@ -3109,6 +3227,34 @@
|
||||
** Standardwert: `+on+`
|
||||
// end::python_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
** Beschreibung: pass:none[Überprüft die Lizenz von Skripten, wenn sie geladen werden: Sollte die Lizenz abweichend von der Erweiterungslizenz sein, wird eine Warnung ausgegeben]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
** Beschreibung: pass:none[behält den Inhalt zwischen zwei Aufrufen bei Quellcode Evaluierung (Option "eval" des Skript-Befehls oder Info "%s_eval"); ein Hintergrundskript wird für die Evaluierung verwendet; wird diese Option deaktiviert, dann wird das Hintergrundskript nach jeder Evaluierung entfernt: das bedeutet weniger Speicherbedarf, ist aber langsamer]
|
||||
** Typ: boolesch
|
||||
** Werte: on, off
|
||||
** Standardwert: `+on+`
|
||||
// end::tcl_options[]
|
||||
|
||||
// tag::script_options[]
|
||||
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
|
||||
** Beschreibung: pass:none[Farbe in der der Status "autoloaded" ("a") dargestellt werden soll]
|
||||
@@ -3267,7 +3413,7 @@
|
||||
** Standardwert: `+lightmagenta+`
|
||||
|
||||
* [[option_script.look.columns]] *script.look.columns*
|
||||
** Beschreibung: pass:none[Format in welchem die Spalten im Skript Buffer dargestellt werden sollen. Es können folgende Spaltenbezeichnungen genutzt werden: %a=Autor, %d=Beschreibung, %D=hinzugefügt, %e=Dateierweiterung, %l=Programmiersprache, %L=Lizenz, %n=Skriptname, mit Dateierweiterung, %N=Skriptname, %r=Voraussetzungen, %s=Status, %t=Schlagwörter, %u=Datum der letzten Überarbeitung, %v=Version, %V=installierte Version, %w=min_WeeChat_Version, %W=max_WeeChat_Version)]
|
||||
** Beschreibung: pass:none[Format in welchem die Spalten im Skript-Buffer dargestellt werden sollen. Es können folgende Spaltenbezeichnungen genutzt werden: %a=Autor, %d=Beschreibung, %D=Skript hinzugefügt, %e=Dateierweiterung, %l=Programmiersprache, %L=Lizenz, %n=Skriptname, mit Dateierweiterung, %N=Skriptname, %r=Voraussetzungen, %s=Status, %t=Schlagwörter, %u=Datum der letzten Überarbeitung, %v=Version, %V=installierte Version, %w=min_WeeChat_Version, %W=max_WeeChat_Version)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"%s %n %V %v %u | %d | %t"+`
|
||||
@@ -3345,10 +3491,10 @@
|
||||
** Standardwert: `+""+`
|
||||
|
||||
* [[option_script.scripts.path]] *script.scripts.path*
|
||||
** Beschreibung: pass:none[lokales Cache-Verzeichnis für die Script-Erweiterung; "%h" wird durch das WeeChat Verzeichnis ersetzt (Standardpfad: "~/.weechat") (Hinweis: Inhalt wird evaluiert, siehe /help eval)]
|
||||
** Beschreibung: pass:none[lokales Cache-Verzeichnis für Skripten (Pfad ist evaluiert, siehe Funktion string_eval_path_home in der Plugin-API-Referenz)]
|
||||
** Typ: Zeichenkette
|
||||
** Werte: beliebige Zeichenkette
|
||||
** Standardwert: `+"%h/script"+`
|
||||
** Standardwert: `+"${weechat_cache_dir}/script"+`
|
||||
|
||||
* [[option_script.scripts.url]] *script.scripts.url*
|
||||
** Beschreibung: pass:none[URL für Datei mit der Auflistung aller Skripten]
|
||||
|
||||
@@ -16,9 +16,8 @@
|
||||
"--daemon").
|
||||
|
||||
*-d*, *--dir* _<path>_::
|
||||
legt den Konfigurationsordner für WeeChat fest in welchem die Erweiterungen,
|
||||
Skripten, Protokolldateien etc.pp. gesichert werden (Voreinstellung: "~/.weechat").
|
||||
Sollte das Verzeichnis nicht existieren wird es beim Start angelegt.
|
||||
Erzwingen Sie ein einzelnes Verzeichnis für alle WeeChat-Dateien (Verzeichnis wird erstellt, wenn es nicht gefunden wird).
|
||||
Es können vier Verzeichnisse angegeben werden, die durch Doppelpunkte getrennt sind (folgende Reihenfolge: Konfiguration, Daten, Cache, Laufzeit).
|
||||
Wird diese Option nicht genutzt, wird die Umgebungsvariable WEECHAT_HOME genutzt
|
||||
(sofern diese vorhanden ist).
|
||||
|
||||
|
||||
+31
-28
@@ -1,6 +1,6 @@
|
||||
// tag::plugin_options[]
|
||||
Um eine vollständige Dokumentation der Optionen zu erhalten, siehe
|
||||
https://weechat.org/doc[WeeChat user's guide].
|
||||
https://weechat.org/doc/[WeeChat user's guide].
|
||||
|
||||
Mittels der IRC Erweiterung kann man sich zu einen temporären Server verbinden lassen,
|
||||
indem man eine URL verwendet:
|
||||
@@ -9,7 +9,7 @@ indem man eine URL verwendet:
|
||||
|
||||
Um dem WeeChat IRC Support-Channel, mit dem Nick "mynick", beizutreten:
|
||||
|
||||
irc://mynick@chat.freenode.net/#weechat
|
||||
irc://mynick@irc.libera.chat/#weechat
|
||||
|
||||
Um eine IPv6 Adresse zu nutzen, muss diese in eckige Klammern gesetzt werden:
|
||||
|
||||
@@ -17,79 +17,82 @@ Um eine IPv6 Adresse zu nutzen, muss diese in eckige Klammern gesetzt werden:
|
||||
// end::plugin_options[]
|
||||
|
||||
// tag::files[]
|
||||
$HOME/.weechat/weechat.conf::
|
||||
$HOME/.config/weechat/weechat.conf::
|
||||
WeeChats Konfigurationsdatei
|
||||
|
||||
$HOME/.weechat/plugins.conf::
|
||||
$HOME/.config/weechat/plugins.conf::
|
||||
Konfigurationsdatei für Erweiterungen
|
||||
|
||||
$HOME/.weechat/sec.conf::
|
||||
$HOME/.config/weechat/sec.conf::
|
||||
Konfigurationsdatei mit schutzwürdigen Daten
|
||||
|
||||
$HOME/.weechat/alias.conf::
|
||||
$HOME/.config/weechat/alias.conf::
|
||||
Konfigurationsdatei für _alias_ Erweiterung
|
||||
|
||||
$HOME/.weechat/buflist.conf::
|
||||
$HOME/.config/weechat/buflist.conf::
|
||||
Konfigurationsdatei für _buflist_ Erweiterung
|
||||
|
||||
$HOME/.weechat/charset.conf::
|
||||
$HOME/.config/weechat/charset.conf::
|
||||
Konfigurationsdatei für _charset_ Erweiterung
|
||||
|
||||
$HOME/.weechat/exec.conf::
|
||||
$HOME/.config/weechat/exec.conf::
|
||||
Konfigurationsdatei für _exec_ Erweiterung
|
||||
|
||||
$HOME/.weechat/fifo.conf::
|
||||
$HOME/.config/weechat/fifo.conf::
|
||||
Konfigurationsdatei für _fifo_ Erweiterung
|
||||
|
||||
$HOME/.weechat/fset.conf::
|
||||
$HOME/.config/weechat/fset.conf::
|
||||
Konfigurationsdatei für _fset_ Erweiterung
|
||||
|
||||
$HOME/.weechat/guile.conf::
|
||||
$HOME/.config/weechat/guile.conf::
|
||||
Konfigurationsdatei für _guile_ Erweiterung
|
||||
|
||||
$HOME/.weechat/irc.conf::
|
||||
$HOME/.config/weechat/irc.conf::
|
||||
Konfigurationsdatei für _irc_ Erweiterung
|
||||
|
||||
$HOME/.weechat/javascript.conf::
|
||||
$HOME/.config/weechat/javascript.conf::
|
||||
Konfigurationsdatei für _javascript_ Erweiterung
|
||||
|
||||
$HOME/.weechat/logger.conf::
|
||||
$HOME/.config/weechat/logger.conf::
|
||||
Konfigurationsdatei für _logger_ Erweiterung
|
||||
|
||||
$HOME/.weechat/lua.conf::
|
||||
$HOME/.config/weechat/lua.conf::
|
||||
Konfigurationsdatei für _lua_ Erweiterung
|
||||
|
||||
$HOME/.weechat/perl.conf::
|
||||
$HOME/.config/weechat/perl.conf::
|
||||
Konfigurationsdatei für _perl_ Erweiterung
|
||||
|
||||
$HOME/.weechat/php.conf::
|
||||
$HOME/.config/weechat/php.conf::
|
||||
Konfigurationsdatei für _php_ Erweiterung
|
||||
|
||||
$HOME/.weechat/python.conf::
|
||||
$HOME/.config/weechat/python.conf::
|
||||
Konfigurationsdatei für _python_ Erweiterung
|
||||
|
||||
$HOME/.weechat/relay.conf::
|
||||
$HOME/.config/weechat/relay.conf::
|
||||
Konfigurationsdatei für _relay_ Erweiterung
|
||||
|
||||
$HOME/.weechat/ruby.conf::
|
||||
$HOME/.config/weechat/ruby.conf::
|
||||
Konfigurationsdatei für _ruby_ Erweiterung
|
||||
|
||||
$HOME/.weechat/script.conf::
|
||||
$HOME/.config/weechat/script.conf::
|
||||
Konfigurationsdatei für _script_ Erweiterung
|
||||
|
||||
$HOME/.weechat/spell.conf::
|
||||
$HOME/.config/weechat/spell.conf::
|
||||
Konfigurationsdatei für _spell_ Erweiterung
|
||||
|
||||
$HOME/.weechat/tcl.conf::
|
||||
$HOME/.config/weechat/tcl.conf::
|
||||
Konfigurationsdatei für _tcl_ Erweiterung
|
||||
|
||||
$HOME/.weechat/trigger.conf::
|
||||
$HOME/.config/weechat/trigger.conf::
|
||||
Konfigurationsdatei für _trigger_ Erweiterung
|
||||
|
||||
$HOME/.weechat/xfer.conf::
|
||||
$HOME/.config/weechat/typing.conf::
|
||||
Konfigurationsdatei für _typing_ Erweiterung
|
||||
|
||||
$HOME/.config/weechat/xfer.conf::
|
||||
Konfigurationsdatei für _xfer_ Erweiterung
|
||||
|
||||
$HOME/.weechat/weechat.log::
|
||||
$HOME/.local/share/weechat/weechat.log::
|
||||
WeeChat Protokolldatei
|
||||
// end::files[]
|
||||
|
||||
@@ -97,7 +100,7 @@ $HOME/.weechat/weechat.log::
|
||||
WeeChat wird programmiert von Sébastien Helleu und weiteren Beteiligten (eine vollständige Auflistung
|
||||
findet man in der AUTHORS.adoc Datei).
|
||||
|
||||
Copyright (C) 2003-2021 {author}
|
||||
Copyright (C) 2003-2022 {author}
|
||||
|
||||
WeeChat is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -63,4 +63,4 @@ include::includes/man.de.adoc[tag=copyright]
|
||||
|
||||
== SUPPORT / FEHLER MELDEN
|
||||
|
||||
für Hilfe oder um einen Fehler zu melden: https://weechat.org/about/support
|
||||
für Hilfe oder um einen Fehler zu melden: https://weechat.org/about/support/
|
||||
|
||||
@@ -59,4 +59,4 @@ include::includes/man.de.adoc[tag=copyright]
|
||||
|
||||
== SUPPORT / FEHLER MELDEN
|
||||
|
||||
für Hilfe oder um einen Fehler zu melden: https://weechat.org/about/support
|
||||
für Hilfe oder um einen Fehler zu melden: https://weechat.org/about/support/
|
||||
|
||||
+132
-91
@@ -38,7 +38,8 @@ Aber diese Bedeutung trifft nicht auf WeeChat zu!)
|
||||
|
||||
WeeChat ist sehr speicherschonend und besticht durch innovative Funktionen.
|
||||
|
||||
Weitere Informationen findet man auf der WeeChat Seite: https://weechat.org/about/features
|
||||
Weitere Infomationen über Weechat
|
||||
https://weechat.org/about/features/[features page ^↗^,window=_blank].
|
||||
|
||||
[[compilation_install]]
|
||||
== Kompilierung / Installation
|
||||
@@ -46,17 +47,17 @@ Weitere Informationen findet man auf der WeeChat Seite: https://weechat.org/abou
|
||||
[[gui]]
|
||||
=== Ich habe gehört es gibt verschiedene GUIs für WeeChat. Wie kann ich diese kompilieren bzw. nutzen?
|
||||
|
||||
Es sind einige Remote-Oberflächen verfügbar. Diese findet man auf der Homepage:
|
||||
https://weechat.org/about/interfaces
|
||||
Einige Remote-GUIs sind verfügbar, siehe
|
||||
https://weechat.org/about/interfaces/[remote interfaces page ^↗^,window=_blank].
|
||||
|
||||
[[compile_git]]
|
||||
=== Ich kann WeeChat nach Cloning des git Repository nicht kompilieren - weshalb?
|
||||
|
||||
Es wird empfohlen link:weechat_user.de.html#compile_with_cmake[CMake] zum
|
||||
Es wird empfohlen link:weechat_user.de.html#compile_with_cmake[CMake ^↗^,window=_blank] zum
|
||||
kompilieren von WeeChat zu nutzen.
|
||||
|
||||
Falls Du WeeChat mit Hilfe der
|
||||
link:weechat_user.de.html#compile_with_autotools[autotools] kompilieren solltest
|
||||
link:weechat_user.de.html#compile_with_autotools[autotools ^↗^,window=_blank] kompilieren solltest
|
||||
(dich also nicht für CMake entscheidest), stelle sicher, dass Du die neueste
|
||||
Version von autoconf und automake besitzt.
|
||||
|
||||
@@ -69,7 +70,7 @@ das Repository klont und daraus Updates installiert.
|
||||
[[compile_macos]]
|
||||
=== Wie installiere ich WeeChat auf macOS?
|
||||
|
||||
Wir empfehlen, dass zur Installation https://brew.sh/[Homebrew] genutzt wird.
|
||||
Wir empfehlen, dass zur Installation https://brew.sh/[Homebrew ^↗^,window=_blank] genutzt wird.
|
||||
Hilfe erhält man mittels:
|
||||
|
||||
----
|
||||
@@ -87,12 +88,12 @@ brew install weechat
|
||||
|
||||
Um Hilfe zu erhalten, nutze den `/help` Befehl.
|
||||
Jeder Befehl besitzt einen Hilfstext, den man sich durch `/help Befehlsname` anzeigen lassen kann.
|
||||
Die link:weechat_user.de.html#key_bindings[Standard Tastenbelegung] sowie
|
||||
link:weechat_user.de.html#commands_and_options[Befehle und Optionen] sind im
|
||||
link:weechat_user.de.html[Benutzerhandbuch] aufgeführt.
|
||||
Die link:weechat_user.de.html#key_bindings[Standard Tastenbelegung ^↗^,window=_blank] sowie
|
||||
link:weechat_user.de.html#commands_and_options[Befehle und Optionen ^↗^,window=_blank] sind im
|
||||
link:weechat_user.de.html[Benutzerhandbuch ^↗^,window=_blank] aufgeführt.
|
||||
|
||||
Neuen Anwendern wird empfohlen,
|
||||
die link:weechat_quickstart.de.html[Quickstart Anleitung] zu lesen.
|
||||
die link:weechat_quickstart.de.html[Quickstart Anleitung ^↗^,window=_blank] zu lesen.
|
||||
|
||||
[[display]]
|
||||
== Anzeige
|
||||
@@ -125,7 +126,7 @@ Es ist deshalb wichtig, *ALLE* der folgenden Lösungsmöglichkeiten zu prüfen:
|
||||
("`defutf8 on`" in der Datei ~/.screenrc oder `screen -U` beim Starten von
|
||||
screen).
|
||||
* Überprüfe die Option
|
||||
link:weechat_user.de.html#option_weechat.look.eat_newline_glitch[_weechat.look.eat_newline_glitch_]
|
||||
link:weechat_user.de.html#option_weechat.look.eat_newline_glitch[_weechat.look.eat_newline_glitch_ ^↗^,window=_blank]
|
||||
(diese Option kann schwerwiegenden Darstellungsfehler verursachen, wenn man die Option aktiviert hat).
|
||||
|
||||
[NOTE]
|
||||
@@ -141,10 +142,10 @@ Dieser Fehler sollte durch glibc 2.22 behoben sein (vielleicht ist diese Version
|
||||
verwendeten Distributionen noch nicht verfügbar).
|
||||
|
||||
Es gibt folgende Übergangslösung, um das Problem mit der _wcwidth_ zu umgehen:
|
||||
https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat
|
||||
https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat[https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat ^↗^,window=_blank].
|
||||
|
||||
Siehe auch diese Fehlermeldung für weitere Informationen:
|
||||
https://github.com/weechat/weechat/issues/79
|
||||
Siehe https://github.com/weechat/weechat/issues/79[bug report ^↗^,window=_blank]
|
||||
für weitere Informationen.
|
||||
|
||||
[[bars_background]]
|
||||
=== Weshalb haben Bars, z.B. Titel und Status, keine Hintergrundfarbe bzw. diese endet direkt nach dem Text?
|
||||
@@ -199,7 +200,7 @@ von einem oder mehreren Fenstern gleichzeitig angezeigt werden.
|
||||
[[buffers_list]]
|
||||
=== Wie kann ich eine Liste mit den Buffern z.B. auf der linken Seite anzeigen lassen?
|
||||
|
||||
Ab WeeChat ≥ 1.8 wird standardmäßig die link:weechat_user.de.html#buflist_plugin["buflist"-Erweiterung]
|
||||
Ab WeeChat ≥ 1.8 wird standardmäßig die link:weechat_user.de.html#buflist[buflist-Erweiterung ^↗^,window=_blank]
|
||||
automatisch geladen und verwendet.
|
||||
|
||||
Bei älteren Versionen kann stattdessen das Skript _buffers.pl_ installiert werden:
|
||||
@@ -247,7 +248,7 @@ finden folgende WeeChat-Befehle Anwendung:
|
||||
[NOTE]
|
||||
Die Tasten "meta-OP" und "meta-OQ" können im Hinblick auf das jeweils genutzte Terminal variieren.
|
||||
Um die korrekten Tasten zu finden, sollte man mit kbd:[Alt+k] die gewünschte Tastenkombination einfangen.
|
||||
Siehe auch: link:weechat_user.de.html#key_bindings_command_line[Benutzerhandbuch / Tastenbelegung].
|
||||
Siehe auch: link:weechat_user.de.html#key_bindings_command_line[Benutzerhandbuch / Tastenbelegung ^↗^,window=_blank].
|
||||
|
||||
[[customize_buflist]]
|
||||
=== Wie kann ich die Darstellung der Bufferliste anpassen, z.B. die Farbe des aktiven Buffers?
|
||||
@@ -271,8 +272,8 @@ Es kann auch eine beliebige numerische Farbe anstelle von "Rot" verwendet werden
|
||||
|
||||
Die Buflist-Erweiterung bietet viele Optionen, zum individualisieren. Bitte lesen Sie dazu die Hilfe von jeder Option.
|
||||
|
||||
Es gibt auch eine Wiki-Seite mit Beispielen, wie eine erweiterte Konfiguration aussehen kann:
|
||||
https://github.com/weechat/weechat/wiki/buflist
|
||||
Es gibt zusätzlich die https://github.com/weechat/weechat/wiki/buflist[wiki page ^↗^,window=_blank]
|
||||
mit Beispielen für die erweiterte buflist Konfiguration.
|
||||
|
||||
[[customize_prefix]]
|
||||
=== Wie kann ich die Länge eines Nicknamens begrenzen oder die Ausrichtung des Nicks im Chatbereich entfernen?
|
||||
@@ -318,8 +319,8 @@ Diese Farben können mit den Optionen __weechat.color.status_data_*__
|
||||
Weitere hotlist Eigenschaften können mit Hilfe der Optionen __weechat.look.hotlist_*__
|
||||
verändert werden.
|
||||
|
||||
Siehe link:weechat_user.de.html#screen_layout[Benutzerhandbuch / Screen layout] für
|
||||
weitere Informationen zur Hotlist.
|
||||
Siehe link:weechat_user.de.html#screen_layout[Benutzerhandbuch / Screen layout ^↗^,window=_blank]
|
||||
für weitere Informationen zur Hotlist.
|
||||
|
||||
[[input_bar_size]]
|
||||
=== Wie kann man eine mehrzeilige Eingabezeile einstellen?
|
||||
@@ -441,7 +442,7 @@ Natürlich ist das möglich:
|
||||
[[timezone]]
|
||||
=== Wie kann ich die Zeitzone ändern?
|
||||
|
||||
Es gibt in WeeChat keine Option um die Zeitzone einzustellen. Die
|
||||
Es gibt in WeeChat keine Option um die Zeitzone einzustellen. Die
|
||||
Umgebungsvariable `TZ` muss auf einen entsprechenden Wert eingestellt werden.
|
||||
Am Besten machen Sie dies in Ihrer Shell-Initialisierungsdatei oder in der
|
||||
Befehlszeile, bevor Sie WeeChat starten:
|
||||
@@ -494,8 +495,8 @@ Ab Version ≥ 0.3.5 kann in den Optionen für eine zu nutzende Farbe die entspr
|
||||
Zahl der Farbe eingetragen werden (optional: mit dem Befehl `/color` kann man einen Alias für
|
||||
eine Farbe definieren).
|
||||
|
||||
Bitte lese link:weechat_user.de.html#colors[Benutzerhandbuch / Farben] für weitere
|
||||
Informationen die das Farbmanagement betreffen.
|
||||
Bitte lese link:weechat_user.de.html#colors[Benutzerhandbuch / Farben ^↗^,window=_blank]
|
||||
für weitere Informationen die das Farbmanagement betreffen.
|
||||
|
||||
[[search_text]]
|
||||
=== Wie kann ich in einem Buffer nach einem Text suchen (vergleichbar /lastlog in irssi)?
|
||||
@@ -505,8 +506,8 @@ Die Standardtastenbelegung lautet kbd:[Ctrl+r]
|
||||
Um zu Highlight-Nachrichten zu springen:
|
||||
kbd:[Alt+p] für vorherige, kbd:[Alt+n] für die nächste Nachricht.
|
||||
|
||||
siehe link:weechat_user.de.html#key_bindings[Benutzerhandbuch / Standard Tastenbelegung] für weitere
|
||||
Informationen zu dieser Funktion.
|
||||
siehe link:weechat_user.de.html#key_bindings[Benutzerhandbuch / Standard Tastenbelegung ^↗^,window=_blank]
|
||||
für weitere Informationen zu dieser Funktion.
|
||||
|
||||
[[terminal_focus]]
|
||||
=== Wie kann ich Befehle ausführen, wenn der Terminal (keinen) Fokus hat?
|
||||
@@ -559,9 +560,10 @@ Der bracketed paste Modus kann wie folgt deaktiviert werden:
|
||||
[[small_terminal]]
|
||||
=== Wie kann ich die Anzeige bei sehr kleinen Terminalgrößen (wie 80 x 25) optimieren, um keinen Platz zu verschwenden?
|
||||
|
||||
Sie können die seitlichen Bars (Buflist und Nicklist) entfernen und das Zeitformat im Buffer anpassen,
|
||||
sodass nur Stunden und Sekunden angezeigt werden. Die Ausrichtung von Nachrichten sollte deaktiviert
|
||||
und der Präfix/Suffix für Nicks gesetzt werden:
|
||||
Die seitlichen Bars (buflist und nicklist) können deaktiviert werden, die Datums-
|
||||
anzeige sollte nur Stunden und Minuten darstellen, die Ausrichtung von Nach-
|
||||
richten sollte ebenfalls deaktiviert werden und es sollte der Nick mit einen
|
||||
Präfix und Suffix vesehen werden:
|
||||
|
||||
----
|
||||
/set buflist.look.enabled off
|
||||
@@ -685,7 +687,7 @@ Es kann auch eine neue Taste eingebunden werden um zu einem Buffer zu wechseln:
|
||||
----
|
||||
|
||||
Eine Auflistung der Standardtastenbelegung findet man in
|
||||
link:weechat_user.de.html#key_bindings[Benutzerhandbuch / Standard Tastenbelegung].
|
||||
link:weechat_user.de.html#key_bindings[Benutzerhandbuch / Standard Tastenbelegung ^↗^,window=_blank].
|
||||
|
||||
Um zu Buffern zu wechseln die an Position ≥ 100 sind kann ein Trigger definiert
|
||||
werden um dann z.B. mit einem Kurzbefehl `/123` zum Buffer #123 zu springen:
|
||||
@@ -775,7 +777,8 @@ anstelle der kbd:[Shift]-Taste gedrückt werden).
|
||||
Falls macOS genutzt wird,
|
||||
muss mittels Homebrew `openssl` installiert werden.
|
||||
Eine CA-Datei wird mittels Zertifikaten vom Systemschlüssel geladen.
|
||||
Der Pfad zu den Zertifikaten kann in WeeChat eingestellt werden:
|
||||
|
||||
Ab WeeChat ≤ 3.1 können Sie den Pfad zu Systemzertifikaten festlegen:
|
||||
|
||||
----
|
||||
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
|
||||
@@ -817,10 +820,11 @@ Im folgenden Beispiel muss "xxx" durch den betroffenen Servernamen ersetzt werde
|
||||
/set irc.server.xxx.ssl_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_ssl_freenode]]
|
||||
=== Wie kann ich eine SSL gesicherte Verbindung zum freenode Server herstellen?
|
||||
[[irc_ssl_libera]]
|
||||
=== Wie kann ich eine SSL gesicherte Verbindung zum libera Server herstellen?
|
||||
|
||||
Die Option _weechat.network.gnutls_ca_file_ sollte auf die Zertifikationsdatei zeigen:
|
||||
Ab WeeChat ≤ 3.1 kann mit der Option _weechat.network.gnutls_ca_file_ eine Datei mit
|
||||
Zertifikaten ausgewählt werden:
|
||||
|
||||
----
|
||||
/set weechat.network.gnutls_ca_file "/etc/ssl/certs/ca-certificates.crt"
|
||||
@@ -840,9 +844,9 @@ dass die Zertifikate in einer anderen Datei bereitgestellt werden:
|
||||
Konfiguration des Servers, Port angeben, SSL aktivieren und Verbindung herstellen:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.addresses "chat.freenode.net/7000"
|
||||
/set irc.server.freenode.ssl on
|
||||
/connect freenode
|
||||
/set irc.server.libera.addresses "irc.libera.chat/6697"
|
||||
/set irc.server.libera.ssl on
|
||||
/connect libera
|
||||
----
|
||||
|
||||
[[irc_oauth]]
|
||||
@@ -862,50 +866,78 @@ ersetzt werden:
|
||||
----
|
||||
|
||||
[[irc_sasl]]
|
||||
=== Wie kann ich mich vor dem Betreten von Channels identifizieren?
|
||||
=== Wie kann ich mich vor dem Betreten von Kanälen identifizieren?
|
||||
|
||||
Sollte der Server SASL unterstützen,
|
||||
ist es ratsam auf diese Funktion zurückzugreifen
|
||||
und sich nicht mittels "nickserv" zu authentifizieren:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.sasl_username "meinNick"
|
||||
/set irc.server.freenode.sasl_password "xxxxxxx"
|
||||
/set irc.server.libera.sasl_username "meinNick"
|
||||
/set irc.server.libera.sasl_password "xxxxxxx"
|
||||
----
|
||||
|
||||
Unterstützt der Server keine SASL Authentifizierung,
|
||||
kann eine Verzögerung aktiviert werden,
|
||||
um sich vor dem Betreten von Channels bei "nickserv" zu identifizieren:
|
||||
um sich vor dem Betreten von Kanälen bei "nickserv" zu identifizieren:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.command_delay 5
|
||||
/set irc.server.libera.command_delay 5
|
||||
----
|
||||
|
||||
[[edit_autojoin]]
|
||||
=== Wie kann ich Channels zur autojoin Option entfernen/hinzufügen?
|
||||
=== Wie kann ich Kanäle zur autojoin Option hinzufügen oder entfernen?
|
||||
|
||||
Um die Liste der autojoin Channels zu editieren,
|
||||
kann der Befehl `/set` genutzt werden.
|
||||
In folgendem Beispiel wird der "freenode"-Server angepasst:
|
||||
Ab WeeChat ≥ 3.5 können Sie die Kanäle, denen Sie manuell betreten und verlassen,
|
||||
automatisch aufzeichnen und die Serveroption „autojoin“ entsprechend anpassen.
|
||||
|
||||
Für alle Server:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.autojoin [TAB]
|
||||
/set irc.server_default.autojoin_dynamic on
|
||||
----
|
||||
|
||||
Für einen einzelnen Server:
|
||||
|
||||
----
|
||||
/set irc.server.libera.autojoin_dynamic on
|
||||
----
|
||||
|
||||
Ab WeeChat ≥ 3.5 kann man mit dem `/autojoin` Befehl den
|
||||
aktuellen Kanal in die Serveroption autojoin hinzufügen:
|
||||
|
||||
----
|
||||
/autojoin add
|
||||
----
|
||||
|
||||
oder einen beliebigen Kanal:
|
||||
|
||||
----
|
||||
/autojoin add #test
|
||||
----
|
||||
|
||||
Bis WeeChat ≤ 3.4, wird der `/set` Befehl verwendet, um die
|
||||
Liste der autojoin-Kanäle zu editieren. In folgendem Beispiel
|
||||
wird der "libera"-Server angepasst:
|
||||
|
||||
----
|
||||
/set irc.server.libera.autojoin [TAB]
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Man kann den Namen oder den Wert einer Option mit kbd:[Tab] vervollständigen
|
||||
oder mittels kbd:[Shift+Tab] eine teilweise Vervollständigung durchführen,
|
||||
was bei Namen sinnvoll ist, denn so braucht nicht die komplette Liste
|
||||
der Channels neu geschrieben werden.
|
||||
der Kanäle neu geschrieben werden.
|
||||
|
||||
Es kann auch der `/fset` Befehl verwendet werden, um die Liste der Channels
|
||||
Es kann auch der `/fset` Befehl verwendet werden, um die Liste der Kanäle
|
||||
zu editieren:
|
||||
|
||||
----
|
||||
/fset autojoin
|
||||
----
|
||||
|
||||
oder man nutzt ein Skript:
|
||||
Bis WeeChat ≤ 3.4 kann man auch ein Skript nutzen:
|
||||
|
||||
----
|
||||
/script search autojoin
|
||||
@@ -915,9 +947,9 @@ oder man nutzt ein Skript:
|
||||
=== Was ist der Unterschied zwischen dem Befehl /ignore und /filter?
|
||||
|
||||
Der Befehl `/ignore` ist ein (clientseitiger) IRC-Befehl und beeinflusst direkt,
|
||||
welche vom Server empfangenen Nachrichten im IRC-Buffer (Server und Channel) landen.
|
||||
welche vom Server empfangenen Nachrichten im IRC-Buffer (Server und Kanäle) landen.
|
||||
Durch diesen Befehl können bestimmte Nicks oder Hostnamen von bestimmten Servern
|
||||
oder Channels ignoriert werden.
|
||||
oder Kanäle ignoriert werden.
|
||||
Der Befehl wird nicht auf den Inhalt eines IRC-Buffers angewandt.
|
||||
Zutreffende Meldungen werden, bevor sie dem Buffer zugeführt werden,
|
||||
von der "irc"-Erweiterung gelöscht. Es gibt somit keine Möglichkeit,
|
||||
@@ -938,7 +970,7 @@ Die voreingestellte Tastenkombination zum Aktivieren bzw. Deaktivieren
|
||||
aller Filter ist kbd:[Alt+-].
|
||||
|
||||
[[filter_irc_join_part_quit]]
|
||||
=== Wie kann ich join/part/quit Meldungen in den IRC Channels filtern/unterdrücken?
|
||||
=== Wie kann ich join/part/quit Meldungen in den IRC Kanälen filtern/unterdrücken?
|
||||
|
||||
Zum einen mit dem Smart-Filter.
|
||||
Bei dessen Anwendung werden join/part/quit-Meldungen von Usern angezeigt,
|
||||
@@ -958,19 +990,19 @@ Dabei werden *alle* join/part/quit Nachrichten unterdrückt:
|
||||
|
||||
[NOTE]
|
||||
Für weitere Hilfe: `/help filter`, `+/help irc.look.smart_filter+` und
|
||||
link:weechat_user.de.html#irc_smart_filter_join_part_quit[Benutzerhandbuch / einfacher Filter für join/part/quit Nachrichten].
|
||||
link:weechat_user.de.html#irc_smart_filter_join_part_quit[Benutzerhandbuch / einfacher Filter für join/part/quit Nachrichten ^↗^,window=_blank].
|
||||
|
||||
[[filter_irc_join_channel_messages]]
|
||||
=== Wie kann ich Server-Nachrichten filtern, wenn ich einen IRC Channel betrete?
|
||||
=== Wie kann ich Server-Nachrichten filtern, wenn ich einen IRC Kanal betrete?
|
||||
|
||||
Ab WeeChat ≥ 0.4.1 kann man auswählen, welche Server-Nachrichten beim Betreten
|
||||
eines Channels angezeigt und welche verborgen werden sollen. Dazu nutzt man
|
||||
eines Kanals angezeigt und welche verborgen werden sollen. Dazu nutzt man
|
||||
die Option _irc.look.display_join_message_ (für weitere Informationen, siehe
|
||||
`+/help irc.look.display_join_message+`).
|
||||
|
||||
Um Nachrichten visuell zu verbergen, können diese gefiltert werden.
|
||||
Dazu wird der Befehl `/filter` auf bestimmte Nachrichten-Tags angewandt.
|
||||
Das Tag _irc_329_ kennzeichnet beispielsweise das Erstellungsdatum des Channels.
|
||||
Das Tag _irc_329_ kennzeichnet beispielsweise das Erstellungsdatum des Kanals.
|
||||
Siehe `/help filter`, um weitere Informationen über die Filterfunktion zu
|
||||
erhalten.
|
||||
|
||||
@@ -985,13 +1017,13 @@ da diese dazu genutzt werden um den Abwesenheitsstatus anderer User anzuzeigen
|
||||
und man nicht von diesen Mitteilungen überflutet werden möchte,
|
||||
kann man WeeChat anweisen, abwesende Nicks in einer anderen Farbe darzustellen.
|
||||
|
||||
Nutzt man Bitlbee ≥ 3, sollte man im _&bitlbee_ Channel folgendes eingeben:
|
||||
Nutzt man Bitlbee ≥ 3, sollte man im _&bitlbee_ Kanal folgendes eingeben:
|
||||
|
||||
----
|
||||
channel set show_users online,away
|
||||
----
|
||||
|
||||
für ältere Versionen von Bitlbee gibt man im _&bitlbee_ Channel ein:
|
||||
für ältere Versionen von Bitlbee gibt man im _&bitlbee_ Kanal ein:
|
||||
|
||||
----
|
||||
set away_devoice false
|
||||
@@ -1017,12 +1049,12 @@ in welchem Zeitintervall die Überprüfungen auf Abwesenheit stattfinden sollen.
|
||||
Die Angabe des Wertes erfolgt in Minuten.
|
||||
|
||||
Mit der Option _irc.server_default.away_check_max_nicks_ kann festgelegt werden,
|
||||
in welchen Channels eine Überprüfung stattfinden soll.
|
||||
Hierbei stellt der angegebene Wert die maximale Anzahl an Nicks in einem Channel dar,
|
||||
die den Channel gleichzeitig besuchen dürfen.
|
||||
in welchen Kanälen eine Überprüfung stattfinden soll.
|
||||
Hierbei stellt der angegebene Wert die maximale Anzahl an Nicks in einem Kanal dar,
|
||||
die den Kanal gleichzeitig besuchen dürfen.
|
||||
|
||||
Im folgenden Beispiel wird der Abwesenheitsstatus alle fünf Minuten überprüft.
|
||||
Dabei werden aber nur solche Channels berücksichtigt, die nicht mehr als 25
|
||||
Dabei werden aber nur solche Kanäle berücksichtigt, die nicht mehr als 25
|
||||
Teilnehmer haben:
|
||||
|
||||
----
|
||||
@@ -1035,7 +1067,7 @@ Für WeeChat ≤ 0.3.3, lauten die Optionen _irc.network.away_check_ und
|
||||
_irc.network.away_check_max_nicks_.
|
||||
|
||||
[[highlight_notification]]
|
||||
=== Wie kann ich mich benachrichtigen lassen, falls mich jemand in einem Channel direkt anspricht (highlight)?
|
||||
=== Wie kann ich mich benachrichtigen lassen, falls mich jemand in einem Kanal direkt anspricht (highlight)?
|
||||
|
||||
Seit WeeChat ≥ 1.0 gibt es standardmäßig den Trigger "beep",
|
||||
der an das Terminal ein _BEL_ Signal schickt,
|
||||
@@ -1068,7 +1100,7 @@ Es gibt weitere Skripten, die auch zu diesem Thema passen:
|
||||
=== Wie kann ich Highlights (Hervorhebungen) von bestimmten Nicks deaktivieren?
|
||||
|
||||
Ab WeeChat ≥ 0.3.4 kann die Eigenschaft
|
||||
link:weechat_user.de.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add]
|
||||
link:weechat_user.de.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^↗^,window=_blank]
|
||||
für den entsprechenden Buffer gesetzt werden.
|
||||
Dies kann für einzelne Nicks,
|
||||
einen Buffer oder eine Gruppe von Buffern (z.B. IRC Server) gelten.
|
||||
@@ -1088,17 +1120,17 @@ das Skript _buffer_autoset.py_ nutzen:
|
||||
/script install buffer_autoset.py
|
||||
----
|
||||
|
||||
Um zum Beispiel Highlights (Hervorhebungen) von Nick "mike" im Channel
|
||||
#weechat auf dem IRC Server freenode zu deaktivieren:
|
||||
Um zum Beispiel Highlights (Hervorhebungen) von Nick "mike" im Kanal
|
||||
#weechat auf dem IRC Server libera zu deaktivieren:
|
||||
|
||||
----
|
||||
/buffer_autoset add irc.freenode.#weechat hotlist_max_level_nicks_add mike:2
|
||||
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
|
||||
----
|
||||
|
||||
Um dies auf den kompletten freenode Server anzuwenden:
|
||||
Um dies auf den kompletten libera Server anzuwenden:
|
||||
|
||||
----
|
||||
/buffer_autoset add irc.freenode hotlist_max_level_nicks_add mike:2
|
||||
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
|
||||
----
|
||||
|
||||
Für weitere Beispiele, siehe `+/help buffer_autoset+`.
|
||||
@@ -1136,16 +1168,18 @@ Die Skripten für WeeChat sind mit anderen IRC-Clients nicht kompatibel und vice
|
||||
[[scripts_update]]
|
||||
=== Der Befehl "/script update" liest die Skriptliste nicht ein, wie kann ich das beheben?
|
||||
|
||||
Als erstes sollte das Kapitel über SSL Verbindungen in dieser FAQ gelesen werden
|
||||
(besonders über die Option _weechat.network.gnutls_ca_file_).
|
||||
Als erstes sollte das Kapitel über SSL Verbindungen in dieser FAQ gelesen werden.
|
||||
|
||||
Wenn das nicht hilft, sollte die Skriptliste von Hand gelöscht werden. Dazu
|
||||
folgenden Befehl in der Shell ausführen:
|
||||
|
||||
----
|
||||
$ rm ~/.weechat/script/plugins.xml.gz
|
||||
$ rm ~/.cache/weechat/script/plugins.xml.gz
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Ab WeeChat ≤ 3.1, sollte der Pfad: _~/.weechat/script/plugins.xml.gz_ lauten.
|
||||
|
||||
Danach sollte man noch einmal versuchen die Datei herunter zu laden:
|
||||
|
||||
----
|
||||
@@ -1165,10 +1199,18 @@ Das bedeutet aber auch, dass die Skripten von Hand aktuell gehalten werden müss
|
||||
* und in der Shell, mit installiertem curl:
|
||||
|
||||
----
|
||||
$ cd ~/.weechat/script
|
||||
$ cd ~/.cache/weechat/script
|
||||
$ curl -O https://weechat.org/files/plugins.xml.gz
|
||||
----
|
||||
|
||||
Wenn Sie macOS ausführen und die heruntergeladene Datei eine Größe von 0 Byte hat,
|
||||
versuchen Sie, diese Variable in Ihrer Shell-Initialisierungsdatei oder auf der
|
||||
Befehlszeile zu setzen. Bevor Sie WeeChat starten:
|
||||
|
||||
----
|
||||
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
|
||||
----
|
||||
|
||||
[[spell_dictionaries]]
|
||||
=== Ich habe aspell Wörterbücher auf mein System installiert. Wie kann ich diese nutzen, ohne WeeChat neu starten zu müssen?
|
||||
|
||||
@@ -1217,9 +1259,8 @@ Damit WeeChat weniger Speicher benötigt, solltest Du folgende Tipps umsetzen:
|
||||
Fifo, Logger, Perl, Python, Ruby, Lua, Tcl, Guile, JavaScript, PHP, Spell, Xfer
|
||||
(wird für DCC benötigst), siehe `/help weechat.plugin.autoload`.
|
||||
* installiere ausschließlich Skripten die Du auch nutzt
|
||||
* falls man SSL *NICHT* nutzt, sollte kein Zertifikat geladen werden. In diesem
|
||||
Fall, einfach den Eintrag in folgender Option leer lassen:
|
||||
_weechat.network.gnutls_ca_file_
|
||||
* Laden Sie keine Systemzertifikate, wenn SSL *NICHT* verwendet wird: Deaktivieren Sie diese Option:
|
||||
_weechat.network.gnutls_ca_system_.
|
||||
* der Wert der Option _weechat.history.max_buffer_lines_number_ sollte möglichst
|
||||
niedrig eingestellt werden oder die Option _weechat.history.max_buffer_lines_minutes_
|
||||
verwendet werden.
|
||||
@@ -1272,29 +1313,28 @@ Definiere eine Passphrase und nutze ausschließlich geschützte Daten wann immer
|
||||
es möglich ist, wie z.B. bei Passwörtern: siehe `/help secure` und nutze `/help`
|
||||
bei der entsprechenden Option (falls man geschützte Daten nutzen kann, wird es
|
||||
im Hilfstext erwähnt).
|
||||
Siehe auch link:weechat_user.de.html#secured_data[Benutzerhandbuch / sensible Daten].
|
||||
Siehe auch link:weechat_user.de.html#secured_data[Benutzerhandbuch / sensible Daten ^↗^,window=_blank].
|
||||
|
||||
Beispiel:
|
||||
|
||||
----
|
||||
/secure passphrase xxxxxxxxxx
|
||||
/secure set freenode_username username
|
||||
/secure set freenode_password xxxxxxxx
|
||||
/set irc.server.freenode.sasl_username "${sec.data.freenode_username}"
|
||||
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
|
||||
/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}"
|
||||
----
|
||||
|
||||
[[sharing_config_files]]
|
||||
=== Ich möchte meine WeeChat Konfiguration teilen. Welche Dateien kann ich weitergeben und welche sollte ich behalten?
|
||||
|
||||
Es können alle _~/.weechat/*.conf_ Dateien geteilt werden.
|
||||
Hiervon ausgenommen ist die Datei _sec.conf_,
|
||||
die durch eine Passphrase verschlüsselte, sensible, Daten enthalten kann.
|
||||
Sie können Ihre _*.conf_ Konfigurationsdateien teilen, mit Ausnahme der Datei _sec.conf_, die Ihre mit
|
||||
Ihrer Passphrase verschlüsselten Kennwörter enthält.
|
||||
|
||||
Einige andere Dateien enthalten möglicherweise vertrauliche Informationen wie
|
||||
Kennwörter (sofern sie nicht mit dem Befehl `/secure` in _sec.conf_ gesichert werden).
|
||||
|
||||
Siehe link:weechat_user.de.html#files_and_directories[Benutzerhandbuch / Dateien und Verzeichnisse]
|
||||
Siehe link:weechat_user.de.html#files_and_directories[Benutzerhandbuch / Dateien und Verzeichnisse ^↗^,window=_blank]
|
||||
für weitere Informationen über Konfigurationsdateien.
|
||||
|
||||
[[development]]
|
||||
@@ -1303,7 +1343,7 @@ für weitere Informationen über Konfigurationsdateien.
|
||||
[[bug_task_patch]]
|
||||
=== Was kann ich machen, falls ich einen Fehler gefunden habe, mich nach neuen Funktionen erkundigen oder Patches einsenden möchte?
|
||||
|
||||
siehe: https://weechat.org/about/support
|
||||
siehe https://weechat.org/about/support/[this page ^↗^,window=_blank].
|
||||
|
||||
[[gdb_error_threads]]
|
||||
=== Wenn man WeeChat in gdb startet, kann ein Thread-Fehler auftreten. Was beudeutet das?
|
||||
@@ -1328,7 +1368,8 @@ $ LD_PRELOAD=/lib/libpthread.so.0 gdb /Pfad/zu/weechat
|
||||
[[supported_os]]
|
||||
=== Auf welchen Plattformen läuft WeeChat und wird es noch auf andere Betriebssysteme portiert?
|
||||
|
||||
Eine vollständige Liste der Portierungen findest Du unter: https://weechat.org/download.
|
||||
WeeChat läuft auf den meisten Linux/BSD-Distributionen, GNU/Hurd, Mac OS und
|
||||
Windows (Cygwin und Windows Subsystem für Linux) einwandfrei.
|
||||
|
||||
Wir geben unser Bestes, WeeChat auf möglichst viele Plattformen zu portieren.
|
||||
Deshalb ist jede Hilfe gerne gesehen, die es uns ermöglicht,
|
||||
@@ -1340,11 +1381,11 @@ Das Gleiche gilt für Systeme, zu denen wir keinen Zugang haben.
|
||||
|
||||
Es gibt einiges zu tun - z.B. testen, programmieren, dokumentieren, ...
|
||||
|
||||
Bitte kontaktiere uns via IRC oder E-Mail, wirf einen Blick auf die Support-Seite:
|
||||
https://weechat.org/about/support
|
||||
Bitte kontaktieren Sie uns per IRC oder Mail, siehe
|
||||
https://weechat.org/about/support/[support page ^↗^,window=_blank].
|
||||
|
||||
[[donate]]
|
||||
=== Kann ich Geld oder anderes an die WeeChat Entwickler spenden?
|
||||
|
||||
Du kannst uns Geld zur Unterstützung der weiteren Entwicklung spenden.
|
||||
Details hierzu gibt es auf: https://weechat.org/donate
|
||||
Sie können uns Geld spenden, um die Entwicklung zu unterstützen.
|
||||
Details dazu, unter https://weechat.org/donate/[donation page ^↗^,window=_blank].
|
||||
|
||||
@@ -123,13 +123,13 @@ Um eine Verbindung zu einem IRC Server herzustellen, wird der
|
||||
`/server` Befehl verwendet. Beispiel:
|
||||
|
||||
----
|
||||
/server add freenode chat.freenode.net
|
||||
/server add libera irc.libera.chat/6697 -ssl
|
||||
----
|
||||
|
||||
In diesem Beispiel ist `freenode` der interne, von Weechat genutzte Servername.
|
||||
Mit dem Befehl `/connect freenode` kann jetzt die Verbindung
|
||||
zu diesem Freenode-IRC-Server aufgebaut werden.
|
||||
Alle für den Server relevanten Optionen sind unter _irc.server.freenode.xxx_ zu finden.
|
||||
In diesem Beispiel ist `libera` der interne, von Weechat genutzte Servername.
|
||||
Mit dem Befehl `/connect libera` kann jetzt die Verbindung
|
||||
zu diesem Libera-IRC-Server aufgebaut werden.
|
||||
Alle für den Server relevanten Optionen sind unter _irc.server.libera.xxx_ zu finden.
|
||||
|
||||
Verwende die Hilfe, falls noch Fragen offen sind:
|
||||
|
||||
@@ -149,31 +149,24 @@ definiert ist (nicht "null"). Andernfalls verwendet WeeChat die Vorgabewerte
|
||||
(_irc.server_default.xxx_).
|
||||
|
||||
Beispielsweise werden Standard Nicks verwendet (basierend auf dem Un*x Login).
|
||||
Sollen speziell für den freenode-Server andere Nicks genutzt werden,
|
||||
Sollen speziell für den libera-Server andere Nicks genutzt werden,
|
||||
können diese mit folgendem Befehl angepasst werden:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.nicks "meinNick,meinNick2,meinNick3,meinNick4,meinNick5"
|
||||
/set irc.server.libera.nicks "meinNick,meinNick2,meinNick3,meinNick4,meinNick5"
|
||||
----
|
||||
|
||||
Benutzernamen und wirklichen Namen (realname) anpassen:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.username "Mein Benutzername"
|
||||
/set irc.server.freenode.realname "Mein wirklicher Name"
|
||||
/set irc.server.libera.username "Mein Benutzername"
|
||||
/set irc.server.libera.realname "Mein wirklicher Name"
|
||||
----
|
||||
|
||||
Beim Start von WeeChat automatisch die Verbindung zu einem Server herstellen:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.autoconnect on
|
||||
----
|
||||
|
||||
Beim Verbindungsaufbau SSL (sichere Verbindung) nutzen:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.addresses "chat.freenode.net/7000"
|
||||
/set irc.server.freenode.ssl on
|
||||
/set irc.server.libera.autoconnect on
|
||||
----
|
||||
|
||||
Wenn der Server SASL unterstützt,
|
||||
@@ -182,8 +175,8 @@ Der Benutzer wird auf diese Weise gegenüber dem IRC-Server identifiziert,
|
||||
noch bevor Server-Befehle übermittelt oder Cannels (Chaträume) betreten werden können.
|
||||
|
||||
----
|
||||
/set irc.server.freenode.sasl_username "mynick"
|
||||
/set irc.server.freenode.sasl_password "xxxxxxx"
|
||||
/set irc.server.libera.sasl_username "mynick"
|
||||
/set irc.server.libera.sasl_password "xxxxxxx"
|
||||
----
|
||||
|
||||
Wenn der Server keine SASL-Authentifizierung unterstützt,
|
||||
@@ -191,7 +184,7 @@ muss der Benutzer sich nach dem Verbindungsaufbau bei "nickserv" identifizieren.
|
||||
Der dafür notwendige IRC-Server-Befehl kann auch automatisch übermittelt werden:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
|
||||
/set irc.server.libera.command "/msg nickserv identify xxxxxxx"
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
@@ -207,19 +200,19 @@ Zuerst sollte die Passphrase gesetzt werden:
|
||||
----
|
||||
|
||||
Jetzt wird das Passwort (`xxxxxx`)
|
||||
für den Zugang zum Freenode-Server verschlüsselt
|
||||
und mit dem Bezeichner `freenode_password` verknüpft:
|
||||
für den Zugang zum Libera-Server verschlüsselt
|
||||
und mit dem Bezeichner `libera_password` verknüpft:
|
||||
|
||||
----
|
||||
/secure set freenode_password xxxxxx
|
||||
/secure set libera_password xxxxxx
|
||||
----
|
||||
|
||||
Das geschützte Freenode-Passwort kann nun in anderen Optionen genutzt werden.
|
||||
Das geschützte Libera-Passwort kann nun in anderen Optionen genutzt werden.
|
||||
Dazu wird anstelle des Klartext-Passwortes die Variable
|
||||
`+${sec.data.freenode_password}+` eingesetzt:
|
||||
`+${sec.data.libera_password}+` eingesetzt:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
|
||||
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
|
||||
----
|
||||
|
||||
Das automatische Betreten (auto-join) von Channels (Chaträume) direkt nach dem
|
||||
@@ -227,7 +220,34 @@ Verbindungsaufbau zum IRC-Server kann durch den Eintrag der gewünschten Channel
|
||||
in folgender Option erreicht werden:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.autojoin "#channel1,#channel2"
|
||||
/set irc.server.libera.autojoin "#channel1,#channel2"
|
||||
----
|
||||
|
||||
Mit dem `/autojoin` Befehl können die _autojoin_ Optionen einfach konfiguriert werden.
|
||||
(siehe `/help autojoin`).
|
||||
|
||||
WeeChat kann auch konfigurieren werden, dass die _autojoin_ Optionen automatisch aktualisiert werden
|
||||
sobald man Kanäle betritt oder verlässt:
|
||||
|
||||
----
|
||||
/set irc.server_default.autojoin_dynamic on
|
||||
----
|
||||
|
||||
Mit dem Befehl `/unset` können Server-Optionen zurückgesetzt werden.
|
||||
Ist eine Server-Option zurückgesetzt, _wirkt_ der entsprechende Vorgabewert
|
||||
aus dem fall-back-Bereich `irc.server_default.xxx`. So nimmt, beispielsweise
|
||||
nach dem Rücksetzen der Libera-Nicks, diese Server-Option _automatisch_ den Wert
|
||||
der entsprechenden fall-back-Option `irc.server_default.nicks` an:
|
||||
|
||||
----
|
||||
/unset irc.server.libera.nicks
|
||||
----
|
||||
|
||||
*Andere Optionen:*
|
||||
Werte anderer Server-Optionen (`xxx`) können festgelegt werden mit:
|
||||
|
||||
----
|
||||
/set irc.server.libera.xxx Wert
|
||||
----
|
||||
|
||||
[TIP]
|
||||
@@ -236,31 +256,14 @@ vervollständigen und mittels kbd:[Shift+Tab] kann eine teilweise Vervollständi
|
||||
durchgeführt werden (was bei langen Wörtern, wie z.B. dem Namen einer Option, nützlich
|
||||
sein kann).
|
||||
|
||||
Mit dem Befehl `/unset` können Server-Optionen zurückgesetzt werden.
|
||||
Ist eine Server-Option zurückgesetzt, _wirkt_ der entsprechende Vorgabewert
|
||||
aus dem fall-back-Bereich `irc.server_default.xxx`. So nimmt, beispielsweise
|
||||
nach dem Rücksetzen der Freenode-Nicks, diese Server-Option _automatisch_ den Wert
|
||||
der entsprechenden fall-back-Option `irc.server_default.nicks` an:
|
||||
|
||||
----
|
||||
/unset irc.server.freenode.nicks
|
||||
----
|
||||
|
||||
*Andere Optionen:*
|
||||
Werte anderer Server-Optionen (`xxx`) können festgelegt werden mit:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.xxx Wert
|
||||
----
|
||||
|
||||
[[connect_to_irc_server]]
|
||||
== Verbinden mit dem IRC-Server
|
||||
|
||||
----
|
||||
/connect freenode
|
||||
/connect libera
|
||||
----
|
||||
|
||||
Mittels obigem Befehl stellt WeeChat eine Verbindung zum freenode Server
|
||||
Mittels obigem Befehl stellt WeeChat eine Verbindung zum libera Server
|
||||
her und betritt automatisch die Kanäle die in der "autojoin" Server-Option
|
||||
aufgeführt sind.
|
||||
|
||||
@@ -438,14 +441,14 @@ Zeige eine liste aller verfügbaren Skripten:
|
||||
/script
|
||||
----
|
||||
|
||||
Auf *weechat.org* von Drittanbietern bereitgestellte Scripten: https://weechat.org/scripts
|
||||
Eine Liste von Skripten ist in WeeChat mittels `/script` oder auf
|
||||
https://weechat.org/scripts/[this page ^↗^,window=_blank] verfügbar.
|
||||
|
||||
[[more_doc]]
|
||||
== Weitere Dokumentation
|
||||
|
||||
Mit dieser Quickstart-Anleitung wurden dir die wesentlichen
|
||||
Bedienungswerkzeuge von WeeChat nähergebracht.
|
||||
Für das eingehende Studium aller verfügbaren Funktionalitäten
|
||||
sei dir unsere ausführliche FAQ/Dokumentation ans Herz gelegt: https://weechat.org/doc
|
||||
WeeChat kann nun verwendet werden und lesen Sie
|
||||
https://weechat.org/doc/[FAQ/documentation ^↗^,window=_blank]
|
||||
falls Sie weitere Fragen haben.
|
||||
|
||||
Viel Spass mit WeeChat!
|
||||
|
||||
+257
-191
@@ -17,8 +17,8 @@
|
||||
|
||||
Diese Anleitung beschreibt den WeeChat Chat Client und ist Teil von WeeChat.
|
||||
|
||||
Die aktuelle Version dieser Anleitung finden Sie auf:
|
||||
https://weechat.org/doc
|
||||
Die neueste Version dieses Dokuments finden Sie unter
|
||||
https://weechat.org/doc/[this page ^↗^,window=_blank].
|
||||
|
||||
|
||||
[[introduction]]
|
||||
@@ -67,18 +67,23 @@ Ein Skript darf *NIEMALS* einen fork nutzen oder einen eigenen Thread erstellen,
|
||||
dafür gibt es explizit eine API Funktion, andernfalls kann WeeChat abstürzen. +
|
||||
Wenn etwas in einem Hintergrundprozess ausgeführt werden soll, kann die Funktion
|
||||
`+hook_process+` genutzt werden. Siehe Beispiele im Kapitel <<hook_process,Hintergrundprozesse>>
|
||||
und die Dokumentation für die Funktion `+hook_process+` in link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference] (Englisch).
|
||||
und die Dokumentation für die Funktion `+hook_process+` in link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference ^↗^,window=_blank] (Englisch).
|
||||
|
||||
[[languages_specificities]]
|
||||
=== Besonderheiten der einzelnen Skriptsprachen
|
||||
|
||||
[[language_python]]
|
||||
==== Python
|
||||
|
||||
[[python_module]]
|
||||
===== Module
|
||||
|
||||
WeeChat definiert ein `weechat` Module welches mittels `import weechat`
|
||||
importiert werden muss.
|
||||
importiert werden muss. +
|
||||
Ein Python-Stub für die WeeChat-API ist im Repository verfügbar:
|
||||
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi ^↗^,window=_blank].
|
||||
|
||||
[[python_functions]]
|
||||
===== Funktionen
|
||||
|
||||
Funktionen werden aufgerufen mittels `+weechat.xxx(arg1, arg2, ...)+`.
|
||||
@@ -86,6 +91,7 @@ Funktionen werden aufgerufen mittels `+weechat.xxx(arg1, arg2, ...)+`.
|
||||
Die Funktionen `+print*+` werden bei python durch `+prnt*+` ersetzt
|
||||
(`print` war ein reserviertes Schlüsselwort unter Python 2).
|
||||
|
||||
[[python_strings]]
|
||||
===== In Callbacks empfangene Zeichen
|
||||
|
||||
Mit Python 3 und WeeChat ≥ 2.7 sind die Zeichenketten in Callbacks
|
||||
@@ -103,38 +109,38 @@ Liste ist nicht vollständig):
|
||||
|===
|
||||
| API Funktion | Argumente | Beispiele| Beschreibung
|
||||
|
||||
| hook_modifier |
|
||||
irc_in_yyy |
|
||||
pass:[irc_in_privmsg] +
|
||||
pass:[irc_in_notice] |
|
||||
Eine Nachricht die von der IRC Erweiterung empfangen wurde und bevor sie nach UTF-8 dekodiert wurde (intern
|
||||
| hook_modifier
|
||||
| irc_in_yyy
|
||||
| pass:[irc_in_privmsg] +
|
||||
pass:[irc_in_notice]
|
||||
| Eine Nachricht die von der IRC Erweiterung empfangen wurde und bevor sie nach UTF-8 dekodiert wurde (intern
|
||||
verwendet). +
|
||||
+
|
||||
Es wird empfohlen den Modifier `+irc_in2_yyy+` zu nutzen, da die empfangene Zeichenkette
|
||||
immer UTF-8 gültig ist. +
|
||||
siehe Funktion `+hook_modifier+` in der
|
||||
link:weechat_plugin_api.en.html#_hook_modifier[WeeChat Anleitung für API Erweiterung].
|
||||
link:weechat_plugin_api.en.html#_hook_modifier[WeeChat Anleitung für API Erweiterung ^↗^,window=_blank].
|
||||
|
||||
| hook_signal |
|
||||
xxx,irc_out_yyy +
|
||||
xxx,irc_outtags_yyy |
|
||||
pass:[*,irc_out_privmsg] +
|
||||
| hook_signal
|
||||
| xxx,irc_out_yyy +
|
||||
xxx,irc_outtags_yyy
|
||||
| pass:[*,irc_out_privmsg] +
|
||||
pass:[*,irc_out_notice] +
|
||||
pass:[*,irc_outtags_privmsg] +
|
||||
pass:[*,irc_outtags_notice] |
|
||||
Eine Nachricht welche von der IRC Erweiterung versendet wurde, nachdem diese entsprechend
|
||||
pass:[*,irc_outtags_notice]
|
||||
| Eine Nachricht welche von der IRC Erweiterung versendet wurde, nachdem diese entsprechend
|
||||
der Benutzereinstellung `encode` Charset kodiert (falls abweichend von der `UTF-8` Standardeinstellung). +
|
||||
+
|
||||
Es wird empfohlen das Signal `+xxx,irc_out1_yyy+` zu nutzen, da die empfangene Zeichenkette
|
||||
immer UTF-8 gültig ist. +
|
||||
siehe Funktion `+hook_signal+` in der
|
||||
link:weechat_plugin_api.en.html#_hook_signal[WeeChat Anleitung für API Erweiterung].
|
||||
link:weechat_plugin_api.en.html#_hook_signal[WeeChat Anleitung für API Erweiterung ^↗^,window=_blank].
|
||||
|
||||
| hook_process +
|
||||
hook_process_hashtable |
|
||||
- |
|
||||
- |
|
||||
Ausgabe des Befehls, dass an den Callback gesendet wurde, kann ungültige UTF-8 Daten enthalten.
|
||||
hook_process_hashtable
|
||||
| -
|
||||
| -
|
||||
| Ausgabe des Befehls, dass an den Callback gesendet wurde, kann ungültige UTF-8 Daten enthalten.
|
||||
|
||||
|===
|
||||
|
||||
@@ -142,18 +148,23 @@ Mit Python 2, das mittlerweile veraltet ist und nicht mehr verwendet werden soll
|
||||
Zeichenkette die an die Callbacks gesendet wird immer vom Typ `str` und kann deshalb bei den
|
||||
oben genannten Fällen, ungültige UTF-8 Daten enthalten.
|
||||
|
||||
[[language_perl]]
|
||||
==== Perl
|
||||
|
||||
[[perl_functions]]
|
||||
===== Funktionen
|
||||
|
||||
Funktionen werden aufgerufen mittels `+weechat::xxx(arg1, arg2, ...);+`.
|
||||
|
||||
[[language_ruby]]
|
||||
==== Ruby
|
||||
|
||||
[[ruby_init]]
|
||||
===== Initialization
|
||||
|
||||
Es muss _weechat_init_ definiert werden und darin dann _register_ ausgeführt werden.
|
||||
|
||||
[[ruby_functions]]
|
||||
===== Functions
|
||||
|
||||
Funktionen werden aufgerufen mittels `+Weechat.xxx(arg1, arg2, ...)+`.
|
||||
@@ -178,20 +189,32 @@ Weechat.bar_new("name", "off", "0", "window", "", "left", "vertical", "vertical"
|
||||
["default", "default", "default", "default"], "0", "items")
|
||||
----
|
||||
|
||||
[[language_lua]]
|
||||
==== Lua
|
||||
|
||||
[[lua_functions]]
|
||||
===== Funktionen
|
||||
|
||||
Funktionen werden aufgerufen mittels `+weechat.xxx(arg1, arg2, ...)+`.
|
||||
|
||||
[[language_tcl]]
|
||||
==== Tcl
|
||||
|
||||
[[tcl_functions]]
|
||||
===== Funktionen
|
||||
|
||||
Funktionen werden aufgerufen mittels `+weechat::xxx arg1 arg2 ...+`.
|
||||
|
||||
Da Tcl nur String-Typen hat, gibt es keinen Null-Typ, der als Argument übergeben werden kann
|
||||
wenn eine Funktion Nullwerte akzeptiert. Um dies zu überwinden, können Sie die Konstante
|
||||
`$::weechat::WEECHAT_NULL` verwenden, das als Nullwert fungiert. Diese Konstante ist definiert
|
||||
als `\uFFFF\uFFFF\uFFFFWEECHAT_NULL\uFFFF\uFFFF\uFFFF`, es ist somit sehr unwahrscheinlich
|
||||
das es ungewollt verwendet wird.
|
||||
|
||||
[[language_guile]]
|
||||
==== Guile (Scheme)
|
||||
|
||||
[[guile_functions]]
|
||||
===== Funktionen
|
||||
|
||||
Funktionen werden aufgerufen mittels `+(weechat:xxx arg1 arg2 ...)+`.
|
||||
@@ -204,14 +227,18 @@ für andere Funktionen), da die Anzahl der Argumente die zulässige Anzahl in Gu
|
||||
* config_new_option
|
||||
* bar_new
|
||||
|
||||
[[language_javascript]]
|
||||
==== JavaScript
|
||||
|
||||
[[javascript_functions]]
|
||||
===== Funktionen
|
||||
|
||||
Funktionen werden aufgerufen mittels `+weechat.xxx(arg1, arg2, ...);+`.
|
||||
|
||||
[[language_php]]
|
||||
==== PHP
|
||||
|
||||
[[php_functions]]
|
||||
===== Functions
|
||||
|
||||
Funktionen werden aufgerufen mittels `+weechat_xxx(arg1, arg2, ...);+`.
|
||||
@@ -222,11 +249,11 @@ Funktionen werden aufgerufen mittels `+weechat_xxx(arg1, arg2, ...);+`.
|
||||
Ein WeeChat-Skript muss sich bei WeeChat "registrieren". Dazu muss das Skript
|
||||
zuerst die "register" Funktion ausführen.
|
||||
|
||||
Prototyp:
|
||||
Prototyp (Python):
|
||||
|
||||
[source,python]
|
||||
----
|
||||
weechat.register(Name, Author, Version, Lizenz, Beschreibung, Shutdown_Funktion, Zeichensatz)
|
||||
def register(name: str, author: str, version: str, license: str, description: str, shutdown_function: str, charset: str) -> int: ...
|
||||
----
|
||||
|
||||
Argumente:
|
||||
@@ -349,7 +376,7 @@ anlegen, der in das Verzeichnis _Skriptsprache/autoload_ zeigt.
|
||||
Ein Beispiel für ein Python-Skript:
|
||||
|
||||
----
|
||||
$ cd ~/.weechat/python/autoload
|
||||
$ cd ~/.local/share/weechat/python/autoload
|
||||
$ ln -s ../script.py
|
||||
----
|
||||
|
||||
@@ -363,7 +390,7 @@ ein Link in das entsprechende _autoload_ Verzeichnis erzeugt.
|
||||
Die Skripten API ist nahezu identisch mit der API der C Erweiterung.
|
||||
Um einen Überblick über alle API Funktionen (Prototyp, Argumente,
|
||||
Rückgabe werte, Beispiele) zu erhalten werfen Sie einen Blick in
|
||||
die link:weechat_plugin_api.en.html[WeeChat Plugin API Reference] (Englisch).
|
||||
die link:weechat_plugin_api.en.html[WeeChat Plugin API Reference ^↗^,window=_blank] (Englisch).
|
||||
Es ist wichtig das man zwischen einer _Erweiterung_ und einem _Skript_
|
||||
unterscheidet: Eine _Erweiterung_ ist eine Binärdatei die kompiliert wurde
|
||||
und mittels `/plugin` geladen wird. Ein _Skript_ ist eine Textdatei welche
|
||||
@@ -532,25 +559,25 @@ weechat_hook_timer(1000, 0, 1, $timer_cb, 'test');
|
||||
== Skript API
|
||||
|
||||
Um weiterführende Informationen zu den API Funktionen zu erhalten
|
||||
lesen Sie bitte link:weechat_plugin_api.en.html[WeeChat Plugin API Reference] (Englisch).
|
||||
lesen Sie bitte link:weechat_plugin_api.en.html[WeeChat Plugin API Reference ^↗^,window=_blank] (Englisch).
|
||||
|
||||
[[script_api_functions]]
|
||||
=== Funktionen
|
||||
|
||||
Liste der Skript API Funktionen:
|
||||
|
||||
[width="100%",cols="1,3",options="header"]
|
||||
[width="100%",cols="1,5",options="header"]
|
||||
|===
|
||||
| Kategorie | Funktionen
|
||||
|
||||
| Allgemein |
|
||||
register
|
||||
| Allgemein
|
||||
| register
|
||||
|
||||
| Erweiterungen |
|
||||
plugin_get_name
|
||||
| Erweiterungen
|
||||
| plugin_get_name
|
||||
|
||||
| Strings |
|
||||
charset_set +
|
||||
| Strings
|
||||
| charset_set +
|
||||
iconv_to_internal +
|
||||
iconv_from_internal +
|
||||
gettext +
|
||||
@@ -569,13 +596,13 @@ Liste der Skript API Funktionen:
|
||||
string_eval_expression +
|
||||
string_eval_path_home
|
||||
|
||||
| Verzeichnisse |
|
||||
mkdir_home +
|
||||
| Verzeichnisse
|
||||
| mkdir_home +
|
||||
mkdir +
|
||||
mkdir_parents
|
||||
|
||||
| sortierte Listen |
|
||||
list_new +
|
||||
| sortierte Listen
|
||||
| list_new +
|
||||
list_add +
|
||||
list_search +
|
||||
list_search_pos +
|
||||
@@ -591,8 +618,8 @@ Liste der Skript API Funktionen:
|
||||
list_remove_all +
|
||||
list_free
|
||||
|
||||
| Konfigurationsdatei |
|
||||
config_new +
|
||||
| Konfigurationsdatei
|
||||
| config_new +
|
||||
config_new_section +
|
||||
config_search_section +
|
||||
config_new_option +
|
||||
@@ -629,20 +656,21 @@ Liste der Skript API Funktionen:
|
||||
config_set_desc_plugin +
|
||||
config_unset_plugin
|
||||
|
||||
| Tastenbelegung |
|
||||
key_bind +
|
||||
| Tastenbelegung
|
||||
| key_bind +
|
||||
key_unbind
|
||||
|
||||
| Ausgabe |
|
||||
prefix +
|
||||
| Ausgabe
|
||||
| prefix +
|
||||
color +
|
||||
print (für Python: prnt) +
|
||||
print_date_tags (für Python: prnt_date_tags) +
|
||||
print_y (für Python: prnt_y) +
|
||||
print_y_date_tags (für Python: prnt_y_date_tags) +
|
||||
log_print
|
||||
|
||||
| Hooks |
|
||||
hook_command +
|
||||
| Hooks
|
||||
| hook_command +
|
||||
hook_command_run +
|
||||
hook_timer +
|
||||
hook_fd +
|
||||
@@ -667,8 +695,9 @@ Liste der Skript API Funktionen:
|
||||
unhook +
|
||||
unhook_all
|
||||
|
||||
| Buffer |
|
||||
buffer_new +
|
||||
| Buffer
|
||||
| buffer_new +
|
||||
buffer_new_props +
|
||||
current_buffer +
|
||||
buffer_search +
|
||||
buffer_search_main +
|
||||
@@ -683,16 +712,16 @@ Liste der Skript API Funktionen:
|
||||
buffer_string_replace_local_var +
|
||||
buffer_match_list
|
||||
|
||||
| Fenster |
|
||||
current_window +
|
||||
| Fenster
|
||||
| current_window +
|
||||
window_search_with_buffer +
|
||||
window_get_integer +
|
||||
window_get_string +
|
||||
window_get_pointer +
|
||||
window_set_title
|
||||
|
||||
| Nickliste |
|
||||
nicklist_add_group +
|
||||
| Nickliste
|
||||
| nicklist_add_group +
|
||||
nicklist_search_group +
|
||||
nicklist_add_nick +
|
||||
nicklist_search_nick +
|
||||
@@ -708,8 +737,8 @@ Liste der Skript API Funktionen:
|
||||
nicklist_nick_get_pointer +
|
||||
nicklist_nick_set
|
||||
|
||||
| Bars |
|
||||
bar_item_search +
|
||||
| Bars
|
||||
| bar_item_search +
|
||||
bar_item_new +
|
||||
bar_item_update +
|
||||
bar_item_remove +
|
||||
@@ -719,23 +748,23 @@ Liste der Skript API Funktionen:
|
||||
bar_update +
|
||||
bar_remove
|
||||
|
||||
| Befehle |
|
||||
command +
|
||||
| Befehle
|
||||
| command +
|
||||
command_options
|
||||
|
||||
| Vervollständigung |
|
||||
completion_new +
|
||||
| Vervollständigung
|
||||
| completion_new +
|
||||
completion_search +
|
||||
completion_get_string +
|
||||
completion_list_add +
|
||||
completion_free
|
||||
|
||||
| Informationen |
|
||||
info_get +
|
||||
| Informationen
|
||||
| info_get +
|
||||
info_get_hashtable
|
||||
|
||||
| Infolisten |
|
||||
infolist_new +
|
||||
| Infolisten
|
||||
| infolist_new +
|
||||
infolist_new_item +
|
||||
infolist_new_var_integer +
|
||||
infolist_new_var_string +
|
||||
@@ -753,8 +782,8 @@ Liste der Skript API Funktionen:
|
||||
infolist_time +
|
||||
infolist_free
|
||||
|
||||
| hdata |
|
||||
hdata_get +
|
||||
| hdata
|
||||
| hdata_get +
|
||||
hdata_get_var_offset +
|
||||
hdata_get_var_type_string +
|
||||
hdata_get_var_array_size +
|
||||
@@ -775,8 +804,8 @@ Liste der Skript API Funktionen:
|
||||
hdata_update +
|
||||
hdata_get_string
|
||||
|
||||
| Upgrade |
|
||||
upgrade_new +
|
||||
| Upgrade
|
||||
| upgrade_new +
|
||||
upgrade_write_object +
|
||||
upgrade_read +
|
||||
upgrade_close
|
||||
@@ -787,63 +816,63 @@ Liste der Skript API Funktionen:
|
||||
|
||||
Liste der Konstanten in Skript API:
|
||||
|
||||
[width="100%",cols="1,3",options="header"]
|
||||
[width="100%",cols="1,5",options="header"]
|
||||
|===
|
||||
| Kategorie | Konstanten
|
||||
|
||||
| return codes |
|
||||
WEECHAT_RC_OK +
|
||||
WEECHAT_RC_OK_EAT +
|
||||
WEECHAT_RC_ERROR
|
||||
| return codes
|
||||
| `WEECHAT_RC_OK` (integer) +
|
||||
`WEECHAT_RC_OK_EAT` (integer) +
|
||||
`WEECHAT_RC_ERROR` (integer)
|
||||
|
||||
| Konfigurationsdatei |
|
||||
WEECHAT_CONFIG_READ_OK +
|
||||
WEECHAT_CONFIG_READ_MEMORY_ERROR +
|
||||
WEECHAT_CONFIG_READ_FILE_NOT_FOUND +
|
||||
WEECHAT_CONFIG_WRITE_OK +
|
||||
WEECHAT_CONFIG_WRITE_ERROR +
|
||||
WEECHAT_CONFIG_WRITE_MEMORY_ERROR +
|
||||
WEECHAT_CONFIG_OPTION_SET_OK_CHANGED +
|
||||
WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE +
|
||||
WEECHAT_CONFIG_OPTION_SET_ERROR +
|
||||
WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND +
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET +
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_RESET +
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED +
|
||||
WEECHAT_CONFIG_OPTION_UNSET_ERROR
|
||||
| Konfigurationsdatei
|
||||
| `WEECHAT_CONFIG_READ_OK` (integer) +
|
||||
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (integer) +
|
||||
`WEECHAT_CONFIG_WRITE_OK` (integer) +
|
||||
`WEECHAT_CONFIG_WRITE_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (integer)
|
||||
|
||||
| sortierte Listen |
|
||||
WEECHAT_LIST_POS_SORT +
|
||||
WEECHAT_LIST_POS_BEGINNING +
|
||||
WEECHAT_LIST_POS_END
|
||||
| sortierte Listen
|
||||
| `WEECHAT_LIST_POS_SORT` (string) +
|
||||
`WEECHAT_LIST_POS_BEGINNING` (string) +
|
||||
`WEECHAT_LIST_POS_END` (string)
|
||||
|
||||
| Hotlist |
|
||||
WEECHAT_HOTLIST_LOW +
|
||||
WEECHAT_HOTLIST_MESSAGE +
|
||||
WEECHAT_HOTLIST_PRIVATE +
|
||||
WEECHAT_HOTLIST_HIGHLIGHT
|
||||
| Hotlist
|
||||
| `WEECHAT_HOTLIST_LOW` (string) +
|
||||
`WEECHAT_HOTLIST_MESSAGE` (string) +
|
||||
`WEECHAT_HOTLIST_PRIVATE` (string) +
|
||||
`WEECHAT_HOTLIST_HIGHLIGHT` (string)
|
||||
|
||||
| hook Prozesse |
|
||||
WEECHAT_HOOK_PROCESS_RUNNING +
|
||||
WEECHAT_HOOK_PROCESS_ERROR
|
||||
| hook Prozesse
|
||||
| `WEECHAT_HOOK_PROCESS_RUNNING` (integer) +
|
||||
`WEECHAT_HOOK_PROCESS_ERROR` (integer)
|
||||
|
||||
| hook Connect |
|
||||
WEECHAT_HOOK_CONNECT_OK +
|
||||
WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND +
|
||||
WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND +
|
||||
WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED +
|
||||
WEECHAT_HOOK_CONNECT_PROXY_ERROR +
|
||||
WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR +
|
||||
WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR +
|
||||
WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR +
|
||||
WEECHAT_HOOK_CONNECT_MEMORY_ERROR +
|
||||
WEECHAT_HOOK_CONNECT_TIMEOUT +
|
||||
WEECHAT_HOOK_CONNECT_SOCKET_ERROR
|
||||
| hook Connect
|
||||
| `WEECHAT_HOOK_CONNECT_OK` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_TIMEOUT` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (integer)
|
||||
|
||||
| hook Signal |
|
||||
WEECHAT_HOOK_SIGNAL_STRING +
|
||||
WEECHAT_HOOK_SIGNAL_INT +
|
||||
WEECHAT_HOOK_SIGNAL_POINTER
|
||||
| hook Signal
|
||||
| `WEECHAT_HOOK_SIGNAL_STRING` (string) +
|
||||
`WEECHAT_HOOK_SIGNAL_INT` (string) +
|
||||
`WEECHAT_HOOK_SIGNAL_POINTER` (string)
|
||||
|===
|
||||
|
||||
[[common_tasks]]
|
||||
@@ -852,7 +881,7 @@ Liste der Konstanten in Skript API:
|
||||
Dieses Kapitel beinhaltet einige Aufgaben mit Lösungsbeispielen.
|
||||
Die Skript API wird dabei nur sehr oberflächlich besprochen.Um eine vollständige
|
||||
Übersicht aller Befehle zu erhalten nutzen Sie bitte die
|
||||
link:weechat_plugin_api.en.html[WeeChat Plugin API Reference] (Englisch).
|
||||
link:weechat_plugin_api.en.html[WeeChat Plugin API Reference ^↗^,window=_blank] (Englisch).
|
||||
|
||||
[[buffers]]
|
||||
=== Buffer
|
||||
@@ -872,7 +901,7 @@ Beispiele:
|
||||
weechat.prnt("", "Hallo")
|
||||
|
||||
# Gibt den Text "Hallo" im Core Buffer aus, schreibt diesen aber nicht in die Protokolldatei
|
||||
# (nur Version >= 0.3.3)
|
||||
# (nur Version ≥ 0.3.3)
|
||||
weechat.prnt_date_tags("", 0, "no_log", "hello")
|
||||
|
||||
# Gibt den Präfix "==>" gefolgt von dem Text "Hallo" im aktuellen Buffer aus
|
||||
@@ -886,13 +915,13 @@ weechat.prnt("", "%sfalsche Anzahl an Argumenten" % weechat.prefix("error"))
|
||||
weechat.prnt("", "Text %sGeld auf Blau" % weechat.color("yellow,blue"))
|
||||
|
||||
# sucht einen bestimmten Buffer und gibt dort einen Text aus
|
||||
# (der Name des Buffers muss folgendes Format besitzen Erweiterung.Name, Beispiel: "irc.freenode.#weechat")
|
||||
buffer = weechat.buffer_search("irc", "freenode.#weechat")
|
||||
# (der Name des Buffers muss folgendes Format besitzen Erweiterung.Name, Beispiel: "irc.libera.#weechat")
|
||||
buffer = weechat.buffer_search("irc", "libera.#weechat")
|
||||
weechat.prnt(buffer, "Nachricht im #weechat Channel")
|
||||
|
||||
# die zweite Möglichkeit einen Buffer zu suchen (empfohlen!)
|
||||
# (bitte beachten Sie dass der Server- und Channelname durch ein Komma zu trennen sind)
|
||||
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
|
||||
buffer = weechat.info_get("irc_buffer", "libera,#weechat")
|
||||
weechat.prnt(buffer, "Nachricht im #weechat Channel")
|
||||
----
|
||||
|
||||
@@ -914,7 +943,7 @@ Beispiele:
|
||||
weechat.command("", "/help")
|
||||
|
||||
# sendet den Text "Hallo" in den IRC Channel #weechat (die Teilnehmer des Channels sehen diese Nachricht)
|
||||
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
|
||||
buffer = weechat.info_get("irc_buffer", "libera,#weechat")
|
||||
weechat.command(buffer, "Hallo")
|
||||
----
|
||||
|
||||
@@ -1052,26 +1081,53 @@ Mit der Funktion `+hook_process+` kann ein Hintergrundprozess gestartet werden.
|
||||
Der Callback wird aufgerufen sobald der Hintergrundprozess abgearbeitet wurde.
|
||||
Dies kann auch mehrfach der Fall sein.
|
||||
|
||||
Für den letzten Aufruf des Callback wird _rc_ auf 0 oder einen positiven Wert
|
||||
gesetzt. Dies ist der Return Code des Befehls.
|
||||
Für den letzten Aufruf des Callback wird _return_code_ auf 0 oder einen positiven
|
||||
Wert gesetzt. Dies ist der Return Code des Befehls.
|
||||
|
||||
Beispiele:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
process_output = ""
|
||||
|
||||
def my_process_cb(data, command, rc, out, err):
|
||||
global process_output
|
||||
if out != "":
|
||||
process_output += out
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", process_output)
|
||||
def my_process_cb(data, command, return_code, out, err):
|
||||
if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
|
||||
weechat.prnt("", "Error with command '%s'" % command)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "return_code = %d" % return_code)
|
||||
if out:
|
||||
weechat.prnt("", "stdout: %s" % out)
|
||||
if err:
|
||||
weechat.prnt("", "stderr: %s" % err)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process("/bin/ls -l /etc", 10 * 1000, "my_process_cb", "")
|
||||
----
|
||||
|
||||
Sie können statt eines externen Befehls auch direkt eine
|
||||
Skriptfunktion aufrufen, die Weechat blockieren würde:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
def get_status(data):
|
||||
# do something blocking...
|
||||
# ...
|
||||
return "this is the result"
|
||||
|
||||
def my_process_cb(data, command, return_code, out, err):
|
||||
if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
|
||||
weechat.prnt("", "Error with command '%s'" % command)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "return_code = %d" % return_code)
|
||||
if out:
|
||||
weechat.prnt("", "stdout: %s" % out)
|
||||
if err:
|
||||
weechat.prnt("", "stderr: %s" % err)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
hook = weechat.hook_process("func:get_status", 5000, "my_process_cb", "")
|
||||
----
|
||||
|
||||
[[url_transfer]]
|
||||
==== URL Übertragung
|
||||
|
||||
@@ -1086,15 +1142,15 @@ dabei in der Callback-Variable "out" gesichert (Standardausgabe des Prozesses):
|
||||
|
||||
[source,python]
|
||||
----
|
||||
# Zeigt die aktuelle stabile Version von WeeChat an.
|
||||
weechat_version = ""
|
||||
# Display latest stable version of WeeChat.
|
||||
weechat_latest_version = ""
|
||||
|
||||
def weechat_process_cb(data, command, rc, out, err):
|
||||
global weechat_version
|
||||
if out != "":
|
||||
weechat_version += out
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", "aktuelle stabile WeeChat-Version: %s" % weechat_version)
|
||||
def weechat_process_cb(data, command, return_code, out, err):
|
||||
global weechat_latest_version
|
||||
if out:
|
||||
weechat_latest_version += out
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "Latest WeeChat version: %s" % weechat_latest_version)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process("url:https://weechat.org/dev/info/stable/",
|
||||
@@ -1102,16 +1158,17 @@ weechat.hook_process("url:https://weechat.org/dev/info/stable/",
|
||||
----
|
||||
|
||||
[TIP]
|
||||
Alle Informationen die WeeChat betreffen findet man auf: https://weechat.org/dev/info
|
||||
Alle verfügbaren Informationen über WeeChat findet man unter
|
||||
https://weechat.org/dev/info/[this page ^↗^,window=_blank].
|
||||
|
||||
Beispiel eines URL Transfers, mit zusätzliche Optionen: Es wird das neuste
|
||||
WeeChat Entwicklerpaket in die Datei _/tmp/weechat-devel.tar.gz_ gesichert:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
def my_process_cb(data, command, rc, out, err):
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", "End of transfer (rc=%s)" % rc)
|
||||
def my_process_cb(data, command, return_code, out, err):
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "End of transfer (return code = %d)" % return_code)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.tar.gz",
|
||||
@@ -1121,7 +1178,7 @@ weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.
|
||||
|
||||
Für weitere Informationen zum URL Transfer und verfügbare Optionen, siehe Funktionen
|
||||
`+hook_process+` und `+hook_process_hashtable+` in
|
||||
link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference] (Englisch).
|
||||
link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference ^↗^,window=_blank] (Englisch).
|
||||
|
||||
[[config_options]]
|
||||
=== Konfiguration / Optionen
|
||||
@@ -1221,7 +1278,7 @@ xxx,irc_raw_in2_yyy::
|
||||
[source,python]
|
||||
----
|
||||
def join_cb(data, signal, signal_data):
|
||||
# Das Signal lautet: "freenode,irc_in2_join"
|
||||
# Das Signal lautet: "libera,irc_in2_join"
|
||||
# signal_data enthält die IRC Nachricht, zum Beispiel: ":nick!user@host JOIN :#channel"
|
||||
server = signal.split(",")[0]
|
||||
msg = weechat.info_get_hashtable("irc_message_parse", {"message": signal_data})
|
||||
@@ -1275,71 +1332,80 @@ Das Ergebnis ist eine Hashtabelle mit folgenden Schlüsseln
|
||||
(das Beispiel bezieht sich auf folgende IRC Nachricht:
|
||||
`+@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!+`):
|
||||
|
||||
[width="100%",cols="1,^2,10,8",options="header"]
|
||||
[width="100%",cols="3,^2,10,7",options="header"]
|
||||
|===
|
||||
| Schlüssel | WeeChat version | Beschreibung | Beispiel
|
||||
| Schlüssel | Seit WeeChat ^(1)^ | Beschreibung | Beispiel
|
||||
|
||||
| Tags | ≥ 0.4.0 |
|
||||
Tags in der Nachricht (kann leer sein). |
|
||||
`+time=2015-06-27T16:40:35.000Z+`
|
||||
| Tags | 0.4.0
|
||||
| Tags in der Nachricht (kann leer sein).
|
||||
| `+time=2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| message_without_tags | ≥ 0.4.0 |
|
||||
Die IRC Nachricht ohne Tags (wie eine Nachricht ohne Tags). |
|
||||
`+:nick!user@host PRIVMSG #weechat :hello!+`
|
||||
| tag_xxx | 3.3
|
||||
| Wert des Tags "xxx" ohne Escapezeichen (ein Schlüssel pro Tag).
|
||||
| `+2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| nick | ≥ 0.3.4 |
|
||||
der ursprüngliche Nick. |
|
||||
`+nick+`
|
||||
| message_without_tags | 0.4.0
|
||||
| Die IRC Nachricht ohne Tags (wie eine Nachricht ohne Tags).
|
||||
| `+:nick!user@host PRIVMSG #weechat :hello!+`
|
||||
|
||||
| user | ≥ 2.7 |
|
||||
der ursprüngliche Benutzer. |
|
||||
`+user+`
|
||||
| nick | 0.3.4
|
||||
| der ursprüngliche Nick.
|
||||
| `+nick+`
|
||||
|
||||
| host | ≥ 0.3.4 |
|
||||
der ursprüngliche Host (beinhaltet den Nick). |
|
||||
`+nick!user@host+`
|
||||
| user | 2.7
|
||||
| der ursprüngliche Benutzer.
|
||||
| `+user+`
|
||||
|
||||
| command | ≥ 0.3.4 |
|
||||
der Befehl (_PRIVMSG_, _NOTICE_, ...). |
|
||||
`+PRIVMSG+`
|
||||
| host | 0.3.4
|
||||
| der ursprüngliche Host (beinhaltet den Nick).
|
||||
| `+nick!user@host+`
|
||||
|
||||
| channel | ≥ 0.3.4 |
|
||||
der Zielchanne.l|
|
||||
| command | 0.3.4
|
||||
| der Befehl (_PRIVMSG_, _NOTICE_, ...).
|
||||
| `+PRIVMSG+`
|
||||
|
||||
| channel | 0.3.4
|
||||
| der Zielchanne.l|
|
||||
`+#weechat+`
|
||||
|
||||
| arguments | ≥ 0.3.4 |
|
||||
das Argument des Befehls (beinhaltet den Channel). |
|
||||
`+#weechat :hello!+`
|
||||
| arguments | 0.3.4
|
||||
| das Argument des Befehls (beinhaltet den Channel).
|
||||
| `+#weechat :hello!+`
|
||||
|
||||
| text | ≥ 1.3 |
|
||||
der Text (zum Beispiel eine Nachricht eines Users). |
|
||||
`+hello!+`
|
||||
| text | 1.3
|
||||
| der Text (zum Beispiel eine Nachricht eines Users).
|
||||
| `+hello!+`
|
||||
|
||||
| pos_command | ≥ 1.3 |
|
||||
Index von _command_ innerhalb einer Nachricht ("-1" falls _command_ nicht gefunden wird). |
|
||||
`+47+`
|
||||
| pos_command | 1.3
|
||||
| Index von _command_ innerhalb einer Nachricht ("-1" falls _command_ nicht gefunden wird).
|
||||
| `+47+`
|
||||
|
||||
| pos_arguments | ≥ 1.3 |
|
||||
Index von_arguments_ innerhalb einer Nachricht ("-1" falls _arguments_ nicht gefunden wird). |
|
||||
`+55+`
|
||||
| pos_arguments | 1.3
|
||||
| Index von_arguments_ innerhalb einer Nachricht ("-1" falls _arguments_ nicht gefunden wird).
|
||||
| `+55+`
|
||||
|
||||
| pos_channel | ≥ 1.3 |
|
||||
Index von _channel_ innerhalb einer Nachricht ("-1" falls _channel_ nicht gefunden wird). |
|
||||
`+55+`
|
||||
| pos_channel | 1.3
|
||||
| Index von _channel_ innerhalb einer Nachricht ("-1" falls _channel_ nicht gefunden wird).
|
||||
| `+55+`
|
||||
|
||||
| pos_text | ≥ 1.3 |
|
||||
Index von _text_ innerhalb einer Nachricht ("-1" falls _text_ nicht gefunden wird). |
|
||||
`+65+`
|
||||
| pos_text | 1.3
|
||||
| Index von _text_ innerhalb einer Nachricht ("-1" falls _text_ nicht gefunden wird).
|
||||
| `+65+`
|
||||
|===
|
||||
|
||||
[NOTE]
|
||||
^(1)^ Der Schlüssel wurde mit dieser WeeChat Version eingeführt.
|
||||
|
||||
[source,python]
|
||||
----
|
||||
dict = weechat.info_get_hashtable(
|
||||
"irc_message_parse",
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
|
||||
# dict == {
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z",
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
|
||||
# "tag_time": "2015-06-27T16:40:35.000Z",
|
||||
# "tag_tag2": "value space",
|
||||
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
||||
# "nick": "nick",
|
||||
# "user": "user",
|
||||
@@ -1348,10 +1414,10 @@ dict = weechat.info_get_hashtable(
|
||||
# "channel": "#weechat",
|
||||
# "arguments": "#weechat :hello!",
|
||||
# "text": "hello!",
|
||||
# "pos_command": "47",
|
||||
# "pos_arguments": "55",
|
||||
# "pos_channel": "55",
|
||||
# "pos_text": "65",
|
||||
# "pos_command": "65",
|
||||
# "pos_arguments": "73",
|
||||
# "pos_channel": "73",
|
||||
# "pos_text": "83",
|
||||
# }
|
||||
----
|
||||
|
||||
@@ -1393,8 +1459,8 @@ weechat.prnt("", "Version %s" % weechat.info_get("version", ""))
|
||||
|
||||
[source,python]
|
||||
----
|
||||
# WeeChat Hauptverzeichnis, zum Beispiel: "/home/xxxx/.weechat"
|
||||
weechat.prnt("", "WeeChat Hauptverzeichnis: %s" % weechat.info_get("weechat_dir", ""))
|
||||
# Zum Beispiel, das WeeChat-Konfigurationsverzeichnis: "/home/user/.config/weechat"
|
||||
weechat.prnt("", "WeeChat config dir: %s" % weechat.info_get("weechat_config_dir", ""))
|
||||
|
||||
# Inaktivität der Tastatur
|
||||
weechat.prnt("", "Tastatur ist seit %s Sekunden nicht mehr betätigt worden" % weechat.info_get("inactivity", ""))
|
||||
|
||||
@@ -1,148 +0,0 @@
|
||||
= WeeChat Anleitung für Testpersonen
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: de
|
||||
:toc: left
|
||||
:toc-title: Inhaltsverzeichnis
|
||||
:sectnums:
|
||||
:docinfo1:
|
||||
|
||||
|
||||
Übersetzer:
|
||||
|
||||
* Juergen Descher <jhdl@gmx.net>, 2009
|
||||
* Nils Görs <weechatter@arcor.de>, 2009-2016
|
||||
|
||||
|
||||
[[purpose]]
|
||||
== Intention
|
||||
|
||||
Viele dankbare Anwender fragen uns wie sie bei der Entwicklung von WeeChat
|
||||
helfen können. Der einfachste (aber auch der kniffligste) Weg uns zu helfen ist:
|
||||
testen!
|
||||
|
||||
Testen ist ein sehr wichtiger Teil der Programmentwicklung und sollte daher
|
||||
nicht unterbewertet werden. Wenn neue Funktionen implementiert wurden dann
|
||||
müssen diese getestet werden. Für manche Funktionen gibt es sehr viele
|
||||
verschiedene Problemstellungen, oder diese sind äußerst Umfangreich. Dadurch
|
||||
können die Entwickler nicht jede einzelne Variante ausprobieren.
|
||||
|
||||
Ein Beispiel: Eine berüchtigte Zeichensatz-Erweiterung wurde in WeeChat 0.2.2
|
||||
eingeführt. Keiner von uns, Entwickler, Mithelfende und Tester, nutzten Channels
|
||||
in denen länderspezifische Zeichen im eigenen Namen Verwendung fanden. Somit wurde
|
||||
die Version 0.2.2 freigegeben und wir bekamen daraufhin eine Flut von Beschwerden
|
||||
durch russischen User, bei denen der Fehler sichtbar war. Hätten wir mehr Tester,
|
||||
dann sollte so etwas nicht mehr passieren.
|
||||
|
||||
Eine stabile Version von WeeChat zu testen bringt uns leider nicht weiter da die
|
||||
Entwickler in der Zwischenzeit neue Funktionen implementiert haben und vermutlich
|
||||
alte Fehler schon behoben wurden.
|
||||
|
||||
|
||||
[[prepare_system]]
|
||||
== Bereite Dein System vor
|
||||
|
||||
Es wäre uns schon sehr damit geholfen wenn Du Linux _core_ Dateien aktivieren würdest.
|
||||
Falls WeeChat abstürzen sollte wird eine Datei Namens _core_ erzeugt. Diese Datei
|
||||
beinhaltet viele nützliche Debug-Informationen um das genaue Problem in WeeChat
|
||||
zu lokalisieren.
|
||||
|
||||
Falls Du die _bash_ als shell benutzt, dann ergänze Deine _~/.bashrc_ durch folgende
|
||||
Zeile:
|
||||
|
||||
----
|
||||
ulimit -c unlimited
|
||||
----
|
||||
|
||||
|
||||
[[download]]
|
||||
== Besorge Dir die Entwickler-Version
|
||||
|
||||
aktueller Programmcode (mit den aktuellen Fehlern und Funktionen) ist im GIT Repository
|
||||
gespeichert.
|
||||
|
||||
Du könntest Dich dazu entscheiden es manuell zu bauen (empfohlen):
|
||||
|
||||
* die GIT Version kann parallel zur stabilen Version kompiliert und installiert
|
||||
werden.
|
||||
* Du benötigst keine Root-Rechte, und opfern brauchst Du Deine stabile Version
|
||||
von WeeChat auch nicht.
|
||||
|
||||
[[get_sources]]
|
||||
=== Beschaffe und baue die Quellen
|
||||
|
||||
Erstelle zuerst einen neuen Ordner, z.B. _weechat-git_:
|
||||
|
||||
----
|
||||
$ mkdir ~/weechat-git
|
||||
$ cd ~/weechat-git
|
||||
----
|
||||
|
||||
Falls Du git installiert hast, clone das git Repository (empfohlen):
|
||||
|
||||
----
|
||||
$ git clone https://github.com/weechat/weechat.git
|
||||
$ cd weechat
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Um auf den aktuellen Stand zu kommen verwendest Du z.B. `git pull` in
|
||||
diesem Ordner.
|
||||
|
||||
Ansonsten kannst Du das _Entwickler-Paket_ herunterladen und entpacken:
|
||||
|
||||
----
|
||||
$ wget https://weechat.org/files/src/weechat-devel.tar.bz2
|
||||
$ tar xvjf weechat-devel.tar.bz2
|
||||
$ cd weechat-devel
|
||||
----
|
||||
|
||||
Um die Quellen zu übersetzen, wird CMake empfohlen:
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/weechat-git -DWEECHAT_HOME=~/.weechat-dev -DCMAKE_BUILD_TYPE=Debug
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
Falls Du CMake nicht hast, ist es auch möglich die autotools zu nutzen:
|
||||
|
||||
----
|
||||
$ ./autogen.sh
|
||||
$ ./configure --prefix=$HOME/weechat-git WEECHAT_HOME=~/.weechat-dev
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
[[install_binary_package]]
|
||||
=== Installieren des Programm-Paketes
|
||||
|
||||
Abhängig Deiner Linux Distribution:
|
||||
|
||||
* Debian: https://weechat.org/download/debian
|
||||
* Gentoo: https://weechat.org/download
|
||||
* ArchLinux: PKGBUILD von https://aur.archlinux.org/
|
||||
* andere: Wissen wir nicht! Eheh.
|
||||
|
||||
|
||||
[[run]]
|
||||
== WeeChat starten
|
||||
|
||||
Die Befehlszeile lautet:
|
||||
|
||||
----
|
||||
$ ~/weechat-git/bin/weechat
|
||||
----
|
||||
|
||||
Immer noch munter? Dann solltest Du jetzt das bekannte Interface sehen und nun
|
||||
prahle vor Anderen, dass Du die neueste WeeChat-Version verwendest :)
|
||||
|
||||
Solltest Du nun ein merkwürdiges Verhalten bemerken (es können diverse Probleme
|
||||
oder Abstürze auftreten oder einfach Dein Bier überkochen) zögere nicht, komme
|
||||
in den Channel _#weechat_ auf _chat.freenode.net_ (A.d.Ü.: englischsprachig) und
|
||||
berichte uns darüber.
|
||||
|
||||
Auch falls alles korrekt funktionieren sollte gib uns trotzdem Bescheid, wir
|
||||
brauchen Deine Rückmeldung!
|
||||
+3272
-2265
File diff suppressed because it is too large
Load Diff
+5
-3
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env python3
|
||||
#
|
||||
# Copyright (C) 2008-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2008-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
@@ -81,6 +81,7 @@ LOCALE_LIST = (
|
||||
'it_IT',
|
||||
'ja_JP',
|
||||
'pl_PL',
|
||||
'sr_RS',
|
||||
)
|
||||
|
||||
# all commands/options/.. of following plugins will produce a file
|
||||
@@ -114,6 +115,7 @@ PLUGIN_LIST = {
|
||||
'spell': 'o',
|
||||
'trigger': 'o',
|
||||
'xfer': 'co',
|
||||
'typing': 'o',
|
||||
}
|
||||
|
||||
# options to ignore
|
||||
@@ -674,7 +676,7 @@ class AutogenDoc():
|
||||
for info in sorted(infos[plugin]):
|
||||
_inf = infos[plugin][info]
|
||||
desc = translate(_inf['description'])
|
||||
args_desc = translate(_inf['args_description'] or '-')
|
||||
args_desc = translate(_inf['args_description']) or '-'
|
||||
self.write('| %s | %s | %s | %s\n',
|
||||
escape(plugin), escape(info), escape(desc),
|
||||
escape(args_desc))
|
||||
@@ -694,7 +696,7 @@ class AutogenDoc():
|
||||
for info in sorted(infos_hashtable[plugin]):
|
||||
_inh = infos_hashtable[plugin][info]
|
||||
desc = translate(_inh['description'])
|
||||
args_desc = translate(_inh['args_description'])
|
||||
args_desc = translate(_inh['args_description']) or '-'
|
||||
output_desc = translate(_inh['output_description']) or '-'
|
||||
self.write('| %s | %s | %s | %s | %s\n',
|
||||
escape(plugin), escape(info), escape(desc),
|
||||
|
||||
+223
-6
@@ -1,38 +1,255 @@
|
||||
<!--
|
||||
Custom styles for Asciidoctor
|
||||
Copyright (C) 2016-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
Copyright (C) 2016-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
-->
|
||||
<style>
|
||||
#header,#content,#footnotes,#footer {
|
||||
|
||||
/* themes/colors */
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
/* dark theme */
|
||||
:root {
|
||||
color-scheme: dark;
|
||||
--body-bg-color: #1a1a1a;
|
||||
--body-color: #ddd;
|
||||
--body-font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
|
||||
--link-color: #7abeef;
|
||||
--table-thead-tfoot: #252525;
|
||||
--th-color: #fff;
|
||||
--toc-bg-color: #252525;
|
||||
--color-header1: #ddd;
|
||||
--color-header2: #da8975;
|
||||
--header-details-color: #aaa;
|
||||
--border: 1px solid #444;
|
||||
--code-bg-color: #252525;
|
||||
--pre-color: #ddd;
|
||||
--pre-bg-color: #202020;
|
||||
--pre-code-bg-color: #202020;
|
||||
--keyseq-color: #777;
|
||||
--kbd-bg-color: #252525;
|
||||
--kbd-border: 1px solid #333;
|
||||
--kbd-box-shadow: 0 1px 0 rgba(0, 0, 0, .2), inset 0 0 0 .1em #2c2c2c;
|
||||
--icon-note-color: #4d7cc6;
|
||||
--icon-tip-color: #fff;
|
||||
--icon-warning-color: #f39c12;
|
||||
--icon-caution-color: #bf3400;
|
||||
--icon-important-color: #f44336;
|
||||
--mark-bg-color: #007;
|
||||
}
|
||||
}
|
||||
|
||||
@media (not (prefers-color-scheme: dark)), (prefers-color-scheme: light) {
|
||||
/* light theme */
|
||||
:root {
|
||||
color-scheme: light;
|
||||
--body-bg-color: ##fff;
|
||||
--body-color: #353535;
|
||||
--body-font: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
|
||||
--link-color: #3d6baf;
|
||||
--table-thead-tfoot: #f7f8f7;
|
||||
--th-color: #000;
|
||||
--toc-bg-color: #f8f8f7;
|
||||
--color-header1: #000;
|
||||
--color-header2: #ba3925;
|
||||
--header-details-color: #797979;
|
||||
--border: 1px solid #dddddf;
|
||||
--code-bg-color: #f7f7f8;
|
||||
--keyseq-color: #333c;
|
||||
--pre-color: #353535;
|
||||
--pre-bg-color: #f7f7f8;
|
||||
--pre-code-bg-color: #202020;
|
||||
--kbd-bg-color: #f7f7f7;
|
||||
--kbd-border: 1px solid #ccc;
|
||||
--kbd-box-shadow: 0 1px 0 rgba(0, 0, 0, .2), inset 0 0 0 .1em #fff;
|
||||
--icon-note-color: #19407c;
|
||||
--icon-tip-color: #111;
|
||||
--icon-warning-color: #bf6900;
|
||||
--icon-caution-color: #ff0000;
|
||||
--icon-important-color: #bf0000;
|
||||
--mark-bg-color: #9df;
|
||||
}
|
||||
}
|
||||
|
||||
body {
|
||||
background-color: var(--body-bg-color);
|
||||
color: var(--body-color);
|
||||
font-family: var(--body-font);
|
||||
}
|
||||
|
||||
h1 {
|
||||
color: var(--color-header1) !important;
|
||||
}
|
||||
|
||||
h2, h3, h4, h5, h6 {
|
||||
color: var(--color-header2) !important;
|
||||
}
|
||||
|
||||
h1, h2, h3, #toctitle, .sidebarblock > .content > .title, h4, h5, h6 {
|
||||
font-family: var(--body-font);
|
||||
}
|
||||
|
||||
a:link, a:visited, #header .details span.email a {
|
||||
color: var(--link-color);
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
table thead, table tfoot {
|
||||
background: var(--table-thead-tfoot) !important;
|
||||
}
|
||||
|
||||
table.tableblock, th.tableblock, td.tableblock {
|
||||
border: var(--border);
|
||||
}
|
||||
|
||||
th {
|
||||
color: var(--th-color) !important;
|
||||
}
|
||||
|
||||
td {
|
||||
background-color: var(--body-bg-color);
|
||||
color: var(--body-color) !important;
|
||||
}
|
||||
|
||||
#toc.toc2 {
|
||||
background-color: var(--toc-bg-color);
|
||||
border-right: none;
|
||||
}
|
||||
|
||||
#toc.toc2 > ul {
|
||||
font-size: .9em;
|
||||
}
|
||||
|
||||
@media screen and (max-width:767px) {
|
||||
#toc.toc2 {
|
||||
background-color: var(--body-bg-color);
|
||||
}
|
||||
}
|
||||
|
||||
p, .paragraph.lead > p, #preamble > .sectionbody > [class="paragraph"]:first-of-type p, #toctitle, .title {
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
#header .details {
|
||||
border-bottom: var(--border);
|
||||
color: var(--header-details-color);
|
||||
}
|
||||
|
||||
code, .prettyprint {
|
||||
background-color: var(--code-bg-color) !important;
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
pre {
|
||||
color: var(--pre-color) !important;
|
||||
}
|
||||
|
||||
pre > code {
|
||||
background-color: var(--pre-code-bg-color) !important;
|
||||
}
|
||||
|
||||
.keyseq {
|
||||
color: var(--keyseq-color);
|
||||
}
|
||||
|
||||
kbd {
|
||||
background-color: var(--kbd-bg-color) !important;
|
||||
border: var(--kbd-border) !important;
|
||||
box-shadow: var(--kbd-box-shadow);
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
.literalblock pre, .listingblock > .content > pre:not(.highlight), .listingblock > .content > pre[class="highlight"], .listingblock > .content > pre[class^="highlight "] {
|
||||
background-color: var(--pre-bg-color);
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
.sect1 + .sect1 {
|
||||
border-top: var(--border);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-note::before {
|
||||
color: var(--icon-note-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-tip::before {
|
||||
color: var(--icon-tip-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-warning::before {
|
||||
color: var(--icon-warning-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-caution::before {
|
||||
color: var(--icon-caution-color);
|
||||
}
|
||||
|
||||
.admonitionblock td.icon .icon-important::before {
|
||||
color: var(--icon-important-color);
|
||||
}
|
||||
|
||||
.admonitionblock > table td.content {
|
||||
border-left: var(--border);
|
||||
}
|
||||
|
||||
mark {
|
||||
background-color: var(--mark-bg-color);
|
||||
color: var(--body-color);
|
||||
}
|
||||
|
||||
/* syntax highlighting tuning */
|
||||
|
||||
pre.pygments .tok-cp {
|
||||
color: #44cfaf;
|
||||
}
|
||||
|
||||
pre.pygments .tok-nc, pre.pygments .tok-nf {
|
||||
color: #649fef;
|
||||
}
|
||||
|
||||
pre.pygments .tok-gu, pre.pygments .tok-nc, pre.pygments .tok-nn {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
/* asciidoctor styles tuning */
|
||||
|
||||
#header, #content, #footnotes, #footer {
|
||||
max-width: none;
|
||||
padding-left: 3em;
|
||||
padding-right: 3em;
|
||||
}
|
||||
|
||||
#header #revnumber {
|
||||
text-transform: none;
|
||||
}
|
||||
h1,h2,h3,h4,h5 {
|
||||
|
||||
h1, h2, h3, h4, h5 {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.literalblock pre {
|
||||
font-family: monospace, 'Courier New', Courier;
|
||||
line-height: normal;
|
||||
font-family: "DejaVu Sans Mono", "Liberation Mono", "Lucida Console", monospace, 'Courier New', Courier;
|
||||
line-height: inherit;
|
||||
}
|
||||
|
||||
kbd {
|
||||
font-size: .9em;
|
||||
}
|
||||
|
||||
.keyseq {
|
||||
margin-left: .2em;
|
||||
margin-right: .2em;
|
||||
}
|
||||
|
||||
.tableblock kbd {
|
||||
margin-top: .2em;
|
||||
margin-bottom: .2em;
|
||||
}
|
||||
|
||||
.hex {
|
||||
padding: 0 .2em;
|
||||
border: 1px solid #88b;
|
||||
border: var(--border);
|
||||
margin: 0 .2em;
|
||||
font-family: monospace;
|
||||
font-size: 1.1em;
|
||||
}
|
||||
</style>
|
||||
|
||||
+1
-14
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
#
|
||||
@@ -122,19 +122,6 @@ if(ENABLE_DOC)
|
||||
add_custom_target(doc-quickstart-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# tester's guide
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html
|
||||
COMMAND ${ASCIIDOCTOR_EXECUTABLE} ARGS ${ASCIIDOCTOR_ARGS} -o weechat_tester.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.en.adoc
|
||||
DEPENDS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../docinfo.html
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.en.adoc
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Building weechat_tester.en.html"
|
||||
)
|
||||
add_custom_target(doc-tester-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html)
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html DESTINATION ${DATAROOTDIR}/doc/${PROJECT_NAME})
|
||||
|
||||
# relay protocol
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_relay_protocol.en.html
|
||||
|
||||
+1
-7
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2003-2021 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2003-2022 Sébastien Helleu <flashcode@flashtux.org>
|
||||
# Copyright (C) 2006 Julien Louis <ptitlouis@sysif.net>
|
||||
#
|
||||
# This file is part of WeeChat, the extensible chat client.
|
||||
@@ -29,7 +29,6 @@ EXTRA_DIST = CMakeLists.txt \
|
||||
weechat_scripting.en.adoc \
|
||||
weechat_faq.en.adoc \
|
||||
weechat_quickstart.en.adoc \
|
||||
weechat_tester.en.adoc \
|
||||
weechat_relay_protocol.en.adoc \
|
||||
weechat_dev.en.adoc \
|
||||
includes/autogen_api_completions.en.adoc \
|
||||
@@ -58,7 +57,6 @@ if DOC
|
||||
weechat_scripting.en.html \
|
||||
weechat_faq.en.html \
|
||||
weechat_quickstart.en.html \
|
||||
weechat_tester.en.html \
|
||||
weechat_relay_protocol.en.html \
|
||||
weechat_dev.en.html
|
||||
doc_install = install-doc
|
||||
@@ -92,10 +90,6 @@ weechat_faq.en.html: weechat_faq.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
weechat_quickstart.en.html: weechat_quickstart.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_quickstart.en.html $(abs_top_srcdir)/doc/en/weechat_quickstart.en.adoc
|
||||
|
||||
# tester's guide
|
||||
weechat_tester.en.html: weechat_tester.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_tester.en.html $(abs_top_srcdir)/doc/en/weechat_tester.en.adoc
|
||||
|
||||
# relay protocol
|
||||
weechat_relay_protocol.en.html: weechat_relay_protocol.en.adoc $(abs_top_srcdir)/doc/docinfo.html
|
||||
$(ASCIIDOCTOR) $(ASCIIDOCTOR_ARGS) -a revnumber="$(VERSION)" -o weechat_relay_protocol.en.html $(abs_top_srcdir)/doc/en/weechat_relay_protocol.en.adoc
|
||||
|
||||
@@ -26,6 +26,8 @@
|
||||
|
||||
| irc | irc_channels | channels on all IRC servers
|
||||
|
||||
| irc | irc_channels_autojoin | channels automatically joined on the current server (option "autojoin")
|
||||
|
||||
| irc | irc_ignores_numbers | numbers for defined ignores
|
||||
|
||||
| irc | irc_modelist_masks | modelist masks of current IRC channel; required argument: modelist mode
|
||||
@@ -92,6 +94,8 @@
|
||||
|
||||
| tcl | tcl_script | list of scripts
|
||||
|
||||
| trigger | trigger_add_arguments | arguments for command that adds a trigger: trigger name, hooks, hook arguments, hook conditions, hook regex, hook command, hook return code, post actions
|
||||
|
||||
| trigger | trigger_hook_arguments | default arguments for a hook
|
||||
|
||||
| trigger | trigger_hook_command | default command for a hook
|
||||
@@ -146,6 +150,14 @@
|
||||
|
||||
| weechat | cursor_areas | areas ("chat" or bar name) for free cursor movement
|
||||
|
||||
| weechat | custom_bar_item_add_arguments | arguments for command that adds a custom bar item: item name, conditions, content
|
||||
|
||||
| weechat | custom_bar_item_conditions | conditions for custom bar item
|
||||
|
||||
| weechat | custom_bar_item_contents | contents for custom bar item
|
||||
|
||||
| weechat | custom_bar_items_names | names of custom bar items
|
||||
|
||||
| weechat | env_value | value of an environment variable
|
||||
|
||||
| weechat | env_vars | environment variables
|
||||
|
||||
@@ -79,6 +79,8 @@ _last_nick_speaking_time_ (pointer, hdata: "irc_channel_speaking") +
|
||||
_modelists_ (pointer, hdata: "irc_modelist") +
|
||||
_last_modelist_ (pointer, hdata: "irc_modelist") +
|
||||
_join_smart_filtered_ (hashtable) +
|
||||
_typing_state_ (integer) +
|
||||
_typing_status_sent_ (time) +
|
||||
_buffer_ (pointer, hdata: "buffer") +
|
||||
_buffer_as_string_ (string) +
|
||||
_prev_channel_ (pointer, hdata: "irc_channel") +
|
||||
@@ -233,6 +235,12 @@ _hook_connect_ (pointer, hdata: "hook") +
|
||||
_hook_fd_ (pointer, hdata: "hook") +
|
||||
_hook_timer_connection_ (pointer, hdata: "hook") +
|
||||
_hook_timer_sasl_ (pointer, hdata: "hook") +
|
||||
_sasl_scram_client_first_ (string) +
|
||||
_sasl_scram_salted_pwd_ (other) +
|
||||
_sasl_scram_salted_pwd_size_ (integer) +
|
||||
_sasl_scram_auth_message_ (string) +
|
||||
_sasl_temp_username_ (string) +
|
||||
_sasl_temp_password_ (string) +
|
||||
_is_connected_ (integer) +
|
||||
_ssl_connected_ (integer) +
|
||||
_disconnected_ (integer) +
|
||||
@@ -263,6 +271,10 @@ _chantypes_ (string) +
|
||||
_chanmodes_ (string) +
|
||||
_monitor_ (integer) +
|
||||
_monitor_time_ (time) +
|
||||
_clienttagdeny_ (string) +
|
||||
_clienttagdeny_count_ (integer) +
|
||||
_clienttagdeny_array_ (string, array_size: "clienttagdeny_count") +
|
||||
_typing_allowed_ (integer) +
|
||||
_reconnect_delay_ (integer) +
|
||||
_reconnect_start_ (time) +
|
||||
_command_time_ (time) +
|
||||
|
||||
@@ -20,6 +20,8 @@
|
||||
|
||||
| irc | irc_is_channel | 1 if string is a valid IRC channel name for server | server,channel (server is optional)
|
||||
|
||||
| irc | irc_is_message_ignored | 1 if the nick is ignored (message is not displayed) | server,message (message is the raw IRC message)
|
||||
|
||||
| irc | irc_is_nick | 1 if string is a valid IRC nick name | server,nickname (server is optional)
|
||||
|
||||
| irc | irc_nick | get current nick on a server | server name
|
||||
@@ -58,7 +60,7 @@
|
||||
|
||||
| php | php_version | version of the interpreter used | -
|
||||
|
||||
| python | python2_bin | path to python 2.x interpreter | -
|
||||
| python | python2_bin | path to Python 2.x interpreter (*deprecated* since version 2.6, scripts must use Python 3 only) | -
|
||||
|
||||
| python | python_eval | evaluation of source code | source code to execute
|
||||
|
||||
@@ -74,7 +76,7 @@
|
||||
|
||||
| ruby | ruby_version | version of the interpreter used | -
|
||||
|
||||
| spell | spell_dict | comma-separated list of dictionaries used in buffer | buffer pointer ("0x12345678") or buffer full name ("irc.freenode.#weechat")
|
||||
| spell | spell_dict | comma-separated list of dictionaries used in buffer | buffer pointer ("0x12345678") or buffer full name ("irc.libera.#weechat")
|
||||
|
||||
| tcl | tcl_eval | evaluation of source code | source code to execute
|
||||
|
||||
@@ -132,7 +134,15 @@
|
||||
|
||||
| weechat | version_number | WeeChat version (as number) | -
|
||||
|
||||
| weechat | weechat_dir | WeeChat directory | -
|
||||
| weechat | weechat_cache_dir | WeeChat cache directory | -
|
||||
|
||||
| weechat | weechat_config_dir | WeeChat config directory | -
|
||||
|
||||
| weechat | weechat_daemon | 1 if WeeChat is running in daemon mode (headless, in background) | -
|
||||
|
||||
| weechat | weechat_data_dir | WeeChat data directory | -
|
||||
|
||||
| weechat | weechat_dir | WeeChat directory (*deprecated* since version 3.2, replaced by "weechat_config_dir", "weechat_data_dir", "weechat_cache_dir" and "weechat_runtime_dir") | -
|
||||
|
||||
| weechat | weechat_headless | 1 if WeeChat is running headless | -
|
||||
|
||||
@@ -140,6 +150,8 @@
|
||||
|
||||
| weechat | weechat_localedir | WeeChat "locale" directory | -
|
||||
|
||||
| weechat | weechat_runtime_dir | WeeChat runtime directory | -
|
||||
|
||||
| weechat | weechat_sharedir | WeeChat "share" directory | -
|
||||
|
||||
| weechat | weechat_site | WeeChat site | -
|
||||
|
||||
@@ -8,11 +8,13 @@
|
||||
|===
|
||||
| Plugin | Name | Description | Hashtable (input) | Hashtable (output)
|
||||
|
||||
| irc | irc_message_parse | parse an IRC message | "message": IRC message, "server": server name (optional) | "tags": tags, "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
|
||||
| irc | irc_message_parse | parse an IRC message | "message": IRC message, "server": server name (optional) | "tags": tags, "tag_xxx": unescaped value of tag "xxx" (one key per tag), "message_without_tags": message without the tags, "nick": nick, "user": user, "host": host, "command": command, "channel": channel, "arguments": arguments (includes channel), "text": text (for example user message), "param1" ... "paramN": parsed command parameters, "num_params": number of parsed command parameters, "pos_command": index of "command" message ("-1" if "command" was not found), "pos_arguments": index of "arguments" message ("-1" if "arguments" was not found), "pos_channel": index of "channel" message ("-1" if "channel" was not found), "pos_text": index of "text" message ("-1" if "text" was not found)
|
||||
|
||||
| irc | irc_message_split | split an IRC message (to fit in 512 bytes by default) | "message": IRC message, "server": server name (optional) | "msg1" ... "msgN": messages to send (without final "\r\n"), "args1" ... "argsN": arguments of messages, "count": number of messages
|
||||
|
||||
| weechat | focus_info | get focus info | "x": x coordinate (string with integer >= 0), "y": y coordinate (string with integer >= 0) | see function "hook_focus" in Plugin API reference
|
||||
|
||||
| weechat | secured_data | secured data | - | secured data: names and values (be careful: the values are sensitive data: do NOT print/log them anywhere)
|
||||
|
||||
|===
|
||||
// end::infos_hashtable[]
|
||||
|
||||
@@ -4,18 +4,26 @@
|
||||
//
|
||||
|
||||
// tag::plugins_priority[]
|
||||
. charset (15000)
|
||||
. logger (14000)
|
||||
. exec (13000)
|
||||
. trigger (12000)
|
||||
. spell (11000)
|
||||
. alias (10000)
|
||||
. buflist (9000)
|
||||
. fifo (8000)
|
||||
. charset (16000)
|
||||
. logger (15000)
|
||||
. exec (14000)
|
||||
. trigger (13000)
|
||||
. spell (12000)
|
||||
. alias (11000)
|
||||
. buflist (10000)
|
||||
. fifo (9000)
|
||||
. typing (8000)
|
||||
. xfer (7000)
|
||||
. irc (6000)
|
||||
. relay (5000)
|
||||
. guile, javascript, lua, perl, php, python, ruby, tcl (4000)
|
||||
. guile (4007)
|
||||
. javascript (4006)
|
||||
. lua (4005)
|
||||
. perl (4004)
|
||||
. php (4003)
|
||||
. python (4002)
|
||||
. ruby (4001)
|
||||
. tcl (4000)
|
||||
. script (3000)
|
||||
. fset (2000)
|
||||
// end::plugins_priority[]
|
||||
|
||||
@@ -17,10 +17,11 @@ target: server name
|
||||
* `+allchan+`: execute a command on all channels of all connected servers
|
||||
|
||||
----
|
||||
/allchan [-current] [-exclude=<channel>[,<channel>...]] <command>
|
||||
[-current] -include=<channel>[,<channel>...] <command>
|
||||
/allchan [-current] [-parted] [-exclude=<channel>[,<channel>...]] <command>
|
||||
[-current] [-parted] -include=<channel>[,<channel>...] <command>
|
||||
|
||||
-current: execute command for channels of current server only
|
||||
-parted: execute on parted channels only
|
||||
-exclude: exclude some channels (wildcard "*" is allowed)
|
||||
-include: include only some channels (wildcard "*" is allowed)
|
||||
command: command to execute (or text to send to buffer if command does not start with '/')
|
||||
@@ -41,6 +42,8 @@ Examples:
|
||||
/allchan -exclude=#weechat,#linux* hello
|
||||
say 'hello' on all channels beginning with #linux:
|
||||
/allchan -include=#linux* hello
|
||||
close all buffers with parted channels:
|
||||
/allchan -parted /close
|
||||
----
|
||||
|
||||
[[command_irc_allpv]]
|
||||
@@ -100,6 +103,56 @@ Examples:
|
||||
/allserv /whois $nick
|
||||
----
|
||||
|
||||
[[command_irc_auth]]
|
||||
* `+auth+`: authenticate with SASL
|
||||
|
||||
----
|
||||
/auth [<username> <password>]
|
||||
|
||||
username: SASL username (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
|
||||
password: SASL password or path to file with private key (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
|
||||
|
||||
If username and password are not provided, the values from server options "sasl_username" and "sasl_password" (or "sasl_key") are used.
|
||||
|
||||
Examples:
|
||||
authenticate with username/password defined in the server:
|
||||
/auth
|
||||
authenticate as a different user:
|
||||
/auth user2 password2
|
||||
authenticate as a different user with mechanism ecdsa-nist256p-challenge:
|
||||
/auth user2 ${weechat_config_dir}/ecdsa2.pem
|
||||
----
|
||||
|
||||
[[command_irc_autojoin]]
|
||||
* `+autojoin+`: configure the "autojoin" server option
|
||||
|
||||
----
|
||||
/autojoin add [<channel1> [<channel2>...]]
|
||||
addraw <channel1>[,<channel2>...] [<key1>[,<key2>...]]
|
||||
del [<channel1> [<channel2>...]]
|
||||
apply
|
||||
sort
|
||||
|
||||
add: add current channel or a list of channels (with optional keys) to the autojoin option; if you are on the channel and the key is not provided, the key is read in the channel
|
||||
addraw: use the IRC raw format (same as /join command): all channels separated by commas, optional keys separated by commas
|
||||
del: delete current channel or a list of channels from the autojoin option
|
||||
channel: channel name
|
||||
key: key for the channel
|
||||
apply: set currently joined channels in the autojoin option
|
||||
sort: sort alphabetically channels in the autojoin option
|
||||
|
||||
Examples:
|
||||
/autojoin add
|
||||
/autojoin add #test
|
||||
/autojoin add #chan1 #chan2
|
||||
/allchan /autojoin add
|
||||
/autojoin addraw #chan1,#chan2,#chan3 key1,key2
|
||||
/autojoin del
|
||||
/autojoin del #chan1
|
||||
/autojoin apply
|
||||
/autojoin sort
|
||||
----
|
||||
|
||||
[[command_irc_ban]]
|
||||
* `+ban+`: ban nicks or hosts
|
||||
|
||||
@@ -129,7 +182,7 @@ Without argument, this command displays the ban list for current channel.
|
||||
|
||||
Without argument, "ls" and "list" are sent.
|
||||
|
||||
Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, multi-prefix, server-time, userhost-in-names.
|
||||
Capabilities supported by WeeChat are: account-notify, away-notify, cap-notify, chghost, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.
|
||||
|
||||
The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities).
|
||||
|
||||
@@ -161,7 +214,7 @@ Examples:
|
||||
To disconnect from a server or stop any connection attempt, use command /disconnect.
|
||||
|
||||
Examples:
|
||||
/connect freenode
|
||||
/connect libera
|
||||
/connect irc.oftc.net/6667
|
||||
/connect irc6.oftc.net/6667 -ipv6
|
||||
/connect irc6.oftc.net/6697 -ipv6 -ssl
|
||||
@@ -301,10 +354,10 @@ Note: the regular expression can start with "(?-i)" to become case sensitive.
|
||||
Examples:
|
||||
ignore nick "toto" everywhere:
|
||||
/ignore add toto
|
||||
ignore host "toto@domain.com" on freenode server:
|
||||
/ignore add toto@domain.com freenode
|
||||
ignore host "toto*@*.domain.com" on freenode/#weechat:
|
||||
/ignore add toto*@*.domain.com freenode #weechat
|
||||
ignore host "toto@domain.com" on libera server:
|
||||
/ignore add toto@domain.com libera
|
||||
ignore host "toto*@*.domain.com" on libera/#weechat:
|
||||
/ignore add toto*@*.domain.com libera #weechat
|
||||
----
|
||||
|
||||
[[command_irc_info]]
|
||||
@@ -349,7 +402,7 @@ nick: nick
|
||||
Examples:
|
||||
/join #weechat
|
||||
/join #protectedchan,#weechat key
|
||||
/join -server freenode #weechat
|
||||
/join -server libera #weechat
|
||||
/join -noswitch #weechat
|
||||
----
|
||||
|
||||
@@ -361,7 +414,7 @@ Examples:
|
||||
|
||||
channel: channel name
|
||||
nick: nick
|
||||
reason: reason (special variables $nick, $channel and $server are replaced by their value)
|
||||
reason: reason (evaluated, see /help eval; special variables ${nick} (self nick), ${target} (target nick), ${channel} and ${server} are replaced by their values)
|
||||
----
|
||||
|
||||
[[command_irc_kickban]]
|
||||
@@ -372,7 +425,7 @@ channel: channel name
|
||||
|
||||
channel: channel name
|
||||
nick: nick
|
||||
reason: reason (special variables $nick, $channel and $server are replaced by their value)
|
||||
reason: reason (evaluated, see /help eval; special variables ${nick} (self nick), ${target} (target nick), ${channel} and ${server} are replaced by their values)
|
||||
|
||||
It is possible to kick/ban with a mask, nick will be extracted from mask and replaced by "*".
|
||||
|
||||
@@ -402,7 +455,7 @@ server_mask: list of servers must match this mask
|
||||
----
|
||||
|
||||
[[command_irc_list]]
|
||||
* `+list+`: list channels and their topic
|
||||
* `+list+`: list channels and their topics
|
||||
|
||||
----
|
||||
/list [-server <server>] [-re <regex>] [<channel>[,<channel>...]] [<target>]
|
||||
@@ -552,10 +605,10 @@ Without argument, this command displays notifications for current server (or all
|
||||
Examples:
|
||||
notify when "toto" joins/quits current server:
|
||||
/notify add toto
|
||||
notify when "toto" joins/quits freenode server:
|
||||
/notify add toto freenode
|
||||
notify when "toto" is away or back on freenode server:
|
||||
/notify add toto freenode -away
|
||||
notify when "toto" joins/quits libera server:
|
||||
/notify add toto libera
|
||||
notify when "toto" is away or back on libera server:
|
||||
/notify add toto libera -away
|
||||
----
|
||||
|
||||
[[command_irc_op]]
|
||||
@@ -673,7 +726,7 @@ option: extra option, for some servers
|
||||
|
||||
channel: channel name
|
||||
nick: nick
|
||||
reason: reason (special variables $nick, $channel and $server are replaced by their value)
|
||||
reason: reason (special variables $nick, $channel and $server are replaced by their values)
|
||||
----
|
||||
|
||||
[[command_irc_restart]]
|
||||
@@ -775,16 +828,16 @@ nooption: set boolean option to 'off' (for example: -nossl)
|
||||
|
||||
Examples:
|
||||
/server listfull
|
||||
/server add freenode chat.freenode.net
|
||||
/server add freenode chat.freenode.net/6697 -ssl -autoconnect
|
||||
/server add libera irc.libera.chat
|
||||
/server add libera irc.libera.chat/6697 -ssl -autoconnect
|
||||
/server add chatspike irc.chatspike.net/6667,irc.duckspike.net/6667
|
||||
/server copy freenode freenode-test
|
||||
/server rename freenode-test freenode2
|
||||
/server reorder freenode2 freenode
|
||||
/server del freenode
|
||||
/server copy libera libera-test
|
||||
/server rename libera-test libera2
|
||||
/server reorder libera2 libera
|
||||
/server del libera
|
||||
/server deloutq
|
||||
/server raw
|
||||
/server raw s:freenode
|
||||
/server raw s:libera
|
||||
/server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo
|
||||
----
|
||||
|
||||
@@ -808,6 +861,15 @@ mask: list only services matching this mask
|
||||
type: list only services of this type
|
||||
----
|
||||
|
||||
[[command_irc_setname]]
|
||||
* `+setname+`: set real name
|
||||
|
||||
----
|
||||
/setname <realname>
|
||||
|
||||
realname: new real name
|
||||
----
|
||||
|
||||
[[command_irc_squery]]
|
||||
* `+squery+`: deliver a message to a service
|
||||
|
||||
@@ -1270,8 +1332,8 @@ Examples:
|
||||
----
|
||||
/debug list
|
||||
set <plugin> <level>
|
||||
dump [<plugin>]
|
||||
buffer|color|infolists|memory|tags|term|windows
|
||||
dump|hooks [<plugin>]
|
||||
buffer|certs|color|dirs|infolists|libs|memory|tags|term|windows
|
||||
mouse|cursor [verbose]
|
||||
hdata [free]
|
||||
time <command>
|
||||
@@ -1281,12 +1343,13 @@ Examples:
|
||||
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)
|
||||
hooks: display infos about hooks (with a plugin: display detailed info about hooks created by the plugin)
|
||||
buffer: dump buffer content with hexadecimal values in log file
|
||||
certs: display number of loaded trusted certificate authorities
|
||||
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
|
||||
@@ -1341,57 +1404,81 @@ To force a string comparison, you can add double quotes around each expression,
|
||||
"50" > "100" ==> 1
|
||||
|
||||
Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
|
||||
1. an evaluated sub-string (format: "eval:xxx")
|
||||
2. an evaluated condition (format: "eval_cond:xxx")
|
||||
3. a string with escaped chars (format: "esc:xxx" or "\xxx")
|
||||
4. a string with chars to hide (format: "hide:char,string")
|
||||
5. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
|
||||
1. the string itself without evaluation (format: "raw:xxx")
|
||||
2. a user-defined variable (format: "name")
|
||||
3. an evaluated sub-string (format: "eval:xxx")
|
||||
4. an evaluated condition (format: "eval_cond:xxx")
|
||||
5. a string with escaped chars (format: "esc:xxx" or "\xxx")
|
||||
6. a string converted to lower case (format: "lower:xxx")
|
||||
7. a string converted to upper case (format: "upper:xxx")
|
||||
8. a string with chars to hide (format: "hide:char,string")
|
||||
9. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
|
||||
or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
|
||||
6. a reversed string (format: "rev:xxx" or "revscr:xxx")
|
||||
7. a repeated string (format: "repeat:count,string")
|
||||
8. length of a string (format: "length:xxx" or "lengthscr:xxx")
|
||||
9. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
||||
10. a modifier (format: "modifier:name,data,string")
|
||||
11. an info (format: "info:name,arguments", arguments are optional)
|
||||
12. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
|
||||
13. current date/time (format: "date" or "date:format")
|
||||
14. an environment variable (format: "env:XXX")
|
||||
15. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
||||
16. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
|
||||
17. an option (format: "file.section.option")
|
||||
18. a local variable in buffer
|
||||
19. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
|
||||
10. a reversed string (format: "rev:xxx" or "revscr:xxx")
|
||||
11. a repeated string (format: "repeat:count,string")
|
||||
12. length of a string (format: "length:xxx" or "lengthscr:xxx")
|
||||
13. split of a string (format: "split:number,separators,flags,xxx")
|
||||
14. split of shell argmuents (format: "split_shell:number,xxx")
|
||||
15. a color (format: "color:xxx", see "Plugin API reference", function "color")
|
||||
16. a modifier (format: "modifier:name,data,string")
|
||||
17. an info (format: "info:name,arguments", arguments are optional)
|
||||
18. a base 16/32/64 encoded/decoded string (format: "base_encode:base,xxx" or "base_decode:base,xxx")
|
||||
19. current date/time (format: "date" or "date:format")
|
||||
20. an environment variable (format: "env:XXX")
|
||||
21. a ternary operator (format: "if:condition?value_if_true:value_if_false")
|
||||
22. result of an expression with parentheses and operators + - * / // % ** (format: "calc:xxx")
|
||||
23. a random integer number (format: "random:min,max")
|
||||
24. a translated string (format: "translate:xxx")
|
||||
25. define a user variable (format: "define:name,value")
|
||||
26. an option (format: "file.section.option")
|
||||
27. a local variable in buffer
|
||||
28. 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:
|
||||
hdata[list].var1.var2...: start with a hdata using a list/pointer/pointer name, 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
|
||||
hdata[pointer].var1.var2...: start with a hdata using a pointer, for example:
|
||||
${buffer[0x1234abcd].full_name}: full name of the buffer with this pointer (can be used in triggers)
|
||||
${buffer[my_pointer].full_name}: full name of the buffer with this pointer name (can be used in triggers)
|
||||
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".
|
||||
|
||||
Examples (simple strings):
|
||||
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
|
||||
/eval -n ${info:version} ==> 0.4.3
|
||||
/eval -n ${env:HOME} ==> /home/user
|
||||
/eval -n ${weechat.look.scroll_amount} ==> 3
|
||||
/eval -n ${sec.data.freenode_password} ==> secret
|
||||
/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>
|
||||
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
||||
/eval -n ${cut:3,+,test} ==> tes+
|
||||
/eval -n ${cut:+3,+,test} ==> te+
|
||||
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${raw:${info:version}} ==> ${info:version}
|
||||
/eval -n ${eval_cond:${window.win_width}>100} ==> 1
|
||||
/eval -n ${info:version} ==> 0.4.3
|
||||
/eval -n ${env:HOME} ==> /home/user
|
||||
/eval -n ${weechat.look.scroll_amount} ==> 3
|
||||
/eval -n ${sec.data.password} ==> secret
|
||||
/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>
|
||||
/eval -n ${lower:TEST} ==> test
|
||||
/eval -n ${upper:test} ==> TEST
|
||||
/eval -n ${hide:-,${relay.network.password}} ==> --------
|
||||
/eval -n ${cut:3,+,test} ==> tes+
|
||||
/eval -n ${cut:+3,+,test} ==> te+
|
||||
/eval -n ${date:%H:%M:%S} ==> 07:46:40
|
||||
/eval -n ${if:${info:term_width}>80?big:small} ==> big
|
||||
/eval -n ${rev:Hello} ==> olleH
|
||||
/eval -n ${repeat:5,-} ==> -----
|
||||
/eval -n ${length:test} ==> 4
|
||||
/eval -n ${split:1,,,abc,def,ghi} ==> abc
|
||||
/eval -n ${split:-1,,,abc,def,ghi} ==> ghi
|
||||
/eval -n ${split:count,,,abc,def,ghi} ==> 3
|
||||
/eval -n ${split:random,,,abc,def,ghi} ==> def
|
||||
/eval -n ${split_shell:1,"arg 1" arg2} ==> arg 1
|
||||
/eval -n ${split_shell:-1,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${split_shell:count,"arg 1" arg2} ==> 2
|
||||
/eval -n ${split_shell:random,"arg 1" arg2} ==> arg2
|
||||
/eval -n ${calc:(5+2)*3} ==> 21
|
||||
/eval -n ${random:0,10} ==> 3
|
||||
/eval -n ${base_encode:64,test} ==> dGVzdA==
|
||||
/eval -n ${base_decode:64,dGVzdA==} ==> test
|
||||
/eval -n ${translate:Plugin} ==> Extension
|
||||
/eval -n ${define:len,${calc:5+3}}${len}x${len} ==> 8x8
|
||||
|
||||
Examples (conditions):
|
||||
/eval -n -c ${window.buffer.number} > 2 ==> 0
|
||||
@@ -1415,7 +1502,7 @@ Examples (conditions):
|
||||
add|addreplace <name> <buffer>[,<buffer>...] <tags> <regex>
|
||||
rename <name> <new_name>
|
||||
recreate <name>
|
||||
del <name>|-all
|
||||
del <name>|-all [<name>...]
|
||||
|
||||
list: list all filters
|
||||
enable: enable filters (filters are enabled by default)
|
||||
@@ -1429,7 +1516,7 @@ addreplace: add or replace an existing 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" or "irc.server.freenode")
|
||||
- this is full name including plugin (example: "irc.libera.#weechat" or "irc.server.libera")
|
||||
- "*" means all buffers
|
||||
- a name starting with '!' is excluded
|
||||
- wildcard "*" is allowed
|
||||
@@ -1464,11 +1551,11 @@ Examples:
|
||||
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 add toto irc.libera.#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
|
||||
/filter add sucks irc.libera.#weechat * weechat sucks
|
||||
filter lines that are strictly equal to "WeeChat sucks" on all buffers:
|
||||
/filter add sucks2 * * (?-i)^WeeChat sucks$
|
||||
----
|
||||
@@ -1544,6 +1631,9 @@ list of actions:
|
||||
jump_previously_visited_buffer: jump to previously visited buffer
|
||||
jump_next_visited_buffer: jump to next visited buffer
|
||||
hotlist_clear: clear hotlist (optional argument: "lowest" to clear only lowest level in hotlist, "highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight)
|
||||
hotlist_remove_buffer: remove current buffer from hotlist
|
||||
hotlist_restore_buffer: restore latest hotlist removed in the current buffer
|
||||
hotlist_restore_all: restore latest hotlist removed in all buffers
|
||||
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
|
||||
@@ -1561,6 +1651,49 @@ list of actions:
|
||||
This command is used by key bindings or plugins.
|
||||
----
|
||||
|
||||
[[command_weechat_item]]
|
||||
* `+item+`: manage custom bar items
|
||||
|
||||
----
|
||||
/item list
|
||||
add|addreplace <name> "<conditions>" "<content>"
|
||||
rename <name> <new_name>
|
||||
refresh <name> [<name>...]
|
||||
recreate <name>
|
||||
del <name>|-all
|
||||
|
||||
list: list all custom bar items
|
||||
add: add a custom bar item
|
||||
addreplace: add or replace an existing custom bar item
|
||||
name: custom bar item name
|
||||
conditions: evaluated conditions to display the bar item (for example to display the bar item only in specific buffers)
|
||||
content: content (evaluated, see /help eval)
|
||||
rename: rename a custom bar item
|
||||
refresh: update content of item in all bars where the item is displayed; any item can be refreshed: default/plugin/custom bar items
|
||||
recreate: set input with the command used to edit the custom bar item
|
||||
del: delete a custom bar item
|
||||
-all: delete all custom bar items
|
||||
|
||||
Examples:
|
||||
add item with terminal size, displayed only in buffers with number = 1:
|
||||
/item add terminfo "${buffer.number} == 1" "term:${info:term_width}x${info:term_height}"
|
||||
add item with buffer info:
|
||||
/item add bufinfo "" "${buffer.number}:${buffer.name}${if:${buffer.zoomed}?(Z)}"
|
||||
add item with date/time using format "Dec 25, 12:34 +0100", refreshed every minute:
|
||||
/item add datetime "" "${date:%b %d, %H:%M %z}"
|
||||
/trigger add datetime_refresh timer "60000;60" "" "" "/item refresh datetime"
|
||||
add item with number of lines in buffer (displayed/total), refreshed each time a new line is displayed or if filtered lines have changed:
|
||||
/item add lines_count "" "${calc:${buffer.lines.lines_count}-${buffer.lines.lines_hidden}}/${buffer.lines.lines_count} lines"
|
||||
/trigger add lines_count_refresh_print print "" "" "" "/item refresh lines_count"
|
||||
/trigger add lines_count_refresh_signal signal "window_switch;buffer_switch;buffer_lines_hidden;filters_*" "" "" "/item refresh lines_count"
|
||||
force refresh of item "lines_count":
|
||||
/item refresh lines_count
|
||||
recreate item "lines_count" with different conditions or content:
|
||||
/item recreate lines_count
|
||||
delete item "lines_count":
|
||||
/item del lines_count
|
||||
----
|
||||
|
||||
[[command_weechat_key]]
|
||||
* `+key+`: bind/unbind keys
|
||||
|
||||
@@ -1639,6 +1772,8 @@ windows: store/apply only windows (buffer displayed by each window)
|
||||
Without argument, this command displays stored layouts.
|
||||
|
||||
The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit".
|
||||
|
||||
Note: the layout only remembers windows split and buffers numbers. It does not open buffers. That means for example you must still auto-join IRC channels to open the buffers, the saved layout only applies once the buffers are opened.
|
||||
----
|
||||
|
||||
[[command_weechat_mouse]]
|
||||
@@ -1670,7 +1805,7 @@ Examples:
|
||||
-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")
|
||||
name: full buffer name (examples: "irc.server.libera", "irc.libera.#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.
|
||||
@@ -1681,28 +1816,33 @@ Examples:
|
||||
message to current IRC channel:
|
||||
/mute -current msg * hi!
|
||||
message to #weechat channel:
|
||||
/mute -buffer irc.freenode.#weechat msg #weechat hi!
|
||||
/mute -buffer irc.libera.#weechat msg #weechat hi!
|
||||
----
|
||||
|
||||
[[command_weechat_plugin]]
|
||||
* `+plugin+`: list/load/unload plugins
|
||||
|
||||
----
|
||||
/plugin list|listfull [<name>]
|
||||
/plugin list [-o|-ol|-i|-il|<name>]
|
||||
listfull [<name>]
|
||||
load <filename> [<arguments>]
|
||||
autoload [<arguments>]
|
||||
reload [<name>|* [<arguments>]]
|
||||
unload [<name>]
|
||||
|
||||
list: list loaded plugins
|
||||
-o: send list of loaded plugins to buffer (string in English)
|
||||
-ol: send list of loaded plugins to buffer (translated string)
|
||||
-i: copy list of loaded plugins in command line (for sending to buffer) (string in English)
|
||||
-il: copy list of loaded plugins in command line (for sending to buffer) (translated string)
|
||||
name: a plugin name
|
||||
listfull: list loaded plugins (verbose)
|
||||
load: load a plugin
|
||||
filename: plugin (file) to load
|
||||
arguments: arguments given to plugin on load
|
||||
autoload: autoload plugins in system or user directory
|
||||
reload: reload a plugin (if no name given, unload all plugins, then autoload plugins)
|
||||
unload: unload a plugin (if no name given, unload all plugins)
|
||||
filename: plugin (file) to load
|
||||
name: a plugin name
|
||||
arguments: arguments given to plugin on load
|
||||
|
||||
Without argument, this command lists loaded plugins.
|
||||
----
|
||||
@@ -1749,7 +1889,7 @@ Examples:
|
||||
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
|
||||
/print -buffer irc.libera.#weechat Message on #weechat
|
||||
display a snowman (U+2603):
|
||||
/print -escape \u2603
|
||||
send alert (BEL):
|
||||
@@ -1871,7 +2011,7 @@ Keys on secure buffer:
|
||||
alt+v toggle values
|
||||
|
||||
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), or to set option sec.crypt.passphrase_file to read the passphrase from a file (see /help sec.crypt.passphrase_file).
|
||||
It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade), or to set option sec.crypt.passphrase_command to read the passphrase from the output of an external command like a password manager (see /help sec.crypt.passphrase_command).
|
||||
|
||||
Secured data with format ${sec.data.xxx} can be used in:
|
||||
- command /eval
|
||||
@@ -1882,14 +2022,16 @@ Secured data with format ${sec.data.xxx} can be used in:
|
||||
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}"
|
||||
use program "pass" to read the passphrase on startup:
|
||||
/set sec.crypt.passphrase_command "/usr/bin/pass show weechat/passphrase"
|
||||
encrypt libera SASL password:
|
||||
/secure set libera mypassword
|
||||
/set irc.server.libera.sasl_password "${sec.data.libera}"
|
||||
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 add ghost /eval /msg -server freenode nickserv ghost mynick ${sec.data.freenode}
|
||||
/alias add ghost /eval /msg -server libera nickserv ghost mynick ${sec.data.libera}
|
||||
----
|
||||
|
||||
[[command_weechat_set]]
|
||||
@@ -1928,6 +2070,32 @@ Examples:
|
||||
/set env ABC ""
|
||||
----
|
||||
|
||||
[[command_weechat_toggle]]
|
||||
* `+toggle+`: toggle value of a config option
|
||||
|
||||
----
|
||||
/toggle <option> [<value> [<value>...]]
|
||||
|
||||
option: name of an option
|
||||
value: possible values for the option (values are split like the shell command arguments: quotes can be used to preserve spaces at the beginning/end of values)
|
||||
|
||||
Behavior:
|
||||
- only an option of type boolean or string can be toggled without a value:
|
||||
- boolean: toggle between on/off according to current value
|
||||
- string: toggle between empty string and default value (works only if empty string is allowed for the option)
|
||||
- with a single value given, toggle between this value and the default value of option
|
||||
- with multiple values given, toggle between these values: the value used is the one following the current value of option; if the current value of option is not in list, the first value in the list is used
|
||||
- the special value "null" can be given, but only as first value in the list and without quotes around.
|
||||
|
||||
Examples:
|
||||
toggle display of time in chat area (without displaying the new value used):
|
||||
/mute /toggle weechat.look.buffer_time_format
|
||||
switch format of time in chat area (with seconds, without seconds, disabled):
|
||||
/toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
|
||||
toggle autojoin of #weechat channel on libera server:
|
||||
/toggle irc.server.libera.autojoin null #weechat
|
||||
----
|
||||
|
||||
[[command_weechat_unset]]
|
||||
* `+unset+`: unset/reset config options
|
||||
|
||||
@@ -1976,7 +2144,7 @@ With option "-quit", the process is slightly different:
|
||||
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".
|
||||
It is possible to restore WeeChat session on another machine if you copy the content of WeeChat home directories (see /debug dirs).
|
||||
----
|
||||
|
||||
[[command_weechat_uptime]]
|
||||
@@ -2161,6 +2329,7 @@ The following variables can be used in these options:
|
||||
- ${hotlist}: the raw hotlist
|
||||
- ${hotlist_priority}: "none", "low", "message", "private" or "highlight"
|
||||
- ${format_lag}: the lag for an IRC server buffer, empty if there's no lag (evaluation of option buflist.format.lag)
|
||||
- ${format_tls_version}: indicator of TLS version for a server buffer, empty for channels (evaluation of option buflist.format.tls_version)
|
||||
----
|
||||
// end::buflist_commands[]
|
||||
|
||||
@@ -2267,14 +2436,14 @@ disable: disable FIFO pipe
|
||||
toggle: toggle FIFO pipe
|
||||
|
||||
FIFO pipe is used as remote control of WeeChat: you can send commands or text to the FIFO pipe from your shell.
|
||||
By default the FIFO pipe is in ~/.weechat/weechat_fifo
|
||||
By default the FIFO pipe is called weechat_fifo_xxx (where xxx is the WeeChat process id) and located in the WeeChat runtime directory (see /debug dirs).
|
||||
|
||||
The expected format is one of:
|
||||
plugin.buffer *text or command here
|
||||
*text or command here
|
||||
|
||||
For example to change your freenode nick:
|
||||
echo 'irc.server.freenode */nick newnick' >~/.weechat/weechat_fifo
|
||||
For example to change your libera nick:
|
||||
echo 'irc.server.libera */nick newnick' >/run/user/1000/weechat/weechat_fifo_12345
|
||||
|
||||
Please read the user's guide for more info and examples.
|
||||
|
||||
@@ -2711,7 +2880,7 @@ Without argument, this command lists all loaded scripts.
|
||||
stop: close the server socket (clients remain connected)
|
||||
name: relay name (see format below)
|
||||
port: port used for relay
|
||||
path: path used for relay (for UNIX domain socket only); "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default), content is evaluated (see /help eval)
|
||||
path: path used for relay (for UNIX domain socket only); path is evaluated (see function string_eval_path_home in plugin API reference)
|
||||
raw: open buffer with raw Relay data
|
||||
sslcertkey: set SSL certificate/key using path in option relay.network.ssl_cert_key
|
||||
|
||||
@@ -2725,15 +2894,15 @@ protocol.name: protocol and name to relay:
|
||||
- protocol "weechat" (name is not used)
|
||||
|
||||
The "irc" protocol allows any IRC client (including WeeChat itself) to connect on the port.
|
||||
The "weechat" protocol allows a remote interface to connect on the port, see the list here: https://weechat.org/about/interfaces
|
||||
The "weechat" protocol allows a remote interface to connect on the port, see the list here: https://weechat.org/about/interfaces/
|
||||
|
||||
Without argument, this command opens buffer with list of relay clients.
|
||||
|
||||
Examples:
|
||||
irc proxy, for server "freenode":
|
||||
/relay add irc.freenode 8000
|
||||
irc proxy, for server "freenode", with SSL:
|
||||
/relay add ssl.irc.freenode 8001
|
||||
irc proxy, for server "libera":
|
||||
/relay add irc.libera 8000
|
||||
irc proxy, for server "libera", with SSL:
|
||||
/relay add ssl.irc.libera 8001
|
||||
irc proxy, for all servers (client will choose), with SSL:
|
||||
/relay add ssl.irc 8002
|
||||
weechat protocol:
|
||||
@@ -2747,7 +2916,7 @@ Examples:
|
||||
weechat protocol with SSL, using IPv4 + IPv6:
|
||||
/relay add ipv4.ipv6.ssl.weechat 9001
|
||||
weechat protocol over UNIX domain socket:
|
||||
/relay add unix.weechat %h/relay_socket
|
||||
/relay add unix.weechat ${weechat_runtime_dir}/relay_socket
|
||||
----
|
||||
// end::relay_commands[]
|
||||
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
** values: sha224, sha256, sha384, sha512
|
||||
** default value: `+sha256+`
|
||||
|
||||
* [[option_sec.crypt.passphrase_file]] *sec.crypt.passphrase_file*
|
||||
** description: pass:none[path to a file containing the passphrase to encrypt/decrypt secured data; this option is used only when reading file sec.conf; only first line of file is used; this file is used only if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); security note: it is recommended to keep this file readable only by you and store it outside WeeChat home (for example in your home); example: "~/.weechat-passphrase"]
|
||||
* [[option_sec.crypt.passphrase_command]] *sec.crypt.passphrase_command*
|
||||
** description: pass:none[read the passphrase from the output of this system command (only the first line is used and it must not contain any extra character); this option is used only when reading file sec.conf and if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); example with password-store: "/usr/bin/pass show weechat/passphrase"]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
@@ -846,6 +846,12 @@
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_weechat.look.hotlist_update_on_buffer_switch]] *weechat.look.hotlist_update_on_buffer_switch*
|
||||
** description: pass:none[update the hotlist when switching buffers]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_weechat.look.input_cursor_scroll]] *weechat.look.input_cursor_scroll*
|
||||
** description: pass:none[number of chars displayed after end of input line when scrolling to display end of line]
|
||||
** type: integer
|
||||
@@ -1140,6 +1146,12 @@
|
||||
** values: any string
|
||||
** default value: `+"- "+`
|
||||
|
||||
* [[option_weechat.look.read_marker_update_on_buffer_switch]] *weechat.look.read_marker_update_on_buffer_switch*
|
||||
** description: pass:none[update the read marker when switching buffers]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_weechat.look.save_config_on_exit]] *weechat.look.save_config_on_exit*
|
||||
** description: pass:none[save configuration file on exit]
|
||||
** type: boolean
|
||||
@@ -1248,11 +1260,17 @@
|
||||
** values: 1 .. 2147483647
|
||||
** default value: `+60+`
|
||||
|
||||
* [[option_weechat.network.gnutls_ca_file]] *weechat.network.gnutls_ca_file*
|
||||
** description: pass:none[file containing the certificate authorities ("%h" will be replaced by WeeChat home, "~/.weechat" by default)]
|
||||
* [[option_weechat.network.gnutls_ca_system]] *weechat.network.gnutls_ca_system*
|
||||
** description: pass:none[load system's default trusted certificate authorities on startup; this can be turned off to save some memory only if you are not using SSL connections at all]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_weechat.network.gnutls_ca_user]] *weechat.network.gnutls_ca_user*
|
||||
** description: pass:none[extra file(s) with certificate authorities; multiple files must be separated by colons (each path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"/etc/ssl/certs/ca-certificates.crt"+`
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_weechat.network.gnutls_handshake_timeout]] *weechat.network.gnutls_handshake_timeout*
|
||||
** description: pass:none[timeout (in seconds) for gnutls handshake]
|
||||
@@ -1272,12 +1290,6 @@
|
||||
** values: any string
|
||||
** default value: `+"*"+`
|
||||
|
||||
* [[option_weechat.plugin.debug]] *weechat.plugin.debug*
|
||||
** description: pass:none[enable debug messages by default in all plugins (option disabled by default, which is highly recommended)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_weechat.plugin.extension]] *weechat.plugin.extension*
|
||||
** description: pass:none[comma separated list of file name extensions for plugins]
|
||||
** type: string
|
||||
@@ -1285,10 +1297,10 @@
|
||||
** default value: `+".so,.dll"+`
|
||||
|
||||
* [[option_weechat.plugin.path]] *weechat.plugin.path*
|
||||
** description: pass:none[path for searching plugins ("%h" will be replaced by WeeChat home, "~/.weechat" by default)]
|
||||
** description: pass:none[path for searching plugins (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"%h/plugins"+`
|
||||
** default value: `+"${weechat_data_dir}/plugins"+`
|
||||
|
||||
* [[option_weechat.plugin.save_config_on_unload]] *weechat.plugin.save_config_on_unload*
|
||||
** description: pass:none[save configuration files when unloading plugins]
|
||||
@@ -1296,14 +1308,44 @@
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_weechat.signal.sighup]] *weechat.signal.sighup*
|
||||
** description: pass:none[command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"${if:${info:weechat_headless}?/reload:/quit -yes}"+`
|
||||
|
||||
* [[option_weechat.signal.sigquit]] *weechat.signal.sigquit*
|
||||
** description: pass:none[command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"/quit -yes"+`
|
||||
|
||||
* [[option_weechat.signal.sigterm]] *weechat.signal.sigterm*
|
||||
** description: pass:none[command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"/quit -yes"+`
|
||||
|
||||
* [[option_weechat.signal.sigusr1]] *weechat.signal.sigusr1*
|
||||
** description: pass:none[command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_weechat.signal.sigusr2]] *weechat.signal.sigusr2*
|
||||
** description: pass:none[command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_weechat.startup.command_after_plugins]] *weechat.startup.command_after_plugins*
|
||||
** description: pass:none[command executed when WeeChat starts, after loading plugins (note: content is evaluated, see /help eval)]
|
||||
** description: pass:none[command executed when WeeChat starts, after loading plugins; multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_weechat.startup.command_before_plugins]] *weechat.startup.command_before_plugins*
|
||||
** description: pass:none[command executed when WeeChat starts, before loading plugins (note: content is evaluated, see /help eval)]
|
||||
** description: pass:none[command executed when WeeChat starts, before loading plugins; multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
@@ -1409,10 +1451,10 @@
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_logger.file.path]] *logger.file.path*
|
||||
** description: pass:none[path for WeeChat log files; "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default); date specifiers are permitted (see man strftime) (note: content is evaluated, see /help eval)]
|
||||
** description: pass:none[path for WeeChat log files; date specifiers are permitted (see man strftime) (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"%h/logs/"+`
|
||||
** default value: `+"${weechat_data_dir}/logs"+`
|
||||
|
||||
* [[option_logger.file.replacement_char]] *logger.file.replacement_char*
|
||||
** description: pass:none[replacement char for special chars in filename built with mask (like directory delimiter)]
|
||||
@@ -1704,6 +1746,12 @@
|
||||
** values: any string
|
||||
** default value: `+"${color:green}${number}${if:${number_displayed}?.: }"+`
|
||||
|
||||
* [[option_buflist.format.tls_version]] *buflist.format.tls_version*
|
||||
** description: pass:none[format for TLS version on an IRC server buffer (note: content is evaluated, see /help buflist)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+" ${color:default}(${if:${tls_version}==TLS1.3?${color:green}:${if:${tls_version}==TLS1.2?${color:yellow}:${color:red}}}${translate:${tls_version}}${color:default})"+`
|
||||
|
||||
* [[option_buflist.look.add_newline]] *buflist.look.add_newline*
|
||||
** description: pass:none[add newline between the buffers displayed, so each buffer is displayed on a separate line (recommended); if disabled, newlines must be manually added in the formats with "${\n}", and the mouse actions are not possible any more]
|
||||
** type: boolean
|
||||
@@ -1765,10 +1813,16 @@
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_buflist.look.sort]] *buflist.look.sort*
|
||||
** description: pass:none[comma-separated list of fields to sort buffers; each field is a hdata variable of buffer ("var"), a hdata variable of IRC server ("irc_server.var") or a hdata variable of IRC channel ("irc_channel.var"); char "-" can be used before field to reverse order, char "~" can be used to do a case insensitive comparison; example: "-~short_name" for case insensitive and reverse sort on buffer short name (note: content is evaluated, only the pointer to bar_item can be used, for example "bar_item.name")]
|
||||
** description: pass:none[comma-separated list of fields to sort buffers; each field is a hdata variable of buffer ("var"), a hdata variable of IRC server ("irc_server.var") or a hdata variable of IRC channel ("irc_channel.var"); char "-" can be used before field to reverse order, char "~" can be used to do a case insensitive comparison; example: "-~short_name" for case insensitive and reverse sort on buffer short name (note: the content is evaluated, before being split into fields, but at that time "bar_item" is the only variable that can be used, to distinguish between different buflist items, for example "${bar_item.name}")]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"number,-active"+`
|
||||
|
||||
* [[option_buflist.look.use_items]] *buflist.look.use_items*
|
||||
** description: pass:none[number of buflist bar items that can be used; the item names are: "buflist", "buflist2", "buflist3"; be careful, using more than one bar item slows down the display of buffers list]
|
||||
** type: integer
|
||||
** values: 1 .. 3
|
||||
** default value: `+1+`
|
||||
// end::buflist_options[]
|
||||
|
||||
// tag::fifo_options[]
|
||||
@@ -1779,12 +1833,56 @@
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_fifo.file.path]] *fifo.file.path*
|
||||
** description: pass:none[path for FIFO file; "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default); WeeChat PID can be used in path with ${info:pid} (note: content is evaluated, see /help eval)]
|
||||
** description: pass:none[path for FIFO file; WeeChat PID can be used in path with ${info:pid} (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"%h/weechat_fifo"+`
|
||||
** default value: `+"${weechat_runtime_dir}/weechat_fifo_${info:pid}"+`
|
||||
// end::fifo_options[]
|
||||
|
||||
// tag::typing_options[]
|
||||
* [[option_typing.look.delay_purge_paused]] *typing.look.delay_purge_paused*
|
||||
** description: pass:none[number of seconds after paused status has been set: if reached, the typing status is removed]
|
||||
** type: integer
|
||||
** values: 1 .. 2147483647
|
||||
** default value: `+30+`
|
||||
|
||||
* [[option_typing.look.delay_purge_typing]] *typing.look.delay_purge_typing*
|
||||
** description: pass:none[number of seconds after typing status has been set: if reached, the typing status is removed]
|
||||
** type: integer
|
||||
** values: 1 .. 2147483647
|
||||
** default value: `+6+`
|
||||
|
||||
* [[option_typing.look.delay_set_paused]] *typing.look.delay_set_paused*
|
||||
** description: pass:none[number of seconds after typing last char: if reached, the typing status becomes "paused" and no more typing signals are sent]
|
||||
** type: integer
|
||||
** values: 1 .. 2147483647
|
||||
** default value: `+10+`
|
||||
|
||||
* [[option_typing.look.enabled_nicks]] *typing.look.enabled_nicks*
|
||||
** description: pass:none[typing enabled for other nicks (display typing info for nicks typing in the current buffer)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_typing.look.enabled_self]] *typing.look.enabled_self*
|
||||
** description: pass:none[typing enabled for self messages (send typing info to other users)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_typing.look.input_min_chars]] *typing.look.input_min_chars*
|
||||
** description: pass:none[min number of chars in message to trigger send of typing signals]
|
||||
** type: integer
|
||||
** values: 1 .. 2147483647
|
||||
** default value: `+4+`
|
||||
|
||||
* [[option_typing.look.item_max_length]] *typing.look.item_max_length*
|
||||
** description: pass:none[max number of chars displayed in the bar item "typing" (0 = do not truncate content)]
|
||||
** type: integer
|
||||
** values: 0 .. 2147483647
|
||||
** default value: `+0+`
|
||||
// end::typing_options[]
|
||||
|
||||
// tag::xfer_options[]
|
||||
* [[option_xfer.color.status_aborted]] *xfer.color.status_aborted*
|
||||
** description: pass:none[text color for "aborted" status]
|
||||
@@ -1853,7 +1951,7 @@
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_xfer.file.auto_accept_nicks]] *xfer.file.auto_accept_nicks*
|
||||
** description: pass:none[comma-separated list of nicks for which the incoming files and chats are automatically accepted; format is "server.nick" (for a specific server) or "nick" (for all servers); example: "freenode.FlashCode,andrew"]
|
||||
** description: pass:none[comma-separated list of nicks for which the incoming files and chats are automatically accepted; format is "server.nick" (for a specific server) or "nick" (for all servers); example: "libera.FlashCode,andrew"]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
@@ -1883,10 +1981,10 @@
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_xfer.file.download_path]] *xfer.file.download_path*
|
||||
** description: pass:none[path for writing incoming files: "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default) (note: content is evaluated, see /help eval)]
|
||||
** description: pass:none[path for writing incoming files (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"%h/xfer"+`
|
||||
** default value: `+"${weechat_data_dir}/xfer"+`
|
||||
|
||||
* [[option_xfer.file.download_temporary_suffix]] *xfer.file.download_temporary_suffix*
|
||||
** description: pass:none[temporary filename suffix used during the transfer for a file received, it is removed after successful transfer; if empty string, no filename suffix is used during the transfer]
|
||||
@@ -1895,7 +1993,7 @@
|
||||
** default value: `+".part"+`
|
||||
|
||||
* [[option_xfer.file.upload_path]] *xfer.file.upload_path*
|
||||
** description: pass:none[path for reading files when sending (when no path is specified by user): "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default) (note: content is evaluated, see /help eval)]
|
||||
** description: pass:none[path for reading files when sending (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"~"+`
|
||||
@@ -2004,6 +2102,24 @@
|
||||
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
||||
** default value: `+default+`
|
||||
|
||||
* [[option_irc.color.item_tls_version_deprecated]] *irc.color.item_tls_version_deprecated*
|
||||
** description: pass:none[color for deprecated TLS versions in bar item "tls_version"]
|
||||
** type: color
|
||||
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
||||
** default value: `+yellow+`
|
||||
|
||||
* [[option_irc.color.item_tls_version_insecure]] *irc.color.item_tls_version_insecure*
|
||||
** description: pass:none[color for insecure TLS versions in bar item "tls_version"]
|
||||
** type: color
|
||||
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
||||
** default value: `+red+`
|
||||
|
||||
* [[option_irc.color.item_tls_version_ok]] *irc.color.item_tls_version_ok*
|
||||
** description: pass:none[color for higher supported TLS version in bar item "tls_version"]
|
||||
** type: color
|
||||
** values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "*" for bold, "!" for reverse, "/" for italic, "_" for underline
|
||||
** default value: `+green+`
|
||||
|
||||
* [[option_irc.color.message_account]] *irc.color.message_account*
|
||||
** description: pass:none[color for text in account messages]
|
||||
** type: color
|
||||
@@ -2136,6 +2252,12 @@
|
||||
** values: any string
|
||||
** default value: `+"%a, %d %b %Y %T %z"+`
|
||||
|
||||
* [[option_irc.look.display_account_message]] *irc.look.display_account_message*
|
||||
** description: pass:none[display ACCOUNT messages received when capability account-notify is enabled]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_irc.look.display_away]] *irc.look.display_away*
|
||||
** description: pass:none[display message when (un)marking as away (off: do not display/send anything, local: display locally, channel: send action to channels)]
|
||||
** type: integer
|
||||
@@ -2160,6 +2282,12 @@
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_irc.look.display_extended_join]] *irc.look.display_extended_join*
|
||||
** description: pass:none[display extra information in the JOIN messages: account name and real name (capability extended-join must be enabled)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
|
||||
* [[option_irc.look.display_host_join]] *irc.look.display_host_join*
|
||||
** description: pass:none[display host in join messages]
|
||||
** type: boolean
|
||||
@@ -2209,19 +2337,19 @@
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_irc.look.highlight_channel]] *irc.look.highlight_channel*
|
||||
** description: pass:none[comma separated list of words to highlight in channel buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their value), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
|
||||
** description: pass:none[comma separated list of words to highlight in channel buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their values), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"$nick"+`
|
||||
|
||||
* [[option_irc.look.highlight_pv]] *irc.look.highlight_pv*
|
||||
** description: pass:none[comma separated list of words to highlight in private buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their value), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
|
||||
** description: pass:none[comma separated list of words to highlight in private buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their values), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"$nick"+`
|
||||
|
||||
* [[option_irc.look.highlight_server]] *irc.look.highlight_server*
|
||||
** description: pass:none[comma separated list of words to highlight in server buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their value), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
|
||||
** description: pass:none[comma separated list of words to highlight in server buffers (case insensitive, use "(?-i)" at beginning of words to make them case sensitive; special variables $nick, $channel and $server are replaced by their values), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"$nick"+`
|
||||
@@ -2430,6 +2558,18 @@
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_nicks]] *irc.look.typing_status_nicks*
|
||||
** description: pass:none[display nicks typing on the channel in bar item "typing" (option typing.look.enabled_nicks must be enabled and capability "message-tags" must be enabled on the server)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_irc.look.typing_status_self]] *irc.look.typing_status_self*
|
||||
** description: pass:none[send self typing status to channels so that other users see when you are typing a message (option typing.look.enabled_self must be enabled and capability "message-tags" must be enabled on the server)]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_irc.network.autoreconnect_delay_growing]] *irc.network.autoreconnect_delay_growing*
|
||||
** description: pass:none[growing factor for autoreconnect delay to server (1 = always same delay, 2 = delay*2 for each retry, etc.)]
|
||||
** type: integer
|
||||
@@ -2550,6 +2690,12 @@
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_irc.server_default.autojoin_dynamic]] *irc.server_default.autojoin_dynamic*
|
||||
** description: pass:none[set automatically the "autojoin" option according to the channels you manually join and part with commands /join and /part]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_irc.server_default.autoreconnect]] *irc.server_default.autoreconnect*
|
||||
** description: pass:none[automatically reconnect to server when disconnected]
|
||||
** type: boolean
|
||||
@@ -2587,10 +2733,10 @@
|
||||
** default value: `+25+`
|
||||
|
||||
* [[option_irc.server_default.capabilities]] *irc.server_default.capabilities*
|
||||
** description: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat) (example: "away-notify,multi-prefix")]
|
||||
** description: pass:none[comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat); "*" enables all capabilities by default (supported by both server and WeeChat); wildcard "*" is allowed; a capability beginning with "!" is excluded (example: "*,!account-*,!extended-join")]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
** default value: `+"*"+`
|
||||
|
||||
* [[option_irc.server_default.charset_message]] *irc.server_default.charset_message*
|
||||
** description: pass:none[part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)]
|
||||
@@ -2599,7 +2745,7 @@
|
||||
** default value: `+message+`
|
||||
|
||||
* [[option_irc.server_default.command]] *irc.server_default.command*
|
||||
** description: pass:none[command(s) to run after connection to server and before auto-join of channels (many commands can be separated by ";", use "\;" for a semicolon, special variables $nick, $channel and $server are replaced by their value) (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)]
|
||||
** description: pass:none[command(s) to run after connection to server and before auto-join of channels (many commands can be separated by ";", use "\;" for a semicolon, special variables $nick, $channel and $server are replaced by their values) (note: commands are evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
@@ -2635,19 +2781,19 @@
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_irc.server_default.msg_kick]] *irc.server_default.msg_kick*
|
||||
** description: pass:none[default kick message used by commands "/kick" and "/kickban" (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their value)]
|
||||
** description: pass:none[default kick message used by commands "/kick" and "/kickban" (note: content is evaluated, see /help eval; special variables ${nick} (self nick), ${target} (target nick), ${channel} and ${server} are replaced by their values)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_irc.server_default.msg_part]] *irc.server_default.msg_part*
|
||||
** description: pass:none[default part message (leaving channel) (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their value; "%v" is replaced by WeeChat version if there is no ${...} in string)]
|
||||
** description: pass:none[default part message (leaving channel) (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their values; "%v" is replaced by WeeChat version if there is no ${...} in string)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"WeeChat ${info:version}"+`
|
||||
|
||||
* [[option_irc.server_default.msg_quit]] *irc.server_default.msg_quit*
|
||||
** description: pass:none[default quit message (disconnecting from server) (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their value; "%v" is replaced by WeeChat version if there is no ${...} in string)]
|
||||
** description: pass:none[default quit message (disconnecting from server) (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their values; "%v" is replaced by WeeChat version if there is no ${...} in string)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"WeeChat ${info:version}"+`
|
||||
@@ -2692,18 +2838,18 @@
|
||||
** description: pass:none[action to perform if SASL authentication fails: "continue" to ignore the authentication problem, "reconnect" to schedule a reconnection to the server, "disconnect" to disconnect from server (see also option irc.network.sasl_fail_unavailable)]
|
||||
** type: integer
|
||||
** values: continue, reconnect, disconnect
|
||||
** default value: `+continue+`
|
||||
** default value: `+reconnect+`
|
||||
|
||||
* [[option_irc.server_default.sasl_key]] *irc.server_default.sasl_key*
|
||||
** description: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" ("%h" will be replaced by WeeChat home, "~/.weechat" by default)]
|
||||
** description: pass:none[file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_irc.server_default.sasl_mechanism]] *irc.server_default.sasl_mechanism*
|
||||
** description: pass:none[mechanism for SASL authentication: "plain" for plain text password, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL cert, "dh-blowfish" for blowfish crypted password (insecure, not recommended), "dh-aes" for AES crypted password (insecure, not recommended)]
|
||||
** description: pass:none[mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side SSL certificate]
|
||||
** type: integer
|
||||
** values: plain, ecdsa-nist256p-challenge, external, dh-blowfish, dh-aes
|
||||
** values: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
|
||||
** default value: `+plain+`
|
||||
|
||||
* [[option_irc.server_default.sasl_password]] *irc.server_default.sasl_password*
|
||||
@@ -2737,7 +2883,7 @@
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_irc.server_default.ssl_cert]] *irc.server_default.ssl_cert*
|
||||
** description: pass:none[SSL certificate file used to automatically identify your nick ("%h" will be replaced by WeeChat home, "~/.weechat" by default)]
|
||||
** description: pass:none[SSL certificate file used to automatically identify your nick (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+""+`
|
||||
@@ -2918,11 +3064,11 @@
|
||||
** values: -1 .. 43200
|
||||
** default value: `+0+`
|
||||
|
||||
* [[option_relay.network.compression_level]] *relay.network.compression_level*
|
||||
** description: pass:none[compression level for packets sent to client with WeeChat protocol (0 = disable compression, 1 = low compression ... 9 = best compression)]
|
||||
* [[option_relay.network.compression]] *relay.network.compression*
|
||||
** description: pass:none[compression of messages sent to clients with "weechat" protocol: 0 = disable compression, 1 = low compression / fast ... 100 = best compression / slow; the value is a percentage converted to 1-9 for zlib and 1-19 for zstd; the default value is recommended, it offers a good compromise between compression and speed]
|
||||
** type: integer
|
||||
** values: 0 .. 9
|
||||
** default value: `+6+`
|
||||
** values: 0 .. 100
|
||||
** default value: `+20+`
|
||||
|
||||
* [[option_relay.network.ipv6]] *relay.network.ipv6*
|
||||
** description: pass:none[listen on IPv6 socket by default (in addition to IPv4 which is default); protocols IPv4 and IPv6 can be forced (individually or together) in the protocol name (see /help relay)]
|
||||
@@ -2961,10 +3107,10 @@
|
||||
** default value: `+100000+`
|
||||
|
||||
* [[option_relay.network.ssl_cert_key]] *relay.network.ssl_cert_key*
|
||||
** description: pass:none[file with SSL certificate and private key (for serving clients with SSL)]
|
||||
** description: pass:none[file with SSL certificate and private key (for serving clients with SSL) (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"%h/ssl/relay.pem"+`
|
||||
** default value: `+"${weechat_config_dir}/ssl/relay.pem"+`
|
||||
|
||||
* [[option_relay.network.ssl_priorities]] *relay.network.ssl_priorities*
|
||||
** description: pass:none[string with priorities for gnutls (for syntax, see documentation of function gnutls_priority_init in gnutls manual, common strings are: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")]
|
||||
@@ -2997,34 +3143,6 @@
|
||||
** default value: `+""+`
|
||||
// end::relay_options[]
|
||||
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::guile_options[]
|
||||
* [[option_guile.look.check_license]] *guile.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
@@ -3039,19 +3157,33 @@
|
||||
** default value: `+on+`
|
||||
// end::guile_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
// tag::javascript_options[]
|
||||
* [[option_javascript.look.check_license]] *javascript.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
* [[option_javascript.look.eval_keep_context]] *javascript.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::tcl_options[]
|
||||
// end::javascript_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::perl_options[]
|
||||
* [[option_perl.look.check_license]] *perl.look.check_license*
|
||||
@@ -3081,20 +3213,6 @@
|
||||
** default value: `+on+`
|
||||
// end::php_options[]
|
||||
|
||||
// tag::lua_options[]
|
||||
* [[option_lua.look.check_license]] *lua.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_lua.look.eval_keep_context]] *lua.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::lua_options[]
|
||||
|
||||
// tag::python_options[]
|
||||
* [[option_python.look.check_license]] *python.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
@@ -3109,6 +3227,34 @@
|
||||
** default value: `+on+`
|
||||
// end::python_options[]
|
||||
|
||||
// tag::ruby_options[]
|
||||
* [[option_ruby.look.check_license]] *ruby.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_ruby.look.eval_keep_context]] *ruby.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::ruby_options[]
|
||||
|
||||
// tag::tcl_options[]
|
||||
* [[option_tcl.look.check_license]] *tcl.look.check_license*
|
||||
** description: pass:none[check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+off+`
|
||||
|
||||
* [[option_tcl.look.eval_keep_context]] *tcl.look.eval_keep_context*
|
||||
** description: pass:none[keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower]
|
||||
** type: boolean
|
||||
** values: on, off
|
||||
** default value: `+on+`
|
||||
// end::tcl_options[]
|
||||
|
||||
// tag::script_options[]
|
||||
* [[option_script.color.status_autoloaded]] *script.color.status_autoloaded*
|
||||
** description: pass:none[color for status "autoloaded" ("a")]
|
||||
@@ -3267,7 +3413,7 @@
|
||||
** default value: `+lightmagenta+`
|
||||
|
||||
* [[option_script.look.columns]] *script.look.columns*
|
||||
** description: pass:none[format of columns displayed in script buffer: following column identifiers are replaced by their value: %a=author, %d=description, %D=date added, %e=extension, %l=language, %L=license, %n=name with extension, %N=name, %r=requirements, %s=status, %t=tags, %u=date updated, %v=version, %V=version loaded, %w=min_weechat, %W=max_weechat)]
|
||||
** description: pass:none[format of columns displayed in script buffer: following column identifiers are replaced by their values: %a=author, %d=description, %D=date added, %e=extension, %l=language, %L=license, %n=name with extension, %N=name, %r=requirements, %s=status, %t=tags, %u=date updated, %v=version, %V=version loaded, %w=min_weechat, %W=max_weechat)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"%s %n %V %v %u | %d | %t"+`
|
||||
@@ -3345,10 +3491,10 @@
|
||||
** default value: `+""+`
|
||||
|
||||
* [[option_script.scripts.path]] *script.scripts.path*
|
||||
** description: pass:none[local cache directory for scripts; "%h" at beginning of string is replaced by WeeChat home ("~/.weechat" by default) (note: content is evaluated, see /help eval)]
|
||||
** description: pass:none[local cache directory for scripts (path is evaluated, see function string_eval_path_home in plugin API reference)]
|
||||
** type: string
|
||||
** values: any string
|
||||
** default value: `+"%h/script"+`
|
||||
** default value: `+"${weechat_cache_dir}/script"+`
|
||||
|
||||
* [[option_script.scripts.url]] *script.scripts.url*
|
||||
** description: pass:none[URL for file with list of scripts]
|
||||
|
||||
@@ -15,9 +15,9 @@
|
||||
"--daemon").
|
||||
|
||||
*-d*, *--dir* _<path>_::
|
||||
Set path as home for WeeChat (used for configuration files, logs, user
|
||||
plugins and scripts), default value is "~/.weechat" (note: directory is
|
||||
created if not found by WeeChat).
|
||||
Force a single directory for all WeeChat files (directory is created if not found).
|
||||
Four directories can be given, separated by colons (in this order: config,
|
||||
data, cache, runtime).
|
||||
If this option is not given, the environment variable WEECHAT_HOME is used
|
||||
(if not empty).
|
||||
|
||||
|
||||
+31
-28
@@ -1,6 +1,6 @@
|
||||
// tag::plugin_options[]
|
||||
For complete doc on plugin options, please look at plugins documentation in
|
||||
https://weechat.org/doc[WeeChat user's guide].
|
||||
https://weechat.org/doc/[WeeChat user's guide].
|
||||
|
||||
With irc plugin, you can connect to temporary server with an URL like:
|
||||
|
||||
@@ -8,7 +8,7 @@ With irc plugin, you can connect to temporary server with an URL like:
|
||||
|
||||
To join WeeChat IRC channel support with nick "mynick":
|
||||
|
||||
irc://mynick@chat.freenode.net/#weechat
|
||||
irc://mynick@irc.libera.chat/#weechat
|
||||
|
||||
IPv6 address can be enclosed in brackets to add a port after address, for
|
||||
example:
|
||||
@@ -17,79 +17,82 @@ example:
|
||||
// end::plugin_options[]
|
||||
|
||||
// tag::files[]
|
||||
$HOME/.weechat/weechat.conf::
|
||||
$HOME/.config/weechat/weechat.conf::
|
||||
main WeeChat configuration file
|
||||
|
||||
$HOME/.weechat/plugins.conf::
|
||||
$HOME/.config/weechat/plugins.conf::
|
||||
plugins configuration file
|
||||
|
||||
$HOME/.weechat/sec.conf::
|
||||
$HOME/.config/weechat/sec.conf::
|
||||
configuration file with secured data
|
||||
|
||||
$HOME/.weechat/alias.conf::
|
||||
$HOME/.config/weechat/alias.conf::
|
||||
configuration file for _alias_ plugin
|
||||
|
||||
$HOME/.weechat/buflist.conf::
|
||||
$HOME/.config/weechat/buflist.conf::
|
||||
configuration file for _buflist_ plugin
|
||||
|
||||
$HOME/.weechat/charset.conf::
|
||||
$HOME/.config/weechat/charset.conf::
|
||||
configuration file for _charset_ plugin
|
||||
|
||||
$HOME/.weechat/exec.conf::
|
||||
$HOME/.config/weechat/exec.conf::
|
||||
configuration file for _exec_ plugin
|
||||
|
||||
$HOME/.weechat/fifo.conf::
|
||||
$HOME/.config/weechat/fifo.conf::
|
||||
configuration file for _fifo_ plugin
|
||||
|
||||
$HOME/.weechat/fset.conf::
|
||||
$HOME/.config/weechat/fset.conf::
|
||||
configuration file for _fset_ plugin
|
||||
|
||||
$HOME/.weechat/guile.conf::
|
||||
$HOME/.config/weechat/guile.conf::
|
||||
configuration file for _guile_ plugin
|
||||
|
||||
$HOME/.weechat/irc.conf::
|
||||
$HOME/.config/weechat/irc.conf::
|
||||
configuration file for _irc_ plugin
|
||||
|
||||
$HOME/.weechat/javascript.conf::
|
||||
$HOME/.config/weechat/javascript.conf::
|
||||
configuration file for _javascript_ plugin
|
||||
|
||||
$HOME/.weechat/logger.conf::
|
||||
$HOME/.config/weechat/logger.conf::
|
||||
configuration file for _logger_ plugin
|
||||
|
||||
$HOME/.weechat/lua.conf::
|
||||
$HOME/.config/weechat/lua.conf::
|
||||
configuration file for _lua_ plugin
|
||||
|
||||
$HOME/.weechat/perl.conf::
|
||||
$HOME/.config/weechat/perl.conf::
|
||||
configuration file for _perl_ plugin
|
||||
|
||||
$HOME/.weechat/php.conf::
|
||||
$HOME/.config/weechat/php.conf::
|
||||
configuration file for _php_ plugin
|
||||
|
||||
$HOME/.weechat/python.conf::
|
||||
$HOME/.config/weechat/python.conf::
|
||||
configuration file for _python_ plugin
|
||||
|
||||
$HOME/.weechat/relay.conf::
|
||||
$HOME/.config/weechat/relay.conf::
|
||||
configuration file for _relay_ plugin
|
||||
|
||||
$HOME/.weechat/ruby.conf::
|
||||
$HOME/.config/weechat/ruby.conf::
|
||||
configuration file for _ruby_ plugin
|
||||
|
||||
$HOME/.weechat/script.conf::
|
||||
$HOME/.config/weechat/script.conf::
|
||||
configuration file for _script_ plugin
|
||||
|
||||
$HOME/.weechat/spell.conf::
|
||||
$HOME/.config/weechat/spell.conf::
|
||||
configuration file for _spell_ plugin
|
||||
|
||||
$HOME/.weechat/tcl.conf::
|
||||
$HOME/.config/weechat/tcl.conf::
|
||||
configuration file for _tcl_ plugin
|
||||
|
||||
$HOME/.weechat/trigger.conf::
|
||||
$HOME/.config/weechat/trigger.conf::
|
||||
configuration file for _trigger_ plugin
|
||||
|
||||
$HOME/.weechat/xfer.conf::
|
||||
$HOME/.config/weechat/typing.conf::
|
||||
configuration file for _typing_ plugin
|
||||
|
||||
$HOME/.config/weechat/xfer.conf::
|
||||
configuration file for _xfer_ plugin
|
||||
|
||||
$HOME/.weechat/weechat.log::
|
||||
$HOME/.local/share/weechat/weechat.log::
|
||||
WeeChat log file
|
||||
// end::files[]
|
||||
|
||||
@@ -97,7 +100,7 @@ $HOME/.weechat/weechat.log::
|
||||
WeeChat is written by Sébastien Helleu and contributors (complete list is in
|
||||
the AUTHORS.adoc file).
|
||||
|
||||
Copyright (C) 2003-2021 {author}
|
||||
Copyright (C) 2003-2022 {author}
|
||||
|
||||
WeeChat is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
||||
@@ -60,4 +60,4 @@ include::includes/man.en.adoc[tag=copyright]
|
||||
|
||||
== SUPPORT / REPORTING BUGS
|
||||
|
||||
For help or a bug report: https://weechat.org/about/support
|
||||
For help or a bug report: https://weechat.org/about/support/
|
||||
|
||||
@@ -57,4 +57,4 @@ include::includes/man.en.adoc[tag=copyright]
|
||||
|
||||
== SUPPORT / REPORTING BUGS
|
||||
|
||||
For help or a bug report: https://weechat.org/about/support
|
||||
For help or a bug report: https://weechat.org/about/support/
|
||||
|
||||
+251
-144
@@ -10,8 +10,8 @@
|
||||
|
||||
This manual documents WeeChat chat client, it is part of WeeChat.
|
||||
|
||||
Latest version of this document can be found on this page:
|
||||
https://weechat.org/doc
|
||||
Latest version of this document can be found on
|
||||
https://weechat.org/doc/[this page ^↗^,window=_blank].
|
||||
|
||||
|
||||
[[introduction]]
|
||||
@@ -31,8 +31,8 @@ This manual documents WeeChat internals:
|
||||
[[repositories]]
|
||||
== Repositories
|
||||
|
||||
WeeChat repositories are on GitHub organization "weechat":
|
||||
https://github.com/weechat
|
||||
WeeChat repositories are on GitHub organization
|
||||
https://github.com/weechat[weechat ^↗^,window=_blank].
|
||||
|
||||
List of repositories:
|
||||
|
||||
@@ -43,7 +43,7 @@ scripts::
|
||||
the _official_ scripts submitted on weechat.org
|
||||
|
||||
weechat.org::
|
||||
source of WeeChat website: https://weechat.org/
|
||||
source of https://weechat.org/[WeeChat website ^↗^,window=_blank]
|
||||
|
||||
weercd::
|
||||
IRC testing server
|
||||
@@ -89,6 +89,7 @@ The main WeeChat directories are:
|
||||
| spell/ | Spell plugin.
|
||||
| tcl/ | Tcl scripting API.
|
||||
| trigger/ | Trigger plugin.
|
||||
| typing/ | Typing plugin.
|
||||
| xfer/ | Xfer plugin (IRC DCC file/chat).
|
||||
| tests/ | Tests.
|
||||
| scripts/ | Scripting API tests.
|
||||
@@ -98,6 +99,7 @@ The main WeeChat directories are:
|
||||
| gui/ | Unit tests for interfaces functions.
|
||||
| plugins/ | Unit tests for plugins.
|
||||
| irc/ | Unit tests for IRC plugin.
|
||||
| trigger/ | Unit tests for trigger plugin.
|
||||
| doc/ | Documentation.
|
||||
| po/ | Translations files (gettext).
|
||||
| debian/ | Debian packaging.
|
||||
@@ -127,6 +129,7 @@ WeeChat "core" is located in following directories:
|
||||
| wee-config.c | Configuration options for WeeChat core (file weechat.conf).
|
||||
| wee-crypto.c | Cryptographic functions.
|
||||
| wee-debug.c | Some debug functions.
|
||||
| wee-dir.c | Directory/file functions.
|
||||
| wee-eval.c | Evaluation of expressions with references to internal vars.
|
||||
| wee-hashtable.c | Hashtables.
|
||||
| wee-hdata.c | Hdata (direct access to data using hashtables).
|
||||
@@ -140,6 +143,7 @@ WeeChat "core" is located in following directories:
|
||||
| wee-secure.c | Secured data functions.
|
||||
| wee-secure-buffer.c | Secured data buffer.
|
||||
| wee-secure-config.c | Secured data options (file sec.conf).
|
||||
| wee-signal.c | Signal functions.
|
||||
| wee-string.c | Functions on strings.
|
||||
| wee-upgrade-file.c | Internal upgrade system.
|
||||
| wee-upgrade.c | Upgrade for WeeChat core (buffers, lines, history, ...).
|
||||
@@ -280,6 +284,7 @@ WeeChat "core" is located in following directories:
|
||||
| irc-ignore.c | IRC Ignore.
|
||||
| irc-info.c | IRC info/infolists/hdata.
|
||||
| irc-input.c | Input of commands/text.
|
||||
| irc-join.c | Functions for list of channels to join.
|
||||
| irc-message.c | Functions to manipulate IRC messages.
|
||||
| irc-mode.c | Functions about channel/nick modes.
|
||||
| irc-modelist.c | IRC channel mode lists (+b, +e, +I, ...).
|
||||
@@ -291,6 +296,8 @@ WeeChat "core" is located in following directories:
|
||||
| irc-redirect.c | Redirection of IRC command output.
|
||||
| irc-sasl.c | SASL authentication with IRC server.
|
||||
| irc-server.c | I/O communication with IRC server.
|
||||
| irc-tag.c | Functions to manipulate IRC message tags.
|
||||
| irc-typing.c | Typing status.
|
||||
| irc-upgrade.c | Save/restore of IRC data when upgrading WeeChat.
|
||||
| javascript/ | JavaScript plugin.
|
||||
| weechat-js.cpp | Main JavaScript functions (load/unload scripts, execute JavaScript code).
|
||||
@@ -360,6 +367,11 @@ WeeChat "core" is located in following directories:
|
||||
| trigger-command.c | Trigger commands.
|
||||
| trigger-completion.c | Trigger completions.
|
||||
| trigger-config.c | Trigger config options (file trigger.conf).
|
||||
| typing/ | Typing plugin.
|
||||
| typing.c | Main typing functions.
|
||||
| typing-bar-item.c | Typing bar items.
|
||||
| typing-config.c | Typing config options (file typing.conf).
|
||||
| typing-status.c | Messages typing status on buffers.
|
||||
| xfer/ | Xfer plugin (IRC DCC file/chat).
|
||||
| xfer.c | Main xfer functions.
|
||||
| xfer-buffer.c | Xfer buffer.
|
||||
@@ -379,50 +391,68 @@ WeeChat "core" is located in following directories:
|
||||
|
||||
[width="100%",cols="2m,3",options="header"]
|
||||
|===
|
||||
| Path/file | Description
|
||||
| tests/ | Root of tests.
|
||||
| tests.cpp | Program used to run all tests.
|
||||
| scripts/ | Root of scripting API tests.
|
||||
| test-scripts.cpp | Program used to run the scripting API tests.
|
||||
| python/ | Python scripts to generate and run the scripting API tests.
|
||||
| testapigen.py | Python script generating scripts in all languages to test the scripting API.
|
||||
| testapi.py | Python script with scripting API tests, used by script testapigen.py.
|
||||
| unparse.py | Convert Python code to other languages, used by script testapigen.py.
|
||||
| unit/ | Root of unit tests.
|
||||
| test-plugins.cpp | Tests: plugins.
|
||||
| core/ | Root of unit tests for core.
|
||||
| test-core-arraylist.cpp | Tests: arraylists.
|
||||
| test-core-calc.cpp | Tests: calculation of expressions.
|
||||
| test-core-crypto.cpp | Tests: cryptographic functions.
|
||||
| test-core-eval.cpp | Tests: evaluation of expressions.
|
||||
| test-core-hashtble.cpp | Tests: hashtables.
|
||||
| test-core-hdata.cpp | Tests: hdata.
|
||||
| test-core-hook.cpp | Tests: hooks.
|
||||
| test-core-infolist.cpp | Tests: infolists.
|
||||
| test-core-list.cpp | Tests: lists.
|
||||
| test-core-secure.cpp | Tests: secured data.
|
||||
| test-core-string.cpp | Tests: strings.
|
||||
| test-core-url.cpp | Tests: URLs.
|
||||
| test-core-utf8.cpp | Tests: UTF-8.
|
||||
| test-core-util.cpp | Tests: utility functions.
|
||||
| gui/ | Root of unit tests for interfaces.
|
||||
| test-gui-color.cpp | Tests: colors.
|
||||
| test-gui-line.cpp | Tests: lines.
|
||||
| test-gui-nick.cpp | Tests: nicks.
|
||||
| plugins/ | Root of unit tests for plugins.
|
||||
| irc/ | Root of unit tests for IRC plugin.
|
||||
| test-irc-channel.cpp | Tests: IRC channels.
|
||||
| test-irc-color.cpp | Tests: IRC colors.
|
||||
| test-irc-config.cpp | Tests: IRC configuration.
|
||||
| test-irc-ignore.cpp | Tests: IRC ignores.
|
||||
| test-irc-message.cpp | Tests: IRC messages.
|
||||
| test-irc-mode.cpp | Tests: IRC modes.
|
||||
| test-irc-nick.cpp | Tests: IRC nicks.
|
||||
| test-irc-protocol.cpp | Tests: IRC protocol.
|
||||
| test-irc-server.cpp | Tests: IRC server.
|
||||
| relay/ | Root of unit tests for Relay plugin.
|
||||
| test-relay-auth.cpp | Tests: clients authentication.
|
||||
|
||||
| Path/file | Description
|
||||
| tests/ | Root of tests.
|
||||
| tests.cpp | Program used to run all tests.
|
||||
| scripts/ | Root of scripting API tests.
|
||||
| test-scripts.cpp | Program used to run the scripting API tests.
|
||||
| python/ | Python scripts to generate and run the scripting API tests.
|
||||
| testapigen.py | Python script generating scripts in all languages to test the scripting API.
|
||||
| testapi.py | Python script with scripting API tests, used by script testapigen.py.
|
||||
| unparse.py | Convert Python code to other languages, used by script testapigen.py.
|
||||
| unit/ | Root of unit tests.
|
||||
| test-plugins.cpp | Tests: plugins.
|
||||
| core/ | Root of unit tests for core.
|
||||
| test-core-arraylist.cpp | Tests: arraylists.
|
||||
| test-core-calc.cpp | Tests: calculation of expressions.
|
||||
| test-core-config-file.cpp | Tests: configuration files.
|
||||
| test-core-crypto.cpp | Tests: cryptographic functions.
|
||||
| test-core-dir.cpp | Tests: directory/file functions.
|
||||
| test-core-eval.cpp | Tests: evaluation of expressions.
|
||||
| test-core-hashtble.cpp | Tests: hashtables.
|
||||
| test-core-hdata.cpp | Tests: hdata.
|
||||
| test-core-hook.cpp | Tests: hooks.
|
||||
| test-core-infolist.cpp | Tests: infolists.
|
||||
| test-core-list.cpp | Tests: lists.
|
||||
| test-core-network.cpp | Tests: network functions.
|
||||
| test-core-secure.cpp | Tests: secured data.
|
||||
| test-core-signal.cpp | Tests: signals.
|
||||
| test-core-string.cpp | Tests: strings.
|
||||
| test-core-url.cpp | Tests: URLs.
|
||||
| test-core-utf8.cpp | Tests: UTF-8.
|
||||
| test-core-util.cpp | Tests: utility functions.
|
||||
| gui/ | Root of unit tests for interfaces.
|
||||
| test-gui-bar-window.cpp | Tests: bar window functions.
|
||||
| test-gui-buffer.cpp | Tests: buffer functions.
|
||||
| test-gui-chat.cpp | Tests: chat functions.
|
||||
| test-gui-color.cpp | Tests: colors.
|
||||
| test-gui-line.cpp | Tests: lines.
|
||||
| test-gui-nick.cpp | Tests: nicks.
|
||||
| plugins/ | Root of unit tests for plugins.
|
||||
| irc/ | Root of unit tests for IRC plugin.
|
||||
| test-irc-buffer.cpp | Tests: IRC buffers.
|
||||
| test-irc-channel.cpp | Tests: IRC channels.
|
||||
| test-irc-color.cpp | Tests: IRC colors.
|
||||
| test-irc-config.cpp | Tests: IRC configuration.
|
||||
| test-irc-ignore.cpp | Tests: IRC ignores.
|
||||
| test-irc-join.cpp | Tests: IRC join functions.
|
||||
| test-irc-message.cpp | Tests: IRC messages.
|
||||
| test-irc-mode.cpp | Tests: IRC modes.
|
||||
| test-irc-nick.cpp | Tests: IRC nicks.
|
||||
| test-irc-protocol.cpp | Tests: IRC protocol.
|
||||
| test-irc-sasl.cpp | Tests: SASL authentication with IRC protocol.
|
||||
| test-irc-server.cpp | Tests: IRC server.
|
||||
| test-irc-tag.cpp | Tests: IRC message tags.
|
||||
| logger/ | Root of unit tests for logger plugin.
|
||||
| test-logger-backlog.cpp | Tests: logger backlog.
|
||||
| trigger/ | Root of unit tests for trigger plugin.
|
||||
| test-trigger.cpp | Tests: triggers.
|
||||
| test-trigger-config.cpp | Tests: trigger configuration.
|
||||
| typing/ | Root of unit tests for typing plugin.
|
||||
| test-typing.cpp | Tests: typing.
|
||||
| test-typing-status.cpp | Tests: typing status.
|
||||
| relay/ | Root of unit tests for Relay plugin.
|
||||
| test-relay-auth.cpp | Tests: clients authentication.
|
||||
|===
|
||||
|
||||
[[documentation_translations]]
|
||||
@@ -438,14 +468,13 @@ Documentation files:
|
||||
| docgen.py | Python script to build auto-generated files in _includes/_ directory (see below).
|
||||
| XX/ | Documentation for language XX (languages: en, fr, de, it, ...).
|
||||
| weechat.1.XX.adoc | Man page (`man weechat`).
|
||||
| weechat_dev.XX.adoc | link:weechat_dev.en.html[Developer's guide] (this document).
|
||||
| weechat_faq.XX.adoc | link:weechat_faq.en.html[FAQ].
|
||||
| weechat_plugin_api.XX.adoc | link:weechat_plugin_api.en.html[Plugin API reference].
|
||||
| weechat_quickstart.XX.adoc | link:weechat_quickstart.en.html[Quickstart guide].
|
||||
| weechat_relay_protocol.XX.adoc | link:weechat_relay_protocol.en.html[Relay protocol] (for remote interfaces).
|
||||
| weechat_scripting.XX.adoc | link:weechat_scripting.en.html[Scripting guide].
|
||||
| weechat_tester.XX.adoc | link:weechat_tester.en.html[Tester's guide].
|
||||
| weechat_user.XX.adoc | link:weechat_user.en.html[User's guide].
|
||||
| weechat_dev.XX.adoc | link:weechat_dev.en.html[Developer's guide ^↗^,window=_blank] (this document).
|
||||
| weechat_faq.XX.adoc | link:weechat_faq.en.html[FAQ ^↗^,window=_blank].
|
||||
| weechat_plugin_api.XX.adoc | link:weechat_plugin_api.en.html[Plugin API reference ^↗^,window=_blank].
|
||||
| weechat_quickstart.XX.adoc | link:weechat_quickstart.en.html[Quickstart guide ^↗^,window=_blank].
|
||||
| weechat_relay_protocol.XX.adoc | link:weechat_relay_protocol.en.html[Relay protocol ^↗^,window=_blank] (for remote interfaces).
|
||||
| weechat_scripting.XX.adoc | link:weechat_scripting.en.html[Scripting guide ^↗^,window=_blank].
|
||||
| weechat_user.XX.adoc | link:weechat_user.en.html[User's guide ^↗^,window=_blank].
|
||||
| includes/ | Files included in documentation.
|
||||
| autogen_api_completions.XX.adoc | Auto-generated file for Plugin API reference: completions (do *NEVER* update manually!).
|
||||
| autogen_api_hdata.XX.adoc | Auto-generated file for Plugin API reference: hdata (do *NEVER* update manually!).
|
||||
@@ -490,12 +519,12 @@ directory:
|
||||
|
||||
Example in C:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* weechat.c - core functions for WeeChat
|
||||
*
|
||||
* Copyright (C) 2021 Your Name <your@email.com>
|
||||
* Copyright (C) 2022 Your Name <your@email.com>
|
||||
*
|
||||
* This file is part of WeeChat, the extensible chat client.
|
||||
*
|
||||
@@ -528,7 +557,7 @@ Some basic rules you *must* follow when you write C code:
|
||||
|
||||
Example:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* Checks if a string with boolean value is valid.
|
||||
@@ -559,7 +588,7 @@ foo ()
|
||||
Exception: in `for` loops, where variables like "i" or "n" are OK.
|
||||
* Initialize local variables after declaration, in body of function, example:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
void
|
||||
foo ()
|
||||
@@ -577,7 +606,7 @@ foo ()
|
||||
* Place curly brackets `+{ }+` alone on lines, and indent them with number of
|
||||
spaces used for line above opening curly bracket (the `if` in example):
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
if (nicks_count == 1)
|
||||
{
|
||||
@@ -588,7 +617,7 @@ if (nicks_count == 1)
|
||||
* Use empty lines to separate many different blocks inside functions, and if
|
||||
possible add a comment for each one, like this:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* Sends a message from out queue.
|
||||
@@ -631,7 +660,7 @@ irc_server_outqueue_send (struct t_irc_server *server)
|
||||
* Indent the `if` conditions, and use parentheses around conditions with an
|
||||
operator (not needed for single boolean), like this:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
if (something)
|
||||
{
|
||||
@@ -655,7 +684,7 @@ else
|
||||
|
||||
* Indent the `switch` statements like this:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
switch (string[0])
|
||||
{
|
||||
@@ -673,7 +702,7 @@ switch (string[0])
|
||||
|
||||
* Use `typedef` for function prototypes but not for structures:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
typedef int (t_hook_callback_fd)(void *data, int fd);
|
||||
|
||||
@@ -710,7 +739,7 @@ new_hook_fd = malloc (sizeof (*new_hook_fd));
|
||||
[[coding_python_style]]
|
||||
=== Python style
|
||||
|
||||
See https://www.python.org/dev/peps/pep-0008/
|
||||
See https://www.python.org/dev/peps/pep-0008/[PEP 8 ^↗^,window=_blank].
|
||||
|
||||
[[core_internals]]
|
||||
== Core internals
|
||||
@@ -755,7 +784,7 @@ Structures have name _t_X_Y_ or _t_X_Y_Z_:
|
||||
|
||||
Example: an IRC nick (from _src/plugins/irc/irc-nick.h_):
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_irc_nick
|
||||
{
|
||||
@@ -785,7 +814,7 @@ _X_ is name of variable, using singular form).
|
||||
|
||||
Example: windows (from _src/gui/gui-window.c_):
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_gui_window *gui_windows = NULL; /* first window */
|
||||
struct t_gui_window *last_gui_window = NULL; /* last window */
|
||||
@@ -805,7 +834,7 @@ Naming convention for functions is the same as
|
||||
|
||||
Example: creation of a new window (from _src/gui/gui-window.c_):
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
/*
|
||||
* Creates a new window.
|
||||
@@ -841,7 +870,7 @@ and next node.
|
||||
|
||||
Example: list of buffers (from _src/gui/gui-buffer.h_):
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_gui_buffer
|
||||
{
|
||||
@@ -856,7 +885,7 @@ struct t_gui_buffer
|
||||
|
||||
Then the two list pointers, to the head and tail of list:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_gui_buffer *gui_buffers = NULL; /* first buffer */
|
||||
struct t_gui_buffer *last_gui_buffer = NULL; /* last buffer */
|
||||
@@ -871,18 +900,10 @@ underline, ...) and colors on screen.
|
||||
All attributes/colors are prefixed with a char in string, which can be:
|
||||
|
||||
* _0x19_: color code (followed by color code(s))
|
||||
* _0x1A_: set attribute (followed by attribute on one char)
|
||||
* _0x1B_: remove attribute (followed by attribute on one char)
|
||||
* _0x1A_: set attribute (followed by raw attribute on one char)
|
||||
* _0x1B_: remove attribute (followed by raw attribute on one char)
|
||||
* _0x1C_: reset (nothing after)
|
||||
|
||||
Allowed attributes are (one or more chars):
|
||||
|
||||
* `+*+`: bold
|
||||
* `+!+`: reverse
|
||||
* `+/+`: italic
|
||||
* `+_+`: underline
|
||||
* `+|+`: keep attributes
|
||||
|
||||
Possible colors are:
|
||||
|
||||
* standard color: optional attributes + number on 2 digits
|
||||
@@ -891,45 +912,55 @@ Possible colors are:
|
||||
In following table, these conventions are used:
|
||||
|
||||
* `STD`: standard color (2 digits)
|
||||
* `(A)STD`: standard color with optional attributes (attributes + 2 digits)
|
||||
* `(ATTR)STD`: standard color with optional attributes (attributes + 2 digits)
|
||||
* `EXT`: extended color (`+@+` + 5 digits)
|
||||
* `(A)EXT`: extended color with optional attributes (`+@+` + attributes + 5 digits)
|
||||
* `ATTR`: one attribute char (`+*+`, `+!+`, `+/+`, `+_+` or `+|+`)
|
||||
* `(ATTR)EXT`: extended color with optional attributes (`+@+` + attributes + 5 digits)
|
||||
* `(ATTR)`: one or more attribute chars:
|
||||
** `+*+`: bold
|
||||
** `+!+`: reverse
|
||||
** `+/+`: italic
|
||||
** `+_+`: underline
|
||||
** `+|+`: keep attributes
|
||||
* `(a)`: one raw attribute char:
|
||||
** _0x01_: bold
|
||||
** _0x02_: reverse
|
||||
** _0x03_: italic
|
||||
** _0x04_: underline
|
||||
|
||||
All combinations are summarized in this table:
|
||||
|
||||
[width="100%",cols="4,2,2,8",options="header"]
|
||||
[width="100%",cols="4,3,2,8",options="header"]
|
||||
|===
|
||||
| Code | Example | Areas | Description
|
||||
| [hex]#19# + STD | [hex]#19# `+01+` | chat + bars | Set attributes and color using option, see table below.
|
||||
| [hex]#19# + EXT | [hex]#19# `+@00001+` | chat | Set color with a ncurses pair (used only on `/color` buffer).
|
||||
| [hex]#19# + "F" + (A)STD | [hex]#19# `+F*05+` | chat + bars | Set foreground (WeeChat color).
|
||||
| [hex]#19# + "F" + (A)EXT | [hex]#19# `+F@00214+` | chat + bars | Set foreground (extended color).
|
||||
| [hex]#19# + "B" + STD | [hex]#19# `+B05+` | chat + bars | Set background (WeeChat color).
|
||||
| [hex]#19# + "B" + EXT | [hex]#19# `+B@00124+` | chat + bars | Set background (extended color).
|
||||
| [hex]#19# + "*" + (A)STD | [hex]#19# `+*05+` | chat + bars | Set foreground (WeeChat color).
|
||||
| [hex]#19# + "*" + (A)EXT | [hex]#19# `+*@00214+` | chat + bars | Set foreground (extended color).
|
||||
| [hex]#19# + "*" + (A)STD + "," + STD ^(1)^ | [hex]#19# `+*08,05+` | chat + bars | Set foreground/background (WeeChat colors).
|
||||
| [hex]#19# + "*" + (A)STD + "," + EXT ^(1)^ | [hex]#19# `+*01,@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
|
||||
| [hex]#19# + "*" + (A)EXT + "," + STD ^(1)^ | [hex]#19# `+*@00214,05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
|
||||
| [hex]#19# + "*" + (A)EXT + "," + EXT ^(1)^ | [hex]#19# `+*@00214,@00017+` | chat + bars | Set foreground/background (extended colors).
|
||||
| [hex]#19# + "*" + (A)STD + "~" + STD | [hex]#19# `+*08~05+` | chat + bars | Set foreground/background (WeeChat colors).
|
||||
| [hex]#19# + "*" + (A)STD + "~" + EXT | [hex]#19# `+*01~@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
|
||||
| [hex]#19# + "*" + (A)EXT + "~" + STD | [hex]#19# `+*@00214~05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
|
||||
| [hex]#19# + "*" + (A)EXT + "~" + EXT | [hex]#19# `+*@00214~@00017+` | chat + bars | Set foreground/background (extended colors).
|
||||
| [hex]#19# + "b" + "F" | [hex]#19# `+bF+` | bars | Set bar foreground color.
|
||||
| [hex]#19# + "b" + "D" | [hex]#19# `+bD+` | bars | Set bar delimiter color.
|
||||
| [hex]#19# + "b" + "B" | [hex]#19# `+bB+` | bars | Set bar background color.
|
||||
| [hex]#19# + "b" + "_" | [hex]#19# `+b_+` | input bar | Start input char (used only in item "input_text").
|
||||
| [hex]#19# + "b" + "-" | [hex]#19# `+b-+` | input bar | Start input hidden char (used only in item "input_text").
|
||||
| [hex]#19# + "b" + "#" | [hex]#19# `+b#+` | input bar | Move cursor char (used only in item "input_text").
|
||||
| [hex]#19# + "b" + "i" | [hex]#19# `+bi+` | bars | Start item.
|
||||
| [hex]#19# + "b" + "l" (lower L) | [hex]#19# `+bl+` | bars | Start line item.
|
||||
| [hex]#19# + "E" | [hex]#19# `+E+` | chat + bars | Emphasize text _(WeeChat ≥ 0.4.2)_.
|
||||
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + bars | Reset color (keep attributes).
|
||||
| [hex]#1A# + ATTR | [hex]#1A# `+*+` | chat + bars | Set attribute.
|
||||
| [hex]#1B# + ATTR | [hex]#1B# `+*+` | chat + bars | Remove attribute.
|
||||
| [hex]#1C# | [hex]#1C# | chat + bars | Reset attributes and color.
|
||||
| Code | Example | Areas | Description
|
||||
| [hex]#19# + `STD` | [hex]#19# `+01+` | chat + bars | Set attributes and color using option, see table below.
|
||||
| [hex]#19# + `EXT` | [hex]#19# `+@00001+` | chat | Set color with a ncurses pair (used only on `/color` buffer).
|
||||
| [hex]#19# + `F` + `(ATTR)STD` | [hex]#19# `+F*05+` | chat + bars | Set foreground (WeeChat color).
|
||||
| [hex]#19# + `F` + `(ATTR)EXT` | [hex]#19# `+F@00214+` | chat + bars | Set foreground (extended color).
|
||||
| [hex]#19# + `B` + `STD` | [hex]#19# `+B05+` | chat + bars | Set background (WeeChat color).
|
||||
| [hex]#19# + `B` + `EXT` | [hex]#19# `+B@00124+` | chat + bars | Set background (extended color).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` | [hex]#19# `+*05+` | chat + bars | Set foreground (WeeChat color).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` | [hex]#19# `+*@00214+` | chat + bars | Set foreground (extended color).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `,` + `STD` ^(1)^ | [hex]#19# `+*08,05+` | chat + bars | Set foreground/background (WeeChat colors).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `,` + `EXT` ^(1)^ | [hex]#19# `+*01,@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `,` + `STD` ^(1)^ | [hex]#19# `+*@00214,05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `,` + `EXT` ^(1)^ | [hex]#19# `+*@00214,@00017+` | chat + bars | Set foreground/background (extended colors).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `~` + `STD` | [hex]#19# `+*08~05+` | chat + bars | Set foreground/background (WeeChat colors).
|
||||
| [hex]#19# + `*` + `(ATTR)STD` + `~` + `EXT` | [hex]#19# `+*01~@00214+` | chat + bars | Set foreground (WeeChat color) and background (extended color).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `~` + `STD` | [hex]#19# `+*@00214~05+` | chat + bars | Set foreground (extended color) and background (WeeChat color).
|
||||
| [hex]#19# + `*` + `(ATTR)EXT` + `~` + `EXT` | [hex]#19# `+*@00214~@00017+` | chat + bars | Set foreground/background (extended colors).
|
||||
| [hex]#19# + `b` + `F` | [hex]#19# `+bF+` | bars | Set bar foreground color.
|
||||
| [hex]#19# + `b` + `D` | [hex]#19# `+bD+` | bars | Set bar delimiter color.
|
||||
| [hex]#19# + `b` + `B` | [hex]#19# `+bB+` | bars | Set bar background color.
|
||||
| [hex]#19# + `b` + `_` | [hex]#19# `+b_+` | input bar | Start input char (used only in item "input_text").
|
||||
| [hex]#19# + `b` + `-` | [hex]#19# `+b-+` | input bar | Start input hidden char (used only in item "input_text").
|
||||
| [hex]#19# + `b` + `#` | [hex]#19# `+b#+` | input bar | Move cursor char (used only in item "input_text").
|
||||
| [hex]#19# + `b` + `i` | [hex]#19# `+bi+` | bars | Start item.
|
||||
| [hex]#19# + `b` + `l` (lower L) | [hex]#19# `+bl+` | bars | Start line item.
|
||||
| [hex]#19# + `E` | [hex]#19# `+E+` | chat + bars | Emphasize text _(WeeChat ≥ 0.4.2)_.
|
||||
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + bars | Reset color (keep attributes).
|
||||
| [hex]#1A# + `(a)` | [hex]#1A# [hex]#01# | chat + bars | Set attribute.
|
||||
| [hex]#1B# + `(a)` | [hex]#1B# [hex]#01# | chat + bars | Remove attribute.
|
||||
| [hex]#1C# | [hex]#1C# | chat + bars | Reset attributes and color.
|
||||
|===
|
||||
|
||||
[NOTE]
|
||||
@@ -1046,7 +1077,7 @@ Then some macros are defined to call these functions.
|
||||
For example, function _hook_timer_ is defined in structure _t_weechat_plugin_
|
||||
like this:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
struct t_hook *(*hook_timer) (struct t_weechat_plugin *plugin,
|
||||
long interval,
|
||||
@@ -1059,7 +1090,7 @@ struct t_hook *(*hook_timer) (struct t_weechat_plugin *plugin,
|
||||
|
||||
And the macro used to call this function is:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
#define weechat_hook_timer(__interval, __align_second, __max_calls, \
|
||||
__callback, __data) \
|
||||
@@ -1070,7 +1101,7 @@ And the macro used to call this function is:
|
||||
|
||||
So in a plugin, the call to function will be for example:
|
||||
|
||||
[source,C]
|
||||
[source,c]
|
||||
----
|
||||
server->hook_timer_sasl = weechat_hook_timer (timeout * 1000,
|
||||
0, 1,
|
||||
@@ -1084,50 +1115,126 @@ server->hook_timer_sasl = weechat_hook_timer (timeout * 1000,
|
||||
[[git_repository]]
|
||||
=== Git repository
|
||||
|
||||
Git repository is at this URL: https://github.com/weechat/weechat
|
||||
Git repository is on https://github.com/weechat/weechat[GitHub ^↗^,window=_blank].
|
||||
|
||||
Any patch for bug or new feature must be done on master branch, preferred way
|
||||
is a GitHub pull request. A patch can also be sent by e-mail
|
||||
(made with `git diff` or `git format-patch`).
|
||||
|
||||
Format of commit message is the following (to close a GitHub issue):
|
||||
Format of commit message is the following (with automatic close of a GitHub issue):
|
||||
|
||||
----
|
||||
component: fix a problem (closes #123)
|
||||
----
|
||||
|
||||
For a Savannah bug:
|
||||
|
||||
----
|
||||
component: fix a problem (bug #12345)
|
||||
----
|
||||
|
||||
Where _component_ is one of following:
|
||||
|
||||
* WeeChat core: _core_ (files in root directory, _po/_ and _src/_,
|
||||
except _src/plugins/_)
|
||||
* documentation files: _doc_ (files in directory _doc/_)
|
||||
* name of a plugin: _irc_, _python_, _relay_, ... (files in directory
|
||||
_src/plugins/_)
|
||||
[width="100%",cols="1m,4m,5",options="header"]
|
||||
|===
|
||||
| Component | Files | Description
|
||||
|
||||
| core
|
||||
| AUTHORS.adoc +
|
||||
ChangeLog.adoc +
|
||||
Contributing.adoc +
|
||||
.github/FUNDING.yml +
|
||||
.github/ISSUE_TEMPLATE/* +
|
||||
icons/* +
|
||||
po/* +
|
||||
README.adoc +
|
||||
ReleaseNotes.adoc +
|
||||
src/core/* +
|
||||
src/gui/* +
|
||||
version.sh +
|
||||
weechat.desktop
|
||||
| WeeChat core
|
||||
|
||||
| build
|
||||
| autogen.sh +
|
||||
CMakeLists.txt +
|
||||
cmake/* +
|
||||
configure.ac +
|
||||
Makefile.am +
|
||||
tools/* +
|
||||
weechat.cygport.in +
|
||||
weechat.spec
|
||||
| Build
|
||||
|
||||
| ci
|
||||
| .github/workflows/*
|
||||
| Continuous integration
|
||||
|
||||
| debian
|
||||
| debian-devel/* +
|
||||
debian-stable/*
|
||||
| Debian packaging
|
||||
|
||||
| tests
|
||||
| tests/*
|
||||
| Tests
|
||||
|
||||
| doc
|
||||
| doc/*
|
||||
| General doc updates, for example build
|
||||
|
||||
| doc/man
|
||||
| doc/xx/weechat.1.xx.adoc +
|
||||
doc/xx/weechat-headless.1.xx.adoc
|
||||
| Man pages
|
||||
|
||||
| doc/faq
|
||||
| doc/xx/weechat_faq.xx.adoc
|
||||
| Frequently asked questions (FAQ)
|
||||
|
||||
| doc/quickstart
|
||||
| doc/xx/weechat_quickstart.xx.adoc
|
||||
| Quickstart guide
|
||||
|
||||
| doc/user
|
||||
| doc/xx/weechat_user.xx.adoc
|
||||
| User's guide
|
||||
|
||||
| doc/scripting
|
||||
| doc/xx/weechat_scripting.xx.adoc
|
||||
| Scripting guide
|
||||
|
||||
| doc/api
|
||||
| doc/xx/weechat_plugin_api.xx.adoc
|
||||
| Plugin API reference
|
||||
|
||||
| doc/relay
|
||||
| doc/xx/weechat_relay_protocol.xx.adoc
|
||||
| Relay protocol
|
||||
|
||||
| doc/dev
|
||||
| doc/xx/weechat_dev.en.adoc
|
||||
| Developer's guide
|
||||
|
||||
| irc +
|
||||
python +
|
||||
relay +
|
||||
…
|
||||
| src/plugins/<name>/*
|
||||
| Plugin
|
||||
|
||||
|===
|
||||
|
||||
Some rules to follow:
|
||||
|
||||
* Use only English.
|
||||
* Use infinitive form of verb.
|
||||
* If commit is related to something in tracker, write it in parenthesis after
|
||||
the message, with this format:
|
||||
** GitHub: closes #123
|
||||
** Savannah: bug #12345, task #12345, patch #12345
|
||||
* If commit is related to a GitHub issue, write it in parenthesis after
|
||||
the message, with this format: `(issue #123)` or `(closes #123)` to close it.
|
||||
|
||||
Examples of commit messages:
|
||||
|
||||
----
|
||||
irc: add command /unquiet (closes #36)
|
||||
core: add callback "nickcmp" for nick comparison in buffers
|
||||
irc: fix freeze when reading on socket with SSL enabled (bug #35097)
|
||||
ruby: add detection of ruby version 1.9.3 in CMake
|
||||
core: update Japanese translations
|
||||
doc/user: add chapter on typing extension
|
||||
irc: add command /unquiet (closes #36)
|
||||
python: fix crash when unloading a script without pointer to interpreter
|
||||
core: update Japanese translations (patch #7783)
|
||||
ruby: add detection of ruby version 1.9.3 in CMake
|
||||
----
|
||||
|
||||
[[translations]]
|
||||
@@ -1158,8 +1265,8 @@ $ make translations && make update-po
|
||||
|
||||
Then you can edit .po files (if you can translate in a language).
|
||||
|
||||
When done, you *have* to check your file with script _msgcheck.py_
|
||||
(https://github.com/flashcode/msgcheck):
|
||||
When done, you *have* to check your file with
|
||||
https://github.com/flashcode/msgcheck[msgcheck ^↗^,window=_blank]:
|
||||
|
||||
----
|
||||
$ msgcheck.py xx.po
|
||||
@@ -1192,7 +1299,7 @@ work on it.
|
||||
The translations missing in files are indicated by this string:
|
||||
|
||||
----
|
||||
// TRANSLATION MISSING
|
||||
// TRANSLATION MISSING
|
||||
----
|
||||
|
||||
You must translate whole file except links and special keywords for notes,
|
||||
@@ -1209,7 +1316,7 @@ warnings, ... These words must be kept unchanged:
|
||||
[CAUTION]
|
||||
----
|
||||
|
||||
When there is a name after `<<link_name>>`, then you must translate it:
|
||||
When there is a name after `+<<link_name>>+`, then you must translate it:
|
||||
|
||||
----
|
||||
<<link_name,this text must be translated>>
|
||||
|
||||
+108
-63
@@ -32,7 +32,8 @@ apply to WeeChat!).
|
||||
|
||||
Because WeeChat is very light and brings innovating features.
|
||||
|
||||
More info on the WeeChat features page: https://weechat.org/about/features
|
||||
More info on the WeeChat
|
||||
https://weechat.org/about/features/[features page ^↗^,window=_blank].
|
||||
|
||||
[[compilation_install]]
|
||||
== Compilation / install
|
||||
@@ -40,16 +41,17 @@ More info on the WeeChat features page: https://weechat.org/about/features
|
||||
[[gui]]
|
||||
=== I've heard about many GUIs for WeeChat. How can I compile/use them?
|
||||
|
||||
Some remote GUIs are available, see the remote interfaces page:
|
||||
https://weechat.org/about/interfaces
|
||||
Some remote GUIs are available, see the
|
||||
https://weechat.org/about/interfaces/[remote interfaces page ^↗^,window=_blank].
|
||||
|
||||
[[compile_git]]
|
||||
=== I can't compile WeeChat after cloning git repository, why?
|
||||
|
||||
The recommended way to compile WeeChat is with
|
||||
link:weechat_user.en.html#compile_with_cmake[CMake].
|
||||
link:weechat_user.en.html#compile_with_cmake[CMake ^↗^,window=_blank].
|
||||
|
||||
If you're compiling with link:weechat_user.en.html#compile_with_autotools[autotools]
|
||||
If you're compiling with
|
||||
link:weechat_user.en.html#compile_with_autotools[autotools ^↗^,window=_blank]
|
||||
(and not CMake), check that you have latest version of autoconf and automake.
|
||||
|
||||
The other way is to install the "devel package", which needs less dependencies.
|
||||
@@ -60,7 +62,8 @@ than git cloning for installing updates.
|
||||
[[compile_macos]]
|
||||
=== How can I install WeeChat on macOS?
|
||||
|
||||
It is recommended to use https://brew.sh/[Homebrew], you can get help with:
|
||||
It is recommended to use https://brew.sh/[Homebrew ^↗^,window=_blank],
|
||||
you can get help with:
|
||||
|
||||
----
|
||||
brew info weechat
|
||||
@@ -76,12 +79,12 @@ brew install weechat
|
||||
=== I've launched WeeChat, but I'm lost, what can I do?
|
||||
|
||||
For help you can type `/help`. For help about a command, type `/help command`.
|
||||
link:weechat_user.en.html#key_bindings[Keys] and
|
||||
link:weechat_user.en.html#commands_and_options[commands] are listed
|
||||
in documentation.
|
||||
link:weechat_user.en.html#key_bindings[Keys ^↗^,window=_blank] and
|
||||
link:weechat_user.en.html#commands_and_options[commands ^↗^,window=_blank]
|
||||
are listed in documentation.
|
||||
|
||||
It's recommended for new users to read the
|
||||
link:weechat_quickstart.en.html[Quickstart guide].
|
||||
link:weechat_quickstart.en.html[Quickstart guide ^↗^,window=_blank].
|
||||
|
||||
[[display]]
|
||||
== Display
|
||||
@@ -109,7 +112,7 @@ It's a common issue with a variety of causes, please read carefully and check
|
||||
** If you are using screen, check that it is run with UTF-8 mode
|
||||
("`defutf8 on`" in ~/.screenrc or `screen -U` to run screen).
|
||||
* Check that option
|
||||
link:weechat_user.en.html#option_weechat.look.eat_newline_glitch[_weechat.look.eat_newline_glitch_]
|
||||
link:weechat_user.en.html#option_weechat.look.eat_newline_glitch[_weechat.look.eat_newline_glitch_ ^↗^,window=_blank]
|
||||
is off (this option may cause display bugs).
|
||||
|
||||
[NOTE]
|
||||
@@ -124,10 +127,10 @@ This may be caused by a libc bug in function _wcwidth_, which should be fixed
|
||||
in glibc 2.22 (maybe not yet available in your distribution).
|
||||
|
||||
There is a workaround to use the fixed _wcwidth_ function:
|
||||
https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat
|
||||
https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat[https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat ^↗^,window=_blank]
|
||||
|
||||
See this bug report for more information:
|
||||
https://github.com/weechat/weechat/issues/79
|
||||
See this https://github.com/weechat/weechat/issues/79[bug report ^↗^,window=_blank]
|
||||
for more information.
|
||||
|
||||
[[bars_background]]
|
||||
=== Bars like title and status are not filled, background color stops after text, why?
|
||||
@@ -184,7 +187,8 @@ windows.
|
||||
[[buffers_list]]
|
||||
=== How to display the buffers list on the left side?
|
||||
|
||||
With WeeChat ≥ 1.8, the plugin link:weechat_user.en.html#buflist_plugin[buflist]
|
||||
With WeeChat ≥ 1.8, the plugin
|
||||
link:weechat_user.en.html#buflist[buflist ^↗^,window=_blank]
|
||||
is loaded and enabled by default.
|
||||
|
||||
With an older version, you can install script _buffers.pl_:
|
||||
@@ -252,8 +256,8 @@ like `237` for dark gray.
|
||||
The buflist plugin provides lot of options that you can customize, please read
|
||||
the help on each option.
|
||||
|
||||
There's also a wiki page with examples of advanced buflist configuration:
|
||||
https://github.com/weechat/weechat/wiki/buflist
|
||||
There's also a https://github.com/weechat/weechat/wiki/buflist[wiki page ^↗^,window=_blank]
|
||||
with examples of advanced buflist configuration.
|
||||
|
||||
[[customize_prefix]]
|
||||
=== How can I reduce length of nicks or remove nick alignment in chat area?
|
||||
@@ -296,8 +300,8 @@ These colors can be changed with the options __weechat.color.status_data_*__
|
||||
(buffers) and __weechat.color.status_count_*__ (counters). +
|
||||
Other hotlist options can be changed with the options __weechat.look.hotlist_*__.
|
||||
|
||||
See link:weechat_user.en.html#screen_layout[User's guide / Screen layout] for
|
||||
more info about the hotlist.
|
||||
See link:weechat_user.en.html#screen_layout[User's guide / Screen layout ^↗^,window=_blank]
|
||||
for more info about the hotlist.
|
||||
|
||||
[[input_bar_size]]
|
||||
=== How to use command line with more than one line?
|
||||
@@ -462,8 +466,8 @@ For version 0.3.4, you must use command `/color` to add new colors.
|
||||
For versions ≥ 0.3.5, you can use any color number in options (optional: you
|
||||
can add color aliases with command `/color`).
|
||||
|
||||
Please read the link:weechat_user.en.html#colors[User's guide / Colors] for more
|
||||
information about colors management.
|
||||
Please read the link:weechat_user.en.html#colors[User's guide / Colors ^↗^,window=_blank]
|
||||
for more information about colors management.
|
||||
|
||||
[[search_text]]
|
||||
=== How can I search text in buffer (like /lastlog in irssi)?
|
||||
@@ -471,8 +475,8 @@ information about colors management.
|
||||
The default key is kbd:[Ctrl+r] (command is: `+/input search_text_here+`).
|
||||
And jump to highlights: kbd:[Alt+p] / kbd:[Alt+n].
|
||||
|
||||
See link:weechat_user.en.html#key_bindings[User's guide / Key bindings] for more
|
||||
info about this feature.
|
||||
See link:weechat_user.en.html#key_bindings[User's guide / Key bindings ^↗^,window=_blank]
|
||||
for more info about this feature.
|
||||
|
||||
[[terminal_focus]]
|
||||
=== How can I execute commands when terminal gets/loses focus?
|
||||
@@ -524,7 +528,7 @@ You can just disable bracketed paste mode:
|
||||
=== How can I customize display for very small terminal size (like 80x25), to not waste space?
|
||||
|
||||
You can remove side bars (buflist and nicklist), change time format to display
|
||||
only hours and seconds, disable alignment of messages and set a char for nick
|
||||
only hours and minutes, disable alignment of messages and set a char for nick
|
||||
prefix/suffix:
|
||||
|
||||
----
|
||||
@@ -645,7 +649,7 @@ You can bind a key, for example:
|
||||
----
|
||||
|
||||
List of default keys is in
|
||||
link:weechat_user.en.html#key_bindings[User's guide / Key bindings].
|
||||
link:weechat_user.en.html#key_bindings[User's guide / Key bindings ^↗^,window=_blank].
|
||||
|
||||
To jump to buffers with number ≥ 100, you could define a trigger and then use
|
||||
commands like `/123` to jump to buffer #123:
|
||||
@@ -727,7 +731,8 @@ you have to use kbd:[Alt] instead of kbd:[Shift]).
|
||||
|
||||
If you are using macOS, you must install `openssl` from Homebrew.
|
||||
A CA file will be bootstrapped using certificates from the system keychain.
|
||||
You can then set the path to certificates in WeeChat:
|
||||
|
||||
With WeeChat ≤ 3.1, you can then set the path to system certificates:
|
||||
|
||||
----
|
||||
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
|
||||
@@ -764,10 +769,11 @@ by your server name:
|
||||
/set irc.server.xxx.ssl_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
|
||||
----
|
||||
|
||||
[[irc_ssl_freenode]]
|
||||
=== How can I connect to freenode server using SSL?
|
||||
[[irc_ssl_libera]]
|
||||
=== How can I connect to libera server using SSL?
|
||||
|
||||
Set option _weechat.network.gnutls_ca_file_ to file with certificates:
|
||||
With WeeChat ≤ 3.1, set option _weechat.network.gnutls_ca_file_ to file with
|
||||
certificates:
|
||||
|
||||
----
|
||||
/set weechat.network.gnutls_ca_file "/etc/ssl/certs/ca-certificates.crt"
|
||||
@@ -786,9 +792,9 @@ Check that you have this file on your system (commonly brought by package
|
||||
Setup server port, SSL, then connect:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.addresses "chat.freenode.net/7000"
|
||||
/set irc.server.freenode.ssl on
|
||||
/connect freenode
|
||||
/set irc.server.libera.addresses "irc.libera.chat/6697"
|
||||
/set irc.server.libera.ssl on
|
||||
/connect libera
|
||||
----
|
||||
|
||||
[[irc_oauth]]
|
||||
@@ -813,25 +819,53 @@ If the server supports SASL, you should use that instead of sending the
|
||||
command for nickserv authentication, for example:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.sasl_username "mynick"
|
||||
/set irc.server.freenode.sasl_password "xxxxxxx"
|
||||
/set irc.server.libera.sasl_username "mynick"
|
||||
/set irc.server.libera.sasl_password "xxxxxxx"
|
||||
----
|
||||
|
||||
If the server does not support SASL, you can add a delay (between command and
|
||||
join of channels):
|
||||
|
||||
----
|
||||
/set irc.server.freenode.command_delay 5
|
||||
/set irc.server.libera.command_delay 5
|
||||
----
|
||||
|
||||
[[edit_autojoin]]
|
||||
=== How can I add/remove channels from autojoin option?
|
||||
|
||||
You can use the `/set` command to edit the list of autojoin channels,
|
||||
for example for the "freenode" server:
|
||||
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.freenode.autojoin [TAB]
|
||||
/set irc.server_default.autojoin_dynamic on
|
||||
----
|
||||
|
||||
For a single server:
|
||||
|
||||
----
|
||||
/set irc.server.libera.autojoin_dynamic on
|
||||
----
|
||||
|
||||
With WeeChat ≥ 3.5, you can also add the current channel in the "autojoin"
|
||||
server option using the `/autojoin` command:
|
||||
|
||||
----
|
||||
/autojoin add
|
||||
----
|
||||
|
||||
Or another channel:
|
||||
|
||||
----
|
||||
/autojoin add #test
|
||||
----
|
||||
|
||||
With WeeChat ≤ 3.4, you can use the `/set` command to edit the list of autojoin
|
||||
channels, for example for the "libera" server:
|
||||
|
||||
----
|
||||
/set irc.server.libera.autojoin [TAB]
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
@@ -845,7 +879,7 @@ You can also use the `/fset` command to edit the list of channels:
|
||||
/fset autojoin
|
||||
----
|
||||
|
||||
Another solution is to use a script:
|
||||
With WeeChat ≤ 3.4, another solution is to use a script:
|
||||
|
||||
----
|
||||
/script search autojoin
|
||||
@@ -885,7 +919,7 @@ With a global filter (hide *all* join/part/quit):
|
||||
|
||||
[NOTE]
|
||||
For help: `/help filter`, `+/help irc.look.smart_filter+` and see
|
||||
link:weechat_user.en.html#irc_smart_filter_join_part_quit[User's guide / Smart filter for join/part/quit messages].
|
||||
link:weechat_user.en.html#irc_smart_filter_join_part_quit[User's guide / Smart filter for join/part/quit messages ^↗^,window=_blank].
|
||||
|
||||
[[filter_irc_join_channel_messages]]
|
||||
=== How can I filter some messages displayed when I join an IRC channel?
|
||||
@@ -983,7 +1017,7 @@ Other scripts on this subject:
|
||||
=== How can I disable highlights for specific nicks?
|
||||
|
||||
With WeeChat ≥ 0.3.4 you can use the
|
||||
link:weechat_user.en.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add]
|
||||
link:weechat_user.en.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^↗^,window=_blank]
|
||||
buffer property to set the max hotlist level for some nicks, per buffer,
|
||||
or per group of buffers (like IRC servers).
|
||||
|
||||
@@ -1002,16 +1036,16 @@ _buffer_autoset.py_ script:
|
||||
----
|
||||
|
||||
For example, to permanently disable highlights from "mike" on #weechat
|
||||
on the IRC server freenode:
|
||||
on the IRC server libera:
|
||||
|
||||
----
|
||||
/buffer_autoset add irc.freenode.#weechat hotlist_max_level_nicks_add mike:2
|
||||
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
|
||||
----
|
||||
|
||||
To apply it to the entire freenode server instead:
|
||||
To apply it to the entire libera server instead:
|
||||
|
||||
----
|
||||
/buffer_autoset add irc.freenode hotlist_max_level_nicks_add mike:2
|
||||
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
|
||||
----
|
||||
|
||||
For more examples, see `+/help buffer_autoset+`.
|
||||
@@ -1047,15 +1081,17 @@ Scripts are not compatible with other IRC clients.
|
||||
[[scripts_update]]
|
||||
=== The command "/script update" can not read scripts, how to fix that?
|
||||
|
||||
First check questions about SSL connection in this FAQ
|
||||
(especially the option _weechat.network.gnutls_ca_file_).
|
||||
First check questions about SSL connection in this FAQ.
|
||||
|
||||
If still not working, try to manually delete the scripts file (in your shell):
|
||||
|
||||
----
|
||||
$ rm ~/.weechat/script/plugins.xml.gz
|
||||
$ rm ~/.cache/weechat/script/plugins.xml.gz
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
With WeeChat ≤ 3.1, the path should be: _~/.weechat/script/plugins.xml.gz_.
|
||||
|
||||
And update scripts again in WeeChat:
|
||||
|
||||
----
|
||||
@@ -1075,10 +1111,18 @@ have to update manually the file yourself to get updates):
|
||||
* in your shell, with curl installed:
|
||||
|
||||
----
|
||||
$ cd ~/.weechat/script
|
||||
$ 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
|
||||
----
|
||||
|
||||
[[spell_dictionaries]]
|
||||
=== I installed aspell dictionaries on my system, how can I use them without restarting WeeChat?
|
||||
|
||||
@@ -1125,8 +1169,8 @@ You can try following tips to consume less memory:
|
||||
fifo, logger, perl, python, ruby, lua, tcl, guile, javascript, php, spell,
|
||||
xfer (used for DCC). See `/help weechat.plugin.autoload`.
|
||||
* Load only scripts that you really need.
|
||||
* Do not load certificates if SSL is *NOT* used: set empty string in option
|
||||
_weechat.network.gnutls_ca_file_.
|
||||
* Do not load system certificates if SSL is *NOT* used: turn off this option:
|
||||
_weechat.network.gnutls_ca_system_.
|
||||
* Reduce value of option _weechat.history.max_buffer_lines_number_ or set value
|
||||
of option _weechat.history.max_buffer_lines_minutes_.
|
||||
* Reduce value of option _weechat.history.max_commands_.
|
||||
@@ -1176,28 +1220,28 @@ Unload and disable auto-loading of "xfer" plugin (used for IRC DCC):
|
||||
Define a passphrase and use secured data wherever you can for sensitive data
|
||||
like passwords: see `/help secure` and `/help` on options
|
||||
(if you can use secured data, it is written in the help).
|
||||
See also link:weechat_user.en.html#secured_data[User's guide / Secured data].
|
||||
See also link:weechat_user.en.html#secured_data[User's guide / Secured data ^↗^,window=_blank].
|
||||
|
||||
For example:
|
||||
|
||||
----
|
||||
/secure passphrase xxxxxxxxxx
|
||||
/secure set freenode_username username
|
||||
/secure set freenode_password xxxxxxxx
|
||||
/set irc.server.freenode.sasl_username "${sec.data.freenode_username}"
|
||||
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
|
||||
/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}"
|
||||
----
|
||||
|
||||
[[sharing_config_files]]
|
||||
=== I want to share my WeeChat configuration, what files should I share and what should I keep private?
|
||||
|
||||
You can share files _~/.weechat/*.conf_ except the file _sec.conf_ which
|
||||
You can share configuration files _*.conf_ except the file _sec.conf_ which
|
||||
contains your passwords ciphered with your passphrase.
|
||||
|
||||
Some other files may contain sensitive info like passwords (if they are not
|
||||
stored in _sec.conf_ with the `/secure` command).
|
||||
|
||||
See the link:weechat_user.en.html#files_and_directories[User's guide / Files and directories]
|
||||
See the link:weechat_user.en.html#files_and_directories[User's guide / Files and directories ^↗^,window=_blank]
|
||||
for more information about configuration files.
|
||||
|
||||
[[development]]
|
||||
@@ -1206,7 +1250,7 @@ for more information about configuration files.
|
||||
[[bug_task_patch]]
|
||||
=== How should I report bugs, ask for new features or send patches?
|
||||
|
||||
See: https://weechat.org/about/support
|
||||
See https://weechat.org/about/support/[this page ^↗^,window=_blank].
|
||||
|
||||
[[gdb_error_threads]]
|
||||
=== When I run WeeChat under gdb, there is an error about threads, what can I do?
|
||||
@@ -1231,7 +1275,8 @@ $ LD_PRELOAD=/lib/libpthread.so.0 gdb /path/to/weechat
|
||||
[[supported_os]]
|
||||
=== What is the list of supported platforms for WeeChat? Will it be ported to other operating systems?
|
||||
|
||||
The full list is on this page: https://weechat.org/download
|
||||
WeeChat runs fine on most Linux/BSD distributions, GNU/Hurd, Mac OS and Windows
|
||||
(Cygwin and Windows Subsystem for Linux).
|
||||
|
||||
We do our best to run on as many platforms as possible. Help is welcome for
|
||||
some OS' we don't have, to test WeeChat.
|
||||
@@ -1241,11 +1286,11 @@ some OS' we don't have, to test WeeChat.
|
||||
|
||||
There are many tasks to do (testing, code, documentation, etc.)
|
||||
|
||||
Please contact us via IRC or mail, look at support page:
|
||||
https://weechat.org/about/support
|
||||
Please contact us via IRC or mail, look at
|
||||
https://weechat.org/about/support/[support page ^↗^,window=_blank].
|
||||
|
||||
[[donate]]
|
||||
=== Can I give money or other things to WeeChat developers?
|
||||
|
||||
You can give us money to help development.
|
||||
Details on https://weechat.org/donate
|
||||
Details on https://weechat.org/donate/[donation page ^↗^,window=_blank].
|
||||
|
||||
+2820
-2494
File diff suppressed because it is too large
Load Diff
@@ -105,12 +105,12 @@ other plugins in the list.
|
||||
You can add an IRC server with the `/server` command, for example:
|
||||
|
||||
----
|
||||
/server add freenode chat.freenode.net
|
||||
/server add libera irc.libera.chat/6697 -ssl
|
||||
----
|
||||
|
||||
In this command, `freenode` is the internal server name used by WeeChat:
|
||||
you'll be able to connect with `/connect freenode` and the server options
|
||||
are _irc.server.freenode.xxx_.
|
||||
In this command, `libera` is the internal server name used by WeeChat:
|
||||
you'll be able to connect with `/connect libera` and the server options
|
||||
are _irc.server.libera.xxx_.
|
||||
|
||||
As usual, help is available if you're lost:
|
||||
|
||||
@@ -129,45 +129,38 @@ For each server option, WeeChat uses its value if it is defined (not
|
||||
"null"). Otherwise WeeChat uses default value ("irc.server_default.xxx").
|
||||
|
||||
For example there are default nicks (based on your un*x login), and you can
|
||||
override them for the freenode server with following command:
|
||||
override them for the libera server with following command:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
|
||||
/set irc.server.libera.nicks "mynick,mynick2,mynick3,mynick4,mynick5"
|
||||
----
|
||||
|
||||
To set the user and real names:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.username "My user name"
|
||||
/set irc.server.freenode.realname "My real name"
|
||||
/set irc.server.libera.username "My user name"
|
||||
/set irc.server.libera.realname "My real name"
|
||||
----
|
||||
|
||||
To enable auto-connect to server at startup:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.autoconnect on
|
||||
----
|
||||
|
||||
To connect with SSL:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.addresses "chat.freenode.net/7000"
|
||||
/set irc.server.freenode.ssl on
|
||||
/set irc.server.libera.autoconnect on
|
||||
----
|
||||
|
||||
If SASL is available on the server, you can use it for authentication (you will be
|
||||
identified before you join channels):
|
||||
|
||||
----
|
||||
/set irc.server.freenode.sasl_username "mynick"
|
||||
/set irc.server.freenode.sasl_password "xxxxxxx"
|
||||
/set irc.server.libera.sasl_username "mynick"
|
||||
/set irc.server.libera.sasl_password "xxxxxxx"
|
||||
----
|
||||
|
||||
To run a command after connection to server, for example to authenticate
|
||||
with nickserv (only if you don't use SASL for authentication):
|
||||
|
||||
----
|
||||
/set irc.server.freenode.command "/msg nickserv identify xxxxxxx"
|
||||
/set irc.server.libera.command "/msg nickserv identify xxxxxxx"
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
@@ -182,23 +175,47 @@ First setup a passphrase:
|
||||
/secure passphrase this is my secret passphrase
|
||||
----
|
||||
|
||||
Then add a secured data with your freenode password:
|
||||
Then add a secured data with your libera password:
|
||||
|
||||
----
|
||||
/secure set freenode_password xxxxxxx
|
||||
/secure set libera_password xxxxxxx
|
||||
----
|
||||
|
||||
Then you can use `+${sec.data.freenode_password}+` instead of your password in the
|
||||
Then you can use `+${sec.data.libera_password}+` instead of your password in the
|
||||
IRC options mentioned above, for example:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
|
||||
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
|
||||
----
|
||||
|
||||
To auto-join some channels when connecting to server:
|
||||
|
||||
----
|
||||
/set irc.server.freenode.autojoin "#channel1,#channel2"
|
||||
/set irc.server.libera.autojoin "#channel1,#channel2"
|
||||
----
|
||||
|
||||
The `/autojoin` command lets you configure the _autojoin_ option easily
|
||||
(see `/help autojoin`).
|
||||
|
||||
You can also configure WeeChat to automatically update the _autojoin_ option
|
||||
when you join or leave channels:
|
||||
|
||||
----
|
||||
/set irc.server_default.autojoin_dynamic on
|
||||
----
|
||||
|
||||
To remove a value of a server option, and use the default value instead,
|
||||
for example to use default nicks (irc.server_default.nicks):
|
||||
|
||||
----
|
||||
/unset irc.server.libera.nicks
|
||||
----
|
||||
|
||||
Other options: you can setup other options with the following command ("xxx" is
|
||||
option name):
|
||||
|
||||
----
|
||||
/set irc.server.libera.xxx value
|
||||
----
|
||||
|
||||
[TIP]
|
||||
@@ -206,28 +223,14 @@ You can complete name and value of options with the kbd:[Tab] key
|
||||
and kbd:[Shift+Tab] for a partial completion (useful for long words like
|
||||
the name of option).
|
||||
|
||||
To remove a value of a server option, and use the default value instead,
|
||||
for example to use default nicks (irc.server_default.nicks):
|
||||
|
||||
----
|
||||
/unset irc.server.freenode.nicks
|
||||
----
|
||||
|
||||
Other options: you can setup other options with the following command ("xxx" is
|
||||
option name):
|
||||
|
||||
----
|
||||
/set irc.server.freenode.xxx value
|
||||
----
|
||||
|
||||
[[connect_to_irc_server]]
|
||||
== Connect to IRC server
|
||||
|
||||
----
|
||||
/connect freenode
|
||||
/connect libera
|
||||
----
|
||||
|
||||
With this command, WeeChat connects to the freenode server and auto-joins the
|
||||
With this command, WeeChat connects to the libera server and auto-joins the
|
||||
channels configured in the "autojoin" server option.
|
||||
|
||||
[NOTE]
|
||||
@@ -377,13 +380,14 @@ for example:
|
||||
|
||||
See `/help script` for more info.
|
||||
|
||||
A list of scripts is available in WeeChat with `/script` or at this URL:
|
||||
https://weechat.org/scripts
|
||||
A list of scripts is available in WeeChat with `/script` or on
|
||||
https://weechat.org/scripts/[this page ^↗^,window=_blank].
|
||||
|
||||
[[more_doc]]
|
||||
== More documentation
|
||||
|
||||
You can now use WeeChat and read FAQ/documentation for any other questions:
|
||||
https://weechat.org/doc
|
||||
You can now use WeeChat and read
|
||||
https://weechat.org/doc/[FAQ/documentation ^↗^,window=_blank]
|
||||
for any other questions.
|
||||
|
||||
Enjoy using WeeChat!
|
||||
|
||||
@@ -84,7 +84,7 @@ Fields are:
|
||||
|
||||
List of available commands (detail in next chapters):
|
||||
|
||||
[width="100%",cols="^3m,14",options="header"]
|
||||
[width="100%",cols="1m,8",options="header"]
|
||||
|===
|
||||
| Command | Description
|
||||
| handshake | Handshake: prepare client authentication and set options, before _init_ command.
|
||||
@@ -103,7 +103,7 @@ List of available commands (detail in next chapters):
|
||||
[[command_handshake]]
|
||||
=== handshake
|
||||
|
||||
_WeeChat ≥ 2.9._
|
||||
_WeeChat ≥ 2.9, updated in version 3.5._
|
||||
|
||||
Perform an handshake between the client and WeeChat: this is required in most
|
||||
cases to know the session settings and prepare the authentication with the
|
||||
@@ -127,10 +127,15 @@ Arguments:
|
||||
*** _sha512_: password salted and hashed with SHA512 algorithm
|
||||
*** _pbkdf2+sha256_: password salted and hashed with PBKDF2 algorithm (using SHA256 hash)
|
||||
*** _pbkdf2+sha512_: password salted and hashed with PBKDF2 algorithm (using SHA512 hash)
|
||||
** _compression_: compression type:
|
||||
*** _zlib_: enable _zlib_ compression for messages sent by _relay_
|
||||
(enabled by default if _relay_ supports _zlib_ compression)
|
||||
*** _off_: disable compression
|
||||
** _compression_: list of supported compression types supported by the client
|
||||
(separated by colons and sorted from most important to the fallback value);
|
||||
if compression is enabled, messages from _relay_ to client are compressed
|
||||
to save bandwidth; allowed values are:
|
||||
*** _off_: no compression (default if option is not given)
|
||||
*** _zlib_: compress with https://zlib.net/[zlib ^↗^,window=_blank] _(WeeChat ≥ 0.3.7)_
|
||||
*** _zstd_: compress with https://facebook.github.io/zstd/[Zstandard ^↗^,window=_blank]:
|
||||
better compression and much faster than _zlib_ for both compression and decompression
|
||||
_(WeeChat ≥ 3.5)_
|
||||
|
||||
Notes about option _password_hash_algo_:
|
||||
|
||||
@@ -169,8 +174,9 @@ WeeChat replies with a hashtable containing the following keys and values:
|
||||
and the user password (the _relay_ nonce + the client nonce is the salt used
|
||||
in the password hash algorithm)
|
||||
* _compression_: compression type:
|
||||
** _zlib_: messages are compressed with _zlib_
|
||||
** _off_: messages are not compressed
|
||||
** _zlib_: messages are compressed with https://zlib.net/[zlib ^↗^,window=_blank]
|
||||
** _zstd_: messages are compressed with https://facebook.github.io/zstd/[Zstandard ^↗^,window=_blank]
|
||||
|
||||
[TIP]
|
||||
With WeeChat ≤ 2.8, the command _handshake_ is not implemented, WeeChat silently
|
||||
@@ -196,7 +202,7 @@ htb: {
|
||||
'password_hash_iterations': '100000',
|
||||
'totp': 'on',
|
||||
'nonce': '85B1EE00695A5B254E14F4885538DF0D',
|
||||
'compression': 'zlib',
|
||||
'compression': 'off',
|
||||
}
|
||||
----
|
||||
|
||||
@@ -216,7 +222,7 @@ htb: {
|
||||
'password_hash_iterations': '100000',
|
||||
'totp': 'on',
|
||||
'nonce': '85B1EE00695A5B254E14F4885538DF0D',
|
||||
'compression': 'zlib',
|
||||
'compression': 'off',
|
||||
}
|
||||
----
|
||||
|
||||
@@ -236,7 +242,7 @@ htb: {
|
||||
'password_hash_iterations': '100000',
|
||||
'totp': 'on',
|
||||
'nonce': '85B1EE00695A5B254E14F4885538DF0D',
|
||||
'compression': 'zlib',
|
||||
'compression': 'off',
|
||||
}
|
||||
----
|
||||
|
||||
@@ -248,10 +254,11 @@ the password is "test" in this example:
|
||||
init password_hash=pbkdf2+sha256:85b1ee00695a5b254e14f4885538df0da4b73207f5aae4:100000:ba7facc3edb89cd06ae810e29ced85980ff36de2bb596fcf513aaab626876440
|
||||
----
|
||||
|
||||
* Only "sha256" and "sha512" are supported by the client, disable compression:
|
||||
* Only "sha256" and "sha512" are supported by the client, enable zstd (preferred)
|
||||
or zlib compression:
|
||||
|
||||
----
|
||||
(handshake) handshake password_hash_algo=sha256:sha512,compression=off
|
||||
(handshake) handshake password_hash_algo=sha256:sha512,compression=zstd:zlib
|
||||
----
|
||||
|
||||
Response:
|
||||
@@ -264,14 +271,14 @@ htb: {
|
||||
'password_hash_iterations': '100000',
|
||||
'totp': 'on',
|
||||
'nonce': '85B1EE00695A5B254E14F4885538DF0D',
|
||||
'compression': 'off',
|
||||
'compression': 'zstd',
|
||||
}
|
||||
----
|
||||
|
||||
[[command_init]]
|
||||
=== init
|
||||
|
||||
_Updated in versions 2.4, 2.8, 2.9._
|
||||
_Updated in versions 2.4, 2.8, 2.9, 3.5._
|
||||
|
||||
Authenticate with _relay_.
|
||||
|
||||
@@ -298,12 +305,6 @@ Arguments:
|
||||
factor, in addition to the password
|
||||
(option _relay.network.totp_secret_ in WeeChat)
|
||||
_(WeeChat ≥ 2.4)_
|
||||
** _compression_: compression type (*deprecated* since version 2.9, it is kept
|
||||
for compatibility reasons but should be sent in the
|
||||
<<command_handshake,handshake command>>):
|
||||
*** _zlib_: enable _zlib_ compression for messages sent by _relay_
|
||||
(enabled by default if _relay_ supports _zlib_ compression)
|
||||
*** _off_: disable compression
|
||||
|
||||
[NOTE]
|
||||
With WeeChat ≥ 1.6, commas can be escaped in the value, for example
|
||||
@@ -436,11 +437,11 @@ hda:
|
||||
item 2:
|
||||
__path: ['0x558d62840ea0']
|
||||
number: 1
|
||||
full_name: 'irc.server.freenode'
|
||||
full_name: 'irc.server.libera'
|
||||
item 3:
|
||||
__path: ['0x558d62a9cea0']
|
||||
number: 2
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
----
|
||||
|
||||
* Request all lines of first buffer:
|
||||
@@ -588,15 +589,15 @@ inf: ('version_number', '34144256')
|
||||
* Request WeeChat directory:
|
||||
|
||||
----
|
||||
(info_weechat_dir) info weechat_dir
|
||||
(info_weechat_config_dir) info weechat_config_dir
|
||||
----
|
||||
|
||||
Response:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
id: 'info_weechat_dir'
|
||||
inf: ('weechat_dir', '/home/xxx/.weechat')
|
||||
id: 'info_weechat_config_dir'
|
||||
inf: ('weechat_config_dir', '/home/user/.config/weechat')
|
||||
----
|
||||
|
||||
[[command_infolist]]
|
||||
@@ -747,7 +748,7 @@ Syntax:
|
||||
Arguments:
|
||||
|
||||
* _buffer_: pointer (eg: "0x1234abcd") or full name of buffer (for example:
|
||||
_core.weechat_ or _irc.freenode.#weechat_)
|
||||
_core.weechat_ or _irc.libera.#weechat_)
|
||||
|
||||
Examples:
|
||||
|
||||
@@ -856,10 +857,10 @@ hda:
|
||||
prefix_color: None
|
||||
----
|
||||
|
||||
* Request nicklist for buffer "irc.freenode.#weechat":
|
||||
* Request nicklist for buffer "irc.libera.#weechat":
|
||||
|
||||
----
|
||||
(nicklist_weechat) nicklist irc.freenode.#weechat
|
||||
(nicklist_weechat) nicklist irc.libera.#weechat
|
||||
----
|
||||
|
||||
Response:
|
||||
@@ -948,7 +949,7 @@ Syntax:
|
||||
Arguments:
|
||||
|
||||
* _buffer_: pointer (eg: "0x1234abcd") or full name of buffer (for example:
|
||||
_core.weechat_ or _irc.freenode.#weechat_)
|
||||
_core.weechat_ or _irc.libera.#weechat_)
|
||||
* _data_: data to send to buffer: if beginning by `/`, this will be executed as
|
||||
a command on buffer, otherwise text is sent as input of buffer
|
||||
|
||||
@@ -963,7 +964,7 @@ input core.weechat /help filter
|
||||
* Send message "hello!" to #weechat channel:
|
||||
|
||||
----
|
||||
input irc.freenode.#weechat hello!
|
||||
input irc.libera.#weechat hello!
|
||||
----
|
||||
|
||||
[[command_completion]]
|
||||
@@ -983,7 +984,7 @@ Syntax:
|
||||
Arguments:
|
||||
|
||||
* _buffer_: pointer (eg: "0x1234abcd") or full name of buffer (for example:
|
||||
_core.weechat_ or _irc.freenode.#weechat_)
|
||||
_core.weechat_ or _irc.libera.#weechat_)
|
||||
* _position_: position for completion in string (starts to 0);
|
||||
if the value is -1, the position is the length of _data_ (so the completion
|
||||
is made at the end of _data_)
|
||||
@@ -992,7 +993,7 @@ Arguments:
|
||||
|
||||
WeeChat replies with a hdata:
|
||||
|
||||
[width="100%",cols="3m,2,10",options="header"]
|
||||
[width="100%",cols="2m,3,14",options="header"]
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| context | string | Completion context: "null" (no completion), "command", "command_arg", "auto".
|
||||
@@ -1144,7 +1145,7 @@ Syntax:
|
||||
Arguments:
|
||||
|
||||
* _buffer_: pointer (eg: "0x1234abcd") or full name of buffer (for example:
|
||||
_core.weechat_ or _irc.freenode.#weechat_); name "*" can be used to
|
||||
_core.weechat_ or _irc.libera.#weechat_); name "*" can be used to
|
||||
specify all buffers
|
||||
* _options_: one of following keywords, separated by commas (default is
|
||||
_buffers,upgrade,buffer,nicklist_ for "*" and _buffer,nicklist_ for a buffer):
|
||||
@@ -1179,14 +1180,14 @@ sync core.buffer
|
||||
* Synchronize #weechat channel, without nicklist:
|
||||
|
||||
----
|
||||
sync irc.freenode.#weechat buffer
|
||||
sync irc.libera.#weechat buffer
|
||||
----
|
||||
|
||||
* Get general signals + all signals for #weechat channel:
|
||||
|
||||
----
|
||||
sync * buffers,upgrade
|
||||
sync irc.freenode.#weechat
|
||||
sync irc.libera.#weechat
|
||||
----
|
||||
|
||||
[[command_desync]]
|
||||
@@ -1209,7 +1210,7 @@ Syntax:
|
||||
Arguments:
|
||||
|
||||
* _buffer_: pointer (eg: "0x1234abcd") or full name of buffer (for example:
|
||||
_core.weechat_ or _irc.freenode.#weechat_); name "*" can be used to
|
||||
_core.weechat_ or _irc.libera.#weechat_); name "*" can be used to
|
||||
specify all buffers
|
||||
* _options_: one of following keywords, separated by commas (default is
|
||||
_buffers,upgrade,buffer,nicklist_ for "*" and _buffer,nicklist_ for a buffer);
|
||||
@@ -1217,7 +1218,7 @@ Arguments:
|
||||
|
||||
[NOTE]
|
||||
When using buffer "*", the other buffers synchronized (using a name) are kept. +
|
||||
So if you send: "sync *", then "sync irc.freenode.#weechat", then "desync *",
|
||||
So if you send: "sync *", then "sync irc.libera.#weechat", then "desync *",
|
||||
the updates on #weechat channel will still be sent by WeeChat (you must remove
|
||||
it explicitly to stop updates).
|
||||
|
||||
@@ -1235,13 +1236,13 @@ desync * buffers,upgrade,buffer,nicklist
|
||||
* Desynchronize nicklist for #weechat channel (keep buffer updates):
|
||||
|
||||
----
|
||||
desync irc.freenode.#weechat nicklist
|
||||
desync irc.libera.#weechat nicklist
|
||||
----
|
||||
|
||||
* Desynchronize #weechat channel:
|
||||
|
||||
----
|
||||
desync irc.freenode.#weechat
|
||||
desync irc.libera.#weechat
|
||||
----
|
||||
|
||||
[[command_test]]
|
||||
@@ -1260,24 +1261,24 @@ Syntax:
|
||||
|
||||
Returned objects (in this order):
|
||||
|
||||
[width="100%",cols="^3,3m,5m",options="header"]
|
||||
[width="80%",cols="1m,2,6m",options="header"]
|
||||
|===
|
||||
| Type | Type (in message) | Value
|
||||
| char | chr | 65 ("A")
|
||||
| integer | int | 123456
|
||||
| integer | int | -123456
|
||||
| long | lon | 1234567890
|
||||
| long | lon | -1234567890
|
||||
| string | str | "a string"
|
||||
| string | str | ""
|
||||
| string | str | NULL
|
||||
| buffer | buf | "buffer"
|
||||
| buffer | buf | NULL
|
||||
| pointer | ptr | 0x1234abcd
|
||||
| pointer | ptr | NULL
|
||||
| time | tim | 1321993456
|
||||
| array of strings | arr str | [ "abc", "de" ]
|
||||
| array of integers | arr int | [ 123, 456, 789 ]
|
||||
| Type | Description | Value
|
||||
| chr | char | 65 ("A")
|
||||
| int | integer | 123456
|
||||
| int | integer | -123456
|
||||
| lon | long | 1234567890
|
||||
| lon | long | -1234567890
|
||||
| str | string | "a string"
|
||||
| str | string | ""
|
||||
| str | string | NULL
|
||||
| buf | buffer | "buffer"
|
||||
| buf | buffer | NULL
|
||||
| ptr | pointer | 0x1234abcd
|
||||
| ptr | pointer | NULL
|
||||
| tim | time | 1321993456
|
||||
| arr str | array of strings | [ "abc", "de" ]
|
||||
| arr int | array of integers | [ 123, 456, 789 ]
|
||||
|===
|
||||
|
||||
[IMPORTANT]
|
||||
@@ -1379,7 +1380,8 @@ Messages are sent as binary data, using following format (with size in bytes):
|
||||
(including this field)
|
||||
* _compression_ (byte): flag:
|
||||
** _0x00_: following data is not compressed
|
||||
** _0x01_: following data is compressed with _zlib_
|
||||
** _0x01_: following data is compressed with https://zlib.net/[zlib ^↗^,window=_blank]
|
||||
** _0x02_: following data is compressed with https://facebook.github.io/zstd/[Zstandard ^↗^,window=_blank]
|
||||
* _id_ (string, 4 bytes + content): identifier sent by client (before command name); it can be
|
||||
empty (string with zero length and no content) if no identifier was given in
|
||||
command
|
||||
@@ -1389,8 +1391,10 @@ Messages are sent as binary data, using following format (with size in bytes):
|
||||
[[message_compression]]
|
||||
=== Compression
|
||||
|
||||
If flag _compression_ is equal to 0x01, then *all* data after is compressed
|
||||
with _zlib_, and therefore must be uncompressed before being processed.
|
||||
If flag _compression_ is equal to 0x01 or 0x02, then *all* data after is compressed
|
||||
with https://zlib.net/[zlib ^↗^,window=_blank] or
|
||||
https://facebook.github.io/zstd/[Zstandard ^↗^,window=_blank],
|
||||
and therefore must be uncompressed before being processed.
|
||||
|
||||
[[message_identifier]]
|
||||
=== Identifier
|
||||
@@ -1405,68 +1409,68 @@ WeeChat reserved identifiers:
|
||||
|
||||
[width="100%",cols="5m,5,3,4,7",options="header"]
|
||||
|===
|
||||
| Identifier | Received with _sync_ | Data sent |
|
||||
Description | Recommended action in client
|
||||
| Identifier | Received with _sync_ | Data sent
|
||||
| Description | Recommended action in client
|
||||
|
||||
| _buffer_opened | buffers / buffer | hdata: buffer |
|
||||
Buffer opened. | Open buffer.
|
||||
| _buffer_opened | buffers / buffer | hdata: buffer
|
||||
| Buffer opened. | Open buffer.
|
||||
|
||||
| _buffer_type_changed | buffers / buffer | hdata: buffer |
|
||||
Type of buffer changed. | Change type of buffer.
|
||||
| _buffer_type_changed | buffers / buffer | hdata: buffer
|
||||
| Type of buffer changed. | Change type of buffer.
|
||||
|
||||
| _buffer_moved | buffers / buffer | hdata: buffer |
|
||||
Buffer moved. | Move buffer.
|
||||
| _buffer_moved | buffers / buffer | hdata: buffer
|
||||
| Buffer moved. | Move buffer.
|
||||
|
||||
| _buffer_merged | buffers / buffer | hdata: buffer |
|
||||
Buffer merged. | Merge buffer.
|
||||
| _buffer_merged | buffers / buffer | hdata: buffer
|
||||
| Buffer merged. | Merge buffer.
|
||||
|
||||
| _buffer_unmerged | buffers / buffer | hdata: buffer |
|
||||
Buffer unmerged. | Unmerge buffer.
|
||||
| _buffer_unmerged | buffers / buffer | hdata: buffer
|
||||
| Buffer unmerged. | Unmerge buffer.
|
||||
|
||||
| _buffer_hidden | buffers / buffer | hdata: buffer |
|
||||
Buffer hidden. | Hide buffer.
|
||||
| _buffer_hidden | buffers / buffer | hdata: buffer
|
||||
| Buffer hidden. | Hide buffer.
|
||||
|
||||
| _buffer_unhidden | buffers / buffer | hdata: buffer |
|
||||
Buffer unhidden. | Unhide buffer.
|
||||
| _buffer_unhidden | buffers / buffer | hdata: buffer
|
||||
| Buffer unhidden. | Unhide buffer.
|
||||
|
||||
| _buffer_renamed | buffers / buffer | hdata: buffer |
|
||||
Buffer renamed. | Rename buffer.
|
||||
| _buffer_renamed | buffers / buffer | hdata: buffer
|
||||
| Buffer renamed. | Rename buffer.
|
||||
|
||||
| _buffer_title_changed | buffers / buffer | hdata: buffer |
|
||||
Title of buffer changed. | Change title of buffer.
|
||||
| _buffer_title_changed | buffers / buffer | hdata: buffer
|
||||
| Title of buffer changed. | Change title of buffer.
|
||||
|
||||
| _buffer_localvar_added | buffers / buffer | hdata: buffer |
|
||||
Local variable added. | Add local variable in buffer.
|
||||
| _buffer_localvar_added | buffers / buffer | hdata: buffer
|
||||
| Local variable added. | Add local variable in buffer.
|
||||
|
||||
| _buffer_localvar_changed | buffers / buffer | hdata: buffer |
|
||||
Local variable changed. | Change local variable in buffer.
|
||||
| _buffer_localvar_changed | buffers / buffer | hdata: buffer
|
||||
| Local variable changed. | Change local variable in buffer.
|
||||
|
||||
| _buffer_localvar_removed | buffers / buffer | hdata: buffer |
|
||||
Local variable removed. | Remove local variable from buffer.
|
||||
| _buffer_localvar_removed | buffers / buffer | hdata: buffer
|
||||
| Local variable removed. | Remove local variable from buffer.
|
||||
|
||||
| _buffer_closing | buffers / buffer | hdata: buffer |
|
||||
Buffer closing. | Close buffer.
|
||||
| _buffer_closing | buffers / buffer | hdata: buffer
|
||||
| Buffer closing. | Close buffer.
|
||||
|
||||
| _buffer_cleared | buffer | hdata: buffer |
|
||||
Buffer cleared. | Clear buffer.
|
||||
| _buffer_cleared | buffer | hdata: buffer
|
||||
| Buffer cleared. | Clear buffer.
|
||||
|
||||
| _buffer_line_added | buffer | hdata: line |
|
||||
Line added in buffer. | Display line in buffer.
|
||||
| _buffer_line_added | buffer | hdata: line
|
||||
| Line added in buffer. | Display line in buffer.
|
||||
|
||||
| _nicklist | nicklist | hdata: nicklist_item |
|
||||
Nicklist for a buffer. | Replace nicklist.
|
||||
| _nicklist | nicklist | hdata: nicklist_item
|
||||
| Nicklist for a buffer. | Replace nicklist.
|
||||
|
||||
| _nicklist_diff | nicklist | hdata: nicklist_item |
|
||||
Nicklist diffs for a buffer . | Update nicklist.
|
||||
| _nicklist_diff | nicklist | hdata: nicklist_item
|
||||
| Nicklist diffs for a buffer . | Update nicklist.
|
||||
|
||||
| _pong | (always) | string: ping arguments |
|
||||
Answer to a "ping". | Measure response time.
|
||||
| _pong | (always) | string: ping arguments
|
||||
| Answer to a "ping". | Measure response time.
|
||||
|
||||
| _upgrade | upgrade | (empty) |
|
||||
WeeChat is upgrading. | Desync from WeeChat (or disconnect).
|
||||
| _upgrade | upgrade | (empty)
|
||||
| WeeChat is upgrading. | Desync from WeeChat (or disconnect).
|
||||
|
||||
| _upgrade_ended | upgrade | (empty) |
|
||||
Upgrade of WeeChat done. | Sync/resync with WeeChat.
|
||||
| _upgrade_ended | upgrade | (empty)
|
||||
| Upgrade of WeeChat done. | Sync/resync with WeeChat.
|
||||
|===
|
||||
|
||||
[[message_buffer_opened]]
|
||||
@@ -1481,7 +1485,7 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| short_name | string | Short name (example: _#weechat_).
|
||||
| nicklist | integer | 1 if buffer has a nicklist, otherwise 0.
|
||||
| title | string | Buffer title.
|
||||
@@ -1490,8 +1494,8 @@ Data sent as hdata:
|
||||
| next_buffer | pointer | Pointer to next buffer.
|
||||
|===
|
||||
|
||||
Example: channel _#weechat_ joined on freenode, new buffer
|
||||
_irc.freenode.#weechat_:
|
||||
Example: channel _#weechat_ joined on libera, new buffer
|
||||
_irc.libera.#weechat_:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -1511,13 +1515,13 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x35a8a60']
|
||||
number: 3
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
short_name: None
|
||||
nicklist: 0
|
||||
title: None
|
||||
local_variables: {
|
||||
'plugin': 'irc',
|
||||
'name': 'freenode.#weechat',
|
||||
'name': 'libera.#weechat',
|
||||
}
|
||||
prev_buffer: '0x34e7400'
|
||||
next_buffer: '0x0'
|
||||
@@ -1535,12 +1539,12 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| prev_buffer | pointer | Pointer to previous buffer.
|
||||
| next_buffer | pointer | Pointer to next buffer.
|
||||
|===
|
||||
|
||||
Example: buffer _irc.freenode.#weechat_ moved to number 2:
|
||||
Example: buffer _irc.libera.#weechat_ moved to number 2:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -1556,7 +1560,7 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x34588c0']
|
||||
number: 2
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
prev_buffer: '0x347b9f0'
|
||||
next_buffer: '0x3471bc0'
|
||||
----
|
||||
@@ -1573,12 +1577,12 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| prev_buffer | pointer | Pointer to previous buffer.
|
||||
| next_buffer | pointer | Pointer to next buffer.
|
||||
|===
|
||||
|
||||
Example: buffer _irc.freenode.#weechat_ merged with buffer #2:
|
||||
Example: buffer _irc.libera.#weechat_ merged with buffer #2:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -1594,7 +1598,7 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4db4c00']
|
||||
number: 2
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
prev_buffer: '0x4cef9b0'
|
||||
next_buffer: '0x0'
|
||||
----
|
||||
@@ -1611,12 +1615,12 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| prev_buffer | pointer | Pointer to previous buffer.
|
||||
| next_buffer | pointer | Pointer to next buffer.
|
||||
|===
|
||||
|
||||
Example: buffer _irc.freenode.#weechat_ unmerged:
|
||||
Example: buffer _irc.libera.#weechat_ unmerged:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -1632,7 +1636,7 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4db4c00']
|
||||
number: 3
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
prev_buffer: '0x4cef9b0'
|
||||
next_buffer: '0x0'
|
||||
----
|
||||
@@ -1651,12 +1655,12 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| prev_buffer | pointer | Pointer to previous buffer.
|
||||
| next_buffer | pointer | Pointer to next buffer.
|
||||
|===
|
||||
|
||||
Example: buffer _irc.freenode.#weechat_ hidden:
|
||||
Example: buffer _irc.libera.#weechat_ hidden:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -1672,7 +1676,7 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4db4c00']
|
||||
number: 2
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
prev_buffer: '0x4cef9b0'
|
||||
next_buffer: '0x0'
|
||||
----
|
||||
@@ -1691,12 +1695,12 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| prev_buffer | pointer | Pointer to previous buffer.
|
||||
| next_buffer | pointer | Pointer to next buffer.
|
||||
|===
|
||||
|
||||
Example: buffer _irc.freenode.#weechat_ unhidden:
|
||||
Example: buffer _irc.libera.#weechat_ unhidden:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -1712,7 +1716,7 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4db4c00']
|
||||
number: 3
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
prev_buffer: '0x4cef9b0'
|
||||
next_buffer: '0x0'
|
||||
----
|
||||
@@ -1729,7 +1733,7 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| short_name | string | Short name (example: _#weechat_).
|
||||
| local_variables | hashtable | Local variables.
|
||||
|===
|
||||
@@ -1750,15 +1754,15 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4df7b80']
|
||||
number: 5
|
||||
full_name: 'irc.freenode.Flash2'
|
||||
full_name: 'irc.libera.Flash2'
|
||||
short_name: 'Flash2'
|
||||
local_variables: {
|
||||
'server': 'freenode',
|
||||
'server': 'libera',
|
||||
'plugin': 'irc',
|
||||
'type': 'private',
|
||||
'channel': 'FlashCode',
|
||||
'nick': 'test',
|
||||
'name': 'freenode.Flash2',
|
||||
'name': 'libera.Flash2',
|
||||
}
|
||||
----
|
||||
|
||||
@@ -1774,7 +1778,7 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| title | string | Buffer title.
|
||||
|===
|
||||
|
||||
@@ -1793,7 +1797,7 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4a715d0']
|
||||
number: 3
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
title: 'Welcome on #weechat! https://weechat.org/'
|
||||
----
|
||||
|
||||
@@ -1811,10 +1815,10 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
|===
|
||||
|
||||
Example: buffer _irc.freenode.#weechat_ has been cleared:
|
||||
Example: buffer _irc.libera.#weechat_ has been cleared:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -1828,7 +1832,7 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4a715d0']
|
||||
number: 3
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
----
|
||||
|
||||
[[message_buffer_type_changed]]
|
||||
@@ -1843,7 +1847,7 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| type | integer | Buffer type: 0 = formatted (default), 1 = free content.
|
||||
|===
|
||||
|
||||
@@ -1879,11 +1883,11 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| local_variables | hashtable | Local variables.
|
||||
|===
|
||||
|
||||
Example: local variable _test_ added in buffer _irc.freenode.#weechat_:
|
||||
Example: local variable _test_ added in buffer _irc.libera.#weechat_:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -1898,15 +1902,15 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4a73de0']
|
||||
number: 3
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
local_variables: {
|
||||
'server': 'freenode',
|
||||
'server': 'libera',
|
||||
'test': 'value',
|
||||
'plugin': 'irc',
|
||||
'type': 'channel',
|
||||
'channel': '#weechat',
|
||||
'nick': 'test',
|
||||
'name': 'freenode.#weechat',
|
||||
'name': 'libera.#weechat',
|
||||
}
|
||||
----
|
||||
|
||||
@@ -1922,11 +1926,11 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| local_variables | hashtable | Local variables.
|
||||
|===
|
||||
|
||||
Example: local variable _test_ updated in buffer _irc.freenode.#weechat_:
|
||||
Example: local variable _test_ updated in buffer _irc.libera.#weechat_:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -1941,7 +1945,7 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4a73de0']
|
||||
number: 3
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
local_variables: {
|
||||
'server': 'local',
|
||||
'test': 'value2',
|
||||
@@ -1949,7 +1953,7 @@ hda:
|
||||
'type': 'channel',
|
||||
'channel': '#weechat',
|
||||
'nick': 'test',
|
||||
'name': 'freenode.#weechat',
|
||||
'name': 'libera.#weechat',
|
||||
}
|
||||
----
|
||||
|
||||
@@ -1965,11 +1969,11 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
| local_variables | hashtable | Local variables.
|
||||
|===
|
||||
|
||||
Example: local variable _test_ removed from buffer _irc.freenode.#weechat_:
|
||||
Example: local variable _test_ removed from buffer _irc.libera.#weechat_:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -1984,14 +1988,14 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4a73de0']
|
||||
number: 3
|
||||
full_name: 'irc.freenode.#prout'
|
||||
full_name: 'irc.libera.#prout'
|
||||
local_variables: {
|
||||
'server': 'local',
|
||||
'plugin': 'irc',
|
||||
'type': 'channel',
|
||||
'channel': '#weechat',
|
||||
'nick': 'test',
|
||||
'name': 'freenode.#weechat',
|
||||
'name': 'libera.#weechat',
|
||||
}
|
||||
----
|
||||
|
||||
@@ -2017,7 +2021,7 @@ Data sent as hdata:
|
||||
| message | string | Message.
|
||||
|===
|
||||
|
||||
Example: new message _hello!_ from nick _FlashCode_ on buffer _irc.freenode.#weechat_:
|
||||
Example: new message _hello!_ from nick _FlashCode_ on buffer _irc.libera.#weechat_:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -2066,10 +2070,10 @@ Data sent as hdata:
|
||||
|===
|
||||
| Name | Type | Description
|
||||
| number | integer | Buffer number (≥ 1).
|
||||
| full_name | string | Full name (example: _irc.freenode.#weechat_).
|
||||
| full_name | string | Full name (example: _irc.libera.#weechat_).
|
||||
|===
|
||||
|
||||
Example: buffer _irc.freenode.#weechat_ is being closed by WeeChat:
|
||||
Example: buffer _irc.libera.#weechat_ is being closed by WeeChat:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -2083,7 +2087,7 @@ hda:
|
||||
item 1:
|
||||
__path: ['0x4a715d0']
|
||||
number: 3
|
||||
full_name: 'irc.freenode.#weechat'
|
||||
full_name: 'irc.libera.#weechat'
|
||||
----
|
||||
|
||||
[[message_nicklist]]
|
||||
@@ -2109,7 +2113,7 @@ Data sent as hdata:
|
||||
| prefix_color | string | Prefix color (only for a nick).
|
||||
|===
|
||||
|
||||
Example: nicklist for buffer _irc.freenode.#weechat_:
|
||||
Example: nicklist for buffer _irc.libera.#weechat_:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
@@ -2331,7 +2335,7 @@ commands sent on startup after the _init_.
|
||||
|
||||
Objects are identified by 3 letters, called _type_. Following types are used:
|
||||
|
||||
[width="100%",cols="^2m,5,10",options="header"]
|
||||
[width="100%",cols="1m,2,8",options="header"]
|
||||
|===
|
||||
| Type | Value | Length
|
||||
| chr | Signed char | 1 byte
|
||||
@@ -2529,7 +2533,7 @@ objects, and then set of objects (path with pointers, then objects).
|
||||
* _values_: list of values (number of values is number of keys returned for
|
||||
hdata)
|
||||
|
||||
Example of hdata with two buffers (weechat core and freenode server) and two
|
||||
Example of hdata with two buffers (weechat core and libera server) and two
|
||||
keys (_number_ and _full_name_):
|
||||
|
||||
....
|
||||
@@ -2537,10 +2541,10 @@ keys (_number_ and _full_name_):
|
||||
hdata buffer:gui_buffers(*) number,full_name
|
||||
|
||||
# response
|
||||
┌────────┬──────────────────────────┬───╥─────────┬───┬──────────────╥─────────┬───┬─────────────────────┐
|
||||
│ buffer │ number:int,full_name:str │ 2 ║ 0x12345 │ 1 │ core.weechat ║ 0x6789a │ 2 │ irc.server.freenode │
|
||||
└────────┴──────────────────────────┴───╨─────────┴───┴──────────────╨─────────┴───┴─────────────────────┘
|
||||
└──────┘ └────────────────────────┘ └─┘ └──────────────────────────┘ └─────────────────────────────────┘
|
||||
┌────────┬──────────────────────────┬───╥─────────┬───┬──────────────╥─────────┬───┬───────────────────┐
|
||||
│ buffer │ number:int,full_name:str │ 2 ║ 0x12345 │ 1 │ core.weechat ║ 0x6789a │ 2 │ irc.server.libera │
|
||||
└────────┴──────────────────────────┴───╨─────────┴───┴──────────────╨─────────┴───┴───────────────────┘
|
||||
└──────┘ └────────────────────────┘ └─┘ └──────────────────────────┘ └───────────────────────────────┘
|
||||
h-path keys count buffer 1 buffer 2
|
||||
....
|
||||
|
||||
@@ -2682,7 +2686,7 @@ An item is:
|
||||
** _type_: type of variable (_int_, _str_, ...)
|
||||
** _value_: value of variable
|
||||
|
||||
Example of infolist with two buffers (weechat core and freenode server):
|
||||
Example of infolist with two buffers (weechat core and libera server):
|
||||
|
||||
....
|
||||
# command
|
||||
|
||||
+258
-192
@@ -11,8 +11,8 @@
|
||||
|
||||
This manual documents WeeChat chat client, it is part of WeeChat.
|
||||
|
||||
Latest version of this document can be found on this page:
|
||||
https://weechat.org/doc
|
||||
Latest version of this document can be found on
|
||||
https://weechat.org/doc/[this page ^↗^,window=_blank].
|
||||
|
||||
|
||||
[[introduction]]
|
||||
@@ -61,17 +61,22 @@ function, this can crash WeeChat. +
|
||||
If something must be run in background, the function `+hook_process+` can be used.
|
||||
See example in the chapter <<hook_process,Run a background process>>
|
||||
and the documentation on the function `+hook_process+` in the
|
||||
link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference].
|
||||
link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference ^↗^,window=_blank].
|
||||
|
||||
[[languages_specificities]]
|
||||
=== Languages specificities
|
||||
|
||||
[[language_python]]
|
||||
==== Python
|
||||
|
||||
[[python_module]]
|
||||
===== Module
|
||||
|
||||
WeeChat defines a `weechat` module which must be imported with `import weechat`.
|
||||
WeeChat defines a `weechat` module which must be imported with `import weechat`. +
|
||||
A Python stub for WeeChat API is available in the repository:
|
||||
https://raw.githubusercontent.com/weechat/weechat/master/src/plugins/python/weechat.pyi[weechat.pyi ^↗^,window=_blank].
|
||||
|
||||
[[python_functions]]
|
||||
===== Functions
|
||||
|
||||
Functions are called with `+weechat.xxx(arg1, arg2, ...)+`.
|
||||
@@ -79,6 +84,7 @@ Functions are called with `+weechat.xxx(arg1, arg2, ...)+`.
|
||||
Functions `+print*+` are called `+prnt*+` in python (because `print` was a
|
||||
reserved keyword in Python 2).
|
||||
|
||||
[[python_strings]]
|
||||
===== Strings received in callbacks
|
||||
|
||||
In Python 3 and with WeeChat ≥ 2.7, the strings received in callbacks have type
|
||||
@@ -93,38 +99,38 @@ receive a string of type `str` or `bytes` (this list is not exhaustive):
|
||||
|===
|
||||
| API function | Arguments | Examples | Description
|
||||
|
||||
| hook_modifier |
|
||||
irc_in_yyy |
|
||||
pass:[irc_in_privmsg] +
|
||||
pass:[irc_in_notice] |
|
||||
A message received in IRC plugin, before it is decoded to UTF-8 (used
|
||||
| hook_modifier
|
||||
| irc_in_yyy
|
||||
| pass:[irc_in_privmsg] +
|
||||
pass:[irc_in_notice]
|
||||
| A message received in IRC plugin, before it is decoded to UTF-8 (used
|
||||
internally). +
|
||||
+
|
||||
It is recommended to use modifier `+irc_in2_yyy+` instead, the string received
|
||||
is always UTF-8 valid. +
|
||||
See function `+hook_modifier+` in the
|
||||
link:weechat_plugin_api.en.html#_hook_modifier[WeeChat plugin API reference].
|
||||
link:weechat_plugin_api.en.html#_hook_modifier[WeeChat plugin API reference ^↗^,window=_blank].
|
||||
|
||||
| hook_signal |
|
||||
xxx,irc_out_yyy +
|
||||
xxx,irc_outtags_yyy |
|
||||
pass:[*,irc_out_privmsg] +
|
||||
| hook_signal
|
||||
| xxx,irc_out_yyy +
|
||||
xxx,irc_outtags_yyy
|
||||
| pass:[*,irc_out_privmsg] +
|
||||
pass:[*,irc_out_notice] +
|
||||
pass:[*,irc_outtags_privmsg] +
|
||||
pass:[*,irc_outtags_notice] |
|
||||
A message sent by IRC plugin, after it is encoded to the `encode` charset
|
||||
pass:[*,irc_outtags_notice]
|
||||
| A message sent by IRC plugin, after it is encoded to the `encode` charset
|
||||
defined by the user (if different from the default `UTF-8`). +
|
||||
+
|
||||
It is recommended to use signal `+xxx,irc_out1_yyy+` instead, the string received
|
||||
is always UTF-8 valid. +
|
||||
See function `+hook_signal+` in the
|
||||
link:weechat_plugin_api.en.html#_hook_signal[WeeChat plugin API reference].
|
||||
link:weechat_plugin_api.en.html#_hook_signal[WeeChat plugin API reference ^↗^,window=_blank].
|
||||
|
||||
| hook_process +
|
||||
hook_process_hashtable |
|
||||
- |
|
||||
- |
|
||||
Output of the command, sent to the callback, can contain invalid UTF-8 data.
|
||||
hook_process_hashtable
|
||||
| -
|
||||
| -
|
||||
| Output of the command, sent to the callback, can contain invalid UTF-8 data.
|
||||
|
||||
|===
|
||||
|
||||
@@ -132,18 +138,23 @@ In Python 2, which is now deprecated and should not be used any more, the
|
||||
strings sent to callbacks are always of type `str`, and may contain invalid
|
||||
UTF-8 data, in the cases mentioned above.
|
||||
|
||||
[[language_perl]]
|
||||
==== Perl
|
||||
|
||||
[[perl_functions]]
|
||||
===== Functions
|
||||
|
||||
Functions are called with `+weechat::xxx(arg1, arg2, ...);+`.
|
||||
|
||||
[[language_ruby]]
|
||||
==== Ruby
|
||||
|
||||
[[ruby_init]]
|
||||
===== Initialization
|
||||
|
||||
You have to define _weechat_init_ and call _register_ inside.
|
||||
|
||||
[[ruby_functions]]
|
||||
===== Functions
|
||||
|
||||
Functions are called with `+Weechat.xxx(arg1, arg2, ...)+`.
|
||||
@@ -168,20 +179,32 @@ Weechat.bar_new("name", "off", "0", "window", "", "left", "vertical", "vertical"
|
||||
["default", "default", "default", "default"], "0", "items")
|
||||
----
|
||||
|
||||
[[language_lua]]
|
||||
==== Lua
|
||||
|
||||
[[lua_functions]]
|
||||
===== Functions
|
||||
|
||||
Functions are called with `+weechat.xxx(arg1, arg2, ...)+`.
|
||||
|
||||
[[language_tcl]]
|
||||
==== Tcl
|
||||
|
||||
[[tcl_functions]]
|
||||
===== Functions
|
||||
|
||||
Functions are called with `+weechat::xxx arg1 arg2 ...+`.
|
||||
|
||||
Since Tcl only has string types, there's no null type to pass as an argument
|
||||
when a function accepts null values. To overcome this you can use the constant
|
||||
`$::weechat::WEECHAT_NULL` which acts as a null value. This constant is defined
|
||||
as `\uFFFF\uFFFF\uFFFFWEECHAT_NULL\uFFFF\uFFFF\uFFFF`, so it's very unlikely to
|
||||
appear unintentionally.
|
||||
|
||||
[[language_guile]]
|
||||
==== Guile (Scheme)
|
||||
|
||||
[[guile_functions]]
|
||||
===== Functions
|
||||
|
||||
Functions are called with `+(weechat:xxx arg1 arg2 ...)+`.
|
||||
@@ -194,14 +217,18 @@ arguments in Guile:
|
||||
* config_new_option
|
||||
* bar_new
|
||||
|
||||
[[language_javascript]]
|
||||
==== JavaScript
|
||||
|
||||
[[javascript_functions]]
|
||||
===== Functions
|
||||
|
||||
Functions are called with `+weechat.xxx(arg1, arg2, ...);+`.
|
||||
|
||||
[[language_php]]
|
||||
==== PHP
|
||||
|
||||
[[php_functions]]
|
||||
===== Functions
|
||||
|
||||
Functions are called with `+weechat_xxx(arg1, arg2, ...);+`.
|
||||
@@ -212,11 +239,11 @@ Functions are called with `+weechat_xxx(arg1, arg2, ...);+`.
|
||||
All WeeChat scripts must "register" themselves to WeeChat, and this must be
|
||||
first WeeChat function called in script.
|
||||
|
||||
Prototype:
|
||||
Prototype (Python):
|
||||
|
||||
[source,python]
|
||||
----
|
||||
weechat.register(name, author, version, license, description, shutdown_function, charset)
|
||||
def register(name: str, author: str, version: str, license: str, description: str, shutdown_function: str, charset: str) -> int: ...
|
||||
----
|
||||
|
||||
Arguments:
|
||||
@@ -337,7 +364,7 @@ WeeChat is starting.
|
||||
For example with Python:
|
||||
|
||||
----
|
||||
$ cd ~/.weechat/python/autoload
|
||||
$ cd ~/.local/share/weechat/python/autoload
|
||||
$ ln -s ../script.py
|
||||
----
|
||||
|
||||
@@ -349,7 +376,7 @@ directory is automatically created.
|
||||
== Differences with C API
|
||||
|
||||
Script API is almost the same as C plugin API.
|
||||
You can look at link:weechat_plugin_api.en.html[WeeChat plugin API reference]
|
||||
You can look at link:weechat_plugin_api.en.html[WeeChat plugin API reference ^↗^,window=_blank]
|
||||
for detail about each function in API: prototype, arguments, return values, examples.
|
||||
|
||||
It's important to make difference between a _plugin_ and a _script_: a
|
||||
@@ -516,25 +543,25 @@ weechat_hook_timer(1000, 0, 1, $timer_cb, 'test');
|
||||
== Script API
|
||||
|
||||
For more information about functions in API, please read the
|
||||
link:weechat_plugin_api.en.html[WeeChat plugin API reference].
|
||||
link:weechat_plugin_api.en.html[WeeChat plugin API reference ^↗^,window=_blank].
|
||||
|
||||
[[script_api_functions]]
|
||||
=== Functions
|
||||
|
||||
List of functions in script API:
|
||||
|
||||
[width="100%",cols="1,3",options="header"]
|
||||
[width="100%",cols="1,5",options="header"]
|
||||
|===
|
||||
| Category | Functions
|
||||
|
||||
| general |
|
||||
register
|
||||
| general
|
||||
| register
|
||||
|
||||
| plugins |
|
||||
plugin_get_name
|
||||
| plugins
|
||||
| plugin_get_name
|
||||
|
||||
| strings |
|
||||
charset_set +
|
||||
| strings
|
||||
| charset_set +
|
||||
iconv_to_internal +
|
||||
iconv_from_internal +
|
||||
gettext +
|
||||
@@ -553,13 +580,13 @@ List of functions in script API:
|
||||
string_eval_expression +
|
||||
string_eval_path_home
|
||||
|
||||
| directories |
|
||||
mkdir_home +
|
||||
| directories
|
||||
| mkdir_home +
|
||||
mkdir +
|
||||
mkdir_parents
|
||||
|
||||
| sorted lists |
|
||||
list_new +
|
||||
| sorted lists
|
||||
| list_new +
|
||||
list_add +
|
||||
list_search +
|
||||
list_search_pos +
|
||||
@@ -575,8 +602,8 @@ List of functions in script API:
|
||||
list_remove_all +
|
||||
list_free
|
||||
|
||||
| configuration files |
|
||||
config_new +
|
||||
| configuration files
|
||||
| config_new +
|
||||
config_new_section +
|
||||
config_search_section +
|
||||
config_new_option +
|
||||
@@ -613,20 +640,21 @@ List of functions in script API:
|
||||
config_set_desc_plugin +
|
||||
config_unset_plugin
|
||||
|
||||
| key bindings |
|
||||
key_bind +
|
||||
| key bindings
|
||||
| key_bind +
|
||||
key_unbind
|
||||
|
||||
| display |
|
||||
prefix +
|
||||
| display
|
||||
| prefix +
|
||||
color +
|
||||
print (for python: prnt) +
|
||||
print_date_tags (for python: prnt_date_tags) +
|
||||
print_y (for python: prnt_y) +
|
||||
print_y_date_tags (for python: prnt_y_date_tags) +
|
||||
log_print
|
||||
|
||||
| hooks |
|
||||
hook_command +
|
||||
| hooks
|
||||
| hook_command +
|
||||
hook_command_run +
|
||||
hook_timer +
|
||||
hook_fd +
|
||||
@@ -651,8 +679,9 @@ List of functions in script API:
|
||||
unhook +
|
||||
unhook_all
|
||||
|
||||
| buffers |
|
||||
buffer_new +
|
||||
| buffers
|
||||
| buffer_new +
|
||||
buffer_new_props +
|
||||
current_buffer +
|
||||
buffer_search +
|
||||
buffer_search_main +
|
||||
@@ -667,16 +696,16 @@ List of functions in script API:
|
||||
buffer_string_replace_local_var +
|
||||
buffer_match_list
|
||||
|
||||
| windows |
|
||||
current_window +
|
||||
| windows
|
||||
| current_window +
|
||||
window_search_with_buffer +
|
||||
window_get_integer +
|
||||
window_get_string +
|
||||
window_get_pointer +
|
||||
window_set_title
|
||||
|
||||
| nicklist |
|
||||
nicklist_add_group +
|
||||
| nicklist
|
||||
| nicklist_add_group +
|
||||
nicklist_search_group +
|
||||
nicklist_add_nick +
|
||||
nicklist_search_nick +
|
||||
@@ -692,8 +721,8 @@ List of functions in script API:
|
||||
nicklist_nick_get_pointer +
|
||||
nicklist_nick_set
|
||||
|
||||
| bars |
|
||||
bar_item_search +
|
||||
| bars
|
||||
| bar_item_search +
|
||||
bar_item_new +
|
||||
bar_item_update +
|
||||
bar_item_remove +
|
||||
@@ -703,23 +732,23 @@ List of functions in script API:
|
||||
bar_update +
|
||||
bar_remove
|
||||
|
||||
| commands |
|
||||
command +
|
||||
| commands
|
||||
| command +
|
||||
command_options
|
||||
|
||||
| completion |
|
||||
completion_new +
|
||||
| completion
|
||||
| completion_new +
|
||||
completion_search +
|
||||
completion_get_string +
|
||||
completion_list_add +
|
||||
completion_free
|
||||
|
||||
| infos |
|
||||
info_get +
|
||||
| infos
|
||||
| info_get +
|
||||
info_get_hashtable
|
||||
|
||||
| infolists |
|
||||
infolist_new +
|
||||
| infolists
|
||||
| infolist_new +
|
||||
infolist_new_item +
|
||||
infolist_new_var_integer +
|
||||
infolist_new_var_string +
|
||||
@@ -737,8 +766,8 @@ List of functions in script API:
|
||||
infolist_time +
|
||||
infolist_free
|
||||
|
||||
| hdata |
|
||||
hdata_get +
|
||||
| hdata
|
||||
| hdata_get +
|
||||
hdata_get_var_offset +
|
||||
hdata_get_var_type_string +
|
||||
hdata_get_var_array_size +
|
||||
@@ -759,8 +788,8 @@ List of functions in script API:
|
||||
hdata_update +
|
||||
hdata_get_string
|
||||
|
||||
| upgrade |
|
||||
upgrade_new +
|
||||
| upgrade
|
||||
| upgrade_new +
|
||||
upgrade_write_object +
|
||||
upgrade_read +
|
||||
upgrade_close
|
||||
@@ -771,63 +800,63 @@ List of functions in script API:
|
||||
|
||||
List of constants in script API:
|
||||
|
||||
[width="100%",cols="1,3",options="header"]
|
||||
[width="100%",cols="1,5",options="header"]
|
||||
|===
|
||||
| Category | Constants
|
||||
|
||||
| return codes |
|
||||
WEECHAT_RC_OK +
|
||||
WEECHAT_RC_OK_EAT +
|
||||
WEECHAT_RC_ERROR
|
||||
| return codes
|
||||
| `WEECHAT_RC_OK` (integer) +
|
||||
`WEECHAT_RC_OK_EAT` (integer) +
|
||||
`WEECHAT_RC_ERROR` (integer)
|
||||
|
||||
| configuration files |
|
||||
WEECHAT_CONFIG_READ_OK +
|
||||
WEECHAT_CONFIG_READ_MEMORY_ERROR +
|
||||
WEECHAT_CONFIG_READ_FILE_NOT_FOUND +
|
||||
WEECHAT_CONFIG_WRITE_OK +
|
||||
WEECHAT_CONFIG_WRITE_ERROR +
|
||||
WEECHAT_CONFIG_WRITE_MEMORY_ERROR +
|
||||
WEECHAT_CONFIG_OPTION_SET_OK_CHANGED +
|
||||
WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE +
|
||||
WEECHAT_CONFIG_OPTION_SET_ERROR +
|
||||
WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND +
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET +
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_RESET +
|
||||
WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED +
|
||||
WEECHAT_CONFIG_OPTION_UNSET_ERROR
|
||||
| configuration files
|
||||
| `WEECHAT_CONFIG_READ_OK` (integer) +
|
||||
`WEECHAT_CONFIG_READ_MEMORY_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_READ_FILE_NOT_FOUND` (integer) +
|
||||
`WEECHAT_CONFIG_WRITE_OK` (integer) +
|
||||
`WEECHAT_CONFIG_WRITE_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_WRITE_MEMORY_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_OK_CHANGED` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_ERROR` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_OK_RESET` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED` (integer) +
|
||||
`WEECHAT_CONFIG_OPTION_UNSET_ERROR` (integer)
|
||||
|
||||
| sorted lists |
|
||||
WEECHAT_LIST_POS_SORT +
|
||||
WEECHAT_LIST_POS_BEGINNING +
|
||||
WEECHAT_LIST_POS_END
|
||||
| sorted lists
|
||||
| `WEECHAT_LIST_POS_SORT` (string) +
|
||||
`WEECHAT_LIST_POS_BEGINNING` (string) +
|
||||
`WEECHAT_LIST_POS_END` (string)
|
||||
|
||||
| hotlist |
|
||||
WEECHAT_HOTLIST_LOW +
|
||||
WEECHAT_HOTLIST_MESSAGE +
|
||||
WEECHAT_HOTLIST_PRIVATE +
|
||||
WEECHAT_HOTLIST_HIGHLIGHT
|
||||
| hotlist
|
||||
| `WEECHAT_HOTLIST_LOW` (string) +
|
||||
`WEECHAT_HOTLIST_MESSAGE` (string) +
|
||||
`WEECHAT_HOTLIST_PRIVATE` (string) +
|
||||
`WEECHAT_HOTLIST_HIGHLIGHT` (string)
|
||||
|
||||
| hook process |
|
||||
WEECHAT_HOOK_PROCESS_RUNNING +
|
||||
WEECHAT_HOOK_PROCESS_ERROR
|
||||
| hook process
|
||||
| `WEECHAT_HOOK_PROCESS_RUNNING` (integer) +
|
||||
`WEECHAT_HOOK_PROCESS_ERROR` (integer)
|
||||
|
||||
| hook connect |
|
||||
WEECHAT_HOOK_CONNECT_OK +
|
||||
WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND +
|
||||
WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND +
|
||||
WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED +
|
||||
WEECHAT_HOOK_CONNECT_PROXY_ERROR +
|
||||
WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR +
|
||||
WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR +
|
||||
WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR +
|
||||
WEECHAT_HOOK_CONNECT_MEMORY_ERROR +
|
||||
WEECHAT_HOOK_CONNECT_TIMEOUT +
|
||||
WEECHAT_HOOK_CONNECT_SOCKET_ERROR
|
||||
| hook connect
|
||||
| `WEECHAT_HOOK_CONNECT_OK` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_PROXY_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_MEMORY_ERROR` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_TIMEOUT` (integer) +
|
||||
`WEECHAT_HOOK_CONNECT_SOCKET_ERROR` (integer)
|
||||
|
||||
| hook signal |
|
||||
WEECHAT_HOOK_SIGNAL_STRING +
|
||||
WEECHAT_HOOK_SIGNAL_INT +
|
||||
WEECHAT_HOOK_SIGNAL_POINTER
|
||||
| hook signal
|
||||
| `WEECHAT_HOOK_SIGNAL_STRING` (string) +
|
||||
`WEECHAT_HOOK_SIGNAL_INT` (string) +
|
||||
`WEECHAT_HOOK_SIGNAL_POINTER` (string)
|
||||
|===
|
||||
|
||||
[[common_tasks]]
|
||||
@@ -835,7 +864,7 @@ List of constants in script API:
|
||||
|
||||
This chapter shows some common tasks, with examples.
|
||||
Only partial things in API are used here, for full reference, see the
|
||||
link:weechat_plugin_api.en.html[WeeChat plugin API reference].
|
||||
link:weechat_plugin_api.en.html[WeeChat plugin API reference ^↗^,window=_blank].
|
||||
|
||||
[[buffers]]
|
||||
=== Buffers
|
||||
@@ -854,7 +883,7 @@ Examples:
|
||||
weechat.prnt("", "hello")
|
||||
|
||||
# display "hello" on core buffer, but do not write it to log file
|
||||
# (version >= 0.3.3 only)
|
||||
# (version ≥ 0.3.3 only)
|
||||
weechat.prnt_date_tags("", 0, "no_log", "hello")
|
||||
|
||||
# display prefix "==>" and message "hello" on current buffer
|
||||
@@ -868,13 +897,13 @@ weechat.prnt("", "%swrong arguments" % weechat.prefix("error"))
|
||||
weechat.prnt("", "text %syellow on blue" % weechat.color("yellow,blue"))
|
||||
|
||||
# search buffer and display message
|
||||
# (full name of buffer is plugin.name, for example: "irc.freenode.#weechat")
|
||||
buffer = weechat.buffer_search("irc", "freenode.#weechat")
|
||||
# (full name of buffer is plugin.name, for example: "irc.libera.#weechat")
|
||||
buffer = weechat.buffer_search("irc", "libera.#weechat")
|
||||
weechat.prnt(buffer, "message on #weechat channel")
|
||||
|
||||
# other solution to find an IRC buffer (better)
|
||||
# (note that server and channel are separated by a comma)
|
||||
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
|
||||
buffer = weechat.info_get("irc_buffer", "libera,#weechat")
|
||||
weechat.prnt(buffer, "message on #weechat channel")
|
||||
----
|
||||
|
||||
@@ -895,7 +924,7 @@ Examples:
|
||||
weechat.command("", "/help")
|
||||
|
||||
# send "hello" to #weechat IRC channel (users on channel will see message)
|
||||
buffer = weechat.info_get("irc_buffer", "freenode,#weechat")
|
||||
buffer = weechat.info_get("irc_buffer", "libera,#weechat")
|
||||
weechat.command(buffer, "hello")
|
||||
----
|
||||
|
||||
@@ -1028,26 +1057,53 @@ weechat.hook_timer(60 * 1000, 60, 0, "timer_cb", "")
|
||||
You can run a background process with `+hook_process+`. Your callback will be
|
||||
called when data is ready. It may be called many times.
|
||||
|
||||
For the last call to your callback, _rc_ is set to 0 or positive value, it's
|
||||
return code of command.
|
||||
For the last call to your callback, _return_code_ is set to 0 or positive value,
|
||||
it is the return code of command.
|
||||
|
||||
Example:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
process_output = ""
|
||||
|
||||
def my_process_cb(data, command, rc, out, err):
|
||||
global process_output
|
||||
if out != "":
|
||||
process_output += out
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", process_output)
|
||||
def my_process_cb(data, command, return_code, out, err):
|
||||
if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
|
||||
weechat.prnt("", "Error with command '%s'" % command)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "return_code = %d" % return_code)
|
||||
if out:
|
||||
weechat.prnt("", "stdout: %s" % out)
|
||||
if err:
|
||||
weechat.prnt("", "stderr: %s" % err)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process("/bin/ls -l /etc", 10 * 1000, "my_process_cb", "")
|
||||
----
|
||||
|
||||
You can also call directly a script function that does something blocking,
|
||||
instead of an external command:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
def get_status(data):
|
||||
# do something blocking...
|
||||
# ...
|
||||
return "this is the result"
|
||||
|
||||
def my_process_cb(data, command, return_code, out, err):
|
||||
if return_code == weechat.WEECHAT_HOOK_PROCESS_ERROR:
|
||||
weechat.prnt("", "Error with command '%s'" % command)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "return_code = %d" % return_code)
|
||||
if out:
|
||||
weechat.prnt("", "stdout: %s" % out)
|
||||
if err:
|
||||
weechat.prnt("", "stderr: %s" % err)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
hook = weechat.hook_process("func:get_status", 5000, "my_process_cb", "")
|
||||
----
|
||||
|
||||
[[url_transfer]]
|
||||
==== URL transfer
|
||||
|
||||
@@ -1061,15 +1117,15 @@ in callback (standard output of process):
|
||||
|
||||
[source,python]
|
||||
----
|
||||
# Display current stable version of WeeChat.
|
||||
weechat_version = ""
|
||||
# Display latest stable version of WeeChat.
|
||||
weechat_latest_version = ""
|
||||
|
||||
def weechat_process_cb(data, command, rc, out, err):
|
||||
global weechat_version
|
||||
if out != "":
|
||||
weechat_version += out
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", "Current WeeChat stable is: %s" % weechat_version)
|
||||
def weechat_process_cb(data, command, return_code, out, err):
|
||||
global weechat_latest_version
|
||||
if out:
|
||||
weechat_latest_version += out
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "Latest WeeChat version: %s" % weechat_latest_version)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process("url:https://weechat.org/dev/info/stable/",
|
||||
@@ -1077,16 +1133,17 @@ weechat.hook_process("url:https://weechat.org/dev/info/stable/",
|
||||
----
|
||||
|
||||
[TIP]
|
||||
All infos available about WeeChat are on page https://weechat.org/dev/info
|
||||
All infos available about WeeChat are on
|
||||
https://weechat.org/dev/info/[this page ^↗^,window=_blank].
|
||||
|
||||
Example of URL transfer with an option: download latest WeeChat development
|
||||
package in file _/tmp/weechat-devel.tar.gz_:
|
||||
|
||||
[source,python]
|
||||
----
|
||||
def my_process_cb(data, command, rc, out, err):
|
||||
if int(rc) >= 0:
|
||||
weechat.prnt("", "End of transfer (rc=%s)" % rc)
|
||||
def my_process_cb(data, command, return_code, out, err):
|
||||
if return_code >= 0:
|
||||
weechat.prnt("", "End of transfer (return code = %d)" % return_code)
|
||||
return weechat.WEECHAT_RC_OK
|
||||
|
||||
weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.tar.gz",
|
||||
@@ -1096,7 +1153,7 @@ weechat.hook_process_hashtable("url:https://weechat.org/files/src/weechat-devel.
|
||||
|
||||
For more information about URL transfer and available options, see functions
|
||||
`+hook_process+` and `+hook_process_hashtable+` in
|
||||
link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference].
|
||||
link:weechat_plugin_api.en.html#_hook_process[WeeChat plugin API reference ^↗^,window=_blank].
|
||||
|
||||
[[config_options]]
|
||||
=== Config / options
|
||||
@@ -1196,7 +1253,7 @@ xxx,irc_raw_in2_yyy::
|
||||
[source,python]
|
||||
----
|
||||
def join_cb(data, signal, signal_data):
|
||||
# signal is for example: "freenode,irc_in2_join"
|
||||
# signal is for example: "libera,irc_in2_join"
|
||||
# signal_data is IRC message, for example: ":nick!user@host JOIN :#channel"
|
||||
server = signal.split(",")[0]
|
||||
msg = weechat.info_get_hashtable("irc_message_parse", {"message": signal_data})
|
||||
@@ -1248,71 +1305,80 @@ The result is a hashtable with following keys
|
||||
(the example values are built with this message:
|
||||
`+@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!+`):
|
||||
|
||||
[width="100%",cols="1,^2,10,8",options="header"]
|
||||
[width="100%",cols="3,^2,10,7",options="header"]
|
||||
|===
|
||||
| Key | WeeChat version | Description | Example
|
||||
| Key | Since WeeChat ^(1)^ | Description | Example
|
||||
|
||||
| tags | ≥ 0.4.0 |
|
||||
The tags in message (can be empty). |
|
||||
`+time=2015-06-27T16:40:35.000Z+`
|
||||
| tags | 0.4.0
|
||||
| The tags in message (can be empty).
|
||||
| `+time=2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| message_without_tags | ≥ 0.4.0 |
|
||||
The message without the tags (the same as message if there are no tags). |
|
||||
`+:nick!user@host PRIVMSG #weechat :hello!+`
|
||||
| tag_xxx | 3.3
|
||||
| Unescaped value of tag "xxx" (one key per tag).
|
||||
| `+2015-06-27T16:40:35.000Z+`
|
||||
|
||||
| nick | ≥ 0.3.4 |
|
||||
The origin nick. |
|
||||
`+nick+`
|
||||
| message_without_tags | 0.4.0
|
||||
| The message without the tags (the same as message if there are no tags).
|
||||
| `+:nick!user@host PRIVMSG #weechat :hello!+`
|
||||
|
||||
| user | ≥ 2.7 |
|
||||
The origin user. |
|
||||
`+user+`
|
||||
| nick | 0.3.4
|
||||
| The origin nick.
|
||||
| `+nick+`
|
||||
|
||||
| host | ≥ 0.3.4 |
|
||||
The origin host (includes the nick). |
|
||||
`+nick!user@host+`
|
||||
| user | 2.7
|
||||
| The origin user.
|
||||
| `+user+`
|
||||
|
||||
| command | ≥ 0.3.4 |
|
||||
The command (_PRIVMSG_, _NOTICE_, ...). |
|
||||
`+PRIVMSG+`
|
||||
| host | 0.3.4
|
||||
| The origin host (includes the nick).
|
||||
| `+nick!user@host+`
|
||||
|
||||
| channel | ≥ 0.3.4 |
|
||||
The target channel. |
|
||||
`+#weechat+`
|
||||
| command | 0.3.4
|
||||
| The command (_PRIVMSG_, _NOTICE_, ...).
|
||||
| `+PRIVMSG+`
|
||||
|
||||
| arguments | ≥ 0.3.4 |
|
||||
The command arguments (includes the channel). |
|
||||
`+#weechat :hello!+`
|
||||
| channel | 0.3.4
|
||||
| The target channel.
|
||||
| `+#weechat+`
|
||||
|
||||
| text | ≥ 1.3 |
|
||||
The text (for example user message). |
|
||||
`+hello!+`
|
||||
| arguments | 0.3.4
|
||||
| The command arguments (includes the channel).
|
||||
| `+#weechat :hello!+`
|
||||
|
||||
| pos_command | ≥ 1.3 |
|
||||
The index of _command_ in message ("-1" if _command_ was not found). |
|
||||
`+47+`
|
||||
| text | 1.3
|
||||
| The text (for example user message).
|
||||
| `+hello!+`
|
||||
|
||||
| pos_arguments | ≥ 1.3 |
|
||||
The index of _arguments_ in message ("-1" if _arguments_ was not found). |
|
||||
`+55+`
|
||||
| pos_command | 1.3
|
||||
| The index of _command_ in message ("-1" if _command_ was not found).
|
||||
| `+47+`
|
||||
|
||||
| pos_channel | ≥ 1.3 |
|
||||
The index of _channel_ in message ("-1" if _channel_ was not found). |
|
||||
`+55+`
|
||||
| pos_arguments | 1.3
|
||||
| The index of _arguments_ in message ("-1" if _arguments_ was not found).
|
||||
| `+55+`
|
||||
|
||||
| pos_text | ≥ 1.3 |
|
||||
The index of _text_ in message ("-1" if _text_ was not found). |
|
||||
`+65+`
|
||||
| pos_channel | 1.3
|
||||
| The index of _channel_ in message ("-1" if _channel_ was not found).
|
||||
| `+55+`
|
||||
|
||||
| pos_text | 1.3
|
||||
| The index of _text_ in message ("-1" if _text_ was not found).
|
||||
| `+65+`
|
||||
|===
|
||||
|
||||
[NOTE]
|
||||
^(1)^ The key has been introduced in this WeeChat version.
|
||||
|
||||
[source,python]
|
||||
----
|
||||
dict = weechat.info_get_hashtable(
|
||||
"irc_message_parse",
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
{"message": "@time=2015-06-27T16:40:35.000Z;tag2=value\\sspace :nick!user@host PRIVMSG #weechat :hello!"})
|
||||
|
||||
# dict == {
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z",
|
||||
# "tags": "time=2015-06-27T16:40:35.000Z;tag2=value\\sspace",
|
||||
# "tag_time": "2015-06-27T16:40:35.000Z",
|
||||
# "tag_tag2": "value space",
|
||||
# "message_without_tags": ":nick!user@host PRIVMSG #weechat :hello!",
|
||||
# "nick": "nick",
|
||||
# "user": "user",
|
||||
@@ -1321,10 +1387,10 @@ dict = weechat.info_get_hashtable(
|
||||
# "channel": "#weechat",
|
||||
# "arguments": "#weechat :hello!",
|
||||
# "text": "hello!",
|
||||
# "pos_command": "47",
|
||||
# "pos_arguments": "55",
|
||||
# "pos_channel": "55",
|
||||
# "pos_text": "65",
|
||||
# "pos_command": "65",
|
||||
# "pos_arguments": "73",
|
||||
# "pos_channel": "73",
|
||||
# "pos_text": "83",
|
||||
# }
|
||||
----
|
||||
|
||||
@@ -1365,8 +1431,8 @@ weechat.prnt("", "Version %s" % weechat.info_get("version", ""))
|
||||
|
||||
[source,python]
|
||||
----
|
||||
# WeeChat home directory, for example: "/home/xxxx/.weechat"
|
||||
weechat.prnt("", "WeeChat home dir: %s" % weechat.info_get("weechat_dir", ""))
|
||||
# WeeChat config directory, for example: "/home/user/.config/weechat"
|
||||
weechat.prnt("", "WeeChat config dir: %s" % weechat.info_get("weechat_config_dir", ""))
|
||||
|
||||
# keyboard inactivity
|
||||
weechat.prnt("", "Inactivity since %s seconds" % weechat.info_get("inactivity", ""))
|
||||
|
||||
@@ -1,131 +0,0 @@
|
||||
= WeeChat tester's guide
|
||||
:author: Sébastien Helleu
|
||||
:email: flashcode@flashtux.org
|
||||
:lang: en
|
||||
:toc: left
|
||||
:sectnums:
|
||||
:docinfo1:
|
||||
|
||||
|
||||
[[purpose]]
|
||||
== Purpose
|
||||
|
||||
Many thankful users ask us how can they help developing WeeChat. The
|
||||
easiest (and also most tricky) way to help developing WeeChat is testing!
|
||||
|
||||
Testing is a very important part of software development and should not be
|
||||
underestimated. When some features are implemented it should be tested, but for
|
||||
some features there are too many use cases or these cases are tricky and
|
||||
developers can't try out every case.
|
||||
|
||||
For example: A notorious charset plugin was introduced in WeeChat 0.2.2: none
|
||||
of us (developers, contributors and testers) used channels with national
|
||||
characters in their names and when 0.2.2 was released we got flooded by Russian
|
||||
users blaming us. If we have more testers it should not happen again in the
|
||||
future.
|
||||
|
||||
Testing the stable version of WeeChat is pointless because developers are busy
|
||||
implementing new stuff (and fixing old bugs) all the time.
|
||||
|
||||
|
||||
[[prepare_system]]
|
||||
== Prepare your system
|
||||
|
||||
It would help us a lot if you enable Linux _core_ files: if WeeChat crashes,
|
||||
Linux will write a file called _core_. This file contains very useful debug
|
||||
info, to know exactly where is problem in WeeChat.
|
||||
|
||||
If you're using the _bash_ shell, add following line to your _~/.bashrc_:
|
||||
|
||||
----
|
||||
ulimit -c unlimited
|
||||
----
|
||||
|
||||
|
||||
[[download]]
|
||||
== Download devel version
|
||||
|
||||
Fresh code (with latest bugs and features) is stored in a GIT repository.
|
||||
|
||||
You may decide to build it manually (recommended way):
|
||||
|
||||
* The GIT version can be built and installed in parallel to the stable version.
|
||||
* You don't need root access, and you don't need to sacrifice the stable
|
||||
version of WeeChat.
|
||||
|
||||
[[get_sources]]
|
||||
=== Get and build sources
|
||||
|
||||
First create a directory, for example _weechat-git_:
|
||||
|
||||
----
|
||||
$ mkdir ~/weechat-git
|
||||
$ cd ~/weechat-git
|
||||
----
|
||||
|
||||
If you have git installed, you can just clone the git repository (recommended
|
||||
way):
|
||||
|
||||
----
|
||||
$ git clone https://github.com/weechat/weechat.git
|
||||
$ cd weechat
|
||||
----
|
||||
|
||||
[NOTE]
|
||||
Later, you can run `git pull` in this directory, to get deltas with
|
||||
the latest updates.
|
||||
|
||||
Otherwise you can download and unpack _devel_ package:
|
||||
|
||||
----
|
||||
$ wget https://weechat.org/files/src/weechat-devel.tar.bz2
|
||||
$ tar xvjf weechat-devel.tar.bz2
|
||||
$ cd weechat-devel
|
||||
----
|
||||
|
||||
To build sources, CMake is recommended:
|
||||
|
||||
----
|
||||
$ mkdir build
|
||||
$ cd build
|
||||
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/weechat-git -DWEECHAT_HOME=~/.weechat-dev -DCMAKE_BUILD_TYPE=Debug
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
If you don't have CMake, it's still possible to use autotools:
|
||||
|
||||
----
|
||||
$ ./autogen.sh
|
||||
$ ./configure --prefix=$HOME/weechat-git WEECHAT_HOME=~/.weechat-dev
|
||||
$ make
|
||||
$ make install
|
||||
----
|
||||
|
||||
[[install_binary_package]]
|
||||
=== Install binary package
|
||||
|
||||
According to your Linux distribution:
|
||||
|
||||
* Debian: https://weechat.org/download/debian
|
||||
* Gentoo: https://weechat.org/download
|
||||
* ArchLinux: PKGBUILD from https://aur.archlinux.org/
|
||||
* other: we don't know! Eheh.
|
||||
|
||||
|
||||
[[run]]
|
||||
== Run WeeChat
|
||||
|
||||
Command is:
|
||||
|
||||
----
|
||||
$ ~/weechat-git/bin/weechat
|
||||
----
|
||||
|
||||
If you're still awake you should see the familiar interface and brag about
|
||||
having the newest possible version of WeeChat. ;)
|
||||
|
||||
Now if you experience strange behavior (it may have issues or crash or boil
|
||||
your beer) don't hesitate to join _#weechat_ at _chat.freenode.net_ and tell us.
|
||||
|
||||
If it doesn't crash - tell us too, we need your feedback!
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user