当前位置: 代码迷 >> 综合 >> emacs 复制和剪切一行
  详细解决方案

emacs 复制和剪切一行

热度:4   发布时间:2023-12-22 11:36:57.0

在编码的过程中,经常需要复制和剪切一整行代码,如果用emacs本来的快捷键,复制一行的话,需要C-a C-@ C-e M-w 4步操作才能完成,比较麻烦。

于是,我改造了一下emacs的M-w和C-w快捷键,当没有区域被选中的时候,就复制或剪切一整行。

代码如下:


;; copy region or whole line(global-set-key "\M-w"
(lambda ()
  (interactive)
  (if mark-active
      (kill-ring-save (region-beginning)
      (region-end))
    (progn
     (kill-ring-save (line-beginning-position)
     (line-end-position))
     (message "copied line")))))


;; kill region or whole line
(global-set-key "\C-w"
(lambda ()
  (interactive)
  (if mark-active
      (kill-region (region-beginning)
   (region-end))
    (progn
     (kill-region (line-beginning-position)
  (line-end-position))
     (message "killed line")))))