最新插件下载地址: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代码”中添加这两个文件的引用,文件下载参考最后的资源下载,引用代码参考如下:
<link type="text/css" rel="stylesheet" href="http://files.cnblogs.com/files/memento/OLWPlugins.css" />
<script type="text/javascript" src="http://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(模拟博客园推荐使用的插入代码)

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

(图二)插件模拟弹窗

 /// <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);
}
}

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);
}
}
 -- 文件名为 module.lua
-- 定义一个名为 module 的模块
module = {} -- 定义一个常量
module.constant = "这是一个常量" -- 定义一个函数
function module.func1()
io.write("这是一个公有函数!\n")
end local function func2()
print("这是一个私有函数!")
end function module.func3()
func2()
end return module

Lua

 x = [0:0.01:10];
y = sin(x);
plot(x, y), xlabel('x'), ylabel('Sin(x)'), title('Sin(x) Graph'),
grid on, axis equal

Matlab

  • SyntaxHighlighter(利用博客园已植入的 SyntaxHighlighter 高亮脚本)

(图三)SyntaxHighlighter 主界面

(图四)SyntaxHighlighter 插件详细设置

/// <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);
}
}
/// <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 主界面

● 标题展开
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. 其他资源:

[Tool] Open Live Writer 插件更新的更多相关文章

  1. 【转】Open Live Writer 插件更新

    一.更新内容 cnblog 页签中增加 Lua 和 Matlab 语法高亮:(SyntaxHighlight 页签中尚未添加) 增加折叠区域插件,见效果展示: 增加 bat 执行文件,直接拷贝插件所需 ...

  2. windows live writer插件说明文档(附录网盘地址)

    百度云地址:http://pan.baidu.com/s/1hqnjzjY 1.Screen Capture tool 用于直接在WLWriter中进行截图的一个插件,要配合SnagIt 这个软件使用 ...

  3. 学习编写Windows Live Writer插件

    1.参考链接 参考:http://www.cnblogs.com/liulun/archive/2009/05/27/1491116.html Live Writer API参考:http://msd ...

  4. ubuntu下的Nessus插件更新

    00x1: 记录下nessus插件离线更新,免得每次度娘我Nessus是放在虚拟机里面. 00x2: nessus 插件更新地址: https://plugins.nessus.org/v2/offl ...

  5. Fundebug前端JavaScript插件更新至1.2.0

    摘要: Fundebug的前端JavaScript错误监控插件更新至1.2.0:支持监控WebSocket连接错误:修复了监控unhandledrejection错误的BUG,即未用catch处理的P ...

  6. FastAdmin 数据库备份插件更新到 v1.0.4

    FastAdmin 数据库备份插件更新到 v1.0.4 下载地址: https://www.fastadmin.net/store/database.html 更新如下: 修复了忽略列表无效的 Bug ...

  7. Elasticsearch--集群管理_别名&插件&更新API

    目录 使用索引别名 别名 创建别名 修改别名 合并命令 获取所有别名 移除别名 别名中过滤 别名和路由 Elasticsearch插件 基础知识 安装插件 移除插件 更新设置API 使用索引别名 通过 ...

  8. Fundebug前端异常监控插件更新至2.0.0,全面支持TypeScript

    摘要: 是时候支持TS了! Fundebug前端异常监控服务 Fundebug提供专业的前端异常监控服务,我们的插件可以提供全方位的异常监控,可以帮助开发者第一时间定位各种前端异常,包括但不限于Jav ...

  9. Fundebug录屏插件更新至0.6.0

    摘要: 录屏插件的性能进一步优化,传输的数据体积大幅度减少. 录屏功能介绍 Fundebug提供专业的异常监控服务,当线上应用出现 BUG 的时候,我们可以第一时间报警,帮助开发者及时发现 BUG,提 ...

随机推荐

  1. Android 剪贴板详解

    版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Clipboard 如本文有助于你理解 Android 剪贴板,不妨给我一个 Star.对于码农而言, ...

  2. 设计模式之单例模式(Singleton)

    设计模式之单例模式(Singleton) 设计模式是前辈的一些经验总结之后的精髓,学习设计模式可以针对不同的问题给出更加优雅的解答 单例模式可分为俩种:懒汉模式和饿汉模式.俩种模式分别有不同的优势和缺 ...

  3. Android中Fragment的两种创建方式

    fragment是Activity中用户界面的一个行为或者是一部分.你可以在一个单独的Activity上把多个Fragment组合成为一个多区域的UI,并且可以在多个Activity中再使用.你可以认 ...

  4. 驱动01.LED

    1.写出leds_open,leds_write函数2.1告诉内核这几个函数的存在?定义一个结构体file_operations2.2把这个结构体告诉内核?用register_chrdev(major ...

  5. java中判断字符串是否为只包含数字

    1.用Java自带的函数 public static boolean isNumeric(String str){ for(int i=str.length();--i>=0;){ if (!C ...

  6. 如何使用RobotFramework编写好的测试用例

    如何使用Robot Framework编写优秀的测试用例 概述 命名 测试套件命名 测试用例命名 关键字命名 setup和teardown的命名 文档 测试套件文档 测试用例文档 用户关键字文档 测试 ...

  7. Android,适合Restful网络请求封装

    借助volley.Gson类库. 优点 网络请求集中处理,返回值直接为预期的对象,不需要手动反序列,提高效率,使用时建立好model类即可. 使用效果 DataProess.Request(true, ...

  8. 快速Android开发系列网络篇之Android-Async-Http

    先来看一下最基本的用法 AsyncHttpClient client = new AsyncHttpClient(); client.get("http://www.google.com&q ...

  9. [Java Collection]List分组之简单应用.

    前言 今天有一个新需求, 是对一个List进行分组, 于是便百度到一些可用的代码以及我们项目使用的一些tools, 在这里总结下方便以后查阅. 一: 需求 现在我们一个数据库表t_series_val ...

  10. PHP_VERSION_ID是如何定义的

    PHP_VERSION_ID是一个整数,表示当前PHP的版本,从php5.2.7版本开始使用的,比如50207表示5.2.7.和PHP版本相关的宏定义在文件 phpsrcdir/main/php_ve ...