emacs:用字符填充对齐的字符串

Avi*_*ner 1 emacs string-formatting

是否有emacs命令用字符填充对齐的字符串?具体来说,我希望能够参加

;; Foobar
Run Code Online (Sandbox Code Playgroud)

得到

;; ===================================Foobar====================================
Run Code Online (Sandbox Code Playgroud)

其中Foobar在宽度为77的字段中居中.为清楚起见,我通过python代码生成了上面的输出";; {:=^77}".format("Foobar").

Sea*_*ean 5

我不知道有任何现有的功能,但写一个很容易:

(defun center-string-in-char (str len char)
  (store-substring (make-string len char) (/ (- len (length str)) 2) str))
Run Code Online (Sandbox Code Playgroud)

现在(center-string-in-char "Foobar" 77 ?=)生成您的示例字符串(减去";; "您可以自己添加的前导).