Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

想请问如何将amwiki完成的wiki整合到github上的wiki上呢 #20

Closed
YaoXuanZhi opened this issue Dec 8, 2016 · 41 comments
Closed

Comments

@YaoXuanZhi
Copy link

作者大大你好,我之前是将amwiki编写的文档和图片都上传到bitbucket中,后来发现这样闭门造车是不行的,想将这些wiki发布到github上,而编辑的时候,还是使用amwiki来编写、浏览,请问有没有办法这样做呢

@YaoXuanZhi
Copy link
Author

貌似github官方那个推荐的Github Page的做法只能创建一个仓库作为演示网站用吧,这个可能不太符合我的期望呢,我比较想直接将amwiki生成的md和图片导出,然后交由在github上的wiki同步,希望大大提供这个功能的支持啦

@TevinLi
Copy link
Owner

TevinLi commented Dec 9, 2016

我也想过 github wiki,但是 github wiki 貌似不支持目录(无视文件夹深度,扔掉文件夹信息按同级显示所有文档),这与 amWiki 的管理方式有点点区别,所以就没投入精力了
导出到也是一个办法,但是文件夹的问题还是不好解决呢,如果把文件夹的名称直接转移到文件上,感觉又太长了

@YaoXuanZhi
Copy link
Author

哦,明白了。我也发现Github wiki貌似不支持二级目录了,感觉略微蛋疼o(╯□╰)o

@YaoXuanZhi
Copy link
Author

不过,虽然没有二级目录这个功能,但是可否将amwiki支持导出为下图的格式呢,这种方式可以兼容二级目录的特性
image

@TevinLi
Copy link
Owner

TevinLi commented Dec 9, 2016

生成这个格式倒是没什么,但是这样有一个问题,比如说 1 编辑上手 这一条,这个必须是文件而不能是目录,这个文件上放什么内容呢?
(如果说把这个目录下的导航放这里,也就是内页的页面正文放一个导航,会不会感觉有点奇怪,但是除了导航,好像又没其他东西可以放)

@YaoXuanZhi
Copy link
Author

哦,这个我没有细想呢,我抽空在github上测试一下吧,看看github wiki上的md的布局方式是怎样的,方便以后设置那个导出格式。其实我觉得,如果可以为amwiki添加一个github的编辑模式是非常不错的,貌似目前的github wiki本地编辑器上都没有这个多级文件目录的功能呢,国内的coding倒是支持了,如果提供这么一个功能,我想应该比较受欢迎的,如果再增加这个一个接口来粘贴图片并自动上传到Github的服务器上相比更好。

@YaoXuanZhi
Copy link
Author

另外,我觉得目前大大做的amwiki比较适合作个人知识wiki库,目前我已着手将工作学习中的知识脉络都用amwiki来管理啦,相当方便,而且支持站内查询的功能;但是,假设用户想拉一些小伙伴来一起翻译某些外国的SDK、整理某些开源项目的使用教程等等的时候,我觉得,此时github wiki这种互动性比较强的在线wiki是非常适合的所以希望大大增加一个支持编辑github wiki的编辑模块啦

@YaoXuanZhi
Copy link
Author

哦,作者大大,你好,我貌似发现了一个方法来创建多级目录了,你看看这个
image
这个是我参照别人的一篇博客来实现的,就是将amwiki里的$navigation.md文件的名字改成了_sidebar.md之后,就可以生成了。建议你在下一个版本里提供这个功能的支持吧。

@TevinLi
Copy link
Owner

TevinLi commented Dec 9, 2016

自己写导航不用 github 的,这个可以有,嘿嘿!
这个建议很不错,欢迎更多的这种建议呀,有些时候考虑太多,反应一不小心就把某些影响结果的细节给忽略了,非常感谢,这个功能我计划优先一些开发 😊

@TevinLi
Copy link
Owner

TevinLi commented Dec 9, 2016

另外,图片好像不需要单独上传,github wiki 的图片直接就能访问,而且还支持文件夹

@YaoXuanZhi
Copy link
Author

YaoXuanZhi commented Dec 9, 2016

嗯嗯,github wiki的文件目录管理是依照上传的时候确定的,所以,在“导出github wiki”时,只需要设置这个wiki的url,然后导出的时候,将.md文件上的所有相对url链接全部填充为包含wiki地址的URL即可以啦。 不过我觉得,如果想尽量让Github Wiki兼容amWiki上面的板式,可能需要在_Sidebar.ext、_Header.ext和_footer.ext上做文章了,很可惜,我也不懂这些可以定制Github Wiki页面的规则文件,不过经过百度等搜索一番之后,基本可以确认,这个和extjs有关,希望这个可以帮助到大大啦。期望大大可以早点发布这个新版本啦o(≧v≦)o

