Here's a quick, dirty and inefficient expression for counting up to 4 (semicolon separated) Keywords. You can use this in the Rules for file display.
[Filename (path)]=[M:\Testing" [=save(0,v_count_listitem([keywords],0,;))1]=1 [=save(0,v_count_listitem([keywords],1,;))1]=1 [=save(0,v_count_listitem([keywords],2,;))1]=1 [=save(0,v_count_listitem([keywords],3,;))1]=1 [=ifelse(!isempty(listitem([keywords],0,;)),save(math(1+load(v_count_listitem([keywords],0,;))),v_count_listitem([keywords],0,;)))1]=1 [=ifelse(!isempty(listitem([keywords],1,;)),save(math(1+load(v_count_listitem([keywords],1,;))),v_count_listitem([keywords],1,;)))1]=1 [=ifelse(!isempty(listitem([keywords],2,;)),save(math(1+load(v_count_listitem([keywords],2,;))),v_count_listitem([keywords],2,;)))1]=1 [=ifelse(!isempty(listitem([keywords],3,;)),save(math(1+load(v_count_listitem([keywords],3,;))),v_count_listitem([keywords],3,;)))1]=1
Now, you can add a panes column to show the counts of each keyword using the expression:
ifelse(!isempty(listitem([keywords], 0, ;)),
listitem([keywords], 0, ;) {load(v_count_listitem([keywords], 0, ;))});
ifelse(!isempty(listitem([keywords], 1, ;)),
listitem([keywords], 1, ;) {load(v_count_listitem([keywords], 1, ;))});
ifelse(!isempty(listitem([keywords], 2, ;)),
listitem([keywords], 2, ;) {load(v_count_listitem([keywords], 2, ;))});
ifelse(!isempty(listitem([keywords], 3, ;)),
listitem([keywords], 3, ;) {load(v_count_listitem([keywords], 3, ;))})/
&datatype=[list]
You can change Keywords throughout to the field of your choice, so long as it is a list type. If the delimiter is not a semicolon, the expression needs to be updated to reflect that.
I said it would be ugly, so here are flowers to ease the pain.