From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Andreas Politz Newsgroups: gmane.emacs.bugs Subject: bug#29007: 25.3; [PATCH] Make filecache use extended completion Date: Thu, 26 Oct 2017 08:56:16 +0200 Message-ID: <87k1zi75yn.fsf@hochschule-trier.de> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: blaine.gmane.org 1509001048 897 195.159.176.226 (26 Oct 2017 06:57:28 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 26 Oct 2017 06:57:28 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) To: 29007@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Oct 26 08:57:24 2017 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e7c6F-0006ND-5t for geb-bug-gnu-emacs@m.gmane.org; Thu, 26 Oct 2017 08:57:07 +0200 Original-Received: from localhost ([::1]:51269 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e7c6M-0007mR-Dt for geb-bug-gnu-emacs@m.gmane.org; Thu, 26 Oct 2017 02:57:14 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:36104) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e7c6E-0007l4-EF for bug-gnu-emacs@gnu.org; Thu, 26 Oct 2017 02:57:09 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1e7c6A-0003x7-LA for bug-gnu-emacs@gnu.org; Thu, 26 Oct 2017 02:57:06 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:53476) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1e7c6A-0003x2-FO for bug-gnu-emacs@gnu.org; Thu, 26 Oct 2017 02:57:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1e7c6A-0004Pg-8x for bug-gnu-emacs@gnu.org; Thu, 26 Oct 2017 02:57:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Andreas Politz Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 26 Oct 2017 06:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 29007 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.150900100216934 (code B ref -1); Thu, 26 Oct 2017 06:57:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 26 Oct 2017 06:56:42 +0000 Original-Received: from localhost ([127.0.0.1]:33924 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e7c5p-0004P3-6b for submit@debbugs.gnu.org; Thu, 26 Oct 2017 02:56:42 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:45047) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e7c5m-0004Om-L1 for submit@debbugs.gnu.org; Thu, 26 Oct 2017 02:56:39 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1e7c5e-0003fO-HS for submit@debbugs.gnu.org; Thu, 26 Oct 2017 02:56:33 -0400 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:39637) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1e7c5e-0003fG-Bw for submit@debbugs.gnu.org; Thu, 26 Oct 2017 02:56:30 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:36010) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1e7c5a-0007YF-UQ for bug-gnu-emacs@gnu.org; Thu, 26 Oct 2017 02:56:29 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1e7c5X-0003cd-P4 for bug-gnu-emacs@gnu.org; Thu, 26 Oct 2017 02:56:27 -0400 Original-Received: from gateway-a.fh-trier.de ([143.93.54.181]:48348) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1e7c5X-0003Zf-4L for bug-gnu-emacs@gnu.org; Thu, 26 Oct 2017 02:56:23 -0400 X-Virus-Scanned: by Amavisd-new + Sophos + ClamAV [Rechenzentrum Hochschule Trier (RZ/HT)] Original-Received: from localhost (ip5886048c.dynamic.kabel-deutschland.de [88.134.4.140]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: politza) by gateway-a.fh-trier.de (Postfix) with ESMTPSA id 8D4B417B0263 for ; Thu, 26 Oct 2017 08:56:17 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha1; c=simple/simple; d=hochschule-trier.de; s=default; t=1509000978; bh=qEU5hpC57DpLyJbj3JzqWoU/JfQ=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type; b=rMhxd8nsqmfSMlODd6/7K8rghkZTgUW3ao2rlF/G/nUXZp7E4/Kx9Q7sWEMvmSDf+ oRB7x7YcvAEXuRQJ2WPggPp6sHINkZYvknKUOkBnjbGxND6Hb8Vl1USZgxoOAjLdoK wwmGScwyRZw1pPbP57wppoLyZV++IEA/tz+yFfkk= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:138995 Archived-At: --=-=-= Content-Type: text/plain As it is, file-cache-minibuffer-complete uses prefix completion via {try,all}-completion only, which makes it less convenient. The patch below adds calls to completion-{try,all}-completion. --=-=-= Content-Type: text/x-diff Content-Disposition: inline Content-Description: file-cache-minibuffer-complete diff --git a/lisp/filecache.el b/lisp/filecache.el index 38a434b11b..aac4f488cd 100644 --- a/lisp/filecache.el +++ b/lisp/filecache.el @@ -566,68 +566,67 @@ file-cache-minibuffer-complete the name is considered already unique; only the second substitution \(directories) is done." (interactive "P") - (let* - ( - (completion-ignore-case file-cache-completion-ignore-case) - (case-fold-search file-cache-case-fold-search) - (string (file-name-nondirectory (minibuffer-contents))) - (completion-string (try-completion string file-cache-alist)) - (completion-list) - (len) - (file-cache-string)) + (let* ((completion-ignore-case file-cache-completion-ignore-case) + (case-fold-search file-cache-case-fold-search) + (string (file-name-nondirectory (minibuffer-contents))) + (completion (completion-try-completion + string file-cache-alist nil 0))) (cond ;; If it's the only match, replace the original contents - ((or arg (eq completion-string t)) - (setq file-cache-string (file-cache-file-name string)) - (if (string= file-cache-string (minibuffer-contents)) - (minibuffer-message file-cache-sole-match-message) - (delete-minibuffer-contents) - (insert file-cache-string) - (if file-cache-multiple-directory-message - (minibuffer-message file-cache-multiple-directory-message)))) + ((or arg (eq completion t)) + (let ((file-name (file-cache-file-name string))) + (if (string= file-name (minibuffer-contents)) + (minibuffer-message file-cache-sole-match-message) + (delete-minibuffer-contents) + (insert file-name) + (if file-cache-multiple-directory-message + (minibuffer-message file-cache-multiple-directory-message))))) ;; If it's the longest match, insert it - ((stringp completion-string) - ;; If we've already inserted a unique string, see if the user - ;; wants to use that one - (if (and (string= string completion-string) - (assoc-string string file-cache-alist - file-cache-ignore-case)) - (if (and (eq last-command this-command) - (string= file-cache-last-completion completion-string)) - (progn - (delete-minibuffer-contents) - (insert (file-cache-file-name completion-string)) - (setq file-cache-last-completion nil)) - (minibuffer-message file-cache-non-unique-message) - (setq file-cache-last-completion string)) - (setq file-cache-last-completion string) - (setq completion-list (all-completions string file-cache-alist) - len (length completion-list)) - (if (> len 1) - (progn - (goto-char (point-max)) - (insert - (substring completion-string (length string))) - ;; Add our own setup function to the Completions Buffer - (let ((completion-setup-hook - (append completion-setup-hook - (list 'file-cache-completion-setup-function)))) - (with-output-to-temp-buffer file-cache-completions-buffer - (display-completion-list - (completion-hilit-commonality completion-list - (length string)))))) - (setq file-cache-string (file-cache-file-name completion-string)) - (if (string= file-cache-string (minibuffer-contents)) - (minibuffer-message file-cache-sole-match-message) - (delete-minibuffer-contents) - (insert file-cache-string) - (if file-cache-multiple-directory-message - (minibuffer-message file-cache-multiple-directory-message))) - ))) + ((consp completion) + (let ((newstring (car completion)) + (newpoint (cdr completion))) + ;; If we've already inserted a unique string, see if the user + ;; wants to use that one + (if (and (string= string newstring) + (assoc-string string file-cache-alist + file-cache-ignore-case)) + (if (and (eq last-command this-command) + (string= file-cache-last-completion newstring)) + (progn + (delete-minibuffer-contents) + (insert (file-cache-file-name newstring)) + (setq file-cache-last-completion nil)) + (minibuffer-message file-cache-non-unique-message) + (setq file-cache-last-completion string)) + (setq file-cache-last-completion string) + (let* ((completion-list (completion-all-completions + newstring file-cache-alist nil newpoint)) + (base-size (cdr (last completion-list)))) + (when base-size + (setcdr (last completion-list) nil)) + (if (> (length completion-list) 1) + (progn + (delete-region (- (point-max) (length string)) (point-max)) + (save-excursion (insert newstring)) + (forward-char newpoint) + ;; Add our own setup function to the Completions Buffer + (let ((completion-setup-hook + (append completion-setup-hook + (list 'file-cache-completion-setup-function)))) + (with-output-to-temp-buffer file-cache-completions-buffer + (display-completion-list + (completion-hilit-commonality completion-list newpoint))))) + (let ((file-name (file-cache-file-name newstring))) + (if (string= file-name (minibuffer-contents)) + (minibuffer-message file-cache-sole-match-message) + (delete-minibuffer-contents) + (insert file-name) + (if file-cache-multiple-directory-message + (minibuffer-message file-cache-multiple-directory-message))))))))) ;; No match - ((eq completion-string nil) + ((eq completion nil) (minibuffer-message file-cache-no-match-message))))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; --=-=-= Content-Type: text/plain -ap In GNU Emacs 25.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.22.19) of 2017-09-16 built on juergen Windowing system distributor 'The X.Org Foundation', version 11.0.11905000 System Description: Arch Linux Configured using: 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib --localstatedir=/var --with-x-toolkit=gtk3 --with-xft --with-modules 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt' CPPFLAGS=-D_FORTIFY_SOURCE=2 LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 MODULES Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: Org Minor modes in effect: shell-dirtrack-mode: t TeX-PDF-mode: t pdf-occur-global-minor-mode: t sane/sync-mail-mode: t override-global-mode: t savehist-mode: t diff-auto-refine-mode: t tooltip-mode: t global-eldoc-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 auto-fill-function: org-auto-fill-function transient-mark-mode: t Recent messages: Wrote /home/politza/.emacs.d/etc/init.org Mark set Press C-c C-c when you are done editing. Enter a change comment. Type C-c C-c when done Checking in /home/politza/.emacs.d/etc/init.org...done Mark set Saved text until "message file-cache-no-match-message)))))" Finding changes in /home/politza/.emacs.d/etc/init.org... No changes between working revision and workfile Making completion list... Load-path shadows: /home/politza/.emacs.d/usr/elpa/org-20170814/ob-latex hides /usr/share/emacs/25.3/lisp/org/ob-latex /home/politza/.emacs.d/usr/elpa/org-20170814/org-mobile hides /usr/share/emacs/25.3/lisp/org/org-mobile /home/politza/.emacs.d/usr/elpa/org-20170814/ob-screen hides /usr/share/emacs/25.3/lisp/org/ob-screen /home/politza/.emacs.d/usr/elpa/org-20170814/org-plot hides /usr/share/emacs/25.3/lisp/org/org-plot /home/politza/.emacs.d/usr/elpa/org-20170814/org-capture hides /usr/share/emacs/25.3/lisp/org/org-capture /home/politza/.emacs.d/usr/elpa/org-20170814/ob-org hides /usr/share/emacs/25.3/lisp/org/ob-org /home/politza/.emacs.d/usr/elpa/org-20170814/ox-ascii hides /usr/share/emacs/25.3/lisp/org/ox-ascii /home/politza/.emacs.d/usr/elpa/org-20170814/org-agenda hides /usr/share/emacs/25.3/lisp/org/org-agenda /home/politza/.emacs.d/usr/elpa/org-20170814/org-protocol hides /usr/share/emacs/25.3/lisp/org/org-protocol /home/politza/.emacs.d/usr/elpa/org-20170814/ox-icalendar hides /usr/share/emacs/25.3/lisp/org/ox-icalendar /home/politza/.emacs.d/usr/elpa/org-20170814/org-gnus hides /usr/share/emacs/25.3/lisp/org/org-gnus /home/politza/.emacs.d/usr/elpa/org-20170814/ob-io hides /usr/share/emacs/25.3/lisp/org/ob-io /home/politza/.emacs.d/usr/elpa/org-20170814/ob-comint hides /usr/share/emacs/25.3/lisp/org/ob-comint /home/politza/.emacs.d/usr/elpa/org-20170814/ob-matlab hides /usr/share/emacs/25.3/lisp/org/ob-matlab /home/politza/.emacs.d/usr/elpa/org-20170814/org-compat hides /usr/share/emacs/25.3/lisp/org/org-compat /home/politza/.emacs.d/usr/elpa/org-20170814/org-src hides /usr/share/emacs/25.3/lisp/org/org-src /home/politza/.emacs.d/usr/elpa/org-20170814/ob-ditaa hides /usr/share/emacs/25.3/lisp/org/ob-ditaa /home/politza/.emacs.d/usr/elpa/org-20170814/org-bibtex hides /usr/share/emacs/25.3/lisp/org/org-bibtex /home/politza/.emacs.d/usr/elpa/org-20170814/org-feed hides /usr/share/emacs/25.3/lisp/org/org-feed /home/politza/.emacs.d/usr/elpa/org-20170814/org-bbdb hides /usr/share/emacs/25.3/lisp/org/org-bbdb /home/politza/.emacs.d/usr/elpa/org-20170814/ox-texinfo hides /usr/share/emacs/25.3/lisp/org/ox-texinfo /home/politza/.emacs.d/usr/elpa/org-20170814/org-entities hides /usr/share/emacs/25.3/lisp/org/org-entities /home/politza/.emacs.d/usr/elpa/org-20170814/ob-css hides /usr/share/emacs/25.3/lisp/org/ob-css /home/politza/.emacs.d/usr/elpa/org-20170814/org-macro hides /usr/share/emacs/25.3/lisp/org/org-macro /home/politza/.emacs.d/usr/elpa/org-20170814/org-crypt hides /usr/share/emacs/25.3/lisp/org/org-crypt /home/politza/.emacs.d/usr/elpa/org-20170814/ob-core hides /usr/share/emacs/25.3/lisp/org/ob-core /home/politza/.emacs.d/usr/elpa/org-20170814/ox-latex hides /usr/share/emacs/25.3/lisp/org/ox-latex /home/politza/.emacs.d/usr/elpa/org-20170814/ob-sass hides /usr/share/emacs/25.3/lisp/org/ob-sass /home/politza/.emacs.d/usr/elpa/org-20170814/org-mouse hides /usr/share/emacs/25.3/lisp/org/org-mouse /home/politza/.emacs.d/usr/elpa/org-20170814/org-info hides /usr/share/emacs/25.3/lisp/org/org-info /home/politza/.emacs.d/usr/elpa/org-20170814/ob-shen hides /usr/share/emacs/25.3/lisp/org/ob-shen /home/politza/.emacs.d/usr/elpa/org-20170814/ob-sql hides /usr/share/emacs/25.3/lisp/org/ob-sql /home/politza/.emacs.d/usr/elpa/org-20170814/ox-html hides /usr/share/emacs/25.3/lisp/org/ox-html /home/politza/.emacs.d/usr/elpa/org-20170814/ob-makefile hides /usr/share/emacs/25.3/lisp/org/ob-makefile /home/politza/.emacs.d/usr/elpa/org-20170814/org-colview hides /usr/share/emacs/25.3/lisp/org/org-colview /home/politza/.emacs.d/usr/elpa/org-20170814/ob-plantuml hides /usr/share/emacs/25.3/lisp/org/ob-plantuml /home/politza/.emacs.d/usr/elpa/org-20170814/ob-scheme hides /usr/share/emacs/25.3/lisp/org/ob-scheme /home/politza/.emacs.d/usr/elpa/org-20170814/ob-ref hides /usr/share/emacs/25.3/lisp/org/ob-ref /home/politza/.emacs.d/usr/elpa/org-20170814/ob-picolisp hides /usr/share/emacs/25.3/lisp/org/ob-picolisp /home/politza/.emacs.d/usr/elpa/org-20170814/ob hides /usr/share/emacs/25.3/lisp/org/ob /home/politza/.emacs.d/usr/elpa/org-20170814/ob-js hides /usr/share/emacs/25.3/lisp/org/ob-js /home/politza/.emacs.d/usr/elpa/org-20170814/ob-octave hides /usr/share/emacs/25.3/lisp/org/ob-octave /home/politza/.emacs.d/usr/elpa/org-20170814/ob-calc hides /usr/share/emacs/25.3/lisp/org/ob-calc /home/politza/.emacs.d/usr/elpa/org-20170814/ob-eval hides /usr/share/emacs/25.3/lisp/org/ob-eval /home/politza/.emacs.d/usr/elpa/org-20170814/org-indent hides /usr/share/emacs/25.3/lisp/org/org-indent /home/politza/.emacs.d/usr/elpa/org-20170814/org-eshell hides /usr/share/emacs/25.3/lisp/org/org-eshell /home/politza/.emacs.d/usr/elpa/org-20170814/ob-mscgen hides /usr/share/emacs/25.3/lisp/org/ob-mscgen /home/politza/.emacs.d/usr/elpa/org-20170814/ob-C hides /usr/share/emacs/25.3/lisp/org/ob-C /home/politza/.emacs.d/usr/elpa/org-20170814/org-list hides /usr/share/emacs/25.3/lisp/org/org-list /home/politza/.emacs.d/usr/elpa/org-20170814/ob-lisp hides /usr/share/emacs/25.3/lisp/org/ob-lisp /home/politza/.emacs.d/usr/elpa/org-20170814/ox-publish hides /usr/share/emacs/25.3/lisp/org/ox-publish /home/politza/.emacs.d/usr/elpa/org-20170814/org-docview hides /usr/share/emacs/25.3/lisp/org/org-docview /home/politza/.emacs.d/usr/elpa/org-20170814/ob-keys hides /usr/share/emacs/25.3/lisp/org/ob-keys /home/politza/.emacs.d/usr/elpa/org-20170814/ox-org hides /usr/share/emacs/25.3/lisp/org/ox-org /home/politza/.emacs.d/usr/elpa/org-20170814/ob-asymptote hides /usr/share/emacs/25.3/lisp/org/ob-asymptote /home/politza/.emacs.d/usr/elpa/org-20170814/ob-ocaml hides /usr/share/emacs/25.3/lisp/org/ob-ocaml /home/politza/.emacs.d/usr/elpa/org-20170814/org-loaddefs hides /usr/share/emacs/25.3/lisp/org/org-loaddefs /home/politza/.emacs.d/usr/elpa/org-20170814/org-habit hides /usr/share/emacs/25.3/lisp/org/org-habit /home/politza/.emacs.d/usr/elpa/org-20170814/org-clock hides /usr/share/emacs/25.3/lisp/org/org-clock /home/politza/.emacs.d/usr/elpa/org-20170814/org-pcomplete hides /usr/share/emacs/25.3/lisp/org/org-pcomplete /home/politza/.emacs.d/usr/elpa/org-20170814/ob-lilypond hides /usr/share/emacs/25.3/lisp/org/ob-lilypond /home/politza/.emacs.d/usr/elpa/org-20170814/ob-tangle hides /usr/share/emacs/25.3/lisp/org/ob-tangle /home/politza/.emacs.d/usr/elpa/org-20170814/ob-dot hides /usr/share/emacs/25.3/lisp/org/ob-dot /home/politza/.emacs.d/usr/elpa/org-20170814/ox hides /usr/share/emacs/25.3/lisp/org/ox /home/politza/.emacs.d/usr/elpa/org-20170814/ob-python hides /usr/share/emacs/25.3/lisp/org/ob-python /home/politza/.emacs.d/usr/elpa/org-20170814/org-macs hides /usr/share/emacs/25.3/lisp/org/org-macs /home/politza/.emacs.d/usr/elpa/org-20170814/org-id hides /usr/share/emacs/25.3/lisp/org/org-id /home/politza/.emacs.d/usr/elpa/org-20170814/ob-clojure hides /usr/share/emacs/25.3/lisp/org/ob-clojure /home/politza/.emacs.d/usr/elpa/org-20170814/ob-perl hides /usr/share/emacs/25.3/lisp/org/ob-perl /home/politza/.emacs.d/usr/elpa/org-20170814/org-w3m hides /usr/share/emacs/25.3/lisp/org/org-w3m /home/politza/.emacs.d/usr/elpa/org-20170814/ox-md hides /usr/share/emacs/25.3/lisp/org/ox-md /home/politza/.emacs.d/usr/elpa/org-20170814/org-mhe hides /usr/share/emacs/25.3/lisp/org/org-mhe /home/politza/.emacs.d/usr/elpa/org-20170814/org-attach hides /usr/share/emacs/25.3/lisp/org/org-attach /home/politza/.emacs.d/usr/elpa/org-20170814/org-datetree hides /usr/share/emacs/25.3/lisp/org/org-datetree /home/politza/.emacs.d/usr/elpa/org-20170814/ob-ledger hides /usr/share/emacs/25.3/lisp/org/ob-ledger /home/politza/.emacs.d/usr/elpa/org-20170814/ob-lob hides /usr/share/emacs/25.3/lisp/org/ob-lob /home/politza/.emacs.d/usr/elpa/org-20170814/org-table hides /usr/share/emacs/25.3/lisp/org/org-table /home/politza/.emacs.d/usr/elpa/org-20170814/org-archive hides /usr/share/emacs/25.3/lisp/org/org-archive /home/politza/.emacs.d/usr/elpa/org-20170814/org-version hides /usr/share/emacs/25.3/lisp/org/org-version /home/politza/.emacs.d/usr/elpa/org-20170814/ob-awk hides /usr/share/emacs/25.3/lisp/org/ob-awk /home/politza/.emacs.d/usr/elpa/org-20170814/ox-odt hides /usr/share/emacs/25.3/lisp/org/ox-odt /home/politza/.emacs.d/usr/elpa/org-20170814/ob-maxima hides /usr/share/emacs/25.3/lisp/org/ob-maxima /home/politza/.emacs.d/usr/elpa/org-20170814/org-footnote hides /usr/share/emacs/25.3/lisp/org/org-footnote /home/politza/.emacs.d/usr/elpa/org-20170814/org-irc hides /usr/share/emacs/25.3/lisp/org/org-irc /home/politza/.emacs.d/usr/elpa/org-20170814/org-ctags hides /usr/share/emacs/25.3/lisp/org/org-ctags /home/politza/.emacs.d/usr/elpa/org-20170814/org-install hides /usr/share/emacs/25.3/lisp/org/org-install /home/politza/.emacs.d/usr/elpa/org-20170814/org hides /usr/share/emacs/25.3/lisp/org/org /home/politza/.emacs.d/usr/elpa/org-20170814/ob-java hides /usr/share/emacs/25.3/lisp/org/ob-java /home/politza/.emacs.d/usr/elpa/org-20170814/ob-emacs-lisp hides /usr/share/emacs/25.3/lisp/org/ob-emacs-lisp /home/politza/.emacs.d/usr/elpa/org-20170814/ox-man hides /usr/share/emacs/25.3/lisp/org/ox-man /home/politza/.emacs.d/usr/elpa/org-20170814/ob-scala hides /usr/share/emacs/25.3/lisp/org/ob-scala /home/politza/.emacs.d/usr/elpa/org-20170814/ox-beamer hides /usr/share/emacs/25.3/lisp/org/ox-beamer /home/politza/.emacs.d/usr/elpa/org-20170814/ob-sqlite hides /usr/share/emacs/25.3/lisp/org/ob-sqlite /home/politza/.emacs.d/usr/elpa/org-20170814/ob-exp hides /usr/share/emacs/25.3/lisp/org/ob-exp /home/politza/.emacs.d/usr/elpa/org-20170814/ob-haskell hides /usr/share/emacs/25.3/lisp/org/ob-haskell /home/politza/.emacs.d/usr/elpa/org-20170814/ob-gnuplot hides /usr/share/emacs/25.3/lisp/org/ob-gnuplot /home/politza/.emacs.d/usr/elpa/org-20170814/ob-ruby hides /usr/share/emacs/25.3/lisp/org/ob-ruby /home/politza/.emacs.d/usr/elpa/org-20170814/org-inlinetask hides /usr/share/emacs/25.3/lisp/org/org-inlinetask /home/politza/.emacs.d/usr/elpa/org-20170814/org-timer hides /usr/share/emacs/25.3/lisp/org/org-timer /home/politza/.emacs.d/usr/elpa/org-20170814/ob-R hides /usr/share/emacs/25.3/lisp/org/ob-R /home/politza/.emacs.d/usr/elpa/org-20170814/ob-table hides /usr/share/emacs/25.3/lisp/org/ob-table /home/politza/.emacs.d/usr/elpa/org-20170814/org-rmail hides /usr/share/emacs/25.3/lisp/org/org-rmail /home/politza/.emacs.d/usr/elpa/org-20170814/org-element hides /usr/share/emacs/25.3/lisp/org/org-element /home/politza/.emacs.d/usr/elpa/org-20170814/ob-fortran hides /usr/share/emacs/25.3/lisp/org/ob-fortran /home/politza/.emacs.d/usr/elpa/org-20170814/org-faces hides /usr/share/emacs/25.3/lisp/org/org-faces Features: (shadow emacsbug sendmail ispell log-edit pcvs-util add-log edebug debug dabbrev apropos nnir url-util url-parse url-vars shr-color color shr dom browse-url preview prv-emacs tex-buf font-latex latex tex-ispell tex-style tex-mode latexenc ox-odt rng-loc rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-latex ox-icalendar ox-html table ox-ascii ox-publish ox flow-fill sort smiley gnus-cite mm-archive mail-extr gnus-async gnus-bcklg qp gnus-ml disp-table nndraft nnmh utf-7 network-stream nsm starttls nnfolder nnnil gnus-agent gnus-srvr gnus-score score-mode nnvirtual gnus-msg gnus-art mm-uu mml2015 mm-view mml-smime smime dig mailcap nntp gnus-cache gnus-sum gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source tls gnutls utf7 netrc nnoo parse-time gnus-spec gnus-int gnus-range message idna rfc822 mml mml-sec epg mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev gmm-utils mailheader gnus-win gnus gnus-ems nnheader mail-utils org-table pdf-sync pdf-annot pdf-outline pdf-links pdf-history tabify eieio-opt speedbar sb-image ezimage dframe pulse dired-aux smerge-mode whitespace vc vc-dispatcher misearch multi-isearch company-oddmuse company-keywords company-etags company-gtags company-dabbrev-code company-dabbrev company-files company-capf company-cmake company-xcode company-clang company-semantic company-eclim company-template company-css company-nxml company-bbdb racer thingatpt f s etags xref project dash view tramp-cmds tramp-cache tramp-sh tramp tramp-compat auth-source mm-util help-fns mail-prsvr tramp-loaddefs trampver ucs-normalize shell filecache company rust-mode json map gud ediff-merg ediff-wind ediff-diff ediff-mult ediff-help ediff-init ediff-util ediff tex dbus xml crm pdf-occur ibuf-ext ibuffer tablist tablist-filter semantic/wisent/comp semantic/wisent semantic/wisent/wisent semantic/util-modes semantic/util semantic semantic/tag semantic/lex semantic/fw eieio eieio-core cl-macs mode-local cedet pdf-isearch let-alist pdf-misc imenu pdf-tools cus-edit cus-start cus-load wid-edit pdf-view password-cache bookmark pp pdf-cache pdf-info tq pdf-util restart-emacs desktop frameset tsdh-dark-theme completion-dyninit edmacro kmacro man use-package diminish bind-key rx server savehist vc-git diff-mode org-rmail org-mhe org-irc org-info org-gnus gnus-util org-docview doc-view subr-x jka-compr image-mode dired org-bibtex bibtex org-bbdb org-w3m org-element cl-seq avl-tree org advice 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 compile comint ansi-color ring finder-inf tex-site info package epg-config seq byte-opt gv bytecomp byte-compile cl-extra help-mode easymenu cconv cl-loaddefs pcase cl-lib time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese charscript case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer cl-preloaded 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 dbusbind inotify dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 644433 74788) (symbols 48 57971 0) (miscs 40 1356 1667) (strings 32 158027 13031) (string-bytes 1 5412591) (vectors 16 86481) (vector-slots 8 1967783 42765) (floats 8 1471 869) (intervals 56 8047 954) (buffers 976 95)) --=-=-=--