>

vi의dd에 해당하는 emacs는 무엇입니까? 현재 줄을 삭제하고 싶습니다.CTRL+k를 시도했지만 현재 위치에서만 삭제합니다.


  • 답변 # 1

    C-a # Go to beginning of line
    C-k # Kill line from current point
    
    

    도 있습니다

    C-S-backspace   # Ctrl-Shift-Backspace
    
    
    M-x kill-whole-line 를 호출하는

    .

    다른 전역 키 바인딩을 설정하려면 ~/.emacs에 넣으십시오 :

    (global-set-key "\C-cd" 'kill-whole-line)     # Sets `C-c d` to `M-x kill-whole-line`
    
    
    <시간>

    여러 줄 전체를 삭제하려면 명령 앞에 숫자를 붙일 수 있습니다 :

    C-u 5 C-S-backspace    # deletes 5 whole lines
    M-5 C-S-backspace      # deletes 5 whole lines
    C-u C-S-backspace      # delete 4 whole lines. C-u without a number defaults to 4
    C-u -5 C-S-backspace   # deletes previous 5 whole lines
    M--5 C-S-backspace     # deletes previous 5 whole lines
    
    

    때로는 C-x z 도 있습니다  도움이 :

    C-S-backspace         # delete 1 whole line
    C-x z                 # repeat last command
    z                     # repeat last command again. 
                          # Press z as many times as you wish. 
                          # Any other key acts normally, and ends the repeat command.
    
    

  • 답변 # 2

    행을 죽이고 싶지 않다면 (OS 클립 보드에 넣고 링을 죽일 것임) 간단히 삭제하십시오 :

    (defun delete-current-line ()
      "Delete (not kill) the current line."
      (interactive)
      (save-excursion
        (delete-region
         (progn (forward-visible-line 0) (point))
         (progn (forward-visible-line 1) (point)))))
    
    

  • 답변 # 3

    모든 지점에서 전체 라인을 삭제하는 가장 빠르고 간단한 방법 아무 것도 선택하지 않고 줄에 :

    C-w  ; kill-region
    
    

    선택한 내용 또는 기본적으로 한 줄을 삭제하는 데 유용합니다 아무 것도 선택하지 않으면

    질문을 주면 아마 복제에 관심이있을 것입니다 Vim의 "잉크", yy  (이맥스의 용어로는 "잉크"가 혼란 스럽지만 Vim의 "퍼팅", p ). 이것은 :

    M-w  ; kill-ring-save
    
    

    좋고 합리적이며 기억하기 쉽습니다. 약간이라도 Vim의 i_CTRL-W 와 비슷한 .

    상기 중 하나를 사용하여 킬 링에 무언가를 넣으면 당신은 아마 그것을 "잉크"(붙여 넣기)하고 싶을 것이다 :

    M-y  ; yank-pop
    
    

    (C-S- 백 스페이스는 터미널 Emacs에서 작동하지 않을 수 있습니다.)

  • 답변 # 4

    킬 링에 배치하지 않고 라인을 삭제하는 다른 방법 :

    (defun delete-current-line ()
      "Deletes the current line"
      (interactive)
      (delete-region
       (line-beginning-position)
       (line-end-position)))
    
    

    이것은 빈 줄의 시작 부분을 떠납니다. 이것을 제거하려면 (delete-blank-lines) 와 같은 것을 추가 할 수 있습니다  이 예제에서와 같이 함수의 끝 부분에 대해 약간 덜 직관적입니다.

    (defun delete-current-line ()
     "Deletes the current line"
     (interactive)
     (forward-line 0)
     (delete-char (- (line-end-position) (point)))
     (delete-blank-lines))
    
    

  • 답변 # 5

    행을 삭제하기 위해 별도의 키를 가지거나 호출하지 않고 접두사 인수. crux-smart-kill-line을 사용할 수 있습니다 "라인의 끝까지 죽이고 다음에 전체 라인을 죽일 것입니다. delete 를 선호한다면   kill 대신 , 당신은 사용할 수 있습니다 아래 코드를 참조하십시오.

    포인트 투 스트링 작업 (kill/delete)의 경우 zop-to-char를 사용하는 것이 좋습니다

    (defun aza-delete-line ()
      "Delete from current position to end of line without pushing to `kill-ring'."
      (interactive)
      (delete-region (point) (line-end-position)))
    (defun aza-delete-whole-line ()
      "Delete whole line without pushing to kill-ring."
      (interactive)
      (delete-region (line-beginning-position) (line-end-position)))
    (defun crux-smart-delete-line ()
      "Kill to the end of the line and kill whole line on the next call."
      (interactive)
      (let ((orig-point (point)))
        (move-end-of-line 1)
        (if (= orig-point (point))
            (aza-delete-whole-line)
          (goto-char orig-point)
          (aza-delete-line))))
    
    

    소스

  • 이전 python - 목록에있는 경우 다른 열의 값을 기준으로 열을 선택하십시오
  • 다음 java - Bean에서 @PostConstruct를 사용하여 @SqlGroup의 스프링 테스트