[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 1ad3387: Add new commands to widen/narrow tabulated
From: |
Lars Ingebrigtsen |
Subject: |
[Emacs-diffs] master 1ad3387: Add new commands to widen/narrow tabulated list columns |
Date: |
Mon, 24 Jun 2019 10:35:22 -0400 (EDT) |
branch: master
commit 1ad3387600442af3030b97f219bc60ccafb356eb
Author: Lars Ingebrigtsen <address@hidden>
Commit: Lars Ingebrigtsen <address@hidden>
Add new commands to widen/narrow tabulated list columns
* doc/emacs/buffers.texi: Document widen/contracting commands in
tabulated list mode.
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode-map): Add
keystrokes.
(tabulated-list-widen-current-column): New command.
(tabulated-list-narrow-current-column): Ditto. The code was
written by Boruch Baum and then tweaked by Drew Adams (bug#32106)
before some white-space changes before the commit.
---
doc/emacs/buffers.texi | 12 ++++++++++++
etc/NEWS | 5 +++++
lisp/emacs-lisp/tabulated-list.el | 35 +++++++++++++++++++++++++++++++++++
3 files changed, 52 insertions(+)
diff --git a/doc/emacs/buffers.texi b/doc/emacs/buffers.texi
index 14a0a01..6face1e 100644
--- a/doc/emacs/buffers.texi
+++ b/doc/emacs/buffers.texi
@@ -550,6 +550,18 @@ Sort the Buffer Menu entries according to their values in
the column
at point. With a numeric prefix argument @var{n}, sort according to
the @var{n}-th column (@code{tabulated-list-sort}).
+@item w
+@kindex w @r{(Buffer Menu)}
+@findex tabulated-list-widen-current-column
+Widen the current column width by @var{n} (the prefix numeric
+argument) characters.
+
+@item c
+@kindex c @r{(Buffer Menu)}
+@findex tabulated-list-narrow-current-column
+Make the current column contract its width by @var{n} (the prefix numeric
+argument) characters.
+
@item T
@findex Buffer-menu-toggle-files-only
@kindex T @r{(Buffer Menu)}
diff --git a/etc/NEWS b/etc/NEWS
index 5e134c4..74a8bbe 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1448,6 +1448,11 @@ near the current column in Tabulated Lists (see variables
'tabulated-list-tty-sort-indicator-asc', and
'tabulated-list-tty-sort-indicator-desc').
++++
+*** Two new commands and keystrokes have been added to the tabulated
+list mode: `w' (which widens the current column) and `c' which makes
+the current column contract.
+
** Text mode
+++
diff --git a/lisp/emacs-lisp/tabulated-list.el
b/lisp/emacs-lisp/tabulated-list.el
index b23ce21..59a5d11 100644
--- a/lisp/emacs-lisp/tabulated-list.el
+++ b/lisp/emacs-lisp/tabulated-list.el
@@ -195,6 +195,8 @@ If ADVANCE is non-nil, move forward by one line afterwards."
(define-key map "n" 'next-line)
(define-key map "p" 'previous-line)
(define-key map "S" 'tabulated-list-sort)
+ (define-key map "e" 'tabulated-list-widen-current-column)
+ (define-key map "s" 'tabulated-list-narrow-current-column)
(define-key map [follow-link] 'mouse-face)
(define-key map [mouse-2] 'mouse-select-window)
map)
@@ -645,6 +647,39 @@ With a numeric prefix argument N, sort the Nth column."
(tabulated-list-init-header)
(tabulated-list-print t)))
+(defun tabulated-list-widen-current-column (&optional n)
+ "Widen the current tabulated-list column by N chars.
+Interactively, N is the prefix numeric argument, and defaults to
+1."
+ (interactive "p")
+ (let ((start (current-column))
+ (nb-cols (length tabulated-list-format))
+ (col-nb 0)
+ (total-width 0)
+ (found nil)
+ col-width)
+ (while (and (not found)
+ (< col-nb nb-cols))
+ (if (> start
+ (setq total-width
+ (+ total-width
+ (setq col-width
+ (cadr (aref tabulated-list-format
+ col-nb))))))
+ (setq col-nb (1+ col-nb))
+ (setq found t)
+ (setf (cadr (aref tabulated-list-format col-nb))
+ (max 1 (+ col-width n)))
+ (tabulated-list-print t)
+ (tabulated-list-init-header)))))
+
+(defun tabulated-list-narrow-current-column (&optional n)
+ "Narrow the current tabulated list column by N chars.
+Interactively, N is the prefix numeric argument, and defaults to
+1."
+ (interactive "p")
+ (tabulated-list-widen-current-column (- n)))
+
(defvar tabulated-list--current-lnum-width nil)
(defun tabulated-list-watch-line-number-width (_window)
(if display-line-numbers
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master 1ad3387: Add new commands to widen/narrow tabulated list columns,
Lars Ingebrigtsen <=