doc: fix styles in developer's guide (issue #722)

This commit is contained in:
Sébastien Helleu 2016-05-04 22:16:29 +02:00
parent de24a7cb7b
commit 8c1916c6c2
4 changed files with 1009 additions and 1000 deletions

View File

@ -19,4 +19,10 @@ h1,h2,h3,h4,h5 {
line-height: normal;
font-size: .95em;
}
.hex {
padding: 0 .2em;
border: 1px solid #88b;
margin: 0 .2em;
font-family: monospace;
}
</style>

View File

@ -4,6 +4,7 @@
:lang: en
:toc: left
:toclevels: 3
:sectnums:
:docinfo1:
@ -39,7 +40,7 @@ weechat::
core repository with source code and documentation
scripts::
the 'official' scripts submitted on weechat.org
the _official_ scripts submitted on weechat.org
weechat.org::
source of WeeChat web site: https://weechat.org/
@ -50,42 +51,42 @@ weercd::
qweechat::
Qt remote GUI for WeeChat.
This manual documents only 'weechat' repository.
This manual documents only _weechat_ repository.
[[overview]]
=== Overview
The main WeeChat directories are:
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Directory | Description
| src/ | Root of sources
| core/ | Core functions: entry point, internal structures
| gui/ | Functions for buffers, windows, ... (used by all interfaces)
| curses/ | Curses interface
| plugins/ | Plugin and scripting API
| alias/ | Alias plugin
| aspell/ | Aspell plugin
| charset/ | Charset plugin
| exec/ | Exec plugin
| fifo/ | Fifo plugin (FIFO pipe used to remotely send commands to WeeChat)
| guile/ | Guile (scheme) scripting API
| irc/ | IRC (Internet Relay Chat) plugin
| javascript/ | Javascript scripting API
| logger/ | Logger plugin (write messages displayed to files)
| lua/ | Lua scripting API
| perl/ | Perl scripting API
| python/ | Python scripting API
| relay/ | Relay plugin (irc proxy + relay for remote interfaces)
| ruby/ | Ruby scripting API
| script/ | Scripts manager
| tcl/ | Tcl scripting API
| trigger/ | Trigger plugin
| xfer/ | Xfer plugin (IRC DCC file/chat)
|    core/ | Core functions: entry point, internal structures
|    gui/ | Functions for buffers, windows, ... (used by all interfaces)
|       curses/ | Curses interface
|    plugins/ | Plugin and scripting API
|       alias/ | Alias plugin
|       aspell/ | Aspell plugin
|       charset/ | Charset plugin
|       exec/ | Exec plugin
|       fifo/ | Fifo plugin (FIFO pipe used to remotely send commands to WeeChat)
|       guile/ | Guile (scheme) scripting API
|       irc/ | IRC (Internet Relay Chat) plugin
|       javascript/ | Javascript scripting API
|       logger/ | Logger plugin (write messages displayed to files)
|       lua/ | Lua scripting API
|       perl/ | Perl scripting API
|       python/ | Python scripting API
|       relay/ | Relay plugin (irc proxy + relay for remote interfaces)
|       ruby/ | Ruby scripting API
|       script/ | Scripts manager
|       tcl/ | Tcl scripting API
|       trigger/ | Trigger plugin
|       xfer/ | Xfer plugin (IRC DCC file/chat)
| tests/ | Tests
| unit/ | Unit tests
| core/ | Unit tests for core functions
|    unit/ | Unit tests
|       core/ | Unit tests for core functions
| doc/ | Documentation
| po/ | Translations files (gettext)
| debian/ | Debian packaging
@ -99,234 +100,234 @@ The main WeeChat directories are:
WeeChat "core" is located in following directories:
* 'src/core/': core functions (for data manipulation)
* 'src/gui/': functions about interface (buffers, windows, ...)
* _src/core/_: core functions (for data manipulation)
* _src/gui/_: functions about interface (buffers, windows, ...)
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Path/file | Description
| core/ | Core functions: entry point, internal structures
| wee-arraylist.c | Array lists
| wee-backtrace.c | Display a backtrace after a crash
| wee-command.c | WeeChat core commands
| wee-completion.c | Default completions
| wee-config-file.c | Configuration file management
| wee-config.c | Configuration options for WeeChat core (file weechat.conf)
| wee-debug.c | Some debug functions
| wee-eval.c | Evaluation of expressions with references to internal vars
| wee-hashtable.c | Hashtables
| wee-hdata.c | Hdata (direct access to data using hashtables)
| wee-hook.c | Hooks
| wee-infolist.c | Infolists (lists with objects data)
| wee-input.c | Input of commands/text
| wee-list.c | Sorted lists
| wee-log.c | Write to WeeChat log file (weechat.log)
| wee-network.c | Network functions (connection to servers/proxies)
| wee-proxy.c | Proxy management
| wee-secure.c | Secured data options (file sec.conf)
| wee-string.c | Functions on strings
| wee-upgrade-file.c | Internal upgrade system
| wee-upgrade.c | Upgrade for WeeChat core (buffers, lines, history, ...)
| wee-url.c | URL transfer (using libcurl)
| wee-utf8.c | UTF-8 functions
| wee-util.c | Some other functions
| wee-version.c | Functions for WeeChat version
| weechat.c | Main functions: command line options, startup
|    wee-arraylist.c | Array lists
|    wee-backtrace.c | Display a backtrace after a crash
|    wee-command.c | WeeChat core commands
|    wee-completion.c | Default completions
|    wee-config-file.c | Configuration file management
|    wee-config.c | Configuration options for WeeChat core (file weechat.conf)
|    wee-debug.c | Some debug functions
|    wee-eval.c | Evaluation of expressions with references to internal vars
|    wee-hashtable.c | Hashtables
|    wee-hdata.c | Hdata (direct access to data using hashtables)
|    wee-hook.c | Hooks
|    wee-infolist.c | Infolists (lists with objects data)
|    wee-input.c | Input of commands/text
|    wee-list.c | Sorted lists
|    wee-log.c | Write to WeeChat log file (weechat.log)
|    wee-network.c | Network functions (connection to servers/proxies)
|    wee-proxy.c | Proxy management
|    wee-secure.c | Secured data options (file sec.conf)
|    wee-string.c | Functions on strings
|    wee-upgrade-file.c | Internal upgrade system
|    wee-upgrade.c | Upgrade for WeeChat core (buffers, lines, history, ...)
|    wee-url.c | URL transfer (using libcurl)
|    wee-utf8.c | UTF-8 functions
|    wee-util.c | Some other functions
|    wee-version.c | Functions for WeeChat version
|    weechat.c | Main functions: command line options, startup
| gui/ | Functions for buffers, windows, ... (used by all interfaces)
| gui-bar-item.c | Bar items
| gui-bar-window.c | Bar windows
| gui-bar.c | Bars
| gui-buffer.c | Buffers
| gui-chat.c | Chat functions (display message, ...)
| gui-color.c | Color functions
| gui-completion.c | Completion on command line
| gui-cursor.c | Cursor mode (free movement of cursor)
| gui-filter.c | Filters
| gui-focus.c | Functions about focus (for cursor mode and mouse)
| gui-history.c | Commands/text saved in buffers
| gui-hotlist.c | Hotlist management (list of buffers with activity)
| gui-input.c | Input functions (input bar)
| gui-key.c | Keyboard functions
| gui-layout.c | Layout
| gui-line.c | Lines in buffers
| gui-mouse.c | Mouse
| gui-nick.c | Nick functions
| gui-nicklist.c | Nicklist in buffers
| gui-window.c | Windows
| curses/ | Curses interface
| gui-curses-bar-window.c | Display in bar windows
| gui-curses-chat.c | Display in chat area (messages)
| gui-curses-color.c | Color functions
| gui-curses-key.c | Keyboard functions (default keys, read of input)
| gui-curses-main.c | WeeChat main loop (waiting for keyboard/network events)
| gui-curses-mouse.c | Mouse
| gui-curses-term.c | Functions about terminal
| gui-curses-window.c | Windows
| main.c | Entry point
|    gui-bar-item.c | Bar items
|    gui-bar-window.c | Bar windows
|    gui-bar.c | Bars
|    gui-buffer.c | Buffers
|    gui-chat.c | Chat functions (display message, ...)
|    gui-color.c | Color functions
|    gui-completion.c | Completion on command line
|    gui-cursor.c | Cursor mode (free movement of cursor)
|    gui-filter.c | Filters
|    gui-focus.c | Functions about focus (for cursor mode and mouse)
|    gui-history.c | Commands/text saved in buffers
|    gui-hotlist.c | Hotlist management (list of buffers with activity)
|    gui-input.c | Input functions (input bar)
|    gui-key.c | Keyboard functions
|    gui-layout.c | Layout
|    gui-line.c | Lines in buffers
|    gui-mouse.c | Mouse
|    gui-nick.c | Nick functions
|    gui-nicklist.c | Nicklist in buffers
|    gui-window.c | Windows
|    curses/ | Curses interface
|       gui-curses-bar-window.c | Display in bar windows
|       gui-curses-chat.c | Display in chat area (messages)
|       gui-curses-color.c | Color functions
|       gui-curses-key.c | Keyboard functions (default keys, read of input)
|       gui-curses-main.c | WeeChat main loop (waiting for keyboard/network events)
|       gui-curses-mouse.c | Mouse
|       gui-curses-term.c | Functions about terminal
|       gui-curses-window.c | Windows
|       main.c | Entry point
|===
[[sources_plugins]]
==== Plugins
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Path/file | Description
| plugins/ | Root of plugins
| plugin.c | Plugins management (load/unload dynamic C libraries)
| plugin-api.c | Extra functions for plugin API (wrapper around WeeChat core functions)
| plugin-config.c | Plugin configuration options (file plugins.conf)
| plugin-script.c | Common functions used by script plugins
| plugin-script-api.c | Script API functions: wrappers around some plugin API functions
| weechat-plugin.h | Header designed to be distributed with WeeChat plugins, in order to compile them
| alias/ | Alias plugin
| alias.c | Main alias functions
| alias-command.c | Alias commands
| alias-completion.c | Alias completions
| alias-config.c | Alias config options (file alias.conf)
| alias-info.c | Alias info/infolists/hdata
| aspell/ | Aspell plugin
| weechat-aspell.c | Main aspell functions
| weechat-aspell-bar-item.c | Aspell bar items
| weechat-aspell-command.c | Aspell commands
| weechat-aspell-completion.c | Aspell completions
| weechat-aspell-config.c | Aspell config options (file aspell.conf)
| weechat-aspell-info.c | Aspell info/infolists/hdata
| weechat-aspell-speller.c | Spellers management
| charset/ | Charset plugin
| charset.c | Charset functions
| exec/ | Exec plugin
| exec.c | Main exec functions
| exec-buffer.c | Exec buffer
| exec-command.c | Exec commands
| exec-completion.c | Exec completions
| exec-config.c | Exec config options (file exec.conf)
| fifo/ | Fifo plugin
| fifo.c | Main fifo functions
| fifo-command.c | Fifo commands
| fifo-info.c | Fifo info/infolists/hdata
| guile/ | Guile (scheme) plugin
| weechat-guile.c | Main guile functions (load/unload scripts, execute guile code)
| weechat-guile-api.c | Guile scripting API functions
| irc/ | IRC (Internet Relay Chat) plugin
| irc.c | Main IRC functions
| irc-bar-item.c | IRC bar items
| irc-buffer.c | IRC buffers
| irc-channel.c | IRC channels
| irc-color.c | IRC colors
| irc-command.c | IRC commands
| irc-completion.c | IRC completions
| irc-config.c | IRC config options (file irc.conf)
| irc-ctcp.c | IRC CTCP
| irc-debug.c | IRC debug functions
| irc-ignore.c | IRC Ignore
| irc-info.c | IRC info/infolists/hdata
| irc-input.c | Input of commands/text
| irc-message.c | Functions to manipulate IRC messages
| irc-mode.c | Functions about channel/nick modes
| irc-msgbuffer.c | Target buffer for IRC messages
| irc-nick.c | IRC nicks
| irc-notify.c | IRC notify lists
| irc-protocol.c | IRC protocol (RFCs 1459/2810/2811/2812/2813)
| irc-raw.c | IRC raw buffer
| irc-redirect.c | Redirection of IRC command output
| irc-sasl.c | SASL authentication with IRC server
| irc-server.c | I/O communication with IRC server
| irc-upgrade.c | Save/restore of IRC data when upgrading WeeChat
| javascript/ | Javascript plugin
| weechat-js.cpp | Main javascript functions (load/unload scripts, execute javascript code)
| weechat-js-api.cpp | Javascript scripting API functions
| weechat-js-v8.cpp | Javascript v8 functions
| logger/ | Logger plugin
| logger.c | Main logger functions
| logger-buffer.c | Logger buffer list management
| logger-config.c | Logger config options (file logger.conf)
| logger-info.c | Logger info/infolists/hdata
| logger-tail.c | Functions to get last lines of a file
| lua/ | Lua plugin
| weechat-lua.c | Main lua functions (load/unload scripts, execute lua code)
| weechat-lua-api.c | Lua scripting API functions
| perl/ | Perl plugin
| weechat-perl.c | Main perl functions (load/unload scripts, execute perl code)
| weechat-perl-api.c | Perl scripting API functions
| python/ | Python plugin
| weechat-python.c | Main python functions (load/unload scripts, execute python code)
| weechat-python-api.c | Python scripting API functions
| relay/ | Relay plugin (IRC proxy and relay for remote interfaces)
| relay.c | Main relay functions
| relay-buffer.c | Relay buffer
| relay-client.c | Clients of relay
| relay-command.c | Relay commands
| relay-completion.c | Relay completions
| relay-config.c | Relay config options (file relay.conf)
| relay-info.c | Relay info/infolists/hdata
| relay-network.c | Network functions for relay
| relay-raw.c | Relay raw buffer
| relay-server.c | Relay server
| relay-upgrade.c | Save/restore of relay data when upgrading WeeChat
| relay-websocket.c | WebSocket server functions (RFC 6455)
| irc/ | IRC proxy
| relay-irc.c | Main IRC proxy functions
| weechat/ | Relay for remote interfaces
| relay-weechat.c | Relay for remote interfaces (main functions)
| relay-weechat-msg.c | Send binary messages to clients
| relay-weechat-nicklist.c | Nicklist functions
| relay-weechat-protocol.c | Read commands from clients
| ruby/ | Ruby plugin
| weechat-ruby.c | Main ruby functions (load/unload scripts, execute ruby code)
| weechat-ruby-api.c | Ruby scripting API functions
| script/ | Scripts manager
| script.c | Main functions for scripts manager
| script-action.c | Actions on scripts (load/unload, install/remove, ...)
| script-buffer.c | Buffer for scripts manager
| script-command.c | Commands for scripts manager
| script-completion.c | Completions for scripts manager
| script-config.c | Config options for scripts manager (file script.conf)
| script-info.c | Script manager info/infolists/hdata
| script-repo.c | Download and read repository file
| tcl/ | Tcl plugin
| weechat-tcl.c | Main tcl functions (load/unload scripts, execute tcl code)
| weechat-tcl-api.c | Tcl scripting API functions
| trigger/ | Trigger plugin
| trigger.c | Main trigger functions
| trigger-buffer.c | Trigger buffer
| trigger-callback.c | Trigger callbacks
| trigger-command.c | Trigger commands
| trigger-completion.c | Trigger completions
| trigger-config.c | Trigger config options (file trigger.conf)
| xfer/ | Xfer plugin (IRC DCC file/chat)
| xfer.c | Main xfer functions
| xfer-buffer.c | Xfer buffer
| xfer-chat.c | DCC chat
| xfer-command.c | Xfer commands
| xfer-completion.c | Xfer completions
| xfer-config.c | Xfer config options (file xfer.conf)
| xfer-dcc.c | DCC file transfer
| xfer-file.c | File functions for xfer
| xfer-info.c | Xfer info/infolists/hdata
| xfer-network.c | Network functions for xfer
| xfer-upgrade.c | Save/restore of xfer data when upgrading WeeChat
|    plugin.c | Plugins management (load/unload dynamic C libraries)
|    plugin-api.c | Extra functions for plugin API (wrapper around WeeChat core functions)
|    plugin-config.c | Plugin configuration options (file plugins.conf)
|    plugin-script.c | Common functions used by script plugins
|    plugin-script-api.c | Script API functions: wrappers around some plugin API functions
|    weechat-plugin.h | Header designed to be distributed with WeeChat plugins, in order to compile them
|    alias/ | Alias plugin
|       alias.c | Main alias functions
|       alias-command.c | Alias commands
|       alias-completion.c | Alias completions
|       alias-config.c | Alias config options (file alias.conf)
|       alias-info.c | Alias info/infolists/hdata
|    aspell/ | Aspell plugin
|       weechat-aspell.c | Main aspell functions
|       weechat-aspell-bar-item.c | Aspell bar items
|       weechat-aspell-command.c | Aspell commands
|       weechat-aspell-completion.c | Aspell completions
|       weechat-aspell-config.c | Aspell config options (file aspell.conf)
|       weechat-aspell-info.c | Aspell info/infolists/hdata
|       weechat-aspell-speller.c | Spellers management
|    charset/ | Charset plugin
|       charset.c | Charset functions
|    exec/ | Exec plugin
|       exec.c | Main exec functions
|       exec-buffer.c | Exec buffer
|       exec-command.c | Exec commands
|       exec-completion.c | Exec completions
|       exec-config.c | Exec config options (file exec.conf)
|    fifo/ | Fifo plugin
|       fifo.c | Main fifo functions
|       fifo-command.c | Fifo commands
|       fifo-info.c | Fifo info/infolists/hdata
|    guile/ | Guile (scheme) plugin
|       weechat-guile.c | Main guile functions (load/unload scripts, execute guile code)
|       weechat-guile-api.c | Guile scripting API functions
|    irc/ | IRC (Internet Relay Chat) plugin
|       irc.c | Main IRC functions
|       irc-bar-item.c | IRC bar items
|       irc-buffer.c | IRC buffers
|       irc-channel.c | IRC channels
|       irc-color.c | IRC colors
|       irc-command.c | IRC commands
|       irc-completion.c | IRC completions
|       irc-config.c | IRC config options (file irc.conf)
|       irc-ctcp.c | IRC CTCP
|       irc-debug.c | IRC debug functions
|       irc-ignore.c | IRC Ignore
|       irc-info.c | IRC info/infolists/hdata
|       irc-input.c | Input of commands/text
|       irc-message.c | Functions to manipulate IRC messages
|       irc-mode.c | Functions about channel/nick modes
|       irc-msgbuffer.c | Target buffer for IRC messages
|       irc-nick.c | IRC nicks
|       irc-notify.c | IRC notify lists
|       irc-protocol.c | IRC protocol (RFCs 1459/2810/2811/2812/2813)
|       irc-raw.c | IRC raw buffer
|       irc-redirect.c | Redirection of IRC command output
|       irc-sasl.c | SASL authentication with IRC server
|       irc-server.c | I/O communication with IRC server
|       irc-upgrade.c | Save/restore of IRC data when upgrading WeeChat
|    javascript/ | Javascript plugin
|       weechat-js.cpp | Main javascript functions (load/unload scripts, execute javascript code)
|       weechat-js-api.cpp | Javascript scripting API functions
|       weechat-js-v8.cpp | Javascript v8 functions
|    logger/ | Logger plugin
|       logger.c | Main logger functions
|       logger-buffer.c | Logger buffer list management
|       logger-config.c | Logger config options (file logger.conf)
|       logger-info.c | Logger info/infolists/hdata
|       logger-tail.c | Functions to get last lines of a file
|    lua/ | Lua plugin
|       weechat-lua.c | Main lua functions (load/unload scripts, execute lua code)
|       weechat-lua-api.c | Lua scripting API functions
|    perl/ | Perl plugin
|       weechat-perl.c | Main perl functions (load/unload scripts, execute perl code)
|       weechat-perl-api.c | Perl scripting API functions
|    python/ | Python plugin
|       weechat-python.c | Main python functions (load/unload scripts, execute python code)
|       weechat-python-api.c | Python scripting API functions
|    relay/ | Relay plugin (IRC proxy and relay for remote interfaces)
|       relay.c | Main relay functions
|       relay-buffer.c | Relay buffer
|       relay-client.c | Clients of relay
|       relay-command.c | Relay commands
|       relay-completion.c | Relay completions
|       relay-config.c | Relay config options (file relay.conf)
|       relay-info.c | Relay info/infolists/hdata
|       relay-network.c | Network functions for relay
|       relay-raw.c | Relay raw buffer
|       relay-server.c | Relay server
|       relay-upgrade.c | Save/restore of relay data when upgrading WeeChat
|       relay-websocket.c | WebSocket server functions (RFC 6455)
|       irc/ | IRC proxy
|          relay-irc.c | Main IRC proxy functions
|       weechat/ | Relay for remote interfaces
|          relay-weechat.c | Relay for remote interfaces (main functions)
|          relay-weechat-msg.c | Send binary messages to clients
|          relay-weechat-nicklist.c | Nicklist functions
|          relay-weechat-protocol.c | Read commands from clients
|    ruby/ | Ruby plugin
|       weechat-ruby.c | Main ruby functions (load/unload scripts, execute ruby code)
|       weechat-ruby-api.c | Ruby scripting API functions
|    script/ | Scripts manager
|       script.c | Main functions for scripts manager
|       script-action.c | Actions on scripts (load/unload, install/remove, ...)
|       script-buffer.c | Buffer for scripts manager
|       script-command.c | Commands for scripts manager
|       script-completion.c | Completions for scripts manager
|       script-config.c | Config options for scripts manager (file script.conf)
|       script-info.c | Script manager info/infolists/hdata
|       script-repo.c | Download and read repository file
|    tcl/ | Tcl plugin
|       weechat-tcl.c | Main tcl functions (load/unload scripts, execute tcl code)
|       weechat-tcl-api.c | Tcl scripting API functions
|    trigger/ | Trigger plugin
|       trigger.c | Main trigger functions
|       trigger-buffer.c | Trigger buffer
|       trigger-callback.c | Trigger callbacks
|       trigger-command.c | Trigger commands
|       trigger-completion.c | Trigger completions
|       trigger-config.c | Trigger config options (file trigger.conf)
|    xfer/ | Xfer plugin (IRC DCC file/chat)
|       xfer.c | Main xfer functions
|       xfer-buffer.c | Xfer buffer
|       xfer-chat.c | DCC chat
|       xfer-command.c | Xfer commands
|       xfer-completion.c | Xfer completions
|       xfer-config.c | Xfer config options (file xfer.conf)
|       xfer-dcc.c | DCC file transfer
|       xfer-file.c | File functions for xfer
|       xfer-info.c | Xfer info/infolists/hdata
|       xfer-network.c | Network functions for xfer
|       xfer-upgrade.c | Save/restore of xfer data when upgrading WeeChat
|===
[[sources_tests]]
==== Tests
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Path/file | Description
| tests/ | Root of tests
| tests.cpp | Program used to run tests
| unit/ | Root of unit tests
| core/ | Root of unit tests for core
| test-arraylist.cpp | Tests: arraylists
| test-eval.cpp | Tests: evaluation of expressions
| test-hashtble.cpp | Tests: hashtables
| test-hdata.cpp | Tests: hdata
| test-infolist.cpp | Tests: infolists
| test-list.cpp | Tests: lists
| test-string.cpp | Tests: strings
| test-url.cpp | Tests: URLs
| test-utf8.cpp | Tests: UTF-8
| test-util.cpp | Tests: utility functions
|    tests.cpp | Program used to run tests
|    unit/ | Root of unit tests
|       core/ | Root of unit tests for core
|          test-arraylist.cpp | Tests: arraylists
|          test-eval.cpp | Tests: evaluation of expressions
|          test-hashtble.cpp | Tests: hashtables
|          test-hdata.cpp | Tests: hdata
|          test-infolist.cpp | Tests: infolists
|          test-list.cpp | Tests: lists
|          test-string.cpp | Tests: strings
|          test-url.cpp | Tests: URLs
|          test-utf8.cpp | Tests: UTF-8
|          test-util.cpp | Tests: utility functions
|===
[[documentation_translations]]
@ -334,37 +335,37 @@ WeeChat "core" is located in following directories:
Documentation files:
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Path/file | Description
| doc/ | Documentation
| docinfo.html | Asciidoctor style
| docgen.py | Python script to build files in 'autogen/' directory (see below)
| XX/ | Documentation for language XX (languages: en, fr, de, it, ...)
| cmdline_options.XX.asciidoc | Command-line options (file included in man page and user's guide)
| weechat.1.XX.asciidoc | Man page (`man weechat`)
| weechat_dev.XX.asciidoc | Developer's guide (this document)
| weechat_faq.XX.asciidoc | FAQ
| weechat_plugin_api.XX.asciidoc | Plugin API reference
| weechat_quickstart.XX.asciidoc | Quickstart guide
| weechat_relay_protocol.XX.asciidoc | Relay protocol (for remote interfaces)
| weechat_scripting.XX.asciidoc | Scripting guide
| weechat_tester.XX.asciidoc | Tester's guide
| weechat_user.XX.asciidoc | User's guide
| autogen/ | Files auto-built with script docgen.py
| user/ | Files auto-built for user's guide (do *NEVER* update manually!)
| plugin_api/ | Files auto-built for plugin API (do *NEVER* update manually!)
|    docinfo.html | Asciidoctor style
|    docgen.py | Python script to build files in _autogen/_ directory (see below)
|    XX/ | Documentation for language XX (languages: en, fr, de, it, ...)
|       cmdline_options.XX.asciidoc | Command-line options (file included in man page and user's guide)
|       weechat.1.XX.asciidoc | Man page (`man weechat`)
|       weechat_dev.XX.asciidoc | Developer's guide (this document)
|       weechat_faq.XX.asciidoc | FAQ
|       weechat_plugin_api.XX.asciidoc | Plugin API reference
|       weechat_quickstart.XX.asciidoc | Quickstart guide
|       weechat_relay_protocol.XX.asciidoc | Relay protocol (for remote interfaces)
|       weechat_scripting.XX.asciidoc | Scripting guide
|       weechat_tester.XX.asciidoc | Tester's guide
|       weechat_user.XX.asciidoc | User's guide
|       autogen/ | Files auto-built with script docgen.py
|          user/ | Files auto-built for user's guide (do *NEVER* update manually!)
|          plugin_api/ | Files auto-built for plugin API (do *NEVER* update manually!)
|===
Translations for WeeChat and plugins are done with gettext, files are in 'po/'
Translations for WeeChat and plugins are done with gettext, files are in _po/_
directory:
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Path/file | Description
| po/ | Translation files (gettext)
| XX.po | Translations for language XX (fr, de, it, ...), base language is English
| weechat.pot | Template for translations (auto-built)
|    XX.po | Translations for language XX (fr, de, it, ...), base language is English
|    weechat.pot | Template for translations (auto-built)
|===
[[coding_rules]]
@ -587,7 +588,7 @@ struct t_hook_fd *new_hook_fd;
new_hook_fd = malloc (sizeof (*new_hook_fd));
----
* This Lisp code can be used in your '~/.emacs.el' to indent properly if you are
* This Lisp code can be used in your _~/.emacs.el_ to indent properly if you are
using Emacs as text editor:
[source,lisp]
@ -615,16 +616,16 @@ See http://www.python.org/dev/peps/pep-0008/
[[naming_convention_files]]
==== Files
File names are composed by letters and hyphens, with format: 'xxx-yyyyy.[ch]',
where 'xxx' is directory/component (can be abbreviation) and 'yyyyy' a name for
File names are composed by letters and hyphens, with format: _xxx-yyyyy.[ch]_,
where _xxx_ is directory/component (can be abbreviation) and _yyyyy_ a name for
the file.
The main file of a directory may have same name as directory, for example
'irc.c' in irc plugin.
_irc.c_ in irc plugin.
Examples:
[width="100%",cols="1l,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Directory | Files
| src/core/ | weechat.c, wee-backtrace.c, wee-command.c, ...
@ -635,19 +636,19 @@ Examples:
| src/plugins/python/ | weechat-python.c, weechat-python-api.c, ...
|===
The headers of C files have same name as file, for example 'wee-command.h' for
file 'wee-command.c'.
The headers of C files have same name as file, for example _wee-command.h_ for
file _wee-command.c_.
[[naming_convention_structures]]
==== Structures
Structures have name 't_X_Y' or 't_X_Y_Z':
Structures have name _t_X_Y_ or _t_X_Y_Z_:
* 'X': directory/component (can be abbreviation)
* 'Y': end of file name
* 'Z': name for structure (optional)
* _X_: directory/component (can be abbreviation)
* _Y_: end of file name
* _Z_: name for structure (optional)
Example: an IRC nick (from 'src/plugins/irc/irc-nick.h'):
Example: an IRC nick (from _src/plugins/irc/irc-nick.h_):
[source,C]
----
@ -668,16 +669,16 @@ struct t_irc_nick
[[naming_convention_variables]]
==== Variables
Global variables (outside functions) have name 'X_Y_Z':
Global variables (outside functions) have name _X_Y_Z_:
* 'X': directory/component (can be abbreviation)
* 'Y': end of file name
* 'Z': name for variable
* _X_: directory/component (can be abbreviation)
* _Y_: end of file name
* _Z_: name for variable
Exception are variables for "last" node of a list, name is 'last_X' (where
'X' is name of variable, using singular form).
Exception are variables for "last" node of a list, name is _last_X_ (where
_X_ is name of variable, using singular form).
Example: windows (from 'src/gui/gui-window.c'):
Example: windows (from _src/gui/gui-window.c_):
[source,C]
----
@ -688,8 +689,8 @@ struct t_gui_window *gui_current_window = NULL; /* current window */
There is no naming convention for local variables (in functions). The only
recommendation is that name is explicit (not too short). +
Nevertheless, pointers to structures are often named 'ptr_xxxx', for example a
pointer on a 'struct t_gui_buffer *' will be: '*ptr_buffer'.
Nevertheless, pointers to structures are often named _ptr_xxxx_, for example a
pointer on a _struct t_gui_buffer *_ will be: _*ptr_buffer_.
[[naming_convention_functions]]
==== Functions
@ -697,7 +698,7 @@ pointer on a 'struct t_gui_buffer *' will be: '*ptr_buffer'.
Naming convention for functions is the same as
<<naming_convention_variables,variables>>.
Example: creation of a new window (from 'src/gui/gui-window.c'):
Example: creation of a new window (from _src/gui/gui-window.c_):
[source,C]
----
@ -733,7 +734,7 @@ If for some reasons you have to sleep a while, use `hook_timer` with a callback.
Most of WeeChat linked lists are doubly linked lists: each node has pointer to
previous and next node.
Example: list of buffers (from 'src/gui/gui-buffer.h'):
Example: list of buffers (from _src/gui/gui-buffer.h_):
[source,C]
----
@ -764,10 +765,10 @@ underline, ...) and colors on screen.
All attributes/colors are prefixed with a char in string, which can be:
* '0x19': color code (followed by color code(s))
* '0x1A': set attribute (followed by attribute on one char)
* '0x1B': remove attribute (followed by attribute on one char)
* '0x1C': reset (nothing after)
* _0x19_: color code (followed by color code(s))
* _0x1A_: set attribute (followed by attribute on one char)
* _0x1B_: remove attribute (followed by attribute on one char)
* _0x1C_: reset (nothing after)
Allowed attributes are (one or more chars):
@ -794,36 +795,36 @@ All combinations are summarized in this table:
[width="100%",cols="4,2,2,8",options="header"]
|===
| Code | Example | Areas | Description
| hex[19] + STD | hex[19]`01` | chat + bars | Set attributes and color using option, see table below
| hex[19] + EXT | hex[19]`@00001` | chat | Set color with a ncurses pair (used only on `/color` buffer)
| hex[19] + "F" + (A)STD | hex[19]`F*05` | chat + bars | Set foreground (WeeChat color)
| hex[19] + "F" + (A)EXT | hex[19]`F@00214` | chat + bars | Set foreground (extended color)
| hex[19] + "B" + STD | hex[19]`B05` | chat + bars | Set background (WeeChat color)
| hex[19] + "B" + EXT | hex[19]`B@00124` | chat + bars | Set background (extended color)
| hex[19] + "*" + (A)STD | hex[19]`*05` | chat + bars | Set foreground (WeeChat color)
| hex[19] + "*" + (A)EXT | hex[19]`*@00214` | chat + bars | Set foreground (extended color)
| hex[19] + "*" + (A)STD + "," + STD | hex[19]`*08,05` | chat + bars | Set foreground/background (WeeChat colors)
| hex[19] + "*" + (A)STD + "," + EXT | hex[19]`*01,@00214` | chat + bars | Set foreground (WeeChat color) and background (extended color)
| hex[19] + "*" + (A)EXT + "," + STD | hex[19]`*@00214,05` | chat + bars | Set foreground (extended color) and background (WeeChat color)
| hex[19] + "*" + (A)EXT + "," + EXT | hex[19]`*@00214,@00017` | chat + bars | Set foreground/background (extended colors)
| hex[19] + "b" + "F" | hex[19]`bF` | bars | Set bar foreground color
| hex[19] + "b" + "D" | hex[19]`bD` | bars | Set bar delimiter color
| hex[19] + "b" + "B" | hex[19]`bB` | bars | Set bar background color
| hex[19] + "b" + "_" | hex[19]`b_` | input bar | Start input char (used only in item "input_text")
| hex[19] + "b" + "-" | hex[19]`b-` | input bar | Start input hidden char (used only in item "input_text")
| hex[19] + "b" + "#" | hex[19]`b#` | input bar | Move cursor char (used only in item "input_text")
| hex[19] + "b" + "i" | hex[19]`bi` | bars | Start item
| hex[19] + "b" + "l" (lower L) | hex[19]`bl` | bars | Start line item
| hex[19] + "E" | hex[19]`E` | chat + bars | Emphasize text _(WeeChat ≥ 0.4.2)_
| hex[19] + hex[1C] | hex[19]hex[1C] | chat + bars | Reset color (keep attributes)
| hex[1A] + ATTR | hex[1A]`*` | chat + bars | Set attribute
| hex[1B] + ATTR | hex[1B]`*` | chat + bars | Remove attribute
| hex[1C] | hex[1C] | chat + bars | Reset attributes and color
| Code | Example | Areas | Description
| [hex]#19# + STD | [hex]#19# `01` | chat + bars | Set attributes and color using option, see table below
| [hex]#19# + EXT | [hex]#19# `@00001` | chat | Set color with a ncurses pair (used only on `/color` buffer)
| [hex]#19# + "F" + (A)STD | [hex]#19# `F*05` | chat + bars | Set foreground (WeeChat color)
| [hex]#19# + "F" + (A)EXT | [hex]#19# `F@00214` | chat + bars | Set foreground (extended color)
| [hex]#19# + "B" + STD | [hex]#19# `B05` | chat + bars | Set background (WeeChat color)
| [hex]#19# + "B" + EXT | [hex]#19# `B@00124` | chat + bars | Set background (extended color)
| [hex]#19# + "*" + (A)STD | [hex]#19# `*05` | chat + bars | Set foreground (WeeChat color)
| [hex]#19# + "*" + (A)EXT | [hex]#19# `*@00214` | chat + bars | Set foreground (extended color)
| [hex]#19# + "*" + (A)STD + "," + STD | [hex]#19# `*08,05` | chat + bars | Set foreground/background (WeeChat colors)
| [hex]#19# + "*" + (A)STD + "," + EXT | [hex]#19# `*01,@00214` | chat + bars | Set foreground (WeeChat color) and background (extended color)
| [hex]#19# + "*" + (A)EXT + "," + STD | [hex]#19# `*@00214,05` | chat + bars | Set foreground (extended color) and background (WeeChat color)
| [hex]#19# + "*" + (A)EXT + "," + EXT | [hex]#19# `*@00214,@00017` | chat + bars | Set foreground/background (extended colors)
| [hex]#19# + "b" + "F" | [hex]#19# `bF` | bars | Set bar foreground color
| [hex]#19# + "b" + "D" | [hex]#19# `bD` | bars | Set bar delimiter color
| [hex]#19# + "b" + "B" | [hex]#19# `bB` | bars | Set bar background color
| [hex]#19# + "b" + "_" | [hex]#19# `b_` | input bar | Start input char (used only in item "input_text")
| [hex]#19# + "b" + "-" | [hex]#19# `b-` | input bar | Start input hidden char (used only in item "input_text")
| [hex]#19# + "b" + "#" | [hex]#19# `b#` | input bar | Move cursor char (used only in item "input_text")
| [hex]#19# + "b" + "i" | [hex]#19# `bi` | bars | Start item
| [hex]#19# + "b" + "l" (lower L) | [hex]#19# `bl` | bars | Start line item
| [hex]#19# + "E" | [hex]#19# `E` | chat + bars | Emphasize text _(WeeChat ≥ 0.4.2)_
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + bars | Reset color (keep attributes)
| [hex]#1A# + ATTR | [hex]#1A# `*` | chat + bars | Set attribute
| [hex]#1B# + ATTR | [hex]#1B# `*` | chat + bars | Remove attribute
| [hex]#1C# | [hex]#1C# | chat + bars | Reset attributes and color
|===
Color codes using options (see 't_gui_color_enum', in file
'src/gui/gui-color.h'):
Color codes using options (see _t_gui_color_enum_, in file
_src/gui/gui-color.h_):
[width="70%",cols="^1m,10",options="header"]
|===
@ -903,29 +904,29 @@ Examples of color codes:
[width="70%",cols="1,2",options="header"]
|===
| Code | Description
| hex[19]`01` | Color of option "01" (chat text)
| hex[19]`*08,03` | Yellow on red
| hex[19]`*@00214` | Orange (extended color 214)
| hex[19]`*@*_00214,@00017` | Bold underlined orange (214) on dark blue (17)
| hex[1A]`_` | Set underline
| hex[1B]`_` | Remove underline
| hex[1C] | Reset attributes and color
| Code | Description
| [hex]#19# `01` | Color of option "01" (chat text)
| [hex]#19# `*08,03` | Yellow on red
| [hex]#19# `*@00214` | Orange (extended color 214)
| [hex]#19# `*@*_00214,@00017` | Bold underlined orange (214) on dark blue (17)
| [hex]#1A# `_` | Set underline
| [hex]#1B# `_` | Remove underline
| [hex]#1C# | Reset attributes and color
|===
[[plugin_internals]]
== Plugin internals
The file 'src/plugins/weechat-plugin.h' defines and exports all functions
The file _src/plugins/weechat-plugin.h_ defines and exports all functions
available in the API.
A structure called 't_weechat_plugin' is used to store info about plugin
A structure called _t_weechat_plugin_ is used to store info about plugin
(filename, name, author, description, ...) and all API functions, as pointers
to WeeChat functions.
Then some macros are defined to call these functions.
For example, function 'hook_timer' is defined in structure 't_weechat_plugin'
For example, function _hook_timer_ is defined in structure _t_weechat_plugin_
like this:
[source,C]
@ -984,13 +985,13 @@ For a Savannah bug:
component: fix a problem (bug #12345)
----
Where 'component' is one of following:
Where _component_ is one of following:
* WeeChat core: 'core' (files in root directory, 'po/' and 'src/',
except 'src/plugins/')
* documentation files: 'doc' (files in directory 'doc/')
* name of a plugin: 'irc', 'python', 'relay', ... (files in directory
'src/plugins/')
* WeeChat core: _core_ (files in root directory, _po/_ and _src/_,
except _src/plugins/_)
* documentation files: _doc_ (files in directory _doc/_)
* name of a plugin: _irc_, _python_, _relay_, ... (files in directory
_src/plugins/_)
Some rules to follow:
@ -1018,7 +1019,7 @@ core: update Japanese translations (patch #7783)
[[gettext]]
==== Gettext
Gettext files are in directory 'po/'.
Gettext files are in directory _po/_.
If you want to initialize a new language, use command `msginit`. For example to
create a file which is ready to translate to Dutch:
@ -1031,7 +1032,7 @@ $ msginit -i weechat.pot -l nl_NL -o nl.po
Base language for WeeChat is English, so you must of course perfectly understand
English in order to translate to your language.
When done, you *have* to check your file with script 'msgcheck.py'
When done, you *have* to check your file with script _msgcheck.py_
(https://github.com/flashcode/msgcheck):
----
@ -1041,10 +1042,10 @@ $ msgcheck.py xx.po
[[build_autogen_files]]
===== Build auto-generated files
Files in directory 'doc/XX/autogen/' are auto-generated by script 'doc/docgen.py'.
Files in directory _doc/XX/autogen/_ are auto-generated by script _doc/docgen.py_.
Copy this python script to your python directory (for example '~/.weechat/python').
Then you can load this script in your WeeChat, and setup path to your '/doc' directory:
Copy this python script to your python directory (for example _~/.weechat/python_).
Then you can load this script in your WeeChat, and setup path to your _/doc_ directory:
----
/python load docgen.py
@ -1066,10 +1067,10 @@ because files are built using data currently in memory.
[[asciidoc]]
==== Asciidoc
Asciidoc files are in directory 'doc/XX/' where 'XX' is language (en, fr, de,
Asciidoc files are in directory _doc/XX/_ where _XX_ is language (en, fr, de,
it, ...).
First make a copy of an English asciidoc file (in directory 'doc/en/'), then
First make a copy of an English asciidoc file (in directory _doc/en/_), then
work on it.
The translations missing in files are indicated by this string:

View File

@ -5,6 +5,7 @@
:toc: left
:toclevels: 3
:toc-title: Table des matières
:sectnums:
:docinfo1:
@ -41,7 +42,7 @@ weechat::
dépôt principal avec le code source et la documentation
scripts::
les scripts 'officiels' soumis sur weechat.org
les scripts _officiels_ soumis sur weechat.org
weechat.org::
le code source du site de WeeChat : https://weechat.org/
@ -52,42 +53,42 @@ weercd::
qweechat::
interface Qt distante pour WeeChat.
Ce manuel documente seulement le dépôt 'weechat'.
Ce manuel documente seulement le dépôt _weechat_.
[[overview]]
=== Vue d'ensemble
Les répertoires principaux de WeeChat sont :
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Répertoire | Description
| src/ | Racine des sources
| core/ | Fonctions du cœur : point d'entrée, structures internes
| gui/ | Fonctions pour les tampons, fenêtres, ... (utilisées par toutes les interfaces)
| curses/ | Interface Curses
| plugins/ | API extension/script
| alias/ | Extension Alias
| aspell/ | Extension Aspell
| charset/ | Extension Charset
| exec/ | Extension Exec
| fifo/ | Extension Fifo (tube FIFO utilisé pour envoyer des commandes à WeeChat)
| guile/ | API script Guile (scheme)
| irc/ | Extension IRC (Internet Relay Chat)
| javascript/ | API script Javascript
| logger/ | Extension Logger (enregistrer les messages affichés dans des fichiers)
| lua/ | API script Lua
| perl/ | API script Perl
| python/ | API script Python
| relay/ | Extension Relay (proxy IRC + relai pour interfaces distantes)
| ruby/ | API script Ruby
| script/ | Gestionnaire de scripts
| tcl/ | API script Tcl
| trigger/ | Extension Trigger
| xfer/ | Extension Xfer (IRC DCC fichier/discussion)
|    core/ | Fonctions du cœur : point d'entrée, structures internes
|    gui/ | Fonctions pour les tampons, fenêtres, ... (utilisées par toutes les interfaces)
|       curses/ | Interface Curses
|    plugins/ | API extension/script
|       alias/ | Extension Alias
|       aspell/ | Extension Aspell
|       charset/ | Extension Charset
|       exec/ | Extension Exec
|       fifo/ | Extension Fifo (tube FIFO utilisé pour envoyer des commandes à WeeChat)
|       guile/ | API script Guile (scheme)
|       irc/ | Extension IRC (Internet Relay Chat)
|       javascript/ | API script Javascript
|       logger/ | Extension Logger (enregistrer les messages affichés dans des fichiers)
|       lua/ | API script Lua
|       perl/ | API script Perl
|       python/ | API script Python
|       relay/ | Extension Relay (proxy IRC + relai pour interfaces distantes)
|       ruby/ | API script Ruby
|       script/ | Gestionnaire de scripts
|       tcl/ | API script Tcl
|       trigger/ | Extension Trigger
|       xfer/ | Extension Xfer (IRC DCC fichier/discussion)
| tests/ | Tests
| unit/ | Tests unitaires
| core/ | Tests unitaires pour les fonctions du cœur
|    unit/ | Tests unitaires
|       core/ | Tests unitaires pour les fonctions du cœur
| doc/ | Documentation
| po/ | Fichiers de traductions (gettext)
| debian/ | Empaquetage Debian
@ -101,234 +102,234 @@ Les répertoires principaux de WeeChat sont :
Le cœur de WeeChat est situé dans les répertoires suivants :
* 'src/core/' : fonctions du cœur (pour manipuler des données)
* 'src/gui/' : fonctions pour l'interface (tampons, fenêtres, ...)
* _src/core/_ : fonctions du cœur (pour manipuler des données)
* _src/gui/_ : fonctions pour l'interface (tampons, fenêtres, ...)
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Chemin/fichier | Description
| core/ | Fonctions du cœur : point d'entrée, structures internes
| wee-arraylist.c | Listes avec tableau (« arraylists »)
| wee-backtrace.c | Afficher une trace après un plantage
| wee-command.c | Commandes du cœur de WeeChat
| wee-completion.c | Complétions par défaut
| wee-config-file.c | Gestion des fichiers de configuration
| wee-config.c | Options de configuration du cœur de WeeChat (fichier weechat.conf)
| wee-debug.c | Quelques fonctions de debug
| wee-eval.c | Évaluation d'expressions avec des références à des variables internes
| wee-hashtable.c | Tables de hachage
| wee-hdata.c | Hdata (accès direct aux données en utilisant des tables de hachage)
| wee-hook.c | Crochets ("hooks")
| wee-infolist.c | Infolists (listes avec les données des objets)
| wee-input.c | Entrée de commandes/texte
| wee-list.c | Listes triées
| wee-log.c | Écriture dans le fichier de log WeeChat (weechat.log)
| wee-network.c | Fonctions réseau (connexion aux serveurs/proxies)
| wee-proxy.c | Gestion des proxies
| wee-secure.c | Options des données sécurisées (fichier sec.conf)
| wee-string.c | Fonctions sur les chaînes de caractères
| wee-upgrade-file.c | Système de mise à jour interne
| wee-upgrade.c | Mise à jour du cœur de WeeChat (tampons, lignes, historique, ...)
| wee-url.c | Transfert d'URL (en utilisant libcurl)
| wee-utf8.c | Fonctions UTF-8
| wee-util.c | Quelques autres fonctions utilitaires
| wee-version.c | Fonctions pour la version de WeeChat
| weechat.c | Fonctions principales : options de ligne de commande, démarrage
|    wee-arraylist.c | Listes avec tableau (« arraylists »)
|    wee-backtrace.c | Afficher une trace après un plantage
|    wee-command.c | Commandes du cœur de WeeChat
|    wee-completion.c | Complétions par défaut
|    wee-config-file.c | Gestion des fichiers de configuration
|    wee-config.c | Options de configuration du cœur de WeeChat (fichier weechat.conf)
|    wee-debug.c | Quelques fonctions de debug
|    wee-eval.c | Évaluation d'expressions avec des références à des variables internes
|    wee-hashtable.c | Tables de hachage
|    wee-hdata.c | Hdata (accès direct aux données en utilisant des tables de hachage)
|    wee-hook.c | Crochets ("hooks")
|    wee-infolist.c | Infolists (listes avec les données des objets)
|    wee-input.c | Entrée de commandes/texte
|    wee-list.c | Listes triées
|    wee-log.c | Écriture dans le fichier de log WeeChat (weechat.log)
|    wee-network.c | Fonctions réseau (connexion aux serveurs/proxies)
|    wee-proxy.c | Gestion des proxies
|    wee-secure.c | Options des données sécurisées (fichier sec.conf)
|    wee-string.c | Fonctions sur les chaînes de caractères
|    wee-upgrade-file.c | Système de mise à jour interne
|    wee-upgrade.c | Mise à jour du cœur de WeeChat (tampons, lignes, historique, ...)
|    wee-url.c | Transfert d'URL (en utilisant libcurl)
|    wee-utf8.c | Fonctions UTF-8
|    wee-util.c | Quelques autres fonctions utilitaires
|    wee-version.c | Fonctions pour la version de WeeChat
|    weechat.c | Fonctions principales : options de ligne de commande, démarrage
| gui/ | Fonctions pour les tampons, fenêtres, ... (utilisées par toutes les interfaces)
| gui-bar-item.c | Objets de barre
| gui-bar-window.c | Fenêtres de barre
| gui-bar.c | Barres
| gui-buffer.c | Tampons
| gui-chat.c | Fonctions pour la discussion (afficher un message, ...)
| gui-color.c | Fonctions de couleur
| gui-completion.c | Complétion sur la ligne de commande
| gui-cursor.c | Mode curseur (mouvement libre du curseur)
| gui-filter.c | Filtres
| gui-focus.c | Fonctions concernant le focus (pour les modes curseur et souris)
| gui-history.c | Commandes/texte sauvés dans les tampons
| gui-hotlist.c | Gestion de la "hotlist" (liste des tampons avec activité)
| gui-input.c | Fonctions d'entrée (barre "input")
| gui-key.c | Fonctions pour le clavier
| gui-layout.c | Dispositions ("layouts")
| gui-line.c | Lignes dans les tampons
| gui-mouse.c | Souris
| gui-nick.c | Fonctions pour les pseudos
| gui-nicklist.c | Liste de pseudos dans les tampons
| gui-window.c | Fenêtres
| curses/ | Interface Curses
| gui-curses-bar-window.c | Affichage dans les fenêtres de barre
| gui-curses-chat.c | Affichage dans la zone de discussion (messages)
| gui-curses-color.c | Fonctions pour les couleurs
| gui-curses-key.c | Fonctions pour le clavier (touches par défaut, lecture du clavier)
| gui-curses-main.c | Boucle principale de WeeChat (attente des évènements clavier/réseau)
| gui-curses-mouse.c | Souris
| gui-curses-term.c | Fonctions pour le terminal
| gui-curses-window.c | Fenêtres
| main.c | Point d'entrée
|    gui-bar-item.c | Objets de barre
|    gui-bar-window.c | Fenêtres de barre
|    gui-bar.c | Barres
|    gui-buffer.c | Tampons
|    gui-chat.c | Fonctions pour la discussion (afficher un message, ...)
|    gui-color.c | Fonctions de couleur
|    gui-completion.c | Complétion sur la ligne de commande
|    gui-cursor.c | Mode curseur (mouvement libre du curseur)
|    gui-filter.c | Filtres
|    gui-focus.c | Fonctions concernant le focus (pour les modes curseur et souris)
|    gui-history.c | Commandes/texte sauvés dans les tampons
|    gui-hotlist.c | Gestion de la "hotlist" (liste des tampons avec activité)
|    gui-input.c | Fonctions d'entrée (barre "input")
|    gui-key.c | Fonctions pour le clavier
|    gui-layout.c | Dispositions ("layouts")
|    gui-line.c | Lignes dans les tampons
|    gui-mouse.c | Souris
|    gui-nick.c | Fonctions pour les pseudos
|    gui-nicklist.c | Liste de pseudos dans les tampons
|    gui-window.c | Fenêtres
|    curses/ | Interface Curses
|       gui-curses-bar-window.c | Affichage dans les fenêtres de barre
|       gui-curses-chat.c | Affichage dans la zone de discussion (messages)
|       gui-curses-color.c | Fonctions pour les couleurs
|       gui-curses-key.c | Fonctions pour le clavier (touches par défaut, lecture du clavier)
|       gui-curses-main.c | Boucle principale de WeeChat (attente des évènements clavier/réseau)
|       gui-curses-mouse.c | Souris
|       gui-curses-term.c | Fonctions pour le terminal
|       gui-curses-window.c | Fenêtres
|       main.c | Point d'entrée
|===
[[sources_plugins]]
==== Extensions
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Chemin/fichier | Description
| plugins/ | Racine des extensions
| plugin.c | Gestion des extensions (chargement/déchargement des librairies C dynamiques)
| plugin-api.c | Fonctions supplémentaires pour l'API extension (enveloppes autour des fonctions du cœur de WeeChat)
| plugin-config.c | Options de configuration des extensions (fichier plugins.conf)
| plugin-script.c | Fonctions communes utilisés par les extensions pour les scripts
| plugin-script-api.c | Fonctions pour l'API script : enveloppes autour de quelques fonctions de l'API extension
| weechat-plugin.h | En-tête destiné à être distribué avec les extensions WeeChat, pour les compiler
| alias/ | Extension Alias
| alias.c | Fonctions principales pour les alias
| alias-command.c | Commandes Alias
| alias-completion.c | Complétions pour Alias
| alias-config.c | Options de configuration des alias (fichier alias.conf)
| alias-info.c | Info/infolists/hdata pour les alias
| aspell/ | Extension Aspell
| weechat-aspell.c | Fonctions principales pour Aspell
| weechat-aspell-bar-item.c | Objets de barre Aspell
| weechat-aspell-command.c | Commandes Aspell
| weechat-aspell-completion.c | Complétions pour Aspell
| weechat-aspell-config.c | Options de configuration pour Aspell (fichier aspell.conf)
| weechat-aspell-info.c | Info/infolists/hdata pour Aspell
| weechat-aspell-speller.c | Gestion des correcteurs orthographiques
| charset/ | Extension Charset
| charset.c | Fonctions pour Charset
| exec/ | Extension Exec
| exec.c | Fonctions principales de Exec
| exec-buffer.c | Tampon Exec
| exec-command.c | Commandes pour Exec
| exec-completion.c | Complétions pour Exec
| exec-config.c | Options de configuration pour Exec (fichier exec.conf)
| fifo/ | Extension Fifo
| fifo.c | Fonctions principales de Fifo
| fifo-command.c | Commandes pour Fifo
| fifo-info.c | Info/infolists/hdata pour Fifo
| guile/ | Extension Guile (scheme)
| weechat-guile.c | Fonctions principales pour Guile (chargement/déchargement des scripts, exécution de code Guile)
| weechat-guile-api.c | Fonctions de l'API script Guile
| irc/ | Extension IRC (Internet Relay Chat)
| irc.c | Fonctions principales IRC
| irc-bar-item.c | Objets de barre IRC
| irc-buffer.c | Tampons IRC
| irc-channel.c | Canaux IRC
| irc-color.c | Couleurs IRC
| irc-command.c | Commandes IRC
| irc-completion.c | Complétions IRC
| irc-config.c | Options de configuration IRC (fichier irc.conf)
| irc-ctcp.c | CTCP IRC
| irc-debug.c | Fonctions de debug IRC
| irc-ignore.c | Ignore IRC
| irc-info.c | Info/infolists/hdata pour IRC
| irc-input.c | Entrée de commandes/texte
| irc-message.c | Fonctions pour manipuler les messages IRC
| irc-mode.c | Fonctions pour les modes de canal/pseudo
| irc-msgbuffer.c | Tampon cible pour les messages IRC
| irc-nick.c | Pseudos IRC
| irc-notify.c | Listes de notification IRC
| irc-protocol.c | Protocole IRC (RFCs 1459/2810/2811/2812/2813)
| irc-raw.c | Tampon des données brutes IRC
| irc-redirect.c | Redirection de la sortie des commandes IRC
| irc-sasl.c | Authentification SASL avec le serveur IRC
| irc-server.c | Communication avec le serveur IRC
| irc-upgrade.c | Sauvegarde/restauration des données IRC lors de la mise à jour de WeeChat
| javascript/ | Extension Javascript
| weechat-js.cpp | Fonctions principales pour Javascript (chargement/déchargement des scripts, exécution de code Javascript)
| weechat-js-api.cpp | Fonctions de l'API script Javascript
| weechat-js-v8.cpp | Fonctions Javascript v8
| logger/ | Extension Logger
| logger.c | Fonctions principales pour Logger
| logger-buffer.c | Gestion des listes de tampons pour Logger
| logger-config.c | Options de configuration pour Logger (fichier logger.conf)
| logger-info.c | Info/infolists/hdata pour Logger
| logger-tail.c | Fonctions pour obtenir les dernières lignes d'un fichier
| lua/ | Extension Lua
| weechat-lua.c | Fonctions principales pour Lua (chargement/déchargement des scripts, exécution de code Lua)
| weechat-lua-api.c | Fonctions de l'API script Lua
| perl/ | Extension Perl
| weechat-perl.c | Fonctions principales pour Perl (chargement/déchargement des scripts, exécution de code Perl)
| weechat-perl-api.c | Fonctions de l'API script Perl
| python/ | Extension Python
| weechat-python.c | Fonctions principales pour Python (chargement/déchargement des scripts, exécution de code Python)
| weechat-python-api.c | Fonctions de l'API script Python
| relay/ | Extension Relay (proxy IRC et relai pour des interfaces distantes)
| relay.c | Fonctions principales de Relay
| relay-buffer.c | Tampon Relay
| relay-client.c | Clients du relai
| relay-command.c | Commandes de Relay
| relay-completion.c | Complétions de Relay
| relay-config.c | Options de configuration pour Relay (fichier relay.conf)
| relay-info.c | Info/infolists/hdata pour Relay
| relay-network.c | Fonctions de réseau pour Relay
| relay-raw.c | Tampon des données brutes de Relay
| relay-server.c | Serveur Relay
| relay-upgrade.c | Sauvegarde/restauration des données Relay lors de la mise à jour de WeeChat
| relay-websocket.c | Fonctions pour le serveur WebSocket (RFC 6455)
| irc/ | Proxy IRC
| relay-irc.c | Fonctions principales pour le proxy IRC
| weechat/ | Relai pour les interfaces distantes
| relay-weechat.c | Relai pour les interfaces distantes (fonctions principales)
| relay-weechat-msg.c | Envoi de messages binaires aux clients
| relay-weechat-nicklist.c | Fonctions pour la liste de pseudos
| relay-weechat-protocol.c | Lecture des commandes des clients
| ruby/ | Extension Ruby
| weechat-ruby.c | Fonctions principales pour Ruby (chargement/déchargement des scripts, exécution de code Ruby)
| weechat-ruby-api.c | Fonctions de l'API script Ruby
| script/ | Gestionnaire de scripts
| script.c | Fonctions principales du gestionnaire de scripts
| script-action.c | Actions sur les scripts (chargement/déchargement, installation/suppression, ...)
| script-buffer.c | Tampon pour le gestionnaire de scripts
| script-command.c | Commandes pour le gestionnaire de scripts
| script-completion.c | Complétions pour le gestionnaire de scripts
| script-config.c | Options de configuration pour le gestionnaire de scripts (fichier script.conf)
| script-info.c | Info/infolists/hdata pour le gestionnaire de scripts
| script-repo.c | Téléchargement et lecture du dépôt de scripts
| tcl/ | Extension Tcl
| weechat-tcl.c | Fonctions principales pour Tcl (chargement/déchargement des scripts, exécution de code Tcl)
| weechat-tcl-api.c | Fonctions de l'API script Tcl
| trigger/ | Extension Trigger
| trigger.c | Fonctions principales de Trigger
| trigger-buffer.c | Tampon Trigger
| trigger-callback.c | Callbacks de Trigger
| trigger-command.c | Commandes pour Trigger
| trigger-completion.c | Complétions pour Trigger
| trigger-config.c | Options de configuration pour Trigger (fichier trigger.conf)
| xfer/ | Extension Xfer (IRC DCC fichier/discussion)
| xfer.c | Fonctions principales de Xfer
| xfer-buffer.c | Tampon Xfer
| xfer-chat.c | Discussion DCC
| xfer-command.c | Commandes pour Xfer
| xfer-completion.c | Complétions pour Xfer
| xfer-config.c | Options de configuration pour Xfer (fichier xfer.conf)
| xfer-dcc.c | Transfert de fichier par DCC
| xfer-file.c | Fonctions pour les fichiers dans Xfer
| xfer-info.c | Info/infolists/hdata pour Xfer
| xfer-network.c | Fonctions réseau pour Xfer
| xfer-upgrade.c | Sauvegarde/restauration des données Xfer lors de la mise à jour de WeeChat
|    plugin.c | Gestion des extensions (chargement/déchargement des librairies C dynamiques)
|    plugin-api.c | Fonctions supplémentaires pour l'API extension (enveloppes autour des fonctions du cœur de WeeChat)
|    plugin-config.c | Options de configuration des extensions (fichier plugins.conf)
|    plugin-script.c | Fonctions communes utilisés par les extensions pour les scripts
|    plugin-script-api.c | Fonctions pour l'API script : enveloppes autour de quelques fonctions de l'API extension
|    weechat-plugin.h | En-tête destiné à être distribué avec les extensions WeeChat, pour les compiler
|    alias/ | Extension Alias
|       alias.c | Fonctions principales pour les alias
|       alias-command.c | Commandes Alias
|       alias-completion.c | Complétions pour Alias
|       alias-config.c | Options de configuration des alias (fichier alias.conf)
|       alias-info.c | Info/infolists/hdata pour les alias
|    aspell/ | Extension Aspell
|       weechat-aspell.c | Fonctions principales pour Aspell
|       weechat-aspell-bar-item.c | Objets de barre Aspell
|       weechat-aspell-command.c | Commandes Aspell
|       weechat-aspell-completion.c | Complétions pour Aspell
|       weechat-aspell-config.c | Options de configuration pour Aspell (fichier aspell.conf)
|       weechat-aspell-info.c | Info/infolists/hdata pour Aspell
|       weechat-aspell-speller.c | Gestion des correcteurs orthographiques
|    charset/ | Extension Charset
|       charset.c | Fonctions pour Charset
|    exec/ | Extension Exec
|       exec.c | Fonctions principales de Exec
|       exec-buffer.c | Tampon Exec
|       exec-command.c | Commandes pour Exec
|       exec-completion.c | Complétions pour Exec
|       exec-config.c | Options de configuration pour Exec (fichier exec.conf)
|    fifo/ | Extension Fifo
|       fifo.c | Fonctions principales de Fifo
|       fifo-command.c | Commandes pour Fifo
|       fifo-info.c | Info/infolists/hdata pour Fifo
|    guile/ | Extension Guile (scheme)
|       weechat-guile.c | Fonctions principales pour Guile (chargement/déchargement des scripts, exécution de code Guile)
|       weechat-guile-api.c | Fonctions de l'API script Guile
|    irc/ | Extension IRC (Internet Relay Chat)
|       irc.c | Fonctions principales IRC
|       irc-bar-item.c | Objets de barre IRC
|       irc-buffer.c | Tampons IRC
|       irc-channel.c | Canaux IRC
|       irc-color.c | Couleurs IRC
|       irc-command.c | Commandes IRC
|       irc-completion.c | Complétions IRC
|       irc-config.c | Options de configuration IRC (fichier irc.conf)
|       irc-ctcp.c | CTCP IRC
|       irc-debug.c | Fonctions de debug IRC
|       irc-ignore.c | Ignore IRC
|       irc-info.c | Info/infolists/hdata pour IRC
|       irc-input.c | Entrée de commandes/texte
|       irc-message.c | Fonctions pour manipuler les messages IRC
|       irc-mode.c | Fonctions pour les modes de canal/pseudo
|       irc-msgbuffer.c | Tampon cible pour les messages IRC
|       irc-nick.c | Pseudos IRC
|       irc-notify.c | Listes de notification IRC
|       irc-protocol.c | Protocole IRC (RFCs 1459/2810/2811/2812/2813)
|       irc-raw.c | Tampon des données brutes IRC
|       irc-redirect.c | Redirection de la sortie des commandes IRC
|       irc-sasl.c | Authentification SASL avec le serveur IRC
|       irc-server.c | Communication avec le serveur IRC
|       irc-upgrade.c | Sauvegarde/restauration des données IRC lors de la mise à jour de WeeChat
|    javascript/ | Extension Javascript
|       weechat-js.cpp | Fonctions principales pour Javascript (chargement/déchargement des scripts, exécution de code Javascript)
|       weechat-js-api.cpp | Fonctions de l'API script Javascript
|       weechat-js-v8.cpp | Fonctions Javascript v8
|    logger/ | Extension Logger
|       logger.c | Fonctions principales pour Logger
|       logger-buffer.c | Gestion des listes de tampons pour Logger
|       logger-config.c | Options de configuration pour Logger (fichier logger.conf)
|       logger-info.c | Info/infolists/hdata pour Logger
|       logger-tail.c | Fonctions pour obtenir les dernières lignes d'un fichier
|    lua/ | Extension Lua
|       weechat-lua.c | Fonctions principales pour Lua (chargement/déchargement des scripts, exécution de code Lua)
|       weechat-lua-api.c | Fonctions de l'API script Lua
|    perl/ | Extension Perl
|       weechat-perl.c | Fonctions principales pour Perl (chargement/déchargement des scripts, exécution de code Perl)
|       weechat-perl-api.c | Fonctions de l'API script Perl
|    python/ | Extension Python
|       weechat-python.c | Fonctions principales pour Python (chargement/déchargement des scripts, exécution de code Python)
|       weechat-python-api.c | Fonctions de l'API script Python
|    relay/ | Extension Relay (proxy IRC et relai pour des interfaces distantes)
|       relay.c | Fonctions principales de Relay
|       relay-buffer.c | Tampon Relay
|       relay-client.c | Clients du relai
|       relay-command.c | Commandes de Relay
|       relay-completion.c | Complétions de Relay
|       relay-config.c | Options de configuration pour Relay (fichier relay.conf)
|       relay-info.c | Info/infolists/hdata pour Relay
|       relay-network.c | Fonctions de réseau pour Relay
|       relay-raw.c | Tampon des données brutes de Relay
|       relay-server.c | Serveur Relay
|       relay-upgrade.c | Sauvegarde/restauration des données Relay lors de la mise à jour de WeeChat
|       relay-websocket.c | Fonctions pour le serveur WebSocket (RFC 6455)
|       irc/ | Proxy IRC
|          relay-irc.c | Fonctions principales pour le proxy IRC
|       weechat/ | Relai pour les interfaces distantes
|          relay-weechat.c | Relai pour les interfaces distantes (fonctions principales)
|          relay-weechat-msg.c | Envoi de messages binaires aux clients
|          relay-weechat-nicklist.c | Fonctions pour la liste de pseudos
|          relay-weechat-protocol.c | Lecture des commandes des clients
|    ruby/ | Extension Ruby
|       weechat-ruby.c | Fonctions principales pour Ruby (chargement/déchargement des scripts, exécution de code Ruby)
|       weechat-ruby-api.c | Fonctions de l'API script Ruby
|    script/ | Gestionnaire de scripts
|       script.c | Fonctions principales du gestionnaire de scripts
|       script-action.c | Actions sur les scripts (chargement/déchargement, installation/suppression, ...)
|       script-buffer.c | Tampon pour le gestionnaire de scripts
|       script-command.c | Commandes pour le gestionnaire de scripts
|       script-completion.c | Complétions pour le gestionnaire de scripts
|       script-config.c | Options de configuration pour le gestionnaire de scripts (fichier script.conf)
|       script-info.c | Info/infolists/hdata pour le gestionnaire de scripts
|       script-repo.c | Téléchargement et lecture du dépôt de scripts
|    tcl/ | Extension Tcl
|       weechat-tcl.c | Fonctions principales pour Tcl (chargement/déchargement des scripts, exécution de code Tcl)
|       weechat-tcl-api.c | Fonctions de l'API script Tcl
|    trigger/ | Extension Trigger
|       trigger.c | Fonctions principales de Trigger
|       trigger-buffer.c | Tampon Trigger
|       trigger-callback.c | Callbacks de Trigger
|       trigger-command.c | Commandes pour Trigger
|       trigger-completion.c | Complétions pour Trigger
|       trigger-config.c | Options de configuration pour Trigger (fichier trigger.conf)
|    xfer/ | Extension Xfer (IRC DCC fichier/discussion)
|       xfer.c | Fonctions principales de Xfer
|       xfer-buffer.c | Tampon Xfer
|       xfer-chat.c | Discussion DCC
|       xfer-command.c | Commandes pour Xfer
|       xfer-completion.c | Complétions pour Xfer
|       xfer-config.c | Options de configuration pour Xfer (fichier xfer.conf)
|       xfer-dcc.c | Transfert de fichier par DCC
|       xfer-file.c | Fonctions pour les fichiers dans Xfer
|       xfer-info.c | Info/infolists/hdata pour Xfer
|       xfer-network.c | Fonctions réseau pour Xfer
|       xfer-upgrade.c | Sauvegarde/restauration des données Xfer lors de la mise à jour de WeeChat
|===
[[sources_tests]]
==== Tests
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Chemin/fichier | Description
| tests/ | Racine des tests
| tests.cpp | Programme utilisé pour lancer les tests
| unit/ | Racine des tests unitaires
| core/ | Racine des tests unitaires pour le cœur
| test-arraylist.cpp | Tests : listes avec tableau (« arraylists »)
| test-eval.cpp | Tests : évaluation d'expressions
| test-hashtble.cpp | Tests : tables de hachage
| test-hdata.cpp | Tests : hdata
| test-infolist.cpp | Tests : infolists
| test-list.cpp | Tests : listes
| test-string.cpp | Tests : chaînes
| test-url.cpp | Tests : URLs
| test-utf8.cpp | Tests : UTF-8
| test-util.cpp | Tests : fonctions utiles
|    tests.cpp | Programme utilisé pour lancer les tests
|    unit/ | Racine des tests unitaires
|       core/ | Racine des tests unitaires pour le cœur
|          test-arraylist.cpp | Tests : listes avec tableau (« arraylists »)
|          test-eval.cpp | Tests : évaluation d'expressions
|          test-hashtble.cpp | Tests : tables de hachage
|          test-hdata.cpp | Tests : hdata
|          test-infolist.cpp | Tests : infolists
|          test-list.cpp | Tests : listes
|          test-string.cpp | Tests : chaînes
|          test-url.cpp | Tests : URLs
|          test-utf8.cpp | Tests : UTF-8
|          test-util.cpp | Tests : fonctions utiles
|===
[[documentation_translations]]
@ -336,37 +337,37 @@ Le cœur de WeeChat est situé dans les répertoires suivants :
Fichiers de documentation :
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Chemin/fichier | Description
| doc/ | Documentation
| docinfo.html | Style Asciidoctor
| docgen.py | Script Python pour construire les fichiers dans le répertoire 'autogen/' (voir ci-dessous)
| XX/ | Documentation pour la langue XX (langues : en, fr, de, it, ...)
| cmdline_options.XX.asciidoc | Options de ligne de commande (fichier inclus dans la page de manuel et le guide utilisateur)
| weechat.1.XX.asciidoc | Page de manuel (`man weechat`)
| weechat_dev.XX.asciidoc | Guide du développeur (ce document)
| weechat_faq.XX.asciidoc | FAQ (questions fréquemment posées)
| weechat_plugin_api.XX.asciidoc | Référence API extension
| weechat_quickstart.XX.asciidoc | Guide de démarrage
| weechat_relay_protocol.XX.asciidoc | Protocole Relay (pour les interfaces distantes)
| weechat_scripting.XX.asciidoc | Guide pour scripts
| weechat_tester.XX.asciidoc | Guide du testeur
| weechat_user.XX.asciidoc | Guide utilisateur
| autogen/ | Fichiers automatiquement générés avec le script docgen.py
| user/ | Fichiers automatiquement générés pour le guide utilisateur (ne *JAMAIS* les mettre à jour manuellement !)
| plugin_api/ | Fichiers automatiquement générés pour l'API extension (ne *JAMAIS* les mettre à jour manuellement !)
|    docinfo.html | Style Asciidoctor
|    docgen.py | Script Python pour construire les fichiers dans le répertoire _autogen/_ (voir ci-dessous)
|    XX/ | Documentation pour la langue XX (langues : en, fr, de, it, ...)
|       cmdline_options.XX.asciidoc | Options de ligne de commande (fichier inclus dans la page de manuel et le guide utilisateur)
|       weechat.1.XX.asciidoc | Page de manuel (`man weechat`)
|       weechat_dev.XX.asciidoc | Guide du développeur (ce document)
|       weechat_faq.XX.asciidoc | FAQ (questions fréquemment posées)
|       weechat_plugin_api.XX.asciidoc | Référence API extension
|       weechat_quickstart.XX.asciidoc | Guide de démarrage
|       weechat_relay_protocol.XX.asciidoc | Protocole Relay (pour les interfaces distantes)
|       weechat_scripting.XX.asciidoc | Guide pour scripts
|       weechat_tester.XX.asciidoc | Guide du testeur
|       weechat_user.XX.asciidoc | Guide utilisateur
|       autogen/ | Fichiers automatiquement générés avec le script docgen.py
|          user/ | Fichiers automatiquement générés pour le guide utilisateur (ne *JAMAIS* les mettre à jour manuellement !)
|          plugin_api/ | Fichiers automatiquement générés pour l'API extension (ne *JAMAIS* les mettre à jour manuellement !)
|===
Les traductions pour WeeChat et les extensions sont effectuées avec gettext, les
fichiers sont dans le répertoire 'po/' :
fichiers sont dans le répertoire _po/_ :
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Chemin/fichier | Description
| po/ | Fichiers de traduction (gettext)
| XX.po | Traductions pour la langue XX (fr, de, it, ...), la langue par défaut est l'anglais
| weechat.pot | Modèle pour les traductions (automatiquement généré)
|    XX.po | Traductions pour la langue XX (fr, de, it, ...), la langue par défaut est l'anglais
|    weechat.pot | Modèle pour les traductions (automatiquement généré)
|===
[[coding_rules]]
@ -598,7 +599,7 @@ struct t_hook_fd *new_hook_fd;
new_hook_fd = malloc (sizeof (*new_hook_fd));
----
* Ce code Lisp peut être utilisé dans votre '~/.emacs.el' pour indenter
* Ce code Lisp peut être utilisé dans votre _~/.emacs.el_ pour indenter
correctement si vous utilisez l'éditeur de texte Emacs :
[source,lisp]
@ -627,15 +628,15 @@ Voir http://www.python.org/dev/peps/pep-0008/
==== Fichiers
Les noms de fichiers sont composés de lettres et tirets, avec le format :
'xxx-yyyyy.[ch]', où 'xxx' est le répertoire/composant (peut être une
abréviation) et 'yyyyy' un nom pour le fichier.
_xxx-yyyyy.[ch]_, où _xxx_ est le répertoire/composant (peut être une
abréviation) et _yyyyy_ un nom pour le fichier.
Le fichier principal d'un répertoire peut avoir le même nom que le répertoire,
par exemple 'irc.c' pour l'extension irc.
par exemple _irc.c_ pour l'extension irc.
Exemples :
[width="100%",cols="1l,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| Répertoire | Fichiers
| src/core/ | weechat.c, wee-backtrace.c, wee-command.c, ...
@ -647,18 +648,18 @@ Exemples :
|===
Les en-têtes des fichiers C doivent avoir le même nom que le fichier, par
exemple 'wee-command.h' pour le fichier 'wee-command.c'.
exemple _wee-command.h_ pour le fichier _wee-command.c_.
[[naming_convention_structures]]
==== Structures
Les structures ont le nom 't_X_Y' ou 't_X_Y_Z' :
Les structures ont le nom _t_X_Y_ ou _t_X_Y_Z_ :
* 'X' : répertoire/composant (peut être une abréviation)
* 'Y' : fin du nom de fichier
* 'Z' : nom de la structure (facultatif)
* _X_ : répertoire/composant (peut être une abréviation)
* _Y_ : fin du nom de fichier
* _Z_ : nom de la structure (facultatif)
Exemple : un pseudo IRC (de 'src/plugins/irc/irc-nick.h') :
Exemple : un pseudo IRC (de _src/plugins/irc/irc-nick.h_) :
[source,C]
----
@ -679,16 +680,16 @@ struct t_irc_nick
[[naming_convention_variables]]
==== Variables
Les variables globales (en dehors des fonctions) ont le nom 'X_Y_Z' :
Les variables globales (en dehors des fonctions) ont le nom _X_Y_Z_ :
* 'X' : répertoire/composant (peut être une abréviation)
* 'Y' : fin du nom de fichier
* 'Z' : nom de la variable
* _X_ : répertoire/composant (peut être une abréviation)
* _Y_ : fin du nom de fichier
* _Z_ : nom de la variable
Exception : pour les variables des derniers éléments d'une liste, le nom est
'last_X' (où 'X' est le nom de la variable, en utilisant le singulier).
_last_X_ (où _X_ est le nom de la variable, en utilisant le singulier).
Exemple : fenêtres (de 'src/gui/gui-window.c') :
Exemple : fenêtres (de _src/gui/gui-window.c_) :
[source,C]
----
@ -699,8 +700,8 @@ struct t_gui_window *gui_current_window = NULL; /* current window */
Il n'y a pas de convention pour les variables locales (dans les fonctions).
La seule recommandation est que le nom soit explicite (et pas trop court). +
Cependant, les pointeurs vers les structures sont souvent nommés 'ptr_xxxx', par
exemple un pointeur sur 'struct t_gui_buffer *' sera : '*ptr_buffer'.
Cependant, les pointeurs vers les structures sont souvent nommés _ptr_xxxx_, par
exemple un pointeur sur _struct t_gui_buffer *_ sera : _*ptr_buffer_.
[[naming_convention_functions]]
==== Fonctions
@ -708,7 +709,7 @@ exemple un pointeur sur 'struct t_gui_buffer *' sera : '*ptr_buffer'.
La convention pour les noms des fonctions est le même que celui des
<<naming_convention_variables,variables>>.
Exemple : création d'une nouvelle fenêtre (de 'src/gui/gui-window.c') :
Exemple : création d'une nouvelle fenêtre (de _src/gui/gui-window.c_) :
[source,C]
----
@ -746,7 +747,7 @@ avec un "callback".
La plupart des listes chaînes WeeChat sont doublement chaînées : chaque nœud a
un pointeur vers le nœud précédent/suivant.
Exemple : liste des tampons (de 'src/gui/gui-buffer.h') :
Exemple : liste des tampons (de _src/gui/gui-buffer.h_) :
[source,C]
----
@ -778,10 +779,10 @@ attributs (gras, souligné, ...) et les couleurs à l'écran.
Tous les attributs/couleurs sont préfixés par un caractère dans la chaîne, qui
peuvent être :
* '0x19' : code couleur (suivi par un/des code(s) couleur)
* '0x1A' : activer un attribut (suivi par un attribut sur un caractère)
* '0x1B' : supprimer un attribut (suivi par un attribut sur un caractère)
* '0x1C' : réinitialiser (rien après)
* _0x19_ : code couleur (suivi par un/des code(s) couleur)
* _0x1A_ : activer un attribut (suivi par un attribut sur un caractère)
* _0x1B_ : supprimer un attribut (suivi par un attribut sur un caractère)
* _0x1C_ : réinitialiser (rien après)
Les attributs autorisés sont (un ou plusieurs caractères) :
@ -810,36 +811,36 @@ Toutes les combinaisons sont résumées dans ce tableau :
[width="100%",cols="4,2,2,8",options="header"]
|===
| Code | Exemple | Aires | Description
| hex[19] + STD | hex[19]`01` | chat + barres | Définir les attributs et la couleur en utilisant une option, voir le tableau ci-dessous
| hex[19] + EXT | hex[19]`@00001` | chat | Définir une couleur avec la paire ncurses (utilisé seulement sur le tampon `/color`)
| hex[19] + "F" + (A)STD | hex[19]`F*05` | chat + barres | Définir la couleur de texte (couleur WeeChat)
| hex[19] + "F" + (A)EXT | hex[19]`F@00214` | chat + barres | Définir la couleur de texte (couleur étendue)
| hex[19] + "B" + STD | hex[19]`B05` | chat + barres | Définir la couleur de fond (couleur WeeChat)
| hex[19] + "B" + EXT | hex[19]`B@00124` | chat + barres | Définir le couleur de fond (couleur étendue)
| hex[19] + "*" + (A)STD | hex[19]`*05` | chat + barres | Définir la couleur de texte (couleur WeeChat)
| hex[19] + "*" + (A)EXT | hex[19]`*@00214` | chat + barres | Définir la couleur de texte (couleur étendue)
| hex[19] + "*" + (A)STD + "," + STD | hex[19]`*08,05` | chat + barres | Définir la couleur de texte/fond (couleurs WeeChat)
| hex[19] + "*" + (A)STD + "," + EXT | hex[19]`*01,@00214` | chat + barres | Définir la couleur de texte (couleur WeeChat) et de fond (couleur étendue)
| hex[19] + "*" + (A)EXT + "," + STD | hex[19]`*@00214,05` | chat + barres | Définir la couleur de texte (couleur étendue) et de fond (couleur WeeChat)
| hex[19] + "*" + (A)EXT + "," + EXT | hex[19]`*@00214,@00017` | chat + barres | Définir la couleur de texte/fond (couleurs étendues)
| hex[19] + "b" + "F" | hex[19]`bF` | barres | Définir la couleur de texte de la barre
| hex[19] + "b" + "D" | hex[19]`bD` | barres | Définir la couleur du délimiteur de la barre
| hex[19] + "b" + "B" | hex[19]`bB` | barres | Définir la couleur de fond de la barre
| hex[19] + "b" + "_" | hex[19]`b_` | barre input | Caractère de démarrage dans l'entrée (utilisé seulement dans l'objet "input_text")
| hex[19] + "b" + "-" | hex[19]`b-` | barre input | Caractère de démarrage caché dans l'entrée (utilisé seulement dans l'objet "input_text")
| hex[19] + "b" + "#" | hex[19]`b#` | barre input | Caractère de déplacement du curseur (utilisé seulement dans l'objet "input_text")
| hex[19] + "b" + "i" | hex[19]`bi` | barres | Début d'objet
| hex[19] + "b" + "l" (lower L) | hex[19]`bl` | barres | Ligne de démarrage d'objet
| hex[19] + "E" | hex[19]`E` | chat + barres | Texte mis en valeur _(WeeChat ≥ 0.4.2)_
| hex[19] + hex[1C] | hex[19]hex[1C] | chat + barres | Réinitialiser la couleur (garder les attributs)
| hex[1A] + ATTR | hex[1A]`*` | chat + barres | Activer un attribut
| hex[1B] + ATTR | hex[1B]`*` | chat + barres | Supprimer un attribut
| hex[1C] | hex[1C] | chat + barres | Réinitialiser les attributs et la couleur
| Code | Exemple | Aires | Description
| [hex]#19# + STD | [hex]#19# `01` | chat + barres | Définir les attributs et la couleur en utilisant une option, voir le tableau ci-dessous
| [hex]#19# + EXT | [hex]#19# `@00001` | chat | Définir une couleur avec la paire ncurses (utilisé seulement sur le tampon `/color`)
| [hex]#19# + "F" + (A)STD | [hex]#19# `F*05` | chat + barres | Définir la couleur de texte (couleur WeeChat)
| [hex]#19# + "F" + (A)EXT | [hex]#19# `F@00214` | chat + barres | Définir la couleur de texte (couleur étendue)
| [hex]#19# + "B" + STD | [hex]#19# `B05` | chat + barres | Définir la couleur de fond (couleur WeeChat)
| [hex]#19# + "B" + EXT | [hex]#19# `B@00124` | chat + barres | Définir le couleur de fond (couleur étendue)
| [hex]#19# + "*" + (A)STD | [hex]#19# `*05` | chat + barres | Définir la couleur de texte (couleur WeeChat)
| [hex]#19# + "*" + (A)EXT | [hex]#19# `*@00214` | chat + barres | Définir la couleur de texte (couleur étendue)
| [hex]#19# + "*" + (A)STD + "," + STD | [hex]#19# `*08,05` | chat + barres | Définir la couleur de texte/fond (couleurs WeeChat)
| [hex]#19# + "*" + (A)STD + "," + EXT | [hex]#19# `*01,@00214` | chat + barres | Définir la couleur de texte (couleur WeeChat) et de fond (couleur étendue)
| [hex]#19# + "*" + (A)EXT + "," + STD | [hex]#19# `*@00214,05` | chat + barres | Définir la couleur de texte (couleur étendue) et de fond (couleur WeeChat)
| [hex]#19# + "*" + (A)EXT + "," + EXT | [hex]#19# `*@00214,@00017` | chat + barres | Définir la couleur de texte/fond (couleurs étendues)
| [hex]#19# + "b" + "F" | [hex]#19# `bF` | barres | Définir la couleur de texte de la barre
| [hex]#19# + "b" + "D" | [hex]#19# `bD` | barres | Définir la couleur du délimiteur de la barre
| [hex]#19# + "b" + "B" | [hex]#19# `bB` | barres | Définir la couleur de fond de la barre
| [hex]#19# + "b" + "_" | [hex]#19# `b_` | barre input | Caractère de démarrage dans l'entrée (utilisé seulement dans l'objet "input_text")
| [hex]#19# + "b" + "-" | [hex]#19# `b-` | barre input | Caractère de démarrage caché dans l'entrée (utilisé seulement dans l'objet "input_text")
| [hex]#19# + "b" + "#" | [hex]#19# `b#` | barre input | Caractère de déplacement du curseur (utilisé seulement dans l'objet "input_text")
| [hex]#19# + "b" + "i" | [hex]#19# `bi` | barres | Début d'objet
| [hex]#19# + "b" + "l" (lower L) | [hex]#19# `bl` | barres | Ligne de démarrage d'objet
| [hex]#19# + "E" | [hex]#19# `E` | chat + barres | Texte mis en valeur _(WeeChat ≥ 0.4.2)_
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + barres | Réinitialiser la couleur (garder les attributs)
| [hex]#1A# + ATTR | [hex]#1A# `*` | chat + barres | Activer un attribut
| [hex]#1B# + ATTR | [hex]#1B# `*` | chat + barres | Supprimer un attribut
| [hex]#1C# | [hex]#1C# | chat + barres | Réinitialiser les attributs et la couleur
|===
Les codes couleur utilisant des options (voir 't_gui_color_enum', dans le
fichier 'src/gui/gui-color.h') :
Les codes couleur utilisant des options (voir _t_gui_color_enum_, dans le
fichier _src/gui/gui-color.h_) :
[width="70%",cols="^1m,10",options="header"]
|===
@ -919,31 +920,31 @@ Exemples de codes couleur :
[width="70%",cols="1,2",options="header"]
|===
| Code | Description
| hex[19]`01` | Couleur de l'option "01" (texte de discussion)
| hex[19]`*08,03` | Jaune sur rouge
| hex[19]`*@00214` | Orange (couleur étendue 214)
| hex[19]`*@*_00214,@00017` | Orange (214) gras souligné sur bleu foncé (17)
| hex[1A]`_` | Activer le souligné
| hex[1B]`_` | Supprimer le souligné
| hex[1C] | Réinitialiser les attributs et la couleur
| Code | Description
| [hex]#19# `01` | Couleur de l'option "01" (texte de discussion)
| [hex]#19# `*08,03` | Jaune sur rouge
| [hex]#19# `*@00214` | Orange (couleur étendue 214)
| [hex]#19# `*@*_00214,@00017` | Orange (214) gras souligné sur bleu foncé (17)
| [hex]#1A# `_` | Activer le souligné
| [hex]#1B# `_` | Supprimer le souligné
| [hex]#1C# | Réinitialiser les attributs et la couleur
|===
[[plugin_internals]]
== Intérieur des extensions
Le fichier 'src/plugins/weechat-plugin.h' définit et exporte toutes les
Le fichier _src/plugins/weechat-plugin.h_ définit et exporte toutes les
fonctions disponibles dans l'API.
Une structure appelée 't_weechat_plugin' est utilisée pour stocker les
Une structure appelée _t_weechat_plugin_ est utilisée pour stocker les
informations sur l'extension (nom de fichier, nom, auteur, description, ...) et
toutes les fonctions de l'API, sous forme de pointeurs vers les fonctions
WeeChat.
Et puis des macros sont utilisées pour appeler ces fonctions.
Par exemple, la fonction 'hook_timer' est définie dans la structure
't_weechat_plugin' comme ceci :
Par exemple, la fonction _hook_timer_ est définie dans la structure
_t_weechat_plugin_ comme ceci :
[source,C]
----
@ -1001,13 +1002,13 @@ Pour un bug Savannah :
component: fix a problem (bug #12345)
----
'component' est :
_component_ est :
* pour le cœur WeeChat : 'core' (les fichiers dans le répertoire racine, 'po/'
et 'src/', sauf 'src/plugins/')
* fichiers de documentation : 'doc' (fichiers dans le répertoire 'doc/')
* nom d'une extension : 'irc', 'python', 'relay', ... (fichiers dans le
répertoire 'src/plugins/')
* pour le cœur WeeChat : _core_ (les fichiers dans le répertoire racine, _po/_
et _src/_, sauf _src/plugins/_)
* fichiers de documentation : _doc_ (fichiers dans le répertoire _doc/_)
* nom d'une extension : _irc_, _python_, _relay_, ... (fichiers dans le
répertoire _src/plugins/_)
Quelques règles à suivre :
@ -1035,7 +1036,7 @@ core: update Japanese translations (patch #7783)
[[gettext]]
==== Gettext
Les fichiers gettext sont dans le répertoire 'po/'.
Les fichiers gettext sont dans le répertoire _po/_.
Si vous souhaitez initialiser une nouvelle langue, utilisez la commande
`msginit`. Par exemple pour créer un fichier qui est prêt à traduire en
@ -1050,7 +1051,7 @@ La langue de base pour WeeChat est l'anglais, donc vous devez évidemment
comprendre parfaitement l'anglais pour traduire vers votre langue.
Une fois terminé, vous *devez* vérifier votre fichier avec le script
'msgcheck.py' (https://github.com/flashcode/msgcheck) :
_msgcheck.py_ (https://github.com/flashcode/msgcheck) :
----
$ msgcheck.py xx.po
@ -1059,13 +1060,13 @@ $ msgcheck.py xx.po
[[build_autogen_files]]
===== Construire les fichiers auto-générés
Les fichiers dans le répertoire 'doc/XX/autogen/' sont automatiquement générés
par le script 'doc/docgen.py'.
Les fichiers dans le répertoire _doc/XX/autogen/_ sont automatiquement générés
par le script _doc/docgen.py_.
Copiez ce script python dans votre répertoire python (par exemple
'~/.weechat/python').
_~/.weechat/python_).
Vous pouvez alors charger le script dans votre WeeChat, et configurer le chemin
vers votre répertoire '/doc' :
vers votre répertoire _/doc_ :
----
/python load docgen.py
@ -1089,11 +1090,11 @@ données actuellement en mémoire.
[[asciidoc]]
==== Asciidoc
Les fichiers asciidoc donc dans le répertoire 'doc/XX/' où 'XX' est la langue
Les fichiers Asciidoc donc dans le répertoire _doc/XX/_ où _XX_ est la langue
(en, fr, de, it, ...).
Faites d'abord une copie du fichier asciidoc en anglais (dans le répertoire
'doc/en/'), puis travaillez dessus.
_doc/en/_), puis travaillez dessus.
Les traductions manquantes dans les fichiers sont indiquées par cette chaîne :

View File

@ -5,6 +5,7 @@
:toc: left
:toclevels: 3
:toc-title: 目次
:sectnums:
:docinfo1:
@ -45,7 +46,7 @@ weechat::
ソースコードと文書を含むコアリポジトリ
scripts::
weechat.org に投稿された '公式' スクリプト
weechat.org に投稿された _公式_ スクリプト
weechat.org::
WeeChat ウェブサイトのソースコード: https://weechat.org/
@ -56,42 +57,42 @@ weercd::
qweechat::
WeeChat の Qt リモート GUI。
このマニュアルは 'weechat' リポジトリだけを説明しています。
このマニュアルは _weechat_ リポジトリだけを説明しています。
[[overview]]
=== 概要
主な WeeChat ディレクトリは:
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| ディレクトリ | 説明
| src/ | ソースコードのルートディレクトリ
| core/ | コア関数: エントリポイント、内部構造体
| gui/ | バッファ、ウィンドウ、... を操作する関数 (全てのインターフェイスで使う)
| curses/ | curses インターフェイス
| plugins/ | プラグインとスクリプト向け API
| alias/ | alias プラグイン
| aspell/ | aspell プラグイン
| charset/ | charset プラグイン
| exec/ | exec プラグイン
| fifo/ | fifo プラグイン (WeeChat にコマンドを送信する FIFO パイプ)
| guile/ | guile (scheme) スクリプト用 API
| irc/ | IRC (Internet Relay Chat) プラグイン
| javascript/ | javascript スクリプト用 API
| logger/ | logger プラグイン (表示されたメッセージをファイルに書き込む)
| lua/ | lua スクリプト用 API
| perl/ | perl スクリプト用 API
| python/ | python スクリプト用 API
| relay/ | relay プラグイン (irc プロキシ + リモートインターフェイス用の中継)
| ruby/ | ruby スクリプト用 API
| script/ | スクリプトマネージャ
| tcl/ | tcl スクリプト用 API
| trigger/ | trigger プラグイン
| xfer/ | xfer (IRC DCC ファイル/チャット)
|    core/ | コア関数: エントリポイント、内部構造体
|    gui/ | バッファ、ウィンドウ、... を操作する関数 (全てのインターフェイスで使う)
|       curses/ | curses インターフェイス
|    plugins/ | プラグインとスクリプト向け API
|       alias/ | alias プラグイン
|       aspell/ | aspell プラグイン
|       charset/ | charset プラグイン
|       exec/ | exec プラグイン
|       fifo/ | fifo プラグイン (WeeChat にコマンドを送信する FIFO パイプ)
|       guile/ | guile (scheme) スクリプト用 API
|       irc/ | IRC (Internet Relay Chat) プラグイン
|       javascript/ | javascript スクリプト用 API
|       logger/ | logger プラグイン (表示されたメッセージをファイルに書き込む)
|       lua/ | lua スクリプト用 API
|       perl/ | perl スクリプト用 API
|       python/ | python スクリプト用 API
|       relay/ | relay プラグイン (irc プロキシ + リモートインターフェイス用の中継)
|       ruby/ | ruby スクリプト用 API
|       script/ | スクリプトマネージャ
|       tcl/ | tcl スクリプト用 API
|       trigger/ | trigger プラグイン
|       xfer/ | xfer (IRC DCC ファイル/チャット)
| tests/ | テスト
| unit/ | 単体テスト
| core/ | コア関数の単体テスト
|    unit/ | 単体テスト
|       core/ | コア関数の単体テスト
| doc/ | 文書
| po/ | 翻訳ファイル (gettext)
| debian/ | Debian パッケージ用
@ -105,234 +106,234 @@ qweechat::
WeeChat "core" は以下のディレクトリに配置されています:
* 'src/core/': コア関数 (データ操作用)
* 'src/gui/': インターフェイスの関数 (バッファ、ウィンドウ、...)
* _src/core/_: コア関数 (データ操作用)
* _src/gui/_: インターフェイスの関数 (バッファ、ウィンドウ、...)
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| パス/ファイル名 | 説明
| core/ | コア関数: エントリポイント、内部構造体
| wee-arraylist.c | 配列リスト
| wee-backtrace.c | クラッシュした際にバックトレースを表示
| wee-command.c | WeeChat コアコマンド
| wee-completion.c | デフォルト補完
| wee-config-file.c | 設定ファイル管理
| wee-config.c | WeeChat コアの設定オプション (weechat.conf ファイル)
| wee-debug.c | デバッグ用関数
| wee-eval.c | 内部変数へのリファレンスを含む式を評価
| wee-hashtable.c | ハッシュテーブル
| wee-hdata.c | hdata (ハッシュテーブルを用いて直接データを読む)
| wee-hook.c | フック
| wee-infolist.c | インフォリスト (オブジェクトに関するデータを含むリスト)
| wee-input.c | コマンドおよびテキストの入力
| wee-list.c | ソート済みリスト
| wee-log.c | WeeChat ログファイル (weechat.log) に書き込む
| wee-network.c | ネットワーク関数 (サーバやプロキシへの接続)
| wee-proxy.c | プロキシ管理
| wee-secure.c | 安全なデータオプション (sec.conf ファイル)
| wee-string.c | 文字列関数
| wee-upgrade-file.c | 内部アップグレードシステム
| wee-upgrade.c | WeeChat コアのアップグレード (バッファ、行、履歴、...)
| wee-url.c | URL 転送 (libcurl を使う)
| wee-utf8.c | UTF-8 関数
| wee-util.c | その他の関数
| wee-version.c | WeeChat バージョンについての関数
| weechat.c | 主要関数: コマンドラインオプション、起動
|    wee-arraylist.c | 配列リスト
|    wee-backtrace.c | クラッシュした際にバックトレースを表示
|    wee-command.c | WeeChat コアコマンド
|    wee-completion.c | デフォルト補完
|    wee-config-file.c | 設定ファイル管理
|    wee-config.c | WeeChat コアの設定オプション (weechat.conf ファイル)
|    wee-debug.c | デバッグ用関数
|    wee-eval.c | 内部変数へのリファレンスを含む式を評価
|    wee-hashtable.c | ハッシュテーブル
|    wee-hdata.c | hdata (ハッシュテーブルを用いて直接データを読む)
|    wee-hook.c | フック
|    wee-infolist.c | インフォリスト (オブジェクトに関するデータを含むリスト)
|    wee-input.c | コマンドおよびテキストの入力
|    wee-list.c | ソート済みリスト
|    wee-log.c | WeeChat ログファイル (weechat.log) に書き込む
|    wee-network.c | ネットワーク関数 (サーバやプロキシへの接続)
|    wee-proxy.c | プロキシ管理
|    wee-secure.c | 安全なデータオプション (sec.conf ファイル)
|    wee-string.c | 文字列関数
|    wee-upgrade-file.c | 内部アップグレードシステム
|    wee-upgrade.c | WeeChat コアのアップグレード (バッファ、行、履歴、...)
|    wee-url.c | URL 転送 (libcurl を使う)
|    wee-utf8.c | UTF-8 関数
|    wee-util.c | その他の関数
|    wee-version.c | WeeChat バージョンについての関数
|    weechat.c | 主要関数: コマンドラインオプション、起動
| gui/ | バッファ、ウィンドウなどの関数 (全てのインターフェイスで利用)
| gui-bar-item.c | バー要素
| gui-bar-window.c | バーウィンドウ
| gui-bar.c | バー
| gui-buffer.c | バッファ
| gui-chat.c | チャット関数 (メッセージの表示、...)
| gui-color.c | 色関数
| gui-completion.c | コマンドラインの補完
| gui-cursor.c | カーソルモード (カーソルを自由に移動)
| gui-filter.c | フィルタ
| gui-focus.c | フォーカスについての関数 (カーソルモードとマウス用)
| gui-history.c | コマンド及びバッファに保存されたテキスト
| gui-hotlist.c | ホットリスト管理 (活発なバッファのリスト)
| gui-input.c | 入力関数 (入力バー)
| gui-key.c | キーボード関数
| gui-layout.c | レイアウト
| gui-line.c | バッファ中の行
| gui-mouse.c | マウス
| gui-nick.c | ニックネーム関数
| gui-nicklist.c | バッファのニックネームリスト
| gui-window.c | ウィンドウ
| curses/ | curses インターフェイス
| gui-curses-bar-window.c | バーウィンドウへの表示
| gui-curses-chat.c | チャットエリアへの表示 (メッセージ)
| gui-curses-color.c | 色関数
| gui-curses-key.c | キーボード関数 (デフォルトキー、入力の読み取り)
| gui-curses-main.c | WeeChat メインループ (キーボードやネットワークイベントの待ち受け)
| gui-curses-mouse.c | マウス
| gui-curses-term.c | 端末についての関数
| gui-curses-window.c | ウィンドウ
| main.c | エントリポイント
|    gui-bar-item.c | バー要素
|    gui-bar-window.c | バーウィンドウ
|    gui-bar.c | バー
|    gui-buffer.c | バッファ
|    gui-chat.c | チャット関数 (メッセージの表示、...)
|    gui-color.c | 色関数
|    gui-completion.c | コマンドラインの補完
|    gui-cursor.c | カーソルモード (カーソルを自由に移動)
|    gui-filter.c | フィルタ
|    gui-focus.c | フォーカスについての関数 (カーソルモードとマウス用)
|    gui-history.c | コマンド及びバッファに保存されたテキスト
|    gui-hotlist.c | ホットリスト管理 (活発なバッファのリスト)
|    gui-input.c | 入力関数 (入力バー)
|    gui-key.c | キーボード関数
|    gui-layout.c | レイアウト
|    gui-line.c | バッファ中の行
|    gui-mouse.c | マウス
|    gui-nick.c | ニックネーム関数
|    gui-nicklist.c | バッファのニックネームリスト
|    gui-window.c | ウィンドウ
|    curses/ | curses インターフェイス
|       gui-curses-bar-window.c | バーウィンドウへの表示
|       gui-curses-chat.c | チャットエリアへの表示 (メッセージ)
|       gui-curses-color.c | 色関数
|       gui-curses-key.c | キーボード関数 (デフォルトキー、入力の読み取り)
|       gui-curses-main.c | WeeChat メインループ (キーボードやネットワークイベントの待ち受け)
|       gui-curses-mouse.c | マウス
|       gui-curses-term.c | 端末についての関数
|       gui-curses-window.c | ウィンドウ
|       main.c | エントリポイント
|===
[[sources_plugins]]
==== プラグイン
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| パス/ファイル名 | 説明
| plugins/ | プラグインのルートディレクトリ
| plugin.c | プラグイン管理 (動的 C 言語ライブラリのロード/アンロード)
| plugin-api.c | プラグイン API の追加関数 (WeeChat コア関数のラッパー)
| plugin-config.c | プラグイン設定オプション (plugins.conf ファイル)
| plugin-script.c | スクリプトプラグインの共用関数
| plugin-script-api.c | スクリプト API 関数: 一部のプラグイン API 関数のラッパー
| weechat-plugin.h | WeeChat プラグインと一緒に配布されるヘッダファイル、プラグインのコンパイルに必要
| alias/ | alias プラグイン
| alias.c | alias の主要関数
| alias-command.c | alias コマンド
| alias-completion.c | alias 補完
| alias-config.c | alias 設定オプション (alias.conf ファイル)
| alias-info.c | alias の情報/インフォリスト/hdata
| aspell/ | aspell プラグイン
| weechat-aspell.c | aspell の主要関数
| weechat-aspell-bar-item.c | aspell バー要素
| weechat-aspell-command.c | aspell コマンド
| weechat-aspell-completion.c | aspell 補完
| weechat-aspell-config.c | aspell 設定オプション (aspell.conf ファイル)
| weechat-aspell-info.c | aspell の情報/インフォリスト/hdata
| weechat-aspell-speller.c | スペルチェッカ管理
| charset/ | charset プラグイン
| charset.c | charset 関数
| exec/ | exec プラグイン
| exec.c | exec の主要関数
| exec-buffer.c | exec バッファ
| exec-command.c | exec コマンド
| exec-completion.c | exec 補完
| exec-config.c | exec 設定オプション (exec.conf ファイル)
| fifo/ | fifo プラグイン
| fifo.c | fifo の主要関数
| fifo-command.c | fifo コマンド
| fifo-info.c | fifo の情報/インフォリスト/hdata
| guile/ | guile (scheme) プラグイン
| weechat-guile.c | guile の主要関数 (スクリプトのロード/アンロード、guile コードの実行)
| weechat-guile-api.c | guile スクリプト作成 API 関数
| irc/ | IRC (Internet Relay Chat) プラグイン
| irc.c | IRC の主要関数
| irc-bar-item.c | IRC バー要素
| irc-buffer.c | IRC バッファ
| irc-channel.c | IRC チャンネル
| irc-color.c | IRC 色
| irc-command.c | IRC コマンド
| irc-completion.c | IRC 補完
| irc-config.c | IRC 設定オプション (irc.conf ファイル)
| irc-ctcp.c | IRC CTCP
| irc-debug.c | IRC デバッグ関数
| irc-ignore.c | IRC 無視
| irc-info.c | IRC の情報/インフォリスト/hdata
| irc-input.c | コマンドおよびテキストの入力
| irc-message.c | IRC メッセージを操作する関数
| irc-mode.c | チャンネルおよびニックネームのモードを操作する関数
| irc-msgbuffer.c | IRC メッセージを送るバッファ
| irc-nick.c | IRC ニックネーム
| irc-notify.c | IRC 通知リスト
| irc-protocol.c | IRC プロトコル (RFC 1459/2810/2811/2812/2813)
| irc-raw.c | IRC 生バッファ
| irc-redirect.c | IRC コマンド出力のリダイレクト
| irc-sasl.c | IRC サーバに対する SASL 認証
| irc-server.c | IRC サーバとの入出力通信
| irc-upgrade.c | WeeChat をアップグレードする際の IRC データの保存および読み込み
| javascript/ | javascript プラグイン
| weechat-js.cpp | javascript の主要関数 (スクリプトのロード/アンロード、javascript コードの実行)
| weechat-js-api.cpp | javascript スクリプト作成 API 関数
| weechat-js-v8.cpp | javascript v8 関数
| logger/ | logger プラグイン
| logger.c | logger の主要関数
| logger-buffer.c | logger バッファリスト管理
| logger-config.c | logger 設定オプション (logger.conf ファイル)
| logger-info.c | logger の情報/インフォリスト/hdata
| logger-tail.c | ファイル末尾の行を返す
| lua/ | lua プラグイン
| weechat-lua.c | lua の主要関数 (スクリプトのロード/アンロード、lua コードの実行)
| weechat-lua-api.c | lua スクリプト作成 API 関数
| perl/ | perl プラグイン
| weechat-perl.c | perl の主要関数 (スクリプトのロード/アンロード、perl コードの実行)
| weechat-perl-api.c | perl スクリプト作成 API 関数
| python/ | python プラグイン
| weechat-python.c | python の主要関数 (スクリプトのロード/アンロード、python コードの実行)
| weechat-python-api.c | python スクリプト作成 API 関数
| relay/ | relay プラグイン (IRC プロキシとリモートインターフェイスへの中継)
| relay.c | relay の主要関数
| relay-buffer.c | relay バッファ
| relay-client.c | relay クライアント
| relay-command.c | relay コマンド
| relay-completion.c | relay 補完
| relay-config.c | relay 設定オプション (relay.conf ファイル)
| relay-info.c | relay の情報/インフォリスト/hdata
| relay-network.c | relay 用のネットワーク関数
| relay-raw.c | relay 生バッファ
| relay-server.c | relay サーバ
| relay-upgrade.c | WeeChat をアップグレードする際にデータを保存/回復
| relay-websocket.c | リレー用の websocket サーバ関数 (RFC 6455)
| irc/ | IRC プロキシ
| relay-irc.c | IRC プロキシの主要関数
| weechat/ | リモートインターフェイスへの中継
| relay-weechat.c | リモートインターフェイスへの中継 (主要関数)
| relay-weechat-msg.c | クライアントにバイナリメッセージを送信
| relay-weechat-nicklist.c | ニックネームリスト関数
| relay-weechat-protocol.c | クライアントからのコマンドを読み取る
| ruby/ | ruby プラグイン
| weechat-ruby.c | ruby の主要関数 (スクリプトのロード/アンロード、ruby コードの実行)
| weechat-ruby-api.c | ruby スクリプト作成 API 関数
| script/ | スクリプトマネージャ
| script.c | スクリプトマネージャの主要関数
| script-action.c | スクリプトに対する操作 (ロード/アンロード、インストール/削除、...)
| script-buffer.c | スクリプトマネージャ用のバッファ
| script-command.c | スクリプトマネージャ用のコマンド
| script-completion.c | スクリプトマネージャ用の補完
| script-config.c | スクリプトマネージャ用の設定オプション (script.conf ファイル)
| script-info.c | スクリプトマネージャの情報/インフォリスト/hdata
| script-repo.c | リポジトリファイルのダウンロードと読み込み
| tcl/ | tcl プラグイン
| weechat-tcl.c | tcl の主要関数 (スクリプトのロード/アンロード、tcl コードの実行)
| weechat-tcl-api.c | tcl スクリプト作成 API 関数
| trigger/ | trigger プラグイン
| trigger.c | trigger の主要関数
| trigger-buffer.c | trigger バッファ
| trigger-callback.c | trigger コールバック
| trigger-command.c | trigger コマンド
| trigger-completion.c | trigger 補完
| trigger-config.c | trigger 設定オプション (trigger.conf ファイル)
| xfer/ | xfer プラグイン (IRC DCC ファイル/チャット)
| xfer.c | xfer の主要関数
| xfer-buffer.c | xfer バッファ
| xfer-chat.c | xfer DCC チャット
| xfer-command.c | xfer コマンド
| xfer-completion.c | xfer 補完
| xfer-config.c | xfer 設定オプション (xfer.conf ファイル)
| xfer-dcc.c | DCC ファイル転送
| xfer-file.c | xfer のファイル関数
| xfer-info.c | xfer の情報/インフォリスト/hdata
| xfer-network.c | xfer のネットワーク関数
| xfer-upgrade.c | WeeChat をアップグレードする際の xfer データの保存および回復
|    plugin.c | プラグイン管理 (動的 C 言語ライブラリのロード/アンロード)
|    plugin-api.c | プラグイン API の追加関数 (WeeChat コア関数のラッパー)
|    plugin-config.c | プラグイン設定オプション (plugins.conf ファイル)
|    plugin-script.c | スクリプトプラグインの共用関数
|    plugin-script-api.c | スクリプト API 関数: 一部のプラグイン API 関数のラッパー
|    weechat-plugin.h | WeeChat プラグインと一緒に配布されるヘッダファイル、プラグインのコンパイルに必要
|    alias/ | alias プラグイン
|       alias.c | alias の主要関数
|       alias-command.c | alias コマンド
|       alias-completion.c | alias 補完
|       alias-config.c | alias 設定オプション (alias.conf ファイル)
|       alias-info.c | alias の情報/インフォリスト/hdata
|    aspell/ | aspell プラグイン
|       weechat-aspell.c | aspell の主要関数
|       weechat-aspell-bar-item.c | aspell バー要素
|       weechat-aspell-command.c | aspell コマンド
|       weechat-aspell-completion.c | aspell 補完
|       weechat-aspell-config.c | aspell 設定オプション (aspell.conf ファイル)
|       weechat-aspell-info.c | aspell の情報/インフォリスト/hdata
|       weechat-aspell-speller.c | スペルチェッカ管理
|    charset/ | charset プラグイン
|       charset.c | charset 関数
|    exec/ | exec プラグイン
|       exec.c | exec の主要関数
|       exec-buffer.c | exec バッファ
|       exec-command.c | exec コマンド
|       exec-completion.c | exec 補完
|       exec-config.c | exec 設定オプション (exec.conf ファイル)
|    fifo/ | fifo プラグイン
|       fifo.c | fifo の主要関数
|       fifo-command.c | fifo コマンド
|       fifo-info.c | fifo の情報/インフォリスト/hdata
|    guile/ | guile (scheme) プラグイン
|       weechat-guile.c | guile の主要関数 (スクリプトのロード/アンロード、guile コードの実行)
|       weechat-guile-api.c | guile スクリプト作成 API 関数
|    irc/ | IRC (Internet Relay Chat) プラグイン
|       irc.c | IRC の主要関数
|       irc-bar-item.c | IRC バー要素
|       irc-buffer.c | IRC バッファ
|       irc-channel.c | IRC チャンネル
|       irc-color.c | IRC 色
|       irc-command.c | IRC コマンド
|       irc-completion.c | IRC 補完
|       irc-config.c | IRC 設定オプション (irc.conf ファイル)
|       irc-ctcp.c | IRC CTCP
|       irc-debug.c | IRC デバッグ関数
|       irc-ignore.c | IRC 無視
|       irc-info.c | IRC の情報/インフォリスト/hdata
|       irc-input.c | コマンドおよびテキストの入力
|       irc-message.c | IRC メッセージを操作する関数
|       irc-mode.c | チャンネルおよびニックネームのモードを操作する関数
|       irc-msgbuffer.c | IRC メッセージを送るバッファ
|       irc-nick.c | IRC ニックネーム
|       irc-notify.c | IRC 通知リスト
|       irc-protocol.c | IRC プロトコル (RFC 1459/2810/2811/2812/2813)
|       irc-raw.c | IRC 生バッファ
|       irc-redirect.c | IRC コマンド出力のリダイレクト
|       irc-sasl.c | IRC サーバに対する SASL 認証
|       irc-server.c | IRC サーバとの入出力通信
|       irc-upgrade.c | WeeChat をアップグレードする際の IRC データの保存および読み込み
|    javascript/ | javascript プラグイン
|       weechat-js.cpp | javascript の主要関数 (スクリプトのロード/アンロード、javascript コードの実行)
|       weechat-js-api.cpp | javascript スクリプト作成 API 関数
|       weechat-js-v8.cpp | javascript v8 関数
|    logger/ | logger プラグイン
|       logger.c | logger の主要関数
|       logger-buffer.c | logger バッファリスト管理
|       logger-config.c | logger 設定オプション (logger.conf ファイル)
|       logger-info.c | logger の情報/インフォリスト/hdata
|       logger-tail.c | ファイル末尾の行を返す
|    lua/ | lua プラグイン
|       weechat-lua.c | lua の主要関数 (スクリプトのロード/アンロード、lua コードの実行)
|       weechat-lua-api.c | lua スクリプト作成 API 関数
|    perl/ | perl プラグイン
|       weechat-perl.c | perl の主要関数 (スクリプトのロード/アンロード、perl コードの実行)
|       weechat-perl-api.c | perl スクリプト作成 API 関数
|    python/ | python プラグイン
|       weechat-python.c | python の主要関数 (スクリプトのロード/アンロード、python コードの実行)
|       weechat-python-api.c | python スクリプト作成 API 関数
|    relay/ | relay プラグイン (IRC プロキシとリモートインターフェイスへの中継)
|       relay.c | relay の主要関数
|       relay-buffer.c | relay バッファ
|       relay-client.c | relay クライアント
|       relay-command.c | relay コマンド
|       relay-completion.c | relay 補完
|       relay-config.c | relay 設定オプション (relay.conf ファイル)
|       relay-info.c | relay の情報/インフォリスト/hdata
|       relay-network.c | relay 用のネットワーク関数
|       relay-raw.c | relay 生バッファ
|       relay-server.c | relay サーバ
|       relay-upgrade.c | WeeChat をアップグレードする際にデータを保存/回復
|       relay-websocket.c | リレー用の websocket サーバ関数 (RFC 6455)
|       irc/ | IRC プロキシ
|          relay-irc.c | IRC プロキシの主要関数
|       weechat/ | リモートインターフェイスへの中継
|          relay-weechat.c | リモートインターフェイスへの中継 (主要関数)
|          relay-weechat-msg.c | クライアントにバイナリメッセージを送信
|          relay-weechat-nicklist.c | ニックネームリスト関数
|          relay-weechat-protocol.c | クライアントからのコマンドを読み取る
|    ruby/ | ruby プラグイン
|       weechat-ruby.c | ruby の主要関数 (スクリプトのロード/アンロード、ruby コードの実行)
|       weechat-ruby-api.c | ruby スクリプト作成 API 関数
|    script/ | スクリプトマネージャ
|       script.c | スクリプトマネージャの主要関数
|       script-action.c | スクリプトに対する操作 (ロード/アンロード、インストール/削除、...)
|       script-buffer.c | スクリプトマネージャ用のバッファ
|       script-command.c | スクリプトマネージャ用のコマンド
|       script-completion.c | スクリプトマネージャ用の補完
|       script-config.c | スクリプトマネージャ用の設定オプション (script.conf ファイル)
|       script-info.c | スクリプトマネージャの情報/インフォリスト/hdata
|       script-repo.c | リポジトリファイルのダウンロードと読み込み
|    tcl/ | tcl プラグイン
|       weechat-tcl.c | tcl の主要関数 (スクリプトのロード/アンロード、tcl コードの実行)
|       weechat-tcl-api.c | tcl スクリプト作成 API 関数
|    trigger/ | trigger プラグイン
|       trigger.c | trigger の主要関数
|       trigger-buffer.c | trigger バッファ
|       trigger-callback.c | trigger コールバック
|       trigger-command.c | trigger コマンド
|       trigger-completion.c | trigger 補完
|       trigger-config.c | trigger 設定オプション (trigger.conf ファイル)
|    xfer/ | xfer プラグイン (IRC DCC ファイル/チャット)
|       xfer.c | xfer の主要関数
|       xfer-buffer.c | xfer バッファ
|       xfer-chat.c | xfer DCC チャット
|       xfer-command.c | xfer コマンド
|       xfer-completion.c | xfer 補完
|       xfer-config.c | xfer 設定オプション (xfer.conf ファイル)
|       xfer-dcc.c | DCC ファイル転送
|       xfer-file.c | xfer のファイル関数
|       xfer-info.c | xfer の情報/インフォリスト/hdata
|       xfer-network.c | xfer のネットワーク関数
|       xfer-upgrade.c | WeeChat をアップグレードする際の xfer データの保存および回復
|===
[[sources_tests]]
==== テスト
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| パス/ファイル名 | 説明
| tests/ | テスト用のルートディレクトリ
| tests.cpp | テスト実行に使うプログラム
| unit/ | 単体テスト用のルートディレクトリ
| core/ | core 向け単体テスト用のルートディレクトリ
| test-arraylist.cpp | テスト: 配列リスト
| test-eval.cpp | テスト: 式の評価
| test-hashtble.cpp | テスト: ハッシュテーブル
| test-hdata.cpp | テスト: hdata
| test-infolist.cpp | テスト: インフォリスト
| test-list.cpp | テスト: リスト
| test-string.cpp | テスト: 文字列
| test-url.cpp | テスト: URL
| test-utf8.cpp | テスト: UTF-8
| test-util.cpp | テスト: ユーティリティ関数
|    tests.cpp | テスト実行に使うプログラム
|    unit/ | 単体テスト用のルートディレクトリ
|       core/ | core 向け単体テスト用のルートディレクトリ
|          test-arraylist.cpp | テスト: 配列リスト
|          test-eval.cpp | テスト: 式の評価
|          test-hashtble.cpp | テスト: ハッシュテーブル
|          test-hdata.cpp | テスト: hdata
|          test-infolist.cpp | テスト: インフォリスト
|          test-list.cpp | テスト: リスト
|          test-string.cpp | テスト: 文字列
|          test-url.cpp | テスト: URL
|          test-utf8.cpp | テスト: UTF-8
|          test-util.cpp | テスト: ユーティリティ関数
|===
[[documentation_translations]]
@ -340,36 +341,36 @@ WeeChat "core" は以下のディレクトリに配置されています:
文書ファイル:
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| パス/ファイル名 | 説明
| doc/ | 文書
| docinfo.html | asciidoctor スタイル
| docgen.py | 'autogen/' ディレクトリ内のファイルを作成する Python スクリプト (以下を参照)
| XX/ | 言語コード XX (言語コード: en、fr、de、it、...) 用のディレクトリ
| cmdline_options.XX.asciidoc | コマンドラインオプション (man ページとユーザガイドに含まれるファイル)
| weechat.1.XX.asciidoc | man ページ (`man weechat`)
| weechat_dev.XX.asciidoc | 開発者リファレンス (この文書)
| weechat_faq.XX.asciidoc | FAQ
| weechat_plugin_api.XX.asciidoc | プラグイン API リファレンス
| weechat_quickstart.XX.asciidoc | クイックスタートガイド
| weechat_relay_protocol.XX.asciidoc | リレープロトコル (リモートインターフェイス用)
| weechat_scripting.XX.asciidoc | スクリプト作成ガイド
| weechat_tester.XX.asciidoc | テスターガイド
| weechat_user.XX.asciidoc | ユーザーガイド
| autogen/ | docgen.py スクリプトが自動生成するファイル
| user/ | ユーザーガイド用の自動生成ファイル (手作業による編集は*禁止* !)
| plugin_api/ | プラグイン API 用の自動生成ファイル (手作業による編集は*禁止* !)
|    docinfo.html | asciidoctor スタイル
|    docgen.py | _autogen/_ ディレクトリ内のファイルを作成する Python スクリプト (以下を参照)
|    XX/ | 言語コード XX (言語コード: en、fr、de、it、...) 用のディレクトリ
|       cmdline_options.XX.asciidoc | コマンドラインオプション (man ページとユーザガイドに含まれるファイル)
|       weechat.1.XX.asciidoc | man ページ (`man weechat`)
|       weechat_dev.XX.asciidoc | 開発者リファレンス (この文書)
|       weechat_faq.XX.asciidoc | FAQ
|       weechat_plugin_api.XX.asciidoc | プラグイン API リファレンス
|       weechat_quickstart.XX.asciidoc | クイックスタートガイド
|       weechat_relay_protocol.XX.asciidoc | リレープロトコル (リモートインターフェイス用)
|       weechat_scripting.XX.asciidoc | スクリプト作成ガイド
|       weechat_tester.XX.asciidoc | テスターガイド
|       weechat_user.XX.asciidoc | ユーザーガイド
|       autogen/ | docgen.py スクリプトが自動生成するファイル
|          user/ | ユーザーガイド用の自動生成ファイル (手作業による編集は*禁止* !)
|          plugin_api/ | プラグイン API 用の自動生成ファイル (手作業による編集は*禁止* !)
|===
WeeChat とプラグインの翻訳は gettext で行います、ファイルは 'po/' ディレクトリに含まれています:
WeeChat とプラグインの翻訳は gettext で行います、ファイルは _po/_ ディレクトリに含まれています:
[width="100%",cols="1v,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| パス/ファイル名 | 説明
| po/ | 翻訳ファイル (gettext)
| XX.po | 言語コード XX (言語コード: en、fr、de、it、...) への翻訳、翻訳元言語は英語
| weechat.pot | 翻訳用テンプレート (自動作成)
|    XX.po | 言語コード XX (言語コード: en、fr、de、it、...) への翻訳、翻訳元言語は英語
|    weechat.pot | 翻訳用テンプレート (自動作成)
|===
[[coding_rules]]
@ -590,7 +591,7 @@ new_hook_fd = malloc (sizeof (*new_hook_fd));
----
* Emacs テキストエディタのユーザは以下の Lisp コードを
'~/.emacs.el' に追記することで、適切なインデントを行うことができます。
_~/.emacs.el_ に追記することで、適切なインデントを行うことができます。
[source,lisp]
----
@ -617,16 +618,16 @@ http://www.python.org/dev/peps/pep-0008/ を参照
[[naming_convention_files]]
==== ファイル
ファイル名に使えるのは文字とハイフンだけで、書式: 'xxx-yyyyy.[ch]'
に従ってください。'xxx' はディレクトリおよび構成要素 (略称も可) で、'yyyyy'
ファイル名に使えるのは文字とハイフンだけで、書式: _xxx-yyyyy.[ch]_
に従ってください。_xxx_ はディレクトリおよび構成要素 (略称も可) で、_yyyyy_
はファイルの名前です。
主要ファイルにはディレクトリと同じ名前を付ける事ができます。例えば
irc プラグインの 'irc.c' など。
irc プラグインの _irc.c_ など。
例:
[width="100%",cols="1l,5",options="header"]
[width="100%",cols="1m,3",options="header"]
|===
| ディレクトリ | ファイル
| src/core/ | weechat.c、wee-backtrace.c、wee-command.c、...
@ -638,18 +639,18 @@ irc プラグインの 'irc.c' など。
|===
C 言語ファイルのヘッダはファイルと同じ名前です、例えばファイル
'wee-command.c' のヘッダファイルは 'wee-command.h' です
_wee-command.c_ のヘッダファイルは _wee-command.h_ です
[[naming_convention_structures]]
==== 構造体
構造体の名前は 't_X_Y' または 't_X_Y_Z' という書式に従います:
構造体の名前は _t_X_Y_ または _t_X_Y_Z_ という書式に従います:
* 'X': ディレクトリ/構成要素 (略称も可)
* 'Y': ファイル名の最後
* 'Z': 構造体の名前 (任意)
* _X_: ディレクトリ/構成要素 (略称も可)
* _Y_: ファイル名の最後
* _Z_: 構造体の名前 (任意)
例: IRC のニックネーム ('src/plugins/irc/irc-nick.h' より):
例: IRC のニックネーム (_src/plugins/irc/irc-nick.h_ より):
[source,C]
----
@ -670,16 +671,16 @@ struct t_irc_nick
[[naming_convention_variables]]
==== 変数
グローバル変数 (関数の外側) の名前は 'X_Y_Z' という書式に従います:
グローバル変数 (関数の外側) の名前は _X_Y_Z_ という書式に従います:
* 'X': ディレクトリ/構成要素 (略称も可)
* 'Y': ファイル名の最後
* 'Z': 変数の名前
* _X_: ディレクトリ/構成要素 (略称も可)
* _Y_: ファイル名の最後
* _Z_: 変数の名前
例外として、リストの「最後の」ノードを表す変数の名前は 'last_X'
という書式に従います (ここで 'X' は変数の名前で、単数形を使います)。
例外として、リストの「最後の」ノードを表す変数の名前は _last_X_
という書式に従います (ここで _X_ は変数の名前で、単数形を使います)。
例: ウィンドウ ('src/gui/gui-window.c' より):
例: ウィンドウ (_src/gui/gui-window.c_ より):
[source,C]
----
@ -689,8 +690,8 @@ struct t_gui_window *gui_current_window = NULL; /* current window */
----
ローカル変数 (関数内) に対する命名規則はありません。ただし具体的な (短すぎない)
名前をつけることを推奨します。とは言うものの、構造体へのポインタは通常 'ptr_xxxx'
のように名付けます。例えば、'struct t_gui_buffer *' へのポインタは: '*ptr_buffer'
名前をつけることを推奨します。とは言うものの、構造体へのポインタは通常 _ptr_xxxx_
のように名付けます。例えば、_struct t_gui_buffer *_ へのポインタは: _*ptr_buffer_
のように名付けます。
[[naming_convention_functions]]
@ -698,7 +699,7 @@ struct t_gui_window *gui_current_window = NULL; /* current window */
関数に対する命名規則は<<naming_convention_variables,変数>>と同じです。
例: 新しいウィンドウの作成 ('src/gui/gui-window.c' より):
例: 新しいウィンドウの作成 (_src/gui/gui-window.c_ より):
[source,C]
----
@ -734,7 +735,7 @@ WeeChat コアだけでなく、C 言語プラグインとスクリプトでも
WeeChat のほとんどの連結リストは双方向連結リストです: 各ノードは
1 つ前と 1 つ後のノードへのポインタを持っています。
例: バッファのリスト ('src/gui/gui-buffer.h' より):
例: バッファのリスト (_src/gui/gui-buffer.h_ より):
[source,C]
----
@ -765,10 +766,10 @@ WeeChat は文字列中に独自の色コードを使うことで、属性
文字列にある文字を含め、その後に属性及び色を指定します、これは:
* '0x19': 色コード (これの後に色コード指定)
* '0x1A': 属性の設定 (これの後に属性を指定)
* '0x1B': 削除属性 (これの後に属性を指定)
* '0x1C': リセット (これの後には何も付けない)
* _0x19_: 色コード (これの後に色コード指定)
* _0x1A_: 属性の設定 (これの後に属性を指定)
* _0x1B_: 削除属性 (これの後に属性を指定)
* _0x1C_: リセット (これの後には何も付けない)
指定できる属性は (1 文字以上):
@ -795,36 +796,36 @@ WeeChat は文字列中に独自の色コードを使うことで、属性
[width="100%",cols="4,2,2,8",options="header"]
|===
| コード | 例 | エリア | 説明
| hex[19] + STD | hex[19]`01` | chat + bars | オプションを使って属性と色を指定、色コードは以下の表を参照
| hex[19] + EXT | hex[19]`@00001` | chat | ncurses ペアを使って色を指定 (`/color` バッファのみ有効)
| hex[19] + "F" + (A)STD | hex[19]`F*05` | chat + bars | 文字色 (WeeChat 色) を設定
| hex[19] + "F" + (A)EXT | hex[19]`F@00214` | chat + bars | 文字色 (拡張色) を設定
| hex[19] + "B" + STD | hex[19]`B05` | chat + bars | 背景色 (WeeChat 色) を設定
| hex[19] + "B" + EXT | hex[19]`B@00124` | chat + bars | 背景色 (拡張色) を設定
| hex[19] + "*" + (A)STD | hex[19]`*05` | chat + bars | 文字色(WeeChat 色) を設定
| hex[19] + "*" + (A)EXT | hex[19]`*@00214` | chat + bars | 文字色 (拡張色) を設定
| hex[19] + "*" + (A)STD + "," + STD | hex[19]`*08,05` | chat + bars | 文字色及び背景色 (WeeChat 色) を設定
| hex[19] + "*" + (A)STD + "," + EXT | hex[19]`*01,@00214` | chat + bars | 文字色 (WeeChat 色) と背景色 (拡張色) を設定
| hex[19] + "*" + (A)EXT + "," + STD | hex[19]`*@00214,05` | chat + bars | 文字色 (拡張色) と背景色 (WeeChat 色) を設定
| hex[19] + "*" + (A)EXT + "," + EXT | hex[19]`*@00214,@00017` | chat + bars | 文字色及び背景色 (拡張色) を設定
| hex[19] + "b" + "F" | hex[19]`bF` | bars | バーの文字色を設定
| hex[19] + "b" + "D" | hex[19]`bD` | bars | バーの区切り文字色を設定
| hex[19] + "b" + "B" | hex[19]`bB` | bars | バーの背景色を設定
| hex[19] + "b" + "_" | hex[19]`b_` | input bar | 文字入力を開始 ("input_text" 要素のみで利用可)
| hex[19] + "b" + "-" | hex[19]`b-` | input bar | 隠し文字入力を開始 ("input_text" 要素のみで利用可)
| hex[19] + "b" + "#" | hex[19]`b#` | input bar | カーソル文字を移動 ("input_text" 要素のみで利用可)
| hex[19] + "b" + "i" | hex[19]`bi` | bars | 要素を開始
| hex[19] + "b" + "l" (小文字の L) | hex[19]`bl` | bars | 行要素を開始
| hex[19] + "E" | hex[19]`E` | chat + bars | テキストを強調 _(WeeChat バージョン 0.4.2 以上で利用可)_
| hex[19] + hex[1C] | hex[19]hex[1C] | chat + bars | 色をリセット (属性は保存)
| hex[1A] + ATTR | hex[1A]`*` | chat + bars | 属性を設定
| hex[1B] + ATTR | hex[1B]`*` | chat + bars | 属性を削除
| hex[1C] | hex[1C] | chat + bars | 属性と色をリセット
| コード | 例 | エリア | 説明
| [hex]#19# + STD | [hex]#19# `01` | chat + bars | オプションを使って属性と色を指定、色コードは以下の表を参照
| [hex]#19# + EXT | [hex]#19# `@00001` | chat | ncurses ペアを使って色を指定 (`/color` バッファのみ有効)
| [hex]#19# + "F" + (A)STD | [hex]#19# `F*05` | chat + bars | 文字色 (WeeChat 色) を設定
| [hex]#19# + "F" + (A)EXT | [hex]#19# `F@00214` | chat + bars | 文字色 (拡張色) を設定
| [hex]#19# + "B" + STD | [hex]#19# `B05` | chat + bars | 背景色 (WeeChat 色) を設定
| [hex]#19# + "B" + EXT | [hex]#19# `B@00124` | chat + bars | 背景色 (拡張色) を設定
| [hex]#19# + "*" + (A)STD | [hex]#19# `*05` | chat + bars | 文字色(WeeChat 色) を設定
| [hex]#19# + "*" + (A)EXT | [hex]#19# `*@00214` | chat + bars | 文字色 (拡張色) を設定
| [hex]#19# + "*" + (A)STD + "," + STD | [hex]#19# `*08,05` | chat + bars | 文字色及び背景色 (WeeChat 色) を設定
| [hex]#19# + "*" + (A)STD + "," + EXT | [hex]#19# `*01,@00214` | chat + bars | 文字色 (WeeChat 色) と背景色 (拡張色) を設定
| [hex]#19# + "*" + (A)EXT + "," + STD | [hex]#19# `*@00214,05` | chat + bars | 文字色 (拡張色) と背景色 (WeeChat 色) を設定
| [hex]#19# + "*" + (A)EXT + "," + EXT | [hex]#19# `*@00214,@00017` | chat + bars | 文字色及び背景色 (拡張色) を設定
| [hex]#19# + "b" + "F" | [hex]#19# `bF` | bars | バーの文字色を設定
| [hex]#19# + "b" + "D" | [hex]#19# `bD` | bars | バーの区切り文字色を設定
| [hex]#19# + "b" + "B" | [hex]#19# `bB` | bars | バーの背景色を設定
| [hex]#19# + "b" + "_" | [hex]#19# `b_` | input bar | 文字入力を開始 ("input_text" 要素のみで利用可)
| [hex]#19# + "b" + "-" | [hex]#19# `b-` | input bar | 隠し文字入力を開始 ("input_text" 要素のみで利用可)
| [hex]#19# + "b" + "#" | [hex]#19# `b#` | input bar | カーソル文字を移動 ("input_text" 要素のみで利用可)
| [hex]#19# + "b" + "i" | [hex]#19# `bi` | bars | 要素を開始
| [hex]#19# + "b" + "l" (小文字の L) | [hex]#19# `bl` | bars | 行要素を開始
| [hex]#19# + "E" | [hex]#19# `E` | chat + bars | テキストを強調 _(WeeChat バージョン 0.4.2 以上で利用可)_
| [hex]#19# + [hex]#1C# | [hex]#19# [hex]#1C# | chat + bars | 色をリセット (属性は保存)
| [hex]#1A# + ATTR | [hex]#1A# `*` | chat + bars | 属性を設定
| [hex]#1B# + ATTR | [hex]#1B# `*` | chat + bars | 属性を削除
| [hex]#1C# | [hex]#1C# | chat + bars | 属性と色をリセット
|===
オプションを使う色コード
('src/gui/gui-color.h' ファイルの 't_gui_color_enum' を参照):
(_src/gui/gui-color.h_ ファイルの _t_gui_color_enum_ を参照):
[width="70%",cols="^1m,10",options="header"]
|===
@ -904,30 +905,30 @@ WeeChat 色は:
[width="70%",cols="1,2",options="header"]
|===
| コード | 説明
| hex[19]`01` | オプション "01" の色 (チャットテキスト)
| hex[19]`*08,03` | 文字色が黄色、背景色が赤色
| hex[19]`*@00214` | オレンジ (拡張色 214)
| hex[19]`*@*_00214,@00017` | 文字は太字で下線付きのオレンジ色 (214)、背景色は青 (17)
| hex[1A]`_` | 下線
| hex[1B]`_` | 下線を削除
| hex[1C] | 属性と色をリセット
| コード | 説明
| [hex]#19# `01` | オプション "01" の色 (チャットテキスト)
| [hex]#19# `*08,03` | 文字色が黄色、背景色が赤色
| [hex]#19# `*@00214` | オレンジ (拡張色 214)
| [hex]#19# `*@*_00214,@00017` | 文字は太字で下線付きのオレンジ色 (214)、背景色は青 (17)
| [hex]#1A# `_` | 下線
| [hex]#1B# `_` | 下線を削除
| [hex]#1C# | 属性と色をリセット
|===
[[plugin_internals]]
== プラグインの内部構造
ファイル 'src/plugins/weechat-plugin.h' は API
ファイル _src/plugins/weechat-plugin.h_ は API
で使うことのできる全ての関数を定義し、エクスポートします。
't_weechat_plugin' 構造体はプラグインに関する情報
_t_weechat_plugin_ 構造体はプラグインに関する情報
(ファイル名、プラグイン名、作者、説明、...)
と全ての API 関数をポインタにしてを保存するために使われます
API 関数を簡単に呼び出すためのマクロが定義されています。
例えば、関数 'hook_timer' は以下のように構造体
't_weechat_plugin' で定義されています:
例えば、関数 _hook_timer_ は以下のように構造体
_t_weechat_plugin_ で定義されています:
[source,C]
----
@ -985,12 +986,12 @@ Savannah のバグを閉じる場合:
component: fix a problem (bug #12345)
----
'component' には以下から 1 つ選んで記入してください:
_component_ には以下から 1 つ選んで記入してください:
* WeeChat コア: 'core' (ルートディレクトリ、'po/' ディレクトリ、'src/'
ディレクトリに含まれるファイル、ただし 'src/plugins/' 内のファイルを除く)
* 文書ファイル: 'doc' ('doc/' ディレクトリに含まれるファイル)
* プラグインの名前: 'irc' 、'python' 、'relay' 、... ('src/plugins/' ディレクトリに含まれるファイル)
* WeeChat コア: _core_ (ルートディレクトリ、_po/_ ディレクトリ、_src/_
ディレクトリに含まれるファイル、ただし _src/plugins/_ 内のファイルを除く)
* 文書ファイル: _doc_ (_doc/_ ディレクトリに含まれるファイル)
* プラグインの名前: _irc_ 、_python_ 、_relay_ 、... (_src/plugins/_ ディレクトリに含まれるファイル)
以下のルールに従ってください:
@ -1017,7 +1018,7 @@ core: update Japanese translations (patch #7783)
[[gettext]]
==== Gettext
Gettext ファイルは 'po/'
Gettext ファイルは _po/_
ディレクトリに入っています。新しい言語の翻訳を始める際は、コマンド
`msginit` を使ってください。例えばオランダ語の空ファイルを作成するには:
@ -1030,7 +1031,7 @@ $ msginit -i weechat.pot -l nl_NL -o nl.po
WeeChat
の翻訳元言語は英語です、翻訳する場合は必ず英語から翻訳してください
翻訳が完了したら、*必ず* 'msgcheck.py' (https://github.com/flashcode/msgcheck)
翻訳が完了したら、*必ず* _msgcheck.py_ (https://github.com/flashcode/msgcheck)
スクリプトを使ってファイルの内容を確認してください:
----
@ -1040,10 +1041,10 @@ $ msgcheck.py xx.po
[[build_autogen_files]]
===== 自動生成ファイルを作成する
'doc/XX/autogen/' ディレクトリに含まれるファイルは 'doc/docgen.py' スクリプトが自動生成するファイルです。
_doc/XX/autogen/_ ディレクトリに含まれるファイルは _doc/docgen.py_ スクリプトが自動生成するファイルです。
この python スクリプトを自分の python ディレクトリ (例えば '~/.weechat/python')
にコピーしてください。WeeChat からこのスクリプトをロードして、'/doc' ディレクトリへのパスを設定してください:
この python スクリプトを自分の python ディレクトリ (例えば _~/.weechat/python_)
にコピーしてください。WeeChat からこのスクリプトをロードして、_/doc_ ディレクトリへのパスを設定してください:
----
/python load docgen.py
@ -1065,10 +1066,10 @@ $ msgcheck.py xx.po
[[asciidoc]]
==== Asciidoc
asciidoc ファイルは 'doc/XX/' ディレクトリにあり、'XX'
Asciidoc ファイルは _doc/XX/_ ディレクトリにあり、_XX_
は言語コード (en、fr、de、it、...) です。
最初に英語の asciidoc ファイル ('doc/en/' ディレクトリ中にある)
最初に英語の asciidoc ファイル (_doc/en/_ ディレクトリ中にある)
をコピーして、それを編集してください。
ファイル中の未翻訳部分には以下の文字列で目印が付けられています: