1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-15 23:54:46 +02:00

Compare commits

..

1 Commits

Author SHA1 Message Date
Sebastien Helleu 0f3efd732c Fix compilation errors/warnings
Just for fun :)
2014-02-07 14:15:04 +01:00
569 changed files with 22331 additions and 252172 deletions
-52
View File
@@ -1,52 +0,0 @@
# ignored files for Git
*.a
*.css
*.gmo
*.html
*.la
*.lai
*.lo
*.m4
*.o
*.Plo
*.Po
*.so
*.so.0
*.so.0.0.0
ABOUT-NLS
autom4te*
build*/*
config.guess
config.h*
config.log
config.rpath
config.status
config.sub
configure
debian/*.log
depcomp
insert-header.sin
install-sh
intl/*
libtool
ltmain.sh
Makefile
Makefile.in*
Makevars.template
missing
po/*quot*
POTFILES
remove-potcdate.sed
Rules-quot
weechat.pc
doc/de/build/*
doc/en/build/*
doc/fr/build/*
*stamp
stamp*
src/gui/curses/weechat-curses
src/gui/gtk/weechat-gtk
+23 -43
View File
@@ -1,49 +1,29 @@
WeeChat Authors
===============
WeeChat - Wee Enhanced Environment for Chat
===========================================
Developers
Developers:
----------
* General code
All developers are connected to IRC:
server: irc.freenode.net, channel: #weechat
** FlashCode <flashcode@flashtux.org>
*** Web: http://www.weechat.org/
*** IRC: 'FlashCode' on irc.freenode.net
FlashCode <flashcode@flashtux.org>
Web : http://www.flashtux.org
IRC : nick is "FlashCode"
Jabber: flashcode@jabber.org
ICQ : 160677660
AIM : FlashCode AIM
Yahoo : FlashCode_Y
Bounga <bounga@altern.org>
Web : http://bounga.ath.cx
IRC : nick is "Bounga"
Jabber: Bounga@jabber.org
ICQ : 178297842
Xahlexx <xahlexx@tuxisland.org>
Web : http://www.tuxisland.org
IRC : nick is "xahlexx"
* Scripts plugins, debian packager
** kolter <kolter@openics.org>
*** IRC: 'kolter' on irc.freenode.net
Contributors
------------
* Julien Louis <ptitlouis@sysif.net>, IRC: 'ptitlouis'
* Rudolf Polzer <rpolzer-rp@durchnull.de>, IRC: 'divVerent'
* Jiri Golembiovsky <golemj@gmail.com>, IRC: 'GolemJ'
* Jim Ramsay <i.am@jimramsay.com>, IRC: 'lack'
* Odin <odin@dtdm.org>, IRC: 'Odin'
* Pistos, IRC: 'pistos'
* Gwenn, IRC: 'gwenn'
* Voroskoi, IRC: 'voroskoi'
* Frank Zacharias
* Pavel Shevchuk, IRC: 'Stalwart'
* soltys
* Nils Görs
* rettub
* m4v
* Marco Paolone
* Dmitry Kobylin
* Dominik Honnef
Contact
-------
Whole team is connected to IRC:
server: 'irc.freenode.net', channels: '#weechat' (english) and '#weechat-fr' (french)
See README file for license detail.
See README file for licence detail.
+17
View File
@@ -0,0 +1,17 @@
WeeChat - Wee Enhanced Environment for Chat
===========================================
WeeChat known bugs, 2003-09-27
- too much nicks in the channel (> height of window) => display bug
- some IRC commands are marked as 'unknown' when received
(irc protocol is under dev!)
- bug in nicklist resize (sometimes resize doesn't work and there is display
problem)
- alias/unalias commands doesn't work
- config is not saved (to ~/.weechat/weechatrc)
- intercept Ctrl-C (do not quit immediately if Ctrl-C pressed!)
- program is stopped when bad option in config file (it should not, only display
warning)
- too much opened channel => display bug
- when kicked, channel is not prefixed by '(' and sufixed by ')'
-143
View File
@@ -1,143 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
PROJECT(weechat C)
cmake_minimum_required(VERSION 2.4)
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} -Wall -W -Werror-implicit-function-declaration")
IF(PREFIX)
SET(CMAKE_INSTALL_PREFIX ${PREFIX} CACHE PATH "Install path prefix" FORCE)
ENDIF(PREFIX)
SET(VERSION_MAJOR "0")
SET(VERSION_MINOR "3")
SET(VERSION_PATCH "2")
SET(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
SET(LICENSE "GPL3")
SET(PKG_STRING "${PROJECT_NAME} ${VERSION}")
STRING(REPLACE "\";\"" "\ " PKG_STRING ${PKG_STRING})
IF(DEFINED LIBDIR)
SET(LIBDIR ${LIBDIR}/${PROJECT_NAME})
ELSE(DEFINED LIBDIR)
SET(LIBDIR ${CMAKE_INSTALL_PREFIX}/lib/${PROJECT_NAME})
ENDIF(DEFINED LIBDIR)
IF(NOT DEFINED SHAREDIR)
SET(SHAREDIR ${CMAKE_INSTALL_PREFIX}/share)
ENDIF(NOT DEFINED SHAREDIR)
IF(NOT DEFINED LOCALEDIR)
SET(LOCALEDIR ${SHAREDIR}/locale)
ENDIF(NOT DEFINED LOCALEDIR)
IF(DEFINED INCLUDEDIR)
SET(INCLUDEDIR ${INCLUDEDIR}/${PROJECT_NAME})
ELSE(DEFINED INCLUDEDIR)
SET(INCLUDEDIR ${CMAKE_INSTALL_PREFIX}/include/${PROJECT_NAME})
ENDIF(DEFINED INCLUDEDIR)
OPTION(DISABLE_NCURSES "Disable Ncurses interface")
OPTION(ENABLE_GTK "Enable GTK interface")
OPTION(DISABLE_NLS "Disable Native Language Support")
OPTION(DISABLE_GCRYPT "Disable libgcrypt support")
OPTION(DISABLE_GNUTLS "Disable SSLv3/TLS connection support")
OPTION(DISABLE_LARGEFILE "Disable Large File Support")
OPTION(DISABLE_ALIAS "Disable Alias plugin")
OPTION(DISABLE_ASPELL "Disable Aspell plugin")
OPTION(DISABLE_CHARSET "Disable Charset plugin")
OPTION(ENABLE_DEMO "Enable Demo plugin")
OPTION(DISABLE_FIFO "Disable FIFO plugin")
OPTION(DISABLE_IRC "Disable IRC plugin")
OPTION(DISABLE_LOGGER "Disable Logger plugin")
OPTION(ENABLE_RELAY "Enable Relay plugin")
OPTION(DISABLE_SCRIPTS "Disable script plugins")
OPTION(DISABLE_PERL "Disable Perl scripting language")
OPTION(DISABLE_PYTHON "Disable Python scripting language")
OPTION(DISABLE_RUBY "Disable Ruby scripting language")
OPTION(DISABLE_LUA "Disable Lua scripting language")
OPTION(DISABLE_TCL "Disable Tcl scripting language")
OPTION(DISABLE_XFER "Disable Xfer plugin (file transfer and direct chat)")
OPTION(DISABLE_DOC "Disable Doc")
IF(NOT DISABLE_NLS)
ADD_SUBDIRECTORY( po )
ENDIF(NOT DISABLE_NLS)
ADD_SUBDIRECTORY( src )
ADD_SUBDIRECTORY( doc )
CONFIGURE_FILE(config.h.cmake config.h @ONLY)
CONFIGURE_FILE(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/makedist.sh.in"
"${CMAKE_CURRENT_BINARY_DIR}/makedist.sh" IMMEDIATE
@ONLY)
CONFIGURE_FILE(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
IMMEDIATE @ONLY)
ADD_CUSTOM_TARGET(uninstall
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
ADD_CUSTOM_TARGET(dist
"${CMAKE_BINARY_DIR}/makedist.sh"
DEPENDS doc
WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
# pkgconfig file
SET(PACKAGE "${PROJECT_NAME}")
SET(prefix "${CMAKE_INSTALL_PREFIX}")
SET(exec_prefix "\${prefix}")
SET(libdir "\${exec_prefix}/lib")
SET(includedir "\${prefix}/include")
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/weechat.pc.in ${CMAKE_CURRENT_BINARY_DIR}/weechat.pc @ONLY)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat.pc DESTINATION ${LIBDIR}/../pkgconfig)
# packages
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Fast, light and extensible chat client")
SET(CPACK_PACKAGE_VENDOR "FlashCode")
SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
SET(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
SET(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
SET(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH})
# binary package
SET(CPACK_GENERATOR "STGZ;TGZ;TBZ2")
SET(CPACK_PACKAGE_FILE_NAME weechat-binary-${VERSION})
# source package
SET(CPACK_SOURCE_GENERATOR "TGZ;TBZ2")
SET(CPACK_SOURCE_PACKAGE_FILE_NAME weechat-${VERSION})
SET(CPACK_SOURCE_IGNORE_FILES "/\\\\.git" "/build/" "/m4/"
"/autom4te\\\\.cache/" "/ABOUT-NLS$" "/config\\\\.guess$" "/config\\\\.h$"
"/config\\\\.h.in$" "/config\\\\.log$" "/config\\\\.rpath$"
"/config\\\\.status$" "/config\\\\.sub$" "/configure$" "/depcomp$"
"/install-sh$" "/missing$" "/intl/" "/libtool$" "/\\\\.libs/"
"/ltmain\\\\.sh$" "/\\\\.deps/" "/html/" "/html1/" "/Makefile$"
"/Makefile\\\\.in$" "stamp" "/po/.*\\\\.header$" "\\\\.gmo$" "~$" "\\\\.o$"
"\\\\.lo$" "\\\\.a$" "\\\\.la$" "\\\\.lai$" "\\\\.Plo$" "/weechat-curses$"
"/weechat-gtk$"
)
INCLUDE(CPack)
+275 -609
View File
@@ -1,626 +1,285 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
13. Use with the GNU Affero General Public License.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
14. Revised Versions of this License.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
NO WARRANTY
15. Disclaimer of Warranty.
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
@@ -628,15 +287,15 @@ free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
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
the Free Software Foundation, either version 3 of the License, or
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
@@ -645,30 +304,37 @@ the "copyright" line and a pointer to where the full notice is found.
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<http://www.gnu.org/licenses/>.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
The GNU General Public License does not permit incorporating your program
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
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program 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 Library General
Public License instead of this License.
+88 -958
View File
File diff suppressed because it is too large Load Diff
+6
View File
@@ -0,0 +1,6 @@
WeeChat - Wee Enhanced Environment for Chat
===========================================
WeeChat FAQ, 2003-09-19
<<< TO DO ! >>>
+6 -32
View File
@@ -1,36 +1,10 @@
WeeChat Installation instructions
=================================
WeeChat - Installation instructions
===================================
You can build WeeChat with cmake (recommended way) or autotools.
1) Run 'make'
2) As root, run 'make install'
With cmake
----------
3) Enjoy ! :-)
------------------------------------------------------------------
mkdir build
cd build
cmake .. -DPREFIX=/where/you/want/install -DCMAKE_BUILD_TYPE=Debug
make
make install (as root for installation in system directories)
------------------------------------------------------------------
With autotools
--------------
----------------------------------------------------------------------
./autogen.sh (for cloned git repository only, not .tar.XX package)
./configure --prefix=/where/you/want/install
make
make install (as root for installation in system directories)
----------------------------------------------------------------------
If you want to report bugs/crashes to developers, please:
- compile with debug info (type "Debug" for cmake build, default for autotools),
- enable core files (for bash shell, add "ulimit -c unlimited" to your ~/.bashrc).
See AUTHORS for support, feel free to contact us for any problem.
See AUTHORS for any support, feel free to contact us for any problem ;)
+31
View File
@@ -0,0 +1,31 @@
# Copyright (c) 2003 FlashCode <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
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
OUTPUT=weechat
all:
cd src && make
install:
@mkdir -v -p $(DESTDIR)/usr/$(LOCALRPM)/bin
@cp -v src/$(OUTPUT) $(DESTDIR)/usr/$(LOCALRPM)/bin/
@mkdir -v -p $(DESTDIR)/usr/share/man/man1
@cp -v weechat.1 $(DESTDIR)/usr/share/man/man1/
@echo -e "\n=== WeeChat installed!\n"
clean:
cd src && make clean
-52
View File
@@ -1,52 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
if DOC
doc_dir = doc
endif
SUBDIRS = po $(doc_dir) intl src
EXTRA_DIST = CMakeLists.txt \
config.rpath \
config.h.cmake \
cmake/cmake_uninstall.cmake.in \
cmake/FindAsciidoc.cmake \
cmake/FindAspell.cmake \
cmake/FindGcrypt.cmake \
cmake/FindGettext.cmake \
cmake/FindGnuTLS.cmake \
cmake/FindIconv.cmake \
cmake/FindLua.cmake \
cmake/FindNcurses.cmake \
cmake/FindPerl.cmake \
cmake/FindPkgConfig.cmake \
cmake/FindPython.cmake \
cmake/FindRuby.cmake \
cmake/FindSourcehighlight.cmake \
cmake/FindTCL.cmake \
cmake/makedist.sh.in \
po/CMakeLists.txt \
po/srcfiles.cmake \
weechat.spec \
weechat_icon_32.png \
weechat.pc.in \
UPGRADE_0.3
ACLOCAL_AMFLAGS = -I m4
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = weechat.pc
+4 -246
View File
@@ -1,248 +1,6 @@
WeeChat News
============
FlashCode <flashcode@flashtux.org>
v0.3.2, 2010-04-18
WeeChat - Wee Enhanced Environment for Chat
===========================================
FlashCode, 2003-09-27
Version 0.3.2 (2010-04-18)
--------------------------
If you are using `/upgrade` from a previous release, then you must execute this
command on all IRC servers/channels/private buffers and xfer DCC chats (not
needed on WeeChat core buffer or buffers from other plugins/scripts): +
`/buffer set highlight_words $nick`
Version 0.3.1.1 (2010-01-31)
----------------------------
This version fixes crashs with SSL connection and purge of old DCC chats.
All users of version 0.2.2 should upgrade to this version.
Version 0.3.1 (2010-01-23)
--------------------------
IRC commands /ame and /amsg are now aliases, if you are upgrading from version
0.3.0, you must create aliases with following commands: +
`/alias aaway allserv /away` +
`/alias ame allchan /me` +
`/alias amsg allchan /amsg *` +
`/alias anick allserv /nick`
Version 0.3.0 (2009-09-06)
--------------------------
This version brings major changes, especially for configuration files and plugin
API.
For more information about this version, please read file 'UPGRADE_0.3'.
Version 0.2.6.3 (2009-06-13)
----------------------------
This version fixes gnutls detection.
Version 0.2.6.2 (2009-04-18)
----------------------------
This version fixes a bug with charset decoding (like 'iso2022jp').
Version 0.2.6.1 (2009-03-14)
----------------------------
This version fixes a major bug: crash with some special chars in IRC messages.
Version 0.2.6 (2007-09-06)
--------------------------
No release note.
Version 0.2.5 (2007-06-07)
--------------------------
No release note.
Version 0.2.4 (2007-03-29)
--------------------------
No release note.
Version 0.2.3 (2007-01-10)
--------------------------
This version fixes several major bugs of version 0.2.2.
All users of version 0.2.2 should upgrade to this version.
Version 0.2.2 (2007-01-06)
--------------------------
Important release notes:
* new charset plugin:
** for users of any previous version, all your charset settings in weechat.rc
will be LOST! You should save your weechat.rc to keep your values and set
them again with new 'charset' plugin.
** for ISO users: history of channels may be without accents (after `/upgrade`),
this is not recoverable, but this is not a bug. All new messages should be
ok.
** be careful, now default encode is UTF-8 for all channels (before it was
terminal charset). If you still want to send messages as 'ISO-8859-1', you
should send either global encode or server specific encode to 'ISO-8859-1':
*** for global encode: `/setp charset.global.encode = "ISO-8859-1"`
*** for server encode (on server buffer): `/charset encode ISO-8859-1`
* new keys for topic scroll:
** new keys for scrolling topic: F9/F10
** key F10 was used for `infobar_clear` in previous WeeChat versions,
you have to manually rebind this key (except for new WeeChat users):
*** `/key <press alt-k then F10> scroll_topic_right` (which gives something
like: `/key meta2-21~ scroll_topic_right`).
Version 0.2.1 (2006-10-01)
--------------------------
No release note.
Version 0.2.0 (2006-08-19)
--------------------------
Important release notes:
* if you upgraded with `/upgrade` in WeeChat, you should `/disconnect` and then
`/reconnect` on each server, to display properly channel/user modes.
* if you're using plugins, you should remove some old plugins libraries in
WeeChat system library directory (commonly '/usr/local/lib/weechat/plugins'):
remove `lib*` files (like `libperl.*`, `libpython.*`, ..) and keep only new
libraries (`perl.*`, `python.*`, ..).
Version 0.1.9 (2006-05-25)
--------------------------
Important release notes:
* please close all DCC chat buffers before using /upgrade command, otherwise you
may experience problems with DCC chats.
* some changes in script API: now timer handlers functions takes exactly
0 (zero) argument (in version 0.1.8, two arguments were mandatory but not
used: server and args).
Version 0.1.8 (2006-03-18)
--------------------------
Important release notes:
* it is recommended for users of version 0.1.7 (or any older), to
replace values in setup file ('~/.weechat/weechat.rc'):
** option: log_path: replace '~/.weechat/logs' by '%h/logs'
** option: plugins_path: replace '~/.weechat/plugins' by '%h/plugins' +
'%h' is replaced by WeeChat home (default: '~/.weechat', may be overriden
by new command line arg `--dir`).
* after installing 0.1.8 (or with `/upgrade`), issue both commands (if you
didn't redefine these keys (alt-home/end):
** `/key unbind meta-meta2-1~`
** `/key unbind meta-meta2-4~`
** then launch again WeeChat (or issue `/upgrade`).
* Keys alt-home/end were used for nicklist scroll, they're now replaced by
alt-F11/F12.
Version 0.1.7 (2006-01-14)
--------------------------
Important release notes:
* Ruby script plugin has been added but is experimental in this release.
You're warned!
* `/away` command was changed to be RFC 2812 compliant. Now argument is required
to set away, and no argument means remove away ("back"). Option
'irc_default_msg_away' has been removed.
Version 0.1.6 (2005-11-11)
--------------------------
Important release notes:
* incompatibility with some old scripts: now all handlers have to return a code
for completion, and to do some actions about message to ignore (please look at
documentation for detail).
* on OpenBSD, the new option 'plugins_extension' should be set to '.so.0.0'
since the plugins names are ending by '.so.0.0' and not '.so'.
* with new and full UTF-8 support, the option 'look_charset_internal' should be
set to blank for most cases. Forces it only if your locale is not properly
detected by WeeChat (you can set 'UTF-8' or 'ISO-8859-15' for example,
depending on your locale). WeeChat is looking for 'UTF-8' in your locale name
at startup.
Version 0.1.5 (2005-09-24)
--------------------------
No release note.
Version 0.1.4 (2005-07-30)
--------------------------
No release note.
Version 0.1.3 (2005-07-02)
--------------------------
No release note.
Version 0.1.2 (2005-05-21)
--------------------------
No release note.
Version 0.1.1 (2005-03-20)
--------------------------
No release note.
Version 0.1.0 (2005-02-12)
--------------------------
No release note.
Version 0.0.9 (2005-01-01)
--------------------------
No release note.
Version 0.0.8 (2004-10-30)
--------------------------
No release note.
Version 0.0.7 (2004-08-08)
--------------------------
No release note.
Version 0.0.6 (2004-06-05)
--------------------------
No release note.
Version 0.0.5 (2004-02-07)
--------------------------
No release note.
Version 0.0.4 (2004-01-01)
--------------------------
No release note.
Version 0.0.3 (2003-11-03)
--------------------------
No release note.
Version 0.0.2 (2003-10-05)
--------------------------
No release note.
Version 0.0.1 (2003-09-27)
--------------------------
No release note.
WeeChat 0.0.1 released.
+25 -18
View File
@@ -1,5 +1,5 @@
WeeChat Readme
==============
WeeChat - Wee Enhanced Environment for Chat
===========================================
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat
@@ -9,29 +9,29 @@ It is customizable and extensible with scripts.
Features
--------
* chat client with multi-protocols/servers connection
* many GUI (curses, Gtk, Qt) (1)
* small, fast and very light
* customizable and extensible with plugins (C, Perl, Python, Ruby, Lua, Tcl)
* compliant with IRC RFCs 1459, 2810, 2811, 2812 and 2813
* developed from scratch
* multi-platform (GNU/Linux, *BSD, Mac OS X, QNX, Windows & other) (2)
* free software, released under GPLv3
NOTE: (1) only Curses interface is available today
+
(2) Windows version is under construction
* IRC chat client with multi-server connection
* many GUI (curses, text, Gtk, QT) (1)
* small, fast and very light
* customizable and extensible with scripts (Perl, Python, Ruby) (2)
* compliant with RFC 1459,2810,2811,2812,2813
* multi-platform (GNU/Linux, *BSD, Windows & other) (3)
* 100% GPL & free
Copyright
---------
WeeChat (c) Copyright 2003-2010 by FlashCode <flashcode@flashtux.org>
WeeChat (c) Copyright 2003
by: FlashCode <flashcode@flashtux.org>
Xahlexx <xahlex@tuxisland.org>
Bounga <bounga@altern.org>
(see AUTHORS file if you want to contact authors)
WeeChat is distributed under GPL licence (see COPYING file for complete license):
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
the Free Software Foundation; either version 3 of the License, or
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
@@ -40,4 +40,11 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
---
(1) only curses & text interfaces are available today
(2) plugin interfaces are not yet developed
(3) only GNU/Linux version is available today
+130
View File
@@ -0,0 +1,130 @@
WeeChat - Wee Enhanced Environment for Chat
===========================================
TODO - 2003-09-27
Legend:
# done
+ currently in development
- pending
? is this really necessary?
v0.0.1:
* IRC protocol:
# "/quote" command: send a raw string to the server without parsing it
# "/me" command (for user actions description)
# "/away" command (to toggle the away status)
# "/op", "/deop", "/voice", "/devoice" commands
# "/invite" command
# "/kick", "/ban", "/unban" commands
# "/kill" command
# "/list" command: list of channels
# "/names" command: view who is on a given channel without being
on it (for example /names #weechat gives all the nicks present on
#weechat, except those who have the +i flag (server side))
# "/oper" command: become operator on the irc network
# "/topic" command: change the topic of a channel
# "/version" command: give the irc client version (CTCP VERSION)
of a given nick/channel (without parameter: gives WeeChat version)
# "/whois" command
* WeeChat commands:
# "/clear": to clear window content
* Interface:
# "demi-highlight" when joins/quits etc
# log messages/warning/errors to ~/.weechat/log file
# improve editing zone (left arrow <> backspace)
# sort nick list
# choose nick list position (top, left, right (default), bottom)
# auto-resize nicklist (when nick too long)
# do pretty cutting of long lines (align on the nick or after hour for server)
# keep history of commands and call them again with up/down arrow
# text GUI
# ncurses GUI:
# one window for each channel
# color display
# private windows
# redraw window when term size is modified
# chat history (pgup/pgdn for displaying history)
# switch to other channel window
* TCP/IP communication:
# IPv4 protocol implementation
* Configuration:
# write default config file
Future versions:
* IRC protocol:
- implement RFC 2812
+ "/mode" command: change the user/channels modes
- "/dcc" command (for chat and sending/receiving files)
- manage "halfop" status
- complete "/list" command: add regexp search, display only channels that
match regexp
- "/connect" and "/disconnect" commands (for multiservers use)
- "/ignore" and "/unignore" commands: hide all that is write by a given
nick/host
- when we're away, WeeChat should log all the lines begenning by our nick.
When we come back from our away it should print it to the current window
- "/rehash" command: tell the server to reload its config file
- "/restart" command: tell the server to restart itself
- "/notify" and "/unnotify" command to be warn by WeeChat when a given
nick/host connect to the given irc network
- "/wallops" command: write the same string to all the
persons with the flag +w enable
* WeeChat commands:
- "/completion" command: do shortcuts (for example when we type "u"
in the text bar it send it to the server as "you")
- "/exec" command: execute a command as if we was in shell
and show us the output on the current window. An option to exec
like -o could send the output to the server, on the current
channel/private
- "/reload" command: reload the WeeChat's config file
- "/set" command: allow the user to set the WeeChat variables
under WeeChat without editing the config file (colours, time
format, etc)
- "/highlight" command: highlight a given word when it appears on
channels/privates
* Interface:
- display current channel modes (example : #weechat(+nt))
- interpret ^B in messages (this means bold text)
- internationalization (traduce WeeChat in many languages)
- many channel windows in one window/term (window split)
- add lag indicator
- log chats to file
- forget some old lines that were displayed long time ago (now all is saved,
if WeeChat is running for long time, a lot of memory is used!)
- improve completion (for example complete command parameters when possible)
- understand incomplete commands if unambigous (for example: /he for /help is ok)
- add clock (in status bar?)
- Gtk GUI
? Qt GUI
* TCP/IP communication:
- IPv6 protocol implementation
* Configuration:
- add key bindings to config file
- add missing options for config file
- write config file
- add an option for each server in order to run commands on join
(example: /msg nickserv identify password)
- channel list for auto-join (for each server)
- do not stop program if problem with options in config file
- load config file after GUI (so init values by default (colors, ...) before
loading config)
* Plugins:
- add Perl plugin
- add Python plugin
- add Ruby plugin
- "/load" and "/unload" commands to (un)load extension scripts
(perl, python, ruby, ...)
-83
View File
@@ -1,83 +0,0 @@
WeeChat Upgrade to 0.3.x
========================
FlashCode <flashcode@flashtux.org>
v0.3.0, 2009-09-06
This document lists major changes introduced in version 0.3.0 and not compatible
with versions 0.2.x.
Upgrade to version 0.3.x
------------------------
It is *NOT POSSIBLE* to use command `/upgrade` from a version 0.2.x to 0.3.x.
You have to quit your old WeeChat, then run new version.
Of course, command `/upgrade` is working fine once you'll be with 0.3.x to
upgrade to another 0.3.x (unless this command is broken again, please look
at release notes (file 'NEWS') for version you're currently installing).
Configuration files
-------------------
Changes with previous versions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
New configuration files (`*.conf`) are not compatible with old files (`*.rc`).
Name of options is similar to old versions, but there is now one configuration
file by plugin, and one file for WeeChat core.
There is *no automatic conversion* for your old options to new configuration files,
so you'll have to setup again your IRC servers and all other options.
In WeeChat, option names are now with format: `plugin.section.option` (for
WeeChat core, `plugin` is `weechat`).
Examples:
* WeeChat options: `weechat.xxx.yyy`
* IRC options: `irc.xxx.yyy`
You should read quickstart guide to be familiar with basic commands and syntax
(some commands like `/server` have changed): http://www.weechat.org/doc
List of configuration files
~~~~~~~~~~~~~~~~~~~~~~~~~~~
* Old configuration files:
** weechat.rc
** plugins.rc
* New configuration files are now (with default plugins):
** weechat.conf
** alias.conf
** aspell.conf
** charset.conf
** irc.conf
** jabber.conf
** logger.conf
** plugins.conf
** relay.conf
** xfer.conf
Plugin API
----------
Plugin API has been rewritten and is not compatible with previous versions.
Accordingly, scripts and plugins must have been designed for version 0.3.x to
be loaded into WeeChat.
There is no migration script today to convert old script to new API.
Therefore, if you plan to use old script, you'll have to wait for new version
or you can convert script yourself and send us new version ;)
You can download scripts for new API on plugins page:
http://www.weechat.org/plugins
More information about new API is available on wiki:
http://wiki.flashtux.org/wiki/WeeChat_0.3.0
and http://wiki.flashtux.org/wiki/WeeChat_0.3.0_API
-79
View File
@@ -1,79 +0,0 @@
#!/bin/sh
#
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###
### common stuff
###
OK="\\033[70G[\\033[1;32mOK\\033[1;00m]"
FAIL="\\033[70G[\\033[1;31mFAILED\\033[1;00m]"
AUTOGEN_LOG=autogen.log
err ()
{
echo "-------"
echo "Error :"
echo "---8<-----------------------------------"
cat $AUTOGEN_LOG
echo "----------------------------------->8---"
exit 1
}
run ()
{
echo -n "Running \"$@\""
eval $@ >$AUTOGEN_LOG 2>&1
if [ $? = 0 ] ; then
echo -e $OK
else
echo -e $FAIL
err
fi
}
###
### cleanning part
###
# remove autotools stuff
run "rm -rf config"
run "rm -f config.h.in"
run "rm -f aclocal.m4 configure config.log config.status"
run "rm -rf autom4te*.cache"
# remove libtool stuff
run "rm -f libtool"
# remove gettext stuff
run "rm -f ABOUT-NLS"
run "rm -rf intl"
###
### configuration part
###
# create the config directory
run "mkdir -p config/m4"
run "mkdir intl"
# execute autotools cmds
run "autopoint -f"
run "libtoolize --automake --force --copy"
run "aclocal --force -I config/m4"
run "autoheader"
run "autoconf"
run "automake --add-missing --copy --gnu"
# ending
rm -f $AUTOGEN_LOG
-43
View File
@@ -1,43 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find Asciidoc
# This module finds if asciidoc (version 8 or newer) is installed.
IF (ASCIIDOC_FOUND)
# Already in cache, be silent
SET(ASCIIDOC_FIND_QUIETLY TRUE)
ENDIF (ASCIIDOC_FOUND)
FIND_PROGRAM(
ASCIIDOC_EXECUTABLE asciidoc
PATHS /bin /usr/bin /usr/local/bin /usr/pkg/bin
)
IF(ASCIIDOC_EXECUTABLE)
EXECUTE_PROCESS(
COMMAND ${ASCIIDOC_EXECUTABLE} --version
OUTPUT_VARIABLE ASCIIDOC_VERSION
)
IF(${ASCIIDOC_VERSION} MATCHES "asciidoc 8.*")
SET(ASCIIDOC_FOUND TRUE)
ENDIF(${ASCIIDOC_VERSION} MATCHES "asciidoc 8.*")
MARK_AS_ADVANCED(
ASCIIDOC_EXECUTABLE
)
ENDIF(ASCIIDOC_EXECUTABLE)
-48
View File
@@ -1,48 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find Aspell
# This module finds if libaspell is installed and determines where
# the include files and libraries are.
#
# This code sets the following variables:
#
# ASPELL_INCLUDE_PATH = path to where aspell.h can be found
# ASPELL_LIBRARY = path to where libaspell.so* can be found
IF (ASPELL_FOUND)
# Already in cache, be silent
SET(ASPELL_FIND_QUIETLY TRUE)
ENDIF (ASPELL_FOUND)
FIND_PATH(ASPELL_INCLUDE_PATH
NAMES aspell.h
PATHS /usr/include /usr/local/include /usr/pkg/include
)
FIND_LIBRARY(ASPELL_LIBRARY
NAMES aspell aspell-15
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
)
IF (ASPELL_INCLUDE_PATH AND ASPELL_LIBRARY)
SET(ASPELL_FOUND TRUE)
ENDIF (ASPELL_INCLUDE_PATH AND ASPELL_LIBRARY)
MARK_AS_ADVANCED(
ASPELL_INCLUDE_PATH
ASPELL_LIBRARY
)
-47
View File
@@ -1,47 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find Gcrypt
# This module finds if libgcrypt is installed and determines where
# the include files and libraries are.
#
# This code sets the following variables:
#
# GCRYPT_CFLAGS = cflags to use to compile
# GCRYPT_LDFLAGS = ldflags to use to compile
#
FIND_PROGRAM(LIBGCRYPT_CONFIG_EXECUTABLE NAMES libgcrypt-config)
set(GCRYPT_LDFLAGS)
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)
IF(${GCRYPT_CFLAGS} MATCHES "\n")
SET(GCRYPT_CFLAGS " ")
ENDIF(${GCRYPT_CFLAGS} MATCHES "\n")
IF(GCRYPT_LDFLAGS AND GCRYPT_CFLAGS)
SET(GCRYPT_FOUND TRUE)
ENDIF(GCRYPT_LDFLAGS AND GCRYPT_CFLAGS)
ENDIF(LIBGCRYPT_CONFIG_EXECUTABLE)
MARK_AS_ADVANCED(GCRYPT_CFLAGS GCRYPT_LDFLAGS)
-67
View File
@@ -1,67 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find Gettext
# This module finds if gettext is installed and determines where
# the include files and libraries are.
#
# This code sets the following variables:
#
# GETTEXT_FOUND = is gettext usable on system?
IF(GETTEXT_FOUND)
# Already in cache, be silent
SET(GETTEXT_FIND_QUIETLY TRUE)
ENDIF(GETTEXT_FOUND)
INCLUDE(CheckIncludeFiles)
INCLUDE(CheckLibraryExists)
INCLUDE(CheckFunctionExists)
FIND_PATH(LIBINTL_INCLUDE
NAMES libintl.h
PATH /usr/local/include /usr/pkg/include /usr/include
)
SET(CMAKE_REQUIRED_INCLUDES ${LIBINTL_INCLUDE})
CHECK_INCLUDE_FILES(libintl.h HAVE_LIBINTL_H)
IF(HAVE_LIBINTL_H)
CHECK_FUNCTION_EXISTS(dgettext LIBC_HAS_DGETTEXT)
IF(LIBC_HAS_DGETTEXT)
SET(GETTEXT_FOUND TRUE)
ELSE(LIBC_HAS_DGETTEXT)
FIND_LIBRARY(LIBINTL_LIBRARY NAMES intl
PATHS
/usr/local/lib
/usr/lib
)
IF(LIBINTL_LIBRARY)
IF(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
SET(CMAKE_REQUIRED_LIBRARIES "iconv")
CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "libintl_dgettext" "" LIBINTL_HAS_DGETTEXT)
ELSE(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
CHECK_LIBRARY_EXISTS(${LIBINTL_LIBRARY} "dgettext" "" LIBINTL_HAS_DGETTEXT)
ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
IF(LIBINTL_HAS_DGETTEXT)
SET(GETTEXT_FOUND TRUE)
ENDIF(LIBINTL_HAS_DGETTEXT)
ENDIF(LIBINTL_LIBRARY)
ENDIF(LIBC_HAS_DGETTEXT)
ENDIF(HAVE_LIBINTL_H)
-71
View File
@@ -1,71 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find GnuTLS
# This module finds if libgnutls is installed and determines where
# the include files and libraries are.
#
# This code sets the following variables:
#
# GNUTLS_INCLUDE_PATH = path to where <gnutls/gnutls.h> can be found
# GNUTLS_LIBRARY = path to where libgnutls.so* can be found
# GNUTLS_CFLAGS = cflags to use to compile
# GNUTLS_LDFLAGS = ldflags to use to compile
IF(GNUTLS_INCLUDE_PATH AND GNUTLS_LIBRARY)
# Already in cache, be silent
set(GNUTLS_FIND_QUIETLY TRUE)
ENDIF(GNUTLS_INCLUDE_PATH AND GNUTLS_LIBRARY)
FIND_PROGRAM(PKG_CONFIG_EXECUTABLE NAMES pkg-config)
EXECUTE_PROCESS(COMMAND ${PKG_CONFIG_EXECUTABLE} --variable=prefix gnutls
OUTPUT_VARIABLE GNUTLS_PREFIX
)
EXECUTE_PROCESS(COMMAND ${PKG_CONFIG_EXECUTABLE} --cflags gnutls
OUTPUT_VARIABLE GNUTLS_CFLAGS
)
STRING(REGEX REPLACE "[\r\n]" "" GNUTLS_CFLAGS "${GNUTLS_FLAGS}")
EXECUTE_PROCESS(COMMAND ${PKG_CONFIG_EXECUTABLE} --libs gnutls
OUTPUT_VARIABLE GNUTLS_LDFLAGS
)
STRING(REGEX REPLACE "[\r\n]" "" GNUTLS_LDFLAGS "${GNUTLS_LDFLAGS}")
SET(GNUTLS_POSSIBLE_INCLUDE_PATH "${GNUTLS_PREFIX}/include")
SET(GNUTLS_POSSIBLE_LIB_DIR "${GNUTLS_PREFIX}/lib")
FIND_PATH(GNUTLS_INCLUDE_PATH
NAMES gnutls/gnutls.h
PATHS GNUTLS_POSSIBLE_INCLUDE_PATH
)
FIND_LIBRARY(GNUTLS_LIBRARY
NAMES gnutls
PATHS GNUTLS_POSSIBLE_LIB_DIR
)
IF (GNUTLS_INCLUDE_PATH AND GNUTLS_LIBRARY)
SET(GNUTLS_FOUND TRUE)
ENDIF (GNUTLS_INCLUDE_PATH AND GNUTLS_LIBRARY)
MARK_AS_ADVANCED(
GNUTLS_INCLUDE_PATH
GNUTLS_LIBRARY
GNUTLS_CFLAGS
GNUTLS_LDFLAGS
)
-82
View File
@@ -1,82 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find Iconv
# This module finds if libiconv is installed and determines where
# the include files and libraries are.
#
# This code sets the following variables:
#
# ICONV_INCLUDE_PATH = path to where <iconv.h> can be found
# ICONV_LIBRARY = path to where libiconv.so* can be found (on non glibc based systems)
#
# ICONV_FOUND = is iconv usable on system?
IF(ICONV_FOUND)
# Already in cache, be silent
set(ICONV_FIND_QUIETLY TRUE)
ENDIF(ICONV_FOUND)
INCLUDE(CheckLibraryExists)
INCLUDE(CheckFunctionExists)
FIND_PATH(ICONV_INCLUDE_PATH
NAMES iconv.h
PATHS /usr/include /usr/local/include /usr/pkg/include
)
FIND_LIBRARY(ICONV_LIBRARY
NAMES iconv
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
)
IF(ICONV_INCLUDE_PATH)
IF(ICONV_LIBRARY)
STRING(REGEX REPLACE "/[^/]*$" "" ICONV_LIB_PATH "${ICONV_LIBRARY}")
CHECK_LIBRARY_EXISTS(iconv libiconv_open ${ICONV_LIB_PATH} ICONV_FOUND)
IF(NOT ICONV_FOUND)
CHECK_LIBRARY_EXISTS(iconv iconv_open ${ICONV_LIB_PATH} ICONV_FOUND)
ENDIF(NOT ICONV_FOUND)
ELSE(ICONV_LIBRARY)
CHECK_FUNCTION_EXISTS(iconv_open ICONV_FOUND)
ENDIF(ICONV_LIBRARY)
ENDIF(ICONV_INCLUDE_PATH)
include(CheckCSourceCompiles)
IF(ICONV_LIBRARY)
SET(CMAKE_REQUIRED_LIBRARIES ${ICONV_LIBRARY})
SET(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_PATH})
ENDIF(ICONV_LIBRARY)
SET(CMAKE_REQUIRED_FLAGS -Werror)
check_c_source_compiles("
#include <iconv.h>
int main(){
iconv_t conv = 0;
const char* in = 0;
size_t ilen = 0;
char* out = 0;
size_t olen = 0;
iconv(conv, &in, &ilen, &out, &olen);
return 0;
}
" ICONV_2ARG_IS_CONST)
MARK_AS_ADVANCED(
ICONV_INCLUDE_PATH
ICONV_LIBRARY
ICONV_FOUND
)
-84
View File
@@ -1,84 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find Lua
# This module finds if liblua is installed and determines where
# the include files and libraries are.
#
# This code sets the following variables:
#
# LUA_INCLUDE_PATH = path to where <lua.h> can be found
# LUA_LIBRARY = path to where liblua.so* (and liblualib.so* for lua <can be found (on non glibc based systems)
#
# LUA_FOUND = is liblua usable on system?
IF(LUA_FOUND)
# Already in cache, be silent
SET(LUA_FIND_QUIETLY TRUE)
ENDIF(LUA_FOUND)
FIND_PATH(
LUA51_INCLUDE_PATH lua.h
PATHS /usr/include /usr/local/include /usr/pkg/include
PATH_SUFFIXES lua51 lua5.1 lua-5.1
)
FIND_LIBRARY(
LUA51_LIBRARY NAMES lua51 lua5.1 lua-5.1 lua
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
PATH_SUFFIXES lua51 lua5.1 lua-5.1
)
IF(LUA51_INCLUDE_PATH AND LUA51_LIBRARY)
SET(LUA_INCLUDE_PATH "${LUA51_INCLUDE_PATH}")
SET(LUA_LIBRARY "${LUA51_LIBRARY}")
SET(LUA_VERSION "5.1")
SET(LUA_FOUND TRUE)
ELSE(LUA51_INCLUDE_PATH AND LUA51_LIBRARY)
FIND_PATH(
LUA50_INCLUDE_PATH lua.h
PATHS /usr/include /usr/local/include /usr/pkg/include
PATH_SUFFIXES lua50 lua5.0 lua-5.0 lua
)
FIND_LIBRARY(
LUA50_LIBRARY NAMES lua50 lua5.0 lua-5.0 lua
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
PATH_SUFFIXES lua50 lua5.0 lua-5.0 lua
)
FIND_LIBRARY(
LUALIB50_LIBRARY NAMES lualib50 lualib5.0 lualib-5.0 lualib
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
PATH_SUFFIXES lua50 lua5.0 lua-5.0 lua
)
IF(LUA50_INCLUDE_PATH AND LUA50_LIBRARY AND LUALIB50_LIBRARY)
SET(LUA_INCLUDE_PATH "${LUA50_INCLUDE_PATH}")
SET(LUA_LIBRARY "${LUA50_LIBRARY}")
SET(LUALIB_LIBRARY "${LUALIB50_LIBRARY}")
SET(LUA_VERSION "5.0")
SET(LUA_FOUND TRUE)
ENDIF(LUA50_INCLUDE_PATH AND LUA50_LIBRARY AND LUALIB50_LIBRARY)
ENDIF(LUA51_INCLUDE_PATH AND LUA51_LIBRARY)
MARK_AS_ADVANCED(
LUA_INCLUDE_PATH
LUA_LIBRARY
LUALIB_LIBRARY
# LUA_VERSION
)
-52
View File
@@ -1,52 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
IF(NCURSES_FOUND)
SET(NCURSES_FIND_QUIETLY TRUE)
ENDIF(NCURSES_FOUND)
FIND_PATH(NCURSES_INCLUDE_PATH
NAMES ncurses.h curses.h
PATHS /usr/include /usr/local/include /usr/pkg/include
)
FIND_LIBRARY(NCURSESW_LIBRARY
NAMES ncursesw
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
)
IF (NCURSESW_LIBRARY)
SET(NCURSES_LIBRARY ${NCURSESW_LIBRARY})
ELSE(NCURSESW_LIBRARY)
FIND_LIBRARY(NCURSES_LIBRARY
NAMES ncurses
PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib
)
IF (NCURSES_LIBRARY)
MESSAGE("*** WARNING:\n"
"*** ncursesw library not found! Falling back to \"ncurses\"\n"
"*** Be careful, UTF-8 display may not work properly if your locale is UTF-8.")
ENDIF(NCURSES_LIBRARY)
ENDIF(NCURSESW_LIBRARY)
IF (NCURSES_INCLUDE_PATH AND NCURSES_LIBRARY)
SET(NCURSES_FOUND TRUE)
ENDIF(NCURSES_INCLUDE_PATH AND NCURSES_LIBRARY)
MARK_AS_ADVANCED(
NCURSES_INCLUDE_PATH
NCURSES_LIBRARY
)
-82
View File
@@ -1,82 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find Perl libraries
# This module finds if Perl is installed and determines where the include files
# and libraries are. It also determines what the name of the library is. This
# code sets the following variables:
#
# PERL_EXECUTABLE = full path to the perl binary
# PERL_INCLUDE_PATH = path to where perl.h can be found
# PERL_LIBRARY = path to where libperl.so* can be found
# PERL_CFLAGS = perl compiler options for compiling
# PERL_LFLAGS = perl compiler options for linking
IF(PERL_FOUND)
# Already in cache, be silent
SET(PERL_FIND_QUIETLY TRUE)
ENDIF(PERL_FOUND)
FIND_PROGRAM(PERL_EXECUTABLE
NAMES perl perl5
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
)
IF(PERL_EXECUTABLE)
EXECUTE_PROCESS(
COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \"\$Config{archlibexp}/CORE\""
OUTPUT_VARIABLE PERL_INTERNAL_DIR
)
EXECUTE_PROCESS(
COMMAND ${PERL_EXECUTABLE} -MExtUtils::Embed -e ccopts
OUTPUT_VARIABLE PERL_CFLAGS
)
EXECUTE_PROCESS(
COMMAND ${PERL_EXECUTABLE} -MExtUtils::Embed -e ldopts
OUTPUT_VARIABLE PERL_LFLAGS
)
# remove the new lines from the output by replacing them with empty strings
STRING(REPLACE "\n" "" PERL_INTERNAL_DIR "${PERL_INTERNAL_DIR}")
STRING(REPLACE "\n" "" PERL_CFLAGS "${PERL_CFLAGS}")
STRING(REPLACE "\n" "" PERL_LFLAGS "${PERL_LFLAGS}")
FIND_PATH(PERL_INCLUDE_PATH
NAMES perl.h
PATHS ${PERL_INTERNAL_DIR}
)
FIND_LIBRARY(PERL_LIBRARY
NAMES perl
PATHS /usr/lib /usr/local/lib /usr/pkg/lib ${PERL_INTERNAL_DIR}
)
IF(PERL_LIBRARY AND PERL_INCLUDE_PATH)
SET(PERL_FOUND TRUE)
ENDIF(PERL_LIBRARY AND PERL_INCLUDE_PATH)
MARK_AS_ADVANCED(
PERL_EXECUTABLE
PERL_INCLUDE_PATH
PERL_LIBRARY
PERL_CFLAGS
PERL_LFLAGS
)
ENDIF(PERL_EXECUTABLE)
-360
View File
@@ -1,360 +0,0 @@
# - a pkg-config module for CMake
#
# Usage:
# pkg_check_modules(<PREFIX> [REQUIRED] <MODULE> [<MODULE>]*)
# checks for all the given modules
#
# pkg_search_module(<PREFIX> [REQUIRED] <MODULE> [<MODULE>]*)
# checks for given modules and uses the first working one
#
# When the 'REQUIRED' argument was set, macros will fail with an error
# when module(s) could not be found
#
# It sets the following variables:
# PKG_CONFIG_FOUND ... true iff pkg-config works on the system
# PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program
# <PREFIX>_FOUND ... set to 1 iff module(s) exist
#
# For the following variables two sets of values exist; first one is the
# common one and has the given PREFIX. The second set contains flags
# which are given out when pkgconfig was called with the '--static'
# option.
# <XPREFIX>_LIBRARIES ... only the libraries (w/o the '-l')
# <XPREFIX>_LIBRARY_DIRS ... the paths of the libraries (w/o the '-L')
# <XPREFIX>_LDFLAGS ... all required linker flags
# <XPREFIX>_LDFLAGS_OTHER ... all other linker flags
# <XPREFIX>_INCLUDE_DIRS ... the '-I' preprocessor flags (w/o the '-I')
# <XPREFIX>_CFLAGS ... all required cflags
# <XPREFIX>_CFLAGS_OTHER ... the other compiler flags
#
# <XPREFIX> = <PREFIX> for common case
# <XPREFIX> = <PREFIX>_STATIC for static linking
#
# There are some special variables whose prefix depends on the count
# of given modules. When there is only one module, <PREFIX> stays
# unchanged. When there are multiple modules, the prefix will be
# changed to <PREFIX>_<MODNAME>:
# <XPREFIX>_VERSION ... version of the module
# <XPREFIX>_PREFIX ... prefix-directory of the module
# <XPREFIX>_INCLUDEDIR ... include-dir of the module
# <XPREFIX>_LIBDIR ... lib-dir of the module
#
# <XPREFIX> = <PREFIX> when |MODULES| == 1, else
# <XPREFIX> = <PREFIX>_<MODNAME>
#
# A <MODULE> parameter can have the following formats:
# {MODNAME} ... matches any version
# {MODNAME}>={VERSION} ... at least version <VERSION> is required
# {MODNAME}={VERSION} ... exactly version <VERSION> is required
# {MODNAME}<={VERSION} ... modules must not be newer than <VERSION>
#
# Examples
# pkg_check_modules (GLIB2 glib-2.0)
#
# pkg_check_modules (GLIB2 glib-2.0>=2.10)
# requires at least version 2.10 of glib2 and defines e.g.
# GLIB2_VERSION=2.10.3
#
# pkg_check_modules (FOO glib-2.0>=2.10 gtk+-2.0)
# requires both glib2 and gtk2, and defines e.g.
# FOO_glib-2.0_VERSION=2.10.3
# FOO_gtk+-2.0_VERSION=2.8.20
#
# pkg_check_modules (XRENDER REQUIRED xrender)
# defines e.g.:
# XRENDER_LIBRARIES=Xrender;X11
# XRENDER_STATIC_LIBRARIES=Xrender;X11;pthread;Xau;Xdmcp
#
# pkg_search_module (BAR libxml-2.0 libxml2 libxml>=2)
# Copyright (C) 2006 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
#
# Redistribution and use, with or without modification, are permitted
# provided that the following conditions are met:
#
# 1. Redistributions must retain the above copyright notice, this
# list of conditions and the following disclaimer.
# 2. The name of the author may not be used to endorse or promote
# products derived from this software without specific prior
# written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
### Common stuff ####
set(PKG_CONFIG_VERSION 1)
set(PKG_CONFIG_FOUND 0)
find_program(PKG_CONFIG_EXECUTABLE NAMES pkg-config DOC "pkg-config executable")
mark_as_advanced(PKG_CONFIG_EXECUTABLE)
if(PKG_CONFIG_EXECUTABLE)
set(PKG_CONFIG_FOUND 1)
endif(PKG_CONFIG_EXECUTABLE)
# Unsets the given variables
macro(_pkgconfig_unset var)
set(${var} "" CACHE INTERNAL "")
endmacro(_pkgconfig_unset)
macro(_pkgconfig_set var value)
set(${var} ${value} CACHE INTERNAL "")
endmacro(_pkgconfig_set)
# Invokes pkgconfig, cleans up the result and sets variables
macro(_pkgconfig_invoke _pkglist _prefix _varname _regexp)
set(_pkgconfig_invoke_result)
execute_process(
COMMAND ${PKG_CONFIG_EXECUTABLE} ${ARGN} ${_pkglist}
OUTPUT_VARIABLE _pkgconfig_invoke_result
RESULT_VARIABLE _pkgconfig_failed)
if (_pkgconfig_failed)
set(_pkgconfig_${_varname} "")
_pkgconfig_unset(${_prefix}_${_varname})
else(_pkgconfig_failed)
string(REGEX REPLACE "[\r\n]" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
string(REGEX REPLACE " +$" "" _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
if (NOT ${_regexp} STREQUAL "")
string(REGEX REPLACE "${_regexp}" " " _pkgconfig_invoke_result "${_pkgconfig_invoke_result}")
endif(NOT ${_regexp} STREQUAL "")
separate_arguments(_pkgconfig_invoke_result)
#message(STATUS " ${_varname} ... ${_pkgconfig_invoke_result}")
set(_pkgconfig_${_varname} ${_pkgconfig_invoke_result})
_pkgconfig_set(${_prefix}_${_varname} "${_pkgconfig_invoke_result}")
endif(_pkgconfig_failed)
endmacro(_pkgconfig_invoke)
# Invokes pkgconfig two times; once without '--static' and once with
# '--static'
macro(_pkgconfig_invoke_dyn _pkglist _prefix _varname cleanup_regexp)
_pkgconfig_invoke("${_pkglist}" ${_prefix} ${_varname} "${cleanup_regexp}" ${ARGN})
_pkgconfig_invoke("${_pkglist}" ${_prefix} STATIC_${_varname} "${cleanup_regexp}" --static ${ARGN})
endmacro(_pkgconfig_invoke_dyn)
# Splits given arguments into options and a package list
macro(_pkgconfig_parse_options _result _is_req)
set(${_is_req} 0)
foreach(_pkg ${ARGN})
if (_pkg STREQUAL "REQUIRED")
set(${_is_req} 1)
endif (_pkg STREQUAL "REQUIRED")
endforeach(_pkg ${ARGN})
set(${_result} ${ARGN})
list(REMOVE_ITEM ${_result} "REQUIRED")
endmacro(_pkgconfig_parse_options)
###
macro(_pkg_check_modules_internal _is_required _is_silent _prefix)
_pkgconfig_unset(${_prefix}_FOUND)
_pkgconfig_unset(${_prefix}_VERSION)
_pkgconfig_unset(${_prefix}_PREFIX)
_pkgconfig_unset(${_prefix}_INCLUDEDIR)
_pkgconfig_unset(${_prefix}_LIBDIR)
_pkgconfig_unset(${_prefix}_LIBS)
_pkgconfig_unset(${_prefix}_LIBS_L)
_pkgconfig_unset(${_prefix}_LIBS_PATHS)
_pkgconfig_unset(${_prefix}_LIBS_OTHER)
_pkgconfig_unset(${_prefix}_CFLAGS)
_pkgconfig_unset(${_prefix}_CFLAGS_I)
_pkgconfig_unset(${_prefix}_CFLAGS_OTHER)
_pkgconfig_unset(${_prefix}_STATIC_LIBDIR)
_pkgconfig_unset(${_prefix}_STATIC_LIBS)
_pkgconfig_unset(${_prefix}_STATIC_LIBS_L)
_pkgconfig_unset(${_prefix}_STATIC_LIBS_PATHS)
_pkgconfig_unset(${_prefix}_STATIC_LIBS_OTHER)
_pkgconfig_unset(${_prefix}_STATIC_CFLAGS)
_pkgconfig_unset(${_prefix}_STATIC_CFLAGS_I)
_pkgconfig_unset(${_prefix}_STATIC_CFLAGS_OTHER)
# create a better addressable variable of the modules and calculate its size
set(_pkg_check_modules_list ${ARGN})
list(LENGTH _pkg_check_modules_list _pkg_check_modules_cnt)
if(PKG_CONFIG_EXECUTABLE)
# give out status message telling checked module
if (NOT ${_is_silent})
if (_pkg_check_modules_cnt EQUAL 1)
message(STATUS "checking for module '${_pkg_check_modules_list}'")
else(_pkg_check_modules_cnt EQUAL 1)
message(STATUS "checking for modules '${_pkg_check_modules_list}'")
endif(_pkg_check_modules_cnt EQUAL 1)
endif(NOT ${_is_silent})
set(_pkg_check_modules_packages)
set(_pkg_check_modules_failed)
# iterate through module list and check whether they exist and match the required version
foreach (_pkg_check_modules_pkg ${_pkg_check_modules_list})
set(_pkg_check_modules_exist_query)
# check whether version is given
if (_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*")
string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\1" _pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}")
string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\2" _pkg_check_modules_pkg_op "${_pkg_check_modules_pkg}")
string(REGEX REPLACE "(.*[^><])(>=|=|<=)(.*)" "\\3" _pkg_check_modules_pkg_ver "${_pkg_check_modules_pkg}")
else(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*")
set(_pkg_check_modules_pkg_name "${_pkg_check_modules_pkg}")
set(_pkg_check_modules_pkg_op)
set(_pkg_check_modules_pkg_ver)
endif(_pkg_check_modules_pkg MATCHES ".*(>=|=|<=).*")
# handle the operands
if (_pkg_check_modules_pkg_op STREQUAL ">=")
list(APPEND _pkg_check_modules_exist_query --atleast-version)
endif(_pkg_check_modules_pkg_op STREQUAL ">=")
if (_pkg_check_modules_pkg_op STREQUAL "=")
list(APPEND _pkg_check_modules_exist_query --exact-version)
endif(_pkg_check_modules_pkg_op STREQUAL "=")
if (_pkg_check_modules_pkg_op STREQUAL "<=")
list(APPEND _pkg_check_modules_exist_query --max-version)
endif(_pkg_check_modules_pkg_op STREQUAL "<=")
# create the final query which is of the format:
# * --atleast-version <version> <pkg-name>
# * --exact-version <version> <pkg-name>
# * --max-version <version> <pkg-name>
# * --exists <pkg-name>
if (_pkg_check_modules_pkg_op)
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_ver}")
else(_pkg_check_modules_pkg_op)
list(APPEND _pkg_check_modules_exist_query --exists)
endif(_pkg_check_modules_pkg_op)
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_VERSION)
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_PREFIX)
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_INCLUDEDIR)
_pkgconfig_unset(${_prefix}_${_pkg_check_modules_pkg_name}_LIBDIR)
list(APPEND _pkg_check_modules_exist_query "${_pkg_check_modules_pkg_name}")
list(APPEND _pkg_check_modules_packages "${_pkg_check_modules_pkg_name}")
# execute the query
execute_process(
COMMAND ${PKG_CONFIG_EXECUTABLE} ${_pkg_check_modules_exist_query}
RESULT_VARIABLE _pkgconfig_retval)
# evaluate result and tell failures
if (_pkgconfig_retval)
if(NOT ${_is_silent})
message(STATUS " package '${_pkg_check_modules_pkg}' not found")
endif(NOT ${_is_silent})
set(_pkg_check_modules_failed 1)
endif(_pkgconfig_retval)
endforeach(_pkg_check_modules_pkg)
if(_pkg_check_modules_failed)
# fail when requested
if (${_is_required})
message(SEND_ERROR "A required package was not found")
endif (${_is_required})
else(_pkg_check_modules_failed)
# when we are here, we checked whether requested modules
# exist. Now, go through them and set variables
_pkgconfig_set(${_prefix}_FOUND 1)
list(LENGTH _pkg_check_modules_packages pkg_count)
# iterate through all modules again and set individual variables
foreach (_pkg_check_modules_pkg ${_pkg_check_modules_packages})
# handle case when there is only one package required
if (pkg_count EQUAL 1)
set(_pkg_check_prefix "${_prefix}")
else(pkg_count EQUAL 1)
set(_pkg_check_prefix "${_prefix}_${_pkg_check_modules_pkg}")
endif(pkg_count EQUAL 1)
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" VERSION "" --modversion )
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" PREFIX "" --variable=prefix )
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" INCLUDEDIR "" --variable=includedir )
_pkgconfig_invoke(${_pkg_check_modules_pkg} "${_pkg_check_prefix}" LIBDIR "" --variable=libdir )
message(STATUS " found ${_pkg_check_modules_pkg}, version ${_pkgconfig_VERSION}")
endforeach(_pkg_check_modules_pkg)
# set variables which are combined for multiple modules
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARIES "(^| )-l" --libs-only-l )
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LIBRARY_DIRS "(^| )-L" --libs-only-L )
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LDFLAGS "" --libs )
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" LDFLAGS_OTHER "" --libs-only-other )
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" INCLUDE_DIRS "(^| )-I" --cflags-only-I )
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS "" --cflags )
_pkgconfig_invoke_dyn("${_pkg_check_modules_packages}" "${_prefix}" CFLAGS_OTHER "" --cflags-only-other )
endif(_pkg_check_modules_failed)
else(PKG_CONFIG_EXECUTABLE)
if (${_is_required})
message(SEND_ERROR "pkg-config tool not found")
endif (${_is_required})
endif(PKG_CONFIG_EXECUTABLE)
endmacro(_pkg_check_modules_internal)
###
### User visible macros start here
###
###
macro(pkg_check_modules _prefix _module0)
# check cached value
if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION})
_pkgconfig_parse_options (_pkg_modules _pkg_is_required "${_module0}" ${ARGN})
_pkg_check_modules_internal("${_pkg_is_required}" 0 "${_prefix}" ${_pkg_modules})
_pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})
endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION})
endmacro(pkg_check_modules)
###
macro(pkg_search_module _prefix _module0)
# check cached value
if (NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND)
set(_pkg_modules_found 0)
_pkgconfig_parse_options(_pkg_modules_alt _pkg_is_required "${_module0}" ${ARGN})
message(STATUS "checking for one of the modules '${_pkg_modules_alt}'")
# iterate through all modules and stop at the first working one.
foreach(_pkg_alt ${_pkg_modules_alt})
if(NOT _pkg_modules_found)
_pkg_check_modules_internal(0 1 "${_prefix}" "${_pkg_alt}")
endif(NOT _pkg_modules_found)
if (${_prefix}_FOUND)
set(_pkg_modules_found 1)
endif(${_prefix}_FOUND)
endforeach(_pkg_alt)
if (NOT ${_prefix}_FOUND)
if(${_pkg_is_required})
message(SEND_ERROR "None of the required '${_pkg_modules_alt}' found")
endif(${_pkg_is_required})
endif(NOT ${_prefix}_FOUND)
_pkgconfig_set(__pkg_config_checked_${_prefix} ${PKG_CONFIG_VERSION})
endif(NOT DEFINED __pkg_config_checked_${_prefix} OR __pkg_config_checked_${_prefix} LESS ${PKG_CONFIG_VERSION} OR NOT ${_prefix}_FOUND)
endmacro(pkg_search_module)
### Local Variables:
### mode: cmake
### End:
-79
View File
@@ -1,79 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find Python
# This module finds if Python is installed and determines where the include files
# and libraries are. It also determines what the name of the library is. This
# code sets the following variables:
#
# PYTHON_EXECUTABLE = full path to the python binary
# PYTHON_INCLUDE_PATH = path to where python.h can be found
# PYTHON_LIBRARY = path to where libpython.so* can be found
# PYTHON_LFLAGS = python compiler options for linking
IF(PYTHON_FOUND)
# Already in cache, be silent
SET(PYTHON_FIND_QUIETLY TRUE)
ENDIF(PYTHON_FOUND)
FIND_PROGRAM(PYTHON_EXECUTABLE
NAMES python python2.6 python2.5 python2.4 python2.3 python2.2
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
)
IF(PYTHON_EXECUTABLE)
EXECUTE_PROCESS(
COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import *; print get_config_var('CONFINCLUDEPY')"
OUTPUT_VARIABLE PYTHON_INC_DIR
)
EXECUTE_PROCESS(
COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import *; print get_config_var('LIBPL')"
OUTPUT_VARIABLE PYTHON_POSSIBLE_LIB_PATH
)
EXECUTE_PROCESS(
COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import *; print get_config_var('LINKFORSHARED')"
OUTPUT_VARIABLE PYTHON_LFLAGS
)
# remove the new lines from the output by replacing them with empty strings
STRING(REPLACE "\n" "" PYTHON_INC_DIR "${PYTHON_INC_DIR}")
STRING(REPLACE "\n" "" PYTHON_POSSIBLE_LIB_PATH "${PYTHON_POSSIBLE_LIB_PATH}")
STRING(REPLACE "\n" "" PYTHON_LFLAGS "${PYTHON_LFLAGS}")
FIND_PATH(PYTHON_INCLUDE_PATH
NAMES Python.h
PATHS ${PYTHON_INC_DIR}
)
FIND_LIBRARY(PYTHON_LIBRARY
NAMES python python2.6 python2.5 python2.4 python2.3 python2.2
PATHS ${PYTHON_POSSIBLE_LIB_PATH}
)
IF(PYTHON_LIBRARY AND PYTHON_INCLUDE_PATH)
SET(PYTHON_FOUND TRUE)
ENDIF(PYTHON_LIBRARY AND PYTHON_INCLUDE_PATH)
MARK_AS_ADVANCED(
PYTHON_EXECUTABLE
PYTHON_INCLUDE_PATH
PYTHON_LIBRARY
PYTHON_LFLAGS
)
ENDIF(PYTHON_EXECUTABLE)
-96
View File
@@ -1,96 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find Ruby
# This module finds if Ruby is installed and determines where the include files
# and libraries are. It also determines what the name of the library is. This
# code sets the following variables:
#
# RUBY_EXECUTABLE = full path to the ruby binary
# RUBY_INCLUDE_PATH = path to where ruby.h can be found
# RUBY_LIBRARY = path to where libruby.so* can be found
IF(RUBY_FOUND)
# Already in cache, be silent
SET(RUBY_FIND_QUIETLY TRUE)
ENDIF(RUBY_FOUND)
FIND_PROGRAM(RUBY_EXECUTABLE
NAMES ruby ruby1.9 ruby19 ruby1.8 ruby18 ruby1.6 ruby16
PATHS /usr/bin /usr/local/bin /usr/pkg/bin
)
IF(RUBY_EXECUTABLE)
EXECUTE_PROCESS(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['rubyhdrdir'] || Config::CONFIG['archdir']"
OUTPUT_VARIABLE RUBY_ARCH_DIR
)
EXECUTE_PROCESS(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['arch']"
OUTPUT_VARIABLE RUBY_ARCH
)
EXECUTE_PROCESS(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['libdir']"
OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH
)
EXECUTE_PROCESS(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['rubylibdir']"
OUTPUT_VARIABLE RUBY_RUBY_LIB_PATH
)
EXECUTE_PROCESS(
COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts Config::CONFIG['ruby_version']"
OUTPUT_VARIABLE RUBY_VERSION
)
# remove the new lines from the output by replacing them with empty strings
STRING(REPLACE "\n" "" RUBY_ARCH_DIR "${RUBY_ARCH_DIR}")
STRING(REPLACE "\n" "" RUBY_POSSIBLE_LIB_PATH "${RUBY_POSSIBLE_LIB_PATH}")
STRING(REPLACE "\n" "" RUBY_RUBY_LIB_PATH "${RUBY_RUBY_LIB_PATH}")
STRING(REPLACE "\n" "" RUBY_ARCH "${RUBY_ARCH}")
STRING(REPLACE "\n" "" RUBY_VERSION "${RUBY_VERSION}")
FIND_PATH(RUBY_INCLUDE_PATH
NAMES ruby.h
PATHS ${RUBY_ARCH_DIR}
)
SET(RUBY_ARCH
"${RUBY_INCLUDE_PATH}/${RUBY_ARCH}")
FIND_LIBRARY(RUBY_LIBRARY
NAMES ruby ruby1.6 ruby16 ruby1.8 ruby18 ruby1.9 ruby19
PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH}
)
IF(RUBY_LIBRARY AND RUBY_INCLUDE_PATH)
SET(RUBY_FOUND TRUE)
ENDIF(RUBY_LIBRARY AND RUBY_INCLUDE_PATH)
IF(${RUBY_VERSION} STREQUAL "1.9.0")
SET(RUBY_FOUND FALSE)
ENDIF(${RUBY_VERSION} STREQUAL "1.9.0")
MARK_AS_ADVANCED(
RUBY_EXECUTABLE
RUBY_LIBRARY
RUBY_ARCH
RUBY_INCLUDE_PATH
)
ENDIF(RUBY_EXECUTABLE)
-35
View File
@@ -1,35 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# - Find Source-Highlight
# This module finds if source-highlight is installed.
IF (SOURCEHIGHLIGHT_FOUND)
# Already in cache, be silent
SET(SOURCEHIGHLIGHT_FIND_QUIETLY TRUE)
ENDIF (SOURCEHIGHLIGHT_FOUND)
FIND_PROGRAM(
SOURCEHIGHLIGHT_EXECUTABLE source-highlight
PATHS /bin /usr/bin /usr/local/bin /usr/pkg/bin
)
IF(SOURCEHIGHLIGHT_EXECUTABLE)
SET(SOURCEHIGHLIGHT_FOUND TRUE)
MARK_AS_ADVANCED(
SOURCEHIGHLIGHT_EXECUTABLE
)
ENDIF(SOURCEHIGHLIGHT_EXECUTABLE)
-159
View File
@@ -1,159 +0,0 @@
# - Find Tcl includes and libraries.
# This module finds if Tcl is installed and determines where the
# include files and libraries are. It also determines what the name of
# the library is. This code sets the following variables:
# TCL_FOUND = Tcl was found
# TK_FOUND = Tk was found
# TCLTK_FOUND = Tcl and Tk were found
# TCL_LIBRARY = path to Tcl library (tcl tcl80)
# TCL_INCLUDE_PATH = path to where tcl.h can be found
# TCL_TCLSH = path to tclsh binary (tcl tcl80)
# TK_LIBRARY = path to Tk library (tk tk80 etc)
# TK_INCLUDE_PATH = path to where tk.h can be found
# TK_WISH = full path to the wish executable
#
# In an effort to remove some clutter and clear up some issues for people
# who are not necessarily Tcl/Tk gurus/developpers, some variables were
# moved or removed. Changes compared to CMake 2.4 are:
# - The stub libraries are now found in FindTclStub.cmake
# => they were only useful for people writing Tcl/Tk extensions.
# - TCL_LIBRARY_DEBUG and TK_LIBRARY_DEBUG were removed.
# => these libs are not packaged by default with Tcl/Tk distributions.
# Even when Tcl/Tk is built from source, several flavors of debug libs
# are created and there is no real reason to pick a single one
# specifically (say, amongst tcl84g, tcl84gs, or tcl84sgx).
# Let's leave that choice to the user by allowing him to assign
# TCL_LIBRARY to any Tcl library, debug or not.
# - TK_INTERNAL_PATH was removed.
# => this ended up being only a Win32 variable, and there is a lot of
# confusion regarding the location of this file in an installed Tcl/Tk
# tree anyway (see 8.5 for example). If you need the internal path at
# this point it is safer you ask directly where the *source* tree is
# and dig from there.
IF(TCL_FOUND)
SET(TCL_FIND_QUIETLY TRUE)
ENDIF(TCL_FOUND)
INCLUDE(CMakeFindFrameworks)
INCLUDE(FindTclsh)
GET_FILENAME_COMPONENT(TCL_TCLSH_PATH "${TCL_TCLSH}" PATH)
GET_FILENAME_COMPONENT(TCL_TCLSH_PATH_PARENT "${TCL_TCLSH_PATH}" PATH)
STRING(REGEX REPLACE
"^.*tclsh([0-9]\\.*[0-9]).*$" "\\1" TCL_TCLSH_VERSION "${TCL_TCLSH}")
GET_FILENAME_COMPONENT(TCL_INCLUDE_PATH_PARENT "${TCL_INCLUDE_PATH}" PATH)
GET_FILENAME_COMPONENT(TCL_LIBRARY_PATH "${TCL_LIBRARY}" PATH)
GET_FILENAME_COMPONENT(TCL_LIBRARY_PATH_PARENT "${TCL_LIBRARY_PATH}" PATH)
STRING(REGEX REPLACE
"^.*tcl([0-9]\\.*[0-9]).*$" "\\1" TCL_VERSION "${TCL_LIBRARY}")
SET(TCL_POSSIBLE_LIB_PATHS
"${TCL_INCLUDE_PATH_PARENT}/lib"
"${TCL_LIBRARY_PATH}"
"${TCL_TCLSH_PATH_PARENT}/lib"
/usr/lib
/usr/local/lib
)
IF(WIN32)
GET_FILENAME_COMPONENT(
ActiveTcl_CurrentVersion
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]"
NAME)
SET(TCLTK_POSSIBLE_LIB_PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/lib"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/lib"
"$ENV{ProgramFiles}/Tcl/Lib"
"C:/Program Files/Tcl/lib"
"C:/Tcl/lib"
)
ENDIF(WIN32)
FIND_LIBRARY(TCL_LIBRARY
NAMES
tcl
tcl${TCL_VERSION} tcl${TCL_TCLSH_VERSION}
tcl86 tcl8.6
tcl85 tcl8.5
tcl84 tcl8.4
tcl83 tcl8.3
tcl82 tcl8.2
tcl80 tcl8.0
PATHS ${TCL_POSSIBLE_LIB_PATHS}
)
CMAKE_FIND_FRAMEWORKS(Tcl)
SET(TCL_FRAMEWORK_INCLUDES)
IF(Tcl_FRAMEWORKS)
IF(NOT TCL_INCLUDE_PATH)
FOREACH(dir ${Tcl_FRAMEWORKS})
SET(TCL_FRAMEWORK_INCLUDES ${TCL_FRAMEWORK_INCLUDES} ${dir}/Headers)
ENDFOREACH(dir)
ENDIF(NOT TCL_INCLUDE_PATH)
ENDIF(Tcl_FRAMEWORKS)
SET(TCL_POSSIBLE_INCLUDE_PATHS
"${TCL_LIBRARY_PATH_PARENT}/include"
"${TCL_INCLUDE_PATH}"
${TCL_FRAMEWORK_INCLUDES}
"${TCL_TCLSH_PATH_PARENT}/include"
/usr/include
/usr/local/include
/usr/include/tcl${TCL_VERSION}
/usr/include/tcl8.6
/usr/include/tcl8.5
/usr/include/tcl8.4
/usr/include/tcl8.3
/usr/include/tcl8.2
/usr/include/tcl8.0
/usr/local/include/tcl${TCL_VERSION}
/usr/local/include/tcl8.6
/usr/local/include/tcl8.5
/usr/local/include/tcl8.4
/usr/local/include/tcl8.3
/usr/local/include/tcl8.2
/usr/local/include/tcl8.0
)
IF(WIN32)
SET(TCLTK_POSSIBLE_INCLUDE_PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS}
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.4;Root]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.3;Root]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.2;Root]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/include"
"$ENV{ProgramFiles}/Tcl/include"
"C:/Program Files/Tcl/include"
"C:/Tcl/include"
)
ENDIF(WIN32)
FIND_PATH(TCL_INCLUDE_PATH
NAMES tcl.h
PATHS ${TCL_POSSIBLE_INCLUDE_PATHS}
)
IF(TCL_LIBRARY AND TCL_INCLUDE_PATH)
SET(TCL_VERSION ${TCL_VERSION})
SET(TCL_LIBARY ${TCL_LIBRARY})
SET(TCL_INCLUDE_PATH ${TCL_INCLUDE_PATH})
SET(TCL_FOUND TRUE)
ENDIF(TCL_LIBRARY AND TCL_INCLUDE_PATH)
MARK_AS_ADVANCED(
TCL_INCLUDE_PATH
TCL_LIBRARY
TCL_VERSION
)
-37
View File
@@ -1,37 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
IF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
MESSAGE(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"")
ENDIF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
FILE(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
STRING(REGEX REPLACE "\n" ";" files "${files}")
FOREACH(file ${files})
MESSAGE(STATUS "Uninstalling \"${file}\"")
IF(NOT EXISTS "${file}")
MESSAGE(FATAL_ERROR "File \"${file}\" does not exists.")
ENDIF(NOT EXISTS "${file}")
EXEC_PROGRAM("@CMAKE_COMMAND@" ARGS "-E remove \"${file}\""
OUTPUT_VARIABLE rm_out
RETURN_VARIABLE rm_retval)
IF("${rm_retval}" GREATER 0)
MESSAGE(FATAL_ERROR "Problem when removing \"${file}\"")
ENDIF("${rm_retval}" GREATER 0)
ENDFOREACH(file)
-50
View File
@@ -1,50 +0,0 @@
#!/bin/sh
#
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
VERSION=@VERSION@
SRCROOT=@CMAKE_SOURCE_DIR@
BUILDDIR=@CMAKE_BINARY_DIR@
PROJECT=@PROJECT_NAME@
TAG=release-$(echo $VERSION | sed -e 's/\./-/g')
EXCLUDE="@DIST_EXCLUDE@"
EXPORT_DIR="${PROJECT}-${VERSION}"
if [ -z $CVSROOT ]; then
echo "The CVSROOT variable must be set"
exit 1
fi
echo "Exporting source tree"
if [ $(echo $VERSION | grep cvs) ]; then
cvs export -r HEAD -d $PROJECT-$VERSION $PROJECT
else
cvs export -r $TAG -d $PROJECT-$VERSION $PROJECT
fi
echo "Removing not needed stuff"
for i in $EXCLUDE ; do
echo " $i"
rm -rf $EXPORT_DIR/$i
done
echo "Generating archive"
tar cjf ${BUILDDIR}/${PROJECT}-${VERSION}.tar.bz2 ${EXPORT_DIR}
echo "Cleaning up"
rm -rf ${EXPORT_DIR}
-31
View File
@@ -1,31 +0,0 @@
#cmakedefine HAVE_ARPA_INET_H
#cmakedefine HAVE_LIBINTL_H
#cmakedefine HAVE_LIMITS_H
#cmakedefine HAVE_LOCALE_H
#cmakedefine HAVE_NETDB_H
#cmakedefine HAVE_NETINET_IN_H
#cmakedefine HAVE_STDLIB_H
#cmakedefine HAVE_STRING_H
#cmakedefine HAVE_SYS_SOCKET_H
#cmakedefine HAVE_SYS_TIME_H
#cmakedefine HAVE_SYS_TYPES_H
#cmakedefine HAVE_UNISTD_H
#cmakedefine HAVE_PWD_H
#cmakedefine HAVE_ERRNO_H
#cmakedefine HAVE_REGEX_H
#cmakedefine HAVE_WCHAR_H
#cmakedefine HAVE_SYS_FILE_H
#cmakedefine HAVE_FLOCK
#cmakedefine HAVE_LANGINFO_CODESET
#cmakedefine HAVE_STRNDUP
#cmakedefine HAVE_BACKTRACE
#cmakedefine ICONV_2ARG_IS_CONST 1
#cmakedefine HAVE_TCL_CREATE_NS
#define PACKAGE_VERSION "@VERSION@"
#define PACKAGE "@PROJECT_NAME@"
#define PACKAGE_NAME "@PROJECT_NAME@"
#define PACKAGE_STRING "@PKG_STRING@"
#define WEECHAT_LIBDIR "@LIBDIR@"
#define WEECHAT_SHAREDIR "@SHAREDIR@"
#define LOCALEDIR "@LOCALEDIR@"
#define _GNU_SOURCE 1
-1145
View File
File diff suppressed because it is too large Load Diff
Vendored
-9
View File
@@ -1,9 +0,0 @@
weechat (0.3.0-1) unstable; urgency=low
This release introduces major changes. Large part of code was
rewritten without keeping compatibility with older versions.
Please refer to the file /usr/share/doc/weechat-core/UPGRADE_0.3
for more informations on upgrade from a version 0.2.x to 0.3.x.
-- Emmanuel Bouthenot <kolter@openics.org> Tue, 15 Sep 2009 20:59:42 +0000
+1 -335
View File
@@ -1,339 +1,5 @@
weechat (0.3.0-1) unstable; urgency=low
* New (final) upstream release.
* Upload to unstable.
* Add doc-base files for documentation.
-- Emmanuel Bouthenot <kolter@openics.org> Tue, 15 Sep 2009 20:58:07 +0000
weechat (0.3.0~rc3-1) experimental; urgency=low
* New (major) upstream release.
- Fix the excessive number of wakeups (Closes: #461945)
* Remove patches (merged upstream).
* Update debian/copyright: add new copyright holder.
* Packaging changes (taking into account future frontends: weechat-gtk,
weechat-qt, etc.):
- Drop weechat-common
- Add weechat-doc (Documentation)
- Add weechat-core (locales files, essential plugins)
- Add weechat-dev (plugins development files)
- Add weechat-dbg (gdb debugging symbols)
* Switch packaging from cdbs to debhelper 7.
* Update packages descriptions.
* Add a lintian-override against manpage line wrapping error.
* Update Standards-Version to 3.8.3.
* Add file UPGRADE_0.3 to doc files.
* Update debian/NEWS about major changes in this release.
-- Emmanuel Bouthenot <kolter@openics.org> Sun, 16 Aug 2009 20:32:01 +0000
weechat (0.2.6.3-1) unstable; urgency=low
* New upstream release
- drop the usage of the deprecated libgnutls-config script to detect
gnutls (Closes: #529912).
-- Emmanuel Bouthenot <kolter@openics.org> Sat, 13 Jun 2009 21:47:56 +0000
weechat (0.2.6.2-1) unstable; urgency=low
* New upstream release
* Add a patch which fix typos in aspell plugin.
* Refresh patch multiple_ip_servers according to the new upstream release.
-- Emmanuel Bouthenot <kolter@openics.org> Sun, 19 Apr 2009 10:23:26 +0000
weechat (0.2.6.1-1) unstable; urgency=low
* New upstream release which includes a fix against a possible remote
Denial of Service (crash) while receiving messages with special chars
(Closes: #519940).
* Refresh patch multiple_ip_servers according to the new upstream release.
* Update Standards-Version to 3.8.1.
-- Emmanuel Bouthenot <kolter@openics.org> Mon, 16 Mar 2009 13:18:29 +0000
weechat (0.2.6-3) unstable; urgency=low
* Add a patch to make weechat try to connect other server IPs
when the first one failed. Thanks to Lionel Elie Mamane for
his patch (Closes: #498610).
* Rename patch 01_perlembed_init_macros to perlembed_init_macros.
* Update debian/control:
- add ${misc:Depends}
- update descriptions
* Update debian/copyright about debian packaging.
* Add Vcs-Browser and Vcs-Git fields in debian/control.
* Add DM-Upload-Allowed field.
-- Emmanuel Bouthenot <kolter@openics.org> Sat, 21 Feb 2009 18:34:08 +0000
weechat (0.2.6-2) unstable; urgency=low
* Setting me as maintainer with previous maintainer agreement.
* Remove Uploaders field.
* Add quilt to Build-Depends.
* Add a patch to fix probable pthread mutex locks on hppa architecture
with perl plugin (Closes: #495080).
* Add a Homepage field.
* Update Standards-Version to 3.8.0.
* Reformat NEWS file to avoid lintian warnings.
* Fix typos in control file.
-- Emmanuel Bouthenot <kolter@openics.org> Sun, 07 Sep 2008 19:39:42 +0000
weechat (0.2.6-1) unstable; urgency=low
* New Upstream Version
* Switch to GPLv3 (update copyright)
* Update menu entry
-- Emmanuel Bouthenot <kolter@openics.org> Thu, 06 Sep 2007 20:10:26 +0200
weechat (0.2.5-1) unstable; urgency=low
* New Upstream Version
-- Julien Louis <ptitlouis@sysif.net> Tue, 12 Jun 2007 19:42:15 +0200
weechat (0.2.4-2) unstable; urgency=low
* Backport iso-2022-jp patch from upstream CVS (Closes: #421833).
* Set myself as Maintainer with previous Maintainer agreement.
-- Julien Louis <ptitlouis@sysif.net> Thu, 03 May 2007 21:15:59 +0200
weechat (0.2.4-1) unstable; urgency=low
* New upstream release
-- Julien Louis <ptitlouis@sysif.net> Thu, 29 Mar 2007 21:01:46 +0200
weechat (0.2.3-1) unstable; urgency=low
* New upstream release
* Bump lua build-dependency to liblua5.1-0-dev
* Add pkg-config to Build-Depends
* Remove some duplited changelog entries.
* Improve weechat-plugins description
-- Julien Louis <ptitlouis@sysif.net> Fri, 12 Jan 2007 09:01:46 +0100
weechat (0.2.1-1) unstable; urgency=low
* New upstream release
* Overrive lintian menu-icon-missing warning
since the icon is in the weechat-common package.
-- Julien Louis <ptitlouis@sysif.net> Mon, 2 Oct 2006 15:30:06 +0200
weechat (0.2.0-2) unstable; urgency=low
* Add libaspell-dev to Build-Depends. This enables the aspell plugin built.
-- Julien Louis <ptitlouis@sysif.net> Mon, 25 Sep 2006 23:56:16 +0200
weechat (0.2.0-1) unstable; urgency=low
* New upstream release
* Rebuild against new default python version (Closes: #380985).
-- Julien Louis <ptitlouis@sysif.net> Sat, 19 Aug 2006 17:10:59 +0200
weechat (0.1.9-3) unstable; urgency=low
* Remove gnutls Build-Depends introduced in the previous upload
(closes: #379765).
* Move xsltproc, docbook-xml, docbook-xsl to Build-Depends-Indep.
* Change icon format from png to xpm.
-- Julien Louis <ptitlouis@sysif.net> Tue, 25 Jul 2006 11:53:25 +0200
weechat (0.1.9-2) unstable; urgency=low
* Fix ${datadir} expansion in configure.in which caused some problem when
loading scripts from /usr/share/weechat.
* Add weechat-scripts to weechat-plugins Suggests.
* Apply patch from Andreas Metzler to make weechat binNMUable
(Closes: #379419).
* Build-Depends against libgnutls13-dev | libgnutls-dev.
-- Julien Louis <ptitlouis@sysif.net> Sun, 23 Jul 2006 17:28:34 +0200
weechat (0.1.9-1) unstable; urgency=low
* New upstream release
-- Julien Louis <ptitlouis@sysif.net> Thu, 25 May 2006 07:40:53 +0200
weechat (0.1.8-2) unstable; urgency=low
* Switch to cdbs
* update debhelper compatibility to 5
* update Build-Depends
* update debian/copyright
* Bump Standards-Version, no changes needed
-- Julien Louis <ptitlouis@sysif.net> Fri, 21 Apr 2006 22:39:00 +0200
weechat (0.1.8-1) unstable; urgency=low
* New upstream release
* Add liblualib50-dev and docbook-xml to Build-Depends
-- Julien Louis <ptitlouis@sysif.net> Sat, 18 Mar 2006 11:32:52 +0100
weechat (0.1.7-2) unstable; urgency=low
* force linking against libpthread on GNU/Hurd (Closes: #350487)
-- Julien Louis <ptitlouis@sysif.net> Sun, 5 Feb 2006 18:23:24 +0100
weechat (0.1.7-1) unstable; urgency=low
* New upstream release
-- Julien Louis <ptitlouis@sysif.net> Sat, 14 Jan 2006 14:14:29 +0100
weechat (0.1.6-2) unstable; urgency=low
* Apply path to fix segfault when removing server.
* Move plugins in a separate package
-- Julien Louis <ptitlouis@sysif.net> Tue, 22 Nov 2005 08:33:09 +0100
weechat (0.1.6-1) unstable; urgency=low
* New upstream release
* Add menu entry
* Move libperl5.8 and python2.3 from Depends to Recommends
-- Julien Louis <ptitlouis@sysif.net> Fri, 11 Nov 2005 22:21:08 +0100
weechat (0.1.5-1) unstable; urgency=low
* New upstream release
-- Julien Louis <ptitlouis@sysif.net> Sat, 24 Sep 2005 14:08:55 +0200
weechat (0.1.4-2) unstable; urgency=low
* Add autotools-dev to Build-Depends.
* update autotools stuff automatically to always
have up-to-date config.{guess,sub}
* Update Build-Depends: libgnutls11-dev -> libgnutls-dev
-- Julien Louis <ptitlouis@sysif.net> Mon, 1 Aug 2005 11:46:39 +0200
weechat (0.1.4-1) unstable; urgency=low
* New upstream release.
-- Julien Louis <ptitlouis@sysif.net> Sat, 30 Jul 2005 16:26:55 +0200
weechat (0.1.3-2) unstable; urgency=low
* Update config.{guess,sub} to fix FTBFS on k*BSD (Closes: #316791)
-- Julien Louis <ptitlouis@sysif.net> Fri, 8 Jul 2005 21:30:38 +0200
weechat (0.1.3-1) unstable; urgency=low
* New upstream release.
-- Julien Louis <ptitlouis@sysif.net> Sat, 2 Jul 2005 20:06:29 +0200
weechat (0.1.2-3) unstable; urgency=low
* Apply patch against gui-display.c to fix curses color bug.
* remove dh_install --sourcedir to allow builds on woody.
-- Julien Louis <ptitlouis@sysif.net> Sun, 19 Jun 2005 22:37:11 +0200
weechat (0.1.2-2) unstable; urgency=low
* Patch src/gui/curse/gui-display.c to fix segfault
when config file does not exists (Closes: #310589).
-- Julien Louis <ptitlouis@sysif.net> Tue, 24 May 2005 20:55:02 +0200
weechat (0.1.2-1) unstable; urgency=low
* WeeChat version 0.1.2, see ChangeLog for detail.
-- Sebastien Helleu <flashcode@flashtux.org> Sat, 21 May 2005 08:00:00 +0200
weechat (0.1.1-2) unstable; urgency=low
* debian/control:
- Add myself to uploaders.
- Remove unecessary dependency on weechat-gtk (Closes: #308287).
-- Julien Louis <ptitlouis@sysif.net> Tue, 10 May 2005 22:38:52 +0200
weechat (0.1.1-1) unstable; urgency=low
* WeeChat version 0.1.1, see ChangeLog for detail (closes: #306492)
-- Sebastien Helleu <flashcode@flashtux.org> Sat, 20 Mar 2005 08:00:00 +0200
weechat (0.1.0-1) unstable; urgency=low
* WeeChat version 0.1.0, see ChangeLog for detail.
-- Sebastien Helleu <flashcode@flashtux.org> Sat, 12 Feb 2005 12:00:00 +0200
weechat (0.0.9-1) unstable; urgency=low
* WeeChat version 0.0.9, see ChangeLog for detail.
-- FlashCode <flashcode@flashtux.org> Sat, 01 Jan 2005 13:00:00 +0200
weechat (0.0.8-1) unstable; urgency=low
* WeeChat version 0.0.8, see ChangeLog for detail.
-- FlashCode <flashcode@flashtux.org> Sat, 30 Oct 2004 11:40:00 +0200
weechat (0.0.7-1) unstable; urgency=low
* WeeChat version 0.0.7, see ChangeLog for detail.
-- FlashCode <flashcode@flashtux.org> Sat, 08 Aug 2004 21:00:00 +0200
weechat (0.0.6-1) unstable; urgency=low
* WeeChat version 0.0.6, see ChangeLog for detail.
-- FlashCode <flashcode@flashtux.org> Sat, 05 Jun 2004 11:30:00 +0200
weechat (0.0.5-1) unstable; urgency=low
* WeeChat version 0.0.5, see ChangeLog for detail.
-- FlashCode <flashcode@flashtux.org> Sat, 07 Feb 2004 20:30:00 +0200
weechat (0.0.4-1) unstable; urgency=low
* WeeChat version 0.0.4, see ChangeLog for detail.
-- FlashCode <flashcode@flashtux.org> Thu, 01 Jan 2004 13:00:00 +0200
weechat (0.0.3-1) unstable; urgency=low
* WeeChat version 0.0.3, see ChangeLog for detail.
-- FlashCode <flashcode@flashtux.org> Mon, 03 Nov 2003 23:15:00 +0200
weechat (0.0.2-1) unstable; urgency=low
* WeeChat version 0.0.2, see ChangeLog for detail.
-- FlashCode <flashcode@flashtux.org> Sun, 05 Oct 2003 12:00:00 +0200
weechat (0.0.1-1) unstable; urgency=low
* First version.
-- FlashCode <flashcode@flashtux.org> Sat, 27 Sep 2003 12:00:00 +0200
-- FlashCode <flashcode@flashtux.org> Sat, 27 Jun 2003 12:00:00 +0200
+1 -1
View File
@@ -1 +1 @@
7
4
+7 -100
View File
@@ -1,107 +1,14 @@
Source: weechat
Section: net
Priority: optional
Maintainer: Emmanuel Bouthenot <kolter@openics.org>
Build-Depends-Indep: asciidoc (>= 8.2), source-highlight
Build-Depends: debhelper (>= 7.0.50), cmake, libncursesw5-dev,
ruby, ruby1.8-dev, libperl-dev, python-dev, libaspell-dev, liblua5.1-0-dev,
tcl-dev, libgnutls-dev, dpkg-dev (>= 1.13.19), pkg-config
Standards-Version: 3.8.3
Homepage: http://weechat.org/
Vcs-Git: git://git.debian.org/users/kolter-guest/weechat.git
Vcs-Browser: http://git.debian.org/git/users/kolter-guest/weechat.git
DM-Upload-Allowed: yes
Maintainer: FlashCode <flashcode@flashtux.org>
Build-Depends: debhelper (>> 4.0.0)
Standards-Version: 3.5.8
Package: weechat
Architecture: all
Depends: ${misc:Depends}, weechat-curses (>= ${source:Version})
Description: Fast, light and extensible chat client
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
It is customizable and extensible with plugins/scripts, and includes:
- nicklist
- smart hotlist
- infobar with highlight notification
- horizontal and vertical split
- double charset support (decode/encode)
- FIFO pipe for remote control
- and much more!
Package: weechat-curses
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends}, weechat-core (= ${binary:Version})
Conflicts: weechat-common
Breaks: weechat-scripts (<= 20090221-1)
Recommends: weechat-plugins (= ${binary:Version})
Description: Fast, light and extensible chat client - console client
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
Depends: ${shlibs:Depends}
Description: Fast, light and extensible IRC client
WeeChat (Wee Enhanced Environment for Chat) is a fast and light IRC client
for many operating systems. Everything can be done with a keyboard.
It is customizable and extensible with plugins/scripts, and includes:
- nicklist
- smart hotlist
- infobar with highlight notification
- horizontal and vertical split
- double charset support (decode/encode)
- FIFO pipe for remote control
- and much more!
.
This package provides the console client (ncurses).
Package: weechat-core
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends}
Replaces: weechat-common, weechat-plugins (<< 0.3.0)
Suggests: weechat-doc (= ${source:Version})
Description: Fast, light and extensible chat client - core files
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package provides core plugins and locales files for WeeChat. It
currently ships the following plugins: alias, xfer, irc, charset and
logger. It is useless without weechat-curses.
Package: weechat-plugins
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends}, weechat-curses (= ${binary:Version})
Suggests: weechat-scripts (>> 20090221-1)
Description: Fast, light and extensible chat client - plugins
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package provides some plugins to enhance WeeChat. It currently
ships the following plugins:
- Perl, Python, Ruby, Lua, and Tcl scripting
- Spell checking (thanks to aspell)
- And many others (Fifo, ...)
Package: weechat-doc
Section: doc
Architecture: all
Depends: ${misc:Depends}
Description: Fast, light and extensible chat client - documentation
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package contains the html documentation for WeeChat.
Package: weechat-dev
Section: devel
Architecture: all
Depends: ${misc:Depends}
Description: Fast, light and extensible chat client - developement headers
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package contains the headers needed to build plugins.
Package: weechat-dbg
Section: debug
Priority: extra
Architecture: any
Depends: ${misc:Depends}, weechat-curses (= ${binary:Version}) |
weechat-core (= ${binary:Version}), weechat-plugins (= ${binary:Version})
Description: Fast, light and extensible chat client - debugging symbols
WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat client
for many operating systems. Everything can be done with a keyboard.
.
This package contains gdb debugging symbols for the WeeChat packages.
It is customizable and extensible with scripts.
+7 -12
View File
@@ -1,22 +1,17 @@
This package was debianized by FlashCode <flashcode@flashtux.org> on
Sat, 21 May 2005 08:00:00 +0200.
Sat, 27 Sep 2003 10:00:00 +0200.
It was downloaded from http://weechat.org/files/src/
It was downloaded from http://weechat.flashtux.org/download
Upstream Author(s): FlashCode <flashcode@flashtux.org>
Copyright:
Copyright (C) (2003-2010) FlashCode <flashcode@flashtux.org>
Copyright (C) (2005-2010) Emmanuel Bouthenot <kolter@openics.org>
Copyright (C) (2008-2010) Dmitry Kobylin <fnfal@academ.tsc.ru> (tcl plugin)
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
the Free Software Foundation; either version 3 of the License, or (at
the Free Software Foundation; either version 2 of the License, or (at
your option) any later version.
On Debian systems, the complete text of the GNU General Public
License, Version 3 can be found in the file
/usr/share/common-licenses/GPL-3
Debian packaging (licensed under the GPLv3):
Copyright(C) 2005-2008, Julien Louis <ptitlouis@sysif.net>
Copyright(C) 2008-2010, Emmanuel Bouthenot <kolter@openics.org>
License, Version 2 can be found in the file
/usr/share/common-licenses/GPL
Vendored
+1
View File
@@ -0,0 +1 @@
usr/bin
Vendored
+9
View File
@@ -0,0 +1,9 @@
AUTHORS
BUGS
ChangeLog
COPYING
FAQ
INSTALL
NEWS
README
TODO
+1
View File
@@ -0,0 +1 @@
weechat_0.0.1-1_i386.deb net optional
+87 -27
View File
@@ -1,37 +1,97 @@
#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
CFLAGS = -Wall -g
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
else
CFLAGS += -O2
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
configure: configure-stamp
configure-stamp:
dh_testdir
# Add here commands to configure the package.
touch configure-stamp
builddir/Makefile:
mkdir -p builddir
cd builddir && \
cmake .. \
-DCMAKE_INSTALL_PREFIX:FILEPATH=/usr \
-DCMAKE_C_FLAGS:STRING="$(CFLAGS)" \
-DCMAKE_LD_FLAGS:STRING="-Wl,-z,defs" \
-DCMAKE_CXX_FLAGS:STRING="$(CXXFLAGS)" \
-DCMAKE_SKIP_RPATH:BOOL=ON \
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
build: build-stamp
build-stamp: builddir/Makefile
build-stamp: configure-stamp
dh_testdir
$(MAKE) -C builddir
touch $@
override_dh_auto_configure:
# the package also has autotools buildsys and
# debhelper try to use it but that's not needed
echo
# Add here commands to compile the package.
$(MAKE)
#/usr/bin/docbook-to-man debian/weechat.sgml > weechat.1
override_dh_install:
$(MAKE) -C builddir DESTDIR=$(CURDIR)/debian/tmp install
dh_install
override_dh_strip:
dh_strip --dbg-package=weechat-dbg
touch build-stamp
clean:
rm -rf builddir
dh $@
dh_testdir
dh_testroot
rm -f build-stamp configure-stamp
%:
dh $@
# Add here commands to clean up after the build process.
-$(MAKE) clean
dh_clean
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
# Add here commands to install the package into debian/weechat.
$(MAKE) install DESTDIR=$(CURDIR)/debian/weechat
# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
dh_installchangelogs
dh_installdocs
dh_installexamples
# dh_install
# dh_installmenu
# dh_installdebconf
# dh_installlogrotate
# dh_installemacsen
# dh_installpam
# dh_installmime
# dh_installinit
# dh_installcron
# dh_installinfo
dh_installman weechat.1
dh_link
dh_strip
dh_compress
dh_fixperms
# dh_perl
# dh_python
# dh_makeshlibs
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure
-2
View File
@@ -1,2 +0,0 @@
version=2
http://weechat.org/files/src/weechat-(\d.*)\.tar\.bz2
-4
View File
@@ -1,4 +0,0 @@
AUTHORS
NEWS
README
UPGRADE_0.3
-6
View File
@@ -1,6 +0,0 @@
usr/share/locale/
usr/lib/weechat/plugins/alias.so
usr/lib/weechat/plugins/xfer.so
usr/lib/weechat/plugins/irc.so
usr/lib/weechat/plugins/charset.so
usr/lib/weechat/plugins/logger.so
-2
View File
@@ -1,2 +0,0 @@
usr/bin
usr/share/pixmaps
-2
View File
@@ -1,2 +0,0 @@
usr/bin/weechat-curses
debian/weechat.xpm usr/share/pixmaps
-1
View File
@@ -1 +0,0 @@
weechat-curses: manpage-has-errors-from-man usr/share/man/man1/weechat-curses.1.gz 54: warning [p 1, 8.2i]: cannot adjust line
-1
View File
@@ -1 +0,0 @@
doc/weechat-curses.1
-4
View File
@@ -1,4 +0,0 @@
?package(weechat-curses):needs="text" section="Applications/Network/Communication" \
title="weechat-curses" \
icon="/usr/share/pixmaps/weechat.xpm" \
command="/usr/bin/weechat-curses"
-1
View File
@@ -1 +0,0 @@
usr/include/weechat
-2
View File
@@ -1,2 +0,0 @@
usr/include/weechat/*
usr/lib/pkgconfig/*
-13
View File
@@ -1,13 +0,0 @@
Document: weechat-faq-en
Title: WeeChat FAQ (English)
Author: Sebastien Helleu
Abstract: This document answers frequently asked questions
about the WeeChat IRC client (English version).
Section: Network/Communication
Format: text
Files: /usr/share/doc/weechat-doc/weechat_faq.en.txt.gz
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_faq.en.html
Files: /usr/share/doc/weechat-doc/weechat_faq.en.html
-13
View File
@@ -1,13 +0,0 @@
Document: weechat-faq-fr
Title: WeeChat FAQ (French)
Author: Sebastien Helleu
Abstract: This document answers frequently asked questions
about the WeeChat IRC client (French version).
Section: Network/Communication
Format: text
Files: /usr/share/doc/weechat-doc/weechat_faq.fr.txt.gz
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_faq.fr.html
Files: /usr/share/doc/weechat-doc/weechat_faq.fr.html
-10
View File
@@ -1,10 +0,0 @@
Document: weechat-faq-pl
Title: WeeChat FAQ (Polish)
Author: Sebastien Helleu
Abstract: This document answers frequently asked questions
about the WeeChat IRC client (Polish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_faq.pl.html
Files: /usr/share/doc/weechat-doc/weechat_faq.pl.html
-10
View File
@@ -1,10 +0,0 @@
Document: weechat-plugin-en
Title: WeeChat plugins API (English)
Author: Sebastien Helleu
Abstract: This document describes the API to create plugins
for WeeChat (English version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_plugin_api.en.html
Files: /usr/share/doc/weechat-doc/weechat_plugin_api.en.html
-10
View File
@@ -1,10 +0,0 @@
Document: weechat-plugin-fr
Title: WeeChat plugins API (French)
Author: Sebastien Helleu
Abstract: This document describes the API to create plugins
for WeeChat (French version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_plugin_api.fr.html
Files: /usr/share/doc/weechat-doc/weechat_plugin_api.fr.html
-9
View File
@@ -1,9 +0,0 @@
Document: weechat-quickstart-de
Title: WeeChat Quickstart (German)
Author: Sebastien Helleu
Abstract: A short HowTo for new WeeChat users (German version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_quickstart.de.html
Files: /usr/share/doc/weechat-doc/weechat_quickstart.de.html
-12
View File
@@ -1,12 +0,0 @@
Document: weechat-quickstart-en
Title: WeeChat Quickstart (English)
Author: Sebastien Helleu
Abstract: A short HowTo for new WeeChat users (English version).
Section: Network/Communication
Format: text
Files: /usr/share/doc/weechat-doc/weechat_quickstart.en.txt.gz
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_quickstart.en.html
Files: /usr/share/doc/weechat-doc/weechat_quickstart.en.html
-12
View File
@@ -1,12 +0,0 @@
Document: weechat-quickstart-fr
Title: WeeChat Quickstart (French)
Author: Sebastien Helleu
Abstract: A short HowTo for new WeeChat users (French version).
Section: Network/Communication
Format: text
Files: /usr/share/doc/weechat-doc/weechat_quickstart.fr.txt.gz
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_quickstart.fr.html
Files: /usr/share/doc/weechat-doc/weechat_quickstart.fr.html
-9
View File
@@ -1,9 +0,0 @@
Document: weechat-quickstart-pl
Title: WeeChat Quickstart (Polish)
Author: Sebastien Helleu
Abstract: A short HowTo for new WeeChat users (Polish version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_quickstart.pl.html
Files: /usr/share/doc/weechat-doc/weechat_quickstart.pl.html
-9
View File
@@ -1,9 +0,0 @@
Document: weechat-quickstart-ru
Title: WeeChat Quickstart (Russian)
Author: Sebastien Helleu
Abstract: A short HowTo for new WeeChat users (Russian version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_quickstart.ru.html
Files: /usr/share/doc/weechat-doc/weechat_quickstart.ru.html
-10
View File
@@ -1,10 +0,0 @@
Document: weechat-scripting-en
Title: WeeChat Scripting Guide (English)
Author: Sebastien Helleu
Abstract: This document describes the API to create scripts
for WeeChat (English version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_scripting.en.html
Files: /usr/share/doc/weechat-doc/weechat_scripting.en.html
-10
View File
@@ -1,10 +0,0 @@
Document: weechat-scripting-fr
Title: WeeChat Scripting Guide (French)
Author: Sebastien Helleu
Abstract: This document describes the API to create scripts
for WeeChat (French version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_scripting.fr.html
Files: /usr/share/doc/weechat-doc/weechat_scripting.fr.html
-13
View File
@@ -1,13 +0,0 @@
Document: weechat-tester-en
Title: WeeChat Tester's Guide (English)
Author: Sebastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (English version).
Section: Network/Communication
Format: text
Files: /usr/share/doc/weechat-doc/weechat_tester.en.txt.gz
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_tester.en.html
Files: /usr/share/doc/weechat-doc/weechat_tester.en.html
-13
View File
@@ -1,13 +0,0 @@
Document: weechat-tester-fr
Title: WeeChat Tester's Guide (French)
Author: Sebastien Helleu
Abstract: This document describes how to test and report
bugs against the WeeChat IRC Client (French version).
Section: Network/Communication
Format: text
Files: /usr/share/doc/weechat-doc/weechat_tester.fr.txt.gz
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_tester.fr.html
Files: /usr/share/doc/weechat-doc/weechat_tester.fr.html
-10
View File
@@ -1,10 +0,0 @@
Document: weechat-tester-pl
Title: WeeChat Tester's Guide (Polish)
Author: Sebastien 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/weechat_tester.pl.html
Files: /usr/share/doc/weechat-doc/weechat_tester.pl.html
-10
View File
@@ -1,10 +0,0 @@
Document: weechat-user-en
Title: WeeChat User's Guide (English)
Author: Sebastien Helleu
Abstract: This manual describes how to use the WeeChat
IRC client (English version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_user.en.html
Files: /usr/share/doc/weechat-doc/weechat_user.en.html
-10
View File
@@ -1,10 +0,0 @@
Document: weechat-user-fr
Title: WeeChat User's Guide (French)
Author: Sebastien Helleu
Abstract: This manual describes how to use the WeeChat
IRC client (French version).
Section: Network/Communication
Format: HTML
Index: /usr/share/doc/weechat-doc/weechat_user.fr.html
Files: /usr/share/doc/weechat-doc/weechat_user.fr.html
-6
View File
@@ -1,6 +0,0 @@
doc/en/weechat_faq.en.txt
doc/en/weechat_quickstart.en.txt
doc/en/weechat_tester.en.txt
doc/fr/weechat_faq.fr.txt
doc/fr/weechat_quickstart.fr.txt
doc/fr/weechat_tester.fr.txt
-1
View File
@@ -1 +0,0 @@
usr/share/doc/weechat/* usr/share/doc/weechat-doc
-1
View File
@@ -1 +0,0 @@
usr/lib
-7
View File
@@ -1,7 +0,0 @@
usr/lib/weechat/plugins/aspell.so
usr/lib/weechat/plugins/fifo.so
usr/lib/weechat/plugins/perl.so
usr/lib/weechat/plugins/python.so
usr/lib/weechat/plugins/ruby.so
usr/lib/weechat/plugins/lua.so
usr/lib/weechat/plugins/tcl.so
+1
View File
@@ -0,0 +1 @@
shlibs:Depends=libc6 (>= 2.3.2-1), libncurses5 (>= 5.3.20030510-1)
-295
View File
@@ -1,295 +0,0 @@
/* XPM */
static char *weechat[] = {
/* columns rows colors chars-per-pixel */
"32 32 257 2",
" c #000000",
". c #0A0904",
"X c #080813",
"o c #080716",
"O c #110D08",
"+ c #150A15",
"@ c #1A0D1A",
"# c #19150C",
"$ c #151517",
"% c #1F1F32",
"& c #13132C",
"* c #260A26",
"= c #351935",
"- c #271927",
"; c #262608",
": c #322C0C",
"> c #36380B",
", c #353316",
"< c #232516",
"1 c #242224",
"2 c #292935",
"3 c #2D302D",
"4 c #2D3330",
"5 c #3B333B",
"6 c #1D1C4A",
"7 c #110F7B",
"8 c #0E0D65",
"9 c #221F60",
"0 c #282948",
"q c #292855",
"w c #333447",
"e c #383855",
"r c #2A2978",
"t c #302F70",
"y c #353465",
"u c #363574",
"i c #2A286E",
"p c #2E4110",
"a c #39410C",
"s c #3E4C11",
"d c #3F5220",
"f c #394041",
"g c #3E4753",
"h c #493F11",
"j c #4F1050",
"k c #4A0F4B",
"l c #572657",
"z c #4D374D",
"x c #403F6F",
"c c #640964",
"v c #641E64",
"b c #701770",
"n c #790A79",
"m c #683C68",
"M c #623662",
"N c #6B2B6B",
"B c #454A08",
"V c #484C15",
"C c #554B16",
"Z c #58560A",
"A c #595B0B",
"S c #545715",
"D c #4C5712",
"F c #4D5034",
"G c #504F24",
"H c #4E710E",
"J c #4D7C1C",
"K c #5B6713",
"L c #506B11",
"P c #546927",
"I c #506D2E",
"U c #665B14",
"Y c #696C0C",
"T c #68730D",
"R c #6F7010",
"E c #707128",
"W c #4D504D",
"Q c #46456A",
"! c #4C4C7B",
"~ c #434577",
"^ c #554C69",
"/ c #5B5A7D",
"( c #54547A",
") c #535964",
"_ c #567745",
"` c #4D6B57",
"' c #5D6C78",
"] c #587069",
"[ c #6A487C",
"{ c #6D576D",
"} c #645475",
"| c #76557A",
" . c #786678",
".. c #70707D",
"X. c #676768",
"o. c #3F3E82",
"O. c #2D2BAA",
"+. c #3D3BA4",
"@. c #3B39B9",
"#. c #484888",
"$. c #4A4C96",
"%. c #585885",
"&. c #595890",
"*. c #555494",
"=. c #4745A6",
"-. c #4947B5",
";. c #514FBB",
":. c #5A58BB",
">. c #5C5BAF",
",. c #755581",
"<. c #605FB6",
"1. c #6B6883",
"2. c #68679B",
"3. c #7A7497",
"4. c #76698F",
"5. c #6968A6",
"6. c #706FB5",
"7. c #7675BB",
"8. c #6E6DB6",
"9. c #4947C3",
"0. c #5351C2",
"q. c #5D5BC0",
"w. c #6B6ACC",
"e. c #6361C7",
"r. c #7170C6",
"t. c #7877D2",
"y. c #56840C",
"u. c #6A8814",
"i. c #63980B",
"p. c #748614",
"a. c #7F9C0D",
"s. c #749218",
"d. c #698F13",
"f. c #6C852A",
"g. c #798C35",
"h. c #76912B",
"j. c #76B505",
"k. c #70A50F",
"l. c #7EA525",
"z. c #678946",
"x. c #A57A5A",
"c. c #9A1E9A",
"v. c #861B86",
"b. c #912B92",
"n. c #8A298A",
"m. c #A030A0",
"M. c #864886",
"N. c #8F469E",
"B. c #975897",
"V. c #8A788A",
"C. c #936A93",
"Z. c #987599",
"A. c #866892",
"S. c #9470AB",
"D. c #A25FA2",
"F. c #B16FB1",
"G. c #B07FB1",
"H. c #B776B7",
"J. c #807FD0",
"K. c #A37AC2",
"L. c #87880B",
"P. c #888513",
"I. c #869A0A",
"U. c #8B9B14",
"Y. c #94970D",
"T. c #9B9C13",
"R. c #98961A",
"E. c #968D16",
"W. c #929D2F",
"Q. c #82A90B",
"!. c #8CAA06",
"~. c #82B30A",
"^. c #84B706",
"/. c #97A913",
"(. c #96B90A",
"). c #99B914",
"_. c #91AB10",
"`. c #A39A1C",
"'. c #A09A3D",
"]. c #A9AE05",
"[. c #A7AA16",
"{. c #A7B90B",
"}. c #ACB712",
"|. c #BDBA18",
" X c #B7B711",
".X c #B0B726",
"XX c #9A8B4B",
"oX c #9EC008",
"OX c #BCC40D",
"+X c #BCC90E",
"@X c #B1C707",
"#X c #AEC90C",
"$X c #C4AE2A",
"%X c #C4CB11",
"&X c #C8D809",
"*X c #CBD011",
"=X c #D1CF1A",
"-X c #D1D50E",
";X c #D7E803",
":X c #918197",
">X c #858494",
",X c #8987BA",
"<X c #928BBB",
"1X c #9B9BA8",
"2X c #9B98B8",
"3X c #8784A3",
"4X c #A787A8",
"5X c #AE9CAE",
"6X c #AC99B1",
"7X c #B988B9",
"8X c #BB92BC",
"9X c #B598B8",
"0X c #A0A0A7",
"qX c #A6A6B7",
"wX c #8382C6",
"eX c #8382D4",
"rX c #8D8CD4",
"tX c #9C8CC7",
"yX c #908FD9",
"uX c #9493C6",
"iX c #9A99DB",
"pX c #9493D3",
"aX c #A693C8",
"sX c #A09AD5",
"dX c #A8A5C9",
"fX c #A9A6D6",
"gX c #B7A8C7",
"hX c #B7B6DA",
"jX c #B5B1CE",
"kX c #B7B4E2",
"lX c #A9A8E2",
"zX c #C88EC8",
"xX c #C38BC3",
"cX c #C695C6",
"vX c #C2ADC2",
"bX c #C7A6C7",
"nX c #C4B5C4",
"mX c #C6B9D3",
"MX c #DDB9DD",
"NX c #D9B4D9",
"BX c #D3A4D4",
"VX c #C9C5CA",
"CX c #CAC9D7",
"ZX c #D4CBD4",
"AX c #D9C1D9",
"SX c #DACEDA",
"DX c #C4C3E4",
"FX c #CBC9E6",
"GX c #D8D7E6",
"HX c #E7CCE7",
"JX c #E9CFE9",
"KX c #EADBEA",
"LX c #E4DAE4",
"PX c #EDE2ED",
"IX c #EAEAF4",
"UX c #F0E1F0",
"YX c None",
/* pixels */
"YXYXYXYXYXYXYXYXYXSXLXIXUXCX YXYXYXYXVXLXPXPXZX. YXYXYXYXYX",
"YXYXYXYXYXYXYXnXKXUXUXKXJXSXnX YXnXKXPXPXPXKXSXnX YXYXYXYX",
"YXYXYXYXYXYX9XHXJXMX0XvX:X9XSX .HXJXAX5XvX>XvXAX. YXYXYXYX",
"YXYXYXYXYXYXMXMXkXx.. | 4XNXvX NXMXMXV. { 4XNXbX YXYXYX",
"YXYXYXYXYXBXBX8XZ. 4X8X8XZ. { BX8X4X G.7XcXZ. YXYXYX",
"YXYXYXYXLXcXcXC.z zXxX7X) X.G.G.C.z zXcX7X5 5 VX YXYX",
"YXYX1XIXGXBXCXC.+ H.H.F.6XIXIX8X| B.- F.H.8X5X0XCXCX YX",
"YXYX3 GXmX8XmXZ.M M.D.m | VXCXGX4X| B.M.B.D.m gXqX1XCXW YX",
"YXYX CXgXS.jXA.= + = 2XFXqXFXZ.| n.l @ = jX>X..GX$ YX",
"YXYX hXaXA.jX,.= + kXFXDXFX3.{ m l * w hXV.2XdX YX",
"YXYX hXdX,.fX[ v n.j b.kX2XDXhX1.4.v b.m.j S.tX3XkX1. YX",
"YXYX fXdX4.aX^ j v.c.N.fX) kXuX} <X= b c.c.G.tX1.kX% YXYX",
"YXYX <XfXuX<X[ k c c S.uX( fX,X' iXk c n b tX/ 3.uX YXYX",
"YXYX 2.iXrX2./ $ pX2.6.rX,XQ iX2 2 iXQ pX/ YXYX",
"YXYX e rXrX( %.e ( rX( 5.7.wXQ J.y 5.yX( yX& YXYXYX",
"YXYXYX t.eXQ 5.~ 7.7.2.% 2.eX&.2.&. J.6.8.5. YXYXYX",
"YXYXYX r.t.y 8.#.o 8.~ *. x t.r.~ 8. 0 t.! r.0 o $ F YXYXYX",
"YXYXYX <.w.~ >.#.d ] #.0 q w.w.y w.o #.e.$.<.. d I I YX",
"YXYXYX =.e.=.#.g z.I t X q ;.e.u :.y :.o.q.u < J y.d YX",
"YXYXYX y 0.0.r ] _ I 6 o -.0.-.=.0.;.t 0.o , I y.p YX",
"YXYXYXYX 9.9.i ' _ g X + +.9.9.@.;.i +.r y.k.i.y.H ",
"YXYXXXW.Q.] =.@.z.J 4 . V s.E o.@.@.-.' d.z.L ; s j.j.j.i.D ",
"YXXXW.Q.Q.f.) O.l.f.# D Q.u.u.o O.$.g.g.h.^.^.> s.oX~.~.u.s ",
"YX}.oXD a P w 9 ~.f.S T p.p.K ~ ).g q g j.(.. # k.a.K ",
".X#X{. . ; 7 0 _.!.V O I.U.C . oXg.6 8 4 Y.(. a /.).T ",
"+X#X(. 1 # T.{., #X{.C B +XI. I./.{. T #XoXA YX",
"&X+X}.Y P.%X[.P.+X@X. &X@XY Z ;X/.A T.OX}.+X; Y.}.[.B YXYX",
".X*XOX;X;X XZ T.*XL. =X%XP.; ;X%X*XT.> `.|., ].`. X: YXYX",
". Y.].T.A . C C ; $X-Xh P.].R O R : XE.P.O YXYX",
" E U C . YXYX",
"YX YX. # YXYXYX",
"YXYXYXYXYXYXYXYXYXYXYXYXYX YXYXYXYXYXYXYXYXYX YXYXYXYXYX"
};
-33
View File
@@ -1,33 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
IF(NOT DISABLE_DOC)
FIND_PACKAGE(Sourcehighlight)
FIND_PACKAGE(Asciidoc)
IF(ASCIIDOC_FOUND AND SOURCEHIGHLIGHT_FOUND)
ADD_SUBDIRECTORY( en )
ADD_SUBDIRECTORY( fr )
ADD_SUBDIRECTORY( pl )
ADD_SUBDIRECTORY( de )
ADD_SUBDIRECTORY( ru )
ADD_SUBDIRECTORY( ja )
ADD_SUBDIRECTORY( it )
ENDIF(ASCIIDOC_FOUND AND SOURCEHIGHLIGHT_FOUND)
ENDIF(NOT DISABLE_DOC)
INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/weechat-curses.1 DESTINATION ${SHAREDIR}/man/man1)
-21
View File
@@ -1,21 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
SUBDIRS = . en fr pl de ru ja it
man_MANS = weechat-curses.1
EXTRA_DIST = $(man_MANS) docgen.pl CMakeLists.txt
-48
View File
@@ -1,48 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# FAQ
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.de.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toc-title='Inhaltsverzeichnis' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.de.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.de.txt
COMMENT "Building weechat_faq.de.html"
)
ADD_CUSTOM_TARGET(doc-faq-de ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.de.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.de.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
# quickstart
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toc-title='Inhaltsverzeichnis' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.de.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.de.txt
COMMENT "Building weechat_quickstart.de.html"
)
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 ${SHAREDIR}/doc/${PROJECT_NAME})
# tester's guide
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toc-title='Inhaltsverzeichnis' -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.de.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.de.txt
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 ${SHAREDIR}/doc/${PROJECT_NAME})
-49
View File
@@ -1,49 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
weechat_faq.de.txt \
weechat_quickstart.de.txt \
weechat_tester.de.txt
all-local: weechat_faq.de.html \
weechat_quickstart.de.html \
weechat_tester.de.html
# FAQ
weechat_faq.de.html: weechat_faq.de.txt
$(ASCIIDOC) -a toc -a toc-title='Inhaltsverzeichnis' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_faq.de.html weechat_faq.de.txt
# quickstart
weechat_quickstart.de.html: weechat_quickstart.de.txt
$(ASCIIDOC) -a toc -a toc-title='Inhaltsverzeichnis' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_quickstart.de.html weechat_quickstart.de.txt
# tester's guide
weechat_tester.de.html: weechat_tester.de.txt
$(ASCIIDOC) -a toc -a toc-title='Inhaltsverzeichnis' -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_tester.de.html weechat_tester.de.txt
# install docs
install-data-hook:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
$(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
# clean
clean-local:
-rm -f *.html
-483
View File
@@ -1,483 +0,0 @@
WeeChat FAQ (häufig gestellte Fragen)
=====================================
FlashCode <flashcode@flashtux.org>
[[general]]
Allgemein
---------
[[why_choose_weechat]]
Weshalb WeeChat? - X-Chat und Irssi sind sehr gut...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Weil WeeChat schlank ist und neue Funktionen besitzt.
Einige Funktionen (Version > = 0.3.x):
* Unterstützung verschiedener Protokolle durch Erweiterungen (IRC, Jabber)
* mehrere Remote GUIs als Ergänzung zu Curses (in Kürze)
* in mehreren Sprachen verfügbar
* den eigenen Bedürfnissen anpassbar, durch Erweiterungen (C, Perl, Python, Ruby, Lua, Tcl)
* Buffer mit unabhängigem Inhalt
* Filterung der Anzeige mittels Tags und regulären Ausdrücken
* horizontale und vertikale Einteilung der Fenster
* anpassbare und erweiterbare Leisten
* Nickliste in allen GUI's verfügbar
* inkrementelle Textsuche in Buffern, zu Highlights springen
* FIFO Pipe für Fernsteuerung
* Unterstützung von Aspell
* Doppelter Zeichensatz (Kodierung/Dekodierung)
* Neuentwicklung (basiert auf keinem anderem Programm)
* lauffähig auf einer Vielzahl von Plattformen
* 100% GPL und Frei
Weitere Informationen gibt es auf der folgenden Internetseite:
http://www.weechat.org/features
[[compilation_install]]
Kompilierung / Installation
---------------------------
[[gui]]
Ich habe gehört es gibt mehrere GUIs für WeeChat. Wie kann ich diese kompilieren bzw nutzen?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Zur Zeit ist nur eine GUI für Curses verfügbar.
Andere GUIs (zur Zeit in der Entwicklung) werden als Remote Clients verfügbar
sein.
[[compile_git]]
Ich kann WeeChat nach Cloning des git Repository nicht kompilieren - weshalb?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Der empfohlene Weg um WeeChat zu kompilieren ist die Nutzung von cmake.
Falls Du WeeChat mit Hilfe der autotools kompilieren solltest (also nicht cmake),
stelle sicher, dass Du die neueste Version von autoconf und automake besitzt
(WeeChat wird mit autoconf 2.61 und automake 1.10.1 entwickelt).
Die zweite Möglichkeit besteht darin das "Entwickler-Paket" zu installieren. Dies
besitzt weniger Abhängigkeiten. Das Paket wird quasi täglich aus dem git Repository erstellt.
Beachte, dass dieses Paket nicht immer exakt mit dem git Repository übereinstimmen muss
und daher auch weniger brauchbar sein kann, im Gegensatz zu der Methode dass man selbst
das Repository klont und daraus Updates installiert.
[[lost]]
Ich habe WeeChat gestartet, komme aber nicht mehr weiter - was kann ich tun?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Um Hilfe zu erhalten, nutze den `/help` Befehl. Eine Hilfe zu einem Befehl erhältst
Du durch die Eingabe von: `/help Befehlsname`.
Befehle sowie die Belegung der jeweiligen Tasten sind in der Dokumentation
aufgeführt.
(Tipp: Mit den Tasten <Bild-hoch>/<Bild-runter> kannst Du die Anzeige scrollen)
Neue Benutzer sollten unbedingt die 'quickstart'-Anleitung lesen (siehe
Dokumentation auf der Internetseite).
[[display]]
Anzeige
-------
[[charset]]
Teilweise fehlen den Zeichen die Akzente. Wie kann ich das korrigieren?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dies ist ein bekanntes Problem. Bitte lese deshalb die nachfolgende Erklärung
sorgfältig durch und überprüfe *alle* aufgezeigten Lösungsmöglichkeiten.
Für Versionen < 0.2.3: Bitte auf die neueste stabile Version von WeeChat wechseln.
Für Versionen > = 0.2.3:
* überprüfe, ob weechat-curses mit libncursesw verlinkt ist (Warnung: nötig bei den
meisten Distributionen - jedoch nicht bei allen): `ldd /path/to/weechat-curses`
* prüfe mit dem Befehl `/plugin`, ob die "Charset" Erweiterung geladen ist (falls
dies nicht der Fall sein sollte benötigst Du wahrscheinlich noch das Paket "weechat-plugins")
* überprüfe die Ausgabe des `/charset` Befehls (im Server-Buffer). Du solltest
'ISO-XXXXXX' oder 'UTF-8' für den Terminal Zeichensatz als Antwort erhalten. Falls Du
'ANSI_X3.4-1968' oder einen anderen Wert bekommen solltest, ist Deine Einstellung der
locale möglicherweise falsch.
* Einstellen des globalen decode Wertes, z.B.:
** WeeChat < = 0.2.6: `/setp charset.global.decode = ISO-8859-15`
** WeeChat > = 0.3.x: `/set charset.default.decode "ISO-8859-15"`
* Falls Du UTF-8 locale nutzt:
** prüfe, ob Dein Terminal UTF-8 fähig ist (der empfohlene Terminal für UTF-8
ist rxvt-unicode)
** Solltest Du screen nutzten, prüfe ob dieser im UTF-8 Modus läuft
("`defutf8 on`" in der Datei ~/.screenrc oder `screen -U` zum Starten von
screen)
[NOTE]
Für Weechat wird die Nutzung von UTF-8 locale empfohlen. Nutzt Du jedoch ISO
oder andere locale, bitte vergewissere Dich, dass *alle* Deine Einstellungen
(Terminal, screen, ...) sich auch auf ISO beziehen und *nicht* auf UTF-8.
[[bars_background]]
Bars, z.B. Titel und Status haben keine Hintergrundfarbe bzw. diese endet direkt nach dem Text, warum?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dies kann durch einen falschen Wert in der Variablen TERM Deiner Shell verursacht
werden. Bitte überprüfe die Ausgabe von `echo $TERM` in Deinem Terminal.
Abhängig davon von wo WeeChat startet wird, solltest Du folgenden Wert haben:
* falls WeeChat lokal oder auf einem entfernten Rechner läuft, je nach benutztem
Terminal: 'xterm', 'rxvt', ...
* falls WeeChat unter screen läuft, sollte der Wert 'screen' sein.
Falls nötig korrigiere den Wert Deiner Variablen TERM: `export TERM="xxx"`.
[[screen_weird_chars]]
Wenn ich Weechat unter screen nutze habe ich merkwürdige Zeichen, wie kann ich dies beheben?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dies kann durch einen falschen Wert in der TERM-Variable Deiner Shell verursacht
werden. Bitte überprüfe die Ausgabe von `echo $TERM` in Deinem Terminal.
Als Beispiel, 'xterm-color' könnte solche merkwürdigen Zeichen produzieren.
Nutzte stattdessen lieber 'xterm'.
Falls nötig korrigiere den Wert Deiner TERM-Variable: `export TERM="xxx"`.
[[buffer_vs_window]]
Ich habe von "Buffern" und "Fenstern" gehört - Worin besteht der Unterschied?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ein 'Buffer' besteht aus einer Nummer, besitzt einem Namen, hat Zeilen die angezeigt
werden (und noch anderen Daten).
Ein 'Fenster' ist ein Bildschirmbereich der Buffer darstellt. Es ist möglich
den Bildschirm in mehrere Fenster aufzuteilen.
Jedes Fenster stellt einen Buffer dar. Ein Buffer kann unsichtbar sein (er wird
in einem Fenster nicht angezeigt). Oder ein Buffer wird durch ein oder mehrere Fenster
angezeigt.
[[terminal_copy_paste]]
Wie kann ich einen Text kopieren und einfügen ohne das die Nickliste mit eingefügt wird?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Hierzu kannst Du ein Terminal nutzen welches Block-Auswahl erlaubt (wie z.B. rxvt-unicode,
konsole, gnome-terminal, ...). Im Normalfall erfolgt die Markierung mittels der Tasten
ctrl + alt in Verbindung mit der Auswahl durch die Maus.
Eine andere Lösung ist, die Nickliste nach oben oder unten zu verschieben:
* WeeChat < = 0.2.6: +
`set look_nicklist_position = top`
* WeeChat > = 0.3.x: +
`/bar set nicklist position top`
[[urls]]
Wie kann ich eine URL aufrufen die einen Zeilenumbruch besitzt?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Da WeeChat sowohl die Uhrzeit als auch einen Präfix für jede Zeile darstellt und
man optional auch noch Bars nutzen kann, die das Chatfenster zusätzlich
verkleinern, kann es passieren dass sehr lange URLs abgeschnitten und dadurch nicht
mehr aufgerufen werden können.
Deshalb sollte man eines der folgenden Skripten nutzen:
urlbar.py::
stellt die URL in einer Bar dar.
urlgrab.py::
protokolliert URLs und öffnet diese im Standardbrowser.
url_shorten.rb::
tinyurl.py::
shortenurl.py::
URLs werden durch einen Internet-Dienst gekürzt.
Eine Liste der Skripten die sich mit URLs befassen: http://www.weechat.org/scripts/stable/tag/url
[[change_locale_without_quit]]
Ich möchte die Sprache der Meldungen die WeeChat ausgibt ändern, ohne WeeChat zu verlassen. Ist dies möglich?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Ja, dazu kannst Du das Python-Skript shell.py verwenden (erhältlich auf der
Internetseite). Nach dem laden des Skripts führe folgende Befehle aus:
/shell setenv LANG=en_US.UTF-8
/upgrade
Hierdurch erhält man für das Terminal englische, UTF-8 kodierte Meldungen.
Benutzer von ISO-Kodierungen können folgendes eingeben:
`/shell setenv LANG=en_US`.
[[key_bindings]]
Tastaturbelegung
----------------
[[meta_keys]]
Aus welchem Grund funktionieren manche meta keys (alt + key) nicht?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Wenn Du einen Terminal wie xterm oder uxterm nutzten solltest werden einige
meta keys standardmäßig nicht unterstützt.
In diesem Fall sollte folgende Zeile der Konfigurationsdatei '~/.Xresources'
hinzugefügt werden:
* für xterm:
----------------------------------------
XTerm*metaSendsEscape: true
----------------------------------------
* für uxterm:
----------------------------------------
UXTerm*metaSendsEscape: true
----------------------------------------
Danach muss resources neu geladen werden (`xrdb -override ~/.Xresources`) oder
man startet X neu.
[[customize_key_bindings]]
Wie kann ich die Tastaturbelegung anpassen?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Die Tasten werden mit dem Befehl `/key` belegt.
Mit der voreingestellten Tastenkombination Meta-k (normal Alt-k) kann man sich den
Code der jeweiligen Taste anzeigen lassen und in die Eingabezeile einfügen.
[[irc]]
IRC
---
[[ignore_vs_filter]]
Was ist der Unterschied zwischen dem Befehl /ignore und /filter?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Der Befehl `/ignore` ist ein IRC-Befehl und beeinflusst somit nur die IRC-Buffer
(Server und Channel).
Durch den Befehl kann man bestimmte Nicks oder Hostnamen von Usern eines Servers oder
von Channels ignorieren (Der Befehl wird nicht auf den Inhalt der Meldung angewandt).
Zutreffende Meldungen werden, bevor sie angezeigt werden, von der IRC-Erweiterung gelöscht
(Du wirst sie niemals zu Gesicht bekommen).
Der Befehl `/filter` ist ein Kern-Befehl (A.d.Ü.: wird in WeeChat ausgeführt und
nicht an den Server gesendet) und beeinflußt somit jeden Buffer.
Dieser Befehl eröffnet die Möglichkeit bestimmte Zeilen in Buffern, mittels Tags und
regulären Ausdrücken nach Präfix und Zeileninhalt zu filtern.
Die Darstellung von gefilterte Zeilen wird nur unterdrückt, die Zeilen werden nicht gelöscht.
Du kannst diese Zeilen sichtbar machen indem Du den Filter deaktivierst (Voreinstellung zum
aktivieren/deaktivieren der Filter: Alt-Taste + "=").
[[filter_irc_join_part_quit]]
Wie kann ich join/part/quit Meldungen in den IRC Channels filtern (A.d.ü.: unterdrücken)?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Entsprechend der WeeChat-Version:
* WeeChat < = 0.2.6: +
`/ignore * join #weechat freenode` +
`/ignore * part #weechat freenode` +
`/ignore * quit #weechat freenode` +
(Channel und/oder Server können durch "*" ersetzt werden, Hilfe mit: `/help ignore`)
* WeeChat > = 0.3.x:
** Intelligenter Filter (erhalte join/part/quit der User, mit denen Du kürzlich gesprochen hast): +
`/set irc.look.smart_filter on` +
`/filter add irc_smart * irc_smart_filter *` +
(Hilfe mit: `/help irc.look.smart_filter` und `/help filter`)
** globaler Filter (unterdrückt *alle* join/part/quit): +
`/filter add jpk * irc_join,irc_part,irc_quit *` +
(Hilfe mit: `/help filter`)
[[filter_voice_messages]]
Wie kann ich voice Nachrichten filtern (z.B. auf Bitlbee Servern)?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Voice Nachrichten zu filtern ist nicht einfach, da der Voice-Modus mit anderen
Modi in der IRC Nachricht kombiniert werden kann.
Falls Du Voice Nachrichten z.B. bei Bitlbee unterdrücken möchtest da diese
dazu genutzt werden um den Abwesenheitsstatus anderer User anzuzeigen und Du nicht
von diesen Mitteilungen überflutet werden möchtest, kannst Du WeeChat anweisen
den Nick der abwesend ist in einer speziellen Farbe darzustellen.
Im Channel '&bitlbee':
----------------------------------------
set away_devoice false
----------------------------------------
Um in WeeChat anzeigen zu lassen welche Nicks abwesend sind siehe:
<<color_away_nicks,abwesende Nicks>>.
[[color_away_nicks]]
Wie kann ich mir Nicks in der Nickliste anzeigen lassen, die abwesend sind?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dazu musst Du in der Option 'irc.network.away_check' ein Zeitintervall, in Minuten,
angeben die zwischen zwei Überprüfungen liegen soll.
Mit der Option 'irc.network.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.
In folgendem Beispiel wird der Abwesenheitsstatus alle fünf Minuten überprüft. Dabei
werden aber nur Channels berücksichtigt die nicht mehr als 25 Teilnehmer haben:
----------------------------------------
/set irc.network.away_check 5
/set irc.network.away_check_max_nicks 25
----------------------------------------
[[highlight_notification]]
Wie kann ich mich darüber informieren lassen falls mich jemand in einem Channel highlighted
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
((A.d.Ü) Highlight bedeutet, dass der eigene Nick-Name im Channel genannt wird. Ich also
direkt, persönlich, angesprochen werde. Der Nick der Person die mich anschreibt wird dabei
farblich hervorgehoben)
Die Einstellung geschieht abhängig von der WeeChat Version:
* WeeChat < = 0.2.6: nutze das Skript 'sound.pl' (verfügbar auf der Skript-Seite),
und nehme Einstellungen für einen System-Befehl (um einen Klang abzuspielen,
eine Meldung anzuzeigen, ...) mit folgendem Befehl vor: +
`/setp perl.sound.cmd_highlight = "/path/to/command arguments"`
* WeeChat > = 0.3.x: nutze das Skript 'launcher.pl' (verfügbar auf der Skript-Seite),
und nehme Einstellungen für einen System-Befehl (um einen Klang abzuspielen,
eine Meldung anzuzeigen, ...) mit folgendem Befehl vor: +
`/set plugins.var.perl.launcher.signal.weechat_highlight "/path/to/command arguments"`
Es gibt noch andere Skripten, die über verschiedene Ereignisse informieren , bitte
besuche dazu die Skripten-Webseite: http://www.weechat.org/scripts/
[[plugins_scripts]]
Erweiterungen / Skripten
------------------------
[[openbsd_plugins]]
Ich benutze OpenBSD und WeeChat lädt keine Erweiterungen - weshalb?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Unter OpenBSD enden die Dateinamen von Erweiterungen mit ".so.0.0" (".so" bei Linux).
Um dies zu beheben muss folgendes konfiguriert werden:
* WeeChat < = 0.2.6: +
`/set plugins_extension = ".so.0.0"`
* WeeChat > = 0.3.x: +
`/set weechat.plugin.extension ".so.0.0"`
Danach: `/plugin autoload`.
[[load_scripts]]
Wie kann ich Perl/Python/Ruby/Lua/Tcl Skripten laden? Sind Skripten kompatibel zu anderen IRC-Clients?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Die Skripten für WeeChat sind mit anderer IRC-Clients nicht kompatibel und vice versa.
Um Skripten zu laden nutze den Befehl für die jeweilige Skriptsprache:
`/perl`, `/python`, `/ruby`, `/lua` und `/tcl`
Anmerkung:
* Voreingestellter Pfad der Skripten: '~/.weechat/<Skriptsprache>/'
* Skripten die sich im Verzeichnis '~/.weechat/<Skriptsprache>/autoload/' befinden werden
beim Start von WeeChat automatisch geladen.
* Eine 'tcl' Erweiterung ist ab Version > = 0.3.0 verfügbar.
[[settings]]
Einstellungen
-------------
[[memory_usage]]
Wie kann ich WeeChat dazu bringen weniger Speicher zu verbrauchen?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Du kannst folgende Tipps umsetzen damit WeeChat weniger Speicher benötigt:
* nutze die aktuelle Version (man kann davon ausgehen das eine aktuelle Version
weniger Speicherlecks besitzt, als eine ältere Version)
* lade keine Erweiterungen die Du nicht benötigst. Zum Beispiel: ASpell, Fifo,
Logger, Perl, Python, Ruby, Lua, Tcl, Xfer (wird für DCC benötigst)
* lade nur Skripten die Du auch benutzt
* nutze einen kleineren Wert für die Option 'weechat.history.max_lines' (Anzahl
der Zeilen die für jeden Buffer im Speicher gehalten werden soll)
* nutze einen kleineren Wert für die Option 'weechat.history.max_commands' (Anzahl
des Verlaufsspeichers, für Befehle, die im Speicher gehalten werden sollen)
[[development]]
Entwicklung
-----------
[[bug_task_patch]]
Was kann ich machen falls ich einen Fehler gefunden habe, nach neuen Funktionen fragen oder Patches einsenden möchte?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Es gibt drei Möglichkeiten:
. Du kannst zu uns in den IRC kommen: 'irc.freenode.net', channel '#weechat'
. Du kannst die Internetseite savannah nutzen:
* Einen Fehler melden: https://savannah.nongnu.org/bugs/?group=weechat
* Einen Verbesserungsvorschlag machen: https://savannah.nongnu.org/task/?group=weechat
* Einen Patch einsenden: https://savannah.nongnu.org/patch/?group=weechat
. Du kannst den Entwicklern mailen, entsprechende Mail-Adressen auf der Supportseite:
http://www.weechat.org/about
(Um emails an die "support" Mailing-Liste zu schicken, kannst Du diese abonnieren)
[[supported_os]]
Auf welchen Plattformen läuft WeeChat? Wird es noch auf andere Betriebssystemen portiert?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Eine vollständige Liste der Portierungen findest Du unter: http://www.weechat.org/download
Wir geben unser Bestes um WeeChat auf möglichst viele Plattformen zu portieren.
Aber um WeeChat auf Betriebssystemen zu testen, zu denen wir keinen Zugang haben,
ist Hilfe gerne gesehen.
[[help_developers]]
Ich möchte den Entwicklern von WeeChat helfen. Was kann ich tun?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Es gibt einiges zu tun z.B. testen, programmieren, Dokumentation, ...
Bitte kontaktiere uns via IRC oder email, schaue auf die Support-Seite:
http://www.weechat.org/about
[[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: http://www.weechat.org/donate
-265
View File
@@ -1,265 +0,0 @@
WeeChat Quick Start Guide
=========================
FlashCode <flashcode@flashtux.org>
[[start]]
Start von WeeChat
-----------------
Der bevorzugte Terminal-Emulator für X (aber nicht obligatorisch) ist
rxvt-unicode (er hat eine gute Unterstützung für UTF-8 und keine Probleme mit der
Standard Tastaturbelegung).
Starte "weechat-curses" aus Deiner shell.
[[help_options]]
Online-Hilfe / Optionen
-----------------------
WeeChat enthält Hilfetexte für alle Befehle, erreichbar über `/help`.
Um Hilfe zu einen bestimmten Befehl zu bekommen kann man einfach `/help Befehl`
ausführen.
Um Optionen zu setzen benutzt man `/set config.section.option value`.
(dabei ist 'config' der Konfigurationsname ('weechat' für den Kern von weechat,
oder ein Plugin-Name), 'section' ein Abschnitt dieser Konfiguration und 'option'
der Name der Option).
WeeChat benutzt den neuen Wert sofort (*Niemals* muss WeeChat neu gestartet
werden nach dem die Konfiguration geändert wurde).
Du kannst die Option `/set` mit teilweise ausgeschriebenen Namen und dem
Platzhalter "*" am Beginn oder Ende verwenden um alle Optionen anzuzeigen, die
die Zeichenkette enthalten.
Zum Beispiel:
`/set`::
Anzeige aller Optionen (WeeChat und Plugins)
`/set weechat.*`::
Anzeige der WeeChat Optionen
`/set irc.*`::
Anzeige der Optionen des IRC-Plugins
Du kannst mit `/help` Hilfe für Optionen auflisten lassen, z.B.:
`/help weechat.look.highlight`.
Beim beenden von WeeChat werden alle Einstellungen gespeichert (mittels `/save`
kann das Schreiben der Optionen erzwungen werden).
Konfigurations-Dateien (*.conf) können auch per Hand editiert und mit dem Befehl
`/reload` neu eingelesen werden (falls man z.B. den `/set` Befehl nicht
verwenden möchte).
[[core_vs_plugins]]
Kern (Core) vs Plugins
----------------------
Der Kern (core) von WeeChat ist ausschließlich dazu da, Daten auf dem Bildschirm
darzustellen um mit dem Benutzer zu interagieren, dies bedeutet, WeeChat an sich
-also nur WeeChat core- ohne jegliche Plugins ist unbrauchbar.
(an die treuen User: IRC war ein Teil des Kerns bei Versionen <= 0.2.6)
Alle Netzwerkprotokolle, z.B. IRC, werden als separates Plugin bereit gestellt.
Benutze den Befehl `/plugin` um alle Plugins aufzulisten, "irc" sowie andere
Plugins sollten aufgelistet werden.
[[create_irc_server]]
Einen IRC-Server erstellen
--------------------------
Du kannst einen IRC-Server mit dem Befehl `/server` hinzufügen, z.B.:
/server add oftc irc.oftc.org/6667
Wie immer, wenn Du nicht mehr weiter weißt, kannst Du mit `/help server` Hilfe
erlangen.
[[irc_server_options]]
Setzen eigener IRC-Server Optionen
----------------------------------
WeeChat verwendet Vorgabewerte für alle Server (so genannte "fall backs") falls
Du keine eigenen Werte für entsprechende Server-Optionen bestimmst.
Diese Vorgabeoptionen sind "irc.server_default.*".
Für jede Server-Option benutzt WeeChat den entsprechend gesetzten Wert - falls
definiert (nicht "null"). Andernfalls verwendet WeeChat Vorgabewerte
("irc.server_default.xxx").
Als Beispiel erwähnt seien die Vorgabe (default) nicks, die auf dem Un*x Login
basieren. Diese können nun für oftc-Server mittels folgendem Befehl
überschrieben werden:
/set irc.server.oftc.nicks "mynick1,mynick2,mynick3,mynick4,mynick5"
Um den User-Namen und wirklichen Namen zu setzen:
/set irc.server.oftc.username "Mein User-Name"
/set irc.server.oftc.realname "Mein wirklicher Name"
Aktivieren des automatischen Verbindens mit dem Server beim Start von WeeChat:
/set irc.server.oftc.autoconnect on
Um einen Befehl nach der Verbindung zum Server auszuführen, z.B. identifizieren
beim nickserv:
/set irc.server.oftc.command "/msg nickserv identify xxxxxx"
Hinweis: Mehrere Befehle können mittels ';' (Semikolon) getrennt werden.
Um ein auto-join (automatisches 'betreten') von Channels (Räumen) nach der
Verbindung zum Server zu erreichen:
/set irc.server.oftc.autojoin "#channel1,#channel2"
Um einen Wert der Server-Optionen zu entfernen und stattdessen wieder den
Vorgabewert (default) zu nutzen, z.B. Nutzung der Vorgabe-Nicks
(irc.server_default.nicks):
/set irc.server.oftc.nicks null
Andere Optionen: Du kannst andere Optionen mit folgendem Befehl setzen ("xxx"
ist der Optionsname):
/set irc.server.oftc.xxx value
[[connect_to_irc_server]]
Verbinden mit dem IRC-Server und auto-join der Channel
------------------------------------------------------
/connect oftc
[NOTE]
Dieser Befehl kann dazu benutzt werden um einen neuen Server zu erstellen und
sich mit ihm zu verbinden ohne den Befehl `/server` zu benutzen (sollte ich
wiederholen, dass Du die Hilfe zu diesem Befehl mit `/help connect` aufrufen
kannst?).
Generell werden die Server-Puffer und der Puffer des Kerns von WeeChat -der
core-Puffer- zusammengelegt. Um zwischen den core-Puffer und den Server-Puffern
umzuschalten kannst Du ctrl-X benutzen.
Es ist möglich das automatische Zusammenlegen der Server-Puffer zu deaktivieren
um eigenständig Puffer zu haben:
/set irc.look.server_buffer independent
[[join_part_irc_channels]]
Betreten/verlassen der IRC-Channel
----------------------------------
`/join #channel`::
Einen Channel betreten
`/part [quit message]`::
Einen Channel verlassen (der Puffer bleibt geöffnet)
`/close [quit message]`::
Schließen eines Server- oder Channel-Puffers (`/close` ist ein Alias für `/buffer close`)
[[buffer_window]]
Puffer/Fenster Verwaltung
-------------------------
Ein Puffer ist eine, zu einem Plugin mit einer Nummer, einer Kategorie und einem
Namen, verbundene Komponente. Ein Puffer beinhaltet die auf dem Bildschirm
dargestellten Daten.
Ein Fenster ist die Ansicht eines Puffers. Standard ist ein Fenster, das einen
Puffer darstellt. Wenn Du den Bildschirm aufteilst, wirst Du mehrere Fenster mit
mehreren Puffer gleichzeitig sehen.
Befehle, welche Puffer und Fenster verwalten:
/buffer
/window
(Ich will jetzt nicht wiederholen, dass Du zu diesen Befehlen Hilfe mit /help
erhalten kannst)
Ein Beispiel, um Deinen Bildschirm vertikal in ein kleines Fenster (1/3 Höhe)
und ein großes Fenster (2/3 Höhe) aufzuteilen, benutze diesen Befehl:
/window splitv 33
[[key_bindings]]
Tastaturbelegung
----------------
WeeChat verwendet viele Standardtasten. Alle diese Belegungen sind in der
Dokumentation beschrieben, doch solltest Du mindestens einige wesentliche
Belegungen kennen:
- 'alt + linker/rechter Pfeil' (oder 'F5'/'F6'): umschalten zum
vorherigen/nächsten Puffer
- 'F7'/'F8': umschalten zum vorherigen/nächsten Fenster (falls der Bildschirm
aufgeteilt ist)
- 'F9'/'F10': scrolle die Titleleiste
- 'F11'/'F12': scrolle die Liste der Nicks
- 'tab': komplettiere den Text in der Eingabeleiste, ähnlich Deiner shell
- 'Seite rauf/runter': scrolle den Text im aktiven Puffer
- 'alt + A': springe zum Puffer mit Aktivität (aus der Hotlist)
Gemäß Deiner Tastatur und/oder Deinen Bedürfnissen kannst Du jede Taste mittels
des Befehls `/key` neu mit einem Befehl belegen.
Eine nützliche Tastenkombination um Tastencodes zu ermitteln ist meta-k (alt-k).
Beispiel, Belegung von meta-y (alt-y) mit dem Befehl `/buffer close`:
/key bind (drücke meta-k) (drücke meta-y) /buffer close
Du wirst folgende Befehlszeile erhalten:
/key bind meta-y /buffer close
Entfernen der Belegung:
/key unbind meta-y
[[plugins_scripts]]
Plugins/Scripte
---------------
Bei einige Distributionen wie Debian, sind Plugins über separate Pakete
erhältlich (z.B. weechat-plugins).
Plugins werden -falls gefunden- automatisch geladen (Bitte beachte die
Dokumentation zum Laden/Entladen von Plugins oder Skripten).
Einige Plugins ermöglichen die Verwendung von Scripten in WeeChat (in mehreren
Sprachen wie Perl, Python, Ruby, Lua und TCL). Diese Plugins müssen mit dem
Befehl `/plugin` geladen werden und verfügen ihrerseits über Befehle wie z.B.
`/perl` um Scripte zu laden.
Viele externe Plugins/Scripte (der Mitarbeitenden) sind für WeeChat verfügbar,
siehe: http://www.weechat.org/scripts
Der einfachste Weg um Scripte zu installieren ist die verwendung von 'weeget.py':
. herunterladen und kopieren von 'weeget.py' nach ~/.weechat/python/autoload/
. laden des Scriptes: `/python autoload`
. Liste der Scripte: `/weeget list` (Hilfe mit: `/help weeget`)
[[more_doc]]
Weitere Dokumentation
---------------------
Nun kannst Du WeeChat nutzen, für weitere Fragen lese die FAQ/Dokumentation:
http://www.weechat.org/doc
Viel Spass mit WeeChat!
-146
View File
@@ -1,146 +0,0 @@
WeeChat Tester's Guide
======================
FlashCode <flashcode@flashtux.org>
[[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 Features implementiert wurden, sollten sie
getestet werden. Für einige Features gibt es aber zu viele Möglichkeiten - oder
diese Möglichkeiten sind komplex und die Entwickler können nicht jede Variante
ausprobieren.
Ein Beispiel: Ein berüchtigtes Zeichensatz-Plugin wurde in WeeChat 0.2.2
eingeführt: Keiner von uns (Entwickler, Mithelfende und Tester) nutzen Channels
in den länderspezifische Zeichen in den Namen vorkamen, und als 0.2.2
freigegeben wurde, wurden wir überschwemmt von russischen Usern, die uns dies
vorwarfen. Hätten wir mehr Tester, dann sollte so etwas nicht mehr passieren.
Eine stabile Version von WeeChat zu testen ist nutzlos, da die Entwickler
die ganze Zeit fleißig neues Zeug implementieren (und alte Bugs fixen).
[[prepare_system]]
Bereite Dein System vor
-----------------------
Sehr helfen würde uns, wenn Du Linuxs 'core' Dateien aktivieren würdest: wenn
WeeChat crasht wird Linux eine Datei Namens 'core' erzeugen. Diese Datei
beinhaltet viele nützliche Debug-Informationen um das genaue Problem in WeeChat
zu lokalisieren.
Falls Du die 'bash' als shell benutzt, ergänze Deine `~/.bashrc` mit folgender
Zeile:
ulimit -c unlimited
[[download]]
Besorge Dir die Entwickler-Version
----------------------------------
Frischer Code (mit den letzten Bugs und Features) ist im GIT Repository
gespeichert.
Du könntest Dich ja dazu entscheiden es manuell zu bauen (empfohlen):
* die GIT Version kann parallel zur stabilen Version gebaut 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 git://git.sv.gnu.org/weechat.git
$ cd weechat
--------------------------------------------
NOTE: Um auf den neuesten Stand zukommen verwendest Du z.B. "`git pull`" in
diesem Ordner.
Ansonsten kannst Du das 'Entwickler-Paket' herunterladen und entpacken:
-----------------------------------------------------------------
$ wget http://www.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 .. -DPREFIX=$HOME/weechat-git -DCMAKE_BUILD_TYPE=Debug
$ make
$ make install
--------------------------------------------------------------
Falls Du cmake nicht hast, ist es auch möglich die autotools zu nutzen:
----------------------------------------------------------
$ ./autogen.sh # (nur bei geklontem git Repository)
$ ./configure --prefix=$HOME/weechat-git
$ make
$ make install
----------------------------------------------------------
[[install_binary_package]]
Installieren des Programm-Paketes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Abhängig Deiner Linux Distribution:
* Debian: http://debian.flashtux.org/
* Gentoo: http://www.weechat.org/download
* ArchLinux: PKGBUILD von http://aur.archlinux.org/
* andere: Wissen wir nicht! Eheh.
[[run]]
WeeChat starten
---------------
Es wird empfohlen WeeChat durch die Option `--dir` mit einem anderen Ordner zu
starten (nicht mit dem der stabilen Version).
Die Befehlszeile lautet:
~/weechat-git/bin/weechat-curses --dir ~/.weechat-dev
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önnte Probleme machen
oder crashen oder Dein Bier kochen) zögere nicht, komme in den Channel
`#weechat` auf `irc.freenode.net` (A.d.Ü.: englischsprachig) und berichte uns
darüber.
Auch wenn es nicht crasht - gib uns trotzdem Bescheid, wir brauchen Deine
Rückmeldung!
[[links]]
Nützliche Links
---------------
* GIT repository: http://git.savannah.gnu.org/gitweb/?p=weechat.git
* Bug tracker: https://savannah.nongnu.org/bugs/?group=weechat
* WeeChat commits RSS feed: http://git.savannah.gnu.org/gitweb/?p=weechat.git;a=rss
-651
View File
@@ -1,651 +0,0 @@
#
# Copyright (c) 2008-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# Documentation generator for WeeChat: build include files with commands,
# options, infos and completions for WeeChat core and plugins.
#
# Instructions to build config files yourself in WeeChat directories (replace
# all paths with your path to WeeChat):
# 1. run WeeChat and load this script, with following command:
# /perl load ~/src/weechat/doc/docgen.pl
# 2. change path to build in your doc/ directory:
# /set plugins.var.perl.docgen.path "~/src/weechat/doc"
# 3. run docgen command:
# /docgen
# Files should be in ~/src/weechat/doc/xx/autogen/ (where xx is language)
#
# Script written on 2008-08-22 by FlashCode <flashcode@flashtux.org>
#
use strict;
use POSIX; # needed for setlocale()
use Locale::gettext;
use File::Basename;
my $version = "0.1";
# -------------------------------[ config ]------------------------------------
# default path where doc XML files will be written (should be doc/ in sources
# package tree)
# path must have subdirectories with languages and autogen directory:
# path
# |-- en
# | |-- autogen
# |-- fr
# | |-- autogen
# ...
my $default_path = "~/src/weechat/doc";
# list of locales for which we want to build XML doc files to include
my @all_locale_list = qw(en_US fr_FR it_IT);
# all commands/options/.. of following plugins will produce a file
# non-listed plugins will be ignored
# value: "c" = plugin may have many commands
# "o" = write config options for plugin
# if plugin is listed without "c", that means plugin has only one command
# /name (where "name" # is name of plugin)
# Note: we consider core is a plugin called "weechat"
my %plugin_list = ("weechat" => "co", "alias" => "",
"aspell" => "o", "charset" => "co",
"demo" => "co", "fifo" => "co",
"irc" => "co", "logger" => "co",
"relay" => "co", "perl" => "",
"python" => "", "ruby" => "",
"lua" => "", "tcl" => "",
"xfer" => "co");
# options to ignore
my @ignore_options = ("aspell\\.dict\\..*",
"charset\\.decode\\..*",
"charset\\.encode\\..*",
"irc\\.msgbuffer\\..*",
"irc\\.ctcp\\..*",
"irc\\.ignore\\..*",
"irc\\.server\\..*",
"jabber\\.server\\..*",
"logger\\.level\\..*",
"logger\\.mask\\..*",
"relay\\.port\\..*",
"weechat\\.proxy\\..*",
"weechat\\.bar\\..*",
"weechat\\.debug\\..*",
"weechat\\.notify\\..*");
# infos to ignore
my @ignore_infos_plugins = ();
# infolists to ignore
my @ignore_infolists_plugins = ();
# completions to ignore
my @ignore_completions_plugins = ();
my @ignore_completions_items = ("docgen.*",
"jabber.*",
"weeget.*");
# for gettext
my $d;
# -------------------------------[ init ]--------------------------------------
weechat::register("docgen", "FlashCode <flashcode\@flashtux.org>", $version,
"GPL3", "Doc generator for WeeChat 0.3.x", "", "");
weechat::hook_command("docgen", "Doc generator",
"[locales]",
"locales: list of locales to build (by default build all locales)",
"%(docgen_locales)|%*", "docgen", "");
weechat::hook_completion("docgen_locales", "locales for docgen", "docgen_completion", "");
weechat::config_set_plugin("path", $default_path)
if (weechat::config_get_plugin("path") eq "");
# -----------------------------------------------------------------------------
# gettext
sub weechat_gettext
{
return $d->get($_[0]);
}
# get list of commands in a hash with 3 indexes: plugin, command, xxx
sub get_commands
{
my %commands;
my $infolist = weechat::infolist_get("hook", "", "command");
while (weechat::infolist_next($infolist))
{
my $command = weechat::infolist_string($infolist, "command");
my $plugin = weechat::infolist_string($infolist, "plugin_name");
$plugin = "weechat" if ($plugin eq "");
if (exists($plugin_list{$plugin}))
{
if (($command eq $plugin) || ($plugin_list{$plugin} =~ /c/))
{
$commands{$plugin}{$command}{"description"} = weechat::infolist_string($infolist, "description");
$commands{$plugin}{$command}{"args"} = weechat::infolist_string($infolist, "args");
$commands{$plugin}{$command}{"args_description"} = weechat::infolist_string($infolist, "args_description");
$commands{$plugin}{$command}{"completion"} = weechat::infolist_string($infolist, "completion");
}
}
}
weechat::infolist_free($infolist);
return %commands;
}
# get list of config options in a hash with 4 indexes: config, section, option, xxx
sub get_options
{
my %options;
my $infolist = weechat::infolist_get("option", "", "");
while (weechat::infolist_next($infolist))
{
my $full_name = weechat::infolist_string($infolist, "full_name");
# check if option is ignored or not
my $ignore = 0;
foreach my $mask (@ignore_options)
{
$ignore = 1 if ($full_name =~ /${mask}/);
}
if ($ignore ne 1)
{
my $config = weechat::infolist_string($infolist, "config_name");
my $section = weechat::infolist_string($infolist, "section_name");
my $option = weechat::infolist_string($infolist, "option_name");
if (defined $plugin_list{$config} && ($plugin_list{$config} =~ /o/))
{
$options{$config}{$section}{$option}{"type"} = weechat::infolist_string($infolist, "type");
$options{$config}{$section}{$option}{"string_values"} = weechat::infolist_string($infolist, "string_values");
$options{$config}{$section}{$option}{"default_value"} = weechat::infolist_string($infolist, "default_value");
$options{$config}{$section}{$option}{"min"} = weechat::infolist_integer($infolist, "min");
$options{$config}{$section}{$option}{"max"} = weechat::infolist_integer($infolist, "max");
$options{$config}{$section}{$option}{"description"} = weechat::infolist_string($infolist, "description");
}
}
}
weechat::infolist_free($infolist);
return %options;
}
# get list of infos hooked by plugins in a hash with 3 indexes: plugin, name, xxx
sub get_infos
{
my %infos;
# get infos hooked
my $infolist = weechat::infolist_get("hook", "", "info");
while (weechat::infolist_next($infolist))
{
my $info_name = weechat::infolist_string($infolist, "info_name");
my $plugin = weechat::infolist_string($infolist, "plugin_name");
$plugin = "weechat" if ($plugin eq "");
# check if infolist is ignored or not
my $ignore = 0;
foreach my $mask (@ignore_infos_plugins)
{
$ignore = 1 if ($plugin =~ /${mask}/);
}
if ($ignore ne 1)
{
$infos{$plugin}{$info_name}{"description"} = weechat::infolist_string($infolist, "description");
$infos{$plugin}{$info_name}{"args_description"} = weechat::infolist_string($infolist, "args_description");
}
}
weechat::infolist_free($infolist);
return %infos;
}
# get list of infolists hooked by plugins in a hash with 3 indexes: plugin, name, xxx
sub get_infolists
{
my %infolists;
# get infolists hooked
my $infolist = weechat::infolist_get("hook", "", "infolist");
while (weechat::infolist_next($infolist))
{
my $infolist_name = weechat::infolist_string($infolist, "infolist_name");
my $plugin = weechat::infolist_string($infolist, "plugin_name");
$plugin = "weechat" if ($plugin eq "");
# check if infolist is ignored or not
my $ignore = 0;
foreach my $mask (@ignore_infolists_plugins)
{
$ignore = 1 if ($plugin =~ /${mask}/);
}
if ($ignore ne 1)
{
$infolists{$plugin}{$infolist_name}{"description"} = weechat::infolist_string($infolist, "description");
$infolists{$plugin}{$infolist_name}{"pointer_description"} = weechat::infolist_string($infolist, "pointer_description");
$infolists{$plugin}{$infolist_name}{"args_description"} = weechat::infolist_string($infolist, "args_description");
}
}
weechat::infolist_free($infolist);
return %infolists;
}
# get list of completions hooked by plugins in a hash with 3 indexes: plugin, item, xxx
sub get_completions
{
my %completions;
# get completions hooked
my $infolist = weechat::infolist_get("hook", "", "completion");
while (weechat::infolist_next($infolist))
{
my $completion_item = weechat::infolist_string($infolist, "completion_item");
my $plugin = weechat::infolist_string($infolist, "plugin_name");
$plugin = "weechat" if ($plugin eq "");
# check if completion item is ignored or not
my $ignore = 0;
foreach my $mask (@ignore_completions_plugins)
{
$ignore = 1 if ($plugin =~ /${mask}/);
}
foreach my $mask (@ignore_completions_items)
{
$ignore = 1 if ($completion_item =~ /${mask}/);
}
if ($ignore ne 1)
{
$completions{$plugin}{$completion_item}{"description"} = weechat::infolist_string($infolist, "description");
}
}
weechat::infolist_free($infolist);
return %completions;
}
sub escape_string
{
my $str = $_[0];
$str =~ s/"/\\"/g;
return $str;
}
sub escape_table
{
my $str = $_[0];
$str =~ s/\|/\\|/g;
return $str;
}
# build XML doc files (command /docgen)
sub docgen
{
my ($data, $buffer, $args) = ($_[0], $_[1], $_[2]);
my @locale_list = @all_locale_list;
@locale_list = split(/ /, $args) if ($args ne "");
my %plugin_commands = get_commands();
my %plugin_options = get_options();
my %plugin_infos = get_infos();
my %plugin_infolists = get_infolists();
my %plugin_completions = get_completions();
# get path and replace ~ by home if needed
my $path = weechat::config_get_plugin("path");
$path =~ s/^~\//$ENV{"HOME"}\//;
my $old_locale = setlocale(LC_MESSAGES);
# write to doc files, by locale
my $num_files = 0;
my $num_files_updated = 0;
my $filename = "";
foreach my $locale (@locale_list)
{
my $num_files_commands = 0;
my $num_files_commands_updated = 0;
my $num_files_options = 0;
my $num_files_options_updated = 0;
my $num_files_infos = 0;
my $num_files_infos_updated = 0;
my $num_files_infolists = 0;
my $num_files_infolists_updated = 0;
my $num_files_completions = 0;
my $num_files_completions_updated = 0;
setlocale(LC_MESSAGES, $locale.".UTF-8");
$d = Locale::gettext->domain_raw("weechat");
$d->codeset("UTF-8");
$d->dir(weechat::info_get("weechat_localedir", ""));
my $dir = $path."/".substr($locale, 0, 2)."/autogen/";
if (-d $dir)
{
# write commands
foreach my $plugin (keys %plugin_commands)
{
$filename = $dir."user/".$plugin."_commands.txt";
if (open(FILE, ">".$filename.".tmp"))
{
foreach my $command (sort keys %{$plugin_commands{$plugin}})
{
my $args = $plugin_commands{$plugin}{$command}{"args"};
$args = $d->get($args) if ($args ne "");
my $description = $plugin_commands{$plugin}{$command}{"description"};
$description = $d->get($description) if ($description ne "");
my $args_description = $plugin_commands{$plugin}{$command}{"args_description"};
$args_description = $d->get($args_description) if ($args_description ne "");
print FILE "&bull; *`/".$command."`*";
print FILE " `".$args."`" if ($args ne "");
print FILE "::\n\n";
print FILE "........................................\n";
print FILE " ".$description."\n" if ($description ne "");
if ($args_description ne "")
{
print FILE "\n";
my @lines = split(/\n/, $args_description);
foreach my $line (@lines)
{
print FILE " ".$line."\n";
}
}
print FILE "........................................\n\n";
}
#weechat::print("", "docgen: file ok: '$filename'");
my $rc = system("diff ".$filename." ".$filename.".tmp >/dev/null 2>&1");
if ($rc != 0)
{
system("mv -f ".$filename.".tmp ".$filename);
$num_files_updated++;
$num_files_commands_updated++;
}
else
{
system("rm ".$filename.".tmp");
}
$num_files++;
$num_files_commands++;
close(FILE);
}
else
{
weechat::print("", weechat::prefix("error")."docgen error: unable to write file '$filename'");
}
}
# write config options
foreach my $config (keys %plugin_options)
{
$filename = $dir."user/".$config."_options.txt";
if (open(FILE, ">".$filename.".tmp"))
{
foreach my $section (sort keys %{$plugin_options{$config}})
{
foreach my $option (sort keys %{$plugin_options{$config}{$section}})
{
my $type = $plugin_options{$config}{$section}{$option}{"type"};
my $string_values = $plugin_options{$config}{$section}{$option}{"string_values"};
my $default_value = $plugin_options{$config}{$section}{$option}{"default_value"};
my $min = $plugin_options{$config}{$section}{$option}{"min"};
my $max = $plugin_options{$config}{$section}{$option}{"max"};
my $description = $plugin_options{$config}{$section}{$option}{"description"};
$description = $d->get($description) if ($description ne "");
my $type_nls = $type;
$type_nls = $d->get($type_nls) if ($type_nls ne "");
my $values = "";
if ($type eq "boolean")
{
$values = "on, off";
}
if ($type eq "integer")
{
if ($string_values ne "")
{
$string_values =~ s/\|/, /g;
$values = $string_values;
}
else
{
$values = $min." .. ".$max;
}
}
if ($type eq "string")
{
$values = weechat_gettext("any string") if ($max <= 0);
$values = weechat_gettext("any char") if ($max == 1);
$values = weechat_gettext("any string")." (".weechat_gettext("max chars").": ".$max.")" if ($max > 1);
$default_value = "\"".escape_string($default_value)."\"";
}
if ($type eq "color")
{
$values = weechat_gettext("a color name");
}
print FILE "* *".$config.".".$section.".".$option."*\n";
print FILE "** ".weechat_gettext("description").": ".$description."\n";
print FILE "** ".weechat_gettext("type").": ".$type_nls."\n";
print FILE "** ".weechat_gettext("values").": ".$values." "
."(".weechat_gettext("default value").": ".$default_value.")\n\n";
}
}
#weechat::print("", "docgen: file ok: '$filename'");
my $rc = system("diff ".$filename." ".$filename.".tmp >/dev/null 2>&1");
if ($rc != 0)
{
system("mv -f ".$filename.".tmp ".$filename);
$num_files_updated++;
$num_files_options_updated++;
}
else
{
system("rm ".$filename.".tmp");
}
$num_files++;
$num_files_options++;
close(FILE);
}
else
{
weechat::print("", weechat::prefix("error")."docgen error: unable to write file '$filename'");
}
}
# write infos hooked
$filename = $dir."plugin_api/infos.txt";
if (open(FILE, ">".$filename.".tmp"))
{
print FILE "[width=\"100%\",cols=\"^1,^2,6,6\",options=\"header\"]\n";
print FILE "|========================================\n";
print FILE "| ".weechat_gettext("Plugin")." | ".weechat_gettext("Name")
." | ".weechat_gettext("Description")." | ".weechat_gettext("Arguments")."\n\n";
foreach my $plugin (sort keys %plugin_infos)
{
foreach my $info (sort keys %{$plugin_infos{$plugin}})
{
my $description = $plugin_infos{$plugin}{$info}{"description"};
$description = $d->get($description) if ($description ne "");
my $args_description = $plugin_infos{$plugin}{$info}{"args_description"};
$args_description = $d->get($args_description) if ($args_description ne "");
$args_description = "-" if ($args_description eq "");
print FILE "| ".escape_table($plugin)." | ".escape_table($info)
." | ".escape_table($description)." | ".escape_table($args_description)."\n\n";
}
}
print FILE "|========================================\n";
#weechat::print("", "docgen: file ok: '$filename'");
my $rc = system("diff ".$filename." ".$filename.".tmp >/dev/null 2>&1");
if ($rc != 0)
{
system("mv -f ".$filename.".tmp ".$filename);
$num_files_updated++;
$num_files_infos_updated++;
}
else
{
system("rm ".$filename.".tmp");
}
$num_files++;
$num_files_infos++;
close(FILE);
}
else
{
weechat::print("", weechat::prefix("error")."docgen error: unable to write file '$filename'");
}
# write infolists hooked
$filename = $dir."plugin_api/infolists.txt";
if (open(FILE, ">".$filename.".tmp"))
{
print FILE "[width=\"100%\",cols=\"^1,^2,5,5,5\",options=\"header\"]\n";
print FILE "|========================================\n";
print FILE "| ".weechat_gettext("Plugin")." | ".weechat_gettext("Name")
." | ".weechat_gettext("Description")." | ".weechat_gettext("Pointer")
." | ".weechat_gettext("Arguments")."\n\n";
foreach my $plugin (sort keys %plugin_infolists)
{
foreach my $infolist (sort keys %{$plugin_infolists{$plugin}})
{
my $description = $plugin_infolists{$plugin}{$infolist}{"description"};
$description = $d->get($description) if ($description ne "");
my $pointer_description = $plugin_infolists{$plugin}{$infolist}{"pointer_description"};
$pointer_description = $d->get($pointer_description) if ($pointer_description ne "");
$pointer_description = "-" if ($pointer_description eq "");
my $args_description = $plugin_infolists{$plugin}{$infolist}{"args_description"};
$args_description = $d->get($args_description) if ($args_description ne "");
$args_description = "-" if ($args_description eq "");
print FILE "| ".escape_table($plugin)." | ".escape_table($infolist)
." | ".escape_table($description)." | ".escape_table($pointer_description)
." | ".escape_table($args_description)."\n\n";
}
}
print FILE "|========================================\n";
#weechat::print("", "docgen: file ok: '$filename'");
my $rc = system("diff ".$filename." ".$filename.".tmp >/dev/null 2>&1");
if ($rc != 0)
{
system("mv -f ".$filename.".tmp ".$filename);
$num_files_updated++;
$num_files_infolists_updated++;
}
else
{
system("rm ".$filename.".tmp");
}
$num_files++;
$num_files_infolists++;
close(FILE);
}
else
{
weechat::print("", weechat::prefix("error")."docgen error: unable to write file '$filename'");
}
# write completions hooked
$filename = $dir."plugin_api/completions.txt";
if (open(FILE, ">".$filename.".tmp"))
{
print FILE "[width=\"65%\",cols=\"^1,^2,8\",options=\"header\"]\n";
print FILE "|========================================\n";
print FILE "| ".weechat_gettext("Plugin")." | ".weechat_gettext("Name")
." | ".weechat_gettext("Description")."\n\n";
foreach my $plugin (sort keys %plugin_completions)
{
foreach my $completion_item (sort keys %{$plugin_completions{$plugin}})
{
my $description = $plugin_completions{$plugin}{$completion_item}{"description"};
$description = $d->get($description) if ($description ne "");
print FILE "| ".escape_table($plugin)." | ".escape_table($completion_item)
." | ".escape_table($description)."\n\n";
}
}
print FILE "|========================================\n";
#weechat::print("", "docgen: file ok: '$filename'");
my $rc = system("diff ".$filename." ".$filename.".tmp >/dev/null 2>&1");
if ($rc != 0)
{
system("mv -f ".$filename.".tmp ".$filename);
$num_files_updated++;
$num_files_completions_updated++;
}
else
{
system("rm ".$filename.".tmp");
}
$num_files++;
$num_files_completions++;
close(FILE);
}
else
{
weechat::print("", weechat::prefix("error")."docgen error: unable to write file '$filename'");
}
}
else
{
weechat::print("", weechat::prefix("error")."docgen error: directory '$dir' does not exist");
}
my $total_files = $num_files_commands + $num_files_options
+ $num_files_infos + $num_files_infolists + $num_files_completions;
my $total_files_updated = $num_files_commands_updated
+ $num_files_options_updated + $num_files_infos_updated
+ $num_files_infolists_updated + $num_files_completions_updated;
weechat::print("", "docgen: ".$locale.": ".$total_files." files ("
.$num_files_commands." cmd, "
.$num_files_options." opt, "
.$num_files_infos." infos, "
.$num_files_infolists." infolists, "
.$num_files_completions." complt) -- "
.$total_files_updated." updated ("
.$num_files_commands_updated." cmd, "
.$num_files_options_updated." opt, "
.$num_files_infos_updated." infos, "
.$num_files_infolists_updated." infolists, "
.$num_files_completions_updated." complt)");
}
weechat::print("", "docgen: total: ".$num_files." files (".$num_files_updated." updated)");
setlocale(LC_MESSAGES, $old_locale);
return weechat::WEECHAT_RC_OK;
}
sub docgen_completion
{
my ($data, $completion_item, $buffer, $completion) = ($_[0], $_[1], $_[2], $_[3]);
foreach my $locale (@all_locale_list)
{
weechat::hook_completion_list_add($completion, $locale, 0, weechat::WEECHAT_LIST_POS_SORT);
}
return weechat::WEECHAT_RC_OK;
}
-83
View File
@@ -1,83 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# user's guide
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.en.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_user.en.txt
${CMAKE_CURRENT_SOURCE_DIR}/autogen/user/*.txt
COMMENT "Building weechat_user.en.html"
)
ADD_CUSTOM_TARGET(doc-user-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_user.en.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
# plugin API reference
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.en.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_plugin_api.en.txt
${CMAKE_CURRENT_SOURCE_DIR}/autogen/plugin_api/*.txt
COMMENT "Building weechat_plugin_api.en.html"
)
ADD_CUSTOM_TARGET(doc-plugin-api-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_plugin_api.en.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
# scripting guide
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.en.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.en.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_scripting.en.txt
COMMENT "Building weechat_scripting.en.html"
)
ADD_CUSTOM_TARGET(doc-scripting-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.en.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_scripting.en.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
# FAQ
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.en.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.en.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_faq.en.txt
COMMENT "Building weechat_faq.en.html"
)
ADD_CUSTOM_TARGET(doc-faq-en ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.en.html)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/weechat_faq.en.html DESTINATION ${SHAREDIR}/doc/${PROJECT_NAME})
# quickstart
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_quickstart.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.en.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_quickstart.en.txt
COMMENT "Building weechat_quickstart.en.html"
)
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 ${SHAREDIR}/doc/${PROJECT_NAME})
# tester's guide
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html
COMMAND ${ASCIIDOC_EXECUTABLE} ARGS -a toc -a date=`date "+%F"` -a revision="${VERSION}" -n -o ${CMAKE_CURRENT_BINARY_DIR}/weechat_tester.en.html ${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.en.txt
DEPENDS
${CMAKE_CURRENT_SOURCE_DIR}/weechat_tester.en.txt
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 ${SHAREDIR}/doc/${PROJECT_NAME})
-69
View File
@@ -1,69 +0,0 @@
# Copyright (c) 2003-2010 by FlashCode <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
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
docdir = $(datadir)/doc/$(PACKAGE)
EXTRA_DIST = CMakeLists.txt \
weechat_user.en.txt \
weechat_plugin_api.en.txt \
weechat_scripting.en.txt \
weechat_faq.en.txt \
weechat_quickstart.en.txt \
weechat_tester.en.txt \
$(wildcard autogen/user/*.txt) \
$(wildcard autogen/plugin_api/*.txt)
all-local: weechat_user.en.html \
weechat_plugin_api.en.html \
weechat_scripting.en.html \
weechat_faq.en.html \
weechat_quickstart.en.html \
weechat_tester.en.html
# user's guide
weechat_user.en.html: weechat_user.en.txt $(wildcard autogen/user/*.txt)
$(ASCIIDOC) -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_user.en.html weechat_user.en.txt
# plugin API reference
weechat_plugin_api.en.html: weechat_plugin_api.en.txt $(wildcard autogen/plugin_api/*.txt)
$(ASCIIDOC) -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_plugin_api.en.html weechat_plugin_api.en.txt
# scripting guide
weechat_scripting.en.html: weechat_scripting.en.txt
$(ASCIIDOC) -a toc -a toclevels=3 -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_scripting.en.html weechat_scripting.en.txt
# FAQ
weechat_faq.en.html: weechat_faq.en.txt
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_faq.en.html weechat_faq.en.txt
# quickstart
weechat_quickstart.en.html: weechat_quickstart.en.txt
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_quickstart.en.html weechat_quickstart.en.txt
# tester's guide
weechat_tester.en.html: weechat_tester.en.txt
$(ASCIIDOC) -a toc -a date=`date "+%F"` -a revision="$(VERSION)" -n -o weechat_tester.en.html weechat_tester.en.txt
# install docs
install-data-hook:
$(mkinstalldirs) $(DESTDIR)$(docdir)/
$(INSTALL_DATA) *.html $(DESTDIR)$(docdir)/
# clean
clean-local:
-rm -f *.html
-101
View File
@@ -1,101 +0,0 @@
[width="65%",cols="^1,^2,8",options="header"]
|========================================
| Plugin | Name | Description
| alias | alias | list of aliases
| aspell | aspell_langs | list of supported langs for aspell
| irc | irc_channel | current IRC channel
| irc | irc_channel_nicks_hosts | nicks and hostnames of current IRC channel
| irc | irc_channel_topic | topic of current IRC channel
| irc | irc_channels | channels on all IRC servers
| irc | irc_ignores_numbers | numbers for defined ignores
| irc | irc_msg_part | default part message for IRC channel
| irc | irc_privates | privates on all IRC servers
| irc | irc_server | current IRC server
| irc | irc_server_channels | channels on current IRC server
| irc | irc_server_nick | nick on current IRC server
| irc | irc_server_nicks | nicks on all channels of current IRC server
| irc | irc_server_privates | privates on current IRC server
| irc | irc_servers | IRC servers (internal names)
| irc | nick | nicks of current IRC channel
| lua | lua_script | list of scripts
| perl | perl_script | list of scripts
| python | python_script | list of scripts
| relay | relay_free_port | first free port for relay plugin
| relay | relay_protocol_name | all possible protocol.name for relay plugin
| relay | relay_relays | protocol.name of current relays for relay plugin
| ruby | ruby_script | list of scripts
| tcl | tcl_script | list of scripts
| weechat | bars_names | names of bars
| weechat | bars_options | options for bars
| weechat | buffer_properties_get | properties that can be read on a buffer
| weechat | buffer_properties_set | properties that can be set on a buffer
| weechat | buffers_names | names of buffers
| weechat | buffers_numbers | numbers of buffers
| weechat | buffers_plugins_names | names of buffers (including plugins names)
| weechat | commands | commands (weechat and plugins)
| weechat | config_files | configuration files
| weechat | config_option_values | values for a configuration option
| weechat | config_options | configuration options
| weechat | filename | filename
| weechat | filters_names | names of filters
| weechat | infolists | names of infolists hooked
| weechat | infos | names of infos hooked
| weechat | keys_codes | key codes
| weechat | keys_codes_for_reset | key codes that can be reset (keys added, redefined or removed)
| weechat | nicks | nicks in nicklist of current buffer
| weechat | plugins_commands | commands defined by plugins
| weechat | plugins_names | names of plugins
| weechat | proxies_names | names of proxies
| weechat | proxies_options | options for proxies
| weechat | weechat_commands | weechat commands
| xfer | nick | nicks of DCC chat
|========================================
-59
View File
@@ -1,59 +0,0 @@
[width="100%",cols="^1,^2,5,5,5",options="header"]
|========================================
| Plugin | Name | Description | Pointer | Arguments
| alias | alias | list of aliases | alias pointer (optional) | alias name (can start or end with "*" as joker) (optional)
| irc | irc_channel | list of channels for an IRC server | channel pointer (optional) | server name
| irc | irc_ignore | list of IRC ignores | ignore pointer (optional) | -
| irc | irc_nick | list of nicks for an IRC channel | nick pointer (optional) | server,channel,nick (channel and nick are optional)
| irc | irc_server | list of IRC servers | server pointer (optional) | server name (can start or end with "*" as joker) (optional)
| logger | logger_buffer | list of logger buffers | logger pointer (optional) | -
| lua | lua_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as joker) (optional)
| perl | perl_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as joker) (optional)
| python | python_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as joker) (optional)
| relay | relay | list of relay clients | relay pointer (optional) | -
| ruby | ruby_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as joker) (optional)
| tcl | tcl_script | list of scripts | script pointer (optional) | script name (can start or end with "*" as joker) (optional)
| weechat | bar | list of bars | bar pointer (optional) | bar name (can start or end with "*" as joker) (optional)
| weechat | bar_item | list of bar items | bar item pointer (optional) | bar item name (can start or end with "*" as joker) (optional)
| weechat | bar_window | list of bar windows | bar window pointer (optional) | -
| weechat | buffer | list of buffers | buffer pointer (optional) | buffer name (can start or end with "*" as joker) (optional)
| weechat | buffer_lines | lines of a buffer | buffer pointer | -
| weechat | filter | list of filters | - | filter name (can start or end with "*" as joker) (optional)
| weechat | history | history of commands | buffer pointer (if not set, return global history) (optional) | -
| weechat | hook | list of hooks | - | hook type: command, timer, .. (optional)
| weechat | hotlist | list of buffers in hotlist | - | -
| weechat | key | list of key bindings | - | -
| weechat | nicklist | nicks in nicklist for a buffer | buffer pointer | nick_xxx or group_xxx to get only nick/group xxx (optional)
| weechat | option | list of options | - | option name (can start or end with "*" as joker) (optional)
| weechat | plugin | list of plugins | plugin pointer (optional) | plugin name (can start or end with "*" as joker) (optional)
| weechat | window | list of windows | window pointer (optional) | window name (can start or end with "*" as joker) (optional)
| xfer | xfer | list of xfer | xfer pointer (optional) | -
|========================================
-47
View File
@@ -1,47 +0,0 @@
[width="100%",cols="^1,^2,6,6",options="header"]
|========================================
| Plugin | Name | Description | Arguments
| fifo | fifo_filename | name of FIFO pipe | -
| irc | irc_buffer | get buffer pointer for an IRC server/channel/nick | server,channel,nick (channel and nicks are optional)
| irc | irc_is_channel | 1 if string is a valid IRC channel name | channel name
| irc | irc_is_nick | 1 if string is a valid IRC nick name | nickname
| irc | irc_nick | get current nick on a server | server name
| irc | irc_nick_color | get nick color | nickname
| irc | irc_nick_from_host | get nick from IRC host | IRC host (like `:nick!name@server.com`)
| weechat | charset_internal | WeeChat internal charset | -
| weechat | charset_terminal | terminal charset | -
| weechat | date | WeeChat compilation date | -
| weechat | dir_separator | directory separator | -
| weechat | filters_enabled | 1 if filters are enabled | -
| weechat | inactivity | keyboard inactivity (seconds) | -
| weechat | version | WeeChat version | -
| weechat | version_number | WeeChat version (as number) | -
| weechat | weechat_dir | WeeChat directory | -
| weechat | weechat_libdir | WeeChat "lib" directory | -
| weechat | weechat_localedir | WeeChat "locale" directory | -
| weechat | weechat_sharedir | WeeChat "share" directory | -
| weechat | weechat_site | WeeChat site | -
| weechat | weechat_site_download | WeeChat site, download page | -
|========================================
-34
View File
@@ -1,34 +0,0 @@
&bull; *`/alias`* `[[-completion completion] alias_name [command [arguments]]]`::
........................................
create an alias for a command
completion: completion for alias (optional, by default completion is done with target command)
alias_name: name of alias (can start or end with "*" for alias listing)
command: command name (many commands can be separated by semicolons)
arguments: arguments for command
Without argument, this command lists all defined alias.
Note: in command, special variables are replaced:
$n: argument 'n' (between 1 and 9)
$-m: arguments from 1 to 'm'
$n-: arguments from 'n' to last
$n-m: arguments from 'n' to 'm'
$*: all arguments
$~: last argument
$nick: current nick
$channel: current channel
$server: current server
To remove an alias, use command /unalias.
Examples:
alias /split to split window horizontally:
/alias split /window splith
alias /hello to say "hello" on all channels but not on #weechat:
/alias hello /allchan -exclude=#weechat msg * hello
alias /forcejoin to send IRC command "forcejoin" with completion of /sajoin:
/alias -completion %%sajoin forcejoin /quote forcejoin
........................................
-13
View File
@@ -1,13 +0,0 @@
&bull; *`/aspell`* `dictlist | enable lang | disable | addword [lang] word`::
........................................
aspell plugin configuration
dictlist: show installed dictionaries
enable: enable aspell on current buffer
disable: disable aspell on current buffer
addword: add a word in your personal aspell dictionary
Input line beginning with a '/' is not checked, except for some commands.
........................................
-30
View File
@@ -1,30 +0,0 @@
* *aspell.check.commands*
** description: comma separated list of commands for which spell checking is enabled (spell checking is disabled for all other commands)
** type: string
** values: any string (default value: "ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic")
* *aspell.check.default_dict*
** description: default dictionary (or comma separated list of dictionaries) to use when buffer has no dictionary defined (leave blank to disable aspell on buffers for which you didn't explicitly enabled it)
** type: string
** values: any string (default value: "")
* *aspell.check.during_search*
** description: check words during text search in buffer
** type: boolean
** values: on, off (default value: off)
* *aspell.check.real_time*
** description: real-time spell checking of words (slower, disabled by default: words are checked only if there's delimiter after)
** type: boolean
** values: on, off (default value: off)
* *aspell.check.word_min_length*
** description: minimum length for a word to be spell checked (use 0 to check all words)
** type: integer
** values: 0 .. 2147483647 (default value: 2)
* *aspell.look.color*
** description: color used for misspelled words
** type: color
** values: a color name (default value: lightred)
-11
View File
@@ -1,11 +0,0 @@
&bull; *`/charset`* `[[decode | encode] charset] | [reset]`::
........................................
change charset for current buffer
decode: change decoding charset
encode: change encoding charset
charset: new charset for current buffer
reset: reset charsets for current buffer
........................................
-10
View File
@@ -1,10 +0,0 @@
* *charset.default.decode*
** description: global decoding charset
** type: string
** values: any string (default value: "iso-8859-1")
* *charset.default.encode*
** description: global encoding charset
** type: string
** values: any string (default value: "")
-42
View File
@@ -1,42 +0,0 @@
&bull; *`/demo_buffer`* `name`::
........................................
open a new buffer
........................................
&bull; *`/demo_buffer_set`* `property value`::
........................................
set a buffer property
........................................
&bull; *`/demo_info`* `[info [arguments]]`::
........................................
get and display an info
info: info to display
arguments: optional arguments for info
Without argument, this command displays list of available infos
........................................
&bull; *`/demo_infolist`* `[infolist [arguments]]`::
........................................
get and display an infolist
infolist: infolist to display
arguments: optional arguments for infolist
Without argument, this command displays list of available infolists
........................................
&bull; *`/demo_printf`* `[text]`::
........................................
print some messages on current buffer
text: write this text
........................................
-680
View File
@@ -1,680 +0,0 @@
&bull; *`/admin`* `[target]`::
........................................
find information about the administrator of the server
target: server
........................................
&bull; *`/allchan`* `[-current] [-exclude=channel[,channel...]] command [arguments]`::
........................................
execute a command on all channels of all connected servers
-current: execute command for channels of current server only
-exclude: exclude some channels ('*' is allowed at beginning or end of channel name, to exclude many channels)
command: command to execute
arguments: arguments for command
Examples:
execute '/me is testing' on all channels:
/allchan me is testing
say 'hello' everywhere but not on #weechat:
/allchan -exclude=#weechat msg * hello
say 'hello' everywhere but not on #weechat and channels beginning with #linux:
/allchan -exclude=#weechat,#linux* msg * hello
........................................
&bull; *`/allserv`* `[-exclude=server[,server...]] command [arguments]`::
........................................
execute a command on all connected servers
-exclude: exclude some servers ('*' is allowed at beginning or end of server name, to exclude many servers)
command: command to execute
arguments: arguments for command
Examples:
change nick on all servers:
/allserv nick newnick
set away on all servers:
/allserv away I'm away
........................................
&bull; *`/ban`* `[channel] [nickname [nickname ...]]`::
........................................
ban nicks or hosts
channel: channel for ban
nickname: user or host to ban
........................................
&bull; *`/connect`* `[-all [-nojoin] | -open [-nojoin] | servername [servername ...] [-nojoin] | hostname[/port] [-option[=value]] [-nooption]]`::
........................................
connect to IRC server(s)
-all: connect to all servers defined in configuration
-open: connect to all opened servers that are not currently connected
servername: internal server name to connect (server must have been created by /server add)
-nojoin: do not join any channel (even if autojoin is enabled on server)
hostname: hostname (or IP) of a server
port: port for server (6667 by default)
option: set option for server (for boolean option, value can be omitted)
nooption: set boolean option to 'off' (for example: -nossl)
Examples:
/connect freenode
/connect irc.oftc.net/6667
/connect irc6.oftc.net/6667 -ipv6
/connect irc6.oftc.net/6697 -ipv6 -ssl
/connect my.server.org/6697 -ssl -password=test
........................................
&bull; *`/ctcp`* `receiver type [arguments]`::
........................................
send a CTCP message (Client-To-Client Protocol)
receiver: nick or channel to send CTCP to
type: CTCP type (examples: "version", "ping", ..)
arguments: arguments for CTCP
........................................
&bull; *`/cycle`* `[channel[,channel]] [part_message]`::
........................................
leave and rejoin a channel
channel: channel name for cycle
part_message: part message (displayed to other users)
........................................
&bull; *`/dcc`* `action [nickname [file]]`::
........................................
start DCC (file or chat)
action: 'send' (file) or 'chat'
nickname: nickname to send file or chat
file: filename (on local host)
Examples:
chat with nick "toto":
/dcc chat toto
send file "/home/foo/bar.txt" to nick "toto":
/dcc send toto /home/foo/bar.txt
........................................
&bull; *`/dehalfop`* `[nickname [nickname]]`::
........................................
remove half channel operator status from nickname(s)
........................................
&bull; *`/deop`* `[nickname [nickname]]`::
........................................
remove channel operator status from nickname(s)
........................................
&bull; *`/devoice`* `[nickname [nickname]]`::
........................................
remove voice from nickname(s)
........................................
&bull; *`/die`*::
........................................
shutdown the server
........................................
&bull; *`/disconnect`* `[-all | servername [servername ...]]`::
........................................
disconnect from IRC server(s)
-all: disconnect from all servers
servername: server name to disconnect
........................................
&bull; *`/halfop`* `[nickname [nickname]]`::
........................................
give half channel operator status to nickname(s)
........................................
&bull; *`/ignore`* `[list] | [add [re:]nick/host [server [channel]]] | [del number|-all]`::
........................................
ignore nicks/hosts from servers or channels
list: list all ignores
add: add a ignore
del: del a ignore
number: number of ignore to delete (look at list to find it)
-all: delete all ignores
nick/host: nick or host to ignore: syntax is "re:regex" or "mask" (a mask is a string with some "*" to replace one or more chars)
server: internal server name where ignore is working
channel: channel name where ignore is working
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
........................................
&bull; *`/info`* `[target]`::
........................................
get information describing the server
target: server name
........................................
&bull; *`/invite`* `nickname channel`::
........................................
invite a nick on a channel
nickname: nick to invite
channel: channel to invite
........................................
&bull; *`/ison`* `nickname [nickname ...]`::
........................................
check if a nickname is currently on IRC
nickname: nickname
........................................
&bull; *`/join`* `[channel[,channel] [key[,key]]]`::
........................................
join a channel
channel: channel name to join
key: key to join the channel
........................................
&bull; *`/kick`* `[channel] nickname [comment]`::
........................................
forcibly remove a user from a channel
channel: channel where user is
nickname: nickname to kick
comment: comment for kick
........................................
&bull; *`/kickban`* `[channel] nickname [comment]`::
........................................
kicks and bans a nick from a channel
channel: channel where user is
nickname: nickname to kick and ban
comment: comment for kick
It is possible to kick/ban with a mask, nick will be extracted from mask and replaced by "*".
Example:
ban "*!*@host.com" and then kick "toto":
/kickban toto!*@host.com
........................................
&bull; *`/kill`* `nickname comment`::
........................................
close client-server connection
nickname: nickname
comment: comment for kill
........................................
&bull; *`/links`* `[[server] server_mask]`::
........................................
list all servernames which are known by the server answering the query
server: this server should answer the query
server_mask: list of servers must match this mask
........................................
&bull; *`/list`* `[channel[,channel] [server] [-re regexp]]`::
........................................
list channels and their topic
channel: channel to list
server: server name
regexp: regular expression used to filter results
Examples:
list all channels on server (can be very slow on large networks):
/list
list channel #weechat:
/list #weechat
list all channels beginning with "#weechat" (can be very slow on large networks):
/list -re #weechat.*
........................................
&bull; *`/lusers`* `[mask [target]]`::
........................................
get statistics about the size of the IRC network
mask: servers matching the mask only
target: server for forwarding request
........................................
&bull; *`/map`*::
........................................
show a graphical map of the IRC network
........................................
&bull; *`/me`* `message`::
........................................
send a CTCP action to the current channel
message: message to send
........................................
&bull; *`/mode`* `{ [channel] {[+|-]|o|p|s|i|t|n|b|v} [limit] [user] [ban mask] } | { nickname {[+|-]|i|w|s|o} }`::
........................................
change channel or user mode
channel modes:
channel: channel name to modify (default is current one)
o: give/take channel operator privileges
p: private channel flag
s: secret channel flag
i: invite-only channel flag
t: topic settable by channel operator only flag
n: no messages to channel from clients on the outside
m: moderated channel
l: set the user limit to channel
b: set a ban mask to keep users out
e: set exception mask
v: give/take the ability to speak on a moderated channel
k: set a channel key (password)
user modes:
nickname: nickname to modify
i: mark a user as invisible
s: mark a user for receive server notices
w: user receives wallops
o: operator flag
........................................
&bull; *`/motd`* `[target]`::
........................................
get the "Message Of The Day"
target: server name
........................................
&bull; *`/msg`* `[-server server] receiver[,receiver] text`::
........................................
send message to a nick or channel
server: send to this server (internal name)
receiver: nick or channel (may be mask, '*' = current channel)
text: text to send
........................................
&bull; *`/names`* `[channel[,channel]]`::
........................................
list nicknames on channels
channel: channel name
........................................
&bull; *`/nick`* `[-all] nickname`::
........................................
change current nickname
-all: set new nickname for all connected servers
nickname: new nickname
........................................
&bull; *`/notice`* `[-server server] nickname text`::
........................................
send notice message to user
server: send to this server (internal name)
nickname: user to send notice to
text: text to send
........................................
&bull; *`/op`* `nickname [nickname]`::
........................................
give channel operator status to nickname(s)
........................................
&bull; *`/oper`* `user password`::
........................................
get operator privileges
user/password: used to get privileges on current IRC server
........................................
&bull; *`/part`* `[channel[,channel]] [part_message]`::
........................................
leave a channel
channel: channel name to leave
part_message: part message (displayed to other users)
........................................
&bull; *`/ping`* `server1 [server2]`::
........................................
ping server
server1: server to ping
server2: forward ping to this server
........................................
&bull; *`/pong`* `daemon [daemon2]`::
........................................
answer to a ping message
daemon: daemon who has responded to Ping message
daemon2: forward message to this daemon
........................................
&bull; *`/query`* `[-server server] nickname [text]`::
........................................
send a private message to a nick
server: send to this server (internal name)
nickname: nickname for private conversation
text: text to send
........................................
&bull; *`/quote`* `[-server server] data`::
........................................
send raw data to server without parsing
server: send to this server (internal name)
data: raw data to send
........................................
&bull; *`/reconnect`* `[-all [-nojoin] | servername [servername ...] [-nojoin]]`::
........................................
reconnect to server(s)
-all: reconnect to all servers
servername: server name to reconnect
-nojoin: do not join any channel (even if autojoin is enabled on server)
........................................
&bull; *`/rehash`* `[option]`::
........................................
tell the server to reload its config file
option: extra option, for some servers
........................................
&bull; *`/restart`*::
........................................
tell the server to restart itself
........................................
&bull; *`/sajoin`* `nickname channel[,channel]`::
........................................
forces a user to join channel(s)
nickname: nickname
channel: channel name
........................................
&bull; *`/samode`* `channel mode`::
........................................
change mode on channel, without having operator status
channel: channel name
mode: mode for channel
........................................
&bull; *`/sanick`* `nickname new_nickname`::
........................................
forces a user to use another nick
nickname: nickname
new_nickname: new nickname
........................................
&bull; *`/sapart`* `nickname channel[,channel]`::
........................................
forces a user to leave channel(s)
nickname: nickname
channel: channel name
........................................
&bull; *`/saquit`* `nickname reason`::
........................................
forces a user to quit server with a reason
nickname: nickname
reason: reason
........................................
&bull; *`/server`* `[list [servername]] | [listfull [servername]] | [add servername hostname[/port] [-temp] [-option[=value]] [-nooption]] | [copy servername newservername] | [rename servername newservername] | [keep servername] | [del servername] | [deloutq] | [jump] | [raw]`::
........................................
list, add or remove IRC servers
list: list servers (without argument, this list is displayed)
listfull: list servers with detailed info for each server
add: create a new server
servername: server name, for internal and display use
hostname: name or IP address of server, with optional port (default: 6667), many addresses can be separated by a comma
temp: create temporary server (not saved)
option: set option for server (for boolean option, value can be omitted)
nooption: set boolean option to 'off' (for example: -nossl)
copy: duplicate a server
rename: rename a server
keep: keep server in config file (for temporary servers only)
del: delete a server
deloutq: delete messages out queue for all servers (all messages WeeChat is currently sending)
jump: jump to server buffer
raw: open buffer with raw IRC data
Examples:
/server listfull
/server add oftc irc.oftc.net/6697 -ssl -autoconnect
/server add oftc6 irc6.oftc.net/6697 -ipv6 -ssl
/server add freenode2 chat.eu.freenode.net/6667,chat.us.freenode.net/6667
/server add freenode3 irc.freenode.net -password=mypass
/server copy oftc oftcbis
/server rename oftc newoftc
/server del freenode
/server deloutq
........................................
&bull; *`/service`* `nickname reserved distribution type reserved info`::
........................................
register a new service
distribution: visibility of service
type: reserved for future usage
........................................
&bull; *`/servlist`* `[mask [type]]`::
........................................
list services currently connected to the network
mask: list only services matching this mask
type: list only services of this type
........................................
&bull; *`/squery`* `service text`::
........................................
deliver a message to a service
service: name of service
text: text to send
........................................
&bull; *`/squit`* `server comment`::
........................................
disconnect server links
server: server name
comment: comment for quit
........................................
&bull; *`/stats`* `[query [server]]`::
........................................
query statistics about server
query: c/h/i/k/l/m/o/y/u (see RFC1459)
server: server name
........................................
&bull; *`/summon`* `user [target [channel]]`::
........................................
give users who are on a host running an IRC server a message asking them to please join IRC
user: username
target: server name
channel: channel name
........................................
&bull; *`/time`* `[target]`::
........................................
query local time from server
target: query time from specified server
........................................
&bull; *`/topic`* `[channel] [topic]`::
........................................
get/set channel topic
channel: channel name
topic: new topic for channel (if topic is "-delete" then topic is deleted)
........................................
&bull; *`/trace`* `[target]`::
........................................
find the route to specific server
target: server
........................................
&bull; *`/unban`* `[channel] nickname [nickname ...]`::
........................................
unban nicks or hosts
channel: channel for unban
nickname: user or host to unban
........................................
&bull; *`/userhost`* `nickname [nickname ...]`::
........................................
return a list of information about nicknames
nickname: nickname
........................................
&bull; *`/users`* `[target]`::
........................................
list of users logged into the server
target: server
........................................
&bull; *`/version`* `[server | nickname]`::
........................................
give the version info of nick or server (current or specified)
server: server name
nickname: nickname
........................................
&bull; *`/voice`* `[nickname [nickname]]`::
........................................
give voice to nickname(s)
........................................
&bull; *`/wallops`* `text`::
........................................
send a message to all currently connected users who have set the 'w' user mode for themselves
text to send
........................................
&bull; *`/who`* `[mask ["o"]]`::
........................................
generate a query which returns a list of information
mask: only information which match this mask
o: only operators are returned according to the mask supplied
........................................
&bull; *`/whois`* `[server] nickname[,nickname]`::
........................................
query information about user(s)
server: server name
nickname: nickname (may be a mask)
........................................
&bull; *`/whowas`* `nickname [,nickname [,nickname ...]] [count [target]]`::
........................................
ask for information about a nickname which no longer exists
nickname: nickname to search
count: number of replies to return (full search if negative number)
target: reply should match this mask
........................................
-365
View File
@@ -1,365 +0,0 @@
* *irc.color.input_nick*
** description: color for nick in input bar
** type: color
** values: a color name (default value: lightcyan)
* *irc.color.item_away*
** description: color for away item
** type: color
** values: a color name (default value: yellow)
* *irc.color.item_channel_modes*
** description: color for channel modes, near channel name
** type: color
** values: a color name (default value: default)
* *irc.color.message_join*
** description: color for text in join messages
** type: color
** values: a color name (default value: green)
* *irc.color.message_quit*
** description: color for text in part/quit messages
** type: color
** values: a color name (default value: red)
* *irc.color.notice*
** description: color for text "Notice" in notices
** type: color
** values: a color name (default value: green)
* *irc.look.color_nicks_in_server_messages*
** description: use nick color in messages from server
** type: boolean
** values: on, off (default value: on)
* *irc.look.color_pv_nick_like_channel*
** description: use same nick color for channel and private
** type: boolean
** values: on, off (default value: on)
* *irc.look.display_away*
** description: display message when (un)marking as away
** type: integer
** values: off, local, channel (default value: local)
* *irc.look.display_ctcp_blocked*
** description: display CTCP message even if it is blocked
** type: boolean
** values: on, off (default value: on)
* *irc.look.display_ctcp_reply*
** description: display CTCP reply sent by WeeChat
** type: boolean
** values: on, off (default value: on)
* *irc.look.display_ctcp_unknown*
** description: display CTCP message even if it is unknown CTCP
** type: boolean
** values: on, off (default value: on)
* *irc.look.display_old_topic*
** description: display old topic when channel topic is changed
** type: boolean
** values: on, off (default value: on)
* *irc.look.hide_nickserv_pwd*
** description: hide password displayed by nickserv
** type: boolean
** values: on, off (default value: on)
* *irc.look.highlight_tags*
** description: comma separated list of tags for messages that may produce highlight (usually any message from another user, not server messages,..)
** type: string
** values: any string (default value: "irc_privmsg,irc_notice")
* *irc.look.item_channel_modes*
** description: display channel modes in "buffer_name" bar item
** type: boolean
** values: on, off (default value: on)
* *irc.look.item_channel_modes_hide_key*
** description: hide channel key if modes are displayed in "buffer_name" bar item (this will hide all channel modes arguments if mode +k is set on channel)
** type: boolean
** values: on, off (default value: off)
* *irc.look.item_display_server*
** description: name of bar item where IRC server is displayed (for status bar)
** type: integer
** values: buffer_plugin, buffer_name (default value: buffer_plugin)
* *irc.look.item_nick_modes*
** description: display nick modes in "input_prompt" bar item
** type: boolean
** values: on, off (default value: on)
* *irc.look.item_nick_prefix*
** description: display nick prefix in "input_prompt" bar item
** type: boolean
** values: on, off (default value: on)
* *irc.look.msgbuffer_fallback*
** description: default target buffer for msgbuffer options when target is private and that private buffer is not found
** type: integer
** values: current, server (default value: current)
* *irc.look.nick_completion_smart*
** description: smart completion for nicks (completes first with last speakers)
** type: integer
** values: off, speakers, speakers_highlights (default value: speakers)
* *irc.look.nick_prefix*
** description: text to display before nick in chat window
** type: string
** values: any string (default value: "")
* *irc.look.nick_suffix*
** description: text to display after nick in chat window
** type: string
** values: any string (default value: "")
* *irc.look.notice_as_pv*
** description: display notices as private messages (if auto, use private buffer if found)
** type: integer
** values: auto, never, always (default value: auto)
* *irc.look.open_channel_near_server*
** description: open new channels near server
** type: boolean
** values: on, off (default value: off)
* *irc.look.open_pv_near_server*
** description: open new privates near server
** type: boolean
** values: on, off (default value: off)
* *irc.look.part_closes_buffer*
** description: close buffer when /part is issued on a channel
** type: boolean
** values: on, off (default value: off)
* *irc.look.raw_messages*
** description: number of IRC raw messages to save in memory when raw data buffer is closed (messages will be displayed when opening raw data buffer)
** type: integer
** values: 0 .. 65535 (default value: 256)
* *irc.look.server_buffer*
** description: merge server buffers
** type: integer
** values: merge_with_core, merge_without_core, independent (default value: merge_with_core)
* *irc.look.show_away_once*
** description: show remote away message only once in private
** type: boolean
** values: on, off (default value: on)
* *irc.look.smart_filter*
** description: filter join/part/quit messages for a nick if not speaking for some minutes on channel (you must create a filter on tag "irc_smart_filter")
** type: boolean
** values: on, off (default value: on)
* *irc.look.smart_filter_delay*
** description: delay for filtering join/part/quit messages (in minutes)
** type: integer
** values: 1 .. 10080 (default value: 5)
* *irc.look.smart_filter_join*
** description: enable smart filter for "join" messages
** type: boolean
** values: on, off (default value: on)
* *irc.look.smart_filter_quit*
** description: enable smart filter for "part" and "quit" messages
** type: boolean
** values: on, off (default value: on)
* *irc.look.topic_strip_colors*
** description: strip colors in topic (used only when displaying buffer title)
** type: boolean
** values: on, off (default value: off)
* *irc.network.anti_flood_prio_high*
** description: anti-flood for high priority queue: number of seconds between two user messages or commands sent to IRC server (0 = no anti-flood)
** type: integer
** values: 0 .. 60 (default value: 2)
* *irc.network.anti_flood_prio_low*
** description: anti-flood for low priority queue: number of seconds between two messages sent to IRC server (messages like automatic CTCP replies) (0 = no anti-flood)
** type: integer
** values: 0 .. 60 (default value: 2)
* *irc.network.away_check*
** description: interval between two checks for away (in minutes, 0 = never check)
** type: integer
** values: 0 .. 2147483647 (default value: 0)
* *irc.network.away_check_max_nicks*
** description: do not check away nicks on channels with high number of nicks (0 = unlimited)
** type: integer
** values: 0 .. 2147483647 (default value: 25)
* *irc.network.colors_receive*
** description: when off, colors codes are ignored in incoming messages
** type: boolean
** values: on, off (default value: on)
* *irc.network.colors_send*
** description: allow user to send colors with special codes (ctrl-c + a code and optional color: b=bold, cxx=color, cxx,yy=color+background, u=underline, r=reverse)
** type: boolean
** values: on, off (default value: on)
* *irc.network.connection_timeout*
** description: timeout (in seconds) between TCP connection to server and message 001 received, if this timeout is reached before 001 message is received, WeeChat will disconnect from server
** type: integer
** values: 1 .. 3600 (default value: 60)
* *irc.network.default_msg_part*
** description: default part message (leaving channel) ("%v" will be replaced by WeeChat version in string)
** type: string
** values: any string (default value: "WeeChat %v")
* *irc.network.default_msg_quit*
** description: default quit message (disconnecting from server) ("%v" will be replaced by WeeChat version in string)
** type: string
** values: any string (default value: "WeeChat %v")
* *irc.network.lag_check*
** description: interval between two checks for lag (in seconds, 0 = never check)
** type: integer
** values: 0 .. 2147483647 (default value: 60)
* *irc.network.lag_disconnect*
** description: disconnect after important lag (in minutes, 0 = never disconnect)
** type: integer
** values: 0 .. 2147483647 (default value: 0)
* *irc.network.lag_min_show*
** description: minimum lag to show (in seconds)
** type: integer
** values: 0 .. 2147483647 (default value: 1)
* *irc.network.send_unknown_commands*
** description: send unknown commands to server
** type: boolean
** values: on, off (default value: off)
* *irc.server_default.addresses*
** description: list of hostname/port or IP/port for server (separated by comma)
** type: string
** values: any string (default value: "")
* *irc.server_default.autoconnect*
** description: automatically connect to server when WeeChat is starting
** type: boolean
** values: on, off (default value: off)
* *irc.server_default.autojoin*
** description: comma separated list of channels to join when connected to server (example: "#chan1,#chan2,#chan3 key1,key2")
** type: string
** values: any string (default value: "")
* *irc.server_default.autoreconnect*
** description: automatically reconnect to server when disconnected
** type: boolean
** values: on, off (default value: on)
* *irc.server_default.autoreconnect_delay*
** description: delay (in seconds) before trying again to reconnect to server
** type: integer
** values: 0 .. 65535 (default value: 30)
* *irc.server_default.autorejoin*
** description: automatically rejoin channels after kick
** type: boolean
** values: on, off (default value: off)
* *irc.server_default.autorejoin_delay*
** description: delay (in seconds) before autorejoin (after kick)
** type: integer
** values: 0 .. 86400 (default value: 30)
* *irc.server_default.command*
** description: command(s) to run when connected to server (many commands should be separated by ";", use "\;" for a semicolon, special variables $nick, $channel and $server are replaced by their value)
** type: string
** values: any string (default value: "")
* *irc.server_default.command_delay*
** description: delay (in seconds) after command was executed (example: give some time for authentication)
** type: integer
** values: 0 .. 3600 (default value: 0)
* *irc.server_default.ipv6*
** description: use IPv6 protocol for server communication
** type: boolean
** values: on, off (default value: off)
* *irc.server_default.local_hostname*
** description: custom local hostname/IP for server (optional, if empty local hostname is used)
** type: string
** values: any string (default value: "")
* *irc.server_default.nicks*
** description: nicknames to use on server (separated by comma)
** type: string
** values: any string (default value: "")
* *irc.server_default.password*
** description: password for server
** type: string
** values: any string (default value: "")
* *irc.server_default.proxy*
** description: proxy used for this server (optional)
** type: string
** values: any string (default value: "")
* *irc.server_default.realname*
** description: real name to use on server
** type: string
** values: any string (default value: "")
* *irc.server_default.sasl_mechanism*
** description: mechanism for SASL authentication
** type: integer
** values: plain, dh-blowfish (default value: plain)
* *irc.server_default.sasl_password*
** description: password for SASL authentication
** type: string
** values: any string (default value: "")
* *irc.server_default.sasl_timeout*
** description: timeout (in seconds) before giving up SASL authentication
** type: integer
** values: 1 .. 3600 (default value: 15)
* *irc.server_default.sasl_username*
** description: username for SASL authentication
** type: string
** values: any string (default value: "")
* *irc.server_default.ssl*
** description: use SSL for server communication
** type: boolean
** values: on, off (default value: off)
* *irc.server_default.ssl_cert*
** description: ssl certificate file used to automatically identify your nick
** type: string
** values: any string (default value: "")
* *irc.server_default.ssl_dhkey_size*
** description: size of the key used during the Diffie-Hellman Key Exchange
** type: integer
** values: 0 .. 2147483647 (default value: 2048)
* *irc.server_default.ssl_verify*
** description: check that the ssl connection is fully trusted
** type: boolean
** values: on, off (default value: on)
* *irc.server_default.username*
** description: user name to use on server
** type: string
** values: any string (default value: "")
-32
View File
@@ -1,32 +0,0 @@
&bull; *`/logger`* `[list | set level | disable]`::
........................................
logger plugin configuration
list: show logging status for opened buffers
set: set logging level on current buffer
level: level for messages to be logged (0 = logging disabled, 1 = a few messages (most important) .. 9 = all messages)
disable: disable logging on current buffer (set level to 0)
Options "logger.level.*" and "logger.mask.*" can be used to set level or mask for a buffer, or buffers beginning with name.
Examples:
set level to 5 for current buffer:
/logger set 5
disable logging for current buffer:
/logger disable
set level to 3 for all IRC buffers:
/set logger.level.irc 3
disable logging for main WeeChat buffer:
/set logger.level.core.weechat 0
use a directory per IRC server and a file per channel inside:
/set logger.mask.irc "$server/$channel.weechatlog"
Log levels used by IRC plugin:
1: user message, notice, private
2: nick change
3: server message
4: join/part/quit
9: all other messages
........................................
-40
View File
@@ -1,40 +0,0 @@
* *logger.file.auto_log*
** description: automatically save content of buffers to files (unless a buffer disables log)
** type: boolean
** values: on, off (default value: on)
* *logger.file.info_lines*
** description: write information line in log file when log starts or ends for a buffer
** type: boolean
** values: on, off (default value: off)
* *logger.file.mask*
** description: default file name mask for log files (format is "directory/to/file" or "file", without first "/" because "path" option is used to build complete path to file); local buffer variables are permitted; date specifiers are permitted (see man strftime)
** type: string
** values: any string (default value: "$plugin.$name.weechatlog")
* *logger.file.name_lower_case*
** description: use only lower case for log filenames
** type: boolean
** values: on, off (default value: on)
* *logger.file.path*
** description: 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)
** type: string
** values: any string (default value: "%h/logs/")
* *logger.file.replacement_char*
** description: replacement char for special chars in filename built with mask (like directory delimiter)
** type: string
** values: any string (default value: "_")
* *logger.file.time_format*
** description: timestamp used in log files (see man strftime for date/time specifiers)
** type: string
** values: any string (default value: "%Y-%m-%d %H:%M:%S")
* *logger.look.backlog*
** description: maximum number of lines to display from log file when creating new buffer (0 = no backlog)
** type: integer
** values: 0 .. 2147483647 (default value: 20)
-11
View File
@@ -1,11 +0,0 @@
&bull; *`/lua`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload [name]] | [unload [name]]`::
........................................
list/load/unload scripts
filename: script (file) to load
name: a script name
Without argument, this command lists all loaded scripts.
........................................
-11
View File
@@ -1,11 +0,0 @@
&bull; *`/perl`* `[list [name]] | [listfull [name]] | [load filename] | [autoload] | [reload [name]] | [unload [name]]`::
........................................
list/load/unload scripts
filename: script (file) to load
name: a script name
Without argument, this command lists all loaded scripts.
........................................

Some files were not shown because too many files have changed in this diff Show More