Difference between revisions of "Irssi-otr"

From ArchWiki
Jump to: navigation, search
(cat)
m (a few style fixes)
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Category:Internet Applications (English)]]
+
[[Category:Internet Applications]]
[[Category:Internet Relay Chat (English)]]
+
[[Category:Internet Relay Chat]]
= About =
+
 
+
 
The [http://irssi-otr.tuxfamily.org/ irssi-otr] module brings
 
The [http://irssi-otr.tuxfamily.org/ irssi-otr] module brings
 
[http://www.cypherpunks.ca/otr/ Off-the-Record Messaging] to your
 
[http://www.cypherpunks.ca/otr/ Off-the-Record Messaging] to your
 
[http://irssi.org/ favorite IRC client].
 
[http://irssi.org/ favorite IRC client].
  
=Installing=
+
==Installing==
  
You can install the Irssi OTR module from the
+
You can install the {{AUR|irssi-otr}} module from the [[AUR]].
[http://aur.archlinux.org/packages.php?ID=19488 AUR].
+
If you like to test bleeding edge software, there is also {{AUR|irssi-otr-git}}.
If you like to test bleeding edge software, there is also a
+
[http://aur.archlinux.org/packages.php?ID=23366 Git version].
+
  
=Usage=
+
==Usage==
  
 
See the
 
See the
 
[http://git.tuxfamily.org/irssiotr/irssiotr.git?p=gitroot/irssiotr/irssiotr.git;a=blob_plain;f=README;hb=HEAD README].
 
[http://git.tuxfamily.org/irssiotr/irssiotr.git?p=gitroot/irssiotr/irssiotr.git;a=blob_plain;f=README;hb=HEAD README].
  
=Loading the module on startup=
+
==Loading the module on startup==
  
If you are tired of typing {{Codeline|/LOAD otr}} you can put the following
+
If you are tired of typing {{Ic|/LOAD otr}} you can put the following
in your {{Codeline|~/.irssi/startup}}:
+
in your {{Ic|~/.irssi/startup}}:
  
 
  LOAD otr
 
  LOAD otr
  
=Stripping HTML=
+
==Stripping HTML==
  
 
If you are using irssi-otr with [[Bitlbee | BitlBee]] you will notice
 
If you are using irssi-otr with [[Bitlbee | BitlBee]] you will notice
 
that some clients send you HTML formatted messages.  Normally BitlBee
 
that some clients send you HTML formatted messages.  Normally BitlBee
 
automatically strips the HTML formatting, but since the messages are
 
automatically strips the HTML formatting, but since the messages are
encrypted this doesn't work anymore.  Nevertheless you can achieve
+
encrypted this does not work anymore.  Nevertheless you can achieve
 
the same by stripping the HTML with regular expressions using the
 
the same by stripping the HTML with regular expressions using the
 
[http://wouter.coekaerts.be/site/irssi/trigger Trigger script].  Just make
 
[http://wouter.coekaerts.be/site/irssi/trigger Trigger script].  Just make
 
sure you load the script before the otr module.  You can either do this
 
sure you load the script before the otr module.  You can either do this
manually or again make your {{Codeline|~/.irssi/startup}} look like this:
+
manually or again make your {{Ic|~/.irssi/startup}} look like this:
  
 
  SCRIPT LOAD trigger.pl
 
  SCRIPT LOAD trigger.pl
 
  LOAD otr
 
  LOAD otr
  
Also make sure that {{Codeline|trigger.pl}} is not in
+
Also make sure that {{Ic|trigger.pl}} is not in
{{Codeline|~/.irssi/scripts/autorun}} since the files from this directory
+
{{Ic|~/.irssi/scripts/autorun}} since the files from this directory
are loaded after {{Codeline|~/.irssi/startup}}.
+
are loaded after {{Ic|~/.irssi/startup}}.
  
 
Since it is not possible to perfectly match HTML code with regular
 
Since it is not possible to perfectly match HTML code with regular
Line 49: Line 45:
 
network, where we assume you added you server.
 
network, where we assume you added you server.
  
You can {{Codeline|/TRIGGER add}} the following lines or copy them to
+
You can {{Ic|/TRIGGER add}} the following lines or copy them to
{{Codeline|~/.irssi/triggers}}.
+
{{Ic|~/.irssi/triggers}}.
  
<pre>
+
{{bc|<nowiki>
 
-privmsgs -nocase -tags 'BitlBee' -regexp '</?(a|b|body|div|em|font|i|s|u)( +\w+=".*?")*>' -replace ''  
 
-privmsgs -nocase -tags 'BitlBee' -regexp '</?(a|b|body|div|em|font|i|s|u)( +\w+=".*?")*>' -replace ''  
</pre>
+
</nowiki>}}
  
 
You can even make HTML line breaks look like multiple messages:
 
You can even make HTML line breaks look like multiple messages:
Line 60: Line 56:
 
  -privmsgs -nocase -tags 'BitlBee' -regexp '(\s*&lt;br&gt;\s*)+' -replace '\n�8/<�g�</$N�8/>�g �e'  
 
  -privmsgs -nocase -tags 'BitlBee' -regexp '(\s*&lt;br&gt;\s*)+' -replace '\n�8/<�g�</$N�8/>�g �e'  
  
Where {{Codeline|�}} is the non-printable character {{Codeline|^D}}.  In vi(m)
+
Where {{Ic|�}} is the non-printable character {{Ic|^D}}.  In vi(m)
you can get it by pressing {{Codeline|Ctrl-v Ctrl-d}} in insert mode.
+
you can get it by pressing {{Ic|Ctrl-v Ctrl-d}} in insert mode.
 
If your are using a theme different than the default one you probably
 
If your are using a theme different than the default one you probably
 
have to adapt the replacing string to match color and indentation.
 
have to adapt the replacing string to match color and indentation.

Revision as of 14:56, 25 December 2013

The irssi-otr module brings Off-the-Record Messaging to your favorite IRC client.

Installing

You can install the irssi-otrAUR module from the AUR. If you like to test bleeding edge software, there is also irssi-otr-gitAUR.

Usage

See the README.

Loading the module on startup

If you are tired of typing /LOAD otr you can put the following in your ~/.irssi/startup:

LOAD otr

Stripping HTML

If you are using irssi-otr with BitlBee you will notice that some clients send you HTML formatted messages. Normally BitlBee automatically strips the HTML formatting, but since the messages are encrypted this does not work anymore. Nevertheless you can achieve the same by stripping the HTML with regular expressions using the Trigger script. Just make sure you load the script before the otr module. You can either do this manually or again make your ~/.irssi/startup look like this:

SCRIPT LOAD trigger.pl
LOAD otr

Also make sure that trigger.pl is not in ~/.irssi/scripts/autorun since the files from this directory are loaded after ~/.irssi/startup.

Since it is not possible to perfectly match HTML code with regular expressions we will take a somewhat conservative approach. We will only strip HTML tags we explicitly specified from PRIVMSGS from the BitlBee network, where we assume you added you server.

You can /TRIGGER add the following lines or copy them to ~/.irssi/triggers.

-privmsgs -nocase -tags 'BitlBee' -regexp '</?(a|b|body|div|em|font|i|s|u)( +\w+=".*?")*>' -replace '' 

You can even make HTML line breaks look like multiple messages:

-privmsgs -nocase -tags 'BitlBee' -regexp '(\s*<br>\s*)+' -replace '\n�8/<�g�</$N�8/>�g �e' 

Where is the non-printable character ^D. In vi(m) you can get it by pressing Ctrl-v Ctrl-d in insert mode. If your are using a theme different than the default one you probably have to adapt the replacing string to match color and indentation.

And finally we convert some escaped HTML characters:

-privmsgs -nocase -tags 'BitlBee' -regexp '&amp;' -replace '&' 
-privmsgs -nocase -tags 'BitlBee' -regexp '&gt;' -replace '>' 
-privmsgs -nocase -tags 'BitlBee' -regexp '&lt;' -replace '<' 
-privmsgs -nocase -tags 'BitlBee' -regexp '&quot;' -replace '"' 

These are just some basic replaces, just extend them if you need more.