补充,以上关于本地.md文件在github wiki上对应的url的生成规则的说法是错误的,实际上,所有.md文件在上传到github wiki之后,其都会将其默认为当前wiki的下一级目录的。对于github wiki我也不熟悉,希望没有误导到大大啦。

@YaoXuanZhi
Copy link
Author

另外,还有一个问题啦,貌似Github Wiki上面的展示页面是通过文件名来指定的,如下图所示:
image
我觉得这问题应该可以通过设置xxx.ext的方式来解决的,不过我也不懂,希望对大大有所帮助吧

@TevinLi
Copy link
Owner

TevinLi commented Dec 9, 2016

前面这个编号肯定不用了,不过没编号的时候会有一定几率重名,到时候看看可不可以用多加空格的方式区分重名文件

@YaoXuanZhi
Copy link
Author

YaoXuanZhi commented Dec 9, 2016

我觉得,还是将可能出现命名冲突的文件列表交由用户编辑比较优雅一点,如果可以为此增加一个控件来直接对所有命名冲突的文件名进行编辑,那就更好啦♪(^∀^●)ノ

@TevinLi
Copy link
Owner

TevinLi commented Dec 9, 2016

分两步吧,先用一个简单的提示,提示有哪些重名的,可以忽略重名继续导出,也可以取消了去改名然后再次导出
虽然确实不是很方便,不过能先发布一个版本吧,后面回头再加一个便捷的集中修改面板,毕竟重名应该是一个概率不是很高的事件,体验问题可以优化的地方还有很多,后面会单独来一次提升,现在还有很多其他的功能性需求在排队

@YaoXuanZhi
Copy link
Author

YaoXuanZhi commented Dec 9, 2016

嗯嗯,麻烦啦。对啦,貌似.md可以借助html里面的语法来拓展吧,有没有办法让那个侧边栏支持子目录折叠功能呢,能和amWiki左边的侧边栏那样最好啦,如何这个功能也能在Github Wiki上实现了,那就美妙啦(^-^)V。
总之辛苦大大啦,目前正坐等你的新版本呢,希望可以尽快用上,然后再聚集小伙伴过来一起建立Wikiㄟ(≧◇≦)ㄏ

@TevinLi
Copy link
Owner

TevinLi commented Dec 9, 2016

折叠可能就没法啦,虽然都是转为 html,但一般这种情况只会允许信息内容存在,不会允许功能代码存在的,都屏蔽掉了

@YaoXuanZhi
Copy link
Author

我,原来如此,我看到有一些wiki支持折叠的,所以以为它也可以呢。对啦,我后来测试发现,github wiki会自动把任何重名的文件自动替换的呢,也就是假设有多个目录,其中某两个目录下有一个相同的文件名的不同文件,当我们把它们上传到github wiki后,就会发现,虽然在Pages上依然有这两个文件名存在,但是它们所指向的链接地址是一样的,这点要注意啦。另外,github上的wiki貌似是无视文件目录的,这样的话,我们上传上去后,文件的相对路径统一在当前wiki下,可能图片上面也是有类似的问题,所以,amwiki想要实现导出到github wik的功能,可能会比想象中更加困难呢。

@TevinLi
Copy link
Owner

TevinLi commented Dec 9, 2016

对的,就是这样无视文件夹,我一开始被这个无语得没看下去了:sweat_smile:
不过图片路径替换不算复杂,因为 amWiki 的图片也是从同一位置开始算相对路径的

码云平台这点不错呀,已经支持二级目录了
不过 github 的意义不一样,它的地位太难以动摇了,所以还是考虑 github 优先吧

@YaoXuanZhi
Copy link
Author

唉,我也对它无语啦,这么一个明显的bug没有理由不去修复啊,偏偏官方团队就将它晾在一边:sweat_smile: 希望它早日可以修复这个bug啦。

另外,辛苦大大啦

@YaoXuanZhi
Copy link
Author

大大,我又挖掘到github上一个隐藏的功能啦,之前一直没有注意到呢,我们可以通过为自己的项目的master下新建一个docs文件夹,然后将amwiki生成的所与文件拷贝到这个文件夹内,将其上传到此项目上。然后执行项目里的“Setting”,往下找到根据docs生成Github Page的方式来显示,然后就可以直接根据“username.github.io/projectname”来访问这个Github Page的页面了,这个和xxx.github.io的效果是一样的,应该是github官方为每个项目提供的静态演示网站来的。基于这种做法,amwiki就可以完美部署在github的项目上啦。
image

