the "Clipper" plugin tursns out to be so simple even I can customize it - | is where the cursor ends up, and you just write the code out with \n for newline, and spaces for spacing:
a quick and dirty application of it I threw together t play with this afternoon:
#
# WeiDU dialog clip library
#
@title=WeiDU Dlg
@sortClips=true
@caseSensitiveSort=false
# comment
(/**/)=/* | */
# standard blocks
ARAN_VARSTART=IF ~CONDITION~ THEN BEGIN statename\n SAY ~[ARAN] |~\n ++ ~[PC] narcissistic~ + reply_1\n ++ ~[PC] compassion~ + reply_2\n ++ ~[PC] practical~ + reply_3\n ++ ~[PC] inappropriate~ + reply_4\n ++ ~[PC] exit_talk~ + reply_5\nEND
ARAN_REPLY=IF ~~ statename\n SAY ~[C-ARAN] |~\n ++ ~[PC] narcissistic~ + reply_1\n ++ ~[PC] compassion~ + reply_2\n ++ ~[PC] practical~ + reply_3\n ++ ~[PC] inappropriate~ + reply_4\n ++ ~[PC] exit_talk~ + reply_5\nEND
TELDRA_REPLY=IF ~~ statename\n SAY ~[C-AW01TL] |~\n ++ ~[PC] narcissistic~ + reply_1\n ++ ~[PC] compassion~ + reply_2\n ++ ~[PC] practical~ + reply_3\n ++ ~[PC] inappropriate~ + reply_4\n ++ ~[PC] exit_talk~ + reply_5\nEND
ARAN_EXIT=IF ~~ statename\n SAY ~[C-ARAN] |~\n IF ~~ THEN EXIT\nEND
TELDRA_EXIT=IF ~~ statename\n SAY ~[C-AW01TL] |~\n IF ~~ THEN EXIT\nEND
SAGE_REPLY=IF ~~ statename\n SAY ~[C-AWSAGE] |~\n ++ ~[PC] narcissistic~ + reply_1\n ++ ~[PC] compassion~ + reply_2\n ++ ~[PC] practical~ + reply_3\n ++ ~[PC] inappropriate~ + reply_4\n ++ ~[PC] exit_talk~ + reply_5\nEND
ARAN_CHAIN=CHAIN C-ARAN statename\n~[C-ARAN] |~\n== CERNDJ IF ~InParty("Cernd") InMyArea("Cernd") !StateCheck("Cernd",CD_STATE_NOTVALID)~ THEN ~[CERND] ~\n== EDWINJ IF ~InParty("Edwin") InMyArea("Edwin") !StateCheck("Edwin",CD_STATE_NOTVALID)~ THEN ~[EDWIN] ~\n== HAERDAJ IF ~InParty("HaerDalis") InMyArea("HaerDalis") !StateCheck("HaerDalis",CD_STATE_NOTVALID)~ THEN ~[HAERDALIS] ~\n== JAHEIRAJ IF ~InParty("Jaheira") InMyArea("Jaheira") !StateCheck("Jaheira",CD_STATE_NOTVALID)~ THEN ~[JAHEIRA] ~\n== JANJ IF ~InParty("Jan") InMyArea("Jan") !StateCheck("Jan",CD_STATE_NOTVALID)~ THEN ~[JAN] ~\n== KELDORJ IF ~InParty("Keldorn") InMyArea("Keldorn") !StateCheck("Keldorn",CD_STATE_NOTVALID)~ THEN ~[KELDORN] ~\n== KORGANJ IF ~InParty("Korgan") InMyArea("Korgan") !StateCheck("Korgan",CD_STATE_NOTVALID)~ THEN ~[KORGAN] ~\n== MAZZYJ IF ~InParty("Mazzy") InMyArea("Mazzy") !StateCheck("Mazzy",CD_STATE_NOTVALID)~ THEN ~[MAZZY] ~\n== MINSCJ IF ~InParty("Minsc") InMyArea("Minsc") !StateCheck("Minsc",CD_STATE_NOTVALID)~ THEN ~[MINSC] ~\n== NALIAJ IF ~InParty("Nalia") InMyArea("Nalia") !StateCheck("Nalia",CD_STATE_NOTVALID)~ THEN ~[NALIA] ~\n== VALYGARJ IF ~InParty("Valygar") InMyArea("Valygar") !StateCheck("Valygar",CD_STATE_NOTVALID)~ THEN ~[VALYGAR] ~\n== VICONIJ IF ~InParty("Viconia") InMyArea("Viconia") !StateCheck("Viconia",CD_STATE_NOTVALID)~ THEN ~[VICONIA] ~\n== YOSHJ IF ~InParty("Yoshimo") InMyArea("Yoshimo") !StateCheck("Yoshimo",CD_STATE_NOTVALID)~ THEN ~[YOSHIMO] ~\n== IMOEN2J IF ~InParty("Imoen2") InMyArea("Imoen2") !StateCheck("Imoen2",CD_STATE_NOTVALID)~ THEN ~[IMOEN] ~\n== AERIEJ IF ~InParty("Aerie") InMyArea("Aerie") !StateCheck("Aerie",CD_STATE_NOTVALID)~ THEN ~[AERIE] ~\n== ANOMENJ IF ~InParty("Anomen") InMyArea("Anomen") !StateCheck("Anomen",CD_STATE_NOTVALID)~ THEN ~[ANOMEN] ~\n== C-ARAN ~[ARAN] ~\nEND\n++ ~[PC] narcissistic~ EXTERN C-ARANJ reply_1\n++ ~[PC] compassion~ EXTERN C-ARANJ reply_2\n++ ~[PC] practical~ EXTERN C-ARANJ reply_3\n++ ~[PC] inappropriate~ EXTERN C-ARANJ reply_4\n++ ~[PC] exit_talk~ EXTERN C-ARANJ reply_exiting
# conditions
ARAN_OK=InParty("c-aran") InMyArea("c-aran") !StateCheck("c-aran",CD_STATE_NOTVALID) |
# special blocks
EVIL_LEATHER=/* LEAT21 - Human Flesh +5 evil armor equipped complaints */\n IF ~HasItemEquiped("LEAT21",Player1) Global("c-arskinarm","LOCALS",0)~ THEN GOTO a1799\n IF ~HasItemEquiped("LEAT21",Player1) Global("c-arskinarm","LOCALS",1) GlobalTimerExpired("c-aranskin","GLOBAL")~ THEN GOTO a1798\n IF ~HasItemEquiped("LEAT21",Player1) Global("c-arskinarm","LOCALS",2) GlobalTimerExpired("c-aranskin","GLOBAL")~ THEN GOTO a1797|
ARANS_CLASS= + ~Class("c-aran",THIEF_ALL)~ + ~[PC] |~ + reply_aran_thief\n + ~Class("c-aran",MAGE_ALL)~ + ~[PC] ~ + reply_aran_mage\n + ~Class("c-aran",CLERIC_ALL)~ + ~[PC] ~ + reply_aran_cleric\n + ~Class("c-aran",FIGHTER_ALL)~ + ~[PC] ~ + reply_aran_fighter
PC_RAND3=\n + ~RandomNum(3,1)~ + ~[PC] |~ + rand_reply_31\n + ~RandomNum(3,2)~ + ~[PC] ~ + rand_reply_31\n + ~RandomNum(3,3)~ + ~[PC] ~ + rand_reply_33
PC_RAND4=\n + ~RandomNum(4,1)~ + ~[PC] |~ + rand_reply_41\n + ~RandomNum(4,2)~ + ~[PC] ~ + rand_reply_42\n + ~RandomNum(4,3)~ + ~[PC] ~ + rand_reply_43\n + ~RandomNum(4,4)~ + ~[PC] ~ + rand_reply_44
PC_RAND5=\n + ~RandomNum(5,1)~ + ~[PC] |~ + rand_reply_51\n + ~RandomNum(5,2)~ + ~[PC] ~ + rand_reply_52\n + ~RandomNum(5,3)~ + ~[PC] ~ + rand_reply_53\n + ~RandomNum(5,4)~ + ~[PC] ~ + rand_reply_54\n + ~RandomNum(5,5)~ + ~[PC] ~ + rand_reply_55