vim automatic filetype detection and setup based on file properties