Compare commits
4 Commits
v1.4.0
...
9e297244a4
| Author | SHA1 | Date | |
|---|---|---|---|
|
9e297244a4
|
|||
|
d32ba133c0
|
|||
|
ce3976e1ec
|
|||
|
e5ed89646b
|
32
.clang-format
Normal file
32
.clang-format
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
# clang-format is fairly limited, and these rules are approximate:
|
||||||
|
# - array initializers can get terribly mangled with clang-format 12.0,
|
||||||
|
# - sometimes it still aligns with space characters,
|
||||||
|
# - struct name NL { NL ... NL } NL name; is unachievable.
|
||||||
|
BasedOnStyle: GNU
|
||||||
|
ColumnLimit: 80
|
||||||
|
IndentWidth: 4
|
||||||
|
TabWidth: 4
|
||||||
|
UseTab: ForContinuationAndIndentation
|
||||||
|
BreakBeforeBraces: Allman
|
||||||
|
SpaceAfterCStyleCast: true
|
||||||
|
AlignAfterOpenBracket: DontAlign
|
||||||
|
AlignOperands: DontAlign
|
||||||
|
AlignConsecutiveMacros: Consecutive
|
||||||
|
AllowAllArgumentsOnNextLine: false
|
||||||
|
AllowAllParametersOfDeclarationOnNextLine: false
|
||||||
|
IndentGotoLabels: false
|
||||||
|
|
||||||
|
# IncludeCategories has some potential, but it may also break the build.
|
||||||
|
# Note that the documentation says the value should be "Never".
|
||||||
|
SortIncludes: false
|
||||||
|
|
||||||
|
# This is a compromise, it generally works out aesthetically better.
|
||||||
|
BinPackArguments: false
|
||||||
|
|
||||||
|
# Unfortunately, this can't be told to align to column 40 or so.
|
||||||
|
SpacesBeforeTrailingComments: 2
|
||||||
|
|
||||||
|
# liberty-specific macro body wrappers.
|
||||||
|
MacroBlockBegin: "BLOCK_START"
|
||||||
|
MacroBlockEnd: "BLOCK_END"
|
||||||
|
ForEachMacros: ["LIST_FOR_EACH"]
|
||||||
2
.gitignore
vendored
2
.gitignore
vendored
@@ -7,3 +7,5 @@
|
|||||||
/uirc3.files
|
/uirc3.files
|
||||||
/uirc3.creator*
|
/uirc3.creator*
|
||||||
/uirc3.includes
|
/uirc3.includes
|
||||||
|
/uirc3.cflags
|
||||||
|
/uirc3.cxxflags
|
||||||
|
|||||||
24
common.c
24
common.c
@@ -22,11 +22,11 @@
|
|||||||
#define LIBERTY_WANT_PROTO_IRC
|
#define LIBERTY_WANT_PROTO_IRC
|
||||||
|
|
||||||
#ifdef WANT_SYSLOG_LOGGING
|
#ifdef WANT_SYSLOG_LOGGING
|
||||||
#define print_fatal_data ((void *) LOG_ERR)
|
#define print_fatal_data ((void *) LOG_ERR)
|
||||||
#define print_error_data ((void *) LOG_ERR)
|
#define print_error_data ((void *) LOG_ERR)
|
||||||
#define print_warning_data ((void *) LOG_WARNING)
|
#define print_warning_data ((void *) LOG_WARNING)
|
||||||
#define print_status_data ((void *) LOG_INFO)
|
#define print_status_data ((void *) LOG_INFO)
|
||||||
#define print_debug_data ((void *) LOG_DEBUG)
|
#define print_debug_data ((void *) LOG_DEBUG)
|
||||||
#endif // WANT_SYSLOG_LOGGING
|
#endif // WANT_SYSLOG_LOGGING
|
||||||
|
|
||||||
#include "liberty/liberty.c"
|
#include "liberty/liberty.c"
|
||||||
@@ -87,15 +87,15 @@ static time_t
|
|||||||
unixtime_msec (long *msec)
|
unixtime_msec (long *msec)
|
||||||
{
|
{
|
||||||
#ifdef _POSIX_TIMERS
|
#ifdef _POSIX_TIMERS
|
||||||
struct timespec tp;
|
struct timespec tp;
|
||||||
hard_assert (clock_gettime (CLOCK_REALTIME, &tp) != -1);
|
hard_assert (clock_gettime (CLOCK_REALTIME, &tp) != -1);
|
||||||
*msec = tp.tv_nsec / 1000000;
|
*msec = tp.tv_nsec / 1000000;
|
||||||
#else // ! _POSIX_TIMERS
|
#else // ! _POSIX_TIMERS
|
||||||
struct timeval tp;
|
struct timeval tp;
|
||||||
hard_assert (gettimeofday (&tp, NULL) != -1);
|
hard_assert (gettimeofday (&tp, NULL) != -1);
|
||||||
*msec = tp.tv_usec / 1000;
|
*msec = tp.tv_usec / 1000;
|
||||||
#endif // ! _POSIX_TIMERS
|
#endif // ! _POSIX_TIMERS
|
||||||
return tp.tv_sec;
|
return tp.tv_sec;
|
||||||
}
|
}
|
||||||
|
|
||||||
// --- Logging -----------------------------------------------------------------
|
// --- Logging -----------------------------------------------------------------
|
||||||
|
|||||||
20
xC.c
20
xC.c
@@ -771,24 +771,13 @@ struct input_el
|
|||||||
|
|
||||||
static void app_editline_init (struct input_el *self);
|
static void app_editline_init (struct input_el *self);
|
||||||
|
|
||||||
static int
|
|
||||||
input_el__get_termios (int character, int fallback)
|
|
||||||
{
|
|
||||||
if (!g_terminal.initialized)
|
|
||||||
return fallback;
|
|
||||||
|
|
||||||
cc_t value = g_terminal.termios.c_cc[character];
|
|
||||||
if (value == _POSIX_VDISABLE)
|
|
||||||
return fallback;
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
input_el__redisplay (void *input)
|
input_el__redisplay (void *input)
|
||||||
{
|
{
|
||||||
// See rl_redisplay()
|
// See rl_redisplay(), however NetBSD editline's map.c v1.54 breaks VREPRINT
|
||||||
|
// so we bind redisplay somewhere else in app_editline_init()
|
||||||
struct input_el *self = input;
|
struct input_el *self = input;
|
||||||
char x[] = { input_el__get_termios (VREPRINT, 'R' - 0x40), 0 };
|
char x[] = { 'q' & 31, 0 };
|
||||||
el_push (self->editline, x);
|
el_push (self->editline, x);
|
||||||
|
|
||||||
// We have to do this or it gets stuck and nothing is done
|
// We have to do this or it gets stuck and nothing is done
|
||||||
@@ -13782,8 +13771,11 @@ app_editline_init (struct input_el *self)
|
|||||||
CALL_ (input, bind_control, 'w', "ed-delete-prev-word");
|
CALL_ (input, bind_control, 'w', "ed-delete-prev-word");
|
||||||
// Just what are you doing?
|
// Just what are you doing?
|
||||||
CALL_ (input, bind_control, 'u', "vi-kill-line-prev");
|
CALL_ (input, bind_control, 'u', "vi-kill-line-prev");
|
||||||
|
// See input_el__redisplay(), functionally important
|
||||||
|
CALL_ (input, bind_control, 'q', "ed-redisplay");
|
||||||
|
|
||||||
// We need to hide the prompt and input first
|
// We need to hide the prompt and input first
|
||||||
|
CALL_ (input, bind, "\r", "send-line");
|
||||||
CALL_ (input, bind, "\n", "send-line");
|
CALL_ (input, bind, "\n", "send-line");
|
||||||
|
|
||||||
CALL_ (input, bind_control, 'i', "complete");
|
CALL_ (input, bind_control, 'i', "complete");
|
||||||
|
|||||||
Reference in New Issue
Block a user