Unicode 终端Emacs中的删除线

Unicode 终端Emacs中的删除线,unicode,emacs,Unicode,Emacs,我想找个罢工工人在终端emacs工作。当我通过面路线添加删除线时,什么也不会发生。但是,我可以将带有删除线的文本粘贴到emacs中,并正确呈现。当我在上面描述字符时,它会说(使用I): 我知道很多终端无法处理删除线,但我知道我的终端可以,因为你可以将它们粘贴到终端中。我很难理解为什么编辑面不起作用,但我可以将删除线粘贴进去。听起来你想插入组成字符以删除,这样你就改变了缓冲区的内容。我不认为我得到了所有的角落案件,但这是一个开始: (defun strikeout-region (b e) "

我想找个罢工工人在终端emacs工作。当我通过
路线添加删除线时,什么也不会发生。但是,我可以将带有删除线的文本粘贴到emacs中,并正确呈现。当我在上面描述字符时,它会说(使用
I
):


我知道很多终端无法处理删除线,但我知道我的终端可以,因为你可以将它们粘贴到终端中。我很难理解为什么编辑面不起作用,但我可以将删除线粘贴进去。

听起来你想插入组成字符以删除,这样你就改变了缓冲区的内容。我不认为我得到了所有的角落案件,但这是一个开始:

(defun strikeout-region (b e)
  "Use \"COMBINING LONG STROKE OVERLAY\" unicode char to strike out the region."
  (interactive "r")
  (when (use-region-p)
    (save-mark-and-excursion
      (goto-char b)
      (while (and (<= (point) e)
                (not (eobp)))
        (unless (looking-back "[[:space:]]" (1- (point)))
          (insert-char #x336)
          (setq e (1+ e)))
        (forward-char 1)))))
(取消删除区域(b e)
“使用\“组合长笔划覆盖\”unicode字符删除区域。”
(交互式“r”)
(何时(使用-region-p)
(保存标记和偏移
(转到字符b)
(及)(
(defun strikeout-region (b e)
  "Use \"COMBINING LONG STROKE OVERLAY\" unicode char to strike out the region."
  (interactive "r")
  (when (use-region-p)
    (save-mark-and-excursion
      (goto-char b)
      (while (and (<= (point) e)
                (not (eobp)))
        (unless (looking-back "[[:space:]]" (1- (point)))
          (insert-char #x336)
          (setq e (1+ e)))
        (forward-char 1)))))