mc/lib/timefmt.h
Kian-Meng Ang 5001232704 Fix various typos in the source code (closes MidnightCommander/mc#177).
Found via `codespell -S
po,doc,./misc/syntax,./src/vfs/extfs/helpers/README.it -L
parm,rouge,sav,ect,vie,te,dum,clen,wee,dynamc,childs,ths,fo,nin,unx,nd,iif,iterm,ser,makrs,wil`

Co-authored-by: Yury V. Zaytsev <yury@shurup.com>
Signed-off-by: Kian-Meng Ang <kianmeng@cpan.org>
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2023-01-28 21:38:05 +03:00

60 lines
2.4 KiB
C

/** \file timefmt.h
* \brief Header: time formatting functions
*/
#ifndef MC__UTIL_TIMEFMT_H
#define MC__UTIL_TIMEFMT_H
#include <sys/time.h>
#include <sys/types.h>
/*** typedefs(not structures) and defined constants **********************************************/
#define MAX_I18NTIMELENGTH 20
#define MIN_I18NTIMELENGTH 10
#define STD_I18NTIMELENGTH 12
#define INVALID_TIME_TEXT "(invalid)"
/* safe localtime formatting - strftime()-using version */
#define FMT_LOCALTIME(buffer, bufsize, fmt, when) \
{ \
struct tm *whentm; \
whentm = localtime(&when); \
if (whentm == NULL) \
{ \
strncpy(buffer, INVALID_TIME_TEXT, bufsize); \
buffer[bufsize-1] = 0; \
} \
else \
{ \
strftime(buffer, bufsize, fmt, whentm); \
} \
} \
#define FMT_LOCALTIME_CURRENT(buffer, bufsize, fmt) \
{ \
time_t __current_time; \
time(&__current_time); \
FMT_LOCALTIME(buffer,bufsize,fmt,__current_time); \
}
/*** enums ***************************************************************************************/
/*** structures declarations (and typedefs of structures)*****************************************/
/*** global variables defined in .c file *********************************************************/
extern char *user_recent_timeformat; /* time format string for recent dates */
extern char *user_old_timeformat; /* time format string for older dates */
/*** declarations of public functions ************************************************************/
size_t i18n_checktimelength (void);
const char *file_date (time_t when);
/*** inline functions ****************************************************************************/
#endif /* MC__UTIL_TIMEFMT_H */