用Redmine的Macro优化其wiki页面 (jQuery使用)
概要
本文说明了如何用Redmine的Macro功能结合jQuery和jQueryUI优化Redmine的wiki页面的显示。
以下代码均为在 ${redmine_root}\lib\redmine\wiki_formatting\macros.rb
文件中追加macro实现。
Redmine版本为: 0.8.1
环境配置
在 ${redmine_root}\public\javascripts 文件夹中加入 jquery-1.3.2.min.js
和 jquery-ui-1.7.1.custom.min.js库。
在 ${redmine_root}\public\stylesheets 文件夹中加入 jqueryui 的主题CSS,比如cupertino。
jqueryUI相关的CSS和JS库请在jqueryui.com
下载。
每日工作情况一览表
脚本:
desc "Add accordion in wiki Daily Report page."
macro :accordion_script do |obj, args|
<<"EOB"
<div id="linkDailyReport"></div>
<link rel="stylesheet" type="text/css" media="screen" href="/stylesheets/cupertino/jquery-ui-1.7.1.custom.css" />
<script type="text/javascript" src="/javascripts/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="/javascripts/jquery-ui-1.7.1.custom.min.js"></script>
<script type="text/javascript">
jQuery.noConflict();
var $j = jQuery;
$j(function(){
var index = 0;
$j("#divWiki p").each(function(i){
if (this.innerHTML.toLowerCase().indexOf("<script ") >= 0) {
return;
}
var linkText = $j(this).text();
if (linkText.search("^2009") == 0) {
var strYear = linkText.substr(0,4);
var strMonth = linkText.substr(5,2);
var month = strYear + "-" + strMonth;
var monthId = "#" + month;
if ($j(monthId).length == 0) {
$j("#linkDailyReport").append('<h3><a href="#">' + strYear + '-' + strMonth + '</a></h3><div id="' + month + '"></div>');
index++;
}
$j(monthId).append('<p>' + $j(this).html() + '</p>');
$j(this).remove();
}
});
$j("#linkDailyReport").accordion({
autoHeight: false
});
$j("#linkDailyReport").accordion('activate', index - 1);
});
</script>
EOB
end
使用方法:
h1. 作業日報
{{accordion_script}}
[[作業日報テンプレート]]
[[2009-03-18(水)作業日報]]
[[2009-03-19(木)作業日報]]
[[2009-03-23(月)作業日報]]
[[2009-03-24(火)作業日報]]
[[2009-03-25(水)作業日報]]
[[2009-03-26(木)作業日報]]
[[2009-03-27(金)作業日報]]
[[2009-03-30(月)作業日報]]
[[2009-03-31(火)作業日報]]
[[2009-04-01(水)作業日報]]
[[2009-04-02(木)作業日報]]
[[2009-04-03(金)作業日報]]
[[2009-04-06(月)作業日報]]
.........
效果图:
在wiki页面的H2、H3上加上编号和索引
脚本:
desc "set section number for h2 h3"
macro :section_number do |obj, args|
<<"EOB"
<script type="text/javascript" src="/javascripts/jquery-1.3.2.min.js"></script>
<script type="text/javascript">
jQuery.noConflict();
var $j = jQuery;
var space = " ";
var countH2 = 0;
var countH3 = 0;
$j(".heading2,.heading3").each(function(i) {
if (this.className == "heading2") {
countH2++;
$j(this).prepend(countH2 + space);
countH3 = 0;
} else {
countH3++;
$j(this).prepend(countH2 + "." + countH3 + space);
}});
countH2 = 0;
countH3 = 0;
$j(".wiki h2,.wiki h3").each(function(i) {
if (this.tagName.toLowerCase() == "h2") {
countH2++;
$j(this).prepend(countH2 + space);
countH3 = 0;
} else {
countH3++;
$j(this).prepend(countH2 + "." + countH3 + space);
}});
</script>
EOB
end
- 大小: 72.2 KB
分享到:
相关推荐
redmine_tagging, 为Redmine问题/wiki页面添加简单标签支持 Redmine标签插件 这里插件向Redmine添加有用的标记功能:在边栏中标记云标记建议和自动完成Redmine搜索集成( 可能搜索 #tag 以查找 wiki/问题)基于标签的...
redmine-personal_wiki_page | | 将指向个人 wiki 页面的链接添加到 Redmine 的标题安装确保您的 Redmine 安装中有Gemfile.local文件。 添加到您的Gemfile.local : gem "redmine-personal_wiki_page" 然后执行: $ ...
redmine-plugin-wiki-external 强制使用外部 wiki(例如单独的 MediaWiki 安装)而不是内部 Redmine wiki 的 Redmine... 请注意,列出给定 Redmine 项目的 wiki 页面的能力不适用于外部 wiki。 您需要在自己的 wiki 平
用于添加分页宏的 Redmine 插件,用于指定 wiki 页面中的分页位置。 {{page_break}} macro用法: 在浏览器中打印: 将 wiki 页面导出为 PDF: 导出的PDF: 支持的版本 Redmine 2.6,trunk(仅使用本地测试) ...
整个Redmine的使用手册没有包含安装配置的内容,主要是因为Redmine安装配置的资料在网络上已经非常丰富,所以手册的主要目的是帮助用户快速学习如何在Redmine中进行日常工作,包括创建项目、提交和处理问题。...
5. **性能优化**:调整配置以提高Redmine的性能和响应速度。 四、Redmine Sprints 插件与Scrum-pm插件 `Redmine Sprints Plugin 用户手册.pdf` 和 `Redmine 安装 scrum-pm插件.pdf` 关注的是Scrum敏捷开发方法在...
Redmine的界面直观易用,项目页面是其核心,这里可以查看项目概述、里程碑、问题、文件等。创建新项目时,需填写项目名称、描述、负责人等信息,并设置相应的权限。权限管理是Redmine的一大特色,它允许管理员定义...
此插件将允许将draw.io图表嵌入 Wiki页面,发行说明和发行说明。 一张纸条 在提交问题之前,请仔细阅读README.md文件(此页面):许多看似有缺陷的替代品是宏的预期行为,因此在开始使用此插件以及发现异常行为之前...
Redmine Wiki扩展插件 Wiki Extensions是一个插件,它向Redmine添加了几个有用的Wiki宏。 插件安装 将插件目录复制到插件目录中 迁移插件:rake redmine:plugins:migrate RAILS_ENV = production 启动Redmine ...
如果Redmine尚未集成jQuery,需要将其添加到项目的`public/javascripts`目录,并在相应页面中引入。同样,可能还需要创建或修改CSS样式来调整预览图片的样式。 3. **识别图片附件**: 在对应的视图模板中,遍历每...
通过这种方式,我们能够使用JMeter有效地自动化批量创建Redmine中的Issue,这对于大型项目或需要大量初始化数据的场景非常有用。同时,这也能帮助测试Redmine系统的性能和稳定性,尤其是在高并发情况下。
Redmine 使用说明文档 一、Redmine 概述 Redmine 是一个基于 web 的项目管理软件,基于 ROR(Ruby on Rails)框架开发的一套跨平台项目管理系统。它支持多种数据库,除了和 DotProject 的功能大致相当外,还有不少...
Redmine wiki 任务列表 添加宏,允许您将带有可点击复选框的简单任务列表嵌入到 Redmine 的 wiki 安装 只需将redmine_wiki_todos文件夹放入 Redmine 的plugins文件夹并重新启动 Redmine。 用法 将这样的内容添加到您...
Redmine wiki 页面显示 Redmine 的 Wiki 信息,包括 Wiki 文章和 Wiki 链接。 13. 版本库 版本库页面显示项目的版本库信息,包括版本库统计和版本库链接。 14. 项目配置 项目配置页面显示项目的配置信息,包括...
未来,随着团队对Redmine使用的深入探索,还可以发掘更多实用的功能,进一步优化项目管理工作流程。同时,对于Redmine无法满足的特定需求,可以考虑结合其他工具或方法,共同构建一套更为完善的项目管理体系。
- **创建和编辑Wiki页面**:在Redmine中,每个项目都可以拥有一个Wiki空间,用于存储文档、会议记录等信息。管理员或具有相应权限的用户可以创建新页面并进行编辑。 - **链接和引用**:在编写Wiki内容时,可以通过...
在使用 Redmine 进行项目文档管理时,wiki 页面是重要的组成部分,它允许团队成员创建、编辑和组织共享知识。然而,Redmine 的默认样式可能无法满足所有用户对于界面美观和个性化的需求。为了解决这个问题,我们可以...