* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB @ 2014-10-14 14:50 Reuben Thomas 2014-10-14 23:41 ` Stefan Monnier ` (2 more replies) 0 siblings, 3 replies; 40+ messages in thread From: Reuben Thomas @ 2014-10-14 14:50 UTC (permalink / raw) To: 18716 This is a bit unfortunate for a GNU program! The pattern that matches is, I presume, “*.lib”; the obvious question, for me, on a case-sensitive filing system is, need it be case-insensitive? After all, omitting .lib files seems sensible to me, but this is a .LIB file. In GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.10.7) of 2014-03-07 on lamiak, modified by Debian Windowing system distributor `The X.Org Foundation', version 11.0.11600000 System Description: Ubuntu 14.04.1 LTS Configured using: `configure '--build' 'x86_64-linux-gnu' '--build' 'x86_64-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.3/site-lisp:/usr/share/emacs/site-lisp' '--with-crt-dir=/usr/lib/x86_64-linux-gnu' '--with-x=yes' '--with-x-toolkit=gtk3' '--with-toolkit-scroll-bars' 'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro' 'CPPFLAGS=-D_FORTIFY_SOURCE=2'' Important settings: value of $LC_MONETARY: en_GB.UTF-8 value of $LC_NUMERIC: en_GB.UTF-8 value of $LC_TIME: en_GB.UTF-8 value of $LANG: en_GB.UTF-8 value of $XMODIFIERS: @im=local locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: Help Minor modes in effect: show-paren-mode: t server-mode: t savehist-mode: t minibuffer-electric-default-mode: t icomplete-mode: t global-auto-revert-mode: t desktop-save-mode: t global-undo-tree-mode: t undo-tree-mode: t global-whitespace-mode: t TeX-PDF-mode: t TeX-source-correlate-mode: t dtrt-indent-mode: t global-auto-complete-mode: t ido-everywhere: t shell-dirtrack-mode: t tooltip-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 buffer-read-only: t column-number-mode: t line-number-mode: t transient-mark-mode: t Recent input: 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-p 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-p 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 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 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 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 C-n C-n C-n C-x k <return> C-x C-f <M-backspace> i n t <tab> <return> C-s C O P Y I N G . L B C-a C-s O P Y <backspace> <backspace> <backspace> C O P Y I N G C-s C-s C-s C-a 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 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 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 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 M-< C-x C-f C O P <tab> <tab> <tab> <return> C-x b <return> M-o M-o M-o M-o M-o M-o M-o C-h v d i r e d - o m i <tab> e x <tab> <return> C-s l i b C-s C-s C-a M-x r e p o r t b <backspace> - e m a c s - b u g <return> Recent messages: Omitted 3 lines. Dired-Omit mode disabled Omitting... Omitted 3 lines. Dired-Omit mode disabled Omitting... Omitted 3 lines. Dired-Omit mode disabled Type "q" to restore previous buffer. Mark saved where search started Load-path shadows: /home/rrt/.emacs.d/el-get/org-mode/.dir-locals hides /home/rrt/.emacs.d/el-get/ess/.dir-locals /home/rrt/.emacs.d/el-get/org-mode/.dir-locals hides /home/rrt/.emacs.d/el-get/el-get/.dir-locals /home/rrt/.emacs.d/el-get/dictionary/lpath hides /home/rrt/.emacs.d/el-get/auctex/lpath /home/rrt/.emacs.d/el-get/ess/lisp/ess-xls-d hides /usr/share/emacs24/site-lisp/ess/ess-xls-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-mouse hides /usr/share/emacs24/site-lisp/ess/ess-mouse /home/rrt/.emacs.d/el-get/ess/lisp/ess-noweb hides /usr/share/emacs24/site-lisp/ess/ess-noweb /home/rrt/.emacs.d/el-get/ess/lisp/ess-sp5-d hides /usr/share/emacs24/site-lisp/ess/ess-sp5-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-sta-l hides /usr/share/emacs24/site-lisp/ess/ess-sta-l /home/rrt/.emacs.d/el-get/ess/lisp/ess-comp hides /usr/share/emacs24/site-lisp/ess/ess-comp /home/rrt/.emacs.d/el-get/ess/lisp/ess-compat hides /usr/share/emacs24/site-lisp/ess/ess-compat /home/rrt/.emacs.d/el-get/ess/lisp/ess-toolbar hides /usr/share/emacs24/site-lisp/ess/ess-toolbar /home/rrt/.emacs.d/el-get/ess/lisp/ess-arc-d hides /usr/share/emacs24/site-lisp/ess/ess-arc-d /home/rrt/.emacs.d/el-get/ess/lisp/ess hides /usr/share/emacs24/site-lisp/ess/ess /home/rrt/.emacs.d/el-get/ess/lisp/ess-dde hides /usr/share/emacs24/site-lisp/ess/ess-dde /home/rrt/.emacs.d/el-get/ess/lisp/ess-lsp-l hides /usr/share/emacs24/site-lisp/ess/ess-lsp-l /home/rrt/.emacs.d/el-get/ess/lisp/ess-r-gui hides /usr/share/emacs24/site-lisp/ess/ess-r-gui /home/rrt/.emacs.d/el-get/ess/lisp/ess-install hides /usr/share/emacs24/site-lisp/ess/ess-install /home/rrt/.emacs.d/el-get/ess/lisp/ess-sas-l hides /usr/share/emacs24/site-lisp/ess/ess-sas-l /home/rrt/.emacs.d/el-get/ess/lisp/ess-utils hides /usr/share/emacs24/site-lisp/ess/ess-utils /home/rrt/.emacs.d/el-get/ess/lisp/ess-rdired hides /usr/share/emacs24/site-lisp/ess/ess-rdired /home/rrt/.emacs.d/el-get/ess/lisp/ess-sas-a hides /usr/share/emacs24/site-lisp/ess/ess-sas-a /home/rrt/.emacs.d/el-get/ess/lisp/msdos hides /usr/share/emacs24/site-lisp/ess/msdos /home/rrt/.emacs.d/el-get/ess/lisp/ess-font-lock hides /usr/share/emacs24/site-lisp/ess/ess-font-lock /home/rrt/.emacs.d/el-get/ess/lisp/ess-jags-d hides /usr/share/emacs24/site-lisp/ess/ess-jags-d /home/rrt/.emacs.d/el-get/ess/lisp/make-regexp hides /usr/share/emacs24/site-lisp/ess/make-regexp /home/rrt/.emacs.d/el-get/ess/lisp/ess-gretl hides /usr/share/emacs24/site-lisp/ess/ess-gretl /home/rrt/.emacs.d/el-get/ess/lisp/ess-sta-d hides /usr/share/emacs24/site-lisp/ess/ess-sta-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-s4-d hides /usr/share/emacs24/site-lisp/ess/ess-s4-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-trns hides /usr/share/emacs24/site-lisp/ess/ess-trns /home/rrt/.emacs.d/el-get/ess/lisp/ess-custom hides /usr/share/emacs24/site-lisp/ess/ess-custom /home/rrt/.emacs.d/el-get/ess/lisp/ess-mode hides /usr/share/emacs24/site-lisp/ess/ess-mode /home/rrt/.emacs.d/el-get/ess/lisp/ess-noweb-mode hides /usr/share/emacs24/site-lisp/ess/ess-noweb-mode /home/rrt/.emacs.d/el-get/ess/lisp/ess-roxy hides /usr/share/emacs24/site-lisp/ess/ess-roxy /home/rrt/.emacs.d/el-get/ess/lisp/ess-debug hides /usr/share/emacs24/site-lisp/ess/ess-debug /home/rrt/.emacs.d/el-get/ess/lisp/ess-rd hides /usr/share/emacs24/site-lisp/ess/ess-rd /home/rrt/.emacs.d/el-get/ess/lisp/ess-sas-d hides /usr/share/emacs24/site-lisp/ess/ess-sas-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-menu hides /usr/share/emacs24/site-lisp/ess/ess-menu /home/rrt/.emacs.d/el-get/ess/lisp/ess-r-args hides /usr/share/emacs24/site-lisp/ess/ess-r-args /home/rrt/.emacs.d/el-get/ess/lisp/ess-sp3-d hides /usr/share/emacs24/site-lisp/ess/ess-sp3-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-omg-d hides /usr/share/emacs24/site-lisp/ess/ess-omg-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-vst-d hides /usr/share/emacs24/site-lisp/ess/ess-vst-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-sp6-d hides /usr/share/emacs24/site-lisp/ess/ess-sp6-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-s3-d hides /usr/share/emacs24/site-lisp/ess/ess-s3-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-swv hides /usr/share/emacs24/site-lisp/ess/ess-swv /home/rrt/.emacs.d/el-get/ess/lisp/mouseme hides /usr/share/emacs24/site-lisp/ess/mouseme /home/rrt/.emacs.d/el-get/ess/lisp/ess-inf hides /usr/share/emacs24/site-lisp/ess/ess-inf /home/rrt/.emacs.d/el-get/ess/lisp/ess-sp4-d hides /usr/share/emacs24/site-lisp/ess/ess-sp4-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-help hides /usr/share/emacs24/site-lisp/ess/ess-help /home/rrt/.emacs.d/el-get/ess/lisp/ess-r-d hides /usr/share/emacs24/site-lisp/ess/ess-r-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-developer hides /usr/share/emacs24/site-lisp/ess/ess-developer /home/rrt/.emacs.d/el-get/ess/lisp/ess-s-l hides /usr/share/emacs24/site-lisp/ess/ess-s-l /home/rrt/.emacs.d/el-get/ess/lisp/ess-sp6w-d hides /usr/share/emacs24/site-lisp/ess/ess-sp6w-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-omg-l hides /usr/share/emacs24/site-lisp/ess/ess-omg-l /home/rrt/.emacs.d/el-get/ess/lisp/ess-tracebug hides /usr/share/emacs24/site-lisp/ess/ess-tracebug /home/rrt/.emacs.d/el-get/ess/lisp/ess-r-a hides /usr/share/emacs24/site-lisp/ess/ess-r-a /home/rrt/.emacs.d/el-get/ess/lisp/ess-noweb-font-lock-mode hides /usr/share/emacs24/site-lisp/ess/ess-noweb-font-lock-mode /home/rrt/.emacs.d/el-get/ess/lisp/ess-send2 hides /usr/share/emacs24/site-lisp/ess/ess-send2 /home/rrt/.emacs.d/el-get/ess/lisp/ess-rutils hides /usr/share/emacs24/site-lisp/ess/ess-rutils /home/rrt/.emacs.d/el-get/ess/lisp/ess-site hides /usr/share/emacs24/site-lisp/ess/ess-site /home/rrt/.emacs.d/el-get/ess/lisp/ess-send hides /usr/share/emacs24/site-lisp/ess/ess-send /home/rrt/.emacs.d/el-get/ess/lisp/essd-els hides /usr/share/emacs24/site-lisp/ess/essd-els /home/rrt/.emacs.d/el-get/ess/lisp/ess-bugs-l hides /usr/share/emacs24/site-lisp/ess/ess-bugs-l /home/rrt/.emacs.d/el-get/ess/lisp/ess-eldoc hides /usr/share/emacs24/site-lisp/ess/ess-eldoc /home/rrt/.emacs.d/el-get/ess/lisp/ess-bugs-d hides /usr/share/emacs24/site-lisp/ess/ess-bugs-d /home/rrt/.emacs.d/el-get/ess/lisp/ess-julia hides /usr/share/emacs24/site-lisp/ess/ess-julia /home/rrt/.emacs.d/el-get/apache-mode/apache-mode hides /usr/share/emacs24/site-lisp/emacs-goodies-el/apache-mode /home/rrt/.emacs.d/el-get/org-mode/contrib/lisp/htmlize hides /usr/share/emacs24/site-lisp/emacs-goodies-el/htmlize /home/rrt/.emacs.d/el-get/quack/quack hides /usr/share/emacs24/site-lisp/emacs-goodies-el/quack /home/rrt/.emacs.d/el-get/graphviz-dot-mode/graphviz-dot-mode hides /usr/share/emacs24/site-lisp/emacs-goodies-el/graphviz-dot-mode /home/rrt/.emacs.d/el-get/browse-kill-ring/browse-kill-ring hides /usr/share/emacs24/site-lisp/emacs-goodies-el/browse-kill-ring /home/rrt/.emacs.d/el-get/filladapt/filladapt hides /usr/share/emacs24/site-lisp/emacs-goodies-el/filladapt /home/rrt/.emacs.d/el-get/xrdb-mode/xrdb-mode hides /usr/share/emacs24/site-lisp/emacs-goodies-el/xrdb-mode /home/rrt/.emacs.d/el-get/markdown-mode/markdown-mode hides /usr/share/emacs24/site-lisp/emacs-goodies-el/markdown-mode /home/rrt/.emacs.d/el-get/cmake-mode/cmake-mode hides /usr/share/emacs/site-lisp/cmake-mode /home/rrt/.local/share/emacs/site-lisp/lilypond-font-lock hides /usr/share/emacs/site-lisp/lilypond-font-lock /home/rrt/.local/share/emacs/site-lisp/lilypond-mode hides /usr/share/emacs/site-lisp/lilypond-mode /home/rrt/.local/share/emacs/site-lisp/lilypond-init hides /usr/share/emacs/site-lisp/lilypond-init /usr/share/emacs/24.3/site-lisp/cdargs hides /usr/share/emacs/site-lisp/cdargs /home/rrt/.local/share/emacs/site-lisp/lilypond-indent hides /usr/share/emacs/site-lisp/lilypond-indent /usr/share/emacs/24.3/site-lisp/debian-startup hides /usr/share/emacs/site-lisp/debian-startup /home/rrt/.local/share/emacs/site-lisp/lilypond-song hides /usr/share/emacs/site-lisp/lilypond-song /home/rrt/.local/share/emacs/site-lisp/lilypond-what-beat hides /usr/share/emacs/site-lisp/lilypond-what-beat /home/rrt/.local/share/emacs/site-lisp/whitespace hides /usr/share/emacs/24.3/lisp/whitespace /usr/share/emacs/site-lisp/rst hides /usr/share/emacs/24.3/lisp/textmodes/rst /usr/share/emacs24/site-lisp/dictionaries-common/flyspell hides /usr/share/emacs/24.3/lisp/textmodes/flyspell /usr/share/emacs24/site-lisp/dictionaries-common/ispell hides /usr/share/emacs/24.3/lisp/textmodes/ispell /home/rrt/.emacs.d/el-get/cperl-mode/cperl-mode hides /usr/share/emacs/24.3/lisp/progmodes/cperl-mode /home/rrt/.emacs.d/el-get/flymake/flymake hides /usr/share/emacs/24.3/lisp/progmodes/flymake /home/rrt/.emacs.d/el-get/org-mode/.dir-locals hides /usr/share/emacs/24.3/lisp/gnus/.dir-locals Features: (shadow sort mail-extr emacsbug message rfc822 mml mml-sec mm-decode mm-bodies mm-encode mailabbrev gmm-utils mailheader sendmail dired-aux mail-utils network-stream starttls cperl-mode misearch multi-isearch json-mode json-reformat json-snatcher rx paredit js css-mode tern url-http tls url-auth mail-parse rfc2231 rfc2047 rfc2045 ietf-drums url-gw json js3-mode imenu js3-parse js3-browse js3-highlight js3-ast js3-messages js3-scan js3-util js3-vars cc-langs js3-externs autoconf autoconf-mode sh-script smie vc-git make-mode flymake window-margin org-element avl-tree org-indent 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 face-remap flyspell ispell goto-addr smart-quotes vlf-autoloads ff-paths uniquify paren server savehist minibuf-eldef icomplete autorevert cus-start cus-load iimage org org-macro org-footnote org-pcomplete org-list org-faces org-entities noutline outline 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 find-func cal-menu calendar cal-loaddefs go-mode url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf mailcap ffap dired-x desktop undo-tree diff whitespace url-util tex dbus xml crm locate yasnippet derived quack cmuscheme scheme po-mode php-mode etags cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine speedbar sb-image ezimage dframe org-loaddefs init-paredit ido-hacks magit-autoloads geiser-load geiser frame-restore flymake-point filladapt dtrt-indent warnings init-eldoc eldoc-extension auto-complete-config auto-complete edmacro kmacro popup preview-latex tex-site auto-loads .loaddefs el-get el-get-autoloads el-get-list-packages el-get-dependencies el-get-build el-get-status pp el-get-methods el-get-fossil el-get-svn el-get-pacman el-get-github-zip el-get-github-tar el-get-http-zip el-get-http-tar el-get-hg el-get-go el-get-git-svn el-get-fink el-get-emacswiki el-get-http el-get-notify help-mode el-get-emacsmirror el-get-github el-get-git url-parse auth-source eieio byte-opt gnus-util mm-util mail-prsvr password-cache url-vars el-get-elpa package cl-macs gv el-get-darcs el-get-cvs el-get-bzr el-get-brew el-get-builtin el-get-apt-get el-get-recipes el-get-byte-compile el-get-custom el-get-core autoload bytecomp byte-compile cconv cl dired user-site-loaddefs ido ess-toolbar ess-mouse mouseme thingatpt browse-url ess-menu ess-swv ess-noweb ess-noweb-font-lock-mode ess-bugs-l essd-els ess-sas-d ess-sas-l ess-sas-a shell pcomplete ess-sta-d ess-sta-l cc-vars cc-defs make-regexp ess-sp6-d ess-sp3-d ess-julia ess-r-d compile ess-tracebug format-spec ess-roxy advice cl-lib advice-preload hideshow ess-help ess-developer ess-r-args eldoc help-fns ess-s-l ess ess-inf comint ansi-color ring ess-mode ess-noweb-mode ess-utils ess-custom executable easymenu ess-compat ess-site emacs-goodies-el emacs-goodies-custom emacs-goodies-loaddefs easy-mmode devhelp time-date tooltip 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 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 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 dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs) -- http://rrt.sc3d.org/ ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-14 14:50 bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB Reuben Thomas @ 2014-10-14 23:41 ` Stefan Monnier 2014-10-14 23:51 ` Reuben Thomas ` (2 more replies) 2016-11-08 17:51 ` bug#18716: Patch for this bug Reuben Thomas 2016-12-03 0:22 ` bug#18716: Reuben Thomas 2 siblings, 3 replies; 40+ messages in thread From: Stefan Monnier @ 2014-10-14 23:41 UTC (permalink / raw) To: Reuben Thomas; +Cc: 18716 Is COPYING.LIB a file that contains the LGPL license? Why name it so weirdly? Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-14 23:41 ` Stefan Monnier @ 2014-10-14 23:51 ` Reuben Thomas 2014-10-15 7:56 ` Andreas Schwab 2014-10-16 2:01 ` Richard Stallman 2 siblings, 0 replies; 40+ messages in thread From: Reuben Thomas @ 2014-10-14 23:51 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716 [-- Attachment #1: Type: text/plain, Size: 310 bytes --] On 15 October 2014 00:41, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > Is COPYING.LIB a file that contains the LGPL license? > Yes. > Why name it so weirdly? I don't know, but this seems to be a common name for it. In my case, it was installed in a source tree by gettext. -- http://rrt.sc3d.org [-- Attachment #2: Type: text/html, Size: 849 bytes --] ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-14 23:41 ` Stefan Monnier 2014-10-14 23:51 ` Reuben Thomas @ 2014-10-15 7:56 ` Andreas Schwab 2014-10-15 14:21 ` Stefan Monnier 2014-10-16 2:01 ` Richard Stallman 2 siblings, 1 reply; 40+ messages in thread From: Andreas Schwab @ 2014-10-15 7:56 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, Reuben Thomas Stefan Monnier <monnier@iro.umontreal.ca> writes: > Is COPYING.LIB a file that contains the LGPL license? > Why name it so weirdly? L used to stand for Library. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 7:56 ` Andreas Schwab @ 2014-10-15 14:21 ` Stefan Monnier 2014-10-15 14:26 ` Reuben Thomas 2014-10-15 14:26 ` Andreas Schwab 0 siblings, 2 replies; 40+ messages in thread From: Stefan Monnier @ 2014-10-15 14:21 UTC (permalink / raw) To: Andreas Schwab; +Cc: 18716, Reuben Thomas >> Is COPYING.LIB a file that contains the LGPL license? >> Why name it so weirdly? > L used to stand for Library. Doesn't explain the need for an extension. Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 14:21 ` Stefan Monnier @ 2014-10-15 14:26 ` Reuben Thomas 2014-10-15 14:27 ` Reuben Thomas 2014-10-15 17:59 ` Stefan Monnier 2014-10-15 14:26 ` Andreas Schwab 1 sibling, 2 replies; 40+ messages in thread From: Reuben Thomas @ 2014-10-15 14:26 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, Andreas Schwab [-- Attachment #1: Type: text/plain, Size: 591 bytes --] On 15 October 2014 15:21, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > >> Is COPYING.LIB a file that contains the LGPL license? > >> Why name it so weirdly? > > L used to stand for Library. > > Doesn't explain the need for an extension. This isn't really the forum for discussing the naming of a GNU license file. dired-omit-mode deals sub-optimally with this particular name, and even if the standard name were changed tomorrow, it would continue to occur in the wild for years; so the real issue is: does it matter enough to fix Emacs's treatment of it? -- http://rrt.sc3d.org [-- Attachment #2: Type: text/html, Size: 1026 bytes --] ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 14:26 ` Reuben Thomas @ 2014-10-15 14:27 ` Reuben Thomas 2014-10-15 17:59 ` Stefan Monnier 1 sibling, 0 replies; 40+ messages in thread From: Reuben Thomas @ 2014-10-15 14:27 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, Andreas Schwab [-- Attachment #1: Type: text/plain, Size: 254 bytes --] On 15 October 2014 15:26, Reuben Thomas <rrt@sc3d.org> wrote: > > so the real issue is > Sorry, should've said "the issue at hand". The naming issue may well be the more important one outside the context of Emacs development. -- http://rrt.sc3d.org [-- Attachment #2: Type: text/html, Size: 760 bytes --] ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 14:26 ` Reuben Thomas 2014-10-15 14:27 ` Reuben Thomas @ 2014-10-15 17:59 ` Stefan Monnier 2014-10-15 19:05 ` Reuben Thomas 1 sibling, 1 reply; 40+ messages in thread From: Stefan Monnier @ 2014-10-15 17:59 UTC (permalink / raw) To: Reuben Thomas; +Cc: 18716, Andreas Schwab > This isn't really the forum for discussing the naming of a GNU license > file. dired-omit-mode deals sub-optimally with this particular name, and > even if the standard name were changed tomorrow, it would continue to occur > in the wild for years; so the real issue is: does it matter enough to fix > Emacs's treatment of it? I think the problem is in the naming of the file, rather than in Emacs's treatment of files that end in ".LIB". We could add a special ad-hoc rule for files called COPYING.LIB, but I'd rather we fix the original problem instead. "For years" is actually not that long ;-) Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 17:59 ` Stefan Monnier @ 2014-10-15 19:05 ` Reuben Thomas 2014-10-15 22:42 ` Stefan Monnier 0 siblings, 1 reply; 40+ messages in thread From: Reuben Thomas @ 2014-10-15 19:05 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, Andreas Schwab [-- Attachment #1: Type: text/plain, Size: 1223 bytes --] On 15 October 2014 18:59, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > > This isn't really the forum for discussing the naming of a GNU license > > file. dired-omit-mode deals sub-optimally with this particular name, and > > even if the standard name were changed tomorrow, it would continue to > occur > > in the wild for years; so the real issue is: does it matter enough to fix > > Emacs's treatment of it? > > I think the problem is in the naming of the file, rather than in Emacs's > treatment of files that end in ".LIB". > Although no-one has yet answered my question why Emacs takes these patterns to be case-insensitive even on case-sensitive filing systems. > We could add a special ad-hoc rule for files called COPYING.LIB, but I'd > rather we fix the original problem instead. > "For years" is actually not that long ;-) > My repeated experience over the decades is that absent considerable effort, "for years" rapidly becomes "for decades". Given that we're dealing not just with future but also with past software releases in this case, I'm not optimistic. Nor however do I suggest adding special ad-hoc rules if it's possible to avoid them, hence my question about case. -- http://rrt.sc3d.org [-- Attachment #2: Type: text/html, Size: 1989 bytes --] ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 19:05 ` Reuben Thomas @ 2014-10-15 22:42 ` Stefan Monnier 2014-10-15 23:00 ` Reuben Thomas 0 siblings, 1 reply; 40+ messages in thread From: Stefan Monnier @ 2014-10-15 22:42 UTC (permalink / raw) To: Reuben Thomas; +Cc: 18716, Andreas Schwab > Although no-one has yet answered my question why Emacs takes these patterns > to be case-insensitive even on case-sensitive filing systems. I don't actually know. Maybe because the existence of case-insensitive filesystems cause the existence of files with "weird" extensions like ".JPG" and it's easier to just say "match case-insensitively" than to handle the known cases where case is sometimes "messed up". At least, that's the reason for the existence of auto-mode-case-fold. Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 22:42 ` Stefan Monnier @ 2014-10-15 23:00 ` Reuben Thomas 2014-10-16 3:10 ` Stefan Monnier 0 siblings, 1 reply; 40+ messages in thread From: Reuben Thomas @ 2014-10-15 23:00 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, Andreas Schwab [-- Attachment #1: Type: text/plain, Size: 893 bytes --] On 15 October 2014 23:42, Stefan Monnier <monnier@iro.umontreal.ca> wrote: > > Although no-one has yet answered my question why Emacs takes these > patterns > > to be case-insensitive even on case-sensitive filing systems. > > I don't actually know. > > Maybe because the existence of case-insensitive filesystems cause the > existence of files with "weird" extensions like ".JPG" and it's easier > to just say "match case-insensitively" than to handle the known cases > where case is sometimes "messed up". > > At least, that's the reason for the existence of auto-mode-case-fold. > Maybe this is a good place to start, then? Wouldn't the user prefer to know about oddly-named files on a case-sensitive file system, rather than have them automagically hidden? How about (at least optionally) matching case-sensitively? That would solve the COPYING.LIB problem too. -- http://rrt.sc3d.org [-- Attachment #2: Type: text/html, Size: 1369 bytes --] ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 23:00 ` Reuben Thomas @ 2014-10-16 3:10 ` Stefan Monnier 0 siblings, 0 replies; 40+ messages in thread From: Stefan Monnier @ 2014-10-16 3:10 UTC (permalink / raw) To: Reuben Thomas; +Cc: 18716, Andreas Schwab > them automagically hidden? How about (at least optionally) matching > case-sensitively? Fine by me. It could even just reuse the existing auto-mode-case-fold. Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 14:21 ` Stefan Monnier 2014-10-15 14:26 ` Reuben Thomas @ 2014-10-15 14:26 ` Andreas Schwab 2014-10-15 17:57 ` Stefan Monnier 1 sibling, 1 reply; 40+ messages in thread From: Andreas Schwab @ 2014-10-15 14:26 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, Reuben Thomas Stefan Monnier <monnier@iro.umontreal.ca> writes: >>> Is COPYING.LIB a file that contains the LGPL license? >>> Why name it so weirdly? >> L used to stand for Library. > > Doesn't explain the need for an extension. How else would you distinguish it from the GPL? Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 14:26 ` Andreas Schwab @ 2014-10-15 17:57 ` Stefan Monnier 2014-10-15 20:57 ` Andreas Schwab 0 siblings, 1 reply; 40+ messages in thread From: Stefan Monnier @ 2014-10-15 17:57 UTC (permalink / raw) To: Andreas Schwab; +Cc: 18716, Reuben Thomas >>>> Is COPYING.LIB a file that contains the LGPL license? >>>> Why name it so weirdly? >>> L used to stand for Library. >> Doesn't explain the need for an extension. > How else would you distinguish it from the GPL? How 'bout: you look inside the file? I think "COPYING" should not be synonymous with "GPL". It should just mean "this is the file that contains the terms under which copying (and related activities) can take place". So it can contain the GPLv2, the GPLv3, the LGPL, or whatever else applies to your software (tho I prefer if you stick to one of those ;-). Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 17:57 ` Stefan Monnier @ 2014-10-15 20:57 ` Andreas Schwab 2014-10-15 22:44 ` Stefan Monnier 0 siblings, 1 reply; 40+ messages in thread From: Andreas Schwab @ 2014-10-15 20:57 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, Reuben Thomas Stefan Monnier <monnier@iro.umontreal.ca> writes: > I think "COPYING" should not be synonymous with "GPL". It should just > mean "this is the file that contains the terms under which copying (and > related activities) can take place". So it can contain the GPLv2, the > GPLv3, the LGPL, or whatever else applies to your software (tho I prefer > if you stick to one of those ;-). That doesn't work. You cannot have two files with the same name. Andreas. -- Andreas Schwab, schwab@linux-m68k.org GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different." ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 20:57 ` Andreas Schwab @ 2014-10-15 22:44 ` Stefan Monnier 2014-10-15 22:54 ` Glenn Morris 0 siblings, 1 reply; 40+ messages in thread From: Stefan Monnier @ 2014-10-15 22:44 UTC (permalink / raw) To: Andreas Schwab; +Cc: 18716, Reuben Thomas >> I think "COPYING" should not be synonymous with "GPL". It should just >> mean "this is the file that contains the terms under which copying (and >> related activities) can take place". So it can contain the GPLv2, the >> GPLv3, the LGPL, or whatever else applies to your software (tho I prefer >> if you stick to one of those ;-). > That doesn't work. You cannot have two files with the same name. If your package is distributed under 2 different licenses, then you'll either have to put both licenses in the same file or use two different file names, but I see no reason why those two file names have to be "COPYING" and "COPYING.LIB". Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 22:44 ` Stefan Monnier @ 2014-10-15 22:54 ` Glenn Morris 2014-10-16 3:06 ` Stefan Monnier 0 siblings, 1 reply; 40+ messages in thread From: Glenn Morris @ 2014-10-15 22:54 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, Andreas Schwab, Reuben Thomas Stefan Monnier wrote: > If your package is distributed under 2 different licenses, then you'll > either have to put both licenses in the same file or use two different > file names, but I see no reason why those two file names have to be > "COPYING" and "COPYING.LIB". You are arguing with the GNU coding standards, all hope is lost! ;) http://www.gnu.org/prep/standards/html_node/Releases.html The GNU GPL, if used, should be in a file called COPYING. If the GNU LGPL is used, it should be in a file called COPYING.LESSER. BTW, guess what they used to say instead of COPYING.LESSER... http://cvs.savannah.gnu.org/viewvc/gnustandards/standards.texi?root=gnustandards&r1=1.185&r2=1.186 ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-15 22:54 ` Glenn Morris @ 2014-10-16 3:06 ` Stefan Monnier 2014-10-16 7:13 ` Andreas Schwab 0 siblings, 1 reply; 40+ messages in thread From: Stefan Monnier @ 2014-10-16 3:06 UTC (permalink / raw) To: Glenn Morris; +Cc: 18716, Andreas Schwab, Reuben Thomas > LGPL is used, it should be in a file called COPYING.LESSER. Duh! ".LESSER" is also a completely silly extension. Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-16 3:06 ` Stefan Monnier @ 2014-10-16 7:13 ` Andreas Schwab 2014-10-16 13:15 ` Stefan Monnier 0 siblings, 1 reply; 40+ messages in thread From: Andreas Schwab @ 2014-10-16 7:13 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, Reuben Thomas Stefan Monnier <monnier@iro.umontreal.ca> writes: >> LGPL is used, it should be in a file called COPYING.LESSER. > > Duh! ".LESSER" is also a completely silly extension. It's a name, not an extension. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-16 7:13 ` Andreas Schwab @ 2014-10-16 13:15 ` Stefan Monnier 0 siblings, 0 replies; 40+ messages in thread From: Stefan Monnier @ 2014-10-16 13:15 UTC (permalink / raw) To: Andreas Schwab; +Cc: 18716, Reuben Thomas >>> LGPL is used, it should be in a file called COPYING.LESSER. >> Duh! ".LESSER" is also a completely silly extension. > It's a name, not an extension. Hmm... let's see M-: (file-name-extension "COPYING.LESSER") RET => "LESSER" Nope, sorry. And in case you'd argue that Elisp is biased in my favor: Python 2.7.7 (default, Jun 3 2014, 23:36:29) [GCC 4.8.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import os >>> fileName, fileExtension = os.path.splitext('COPYING.LESSER') >>> fileExtension '.LESSER' >>> It looks like an extension to me, to Elisp, and to Python. Feel free to check with other tools. Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-14 23:41 ` Stefan Monnier 2014-10-14 23:51 ` Reuben Thomas 2014-10-15 7:56 ` Andreas Schwab @ 2014-10-16 2:01 ` Richard Stallman 2014-10-16 3:09 ` Stefan Monnier 2 siblings, 1 reply; 40+ messages in thread From: Richard Stallman @ 2014-10-16 2:01 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, rrt [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] Is COPYING.LIB a file that contains the LGPL license? Why name it so weirdly? It's the convention I set up 25 years ago -- like COPYING, but it's for libraries. That was when "LGPL" meant "GNU Library General Public License". Perhaps it should be COPYING.LESSER. -- Dr Richard Stallman President, Free Software Foundation 51 Franklin St Boston MA 02110 USA www.fsf.org www.gnu.org Skype: No way! That's nonfree (freedom-denying) software. Use Ekiga or an ordinary phone call. ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-16 2:01 ` Richard Stallman @ 2014-10-16 3:09 ` Stefan Monnier 2014-10-16 18:14 ` Richard Stallman 0 siblings, 1 reply; 40+ messages in thread From: Stefan Monnier @ 2014-10-16 3:09 UTC (permalink / raw) To: Richard Stallman; +Cc: 18716, rrt > Perhaps it should be COPYING.LESSER. Why? If your software uses the LGPL, surely the file that holds the copying rules should be called "COPYING" or "LICENSE" but not some name with a funny ".LESSER" extension (which luckily corresponds to no known format yet). IF you want a different name depending on which license is in use, it seems that "GPL-LICENSE" and "LGPL-LICENSE" would be better choices. Of course, I'd also argue in favor of a proper extension (e.g. ".txt") and against the use of allcaps. Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-16 3:09 ` Stefan Monnier @ 2014-10-16 18:14 ` Richard Stallman 2014-10-16 20:17 ` Stefan Monnier 0 siblings, 1 reply; 40+ messages in thread From: Richard Stallman @ 2014-10-16 18:14 UTC (permalink / raw) To: Stefan Monnier; +Cc: 18716, rrt [[[ To any NSA and FBI agents reading my email: please consider ]]] [[[ whether defending the US Constitution against all enemies, ]]] [[[ foreign or domestic, requires you to follow Snowden's example. ]]] > Perhaps it should be COPYING.LESSER. Why? It is a consistent series of names. COPYING - GNU GPL COPYING.LESSER - GNU Lesser GPL We traditionally use names in all caps for files of basic information that accompany programs. This custom started with README and TODO. COPYING-LESSER would be just as good as COPYING.LESSER. -- Dr Richard Stallman President, Free Software Foundation 51 Franklin St Boston MA 02110 USA www.fsf.org www.gnu.org Skype: No way! That's nonfree (freedom-denying) software. Use Ekiga or an ordinary phone call. ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB 2014-10-16 18:14 ` Richard Stallman @ 2014-10-16 20:17 ` Stefan Monnier 0 siblings, 0 replies; 40+ messages in thread From: Stefan Monnier @ 2014-10-16 20:17 UTC (permalink / raw) To: Richard Stallman; +Cc: 18716, rrt > COPYING-LESSER would be just as good as COPYING.LESSER. ^^^^^^^^^^^^ better -- Stefan ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2014-10-14 14:50 bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB Reuben Thomas 2014-10-14 23:41 ` Stefan Monnier @ 2016-11-08 17:51 ` Reuben Thomas 2016-11-08 20:04 ` Eli Zaretskii 2016-12-03 0:22 ` bug#18716: Reuben Thomas 2 siblings, 1 reply; 40+ messages in thread From: Reuben Thomas @ 2016-11-08 17:51 UTC (permalink / raw) To: 18716 [-- Attachment #1.1: Type: text/plain, Size: 628 bytes --] I attach a patch for this bug. It makes dired-mark-unmarked-files act case-insensitively. This seems reasonable, as there's nothing to suggest it does otherwise. Also, it is better than Stefan's suggestion to use auto-mode-case-fold, as when visiting files, the user will quickly see if a file has been e.g. visited in the wrong major mode owing to an uppercase filename being treated as a lowercase one; whereas in dired-omit-mode, files can be hidden counter to the user's expectation, as happened to me with COPYING.LIB, yet it is not obvious (because the file is hidden!). Is this OK to install? -- http://rrt.sc3d.org [-- Attachment #1.2: Type: text/html, Size: 1203 bytes --] [-- Attachment #2: 0001-Match-files-case-insensitively-in-dired-x.patch --] [-- Type: text/x-patch, Size: 1306 bytes --] From 3e6e0d9acbb518f0d84866c6e28b27d049b6e474 Mon Sep 17 00:00:00 2001 From: Reuben Thomas <rrt@sc3d.org> Date: Tue, 8 Nov 2016 17:42:24 +0000 Subject: [PATCH] Match files case-insensitively in dired-x MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * lisp/dired-x.el (dired-mark-unmarked-files): Match the regex case-insensitively (Bug#18716). Do not use auto-mode-case-fold, as the principle is different: with find-file, it’s reasonable to treat upper-case filenames like lower-case ones, as the user will quickly see if anything is wrong, and often it’s convenient; but with dired-omit-mode, it is a bad idea to hide files that the user might expect to see, as the omission will, by the nature of omission, not be obvious! --- lisp/dired-x.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lisp/dired-x.el b/lisp/dired-x.el index 8313905..a5d1e49 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -594,7 +594,8 @@ dired-mark-unmarked-files ;; not already marked (looking-at-p " ") ;; uninteresting - (let ((fn (dired-get-filename localp t))) + (let ((fn (dired-get-filename localp t)) + (case-fold-search nil)) (and fn (string-match-p regexp fn)))) msg))) -- 2.7.4 ^ permalink raw reply related [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-08 17:51 ` bug#18716: Patch for this bug Reuben Thomas @ 2016-11-08 20:04 ` Eli Zaretskii 2016-11-08 22:16 ` Reuben Thomas 0 siblings, 1 reply; 40+ messages in thread From: Eli Zaretskii @ 2016-11-08 20:04 UTC (permalink / raw) To: Reuben Thomas; +Cc: 18716 > From: Reuben Thomas <rrt@sc3d.org> > Date: Tue, 8 Nov 2016 17:51:26 +0000 > > It makes dired-mark-unmarked-files act case-insensitively. You meant case-sensitively, I presume. > Also, it is better than Stefan's suggestion to use auto-mode-case-fold, as when visiting files, the user will > quickly see if a file has been e.g. visited in the wrong major mode owing to an uppercase filename being > treated as a lowercase one; whereas in dired-omit-mode, files can be hidden counter to the user's > expectation, as happened to me with COPYING.LIB, yet it is not obvious (because the file is hidden!). I don't understand what happened to the comment about *.JPG files on case-sensitive filesystems, and how does this patch do TRT on case-insensitive filesystems. IOW, it sounds like the right solution cannot be so simple, because this will most probably cause user complaints of the opposite kind. No? Btw, if the problem is only with COPYING.LIB, maybe a better heuristics would be to remove .lib from completion-ignored-extensions, as it is no longer so widespread where Emacs users dwell? ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-08 20:04 ` Eli Zaretskii @ 2016-11-08 22:16 ` Reuben Thomas 2016-11-09 19:36 ` Eli Zaretskii 0 siblings, 1 reply; 40+ messages in thread From: Reuben Thomas @ 2016-11-08 22:16 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 18716 [-- Attachment #1.1: Type: text/plain, Size: 1946 bytes --] On 8 November 2016 at 20:04, Eli Zaretskii <eliz@gnu.org> wrote: > > From: Reuben Thomas <rrt@sc3d.org> > > Date: Tue, 8 Nov 2016 17:51:26 +0000 > > > > It makes dired-mark-unmarked-files act case-insensitively. > > You meant case-sensitively, I presume. > That's right, sorry. Fixed. I don't understand what happened to the comment about *.JPG files on > case-sensitive filesystems, I took it into account. My experience is that on a case-insensitive system (e.g. a GNU system), one finds occasional files like this, typically copied from other systems or extracted from archives. These are not a problem for dired-omit-mode. For visiting such files, treating auto-mode-alist and similar case-insensitively is no problem. > and how does this patch do TRT on > case-insensitive filesystems. > It doesn't, I've fixed it in the same way as the usage of auto-mode-alist, by testing the system type. > IOW, it sounds like the right solution cannot be so simple, because > this will most probably cause user complaints of the opposite kind. > No? See above. The only people I can see complaining are users of case-insensitive file systems on case-sensitive systems. The correct fix there is in any case to use the case-sensitivity of the file system, rather than using the operating system as an indicator of that. (The same applies to auto-mode-alist.) Btw, if the problem is only with COPYING.LIB, maybe a better > heuristics would be to remove .lib from completion-ignored-extensions, > as it is no longer so widespread where Emacs users dwell? > I don't think special cases are a good idea. There are other examples, e.g. CVS is a pattern, which will also match "cvs", which I have in e.g. wiki CVS repositories. I also added a couple of additional patches to tidy up obsolete documentation, comments and code from dired-x.el. -- http://rrt.sc3d.org [-- Attachment #1.2: Type: text/html, Size: 3485 bytes --] [-- Attachment #2: 0001-Match-files-case-sensitively-in-dired-x.patch --] [-- Type: text/x-patch, Size: 988 bytes --] From df718d0c292c761b808746c210519569a31be1a0 Mon Sep 17 00:00:00 2001 From: Reuben Thomas <rrt@sc3d.org> Date: Tue, 8 Nov 2016 17:42:24 +0000 Subject: [PATCH 1/3] Match files case-sensitively in dired-x * lisp/dired-x.el (dired-mark-unmarked-files): Match the regex case-sensitively on case-sensitive systems (Bug#18716). --- lisp/dired-x.el | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lisp/dired-x.el b/lisp/dired-x.el index 8313905..5adf781 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -594,7 +594,10 @@ dired-mark-unmarked-files ;; not already marked (looking-at-p " ") ;; uninteresting - (let ((fn (dired-get-filename localp t))) + (let ((fn (dired-get-filename localp t)) + ;; Match patterns case-insensitively on case-insensitive + ;; systems + (case-fold-search (memq system-type '(windows-nt cygwin)))) (and fn (string-match-p regexp fn)))) msg))) -- 2.7.4 [-- Attachment #3: 0002-Remove-pre-customize-dired-x.el-documentation.patch --] [-- Type: text/x-patch, Size: 2206 bytes --] From b351ba71ddc352ebfee8f08882299bc9b41a6b78 Mon Sep 17 00:00:00 2001 From: Reuben Thomas <rrt@sc3d.org> Date: Tue, 8 Nov 2016 22:01:59 +0000 Subject: [PATCH 2/3] Remove pre-customize dired-x.el documentation * lisp/dired-x.el (Commentary): Remove USAGE section explaining how to use dired-x from .emacs. It is now fully customizable. * lisp/dired-x.el (dired-guess-shell-alist-user): Remove explanation of how to set this custom variable in .emacs. It should be customized. --- lisp/dired-x.el | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/lisp/dired-x.el b/lisp/dired-x.el index 5adf781..30cfaf4 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -29,20 +29,6 @@ ;; This is based on Sebastian Kremer's excellent dired-x.el (Dired Extra), ;; version 1.191, adapted for GNU Emacs. See the `dired-x' info pages. -;; USAGE: In your ~/.emacs, -;; -;; (add-hook 'dired-load-hook -;; (lambda () -;; (load "dired-x") -;; ;; Set global variables here. For example: -;; ;; (setq dired-guess-shell-gnutar "gtar") -;; )) -;; (add-hook 'dired-mode-hook -;; (lambda () -;; ;; Set buffer-local variables here. For example: -;; ;; (dired-omit-mode 1) -;; )) -;; ;; At load time dired-x.el will install itself and bind some dired keys. ;; Some dired.el and dired-aux.el functions have extra features if ;; dired-x is loaded. @@ -1082,17 +1068,7 @@ dired-guess-shell-alist-user with \\[previous-history-element] (M-p) . The variable `dired-guess-shell-case-fold-search' controls whether -REGEXP is matched case-sensitively. - -You can set this variable in your ~/.emacs. For example, to add rules for -`.foo' and `.bar' files, write - - (setq dired-guess-shell-alist-user - '((\"\\\\.foo\\\\'\" \"FOO-COMMAND\") - (\"\\\\.bar\\\\'\" - (if condition - \"BAR-COMMAND-1\" - \"BAR-COMMAND-2\"))))" +REGEXP is matched case-sensitively." :group 'dired-x :type '(alist :key-type regexp :value-type (repeat sexp))) -- 2.7.4 [-- Attachment #4: 0003-Remove-obsolete-comments-and-commented-code-from-dir.patch --] [-- Type: text/x-patch, Size: 2452 bytes --] From c9ec6bc3187cb3a90ae748ec08cb0f3c000ba353 Mon Sep 17 00:00:00 2001 From: Reuben Thomas <rrt@sc3d.org> Date: Tue, 8 Nov 2016 22:04:52 +0000 Subject: [PATCH 3/3] Remove obsolete comments and commented code from dired-x.el * lisp/dired-x.el (dired-mark-sexp): Remove a query from 1993 and its 1997 answer about whether dired-mark-sexp is used. * lisp/dired-x.el (dired-buffers-for-dir-exact): Remove this function commented out since before dired-x.el was added to RCS in 1994. --- lisp/dired-x.el | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/lisp/dired-x.el b/lisp/dired-x.el index 30cfaf4..e5957b4 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -1376,29 +1376,6 @@ dired-buffer-more-recently-used-p (memq buffer1 (buffer-list)) (not (memq buffer1 (memq buffer2 (buffer-list)))))) -;; Same thing as `dired-buffers-for-dir' of dired.el? - lrd 11/23/93 -;; (defun dired-buffers-for-dir-exact (dir) -;; ;; Return a list of buffers that dired DIR (a directory or wildcard) -;; ;; at top level, or as subdirectory. -;; ;; Top level matches must match the wildcard part too, if any. -;; ;; The list is in reverse order of buffer creation, most recent last. -;; ;; As a side effect, killed dired buffers for DIR are removed from -;; ;; dired-buffers. -;; (let ((alist dired-buffers) result elt) -;; (while alist -;; (setq elt (car alist) -;; alist (cdr alist)) -;; (let ((buf (cdr elt))) -;; (if (buffer-name buf) -;; ;; Top level must match exactly against dired-directory in -;; ;; case one of them is a wildcard. -;; (if (or (equal dir (with-current-buffer buf dired-directory)) -;; (assoc dir (with-current-buffer buf dired-subdir-alist))) -;; (setq result (cons buf result))) -;; ;; else buffer is killed - clean up: -;; (setq dired-buffers (delq elt dired-buffers))))) -;; result)) - \f ;; Needed if ls -lh is supported and also for GNU ls -ls. (defun dired-x--string-to-number (str) @@ -1416,9 +1393,6 @@ dired-x--string-to-number (setq val (* 1024.0 val))))) val)) -;; Does anyone use this? - lrd 6/29/93. -;; Apparently people do use it. - lrd 12/22/97. - (defun dired-mark-sexp (predicate &optional unflag-p) "Mark files for which PREDICATE returns non-nil. With a prefix arg, unmark or unflag those files instead. -- 2.7.4 ^ permalink raw reply related [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-08 22:16 ` Reuben Thomas @ 2016-11-09 19:36 ` Eli Zaretskii 2016-11-09 22:00 ` Reuben Thomas 0 siblings, 1 reply; 40+ messages in thread From: Eli Zaretskii @ 2016-11-09 19:36 UTC (permalink / raw) To: Reuben Thomas; +Cc: 18716 > From: Reuben Thomas <rrt@sc3d.org> > Date: Tue, 8 Nov 2016 22:16:45 +0000 > Cc: 18716@debbugs.gnu.org > > I don't understand what happened to the comment about *.JPG files on > case-sensitive filesystems, > > I took it into account. My experience is that on a case-insensitive system (e.g. a GNU system), one finds > occasional files like this, typically copied from other systems or extracted from archives. These are not a > problem for dired-omit-mode. For visiting such files, treating auto-mode-alist and similar case-insensitively is > no problem. Sorry, I don't understand what you mean by "these are not a problem". With your change, *.JPG files will no longer be treated like *.jpg on Posix systems. Won't people who want *.JPG hidden complain? IOW, isn't this change backward-incompatible? > + (case-fold-search (memq system-type '(windows-nt cygwin)))) The list should include ms-dos as well. > * lisp/dired-x.el (Commentary): Remove USAGE section explaining how to > use dired-x from .emacs. It is now fully customizable. > * lisp/dired-x.el (dired-guess-shell-alist-user): Remove explanation of > how to set this custom variable in .emacs. It should be customized. Why remove these comments? The existence of Custom doesn't preclude people from customizations in plain Lisp. Thanks. ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-09 19:36 ` Eli Zaretskii @ 2016-11-09 22:00 ` Reuben Thomas 2016-11-09 22:52 ` Drew Adams 2016-11-10 17:38 ` Eli Zaretskii 0 siblings, 2 replies; 40+ messages in thread From: Reuben Thomas @ 2016-11-09 22:00 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 18716 [-- Attachment #1: Type: text/plain, Size: 3630 bytes --] On 9 November 2016 at 19:36, Eli Zaretskii <eliz@gnu.org> wrote: > > From: Reuben Thomas <rrt@sc3d.org> > > Date: Tue, 8 Nov 2016 22:16:45 +0000 > > Cc: 18716@debbugs.gnu.org > > > > I don't understand what happened to the comment about *.JPG files on > > case-sensitive filesystems, > > > > I took it into account. My experience is that on a case-insensitive > system (e.g. a GNU system), one finds > > occasional files like this, typically copied from other systems or > extracted from archives. These are not a > > problem for dired-omit-mode. For visiting such files, treating > auto-mode-alist and similar case-insensitively is > > no problem. > > Sorry, I don't understand what you mean by "these are not a problem". > With your change, *.JPG files will no longer be treated like *.jpg on > Posix systems. Won't people who want *.JPG hidden complain? IOW, > isn't this change backward-incompatible? > I'm confused. I have not changed the behaviour of visiting files. When I said "treating auto-mode-alist and similar case-insensitively is not a problem", I meant that it is OK that auto-mode-alist is applied case-insensitively. When we talk about *.JPG files, we are not talking about dired-omit-mode, because ".jpg" is not a suffix that would (normally) be omitted. What I was trying to explain is that unexpected case-insensitivity in auto-mode-alist is not a problem, because the user immediately sees the effects. On the other hand, in dired-omit-mode it is a problem, because the user might not see the effects (the effects are to hide things). I double-checked, and the code I changed, dired-mark-unmarked-files, is only called by dired-omit. However, it can also be called interactively, so I have certainly changed the interactive behavior. I could add a parameter to dired-mark-unmarked-files, case-fold-p, defaulting to nil, which would be set by its current callers. But I think you are saying that this change to the behavior of dired-omit-mode, which I have suggested does not need a new preference, should indeed have a new preference, so I can add that too. I think, though, that it should default to `t', i.e. dired-omit-mode behaving case-sensitively by default. If you'd say what you consider acceptable, I'll implement it. > > + (case-fold-search (memq system-type '(windows-nt cygwin)))) > > The list should include ms-dos as well. > OK, I will add a patch for files.el, since I got the list from there, where it is used for the same purpose. Or perhaps there should be a global variable defined in files.el containing the list? > * lisp/dired-x.el (Commentary): Remove USAGE section explaining how to > > use dired-x from .emacs. It is now fully customizable. > > * lisp/dired-x.el (dired-guess-shell-alist-user): Remove explanation of > > how to set this custom variable in .emacs. It should be customized. > > Why remove these comments? The existence of Custom doesn't preclude > people from customizations in plain Lisp. > The documentation is a maintenance burden (since it is hand-written and duplicate), few people will read it anyway, and further it is redundant, since it can be customized in plain Lisp in the same way as any other defcustom. (I presume you're not implying that we should add documentation to every Lisp source file to show how to customize each defcustom?) Further, the documentation as it is implies that these variables *should* be customized in plain Lisp, since (unlike most cases), there is explicit documentation about it. -- http://rrt.sc3d.org [-- Attachment #2: Type: text/html, Size: 5510 bytes --] ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-09 22:00 ` Reuben Thomas @ 2016-11-09 22:52 ` Drew Adams 2016-11-09 23:29 ` Reuben Thomas 2016-11-10 17:38 ` Eli Zaretskii 1 sibling, 1 reply; 40+ messages in thread From: Drew Adams @ 2016-11-09 22:52 UTC (permalink / raw) To: Reuben Thomas, Eli Zaretskii; +Cc: 18716 > I double-checked, and the code I changed, dired-mark-unmarked-files, is > only called by dired-omit. However, it can also be called interactively, > so I have certainly changed the interactive behavior. It can also be called from 3rd-party code. (I don't understand the problem you are trying to solve, so I won't try to comment further about the proposed solution.) ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-09 22:52 ` Drew Adams @ 2016-11-09 23:29 ` Reuben Thomas 0 siblings, 0 replies; 40+ messages in thread From: Reuben Thomas @ 2016-11-09 23:29 UTC (permalink / raw) To: Drew Adams; +Cc: 18716 [-- Attachment #1: Type: text/plain, Size: 535 bytes --] On 9 November 2016 at 22:52, Drew Adams <drew.adams@oracle.com> wrote: > > I double-checked, and the code I changed, dired-mark-unmarked-files, is > > only called by dired-omit. However, it can also be called interactively, > > so I have certainly changed the interactive behavior. > > It can also be called from 3rd-party code. > Quite right, and the suggestion I make retains the same behavior (as the new argument I suggest is optional and its default value keeps the current behavior). -- http://rrt.sc3d.org [-- Attachment #2: Type: text/html, Size: 1116 bytes --] ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-09 22:00 ` Reuben Thomas 2016-11-09 22:52 ` Drew Adams @ 2016-11-10 17:38 ` Eli Zaretskii 2016-11-26 17:54 ` Reuben Thomas 1 sibling, 1 reply; 40+ messages in thread From: Eli Zaretskii @ 2016-11-10 17:38 UTC (permalink / raw) To: Reuben Thomas; +Cc: 18716 > From: Reuben Thomas <rrt@sc3d.org> > Date: Wed, 9 Nov 2016 22:00:22 +0000 > Cc: 18716@debbugs.gnu.org > > Sorry, I don't understand what you mean by "these are not a problem". > With your change, *.JPG files will no longer be treated like *.jpg on > Posix systems. Won't people who want *.JPG hidden complain? IOW, > isn't this change backward-incompatible? > > I'm confused. So am I. > I have not changed the behaviour of visiting files. I wasn't talking about visiting files. I was talking about dired-omit-mode and related Dired issues. I'm confused how visiting files entered the scene, and why. > When we talk about *.JPG files, we are not talking about dired-omit-mode, because ".jpg" is not a suffix that > would (normally) be omitted. I think it will be, if someone adds it to completion-ignored-extensions, or some other variable used by dired-omit-mode to set up its omitted files. > What I was trying to explain is that unexpected case-insensitivity in auto-mode-alist is not a problem, because > the user immediately sees the effects. On the other hand, in dired-omit-mode it is a problem, because the > user might not see the effects (the effects are to hide things). Yes, I understand. I was asking what do we tell users who have files they want to omit that currently are only matched because of case insensitivity. > I could add a parameter to dired-mark-unmarked-files, case-fold-p, defaulting to nil, which would be set by its > current callers. But I think you are saying that this change to the behavior of dired-omit-mode, which I have > suggested does not need a new preference, should indeed have a new preference, so I can add that too. I > think, though, that it should default to `t', i.e. dired-omit-mode behaving case-sensitively by default. Sounds like a good compromise. I agree about the default, except that it should default to case-insensitive matches on case-insensitive filesystems (Windows etc.) > > + (case-fold-search (memq system-type '(windows-nt cygwin)))) > > The list should include ms-dos as well. > > OK, I will add a patch for files.el, since I got the list from there, where it is used for the same purpose. If you mean set-auto-mode, then it doesn't need such a change. For obscure historical reasons, the MS-DOS port wants to be case-sensitive in that particular case (e.g., it wants to treat *.C files as C++, not C). In other places in files.el, ms-dos is already mentioned where case-insensitive file name comparison is needed. > Or perhaps there should be a global variable defined in files.el containing the list? I don't see the need. > > * lisp/dired-x.el (Commentary): Remove USAGE section explaining how to > > use dired-x from .emacs. It is now fully customizable. > > * lisp/dired-x.el (dired-guess-shell-alist-user): Remove explanation of > > how to set this custom variable in .emacs. It should be customized. > > Why remove these comments? The existence of Custom doesn't preclude > people from customizations in plain Lisp. > > The documentation is a maintenance burden (since it is hand-written and duplicate), few people will read it > anyway, and further it is redundant, since it can be customized in plain Lisp in the same way as any other > defcustom. (I presume you're not implying that we should add documentation to every Lisp source file to show > how to customize each defcustom?) Further, the documentation as it is implies that these variables *should* > be customized in plain Lisp, since (unlike most cases), there is explicit documentation about it. I don't share your interpretation of the presence of these comments, but I'm not going to start a dispute about this. Thanks. ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-10 17:38 ` Eli Zaretskii @ 2016-11-26 17:54 ` Reuben Thomas 2016-11-26 18:29 ` Ken Brown 0 siblings, 1 reply; 40+ messages in thread From: Reuben Thomas @ 2016-11-26 17:54 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 18716 [-- Attachment #1: Type: text/plain, Size: 790 bytes --] On 10 November 2016 at 17:38, Eli Zaretskii <eliz@gnu.org> wrote: > >> I could add a parameter to dired-mark-unmarked-files, case-fold-p, defaulting to nil, which would be set by its >> current callers. But I think you are saying that this change to the behavior of dired-omit-mode, which I have >> suggested does not need a new preference, should indeed have a new preference, so I can add that too. I >> think, though, that it should default to `t', i.e. dired-omit-mode behaving case-sensitively by default. > > Sounds like a good compromise. I agree about the default, except that > it should default to case-insensitive matches on case-insensitive > filesystems (Windows etc.) I have now implemented this (apologies for the delay). I attach revised patches. -- http://rrt.sc3d.org [-- Attachment #2: 0002-Allow-files-to-be-matched-case-sensitively-in-dired-.patch --] [-- Type: text/x-patch, Size: 3478 bytes --] From a321999171464604a57af57941b6cb16df0435f0 Mon Sep 17 00:00:00 2001 From: Reuben Thomas <rrt@sc3d.org> Date: Tue, 8 Nov 2016 17:42:24 +0000 Subject: [PATCH 2/5] Allow files to be matched case-sensitively in dired-x * lisp/dired-x.el (dired-mark-unmarked-files): Add an argument which controls case folding for matching the regex (Bug#18716). (dired-omit-case-fold): New variable. Defaults to `t' on case-sensitive systems, `nil' otherwise. (dired-mark-omitted, dired-omit-expunge): Use dired-omit-case-fold. --- lisp/dired-x.el | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/lisp/dired-x.el b/lisp/dired-x.el index 8313905..a51a04b 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -133,6 +133,13 @@ dired-omit-size-limit :type '(choice (const :tag "no maximum" nil) integer) :group 'dired-x) +(defcustom dired-omit-case-fold (memq system-type '(msdos windows-nt cygwin)) + "Whether `dired-omit-mode' will treat the regexp of files to + omit case-insensitively. The default is to be case sensitive + on case-sensitive systems and case-insensitive otherwise." + :type 'boolean + :group 'dired-x) + ;; For backward compatibility (define-obsolete-variable-alias 'dired-omit-files-p 'dired-omit-mode "22.1") (define-minor-mode dired-omit-mode @@ -507,7 +514,7 @@ dired-mark-omitted "Mark files matching `dired-omit-files' and `dired-omit-extensions'." (interactive) (let ((dired-omit-mode nil)) (revert-buffer)) ;; Show omitted files - (dired-mark-unmarked-files (dired-omit-regexp) nil nil dired-omit-localp)) + (dired-mark-unmarked-files (dired-omit-regexp) nil nil dired-omit-localp dired-omit-case-fold)) (defcustom dired-omit-extensions (append completion-ignored-extensions @@ -551,7 +558,7 @@ dired-omit-expunge (or (string= omit-re "") (let ((dired-marker-char dired-omit-marker-char)) (when dired-omit-verbose (message "Omitting...")) - (if (dired-mark-unmarked-files omit-re nil nil dired-omit-localp) + (if (dired-mark-unmarked-files omit-re nil nil dired-omit-localp dired-omit-case-fold) (progn (setq count (dired-do-kill-lines nil @@ -577,12 +584,14 @@ dired-omit-regexp ""))) ;; Returns t if any work was done, nil otherwise. -(defun dired-mark-unmarked-files (regexp msg &optional unflag-p localp) +(defun dired-mark-unmarked-files (regexp msg &optional unflag-p localp case-fold-p) "Mark unmarked files matching REGEXP, displaying MSG. REGEXP is matched against the entire file name. When called interactively, prompt for REGEXP. With prefix argument, unflag all those files. -Optional fourth argument LOCALP is as in `dired-get-filename'." +Optional fourth argument LOCALP is as in `dired-get-filename'. +Optional fifth argument CASE-FOLD-P specifies the value of +`case-fold-search' used for matching REGEXP." (interactive (list (read-regexp "Mark unmarked files matching regexp (default all): " @@ -594,7 +603,10 @@ dired-mark-unmarked-files ;; not already marked (looking-at-p " ") ;; uninteresting - (let ((fn (dired-get-filename localp t))) + (let ((fn (dired-get-filename localp t)) + ;; Match patterns case-insensitively on case-insensitive + ;; systems + (case-fold-search case-fold-p)) (and fn (string-match-p regexp fn)))) msg))) -- 2.7.4 [-- Attachment #3: 0003-Remove-pre-customize-dired-x.el-documentation.patch --] [-- Type: text/x-patch, Size: 2206 bytes --] From 3179826df0b9b66d6818c5c31bef5de4050bc1f0 Mon Sep 17 00:00:00 2001 From: Reuben Thomas <rrt@sc3d.org> Date: Tue, 8 Nov 2016 22:01:59 +0000 Subject: [PATCH 3/5] Remove pre-customize dired-x.el documentation * lisp/dired-x.el (Commentary): Remove USAGE section explaining how to use dired-x from .emacs. It is now fully customizable. * lisp/dired-x.el (dired-guess-shell-alist-user): Remove explanation of how to set this custom variable in .emacs. It should be customized. --- lisp/dired-x.el | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/lisp/dired-x.el b/lisp/dired-x.el index a51a04b..e1d8887 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -29,20 +29,6 @@ ;; This is based on Sebastian Kremer's excellent dired-x.el (Dired Extra), ;; version 1.191, adapted for GNU Emacs. See the `dired-x' info pages. -;; USAGE: In your ~/.emacs, -;; -;; (add-hook 'dired-load-hook -;; (lambda () -;; (load "dired-x") -;; ;; Set global variables here. For example: -;; ;; (setq dired-guess-shell-gnutar "gtar") -;; )) -;; (add-hook 'dired-mode-hook -;; (lambda () -;; ;; Set buffer-local variables here. For example: -;; ;; (dired-omit-mode 1) -;; )) -;; ;; At load time dired-x.el will install itself and bind some dired keys. ;; Some dired.el and dired-aux.el functions have extra features if ;; dired-x is loaded. @@ -1091,17 +1077,7 @@ dired-guess-shell-alist-user with \\[previous-history-element] (M-p) . The variable `dired-guess-shell-case-fold-search' controls whether -REGEXP is matched case-sensitively. - -You can set this variable in your ~/.emacs. For example, to add rules for -`.foo' and `.bar' files, write - - (setq dired-guess-shell-alist-user - '((\"\\\\.foo\\\\'\" \"FOO-COMMAND\") - (\"\\\\.bar\\\\'\" - (if condition - \"BAR-COMMAND-1\" - \"BAR-COMMAND-2\"))))" +REGEXP is matched case-sensitively." :group 'dired-x :type '(alist :key-type regexp :value-type (repeat sexp))) -- 2.7.4 [-- Attachment #4: 0004-Remove-obsolete-comments-and-commented-code-from-dir.patch --] [-- Type: text/x-patch, Size: 2452 bytes --] From de9d720dd7cec37572393917911cedbbf493e75b Mon Sep 17 00:00:00 2001 From: Reuben Thomas <rrt@sc3d.org> Date: Tue, 8 Nov 2016 22:04:52 +0000 Subject: [PATCH 4/5] Remove obsolete comments and commented code from dired-x.el * lisp/dired-x.el (dired-mark-sexp): Remove a query from 1993 and its 1997 answer about whether dired-mark-sexp is used. * lisp/dired-x.el (dired-buffers-for-dir-exact): Remove this function commented out since before dired-x.el was added to RCS in 1994. --- lisp/dired-x.el | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/lisp/dired-x.el b/lisp/dired-x.el index e1d8887..7d8376c 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -1385,29 +1385,6 @@ dired-buffer-more-recently-used-p (memq buffer1 (buffer-list)) (not (memq buffer1 (memq buffer2 (buffer-list)))))) -;; Same thing as `dired-buffers-for-dir' of dired.el? - lrd 11/23/93 -;; (defun dired-buffers-for-dir-exact (dir) -;; ;; Return a list of buffers that dired DIR (a directory or wildcard) -;; ;; at top level, or as subdirectory. -;; ;; Top level matches must match the wildcard part too, if any. -;; ;; The list is in reverse order of buffer creation, most recent last. -;; ;; As a side effect, killed dired buffers for DIR are removed from -;; ;; dired-buffers. -;; (let ((alist dired-buffers) result elt) -;; (while alist -;; (setq elt (car alist) -;; alist (cdr alist)) -;; (let ((buf (cdr elt))) -;; (if (buffer-name buf) -;; ;; Top level must match exactly against dired-directory in -;; ;; case one of them is a wildcard. -;; (if (or (equal dir (with-current-buffer buf dired-directory)) -;; (assoc dir (with-current-buffer buf dired-subdir-alist))) -;; (setq result (cons buf result))) -;; ;; else buffer is killed - clean up: -;; (setq dired-buffers (delq elt dired-buffers))))) -;; result)) - \f ;; Needed if ls -lh is supported and also for GNU ls -ls. (defun dired-x--string-to-number (str) @@ -1425,9 +1402,6 @@ dired-x--string-to-number (setq val (* 1024.0 val))))) val)) -;; Does anyone use this? - lrd 6/29/93. -;; Apparently people do use it. - lrd 12/22/97. - (defun dired-mark-sexp (predicate &optional unflag-p) "Mark files for which PREDICATE returns non-nil. With a prefix arg, unmark or unflag those files instead. -- 2.7.4 ^ permalink raw reply related [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-26 17:54 ` Reuben Thomas @ 2016-11-26 18:29 ` Ken Brown 2016-11-28 21:32 ` Reuben Thomas 0 siblings, 1 reply; 40+ messages in thread From: Ken Brown @ 2016-11-26 18:29 UTC (permalink / raw) To: Reuben Thomas, Eli Zaretskii; +Cc: 18716 On 11/26/2016 12:54 PM, Reuben Thomas wrote: >> Sounds like a good compromise. I agree about the default, except that >> it should default to case-insensitive matches on case-insensitive >> filesystems (Windows etc.) > I have now implemented this (apologies for the delay). I attach revised patches. As of commit 2809012 we have a new primitive, file-name-case-insensitive-p, that can be used to determine whether or not a filesystem is case insensitive. This is better than relying on system type. For example, on both Cygwin and macOS, it's possible that some filesystems are case-insensitive and others aren't. Ken ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-26 18:29 ` Ken Brown @ 2016-11-28 21:32 ` Reuben Thomas 2016-12-02 9:40 ` Eli Zaretskii 0 siblings, 1 reply; 40+ messages in thread From: Reuben Thomas @ 2016-11-28 21:32 UTC (permalink / raw) To: Ken Brown; +Cc: 18716 [-- Attachment #1.1: Type: text/plain, Size: 1167 bytes --] On 26 November 2016 at 18:29, Ken Brown <kbrown@cornell.edu> wrote: > On 11/26/2016 12:54 PM, Reuben Thomas wrote: > >> Sounds like a good compromise. I agree about the default, except that >>> it should default to case-insensitive matches on case-insensitive >>> filesystems (Windows etc.) >>> >> I have now implemented this (apologies for the delay). I attach revised >> patches. >> > > As of commit 2809012 we have a new primitive, > file-name-case-insensitive-p, that can be used to determine whether or not > a filesystem is case insensitive. This is better than relying on system > type. For example, on both Cygwin and macOS, it's possible that some > filesystems are case-insensitive and others aren't. Thanks for the heads up, that's great news! It bothered me that there was no easy way to do this previously. I updated my patch so that dired-omit-case-fold is now a three-valued variable which defaults to 'filesystem, and a helper function that checks (filename-case-sensitive-p dired-directory) when this value is used. I've added info and NEWS documentation for dired-omit-case-fold. -- http://rrt.sc3d.org [-- Attachment #1.2: Type: text/html, Size: 2332 bytes --] [-- Attachment #2: 0002-Allow-files-to-be-matched-case-sensitively-in-dired-.patch --] [-- Type: text/x-patch, Size: 5689 bytes --] From 792edb24a8d7b617fcc8fbfa62f350fd01552d93 Mon Sep 17 00:00:00 2001 From: Reuben Thomas <rrt@sc3d.org> Date: Tue, 8 Nov 2016 17:42:24 +0000 Subject: [PATCH 2/4] Allow files to be matched case-sensitively in dired-x * lisp/dired-x.el (dired-mark-unmarked-files): Add an argument which controls case folding for matching the regex (Bug#18716). (dired-omit-case-fold): New variable. Defaults to `t' on case-sensitive systems, `nil' otherwise. (dired-mark-omitted, dired-omit-expunge): Use dired-omit-case-fold. * doc/misc/dired-x.texi, etc/NEWS: Document dired-omit-case-fold. --- doc/misc/dired-x.texi | 11 +++++++++++ etc/NEWS | 6 ++++++ lisp/dired-x.el | 37 ++++++++++++++++++++++++++++++++----- 3 files changed, 49 insertions(+), 5 deletions(-) diff --git a/doc/misc/dired-x.texi b/doc/misc/dired-x.texi index db01896..4b5ca6d 100644 --- a/doc/misc/dired-x.texi +++ b/doc/misc/dired-x.texi @@ -369,6 +369,17 @@ Omitting Variables If non-@code{nil}, a list of extensions (strings) to omit from Dired listings. Its format is the same as that of @code{completion-ignored-extensions}. +@vindex dired-omit-case-fold +@item dired-omit-case-fold + +Default: @code{filesystem} + +By default, @code{dired-omit-mode} will match filenames and extensions +case-sensitively on Dired buffers visiting case-sensitive filesystems, +and case-insensitively on case-insensitive filesystems. Set to +@code{nil} to be always case-sensitive, and @code{t} to be always +case-sensitive. + @vindex dired-omit-localp @item dired-omit-localp diff --git a/etc/NEWS b/etc/NEWS index cbce027..33b8a42 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -83,6 +83,12 @@ of curved quotes for 'electric-quote-mode', allowing user to choose the types of quotes to be used. +++ +** The new user variable 'dired-omit-case-fold' allows the +case-sensitivity of dired-omit-mode to be configured. It defaults to +the same sensitivity as that of the filesystem for the corresponding +dired buffer. + ++++ ** Emacs now uses double buffering to reduce flicker when editing and resizing graphical Emacs frames on the X Window System. This support requires the DOUBLE-BUFFER extension, which major X servers have diff --git a/lisp/dired-x.el b/lisp/dired-x.el index 8313905..8f20955 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -133,6 +133,26 @@ dired-omit-size-limit :type '(choice (const :tag "no maximum" nil) integer) :group 'dired-x) +(defcustom dired-omit-case-fold 'filesystem + "Whether `dired-omit-mode' will use case-folding to match the +regexp of files to omit. When nil, always be case-sensitive; when +t, always be case-insensitive; the default value, 'filesystem, +causes case folding to be used on case-insensitive filesystems +only." + :type '(choice (const :tag "Always case-sensitive" nil) + (const :tag "Always case-insensitive" t) + (const :tag "According to filesystem" filesystem)) + :group 'dired-x + :version "26.1") + +(defun dired-omit-case-fold-p (dir) + "Return t if, according to `dired-omit-case-fold', + `dired-omit-mode' should use case folding to interpret its + regexp in directory DIR." + (if (eq dired-omit-case-fold 'filesystem) + (file-name-case-sensitive-p dir) + dired-omit-case-fold)) + ;; For backward compatibility (define-obsolete-variable-alias 'dired-omit-files-p 'dired-omit-mode "22.1") (define-minor-mode dired-omit-mode @@ -507,7 +527,8 @@ dired-mark-omitted "Mark files matching `dired-omit-files' and `dired-omit-extensions'." (interactive) (let ((dired-omit-mode nil)) (revert-buffer)) ;; Show omitted files - (dired-mark-unmarked-files (dired-omit-regexp) nil nil dired-omit-localp)) + (dired-mark-unmarked-files (dired-omit-regexp) nil nil dired-omit-localp + (dired-omit-case-fold-p dired-directory))) (defcustom dired-omit-extensions (append completion-ignored-extensions @@ -551,7 +572,8 @@ dired-omit-expunge (or (string= omit-re "") (let ((dired-marker-char dired-omit-marker-char)) (when dired-omit-verbose (message "Omitting...")) - (if (dired-mark-unmarked-files omit-re nil nil dired-omit-localp) + (if (dired-mark-unmarked-files omit-re nil nil dired-omit-localp + (dired-omit-case-fold-p dired-directory)) (progn (setq count (dired-do-kill-lines nil @@ -577,12 +599,14 @@ dired-omit-regexp ""))) ;; Returns t if any work was done, nil otherwise. -(defun dired-mark-unmarked-files (regexp msg &optional unflag-p localp) +(defun dired-mark-unmarked-files (regexp msg &optional unflag-p localp case-fold-p) "Mark unmarked files matching REGEXP, displaying MSG. REGEXP is matched against the entire file name. When called interactively, prompt for REGEXP. With prefix argument, unflag all those files. -Optional fourth argument LOCALP is as in `dired-get-filename'." +Optional fourth argument LOCALP is as in `dired-get-filename'. +Optional fifth argument CASE-FOLD-P specifies the value of +`case-fold-search' used for matching REGEXP." (interactive (list (read-regexp "Mark unmarked files matching regexp (default all): " @@ -594,7 +618,10 @@ dired-mark-unmarked-files ;; not already marked (looking-at-p " ") ;; uninteresting - (let ((fn (dired-get-filename localp t))) + (let ((fn (dired-get-filename localp t)) + ;; Match patterns case-insensitively on case-insensitive + ;; systems + (case-fold-search case-fold-p)) (and fn (string-match-p regexp fn)))) msg))) -- 2.7.4 [-- Attachment #3: 0003-Remove-pre-customize-dired-x.el-documentation.patch --] [-- Type: text/x-patch, Size: 2206 bytes --] From 85ac884a98e0e1a25e1401e1baeeb992325cc634 Mon Sep 17 00:00:00 2001 From: Reuben Thomas <rrt@sc3d.org> Date: Tue, 8 Nov 2016 22:01:59 +0000 Subject: [PATCH 3/4] Remove pre-customize dired-x.el documentation * lisp/dired-x.el (Commentary): Remove USAGE section explaining how to use dired-x from .emacs. It is now fully customizable. * lisp/dired-x.el (dired-guess-shell-alist-user): Remove explanation of how to set this custom variable in .emacs. It should be customized. --- lisp/dired-x.el | 26 +------------------------- 1 file changed, 1 insertion(+), 25 deletions(-) diff --git a/lisp/dired-x.el b/lisp/dired-x.el index 8f20955..6a3143e 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -29,20 +29,6 @@ ;; This is based on Sebastian Kremer's excellent dired-x.el (Dired Extra), ;; version 1.191, adapted for GNU Emacs. See the `dired-x' info pages. -;; USAGE: In your ~/.emacs, -;; -;; (add-hook 'dired-load-hook -;; (lambda () -;; (load "dired-x") -;; ;; Set global variables here. For example: -;; ;; (setq dired-guess-shell-gnutar "gtar") -;; )) -;; (add-hook 'dired-mode-hook -;; (lambda () -;; ;; Set buffer-local variables here. For example: -;; ;; (dired-omit-mode 1) -;; )) -;; ;; At load time dired-x.el will install itself and bind some dired keys. ;; Some dired.el and dired-aux.el functions have extra features if ;; dired-x is loaded. @@ -1106,17 +1092,7 @@ dired-guess-shell-alist-user with \\[previous-history-element] (M-p) . The variable `dired-guess-shell-case-fold-search' controls whether -REGEXP is matched case-sensitively. - -You can set this variable in your ~/.emacs. For example, to add rules for -`.foo' and `.bar' files, write - - (setq dired-guess-shell-alist-user - '((\"\\\\.foo\\\\'\" \"FOO-COMMAND\") - (\"\\\\.bar\\\\'\" - (if condition - \"BAR-COMMAND-1\" - \"BAR-COMMAND-2\"))))" +REGEXP is matched case-sensitively." :group 'dired-x :type '(alist :key-type regexp :value-type (repeat sexp))) -- 2.7.4 [-- Attachment #4: 0004-Remove-obsolete-comments-and-commented-code-from-dir.patch --] [-- Type: text/x-patch, Size: 2452 bytes --] From 888b62451a3b9e9fe2d175be4d18b2dc30c59714 Mon Sep 17 00:00:00 2001 From: Reuben Thomas <rrt@sc3d.org> Date: Tue, 8 Nov 2016 22:04:52 +0000 Subject: [PATCH 4/4] Remove obsolete comments and commented code from dired-x.el * lisp/dired-x.el (dired-mark-sexp): Remove a query from 1993 and its 1997 answer about whether dired-mark-sexp is used. * lisp/dired-x.el (dired-buffers-for-dir-exact): Remove this function commented out since before dired-x.el was added to RCS in 1994. --- lisp/dired-x.el | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/lisp/dired-x.el b/lisp/dired-x.el index 6a3143e..34a02ec 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -1400,29 +1400,6 @@ dired-buffer-more-recently-used-p (memq buffer1 (buffer-list)) (not (memq buffer1 (memq buffer2 (buffer-list)))))) -;; Same thing as `dired-buffers-for-dir' of dired.el? - lrd 11/23/93 -;; (defun dired-buffers-for-dir-exact (dir) -;; ;; Return a list of buffers that dired DIR (a directory or wildcard) -;; ;; at top level, or as subdirectory. -;; ;; Top level matches must match the wildcard part too, if any. -;; ;; The list is in reverse order of buffer creation, most recent last. -;; ;; As a side effect, killed dired buffers for DIR are removed from -;; ;; dired-buffers. -;; (let ((alist dired-buffers) result elt) -;; (while alist -;; (setq elt (car alist) -;; alist (cdr alist)) -;; (let ((buf (cdr elt))) -;; (if (buffer-name buf) -;; ;; Top level must match exactly against dired-directory in -;; ;; case one of them is a wildcard. -;; (if (or (equal dir (with-current-buffer buf dired-directory)) -;; (assoc dir (with-current-buffer buf dired-subdir-alist))) -;; (setq result (cons buf result))) -;; ;; else buffer is killed - clean up: -;; (setq dired-buffers (delq elt dired-buffers))))) -;; result)) - \f ;; Needed if ls -lh is supported and also for GNU ls -ls. (defun dired-x--string-to-number (str) @@ -1440,9 +1417,6 @@ dired-x--string-to-number (setq val (* 1024.0 val))))) val)) -;; Does anyone use this? - lrd 6/29/93. -;; Apparently people do use it. - lrd 12/22/97. - (defun dired-mark-sexp (predicate &optional unflag-p) "Mark files for which PREDICATE returns non-nil. With a prefix arg, unmark or unflag those files instead. -- 2.7.4 ^ permalink raw reply related [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-11-28 21:32 ` Reuben Thomas @ 2016-12-02 9:40 ` Eli Zaretskii 2016-12-02 16:10 ` Reuben Thomas 0 siblings, 1 reply; 40+ messages in thread From: Eli Zaretskii @ 2016-12-02 9:40 UTC (permalink / raw) To: Reuben Thomas; +Cc: 18716 > From: Reuben Thomas <rrt@sc3d.org> > Date: Mon, 28 Nov 2016 21:32:03 +0000 > Cc: Eli Zaretskii <eliz@gnu.org>, 18716@debbugs.gnu.org > > Thanks for the heads up, that's great news! It bothered me that there was no easy way to do this previously. > > I updated my patch so that dired-omit-case-fold is now a three-valued variable which defaults to 'filesystem, > and a helper function that checks (filename-case-sensitive-p dired-directory) when this value is used. > > I've added info and NEWS documentation for dired-omit-case-fold. Thanks, a few comments below. With those fixed, please push to master. > +@vindex dired-omit-case-fold > +@item dired-omit-case-fold > + > +Default: @code{filesystem} Please mention this value in the text that follows. > + Set to > +@code{nil} to be always case-sensitive, and @code{t} to be always > +case-sensitive. So which is it? ;-) > +++ > +** The new user variable 'dired-omit-case-fold' allows the > +case-sensitivity of dired-omit-mode to be configured. It defaults to ^^^^^^^^^^ Our terminology is "customized". Bonus points for avoiding passive tense altogether ("... allows customization of case-sensitivity ..."). > +(defcustom dired-omit-case-fold 'filesystem > + "Whether `dired-omit-mode' will use case-folding to match the > +regexp of files to omit. When nil, always be case-sensitive; when The first line of a doc string should be a complete sentence. > +(defun dired-omit-case-fold-p (dir) > + "Return t if, according to `dired-omit-case-fold', > + `dired-omit-mode' should use case folding to interpret its > + regexp in directory DIR." Likewise. ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-12-02 9:40 ` Eli Zaretskii @ 2016-12-02 16:10 ` Reuben Thomas 2016-12-02 16:16 ` Eli Zaretskii 0 siblings, 1 reply; 40+ messages in thread From: Reuben Thomas @ 2016-12-02 16:10 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 18716 [-- Attachment #1: Type: text/plain, Size: 1880 bytes --] On 2 December 2016 at 09:40, Eli Zaretskii <eliz@gnu.org> wrote: > > From: Reuben Thomas <rrt@sc3d.org> > > Date: Mon, 28 Nov 2016 21:32:03 +0000 > > Cc: Eli Zaretskii <eliz@gnu.org>, 18716@debbugs.gnu.org > > > > Thanks for the heads up, that's great news! It bothered me that there > was no easy way to do this previously. > > > > I updated my patch so that dired-omit-case-fold is now a three-valued > variable which defaults to 'filesystem, > > and a helper function that checks (filename-case-sensitive-p > dired-directory) when this value is used. > > > > I've added info and NEWS documentation for dired-omit-case-fold. > > Thanks, a few comments below. With those fixed, please push to > master. > Done; thanks for the review. > + Set to > > +@code{nil} to be always case-sensitive, and @code{t} to be always > > +case-sensitive. > > So which is it? ;-) > I had quite a lot of struggles with these! Well spotted. > Bonus points for avoiding passive tense altogether ("... allows > customization of case-sensitivity ..."). > Bonus points earned! > > +(defcustom dired-omit-case-fold 'filesystem > > + "Whether `dired-omit-mode' will use case-folding to match the > > +regexp of files to omit. When nil, always be case-sensitive; when > > The first line of a doc string should be a complete sentence. > OK, I fixed this one. > > +(defun dired-omit-case-fold-p (dir) > > + "Return t if, according to `dired-omit-case-fold', > > + `dired-omit-mode' should use case folding to interpret its > > + regexp in directory DIR." > > Likewise. > I'm a bit puzzled here: this is a complete sentence. I wondered whether you expected an "else" clause, so I added one: "…, or nil otherwise." -- http://rrt.sc3d.org [-- Attachment #2: Type: text/html, Size: 3761 bytes --] ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-12-02 16:10 ` Reuben Thomas @ 2016-12-02 16:16 ` Eli Zaretskii 2016-12-02 16:31 ` Reuben Thomas 0 siblings, 1 reply; 40+ messages in thread From: Eli Zaretskii @ 2016-12-02 16:16 UTC (permalink / raw) To: Reuben Thomas; +Cc: 18716 > From: Reuben Thomas <rrt@sc3d.org> > Date: Fri, 2 Dec 2016 16:10:01 +0000 > Cc: Ken Brown <kbrown@cornell.edu>, 18716@debbugs.gnu.org > > > +(defun dired-omit-case-fold-p (dir) > > + "Return t if, according to `dired-omit-case-fold', > > + `dired-omit-mode' should use case folding to interpret its > > + regexp in directory DIR." > > Likewise. > > I'm a bit puzzled here: this is a complete sentence. It is a complete sentence, but it takes more than one line. The first sentence should take one line, and the first line should be a complete sentence. Okay? ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: Patch for this bug 2016-12-02 16:16 ` Eli Zaretskii @ 2016-12-02 16:31 ` Reuben Thomas 0 siblings, 0 replies; 40+ messages in thread From: Reuben Thomas @ 2016-12-02 16:31 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 18716 [-- Attachment #1: Type: text/plain, Size: 812 bytes --] On 2 December 2016 at 16:16, Eli Zaretskii <eliz@gnu.org> wrote: > > From: Reuben Thomas <rrt@sc3d.org> > > Date: Fri, 2 Dec 2016 16:10:01 +0000 > > Cc: Ken Brown <kbrown@cornell.edu>, 18716@debbugs.gnu.org > > > > > +(defun dired-omit-case-fold-p (dir) > > > + "Return t if, according to `dired-omit-case-fold', > > > + `dired-omit-mode' should use case folding to interpret its > > > + regexp in directory DIR." > > > > Likewise. > > > > I'm a bit puzzled here: this is a complete sentence. > > It is a complete sentence, but it takes more than one line. The first > sentence should take one line, and the first line should be a complete > sentence. > > Okay? > Sorry, I missed "the first line" somehow. I'll install a fix for both docstrings. -- http://rrt.sc3d.org [-- Attachment #2: Type: text/html, Size: 1613 bytes --] ^ permalink raw reply [flat|nested] 40+ messages in thread
* bug#18716: 2014-10-14 14:50 bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB Reuben Thomas 2014-10-14 23:41 ` Stefan Monnier 2016-11-08 17:51 ` bug#18716: Patch for this bug Reuben Thomas @ 2016-12-03 0:22 ` Reuben Thomas 2 siblings, 0 replies; 40+ messages in thread From: Reuben Thomas @ 2016-12-03 0:22 UTC (permalink / raw) To: 18716-done [-- Attachment #1: Type: text/plain, Size: 1 bytes --] [-- Attachment #2: Type: text/html, Size: 84 bytes --] ^ permalink raw reply [flat|nested] 40+ messages in thread
end of thread, other threads:[~2016-12-03 0:22 UTC | newest] Thread overview: 40+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-10-14 14:50 bug#18716: 24.3; dired-omit-extensions's default value omits COPYING.LIB Reuben Thomas 2014-10-14 23:41 ` Stefan Monnier 2014-10-14 23:51 ` Reuben Thomas 2014-10-15 7:56 ` Andreas Schwab 2014-10-15 14:21 ` Stefan Monnier 2014-10-15 14:26 ` Reuben Thomas 2014-10-15 14:27 ` Reuben Thomas 2014-10-15 17:59 ` Stefan Monnier 2014-10-15 19:05 ` Reuben Thomas 2014-10-15 22:42 ` Stefan Monnier 2014-10-15 23:00 ` Reuben Thomas 2014-10-16 3:10 ` Stefan Monnier 2014-10-15 14:26 ` Andreas Schwab 2014-10-15 17:57 ` Stefan Monnier 2014-10-15 20:57 ` Andreas Schwab 2014-10-15 22:44 ` Stefan Monnier 2014-10-15 22:54 ` Glenn Morris 2014-10-16 3:06 ` Stefan Monnier 2014-10-16 7:13 ` Andreas Schwab 2014-10-16 13:15 ` Stefan Monnier 2014-10-16 2:01 ` Richard Stallman 2014-10-16 3:09 ` Stefan Monnier 2014-10-16 18:14 ` Richard Stallman 2014-10-16 20:17 ` Stefan Monnier 2016-11-08 17:51 ` bug#18716: Patch for this bug Reuben Thomas 2016-11-08 20:04 ` Eli Zaretskii 2016-11-08 22:16 ` Reuben Thomas 2016-11-09 19:36 ` Eli Zaretskii 2016-11-09 22:00 ` Reuben Thomas 2016-11-09 22:52 ` Drew Adams 2016-11-09 23:29 ` Reuben Thomas 2016-11-10 17:38 ` Eli Zaretskii 2016-11-26 17:54 ` Reuben Thomas 2016-11-26 18:29 ` Ken Brown 2016-11-28 21:32 ` Reuben Thomas 2016-12-02 9:40 ` Eli Zaretskii 2016-12-02 16:10 ` Reuben Thomas 2016-12-02 16:16 ` Eli Zaretskii 2016-12-02 16:31 ` Reuben Thomas 2016-12-03 0:22 ` bug#18716: Reuben Thomas
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).