Why my hook_filter not work in Drupal 6? I'm having a hard time trying to make my hook_filter work on Drupal 6.

Here's my filter function.

function arb_question_filter($op, $delta = 0, $format = -1, $text = '') {

  drupal_set_message($op);

  switch($op){

  case 'list':    
    return array(t('My filter name here'));

  case 'description':
    return t('Description my filter here');

  case 'settings':
    break;

  case 'no cache':
    return false;

  case 'prepare':
    return $text;

  case 'process':        
    return preg_replace("|\[support!\]|i", 'hello world', $text);

  default:
    return $text;   
  }
}


I can see my filter name on the filter option below the content textarea, but when I add my testing for example " this is a test [support!]"

When I view the content, it just show [support!], which is suppose to show "hello world" according to my filter.

I did put a drupal_set_message($op) on my hook filter, but it seems to only show "list" not process or prepare or the rest of the $op.

What I'm doing wrong?

Welcome your advice
Given that you are only seeing 'list', I would make sure that your filter is added to an existing Input Format (check at admin/settings/filters and click on configure next to the appropriate input format) and also that all caches are cleared.  Sometimes if you start entering/coding a filter and it runs before you've got all the kinks worked out, the case 'no cache' gets in the way and stores the initial/wrong result.  Until you are sure of everything, you may want to change that to return TRUE; as well.