File: README.org

package info (click to toggle)
weechat-el 0.5.0-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 396 kB
  • sloc: lisp: 4,503; makefile: 60
file content (169 lines) | stat: -rw-r--r-- 7,493 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
# -*- mode:org; mode:auto-fill; fill-column:80; coding:utf-8; -*-
* weechat.el - Chat via Weechat in Emacs
  Please note: This README is work in progress.  A more detailed documentation
  will follow.

  weechat.el requires Emacs 24 and [[https://github.com/magnars/s.el][s.el]].  For Emacs versions below 24.3
  you also need [[http://elpa.gnu.org/packages/cl-lib.html][cl-lib]].  WeeChat version 0.4.0 or newer is recommended!

  You can install weechat.el via package.el ([[https://stable.melpa.org/][melpa-stable]] (stable releases) or
  [[http://melpa.milkbox.net/#installing][melpa]] (development snapshot)):

  : M-x package-install RET weechat RET

  See [[file:NEWS.org][NEWS.org]] for major changes in releases.
** Manual Installation
   - Install dependencies via package.el:

    : M-x package-install RET s RET

   - If your Emacs is older than 24.3:
   
    : M-x package-install RET cl-lib RET

   - Download this directory to your system and add it to the =load-path=:

    : (add-to-list 'load-path (expand-file-name "path/to/weechat.el/"))

   - Load weechat.el

    : (require 'weechat)

     (You can add this to your =~/.emacs.d/init.el= or similar)

** Usage
   First, setup the relay server in weechat.  Please refer to the
   [[http://www.weechat.org/files/doc/stable/weechat_user.en.html#relay_weechat_protocol][manual]].

   To load and establish a connection:

   : (require 'weechat)
   : M-x weechat-connect RET

   To show a channel in Emacs, do:

   : M-x weechat-monitor-buffer RET

** Color settings
   Most colors in weechat.el come directly from WeeChat and are only
   translated into Emacs faces.  There are a few notable exceptions
   such as =weechat-highlight-face= or =weechat-nick-self-face=.

   If you are unsatisfied with the colors that WeeChat send then
   either change the corresponding color in WeeChat or customize
   =weechat-color-list=.  Do *not* add or remove any values in the
   list!  Simply change the value.  Using =rainbow-mode= (from GNU
   ELPA) or =list-colors-display= can help finding good values.

   The default configuration tries to match the WeeChat colors as
   close as possible.  Example for colors that go better with the
   Emacs' default theme are:

#+BEGIN_SRC emacs-lisp
  (setq weechat-color-list '(unspecified "black" "dim gray" "dark red" "red"
                                         "dark green" "green" "brown"
                                         "orange" "dark blue" "blue"
                                         "dark magenta" "magenta" "dark cyan"
                                         "royal blue" "dark gray" "gray"))
#+END_SRC

   If you do not want any color then set =weechat-debug-strip-formatting= to
   =t=.
** SSL
   See documentation in [[file:SSL.org][SSL.org]].
** Modules
   Weechat.el comes with module support.  Modules can be loaded by simply
   calling =load-library= and removed by using =unload-feature=.  The variable
   =weechat-modules= can be customized to set default loaded modules.

   Available modules are:
*** Button
    This module provides support for buttons in chat windows.  E.g., it turns
    URLs into clickable buttons.  The module is default loaded.  See =weechat-modules=.

    It supports several types of buttons such as URLs, Channels, Emacs' symbols,
    E-Mails, Manpages, Info links, and Nick names.  However not all buttons are
    activated as default.  See customization group =weechat-button= to enable
    and disable specific buttons.

    You can use =weechat-button-list= to simply add your own button types.
*** Complete
    This module provides support for nickname and command completion. It uses
    Emacs' =pcomplete= framework and is default loaded.
    
    If you want case-insensitive completion, set =completion-ignore-case= to
    =t=.
*** Spelling
    This module provides spelling support by using Emacs' =flyspell=.  You can
    customize the dictionary on a per channel/server basis by customizing
    =weechat-spelling-dictionaries=.
*** Notifications
    Weechat.el supports notifications for important messages, such as
    highlights or queries.  The support is either based on =notifications.el=
    which is shipped with Emacs since version 24 and uses the Freedesktop
    notification spec.  Another solution is based on [[http://www.emacswiki.org/emacs/Sauron][Sauron]].

    To activate notifications you have to load the matching module.  Either
    =weechat-notifications= for =notifications.el= or =weechat-sauron= for
    Sauron support.

    To change the message types you want to receive notifications for customize
    =weechat-notification-types=.
**** notifications.el
     Loading the =weechat-notifications= module uses =notifications.el=
     to display notifications.  This uses the Freedesktop notification spec and
     should work fine on most Linux systems.

     You can customize =weechat-notifications-sound= to play a sound on
     notification.  Setting =weechat-notifications-icon= allows to change the
     notification icon.
**** Sauron
     The =weechat-sauron= module uses [[http://www.emacswiki.org/emacs/Sauron][Sauron]] for notifications.
*** Tracking
    The =weechat-tracking= module provides tracking information in the mode
    line, similar to erc-track.  It uses the [[https://github.com/jorgenschaefer/circe/wiki/Tracking][Tracking]] library (available on
    marmalade or el-get).
*** Smiley
    This module uses Gnus' =smiley-region= support to convert text smileys,
    such as :-), into a graphical representation.  See the documentation of
    =smiley.el= on how to customize it.
*** LaTeX
    The =weechat-latex= module provides a simple preview function for embedded
    LaTeX.  It is based Org's LaTeX preview functionality and many of Org's
    LaTex customizations apply to it as well.  Use =weechat-latex-preview= to
    generate previews and =weechat-latex-remove= to remove them.

    There is also =weechat-latex-auto-mode= to automatically turn LaTeX
    fragments in every new message into a preview.

    By using =weechat-latex-preview-region= or =weechat-latex-preview-line=
    the LaTeX previews can be limited to certain parts of the buffer.
*** Speedbar
    The =weechat-speedbar= module provides Emacs' Speedbar integration.  After
    loading the module and opening the Speedbar there should be a Display mode
    called "WeeChat" available.
*** Image
    This modules allows (embedded) previews of image urls.  After loading the
    module a button should appear next to urls to image files.  By clicking the
    button images should be opened inline and by clicking the button again they
    should be removed.

    By changing =weechat-image-display-func= the images can instead be opened
    inside the buffer =weechat-image-buffer=.  The detection of image URLs can
    be influenced with =weechat-image-url-regex= and
    =weechat-image-url-blacklist-regex=.

    Be careful when loading images of sources you do not trust.  Change
    =weechat-image-size-limit= to prevent the display of large images.
* Contact
  Feel free to contact us via Github, Email, or IRC (#weechat.el on Freenode)

  We appreciate every comment, suggestion, or nagging for missing features.
  Tell us your story!

* Contributors
  Please add yourself to this list when you contribute code!
  
  - [[https://github.com/the-kenny][Moritz Ulrich]] (Maintainer)
  - [[https://github.com/ruediger][RĂ¼diger Sonderfeld]]
  - [[https://github.com/aristidb][Aristid Breitkreuz]]