导航菜单
登录 注册

插件简介

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

插件功能

features:

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

插件缺点

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

插件预览

截图

短代码预览

插件使用

二次开发

推荐使用 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;
}

插件历史

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

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

资源预览

资源下载

资源为外部正规网站提供,本站不保存任何下载内容,请自行甄别安全性。
解决Typecho 1.1 版本 Helper::widgetById() 方法报错
上一篇
Ginto:响应式门户主题
下一篇
广告

精选留言

已有 699 条评论

  1. 小新
    湖北省

    很好,我来试试.

  2. zhen
    吉林省

    试试这个新的,豆腐乳? 好像再哪个群里见到过呢

  3. hu
    上海市

    谢谢分享

  4. 测试
    广东省

    该评论仅登录用户及评论双方可见

  5. QAQ
    江苏省

    感谢分享

  6. 来了
    广东省

    看看 用用 试试

  7. ssa
    北京市

    很好,我来试试.很好,我来试试.

  8. imbalaomao
    上海市

    该评论仅登录用户及评论双方可见

  9. kasyapa
    湖北省

    嘎达山的东西必须试试

  10. xpdiy0
    山东省

    试一下。。。谢谢。。