표시된 지역에 < %% 태그를 빨리 추가 할 방법을 찾고 있습니다. rinari를 rhtml-mode와 함께 사용하고 있습니다. 나는 그런 일 (나는 RHTML 모드에있어)하고 싶은 : 내가 예를 내가 선택 영역과를 선택하고있어Emacs 및 내장 루비 <% %> 태그
a.each do |e|
puts e
end
의 루비 코드를 가지고
을, 몇 가지를 넣어 매직 키와 내가있어 : 내가 혼합 일부 HTML 태그와 루비 코드를 선택한 경우 예를 들어, 스마트해야 할 필요
<% a.each do |e| %>
<%= puts e %>
<% end %>
, 그것은 단지, 코드를 루비 떠나기 <%의 %>를 적용해야 나머지는 무사합니다. 또한 아무 것도 선택하지 않으면 중간에 지점을두고 입력을 기다리는 < %%>를 입력해야합니다. 나는 이맥스 함수 나 패키지로 존재할 수도있는 것이 아닌가 궁금하다.
나는 YAsnippet 모드의 스 니펫으로 그것을하려고했지만, 내가 좋아하는 것과는 거리가 멀다.
(defun make-it-erb (begin end)
"Add <%=? %> for each string"
(interactive "r")
(shell-command-on-region begin end "gawk '/^[ \t]*(puts)|(print)/{ printf \"<%=\" $0 \"%>\"; next } // { printf \"<%\" $0 \"%>\" } '" nil ""))
(global-set-key [f7] 'make-it-erb)
당신은 위의 기능을 당신의 .emacs 파일에 추가하고 평가해야합니다 경우