unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#16400: 24.3.50; [PATCH] Add menu entry for Global Auto Revert mode
@ 2014-01-08  8:12 Matthias Meulien
  2014-01-10  4:56 ` Glenn Morris
  0 siblings, 1 reply; 7+ messages in thread
From: Matthias Meulien @ 2014-01-08  8:12 UTC (permalink / raw)
  To: 16400

[-- Attachment #1: Type: text/plain, Size: 34 bytes --]

A simple usability improvment...


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-lisp-menu-bar.el-Add-entry-for-Global-Auto-Revert-mo.patch --]
[-- Type: text/x-diff, Size: 891 bytes --]

From e71cd3f7f52469806ab7ecd4318204a36f495576 Mon Sep 17 00:00:00 2001
From: Matthias Meulien <orontee@gmail.com>
Date: Thu, 12 Dec 2013 00:35:05 +0100
Subject: [PATCH] lisp/menu-bar.el: Add entry for Global Auto Revert mode

---
 lisp/menu-bar.el | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index 0b69d4e..b2f5a40 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -1205,6 +1205,12 @@ mail status in mode line"))
     (bindings--define-key menu [cursor-separator]
       menu-bar-separator)
 
+    (bindings--define-key menu [global-auto-revert-mode]
+      (menu-bar-make-mm-toggle
+       global-auto-revert-mode
+       "Revert buffers on files changes"
+       "Toggle Global Auto Revert mode"))
+
     (bindings--define-key menu [save-place]
       (menu-bar-make-toggle
        toggle-save-place-globally save-place
-- 
1.8.5.2


[-- Attachment #3: Type: text/plain, Size: 6536 bytes --]


In GNU Emacs 24.3.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.6)
 of 2014-01-06 on choubidou
Windowing system distributor `The X.Org Foundation', version 11.0.11405000
Important settings:
  value of $LC_COLLATE: C
  value of $LANG: fr_FR.utf8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Shell

Minor modes in effect:
  diff-auto-refine-mode: t
  show-paren-mode: t
  shell-dirtrack-mode: t
  global-auto-complete-mode: t
  global-semantic-mru-bookmark-mode: t
  global-semanticdb-minor-mode: t
  global-semantic-idle-scheduler-mode: t
  semantic-mode: t
  desktop-save-mode: t
  auto-image-file-mode: t
  electric-pair-mode: t
  icomplete-mode: t
  global-auto-revert-mode: t
  auto-insert-mode: t
  tooltip-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
t e r <return> C-x k <return> y g i t SPC c l o g SPC 
- 3 <return> g i t SPC c h e c k o u t SPC m a s s 
<backspace> t e r <return> g i t SPC r e v <backspace> 
<M-backspace> b r a n c h SPC - d SPC r e v e r t <return> 
M-p M-b C-b <backspace> D <return> g i t SPC c h e 
c k o u t SPC - d <backspace> b SPC a t u <backspace> 
<backspace> <backspace> a u t o - r e v e r t <return> 
g i t SPC c h e c k o u t SPC d e v l <backspace> <backspace> 
<backspace> <backspace> m e n u <return> g i t SPC 
c l o g SPC - 3 <return> C-p C-p C-p C-p C-p C-p C-p 
C-p C-p C-p C-p C-p C-n M-b C-SPC C-e M-w C-x o C-x 
o C-x o M-> g i t SPC c h e c k o u t SPC a u t o - 
r e v e r t <return> g i SPC <backspace> t SPC c h 
e r C-c M-r C-e SPC C-y M-b <M-backspace> <return> 
g i t SPC f o r C-c M-r C-e <return> g i t SPC m <backspace> 
<backspace> <backspace> <backspace> <backspace> m v 
SPC 0 0 <tab> ~ / P r <tab> e m <tab> p <tab> a <tab> 
<return> C-x o g p o C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n <f10> C-x o M-x r e p o r t SPC b <backspace> 
e m <tab> <return>

