27 Commits

Author SHA1 Message Date
Ailin Nemui
96a292d40e Finish 256 colour support for Irssi
256 colour patch is cleaned up and the remaining cases are made work,
this includes especially Theme support, which was not implemented
before. Changes not related to colours were reverted again, making a
review of the two patches against master easier to follow.

As a byproduct of the Hex-colour code parser, the 24bit colours are
also implemented. Actually using them in the terminal is guarded by a
compile time switch (as well as a run time switch), as it breaks the
existing colour protocol and requires additional storage.

To make a seamless usage, down-conversion is provided for 8 and 16
colours.

Diverging from Tom's approach, the colour protocol is reverted back to
the original one. Unfortunately, the changes required in the Theme
engine will break the API.

For more details, please refer to the patch documentation at either
http://irssi-docs.wikispaces.com/Notes-256-Colour or
https://github.com/shabble/irssi-docs/wiki/Notes-256-Colour
2014-06-30 02:41:34 +02:00
Alexander Færøy
b8c2915d79 Merge pull request #59 from ailin-nemui/perl-pl-na
get rid of PL_na
2014-06-27 14:31:04 +02:00
David Leadbeater
43df6e424e Define PERL_NO_GET_CONTEXT in all perl source files
This removes the calls to Perl_get_context() that get automatically
added to XS code for ancient source code compatibility reasons.

The result is about a ~60K size reduction in the binary (based on
comparing two 64-bit stripped irssi binaries compiled
--with-perl-staticlib).
2014-06-24 20:20:27 +01:00
Lukas Mai
7dbb8efdde get rid of PL_na 2014-06-24 16:45:55 +02:00
David Hill
0d4f13d20f Replace deprecated g_str[n]casecmp with g_ascii_str[n]cmp. 2014-06-10 12:06:19 -04:00
Emanuele Giaquinta
8e48c6c36a Properly validate the argument of Irssi::theme_register as an array reference,
patch by Olof Johansson.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5214 dbcabf3a-b0e7-0310-adc4-f8d773084564
2012-06-24 09:33:28 +00:00
Emanuele Giaquinta
5b4e05c553 Factor out printformat_module_dest_charargs function from
printformat_module_dest_args and use it in printformat_perl to remove code
duplication.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4979 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-01-10 15:00:06 +00:00
Emanuele Giaquinta
48d0135d3e Make some functions static.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4956 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-08 17:11:00 +00:00
Timo Sirainen
d9af8f0d4f didn't compile with older perls.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3093 dbcabf3a-b0e7-0310-adc4-f8d773084564
2003-01-07 17:18:00 +00:00
Timo Sirainen
9c18cb00e7 Added support to define new default abstracts at runtime.
Irssi::abstracts_register([key => value, ...]);


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3079 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-12-28 15:25:10 +00:00
Timo Sirainen
d346fbe1a9 Better !channel support - window items now have "visual_name" and channels
and queries also have "name". Normally they're identical but with !channels
the visible_name contains the short !channel name, while name contains
full !ABCDEchannel name.

The visible_name should be used whenever displaying the channel name, or as
printtext()'s target. So, this breaks a few scripts in !channels, they need
to be modified to use $channel->{visible_name} instead.

Also /LAYOUT SAVE should finally work properly with !channels.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2797 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-05-16 00:34:37 +00:00
Timo Sirainen
b933f62111 fixes
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2791 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-05-13 18:25:21 +00:00
Timo Sirainen
abdd0f04c5 Irssi::Theme::get_format() now uses format tag instead of number.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2727 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-04-27 19:42:15 +00:00
Timo Sirainen
ad9329a1a6 added Irssi::Theme::get_format()
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2726 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-04-27 19:35:17 +00:00
Timo Sirainen
ebe60cca55 Scripts using Irssi::printformat() might have crashed irssi, especially if
they cought in autolog.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2349 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-01-27 22:15:37 +00:00
Timo Sirainen
617123b5d4 I always forget Perl 5.004 doesn't have PL_na .. so, now I've declared for
5.004, and changed all STRLEN n_a code to use PL_na instead.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2238 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-12-11 16:44:53 +00:00
Timo Sirainen
337ae1a862 max number of parameters for printformat() was calculated wrong.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2158 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-27 20:29:56 +00:00
Timo Sirainen
e246ca668b printformat_perl() crashfix was buggy :)
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2151 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-25 18:34:20 +00:00
Timo Sirainen
f0ce4f221b Irssi::printformat() doesn't crash anymore if you try to use unregistered
format.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2143 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-25 15:43:08 +00:00
Timo Sirainen
ea904f8dc9 Irssi::printformat() crashed if the registered format contained $0- etc.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2137 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-24 01:31:49 +00:00
Timo Sirainen
00423151f9 Didn't I already commit these? .. added format_get_text(),
gui_printtext_after(), last_line_insert() and fixed a few memleaks.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2040 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-17 00:25:20 +00:00
Timo Sirainen
4437ac855a typofix
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2001 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-14 12:33:45 +00:00
Timo Sirainen
d9b6bb152a Added flags option for Irssi::UI::Theme::format_expand().
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1921 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-25 18:17:21 +00:00
Timo Sirainen
be48bdc22c Added Irssi::current_theme() and Irssi::Theme::format_expand()
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1918 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-25 11:21:18 +00:00
Timo Sirainen
99fe282e6d Moved theme registering stuff to Themes.xs. Corrected signal "script
destroy" -> "script destroyed" - unregistering themes works now properly.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1886 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-21 18:28:42 +00:00
Timo Sirainen
76c6e9ab83 Dependencies finally work correctly in perl libraries (they're each compiled
separately now). Added statusbar code to available to perl, it's now
possible to create new statusbar items with perl scripts.

statusbar_items_redraw(char *name) can now be used to easily redraw all
named statusbar items in screen.

Probably several other changes I've already forgotten :)


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1861 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-20 19:52:07 +00:00
Timo Sirainen
89d7498019 Moved fe_perl module to use Irssi::UI .. this breaks several scripts that
use UI-specific code, but simply adding the "use Irssi::UI;" after use
Irssi; should work. make install now removes libfe_perl.* files from global
module directory, but if you have it somewhere else you should manually
remove it.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1582 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-06-27 22:56:17 +00:00