image
在这个下拉列表的第一项里,主要是给那些纯静态网页的项目来做为演示的,可以使用Github官方提供的几种模板来生成一些基本的网页,其文件布局和amwiki很相似呢。

@YaoXuanZhi
Copy link
Author

YaoXuanZhi commented Dec 9, 2016

虽然我已经找到基于现有的amwiki和github提供的页面演示功能来解决多个小伙伴协同编辑某种文档的方法啦,不过我还是建议大大继续完善导出到github wiki上的功能啦,毕竟Github官方提供的wiki系统比较地道点,而且是一个独立的仓库来的,可以做很好的版本管理,并且对项目的针对性也强。

@TevinLi
Copy link
Owner

TevinLi commented Dec 10, 2016

没事,在我的规划中,特定环境支持本身就是我想做的一方面,要不我也不会研究一下 github wiki 了(将来可能还不止是 github wiki),现在能发现解决方案,也是一个不错的事情

@YaoXuanZhi
Copy link
Author

好的,期待你的新版本发布啦o( ̄▽ ̄)o

@TevinLi
Copy link
Owner

TevinLi commented Dec 11, 2016

已经在 v0.7.6 版本中,添加文库导出模块

[导出效果预览]

@YaoXuanZhi
Copy link
Author

YaoXuanZhi commented Dec 11, 2016

感谢大大的给力支持,已经看到了,相当完美呢,这样又可以节省许多时间精力啦,多谢大大啦♪(^∀^●)ノ。
补充一点,刚刚尝试使用这个新增的功能,结果发现“导出到Github Wiki上”的功能,需要预先在config.json里面配置github的项目地址呢,可否在amWiki的read.md上更新一下这个信息呢?比如预先设置的项目地址的一个样板之类的,我觉得对于新手来说,可能有点帮助啦……
image

@YaoXuanZhi
Copy link
Author

YaoXuanZhi commented Dec 11, 2016

对啦,大大,发现“导出到Github Wiki”的功能上有一个小Bug呢,你将图片资源全部导出到一个images文件夹下了,但是.md文件上的相对图片的url在导出的时候,没有转换过来呢,这导致Github Wiki上找不到对应的图片路径呢。其实我觉得比如直接将amWiki上的assert文件夹改成images吧,这样一目了然,而且不需要将.md文件里与图片相关的url全部调整一次……

@TevinLi
Copy link
Owner

TevinLi commented Dec 12, 2016

嗯嗯,文档这里自然要补上,那么晚了还没休息呀

其实还有很多东西是要写文档的,不过不是在 readme 上,我计划将来 readme 上放一个详细文档的目录列表,而不是一篇介绍,现在的这篇介绍转换为快速上手,从这个角度来说,文档的进度其实落后得挺严重的,不过也没办法,一下子做不来那么多,只能慢慢来

@TevinLi
Copy link
Owner

TevinLi commented Dec 12, 2016

图片地址转换的话,目前的规则是 assets 开头的地址才会命中转换,比如以我自己的项目为例
![](assets/003/001-01a02027.png)
会被转换为
![](/TevinLi/amWiki/wiki/images/003/001-01a02027.png)
转换后的url是一个绝对地址,也是受 github wiki 奇怪的地址规则影响而采取的方式
你的图片地址是怎么样的呢,可能是没有命中转换

@YaoXuanZhi
Copy link
Author

哦,我知道啦,我当时使用了html里面的语法,为了统一图片的尺寸使用div来处理这些图片链接,比如:
image
由于上面的图片链接的方式不是标准Markdown上面的,所以出现了这个问题

@YaoXuanZhi
Copy link
Author

对啦,大大,貌似amWiki-0.7.6在Win7上安装失败呢,不过之前版本都是可以正常使用的,麻烦你看一下吧
image

@TevinLi
Copy link
Owner

TevinLi commented Dec 12, 2016

多开一个 issue 嘛 😏

html img src 转换那个,后面我会再加入支持

刚试了一下,在win7上,具体应该是 Atom 版本太低会报这个问题,大概需要 Atom v1.10.x 以上才支持加载底层 electron 模块,现在稳定版已经到 1.12.x 了,可能需要升下级...
Atom 和 Electron 他们是一对双生子呀,加载 Electron 居然有版本要求,略有点意外,囧...

