2004-06-17 23:46:22 +02:00
|
|
|
-----------------------------------------------------------------------------
|
|
|
|
-- Little program to convert to and from Quoted-Printable
|
|
|
|
-- LuaSocket sample files
|
|
|
|
-- Author: Diego Nehab
|
2012-04-11 22:21:25 +02:00
|
|
|
-- RCS ID: $Id: qp.lua,v 1.5 2004/06/17 21:46:22 diego Exp $
|
2004-06-17 23:46:22 +02:00
|
|
|
-----------------------------------------------------------------------------
|
|
|
|
local ltn12 = require("ltn12")
|
|
|
|
local mime = require("mime")
|
2004-02-04 15:29:11 +01:00
|
|
|
local convert
|
|
|
|
arg = arg or {}
|
|
|
|
local mode = arg and arg[1] or "-et"
|
|
|
|
if mode == "-et" then
|
2004-03-22 05:15:03 +01:00
|
|
|
local normalize = mime.normalize()
|
|
|
|
local qp = mime.encode("quoted-printable")
|
|
|
|
local wrap = mime.wrap("quoted-printable")
|
|
|
|
convert = ltn12.filter.chain(normalize, qp, wrap)
|
2004-02-04 15:29:11 +01:00
|
|
|
elseif mode == "-eb" then
|
2004-03-22 05:15:03 +01:00
|
|
|
local qp = mime.encode("quoted-printable", "binary")
|
|
|
|
local wrap = mime.wrap("quoted-printable")
|
|
|
|
convert = ltn12.filter.chain(qp, wrap)
|
|
|
|
else convert = mime.decode("quoted-printable") end
|
|
|
|
local source = ltn12.source.chain(ltn12.source.file(io.stdin), convert)
|
|
|
|
local sink = ltn12.sink.file(io.stdout)
|
2004-05-28 09:24:43 +02:00
|
|
|
ltn12.pump.all(source, sink)
|