Hi,
argument completor completes when previous arguments match partially. i.e. when we have simple completors {foo1, foo2} and {bar1,bar2,bar3}
f bar<tab> tries to complete. This causes a problem when i have two argument completors in multi completor, like this:
ac1 = {print} {queue} {q1,q2,q3}
ac2 = {print} {queues} {a1, a2}
and
print queue <tab> lists {q1,q2,q2,a1,a2}
I've attached patch with fix and test case to demonstrate the point.
argumentcompletor fix