[Tool] Open Live Writer 插件更新

最新插件下载地址:Memento.OLW_V1.0.0.5.7z

零、历史更新记录

  • 2016.11.24

1. 修正 cnblog 语法高亮中的 SQL、Perl 语法高亮异常

下载地址:Memento.OLW_V1.0.0.1.7z

  • 2016.11.27

1. 增加 cnblog 页签中 SQL 语法高亮的关键词链接选择;

下载地址:Memento.OLW_V1.0.0.2.7z

  • 2017.01.17

1. 修正Python语法高亮中单行注释颜色问题;

2. 修正Matlab语法高亮细节问题;

下载地址:Memento.OLW_V1.0.0.3.7z

  • 2018.03.01

1. 修改 DeployDLL.bat,支持动态获取版本并部署安装;

下载地址: Memento.OLW_V1.0.0.4.7z

  • 2018.04.13

1. 折叠区域采用 bootstrap 样式,需要在博客园“设置”-“页首HTML”中添加对 bootstrap 的引用;

2. 修正折叠区域最大高度设置;

3. 修正上一个版本 V1.0.0.4 发布错误文件问题;

下载地址: Memento.OLW_V1.0.0.5.7z

  • 持续更新…

相关文章介绍链接:

仿博客园插入代码的 WindowsLiveWriter 插件

WindowsLiveWriter 的插入折叠区域功能插件

OpenLiveWriter插件开发教程

OpenLiveWriter 的 SyntaxHighlighter 代码高亮插件开发

一、更新内容

    • cnblog 页签中增加 LuaMatlab 语法高亮;(SyntaxHighlight 页签中尚未添加)
    • 增加折叠区域插件,见效果展示;
    • 增加 bat 执行文件,直接拷贝插件所需 dll 文件到指定位置;
    • 增减 OLWPlugins.css 样式文件和 OLWPlugins.js 脚本文件;
    • 测试 Win10/7 32/64 位系统安装使用情况;
    • 优化部分使用体验;

二、更新说明

  • 应 @我要改名叫嘟嘟 和 @船长J.K 两位的需求,尝试了一下 Wilco.SyntaxHighlighter 的扩展开发,实现 Lua 和 Matlab 两种语法高亮。由于博主不擅长这两种语言,测试不一定到位,如果两位或者其他人使用过程中有何问题都可以留言反馈,博主再尽力修改完善,先在此谢过。
  • 折叠区域插件,先前在文章 插入折叠区域功能 中已有开发,不过那次是针对 WLW,这次移植到 OLW 上来,并优化了部分使用体验。
  • 同时,FoldRegion 插件属于自己为了方便浏览开发的,所以需要加入自定义的 css 样式和 js 脚本文件。使用该插件时需要在“博客园后台管理”->“设置”->“页首html代码”中添加这两个文件的引用,文件下载参考最后的资源下载,引用代码参考如下:
01
02
<link type="text/css" rel="stylesheet" href="https://files.cnblogs.com/files/memento/OLWPlugins.css" />
<script type="text/javascript" src="https://files.cnblogs.com/files/memento/OLWPlugins.js"></script>
  • 上一篇文章许多人反应说不知道插件放到哪里,Plugins 文件夹没有找到等问题,为了方便使用,博主在压缩包里增加一个 bat 文件,DeployDLL.bat,解压缩后直接执行即可拷贝插件所需要的 dll 到指定位置了。
  • 博主通过 Hyper-V 分别模拟了 Win10/7 32/64位几种不同的环境进行插件测试,均可以使用,如果有问题请留言讨论。 注意,Open Live Writer 软件本身建议基于 .NET 4.5.2 环境,详情参考 OpenLiveWriter.SDK.nuspec
  • 对了,再啰嗦一句,从网上下载下来的 dll,windows 系统有时候会默认为锁定状态,需要在属性中进行解锁后再使用。

三、效果展示

  • cnblog(模拟博客园推荐使用的插入代码)

博客园网页端插入代码工具弹窗(图一)博客园网页端插入代码工具弹窗

插件模拟弹窗

(图二)插件模拟弹窗

