X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=lib-lua%2Fmadmutt.cpkg;h=610ee929f23c813da149ded1013da08adf9e02fe;hb=597020b9829312a50c15784916f473da9e75efd0;hp=270e198c48a28181c68442b16ba19f3a3f8ed02a;hpb=bb89a1ca75e867edbe281dc848720a95650c24ce;p=apps%2Fmadmutt.git diff --git a/lib-lua/madmutt.cpkg b/lib-lua/madmutt.cpkg index 270e198..610ee92 100644 --- a/lib-lua/madmutt.cpkg +++ b/lib-lua/madmutt.cpkg @@ -50,13 +50,6 @@ static const char *madmutt_pwd(void) return path; } -static const char *luaM_path_post(const char *val) -{ - char path[PATH_MAX]; - _mutt_expand_path(path, sizeof(path), val, 0); - return path; -} - @type bool = { .kind = 'b'; .ctype = unsigned : 1; @@ -70,11 +63,10 @@ static const char *luaM_path_post(const char *val) }; @type path_t = { - .push = luaM_path_post($$); .kind = 's'; .ctype = char *; .dtor = p_delete($$); - .ctor = m_strdup($$); + .ctor = luaM_pathnew($$); }; @type quadopt_t = { @@ -83,6 +75,15 @@ static const char *luaM_path_post(const char *val) .ctype = unsigned : 2; }; +@type rx_t = { + .kind = 's'; + .ctype = rx_t *; + .check = luaM_checkrx($L, $$); + .push = ($$)->pattern; + .ctor = luaM_rxnew($$); + .dtor = rx_delete($$); +}; + #if defined(HAVE_QDBM) # define HCACHE_BACKEND "qdbm" #elif defined(HAVE_GDBM) @@ -100,12 +101,13 @@ static const char *luaM_path_post(const char *val) const string_t docdir = PKGDOCDIR; const string_t hcache_backend = HCACHE_BACKEND; - path_t dotlock = m_strdup(BINDIR "/mutt_dotlock"); - path_t editor = m_strdup(getenv("VISUAL") ?: getenv("EDITOR") ?: "vi"); - path_t shell = madmutt_init_shell(); - path_t username = madmutt_init_username(); - path_t homedir = madmutt_init_homedir(); - path_t tmpdir = m_strdup(getenv("TMPDIR") ?: "/tmp"); + path_t dotlock = m_strdup(BINDIR "/mutt_dotlock"); + path_t editor = m_strdup(getenv("VISUAL") ?: getenv("EDITOR") ?: "vi"); + path_t shell = madmutt_init_shell(); + path_t username = madmutt_init_username(); + path_t homedir = madmutt_init_homedir(); + path_t tmpdir = m_strdup(getenv("TMPDIR") ?: "/tmp"); + rx_t gecos_mask = luaM_rxnew("^[^,]*"); quadopt_t quit = M_YES; bool beep = 1; @@ -117,8 +119,8 @@ static const char *luaM_path_post(const char *val) @package MTransport { path_t sendmail = m_strdup(SENDMAIL " -eom -oi"); - string_t dsn_notify = NULL; - string_t dsn_return = NULL; + string_t dsn_notify = NULL /* TODO: check it's NULL, hdrs or full */; + string_t dsn_return = NULL /* TODO: check it's never, delay, failure, success with ',' */; } MTransport; /* vim:set ft=c: */