et2010
63
很多功能是华而不实的,其实根本用不到。你摸索一下,找到适合自己的工作流稳定下来就好。
1 个赞
应该没什么大的问题,不用担心,如果有问题, melpa 的维护者会提出来让你修改的,你按部就班的改就可以了
et2010
67
已经回复我了,但是怎么改啊,我一点头绪没有。麻烦大神给指点一下。 @tumashu @xuchunyang
第一个问题: 你在你的包里面添加了一句 (setq org-src-preserve-indentation t) , 这个全局变量是 org 留给用户的,你不能偷偷摸摸的跟改它的数值, 这就需要你将你这个功能做成一个 minor-mode,只有用户需要的时候,用户才开启
autoload cookies 就是 ###autoload, 一般添加到为用户提供的命令前面
et2010
73
我也不需要 autoload 貌似,所有功能都是通过 advice 实现的
象征性地添加一个?
那你那两个命令就不需要 (interactive) 了吧?
其实最麻烦的是处理 org-src-preserve-indentation,
et2010
77
是啊,不行我把它删了,然后在 readme 里建议一下算了 解决办法全成了删删删了
有法子处理, 你用 let + around-advice 就可以了
你使用的是 advice-add :before 和 :after, 用类似下面的格式处理你的代码,应该就可以
(defun test (orig-fun arg1 arg2)
(let ((org-src-preserve-indentation t))
(funcall origin-fun arg1 arg2)
(do your job )
))
(advice-add 'xxx :around 'test)
et2010
81
这个我知道,但是怎么样应用到 org-src-preserve-indentation
上?还请指点
抱歉,没看仔细
et2010
82
问题是我的函数里并没有用到这个变量,我之所以添加这条设置,只是为了防止 wrap unwrap 过程中添加无用的空格。