bookstack增加自动生成菜单功能

5 篇文章 0 订阅
1 篇文章 0 订阅

查看效果

按下按钮

按下前
在这里插入图片描述
按下后
在这里插入图片描述

修改代码

修改 第一处

修改BookStack.V2.2_Windows_amd64\views\document\markdown_edit_template.html

<a href="javascript:;" data-toggle="tooltip" data-title="目录排序"><i class="fa fa fa-sort-amount-asc last" name="summary" unselectable="on"></i></a>

在这行后面加入以下html

<a href="javascript:;" data-toggle="tooltip" data-title="生成目录"><i class="fa fa fa-file-text last" name="summarybuild" unselectable="on"></i></a>

修改第二处

修改BookStack.V2.2_Windows_amd64\static\jsmarkdown.js文件

else if(name=="summary"){//目录排序
           var cm = window.editor.cm;
           var selection = cm.getSelection();
           if (selection === "") {
               cm.replaceSelection("<bookstack-summary></bookstack-summary>" + selection);
           }else {
               var selectionText = selection.split("\n");
               for (var i = 0, len = selectionText.length; i < len; i++) {
                   selectionText[i] = (selectionText[i] === "") ? "" : "<bookstack-summary></bookstack-summary>" + selectionText[i];
               }
               cm.replaceSelection(selectionText.join("\n"));
           }
       }

在这行一个if语句

else if(name=="summarybuild"){//目录排序
            var cm = window.editor.cm;
            var nodes =  window.documentCategory;
            var tree_str=""
            for (var i=0;i<nodes.length;i++)
            { 
                var item_tx = nodes[i]['text'].split('<small')[0];
                var identify = nodes[i]['identify'];
                tree_str =tree_str+"\n* "+"["+item_tx+"]"+"($"+identify+")"
            }
            cm.replaceSelection("<bookstack-summary></bookstack-summary>"+tree_str);
       }

效果
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值