* lisp/international/mule-util.el (truncate-string-ellipsis): New var.

(truncate-string-to-width): Use it.
This commit is contained in:
Stefan Monnier 2014-06-19 10:58:57 -04:00
parent 96db005527
commit d10a551d9d
3 changed files with 12 additions and 2 deletions

View file

@ -46,6 +46,8 @@ Use './configure PKG_CONFIG=/full/name/of/pkg-config' if you need to.
* Changes in Emacs 24.5
** New var `truncate-string-ellipsis' to choose how to indicate truncation.
---
** The default value of `history-length' has increased to 100.

View file

@ -1,3 +1,8 @@
2014-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
* international/mule-util.el (truncate-string-ellipsis): New var.
(truncate-string-to-width): Use it.
2014-06-19 Robert Brown <robert.brown@gmail.com> (tiny change)
* emacs-lisp/lisp-mode.el (lisp-string-after-doc-keyword-p): New fun.

View file

@ -56,6 +56,9 @@
(setq i (1+ i)))))
string)
(defvar truncate-string-ellipsis "..." ;"…"
"String to use to indicate truncation.")
;;;###autoload
(defun truncate-string-to-width (str end-column
&optional start-column padding ellipsis)
@ -80,11 +83,11 @@ If ELLIPSIS is non-nil, it should be a string which will replace the
end of STR (including any padding) if it extends beyond END-COLUMN,
unless the display width of STR is equal to or less than the display
width of ELLIPSIS. If it is non-nil and not a string, then ELLIPSIS
defaults to \"...\"."
defaults to `truncate-string-ellipsis'."
(or start-column
(setq start-column 0))
(when (and ellipsis (not (stringp ellipsis)))
(setq ellipsis "..."))
(setq ellipsis truncate-string-ellipsis))
(let ((str-len (length str))
(str-width (string-width str))
(ellipsis-len (if ellipsis (length ellipsis) 0))