2012-02-24 33 views
3

我在W7-64上遇到了yasnippet和Emacs 23.4.1的问题。我写了一篇博客,并且遇到了Wordpress可视化编辑器的困难,我将看看是否可以更简单地将所有内容组成HTML并将其直接粘贴到Wordpress的HTML编辑器中。因此使用相当可观的yasnippet我创建了以下内容:Emacs:在代码片段中使用yasnippet插入空格的问题

#contributor : blogger 
#name : blog picture link 
# -- 
<a href="http://verylongwebsitename.com/wp-content/uploads/2012/${1:mm}/${2:folder}/fig${3:x}_l.png"><img class="alignnone" title="fig$3" src="http://verylongwebsitename.com/wp-content/uploads/2012/$1/$2/fig$3_m.png" alt="${5:alttext}" width="${6:700}" height="${7:500}" /></a>$0 

进入漫长而繁琐的链接像下面的一个,在HTML模式:

的问题是,在一些点在进入的过程中 片断它会很有趣,就像这样:

misbehaving yasnippet

如果你看,你可以看到,yasnippet已经在每一行插入了很多空间,造成很多丑陋和一个断开的链接。由于字的排列方式,我怀疑这与yasnippet和制表符设置之间的交互有关,但尽管有些搔痒,我无法解决问题。

任何人都可以建议可能是什么原因造成这种情况吗?

+0

它是否有助于增加一行'#扩大-ENV:((亚斯/凹痕线“固定))'的片段作为答案提出过http://stackoverflow.com/questions/ 8069537/yasnippets与 - 结束的线-后-O-行为怪-时使用的与 - auctex? – 2012-02-24 13:39:01

+0

谢谢你的建议。我尝试了两种不同的配置,但都没有任何效果。 – SlowLearner 2012-02-24 14:04:06

+0

我难倒了堆栈溢出的公共智能?!我感到一种奇怪的自豪感:-) – SlowLearner 2012-02-27 00:06:22

回答

0

很多乱搞我发现这个问题是(最有可能)使用Emacs的填充模式之一:yasnippet以一种奇怪的方式进行交互的问题后。具体来说,我把它设置为HTML模式下的“填充”,我显然需要的是'Wrap'。我粗解决方案是创建一个键盘宏来切换模式,并分配给快捷键在我.emacs文件,如下所示:

(fset 'my-html-fill-setup 
    [?\M-x ?a ?u ?t ?o ?- ?f ?i ?l ?l ?- ?m ?o ?d ?e return ?\M-x ?v ?i ?s ?u ?a ?l ?- ?l ?i ?n ?e ?- ?m ?o ?d ?e return]) 

(global-set-key "\C-x\C-k1" 'my-html-fill-setup) 

道歉任何混乱造成的。顺便说一句,在管理重新安装yasnippet后,我很喜欢它,并发现它对于各种事物都非常有用。

0

适用于我,使用github的最新yasnippet。

# key : entry 
# contributor : blogger 
# name : blog picture link 
# -- 
<a href="http://verylongwebsitename.com/wp-content/uploads/2012/${1:mm}/${2:folder}/fig${3:x}_l.png"> 
    <img class="alignnone" 
    title="fig$3" 
    src="http://verylongwebsitename.com/wp-content/uploads/2012/$1/$2/fig$3_m.png" 
    alt="${5:alttext}" 
    width="${6:700}" 
    height="${7:500}"/> 
</a> 
$0 
+0

感谢您的支持,并对延迟表示歉意。其中一个原因是我一直不太好,另一个是我以某种方式管理我的yasnippet安装,并且无法再次运行它。我赞赏这个建议;我从来没有尝试过从github安装任何东西 - 我认为它只是一个下载。我会去看看。 – SlowLearner 2012-04-09 12:47:00

3

对我来说,是什么修复了禁用Yasnippet中的缩进。

(setq yas-indent-line (quote none))