复制代码
  1 /// <summary>
  2 /// 构造函数
  3 /// </summary>
  4 /// <param name="settings">插件配置</param>
  5 /// <param name="content">文本内容</param>
  6 public CNBlogs(Settings settings, string content)
  7 {
  8     InitializeComponent();
  9 
 10     try
 11     {
 12         m_Settings = settings;
 13         m_Content = content;
 14         m_HtmlParser = new HtmlParser();
 15 
 16         chbCollapse.CheckedChanged += ChbCollapse_CheckedChanged;
 17         chbTAB.CheckedChanged += chbTAB_CheckedChanged;
 18         chbShowLineNum.CheckedChanged += ChbShowLineNum_CheckedChanged;
 19 
 20         Load += CNBlogs_Load;
 21         txtTAB.KeyPress += CommonHelper.NumberImput_KeyPress;
 22     }
 23     catch (Exception ex)
 24     {
 25         CommonHelper.ShowError(ex);
 26     }
 27 }
CNBlog
复制代码
复制代码
/// <summary>
/// 构造函数
/// </summary>
/// <param name="settings">插件配置</param>
/// <param name="content">文本内容</param>
public CNBlogs(Settings settings, string content)
{
    InitializeComponent();

    try
    {
        m_Settings = settings;
        m_Content = content;
        m_HtmlParser = new HtmlParser();

        chbCollapse.CheckedChanged += ChbCollapse_CheckedChanged;
        chbTAB.CheckedChanged += chbTAB_CheckedChanged;
        chbShowLineNum.CheckedChanged += ChbShowLineNum_CheckedChanged;

        Load += CNBlogs_Load;
        txtTAB.KeyPress += CommonHelper.NumberImput_KeyPress;
    }
    catch (Exception ex)
    {
        CommonHelper.ShowError(ex);
    }
}
复制代码
复制代码
  1 -- 文件名为 module.lua
  2 -- 定义一个名为 module 的模块
  3 module = {}
  4 
  5 -- 定义一个常量
  6 module.constant = "这是一个常量"
  7 
  8 -- 定义一个函数
  9 function module.func1()
 10     io.write("这是一个公有函数!\n")
 11 end
 12 
 13 local function func2()
 14     print("这是一个私有函数!")
 15 end
 16 
 17 function module.func3()
 18     func2()
 19 end
 20 
 21 return module
Lua
复制代码
复制代码
  1 x = [0:0.01:10];
  2 y = sin(x);
  3 plot(x, y), xlabel('x'), ylabel('Sin(x)'), title('Sin(x) Graph'),
  4 grid on, axis equal
Matlab
复制代码
  • SyntaxHighlighter(利用博客园已植入的 SyntaxHighlighter 高亮脚本)

SyntaxHighlighter 主界面

(图三)SyntaxHighlighter 主界面

SyntaxHighlighter 插件详细设置

(图四)SyntaxHighlighter 插件详细设置

CNBlog
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/// <summary>
/// 构造函数
/// </summary>
/// <param name="settings">插件配置</param>
/// <param name="content">文本内容</param>
public CNBlogs(Settings settings, string content)
{
    InitializeComponent();
 
    try
    {
        m_Settings = settings;
        m_Content = content;
        m_HtmlParser = new HtmlParser();
 
        chbCollapse.CheckedChanged += ChbCollapse_CheckedChanged;
        chbTAB.CheckedChanged += chbTAB_CheckedChanged;
        chbShowLineNum.CheckedChanged += ChbShowLineNum_CheckedChanged;
 
        Load += CNBlogs_Load;
        txtTAB.KeyPress += CommonHelper.NumberImput_KeyPress;
    }
    catch (Exception ex)
    {
        CommonHelper.ShowError(ex);
    }
}
  • FoldRegion(折叠区域插件,优化浏览体验)

FoldRegion 主界面

(图五)FoldRegion 主界面

● 标题展开
1 a
2 b
3 c
4 d
5 e
6 f
7 g
8 h
9 i
10 j
11 k

 

四、资源下载

  1. 插件下载:见文章顶部
  2. 工程源码:无
  3. 其他资源:
posted @   01星河  阅读(2759)  评论(25编辑  收藏  举报
点击右上角即可分享
微信分享提示