按sort-lines
开头的行对行进行排序时,以开头ä
的行之后z
。如果可以像在字典中那样忽略重音符号,Umlauts等来对行进行排序,那就太好了。理想情况下,以开头的行ändern
应该在以开头的行之后anderen
。
有一个简单的解决方案,用于搜索https://superuser.com/a/675172/中提到的带重音符号,但不能在此处使用。我想知道这种解决方案是否可以适应这种情况。
按sort-lines
开头的行对行进行排序时,以开头ä
的行之后z
。如果可以像在字典中那样忽略重音符号,Umlauts等来对行进行排序,那就太好了。理想情况下,以开头的行ändern
应该在以开头的行之后anderen
。
有一个简单的解决方案,用于搜索https://superuser.com/a/675172/中提到的带重音符号,但不能在此处使用。我想知道这种解决方案是否可以适应这种情况。
Answers:
我为此使用此功能
(defun my-sort-lines ()
(interactive)
(shell-command-on-region (point-min) (point-max) "LC_COLLATE=en_US.UTF-8 sort" (buffer-name) t ))
编辑:排序区域或缓冲区:
(defun my-sort-lines-buffer ()
(interactive)
(shell-command-on-region (point-min) (point-max) "LC_COLLATE=en_US.UTF-8 sort" (buffer-name) t ))
(defun my-sort-lines-region (start end)
(interactive "r")
(shell-command-on-region start end "LC_COLLATE=en_US.UTF-8 sort" (buffer-name) t))
(defun my-sort-lines-region-or-buffer ()
(interactive)
(save-excursion
(if (region-active-p)
(progn
(my-sort-lines-region (region-beginning) (region-end))
(message "Sorted selected region"))
(progn
(my-sort-lines-buffer)
(message "Sorted buffer")))))
my-sort-lines-buffer
为什么呢?还是重写为(defun my-sort-lines (start end) (interactive "r") (shell-command-on-region start end "LC_COLLATE=en_US.UTF-8 sort" (buffer-name) t))
?
isearch
以及query-replace
在下一个版本中实现。