Closed jumbojing closed 1 year ago
当然,能直接连接到所选文章的位置就更好了
主观上, 我有点想加这个功能, 但客观上, 这只是两个复制操作的组合. 如果能通过两个复制操作搞定, 就没有将其做成一个复制操作的必要性, 否则各种复制操作组合起来势必会出现组合爆炸.
不难想到, 一种解决方案是在Copycat里提供一个模板功能, 然后由用户创建自己的复制操作. 例如, 此issue所需要的复制操作可以被转换为以下模板:
$selection_markdown
---from [$page_link_text]($page_link_url)
然而, 模板功能是很难在Copycat里实施的:
由于Chrome的API设计, 在不同的调用方式, 不同的目标对象的情况下, 能够为用户提供的模板变量是不同的.
用户需要被迫去学习为什么在一个场景下可以使用$frame_link_text
这样的变量, 而在另一个场景下需要回退到$page_link_text
, 为什么存在第三个变量叫做$frame_or_page_link_text
.
如果用户还需要在$page_link_text
不存在情况下输出<$page_link_url>
而不是[$page_link_text]($page_link_url)
,
还会需要更高级的模板功能.
引入一个强大的模板语言可以一定程度上缓解上述问题, 但支持一个强大的模板语言可能会增加更多的维护成本.
出于上述考虑以及实施模板功能会引入的决策成本, 没有实现相关功能的计划.
可用户还是需要这个功能怎么办? 毕竟复制一次总是强于复制两次加上手打相关的衔接部分, 我会说最好的方法是fork本项目的代码, 然后自己添加相关的功能.
就是将复制所选内容和复制标签内容合为一体,作为一个选项。比如:
Learn Git and GitHub without any code!
Using the Hello World guide, you’ll start a branch, write comments, and open a pull request. --from New Issue · BlackGlory/Copycat