1
           lite2do-irssi - a lightweight todo manager for Irssi
2
3
                         installation instructions
4
5
6
   Copyright (C) 2008, 2009 Jaromir Hradilek
7
8
   Permission is granted to copy, distribute and/or modify this document
9
   under the terms of the GNU Free Documentation License, Version 1.3 or
10
   any later version published by the Free Software Foundation;  with no
11
   Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
12
13
   A copy  of the license is included  as a file called FDL  in the main
14
   directory of the lite2do-irssi source package.
15
16
17
1. General System Requirements
18
19
Working installation of Irssi IRC client capable of running Perl scripts is
20
required in order to use this tool; see <http://www.irssi.org/>.
21
22
23
2. Script Configuration
24
25
Although lite2do-irssi  is instantly  fully operative  and default settings
26
should be reasonable  enough to be  suitable for most users,  there are few
27
options  you would (at least) like to know  about.  Open the source file in
28
your favourite  text editor and find following  section near the  beginning
29
of the file:
30
31
  # General script settings:
32
  our $HOMEDIR  = Irssi::get_irssi_dir();        # Irssi's  home directory.
33
  our $SAVEFILE = catfile($HOMEDIR, 'lite2do');  # Save file location.
34
  our $BACKEXT  = '.bak';                        # Backup file extension.
35
  our $TRIGGER  = ':todo';                       # Script invoking command.
36
  our $COLOURED = 0;                             # Whether to use colours.
37
  our $LISTALL  = 0;                             # Whether to allow listing
38
                                                 # all tasks at once.
39
  # Access control:
40
  our @ALLOWED  = qw( *!*@* );                   # Allowed IRC masks.
41
  our @BANNED   = qw( );                         # Banned IRC masks.
42
43
44
2.1 Save File Location
45
46
By default, all task are stored in ~/.irssi/lite2do. This is a safe choice,
47
but there are situations when you may want or require a different location,
48
for example  to share your task list with command-line lite2do utility. The
49
quickest way is to provide the $SAVEFILE with absolute path like this:
50
51
  our $SAVEFILE = '/home/user/.lite2do';
52
53
However,  cleaner and more flexible way  would be to obtain the location of
54
home directory from the environment variable,  i.e. HOME or USERPROFILE  on
55
Unix systems and Windows respectively:
56
57
  our $HOMEDIR  = $ENV{HOME} || $ENV{USERPROFILE};
58
  our $SAVEFILE = catfile($HOMEDIR, '.lite2do');
59
60
Notice the dot on the second line.
61
62
63
2.2 Script Invoking Command
64
65
By default, `:todo'  keyword at the beginning of line is used to invoke the
66
script in public channels and private queries.  This is (intentionally) ra-
67
ther unusual choice  as exclamation mark  is most frequently used for these
68
purposes. To follow this practice, change value of $TRIGGER like this:
69
70
  our $TRIGGER  = '!todo';
71
72
73
2.3 Coloured Output
74
75
Although lite2do-irssi is well capable of producing colourful output,  this
76
option is turned off by default as most IRC users do not like to see it. To
77
turn colours on, simply change the value of $COLOURED like this:
78
79
  our $COLOURED = 1;
80
81
82
2.4 Tasks Listing
83
84
As the task list grows, listing all tasks at once can become quite slow and
85
rather annoying. In most cases,  listing a single group and/or tasks match-
86
ing the given pattern only is satisfactory enough and usually produces much
87
shorter results. Nevertheless, if you wish to allow it, simply change value
88
of $LISTALL as follows:
89
90
  our $LISTALL  = 1;
91
92
93
2.5 Access Control
94
95
By default,  everyone is granted  unlimited access  to the task list.  This
96
apparent generosity serves the purpose: in accordance with the original de-
97
sign, it encourages collaborative task management. This way, multiple users
98
can co-work on different parts of a project  or even assign tasks to others
99
(e.g. `:todo add @scotty Beam us up.' etc.). However,  if you find this be-
100
haviour unsuitable,  you can limit the access to and/or deny  the access to
101
selected users only -- simply place space  separated list of allowed/banned
102
masks between the brackets, for example:
103
104
  our @ALLOWED  = qw( blackened!~blackened@example.com *!*@192.168.1.1 );
105
  our @BANNED   = qw( mrspammer!~mrspammer@192.168.1.1 );
106
107
Each IRC mask is in the form nick!name@host.domain, asterisk is a wildcard.
108
109
110
3. Script Installation
111
112
To make it accessible from Irssi, place the script to the ~/.irssi/scripts/
113
directory (creating it first if it is not there); for example:
114
115
  mkdir ~/.irssi/scripts
116
  cp lite2do-irssi.pl ~/.irssi/scripts/
117
118
You can now load it to Irssi using a following command:
119
120
  /script load lite2do-irssi.pl
121
122
Furthermore, if you want it to be loaded automatically every time the Irssi
123
is started, you can also create a symlink in the ~/.irssi/scripts/autorun/:
124
125
  mkdir ~/.irssi/scripts/autorun
126
  cd ~/.irssi/scripts/autorun/
127
  ln -s ../lite2do-irssi.pl
128
129
See a file called README in the main directory of the lite2do-irssi package
130
or type `/todo help' for more information about the usage.