@YaoXuanZhi
Copy link
Author

哦哦,下次会注意的( ^_^ )

@YaoXuanZhi
Copy link
Author

哦,大大,貌似Github Wiki不支持页内锚点的跳转呢,有没有办法解决这个问题呢
你看看这个页面吧,超长文档页内目录示例
另外,在Markdown快速开始
这个页面之中,有一张图片不能正常显示呢:image

@TevinLi
Copy link
Owner

TevinLi commented Dec 14, 2016

感谢提醒,页内目录这个还真忘记啦,嘿嘿
这张图片倒只是因为没有放到 assets 文件夹里面,我换一下

@YaoXuanZhi
Copy link
Author

哦,大大,能不能顺便把下面这种页内跳转的方式也支持一下呢><

<a href="#id_interface" style="font-weight:bold">想看图,点我吧</a>
<spin id="id_interface" style="font-weight:bold" text-align=center>跳转到这里哦</spin>

因为Markdown里的锚点写法不支持自定义锚点文本(或许是我使用的姿势不对),所以通过html来实现了这个效果。目前,这种页内目录的实现方式完美躲过了amWiki的转换><。

@TevinLi
Copy link
Owner

TevinLi commented Dec 15, 2016

额,昨天我看了好半天,没看得很明白,囧...

刚刚分析了一下,你提到了瞄点,我猜测应该还是在正常标签的范畴,那么你的第二行代码有如下问题:

  • 普通标签中没有 spin 元素,可能你是要写 span
  • hash 跳转(就是页内跳转,下同)需要定义 name 属性,而不是 id
  • hash 跳转需要目标位置是一个 a 标签,虽然其他标签也可以带 name 属性,但是很多浏览器不兼容不会跳转

So,你这里的 span 是无法跳转的,比如说,你可以改成这样:

<p style="font-weight:bold" text-align="center"><a name="id_interface"></a>跳转到这里哦<p>

@YaoXuanZhi
Copy link
Author

YaoXuanZhi commented Dec 15, 2016

哦,这样啊,我在这里上传一个附件吧。
它其实是一个.md文件
问题样本.txt
我最终想实现的效果是这样的,如图所示:
image
遇到的问题如下:
这个.md文件可以被amWiki正常解析成html文件,在这里是可以正常实现页内文本之间的跳转的,但是当其导出到“Github Wiki”后,在Wiki页面上,发现这个锚点的功能已经失效了。因为页内目录也是通过锚点实现页内跳转的,所以我在这里也将它们归成一类啦,可能正因如此,你才没理解我的意思 囧..……
另外,也有可能真是我的使用姿势不对,我在.md文件里实现的页内跳转的方法是参考别人的,貌似实现这类功能的方式有很多种,所以 囧..……
如果你支持这种方式的页内跳转,我觉得应该可以兼容我之前的写法的。

<!--点击跳转的地方-->
<a href="#id_PiPL" style="font-weight:bold">想看图,点我吧</a>
<!--跳转后到达的地方-->
<p id="id_PiPL" style="font-weight:bold" align=left>PiPL资源</p>
<div  align="center">
<img src="/YaoXuanZhi/After-Effects-SDK-Guide/wiki/images/001/003-a9296eee.png" width = "800" alt="Effects plug-ins"/>
</div>

@TevinLi
Copy link
Owner

TevinLi commented Dec 15, 2016

嗯,我想我应该还是说到问题上来了
简单的说,换成这样就可以了,amWiki 和 Github wiki 通吃

<spin id="id_effect" style="font-weight:bold" text-align=center>
    <a name="id_effect"></a>特效插件[Effect Plug-ins]</spin>

也就是在你要跳转去到的那个位置,增加了:(这才是一个标准的锚)

<a name="id_effect"></a>

 
其实这个在 Github 上失效原因有好几个,比如说 spin 是一个非法标签被删除、id 属性直接无条件被删除、github 是 js 跳转而不是浏览器跳转...
而在 amWiki 上能起效果,是因为 amWiki 没有 Github 那么严格的检查,但严格来说,你之前那样跳转,其实只能算是一种非法的跳转

@YaoXuanZhi
Copy link
Author

哦哦,明白了,原来是我使用的姿势不对,受教啦,看来要找时间系统温顾一遍才行,这次见笑大方啦~~~~(>_<)~~~~

@TevinLi
Copy link
Owner

TevinLi commented Dec 19, 2016

已经在 v0.7.7 版本中修复,项目导出时,在 Github wiki 上页内目录无法跳转的问题

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants