导航菜单
登录 注册

插件简介

AAEditor 是一款基于 Typecho 自带编辑器二次开发的编辑器插件。仅能用于 Typecho1.2 ,是 XEditor 插件的升级版。

XEditor 一款基于 Vditor 的 Markdown 编辑器 for Typechoxiamp.net/archives/xeditor-a-vditor-based-markdown-editor-for-typecho.html2021-05-04

插件功能

features:

  • title: 实时预览
    details: 左边编写,右边预览
  • title: 额外增强功能
    details: 新增多个短代码
  • title: 前台短代码渲染
    details: 全自动处理,无需修改主题
  • title: 模块化编写
    details: 方便二改
  • title: 附件插入优化
    details: 支持一键插入所有图片附件
  • title: 图片链接优化
    details: 使用短图片链接方式插入图片

插件缺点

因为 Typecho 编辑器原来就没做好同步处理,所以这个插件不可避免地继承了预览不同步的问题。

插件预览

截图

短代码预览

AAEditor 短代码测试【2023.09.18更新】 - 虾米皮皮乐 - Typecho 原创主题站xiamp.net/archives/aaeditor-short-code-test.html

插件使用

二次开发

推荐使用 PHPStorm 进行开发,模块 css 推荐使用 PHPStorm 的 File Watcher 功能进行编译。

PHPStorm_File_Wather
PHPStorm_File_Wather

程序:sass 的路径(npm install -g sass sass-cli)
实参:$FileName$:$FileNameWithoutExtension$.css --style compressed
输出路径:$FileNameWithoutExtension$.css:$FileNameWithoutExtension$.css.map
工作目录:$FileDir$

如何自行增加按钮

请查看插件的README.md自述文档

摘要有短代码漏出

不知道为什么 Typecho 的钩子不生效,那就要修改主题调用插件的过滤。
把

<?php $this->excerpt(100, ...); ?>

替换为

<?php
$content = $this->excerpt;
$all = Typecho_Plugin::export();
if (array_key_exists('AAEditor', $all['activated'] && method_exists('\TypechoPlugin\AAEditor\Util', 'excerptEx')) {
  $content = \TypechoPlugin\AAEditor\Util::excerptEx($content, $this, null);
}
echo \Typecho\Common::subStr(strip_tags($content), 0, 100, '...');

Pjax 如何回调

如果你的主题有 Pjax 回调代码填写的地方,填入下边的代码即可。

// 创建一个新的Event实例
var event = new Event('pjax:complete');

// 触发document上的'pjax:complete'事件
document.dispatchEvent(event);

TePass 插件导致短代码漏出问题(其他插件导致的也类似)

修改 TePass 的

Plugin.php

,找到

excerpt

函数,如下所示,可能在将来的版本有变化。

public static function excerptEx($html, $widget, $lastResult){
    $TePassRule='/<!--TePass start-->([\s\S]*?)<!--TePass end-->/i';
    preg_match_all($TePassRule, $html, $hide_words);
    if(!$hide_words[0]){
        $TePassRule='/&lt;!--TePass start--&gt;([\s\S]*?)&lt;!--TePass end--&gt;/i';
    }
    $html=trim($html);
    if (preg_match_all($TePassRule, $html, $hide_words)){
        $html = str_replace($hide_words[0], '', $html);
    }
    return $html;
}

修改为

public static function excerptEx($html, $widget, $lastResult){
    if ($lastResult) $html = $lastResult; // 主要是增加了这一句
    $TePassRule='/<!--TePass start-->([\s\S]*?)<!--TePass end-->/i';
    preg_match_all($TePassRule, $html, $hide_words);
    if(!$hide_words[0]){
        $TePassRule='/&lt;!--TePass start--&gt;([\s\S]*?)&lt;!--TePass end--&gt;/i';
    }
    $html=trim($html);
    if (preg_match_all($TePassRule, $html, $hide_words)){
        $html = str_replace($hide_words[0], '', $html);
    }
    return $html;
}

插件历史

这里不再发布完整更新日志,相关更新日志请在插件设置页面查看。

更新正式版 0.4.0
1.重构代码,支持模块按需启用
2.重写多标签卡片,支持可视化插入多标签
3.前端样式大量优化
4.静态资源支持手动切换 CDN
5.增加编辑器预览窗口开关
6.编辑器支持关闭视频实时预览
7.支持编辑器页面实时切换代码高亮主题
8.支持更多短代码
INFO

短代码模块默认不开启,默认情况下是不会像截图那么多按钮的,请自行到插件设置里打开

资源下载

解决Typecho 1.1 版本 Helper::widgetById() 方法报错
上一篇
Ginto:响应式门户主题
下一篇

精选留言

已有 714 条评论

  1. 444
    • 河北省

    看看插件

  2. jocry
    • 湖南省

    插件体验一下

  3. info
    • 云南省

    体验一下

  4. 666
    • 云南省

    谢谢分享

  5. anyming
    • 山东省

    报错提示
    插件AAEditor的配置信息没有找到

  6. 试试
    • 上海市

    已注明来源网站名称或链接

  7. 来福
    • 上海市

    已注明来源

  8. simon
    • 日本大阪Sakura樱花云数据中心

    看着很不错

  9. 夜
    • 江西省

    来看看版本更新情况

  10. Benxp
    • 广西

    支持一下呵呵

  11. Jerryzxcv
    • 新加坡Linode数据中心

    看看插件

  12. final
    • 浙江省

    谢谢分享

  13. 2121
    • 山西省

    谢谢分享

  14. 12
    • 辽宁省

    不错哒

  15. Mr.He
    • 安徽省

    是Markdown语法吗?

  16. jjj
    • 加拿大

    结束啥

  17. book
    • 云南省

    试试新版本

  18. book
    • 云南省

    不错不错

目录
正在加载目录