Recent messages:
Trash D [2 files] (y or n)  y
Trashing...100%
Kill buffer of 0001-lisp-progmodes-prog-mode.el-Add-custom-options-to-mo.patch, too? (y or n)  y
Trashing...done
When done with a buffer, type C-x #
Buffer `COMMIT_EDITMSG' still has clients; kill it? (y or n)  y
Mark set [3 times]
Making completion list...
Omitting...
Omitted 3 lines.
Quit

Load-path shadows:
None found.

Features:
(shadow sort mail-extr gnus-msg gnus-art mm-uu mml2015 epg-config
mm-view mml-smime smime dig gnus-sum imenu disp-table emacsbug sendmail
help-mode diff-mode add-log diary-lib diary-loaddefs
semantic/bovine/make semantic/analyze semantic/sort semantic/scope
semantic/analyze/fcn semantic/bovine/make-by semantic/bovine make-mode
semantic/html sgml-mode semantic/tag-file semantic/db-file data-debug
cedet-files semantic/wisent/python semantic/decorate/include
semantic/db-find semantic/db-ref semantic/decorate/mode
semantic/decorate pulse semantic/dep semantic/wisent/python-wy
semantic/wisent semantic/wisent/wisent rx python sh-script smie
executable mule-util time-stamp parse-time network-stream starttls
url-http tls url-gw url-cache url-auth url url-proxy url-privacy
url-expand url-methods url-history url-cookie url-domsuf url-util
url-parse auth-source password-cache url-vars mailcap avoid generic
org-element org-rmail org-mhe org-irc org-info org-gnus org-docview
doc-view jka-compr image-mode org-bibtex bibtex org-bbdb org-w3m
dired-aux face-remap vc-dir ewoc vc vc-dispatcher vc-git flyspell
reftex-dcr reftex reftex-vars goto-addr tex-mode paren warnings ob-sh
shell ob-plantuml choubidou-custom cus-edit gnus-demon nntp gnus-group
gnus-undo nnmail mail-source gnus-start gnus-spec gnus-win nnoo gnus-int
gnus-range message rfc822 mml mml-sec mm-decode mm-bodies mm-encode
mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils
mailheader gnus gnus-ems nnheader gnus-util mail-utils mm-util
mail-prsvr wid-edit gnus-dired dired-x dired org-capture org org-macro
org-footnote org-pcomplete pcomplete org-list org-faces org-entities
noutline outline easy-mmode org-version ob-emacs-lisp ob ob-tangle
org-src ob-ref ob-lob ob-table ob-keys ob-exp ob-comint ob-core ob-eval
org-compat org-macs org-loaddefs format-spec find-func cal-menu calendar
cal-loaddefs dictionary link connection flymake-csslint php-mode etags
cc-langs speedbar sb-image dframe sql view thingatpt flymake-jslint
flymake-python-pyflakes flymake-easy flymake compile comint hideshow
skeleton find-file advice help-fns whitespace auto-complete edmacro
kmacro cl-macs popup cl minimap semantic/mru-bookmark ring
semantic/db-mode semantic/db gv eieio-base semantic/idle semantic/format
ezimage semantic/tag-ls semantic/find semantic/ctxt semantic/util-modes
semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local
cedet ispell desktop frameset server woman man cl-loaddefs cl-lib
ansi-color image-file tar-mode saveplace elec-pair cus-start cus-load
icomplete windmove autorevert filenotify autoinsert cc-mode cc-fonts
cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs
generic-x Django-doc-autoloads auto-complete-autoloads
color-theme-solarized-autoloads doctags-autoloads info easymenu
flymake-csslint-autoloads flymake-jslint-autoloads
flymake-easy-autoloads gist-autoloads finder-inf gh-autoloads eieio
byte-opt bytecomp byte-compile cconv eieio-core gnuplot-autoloads
graphviz-dot-mode-autoloads htmlize-autoloads logito-autoloads
php-mode-autoloads popup-autoloads symbols-mode-autoloads package
time-date tooltip electric uniquify ediff-hook vc-hooks lisp-float-type
mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list newcomment lisp-mode prog-mode register page menu-bar
rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax
facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak
czech european ethiopic indian cyrillic chinese case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button
faces cus-face macroexp files text-properties overlay sha1 md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind gfilenotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty emacs)

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* bug#16400: 24.3.50; [PATCH] Add menu entry for Global Auto Revert mode
  2014-01-08  8:12 bug#16400: 24.3.50; [PATCH] Add menu entry for Global Auto Revert mode Matthias Meulien
@ 2014-01-10  4:56 ` Glenn Morris
  2014-01-10 14:45   ` Stefan Monnier
  0 siblings, 1 reply; 7+ messages in thread
From: Glenn Morris @ 2014-01-10  4:56 UTC (permalink / raw)
  To: Matthias Meulien; +Cc: 16400

Matthias Meulien wrote:

> +    (bindings--define-key menu [global-auto-revert-mode]
> +      (menu-bar-make-mm-toggle
> +       global-auto-revert-mode
> +       "Revert buffers on files changes"
> +       "Toggle Global Auto Revert mode"))

Thanks for the patch.
Personally, however, I do not think this option is important enough to
be in the Options menu.





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#16400: 24.3.50; [PATCH] Add menu entry for Global Auto Revert mode
  2014-01-10  4:56 ` Glenn Morris
@ 2014-01-10 14:45   ` Stefan Monnier
  2014-01-13  8:52     ` Matthias Meulien
  0 siblings, 1 reply; 7+ messages in thread
From: Stefan Monnier @ 2014-01-10 14:45 UTC (permalink / raw)
  To: Glenn Morris; +Cc: Matthias Meulien, 16400

>> +    (bindings--define-key menu [global-auto-revert-mode]
>> +      (menu-bar-make-mm-toggle
>> +       global-auto-revert-mode
>> +       "Revert buffers on files changes"
>> +       "Toggle Global Auto Revert mode"))
> Personally, however, I do not think this option is important enough to
> be in the Options menu.

