source refactoring
add syntax highlight