따옴표 붙은 문자열의 일치하는 (이중 또는 단일) 따옴표로 이동하는 방법은 무엇입니까?


10

작은 따옴표 기호에 커서를 놓으면 페어링 따옴표로 이동하는 방법은 무엇입니까?


1
지금 시도 할 이맥스가 없지만 그렇게 skip-syntax-forward할 것입니다.
wvxvw

1
나는 시도 (skip-syntax-forward "^\"")?., 예를 들어, "문자열이 \"생략 할 수 없다 "있는 다음 큰 따옴표 기호로 이동할 수 있지만 탈출 기호를 생략하지 않습니다
AhLeung

답변:


9

M-C-f(또는 M-C-right) forward-sexp그렇게해야합니다.

잘 알려진 모션 명령을 모두 M-C-대신 접두사로 사용하는 것이 좋습니다 C-.

  • M-C-b(또는 M-C-left)backward-sexp
  • M-C-u(또는 M-C-up)backward-up-list
  • M-C-n(또는 M-C-down)forward-list

1
또한 backward-sexp바운드에 대해 언급해야 합니다 M-C-b.
Timm

@Timm 알고있는 M-C대신 접두사를 사용 하여 모션 명령을 시도하는 것이 다소 분명하다고 생각했습니다 . 좋아요-대답에 언급하겠습니다. C-M-C-f
Tobias

1
그것은 것으로 보인다 forward-sexpbackward-sexp정지 인용 된 문자열 내의 공백에?
AhLeung

2

나는 항상 forward-sexpand에 대한 바인딩을 기억하는 데 어려움을 겪고 있으며 Vim의 명령 모드에서 backward-sexp보다 더 효과적인 것을 원했습니다 %. 어느 시점에서, 나는 이것을 내 구성에 추가했다 (docstring은 parens를 말하지만 모든 종류의 괄호 또는 인용문에서 작동한다).

;;; PAREN-BOUNCE
;;;; originally ganked from <http://elfs.livejournal.com/1216037.html>
(defun genehack/paren-bounce ()
  "Bounce from one paren to the matching paren."
  (interactive)
  (let ((prev-char (char-to-string (preceding-char)))
        (next-char (char-to-string (following-char))))
    (cond ((string-match "[[{(<\"']" next-char) (forward-sexp 1))
          ((string-match "[\]})>\"']" prev-char) (backward-sexp 1))
          (t (error "%s" "Not an expression boundary.")))))

;;;; bindings
(global-set-key (kbd "C-%")        'genehack/paren-bounce)
(global-set-key (kbd "C-5")        'genehack/paren-bounce)

0

그러한 모든 목적을 위해 smartparens 패키지를 사용하는 것이 좋습니다. 짧은 소개는 여기 ( https://ebzzry.io/en/emacs-pairs/) 입니다.


1
게시물에 완전한 답변을 제공하십시오. 링크 전용 응답은 주석에는 적합하지만 답변에는 적합하지 않습니다.
Dan

sp-beginning-of-sexpsp-end-of-sexp매우 가까운 내가 원하는 것을한다. sp-matching-sexp하나의 키 바인딩 만 기억하면되도록 하나의 기능 (예 :)으로 결합 할 수 있기를 바랍니다 . 아마도 elisp 함수를 작성하려고 할 것입니다. 누군가 전에 그랬는지 알려주세요. 감사.
AhLeung

ebzzry.io/en/emacs-pairs/#keys ( "CMf". sp-forward-sexp) ( "CMb". sp-backward-sexp) 그러나 다르게 설정할 수 있습니다
Victor
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.