印象笔记Markdown样式美化 - window版
evernote-markdown-win-theme
提供Evernote中文版的Windows平台下的markdown编辑器的主题。
基本原理
与Mac版本不同,Evernote_China_Win并未通过本地的方式读取Markdown编辑器文件,而是打包到Evernote.exe的资源目录
ZIP/MARKDOWNEDITORRES
。因此evernote-markdown-vue的经验不能直接复用。
尝试使用resourcehacker替换ZIP/MARKDOWNEDITORRES,在版本6.18.14.753 (600753) Public (CE Build ce-62.1.8947, ME Build V1.0.28)下会遇到代码渲染延迟的问题,以及字体不生效,猜测原因是字体加载问题。
使用Fiddler全局代理,会发现evernote会尝试访问http://loadmarkdown这样的地址来获取字体文件,而非获取打包文件中的字体文件,而且默认情况(未替换资源文件)也会出现这种错误。
作者猜测这是由于BUG导致的,由于Evernote对内部链接http://loadmarkdown的路由错误,导致其直接访问Internet。
基于这个BUG,我们可以替换掉Evernote.exe中的http://loadmarkdown为本地地址,如http://localhost:555。这样Evernote.exe在渲染Markdown文件时,将使用服务器上的编辑器,而非资源文件中的编辑器。
版本说明
兼容版本:6.18.14.753 (600753)
本人使用的 7.0.16.5092 (605092) 版本也可用
作者在evernote-markdown-vue的版本上做了一点轻微的修改,包括:
- 设置默认预览,双击可进入编辑模式
[TOC]
中的链接取消加粗- 修复
.tui-editor-contents pre
导致的黑边问题 - 修复
{font-family: Microsoft Yahei, sans-serif}
导致代码渲染字体异常的问题 - 替换入门指南按钮为预览按钮,方便切换
- 更多展示对比,在文末图片查看
具体修改请使用Beyond Compare
之类软件对比查看。
已知问题:由于演示功能是通过main.min.js
行内CSS加载的方式生成的html页面,无法以上修改对其无效。作者由于不使用该功能,因此未作修改。
使用方式:
1.安装node.js
官方网站:http://nodejs.cn/download/
下载后双击软件安装包打开安装,一直点下一步直到完成即可
安装后,打开cmd,输入node -v
,如果显示当前版本则代表安装成功
C:\ blog>node -v
v14.15.4
2.下载项目源码
https://wwb.lanzouh.com/iJJI403gxu7a
你可以自行构建该编辑器,也可以下载已经编译好的。如果你需要自己编译,可以:
安装依赖,进入vue\vue
文件夹:
cd vue
npm install uglify-js
执行vue文件的build.bat
文件,执行编译:
build.bat
构建好的编辑器文件位于vue\out
中。
3.搭建自定义服务器
- window本地搭建
这里推荐使用Nginx,后台占用内存极低。关键是支持缓存,每次启动印象笔记只需加载一次资源文件,每次渲染页面请求一次
index.html
,通常返回304
,渲染效率很高。
以下教程面向新手,熟悉Web服务器的开发人员可以跳过:
- 下载Windows版本的Nginx,解压到合适的地方,假设设其路径为
C:\nginx
- 复制所有编辑器文件到
C:\nginx\html\目录下
- 编辑
C:\nginx\conf\nginx.conf
,改listen 80
为listen 555
; - 运行
C:\nginx\nginx.exe
,打开浏览器访问http://localhost:555
,双击空白页面,出现Markdown编辑器页面说明生效。
由于Nginx是后台服务,每次开机通常只需要执行一次。可以设置开机启动,添加到启动项。
修改Evernote.exe(建议备份)
关闭Evernote程序,将Evernote.exe备份,使用16进制编辑器(如UltraEdit,hexreplace是一个更轻量的工具),将:
68007400740070003A002F002F006C006F00610064006D00610072006B0064006F0077006E002F0000000000
替换为:
68007400740070003A002F002F006C006F00630061006C0068006F00730074003A003500350035002F000000
保存并退出
(这里其实是将http://loadmardown/
替换为http://localhost:555/
)
- 云服务器搭建
相比window本地搭建,优点:
- 降低耦合性,window不用每次开机都要启动一次nginx。
- 如果你是多台电脑,不用每台电脑都重新配置Nginx,你甚至可以可以把
Evernote.exe
分享给朋友,直接替换就能用。
- 把构建好的编辑器文件,
out
里面的文件粘贴到你网站根目录,配置好之后打开你的网站,比如我是配置在http://bearli.com:5/
。打开网址,双击空白页面,出现Markdown编辑器页面说明生效。 - 修改Evernote.exe(建议备份)
关闭Evernote程序,将Evernote.exe备份,使用16进制编辑器(如UltraEdit,hexreplace是一个更轻量的工具),将:
68007400740070003A002F002F006C006F00610064006D00610072006B0064006F0077006E002F0000000000
替换为你网址的十六进制代码,比如我代码是:
68007400740070003A002F002F0062006500610072006C0069002E0063006F006D003A0035002F0000000000
保存并退出
(以上例子是将http://loadmardown/
替换为http://bearli.com:5/
)
如果你不知道自己网址16进制怎么转换,可以到https://www.bejson.com/convert/ox2str/,比如我是http://bearli.com:5/,转换结果:
转换后还需每两个数字中间加两个0,比如我转换后是687474703a2f2···
,加上0就是68007400740070003A002F00···
,如果加完0,长度不够88位,就要在最后继续按0,按多按少是个缘,凑够88位就行。如果你0还没加完,长度已经超过88位,就要考虑网址是不是太长了。
修改好Evernote.exe
,进入印象笔记看看是否成功。
注意事项
删除缓存
由于采取了http缓存,如果你需要调试主题,或是修改主题后使其生效,需要退出Evernote.exe后删除C:\Users\{your_username}\Yinxiang Biji\LocalStorage\Cache
目录下的所有文件。
具体展示
修改前&修改后
印象笔记Markdown样式美化 - window版相关推荐
- Typora常用语法和Markdown样式美化一本通
Typora展示
- html5复选框样式,11种炫酷CSS3复选框checkbox样式美化效果
这是一款效果非常酷的CSS3复选框checkbox样式美化效果.该复选框美化效果共有11种.默认的复选框的样式十分不好看,该效果将复选框加一美化,带上了一些动画效果,其中一些制作为滑动按钮的样式. 使 ...
- 印象笔记 Markdown使用指南
用了10年的印象笔记,对它还是比较有感情的,从最初的简单的笔记,到思维导图.markdown编辑,还有强大全平台支撑(windows.macos.linux.移动app),除了日常的笔记.会议纪要,还 ...
- 印象笔记Markdown的使用方法
一.Markdown 是什么? Markdown 是一种轻量级的「标记语言」,创始人为约翰·格鲁伯,用简洁的语法代替排版,目前被越来越多的知识工作者.写作爱好者.程序员或研究员广泛使用.其常用的标记符 ...
- 博客园 页首html代码,可爱的博客园样式美化、自定义博客园主题样式
cute-cnblogs 说明 "我经常有那种感觉,如果这个事情来了,你却没有勇敢地去解决掉,它一定会再来.生活真是这样,它会一次次地让你去做这个功课直到你学会为止." -- &l ...
- 可爱的博客园样式美化、自定义博客园主题样式
cute-cnblogs 说明 "我经常有那种感觉,如果这个事情来了,你却没有勇敢地去解决掉,它一定会再来.生活真是这样,它会一次次地让你去做这个功课直到你学会为止." -- &l ...
- 自定义css样式美化博客园
写在前面 csdn的markdown放到博客园里感觉风格迥异,所以还是找个好点的css吧,css这个我没有深入了解,拼凑了一个css.对于有python代码,而且需要自动生成目录的博文很有帮助,其他的 ...
- beego-安装(window版)
2019独角兽企业重金招聘Python工程师标准>>> 题记: beego官网在此输入链接描述的介绍是以linux为背景介绍,本文只是将linux设置修改为window下(注解),大 ...
- IntelliJ IDEA 快捷键(一)(window版)
转: IntelliJ IDEA 快捷键(一)(window版) 一.高效定位代码 1.跳转 1.项目之间的跳转 Next Project Window 快捷键 Ctrl + Alt + 左方括号. ...
最新文章
- 成熟的夜间模式解决方案
- Bash中的shopt选项
- 三国志、英雄无敌玩腻了?没关系,我教你开发个战旗游戏玩玩
- Sentinel(十八)之注解支持
- LeetCode 1323. 6 和 9 组成的最大数字
- Python生成大量随机人员信息
- xstream java_XStream将java转化成xml的简单使用
- HTML5解密——HTML5无法盈利
- Everybody was kung-fu fighting
- php清除手机浏览器缓存,js清除浏览器缓存的几种方法
- 开发人员应具备的13种技术技能
- 边缘计算与智慧城市应用
- C语言入门题库——求2+22+222+......+22222的值
- AT指令详解,错误代码详解
- Java 基于WEB的农产品销售管理系统源码+数据库+论文文档+项目辅导视频
- python pip install fitter 失败解决方案
- 十年Java经验让我总结出了这些,什么是真正的架构设计?
- Mac使用Microsoft-Remote-Desktop-for-Mac远程桌面Windows
- SAP 第三方销售详解
- 汇编语言六 报数出列设有n(设为17)个人围坐在圆桌周围,按顺时针给他们编号(1,2,~~~,n),从第1个人开始顺时针方向+1报数,当报数到m(设为11)时,该人出列