In Other languages: English

FreeMind Hacking

FreeMind 是我的 最爱,我每天都在用 FreeMind 写文档或者查询我的知识库。

什么是 FreeMind

参见:

为什么要对 FreeMind 进行增强和改动?

简单的说,因为 FreeMind 挠到了我的痒处。

  • FreeMind 的输出文档中,中文被编码,形如 &#x…; 根本无法直接识别;
    • 虽然一般用户不会直接用写字板查看 FreeMind 文件,但是当使用版本控制后,需要经常在版本间做比较,

不能显示为中文,就太不方便了。

  • 浪费存储空间,较 UTF-8 编码,文件会大三倍左右。
  • FreeMind 将节点信息也保存在文件中,一些和内容无关的信息,如:节点的打开、关闭的状态,修改时间等 保存在文件中。
    • 当没有改变任何内容,仅仅展开一个节点,文件就可能被改变。这对使用版本控制系统维护文档来说,是灾难。

感谢 开源! FreeMind 的开源的本质,让扩展称为可能。

(!) 功能扩展的 FreeMind 命名为 FreeMind-MMX,因为该增强版本的输出文件除了 *.mm 外,还有一个可以忽略的 *.mmx 辅助文件。

截屏图

软件下载

可以从 SourceForge 下载群英汇增强的 FreeMind 版本

访问源代码

FreeMind-MMX 代码使用 Mercurial(Hg) 维护。感谢 SourceForge 提供代码托管。

浏览源代码:

克隆源代码到本地:

  • 只克隆补丁树:
    $ hg clone http://freemind-mmx.sourceforge.net/hg/freemind-ossxp/.hg/patches
    
  • 克隆 FreeMind 原始代码和补丁树:
    $ hg qclone http://freemind-mmx.sourceforge.net/hg/freemind-ossxp
    

(!) 关于如何使用 Mercurial:

(!) 在转换到 Mercurial 之前一直使用 Subversion 对 FreeMind 的补丁做版本控制。 转换的原因:

  • Subversion 适合于企业和商业软件的版本控制;
  • 对于开源软件的版本管理,选择分布式版本控制是最佳选择;
  • 因为软件开源,代码共享没有权限控制的考虑,人人拥有全部代码;
  • Mercurial 最接近 Subversion 的使用习惯(至少比 Git 更贴近 SVN)B)
  • Mercurial 下,每个人克隆的版本库没有主次之分,都是各自独立的拷贝;

FreeMind-MMX 版本问题报告

可以点击下面的链接查询已有的问题报告:

如果您有新问题,创建一个 Ticket

什么是 Trac

本网站用 Trac 构建,用于 FreeMind-MMX 的项目管理。

  • Trac 是一个基于 web 的项目管理工具。
  • Trac 首先是一个 Bug Tracking 工具,可以通过创建 Ticket 来进行缺陷跟踪以及任务管理等;
  • Trac 还是一个项目展示平台,通过 Wiki 技术轻松维护主页;
  • Trac 和版本库控制系统深度整合,包括 Subversion, Hg, Git, Bazaar 等。能够将代码提交事件和 Ticket 变更等事件汇总,还可以通过扩展的 Wiki 语法整合。

参见: WhatIsTrac

如何使用 Trac

本站点的 Trac 部署支持和下列工具的整合,除了通过 Web 页面之外,用下面的方法访问:

  1. Eclipse 下编辑 Trac 的 Wiki 页面,不再担心编辑的内容丢失。参见:
  2. 利用 Eclipse 的 Mylyn, 将 Trac 的 Tickets 整合到任务列表中。参见:
  3. Subversion 版本提交界面中直接从 Trac 获取 tickets 列表,并作为 Commit log。参见:

/!\ 注意:不支持匿名连接,可以先 注册一个账号,再试试。

关于 Trac 使用帮助

参见 WhatIsTrac

Attachments