Warning: this is an htmlized version!
The original is across this link,
and the conversion rules are here.
-- This is the beginning of a draft...
-- (find-dn4ex "edrx08.sty" "dags")
-- (find-angg "LUA/lua50init.lua" "split")
-- 2009jan06

-- The picture, before and after splitting,
-- trimming each line, and then adding back
-- some whitespace at the right of some lines
-- to make it rectangular.
-- "input" is a single string,
-- "lines" is an array of normalined strings.
--
input =  " 1 \n"..
         "2 3\n"..
         " 4 \n"..
         " 5 "
--
lines = {" 1 ",
         "2 3",
         " 4 ",
         " 5 "}

-- The size of the picture, in characters
cwidth  = 3
cheight = 4

-- The positions of the nodes, in characters.
-- The top left position has h=1, v=1.
--    1  2  3  4  5
ch = {2, 1, 3, 2, 2}
cv = {1, 2, 2, 3, 4}

-- Now we make an adjustment to put the node 4
-- at the "center" - i.e., it will have picture-mode
-- coordinates (0,0).
ccenterh = 2
ccenterv = 3
--     1   2   3   4   5
ch = { 0, -1,  1,  0,  0}
cv = {-2, -1, -1,  0,  1}



--[[
%*
% (eedn4a-bounded)
% (find-dn4ex "edrx08.sty" "dags")

\def\dagKite#1#2#3#4#5{%
  \dagpicture(20,48)(-10,-36)[16]{
    \dagput( 0,  0){$#1$}    % top
    \dagput(-6,-12){$#2$}    % second line, left
    \dagput( 6,-12){$#3$}    % second line, right
    \dagput( 0,-24){$#4$}    % third line
    \dagput( 0,-36){$#5$}    % bottom
  }}
\def\dagKitetest#1#2#3#4#5{%
  \dagpicture(20,48)(-10,-12)[16]{
    \dagput( 0, 24){$#1$}    % top
    \dagput(-6, 12){$#2$}    % second line, left
    \dagput( 6, 12){$#3$}    % second line, right
    \dagput( 0,  0){$#4$}    % third line
    \dagput( 0,-12){$#5$}    % bottom
  }}

\bhbox{\dagKite01234},
\bhbox{\dagKitetest01234}

%*
--]]