Emacs阅读chm文档

*/-->

code {color: #FF0000}
pre.src {background-color: #002b36; color: #839496;}

code {color: #FF0000}
pre.src {background-color: #002b36; color: #839496;}

code {color: #FF0000}
pre.src {background-color: #002b36; color: #839496;}

code {color: #FF0000}
pre.src {background-color: #002b36; color: #839496;}

code {color: #FF0000}
pre.src {background-color: #002b36; color: #839496;}

code {color: #FF0000}
pre.src {background-color: #002b36; color: #839496;}

code {color: #FF0000}
pre.src {background-color: #002b36; color: #839496;}

code {color: #FF0000}
pre.src {background-color: #002b36; color: #839496;}

Emacs阅读chm文档

在Emacs中查看html的文档,可以通过我这篇w3m查看html文档 文章来进行。但是chm文档是一种html文档的编译版本,在Emacs中无法打开。

那么,要想在Emacs中查看chm,首先要了解chm文档到底是怎样的。
我们打开一个tcl的chm文档,点击任意一个页面,右键查看“属性”,可以看到其中有一项:

地址: mk:@MSITStore:C:\Tcl8.6\doc\ActiveTclHelp8.6.chm::/tdom/dom.html

这个地址可以用系统自带的hh.exe来打开:

hh mk:@MSITStore:C:\Tcl8.6\doc\ActiveTclHelp8.6.chm::/tdom/dom.html

但是,这个不是标准的url,也无法用浏览器打开。另外,我们也不知道要打开的是哪一个html页面。

为了解决这个问题,我们这里有几种方式:

  • 使用keyhh.exe来打开:

    KeyHH -MyHelp -#klink "ActiveX Control Wizard" htmlhelp.chm

    这就是用一个更加高级一点的hh.exe程序来打开chm文档,只要Id配置相同,就只会打开一个chm文档。
    keyhh.exe已经停止更新了,官方网站已经关闭了,从这里还可以下载:

    http://api.256file.com/download/66010_keyhh.exe

    但是,里面好像有个bug,就是当第一次搜索的时候,如果需要选择的时候,就会卡死了。把默认的选项"-#klink" 改为 "-#alink" 之后就可以了。

    (defun chm-help--lookup-chm (file-path keyword)
    "Open a window showing the documentation for the word under the point"
    (interactive "fChm File: \nSKeyword: ")
    (start-process "keyhh" nil "keyhh.exe"
    (concat "-" mode-name) ;; use mode name as ID
    "-#alink" (format "'%s'" keyword)
    file-path)) (chm-help--lookup-chm "c:/tcl/doc/ActiveTclHelp8.5.chm" "dom")
  • 使用archmage + chmview
    这个只能在linux上使用,archmage没有windows版本。
  • 先反编译
    先用自带的hh.exe命令反编译成html文件,然后,用w3m查看。

    hh -decompile X:\A Y:\B.chm

Date: 2017-01-14 17:11

Created: 2017-01-14 周六 23:13

Validate

Emacs阅读chm文档的更多相关文章

  1. 作为一个程序猿,是不是经常会用到.chm文档,但是我们可能会遇到这样那样的问题,比如.chm文档打不开

    .chm文档不能正常打开,一般有两种情形下会造成文档打不开, 1.系统语言栏的语言和文档的语言类别不一同,也就是说比如你的文档是中文版的,但是系统设置的语言是其他国家的.不过一般这种情况很少出现 ,谁 ...

  2. 在Firefox中发现一个在Linux下查看chm文档的插件

    在Firefox浏览器插件中搜索插件chmfox插件,安装后就可以在linux下通过Firefox浏览器阅读chm文档了.

  3. 制作Aspose CHM文档的过程记录

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  4. 生成chm文档工具- Sandcastle -摘自网络

    Sandcastle是微软官方的文档生成工具,NDoc开发停止后,这个貌似也是唯一的一个这方面的工具.它从dll文件及其xml注释文件能够 生成完整的帮助文档,支持多种生成格式(Helpe1x:chm ...

  5. 阅读MDN文档之CSS选择器介绍(一)

    本文为阅读MDN文档笔记 目录 Different types of Selectors Attribute Selectors Presence and value attribute select ...

  6. QuickChm 制作chm文档 chm文档脚本错误,乱码

    最近学习bootstrap,到网上找了一些chm格式的文档,发现有些老旧,于是决定自己制作一个 用过以下这些chm制造器,包括easychm,chm精灵,chmeditor,chmfactory等等, ...

  7. 最简单,最实用的数据库CHM文档生成工具——DBCHM

    DBCHM支持SqlServer/MySql/Oracle/PostgreSQL等数据库的表列批注维护管理. DBCHM有以下几个功能 表,列的批注可以编辑保存到数据库. 表,列的批注支持通过pdm文 ...

  8. 如何生成项目的chm文档

    如何生成项目的chm文档 2014-11-30 Generate .chm based documentation of your project using SandCastle  tool

  9. IDEA生成doc文档-生成chm文档

    首先,打开IDEA,并找到Tools -> Generate JavaDoc- 可供查询的chm比那些HTML页面好看多了. 如果您用过JDK API的chm文档,那么您一定不会拒绝接受其它第三 ...

随机推荐

  1. NYOJ-1057 寻找最大数(三)(贪心)

    寻找最大数(三) 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述 给出一个整数N,每次可以移动2个相邻数位上的数字,最多移动K次,得到一个新的整数. 求这个新的整数的 ...

  2. incredibuild agent service is not running

    incredibuild 不用介绍了,今天因为服务没有启动报错显示为: incredibuild agent service is not running 解决方法为: 在Incredibuild的安 ...

  3. jquery 复选框

    jquery 选中复选框 $("input[type='checkbox']").prop("checked", true); jquery 判断复选框是否被选 ...

  4. QTP脚本汇总比较有价值

    1.Object Spy的Tips Hold the CTRL key to change the window focus or perform other mouse operations  2. ...

  5. DNS服务架设 redhat linux

    安装dns服务和管理工具 yum install bind   bind-chroot bind-utils -y 服务名为named 在没有启动服务之前服务的主配置文件在/etc/named.con ...

  6. 记一次-angular-数字格式化

    一个收费功能模块,需要做数据验证. input标签的ng-model的数据格式化 <input type="number" class="form-control& ...

  7. CSU 1639 队长,我想进集训队!

    水题 #include<cstdio> int main() { int x1, x2, x3, u, h; int n; while (~scanf("%d", &a ...

  8. Memory and Scores

    Memory and Scores 题目链接:http://codeforces.com/contest/712/problem/D dp 因为每轮Memory和Lexa能取的都在[-k,k],也就是 ...

  9. linux版本选择

    桌面系统           -- Ubuntu,开发人员也喜欢用Ubuntu 服务器端           -- RHEL或CentOS,RHEL要钱 对安全要求很高  -- Decian或Free ...

  10. html5权威指南:客户端分区响应图

    客户端分区响应图:http://www.cnblogs.com/enjoymylift/p/5984338.html