Emacs 如何删除Magit中一个大块头的尾随空格?
Emacs(后v21)包含一个从文件中删除的函数。我如何在Magit暂存区(从Emacs 如何删除Magit中一个大块头的尾随空格?,emacs,whitespace,magit,Emacs,Whitespace,Magit,Emacs(后v21)包含一个从文件中删除的函数。我如何在Magit暂存区(从Magit status)中使用delete training whitespace),以便从单个大块或整个文件中删除尾部空白?这是Sean的片段,针对Magit v2进行了调整: (defun my-magit-delete-trailing-whitespace-from-file () "Remove whitespace from the current file." (interactive) (
Magit status
)中使用delete training whitespace
),以便从单个大块或整个文件中删除尾部空白?这是Sean的片段,针对Magit v2进行了调整:
(defun my-magit-delete-trailing-whitespace-from-file ()
"Remove whitespace from the current file."
(interactive)
(save-excursion
(magit-diff-visit-file-worktree (magit-file-at-point))
(delete-trailing-whitespace)
(save-buffer)
(kill-buffer))
(magit-refresh))
谢谢@tarsius的精彩表演!我设法对它进行了调整,删除了点处线条的尾随空格。这需要安装“ws-trim”软件包
(defun my-magit-delete-trailing-whitespace ()
"Remove whitespace from the current file."
(interactive)
(save-excursion
(magit-diff-visit-file-worktree (magit-file-at-point))
(ws-trim-line nil)
(save-buffer)
(kill-buffer))
(magit-refresh))
(add-hook 'magit-status-mode-hook
(lambda ()
(local-set-key [deletechar] 'my-magit-delete-trailing-whitespace)))
我正在绑定delete键,因为它在
magit状态模式下没有任何有用的功能
现在,我尝试了magit
。我猜你可以编辑这些差异看起来不太好。这种方法适用于ediff
-补丁,但不适用于git。因此,我将删除我的答案。对此我很抱歉。这里是Magit维护人员。Magit不支持这一点。@Tobias不用担心,正如我所记得的,你仍然是对的,我可以直接从Magit中找到文件。从这里开始,它是一个非常简单的函数调用。@tarsius还没有;)我有一个工作函数;我只是不能把它挂在雕像模式地图上。至少,从当前选择的文件来看:谢谢你的更新。有没有办法把这个限制在大块头身上?magit状态下的覆盖层是否有关于这个大块头来自哪里的信息?如果是这样,您可以使用该信息在删除空白之前缩小范围。对于大块部分(magit section value(magit current section))
将返回类似(“(defun module rebuild()”-73,6“+73,8”)
。