mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-21 06:55:39 +00:00
Merge from origin/emacs-30
b420e149b1
Fix a typo in ediff-init.ele1304e9b1b
Fix 'chart-space-usage' on MS-Windows04c44405bf
Fix alignment and documentation of vtable.el4d6fadb8d2
; * lisp/which-key.el: Fix ':package-version' (bug#73072).54071b9cef
; Improve doc strings of 'tab-bar-mode' and 'tab-line-mode'87a8b12a0c
Fix test failure in erc-networks-testsdad0935cfc
; * doc/emacs/building.texi (Lisp Libraries): Update (bug...e4dc6711b0
Fix :hook in 'use-package'c1cd036d27
; * doc/lispref/modes.texi (Mode Line Data): Fox wording.ae2463796f
; Caveats about using :eval in 'mode-line-format'4047072c7d
Update FSF's address24f12bdd77
Support the new option in ruby-ts-mode too6c15b7710d
Add new option ruby-bracketed-args-indent7799ef4335
Fix Rmail base64 and qp decoding of MIME payloads0def396fa8
Update to Org 9.7.118c044bd972
; Fix recent changes in documentatione0d8879bcd
* test/lisp/emacs-lisp/tabulated-list-tests.el: Add missi...4ff4b78f92
; Small doc fixesda980ad838
; Reword some "allows Xing"2ca7d5649c
; More accurate text about how `equal` compares various o... # Conflicts: # etc/NEWS
This commit is contained in:
commit
6dcd3d2404
@ -71,7 +71,7 @@ tool bars on the bottom. For the same reasons @code{modifier-bar-mode}
|
||||
is now gone.
|
||||
|
||||
@item
|
||||
The command @code{recover-file} no longer allows displaying the diffs
|
||||
The command @code{recover-file} no longer lets you display the diffs
|
||||
between a file and its auto-save file. You either want to recover a
|
||||
file or you don't; confusing users with a third alternative when they
|
||||
are anxious already by the possibility of losing precious edits is
|
||||
|
@ -1689,9 +1689,9 @@ command or function is invoked. For example:
|
||||
|
||||
Note that installing a package using @code{package-install}
|
||||
(@pxref{Package Installation}) takes care of placing the package's
|
||||
Lisp files in a directory where Emacs will find it, and also writes
|
||||
the necessary initialization code into your init files, making the
|
||||
above manual customizations unnecessary.
|
||||
Lisp files in a directory where Emacs will find it, and also extends
|
||||
@code{load-path} as needed, making the above manual customizations
|
||||
unnecessary for such packages.
|
||||
|
||||
@node Lisp Eval
|
||||
@section Evaluating Emacs Lisp Expressions
|
||||
|
@ -816,9 +816,9 @@ Like the other commands in this section, this command operates on the
|
||||
@findex dired-do-open
|
||||
@kindex E @r{(Dired)}
|
||||
@item E
|
||||
``Open'' the specified files using an external program. The program is
|
||||
selected according to the system conventions, as determined by the
|
||||
variable @code{shell-command-guess-open}.
|
||||
``Open'' the specified files using an external program (@code{dired-do-open}).
|
||||
The program is selected according to the system conventions, as
|
||||
determined by the variable @code{shell-command-guess-open}.
|
||||
|
||||
@findex dired-do-rename
|
||||
@kindex R @r{(Dired)}
|
||||
|
@ -89,8 +89,8 @@ developing GNU and promoting software freedom.''
|
||||
|
||||
@sp 2
|
||||
Published by the Free Software Foundation @*
|
||||
51 Franklin Street, Fifth Floor @*
|
||||
Boston, MA 02110-1301 USA @*
|
||||
31 Milk Street, # 960789 @*
|
||||
Boston, MA 02196 @*
|
||||
ISBN 978-0-9831592-8-5
|
||||
|
||||
@sp 2
|
||||
@ -1432,8 +1432,8 @@ If you need to contact the Free Software Foundation, see
|
||||
|
||||
@display
|
||||
Free Software Foundation
|
||||
51 Franklin Street, Fifth Floor
|
||||
Boston, MA 02110-1301
|
||||
31 Milk Street # 960789
|
||||
Boston, MA 02196
|
||||
USA
|
||||
@end display
|
||||
|
||||
|
@ -711,10 +711,11 @@ completions list buffer, and the second one will switch to it.
|
||||
When the window showing the completions is selected, either because
|
||||
you customized @code{completion-auto-select} or because you switched to
|
||||
it by typing @kbd{C-x o}, the @kbd{@key{UP}} and @kbd{@key{DOWN}} arrow
|
||||
keys move by lines between completion candidates; with a prefix numeric
|
||||
argument, they move that many lines. If @code{completion-auto-wrap} is
|
||||
non-@code{nil}, these commands will wrap at bottom and top of the
|
||||
candidate list.
|
||||
keys (@code{previous-line-completion} and @code{next-line-completion},
|
||||
respectively) move by lines between completion candidates; with a prefix
|
||||
numeric argument, they move that many lines. If
|
||||
@code{completion-auto-wrap} is non-@code{nil}, these commands will wrap
|
||||
at bottom and top of the candidate list.
|
||||
|
||||
@vindex completion-cycle-threshold
|
||||
If @code{completion-cycle-threshold} is non-@code{nil}, completion
|
||||
|
@ -1430,7 +1430,7 @@ line shows how many manual pages are available.
|
||||
@vindex Man-prefer-synchronous-call
|
||||
By default, @kbd{M-x man} calls the @code{man} program
|
||||
asynchronously. You can force the invocation to be synchronous by
|
||||
customizing @code{Man-prefer-synchronous-calls} to a non-@code{nil}
|
||||
customizing @code{Man-prefer-synchronous-call} to a non-@code{nil}
|
||||
value.
|
||||
|
||||
@vindex Man-support-remote-systems
|
||||
|
@ -125,8 +125,8 @@ Published by the:@*
|
||||
GNU Press, @hfill @uref{https://www.fsf.org/licensing/gnu-press/}@*
|
||||
a division of the @hfill email: @email{sales@@fsf.org}@*
|
||||
Free Software Foundation, Inc. @hfill Tel: +1 (617) 542-5942@*
|
||||
51 Franklin Street, Fifth Floor @hfill Fax: +1 (617) 542-2652@*
|
||||
Boston, MA 02110-1301 USA
|
||||
31 Milk Street, # 960789 @hfill Fax: +1 (617) 542-2652@*
|
||||
Boston, MA 02196 USA
|
||||
@end iftex
|
||||
|
||||
@ifnottex
|
||||
@ -136,8 +136,8 @@ Printed copies available from @uref{https://shop.fsf.org/}. Published by:
|
||||
GNU Press, https://www.fsf.org/licensing/gnu-press/
|
||||
a division of the email: sales@@fsf.org
|
||||
Free Software Foundation, Inc. Tel: +1 (617) 542-5942
|
||||
51 Franklin Street, Fifth Floor Fax: +1 (617) 542-2652
|
||||
Boston, MA 02110-1301 USA
|
||||
31 Milk Street, # 960789 Fax: +1 (617) 542-2652
|
||||
Boston, MA 02196 USA
|
||||
@end example
|
||||
@end ifnottex
|
||||
|
||||
|
@ -140,8 +140,8 @@ developing GNU and promoting software freedom.''
|
||||
|
||||
@sp 2
|
||||
Published by the Free Software Foundation @*
|
||||
51 Franklin St, Fifth Floor @*
|
||||
Boston, MA 02110-1301 @*
|
||||
31 Milk Street, # 960789 @*
|
||||
Boston, MA 02196 @*
|
||||
USA @*
|
||||
ISBN 1-882114-74-4
|
||||
|
||||
|
@ -1910,8 +1910,8 @@ pairs. The following properties are supported:
|
||||
@item :category
|
||||
The value should be a symbol describing what kind of text the
|
||||
completion function is trying to complete. If the symbol matches one
|
||||
of the keys in @code{completion-category-overrides}, the usual
|
||||
completion behavior is overridden. @xref{Completion Variables}.
|
||||
of the keys in @code{completion-category-overrides} described above,
|
||||
the usual completion behavior is overridden.
|
||||
|
||||
@item :annotation-function
|
||||
The value should be a function to add annotations in the completions
|
||||
|
@ -2227,8 +2227,9 @@ construct.)
|
||||
@item (:eval @var{form})
|
||||
A list whose first element is the symbol @code{:eval} says to evaluate
|
||||
@var{form}, and use the result as a string to display. Make sure this
|
||||
evaluation cannot load any files, as doing so could cause infinite
|
||||
recursion.
|
||||
evaluation neither loads any files nor calls functions like
|
||||
@code{posn-at-point} or @code{window-in-direction}, which themselves
|
||||
evaluate the mode line, as doing so could cause infinite recursion.
|
||||
|
||||
@item (:propertize @var{elt} @var{props}@dots{})
|
||||
A list whose first element is the symbol @code{:propertize} says to
|
||||
|
@ -2413,10 +2413,12 @@ the converse is not always true.
|
||||
@end group
|
||||
@end example
|
||||
|
||||
The @code{equal} function recursively compares the contents of objects
|
||||
if they are integers, strings, markers, lists, cons cells, vectors,
|
||||
bool-vectors, byte-code function objects, char-tables, records, or font
|
||||
objects.
|
||||
The @code{equal} function compares strings and bool-vectors by value.
|
||||
Numbers are compared by type and numeric value, using @code{eql}.
|
||||
Lists, cons cells, vectors, records, markers, char-tables, font objects,
|
||||
and function objects (closures)@footnote{However, equality of distinct
|
||||
function objects cannot be guaranteed in general.} are compared
|
||||
recursively by using @code{equal} on their constituent parts.
|
||||
|
||||
Comparison of strings is case-sensitive, but does not take account of
|
||||
text properties---it compares only the characters in the strings.
|
||||
|
@ -788,6 +788,14 @@ other kinds, such as words and string constants.
|
||||
---------- Buffer: foo ----------
|
||||
@end group
|
||||
@end example
|
||||
|
||||
@vindex forward-sexp-function
|
||||
@code{forward-sexp} calls the function that is the value of the variable
|
||||
@code{forward-sexp-function}, if that is non-@code{nil}, to do the
|
||||
actual work, passing it the same arguments as those with which the
|
||||
command was called. Major modes can define their own functions for
|
||||
moving over balanced expressions as appropriate for the mode, and set
|
||||
this variable to that function.
|
||||
@end deffn
|
||||
|
||||
@deffn Command backward-sexp &optional arg
|
||||
@ -898,7 +906,8 @@ If Emacs is compiled with tree-sitter, it can use the tree-sitter
|
||||
parser information to move across syntax constructs. Since what
|
||||
exactly is considered a sexp varies between languages, a major mode
|
||||
should set @code{treesit-thing-settings} to determine that. Then
|
||||
the mode can get navigation-by-sexp functionality for free, by using
|
||||
@code{forward-sexp-function} will be set to @code{treesit-forward-sexp},
|
||||
and the mode can get navigation-by-sexp functionality for free, by using
|
||||
@code{forward-sexp} and @code{backward-sexp}(@pxref{Expressions,
|
||||
,, emacs, The extensible self-documenting text editor}).
|
||||
|
||||
|
@ -954,7 +954,7 @@ used.
|
||||
@item
|
||||
New major modes based on the
|
||||
@uref{https://tree-sitter.github.io/tree-sitter/, tree-sitter library}
|
||||
library for editing Elixir, HTML, Lua, HEEx, and PHP.
|
||||
library for editing Elixir, HEEx, HTML, Lua, and PHP.
|
||||
|
||||
@item
|
||||
Support for the EditorConfig standard has been added, an editor-neutral
|
||||
|
@ -3788,8 +3788,8 @@ argument.
|
||||
|
||||
With the above setting, you could link to a specific bug with
|
||||
=[[bugzilla:129]]=, search the web for =OrgMode= with =[[duckduckgo:OrgMode]]=,
|
||||
show the map location of the Free Software Foundation =[[gmap:51
|
||||
Franklin Street, Boston]]= or of Carsten office =[[omap:Science Park 904,
|
||||
show the map location of the Free Software Foundation =[[omap:31
|
||||
Milk Street, Boston]]= or of Carsten's office =[[omap:Science Park 904,
|
||||
Amsterdam, The Netherlands]]= and find out what the Org author is doing
|
||||
besides Emacs hacking with =[[ads:Dominik,C]]=.
|
||||
|
||||
|
@ -337,7 +337,9 @@ width (in pixels), and @var{table} is the table.
|
||||
@end defun
|
||||
|
||||
@item align
|
||||
Should be either @code{right} or @code{left}.
|
||||
Should be either @code{right} or @code{left}. If not specified,
|
||||
numerical values will be flushed to the right, and all other values will
|
||||
be flushed to the left.
|
||||
@end table
|
||||
|
||||
@item :getter
|
||||
@ -426,14 +428,19 @@ current line, they can use the @code{vtable-current-object} function
|
||||
(@pxref{Interface Functions}) to determine what that object is.
|
||||
|
||||
@item :separator-width
|
||||
The width of the blank space between columns.
|
||||
The width of the blank space between columns. If not specified, it
|
||||
defaults to 1.
|
||||
|
||||
@item :divider-width
|
||||
@itemx :divider
|
||||
You can have a divider inserted between the columns. This can either
|
||||
be specified by using @code{:divider}, which should be a string to be
|
||||
displayed between the columns, or @code{:divider-width}, which
|
||||
specifies the width of the space to be used as the divider.
|
||||
You can have a divider inserted between the columns. This can either be
|
||||
specified by using @code{:divider}, which should be a string to be
|
||||
displayed between the columns, or @code{:divider-width}, which specifies
|
||||
the width of the space to be used as the divider, in units of characters
|
||||
of the face used to display the table. If not specified,
|
||||
@code{:divider} defaults to @code{nil}, but specifying
|
||||
@code{:divider-width} effectively sets the divider to a whitespace
|
||||
string of that width.
|
||||
|
||||
@item :sort-by
|
||||
This should be a list of tuples, and specifies how the table is to be
|
||||
|
10
etc/NEWS.29
10
etc/NEWS.29
@ -2032,7 +2032,7 @@ The intention is that this command can be used to access a wide
|
||||
variety of version control system-specific functionality from VC
|
||||
without complexifying either the VC command set or the backend API.
|
||||
|
||||
*** 'C-x v v' in a diffs buffer allows committing only some of the changes.
|
||||
*** 'C-x v v' in a diffs buffer lets you commit only some of the changes.
|
||||
This command is intended to allow you to commit only some of the
|
||||
changes you have in your working tree. Begin by creating a buffer
|
||||
with the changes against the last commit, e.g. with 'C-x v D'
|
||||
@ -3529,8 +3529,8 @@ The variables 'connection-local-profile-alist' and
|
||||
make it more convenient to inspect and modify them.
|
||||
|
||||
*** New function 'connection-local-update-profile-variables'.
|
||||
This function allows modifying the settings of an existing
|
||||
connection-local profile.
|
||||
You can use this to modify the settings of an existing connection-local
|
||||
profile.
|
||||
|
||||
*** New macro 'with-connection-local-application-variables'.
|
||||
This macro works like 'with-connection-local-variables', but it allows
|
||||
@ -4046,8 +4046,8 @@ measured will be counted for the purpose of calculating the text
|
||||
dimensions.
|
||||
|
||||
** 'window-text-pixel-size' understands a new meaning of FROM.
|
||||
Specifying a cons as the FROM argument allows starting the measurement
|
||||
of text from a specified amount of pixels above or below a position.
|
||||
The FROM argument can now be a cons, which means to start measuring text
|
||||
from a specified number of pixels above or below a position.
|
||||
|
||||
** 'window-body-width' and 'window-body-height' can use remapped faces.
|
||||
Specifying 'remap' as the PIXELWISE argument now checks if the default
|
||||
|
38
etc/NEWS.30
38
etc/NEWS.30
@ -379,11 +379,6 @@ the name of the killed buffer that was displayed in that window.
|
||||
It can be used to add, remove and reorder functions that change the
|
||||
appearance of every tab on the tab bar.
|
||||
|
||||
---
|
||||
*** New user option 'tab-line-tabs-buffer-group-function'.
|
||||
It provides two choices to group tab buffers by major mode and by
|
||||
project name.
|
||||
|
||||
---
|
||||
*** New hook 'tab-bar-tab-post-select-functions'.
|
||||
|
||||
@ -401,7 +396,7 @@ you want to use these keys for the commands 'previous-buffer' and
|
||||
'next-buffer'.
|
||||
|
||||
---
|
||||
*** Default list of tabs is changed to support a fixed order.
|
||||
*** Default list of tab-line tabs is changed to support a fixed order.
|
||||
This means that 'tab-line-tabs-fixed-window-buffers', the new default
|
||||
tabs function, is like the previous 'tab-line-tabs-window-buffers' where
|
||||
both of them show only buffers that were previously displayed in the
|
||||
@ -411,7 +406,12 @@ these buffers. You can drag the tabs and release at a new position
|
||||
to manually reorder the buffers on the tab line.
|
||||
|
||||
---
|
||||
*** Buffers on group tabs are now sorted alphabetically.
|
||||
*** New user option 'tab-line-tabs-buffer-group-function'.
|
||||
It provides two choices to group tab buffers by major mode and by
|
||||
project name.
|
||||
|
||||
---
|
||||
*** Buffers on tab-line group tabs are now sorted alphabetically.
|
||||
This will keep the fixed order of tabs, even after switching between
|
||||
them.
|
||||
|
||||
@ -945,7 +945,7 @@ Customizing it to 'relativize' makes commands like 'project-find-file'
|
||||
and 'project-find-dir' display previous history entries relative to
|
||||
the current project.
|
||||
|
||||
--
|
||||
---
|
||||
*** New user option 'project-key-prompt-style'.
|
||||
The look of the key prompt in the project switcher has been changed
|
||||
slightly. To get the previous one, set this option to 'brackets'.
|
||||
@ -1102,7 +1102,7 @@ in size.
|
||||
|
||||
+++
|
||||
*** 'dired-listing-switches' handles connection-local values if exist.
|
||||
This allows customizing different switches for different remote machines.
|
||||
This allows you to customize different switches for different remote machines.
|
||||
|
||||
** Ediff
|
||||
|
||||
@ -1973,6 +1973,10 @@ By default it retains the previous behavior: read the contents of
|
||||
Gemfile and act accordingly. But you can also set it to t or nil to
|
||||
skip the check.
|
||||
|
||||
*** New user option 'ruby-bracketed-args-indent'.
|
||||
When it is set to nil, multiple consecutive open braces/brackets/parens
|
||||
result in only one additional indentation level.
|
||||
|
||||
** Thingatpt
|
||||
|
||||
---
|
||||
@ -1993,12 +1997,7 @@ providers for "things" that are defined by text properties.
|
||||
Now, calling '(thing-at-point 'url)' when point is on a bug reference
|
||||
will return the URL for that bug.
|
||||
|
||||
** Miscellaneous
|
||||
|
||||
+++
|
||||
*** New user option 'rcirc-log-time-format'.
|
||||
This allows for rcirc logs to use a custom timestamp format, which the
|
||||
chat buffers use by default.
|
||||
** Buffer-menu
|
||||
|
||||
---
|
||||
*** New user option 'Buffer-menu-group-by'.
|
||||
@ -2013,6 +2012,13 @@ that is, buffers not visiting a file and whose names start with a space.
|
||||
Previously, such buffers were never shown. This command is bound to 'I'
|
||||
in Buffer Menu mode.
|
||||
|
||||
** Miscellaneous
|
||||
|
||||
+++
|
||||
*** New user option 'rcirc-log-time-format'.
|
||||
This allows for rcirc logs to use a custom timestamp format, which the
|
||||
chat buffers use by default.
|
||||
|
||||
---
|
||||
*** 'ffap-lax-url' now defaults to nil.
|
||||
Previously, it was set to t, but this broke remote file name detection.
|
||||
@ -2506,7 +2512,7 @@ sorts by the return value of 'age', then by 'size', then by 'cost'.
|
||||
The old signature, '(sort SEQ PREDICATE)', can still be used and sorts
|
||||
its input in-place as before.
|
||||
|
||||
** New API for 'derived-mode-p' and control of the graph of major modes.
|
||||
** New API for 'derived-mode-p' and control of the graph of major modes
|
||||
|
||||
+++
|
||||
*** 'derived-mode-p' now takes the list of modes as a single argument.
|
||||
|
20
etc/ORG-NEWS
20
etc/ORG-NEWS
@ -284,6 +284,26 @@ respected.
|
||||
Images dropped also respect the value of ~org-yank-image-save-method~
|
||||
when ~org-yank-dnd-method~ is =attach=.
|
||||
|
||||
*** Alignment of image previews can be customized
|
||||
|
||||
Previously, all the image previews where always left-aligned.
|
||||
|
||||
Now, you can customize image previews to be left-aligned, centered, or right-aligned.
|
||||
|
||||
The customization can be done globally, via ~org-image-align~, or per
|
||||
image, using =#+attr_...:=. Example:
|
||||
|
||||
: #+attr_org: :align center
|
||||
: [[/path/to/image/file/png]]
|
||||
:
|
||||
: or
|
||||
:
|
||||
: #+attr_org: :center t
|
||||
: [[/path/to/image/file/png]]
|
||||
|
||||
When =#+attr_org= is not present, ~:align~ and ~:center~ attributes
|
||||
from other =#+attr_...:= keywords will be used.
|
||||
|
||||
*** =id:= links support search options; ~org-id-store-link~ adds search option by default
|
||||
|
||||
Adding search option by ~org-id-store-link~ can be disabled by setting
|
||||
|
@ -1,5 +1,5 @@
|
||||
% Reference Card for Org Mode
|
||||
\def\orgversionnumber{9.7.10}
|
||||
\def\orgversionnumber{9.7.11}
|
||||
\def\versionyear{2024} % latest update
|
||||
\input emacsver.tex
|
||||
|
||||
|
@ -1098,8 +1098,8 @@ kondiĉoj estas observataj:
|
||||
|
||||
Ekzemplero de la GNUa Ĝenerala Publika Permesilo devas esti
|
||||
liverita al vi kun ĉi tiu programo; se vi ĝin ne ricevis, turnu vin
|
||||
al: Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
||||
Floor, Boston, MA 02110-1301, USA.
|
||||
al: Free Software Foundation, Inc., 31 Milk Street, # 960789,
|
||||
Boston, MA 02196, USA.
|
||||
|
||||
Bonvole legu la dosieron COPYING kaj sekve donu kopiojn de GNU Emakso
|
||||
al viaj amikoj. Helpu ekstermi programaran obstrukcismon
|
||||
|
@ -68,7 +68,7 @@
|
||||
"http" (? "s") "://www.gnu.org/licenses"
|
||||
(? "/") (? ">") (? " "))
|
||||
(seq "Boston," delim "MA" delim
|
||||
(or "02111-1307" "02110-1301" "02111-1301")
|
||||
(or "02111-1307" "02110-1301" "02111-1301" "02196")
|
||||
(? ",") delim
|
||||
"USA")
|
||||
"675 Mass Ave, Cambridge, MA 02139, USA")
|
||||
|
@ -641,27 +641,68 @@ SORT-PRED if desired."
|
||||
(lambda (a b) (> (cdr a) (cdr b))))
|
||||
))
|
||||
|
||||
;; This assumes 4KB blocks
|
||||
(defun chart--file-size (size)
|
||||
(* (/ (+ size 4095) 4096) 4096))
|
||||
|
||||
(defun chart--directory-size (dir)
|
||||
"Compute total size of files in directory DIR and its subdirectories.
|
||||
DIR is assumed to be a directory, verified by the caller."
|
||||
(let ((size 0))
|
||||
(dolist (file (directory-files-recursively dir "." t))
|
||||
(let ((fsize (nth 7 (file-attributes file))))
|
||||
(if (> fsize 0)
|
||||
(setq size
|
||||
(+ size (chart--file-size fsize))))))
|
||||
size))
|
||||
|
||||
(defun chart-space-usage (d)
|
||||
"Display a top usage chart for directory D."
|
||||
(interactive "DDirectory: ")
|
||||
(message "Collecting statistics...")
|
||||
(let ((nmlst nil)
|
||||
(cntlst nil)
|
||||
(b (get-buffer-create " *du-tmp*")))
|
||||
(set-buffer b)
|
||||
(erase-buffer)
|
||||
(insert "cd " d ";du -sk * \n")
|
||||
(message "Running `cd %s;du -sk *'..." d)
|
||||
(call-process-region (point-min) (point-max) shell-file-name t
|
||||
(current-buffer) nil)
|
||||
(goto-char (point-min))
|
||||
(message "Scanning output ...")
|
||||
(while (re-search-forward "^\\([0-9]+\\)[ \t]+\\([^ \n]+\\)$" nil t)
|
||||
(let* ((nam (buffer-substring (match-beginning 2) (match-end 2)))
|
||||
(num (buffer-substring (match-beginning 1) (match-end 1))))
|
||||
(setq nmlst (cons nam nmlst)
|
||||
;; * 1000 to put it into bytes
|
||||
cntlst (cons (* (string-to-number num) 1000) cntlst))))
|
||||
b)
|
||||
(if (executable-find "du")
|
||||
(progn
|
||||
(setq b (get-buffer-create " *du-tmp*"))
|
||||
(set-buffer b)
|
||||
(erase-buffer)
|
||||
(if (and (memq system-type '(windows-nt ms-dos))
|
||||
(fboundp 'w32-shell-dos-semantics)
|
||||
(w32-shell-dos-semantics))
|
||||
(progn
|
||||
;; With Windows shells, 'cd' does not change the drive,
|
||||
;; and ';' is not reliable for running multiple
|
||||
;; commands, so use alternatives. We quote the
|
||||
;; directory because otherwise pushd will barf on a
|
||||
;; directory with forward slashes. Note that * will not
|
||||
;; skip dotfiles with Windows shells, unlike on Unix.
|
||||
(insert "pushd \"" d "\" && du -sk * \n")
|
||||
(message "Running `pushd \"%s\" && du -sk *'..." d))
|
||||
(insert "cd " d ";du -sk * \n")
|
||||
(message "Running `cd %s;du -sk *'..." d))
|
||||
(call-process-region (point-min) (point-max) shell-file-name t
|
||||
(current-buffer) nil)
|
||||
(goto-char (point-min))
|
||||
(message "Scanning output ...")
|
||||
(while (re-search-forward "^\\([0-9]+\\)[ \t]+\\([^ \n]+\\)$" nil t)
|
||||
(let* ((nam (buffer-substring (match-beginning 2) (match-end 2)))
|
||||
(num (buffer-substring (match-beginning 1) (match-end 1))))
|
||||
(setq nmlst (cons nam nmlst)
|
||||
;; * 1000 to put it into bytes
|
||||
cntlst (cons (* (string-to-number num) 1000) cntlst)))))
|
||||
(dolist (file (directory-files d t directory-files-no-dot-files-regexp))
|
||||
(let ((fbase (file-name-nondirectory file)))
|
||||
;; Typical shells exclude files and subdirectories whose names
|
||||
;; begin with a period when it expands *, so we do the same.
|
||||
(unless (string-match-p "\\`\\." fbase)
|
||||
(setq nmlst (cons fbase nmlst))
|
||||
(if (file-regular-p file)
|
||||
(setq cntlst (cons (chart--file-size
|
||||
(nth 7 (file-attributes file)))
|
||||
cntlst))
|
||||
(setq cntlst (cons (chart--directory-size file) cntlst)))))))
|
||||
(if (not nmlst)
|
||||
(error "No files found!"))
|
||||
(chart-bar-quickie 'vertical (format "Largest files in %s" d)
|
||||
|
@ -722,15 +722,17 @@ This also updates the displayed table."
|
||||
(vtable--limit-string
|
||||
name (- (elt widths index) indicator-width))
|
||||
name))
|
||||
(let ((fill-width
|
||||
(+ (- (elt widths index)
|
||||
(string-pixel-width displayed)
|
||||
indicator-width
|
||||
(vtable-separator-width table)
|
||||
;; We want the indicator to not be quite flush
|
||||
;; right.
|
||||
(/ (vtable--char-width table) 2.0))
|
||||
(if last 0 spacer))))
|
||||
(let* ((indicator-lead-width
|
||||
;; We want the indicator to not be quite flush right.
|
||||
(/ (vtable--char-width table) 2.0))
|
||||
(indicator-pad-width (- (vtable--char-width table)
|
||||
indicator-lead-width))
|
||||
(fill-width
|
||||
(+ (- (elt widths index)
|
||||
(string-pixel-width displayed)
|
||||
indicator-width
|
||||
indicator-lead-width)
|
||||
(if last 0 spacer))))
|
||||
(if (or (not last)
|
||||
(zerop indicator-width)
|
||||
(< (seq-reduce #'+ widths 0) (window-width nil t)))
|
||||
@ -739,7 +741,9 @@ This also updates the displayed table."
|
||||
displayed
|
||||
(propertize " " 'display
|
||||
(list 'space :width (list fill-width)))
|
||||
indicator)
|
||||
indicator
|
||||
(propertize " " 'display
|
||||
(list 'space :width (list indicator-pad-width))))
|
||||
;; This is the final column, and we have a sorting
|
||||
;; indicator, and the table is too wide for the window.
|
||||
(let* ((pre-indicator (string-pixel-width
|
||||
@ -758,10 +762,6 @@ This also updates the displayed table."
|
||||
(list (- fill-width pre-fill))))))))
|
||||
(when (and divider (not last))
|
||||
(insert (propertize divider 'keymap dmap)))
|
||||
(insert (propertize
|
||||
" " 'display
|
||||
(list 'space :width (list
|
||||
(/ (vtable--char-width table) 2.0)))))
|
||||
(put-text-property start (point) 'vtable-column index)))
|
||||
(vtable-columns table))
|
||||
(insert "\n")
|
||||
|
@ -579,7 +579,11 @@ HEADER is a header component of a MIME-entity object (see
|
||||
(ignore-errors (base64-decode-region pos (point))))
|
||||
((string= transfer-encoding "quoted-printable")
|
||||
(quoted-printable-decode-region pos (point))))))
|
||||
(decode-coding-region pos (point) coding-system)
|
||||
(decode-coding-region
|
||||
pos (point)
|
||||
;; Use -dos decoding, to remove ^M characters left from base64 or
|
||||
;; rogue qp-encoded text.
|
||||
(coding-system-change-eol-conversion coding-system 1))
|
||||
(if (and
|
||||
(or (not rmail-mime-coding-system) (consp rmail-mime-coding-system))
|
||||
(not (eq (coding-system-base coding-system) 'us-ascii)))
|
||||
@ -691,7 +695,11 @@ HEADER is a header component of a MIME-entity object (see
|
||||
(if (and (eq coding-system 'undecided)
|
||||
(not (null coding-system-for-read)))
|
||||
(setq coding-system coding-system-for-read))))
|
||||
(decode-coding-region (point-min) (point) coding-system)
|
||||
(decode-coding-region
|
||||
(point-min) (point)
|
||||
;; Use -dos decoding, to remove ^M characters left from base64 or
|
||||
;; rogue qp-encoded text.
|
||||
(coding-system-change-eol-conversion coding-system 1))
|
||||
(if (and
|
||||
(or (not rmail-mime-coding-system) (consp rmail-mime-coding-system))
|
||||
(not (eq (coding-system-base coding-system) 'us-ascii)))
|
||||
|
@ -45,7 +45,6 @@
|
||||
|
||||
(require 'ob)
|
||||
(require 'org-macs)
|
||||
(require 'ox-ascii)
|
||||
|
||||
(declare-function org-time-string-to-time "org" (s))
|
||||
(declare-function orgtbl-to-generic "org-table" (table params))
|
||||
@ -295,6 +294,8 @@ then create one. Return the initialized session. The current
|
||||
"Export TABLE to DATA-FILE in a format readable by gnuplot.
|
||||
Pass PARAMS through to `orgtbl-to-generic' when exporting TABLE."
|
||||
(require 'ox-org)
|
||||
(require 'ox-ascii)
|
||||
(declare-function org-export-create-backend "ox")
|
||||
(with-temp-file data-file
|
||||
(insert (let ((org-babel-gnuplot-timestamp-fmt
|
||||
(or (plist-get params :timefmt) "%Y-%m-%d-%H:%M:%S"))
|
||||
|
@ -5,13 +5,13 @@
|
||||
(defun org-release ()
|
||||
"The release version of Org.
|
||||
Inserted by installing Org mode or when a release is made."
|
||||
(let ((org-release "9.7.10"))
|
||||
(let ((org-release "9.7.11"))
|
||||
org-release))
|
||||
;;;###autoload
|
||||
(defun org-git-version ()
|
||||
"The Git version of Org mode.
|
||||
Inserted by installing Org or when a release is made."
|
||||
(let ((org-git-version "release_9.7.10"))
|
||||
(let ((org-git-version "release_9.7.11"))
|
||||
org-git-version))
|
||||
|
||||
(provide 'org-version)
|
||||
|
@ -9,7 +9,7 @@
|
||||
;; URL: https://orgmode.org
|
||||
;; Package-Requires: ((emacs "26.1"))
|
||||
|
||||
;; Version: 9.7.10
|
||||
;; Version: 9.7.11
|
||||
|
||||
;; This file is part of GNU Emacs.
|
||||
;;
|
||||
|
@ -156,8 +156,11 @@
|
||||
(:cite-export "CITE_EXPORT" nil org-cite-export-processors))
|
||||
"Alist between export properties and ways to set them.
|
||||
|
||||
The key of the alist is the property name, and the value is a list
|
||||
like (KEYWORD OPTION DEFAULT BEHAVIOR) where:
|
||||
Each element of the alist is a list like
|
||||
(ALIST-KEY KEYWORD OPTION DEFAULT BEHAVIOR)
|
||||
|
||||
ALIST-KEY is the key of the alist - a symbol like `:option', and the
|
||||
value is (KEYWORD OPTION ...).
|
||||
|
||||
KEYWORD is a string representing a buffer keyword, or nil. Each
|
||||
property defined this way can also be set, during subtree
|
||||
|
@ -472,6 +472,26 @@ Only has effect when `ruby-use-smie' is t."
|
||||
:safe 'booleanp
|
||||
:version "29.1")
|
||||
|
||||
(defcustom ruby-bracketed-args-indent t
|
||||
"Non-nil to align the contents of bracketed arguments with the brackets.
|
||||
|
||||
Example:
|
||||
|
||||
qux({
|
||||
foo => bar
|
||||
})
|
||||
|
||||
Set it to nil to align to the beginning of the statement:
|
||||
|
||||
qux({
|
||||
foo => bar
|
||||
})
|
||||
|
||||
Only has effect when `ruby-use-smie' is t."
|
||||
:type 'boolean
|
||||
:safe 'booleanp
|
||||
:version "30.1")
|
||||
|
||||
(defcustom ruby-deep-arglist t
|
||||
"Deep indent lists in parenthesis when non-nil.
|
||||
Also ignores spaces after parenthesis when `space'.
|
||||
@ -826,6 +846,9 @@ This only affects the output of the command `ruby-toggle-block'."
|
||||
))
|
||||
(`(:before . ,(or "(" "[" "{"))
|
||||
(cond
|
||||
((and (not (eq ruby-bracketed-args-indent t))
|
||||
(smie-rule-prev-p "," "(" "["))
|
||||
(cons 'column (current-indentation)))
|
||||
((and (equal token "{")
|
||||
(not (smie-rule-prev-p "(" "{" "[" "," "=>" "=" "return" ";" "do"))
|
||||
(save-excursion
|
||||
|
@ -842,6 +842,16 @@ a statement container is a node that matches
|
||||
;; No paren/curly/brace found on the same line.
|
||||
((< (treesit-node-start found) parent-bol)
|
||||
parent-bol)
|
||||
;; Nesting of brackets args.
|
||||
((and
|
||||
(not (eq ruby-bracketed-args-indent t))
|
||||
(string-match-p "\\`array\\|hash\\'" (treesit-node-type parent))
|
||||
(equal (treesit-node-parent parent) found)
|
||||
;; Grandparent is not a parenless call.
|
||||
(or (not (equal (treesit-node-type found) "argument_list"))
|
||||
(equal (treesit-node-type (treesit-node-child found 0))
|
||||
"(")))
|
||||
parent-bol)
|
||||
;; Hash or array opener on the same line.
|
||||
((string-match-p "\\`array\\|hash\\'" (treesit-node-type found))
|
||||
(save-excursion
|
||||
|
@ -257,7 +257,15 @@ a list of frames to update."
|
||||
"Tab Bar mode map.")
|
||||
|
||||
(define-minor-mode tab-bar-mode
|
||||
"Toggle the tab bar in all graphical frames (Tab Bar mode)."
|
||||
"Toggle the tab bar in all graphical frames (Tab Bar mode).
|
||||
|
||||
When this mode is enabled, Emacs displays a tab bar on top of each frame.
|
||||
The tab bar is a row of tabs -- buttons that you can click
|
||||
to switch the frame between different window configurations.
|
||||
See `current-window-configuration' for more about window configurations.
|
||||
To add a button (which can then record one more window configuration),
|
||||
click on the \"+\" button. Clicking on the \"x\" icon of a button
|
||||
deletes the button."
|
||||
:global t
|
||||
;; It's defined in C/cus-start, this stops the d-m-m macro defining it again.
|
||||
:variable tab-bar-mode
|
||||
@ -1517,8 +1525,8 @@ in the same window to give information about the killed buffer."
|
||||
|
||||
(defun tab-bar-select-restore-windows (_frame windows _type)
|
||||
"Display a placeholder buffer in the window whose buffer was killed.
|
||||
A button in the window allows restoring the killed buffer,
|
||||
if it was visiting a file."
|
||||
There is a button in the window which you can press to restore the
|
||||
killed buffer, if that buffer was visiting a file."
|
||||
(dolist (quad windows)
|
||||
(when (window-live-p (nth 0 quad))
|
||||
(let* ((window (nth 0 quad))
|
||||
|
@ -1141,7 +1141,15 @@ However, return the correct mouse position list if EVENT is a
|
||||
|
||||
;;;###autoload
|
||||
(define-minor-mode tab-line-mode
|
||||
"Toggle display of tab line in the windows displaying the current buffer."
|
||||
"Toggle display of tab line in the windows displaying the current buffer.
|
||||
|
||||
When this mode is enabled, each window displays a tab line on its
|
||||
top screen line. The tab line is a row of tabs -- buttons which
|
||||
you can click to have the window display the buffer whose name is
|
||||
shown on the button. Clicking on the \"x\" icon of the button
|
||||
removes the button (but does not kill the corresponding buffer).
|
||||
In addition, the tab line shows a \"+\" button which adds a new
|
||||
button, so you could have one more buffer shown on the tab line."
|
||||
:lighter nil
|
||||
(let ((default-value '(:eval (tab-line-format))))
|
||||
;; Preserve the existing tab-line set outside of this mode
|
||||
|
@ -119,8 +119,8 @@
|
||||
;;
|
||||
;; FSF
|
||||
;; Free Software Foundation
|
||||
;; 51 Franklin Street, Fifth Floor
|
||||
;; Boston, MA 02110-1301 USA.
|
||||
;; 31 Milk Street, # 960789
|
||||
;; Boston, MA 02196 USA.
|
||||
;; (617) 542-5942
|
||||
;; gnu@gnu.org
|
||||
;;
|
||||
|
@ -1415,13 +1415,16 @@ enable gathering statistics."
|
||||
(when fun
|
||||
(mapcar
|
||||
#'(lambda (sym)
|
||||
(if (boundp sym)
|
||||
`(add-hook (quote ,sym) (function ,fun))
|
||||
`(add-hook
|
||||
(quote ,(intern
|
||||
(concat (symbol-name sym)
|
||||
use-package-hook-name-suffix)))
|
||||
(function ,fun))))
|
||||
(let ((symname (symbol-name sym)))
|
||||
(if (and (boundp sym)
|
||||
;; Mode variables are usually bound, but
|
||||
;; their hooks are named FOO-mode-hook.
|
||||
(not (string-suffix-p "-mode" symname)))
|
||||
`(add-hook (quote ,sym) (function ,fun))
|
||||
`(add-hook
|
||||
(quote ,(intern
|
||||
(concat symname use-package-hook-name-suffix)))
|
||||
(function ,fun)))))
|
||||
(use-package-hook-handler-normalize-mode-symbols syms)))))
|
||||
(use-package-normalize-commands args))))
|
||||
|
||||
|
@ -1451,7 +1451,7 @@ This default should work without changes."
|
||||
(ediff-abbreviate-file-name (file-name-directory dir))))
|
||||
|
||||
(defsubst ediff-nonempty-string-p (string)
|
||||
(and (stringp string) (string-empty-p string)))
|
||||
(and (stringp string) (not (string-empty-p string))))
|
||||
|
||||
(defun ediff-abbrev-jobname (jobname)
|
||||
(cond ((eq jobname 'ediff-directories)
|
||||
|
@ -1459,9 +1459,9 @@ the file renames. The downsides is that the log produced this
|
||||
way may omit certain (merge) commits, and that `log-view-diff'
|
||||
fails on commits that used the previous name, in that log buffer.
|
||||
|
||||
When this variable is nil, and the log ends with a rename, we
|
||||
show a button below that which allows showing the log for the
|
||||
file name before the rename."
|
||||
When this variable is nil, and the log ends with a rename, there is a
|
||||
button which you can press to show the log for the file name before the
|
||||
rename."
|
||||
:type 'boolean
|
||||
:version "26.1")
|
||||
|
||||
|
@ -70,7 +70,7 @@ This makes it possible to shorten the delay for subsequent popups
|
||||
in the same key sequence. The default is for this value to be
|
||||
nil, which disables this behavior."
|
||||
:type '(choice float (const :tag "Disabled" nil))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-echo-keystrokes (if (and echo-keystrokes
|
||||
(> (+ echo-keystrokes 0.01)
|
||||
@ -83,7 +83,7 @@ This only applies if `which-key-popup-type' is minibuffer or
|
||||
`which-key-idle-delay' or else the keystroke echo will erase the
|
||||
which-key popup."
|
||||
:type 'float
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-max-description-length 27
|
||||
"Truncate the description of keys to this length.
|
||||
@ -96,17 +96,17 @@ before. Truncation is done using `which-key-ellipsis'."
|
||||
(integer :tag "Width in characters")
|
||||
(float :tag "Use fraction of available width")
|
||||
function)
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-min-column-description-width 0
|
||||
"Every column should at least have this width."
|
||||
:type 'natnum
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-add-column-padding 0
|
||||
"Additional spaces to add to the left of each key column."
|
||||
:type 'integer
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-unicode-correction 3
|
||||
"Correction for wide unicode characters.
|
||||
@ -122,7 +122,7 @@ additional ASCII character in the which-key buffer. Increase this
|
||||
number if you are seeing characters get cutoff on the right side
|
||||
of the which-key popup."
|
||||
:type 'integer
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-dont-use-unicode t
|
||||
"If non-nil, don't use any unicode characters in default setup.
|
||||
@ -136,7 +136,7 @@ For affected settings, see `which-key-replacement-alist', `which-key-ellipsis'
|
||||
(custom-reevaluate-setting sym))))
|
||||
:initialize #'custom-initialize-changed
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-separator
|
||||
(if which-key-dont-use-unicode " : " " → ")
|
||||
@ -145,7 +145,7 @@ Default is \" → \", unless `which-key-dont-use-unicode' is non
|
||||
nil, in which case the default is \" : \"."
|
||||
:type 'string
|
||||
:set-after '(which-key-dont-use-unicode)
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-ellipsis
|
||||
(if which-key-dont-use-unicode ".." "…")
|
||||
@ -155,20 +155,20 @@ in which case the default is \"..\". This can also be the empty
|
||||
string to truncate without using any ellipsis."
|
||||
:type 'string
|
||||
:set-after '(which-key-dont-use-unicode)
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-prefix-prefix "+"
|
||||
"Prefix string to indicate a key bound to a keymap.
|
||||
Default is \"+\"."
|
||||
:type 'string
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-compute-remaps nil
|
||||
"If non-nil, show remapped commands.
|
||||
This applies to commands that have been remapped given the
|
||||
currently active keymaps."
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-replacement-alist
|
||||
`(((nil . "which-key-show-next-page-no-cycle") . (nil . "wk next pg"))
|
||||
@ -211,7 +211,7 @@ non-nil value."
|
||||
(choice regexp (const nil)))
|
||||
:value-type (cons (choice string (const nil))
|
||||
(choice string (const nil))))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-allow-multiple-replacements nil
|
||||
"Allow a key binding to be modified by multiple elements.
|
||||
@ -220,7 +220,7 @@ patterns in `which-key-replacement-alist'. When nil, only the
|
||||
first match is used to perform replacements from
|
||||
`which-key-replacement-alist'."
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-show-docstrings nil
|
||||
"If non-nil, show each command's docstring in the which-key popup.
|
||||
@ -233,7 +233,7 @@ you use this feature."
|
||||
(const :tag "Do not show docstrings" nil)
|
||||
(const :tag "Add docstring to command names" t)
|
||||
(const :tag "Replace command name with docstring" docstring-only))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-extra-keymaps '(key-translation-map)
|
||||
"List of extra keymaps to show entries from.
|
||||
@ -242,7 +242,7 @@ The default is to check `key-translation-map', which contains the
|
||||
:type '(choice (list :tag "Translation map" (const key-translation-map))
|
||||
(const :tag "None" nil)
|
||||
(repeat :tag "Custom" symbol))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-highlighted-command-list '()
|
||||
"Rules used to highlight certain commands.
|
||||
@ -252,7 +252,7 @@ matching command names and use
|
||||
the element is a cons cell, it should take the form (regexp .
|
||||
face to apply)."
|
||||
:type '(repeat (choice string (cons regexp face)))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-special-keys '()
|
||||
"These keys will automatically be truncated to one character.
|
||||
@ -261,12 +261,12 @@ is disabled by default. An example configuration is
|
||||
|
||||
\(setq which-key-special-keys \\='(\"SPC\" \"TAB\" \"RET\" \"ESC\" \"DEL\")\)"
|
||||
:type '(repeat string)
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-buffer-name " *which-key*"
|
||||
"Name of which-key buffer."
|
||||
:type 'string
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-show-prefix 'echo
|
||||
"Whether to and where to display the current prefix sequence.
|
||||
@ -278,7 +278,7 @@ and nil. nil turns the feature off."
|
||||
(const :tag "In the echo area" echo)
|
||||
(const :tag "In the mode-line" mode-line)
|
||||
(const :tag "Hide" nil))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-popup-type 'side-window
|
||||
"Supported types are minibuffer, side-window, frame, and custom."
|
||||
@ -286,18 +286,18 @@ and nil. nil turns the feature off."
|
||||
(const :tag "Show in side window" side-window)
|
||||
(const :tag "Show in popup frame" frame)
|
||||
(const :tag "Use your custom display functions" custom))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-min-display-lines 1
|
||||
"Minimum number of horizontal lines to display in the which-key buffer."
|
||||
:type 'integer
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-max-display-columns nil
|
||||
"Maximum number of columns to display in the which-key buffer.
|
||||
A value of nil means don't impose a maximum."
|
||||
:type '(choice integer (const :tag "Unbounded" nil))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-side-window-location 'bottom
|
||||
"Location of which-key popup when `which-key-popup-type' is side-window.
|
||||
@ -311,7 +311,7 @@ location is tried."
|
||||
(const top)
|
||||
(const (right bottom))
|
||||
(const (bottom right)))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-side-window-slot 0
|
||||
"The `slot' to use for `display-buffer-in-side-window'.
|
||||
@ -325,31 +325,31 @@ preceding (that is, above or on the left of) the middle slot. A
|
||||
positive value means use a slot following (that is, below or on
|
||||
the right of) the middle slot. The default is zero."
|
||||
:type 'integer
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-side-window-max-width 0.333
|
||||
"Maximum width of which-key popup when type is side-window.
|
||||
This variable can also be a number between 0 and 1. In that case,
|
||||
it denotes a percentage out of the frame's width."
|
||||
:type 'float
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-side-window-max-height 0.25
|
||||
"Maximum height of which-key popup when type is side-window.
|
||||
This variable can also be a number between 0 and 1. In that case, it denotes
|
||||
a percentage out of the frame's height."
|
||||
:type 'float
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-frame-max-width 60
|
||||
"Maximum width of which-key popup when type is frame."
|
||||
:type 'natnum
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-frame-max-height 20
|
||||
"Maximum height of which-key popup when type is frame."
|
||||
:type 'natnum
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-allow-imprecise-window-fit (not (display-graphic-p))
|
||||
"Allow which-key to use a simpler method for resizing the popup.
|
||||
@ -359,13 +359,13 @@ this on may help.
|
||||
See https://github.com/justbur/emacs-which-key/issues/130
|
||||
and https://github.com/justbur/emacs-which-key/issues/225."
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-show-remaining-keys nil
|
||||
"Show remaining keys in last slot, when keys are hidden."
|
||||
:type '(radio (const :tag "Yes" t)
|
||||
(const :tag "No" nil))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-sort-order #'which-key-key-order
|
||||
"Order in which the key bindings are sorted.
|
||||
@ -385,25 +385,25 @@ information."
|
||||
(function-item which-key-description-order)
|
||||
(function-item which-key-prefix-then-key-order)
|
||||
(function-item which-key-local-then-key-order))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-sort-uppercase-first t
|
||||
"If non-nil, uppercase comes before lowercase in sorting.
|
||||
This applies to the function chosen in
|
||||
`which-key-sort-order'. Otherwise, the order is reversed."
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-paging-prefixes '()
|
||||
"Enable paging for these prefixes."
|
||||
:type '(repeat string)
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-paging-key "<f5>"
|
||||
"Key to use for changing pages.
|
||||
Bound after each of the prefixes in `which-key-paging-prefixes'"
|
||||
:type 'string
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
;; (defcustom which-key-undo-key nil
|
||||
;; "Key (string) to use for undoing keypresses. Bound recursively
|
||||
@ -422,7 +422,7 @@ Normally `help-char' after a prefix calls
|
||||
`describe-prefix-bindings'. This changes that command to a
|
||||
which-key paging command when `which-key-mode' is active."
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-show-early-on-C-h nil
|
||||
"Allow \\`C-h' (`help-char') to trigger which-key popup before timer.
|
||||
@ -438,7 +438,7 @@ using \\`C-h'.
|
||||
Note that `which-key-idle-delay' should be set before turning on
|
||||
`which-key-mode'."
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-preserve-window-configuration nil
|
||||
"Save and restore window configuration around which-key popup display.
|
||||
@ -448,7 +448,7 @@ prevents which-key from changing window position of visible
|
||||
buffers. Only taken into account when popup type is
|
||||
side-window."
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defvar which-key-C-h-map-prompt
|
||||
(concat " \\<which-key-C-h-map>"
|
||||
@ -516,7 +516,7 @@ of terminals issue META modifier for the Alt key.
|
||||
|
||||
See Info node `(emacs)Modifier Keys'."
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-delay-functions nil
|
||||
"List of functions that may delay the which-key popup.
|
||||
@ -532,7 +532,7 @@ this list to return a value is the value that is used.
|
||||
The delay time is effectively added to the normal
|
||||
`which-key-idle-delay'."
|
||||
:type '(repeat function)
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-allow-regexps nil
|
||||
"A list of regexp strings to use to filter key sequences.
|
||||
@ -540,7 +540,7 @@ When non-nil, for a key sequence to trigger the which-key popup
|
||||
it must match one of the regexps in this list. The format of the
|
||||
key sequences is what is produced by `key-description'."
|
||||
:type '(repeat regexp)
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-inhibit-regexps nil
|
||||
"A list of regexp strings to use to filter key sequences.
|
||||
@ -548,7 +548,7 @@ When non-nil, for a key sequence to trigger the which-key popup
|
||||
it cannot match one of the regexps in this list. The format of
|
||||
the key sequences is what is produced by `key-description'."
|
||||
:type '(repeat regexp)
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-show-transient-maps nil
|
||||
"Show keymaps created by `set-transient-map' when applicable.
|
||||
@ -557,7 +557,7 @@ More specifically, detect when `overriding-terminal-local-map' is
|
||||
set (this is the keymap used by `set-transient-map') and display
|
||||
it."
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(make-obsolete-variable
|
||||
'which-key-enable-extended-define-key
|
||||
@ -568,7 +568,7 @@ it."
|
||||
(defcustom which-key-init-buffer-hook '()
|
||||
"Hook run when which-key buffer is initialized."
|
||||
:type 'hook
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
;;;; Faces
|
||||
|
||||
@ -581,31 +581,31 @@ it."
|
||||
'((t . (:inherit font-lock-constant-face)))
|
||||
"Face for which-key keys."
|
||||
:group 'which-key-faces
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defface which-key-separator-face
|
||||
'((t . (:inherit font-lock-comment-face)))
|
||||
"Face for the separator (default separator is an arrow)."
|
||||
:group 'which-key-faces
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defface which-key-note-face
|
||||
'((t . (:inherit which-key-separator-face)))
|
||||
"Face for notes or hints occasionally provided."
|
||||
:group 'which-key-faces
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defface which-key-command-description-face
|
||||
'((t . (:inherit font-lock-function-name-face)))
|
||||
"Face for the key description when it is a command."
|
||||
:group 'which-key-faces
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defface which-key-local-map-description-face
|
||||
'((t . (:inherit which-key-command-description-face)))
|
||||
"Face for the key description when it is found in `current-local-map'."
|
||||
:group 'which-key-faces
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defface which-key-highlighted-command-face
|
||||
'((t . (:inherit (which-key-command-description-face highlight))))
|
||||
@ -613,25 +613,25 @@ it."
|
||||
A command is highlighted, when it matches a string in
|
||||
`which-key-highlighted-command-list'."
|
||||
:group 'which-key-faces
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defface which-key-group-description-face
|
||||
'((t . (:inherit font-lock-keyword-face)))
|
||||
"Face for the key description when it is a group or prefix."
|
||||
:group 'which-key-faces
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defface which-key-special-key-face
|
||||
'((t . (:inherit which-key-key-face :inverse-video t :weight bold)))
|
||||
"Face for special keys (\\`SPC', \\`TAB', \\`RET')."
|
||||
:group 'which-key-faces
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defface which-key-docstring-face
|
||||
'((t . (:inherit which-key-note-face)))
|
||||
"Face for docstrings."
|
||||
:group 'which-key-faces
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
;;;; Custom popup
|
||||
|
||||
@ -642,14 +642,14 @@ return the maximum height in lines and width in characters of the
|
||||
which-key popup in the form a cons cell (height . width)."
|
||||
:group 'which-key
|
||||
:type '(choice function (const nil))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-custom-hide-popup-function nil
|
||||
"Set a custom hide-popup function.
|
||||
It takes no arguments and the return value is ignored."
|
||||
:group 'which-key
|
||||
:type '(choice function (const nil))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-custom-show-popup-function nil
|
||||
"Set a custom show-popup function.
|
||||
@ -658,13 +658,13 @@ width) in lines and characters respectively. The return value is
|
||||
ignored."
|
||||
:group 'which-key
|
||||
:type '(choice function (const nil))
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-lighter " WK"
|
||||
"Minor mode lighter to use in the mode-line."
|
||||
:group 'which-key
|
||||
:type 'string
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defvar which-key-inhibit nil
|
||||
"Prevent which-key from popping up momentarily.
|
||||
@ -681,7 +681,7 @@ popup. If any function returns a non-nil value, the popup will
|
||||
not display."
|
||||
:group 'which-key
|
||||
:type 'hook
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defvar which-key-keymap-history nil
|
||||
"History of keymap selections.
|
||||
@ -812,7 +812,7 @@ allow which-key to support packages that insert non-standard
|
||||
`keys' into the key sequence being read by Emacs."
|
||||
:group 'which-key
|
||||
:type 'function
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
|
||||
;;;; Evil
|
||||
@ -826,7 +826,7 @@ setting this to non-nil will override this behavior for evil
|
||||
operators."
|
||||
:group 'which-key
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defcustom which-key-show-operator-state-maps nil
|
||||
"Show the keys following an evil command that reads a motion.
|
||||
@ -836,7 +836,7 @@ might be some valid keys missing and it might be showing some
|
||||
invalid keys."
|
||||
:group 'which-key
|
||||
:type 'boolean
|
||||
:package-version "1.0" :version "30.1")
|
||||
:package-version '(which-key . "1.0") :version "30.1")
|
||||
|
||||
(defun which-key-evil-this-operator-p ()
|
||||
(and which-key-allow-evil-operators
|
||||
@ -948,6 +948,10 @@ given your settings)."
|
||||
#'which-key--hide-popup-on-frame-size-change)
|
||||
(which-key--stop-timer)))
|
||||
|
||||
;; Update `customize-package-emacs-version-alist'.
|
||||
(add-to-list 'customize-package-emacs-version-alist
|
||||
'(which-key ("1.0" . "30.1")))
|
||||
|
||||
(defun which-key--init-buffer ()
|
||||
"Initialize which-key buffer."
|
||||
(unless (buffer-live-p which-key--buffer)
|
||||
|
@ -171,4 +171,31 @@
|
||||
4clojure 4clojure 1507 obsolete Open and evaluate 4clojure.com questions
|
||||
")))))
|
||||
|
||||
(ert-deftest tabulated-list-groups-with-path ()
|
||||
(with-temp-buffer
|
||||
(tabulated-list-mode)
|
||||
(setq tabulated-list-groups
|
||||
(tabulated-list-groups
|
||||
tabulated-list--test-entries
|
||||
`( :path-function (lambda (entry)
|
||||
(list (list (aref (cadr entry) 3))))
|
||||
:sort-function (lambda (groups _level)
|
||||
(sort groups :in-place t :key #'car)))))
|
||||
(setq tabulated-list-format tabulated-list--test-format)
|
||||
(setq tabulated-list-padding 7)
|
||||
(tabulated-list-init-header)
|
||||
(tabulated-list-print)
|
||||
;; Basic printing.
|
||||
(should (string-equal
|
||||
(buffer-substring-no-properties (point-min) (point-max))
|
||||
"\
|
||||
* available
|
||||
abc-mode abc-mode 944 available Major mode for editing abc music files
|
||||
* installed
|
||||
zzzz-game zzzz-game 2113 installed play zzzz in Emacs
|
||||
mode mode 1128 installed A simple mode for editing Actionscript 3 files
|
||||
* obsolete
|
||||
4clojure 4clojure 1507 obsolete Open and evaluate 4clojure.com questions
|
||||
"))))
|
||||
|
||||
;;; tabulated-list-tests.el ends here
|
||||
|
@ -133,10 +133,12 @@
|
||||
(with-temp-buffer
|
||||
(setq erc-networks--id (erc-networks--id-fixed-create 'oldest)
|
||||
oldest (current-buffer))
|
||||
(sleep-for 0.02)
|
||||
|
||||
(with-temp-buffer
|
||||
(setq erc-networks--id (erc-networks--id-fixed-create 'middle)
|
||||
middle (current-buffer))
|
||||
(sleep-for 0.02)
|
||||
|
||||
(with-temp-buffer
|
||||
(setq erc-networks--id (erc-networks--id-fixed-create 'newest)
|
||||
|
@ -0,0 +1,42 @@
|
||||
foo
|
||||
.update({
|
||||
key => value,
|
||||
other_key:
|
||||
}, {
|
||||
key => value,
|
||||
other_key:
|
||||
})
|
||||
|
||||
update([
|
||||
1,
|
||||
2
|
||||
], [
|
||||
3,
|
||||
4
|
||||
])
|
||||
|
||||
update([{
|
||||
key: "value"
|
||||
}, {
|
||||
key: "value"
|
||||
}])
|
||||
|
||||
update(arg1, {
|
||||
foo: "bar"
|
||||
}, [
|
||||
1,
|
||||
2
|
||||
], arg2)
|
||||
|
||||
def foo
|
||||
foo.update(
|
||||
{
|
||||
key => value,
|
||||
other_key: foo
|
||||
}
|
||||
)
|
||||
end
|
||||
|
||||
# Local Variables:
|
||||
# ruby-bracketed-args-indent: nil
|
||||
# End:
|
@ -992,6 +992,7 @@ VALUES-PLIST is a list with alternating index and value elements."
|
||||
(ruby-deftest-indent "ruby-method-call-indent.rb")
|
||||
(ruby-deftest-indent "ruby-method-params-indent.rb")
|
||||
(ruby-deftest-indent "ruby-parenless-call-arguments-indent.rb")
|
||||
(ruby-deftest-indent "ruby-bracketed-args-indent.rb")
|
||||
|
||||
(ert-deftest ruby--test-chained-indentation ()
|
||||
(with-temp-buffer
|
||||
|
@ -326,6 +326,7 @@ The whitespace before and including \"|\" on each line is removed."
|
||||
(ruby-ts-deftest-indent "ruby-method-call-indent.rb")
|
||||
(ruby-ts-deftest-indent "ruby-method-params-indent.rb")
|
||||
(ruby-ts-deftest-indent "ruby-parenless-call-arguments-indent.rb")
|
||||
(ruby-ts-deftest-indent "ruby-bracketed-args-indent.rb")
|
||||
|
||||
(provide 'ruby-ts-mode-tests)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user