vl-directory-files  获取到以下表  ("1" "2" "3" "凳子" "常用" "常用件" "常用零件" "常用零件2" "按键" "长在零件" "长用件" "长用零件"),完全看不出是排序的依据是什么?


网友答: ASCII排序规则:
数字字符 (48-57):"1" "2" "3"
中文字符 (按Unicode码点):
"凳" (U+51F3)
"常" (U+5E38)
"按" (U+6309)
"长" (U+957F)

(defun natural-sort-files (file-list)
  (vl-sort file-list
    (function
      (lambda (a b)
        (< (vl-string-translate "" "" a)
           (vl-string-translate "" "" b))))))

;; 使用示例
(setq sorted-list (natural-sort-files your-file-list))
随便搜的,你试试看。排序时ascii码


网友答:
tigcat 发表于 2025-9-6 10:43
ASCII排序规则:
数字字符 (48-57):"1" "2" "3"
中文字符 (按Unicode码点):

明白了,多谢。

网友答: 直接 (vl-sort lst '<)
  • 上一篇:更改字高程序没有效果(已解决)
  • 下一篇:没有了