爲了幫助我,我爲你寫了一個代碼片段,它和你所說的html 做的一樣。你應該可以編輯它到 改變它,以便它可以做你想做的事情,但是如果所有的工作都完成了,它就不會有太多樂趣;)。
我所做的第一件事情是定義不從
"p*3>div*2"
改造
<p>
<div>
</div>
<div>
</div>
</p>
<p>
<div>
</div>
<div>
</div>
</p>
<p>
<div>
</div>
<div>
</div>
</p>
的函數的功能是:
(defun crushlist (my-list)
(if my-list
(let* ((elem (car my-list))
(char (first (split-string elem "*")))
(num (string-to-int(second (split-string elem "*")))))
(apply 'concat
(cl-loop for i from 1 to num
collect (concat "<" char ">
" (crushlist (cdr my-list)) "</" char ">
"))))
""))
的片段則是:
${1:$$(when yas-moving-away-p (move-beginning-of-line nil) (kill-line) (insert (crushlist (split-string yas-text ">"))))}
我覺得像片斷應該是:
${1:$$(when yas-moving-away-p (crushlist (split-string yas-text ">")))}
但是這並沒有爲我出於某種原因
如果您有任何問題(如果你發現了,請讓我知道!)關於如何實施您的實際片段, 給我留言,我會盡力幫助。
爲了澄清這一點,我將用這個片段示例的關鍵是什麼?我假設它不只是「p * 3> div * 2」。 –
是的,我這樣做的方式是你會放一些鑰匙,任何鑰匙。然後你擴展它。鍵入p * 3> div * 2,然後點擊標籤 – Jules
@ Y.Khurshid是否爲您工作? – Jules