@@ -306,6 +306,13 @@ impl HighlightingAssets {
306306 .map(|syntax| SyntaxReferenceInSet { syntax, syntax_set }))
307307 }
308308
309+ fn find_syntax_by_extension(&self, extension: &str) -> Result<Option<SyntaxReferenceInSet>> {
310+ let syntax_set = self.get_syntax_set()?;
311+ Ok(syntax_set
312+ .find_syntax_by_extension(extension)
313+ .map(|syntax| SyntaxReferenceInSet { syntax, syntax_set }))
314+ }
315+
309316 fn get_extension_syntax(&self, file_name: &OsStr) -> Result<Option<SyntaxReferenceInSet>> {
310317 let mut syntax = self.find_syntax_by_file_name(file_name)?;
311318 if syntax.is_none() {
@@ -318,26 +325,19 @@ impl HighlightingAssets {
318325 }
319326
320327 fn find_syntax_by_file_name(&self, file_name: &OsStr) -> Result<Option<SyntaxReferenceInSet>> {
321− let syntax_set = self.get_syntax_set()?;
322− Ok(syntax_set
323− .find_syntax_by_extension(file_name.to_str().unwrap_or_default())
324− .map(|syntax| SyntaxReferenceInSet { syntax, syntax_set }))
328+ self.find_syntax_by_extension(file_name.to_str().unwrap_or_default())
325329 }
326330
327331 fn find_syntax_by_file_name_extension(
328332 &self,
329333 file_name: &OsStr,
330334 ) -> Result<Option<SyntaxReferenceInSet>> {
331− let file_path = Path::new(file_name);
332− let syntax_set = self.get_syntax_set()?;
333− Ok(syntax_set
334− .find_syntax_by_extension(
335− file_path
336− .extension()
337− .and_then(|x| x.to_str())
338− .unwrap_or_default(),
339− )
340− .map(|syntax| SyntaxReferenceInSet { syntax, syntax_set }))
335+ self.find_syntax_by_extension(
336+ Path::new(file_name)
337+ .extension()
338+ .and_then(|x| x.to_str())
339+ .unwrap_or_default(),
340+ )
341341 }
342342
343343 /// If we find an ignored suffix on the file name, e.g. '~', we strip it and