I wonder how many people enable global-auto-revert-mode and how well it
works when you have a couple hundred file buffers.


        Stefan





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#16400: 24.3.50; [PATCH] Add menu entry for Global Auto Revert mode
  2014-01-10 14:45   ` Stefan Monnier
@ 2014-01-13  8:52     ` Matthias Meulien
  2014-01-13 14:38       ` Stefan Monnier
  0 siblings, 1 reply; 7+ messages in thread
From: Matthias Meulien @ 2014-01-13  8:52 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: 16400

[-- Attachment #1: Type: text/plain, Size: 613 bytes --]

>
> I wonder how many people enable global-auto-revert-mode


I don't know. But the idea was to make `global-auto-revert-mode' more
visible (like `saveplace' and `uniquify') for people to know it exits...
And may be turn it on...

Having a menu entry (checked or not) is also a way to display the mode
status.


> and how well it works when you have a couple hundred file buffers.
>

I have turned it on years ago and never sees any problem (working with
24.3.1 on Windows and Linux).

That said, one can customize `global-auto-revert-mode' to turn that mode
on; So don't waste time with that patch.
-- 
Matthias

[-- Attachment #2: Type: text/html, Size: 1076 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#16400: 24.3.50; [PATCH] Add menu entry for Global Auto Revert mode
  2014-01-13  8:52     ` Matthias Meulien
@ 2014-01-13 14:38       ` Stefan Monnier
  2014-01-13 14:57         ` Matthias Meulien
  2014-01-13 15:18         ` Rüdiger Sonderfeld
  0 siblings, 2 replies; 7+ messages in thread
From: Stefan Monnier @ 2014-01-13 14:38 UTC (permalink / raw)
  To: Matthias Meulien; +Cc: 16400

>> and how well it works when you have a couple hundred file buffers.
> I have turned it on years ago and never sees any problem (working with
> 24.3.1 on Windows and Linux).

Does your usage pattern make your Emacs sessions grow to include many
open files (not necessarily displayed), like more than a hundred?

> That said, one can customize `global-auto-revert-mode' to turn that mode
> on; So don't waste time with that patch.

I'm curious, because I assumed that global-auto-revert-mode would be
impractical for "serious" use because it makes Emacs poll the freshness
of every buffer's file repeatedly, which could lead to occasional "short
freezes" and other annoying performance artifacts.


        Stefan





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#16400: 24.3.50; [PATCH] Add menu entry for Global Auto Revert mode
  2014-01-13 14:38       ` Stefan Monnier
@ 2014-01-13 14:57         ` Matthias Meulien
  2014-01-13 15:18         ` Rüdiger Sonderfeld
  1 sibling, 0 replies; 7+ messages in thread
From: Matthias Meulien @ 2014-01-13 14:57 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: 16400

[-- Attachment #1: Type: text/plain, Size: 772 bytes --]

I am usually working with fifty to hundred open files at the same time in
Emacs. Not more, at least on a regular basis.

I experienced crash (Windows only) from time to time (one per month ?) but
my feeling was that they were related to `flymake-mode' (I use it for CSS,
Python and Javascript) in relation with `semantic'. Never thought it was
related to `global-revert-mode'.

I have read that the time stamp check was aborted when the user actually
use Emacs and the documentation of autorevert.el says: "You should never
even notice that this package is active". My experience and feeling is that
the documentation is right.

Note that I also turn Auto Revert Tail Mode on log files (based on their
extensions) and I am not aware of any problem with that.
-- 
Matthias

[-- Attachment #2: Type: text/html, Size: 933 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#16400: 24.3.50; [PATCH] Add menu entry for Global Auto Revert mode
  2014-01-13 14:38       ` Stefan Monnier
  2014-01-13 14:57         ` Matthias Meulien
@ 2014-01-13 15:18         ` Rüdiger Sonderfeld
  1 sibling, 0 replies; 7+ messages in thread
From: Rüdiger Sonderfeld @ 2014-01-13 15:18 UTC (permalink / raw)
  To: 16400; +Cc: orontee

On Monday 13 January 2014 09:38:13 Stefan Monnier wrote:
> > That said, one can customize `global-auto-revert-mode' to turn that mode
> > on; So don't waste time with that patch.
> 
> I'm curious, because I assumed that global-auto-revert-mode would be
> impractical for "serious" use because it makes Emacs poll the freshness
> of every buffer's file repeatedly, which could lead to occasional "short
> freezes" and other annoying performance artifacts.

It should make a huge difference if file notifications are available or not.

Regards,
Rüdiger






^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-01-13 15:18 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-01-08  8:12 bug#16400: 24.3.50; [PATCH] Add menu entry for Global Auto Revert mode Matthias Meulien
2014-01-10  4:56 ` Glenn Morris
2014-01-10 14:45   ` Stefan Monnier
2014-01-13  8:52     ` Matthias Meulien
2014-01-13 14:38       ` Stefan Monnier
2014-01-13 14:57         ` Matthias Meulien
2014-01-13 15:18         ` Rüdiger Sonderfeld

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).