sublime3中OmniMarkupPreviewer出现404怎么办?

1.什么是OmniMarkupPreviewer?

OmniMarkupPreviewer(以下简称OMP)是sublime3平台下一款支持多种文本文件实时预览的插件。它能够转换当前文本编辑器中的文本为html格式并且显示到另一个新的tab页中。这样用户可以在编辑器中边写代码边看到代码的渲染效果,从而达到视觉上的优化效果。

2.为什么会出现404错误?

在使用OMP的过程中,有的用户会遇到“404 file not found”错误。出现这种错误的原因往往是因为OMP插件的内部机制在预览生成的html文件时,找不到指定的路径。具体来说,是由于文件相对路径的问题引起的。

2.1 文件相对路径的问题

在OMP插件中,生成html文件时默认存储在系统的temp文件夹中。而当用户使用某些引用资源的时候,必须使用相对路径进行引用。这时就有可能出现文件找不到,导致404错误的问题。比如,markdown语法中经常使用的图片引用就是这样一种情况。如果使用绝对路径进行引用,可能会出现在别的编辑器环境下打开文本时无法正常显示的情况。因此,相对路径是一种更加通用、灵活的方式。

2.2 解决404错误的方法

解决404错误的方法主要有两种:完全手动配置本地文件相对路径和使用插件提供的路径重定向机制。

首先是手动配置本地文件相对路径的方法。具体来说,将所有的引用资源(如图片、css文件、js文件等)全部放到当前工程目录下,即与markdown文件本身放在同一个目录下。然后,使用相对路径进行引用。这种方法比较麻烦,因为对于多个工程的情况,可能需要对于每个工程都配置一次。并且,如果改变了工程目录结构,就需要重新配置相对路径。

而使用插件提供的路径重定向机制则更加简单。通过在config.sublime-settings文件中配置"url_patterns"属性,我们可以自定义文件路径的查找方式。:

{

"url_patterns": {

"file:///C:/Users/Username/Documents/工程目录/*": "${folder}/$1"

}

}

这里"file:///C:/Users/Username/Documents/工程目录/*"表示匹配本地文件目录下所有文件。而"${folder}/$1"则表示将设置的参数替换为当前文件所在的目录,并且使用通配符匹配路径中的文件名。这样,在生成html文件时,OMP插件就会根据这个规则查找引用资源的本地路径了。

3. 小结

在使用sublime3下的OMP插件时,出现404错误的问题并不少见。其中,文件相对路径的问题是出现问题的主要原因。如上文所述,解决这一问题的方法主要有手动配置本地文件相对路径和使用插件提供的路径重定向机制。如果出现404错误,我们建议先检查一下文件相对路径是否正确,如果确认无误且还是无法生成html文件,则可以尝试使用路径重定向机制进行解决。