diff --git a/.emacs b/.emacs new file mode 100644 index 0000000..336b063 --- /dev/null +++ b/.emacs @@ -0,0 +1,77 @@ +;; load emacs 24's package system. Add MELPA repository. + +;; Added by Package.el. This must come before configurations of +;; installed packages. Don't delete this line. If you don't want it, +;; just comment it out by adding a semicolon to the start of the line. +;; You may delete these explanatory comments. +(package-initialize) + +(when (>= emacs-major-version 24) + (require 'package) + (add-to-list + 'package-archives + ;; '("melpa" . "http://stable.melpa.org/packages/") ; many packages won't show if using stable + '("melpa" . "http://melpa.milkbox.net/packages/") + '("elpy" . "http://jorgenschaefer.github.io/packages/") + )) +(custom-set-variables + ;; custom-set-variables was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(custom-safe-themes + (quote + ("66881e95c0eda61d34aa7f08ebacf03319d37fe202d68ecf6a1dbfd49d664bc3" default))) + '(inhibit-startup-screen t) + '(package-selected-packages (quote (elpy forest-blue-theme))) + '(pyvenv-activate "~/.virtualenv/default")) + + ;; https://github.com/Boruch-Baum +(defun my-copy-to-xclipboard(arg) + (interactive "P") + (cond + ((not (use-region-p)) + (message "Nothing to yank to X-clipboard")) + ((and (not (display-graphic-p)) + (/= 0 (shell-command-on-region + (region-beginning) (region-end) "xsel -i -b"))) + (error "Is program `xsel' installed?")) + (t + (when (display-graphic-p) + (call-interactively 'clipboard-kill-ring-save)) + (message "Yanked region to X-clipboard") + (when arg + (kill-region (region-beginning) (region-end))) + (deactivate-mark)))) + +(defun my-cut-to-xclipboard() + (interactive) + (my-copy-to-xclipboard t)) + +(defun my-paste-from-xclipboard() + "Uses shell command `xsel -o' to paste from x-clipboard. With + one prefix arg, pastes from X-PRIMARY, and with two prefix args, + pastes from X-SECONDARY." + (interactive) + (if (display-graphic-p) + (clipboard-yank) + (let* + ((opt (prefix-numeric-value current-prefix-arg)) + (opt (cond + ((= 1 opt) "b") + ((= 4 opt) "p") + ((= 16 opt) "s")))) + (insert (shell-command-to-string (concat "xsel -o -" opt)))))) + +(global-set-key (kbd "C-c C-w") 'my-cut-to-xclipboard) +(global-set-key (kbd "C-c M-w") 'my-copy-to-xclipboard) +(global-set-key (kbd "C-c C-y") 'my-paste-from-xclipboard) + +(load-theme 'forest-blue t) +(elpy-enable) +(custom-set-faces + ;; custom-set-faces was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + ) diff --git a/.emacs.d/elpa/archives/gnu/archive-contents b/.emacs.d/elpa/archives/gnu/archive-contents new file mode 100644 index 0000000..58a3efc --- /dev/null +++ b/.emacs.d/elpa/archives/gnu/archive-contents @@ -0,0 +1,1200 @@ +(1 + (ace-window . + [(0 9 0) + ((avy + (0 2 0))) + "Quickly switch windows." single + ((:url . "https://github.com/abo-abo/ace-window") + (:keywords "window" "location"))]) + (ack . + [(1 5) + nil "interface to ack-like tools" tar + ((:keywords "tools" "processes" "convenience") + (:url . "https://github.com/leoliu/ack-el"))]) + (ada-mode . + [(5 3 1) + ((wisi + (1 1 6)) + (cl-lib + (0 4)) + (emacs + (24 3))) + "major-mode for editing Ada sources" tar + ((:keywords "languages" "ada") + (:url . "http://www.nongnu.org/ada-mode/"))]) + (ada-ref-man . + [(2012 3) + nil "Ada Reference Manual 2012" tar + ((:keywords "languages" "ada") + (:url . "http://stephe-leake.org/ada/arm.html"))]) + (adaptive-wrap . + [(0 5 1) + nil "Smart line-wrapping with wrap-prefix" single + ((:url . "http://elpa.gnu.org/packages/adaptive-wrap.html") + (:keywords))]) + (adjust-parens . + [(3 0) + nil "Indent and dedent Lisp code, automatically adjust close parens" tar + ((:url . "http://elpa.gnu.org/packages/adjust-parens.html"))]) + (aggressive-indent . + [(1 8 3) + ((emacs + (24 1)) + (cl-lib + (0 5))) + "Minor mode to aggressively keep your code always indented" single + ((:url . "https://github.com/Malabarba/aggressive-indent-mode") + (:keywords "indent" "lisp" "maint" "tools"))]) + (ahungry-theme . + [(1 8 0) + ((emacs + (24))) + "Ahungry color theme for Emacs. Make sure to (load-theme 'ahungry)." tar + ((:keywords "ahungry" "palette" "color" "theme" "emacs" "color-theme" "deftheme") + (:url . "https://github.com/ahungry/color-theme-ahungry"))]) + (all . + [(1 0) + nil "Edit all lines matching a given regexp" single + ((:url . "http://elpa.gnu.org/packages/all.html") + (:keywords "matching"))]) + (ampc . + [(0 2) + nil "Asynchronous Music Player Controller" single + ((:url . "http://elpa.gnu.org/packages/ampc.html") + (:keywords "ampc" "mpc" "mpd"))]) + (arbitools . + [(0 71) + ((cl-lib + (0 5))) + "Package for chess tournaments administration" single + ((:url . "http://elpa.gnu.org/packages/arbitools.html") + (:keywords))]) + (ascii-art-to-unicode . + [(1 11) + nil "a small artist adjunct" single + ((:url . "http://www.gnuvola.org/software/aa2u/") + (:keywords "ascii" "unicode" "box-drawing"))]) + (async . + [(1 9 2) + nil "Asynchronous processing in Emacs" tar + ((:keywords "async") + (:url . "http://elpa.gnu.org/packages/async.html"))]) + (auctex . + [(11 92 0) + nil "Integrated environment for *TeX*" tar + ((:url . "http://www.gnu.org/software/auctex/"))]) + (aumix-mode . + [(7) + nil "run the aumix program in a buffer" single + ((:url . "http://user42.tuxfamily.org/aumix-mode/index.html") + (:keywords "multimedia" "mixer" "aumix"))]) + (auto-correct . + [(1 1 3) + nil "Remembers and automatically fixes past corrections" single + ((:url . "http://elpa.gnu.org/packages/auto-correct.html") + (:keywords "editing"))]) + (auto-overlays . + [(0 10 9) + nil "Automatic regexp-delimited overlays" tar + ((:keywords "extensions") + (:url . "http://www.dr-qubit.org/emacs.php"))]) + (avy . + [(0 4 0) + ((emacs + (24 1)) + (cl-lib + (0 5))) + "tree-based completion" tar + ((:keywords "point" "location") + (:url . "https://github.com/abo-abo/avy"))]) + (beacon . + [(1 3 3) + ((seq + (2 14))) + "Highlight the cursor whenever the window scrolls" single + ((:url . "https://github.com/Malabarba/beacon") + (:keywords "convenience"))]) + (bug-hunter . + [(1 3 1) + ((seq + (1 3)) + (cl-lib + (0 5))) + "Hunt down errors by bisecting elisp files" single + ((:url . "https://github.com/Malabarba/elisp-bug-hunter") + (:keywords "lisp"))]) + (caps-lock . + [(1 0) + nil "Caps-lock as a minor mode" single + ((:url . "http://elpa.gnu.org/packages/caps-lock.html") + (:keywords))]) + (captain . + [(1 0 3) + nil "CAPiTalization is Automatic IN emacs" single + ((:url . "http://elpa.gnu.org/packages/captain.html") + (:keywords "editing"))]) + (chess . + [(2 0 4) + ((cl-lib + (0 5))) + "Play chess in GNU Emacs" tar + ((:keywords "games") + (:url . "http://elpa.gnu.org/packages/chess.html"))]) + (cl-generic . + [(0 3) + nil "Forward cl-generic compatibility for Emacs<25" single + ((:url . "http://elpa.gnu.org/packages/cl-generic.html") + (:keywords))]) + (cl-lib . + [(0 6 1) + nil "Properly prefixed CL functions and macros" single + ((:url . "http://elpa.gnu.org/packages/cl-lib.html") + (:keywords))]) + (cl-print . + [(1 0) + ((emacs + (25))) + "CL-style generic printing" single + ((:url . "http://elpa.gnu.org/packages/cl-print.html") + (:keywords))]) + (cobol-mode . + [(1 0 0) + ((cl-lib + (0 5))) + "Mode for editing COBOL code" single + ((:url . "http://elpa.gnu.org/packages/cobol-mode.html") + (:keywords "languages"))]) + (coffee-mode . + [(0 4 1 1) + nil "Major mode for CoffeeScript files" single + ((:url . "http://github.com/defunkt/coffee-mode") + (:keywords "coffeescript" "major" "mode"))]) + (compact-docstrings . + [(0 1) + nil "Shrink blank lines in docstrings and doc comments" single + ((:url . "https://github.com/cpitclaudel/compact-docstrings") + (:keywords "convenience" "faces" "lisp" "maint" "c"))]) + (company . + [(0 9 4) + ((emacs + (24 3))) + "Modular text completion framework" tar + ((:keywords "abbrev" "convenience" "matching") + (:url . "http://company-mode.github.io/"))]) + (company-ebdb . + [(1) + ((company + (0 9 4)) + (ebdb + (0 2))) + "company-mode completion backend for EBDB in message-mode" single + ((:url . "http://elpa.gnu.org/packages/company-ebdb.html") + (:keywords))]) + (company-math . + [(1 1) + ((company + (0 8 0)) + (math-symbol-lists + (1 0))) + "Completion backends for unicode math symbols and latex tags" tar + ((:keywords "unicode" "symbols" "completion") + (:url . "https://github.com/vspinu/company-math"))]) + (company-statistics . + [(0 2 3) + ((emacs + (24 3)) + (company + (0 8 5))) + "Sort candidates using completion history" tar + ((:keywords "abbrev" "convenience" "matching") + (:url . "https://github.com/company-mode/company-statistics"))]) + (context-coloring . + [(8 1 0) + ((emacs + (24 3))) + "Highlight by scope" tar + ((:keywords "convenience" "faces" "tools") + (:url . "https://github.com/jacksonrayhamilton/context-coloring"))]) + (counsel-ebdb . + [(1) + ((ivy + (0 8 0)) + (ebdb + (0 2))) + "Counsel integration for EBDB" single + ((:url . "http://elpa.gnu.org/packages/counsel-ebdb.html") + (:keywords))]) + (crisp . + [(1 3 4) + nil "CRiSP/Brief Emacs emulator" single + ((:url . "http://elpa.gnu.org/packages/crisp.html") + (:keywords "emulations" "brief" "crisp"))]) + (csv-mode . + [(1 7) + nil "Major mode for editing comma/char separated values" single + ((:url . "http://elpa.gnu.org/packages/csv-mode.html") + (:keywords "convenience"))]) + (cycle-quotes . + [(0 1) + nil "Cycle between quote styles" tar + ((:keywords "convenience") + (:url . "http://elpa.gnu.org/packages/cycle-quotes.html"))]) + (darkroom . + [(0 1) + ((cl-lib + (0 5))) + "Remove visual distractions and focus on writing" single + ((:url . "http://elpa.gnu.org/packages/darkroom.html") + (:keywords "convenience" "emulations"))]) + (dash . + [(2 12 0) + nil "A modern list library for Emacs" tar + ((:keywords "lists") + (:url . "http://elpa.gnu.org/packages/dash.html"))]) + (dbus-codegen . + [(0 1) + ((cl-lib + (0 5))) + "Lisp code generation for D-Bus." single + ((:url . "http://elpa.gnu.org/packages/dbus-codegen.html") + (:keywords "comm" "dbus" "convenience"))]) + (debbugs . + [(0 14) + ((soap-client + (3 1 1)) + (cl-lib + (0 5))) + "SOAP library to access debbugs servers" tar + ((:keywords "comm" "hypermedia") + (:url . "http://elpa.gnu.org/packages/debbugs.html"))]) + (delight . + [(1 5) + nil "A dimmer switch for your lighter text." single + ((:url . "https://savannah.nongnu.org/projects/delight") + (:keywords "convenience"))]) + (dict-tree . + [(0 14) + ((trie + (0 3)) + (tNFA + (0 1 1)) + (heap + (0 3))) + "Dictionary data structure" single + ((:url . "http://www.dr-qubit.org/emacs.php") + (:keywords "extensions" "matching" "data structures trie" "tree" "dictionary" "completion" "regexp"))]) + (diff-hl . + [(1 8 4) + ((cl-lib + (0 2))) + "Highlight uncommitted changes using VC" tar + ((:keywords "vc" "diff") + (:url . "https://github.com/dgutov/diff-hl"))]) + (diffview . + [(1 0) + nil "View diffs in side-by-side format" single + ((:url . "https://github.com/mgalgs/diffview-mode") + (:keywords "convenience" "diff"))]) + (dired-du . + [(0 5) + ((emacs + (24 4)) + (cl-lib + (0 5))) + "Dired with recursive directory sizes" tar + ((:keywords "files" "unix" "convenience") + (:url . "http://elpa.gnu.org/packages/dired-du.html"))]) + (dismal . + [(1 5) + ((cl-lib + (0))) + "Dis Mode Ain't Lotus: Spreadsheet program Emacs" tar + ((:url . "http://elpa.gnu.org/packages/dismal.html"))]) + (djvu . + [(0 5) + nil "Edit and view Djvu files via djvused" single + ((:url . "http://elpa.gnu.org/packages/djvu.html") + (:keywords "files" "wp"))]) + (docbook . + [(0 1) + nil "Info-like viewer for DocBook" single + ((:url . "http://elpa.gnu.org/packages/docbook.html") + (:keywords "docs" "help"))]) + (dts-mode . + [(0 1 0) + nil "Major mode for Device Tree source files" single + ((:url . "http://elpa.gnu.org/packages/dts-mode.html") + (:keywords "languages"))]) + (easy-kill . + [(0 9 3) + ((emacs + (24)) + (cl-lib + (0 5))) + "kill & mark things easily" tar + ((:keywords "killing" "convenience") + (:url . "https://github.com/leoliu/easy-kill"))]) + (ebdb . + [(0 4 2) + ((emacs + (25 1)) + (cl-lib + (0 5)) + (seq + (2 15))) + "Contact management package" tar + ((:keywords "convenience" "mail") + (:url . "https://github.com/girzel/ebdb"))]) + (ebdb-gnorb . + [(1 0 2) + ((gnorb + (1 1 0)) + (ebdb + (0 2))) + "Utilities for connecting EBDB to Gnorb" single + ((:url . "http://elpa.gnu.org/packages/ebdb-gnorb.html") + (:keywords))]) + (ebdb-i18n-chn . + [(1 2) + ((pyim + (1 6 0)) + (ebdb + (0 2))) + "China-specific internationalization support for EBDB" single + ((:url . "http://elpa.gnu.org/packages/ebdb-i18n-chn.html") + (:keywords))]) + (ediprolog . + [(1 2) + nil "Emacs Does Interactive Prolog" single + ((:url . "http://elpa.gnu.org/packages/ediprolog.html") + (:keywords "languages" "processes"))]) + (el-search . + [(1 4 0 8) + ((emacs + (25)) + (stream + (2 2 4))) + "Expression based interactive search for Emacs Lisp" tar + ((:keywords "lisp") + (:url . "http://elpa.gnu.org/packages/el-search.html"))]) + (eldoc-eval . + [(0 1) + nil "Enable eldoc support when minibuffer is in use." single + ((:url . "http://elpa.gnu.org/packages/eldoc-eval.html") + (:keywords))]) + (electric-spacing . + [(5 0) + nil "Insert operators with surrounding spaces smartly" single + ((:url . "http://elpa.gnu.org/packages/electric-spacing.html") + (:keywords))]) + (enwc . + [(2 0) + ((emacs + (25 1))) + "The Emacs Network Client" tar + ((:keywords "external" "network" "wicd" "manager" "nm") + (:url . "http://elpa.gnu.org/packages/enwc.html"))]) + (epoch-view . + [(0 0 1) + nil "Minor mode to visualize epoch timestamps" single + ((:url . "http://elpa.gnu.org/packages/epoch-view.html") + (:keywords "data" "timestamp" "epoch" "unix"))]) + (ergoemacs-mode . + [(5 14 7 3) + ((emacs + (24 1)) + (undo-tree + (0 6 5))) + "Emacs mode based on common modern interface and ergonomics." tar + ((:keywords "convenience") + (:url . "https://github.com/ergoemacs/ergoemacs-mode"))]) + (excorporate . + [(0 7 6) + ((emacs + (24 1)) + (fsm + (0 2)) + (soap-client + (3 1 1)) + (url-http-ntlm + (2 0 3))) + "Exchange integration" tar + ((:keywords "calendar") + (:url . "http://elpa.gnu.org/packages/excorporate.html"))]) + (exwm . + [(0 16) + ((xelb + (0 12))) + "Emacs X Window Manager" tar + ((:keywords "unix") + (:url . "https://github.com/ch11ng/exwm"))]) + (f90-interface-browser . + [(1 1) + nil "Parse and browse f90 interfaces" single + ((:url . "http://github.com/wence-/f90-iface/") + (:keywords))]) + (flylisp . + [(0 2) + ((emacs + (24 1)) + (cl-lib + (0 4))) + "Color unbalanced parentheses and parentheses inconsistent with indentation" single + ((:url . "http://elpa.gnu.org/packages/flylisp.html") + (:keywords))]) + (fsm . + [(0 2 1) + ((emacs + (24 1)) + (cl-lib + (0 5))) + "state machine library" single + ((:url . "http://elpa.gnu.org/packages/fsm.html") + (:keywords "extensions"))]) + (ggtags . + [(0 8 12) + ((emacs + (24)) + (cl-lib + (0 5))) + "emacs frontend to GNU Global source code tagging system" single + ((:url . "https://github.com/leoliu/ggtags") + (:keywords "tools" "convenience"))]) + (gited . + [(0 3 3) + ((emacs + (24 4)) + (cl-lib + (0 5))) + "Operate on Git branches like dired" tar + ((:keywords "git" "vc" "convenience") + (:url . "http://elpa.gnu.org/packages/gited.html"))]) + (gle-mode . + [(1 1) + ((cl-lib + (0 5))) + "Major mode to edit Graphics Layout Engine files" single + ((:url . "http://elpa.gnu.org/packages/gle-mode.html") + (:keywords))]) + (gnome-c-style . + [(0 1) + nil "minor mode for editing GNOME-style C source code" tar + ((:keywords "gnome" "c" "coding style") + (:url . "http://elpa.gnu.org/packages/gnome-c-style.html"))]) + (gnorb . + [(1 3 3) + ((cl-lib + (0 5))) + "Glue code between Gnus, Org, and BBDB" tar + ((:keywords "mail" "org" "gnus" "bbdb" "todo" "task") + (:url . "http://elpa.gnu.org/packages/gnorb.html"))]) + (gnugo . + [(3 1 0) + ((ascii-art-to-unicode + (1 5)) + (xpm + (1 0 1)) + (cl-lib + (0 5))) + "play GNU Go in a buffer" tar + ((:keywords "games" "processes") + (:url . "http://www.gnuvola.org/software/gnugo/"))]) + (heap . + [(0 5) + nil "Heap (a.k.a. priority queue) data structure" single + ((:url . "http://www.dr-qubit.org/emacs.php") + (:keywords "extensions" "data structures" "heap" "priority queue"))]) + (helm-ebdb . + [(1) + ((helm + (1 0)) + (ebdb + (0 2))) + "Helm integration for EBDB" single + ((:url . "http://elpa.gnu.org/packages/helm-ebdb.html") + (:keywords "mail" "convenience"))]) + (highlight-escape-sequences . + [(0 3) + nil "Highlight escape sequences" single + ((:url . "https://github.com/dgutov/highlight-escape-sequences") + (:keywords "convenience"))]) + (hook-helpers . + [(1 1) + ((emacs + (25 1))) + "Anonymous, modifiable hook functions" tar + ((:keywords "development" "hooks") + (:url . "https://savannah.nongnu.org/projects/hook-helpers-el/"))]) + (html5-schema . + [(0 1) + nil "Add HTML5 schemas for use by nXML" tar + ((:keywords "html" "xml") + (:url . "https://github.com/validator/validator"))]) + (hydra . + [(0 14 0) + ((cl-lib + (0 5))) + "Make bindings that stick around." tar + ((:keywords "bindings") + (:url . "https://github.com/abo-abo/hydra"))]) + (hyperbole . + [(7 0 2) + ((emacs + (24 4))) + "GNU Hyperbole: The Everyday Hypertextual Information Manager" tar + ((:keywords "comm" "convenience" "files" "frames" "hypermedia" "languages" "mail" "matching" "mouse" "multimedia" "outlines" "tools" "wp") + (:url . "http://www.gnu.org/software/hyperbole"))]) + (ioccur . + [(2 4) + nil "Incremental occur" single + ((:url . "http://elpa.gnu.org/packages/ioccur.html") + (:keywords))]) + (iterators . + [(0 1) + ((emacs + (25))) + "Functions for working with iterators" single + ((:url . "http://elpa.gnu.org/packages/iterators.html") + (:keywords "extensions" "elisp"))]) + (ivy . + [(0 10 0) + ((emacs + (24 1))) + "Incremental Vertical completYon" tar + ((:keywords "matching") + (:url . "https://github.com/abo-abo/swiper"))]) + (javaimp . + [(0 6) + nil "Add and reorder Java import statements in Maven projects" tar + ((:keywords "java" "maven" "programming") + (:url . "http://elpa.gnu.org/packages/javaimp.html"))]) + (jgraph-mode . + [(1 1) + ((cl-lib + (0 5))) + "Major mode for Jgraph files" single + ((:url . "http://elpa.gnu.org/packages/jgraph-mode.html") + (:keywords "tex" "wp"))]) + (js2-mode . + [(20170721) + ((emacs + (24 1)) + (cl-lib + (0 5))) + "Improved JavaScript editing mode" tar + ((:keywords "languages" "javascript") + (:url . "https://github.com/mooz/js2-mode/"))]) + (json-mode . + [(0 1) + ((emacs + (25 1))) + "Major mode for editing JSON files" single + ((:url . "http://elpa.gnu.org/packages/json-mode.html") + (:keywords "data"))]) + (jumpc . + [(3 0) + nil "jump to previous insertion points" single + ((:url . "http://elpa.gnu.org/packages/jumpc.html") + (:keywords))]) + (kmb . + [(0 1) + ((emacs + (24 1))) + "Kill buffers matching a regexp w/o confirmation" single + ((:url . "http://elpa.gnu.org/packages/kmb.html") + (:keywords "lisp" "convenience"))]) + (landmark . + [(1 0) + nil "Neural-network robot that learns landmarks" single + ((:url . "http://elpa.gnu.org/packages/landmark.html") + (:keywords "games" "neural network" "adaptive search" "chemotaxis"))]) + (let-alist . + [(1 0 5) + ((emacs + (24 1))) + "Easily let-bind values of an assoc-list by their names" single + ((:url . "http://elpa.gnu.org/packages/let-alist.html") + (:keywords "extensions" "lisp"))]) + (lex . + [(1 1) + nil "Lexical analyser construction" tar + ((:url . "http://elpa.gnu.org/packages/lex.html"))]) + (lmc . + [(1 4) + ((emacs + (24)) + (cl-lib + (0 5))) + "Little Man Computer in Elisp" single + ((:url . "http://elpa.gnu.org/packages/lmc.html") + (:keywords))]) + (load-dir . + [(0 0 5) + ((cl-lib + (0 5))) + "Load all Emacs Lisp files in a given directory" single + ((:url . "http://elpa.gnu.org/packages/load-dir.html") + (:keywords "lisp" "files" "convenience"))]) + (load-relative . + [(1 3) + nil "relative file load (within a multi-file Emacs package)" single + ((:url . "http://github.com/rocky/emacs-load-relative") + (:keywords "internal"))]) + (loc-changes . + [(1 2) + nil "keep track of positions even after buffer changes" single + ((:url . "http://github.com/rocky/emacs-loc-changes") + (:keywords))]) + (loccur . + [(1 2 3) + ((cl-lib + (0))) + "Perform an occur-like folding in current buffer" single + ((:url . "https://github.com/fourier/loccur") + (:keywords "matching"))]) + (markchars . + [(0 2 0) + nil "Mark chars fitting certain characteristics" single + ((:url . "http://elpa.gnu.org/packages/markchars.html") + (:keywords))]) + (math-symbol-lists . + [(1 1) + nil "Lists of Unicode math symbols and latex commands" tar + ((:keywords "unicode" "symbols" "mathematics") + (:url . "https://github.com/vspinu/math-symbol-lists"))]) + (memory-usage . + [(0 2) + nil "Analyze the memory usage of Emacs in various ways" single + ((:url . "http://elpa.gnu.org/packages/memory-usage.html") + (:keywords "maint"))]) + (metar . + [(0 3) + ((cl-lib + (0 5))) + "Retrieve and decode METAR weather information" single + ((:url . "http://elpa.gnu.org/packages/metar.html") + (:keywords "comm"))]) + (midi-kbd . + [(0 2) + ((emacs + (25))) + "Create keyboard events from Midi input" single + ((:url . "http://elpa.gnu.org/packages/midi-kbd.html") + (:keywords "convenience" "hardware" "multimedia"))]) + (mines . + [(1 2) + ((emacs + (24 4)) + (cl-lib + (0 5))) + "Minesweeper game" tar + ((:keywords "games") + (:url . "https://github.com/calancha/Minesweeper"))]) + (minibuffer-line . + [(0 1) + nil "Display status info in the minibuffer window" single + ((:url . "http://elpa.gnu.org/packages/minibuffer-line.html") + (:keywords))]) + (minimap . + [(1 2) + nil "Sidebar showing a \"mini-map\" of a buffer" single + ((:url . "http://elpa.gnu.org/packages/minimap.html") + (:keywords))]) + (multishell . + [(1 1 5) + nil "Easily use multiple shell buffers, local and remote." tar + ((:keywords "processes") + (:url . "https://github.com/kenmanheimer/EmacsMultishell"))]) + (muse . + [(3 20) + nil "Authoring and publishing tool for Emacs" tar + ((:keywords "hypermedia") + (:url . "http://mwolson.org/projects/EmacsMuse.html"))]) + (myers . + [(0 1) + ((emacs + (25))) + "Random-access singly-linked lists" single + ((:url . "http://elpa.gnu.org/packages/myers.html") + (:keywords "list" "containers"))]) + (nameless . + [(1 0 2) + ((emacs + (24 4))) + "Hide package namespace in your emacs-lisp code" single + ((:url . "https://github.com/Malabarba/nameless") + (:keywords "convenience" "lisp"))]) + (names . + [(20151201 0) + ((emacs + (24 1)) + (cl-lib + (0 5))) + "Namespaces for emacs-lisp. Avoid name clobbering without hiding symbols." tar + ((:keywords "extensions" "lisp") + (:url . "https://github.com/Malabarba/names"))]) + (nhexl-mode . + [(0 2) + ((emacs + (24)) + (cl-lib + (0 5))) + "Minor mode to edit files via hex-dump format" single + ((:url . "http://elpa.gnu.org/packages/nhexl-mode.html") + (:keywords "data"))]) + (nlinum . + [(1 8 1) + nil "Show line numbers in the margin" single + ((:url . "http://elpa.gnu.org/packages/nlinum.html") + (:keywords "convenience"))]) + (notes-mode . + [(1 30) + nil "Indexing system for on-line note-taking" tar + ((:url . "http://elpa.gnu.org/packages/notes-mode.html"))]) + (ntlm . + [(2 1 0) + nil "NTLM (NT LanManager) authentication support" single + ((:url . "http://elpa.gnu.org/packages/ntlm.html") + (:keywords "ntlm" "sasl" "comm"))]) + (num3-mode . + [(1 2) + nil "highlight groups of digits in long numbers" single + ((:url . "http://elpa.gnu.org/packages/num3-mode.html") + (:keywords "faces" "minor-mode"))]) + (oauth2 . + [(0 11) + nil "OAuth 2.0 Authorization Protocol" single + ((:url . "http://elpa.gnu.org/packages/oauth2.html") + (:keywords "comm"))]) + (omn-mode . + [(1 2) + nil "Support for OWL Manchester Notation" single + ((:url . "http://elpa.gnu.org/packages/omn-mode.html") + (:keywords))]) + (on-screen . + [(1 3 2) + ((cl-lib + (0))) + "guide your eyes while scrolling" single + ((:url . "https://github.com/michael-heerdegen/on-screen.el") + (:keywords "convenience"))]) + (org . + [(20171205) + nil "Outline-based notes management and organizer" tar nil]) + (org-edna . + [(1 0 -3 1) + ((emacs + (25 1)) + (seq + (2 19)) + (org + (9 0 5))) + "Extensible Dependencies 'N' Actions" tar + ((:keywords "convenience" "text" "org") + (:url . "https://savannah.nongnu.org/projects/org-edna-el/"))]) + (osc . + [(0 1) + nil "Open Sound Control protocol library" single + ((:url . "http://elpa.gnu.org/packages/osc.html") + (:keywords "comm" "processes" "multimedia"))]) + (other-frame-window . + [(1 0 4) + ((emacs + (24 4))) + "Minor mode to enable global prefix keys for other frame/window buffer placement" single + ((:url . "http://elpa.gnu.org/packages/other-frame-window.html") + (:keywords "frame" "window"))]) + (pabbrev . + [(4 2 1) + nil "Predictive abbreviation expansion" single + ((:url . "http://elpa.gnu.org/packages/pabbrev.html") + (:keywords))]) + (parsec . + [(0 1 3) + ((emacs + (24)) + (cl-lib + (0 5))) + "Parser combinator library" tar + ((:keywords "extensions") + (:url . "https://github.com/cute-jumper/parsec.el"))]) + (pinentry . + [(0 1) + nil "GnuPG Pinentry server implementation" single + ((:url . "http://elpa.gnu.org/packages/pinentry.html") + (:keywords "gnupg"))]) + (poker . + [(0 2) + nil "Texas hold 'em poker" single + ((:url . "http://elpa.gnu.org/packages/poker.html") + (:keywords "games"))]) + (psgml . + [(1 3 4) + nil "SGML-editing mode with parsing support" tar + ((:keywords "languages") + (:url . "http://elpa.gnu.org/packages/psgml.html"))]) + (python . + [(0 25 2) + ((emacs + (24 1)) + (cl-lib + (1 0))) + "Python's flying circus support for Emacs" single + ((:url . "https://github.com/fgallina/python.el") + (:keywords "languages"))]) + (quarter-plane . + [(0 1) + nil "Minor mode for quarter-plane style editing" single + ((:url . "http://elpa.gnu.org/packages/quarter-plane.html") + (:keywords "convenience" "wp"))]) + (queue . + [(0 2) + nil "Queue data structure" single + ((:url . "http://www.dr-qubit.org/emacs.php") + (:keywords "extensions" "data structures" "queue"))]) + (rainbow-mode . + [(0 13) + nil "Colorize color names in buffers" single + ((:url . "http://elpa.gnu.org/packages/rainbow-mode.html") + (:keywords "faces"))]) + (rcirc-color . + [(0 3) + nil "color nicks" single + ((:url . "http://elpa.gnu.org/packages/rcirc-color.html") + (:keywords "comm"))]) + (rcirc-menu . + [(1 1) + nil "A menu of all your rcirc connections" single + ((:url . "http://elpa.gnu.org/packages/rcirc-menu.html") + (:keywords "comm"))]) + (realgud . + [(1 4 4) + ((load-relative + (1 3)) + (loc-changes + (1 2)) + (test-simple + (1 3 0)) + (cl-lib + (0 5)) + (emacs + (24))) + "A modular front-end for interacting with external debuggers" tar + ((:keywords "gdb" "python" "perl" "go" "bash" "nodejs" "zsh" "bashdb" "zshdb" "remake" "make" "trepan" "perldb") + (:url . "http://github.com/realgud/realgud/"))]) + (register-list . + [(0 1) + nil "Interactively list/edit registers" single + ((:url . "http://elpa.gnu.org/packages/register-list.html") + (:keywords "register"))]) + (rich-minority . + [(1 0 1) + ((cl-lib + (0 5))) + "Clean-up and Beautify the list of minor-modes." single + ((:url . "https://github.com/Malabarba/rich-minority") + (:keywords "mode-line" "faces"))]) + (rnc-mode . + [(0 2) + nil "Emacs mode to edit Relax-NG Compact files" single + ((:url . "http://elpa.gnu.org/packages/rnc-mode.html") + (:keywords "xml" "relaxng"))]) + (rudel . + [(0 3 1) + ((emacs + (24)) + (cl-lib + (0 5)) + (cl-generic + (0 3))) + "A collaborative editing framework for Emacs" tar + ((:keywords "rudel" "collaboration") + (:url . "http://rudel.sourceforge.net/"))]) + (scroll-restore . + [(1 0) + nil "restore original position after scrolling" single + ((:url . "http://elpa.gnu.org/packages/scroll-restore.html") + (:keywords "scrolling"))]) + (sed-mode . + [(1 0) + nil "Major mode to edit sed scripts" single + ((:url . "http://elpa.gnu.org/packages/sed-mode.html") + (:keywords))]) + (seq . + [(2 20) + nil "Sequence manipulation functions" tar + ((:keywords "sequences") + (:url . "http://elpa.gnu.org/packages/seq.html"))]) + (shen-mode . + [(0 1) + nil "A major mode for editing shen source code" tar + ((:keywords "languages" "shen") + (:url . "http://elpa.gnu.org/packages/shen-mode.html"))]) + (sisu-mode . + [(7 1 8) + nil "Major mode for SiSU markup text" single + ((:url . "http://www.sisudoc.org/") + (:keywords "text" "syntax" "processes" "tools"))]) + (smart-yank . + [(0 1 1) + ((emacs + (24))) + "A different approach of yank pointer handling" single + ((:url . "http://elpa.gnu.org/packages/smart-yank.html") + (:keywords "convenience"))]) + (sml-mode . + [(6 7) + ((emacs + (24)) + (cl-lib + (0 5))) + "Major mode for editing (Standard) ML" single + ((:url . "http://elpa.gnu.org/packages/sml-mode.html") + (:keywords "sml"))]) + (soap-client . + [(3 1 3) + ((cl-lib + (0 6 1))) + "Access SOAP web services" tar + ((:keywords "soap" "web-services" "comm" "hypermedia") + (:url . "http://elpa.gnu.org/packages/soap-client.html"))]) + (sokoban . + [(1 4 6) + ((emacs + (23 1))) + "Implementation of Sokoban for Emacs." tar + ((:keywords "games") + (:url . "http://elpa.gnu.org/packages/sokoban.html"))]) + (sotlisp . + [(1 6 2) + ((emacs + (24 1))) + "Write lisp at the speed of thought." single + ((:url . "https://github.com/Malabarba/speed-of-thought-lisp") + (:keywords "convenience" "lisp"))]) + (spinner . + [(1 7 3) + nil "Add spinners and progress-bars to the mode-line for ongoing operations" single + ((:url . "https://github.com/Malabarba/spinner.el") + (:keywords "processes" "mode-line"))]) + (sql-indent . + [(1 0) + nil "Support for indenting code in SQL files." tar + ((:keywords "languages" "sql") + (:url . "http://elpa.gnu.org/packages/sql-indent.html"))]) + (stream . + [(2 2 4) + ((emacs + (25))) + "Implementation of streams" tar + ((:keywords "stream" "laziness" "sequences") + (:url . "http://elpa.gnu.org/packages/stream.html"))]) + (svg . + [(0 1) + ((emacs + (25))) + "svg image creation functions" single + ((:url . "http://elpa.gnu.org/packages/svg.html") + (:keywords "image"))]) + (svg-clock . + [(1 0) + ((svg + (0 1)) + (emacs + (25 0))) + "Analog clock using Scalable Vector Graphics" single + ((:url . "http://elpa.gnu.org/packages/svg-clock.html") + (:keywords "demo" "svg" "clock"))]) + (tNFA . + [(0 1 1) + ((queue + (0 1))) + "Tagged non-deterministic finite-state automata" single + ((:url . "http://www.dr-qubit.org/emacs.php") + (:keywords "extensions" "matching" "data structures tnfa" "nfa" "dfa" "finite state automata" "automata" "regexp"))]) + (temp-buffer-browse . + [(1 5) + ((emacs + (24))) + "temp buffer browse mode" single + ((:url . "http://elpa.gnu.org/packages/temp-buffer-browse.html") + (:keywords "convenience"))]) + (test-simple . + [(1 3 0) + ((cl-lib + (0))) + "Simple Unit Test Framework for Emacs Lisp" single + ((:url . "http://github.com/rocky/emacs-test-simple") + (:keywords "unit-test"))]) + (timerfunctions . + [(1 4 2) + ((cl-lib + (0 5))) + "Enhanced versions of some timer.el functions" single + ((:url . "http://elpa.gnu.org/packages/timerfunctions.html") + (:keywords))]) + (tiny . + [(0 2 1) + nil "Quickly generate linear ranges in Emacs" tar + ((:keywords "convenience") + (:url . "https://github.com/abo-abo/tiny"))]) + (tramp-theme . + [(0 2) + ((emacs + (24 1))) + "Custom theme for remote buffers" single + ((:url . "http://elpa.gnu.org/packages/tramp-theme.html") + (:keywords "convenience" "faces"))]) + (transcribe . + [(1 5 2) + nil "Package for audio transcriptions" single + ((:url . "http://elpa.gnu.org/packages/transcribe.html") + (:keywords))]) + (trie . + [(0 4) + ((tNFA + (0 1 1)) + (heap + (0 3))) + "Trie data structure" single + ((:url . "http://www.dr-qubit.org/emacs.php") + (:keywords "extensions" "matching" "data structures trie" "ternary search tree" "tree" "completion" "regexp"))]) + (undo-tree . + [(0 6 5) + nil "Treat undo history as a tree" single + ((:url . "http://www.dr-qubit.org/emacs.php") + (:keywords "convenience" "files" "undo" "redo" "history" "tree"))]) + (uni-confusables . + [(0 1) + nil "Unicode confusables table" tar + ((:url . "http://elpa.gnu.org/packages/uni-confusables.html"))]) + (url-http-ntlm . + [(2 0 4) + ((cl-lib + (0 5)) + (ntlm + (2 1 0))) + "NTLM authentication for the url library" single + ((:url . "http://elpa.gnu.org/packages/url-http-ntlm.html") + (:keywords "comm" "data" "processes" "hypermedia"))]) + (validate . + [(1 0 4) + ((emacs + (24 1)) + (cl-lib + (0 5)) + (seq + (2 16))) + "Schema validation for Emacs-lisp" single + ((:url . "http://elpa.gnu.org/packages/validate.html") + (:keywords "lisp"))]) + (vdiff . + [(0 2 3) + ((emacs + (24 4)) + (hydra + (0 13 0))) + "A diff tool similar to vimdiff" single + ((:url . "https://github.com/justbur/emacs-vdiff") + (:keywords "diff"))]) + (vigenere . + [(1 0) + ((emacs + (25 1))) + "Run a vigenere cipher on a block of text ;" single + ((:url . "https://elpa.gnu.org/packages/vigenere.html") + (:keywords "data" "vigenere" "cipher"))]) + (vlf . + [(1 7) + nil "View Large Files" tar + ((:keywords "large files" "utilities") + (:url . "https://github.com/m00natic/vlfi"))]) + (w3 . + [(4 0 49) + nil "Fully customizable, largely undocumented web browser for Emacs" tar + ((:keywords "faces" "help" "comm" "news" "mail" "processes" "mouse" "hypermedia") + (:url . "http://elpa.gnu.org/packages/w3.html"))]) + (wcheck-mode . + [(2016 1 30) + nil "General interface for text checkers" single + ((:url . "https://github.com/tlikonen/wcheck-mode") + (:keywords "text" "spell" "check" "languages" "ispell"))]) + (wconf . + [(0 2 1) + ((emacs + (24 4))) + "Minimal window layout manager" single + ((:url . "https://github.com/ilohmar/wconf") + (:keywords "windows" "frames" "layout"))]) + (web-server . + [(0 1 1) + ((emacs + (24 3))) + "Emacs Web Server" tar + ((:keywords "http" "server" "network") + (:url . "https://github.com/eschulte/emacs-web-server"))]) + (websocket . + [(1 8) + ((cl-lib + (0 5))) + "Emacs WebSocket client and server" tar + ((:keywords "communication" "websocket" "server") + (:url . "http://elpa.gnu.org/packages/websocket.html"))]) + (which-key . + [(3 0 2) + ((emacs + (24 4))) + "Display available keybindings in popup" tar + ((:url . "https://github.com/justbur/emacs-which-key"))]) + (windresize . + [(0 1) + nil "Resize windows interactively" single + ((:url . "http://elpa.gnu.org/packages/windresize.html") + (:keywords "window"))]) + (wisi . + [(1 1 6) + ((cl-lib + (0 4)) + (emacs + (24 3))) + "Utilities for implementing an indentation/navigation engine using a generalized LALR parser" tar + ((:keywords "parser" "indentation" "navigation") + (:url . "http://www.nongnu.org/ada-mode/wisi/wisi.html"))]) + (wpuzzle . + [(1 1) + nil "find as many word in a given time" single + ((:url . "http://elpa.gnu.org/packages/wpuzzle.html") + (:keywords))]) + (xclip . + [(1 4) + nil "use xclip to copy&paste" single + ((:url . "http://elpa.gnu.org/packages/xclip.html") + (:keywords "convenience" "tools"))]) + (xelb . + [(0 12) + ((emacs + (24 4)) + (cl-generic + (0 2))) + "X protocol Emacs Lisp Binding" tar + ((:keywords "unix") + (:url . "https://github.com/ch11ng/xelb"))]) + (xpm . + [(1 0 4) + nil "edit XPM images" tar + ((:keywords "multimedia" "xpm") + (:url . "http://www.gnuvola.org/software/xpm/"))]) + (yasnippet . + [(0 12 2) + ((cl-lib + (0 5))) + "Yet another snippet extension for Emacs." tar + ((:keywords "convenience" "emulation") + (:url . "http://github.com/joaotavora/yasnippet"))]) + (ztree . + [(1 0 5) + ((cl-lib + (0))) + "Text mode directory tree" tar + ((:keywords "files" "tools") + (:url . "https://github.com/fourier/ztree"))])) diff --git a/.emacs.d/elpa/archives/gnu/archive-contents.signed b/.emacs.d/elpa/archives/gnu/archive-contents.signed new file mode 100644 index 0000000..cbfdeee --- /dev/null +++ b/.emacs.d/elpa/archives/gnu/archive-contents.signed @@ -0,0 +1 @@ +Good signature from 474F05837FBDEF9B GNU ELPA Signing Agent (trust undefined) created at 2017-12-06T23:10:01+0100 using DSA \ No newline at end of file diff --git a/.emacs.d/elpa/archives/melpa/archive-contents b/.emacs.d/elpa/archives/melpa/archive-contents new file mode 100644 index 0000000..08781c7 --- /dev/null +++ b/.emacs.d/elpa/archives/melpa/archive-contents @@ -0,0 +1,2 @@ + +(1 (zzz-to-char . [(20170519 335) ((emacs (24 4)) (cl-lib (0 5)) (avy (0 3 0))) "Fancy version of `zap-to-char' command" single ((:commit . "96dfe16a990474267cd290498cf9ac6dd6b3e7c0") (:url . "https://github.com/mrkkrp/zzz-to-char") (:keywords "convenience"))]) (zygospore . [(20140703 152) nil "reversible C-x 1 (delete-other-windows)" single ((:commit . "1af5ee663f5a7aa08d96a77cacff834dcdf55ea8") (:url . "https://github.com/louiskottmann/zygospore.el"))]) (zweilight-theme . [(20170112 2205) nil "A dark color theme for Emacs." single ((:commit . "7f45ab9e23164d65538edb2beb9692ecdc24c31e") (:url . "http://github.com/philiparvidsson/zweilight-emacs"))]) (ztree . [(20170223 1014) ((cl-lib (0))) "Text mode directory tree" tar ((:commit . "febc2d02373312ce69f56c9dbe54cabea3e0813c") (:url . "https://github.com/fourier/ztree") (:keywords "files" "tools"))]) (zpresent . [(20171008 2152) ((emacs (25 1)) (org-parser (0 4)) (dash (2 12 0)) (request (0 3 0))) "Simple presentation mode based on org files." single ((:url . "https://bitbucket.org/zck/zpresent.el") (:keywords "comm"))]) (zoutline . [(20170722 651) nil "Simple outline library." single ((:commit . "e86e739b53a1c8a0a2cf6de43dffabb15d465507") (:url . "https://github.com/abo-abo/zoutline") (:keywords "outline"))]) (zotxt . [(20170109 2040) ((request-deferred (0 2 0))) "Tools to integrate emacs with Zotero via the zotxt plugin." tar ((:commit . "1a010ea5db617269adc132e4cc028a44d9b629bd"))]) (zotelo . [(20160602 249) ((cl-lib (0 5))) "Manage Zotero collections from emacs" single ((:commit . "d9dc089b9adfcc70a63f2a84269a12eb7cb4c748") (:url . "https://github.com/vitoshka/zotelo") (:keywords "zotero" "emacs" "reftex" "bibtex" "mozrepl" "bibliography manager"))]) (zossima . [(20121123 1635) ((inf-ruby (2 2 3))) "Ruby from Emacs" tar ((:commit . "991676635c374d2a12714dcf48c1ce2d6f97a375") (:url . "https://github.com/technomancy/zossima") (:keywords "ruby" "convenience"))]) (zop-to-char . [(20160212 754) ((cl-lib (0 5))) "A replacement of zap-to-char." single ((:commit . "816ea90337db0545a2f0a5079f4d7b3a2822af7d") (:url . "https://github.com/thierryvolpiatto/zop-to-char"))]) (zoom-window . [(20170302 27) ((emacs (24 3))) "Zoom window like tmux" single ((:commit . "cd6ecc103fc30b171bda7daf1f44a550854d0dbf") (:url . "https://github.com/syohex/emacs-zoom-window"))]) (zoom-frm . [(20170309 1439) ((frame-fns (0)) (frame-cmds (0))) "Commands to zoom frame font size." single ((:url . "https://www.emacswiki.org/emacs/download/zoom-frm.el") (:keywords "frames" "extensions" "convenience"))]) (zoom . [(20171110 715) ((emacs (24 4))) "Fixed and automatic balanced window layout" single ((:commit . "d4f417b24fe022b6512a1a0ffebf898044393250") (:url . "https://github.com/cyrus-and/zoom") (:keywords "frames"))]) (zones . [(20170802 1406) nil "Zones of text - like multiple regions" single ((:url . "https://www.emacswiki.org/emacs/download/zones.el") (:keywords "narrow" "restriction" "widen" "region" "zone"))]) (zone-sl . [(20160201 410) ((emacs (24 3))) "Zone out with steam locomotives." single ((:commit . "7ec22e3661c6348382f9fc39a9d0063dbd2352ff") (:url . "https://github.com/kawabata/zone-sl") (:keywords "games"))]) (zone-select . [(20160118 619) ((emacs (24 3)) (dash (2 8))) "Select zone programs." single ((:commit . "bf30da12f1625fe6563448fccf3c506acad10af7") (:url . "https://github.com/kawabata/zone-select") (:keywords "games"))]) (zone-rainbow . [(20160120 534) ((emacs (24 3))) "Zone out with rainbow." single ((:commit . "2ba4f1a87c69c4712124ebf12c1f3ea171e1af36") (:url . "https://github.com/kawabata/zone-rainbow") (:keywords "games"))]) (zone-nyan . [(20170818 944) ((esxml (0 3 1))) "Zone out with nyan cat" single ((:commit . "4b1f8d95f130946718d52806489ffe2762aebfdc") (:url . "https://github.com/wasamasa/zone-nyan") (:keywords "zone"))]) (zombie-trellys-mode . [(20150304 648) ((emacs (24)) (cl-lib (0 5)) (haskell-mode (1 5))) "A minor mode for interaction with Zombie Trellys" single ((:commit . "7f0c45fdda3a44c3b6d1762d116abb1421b8fba2") (:keywords "languages"))]) (zombie . [(20141222 816) nil "major mode for editing ZOMBIE programs" single ((:commit . "ff8cd1b4cdbb4b0b9b8fd1ec8f6fb93eba249345") (:url . "http://hins11.yu-yake.com/"))]) (znc . [(20160627 1332) ((cl-lib (0 2))) "ZNC + ERC" single ((:commit . "ce468d185e4a949c45fdd7586313144bc69d4fe5") (:url . "https://github.com/sshirokov/ZNC.el"))]) (zlc . [(20151010 1857) nil "Provides zsh like completion system to Emacs" single ((:commit . "4dd2ba267ecdeac845a7cbb3147294ee7daa25f4") (:keywords "matching" "convenience"))]) (zig-mode . [(20170920 802) ((emacs (24))) "A major mode for the Zig programming language" single ((:commit . "814657c5b6b0600ace78a7bbd216c3e90d611cfd") (:url . "https://github.com/AndreaOrru/zig-mode") (:keywords "zig" "languages"))]) (zerodark-theme . [(20171128 610) ((all-the-icons (2 0 0)) (magit (2 8 0)) (flycheck (29))) "A dark, medium contrast theme for Emacs" single ((:commit . "37b19b9adf633afd4adf88826e9618e5b1f09461") (:url . "https://github.com/NicolasPetton/zerodark-theme") (:keywords "themes"))]) (zephir-mode . [(20170917 2125) ((cl-lib (0 5)) (pkg-info (0 4)) (emacs (24 3))) "Major mode for editing Zephir code" single ((:commit . "c2c6b7451667e68e29c353616f54ef9195c3fffd") (:url . "https://github.com/sergeyklay/zephir-mode") (:keywords "languages"))]) (zenity-color-picker . [(20160302 354) ((emacs (24 4))) "Insert and adjust colors using Zenity" single ((:commit . "4f4f46676a461ebc881487fb70c8c181e323db5e") (:url . "https://bitbucket.org/Soft/zenity-color-picker.el") (:keywords "colors"))]) (zencoding-mode . [(20140213 22) nil "Unfold CSS-selector-like expressions to markup" single ((:commit . "58e42af182c98cb9941d27cd042d227fbf4e146c") (:url . "https://github.com/rooney/zencoding") (:keywords "convenience"))]) (zenburn-theme . [(20171109 926) nil "A low contrast color theme for Emacs." single ((:commit . "613f4c69513c7ffe7cb00a6c477cd5e8e6378d40") (:url . "http://github.com/bbatsov/zenburn-emacs"))]) (zen-and-art-theme . [(20120622 737) nil "zen and art color theme for GNU Emacs 24" single ((:commit . "a7226cbce0bca2501d69a620cb2aeabfc396c232"))]) (zel . [(20171014 132) ((emacs (25)) (frecency (0 1))) "Access frecent files easily" single ((:commit . "9dae2d212224d1deae1f62561fa8e4d689fd09f2") (:url . "https://github.com/rudolfochrist/zel") (:keywords "convenience" "files" "matching"))]) (zeal-at-point . [(20170427 2042) nil "Search the word at point with Zeal" single ((:commit . "50a1bd4240ff0db7c8f2046c3b00c5a8e14b9d2f") (:url . "https://github.com/jinzhu/zeal-at-point"))]) (z3-mode . [(20151120 1455) ((flycheck (0 23)) (emacs (24))) "A z3/SMTLIBv2 interactive development environment" single ((:commit . "163dc01d59e9880b4dc188d4e1ad84d6c0c852e1") (:url . "https://github.com/zv/z3-mode") (:keywords "z3" "yices" "mathsat" "smt" "beaver"))]) (youdao-dictionary . [(20170226 49) ((popup (0 5 0)) (pos-tip (0 4 6)) (chinese-word-at-point (0 2)) (names (0 5)) (emacs (24))) "Youdao Dictionary interface for Emacs" single ((:commit . "44548f56a1c736e6a7fae4546657bff0a94bf3cb") (:url . "https://github.com/xuchunyang/youdao-dictionary.el") (:keywords "convenience" "chinese" "dictionary"))]) (yoshi-theme . [(20170330 0) nil "Theme named after my cat" single ((:commit . "eab4fb67e8fec47c25c4c1393ac1211f043dbd44") (:url . "http://projects.ryuslash.org/yoshi-theme/") (:keywords "faces"))]) (yoficator . [(20171204 100) nil "Interactively yoficate Russian texts" tar ((:commit . "f7cfe19e6a18003340f0ae56974404c8a8eeff33") (:url . "https://gitlab.com/link2xt/yoficator"))]) (yesql-ghosts . [(20150220 437) ((s (1 9 0)) (dash (2 10 0)) (cider (0 8 0))) "Display ghostly yesql defqueries inline" single ((:commit . "8f1faf0137b85a5072d13e1240a463d9a35ce2bb"))]) (ydk-mode . [(20170113 121) nil "Language support for Yu-Gi-Oh! deck files" single ((:commit . "f3f125b29408e0b0a34fec27dcb7c02c5dbfd04e") (:url . "https://github.com/jacksonrayhamilton/ydk-mode") (:keywords "faces" "games" "languages" "ydk" "yugioh" "yu-gi-oh"))]) (ycmd . [(20171111 854) ((emacs (24 4)) (dash (2 13 0)) (s (1 11 0)) (deferred (0 5 1)) (cl-lib (0 6 1)) (let-alist (1 0 5)) (request (0 3 0)) (request-deferred (0 3 0)) (pkg-info (0 6))) "emacs bindings to the ycmd completion server" tar ((:commit . "7f394d02f6f3149b215adcc96043c78d5f32d612") (:url . "https://github.com/abingham/emacs-ycmd"))]) (ycm . [(20150822 1136) nil "Emacs client for the YouCompleteMe auto-completion server." single ((:commit . "4da8a14abcd0f4fa3235042ade2e12b5068c0601") (:keywords "c" "abbrev"))]) (yaxception . [(20150105 652) nil "Provide framework about exception like Java for Elisp" single ((:commit . "4e94cf3e0b9b5631b0e90eb4b7de597ee7185875") (:url . "https://github.com/aki2o/yaxception") (:keywords "exception" "error" "signal"))]) (yatex . [(20171030 502) nil "Yet Another tex-mode for emacs //野鳥//" tar nil]) (yatemplate . [(20161108 1305) ((yasnippet (0 8 1)) (emacs (24 3))) "File templates with yasnippet" tar ((:commit . "07da11de32feb6cbce0f8c140c0304e3ba1b42c0") (:url . "https://github.com/mineo/yatemplate") (:keywords "files" "convenience"))]) (yasnippet-snippets . [(20171127 423) ((yasnippet (0 8 0))) "Collection of yasnippet snippets" tar ((:commit . "72d3292f7a5df67502ae990278642f56164e1463") (:keywords "snippets"))]) (yasnippet . [(20170923 1646) ((cl-lib (0 5))) "Yet another snippet extension for Emacs." tar ((:commit . "4ab9cb5bac683112852f58b26557a7dc283b717b") (:url . "http://github.com/joaotavora/yasnippet") (:keywords "convenience" "emulation"))]) (yascroll . [(20170315 1206) ((cl-lib (0 3))) "Yet Another Scroll Bar Mode" single ((:commit . "fe4494e5f4faf2832e665c7de0fed99cdbb39478") (:keywords "convenience"))]) (yarn-mode . [(20170709 1237) ((emacs (24 3))) "Major mode for yarn.lock files." single ((:commit . "998b408d6be05fd1c3a9fd8db6ffaab3bf86d06b") (:url . "https://github.com/anachronic/yarn-mode") (:keywords "convenience"))]) (yari . [(20151127 2339) nil "Yet Another RI interface for Emacs" single ((:commit . "a2cb9656ee5dfe1fc2ee3854f3079a1c8e85dbe9") (:keywords "tools"))]) (yard-mode . [(20170817 537) nil "Minor mode for Ruby YARD comments" single ((:commit . "ba74a47463b0320ae152bd42a7dd7aeecd7b5748") (:url . "https://github.com/pd/yard-mode.el"))]) (yara-mode . [(20170719 2351) ((emacs (24))) "Major mode for editing yara rule file" single ((:commit . "af5c05b34a29fc1bd73a6d21c82cc76320b33e5c") (:url . "not distributed yet") (:keywords "yara"))]) (yapfify . [(20170519 115) nil "(automatically) format python buffers using YAPF." single ((:commit . "492eb038b35f49b1012fb843d880bccc40f2260b") (:url . "https://github.com/JorisE/yapfify"))]) (yaoddmuse . [(20170325 1752) nil "Major mode for EmacsWiki and other Oddmuse wikis" single ((:url . "http://www.emacswiki.org/emacs/download/yaoddmuse.el") (:keywords "yaoddmuse" "oddmuse"))]) (yankpad . [(20170607 819) ((emacs (24))) "Paste snippets from an org-mode file" single ((:commit . "70e755fcf58e37092de2c335355eab93d5f1fb44") (:url . "http://github.com/Kungsgeten/yankpad") (:keywords "abbrev" "convenience"))]) (yang-mode . [(20170323 1104) nil "major mode for editing YANG files" single ((:commit . "0d5d5df86dbb6cbb2de3c0f2d0d5f8c8f29d0695"))]) (yandex-weather . [(20160311 1237) nil "Fetch Yandex Weather forecasts." tar ((:commit . "6f823fd9e04ff9efb2aa65f333079e9f7e6e5b28"))]) (yaml-tomato . [(20151122 2353) ((s (1 9))) "copy or show the yaml path currently under cursor." single ((:commit . "f9df1c9bdfcec629b03031b2d2032f9dc533cb14") (:keywords "yaml"))]) (yaml-mode . [(20170727 1531) ((emacs (24 1))) "Major mode for editing YAML files" single ((:commit . "28c34033194130d452d5c958b5241c88d42ca02b") (:keywords "data" "yaml"))]) (yalinum . [(20130217 243) nil "yet another display line numbers." single ((:commit . "d3e0cbe3f4f5ca311e3298e684901d6fea3ad973") (:keywords "convenience" "tools"))]) (yahtzee . [(20171022 712) ((emacs (24 3))) "The yahtzee game" single ((:commit . "005e8fea081b09ec0d13c88564c5799120125604") (:url . "https://github.com/drdv/yahtzee") (:keywords "games"))]) (yahoo-weather . [(20170822 1544) ((emacs (24))) "Displays weather information in mode-line" single ((:commit . "a74e29bc81b13efe285b87fa4d0694d75f8e2bb5") (:url . "https://github.com/lujun9972/yahoo-weather-mode") (:keywords "weather" "mode-line"))]) (yagist . [(20160417 2208) ((cl-lib (0 3))) "Yet Another Emacs integration for gist.github.com" single ((:commit . "dcdbd84f348414815d02f3da8a6ee0ac271632d4") (:url . "https://github.com/mhayashi1120/yagist.el") (:keywords "tools"))]) (yafolding . [(20170304 1917) nil "Yet another folding extension for Emacs" single ((:commit . "57c015ddd7c3454571c80825bc5391d7a10fa1d7") (:keywords "folding"))]) (yabin . [(20140205 1951) nil "Yet Another Bignum package (A thin wrapper of calc.el)." single ((:commit . "db8c404507560ef9147fcce2b94cd706fbfa03b5") (:keywords "data"))]) (xwidgete . [(20171118 1316) ((emacs (25))) "enhances usability of current xwidget browser" single ((:commit . "e4e8410fe32176df85b46234717824519443fb04") (:url . "https://github.com/tuhdo/xwidgete") (:keywords "xwidgete" "tools"))]) (xtest . [(20141214 906) ((cl-lib (0 5))) "Simple Testing with Emacs & ERT" single ((:commit . "2c2bdf32667506dd9ddf6eb311832add616bdf1c") (:url . "https://github.com/promethial/xtest") (:keywords "testing" "ert"))]) (xterm-title . [(20091203 1023) nil "Update xterm titles" single ((:commit . "b6ea73d297d191d48bba7dd1e2adc23bbdfa1c3c"))]) (xterm-keybinder . [(20160522 1756) ((emacs (24 3)) (cl-lib (0 5)) (let-alist (1 0 1))) "Let you extra keybinds in xterm/urxvt" tar ((:commit . "b29c4f700b0fa0c9f627f6725b36462b8fab06d6") (:keywords "convenient"))]) (xterm-frobs . [(20161207 1609) nil "manipulate xterm when running emacs in tty mode" single ((:commit . "0832d588598dbf6bd8aa8e05c611d7c098c3f9d8"))]) (xterm-color . [(20170102 1525) ((cl-lib (0 5))) "ANSI & XTERM 256 color support" single ((:commit . "5873477fd7bd6e54142ab35fbc623ea9b55200aa") (:url . "https://github.com/atomontage/xterm-color") (:keywords "faces"))]) (xresources-theme . [(20160331 702) nil "Use your .Xresources as your emacs theme" single ((:commit . "feb0552d31cb54210eabbc1abe32c8ea62841b6f") (:keywords "xresources" "theme"))]) (xref-js2 . [(20170530 126) ((emacs (25)) (js2-mode (20150909))) "Jump to references/definitions using ag & js2-mode's AST" single ((:commit . "d5f93605405989529c2f66b542def6c32429b927") (:url . "https://github.com/NicolasPetton/xref-js2") (:keywords "javascript" "convenience" "tools"))]) (xquery-tool . [(20170605 126) nil "A simple interface to saxonb's xquery." single ((:commit . "0d1e2960c48701b83be5255d56324f65a6ee182e") (:url . "https://github.com/paddymcall/xquery-tool.el") (:keywords "xml" "xquery" "emacs"))]) (xquery-mode . [(20170214 319) ((cl-lib (0 5))) "A simple mode for editing xquery programs" single ((:commit . "1b655ccf83d02a7bd473d2cf02359ed60bdf7369") (:url . "https://github.com/xquery-mode/xquery-mode"))]) (xo . [(20160402 2346) nil "XO linter integration with compilation mode" single ((:commit . "72fcd867cfa332fdb82f732925cf8977e690af78") (:keywords "processes"))]) (xmlunicode . [(20160319 912) nil "Unicode support for XML" tar ((:commit . "f5d185da46414c0509ebd0aa0fab416becf94612") (:keywords "utf-8" "unicode" "xml" "characters"))]) (xmlgen . [(20170411 617) nil "A DSL for generating XML." single ((:commit . "dba66681f0c5e621a9e70e8afb34903c9ffe93c4"))]) (xml-rpc . [(20160430 1458) nil "An elisp implementation of clientside XML-RPC" single ((:commit . "0ab093d60140d19e31d217c8abdc7dbdac944486") (:url . "http://github.com/hexmode/xml-rpc-el") (:keywords "xml" "rpc" "network"))]) (xml-quotes . [(20151230 1449) nil "read quotations from an XML document" tar ((:commit . "26db170e80b9295861227cdf970721b12539ed44") (:url . "https://github.com/ndw/xml-quotes") (:keywords "xml" "quotations"))]) (xml+ . [(20170727 1651) ((emacs (24 4)) (dash (2 12 0))) "Utilities for xml and html trees" single ((:commit . "232fa863c08fc159b21dd58c39ea45dce3334895") (:url . "https://github.com/bddean/xml-plus") (:keywords "xml" "html"))]) (xkcd . [(20160419 430) ((json (1 3))) "View xkcd from Emacs" single ((:commit . "66e928706fd660cfdab204c98a347b49c4267bdf") (:url . "https://github.com/vibhavp/emacs-xkcd") (:keywords "xkcd" "webcomic"))]) (xcscope . [(20160628 2324) nil "cscope interface for (X)Emacs" single ((:commit . "1e4c8e60eb841a3ecb56ff4115b6a8ae5c0bf779") (:url . "https://github.com/dkogan/xcscope.el") (:keywords "languages" "c"))]) (xcode-project . [(20170922 612) ((emacs (25))) "A package for reading Xcode project files." tar ((:commit . "ec5d503a51430205daa6f5f382d921b6412b4b55") (:url . "https://github.com/nhojb/xcode-project.git") (:keywords "languages" "tools"))]) (xcode-mode . [(20160907 508) ((emacs (24 4)) (s (1 10 0)) (dash (2 11 0)) (multiple-cursors (1 0 0))) "A minor mode for emacs to perform Xcode like actions." single ((:commit . "2ae4f512d6c601ea39d5ab785c2b5288eac24b59") (:keywords "conveniences"))]) (xbm-life . [(20160103 217) nil "A XBM version of Conway's Game of Life" single ((:commit . "dd6a98ac9ea81b681e68f6318fed47158e5d469e") (:url . "https://github.com/wasamasa/xbm-life") (:keywords "games"))]) (xahk-mode . [(20170821 407) ((emacs (24 1))) "Major mode for editing AutoHotkey scripts." single ((:commit . "02012b20603c00e3b2ef32159a690ed1e05d12c3") (:url . "http://xahlee.info/mswin/emacs_autohotkey_mode.html") (:keywords "languages"))]) (xah-replace-pairs . [(20170823 2028) ((emacs (24 1))) "emacs lisp functions for multi-pair find/replace." single ((:commit . "f051772e097723bafd05a7a05f283b900375ebd7") (:url . "http://ergoemacs.org/emacs/elisp_replace_string_region.html") (:keywords "lisp" "tools" "find replace"))]) (xah-reformat-code . [(20170821 411) nil "commands to reformat source code." single ((:commit . "7fec8b28e46b8cc2813fac5149e3bbb56c0aa6b1") (:url . "http://ergoemacs.org/emacs/emacs_reformat_lines.html") (:keywords "convenience"))]) (xah-math-input . [(20170905 849) ((emacs (24 1))) "a minor mode for inputting math and Unicode symbols." single ((:commit . "fcdfbed46ff81c8da84422611e0009c6b267e359") (:url . "http://ergoemacs.org/emacs/xmsi-math-symbols-input.html") (:keywords "abbrev" "convenience" "unicode" "math" "latex"))]) (xah-lookup . [(20171108 241) ((emacs (24 1))) "look up word on internet." single ((:commit . "3029d8ec04e841c57b7482c244a1733eb4c77cb5") (:url . "http://ergoemacs.org/emacs/xah-lookup.html") (:keywords "help" "docs" "convenience"))]) (xah-get-thing . [(20170821 353) ((emacs (24 1))) "get thing or selection at point." single ((:commit . "e3ef069ea9fea3a092689d45c94c6211b51d0ea4") (:url . "http://ergoemacs.org/emacs/elisp_get-selection-or-unit.html") (:keywords "extensions" "lisp" "tools"))]) (xah-fly-keys . [(20171204 1819) ((emacs (24 1))) "ergonomic modal keybinding minor mode." single ((:commit . "1f25c0df7d74a05ef93e46fbcc594d91cc07ec52") (:url . "http://ergoemacs.org/misc/ergoemacs_vi_mode.html") (:keywords "convenience" "emulations" "vim" "ergoemacs"))]) (xah-find . [(20170821 358) ((emacs (24 1))) "find replace in pure emacs lisp. Purpose similar to grep/sed." single ((:commit . "6b7a60d6210d42559b46f0e17d7a0e4a2607f887") (:url . "http://ergoemacs.org/emacs/elisp-xah-find-text.html") (:keywords "convenience" "extensions" "files" "tools" "unix"))]) (xah-elisp-mode . [(20170828 1) ((emacs (24 3))) "Major mode for editing emacs lisp." single ((:commit . "6e94446566df206911afa107d06aec50ac3a56fc") (:url . "http://ergoemacs.org/emacs/xah-elisp-mode.html") (:keywords "lisp" "languages"))]) (xah-css-mode . [(20170821 400) ((emacs (24 3))) "Major mode for editing CSS code." single ((:commit . "7167c7a9a0f0dcc167dafa833efd43a0c9ae4307") (:url . "http://ergoemacs.org/emacs/xah-css-mode.html") (:keywords "languages" "convenience" "css" "color"))]) (x86-lookup . [(20161215 448) ((emacs (24 3)) (cl-lib (0 3))) "jump to x86 instruction documentation" single ((:commit . "544a1ad4e8551c60e58e6c431470b6ef4ce7c5cb") (:url . "https://github.com/skeeto/x86-lookup"))]) (x509-mode . [(20170909 632) ((emacs (24 1)) (cl-lib (0 5))) "View certificates, CRLs and keys using OpenSSL." tar ((:commit . "240b5045dcce18190bdabd91d74f48d3610a6fe2"))]) (x-path-walker . [(20160922 1135) ((helm-core (1 9 2))) "Navigation feature for JSON/XML/HTML based on path (imenu like)" tar ((:commit . "3b01dbd7a039c6c84fdf8c8ee53ba72090ee950a") (:keywords "convenience"))]) (x-dict . [(20091203 1023) nil "emacs interface for several online dictionaries" single ((:commit . "920b2430bff9fb8c4bb7944aa358622545c00cee"))]) (www-synonyms . [(20170128 1451) ((request (0 2 0)) (cl-lib (0 5))) "insert synonym for a word" single ((:commit . "7e37ea35064ff31c9945f0198a653647d408c936") (:keywords "lisp"))]) (wwtime . [(20151122 810) nil "Insert a time of day with appropriate world-wide localization" single ((:commit . "d04d8fa814b5d3644efaeb28f25520ada69acbbd") (:keywords "time"))]) (wttrin . [(20170614 506) ((emacs (24 4)) (xterm-color (1 0))) "Emacs frontend for weather web service wttr.in" single ((:commit . "df5427ce2a5ad4dab652dbb1c4a1834d7ddc2abc") (:url . "https://github.com/bcbcarl/emacs-wttrin") (:keywords "comm" "weather" "wttrin"))]) (wsd-mode . [(20170731 837) nil "Emacs major-mode for www.websequencediagrams.com" tar ((:commit . "566ae4b45b4a34b985f1b363d6cdbd463ab6aba6") (:url . "https://github.com/josteink/wsd-mode") (:keywords "wsd" "diagrams" "design" "process" "modelling" "uml"))]) (ws-butler . [(20170111 1534) nil "Unobtrusively remove trailing whitespace." single ((:commit . "80dabd5d158929e8433e46207bb521282b21e4f3") (:url . "https://github.com/lewang/ws-butler"))]) (writeroom-mode . [(20170623 327) ((emacs (24 1)) (visual-fill-column (1 9))) "Minor mode for distraction-free writing" tar ((:commit . "9e924dd7dd83f10b026c89cddef7e1646f1a3869") (:keywords "text"))]) (writegood-mode . [(20170925 647) nil "Polish up poor writing on the fly" single ((:commit . "416453af5a44da52646052fa2ee3a63acfd7bf8a") (:url . "http://github.com/bnbeckwith/writegood-mode") (:keywords "writing" "weasel-words" "grammar"))]) (wrap-region . [(20140116 2320) ((dash (1 0 3))) "Wrap text with punctation or tag" single ((:commit . "fbae9b0f106187af19823f1a6260b5c68b7252e6") (:url . "http://github.com/rejeep/wrap-region") (:keywords "speed" "convenience"))]) (wotd . [(20170328 1248) ((emacs (24 4)) (org (8 2 10))) "Fetch word-of-the-day from multiple online sources" single ((:commit . "d2937a3d91e014f8028a1f33d21c18cc0b065a64") (:keywords "extensions"))]) (world-time-mode . [(20140627 107) nil "show whole days of world-time diffs" single ((:commit . "ce7a3b45c87eb24cfe61eee453175d64f741d7cc") (:keywords "tools" "calendar"))]) (workgroups2 . [(20141102 1122) ((cl-lib (0 4)) (dash (2 8 0)) (anaphora (1 0 0)) (f (0 17))) "New workspaces for Emacs" single ((:commit . "928d509157ec8a4a2e343b6115dff034c3243a7a") (:url . "https://github.com/pashinin/workgroups2") (:keywords "session" "management" "window-configuration" "persistence"))]) (workgroups . [(20110726 941) nil "workgroups for windows (for Emacs)" single ((:commit . "9572b3492ee09054dc329f64ed846c962b395e39") (:keywords "session" "management" "window-configuration" "persistence"))]) (worf . [(20171002 1118) ((swiper (0 7 0)) (ace-link (0 1 0)) (hydra (0 13 0)) (zoutline (0 1 0))) "A warrior does not press so many keys! (in org-mode)" tar ((:commit . "cf2f382b368bcb3c8ba4785a7fac8ee9300e80b5") (:url . "https://github.com/abo-abo/worf") (:keywords "lisp"))]) (wordsmith-mode . [(20171025 730) nil "Syntax analysis and NLP text-processing in Emacs (OSX-only)" single ((:commit . "589a97412138145bea70e0450eeddeb7f138d538"))]) (wordnut . [(20151002 1457) ((emacs (24 4))) "Major mode interface to WordNet" tar ((:commit . "6e223dced5b865e9d38af6f9b7e57b3a56d362bb"))]) (wordgen . [(20170803 1120) ((emacs (24)) (cl-lib (0 5))) "Random word generator" single ((:commit . "aacad928ae99a953e034a831dfd0ebdf7d52ac1d") (:url . "https://github.com/Fanael/wordgen.el"))]) (wonderland . [(20130912 1819) ((dash (2 0 0)) (dash-functional (1 0 0)) (multi (2 0 0)) (emacs (24))) "declarative configuration for Emacsen" single ((:commit . "89d274ad694b0e748efdac23ccd60b7d8b73d7c6") (:url . "http://github.com/kurisuwhyte/emacs-wonderland") (:keywords "configuration" "profile" "wonderland"))]) (wolfram . [(20170122 2356) nil "Wolfram Alpha Integration" single ((:commit . "6b5dceae3fd6cdb4d7562510deeafa02c93c010b") (:keywords "math"))]) (wn-mode . [(20151109 2152) ((emacs (24))) "numeric window switching shortcuts" single ((:commit . "f05c3151523e529af5a0a3fa8c948b61fb369f6e") (:url . "https://github.com/luismbo/wn-mode") (:keywords "buffers" "windows" "switching-windows"))]) (with-simulated-input . [(20170820 2317) ((emacs (24 4)) (seq (2 0)) (s (0))) "A macro to simulate user input non-interactively" single ((:commit . "af9a38ce28a741e6d8742750bef5d7b5afa13796") (:keywords "lisp" "tools" "extensions"))]) (with-namespace . [(20130407 1122) ((dash (1 1 0)) (loop (1 1))) "interoperable elisp namespaces" single ((:commit . "8ac52da3a09cf46087720e30cf730d00f140cde6") (:keywords "namespaces"))]) (with-editor . [(20171127 635) ((emacs (24 4)) (async (1 9))) "Use the Emacsclient as $EDITOR" tar ((:commit . "73d3d1ac1470001e184a5ead88f770eeb71a5461") (:url . "https://github.com/magit/with-editor") (:keywords "tools"))]) (wispjs-mode . [(20170720 1219) ((clojure-mode (0))) "Major mode for Wisp code." single ((:commit . "60f9f5fd9d1556e2d008939f67eb1b1d0f325fa8") (:url . "https://github.com/krisajenkins/wispjs-mode"))]) (wisp-mode . [(20160419 1232) nil "Tools for wisp: the Whitespace-to-Lisp preprocessor" single ((:keywords "languages" "lisp"))]) (winum . [(20171028 702) ((cl-lib (0 5)) (dash (2 13 0))) "Navigate windows and frames using numbers." single ((:commit . "c56d1cdb8d1723eb4c0d7a7eb3ecd2697739146c") (:url . "http://github.com/deb0ch/winum.el") (:keywords "convenience" "frames" "windows" "multi-screen"))]) (winring . [(20150804 1108) nil "Window configuration rings" single ((:commit . "ad400939b420b5a7914103b7cfe3f0f6574ea48f") (:url . "https://gitlab.com/warsaw/winring") (:keywords "frames" "tools"))]) (winpoint . [(20131023 1013) nil "Remember buffer positions per-window, not per buffer" single ((:commit . "e6050093c076308184566fa1d1012423d6934773") (:url . "https://github.com/jorgenschaefer/winpoint") (:keywords "convenience"))]) (winnow . [(20170903 506) ((emacs (24))) "winnow ag/grep results by matching/excluding lines" single ((:commit . "18cb6b94338f3b7b4f2cd0331dad22f82dd9e0d3") (:url . "https://github.com/dgtized/winnow.el") (:keywords "matching"))]) (windwow . [(20170815 1848) ((dash (2 11 0)) (cl-lib (0 6 1)) (emacs (24))) "simple workspace management" single ((:commit . "77bad26f651744b68d31b389389147014d250f23") (:url . "github.com/vijumathew/windwow") (:keywords "frames"))]) (windsize . [(20151121 540) nil "Simple, intuitive window resizing" single ((:commit . "beb6376fdf52afa6f220c89032448460faf76e7f") (:url . "http://github.com/grammati/windsize") (:keywords "window" "resizing" "convenience"))]) (window-purpose . [(20171107 659) ((emacs (24)) (cl-lib (0 5)) (let-alist (1 0 3)) (imenu-list (0 1))) "Purpose-based window management for Emacs" tar ((:commit . "2655bbe3399f00d3297ded58f92e7be22876148a") (:url . "https://github.com/bmag/emacs-purpose") (:keywords "frames"))]) (window-numbering . [(20160809 1110) nil "Numbered window shortcuts" single ((:commit . "10809b3993a97c7b544240bf5d7ce9b1110a1b89") (:url . "http://nschum.de/src/emacs/window-numbering-mode/") (:keywords "faces" "matching"))]) (window-number . [(20170731 1851) nil "Select windows by numbers." single ((:commit . "d41722de646ffeb3f70d26e4a86a5a1ba5c6be87") (:url . "https://github.com/nikolas/window-number") (:keywords "windows"))]) (window-layout . [(20170214 1633) nil "window layout manager" single ((:commit . "cd2e4f967b610c2bbef53182829e47250d027056") (:keywords "window" "layout"))]) (window-jump . [(20170809 1508) nil "Move left/right/up/down through your windows." single ((:commit . "6bdb51e9a346907d60a9625f6180bddd06be6674") (:url . "https://github.com/chumpage/chumpy-windows") (:keywords "frames" "convenience"))]) (window-end-visible . [(20140508 1341) nil "Find the last visible point in a window" single ((:commit . "525500fb2ebc08f3f9ea493972e5f2e1d79f89ef") (:url . "http://github.com/rolandwalker/window-end-visible") (:keywords "extensions"))]) (window+ . [(20170309 1437) nil "Extensions to `window.el'." single ((:url . "https://www.emacswiki.org/emacs/download/window%2b.el") (:keywords "internal" "window"))]) (windata . [(20090830 340) nil "convert window configuration to list" single ((:commit . "a723fc446ceaec23d5f29ecc8245d94c99d91625") (:keywords "convenience" "frames"))]) (win-switch . [(20161009 927) nil "fast, dynamic bindings for window-switching/resizing" single ((:commit . "954eb5e4c5737f0c06368c42a7f1c3dd374d782f") (:url . "http://www.stat.cmu.edu/~genovese/emacs/win-switch/") (:keywords "window" "switch" "key bindings" "ergonomic" "efficient"))]) (wimpy-del . [(20170309 1436) nil "Require confirmation for large region deletion." single ((:url . "https://www.emacswiki.org/emacs/download/wimpy-del.el") (:keywords "region" "cut" "kill" "copy"))]) (wilt . [(20151105 518) ((emacs (24 3)) (dash (2 12 0)) (s (1 10 0))) "An extensions for calculating WILT in a buffer." single ((:commit . "5febe367c6c3729848654358af4d17ee2987da8d") (:url . "https://github.com/sixty-north/emacs-wilt"))]) (wiki-summary . [(20150408 1422) ((emacs (24))) "View Wikipedia summaries in Emacs easily." single ((:commit . "ed3755dd09f5f73ef78ec295fe842d08b316c8a0") (:url . "https://github.com/jozefg/wiki-summary.el") (:keywords "wikipedia" "utility"))]) (wiki-nav . [(20150223 554) ((button-lock (1 0 2)) (nav-flash (1 0 0))) "Simple file navigation using [[WikiStrings]]" single ((:commit . "f9082feb329432fcf2ac49a95e64bed9fda24d58") (:url . "http://github.com/rolandwalker/button-lock") (:keywords "mouse" "button" "hypermedia" "navigation"))]) (widgetjs . [(20160719 804) ((makey (0 3)) (js2-mode (20140114)) (js2-refactor (0 6 1)) (s (1 9 0))) "Widgetjs mode" single ((:commit . "b05d584a4b3e0db168c3b920ce4a270b3908d842") (:keywords "help"))]) (widget-mvc . [(20150101 2006) nil "MVC framework for the emacs widgets" single ((:commit . "ff5a85880df7b87f9f480fe3c28438a0712b7b87") (:keywords "lisp" "widget"))]) (wide-column . [(20170925 913) nil "Calls functions dependant on column position." single ((:commit . "ce9ef4675485a7bea381077866368ef875226b10") (:keywords "minor mode" "cursor colour" "column width"))]) (wid-edit+ . [(20170309 1434) nil "Extensions to standard library `wid-edit.el'." single ((:url . "https://www.emacswiki.org/emacs/download/wid-edit%2b.el") (:keywords "widget" "color"))]) (whole-line-or-region . [(20170815 212) nil "operate on current line if region undefined" single ((:commit . "1220974153b7eaca5192ed87f86182d121e228e4") (:keywords "convenience" "wp"))]) (whizzml-mode . [(20171015 938) ((emacs (24 4))) "Programming mode for editing WhizzML files" tar ((:commit . "9060fdce07c137abc2c494cb72641b9b9d6fbe22") (:keywords "languages" "lisp"))]) (whitespace-cleanup-mode . [(20170505 1923) nil "Intelligently call whitespace-cleanup on save" single ((:commit . "6d0a35159ee04ef9f3b1a80c548f545643ddb397") (:url . "https://github.com/purcell/whitespace-cleanup-mode") (:keywords "convenience"))]) (white-theme . [(20160917 1043) ((emacs (24))) "Minimalistic light color theme inspired by basic-theme" single ((:commit . "e9e6d5b9d43da6eb15e86f5fbc8b1ba83abe8c78") (:url . "http://github.com/anler/white-theme.el") (:keywords "color" "theme" "minimal" "basic" "simple" "white"))]) (white-sand-theme . [(20151117 848) ((emacs (24))) "Emacs theme with a light background." single ((:commit . "97621edd69267dd143760d94393db2c2558c9ea4"))]) (whitaker . [(20150814 422) ((dash (2 10 0))) "Comint interface for Whitaker's Words" single ((:commit . "eaf26ea647b729ca705b73ea70312d5ffdf89448") (:keywords "processes"))]) (which-key . [(20171205 417) ((emacs (24 4))) "Display available keybindings in popup" single ((:commit . "159f0f9b78753574a1892ae3e47c8c1938965ea9") (:url . "https://github.com/justbur/emacs-which-key"))]) (what-the-commit . [(20150901 616) nil "Random commit message generator" single ((:commit . "868c80a1b8614bcbd2225cd0290142c72f2a7956") (:url . "http://barbarito.me/") (:keywords "git" "commit" "message"))]) (wgrep-pt . [(20140510 1531) ((wgrep (2 1 5))) "Writable pt buffer and apply the changes to files" single ((:commit . "1cdd7c136f1e7565bb13d2df69be3dc77b83698d") (:url . "http://github.com/mhayashi1120/Emacs-wgrep/raw/master/wgrep-pt.el") (:keywords "grep" "edit" "extensions"))]) (wgrep-helm . [(20170510 1539) ((wgrep (2 1 1))) "Writable helm-grep-mode buffer and apply the changes to files" single ((:commit . "1cdd7c136f1e7565bb13d2df69be3dc77b83698d") (:url . "http://github.com/mhayashi1120/Emacs-wgrep/raw/master/wgrep-helm.el") (:keywords "grep" "edit" "extensions"))]) (wgrep-ag . [(20160923 403) ((wgrep (2 1 5)) (cl-lib (0 5))) "Writable ag buffer and apply the changes to files" single ((:commit . "1cdd7c136f1e7565bb13d2df69be3dc77b83698d") (:url . "http://github.com/mhayashi1120/Emacs-wgrep/raw/master/wgrep-ag.el") (:keywords "grep" "edit" "extensions"))]) (wgrep-ack . [(20141012 311) ((wgrep (2 1 1))) "Writable ack-and-a-half buffer and apply the changes to files" single ((:commit . "1cdd7c136f1e7565bb13d2df69be3dc77b83698d") (:url . "http://github.com/mhayashi1120/Emacs-wgrep/raw/master/wgrep-ack.el") (:keywords "grep" "edit" "extensions"))]) (wgrep . [(20141016 1656) nil "Writable grep buffer and apply the changes to files" single ((:commit . "1cdd7c136f1e7565bb13d2df69be3dc77b83698d") (:url . "http://github.com/mhayashi1120/Emacs-wgrep/raw/master/wgrep.el") (:keywords "grep" "edit" "extensions"))]) (weibo . [(20150307 1442) ((cl-lib (0 5))) "Weibo client for Emacs" tar ((:commit . "a8abb50b7602fe15fe2bc6400ac29780e956b390") (:url . "https://github.com/austin-----/weibo.emacs") (:keywords "weibo"))]) (weechat-alert . [(20160416 548) ((weechat (0 3 1)) (cl-lib (0 5)) (alert (1 2))) "Weechat notifier using alerts" single ((:commit . "a8fd557c8f335322f132c1c6c08b6741d6394e2e") (:url . "https://github.com/kungi/weechat-alert") (:keywords "irc" "chat" "network" "weechat"))]) (weechat . [(20171128 440) ((s (1 3 1)) (cl-lib (0 2)) (emacs (24)) (tracking (1 2))) "Chat via WeeChat's relay protocol in Emacs" tar ((:commit . "f8e6a2361f4de2299b861dd8fea1d0a5502be7c4"))]) (wedge-ws . [(20140714 1449) nil "Wedge whitespace between columns in text" single ((:commit . "4669115f02d9c6fee067cc5369bb38c0f9db88b2") (:keywords "formatting" "indentation"))]) (websocket . [(20171113 2045) ((cl-lib (0 5))) "Emacs WebSocket client and server" single ((:commit . "7d2adf218743c52578c8e8fd5584a5e54732e256") (:keywords "communication" "websocket" "server"))]) (webpaste . [(20171025 956) ((emacs (24 4)) (request (0 2 0)) (cl-lib (0 5))) "Paste to pastebin-like services" single ((:commit . "f047313c656e0ea85033bacc564d02ae6f4605ff") (:url . "https://github.com/etu/webpaste.el") (:keywords "convenience" "comm" "paste"))]) (weblogger . [(20110926 918) ((xml-rpc (1 6 8))) "Weblog maintenance via XML-RPC APIs" single ((:commit . "b3dd4aead9d3a87e6d85e7fef4f4f3bd40d87b53") (:url . "http://launchpad.net/weblogger-el") (:keywords "weblog" "blogger" "cms" "movable" "type" "openweblog" "blog"))]) (web-server . [(20140905 1706) ((emacs (24 3))) "Emacs Web Server" tar ((:commit . "469cd3bc117bfb8da0c03a2a2fb185e80c81d068") (:url . "https://github.com/eschulte/emacs-web-server") (:keywords "http" "server" "network"))]) (web-search . [(20170911 1246) ((emacs (24 3))) "Open a web search" tar ((:commit . "bdf590e7d6d62e874810aa4c5017c48e4e93f823") (:url . "https://github.com/xuchunyang/web-search.el") (:keywords "web" "search"))]) (web-narrow-mode . [(20170406 1910) ((web-mode (14 0 27))) "quick narrow code block in web-mode" single ((:commit . "73bdcb7d0701abe65dab4fc295d944885e05ae33") (:url . "https://github.com/Qquanwei/web-narrow-mode") (:keywords "web-mode" "react" "narrow" "web"))]) (web-mode-edit-element . [(20161114 954) ((emacs (24 4)) (web-mode (14))) "Helper-functions for attribute- and element-handling" tar ((:commit . "8b8ac07aa8c920dafd94c96a51effb0d6c0ed1ce") (:url . "https://github.com/jtkDvlp/web-mode-edit-element") (:keywords "languages" "convenience"))]) (web-mode . [(20171118 1132) ((emacs (23 1))) "major mode for editing web templates" single ((:commit . "78d49396b0ddb5e60596dc4a2c09d7cbb5812ff5") (:url . "http://web-mode.org") (:keywords "languages"))]) (web-completion-data . [(20160318 148) nil "Shared completion data for ac-html and company-web" tar ((:commit . "c272c94e8a71b779c29653a532f619acad433a4f") (:url . "https://github.com/osv/web-completion-data") (:keywords "html" "auto-complete" "company"))]) (web-beautify . [(20161115 1447) nil "Format HTML, CSS and JavaScript/JSON" single ((:commit . "e1b45321d8c11b404b12c8e55afe55eaa7c84ee9") (:url . "https://github.com/yasuyk/web-beautify"))]) (web . [(20141231 1201) ((dash (2 9 0)) (s (1 5 0))) "useful HTTP client" single ((:commit . "483188dac4bc6b409b985c9dae45f3324a425efd") (:url . "http://github.com/nicferrier/emacs-web") (:keywords "lisp" "http" "hypermedia"))]) (weather-metno . [(20150831 1807) ((emacs (24)) (cl-lib (0 3))) "Weather data from met.no in Emacs" tar ((:commit . "bfc7137095e0ee71aad70ac46f2af677f3c051b6"))]) (wcheck-mode . [(20160711 2213) nil "General interface for text checkers" tar ((:commit . "d56345a1ec910a7d95103a441536cfba10ec9672"))]) (wc-mode . [(20170126 2029) nil "Running word count with goals (minor mode)" single ((:commit . "f218f42709a651b34d6c1ddd98856f44648ef707") (:url . "https://github.com/bnbeckwith/wc-mode"))]) (wc-goal-mode . [(20140829 659) nil "Running word count with goals (minor mode)" single ((:commit . "bf21ab9c5a449bcc20dd207a4915dcec218d2699") (:url . "https://github.com/bnbeckwith/wc-goal-mode"))]) (wavefront-obj-mode . [(20170808 1016) nil "Major mode for Wavefront obj files" single ((:commit . "34027915de6496460d8e68b5991dd24d47d54859") (:url . "http://github.com/abend/wavefront-obj-mode"))]) (watch-buffer . [(20120331 1344) nil "run a shell command when saving a buffer" single ((:commit . "761fd7252e6d7bf5148283c2a7ee935f087d9427") (:url . "https://github.com/mjsteger/watch-buffer") (:keywords "automation" "convenience"))]) (warm-night-theme . [(20161101 728) ((emacs (24))) "Emacs 24 theme with a dark background." single ((:commit . "020f084d23409b5035150508ba6e57c2509edd64"))]) (wanderlust . [(20171206 454) ((semi (1 14 7))) "Yet Another Message Interface on Emacsen" tar ((:commit . "6aa1a1ea570f3071647bd9d00d99e396156cbdc9"))]) (wandbox . [(20170603 531) ((emacs (24)) (request (0 3 0)) (s (1 10 0))) "Wandbox client" tar ((:commit . "e002fe41f2cd9b4ce2b1dc80b83301176e9117f1") (:url . "https://github.com/kosh04/emacs-wandbox") (:keywords "tools"))]) (wand . [(20171103 513) ((dash (20161121 55)) (s (20160928 636))) "Magic wand for Emacs - Select and execute" tar ((:commit . "83c0c723dae7d8a37e67a9d9f2d00e005b5486ca") (:url . "https://github.com/cmpitg/wand") (:keywords "extensions" "tools"))]) (wakatime-mode . [(20170517 2053) nil "Automatic time tracking extension for WakaTime" single ((:commit . "b1eae15f38a367017e519c10837c44650631b154") (:keywords "calendar" "comm"))]) (waher-theme . [(20141115 430) ((emacs (24 1))) "Emacs 24 theme based on waher for st2 by dduckster" single ((:commit . "60d31519fcfd8e797723d47961b255ae2f2e2c0a") (:url . "https://github.com/jasonm23/emacs-waher-theme"))]) (waf-mode . [(20170403 1240) nil "Waf integration for Emacs" single ((:commit . "20c75eabd1d54fbce8e0dbef785c9fb68577ee4f") (:url . "https://bitbucket.org/dvalchuk/waf-mode"))]) (wacspace . [(20140826 2232) ((dash (1 2 0)) (cl-lib (0 2))) "The WACky WorkSPACE manager for emACS" tar ((:commit . "4a11168d58c9c129cfcd04a1c9581962565eca4a"))]) (w3m . [(20171119 1701) nil "an Emacs interface to w3m" tar ((:commit . "2666d95df942f23e7837f27206b8352701fa22dd") (:keywords "w3m" "www" "hypermedia"))]) (w32browser-dlgopen . [(20170309 1433) nil "Use w32browser with standard Windows Open File box." single ((:url . "https://www.emacswiki.org/emacs/download/w32browser-dlgopen.el") (:keywords "files" "extensions" "convenience" "dialog"))]) (w32-browser . [(20170308 1518) nil "Run Windows application associated with a file." single ((:url . "https://www.emacswiki.org/emacs/download/w32-browser.el") (:keywords "mouse" "dired" "w32" "explorer"))]) (vue-mode . [(20171029 1905) ((mmm-mode (0 5 4)) (vue-html-mode (0 1)) (ssass-mode (0 1)) (edit-indirect (0 1 4))) "Major mode for vue component based on mmm-mode" single ((:commit . "a34f8a14fe6a680bb18cfa4519f7984d8071a4e3") (:keywords "languages"))]) (vue-html-mode . [(20170928 1057) nil "Major mode for editing Vue.js templates" single ((:commit . "9218c61ff1ab2bdc6a6711d21ad760198d3511a8") (:url . "http://github.com/AdamNiederer/vue-html-mode") (:keywords "languages" "vue" "template"))]) (volume . [(20150718 1309) nil "tweak your sound card volume from Emacs" single ((:commit . "ecc1550b3c8b501d37e0f0116b54b535d15f90f6") (:url . "http://www.brockman.se/software/volume-el/"))]) (volatile-highlights . [(20160611 1855) nil "Minor mode for visual feedback on some operations." single ((:commit . "9a20091f0ce7fc0a6b3e641a6a46d5f3ac4d8392") (:url . "http://www.emacswiki.org/emacs/download/volatile-highlights.el") (:keywords "emulations" "convenience" "wp"))]) (voca-builder . [(20161101 945) ((popup (0 5 2))) "Helps you build up your vocabulary" single ((:commit . "51573beec8cd8308477b0faf453aad93e17f57c5") (:url . "https://github.com/yitang/voca-builder") (:keywords "english" "vocabulary"))]) (vmd-mode . [(20161106 125) ((emacs (24 3))) "Fast Github-flavored Markdown preview using a vmd subprocess." single ((:commit . "e3b27f4f179002984643895292bb207c3e221a5c") (:url . "https://github.com/blak3mill3r/vmd-mode") (:keywords "markdown" "preview" "live" "vmd"))]) (vline . [(20120108 445) nil "show vertical line (column highlighting) mode." single ((:url . "http://www.emacswiki.org/cgi-bin/wiki/vline.el") (:keywords "faces" "editing" "emulating"))]) (vlf . [(20170830 1148) nil "View Large Files" tar ((:commit . "a01e9ed416cd81ccddebebbf05d4ca80060b07dc") (:url . "https://github.com/m00natic/vlfi") (:keywords "large files" "utilities"))]) (vkill . [(20091203 1022) nil "view and kill Unix processes from within Emacs" single ((:commit . "8ffe640ed03ddcc23db1c74c76d1acbf25250ad9"))]) (visual-regexp-steroids . [(20170221 1853) ((visual-regexp (1 1))) "Extends visual-regexp to support other regexp engines" tar ((:commit . "a6420b25ec0fbba43bf57875827092e1196d8a9e") (:url . "https://github.com/benma/visual-regexp-steroids.el/") (:keywords "external" "foreign" "regexp" "replace" "python" "visual" "feedback"))]) (visual-regexp . [(20170228 1716) ((cl-lib (0 2))) "A regexp/replace command for Emacs with interactive visual feedback" single ((:commit . "b3096c2d391ff4e28a2a4e8cd82efbf11071ea85") (:url . "https://github.com/benma/visual-regexp.el/") (:keywords "regexp" "replace" "visual" "feedback"))]) (visual-fill-column . [(20170502 1300) ((emacs (24 3))) "fill-column for visual-line-mode" single ((:commit . "57c2a72d46900117ea92e0a01b97e19481800503"))]) (visual-ascii-mode . [(20150129 246) nil "Visualize ascii code (small integer) on buffer." single ((:commit . "99285a099a17472ddd9f1b4f74e9d092dd8c5947") (:url . "https://github.com/Dewdrops/visual-ascii-mode") (:keywords "presentation"))]) (visible-mark . [(20150623 2150) nil "Make marks visible." single ((:commit . "a584db9bc88953b23a9648b3e14ade90767207f8") (:url . "https://gitlab.com/iankelling/visible-mark") (:keywords "marking" "color" "faces"))]) (virtualenvwrapper . [(20171119 1403) ((dash (1 5 0)) (s (1 6 1))) "a featureful virtualenv tool for Emacs" single ((:commit . "fa49954d44cb47a46d7a2bd8566ea21dd0823dea") (:url . "http://github.com/porterjamesj/virtualenvwrapper.el") (:keywords "python" "virtualenv" "virtualenvwrapper"))]) (virtualenv . [(20140220 1501) nil "Virtualenv for Python" single ((:commit . "276c0f4d6493b402dc4d22ecdf17b2b072e911b3") (:keywords "python" "virtualenv"))]) (vimrc-mode . [(20170814 1837) nil "Major mode for vimrc files" single ((:commit . "ba8140fba6e03a35b123acbd62fc8c6f0a03bf4a") (:url . "https://github.com/mcandre/vimrc-mode") (:keywords "languages" "vim"))]) (vimish-fold . [(20170730 2206) ((emacs (24 4)) (cl-lib (0 5)) (f (0 18 0))) "Fold text like in Vim" single ((:commit . "5e2875c18e2d8ef27f594e0ea1ca15a2f759be42") (:url . "https://github.com/mrkkrp/vimish-fold") (:keywords "convenience"))]) (vim-region . [(20140329 924) ((expand-region (20140127))) "Select region as vim" single ((:commit . "7c4a99ce3678fee40c83ab88e8ad075d2a935fdf") (:url . "https://github.com/ongaeshi/emacs-vim-region"))]) (vim-empty-lines-mode . [(20150110 2026) ((emacs (23))) "Vim-like empty line indicator at end of files." single ((:commit . "d4a5034ca8ea0c962ad6e92c86c0fa2a74d2964b") (:url . "https://github.com/jmickelin/vim-empty-lines-mode") (:keywords "emulations"))]) (viking-mode . [(20160705 1327) nil "kill first, ask later" single ((:commit . "c76aa265d13ad91d6890d242e142d05e31f0340b") (:url . "https://github.com/tlinden/viking-mode") (:keywords "kill" "delete"))]) (viewer . [(20170106 1802) nil "View-mode extension" single ((:commit . "6c8db025bf4021428f7f2c3ef9d74fb13f5d267a") (:url . "http://github.com/rubikitch/viewer/") (:keywords "view" "extensions"))]) (vi-tilde-fringe . [(20141027 1942) ((emacs (24))) "Displays tildes in the fringe on empty lines a la Vi." single ((:commit . "f1597a8d54535bb1d84b442577b2024e6f910308") (:url . "https://github.com/syl20bnr/vi-tilde-fringe") (:keywords "emulation"))]) (vhdl-tools . [(20171111 930) ((ggtags (0 8 12)) (emacs (25 2)) (outshine (2 0)) (helm (2 8 5))) "Utilities for navigating vhdl sources." single ((:commit . "6bbcbdfbff7154517178290371b0182a176c09b5") (:url . "https://csantosb.github.io/vhdl-tools/") (:keywords "vhdl"))]) (vhdl-capf . [(20160221 934) nil "Completion at point function (capf) for vhdl-mode." single ((:commit . "290abe217050f33532bc9ccb04f894123402f414") (:url . "https://github.com/sh-ow/vhdl-capf") (:keywords "convenience" "usability" "vhdl" "completion"))]) (vertigo . [(20160429 2105) ((dash (2 11 0))) "Jump across lines using the home row." single ((:commit . "70b56a57c3a37735cc9e92ffaa6dc27c64437738") (:url . "https://github.com/noctuid/vertigo.el") (:keywords "vim" "vertigo"))]) (vertica . [(20131217 711) ((sql (3 0))) "Vertica SQL mode extension" single ((:commit . "3c9647b425c5c13c30bf0cba483646af18196588") (:keywords "sql" "vertica"))]) (verify-url . [(20160426 528) ((cl-lib (0 5))) "find out invalid urls in the buffer or region" single ((:commit . "d6f3623cda8cd526a2d198619b137059cb1ba1ab") (:url . "https://github.com/lujun9972/verify-url") (:keywords "convenience" "usability" "url"))]) (vector-utils . [(20140508 1341) nil "Vector-manipulation utility functions" single ((:commit . "c38ca1c6a23b2b51a6ac36c2c64e50e21cbe9d21") (:url . "http://github.com/rolandwalker/vector-utils") (:keywords "extensions"))]) (vdirel . [(20170605 43) ((emacs (24 4)) (org-vcard (0 1 0)) (helm (1 7 0)) (seq (1 11))) "Manipulate vdir (i.e., vCard) repositories" single ((:commit . "72399f5e09f53aa25a068be8689cb711b8accf08"))]) (vdiff-magit . [(20170519 1407) ((emacs (24 4)) (vdiff (0 3)) (magit (2 10 0))) "magit integration for vdiff" single ((:commit . "1ccf0a8be5aad18648fd59c775a8dd6070398b74") (:url . "https://github.com/justbur/emacs-vdiff-magit") (:keywords "diff"))]) (vdiff . [(20170525 1231) ((emacs (24 4)) (hydra (0 13 0))) "A diff tool similar to vimdiff" single ((:commit . "66ae1ac324d9ec7ef87abee38f260734f036cf3d") (:url . "https://github.com/justbur/emacs-vdiff") (:keywords "diff"))]) (vcomp . [(20140906 1508) nil "compare version strings" single ((:commit . "092ef48a78e950c0576269d889be6caf9f6e61c5") (:url . "https://github.com/tarsius/vcomp") (:keywords "versions"))]) (vcl-mode . [(20170119 1251) nil "Syntax highlighting for Varnish Command Language" single ((:commit . "3d86c1352a7370d558d25f4c8f7be744e7d27332"))]) (vc-osc . [(20161119 1155) nil "non-resident support for osc version-control" single ((:commit . "8c09a0d5f69237285101554261b77d76b546a24b"))]) (vc-msg . [(20171106 1747) ((emacs (24 3)) (popup (0 5 0))) "Show commit information of current line" tar ((:commit . "9d40d94c0a73f46047e2f6d40be795638e5c3ebc") (:url . "http://github.com/redguardtoo/vc-msg") (:keywords "git" "vc" "svn" "hg" "messenger"))]) (vc-fossil . [(20171018 2216) nil "VC backend for the fossil sofware configuraiton management system" tar ((:commit . "abdb5487831e641c291c0dcb3848f539ca11f400"))]) (vc-darcs . [(20170904 2020) ((emacs (24))) "a VC backend for darcs" single ((:commit . "390fb1ebdda1ffac45b9be02626dde3b6d95ac11") (:keywords "vc"))]) (vc-check-status . [(20170107 534) nil "Warn you when quitting emacs and leaving repo dirty." tar ((:commit . "37734beb16bfd8633ea328059bf9a47eed826d5c") (:url . "https://github.com/thisirs/vc-check-status") (:keywords "vc" "convenience"))]) (vc-auto-commit . [(20170107 533) nil "Auto-committing feature for your repository" tar ((:commit . "446f664f4ec835532f4f18ba18b5fb731f6030aa") (:url . "http://github.com/thisirs/vc-auto-commit.git") (:keywords "vc" "convenience"))]) (vbasense . [(20140221 1553) ((auto-complete (1 4 0)) (log4e (0 2 0)) (yaxception (0 1))) "provide a environment like Visual Basic Editor." tar ((:commit . "8c61a492d7c15218ae1a96e2aebfe6f78bfff6db") (:url . "https://github.com/aki2o/emacs-vbasense") (:keywords "vba" "completion"))]) (vala-snippets . [(20150428 2052) ((yasnippet (0 8 0))) "Yasnippets for Vala" tar ((:commit . "671439501060449bd100b9fffd524a86064fbfbb") (:url . "https://github.com/gopar/vala-snippets"))]) (vala-mode . [(20150324 1525) nil "Vala mode derived mode" single ((:commit . "fb2871a4492d75d03d72e60474919ab89adb267b") (:keywords "vala" "languages" "oop"))]) (vagrant-tramp . [(20160427 1632) ((dash (2 12 0))) "Vagrant method for TRAMP" tar ((:commit . "453ba605b28d2964bb4e10074f1e6891ebb4d2d6") (:url . "https://github.com/dougm/vagrant-tramp") (:keywords "vagrant"))]) (vagrant . [(20170301 1406) nil "Manage a vagrant box from emacs" single ((:commit . "636ce2f9af32ea199170335a9cf1201b64873440") (:url . "https://github.com/ottbot/vagrant.el") (:keywords "vagrant" "chef"))]) (v2ex-mode . [(20160719 2045) ((cl-lib (0 5)) (request (0 2)) (let-alist (1 0 3))) "Major mode for visit http://v2ex.com/ site." single ((:commit . "b7d19bb594b43ea3824a6f215dd1e5d1d4c0e8ad") (:url . "https://github.com/aborn/v2ex-mode") (:keywords "v2ex" "v2ex.com"))]) (uuidgen . [(20140918 1601) nil "Provides various UUID generating functions" single ((:commit . "7eb96415484c3854a3f383d1a3e10b87ae674e22") (:keywords "extensions" "lisp" "tools"))]) (uuid . [(20120910 151) nil "UUID's for EmacsLisp" single ((:commit . "1519bfeb0e31602b840bc8dd35d7c7e732c159fe") (:keywords "lisp"))]) (utop . [(20170508 2343) ((emacs (24))) "Universal toplevel for OCaml" single ((:commit . "d6e873cafc40291f0fe27ac9fffb1051c0ab448d") (:url . "https://github.com/diml/utop") (:keywords "ocaml" "languages"))]) (use-package-ensure-system-package . [(20171205 1029) ((use-package (2 1)) (system-packages (0 1))) "auto install system packages" single ((:commit . "8a82221a395619ba325a611b50938f6bbca0ebed") (:url . "https://github.com/waymondo/use-package-ensure-system-package") (:keywords "convenience" "tools" "extensions"))]) (use-package-chords . [(20171205 1029) ((use-package (2 1)) (bind-key (1 0)) (bind-chord (0 2)) (key-chord (0 6))) "key-chord keyword for use-package" single ((:commit . "8a82221a395619ba325a611b50938f6bbca0ebed") (:url . "https://github.com/waymondo/use-package-chords") (:keywords "convenience" "tools" "extensions"))]) (use-package . [(20171206 1020) ((emacs (24 3)) (bind-key (2 4))) "A configuration macro for simplifying your .emacs" tar ((:commit . "b92b68d0c5848caa201bbcbe2650594dde8399fb") (:url . "https://github.com/jwiegley/use-package") (:keywords "dotemacs" "startup" "speed" "config" "package"))]) (usage-memo . [(20110722 851) nil "integration of Emacs help system and memo" single ((:url . "http://www.emacswiki.org/cgi-bin/wiki/download/usage-memo.el") (:keywords "convenience" "languages" "lisp" "help" "tools" "docs"))]) (urlenc . [(20140116 656) nil "URL encoding/decoding utility for Emacs." single ((:commit . "835a6dcb783bbe84714bae87a3464aa0b128bfac") (:url . "https://github.com/buzztaiki/urlenc-el") (:keywords "url"))]) (url-shortener . [(20170804 1942) nil "shorten long url and expand tinyurl" single ((:commit . "06db8270213b9e352d6c335b0663059a1353d05e") (:url . "https://github.com/yuyang0/url-shortener"))]) (uptimes . [(20170830 533) ((cl-lib (0 5)) (emacs (24))) "Track and display emacs session uptimes." single ((:commit . "c2c1b44b16a0fd873193b17c580ef3dfdacea580") (:url . "https://github.com/davep/uptimes.el") (:keywords "processes" "uptime"))]) (untitled-new-buffer . [(20161212 708) ((emacs (24 4)) (magic-filetype (0 2 0))) "Open untitled new buffer like other text editors." single ((:commit . "4eabc6937b0e83062ffce9de0d42110224063a6c") (:url . "https://github.com/zonuexe/untitled-new-buffer.el") (:keywords "files" "convenience"))]) (unkillable-scratch . [(20160504 1903) nil "Disallow buffers from being killed by regexp -- default is *scratch* buffer" single ((:commit . "676a5a97658830caece18fa65a23e3d113933151") (:keywords "scratch"))]) (unison-mode . [(20160513 801) nil "Syntax highlighting for unison file synchronization program" single ((:commit . "0bd6a65c0d12f87fcf7bdff15fe54444959b93bf") (:url . "https://github.com/impaktor/unison-mode") (:keywords "symchronization" "unison"))]) (unison . [(20160704 40) ((emacs (24 1))) "sync with Unison" single ((:commit . "a78a04c0d1398d00f75a1bd4799622a65bcb0f28") (:url . "http://github.com/unhammer/unison.el") (:keywords "sync"))]) (unipoint . [(20140113 1424) nil "a simple way to insert unicode characters by TeX name" single ((:commit . "5da04aebac35a5c9e1d8704f2231808d42f4b36a") (:url . "https://github.com/apgwoz/unipoint"))]) (unify-opening . [(20171122 1212) ((emacs (24 4))) "Unify the mechanism to open files" single ((:commit . "502469ddba6d8d52159f53976265f7d956b6b17c") (:url . "https://github.com/DamienCassou/unify-opening"))]) (unidecode . [(20140317 2118) ((cl-lib (0 4))) "Convert Unicode text into safe ASCII strings" tar ((:commit . "9e279e88a689584027d5a1b088fe5def25d0f75c"))]) (unicode-whitespace . [(20140508 1341) ((ucs-utils (0 7 6)) (list-utils (0 4 2)) (persistent-soft (0 8 8)) (pcache (0 2 3))) "teach whitespace-mode about fancy characters" single ((:commit . "a18c6b38d78b94f2eb1dcc4cb4fa91b6a17efabe") (:url . "http://github.com/rolandwalker/unicode-whitespace") (:keywords "faces" "wp" "interface"))]) (unicode-troll-stopper . [(20151023 1831) nil "Minor mode for Highlighting Unicode homoglyphs" single ((:commit . "15e4b57b78bf643bb56e5000078030cbb5c66e2a") (:url . "https://github.com/camsaul/emacs-unicode-troll-stopper") (:keywords "unicode"))]) (unicode-progress-reporter . [(20140508 1341) ((emacs (24 1 0)) (ucs-utils (0 7 6)) (list-utils (0 4 2)) (persistent-soft (0 8 8)) (pcache (0 2 3))) "Progress-reporter with fancy characters" single ((:commit . "5e66724fd7d15743213b082474d798117b194494") (:url . "http://github.com/rolandwalker/unicode-progress-reporter") (:keywords "interface"))]) (unicode-input . [(20141218 2320) nil "Support for unicode character input" single ((:keywords "unicode" "input"))]) (unicode-fonts . [(20150826 1532) ((font-utils (0 7 8)) (ucs-utils (0 8 2)) (list-utils (0 4 2)) (persistent-soft (0 8 10)) (pcache (0 3 1))) "Configure Unicode fonts" single ((:commit . "a36597d83e0248bd0e6b2c1d5fb95bff72add527") (:url . "http://github.com/rolandwalker/unicode-fonts") (:keywords "i18n" "faces" "frames" "wp" "interface"))]) (unicode-escape . [(20160614 534) ((emacs (24)) (names (20151201 0)) (dash (2 12 1))) "Escape/Unescape unicode notations" single ((:commit . "fc69ec780d9e54c364a9252bd0cf1d2507f3fab7") (:url . "https://github.com/kosh04/unicode-escape.el") (:keywords "i18n" "unicode"))]) (unicode-enbox . [(20140508 1341) ((string-utils (0 3 2)) (ucs-utils (0 7 6)) (list-utils (0 4 2)) (persistent-soft (0 8 8)) (pcache (0 2 3))) "Surround a string with box-drawing characters" single ((:commit . "77074fac1994a4236f111d6a1d0cf79ea3fca151") (:url . "http://github.com/rolandwalker/unicode-enbox") (:keywords "extensions" "interface"))]) (unicode-emoticons . [(20150204 308) nil "Shortcuts for common unicode emoticons" single ((:commit . "fb18631f342b0243cf77cf59ed2067c47aae5233") (:url . "https://github.com/hagleitn/unicode-emoticons") (:keywords "games" "entertainment" "comms"))]) (unfill . [(20170722 1846) nil "Unfill paragraphs or regions, and toggle between filled & unfilled" single ((:commit . "df0c4dee19a3874b11c7c7f04e8a2fba629fda9b") (:url . "https://github.com/purcell/unfill") (:keywords "utilities"))]) (undohist . [(20150315 542) ((cl-lib (1 0))) "Persistent undo history for GNU Emacs" single ((:commit . "d2239a5f736724ceb9e3b6bcaa86f4064805cda0") (:keywords "convenience"))]) (undo-tree . [(20170706 246) nil "Treat undo history as a tree" single ((:commit . "e9a9102f515acd7523158f20e83f300600374989") (:url . "http://www.dr-qubit.org/emacs.php") (:keywords "convenience" "files" "undo" "redo" "history" "tree"))]) (underwater-theme . [(20131117 1602) nil "A gentle, deep blue color theme" single ((:commit . "4eb9ef014f580adc135d91d1cd68d37a310640b6") (:keywords "faces"))]) (underline-with-char . [(20170814 223) ((emacs (24))) "Underline with a char" single ((:commit . "6daeba77e17dc11558ca3ccb0495524f5104d581") (:keywords "convenience"))]) (undercover . [(20170502 912) ((emacs (24)) (dash (2 0 0)) (shut-up (0 3 2))) "Test coverage library for Emacs Lisp" single ((:commit . "d947e6410a3b269c657645b499a413d90d4b69ca") (:url . "https://github.com/sviridov/undercover.el") (:keywords "lisp" "tests" "coverage" "tools"))]) (uncrustify-mode . [(20130707 659) nil "Minor mode to automatically uncrustify." single ((:commit . "73893d000361e95784911e5ec268ad0ab2a1473c") (:keywords "uncrustify"))]) (unbound . [(20160505 2355) nil "Find convenient unbound keystrokes" single ((:keywords "keyboard"))]) (ukrainian-holidays . [(20130720 649) nil "Ukrainian holidays for Emacs calendar." single ((:commit . "e52b0c92843e9f4d0415a7ba3b8559785497d23d") (:url . "https://github.com/abo-abo/ukrainian-holidays"))]) (ujelly-theme . [(20170905 1505) nil "Ujelly theme for GNU Emacs 24 (deftheme)" single ((:commit . "d08fe8e01db6df151b38c3001fba239a9a22369a") (:url . "http://github.com/marktran/color-theme-ujelly"))]) (uimage . [(20160901 521) nil "An iimage like mode with the ability to display url images" single ((:commit . "9893d09160ef7e8c0ecdcd74fca99ffeb5f9d70d") (:keywords "lisp" "url" "image"))]) (ucs-utils . [(20150826 714) ((persistent-soft (0 8 8)) (pcache (0 2 3)) (list-utils (0 4 2))) "Utilities for Unicode characters" tar ((:commit . "cbfd42f822bf5717934fa2d92060e6e24a813433") (:url . "http://github.com/rolandwalker/ucs-utils") (:keywords "i18n" "extensions"))]) (ucs-cmds . [(20170308 1512) nil "Commands to create commands that insert Unicode chars." single ((:url . "https://www.emacswiki.org/emacs/download/ucs-cmds.el") (:keywords "unicode" "characters" "encoding" "commands" "ucs-names"))]) (ubuntu-theme . [(20150805 806) nil "A theme inspired by the default terminal colors in Ubuntu" single ((:commit . "88b0eefc75d4cbcde103057e1c5968d4c3052f69") (:url . "http://github.com/rocher/ubuntu-theme"))]) (typoscript-mode . [(20170126 112) ((emacs (24 4)) (use-package (0))) "mode for TypoScript files" single ((:commit . "44e7567e921573c4f33c537b827f71fb1f565c32") (:url . "https://github.com/ksjogo/typoscript-mode") (:keywords "typo3" "typoscript"))]) (typo . [(20171005 1045) nil "Minor mode for typographic editing" single ((:commit . "73c8d960e9dcbb77a4ad6166b4685122a0f208ee") (:url . "https://github.com/jorgenschaefer/typoel") (:keywords "convenience" "wp"))]) (typit . [(20170519 51) ((emacs (24 4)) (f (0 18)) (mmt (0 1 1))) "Typing game similar to tests on 10 fast fingers" tar ((:commit . "bf6e72d76c0f3a68d7cd53c6580e92aa15d28dc5") (:url . "https://github.com/mrkkrp/typit") (:keywords "games"))]) (typing-game . [(20160426 520) nil "a simple typing game" single ((:commit . "616435a5270274f4c7b698697674dbb2039049a4") (:keywords "lisp" "game"))]) (typing . [(20171115 2331) nil "The Typing Of Emacs" single ((:commit . "1ada06484695b8959f4a7c41cacf7f78c2aad998") (:url . "http://www.emacswiki.org/emacs/TypingOfEmacs") (:keywords "games"))]) (typescript-mode . [(20171205 529) nil "Major mode for editing typescript" single ((:commit . "257326695531eb3320403a8624b7179b71fd1103") (:url . "http://github.com/ananthakumaran/typescript.el") (:keywords "typescript" "languages"))]) (typed-clojure-mode . [(20151003 1122) ((clojure-mode (2 1 1)) (cider (0 10 0 -3))) "Typed Clojure minor mode for Emacs" tar ((:commit . "3abd53d8cc1ad77ffe76e02849d0ab7731fd8364") (:url . "https://github.com/typedclojure/typed-clojure-mode"))]) (twittering-mode . [(20170312 735) nil "Major mode for Twitter" single ((:commit . "63c96fb029033b1a300b90aa922e167c7c405bcb") (:url . "http://twmode.sf.net/") (:keywords "twitter" "web"))]) (twilight-theme . [(20120412 603) nil "Twilight theme for GNU Emacs 24 (deftheme)" single ((:commit . "77c4741cb3dcf16e53d06d6c2ffdc660c40afb5b"))]) (twilight-bright-theme . [(20130605 143) nil "A Emacs 24 faces port of the TextMate theme" single ((:commit . "322157cb2f3bf7920ecd209dafc31bc1c7959f49") (:url . "https://github.com/jimeh/twilight-bright-theme.el") (:keywords "themes"))]) (twilight-anti-bright-theme . [(20160622 148) nil "A soothing Emacs 24 light-on-dark theme" single ((:commit . "523b95fcdbf4a6a6483af314ad05354a3d80f23f") (:url . "https://github.com/jimeh/twilight-anti-bright-theme.el") (:keywords "themes"))]) (twig-mode . [(20130220 1050) nil "A major mode for twig" single ((:commit . "2849f273a4855d3314a9c0cc84134f5b28ad5ea6"))]) (turnip . [(20150308 2329) ((dash (2 6 0)) (s (1 9 0))) "Interacting with tmux from Emacs" single ((:commit . "2fd32562fc6fc1cda6d91aa939cfb29f9b16e9de") (:keywords "terminals" "tools"))]) (turkish . [(20170910 811) nil "Convert to Turkish characters on-the-fly" single ((:commit . "9831a316c176bb21a1b91226323ea4133163e00c") (:url . "http://www.denizyuret.com/2006/11/emacs-turkish-mode.html") (:keywords "turkish" "languages" "automatic" "conversion"))]) (turing-machine . [(20170512 1438) ((emacs (24 4)) (cl-lib (0 6 1))) "Single-tape Turing machine simulator" single ((:commit . "4b5901a13b38028b05ce19cecc78bcd2f708f97d") (:url . "http://github.com/therockmandolinist/turing-machine") (:keywords "turing" "machine" "simulation"))]) (tup-mode . [(20140410 914) nil "Major mode for editing files for Tup" single ((:commit . "bcc100c6485f1c81fdcd1215dfc6c41a81c215c8") (:url . "https://github.com/ejmr/tup-mode"))]) (tumblesocks . [(20140215 1247) ((htmlize (1 39)) (oauth (1 0 3)) (markdown-mode (1 8 1))) "An Emacs tumblr client." tar ((:commit . "85a6cdc2db3390593fd886c474959b675460b310"))]) (tumble . [(20160111 2329) ((http-post-simple (0)) (cl-lib (0 5))) "an Tumblr mode for Emacs" single ((:commit . "e8fd7643cccf2b6ea4170f0c5f1f87d007e7fa00") (:keywords "tumblr"))]) (tuareg . [(20171204 1417) ((caml (3 12 0 1))) "OCaml mode for Emacs." tar ((:commit . "a6d1589e256d861bfb51c59756b0aa25e88dfb89") (:url . "https://github.com/ocaml/tuareg") (:keywords "ocaml" "languages"))]) (ttl-mode . [(20160505 132) nil "mode for Turtle (and Notation 3)" single nil]) (tt-mode . [(20130804 410) nil "Emacs major mode for editing Template Toolkit files." single ((:commit . "85ed3832e7eef391f7879d9990d59c7a3493c15e"))]) (tss . [(20150913 708) ((auto-complete (1 4 0)) (json-mode (1 1 0)) (log4e (0 2 0)) (yaxception (0 1))) "provide a interface for auto-complete.el/flymake.el on typescript-mode." tar ((:commit . "81ac6351a2ae258fd0ebf916dae9bd5a179fefd0") (:url . "https://github.com/aki2o/emacs-tss") (:keywords "typescript" "completion"))]) (ts-comint . [(20171105 2247) nil "Run a Typescript interpreter in an inferior process window." single ((:commit . "8817dc7b3a6eb78c3cad42e5677c2113274a1963") (:url . "https://github.com/josteink/ts-comint") (:keywords "typescript" "node" "inferior-mode" "convenience"))]) (try . [(20170226 805) ((emacs (24))) "Try out Emacs packages." single ((:commit . "271b0a362cadf44d0694628b9e213f54516ef913") (:url . "http://github.com/larstvei/try") (:keywords "packages"))]) (truthy . [(20140508 1341) ((list-utils (0 4 2))) "Test the content of a value" single ((:commit . "8ed8d07772aa8457554547eb17e264b5df2b4a69") (:url . "http://github.com/rolandwalker/truthy") (:keywords "extensions"))]) (trr . [(20170221 42) nil "a type-writing training program on GNU Emacs." tar ((:commit . "83660d8343ef3367837354dc684dfdde2f95826a") (:keywords "games" "faces"))]) (trident-mode . [(20130726 1207) ((emacs (24)) (slime (20130526)) (skewer-mode (1 5 0)) (dash (1 0 3))) "Live Parenscript interaction" single ((:commit . "ad3201f47e114de35df189c3d80f0fdea9507ea9") (:url . "https://github.com/johnmastro/trident-mode.el") (:keywords "languages" "lisp" "processes" "tools"))]) (treepy . [(20170722 355) ((emacs (25 1))) "Generic tree traversal tools" single ((:commit . "282fbc94747fe2a00d36e2a74d147c8fa0ac4be7") (:url . "https://github.com/volrath/treepy.el") (:keywords "lisp" "maint" "tools"))]) (treemacs-projectile . [(20171114 1009) ((projectile (0 14 0)) (treemacs (0))) "Projectile integration for treemacs" single ((:commit . "f62a946f0fc5db79d37fb748ab49334c4e3cbbfd") (:url . "https://github.com/Alexander-Miller/treemacs"))]) (treemacs-evil . [(20170925 2232) ((evil (1 2 12)) (treemacs (0))) "Evil mode integration for treemacs" single ((:commit . "f62a946f0fc5db79d37fb748ab49334c4e3cbbfd") (:url . "https://github.com/Alexander-Miller/treemacs"))]) (treemacs . [(20171203 639) ((emacs (24 4)) (cl-lib (0 5)) (dash (2 11 0)) (s (1 10 0)) (f (0 11 0)) (ace-window (0 9 0)) (pfuture (1 2)) (hydra (0 13 2))) "A tree style file explorer package" tar ((:commit . "f62a946f0fc5db79d37fb748ab49334c4e3cbbfd") (:url . "https://github.com/Alexander-Miller/treemacs"))]) (tree-mode . [(20151104 531) nil "A mode to manage tree widgets" single ((:commit . "b06078826d5875d74b0e7b7ac47b0d0917610534") (:keywords "help" "convenience" "widget"))]) (travis . [(20150825 438) ((s (1 9 0)) (dash (2 9 0)) (pkg-info (0 5 0)) (request (0 1 0))) "Emacs client for Travis" tar ((:commit . "754ef07c17fed17ab03664ad11e2b0b2ef5e78ed") (:url . "https://github.com/nlamirault/emacs-travis") (:keywords "travis"))]) (transpose-mark . [(20150405 16) nil "Transpose data using the Emacs mark" single ((:commit . "667327602004794de97214cf336ac61650ef75b7") (:keywords "transpose" "convenience"))]) (transpose-frame . [(20151126 626) nil "Transpose windows arrangement in a frame" single ((:commit . "011f420c3496b69fc22d789f64cb8091834feba7") (:keywords "window"))]) (transmission . [(20171029 1210) ((emacs (24 4)) (let-alist (1 0 5))) "Interface to a Transmission session" single ((:commit . "d78ae51fdc9292cc0b77dfb18279b38b6ccbf480") (:keywords "comm" "tools"))]) (transfer-sh . [(20160828 424) ((async (1 0))) "Simple interface for sending buffer contents to transfer.sh" single ((:commit . "70cd5c50b56ed2597221796014298417f503d10f") (:keywords "cloud" "upload" "share"))]) (tramp-term . [(20141104 1345) nil "Automatic setup of directory tracking in ssh sessions." single ((:commit . "983ed67ee65d26a51c641f306fa6b921ec83eeaf") (:url . "https://github.com/randymorris/tramp-term.el") (:keywords "tramp" "ssh"))]) (tramp-hdfs . [(20170821 620) ((emacs (24 4))) "Tramp extension to access hadoop/hdfs file system in Emacs" single ((:commit . "b64f24d0419a80dffaa2c4ecec317aa2bba56e35") (:keywords "tramp" "emacs" "hdfs" "hadoop" "webhdfs" "rest"))]) (tracwiki-mode . [(20150119 821) ((xml-rpc (1 6 8))) "Emacs Major mode for working with Trac" single ((:commit . "6a620444d59b438f42383b48cd4c19c03105dba6") (:keywords "trac" "wiki" "tickets"))]) (tracking . [(20151129 319) nil "Buffer modification tracking" tar ((:commit . "6b110d4c2c6447c4ed65cfa5b7e8676620081ee2") (:url . "https://github.com/jorgenschaefer/circe/wiki/Tracking"))]) (traad . [(20171130 2146) ((dash (2 13 0)) (deferred (0 3 2)) (popup (0 5 0)) (request (0 2 0)) (request-deferred (0 2 0)) (virtualenvwrapper (20151123))) "emacs interface to the traad refactoring server." single ((:commit . "78e67f7ecef4804cfd1b7c241ee2de8560600f4e") (:url . "https://github.com/abingham/traad"))]) (tql-mode . [(20170723 1954) ((emacs (24))) "TQL mode" single ((:commit . "488add79eb3fc8ec02aedaa997fe1ed9e5c3e638") (:keywords "languages" "tql"))]) (toxi-theme . [(20160424 1426) ((emacs (24))) "A dark color theme by toxi" single ((:url . "http://bitbucket.org/postspectacular/toxi-theme/"))]) (tox . [(20160810 855) nil "Launch current python test with tox" single ((:commit . "7655eb254038d5e34433e8a9d66b3ffc9c72e40c") (:url . "https://github.com/chmouel/tox.el") (:keywords "convenience" "tox" "python" "tests"))]) (totd . [(20150519 740) ((s (1 9 0)) (cl-lib (0 5))) "Display a random daily emacs command." single ((:commit . "ca47b618ea8290776cdb5b0f1c2c335691f69660") (:keywords "help"))]) (total-lines . [(20171206 923) ((emacs (24 3))) "Keep track of a buffer's total number of lines" single ((:commit . "01314f4c827c92347bd2f1e6411d196159a65519") (:url . "https://github.com/hinrik/total-lines") (:keywords "convenience" "mode-line"))]) (tornado-template-mode . [(20141128 208) nil "A major mode for editing tornado templates" single ((:commit . "667c0663dbbd279b6c345446b9f2bc50eb52b747"))]) (top-mode . [(20130605 1039) nil "run \"top\" from emacs" single ((:keywords "extensions" "processes"))]) (tool-bar+ . [(20170307 1542) nil "Extensions to standard library tool-bar.el" single ((:url . "https://www.emacswiki.org/emacs/download/tool-bar%2b.el") (:keywords "tool-bar" "convenience" "mouse" "button" "frame"))]) (tommyh-theme . [(20131004 1630) nil "A bright, bold-colored theme for emacs" single ((:commit . "46d1c69ee0a1ca7c67b569b891a2f28fed89e7d5"))]) (toml-mode . [(20161107 1000) ((emacs (24)) (cl-lib (0 5))) "Major mode for editing TOML files" single ((:commit . "f6c61817b00f9c4a3cab1bae9c309e0fc45cdd06") (:url . "https://github.com/dryman/toml-mode.el") (:keywords "data" "toml"))]) (toml . [(20130903 555) nil "TOML (Tom's Obvious, Minimal Language) parser" single ((:commit . "9633a6872928e737a2335aae1065768b23d8c3b3") (:url . "https://github.com/gongo/emacs-toml") (:keywords "toml" "parser"))]) (tomatinho . [(20161023 1853) nil "Simple and beautiful pomodoro timer" tar ((:commit . "7c301d343ecf7feac7348d1146075b2d9ba7d77a") (:keywords "time" "productivity" "pomodoro technique"))]) (toggle-window . [(20141207 748) nil "toggle current window size between half and full" single ((:commit . "e82c60e543933880402ede11e9423e48a17dde53") (:url . "https://github.com/deadghost/toggle-window") (:keywords "hide" "window"))]) (toggle-test . [(20140722 2237) nil "Toggle between source and test files in various programming languages" single ((:commit . "e969321f274903d705995a7d0345a257576ec5ff") (:url . "https://github.com/rags/toggle-test") (:keywords "tdd" "test" "toggle" "productivity"))]) (toggle-quotes . [(20140710 226) nil "Toggle between single and double quoted string" single ((:commit . "33abc221d6887f0518337851318065cd86c34b03") (:url . "https://github.com/toctan/toggle-quotes.el") (:keywords "convenience" "quotes"))]) (toggle . [(20160331 100) ((cl-lib (0 5))) "quickly open corresponding file (eg test vs impl)." single ((:commit . "c1b59448e103e32202423a56c873967033778a92") (:keywords "files" "extensions" "convenience"))]) (togetherly . [(20170425 2316) ((cl-lib (0 3))) "allow multiple clients to edit a single buffer online" single ((:commit . "a6491bd5dd84f2aded0cd112ff06ae76ff78dfeb") (:url . "http://hins11.yu-yake.com/"))]) (todotxt-mode . [(20150424 704) nil "Major mode for editing todo.txt files" single ((:commit . "dc6ae151edee88f329ba7abc5d39b7440002232f") (:keywords "wp" "files"))]) (todotxt . [(20170919 1141) nil "A major mode for editing todo.txt files" single ((:commit . "afa4079f15f705a4fa34ea8e14b122e73028f285") (:url . "https://github.com/rpdillon/todotxt.el") (:keywords "todo.txt" "todotxt" "todotxt.el"))]) (toc-org . [(20171009 156) nil "add table of contents to org-mode files (formerly, org-toc)" single ((:commit . "4d259c9cea3f575e5210974c025ebe3d51cc317f") (:url . "https://github.com/snosov1/toc-org") (:keywords "org-mode" "org-toc" "toc-org" "org" "toc" "table" "of" "contents"))]) (tmmofl . [(20121025 401) nil "Calls functions dependant on font lock highlighting at point" single ((:commit . "532aa6978e994e2b069ffe37aaf9a0011a07dadc") (:keywords "minor mode" "font lock" "toggling."))]) (tldr . [(20171023 1929) ((emacs (24 3))) "tldr client for Emacs" single ((:commit . "fe1bd5cee3d30741c816f3ccc118b94105ceba4c") (:url . "https://github.com/kuanyui/tldr.el") (:keywords "tools" "docs"))]) (tinysegmenter . [(20141124 213) ((cl-lib (0 5))) "Super compact Japanese tokenizer in Javascript ported to emacs lisp" single ((:commit . "872134704bd25c13a4c59552433da4c6881b5230") (:url . "https://github.com/myuhe/tinysegmenter.el") (:keywords "convenience"))]) (tiny-menu . [(20161213 435) ((emacs (24 4))) "Display tiny menus." single ((:commit . "05563b94537b6eb22aeddedef2a6e59e3f88d073") (:url . "https://github.com/aaronbieber/tiny-menu.el") (:keywords "menu" "tools"))]) (tiny . [(20170903 249) nil "Quickly generate linear ranges in Emacs" single ((:commit . "012b2e7a67b9f067bbfa0292479861ffbaa201fa") (:url . "https://github.com/abo-abo/tiny") (:keywords "convenience"))]) (tinkerer . [(20170906 524) ((s (1 2 0))) "Elisp wrapper for Tinkerer Blogging Engine." single ((:commit . "e34135555f3748b578c7f8706dfd0c888fb87581") (:url . "https://github.com/yyr/tinkerer.el") (:keywords "tinkerer" "blog" "wrapper"))]) (timp . [(20160618 103) ((emacs (24 4)) (cl-lib (0 5)) (fifo-class (1 0)) (signal (1 0))) "Multithreading library" tar ((:commit . "66b21934b1eb8ee428c06dd64b3562ad44776a35") (:url . "https://github.com/mola-T/timp") (:keywords "internal" "lisp" "processes" "tools"))]) (timonier . [(20170411 100) ((emacs (24 4)) (s (1 11 0)) (f (0 19 0)) (dash (2 12 0)) (pkg-info (0 5 0)) (hydra (0 13 6)) (request (0 2 0)) (all-the-icons (2 0 0))) "Manage Kubernetes Applications" tar ((:commit . "0a150ea87bf695b43cf1740dfd7e553e0ae7601c") (:url . "https://github.com/nlamirault/timonier") (:keywords "kubernetes" "docker"))]) (timesheet . [(20160530 1445) ((s (1)) (org (7)) (auctex (11))) "Timesheet management add-on for org-mode" tar ((:commit . "2ed6fea9b508eb7eaff659d9a34a09ba064d4df8") (:url . "https://github.com/tmarble/timesheet.el") (:keywords "org" "timesheet"))]) (timer-revert . [(20150122 1232) nil "minor mode to revert buffer for a given time interval." tar ((:commit . "615c91dec8b440d2b9b7c725dd733d7432564e45"))]) (timecop . [(20160520 352) ((cl-lib (0 5)) (datetime-format (0 0 1))) "Freeze Time for testing" single ((:commit . "e6427538b547cbe02e1bd6ed4b765c73620bdae8") (:url . "https://github.com/zonuexe/emacs-datetime") (:keywords "datetime" "testing"))]) (time-ext . [(20170126 415) nil "more function for time/date" single ((:commit . "d128becf660fe3f30178eb1b05cd266741f4784a") (:url . "http://www.emacswiki.org/cgi-bin/wiki/download/time-ext.el") (:keywords "lisp"))]) (tile . [(20161224 1957) ((emacs (25 1)) (s (1 9 0)) (dash (2 12 0)) (stream (2 2 3))) "Tile windows with layouts" single ((:commit . "22660f21f6e95de5aba55cd5d293d4841e9a4661") (:url . "https://github.com/IvanMalison/tile") (:keywords "tile" "tiling" "window" "manager" "dynamic" "frames"))]) (tidy . [(20111222 956) nil "Interface to the HTML Tidy program" single ((:url . "http://www.emacswiki.org/elisp/tidy.el") (:keywords "languages"))]) (tide . [(20171205 946) ((dash (2 10 0)) (s (1 11 0)) (flycheck (27)) (typescript-mode (0 1)) (cl-lib (0 5))) "Typescript Interactive Development Environment" tar ((:commit . "d6f70e20112dd52a0c2437710699038be5ac16d3") (:url . "http://github.com/ananthakumaran/tide") (:keywords "typescript"))]) (tickscript-mode . [(20171204 1316) ((emacs (24 1))) "A major mode for Tickscript files" single ((:commit . "4f8635c6c5165cebf0a57abb9d86aff3a9f9dc1c") (:url . "https://github.com/msherry/tickscript-mode") (:keywords "languages"))]) (thumb-through . [(20120118 2134) nil "Plain text reader of HTML documents" single ((:commit . "08d8fb720f93c6172653e035191a8fa9c3305e63") (:keywords "html"))]) (thumb-frm . [(20170307 1540) ((frame-fns (0)) (frame-cmds (0))) "Commands for thumbnail frames." single ((:url . "https://www.emacswiki.org/emacs/download/thumb-frm.el") (:keywords "frame" "icon"))]) (thrift . [(20140312 1348) nil "Major mode for Apache Thrift files" single ((:commit . "05a08ce9c177ffbe8c395fdc9e8f5a4c5daef02c") (:keywords "files"))]) (threes . [(20160820 542) ((emacs (24)) (seq (1 11))) "A clone of Threes (a tiny puzzle game)" single ((:commit . "6981acb30b856c77cba6aba63fefbf102cbdfbb2") (:url . "https://github.com/xuchunyang/threes.el") (:keywords "games"))]) (thread-dump . [(20170816 1150) nil "Java thread dump viewer" single ((:commit . "204c9600242756d4b514bb5ff6293e052bf4b49d") (:url . "http://github.com/nd/thread-dump.el"))]) (thinks . [(20170802 428) ((cl-lib (0 5))) "Insert text in a think bubble." single ((:commit . "c02f236abc8c2025d9f01460b09b89ebdc96e28d") (:url . "https://github.com/davep/thinks.el") (:keywords "convenience" "quoting"))]) (thingopt . [(20160520 1618) nil "Thing at Point optional utilities" single ((:commit . "5679815852652479f3b3c9f3a98affc927384b2c") (:keywords "convenience"))]) (thingatpt+ . [(20170307 1539) nil "Extensions to `thingatpt.el'." single ((:url . "https://www.emacswiki.org/emacs/download/thingatpt%2b.el") (:keywords "extensions" "matching" "mouse"))]) (thing-cmds . [(20170726 1355) ((hide-comnt (0))) "Commands that use things, as defined by `thingatpt.el'." single ((:url . "https://www.emacswiki.org/emacs/download/thing-cmds.el") (:keywords "thingatpt" "thing" "region" "selection"))]) (thesaurus . [(20121125 1137) nil "replace a word with a synonym looked up in a web service." single ((:url . "http://www.emacswiki.org/cgi-bin/wiki/thesaurus.el") (:keywords "thesaurus" "synonym"))]) (therapy . [(20151113 1153) ((emacs (24))) "Hooks for managing multiple Python major versions" single ((:commit . "775a92bb7b6b0fcc5b38c0b5198a9d0a1bef788a") (:url . "https://github.com/abingham/therapy"))]) (theme-looper . [(20170425 606) ((cl-lib (0 5))) "Loop thru the available color-themes" single ((:commit . "0feeed3c93fc54305499bda5953112487f25a3a0") (:url . "http://ismail.teamfluxion.com") (:keywords "convenience" "color-themes"))]) (theme-changer . [(20161130 1440) nil "Sunrise/Sunset Theme Changer for Emacs" single ((:commit . "60e3dd7cbd237225fef34179168006501a27b06b") (:url . "https://github.com/hadronzoo/theme-changer") (:keywords "color-theme" "deftheme" "solar" "sunrise" "sunset"))]) (tfs . [(20120508 1120) nil "MS Team Foundation Server commands for Emacs." single ((:url . "http://cheeso.members.winisp.net/srcview.aspx?dir=emacs&file=tfs.el"))]) (tf2-conf-mode . [(20161209 820) nil "TF2 Configuration files syntax highlighting" single ((:commit . "536950f64c071ffd8495fb2c7ac7c63a11e25f93") (:url . "https://github.com/wynro/emacs-tf2-conf-mode") (:keywords "languages"))]) (textx-mode . [(20170516 211) ((emacs (24 3))) "Major mode for editing TextX files" single ((:commit . "72f9f0c5855b382024f0da8f56833c22a70a5cb3") (:url . "https://github.com/novakboskov/textx-mode") (:keywords "textx"))]) (textmate-to-yas . [(20160409 1008) nil "Import Textmate macros into yasnippet syntax" tar ((:commit . "be3a768b7ac4c2e24b9d4aa6e9ac1d916cdc5a73") (:url . "https://github.com/mlf176f2/textmate-to-yas.el/") (:keywords "yasnippet" "textmate"))]) (textmate . [(20110816 1446) nil "TextMate minor mode for Emacs" single ((:commit . "350918b070148f0ace6d9d3cd4ebcaf15c1a8781") (:keywords "textmate" "osx" "mac"))]) (textile-mode . [(20170304 916) nil "Textile markup editing major mode" single ((:commit . "c37aaab809503df008209390e31e19abf4e23630"))]) (tex-smart-umlauts . [(20160427 58) nil "Smart umlaut conversion for TeX." single ((:commit . "5261b931443558f4252489a1e6616034848aff02") (:url . "http://hub.darcs.net/lyro/tex-smart-umlauts") (:keywords "tex" "wp"))]) (test-simple . [(20170527 832) ((cl-lib (0))) "Simple Unit Test Framework for Emacs Lisp" single ((:commit . "b3b69f52207d3a8111421ad7ab9ed82abbe85316") (:url . "http://github.com/rocky/emacs-test-simple") (:keywords "unit-test"))]) (test-kitchen . [(20171129 1235) nil "Run test-kitchen inside of emacs" single ((:commit . "0fc0ca4808425f03fbeb8125246043723e2a179a") (:url . "http://github.com/jjasghar/test-kitchen-el") (:keywords "chef" "ruby" "test-kitchen"))]) (test-case-mode . [(20130525 734) ((fringe-helper (0 1 1))) "unit test front-end" single ((:commit . "6074df10ebc97ddfcc228c71c73db179e672dac3") (:url . "http://nschum.de/src/emacs/test-case-mode/") (:keywords "tools"))]) (test-c . [(20170316 1432) ((emacs (24 3))) "quickly test c code" single ((:commit . "5a8c22a0e5ae6e2b0157bf1c41f0fe798c562a21") (:url . "http://github.com/aaptel/test-c"))]) (terraform-mode . [(20170111 2117) ((emacs (24 3)) (hcl-mode (0 3))) "Major mode for terraform configuration file" single ((:commit . "6973d1acaba2835dfdf174f5a5e27de6366002e1") (:url . "https://github.com/syohex/emacs-terraform-mode"))]) (tern-django . [(20160221 1123) ((emacs (24)) (tern (0 0 1)) (f (0 17 1))) "Create tern projects for django applications." tar ((:commit . "46f2cd5e96bc804069f18455a828b8e4c5ec358a") (:url . "https://github.com/proofit404/tern-django"))]) (tern-context-coloring . [(20161217 2347) ((emacs (24 3)) (context-coloring (8 1 0)) (tern (0 0 1))) "Use Tern for context coloring" single ((:commit . "3a8e979d6cc83aabcb3dda3f5f31a6422532efba") (:url . "https://github.com/jacksonrayhamilton/tern-context-coloring") (:keywords "convenience" "faces" "tools"))]) (tern-auto-complete . [(20170521 1235) ((tern (0 0 1)) (auto-complete (1 4)) (cl-lib (0 5)) (emacs (24))) "Tern Completion by auto-complete.el" single ((:commit . "ae83725819286d3f134a6b9956f1117b341e1040"))]) (tern . [(20170925 1333) ((json (1 2)) (cl-lib (0 5)) (emacs (24))) "Tern-powered JavaScript integration" single ((:commit . "ae83725819286d3f134a6b9956f1117b341e1040") (:url . "http://ternjs.net/"))]) (terminal-here . [(20171022 552) ((emacs (24)) (cl-lib (0 5))) "Run an external terminal in current directory" single ((:commit . "b3659e13d3d41503b4fc59dd2c7ea622631fc3ec") (:url . "https://github.com/davidshepherd7/terminal-here") (:keywords "tools" "frames"))]) (termbright-theme . [(20151030 1935) ((emacs (24 1))) "a more usable theme for white-on-black terminals" single ((:commit . "bec6ab14336c0611e85f45486276004f16d20607") (:url . "https://github.com/bmastenbrook/termbright-theme-el") (:keywords "themes"))]) (term-run . [(20151228 105) nil "Run arbitrary command in terminal buffer" single ((:commit . "54650dbbabb13cb2a6c0670ff6b24b29717a6a8b") (:url . "https://github.com/10sr/term-run-el") (:keywords "utility" "shell" "command" "term-mode"))]) (term-projectile . [(20170421 105) ((emacs (24)) (term-manager (0 1 0)) (projectile (0 13 0))) "projectile terminal management" single ((:commit . "13a0f1637a1f075d70211ccb8162e63a18a474da") (:url . "https://www.github.com/IvanMalison/term-manager") (:keywords "projectile" "tools" "terminals" "vc"))]) (term-manager . [(20171020 141) ((dash (2 12 0)) (emacs (24 4))) "Contextual terminal management" tar ((:commit . "13a0f1637a1f075d70211ccb8162e63a18a474da") (:url . "https://www.github.com/IvanMalison/term-manager") (:keywords "terminals" "tools"))]) (term-cmd . [(20160517 345) ((emacs (24 0)) (dash (2 12 0)) (f (0 18 2))) "Send commands from programs running in term.el." tar ((:commit . "6c9cbc659b70241d2ed1601eea34aeeca0646dac"))]) (term-alert . [(20161119 145) ((emacs (24 0)) (term-cmd (1 1)) (alert (1 1)) (f (0 18 2))) "Notifications when commands complete in term.el." tar ((:commit . "47af9e6fe483ef0d393098c145f499362a33292a"))]) (term+mux . [(20140210 2349) ((term+ (0 1)) (tab-group (0 1))) "term+ terminal multiplexer and session management" single ((:commit . "81b60e80cf008472bfd7fad9233af2ef722c208a") (:url . "http://github.com/tarao/term+-el") (:keywords "terminal" "emulation"))]) (term+key-intercept . [(20140210 2350) ((term+ (0 1)) (key-intercept (0 1))) "term+ intercept key mapping" single ((:commit . "fd0771fd66b8c7a909aaac972194485c79ba48c4") (:url . "http://github.com/tarao/term+-el") (:keywords "terminal" "emulation"))]) (term+ . [(20170508 1717) ((emacs (24)) (cl-lib (0 5))) "term-mode enhancement" tar ((:commit . "c3c9239b339c127231860de43abfa08c44c0201a") (:url . "https://github.com/tarao/term-plus-el") (:keywords "terminal" "emulation"))]) (ten-hundred-mode . [(20161028 1536) ((cl-lib (0 5))) "use only the ten hundred most usual words" tar ((:commit . "bdcfda49b1819e82d61fe90947e50bb948cf7933"))]) (temporary-persistent . [(20161210 333) ((emacs (24 3)) (names (20151201 0)) (dash (2 12 1)) (s (1 10 0))) "Keep temp notes buffers persistent -*- lexical-binding: t" single ((:commit . "ac66f3054fc701d53f11ada9d2d9ab18ea481dc0") (:url . "https://github.com/kostafey/temporary-persistent") (:keywords "temp" "buffers" "notes"))]) (telephone-line . [(20171109 1616) ((emacs (24 4)) (cl-lib (0 5)) (cl-generic (0 2)) (seq (1 8))) "Rewrite of Powerline" tar ((:commit . "b3eaf4b8254bb1031f85ce7ac73ffdc856059d9a") (:url . "https://github.com/dbordak/telephone-line") (:keywords "mode-line"))]) (telepathy . [(20131209 458) nil "Access Telepathy from Emacs" single ((:commit . "211d785b02a29ddc254422fdcc3db45262582f8c") (:keywords "telepathy" "tools"))]) (tea-time . [(20120331 120) nil "Simple timer package, useful to make perfect tea." single ((:commit . "1f6cf0bdd27c5eb3508989c5095427781f858eca") (:keywords "timer" "tea-time"))]) (tdd-status-mode-line . [(20131123 916) nil "TDD status on the mode-line" single ((:commit . "4c082e62f4915b573338a97efcc6854d132323dc") (:url . "https://github.com/algernon/tdd-status-mode-line") (:keywords "faces" "tdd"))]) (tco . [(20160810 1712) ((dash (1 2 0)) (emacs (24))) "tail-call optimisation for Emacs lisp" single ((:commit . "97529ed7a0939c51ce0084c0aa8b12b313654735"))]) (tc . [(20150113 1926) nil "a Japanese input method with T-Code on Emacs" tar ((:commit . "6aa9d27c475be8d009adf9cd417f2cdf348a91e8"))]) (tbx2org . [(20140224 759) ((dash (2 5 0)) (s (1 8 0)) (cl-lib (0 4))) "Tinderbox to org-mode conversion" single ((:commit . "08e9816ba6066f56936050b58d07ceb2187ae6f7") (:url . "https://github.com/istib/tbx2org") (:keywords "org-mode"))]) (tblui . [(20161007 1212) ((dash (2 12 1)) (magit-popup (2 6 0)) (tablist (0 70)) (cl-lib (0 5))) "Define tabulated list UI easily" single ((:commit . "bb29323bb3e27093d50cb42db3a9329a096b6e4d") (:url . "https://github.com/Yuki-Inoue/tblui.el"))]) (tawny-mode . [(20170422 1502) ((cider (0 12)) (emacs (25))) "Ontology Editing with Tawny-OWL" single ((:commit . "a8fc8300481a1e033a3811ccda54e552392d1689"))]) (tao-theme . [(20171126 2321) nil "This package provides two parametrized uncoloured color themes for Emacs: tao-yin and tao-yang." tar ((:commit . "e4e55cf2646c0479262db013b15b6831dd2069fa"))]) (tangotango-theme . [(20170924 809) nil "Tango Palette color theme for Emacs 24." single ((:commit . "e2f2ea9c35f06dfc43a29c91c14cf0cdb19f2144") (:url . "https://github.com/juba/color-theme-tangotango") (:keywords "tango" "palette" "color" "theme" "emacs"))]) (tango-plus-theme . [(20170214 908) nil "A color theme based on the tango palette" single ((:commit . "8ba8901397e3e9f1d53110487bfa0effc65015e7") (:url . "https://github.com/tmalsburg/tango-plus-theme"))]) (tango-2-theme . [(20120312 1325) nil "Tango 2 color theme for GNU Emacs 24" single ((:commit . "64e44c98e41ebbe3b827d54280e3b9615787daaa"))]) (take-off . [(20140531 217) ((emacs (24 3)) (web-server (0 1 0))) "Emacs remote web access" tar ((:commit . "aa9ea45566fc74febbb6ee9c409ecc4b59246215") (:url . "https://github.com/tburette/take-off"))]) (tagedit . [(20161121 55) ((s (1 3 1)) (dash (1 0 3))) "Some paredit-like features for html-mode" single ((:commit . "b3a70101a0dcf85498c92b7fcfa7fdbac869746c") (:keywords "convenience"))]) (tabula-rasa . [(20141215 2147) ((emacs (24 4))) "Distraction free writing mode" single ((:commit . "e85fff9de18dc31bc6a7aca726e34a95cc5459f5") (:url . "https://github.com/idomagal/Tabula-Rasa/blob/master/tabula-rasa.el") (:keywords "distraction free" "writing"))]) (tablist . [(20170219 1935) ((emacs (24 3))) "Extended tabulated-list-mode" tar ((:commit . "c834a84efb6efa32497efe1e73160fade741b836") (:keywords "extensions" "lisp"))]) (tabbar-ruler . [(20160801 2007) ((tabbar (2 0 1)) (powerline (2 3)) (mode-icons (0 4 0)) (cl-lib (0 5))) "Pretty tabbar, autohide, use both tabbar/ruler" tar ((:commit . "535568189aa12a3eff7f977d2783e57b6a65ab6a") (:url . "http://github.com/mlf176f2/tabbar-ruler.el") (:keywords "tabbar" "ruler mode" "menu" "tool bar."))]) (tabbar . [(20160524 1401) nil "Display a tab bar in the header line" tar ((:commit . "b6c285a7d59dcdb1f17716f0b60787922fa4be82") (:keywords "convenience"))]) (tab-jump-out . [(20151005 1830) ((dash (2 10)) (emacs (24 4))) "Use tab to jump out of delimiter pairs." single ((:commit . "1c3fec1826d2891177ea78e4e7cce1dc67e83e51") (:keywords "tab" "editing"))]) (tab-group . [(20140306 650) nil "Grouped tabs and their tabbar" single ((:commit . "5a290ec2608e4100fb188fd60ecb77affcc3465b") (:url . "http://github.com/tarao/tab-group-el") (:keywords "convenience" "tabs"))]) (ta . [(20160619 945) ((emacs (24 3)) (cl-lib (0 5))) "A tool to deal with Chinese homophonic characters" single ((:commit . "668ad41e71f374f8c32c8d0532f3d8485b355d35") (:url . "http://github.com/kuanyui/ta.el") (:keywords "tools"))]) (systemtap-mode . [(20151122 1140) nil "A mode for SystemTap" single ((:commit . "1a968c2b1f3a054bebf91ac49739d3a81ce050a9") (:url . "https://github.com/ruediger/systemtap-mode") (:keywords "tools" "languages"))]) (systemd . [(20171006 1352) ((emacs (24 4))) "Major mode for editing systemd units" tar ((:commit . "22f024fe8f433af7b6a6b99520cea1e766894fe5") (:keywords "tools" "unix"))]) (system-specific-settings . [(20140818 757) nil "Apply settings only on certain systems" single ((:commit . "0050d85b2175095aa5ecf580a2fe43c069b0eef3") (:url . "https://github.com/DarwinAwardWinner/emacs-system-specific-settings") (:keywords "configuration"))]) (system-packages . [(20171120 1205) ((cl-lib (0 5))) "functions to manage system packages" single ((:commit . "1ec26d1d32a95de6f201571d85f4f12b9975c580") (:url . "https://github.com/jabranham/system-packages"))]) (syntax-subword . [(20160519 1205) nil "make operations on words more fine-grained" single nil]) (syntactic-sugar . [(20140508 1341) nil "Effect-free forms such as if/then/else" single ((:commit . "7ddc4502c831abe1c4ad4c7d1ca628a2c9e13968") (:url . "http://github.com/rolandwalker/syntactic-sugar") (:keywords "extensions"))]) (syntactic-close . [(20171004 1037) ((emacs (24)) (cl-lib (0 5))) "Insert closing delimiter" single ((:commit . "e2cd1f332d111b0e90d9a72f35bc969c7638b7cf") (:keywords "languages" "convenience"))]) (synquid . [(20160930 850) ((flycheck (27)) (emacs (24 3))) "Major mode for editing Synquid files" single ((:commit . "28701ce1a15437202f53ab93a14bcba1de83fd2c") (:url . "https://github.com/cpitclaudel/synquid-mode") (:keywords "languages"))]) (synosaurus . [(20170621 957) ((cl-lib (0 5))) "An extensible thesaurus supporting lookup and substitution." tar ((:commit . "acc4c634eb7c7f6dd9bce8610efa7fc900e9c47b") (:url . "https://github.com/hpdeifel/synosaurus"))]) (synonyms . [(20170307 1537) nil "Look up synonyms for a word or phrase in a thesaurus." single ((:url . "https://www.emacswiki.org/emacs/download/synonyms.el") (:keywords "text" "dictionary" "thesaurus" "spelling" "apropos" "help"))]) (synonymous . [(20160721 2255) ((emacs (24)) (cl-lib (0 5)) (request (0 2 0))) "A thesaurus at your fingertips" single ((:commit . "1cbdc016c70ed3834c514621f9a33adc93707024") (:url . "http://github.com/toroidal-code/synonymous.el") (:keywords "utility"))]) (syndicate . [(20160603 823) ((evil (1 0))) "evil keybindings for org-mode" single ((:commit . "90cee202a06f5bab48268ebf9f62c43334b69f50") (:url . "https://github.com/KNX32542/syndicate.git") (:keywords "evil" "org" "bindings"))]) (sync-recentf . [(20160326 1301) nil "Synchronize the recent files list between Emacs instances" single ((:commit . "0052561d5c5b5c2684faedc3eead776aec06c3ed") (:url . "https://github.com/ffevotte/sync-recentf") (:keywords "recentf"))]) (symon-lingr . [(20150719 642) ((symon (1 1 2)) (cl-lib (0 5))) "A notification-based Lingr client powered by symon.el" single ((:commit . "056d1a473e36992ff5881e5ce6fdc331cead975f") (:url . "http://hins11.yu-yake.com/"))]) (symon . [(20170224 33) nil "tiny graphical system monitor" single ((:commit . "8dd8b6df49b03cd7d31b85aedbe9dd08fb922335") (:url . "http://hins11.yu-yake.com/"))]) (symbol-overlay . [(20171103 2306) ((emacs (24 3))) "Highlight symbols with keymap-enabled overlays" single ((:commit . "305ef1d283923d2b0f1cd751f57f71754ab714e6") (:url . "https://github.com/wolray/symbol-overlay/") (:keywords "faces" "matching"))]) (sx . [(20170521 1832) ((emacs (24 1)) (cl-lib (0 5)) (json (1 3)) (markdown-mode (2 0)) (let-alist (1 0 3))) "StackExchange client. Ask and answer questions on Stack Overflow, Super User, and the likes" tar ((:commit . "8f1e3346286cfa5a5299ef192cc5aca3f37a7745") (:url . "https://github.com/vermiculus/sx.el/") (:keywords "help" "hypermedia" "tools"))]) (sws-mode . [(20150317 1245) nil "(S)ignificant (W)hite(S)pace mode" single ((:commit . "4dbde92542fc7ad61df38776980905a4721d642e") (:url . "https://github.com/brianc/jade-mode"))]) (swoop . [(20160120 915) ((ht (2 0)) (pcre2el (1 5)) (async (1 1)) (emacs (24))) "Peculiar buffer navigation for Emacs" tar ((:commit . "a5e475db7a9f5db02ba3d08cd3c1c3594e2e01d7") (:url . "https://github.com/ShingoFukuyama/emacs-swoop") (:keywords "swoop" "inner" "buffer" "search" "navigation"))]) (switch-window . [(20170718 1932) ((cl-lib (0 5))) "A *visual* way to choose a window to switch to" tar ((:commit . "67113287ba61ce1951363a49f54148743dcea51e") (:url . "https://github.com/dimitri/switch-window") (:keywords "window" "navigation"))]) (switch-buffer-functions . [(20171011 1004) nil "Hook run when current buffer changed" single ((:commit . "651696ef9dec7affbe51c81d9318288376c35899") (:url . "https://github.com/10sr/switch-buffer-functions-el") (:keywords "hook" "utility"))]) (swiper-helm . [(20151116 330) ((emacs (24 1)) (swiper (0 1 0)) (helm (1 5 3))) "Helm version of Swiper." single ((:commit . "57012ab626486fcb3dfba0ee6720b0625e489b8c") (:url . "https://github.com/abo-abo/swiper-helm") (:keywords "matching"))]) (swiper . [(20171130 1143) ((emacs (24 1)) (ivy (0 9 0))) "Isearch with an overview. Oh, man!" single ((:commit . "b64c6e6bb5eed0f92cb6d65835490a326c04266c") (:url . "https://github.com/abo-abo/swiper") (:keywords "matching"))]) (swift3-mode . [(20160918 550) ((emacs (24 4))) "Major-mode for Apple's Swift programming language." tar ((:commit . "4e51265c6905e17d8910e35b0b37cf51e20ecdfe") (:url . "https://github.com/taku0/swift3-mode") (:keywords "languages" "swift"))]) (swift-mode . [(20171202 2314) ((emacs (24 4)) (seq (2 3))) "Major-mode for Apple's Swift programming language." tar ((:commit . "18c3dc47dfece59640ad501266f2e47b918f2a14") (:url . "https://github.com/swift-emacs/swift-mode") (:keywords "languages" "swift"))]) (sweetgreen . [(20151207 916) ((dash (2 12 1)) (helm (1 5 6)) (request (0 2 0)) (cl-lib (0 5))) "Order Salads from sweetgreen.com" single ((:commit . "a456dd7948a25da8ff007a142cf1325b4855d908") (:url . "https://www.github.com/CestDiego/sweetgreen.el") (:keywords "salad" "food" "sweetgreen" "request"))]) (swbuff-x . [(20130607 314) ((swbuff (19991231 1800))) "Modifications to David Ponce's swbuff" single ((:url . "http://www.emacswiki.org/elisp/swbuff-x.el") (:keywords "files" "convenience"))]) (swbuff . [(20160824 707) nil "Quick switch between Emacs buffers." single ((:commit . "8d5b2bec12503509554f9dd83b97c198b259db2b") (:keywords "extensions" "convenience"))]) (swap-regions . [(20160413 1023) ((emacs (24 3))) "Swap two regions of text" single ((:commit . "2789091b6f34c0d4b82546eb39c4e73dc96e8679") (:url . "https://github.com/xuchunyang/swap-regions.el") (:keywords "convenience"))]) (swap-buffers . [(20150506 1439) nil "The quickest way to swap buffers between windows. Based on switch-window package." single ((:commit . "46ab31359b70d935add6c6e9533443116dc51103") (:url . "https://github.com/ekazakov/swap-buffers") (:keywords "window" "swap" "buffer" "exchange"))]) (swagger-to-org . [(20160610 1756) ((emacs (24)) (cl-lib (0 5)) (json (1 4))) "Convert a swagger.json file into an org-mode file" single ((:commit . "181357c71ea24bede263f5706d8781ad65e16877") (:url . "https://github.com/ahungry/swagger-to-org") (:keywords "ahungry" "emacs" "swagger" "openapi" "orgmode" "org" "export"))]) (svg-mode-line-themes . [(20150425 1306) ((xmlgen (0 4))) "SVG-based themes for mode-line" tar ((:commit . "80a0e01839cafbd66899202e7764c33231974259") (:url . "https://github.com/sabof/svg-mode-line-themes"))]) (suscolors-theme . [(20161109 1215) nil "Colorful theme, inspired by Gruvbox." single ((:commit . "b946e7924aa02fa7441c970026898f17fe97601f") (:url . "https://github.com/TheSuspiciousWombat/SusColors-emacs"))]) (supergenpass . [(20130328 2248) nil "SuperGenPass for Emacs" single ((:commit . "549072ef7b5b82913cadd4758e8a0a9926f0a04a") (:keywords "supergenpass"))]) (super-save . [(20171008 3) ((emacs (24 4))) "Auto-save buffers, based on your activity." single ((:commit . "1c8fbd5e18277e4af0ada2678a854b1c9072db38") (:url . "https://github.com/bbatsov/super-save") (:keywords "convenience"))]) (suomalainen-kalenteri . [(20170801 126) nil "Finnish national and Christian holidays for calendar" tar ((:commit . "c702e33cb6e13cb28bd761844e95be112a3c04f3"))]) (sunshine . [(20160410 1317) ((cl-lib (0 5))) "Provide weather and forecast information." single ((:commit . "11e49846a116bdec6e2e463bed2db4c2df9c8ad2") (:url . "https://github.com/aaronbieber/sunshine.el") (:keywords "tools" "weather"))]) (sunny-day-theme . [(20140413 1425) nil "Emacs24 theme with a light background." single ((:commit . "420e0a6eb33fcc9b75c2c9e88ab60a975d782a00") (:url . "http://github.com/mswift42/sunny-day-theme"))]) (sunburn-theme . [(20171101 1126) ((emacs (24))) "A low contrast color theme" single ((:commit . "c57190f87e2e6c5ef6c7fbfd40964eb8f11b32ca") (:url . "http://github.com/mvarela/Sunburn-Theme"))]) (summarye . [(20130328 327) nil "list up matched strings from a buffer, and display them in summary buffer" single nil]) (suggestion-box . [(20170830 107) ((emacs (25 1)) (popup (0 5 3))) "show tooltip on the cursor" single ((:commit . "50af0776c8caf3c79c4d37fd51cbf304ea34b68e") (:keywords "convenience"))]) (suggest . [(20171016 1420) ((emacs (24 4)) (loop (1 3)) (dash (2 13 0)) (s (1 11 0)) (f (0 18 2))) "suggest elisp functions that give the output requested" single ((:commit . "345e00569333095eb24e61239a80b0f0c77b2d11") (:url . "https://github.com/Wilfred/suggest.el") (:keywords "convenience"))]) (sudoku . [(20161110 2306) ((emacs (24 4))) "Simple sudoku game, can download puzzles" single ((:commit . "77c11b5041b58fc943cf1668b44b40bae039cb5b") (:keywords "games"))]) (sudo-ext . [(20170126 414) nil "sudo support" single ((:commit . "9d4580f304121ce7b8104bd4bd3b64e4dfa3c9b3") (:url . "http://www.emacswiki.org/cgi-bin/wiki/download/sudo-ext.el") (:keywords "unix"))]) (sudo-edit . [(20170803 2052) ((emacs (24)) (cl-lib (0 5))) "Open files as another user" single ((:commit . "bcb12aaa0da0c56d851cfa2f1b3ea4afdd2a755b") (:url . "https://github.com/nflath/sudo-edit") (:keywords "convenience"))]) (subr+ . [(20170501 916) nil "Extensions to standard library `subr.el'." single ((:url . "https://www.emacswiki.org/emacs/download/subr%2b.el") (:keywords "strings" "text"))]) (sublimity . [(20170820 827) ((cl-lib (0 3))) "smooth-scrolling, minimap and distraction-free mode" tar ((:commit . "62b0c526c599a0178a16a75f16513fc1f93a0d53") (:url . "https://github.com/zk-phi/sublimity"))]) (sublime-themes . [(20170606 1144) nil "A collection of themes based on Sublime Text" tar ((:commit . "60ee40af82eb55b79d5ed4026f1911326311603f") (:keywords "faces"))]) (subemacs . [(20170401 234) nil "Evaluating expressions in a fresh Emacs subprocess" single ((:commit . "18d53939fec8968c08dfc5aff7240ca07efb1aac") (:url . "https://github.com/kbauer/subemacs") (:keywords "extensions" "lisp" "multiprocessing"))]) (subatomic256-theme . [(20130620 1910) nil "Fork of subatomic-theme for terminals." single ((:commit . "326177d6f99cd2b1d30df695e67ee3bc441cd96f") (:url . "https://github.com/cryon/subatomic256"))]) (subatomic-theme . [(20160126 738) nil "Low contrast bluish color theme" single ((:commit . "6a4086af748b1ecb27f6ba2aa2614988db16d594") (:url . "https://github.com/cryon/subatomic") (:keywords "color-theme" "blue" "low contrast"))]) (stylus-mode . [(20150313 812) ((sws-mode (0))) "Major mode for editing .jade files" single ((:commit . "4dbde92542fc7ad61df38776980905a4721d642e") (:url . "https://github.com/brianc/jade-mode"))]) (stylefmt . [(20161025 124) nil "Stylefmt interface" single ((:commit . "7a38f26bf8ff947215f34f0a064c7ca80575ccbc") (:url . "https://github.com/KeenS/stylefmt.el") (:keywords "style" "code" "formatter"))]) (stupid-indent-mode . [(20170525 417) nil "Plain stupid indentation minor mode" single ((:commit . "3295e7de5e2cfddc3bf0e462e852bf58972f5d70"))]) (stumpwm-mode . [(20140130 1816) nil "special lisp mode for evaluating code into running stumpwm" single ((:commit . "61a7cf27e49e0779a53c018b2342f5f1c5cc70b4") (:keywords "comm" "lisp" "tools"))]) (stripe-buffer . [(20141208 708) ((cl-lib (1 0))) "Use a different background for even and odd lines" single ((:commit . "c252080f55cb78c951b19ebab9687f6d00237baf") (:url . "https://github.com/sabof/stripe-buffer"))]) (strings . [(20170307 1533) nil "Miscellaneous string functions." single ((:url . "https://www.emacswiki.org/emacs/download/strings.el") (:keywords "internal" "strings" "text"))]) (string-utils . [(20140508 1341) ((list-utils (0 4 2))) "String-manipulation utilities" single ((:commit . "c2232d691617973ecf12a970c6008a161c21da14") (:url . "http://github.com/rolandwalker/string-utils") (:keywords "extensions"))]) (string-inflection . [(20171117 1731) nil "underscore -> UPCASE -> CamelCase -> lowerCamelCase conversion of names" single ((:commit . "e644c8bf2a5e36ddadcfe4de657588c00fd368dd") (:keywords "elisp"))]) (string-edit . [(20160410 2356) ((dash (1 2 0))) "Avoid escape nightmares by editing string in separate buffer" single ((:commit . "c44b65b4c5e9f52be9c14d88ca2f402a18d9e1dd"))]) (strie . [(20160211 1422) ((cl-lib (0 5))) "A simple trie data structure implementation" single ((:commit . "eb7efb0cccc127c414f6a64db11454869d9c10a8"))]) (strace-mode . [(20171116 1239) nil "strace output syntax highlighting" single ((:commit . "2901baa968d5180ab985ac40ca22cc20914d01f5") (:keywords "languages"))]) (stock-ticker . [(20150204 252) ((s (1 9 0)) (request (0 2 0))) "Show stock prices in mode line" single ((:commit . "f2e564142c9de84232839a5b01979cf95b04d6a9") (:url . "https://github.com/hagleitn/stock-ticker") (:keywords "comms"))]) (stickyfunc-enhance . [(20150429 1114) ((emacs (24 3))) "An enhancement to stock `semantic-stickyfunc-mode'" single ((:commit . "13bdba51fcd83ccbc3267959d23afc94d458dcb0") (:url . "https://github.com/tuhdo/semantic-stickyfunc-enhance") (:keywords "c" "languages" "tools"))]) (sticky . [(20101129 1852) nil "Sticky key for capital letters" single ((:url . "http://www.emacswiki.org/cgi-bin/wiki/download/sticky.el") (:keywords "convenience"))]) (stem-english . [(20170113 24) ((emacs (24 3))) "- routines for stemming English word" single ((:commit . "c8d9ccf1ea38ea403ba360b79b1042b0fd449a70") (:url . "http://github.com/kawabata/stem-english") (:keywords "text"))]) (stem . [(20131102 409) nil "Routines for stemming" single ((:commit . "d74e6611d6ba5025e0276a2cc7c8a90f46bfa9ac") (:url . "https://github.com/yuutayamada/stem") (:keywords "stemming"))]) (steam . [(20171108 1613) ((cl-lib (0 5))) "Organize and launch Steam games" single ((:commit . "d6ca2a828b0824da51978397e198bf91c51ce793") (:url . "http://github.com/Kungsgeten/steam.el") (:keywords "games"))]) (status . [(20151230 608) nil "This package adds support for status icons to Emacs." tar ((:commit . "b62c74bf272566f82a68622f29fb9edafea0f241"))]) (state . [(20170107 535) ((emacs (24))) "Quick navigation between workspaces" single ((:commit . "ea6e2cf6f592cbcfc5800b68f0fc2462555cacce") (:url . "https://github.com/thisirs/state.git") (:keywords "convenience" "workspaces"))]) (stash . [(20151117 627) nil "lightweight persistent caching" single ((:commit . "c2e494d20c752b80ebbdffbf66687b3cdfc425ad") (:url . "https://www.github.com/vermiculus/stash.el/") (:keywords "extensions" "data" "internal" "lisp"))]) (start-menu . [(20160426 525) ((cl-lib (0 5)) (config-parser (0 1))) "start-menu for executing external program like in windows" single ((:commit . "f7d33fed7ad2dc61156f1c1cff9e1805366fbd69") (:url . "https://github.com/lujun9972/el-start-menu") (:keywords "convenience" "menu"))]) (standoff-mode . [(20171115 931) nil "Create stand-off markup, also called external markup." tar ((:commit . "cf84b14066d63694d931395c6026fd0245d8a62b"))]) (stan-snippets . [(20161023 1958) ((stan-mode (9 2 0)) (yasnippet (0 8 0))) "Yasnippets for Stan" tar ((:commit . "45b8242611fe0437fcff48f5f4f7d8f0552531ac") (:url . "http://github.com/stan-dev/stan-mode") (:keywords "snippets"))]) (stan-mode . [(20161023 1958) nil "Major mode for editing Stan files" tar ((:commit . "45b8242611fe0437fcff48f5f4f7d8f0552531ac") (:url . "http://github.com/stan-dev/stan-mode") (:keywords "languanges"))]) (stack-mode . [(20150923 823) ((haskell-mode (13 14)) (cl-lib (0 5)) (flycheck (0 23))) "A minor mode enabling various features based on stack-ide." tar ((:commit . "f3481e239dde9817152ec00e32bfc3ebf5aaf2cb") (:url . "https://github.com/commercialhaskell/stack-ide") (:keywords "haskell" "stack"))]) (ssh-tunnels . [(20141219 318) ((cl-lib (0 5)) (emacs (24))) "Manage SSH tunnels" single ((:commit . "b08ba7a560ba5b16aa95c3cc17ed6fea59529cc4") (:url . "http://github.com/death/ssh-tunnels") (:keywords "tools" "convenience"))]) (ssh-deploy . [(20171122 352) nil "Deployment via TRAMP, global or per directory." single ((:commit . "0d8b5deadab439d43cb9730c9d0f1a99e5e3d523") (:url . "https://github.com/cjohansson/emacs-ssh-deploy") (:keywords "tools" "convenience"))]) (ssh-config-mode . [(20171109 1549) nil "Mode for fontification of ~/.ssh/config" tar ((:commit . "7824d5f8baf2c97856f5bc7b1ef88befbb1978f3") (:url . "https://github.com/jhgorrell/ssh-config-mode-el") (:keywords "ssh" "config" "emacs"))]) (ssh-agency . [(20170807 1152) ((emacs (24 4)) (dash (2 10 0))) "manage ssh-agent from Emacs" single ((:commit . "e572e031852561f98a7053afcdc9a3796dde2137") (:url . "https://github.com/magit/ssh-agency"))]) (ssh . [(20120904 1342) nil "Support for remote logins using ssh." single ((:commit . "c17cf5b43df8ac4662a0580f85898e1f078df0d1") (:keywords "unix" "comm"))]) (ssass-mode . [(20171201 509) ((emacs (24 3))) "Edit Sass without a Turing Machine" single ((:commit . "a95c4c9f99895cc582849b35e90ae13f1587ddce") (:url . "http://github.com/AdamNiederer/ssass-mode") (:keywords "languages" "sass"))]) (srefactor . [(20170223 540) ((emacs (24 4))) "A refactoring tool based on Semantic parser framework" tar ((:commit . "531753fdc24570a1341c169f36b9fa0d4c09ff42") (:url . "https://github.com/tuhdo/semantic-refactor") (:keywords "c" "languages" "tools"))]) (sr-speedbar . [(20161025 131) nil "Same frame speedbar" single ((:commit . "77a83fb50f763a465c021eca7343243f465b4a47") (:url . "http://www.emacswiki.org/emacs/download/sr-speedbar.el") (:keywords "speedbar" "sr-speedbar.el"))]) (sqlup-mode . [(20170610 837) nil "Upcase SQL words for you" single ((:commit . "04970977b4abb4d44301651618bbf1cdb0b263dd") (:url . "https://github.com/trevoke/sqlup-mode.el") (:keywords "sql" "tools" "redis" "upcase"))]) (sqlplus . [(20170710 150) nil "User friendly interface to SQL*Plus and support for PL/SQL compilation" single ((:keywords "sql" "sqlplus" "oracle" "plsql"))]) (sqlite . [(20150416 2215) nil "use sqlite via elisp" single ((:commit . "9a7fb5836a19bc0ea8b4c5a50177112524380986"))]) (sql-indent . [(20170112 1507) nil "indentation of SQL statements" single ((:commit . "761a5724d181b75f30e64040408b8836d41f9db9") (:url . "https://github.com/bsvingen/sql-indent") (:keywords "languages"))]) (sql-impala . [(20160427 1658) nil "comint support for Cloudera Impala" single ((:commit . "e7a2d79d60b0a6339d730fc39ca024c3d6c56de7") (:url . "https://github.com/jterk/sql-impala") (:keywords "sql" "impala"))]) (spu . [(20161213 1924) ((emacs (24 4)) (signal (1 0)) (timp (1 2 0))) "Silently upgrade package in the background" tar ((:commit . "41eec86b595816e3852e8ad1a8e07e51a27fd065") (:url . "https://github.com/mola-T/spu") (:keywords "convenience" "package"))]) (sprunge . [(20160229 1843) ((request (0 2 0)) (cl-lib (0 5))) "Upload pastes to sprunge.us" single ((:commit . "0fd386b8b29c4175022a04ad70ea5643185b6726") (:keywords "tools"))]) (sproto-mode . [(20151115 1005) nil "Major mode for editing sproto." single ((:commit . "0583a88273204dccd884b7edaa3590cefd31e7f7") (:keywords "sproto"))]) (sprintly-mode . [(20121005 2234) ((furl (0 0 2))) "Major mode for dealing with sprint.ly" single ((:commit . "6695892bae5860b5268bf3ae62be990ee9b63c11") (:url . "https://github.com/sprintly/sprintly-mode"))]) (springboard . [(20170105 2355) ((helm (1 6 9))) "Temporarily change default-directory for one command" single ((:commit . "263a8cd4582c81bfc29d7db37d5267e2488b148c") (:url . "https://github.com/jwiegley/springboard") (:keywords "helm"))]) (spray . [(20160304 1420) nil "a speed reading mode" single ((:commit . "df326991acb2bd64af373bcf09816df9c6424d0d") (:url . "https://github.com/ian-kelling/spray") (:keywords "convenience"))]) (spotlight . [(20150929 55) ((emacs (24 1)) (swiper (0 6 0)) (counsel (0 6 0))) "search files with Mac OS X spotlight" single ((:commit . "ab902900f22e7d1ea2dd8169441d2da7155aaa68") (:url . "http://www.pragmaticemacs.com") (:keywords "search" "external"))]) (spotify . [(20170302 2229) ((cl-lib (0 5))) "Control the spotify application from emacs" single ((:commit . "2825b5cac8406969405096660aeab6e5fef765eb") (:url . "https://github.com/remvee/spotify-el") (:keywords "convenience"))]) (splitter . [(20170809 1508) nil "Manage window splits" single ((:commit . "6bdb51e9a346907d60a9625f6180bddd06be6674") (:url . "https://github.com/chumpage/chumpy-windows") (:keywords "frames" "convenience"))]) (splitjoin . [(20150505 732) ((cl-lib (0 5))) "Transition between multiline and single-line code" single ((:commit . "e2945ee269e6e90f0243d6f2a33e067bb0a2873c") (:url . "https://github.com/syohex/emacs-splitjoin"))]) (spike-theme . [(20160530 733) nil "A light color theme with muted, autumnal colors." single ((:commit . "7a7766be0b6197103840644bb074f864d0d91cd8") (:url . "https://github.com/m31271n/spike-theme") (:keywords "color" "theme" "green"))]) (spice-mode . [(20171027 2343) ((emacs (24 3))) "Major mode for SPICE" single ((:commit . "702bf2d5c3561be44771ea77b476532d32068504") (:url . "http://spice-mode.4t.com/") (:keywords "spice" "spice2g6" "spice3" "eldo" "hspice" "layla" "mondriaan" "fasthenry" "cdl" "spectre compatibility" "netlist editing"))]) (sphinx-mode . [(20170607 1436) nil "Minor mode providing sphinx support." tar ((:commit . "0a9fcd60639f1f4235b4747e8449b9f48651705f"))]) (sphinx-frontend . [(20161025 58) nil "Launch build process for rst documents via sphinx." single ((:commit . "0cbb03361c245382d3e679dded30c4fc1713c252") (:url . "https://github.com/kostafey/sphinx-frontend") (:keywords "compile" "sphinx" "restructuredtext"))]) (sphinx-doc . [(20160116 317) ((s (1 9 0)) (cl-lib (0 5)) (dash (2 10 0))) "Sphinx friendly docstrings for Python functions" single ((:commit . "f39da2e6cae55d5d7c7ce887e69755b7529bcd67") (:url . "https://github.com/naiquevin/sphinx-doc.el") (:keywords "sphinx" "python"))]) (speed-type . [(20161230 815) ((cl-lib (0 3))) "Practice touch and speed typing" single ((:commit . "9940383d94688e7f130b01f9872182ab59edf00f") (:url . "https://github.com/parkouss/speed-type") (:keywords "games"))]) (speechd-el . [(20160710 359) nil "Client to speech synthesizers and Braille displays." tar ((:commit . "ec344edd498f95e3c945958475b31bae6505c34c"))]) (speech-tagger . [(20170728 1129) ((cl-lib (0 5))) "tag parts of speech using coreNLP" tar ((:commit . "61955b40d4e8b09e66a3e8033e82893f81657c06") (:url . "https://github.com/cosmicexplorer/speech-tagger") (:keywords "speech" "tag" "nlp" "language" "corenlp" "parsing" "natural"))]) (speck . [(20160717 951) nil "minor mode for spell checking" single ((:keywords "spell" "checking"))]) (sparql-mode . [(20171116 510) ((cl-lib (0 5)) (emacs (25 1))) "Edit and interactively evaluate SPARQL queries." tar ((:commit . "00527b8172ae61b667bc70a802c112132e06ba0b") (:url . "https://github.com/ljos/sparql-mode"))]) (sparkline . [(20150101 519) ((cl-lib (0 3))) "Make sparkline images from a list of numbers" single ((:commit . "a2b5d817d272d6363b67ed8f8cc75499a19fa8d2") (:keywords "extensions"))]) (spark . [(20160414 1901) ((emacs (24 3))) "sparkline generation" single ((:commit . "0bf148c3ede3b31d56fd75f347cdd0b0eae60025") (:url . "https://github.com/alvinfrancis/spark") (:keywords "lisp" "data"))]) (spaces . [(20170809 1508) nil "Create and switch between named window configurations." single ((:commit . "6bdb51e9a346907d60a9625f6180bddd06be6674") (:url . "https://github.com/chumpage/chumpy-windows") (:keywords "frames" "convenience"))]) (spacemacs-theme . [(20171201 640) nil "Color theme with a dark and light versions" tar ((:commit . "5df16efbf153d0abef8a6aea971926a4108754d8") (:keywords "color" "theme") (:url . "https://github.com/nashamri/spacemacs-theme"))]) (spaceline-all-the-icons . [(20170829 120) ((emacs (24 4)) (all-the-icons (2 6 0)) (spaceline (2 0 0)) (memoize (1 0 1))) "A Spaceline theme using All The Icons" tar ((:commit . "e2e195f64a541d72b6d0ba0451f1e3072234b820") (:url . "https://github.com/domtronn/spaceline-all-the-icons.el") (:keywords "convenience" "lisp" "tools"))]) (spaceline . [(20171111 334) ((emacs (24 4)) (cl-lib (0 5)) (powerline (2 3)) (dash (2 11 0)) (s (1 10 0))) "Modeline configuration library for powerline" tar ((:commit . "ca20430271f80d46892d62cb7624b4dee6cafe72") (:url . "https://github.com/TheBB/spaceline") (:keywords "mode-line" "powerline" "spacemacs"))]) (spacegray-theme . [(20150719 1231) ((emacs (24 1))) "A Hyperminimal UI Theme" single ((:commit . "7f70ee36297e5ccf9bc90b1f81472024f5a7a749") (:url . "http://github.com/bruce/emacs-spacegray-theme") (:keywords "themes"))]) (sourcetrail . [(20170410 1437) ((emacs (24 4))) "Communication with Sourcetrail" single ((:commit . "b8d5557aa565ae979622312576db20515f65f977") (:keywords "external" "tool"))]) (sourcerer-theme . [(20161014 925) nil "A version of sourcerer by xero" single ((:commit . "c7f8e665d53bb48fb72f95f706710d53d24bd407") (:url . "http://github.com/gilbertw1/sourcerer-emacs") (:keywords "themes"))]) (sourcemap . [(20161215 2140) ((emacs (24 3))) "Sourcemap parser" single ((:commit . "64c89d296186f48d9135fb8aad501de19f64bceb") (:url . "https://github.com/syohex/emacs-sourcemap"))]) (sourcekit . [(20170126 353) ((emacs (24 3)) (dash (2 12 1)) (dash-functional (1 2 0)) (request (0 2 0))) "Library to interact with sourcekittendaemon" single ((:commit . "8ba62ac25bf533b7f148f333bcb5c1db799f749b") (:url . "https://github.com/nathankot/company-sourcekit") (:keywords "tools" "processes"))]) (soundklaus . [(20160314 531) ((dash (2 12 1)) (emacs (24)) (emms (4 0)) (s (1 11 0)) (pkg-info (0 4)) (cl-lib (0 5)) (request (0 2 0))) "Play music on SoundCloud with Emacs via EMMS" tar ((:commit . "09ec030843482594beae2664b8fe1e0ad1e66472") (:url . "https://github.com/r0man/soundklaus.el") (:keywords "soundcloud" "music" "emms"))]) (soundcloud . [(20150501 2026) ((emms (20131016)) (json (1 2)) (deferred (0 3 1)) (string-utils (0 3 2)) (request (20140316 417)) (request-deferred (20130526 1015))) "a SoundCloud client for Emacs" single ((:commit . "f998d4276ea90258909c698f6a5a51fccb667c08") (:keywords "soundcloud" "music" "audio"))]) (sound-wav . [(20160725 724) ((deferred (0 3 1)) (cl-lib (0 5))) "Play wav file" single ((:commit . "406868043761524118c27b1207be0f8bbda8798e") (:url . "https://github.com/syohex/emacs-sound-wav"))]) (sotlisp . [(20170429 1945) ((emacs (24 1))) "Write lisp at the speed of thought." single ((:commit . "89dfed2b5d2e9a3b16bfc47f169412b583626059") (:url . "https://github.com/Malabarba/speed-of-thought-lisp") (:keywords "convenience" "lisp"))]) (sotclojure . [(20170921 1708) ((emacs (24 1)) (clojure-mode (4 0 0)) (cider (0 8)) (sotlisp (1 3))) "Write clojure at the speed of thought." tar ((:commit . "ceac82aa691e8d98946471be6aaff9c9a4603c32") (:url . "https://github.com/Malabarba/speed-of-thought-clojure") (:keywords "convenience" "clojure"))]) (sos . [(20141214 2003) ((org (7))) "StackOverflow Search" single ((:commit . "1573adca912b88b5010d99a25c83a5b2313bd39c") (:url . "https://github.com/omouse/emacs-sos") (:keywords "tools" "search" "questions"))]) (sort-words . [(20160929 635) nil "Sort words in a selected region" single ((:commit . "7b6e108f80237363faf7ec28b2c58dec270b8601") (:url . "http://github.org/dotemacs/sort-words.el") (:keywords "tools"))]) (soothe-theme . [(20141027 741) ((emacs (24 1))) "a dark colorful theme for Emacs24." single ((:commit . "0786fe70c6c1b4ddcfb932fdc6862b9611cfc09b") (:url . "https://github.com/jasonm23/emacs-soothe-theme"))]) (sonic-pi . [(20171205 405) ((cl-lib (0 5)) (osc (0 1)) (dash (2 2 0)) (emacs (24)) (highlight (0))) "A Emacs client for SonicPi" tar ((:commit . "3cf101b3b299735ed91658c7791ea4f04164e076") (:url . "http://www.github.com/repl-electric/sonic-pi.el") (:keywords "sonicpi" "ruby"))]) (solidity-mode . [(20171113 1058) nil "Major mode for ethereum's solidity language" single ((:commit . "b8ddfd683c3335805f0a4788244bf0d224ffc6ae") (:keywords "languages"))]) (solarized-theme . [(20171114 1506) ((emacs (24 1)) (cl-lib (0 5)) (dash (2 6 0))) "The Solarized color theme, ported to Emacs." tar ((:commit . "642b2afa38cb59b9e940e5082614e36c6e6a94a3"))]) (solaire-mode . [(20171109 1215) ((emacs (24 4)) (cl-lib (0 5))) "make certain buffers grossly incandescent" single ((:commit . "ce91b8709124738abb4a1612d4801e16f1d0faec") (:url . "https://github.com/hlissner/emacs-solaire-mode") (:keywords "dim" "bright" "window" "buffer" "faces"))]) (soft-stone-theme . [(20140614 135) ((emacs (24))) "Emacs 24 theme with a light background." single ((:commit . "fb475514cfb02cf30ce358a61c48e46614344d48") (:url . "http://github.com/mswift42/soft-stone-theme"))]) (soft-morning-theme . [(20150918 1341) nil "Emacs24 theme with a light background." single ((:commit . "c0f9c70c97ef2be2a093cf839c4bfe27740a111c") (:url . "http://github.com/mswift42/soft-morning-theme"))]) (soft-charcoal-theme . [(20140420 943) nil "Dark charcoal theme with soft colors" single ((:commit . "5607ab977fae6638e78b1495e02da8955c9ba19f") (:url . "http://github.com/mswift42/soft-charcoal-theme"))]) (socyl . [(20170211 2242) ((s (1 11 0)) (dash (2 12 0)) (pkg-info (0 5 0)) (cl-lib (0 5))) "Frontend for several search tools" tar ((:commit . "1ef2da42f66f3ab31a34131e51648f352416f0ba") (:url . "https://github.com/nlamirault/socyl") (:keywords "ripgrep" "sift" "ack" "pt" "ag" "grep" "search"))]) (snoopy . [(20171008 1304) ((emacs (24)) (cl-lib (0 6))) "minor mode for number row unshifted character insertion" single ((:commit . "ec4123bdebfe0bb7bf4feaac2dc02b59caffe386") (:keywords "lisp"))]) (snippet . [(20130210 1515) nil "Insert snippets of text into a buffer" single ((:commit . "11d00dd803874b93836f2010b08bd2c97b0f3c63"))]) (snazzy-theme . [(20170823 1132) ((emacs (24)) (base16-theme (2 1))) "An elegant syntax theme with bright colors" single ((:commit . "479351a34cd7f754375ee45f161f83a19d0fd29c") (:url . "https://github.com/weijiangan/emacs-snazzy/") (:keywords "faces" "theme" "color" "snazzy"))]) (snapshot-timemachine-rsnapshot . [(20170324 513) ((snapshot-timemachine (20160222 132)) (seq (2 19))) "rsnapshot backend for snapshot-timemachine" single ((:commit . "72b0b700d80f1a0442e62bbbb6a0c8c59182f97f"))]) (snapshot-timemachine . [(20161221 129) ((emacs (24 4))) "Step through (Btrfs, ZFS, ...) snapshots of files" single ((:commit . "99efcebab309b11ed512a8dc62555d3834df5efb") (:url . "https://github.com/mrBliss/snapshot-timemachine"))]) (snakemake-mode . [(20171030 1016) ((emacs (24)) (cl-lib (0 5)) (magit-popup (2 4 0))) "Major mode for editing Snakemake files" tar ((:commit . "990d6d8e98b96b9afe5b9b340507b1aecd8de1ce") (:url . "https://github.com/kyleam/snakemake-mode") (:keywords "tools"))]) (smyx-theme . [(20141127 28) nil "smyx Color Theme" single ((:commit . "6263f6b401bbabaed388c8efcfc0be2e58c51401") (:keywords "color" "theme" "smyx"))]) (smtpmail-multi . [(20160218 1549) nil "Use different smtp servers for sending mail" single ((:commit . "81eabfe56f620ee044ff9dd52fa8b6148d0a9f30") (:url . "https://github.com/vapniks/smtpmail-multi") (:keywords "comm"))]) (smotitah . [(20150218 230) nil "Modular emacs configuration framework" tar ((:commit . "f9ab562128a5460549d016913533778e8c94bcf3"))]) (smooth-scrolling . [(20161002 1249) nil "Make emacs scroll smoothly" single ((:commit . "2462c13640aa4c75ab3ddad443fedc29acf68f84") (:url . "http://github.com/aspiers/smooth-scrolling/") (:keywords "convenience"))]) (smooth-scroll . [(20130321 2114) nil "Minor mode for smooth scrolling and in-place scrolling." single ((:commit . "02320f28abb5cae28b3a18f6b9ce93129bdbfc45") (:url . "http://www.emacswiki.org/emacs/download/smooth-scroll.el") (:keywords "convenience" "emulations" "frames"))]) (smmry . [(20161024 201) nil "SMMRY client" single ((:commit . "986a1b0aec8ab1ef17dbfb7886f47e5558cf738a") (:url . "https://github.com/microamp/smmry.el") (:keywords "api" "smmry"))]) (sml-modeline . [(20170614 1411) nil "Show position in a scrollbar like way in mode-line" single ((:commit . "d2f9f70174c4cf68c67eb3bb8088235735e34d9a") (:url . "http://bazaar.launchpad.net/~nxhtml/nxhtml/main/annotate/head%3A/util/sml-modeline.el"))]) (smiles-mode . [(20160717 420) nil "Major mode for SMILES." single ((:commit . "fbb381758adcb000a0c304be1b797f985f00e2de") (:keywords "smiles"))]) (smex . [(20151212 1409) ((emacs (24))) "M-x interface with Ido-style fuzzy matching." single ((:commit . "55aaebe3d793c2c990b39a302eb26c184281c42c") (:url . "http://github.com/nonsequitur/smex/") (:keywords "convenience" "usability"))]) (smeargle . [(20161212 1558) ((emacs (24 3))) "Highlighting region by last updated time" single ((:commit . "0665b1ff5109731898bc4a0ca6d939933b804777") (:url . "https://github.com/syohex/emacs-smeargle"))]) (smblog . [(20170419 321) ((emacs (24 3))) "samba log viewer" single ((:commit . "5245e7aeac20915121946f59bba30899305d950b") (:url . "http://github.com/aaptel/smblog-mode"))]) (smbc . [(20160706 1522) nil "View SMBC from Emacs" single ((:commit . "c377b806118d82140197d9cb1095548477e00497") (:url . "https://github.com/sakshamsharma/emacs-smbc") (:keywords "smbc" "webcomic"))]) (smarty-mode . [(20100703 458) nil "major mode for editing smarty templates" single ((:commit . "3dfdfe1571f5e9ef55a29c51e5a80046d4cb7568") (:url . "none yet") (:keywords "smarty" "php" "languages" "templates"))]) (smartscan . [(20170211 1233) nil "Jumps between other symbols found at point" single ((:commit . "234e077145710a174c20742de792b97ed2f965f6") (:keywords "extensions"))]) (smartrep . [(20150508 1930) nil "Support sequential operation which omitted prefix keys." single ((:commit . "f0ff5a6d7b8603603598ae3045c98b011e58d86e") (:url . "https://github.com/myuhe/smartrep.el") (:keywords "convenience"))]) (smartparens . [(20171201 242) ((dash (2 13 0)) (cl-lib (0 3))) "Automatic insertion, wrapping and paredit-like navigation with user defined pairs." tar ((:commit . "65fbcfc849afb89e2642f9b87f66e6a96382f88c"))]) (smart-window . [(20160716 1830) ((cl-lib (0 5))) "vim-like window controlling plugin" single ((:commit . "5996461b7cbc5ab4509ac48537916eb29a8e4c16") (:url . "https://github.com/dryman/smart-window.el") (:keywords "window"))]) (smart-tabs-mode . [(20160629 752) nil "Intelligently indent with tabs, align with spaces!" single ((:commit . "9cc2594b82b03e7d68645a4878f9359f8b8c34c5") (:url . "http://www.emacswiki.org/emacs/SmartTabs") (:keywords "languages"))]) (smart-tab . [(20170902 1407) nil "Intelligent tab completion and indentation." single ((:commit . "76a8ec13384975d39aa1b25e5384a02558dba574") (:url . "http://github.com/genehack/smart-tab/tree/master") (:keywords "extensions"))]) (smart-shift . [(20150202 2325) nil "Smart shift text left/right." single ((:commit . "a26ab2b240137e62ec4bce1698ed9c5f7b6d13ae") (:url . "https://github.com/hbin/smart-shift") (:keywords "convenience" "tools"))]) (smart-semicolon . [(20171007 1833) ((emacs (25))) "Insert semicolon smartly" single ((:commit . "c11096679dbed3875c37413337ee490ee7951b63") (:url . "https://github.com/iquiw/smart-semicolon"))]) (smart-region . [(20150903 703) ((emacs (24 4)) (expand-region (0 10 0)) (multiple-cursors (1 3 0)) (cl-lib (0 5))) "Smartly select region, rectangle, multi cursors" single ((:commit . "5a8017fd8e8dc3483865951c4942cab3f96f69f6") (:url . "https://github.com/uk-ar/smart-region") (:keywords "marking" "region"))]) (smart-newline . [(20131207 1940) nil "Provide smart newline for one keybind." single ((:commit . "0553a9e4be7188352de1a28f2eddfd28e7436f94"))]) (smart-mode-line-powerline-theme . [(20160705 1738) ((emacs (24 3)) (powerline (2 2)) (smart-mode-line (2 5))) "smart-mode-line theme that mimics the powerline appearance." tar ((:commit . "1facbe9816b602c640ddb23602e30588d6d904ca") (:url . "http://github.com/Bruce-Connor/smart-mode-line") (:keywords "mode-line" "faces" "themes"))]) (smart-mode-line . [(20171013 849) ((emacs (24 3)) (rich-minority (0 1 1))) "A color coded smart mode-line." tar ((:commit . "1facbe9816b602c640ddb23602e30588d6d904ca") (:url . "http://github.com/Malabarba/smart-mode-line") (:keywords "mode-line" "faces" "themes"))]) (smart-mark . [(20150911 1910) nil "Restore point after C-g when mark" single ((:commit . "04b522a23e3aae8381c6a976fc978532fcb2e7d0") (:keywords "mark" "restore"))]) (smart-jump . [(20171205 1723) ((emacs (25 1)) (dumb-jump (0 5 1))) "Smart go to definition." single ((:commit . "6e914281c078c622d68b1990b7987767c05f4e96") (:url . "https://github.com/jojojames/smart-jump") (:keywords "tools"))]) (smart-indent-rigidly . [(20141205 1615) nil "Smart rigid indenting" single ((:commit . "323d1fe4d0b81e598249aad01bc44adb180ece0e") (:url . "https://github.com/re5et/smart-indent-rigidly") (:keywords "indenting" "coffee-mode" "haml-mode" "sass-mode"))]) (smart-hungry-delete . [(20170412 643) ((emacs (24 3))) "smart hungry deletion of whitespace" single ((:commit . "7c1d56a92481594e14d40b5fdf6c48657a0108a0") (:url . "https://github.com/hrehfeld/emacs-smart-hungry-delete") (:keywords "convenience"))]) (smart-forward . [(20140430 13) ((expand-region (0 8 0))) "Semantic navigation" single ((:commit . "7b6dbfdbd4b646376a567c70e1a161545431b72b") (:keywords "navigation"))]) (smart-dash . [(20110130 1916) nil "Smart-Dash minor mode" single nil]) (smart-cursor-color . [(20141124 919) nil "Change cursor color dynamically" single ((:commit . "1d190f49ca77734b55ac58f1b6276e42ada967b0") (:url . "https://github.com/7696122/smart-cursor-color/") (:keywords "cursor" "color" "face"))]) (smart-compile . [(20171104 2333) nil "an interface to `compile'" single ((:commit . "2a0c9b33bd97461d100e24df0103d4e5526a30d6") (:keywords "tools" "unix"))]) (smart-comment . [(20160322 1139) nil "smarter commenting" single ((:commit . "17ddbd83205818763e6d68aa7a1aa9aaf414cbd4") (:keywords "lisp"))]) (smart-backspace . [(20171013 2226) nil "intellj like backspace" single ((:commit . "a10ec44ff325ec8c4c98b1a6e44e89e60a9aa4ac") (:url . "https://github.com/itome/smart-backspace"))]) (sly-quicklisp . [(20170112 135) ((sly (1 0 0 -2 2))) "Quicklisp support for SLY" tar ((:commit . "8a9e3c0c07c6861ec33b338cc46ac12e7ce6a477") (:url . "https://github.com/capitaomorte/sly-quicklisp") (:keywords "languages" "lisp" "sly"))]) (sly-named-readtables . [(20150817 816) ((sly (1 0 0 -2 2))) "Support named readtables in Common Lisp files" tar ((:commit . "df4ed79064cf85275804e201899b677bef4ab3f5") (:url . "https://github.com/capitaomorte/sly-named-readtables") (:keywords "languages" "lisp" "sly"))]) (sly-macrostep . [(20160119 434) ((sly (1 0 0 -2 2)) (macrostep (0 9))) "fancy macro-expansion via macrostep.el" tar ((:commit . "eb16778d104413a3e2a8d5537437c4ad76c2954b") (:url . "https://github.com/capitaomorte/sly-macrostep") (:keywords "languages" "lisp" "sly"))]) (sly-hello-world . [(20160119 636) ((sly (1 0 0 -2 2))) "A template SLY contrib" tar ((:commit . "1bfcca692b6ec0670ed309ffe29eb9384397c183") (:url . "https://github.com/capitaomorte/sly-hello-world") (:keywords "languages" "lisp" "sly"))]) (sly-company . [(20160308 557) ((sly (1 0 0 -3)) (company (0 7)) (emacs (24 3))) "sly completion backend for company mode" single ((:commit . "08aef69394fbef31dfeb3d3bb72a4557df9d7624") (:keywords "convenience" "lisp" "abbrev"))]) (sly . [(20171111 1604) ((emacs (24 3))) "Sylvester the Cat's Common Lisp IDE" tar ((:commit . "83c88318bca48b1269924cd5c76b9777ecf84f11") (:url . "https://github.com/joaotavora/sly") (:keywords "languages" "lisp" "sly"))]) (slstats . [(20170823 149) ((cl-lib (0 5)) (emacs (24))) "Acquire and display stats about Second Life" single ((:commit . "e9696066abf3f2b7b818a57c062530dfd9377033") (:url . "https://github.com/davep/slstats.el") (:keywords "games"))]) (slovak-holidays . [(20150418 155) nil "Adds a list of slovak holidays to Emacs calendar" single ((:commit . "effb16dfcd14797bf7448f5113085479db339c02") (:keywords "calendar"))]) (slirm . [(20160201 625) ((emacs (24 4))) "Systematic Literature Review Mode for Emacs." single ((:commit . "9adfbe1fc67580e7d0d90f7e927a25d63a797464") (:url . "http://github.com/fbie/slirm"))]) (slime-volleyball . [(20140717 2141) nil "An SVG Slime Volleyball Game" tar ((:commit . "159b5c0f40b109e3854e94b89ec5383854c46ae3") (:keywords "games"))]) (slime-theme . [(20170808 622) ((emacs (24 0))) "an Emacs 24 theme based on Slime (tmTheme)" single ((:commit . "8e5880ac69e0b6a079103001cc3a90bdb688998f") (:url . "https://github.com/emacsfodder/tmtheme-to-deftheme"))]) (slime-docker . [(20171004 1151) ((emacs (24)) (slime (2 16)) (docker-tramp (0 1)) (cl-lib (0 5))) "Integration of SLIME with Docker containers." tar ((:commit . "13fa8be2fca516f3ff5fb70fa79dd8404bf86439") (:url . "https://github.com/daewok/slime-docker") (:keywords "docker" "lisp" "slime"))]) (slime-company . [(20161229 743) ((slime (2 13)) (company (0 9 0))) "slime completion backend for company mode" single ((:commit . "6c244690c80387a32b0cb984843e00c8b75ad6bb") (:keywords "convenience" "lisp" "abbrev"))]) (slime . [(20171106 1331) ((cl-lib (0 5)) (macrostep (0 9))) "Superior Lisp Interaction Mode for Emacs" tar ((:commit . "55fc578ed829b95a63c31cec242bd86a6e0be39e") (:url . "https://github.com/slime/slime") (:keywords "languages" "lisp" "slime"))]) (slim-mode . [(20170728 648) nil "Major mode for editing Slim files" single ((:commit . "3636d18ab1c8b316eea71c4732eb44743e2ded87") (:url . "http://github.com/slim-template/emacs-slim") (:keywords "markup" "language"))]) (slideview . [(20150324 1540) ((cl-lib (0 3))) "File slideshow" single ((:commit . "b6d170bda139aedf81b47dc55cbd1a3af512fb4c") (:url . "https://github.com/mhayashi1120/Emacs-slideview") (:keywords "files"))]) (slack . [(20171202 1233) ((websocket (1 8)) (request (0 2 0)) (oauth2 (0 10)) (circe (2 2)) (alert (1 2)) (emojify (0 2))) "Slack client for Emacs" tar ((:commit . "bbcf1047e2e9aabfdcee6cc152557755f35190b8") (:url . "https://github.com/yuya373/emacs-slack"))]) (sl . [(20161217 604) ((cl-lib (0 5))) "An Emacs clone of sl(1)" tar ((:commit . "0882117728be91276b815e18c2a66106bf9d69d3") (:url . "https://github.com/xuchunyang/sl.el"))]) (skype . [(20160711 124) nil "skype UI for emacs users.." tar ((:commit . "8e3b33e620ed355522aa36434ff41e3ced080629") (:keywords "skype" "chat"))]) (skewer-reload-stylesheets . [(20160725 520) ((skewer-mode (1 5 3))) "live-edit CSS, SCSS, Less, and friends." tar ((:commit . "b9cc5635230ac3c0603a6da690c6e632d0a7490a"))]) (skewer-mode . [(20170730 1241) ((simple-httpd (1 4 0)) (js2-mode (20090723)) (emacs (24))) "live browser JavaScript, CSS, and HTML interaction" tar ((:commit . "7df248a4b7ec2eb0f3cabcbdfb052593d1f86590"))]) (skewer-less . [(20160828 1321) ((skewer-mode (1 5 3))) "Skewer support for live LESS stylesheet updates" single ((:commit . "927d6848a1ea9428d4cc995f76bd42f7b8da6bc8") (:keywords "languages" "tools"))]) (skeletor . [(20170616 1746) ((s (1 7 0)) (f (0 14 0)) (dash (2 2 0)) (cl-lib (0 3)) (let-alist (1 0 3)) (emacs (24 1))) "Provides project skeletons for Emacs" tar ((:commit . "01c330ec115fc29bba5d9bdf6c15beb4a44e2281"))]) (simplezen . [(20130421 300) ((s (1 4 0)) (dash (1 1 0))) "A simple subset of zencoding-mode for Emacs." single ((:commit . "119fdf2c6890a0c56045ae72cf4fce0071a81481"))]) (simplenote2 . [(20171201 1806) ((request-deferred (0 2 0))) "Interact with app.simplenote.com" tar ((:commit . "0fd6dbd0566af29964078e4b74baf69c2f52381a") (:keywords "simplenote"))]) (simplenote . [(20141118 640) nil "Interact with simple-note.appspot.com" single ((:commit . "e836fcdb5a6497a9ffd6bceddd19b4bc52189078") (:keywords "simplenote"))]) (simpleclip . [(20170803 540) nil "Simplified access to the system clipboard" single ((:commit . "d461c462c237cd896553adb468cd77499d0d26ad") (:url . "http://github.com/rolandwalker/simpleclip") (:keywords "convenience"))]) (simple-screen . [(20141023 758) nil "Simple screen configuration manager" single ((:commit . "4fcbdb4575310c0a2b4dd17fc8aeb4d7e6e9ffae") (:url . "https://github.com/wachikun/simple-screen") (:keywords "tools"))]) (simple-rtm . [(20160222 734) ((rtm (0 1)) (dash (2 0 0))) "Interactive Emacs mode for Remember The Milk" single ((:commit . "8c7cd96cf66ef112be5c363e3378e304f8f83999") (:keywords "remember" "the" "milk" "productivity" "todo"))]) (simple-paren . [(20171206 128) ((emacs (24)) (cl-lib (0 5))) "Insert paired delimiter, wrap" single ((:commit . "d231218ee2f4ef47683ddc3e9de22e84c3489582") (:url . "https://github.com/andreas-roehler/simple-paren") (:keywords "convenience"))]) (simple-mpc . [(20161103 1219) ((s (1 10 0))) "provides a simple interface to mpc" tar ((:commit . "61b39d02313fa51a1dd7326fe24871666c64a077") (:url . "https://github.com/jorenvo/simple-mpc") (:keywords "multimedia" "mpd" "mpc"))]) (simple-httpd . [(20171004 938) ((cl-lib (0 3))) "pure elisp HTTP server" single ((:commit . "e7775d3bc5c6b73255814d0a62dc954e23a12c15") (:url . "https://github.com/skeeto/emacs-http-server"))]) (simple-call-tree . [(20161007 1913) ((emacs (24 3)) (anaphora (1 0 0))) "analyze source code based on font-lock text-properties" single ((:commit . "431206e9c2b88cbab9cfe9ebf3f6cb73f5e6740f") (:url . "http://www.emacswiki.org/emacs/download/simple-call-tree.el") (:keywords "programming"))]) (simple-bookmarks . [(20160804 701) ((cl-lib (0 5))) "Bookmark / functioncall manager" tar ((:commit . "6c58337f2b7dbe9e58b5e097b1567f046a01d071") (:url . "https://github.com/jtkDvlp/simple-bookmarks") (:keywords "bookmark" "functioncall"))]) (simple+ . [(20170307 1529) ((strings (0))) "Extensions to standard library `simple.el'." single ((:url . "https://www.emacswiki.org/emacs/download/simple%2b.el") (:keywords "internal" "lisp" "extensions" "abbrev"))]) (simp . [(20161206 2151) nil "Simple project definition, chiefly for file finding, and grepping" tar ((:commit . "13959cabdc7a10d8878592ef4333b3e6df2f1483") (:url . "https://github.com/re5et/simp") (:keywords "project" "grep" "find"))]) (silkworm-theme . [(20160217 509) ((emacs (24))) "Light theme with pleasant, low contrast colors." single ((:commit . "7951b53e5caf9daf6a5a15a57ae3a668cb78bd7b"))]) (signature . [(20140730 1249) nil "Signature Survey" tar ((:commit . "c47df2e1189a84505f9224aa78e87b6c65d13d37"))]) (signal . [(20160816 738) ((emacs (24)) (cl-lib (0 5))) "Advanced hook" single ((:commit . "aa58327e2297df921d72a0370468b48663efd438") (:url . "https://github.com/mola-T/signal") (:keywords "internal" "lisp" "processes" "tools"))]) (sift . [(20160107 215) nil "Front-end for sift, a fast and powerful grep alternative" single ((:commit . "4ce8878a0fc396ded7521ce38852d93e1d863065") (:url . "https://github.com/nlamirault/sift.el") (:keywords "sift" "ack" "pt" "ag" "grep" "search"))]) (sicp . [(20171028 1523) nil "Structure and Interpretation of Computer Programs in info format" tar ((:commit . "8e13f7ff4695a05471486d37a6c5f979a5b965fb") (:url . "https://mitpress.mit.edu/sicp"))]) (sibilant-mode . [(20151119 1345) nil "Support for the Sibilant programming language" single ((:commit . "bc1b5d8cd597918bafc9b2880ee49024740e54ab") (:url . "http://sibilantjs.info") (:keywords "languages"))]) (shx . [(20171108 910) ((emacs (24 4))) "\"Extras\" for the (comint-mode) shell" single ((:commit . "aa2fda2419b6e2540f1e6eb3789b6a247c319050") (:url . "https://github.com/riscy/shx-for-emacs") (:keywords "processes" "tools"))]) (shut-up . [(20150423 522) ((cl-lib (0 3)) (emacs (24))) "Shut up would you!" single ((:commit . "a4fd18f37e20ae991c0dbba821b2c8e6f1679c39") (:url . "http://github.com/rejeep/shut-up.el"))]) (shrink-whitespace . [(20150916 1215) nil "Whitespace removal DWIM key" single ((:commit . "8d4263d974fbe66417c0bb9edc155ecc2f48e4b7") (:url . "https://github.com/jcpetkovich/shrink-whitespace.el") (:keywords "editing"))]) (shrink-path . [(20170812 1947) ((emacs (24)) (s (1 6 1)) (dash (1 8 0)) (f (0 10 0))) "fish-style path" single ((:commit . "9d06c453d1537df46a4b703a29213cc7f7857aa0") (:url . "https://gitlab.com/bennya/shrink-path.el"))]) (shr-tag-pre-highlight . [(20171113 114) ((emacs (25 1)) (language-detection (0 1 0))) "Syntax highlighting code block in HTML" single ((:commit . "6182f43a36b0f82ba6edcf6e423b5f69a46a814e") (:url . "https://github.com/xuchunyang/shr-tag-pre-highlight.el") (:keywords "html"))]) (shpec-mode . [(20150530 222) nil "Minor mode for shpec specification" single ((:commit . "146adc8281d0f115df39a3a3f982ac59ab61b754") (:url . "http://github.com/shpec/shpec-mode") (:keywords "languages" "tools"))]) (showtip . [(20090830 340) nil "Show tip at cursor" single ((:commit . "930da302809a4257e8d69425455b29e1cc91949b") (:keywords "help"))]) (showkey . [(20170307 1528) nil "Show keys as you use them." single ((:url . "https://www.emacswiki.org/emacs/download/showkey.el") (:keywords "help" "keys" "mouse"))]) (show-marks . [(20130805 749) ((fm (1 0))) "Navigate and visualize the mark-ring" single ((:commit . "97609566582e65eed0d0a854efa5c312f209115d") (:url . "https://github.com/vapniks/mark") (:keywords "convenience"))]) (show-css . [(20160210 608) ((doom (1 3)) (s (1 10 0))) "Show the css of the html attribute the cursor is on" tar ((:commit . "771daeddd4df7a7c10f66419a837145649bab63b") (:url . "https://github.com/smmcg/showcss-mode") (:keywords "hypermedia"))]) (shoulda . [(20140616 1133) ((cl-lib (0 5))) "Shoulda test support for ruby" single ((:commit . "fbe8eb8efc6cfcca1713283a290882cfcdc8725e") (:keywords "ruby" "tests" "shoulda"))]) (shm . [(20170523 238) nil "Structured Haskell Mode" tar ((:commit . "bd08a0b2297667e2ac7896e3b480033ae5721d4d") (:keywords "development" "haskell" "structured"))]) (shimbun . [(20171018 131) nil "interfacing with web newspapers" tar ((:commit . "2666d95df942f23e7837f27206b8352701fa22dd") (:keywords "news"))]) (shift-text . [(20130831 955) ((cl-lib (1 0)) (es-lib (0 3))) "Move the region in 4 directions, in a way similar to Eclipse's" single ((:commit . "1be9cbf994000022172ceb746fe1d597f57ea8ba") (:url . "https://github.com/sabof/shift-text"))]) (shift-number . [(20170301 659) nil "Increase/decrease the number at point" single ((:commit . "cd099a5582fc996b800ac7607f6c38a004ce9740") (:url . "https://github.com/alezost/shift-number.el") (:keywords "convenience"))]) (shen-elisp . [(20170427 1502) ((emacs (24 4))) "Shen implementation in Elisp" tar ((:commit . "ffe17dee05f75539cf5e4c59395e4c7400ececaa") (:keywords "shen" "elisp") (:url . "http://github.com/deech/shen-elisp"))]) (shelltest-mode . [(20141227 248) nil "Major mode for shelltestrunner" single ((:commit . "b4bdd547bcdac427561aa1452f2aeb65e3a3c9f5") (:url . "https://github.com/rtrn/shelltest-mode") (:keywords "languages"))]) (shelldoc . [(20151114 1925) ((cl-lib (0 3)) (s (1 9 0))) "shell command editing support with man page." single ((:commit . "5df2264eb60e45066f3633df4f34834751667346") (:url . "http://github.com/mhayashi1120/Emacs-shelldoc") (:keywords "applications"))]) (shell-toggle . [(20150226 611) nil "Toggle to and from the shell buffer" single ((:commit . "0d01bd9a780fdb7fe6609c552523f4498649a3b9") (:url . "https://github.com/knu/shell-toggle.el") (:keywords "processes"))]) (shell-switcher . [(20161028 2252) ((emacs (24))) "Provide fast switching between shell buffers." tar ((:commit . "28a7f753dd7addd2933510526f52620cb5a22048"))]) (shell-split-string . [(20151224 208) nil "Split strings using shell-like syntax" single ((:commit . "19f6f999c33cc66a4c91bacdcc3697c25d97bf5a") (:url . "https://github.com/10sr/shell-split-string-el") (:keywords "utility" "library" "shell" "string"))]) (shell-pop . [(20170304 616) ((emacs (24)) (cl-lib (0 5))) "helps you to use shell easily on Emacs. Only one key action to work." single ((:commit . "4a3a9d093ad1add792bba764c601aa28de302b34") (:url . "http://github.com/kyagi/shell-pop-el") (:keywords "shell" "terminal" "tools"))]) (shell-history . [(20100505 139) nil "integration with shell history" single ((:commit . "ee371a81f2d2bf5a308344078329ca1e9b5ed38c") (:url . "http://www.emacswiki.org/cgi-bin/wiki/download/shell-history.el") (:keywords "processes" "convenience"))]) (shell-here . [(20150728 1004) nil "Open a shell relative to the working directory" single ((:commit . "251309141e18978d2b8014345acc6f5afcd4d509") (:keywords "unix" "tools" "processes"))]) (shell-current-directory . [(20140101 1554) nil "create new shell based on buffer directory" single ((:commit . "bf843771bf9a4aa05e054ade799eb8862f3be89a") (:keywords "shell" "comint"))]) (shell-command . [(20090830 340) nil "enables tab-completion for `shell-command'" single ((:commit . "7e22125f746ce9ffbe9b0282d62f4b4bbbe672bd") (:keywords "shell"))]) (shampoo . [(20131230 219) nil "A remote Smalltalk development mode" tar ((:commit . "bc193c39636c30182159c5c91c37a9a4cb50fedf"))]) (shakespeare-mode . [(20160908 1511) nil "A major mode for editing Shakespearean templates." single ((:commit . "0406a5ac4c98fcd171f0539c5cd88050aa351ea8") (:url . "http://github.com/CodyReichert/shakespeare-mode") (:keywords "shakespeare" "hamlet" "lucius" "julius" "mode"))]) (shader-mode . [(20171108 916) ((emacs (24))) "Major mode for shader" single ((:commit . "29118fc483bd6ad3fa42cb80867fae9dbd613fff") (:url . "https://github.com/midnightSuyama/shader-mode"))]) (shadchen . [(20141102 1039) nil "pattern matching for elisp" single ((:commit . "35f2b9c304eec990c16efbd557198289dc7cbb1f"))]) (shackle . [(20171018 1120) ((cl-lib (0 5))) "Enforce rules for popups" single ((:commit . "0cee957bc0bfbdee5ea3f3e430e94cdcd87ed0c3") (:url . "https://github.com/wasamasa/shackle") (:keywords "convenience"))]) (sexy-monochrome-theme . [(20171125 1212) nil "A sexy dark Emacs >= 24 theme for your sexy code" single ((:commit . "529a1c75196391d7f2f1f42cf9d9f4a52c7d9007") (:url . "https://github.com/voloyev/sexy-monochrome-theme") (:keywords "themes"))]) (sexp-move . [(20150915 1030) nil "Improved S-Expression Movement" single ((:commit . "117f7a91ab7c25e438413753e916570122011ce7") (:url . "https://gitlab.com/elzair/sexp-move") (:keywords "sexp"))]) (seti-theme . [(20161208 836) nil "A dark colored theme, inspired by Seti Atom Theme" single ((:commit . "cbfef2fc15d19ce4c8326e65fafdd61737077132") (:url . "https://github.com/caisah/seti-theme") (:keywords "themes"))]) (session . [(20120510 1700) nil "use variables, registers and buffer places across sessions" single ((:commit . "19ea0806873daac3539a4b956e15655e99e3dd6c") (:url . "http://emacs-session.sourceforge.net/") (:keywords "session" "session management" "desktop" "data" "tools"))]) (services . [(20170802 430) ((cl-lib (0 5))) "Services database access functions." single ((:commit . "04c7986041a33dfa0b0ae57c7d6fbd600548c596") (:url . "https://github.com/davep/services.el") (:keywords "convenience" "net" "services"))]) (serverspec . [(20150623 455) ((dash (2 6 0)) (s (1 9 0)) (f (0 16 2)) (helm (1 6 1))) "Serverspec minor mode" tar ((:commit . "b6dfe82af9869438de5e5d860ced196641f372c0") (:url . "http://101000lab.org"))]) (servant . [(20140216 419) ((s (1 8 0)) (dash (2 2 0)) (f (0 11 0)) (ansi (0 3 0)) (commander (0 5 0)) (epl (0 2)) (shut-up (0 2 1)) (web-server (0 0 1))) "ELPA server written in Emacs Lisp" tar ((:commit . "4d2aa8250b54b28e6e7ee4cd5ebd98a33db2c134") (:url . "http://github.com/rejeep/servant.el") (:keywords "elpa" "server"))]) (sequential-command . [(20151207 1403) nil "Many commands into one command" tar ((:url . "http://www.emacswiki.org/cgi-bin/wiki/download/sequential-command.el") (:keywords "convenience" "lisp"))]) (sequences . [(20170818 552) ((emacs (24))) "Ports of some Clojure sequence functions." single ((:commit . "564ebbd93b0beea4e75acfbf824350e90b5d5738") (:keywords "convenience"))]) (seoul256-theme . [(20170320 1311) ((emacs (24 3))) "Low-contrast color scheme based on Seoul Colors." single ((:commit . "8afaf6aa2c63a003e2899e3e5ba8be85f6fdd350") (:url . "http://github.com/anandpiyer/seoul256-emacs") (:keywords "theme"))]) (sentence-navigation . [(20160830 1840) ((ample-regexps (0 1)) (cl-lib (0 5)) (emacs (24 4))) "Commands to navigate one-spaced sentences." single ((:commit . "f9aedbfc2b8d7957f427dac87558948c80582429") (:url . "https://github.com/noctuid/emacs-sentence-navigation") (:keywords "sentence" "evil"))]) (sensitive . [(20170818 551) ((emacs (24)) (sequences (0 1 0))) "A dead simple way to load sensitive information" single ((:commit . "69dd6125a41d8b55f4b6ba61daa4d1aa1f716fa8") (:keywords "convenience"))]) (sendto . [(20160425 550) ((emacs (24 4))) "send the region content to a function" single ((:commit . "076b81d7a53f75b0a59b0ef3448f35570567054c") (:url . "https://github.com/lujun9972/sendto.el") (:keywords "convenience" "region"))]) (semi . [(20160816 239) ((flim (1 14 9))) "A library to provide MIME features." tar ((:commit . "6b9c62a76f22caf1476c837ee1976eaf0eaf38e7"))]) (selectric-mode . [(20170216 311) nil "IBM Selectric mode for Emacs" tar ((:commit . "a35cb3815caceaf273ad7d16ac3b2dd3c7a3003e") (:url . "https://github.com/rbanffy/selectric-mode") (:keywords "multimedia" "convenience" "typewriter" "selectric"))]) (selected . [(20170222 34) nil "Keymap for when region is active" single ((:commit . "03edaeac90bc6000d263f03be3d889b4685e1bf7") (:url . "http://github.com/Kungsgeten/selected.el") (:keywords "convenience"))]) (select-themes . [(20160220 1706) nil "Color theme selection with completing-read" single ((:commit . "236f54287519a3ea6dd7b3992d053e4f4ff5d0fe") (:url . "https://github.com/jasonm23/emacs-select-themes"))]) (sekka . [(20170803 547) ((cl-lib (0 3)) (concurrent (0 3 1)) (popup (0 5 2))) "A client for Sekka IME server" single ((:commit . "61840b57d9ae32bf8e297b175942590a1319c7e7") (:url . "https://github.com/kiyoka/sekka") (:keywords "ime" "skk" "japanese"))]) (seethru . [(20150218 1029) ((shadchen (1 4))) "Easily change Emacs' transparency" single ((:commit . "d87e231f99313bea75b1e69e48c0f32968c82060") (:url . "http://github.com/benaiah/seethru") (:keywords "lisp" "tools" "alpha" "transparency"))]) (seeing-is-believing . [(20170214 520) nil "minor mode for running the seeing-is-believing ruby gem" single ((:commit . "fbbe246c0fda87bb26227bb826eebadb418a220f"))]) (secretaria . [(20170828 945) ((emacs (24 4)) (org (9 0)) (alert (1 2)) (s (1 11 0)) (f (0 19 0))) "A personal assistant based on org-mode" tar ((:commit . "1cd32d957864be1ba5c44a3f505f662832169a28") (:url . "https://bitbucket.org/shackra/secretaria.el") (:keywords "org" "convenience"))]) (second-sel . [(20170702 729) nil "Secondary selection commands" single ((:url . "https://www.emacswiki.org/emacs/download/second-sel.el") (:keywords "region" "selection" "yank" "paste" "edit"))]) (seclusion-mode . [(20121118 1553) nil "Edit in seclusion. A Dark Room mode." single ((:commit . "9634e76c52bfb7200ff0f9f01404f743429e9ef0") (:url . "http://github.com/dleslie/seclusion-mode"))]) (searchq . [(20150829 511) ((emacs (24 3))) "Framework of queued search tasks using GREP, ACK, AG and more." tar ((:commit . "dd510d55ad66a82c6ef022cfe7c4a73ad5365f82"))]) (search-web . [(20150312 403) nil "Post web search queries using `browse-url'." single ((:commit . "c4ae86ac1acfc572b81f3d78764bd9a54034c331"))]) (sdlang-mode . [(20161130 2311) ((emacs (24 3))) "Major mode for Simple Declarative Language files." single ((:commit . "d42a6eedefeb44919fbacf58d302b6df18f05bbc") (:url . "https://github.com/CyberShadow/sdlang-mode") (:keywords "languages"))]) (sdcv . [(20171002 210) ((emacs (24 3)) (popup (0 5 3)) (showtip (0 1)) (pos-tip (0 4 6)) (cl-lib (0 3))) "Interface for sdcv (StartDict console version)." single ((:commit . "1aad9defb871dc07e27f603092bb81413be54cf2") (:url . "http://www.emacswiki.org/emacs/download/sdcv.el") (:keywords "startdict" "sdcv"))]) (scss-mode . [(20150107 1400) nil "Major mode for editing SCSS files" single ((:commit . "b010d134f499c4b4ad33fe8a669a81e9a531b0b2") (:url . "https://github.com/antonj/scss-mode") (:keywords "scss" "css" "mode"))]) (scrooge . [(20170728 1106) ((emacs (24)) (thrift (0 9 3))) "Major mode for Twitter Scrooge files" single ((:commit . "fb55c64eb2ae4db57b14bc99d2e411d81b2c5c2a") (:keywords "scrooge" "thrift"))]) (scribble-mode . [(20160124 1528) ((emacs (24))) "Major mode for editing Scribble documents" single ((:commit . "34e9e5edb921813b6483e0fefa848efb6ee4b314") (:url . "https://github.com/emacs-pe/scribble-mode") (:keywords "convenience"))]) (screenshot . [(20120509 405) nil "Take a screenshot in Emacs" single ((:url . "http://www.emacswiki.org/cgi-bin/wiki/download/screenshot.el") (:keywords "images" "hypermedia"))]) (scratches . [(20151005 2116) ((dash (2 11 0)) (f (0 17 0))) "Multiple scratches in any language" single ((:commit . "9441afe6396ca38f08029123fab5d87429cbf315") (:keywords "scratch"))]) (scratch-pop . [(20170510 758) ((popwin (0 7 0 -3))) "Generate, popup (& optionally backup) scratch buffer(s)." single ((:commit . "7f4172c792b10bd38898dd8963cf0ade91921869") (:url . "http://hins11.yu-yake.com/"))]) (scratch-palette . [(20150225 42) ((popwin (0 7 0 -3))) "make scratch buffer for each files" single ((:commit . "f6803b448079f4a81cc699cec7442ef543cd5818") (:url . "http://hins11.yu-yake.com/"))]) (scratch-message . [(20170107 536) nil "Changing message in your scratch buffer" single ((:commit . "3ecc7f5e3b8a597ebd1492fd426d3720a7f34302") (:url . "https://github.com/thisirs/scratch-message.git") (:keywords "util" "scratch"))]) (scratch-log . [(20141114 2343) nil "Utility for *scratch* buffer." single ((:commit . "1168f7f16d36ca0f4ddf2bb98881f8db62cc5dc0"))]) (scratch-ext . [(20140103 2116) nil "Extensions for *scratch*" single ((:commit . "388c53cddd0466b451264894667ed64a6947ad67") (:url . "https://github.com/kyanagi/scratch-ext-el"))]) (scratch . [(20170614 1401) nil "Mode-specific scratch buffers" single ((:commit . "2cdf2b841ce7a0987093f65b0cc431947549f897") (:keywords "convenience" "tools" "files"))]) (scpaste . [(20171101 922) ((htmlize (1 39))) "Paste to the web via scp." single ((:commit . "10559d6b0feb34dc60f039a237052adcca77b5d9") (:url . "https://github.com/technomancy/scpaste") (:keywords "convenience" "hypermedia"))]) (scp . [(20171203 1851) ((emacs (25 1)) (cl-lib (0 5))) "Use the SCP command to transfer files with the remote server" single ((:commit . "3f437ee9f52df7d9f4c57275a8cfb7f06c3c26ff") (:url . "https://github.com/tszg/emacs-scp") (:keywords "convenience" "scp"))]) (sclang-snippets . [(20130513 51) ((yasnippet (0 8 0))) "Snippets for the SuperCollider Emacs mode" tar ((:commit . "c840a416b96f83bdd70491e3d1fbe2f1ae8b3f58") (:keywords "snippets"))]) (sclang-extensions . [(20160508 2038) ((auto-complete (1 4 0)) (s (1 3 1)) (dash (1 2 0)) (emacs (24 1))) "Extensions for the SuperCollider Emacs mode." tar ((:commit . "e9cc79732f16fdb582129303110c163dcc0d6da0") (:keywords "sclang" "supercollider" "languages" "tools"))]) (scion . [(20130315 555) nil "Haskell Minor Mode for Interacting with the Scion Library" single ((:commit . "99b4589175665687181a932cd836850205625f71") (:url . "https://code.google.com/p/scion-lib/"))]) (schrute . [(20170521 1140) ((emacs (24 3))) "Help you remember there is a better way to do something." single ((:commit . "59faa6c4232ae183cea93237301acad8c0763997") (:url . "https://bitbucket.org/shackra/dwight-k.-schrute") (:keywords "convenience"))]) (scheme-here . [(20141028 18) nil "cmuscheme extension for multiple inferior processes" single ((:commit . "430ba017cc530865218de23a8f7985095a58343f") (:url . "https://github.com/kaihaosw/scheme-here") (:keywords "scheme"))]) (scheme-complete . [(20170824 713) nil "Smart auto completion for Scheme in Emacs" single ((:commit . "4c77038048cbcf34b5907f0439c93058a71a2d2b"))]) (scf-mode . [(20151121 1848) nil "shorten file-names in compilation type buffers" single ((:commit . "dbfcdcd89034f208d65e181af58e0d73ad09f8b2") (:url . "https://github.com/lewang/scf-mode") (:keywords "compilation"))]) (scala-mode . [(20170802 432) nil "Major mode for editing Scala" tar ((:commit . "56cba2903cf6e12c715dbb5c99b34c97b2679379") (:url . "https://github.com/ensime/emacs-scala-mode") (:keywords "languages"))]) (scad-preview . [(20160206 536) ((scad-mode (91 0))) "Preview SCAD models in real-time within Emacs" single ((:commit . "fee011589671cc8f1296cb6aa81553e5bb699819") (:url . "http://hins11.yu-yake.com/"))]) (scad-mode . [(20170219 2003) nil "A major mode for editing OpenSCAD code" single ((:commit . "bffc7f4fbdd3c60117a3e11b67bdcf6fd6d1dda1") (:url . "https://raw.github.com/openscad/openscad/master/contrib/scad-mode.el") (:keywords "languages"))]) (sbt-mode . [(20171111 1558) ((emacs (24 4))) "Interactive support for sbt projects" tar ((:commit . "84c3d178a1f2c580f620fd8f03a05ac6413086a3") (:url . "https://github.com/ensime/emacs-sbt-mode") (:keywords "languages"))]) (sayid . [(20170509 1215) ((cider (0 14 0))) "sayid nREPL middleware client" single ((:commit . "20a92323c3edc060c521aa93edab9dad47646b4f") (:url . "https://github.com/bpiel/sayid"))]) (say-what-im-doing . [(20160706 1231) nil "dictate what you're doing with text to speech" single ((:commit . "5b2ce6783b02805bcac1107a149bfba3852cd9d5") (:url . "http://github.com/benaiah/say-what-im-doing") (:keywords "text to speech" "dumb" "funny"))]) (savekill . [(20140417 1929) nil "Save kill ring to disk" single ((:commit . "67fc94e3d8fe8ce3ca16f90518f6a46479b63e34") (:url . "http://www.emacswiki.org/cgi-bin/wiki/download/savekill.el") (:keywords "tools"))]) (save-visited-files . [(20170228 2250) nil "save opened files across sessions" single ((:commit . "33e8d223f622001f5792c52d8b36661e46b5834c") (:url . "http://github.com/nflath/save-visited-files"))]) (save-load-path . [(20140206 414) nil "save load-path and reuse it to test" single ((:commit . "6cb763a37e2b8af505bff2bcd11fd49c9ea04d66") (:url . "http://www.emacswiki.org/cgi-bin/wiki/download/save-load-path.el") (:keywords "lisp"))]) (sauron . [(20171105 247) nil "Track (erc/org/dbus/...) events and react to them." tar ((:commit . "50f09bfc6f5bf79e72a1223e345ee720b507e56a"))]) (sass-mode . [(20161006 2326) ((haml-mode (3 0 15)) (cl-lib (0 5))) "Major mode for editing Sass files" single ((:commit . "37105f46f6ea3592039f2ea7d0463ae7f042616e") (:url . "http://github.com/nex3/haml/tree/master") (:keywords "markup" "language" "css"))]) (sane-term . [(20160620 647) ((emacs (24 1))) "Multi Term is crazy. This is not." single ((:commit . "ef6fd08078f49f2bb3be60855d2d002bb6a5e0d2") (:url . "http://github.com/adamrt/sane-term"))]) (salt-mode . [(20170702 246) ((emacs (24 4)) (yaml-mode (0 0 12)) (mmm-mode (0 5 4)) (mmm-jinja2 (0 1))) "Major mode for Salt States" single ((:commit . "a41c07660199cfad3f9dd928d5674d2727508035") (:url . "https://github.com/glynnforrest/salt-mode") (:keywords "languages"))]) (salesforce-utils . [(20160813 1854) ((cl-lib (0 5))) "simple utilities for Salesforce" single ((:commit . "73328baf0fb94ac0d0de645a8f6d42e5ae27f773") (:url . "https://github.com/grimnebulin/emacs-salesforce"))]) (sailfish-scratchbox . [(20171202 532) nil "Sailfish OS scratchbox inside the emacs." single ((:commit . "bb5ed0f0b0cd72f2eb1af065b7587ec81866b089") (:url . "https://github.com/vityafx/sailfish-scratchbox.el") (:keywords "sb2" "mb2" "building" "scratchbox" "sailfish"))]) (sage-shell-mode . [(20171119 234) ((cl-lib (0 6 1)) (emacs (24 4)) (let-alist (1 0 5)) (deferred (0 5 1))) "A front-end for Sage Math" tar ((:commit . "e4e7523178f09270a28b8b712191b1e980e6e8c9") (:url . "https://github.com/sagemath/sage-shell-mode") (:keywords "sage" "math"))]) (sackspace . [(20130719 256) nil "A better backspace" single ((:commit . "fd0480eaaf6d3d11fd30ac5feb2da2f4f7572708") (:url . "http://github.com/cofi/sackspace.el") (:keywords "delete" "convenience"))]) (s12cpuv2-mode . [(20171013 1351) ((emacs (24 3))) "Major-mode for S12CPUV2 assembly" single ((:commit . "b17d4cf848dec1e20e66458e5c7ff77a2c051a8c") (:url . "https://github.com/AdamNiederer/s12cpuv2-mode") (:keywords "s12cpuv2" "assembly" "languages"))]) (s-buffer . [(20130605 1424) ((s (1 6 0)) (noflet (0 0 3))) "s operations for buffers" single ((:commit . "f95d234282377f00a2c3a9846681080cb95bb1df") (:url . "http://github.com/nicferrier/emacs-s-buffer") (:keywords "lisp"))]) (s . [(20171102 227) nil "The long lost Emacs string manipulation library." single ((:commit . "5e9a6857d42015c67681616aa3519f599f97b8d8") (:keywords "strings"))]) (ryo-modal . [(20170217 1021) ((emacs (24 4))) "Roll your own modal mode" single ((:commit . "f6073b56c43a8bc4fc01eb27faba3335d556606a") (:url . "http://github.com/Kungsgeten/ryo-modal") (:keywords "convenience" "modal" "keys"))]) (rvm . [(20150402 742) nil "Emacs integration for rvm" single ((:commit . "8e45a9bad8e317ff195f384dab14d3402497dc79") (:url . "http://www.emacswiki.org/emacs/RvmEl") (:keywords "ruby" "rvm"))]) (rust-playground . [(20170211 5) ((emacs (24 3)) (rust-mode (0 3 0))) "Local Rust playground for short code snippets." single ((:commit . "ff4149489c30a65817750428847217368bd995ba") (:url . "https://github.com/grafov/rust-playground") (:keywords "tools" "rust"))]) (rust-mode . [(20171106 510) ((emacs (24 0))) "A major emacs mode for editing Rust source code" single ((:commit . "04e3078ffc5f4b95e0a62960e36866d4bf1a9537") (:url . "https://github.com/rust-lang/rust-mode") (:keywords "languages"))]) (russian-holidays . [(20170109 1340) nil "Russian holidays for the calendar" single ((:commit . "b285a30f29d85c48e3ea4eb93972d34a090c167b") (:url . "https://github.com/grafov/russian-holidays"))]) (runtests . [(20150807 131) nil "Run unit tests from Emacs" single ((:commit . "ed90249f24cc48290018df48b9b9b7172440be3e") (:url . "https://github.com/sunesimonsen/emacs-runtests") (:keywords "test"))]) (runner . [(20160524 43) nil "Improved \"open with\" suggestions for dired" single ((:commit . "a211d57ddc600410d07a8b534920ba905b093d87") (:url . "https://github.com/thamer/runner") (:keywords "shell command" "dired" "file extension" "open with"))]) (run-stuff . [(20170813 1957) ((emacs (24 4))) "context based command execution" single ((:commit . "2e23a78c26f62141142c743febd57ec54c78c0e3") (:url . "https://github.com/ideasman42/emacs-run-stuff") (:keywords "files" "lisp" "files" "convenience" "hypermedia"))]) (rufo . [(20170718 716) ((emacs (24 3))) "use rufo to automatically format ruby files" single ((:commit . "85a6d80fb05fef396a8029b8f944c92a53faf8fe") (:url . "https://github.com/danielma/rufo.el"))]) (ruby-tools . [(20151209 815) nil "Collection of handy functions for ruby-mode." tar ((:commit . "6b97066b58a4f82eb2ecea6434a0a7e981aa4c18"))]) (ruby-test-mode . [(20171016 931) ((ruby-mode (1 0)) (pcre2el (1 8))) "Minor mode for Behaviour and Test Driven" single ((:commit . "87f6d770f8d2326c8d36099aeee5d577f3e2af69") (:keywords "ruby" "unit" "test" "rspec"))]) (ruby-refactor . [(20160214 850) ((ruby-mode (1 2))) "A minor mode which presents various Ruby refactoring helpers." single ((:commit . "e6b7125878a08518bffec6942df0c606f748e9ee") (:url . "https://github.com/ajvargo/ruby-refactor") (:keywords "refactor" "ruby"))]) (ruby-interpolation . [(20131112 852) nil "Ruby string interpolation helpers" single ((:commit . "1978e337601222cedf00e117bf4b5cac15d1f203") (:url . "http://github.com/leoc/ruby-interpolation.el"))]) (ruby-hash-syntax . [(20171013 50) nil "Toggle ruby hash syntax between classic and 1.9 styles" single ((:commit . "bc05c3130a5d3237f04c6064297e56de5f73887d") (:url . "https://github.com/purcell/ruby-hash-syntax") (:keywords "languages"))]) (ruby-factory . [(20160101 2321) ((inflections (1 1))) "Minor mode for Ruby test object generation libraries" tar ((:commit . "2bb7ccc2fccb5257376a989aa395bc7b9eb1d55d") (:url . "http://github.com/sshaw/ruby-factory-mode") (:keywords "ruby" "rails" "convenience"))]) (ruby-extra-highlight . [(20171106 1133) nil "Highlight Ruby parameters." single ((:commit . "83942d18eae361998d24c1c523b308eea821f048") (:url . "https://github.com/Lindydancer/ruby-extra-highlight") (:keywords "languages" "faces"))]) (ruby-end . [(20141215 423) nil "Automatic insertion of end blocks for Ruby" single ((:commit . "a136f75abb6d5577ce40d61dfeb778c2e9bb09c0") (:url . "http://github.com/rejeep/ruby-end") (:keywords "speed" "convenience" "ruby"))]) (ruby-electric . [(20170810 430) nil "Minor mode for electrically editing ruby code" single ((:commit . "3553448a780a1ea5c3b0e9becd820d4762876593") (:url . "https://github.com/knu/ruby-electric.el") (:keywords "languages" "ruby"))]) (ruby-compilation . [(20150708 2340) ((inf-ruby (2 2 1))) "run a ruby process in a compilation buffer" single ((:commit . "134438af8fbdfa9c8077267c768d273a9792b484") (:url . "https://github.com/eschulte/rinari") (:keywords "test" "convenience"))]) (ruby-block . [(20131210 1931) nil "highlight matching block" single ((:keywords "languages" "faces" "ruby"))]) (ruby-additional . [(20171001 2106) ((emacs (24 3)) (ruby-mode (1 2))) "ruby-mode extensions yet to be merged into Emacs" tar ((:commit . "14f380893cb7c1d9ddbb4ed1a2fc280999c82fde") (:url . "https://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/misc/") (:keywords "ruby" "languages"))]) (rubocop . [(20170311 2211) ((emacs (24))) "An Emacs interface for RuboCop" single ((:commit . "980bedb455e3551d35a212fae515c054888907c1") (:url . "https://github.com/bbatsov/rubocop-emacs") (:keywords "project" "convenience"))]) (rtm . [(20160116 927) ((cl-lib (1 0))) "An elisp implementation of the Remember The Milk API" single ((:commit . "08dc10458b56e72f1512896192b2114ef57e58c5") (:url . "https://github.com/pmiddend/emacs-rtm") (:keywords "remember" "the" "milk" "productivity" "todo"))]) (rtags . [(20171205 2311) nil "A front-end for rtags" single ((:commit . "324f256acfdac2582c684e757078b1ca73ba28ec") (:url . "http://rtags.net"))]) (rspec-mode . [(20171025 1606) ((ruby-mode (1 0)) (cl-lib (0 4))) "Enhance ruby-mode for RSpec" tar ((:commit . "94a04f148922852b591957b0b3b22de5c4237448") (:url . "http://github.com/pezra/rspec-mode") (:keywords "rspec" "ruby"))]) (rsense . [(20100510 2105) nil "RSense client for Emacs" single ((:commit . "8b5ee58318747ca1dde84ee41d48c4f50175cf35") (:keywords "convenience"))]) (rpn-calc . [(20170522 1842) ((popup (0 4))) "quick RPN calculator for hackers" single ((:commit . "66fcb64dbfddfc23823356b6213215bd7ab5efc6") (:url . "https://github.com/zk-phi/rpn-calc"))]) (rpm-spec-mode . [(20160710 436) nil "RPM spec file editing commands for Emacs/XEmacs" single ((:commit . "c1c38050c48ea330c7cea632b8785d66daeefb2b") (:keywords "unix" "languages"))]) (roy-mode . [(20121208 358) nil "Roy major mode" single ((:commit . "0416f561edbc6b4a29fced8be84d2527a9613d65") (:url . "https://github.com/folone/roy-mode") (:keywords "extensions"))]) (rotate . [(20160909 136) nil "Rotate the layout of emacs" single ((:commit . "091b5ac4fc310773253efb317e3dbe8e46959ba6") (:url . "https://github.com/daichirata/emacs-rotate") (:keywords "window" "layout"))]) (rope-read-mode . [(20171003 719) nil "Rearrange lines to read text smoothly" single ((:commit . "77b183a6f5450138388509f54a6a2ce442766e50") (:url . "https://github.com/marcowahl/rope-read-mode") (:keywords "reading" "convenience" "chill"))]) (roguel-ike . [(20160119 1902) ((popup (0 5 0))) "A coffee-break roguelike" tar ((:commit . "706dcb0687e8016d7d776f9d9e5ace9fdbbca43c"))]) (robots-txt-mode . [(20170908 642) nil "Major mode for editing robots.txt" single ((:commit . "4a77674ab2963b829d3b751741c4ce1169e87f6b") (:url . "https://github.com/emacs-php/robots-txt-mode") (:keywords "languages" "comm" "web"))]) (robe . [(20171116 1249) ((inf-ruby (2 5 1)) (emacs (24 4))) "Code navigation, documentation lookup and completion for Ruby" tar ((:commit . "7829f4fdda41eee0add8868646ab86e6b17de4b4") (:url . "https://github.com/dgutov/robe") (:keywords "ruby" "convenience" "rails"))]) (rjsx-mode . [(20171029 1156) ((emacs (24 4)) (js2-mode (20170504))) "Real support for JSX" single ((:commit . "4c10dcd764ade8e3d5dc235c26ba9299576a513d") (:url . "https://github.com/felipeochoa/rjsx-mode/") (:keywords "languages"))]) (riscv-mode . [(20170804 821) ((emacs (24 4))) "Major-mode for RISC V assembly" single ((:commit . "99febf97d1fa9441e8dada94fe30c2aa439c9749") (:url . "https://github.com/AdamNiederer/riscv-mode") (:keywords "riscv" "assembly"))]) (ripgrep . [(20170810 1118) nil "Front-end for ripgrep, a command line search tool" single ((:commit . "c47a2da4668ca338e7fadc3d8c095e075caaa17d") (:url . "https://github.com/nlamirault/ripgrep.el") (:keywords "ripgrep" "ack" "pt" "ag" "sift" "grep" "search"))]) (rings . [(20160531 1327) nil "Buffer rings. Like tabs, but better." single ((:commit . "3590b222eb80652cbd27866f066bd3571d86edfc") (:url . "http://github.com/konr/rings") (:keywords "utilities" "productivity"))]) (rinari . [(20150708 2340) ((ruby-mode (1 0)) (inf-ruby (2 2 5)) (ruby-compilation (0 16)) (jump (2 0))) "Rinari Is Not A Rails IDE" single ((:commit . "134438af8fbdfa9c8077267c768d273a9792b484") (:url . "https://github.com/eschulte/rinari") (:keywords "ruby" "rails" "project" "convenience" "web"))]) (rimero-theme . [(20171001 821) ((emacs (24))) "Theme with a dark background suitable for UI and terminal usage." single ((:commit . "2c15da5a4d56f1b29db2fc178d387eb86e7abd39") (:url . "https://github.com/yveszoundi/emacs-rimero-theme") (:keywords "faces" "theme" "dark" "light colors"))]) (rigid-tabs . [(20170903 859) ((emacs (24 3))) "Fix TAB alignment in diff buffers" single ((:commit . "eba84ceaba2e57e76ad2dfbb7a7154238a25d956") (:url . "https://github.com/wavexx/rigid-tabs.el") (:keywords "diff" "whitespace" "version control" "magit"))]) (rich-minority . [(20170813 622) ((cl-lib (0 5))) "Clean-up and Beautify the list of minor-modes." single ((:commit . "3201f6e1769beb9f6cbbda392bef99fce337acf4") (:url . "https://github.com/Malabarba/rich-minority") (:keywords "mode-line" "faces"))]) (rib-mode . [(20170726 748) ((emacs (24))) "RenderMan® Interface Bytestream (RIB) Major Mode" single ((:commit . "97470158784c3c212e22e2c20b8471ee65ba59af") (:url . "https://github.com/blezek/rib-mode"))]) (rhtml-mode . [(20130422 611) nil "major mode for editing RHTML files" tar ((:commit . "a6d71b38a3db867ccf82999c99805db1a3a33c33"))]) (rg . [(20171121 1151) ((cl-lib (0 5)) (emacs (24)) (s (1 10 0))) "A search tool based on ripgrep." single ((:commit . "68984092d0e0725057e7b67ba32016903170f189") (:url . "https://github.com/dajva/rg.el") (:keywords "matching" "tools"))]) (rfringe . [(20110405 820) nil "display the relative location of the region, in the fringe." single ((:url . "http://www.emacswiki.org/emacs/rfringe.el") (:keywords "fringe" "bitmap"))]) (reykjavik-theme . [(20160109 0) ((emacs (24))) "Theme with a dark background." single ((:commit . "d9bb783d6cf3c3b52cf377d9207484fba54657fd"))]) (review-mode . [(20171029 650) nil "major mode for ReVIEW" single ((:commit . "115cd06558c01889f89feaa659e0d7513a2ad21e") (:url . "https://github.com/kmuto/review-el"))]) (reverse-theme . [(20141204 1745) nil "Reverse theme for Emacs" single ((:commit . "8319d0d5342890a3530ffa4daafdb7c35feda1ca") (:url . "https://github.com/syohex/emacs-reverse-theme"))]) (reverse-im . [(20170721 940) ((emacs (24 4))) "Reverse mapping for keyboard layouts other than english." single ((:commit . "63fb1edee017177c44f8b663a707201b3dd78345") (:url . "https://github.com/a13/reverse-im.el") (:keywords "input" "method"))]) (reveal-next . [(20170101 1120) nil "Progressively reveal text after the cursor." single ((:url . "http://www.emacswiki.org/reveal-next.el") (:keywords "hide" "show" "invisible" "learning"))]) (reveal-in-osx-finder . [(20150802 957) nil "Reveal file associated with buffer in OS X Finder" single ((:commit . "5710e5936e47139a610ec9a06899f72e77ddc7bc") (:url . "https://github.com/kaz-yos/reveal-in-osx-finder") (:keywords "os x" "finder"))]) (restclient-test . [(20160618 315) ((emacs (24 4)) (restclient (0))) "Run tests with restclient.el" single ((:commit . "a21e41b905b423e762eeb4da3a236c8b1aea8c49") (:url . "https://github.com/simenheg/restclient-test.el"))]) (restclient-helm . [(20170314 854) ((restclient (0)) (helm (1 9 4))) "helm interface for restclient.el" single ((:commit . "0ce4513a6b5ff1e63c73fda30f11efdb7a296c38") (:keywords "http" "helm"))]) (restclient . [(20171203 1248) nil "An interactive HTTP client for Emacs" single ((:commit . "0ce4513a6b5ff1e63c73fda30f11efdb7a296c38") (:keywords "http"))]) (restart-emacs . [(20170609 905) nil "Restart emacs from within emacs" single ((:commit . "98aa4efd2caeaf0f42ca385c24fa14a843b271b7") (:url . "https://github.com/iqbalansari/restart-emacs") (:keywords "convenience"))]) (resize-window . [(20170704 2212) ((emacs (24)) (cl-lib (0 5))) "easily resize windows" single ((:commit . "dcbbd30f4f4435070a66a22c5a169b752ca9f904") (:url . "https://github.com/dpsutton/resize-mode") (:keywords "window" "resize"))]) (requirejs-mode . [(20130215 1304) nil "Improved AMD module management" single ((:commit . "bbb0c09f8eb2d6a33c17319be8137f68bb16bc92") (:keywords "javascript" "amd" "requirejs"))]) (requirejs . [(20151203 2319) ((js2-mode (20150713)) (popup (0 5 3)) (s (1 9 0)) (cl-lib (0 5)) (yasnippet (20151011 1823))) "Requirejs import manipulation and source traversal." tar ((:commit . "4ea2a5fcbc76e4cbb6a7461e6f05f019b75865b1") (:url . "https://github.com/joeheyming/requirejs-emacs") (:keywords "javascript" "requirejs"))]) (request-deferred . [(20160419 1605) ((deferred (0 3 1)) (request (0 2 0))) "Wrap request.el by deferred" single ((:commit . "a3d080e57eb8be606fbf39d1baff94e1b16e1fb8"))]) (request . [(20170131 1747) ((emacs (24 4))) "Compatible layer for URL request in Emacs" single ((:commit . "a3d080e57eb8be606fbf39d1baff94e1b16e1fb8"))]) (req-package . [(20170826 2252) ((use-package (1 0)) (dash (2 7 0)) (log4e (0 2 0)) (ht (0))) "A use-package wrapper for package runtime dependencies management" tar ((:commit . "179ab70bb3d4f7a94401dace64f695c50acfe389") (:url . "https://github.com/edvorg/req-package") (:keywords "dotemacs" "startup" "speed" "config" "package"))]) (repo . [(20170213 139) ((emacs (24 3))) "Running repo from Emacs" single ((:commit . "d7b87cd515bad8a67d3a892a46a23f5fe81e08de") (:url . "https://github.com/canatella/repo-el") (:keywords "convenience"))]) (replace-with-inflections . [(20170911 245) ((cl-lib (0 5)) (string-inflection (1 0 5)) (inflections (1 1))) "Inflection aware `query-replace'" single ((:commit . "e286036a5d1dbac06a72a1e831b2a8d9cad27238") (:url . "https://github.com/knu/replace-with-inflections.el") (:keywords "matching"))]) (replace-symbol . [(20160517 1712) nil "Rename symbols in expressions or buffers" single ((:commit . "baf949e528aee1881f455f9c84e67718bedcb3f6") (:url . "https://github.com/bmastenbrook/replace-symbol-el"))]) (replace-pairs . [(20160207 451) ((emacs (24 4))) "Query-replace pairs of things" single ((:commit . "1e49071e2ef46a458a28f77681e313a63db5663c") (:url . "https://github.com/davidshepherd7/replace-pairs"))]) (replace-from-region . [(20170227 1516) nil "Replace commands whose query is from region" single ((:commit . "dc9318b9b2822da7b00ecc34d1dc965c8f96c9bb") (:url . "http://www.emacswiki.org/emacs/download/replace-from-region.el") (:keywords "replace" "search" "region"))]) (replace+ . [(20170801 1947) nil "Extensions to `replace.el'." single ((:url . "https://www.emacswiki.org/emacs/download/replace%2b.el") (:keywords "matching" "help" "internal" "tools" "local"))]) (repl-toggle . [(20161203 414) ((fullframe (0 0 5))) "Switch to/from repl buffer for current major-mode" single ((:commit . "50044030969d68e9f78a6db4e0a9229f5f3eaec3") (:keywords "repl" "buffers" "toggle"))]) (repeatable-motion . [(20170620 1148) ((emacs (24))) "Make repeatable versions of motions" tar ((:commit . "f29effdc4121c2dc7e3fec9b3a62debce29cda9d") (:url . "https://github.com/willghatch/emacs-repeatable-motion") (:keywords "motion" "repeatable"))]) (remember-last-theme . [(20170619 1433) ((emacs (24 4))) "Remember the last used theme between sessions." single ((:commit . "0973f1aa6b96355fa376fffe8b45733b6e963c51") (:url . "https://github.com/anler/remember-last-theme") (:keywords "convenience" "faces"))]) (remark-mode . [(20171128 146) ((emacs (25 1)) (markdown-mode (2 0))) "Major mode for the remark slideshow tool" tar ((:commit . "01a0952e1ebed01cef3904e0eac00c6b34cea1ef") (:keywords "remark" "slideshow" "markdown" "hot reload"))]) (relax . [(20131029 1434) ((json (1 2))) "For browsing and interacting with CouchDB" single ((:commit . "6e33892623ab87833082262321dc8e1977209626") (:url . "http://github.com/technomancy/relax.el") (:keywords "database" "http"))]) (relative-buffers . [(20160221 1123) ((cl-lib (0 5)) (dash (2 6 0)) (s (1 9 0)) (f (0 16 2))) "Emacs buffers naming convention" single ((:commit . "2547475084244d266b507e563c9b4034705cfeca") (:url . "https://github.com/proofit404/relative-buffers"))]) (related . [(20161002 2310) ((cl-lib (0 5))) "Switch back and forth between similarly named buffers." single ((:commit . "0065a2e16eeaa9bface49f7f0815b9cf9719f441") (:url . "https://bitbucket.org/lyude/related/raw/master/related.el") (:keywords "file" "buffer" "switch" "selection" "matching" "convenience"))]) (register-channel . [(20150513 2059) nil "Jump around fast using registers" single ((:commit . "f62f9a62ebd2537d4a8c8f2e358562c67d2aefc1") (:keywords "convenience"))]) (region-state . [(20151128 238) nil "Show the number of chars/lines or rows/columns in the region" single ((:commit . "07ffb7d9ada2fcd204f3447f078c265d25f36f60") (:url . "https://github.com/xuchunyang/region-state.el") (:keywords "convenience"))]) (region-convert . [(20161118 1859) nil "Convert string in region by Lisp function" single ((:commit . "10578576f6cb2945aed00fdcd585fc65cd2c5c31") (:url . "https://github.com/zonuexe/right-click-context") (:keywords "region" "convenience"))]) (region-bindings-mode . [(20140407 1514) nil "Enable custom bindings when mark is active." single ((:commit . "3fa5dbdbd7c000bebff6d9d14a4be326ec24b6fc") (:url . "https://github.com/fgallina/region-bindings-mode") (:keywords "convenience"))]) (regex-tool . [(20170104 1118) nil "A regular expression evaluation tool for programmers" single ((:commit . "0b4a0111143c88ef94bec56624cb2e00c1a054e6") (:url . "http://www.newartisans.com/") (:keywords "regex" "languages" "programming" "development"))]) (regex-dsl . [(20100124 228) nil "lisp syntax for regexps" single ((:commit . "ac89ab8b7691a165ef3007cb84417125cfc0632e"))]) (refine . [(20170322 1527) ((emacs (24 3)) (s (1 11 0)) (dash (2 12 0)) (list-utils (0 4 4)) (loop (1 2))) "interactive value editing" single ((:commit . "55984dbd570c361e7d56d85f2d4ecfbcc567bda1") (:keywords "convenience"))]) (redtick . [(20170129 1428) ((emacs (24 4))) "Smallest pomodoro timer (1 char)" tar ((:commit . "e6d2e9b69ec666f460f9158dd31cdf035eeb1080") (:url . "http://github.com/ferfebles/redtick") (:keywords "calendar"))]) (redshank . [(20171115 1156) ((paredit (21))) "Common Lisp Editing Extensions" tar ((:commit . "9b64da7895973a29a32320a13c08de69befa0006") (:keywords "languages" "lisp"))]) (redprl . [(20171204 757) ((emacs (24 3))) "Major mode for editing RedPRL proofs and interacting with RedPRL" single ((:commit . "7cbf9cd20eb2b4d5b130d25be9bc63aa5837c57c") (:keywords "languages"))]) (redpen-paragraph . [(20160625 350) ((emacs (24)) (cl-lib (0 5)) (json (1 4))) "RedPen interface." single ((:commit . "770ffb34b04bfa0ea8484fa1506e96c530168e13") (:url . "https://github.com/karronoli/redpen-paragraph.el") (:keywords "document" "proofreading" "help"))]) (redo+ . [(20131117 351) nil "Redo/undo system for Emacs" single ((:keywords "lisp" "extensions"))]) (redis . [(20150531 1248) ((emacs (24)) (cl-lib (0 5))) "Redis integration" single ((:commit . "2c33f3397bc14e7a8192867b55920492d4eead8c") (:url . "https://github.com/emacs-pe/redis.el") (:keywords "convenience"))]) (recursive-narrow . [(20140902 1027) nil "narrow-to-region that operates recursively" single ((:commit . "bc0cab88234ca92640d4b8da0d83e132c1897922") (:url . "http://github.com/nflath/recursive-narrow"))]) (rectangle-utils . [(20160914 2108) ((emacs (24)) (cl-lib (0 5))) "Some useful rectangle functions." single ((:commit . "6fe38fdd48ef5305a908b94a043a966ac3f2053a") (:url . "https://github.com/thierryvolpiatto/rectangle-utils"))]) (rect+ . [(20150620 1744) nil "Extensions to rect.el" single ((:commit . "299b742faa0bc4448e0d5fe9cb98ab1eb93b8dcc") (:url . "https://github.com/mhayashi1120/Emacs-rectplus") (:keywords "extensions" "data" "tools"))]) (recover-buffers . [(20171008 2137) nil "revisit all buffers from an auto-save file" tar ((:commit . "81a5cb53099955ebc2a411a44cba5a394ee3f2d1"))]) (recompile-on-save . [(20151126 646) ((dash (1 1 0)) (cl-lib (0 5))) "Trigger recompilation on file save." single ((:commit . "92e11446869d878803d4f3dec5d2101380c12bb2") (:url . "https://github.com/maio/recompile-on-save.el") (:keywords "convenience" "files" "processes" "tools"))]) (recentf-ext . [(20161210 840) nil "Recentf extensions" single ((:url . "http://www.emacswiki.org/cgi-bin/wiki/download/recentf-ext.el") (:keywords "convenience" "files"))]) (rebox2 . [(20121113 500) nil "Handling of comment boxes in various styles." single ((:commit . "00634eca420cc48657b81e40e599ff8548083985") (:url . "https://github.com/lewang/rebox2"))]) (rebecca-theme . [(20171114 2208) ((emacs (24))) "Rebecca Purple Theme" single ((:commit . "f34089f176def79ecee5feda7dd79896f555bbe2") (:url . "https://github.com/vic/rebecca-theme") (:keywords "theme" "dark"))]) (reason-mode . [(20171027 2235) ((emacs (24 3))) "A major mode for editing ReasonML" tar ((:commit . "a9de59cced37b44db72ee248107021a660561d11") (:url . "https://github.com/reasonml-editor/reason-mode") (:keywords "languages" "ocaml"))]) (realgud-rdb2 . [(20160303 43) ((realgud (1 3))) "realgud front-end for interacting with Ruby debugger2" tar ((:commit . "b394bee61e75b7c6a5fa565594aa79b74887f5df") (:url . "http://github.com/rocky/realgud-ruby-debugger2"))]) (realgud-pry . [(20160805 745) ((realgud (1 4 3)) (cl-lib (0 5)) (emacs (24))) "realgud front-end to the Ruby pry debugger" tar ((:commit . "9b3834048fcbc16827c55af38f8cfef0cf6533da") (:url . "http://github.com/rocky/realgud-pry"))]) (realgud-old-debuggers . [(20170316 31) ((realgud (1 4 3)) (cl-lib (0 5)) (emacs (24))) "realgud front-end to older lesser-used debuggers" tar ((:commit . "1e1d573a6ba731afbe68c1309a316457ca3fbb94") (:url . "http://github.com/rocky/realgud-old-debuggers"))]) (realgud-byebug . [(20160805 732) ((realgud (1 4 3)) (cl-lib (0 5)) (emacs (24))) "realgud front-end to the Ruby byebug debugger" tar ((:commit . "cb75d6bd9abbe04afa4c74a7ce9c66852814e0c3") (:url . "http://github.com/rocky/realgud-byebug"))]) (realgud . [(20171203 2038) ((load-relative (1 2)) (loc-changes (1 2)) (test-simple (1 2 0)) (cl-lib (0 5)) (emacs (24))) "A modular front-end for interacting with external debuggers" tar ((:commit . "59b2563e07641a4c5a5484c8a7b3f112b6051ae8") (:url . "http://github.com/realgud/realgud/") (:keywords "gdb" "python" "perl" "go" "bash" "nodejs" "zsh" "bashdb" "zshdb" "remake" "make" "trepan" "perldb"))]) (real-auto-save . [(20170918 730) nil "Automatically save your all your buffers/files at regular intervals." single ((:commit . "780d6c1c219e1f1efde1159a99af97b1c54c005d"))]) (readline-complete . [(20150708 737) nil "offers completions in shell mode" single ((:commit . "30c020c37b2741160cc37e656e13c85d826a0ebf"))]) (readability . [(20140715 1727) ((oauth (1 4)) (ov (1 0)) (emacs (24 3))) "Read articles from Readability in Emacs" single ((:commit . "6c220ab8e0ca63946574ed892add5c8fd14002ce") (:url . "https://github.com/ShingoFukuyama/emacs-readability") (:keywords "readability" "oauth"))]) (read-aloud . [(20160922 2200) ((emacs (24 4))) "A simple interface to TTS engines" single ((:commit . "c662366226abfb07204ab442b4f853ed85438d8a") (:url . "https://github.com/gromnitsky/read-aloud.el") (:keywords "multimedia"))]) (react-snippets . [(20170803 1550) ((yasnippet (0 7 0))) "Yasnippets for React" tar ((:commit . "bfc4b68b81374a6a080240592641091a7e8a6d61"))]) (rdxmk . [(20170629 1834) nil "A small set of tools for redox developments" tar ((:commit . "e78749fb29738365ffa4d863ffabeb969ebb0bcf") (:url . "https://github.com/jsalzbergedu/rdxmk") (:keywords "redox" "convenience" "tools"))]) (rdp . [(20120928 1854) nil "Recursive Descent Parser library" single ((:commit . "b620192afada04aec33b38cc130fef0765f41ca9") (:url . "https://github.com/skeeto/rdp"))]) (rdf-prefix . [(20170915 1200) nil "Prefix lookup for RDF" single ((:commit . "25cc3c8902f16191496b549705b00ffc7dff51f1") (:url . "https://github.com/simenheg/rdf-prefix") (:keywords "convenience" "abbrev"))]) (rcirc-styles . [(20160206 1850) ((cl-lib (0 5))) "support mIRC-style color and attribute codes" single ((:commit . "f313bf6a7470bed314b27c7a40558cb787d7bc67"))]) (rcirc-notify . [(20150219 1404) nil "libnotify popups" single ((:commit . "841a7b5a6cdb0c11a812df924d2c6a7d364fd455") (:keywords "lisp" "rcirc" "irc" "notify" "growl"))]) (rcirc-groups . [(20170731 1401) nil "an emacs buffer in rcirc-groups major mode" single ((:commit . "b68ece9d219b909244d4e3c0d8bf6a746d6fead7") (:url . "http://tapoueh.org/emacs/rcirc-groups.html") (:keywords "comm" "convenience"))]) (rcirc-alertify . [(20140406 1819) ((alert (20140406 1353))) "Cross platform notifications for rcirc" single ((:commit . "ea5cafc55893f375eccbe013d12dbaa94bf6e259") (:keywords "comm" "convenience"))]) (rcirc-alert . [(20141127 247) nil "Configurable alert messages on top of RCIRC" tar ((:commit . "0adf8ff9c47023fec578f678424be62b0f49057f") (:keywords "lisp" "rcirc" "irc" "alert" "awesome"))]) (rc-mode . [(20160913 1218) nil "Major mode for the Plan9 rc shell" single ((:commit . "fe2e0570bf9c19a292e16b18fd4b0a256df5d93f") (:url . "https://github.com/mrhmouse/rc-mode.el") (:keywords "rc" "plan9" "shell"))]) (rbt . [(20170202 1502) ((popup (0 5 3)) (magit (20160128 1201))) "Integrate reviewboard with emacs." single ((:commit . "32bfba9062a014e375451cf4203c29535b5efc1e") (:keywords "reviewboard" "rbt"))]) (rbenv . [(20141119 2349) nil "Emacs integration for rbenv" single ((:commit . "2ea1a5bdc1266caef1dd77700f2c8f42429b03f1") (:url . "https://github.com/senny/rbenv.el") (:keywords "ruby" "rbenv"))]) (rats . [(20170818 313) ((s (1 10 0)) (go-mode (1 3 1)) (cl-lib (0 5))) "Rapid testing suite for Go" single ((:commit . "a6d55aebcc54f669c6c6ffedf84364c4097903cc") (:keywords "go"))]) (rase . [(20120928 1345) nil "Run At Sun Event daemon" single ((:commit . "59b5f7e8102570b65040e8d55781c7ea28de7338") (:url . "https://github.com/m00natic/rase/") (:keywords "solar" "sunrise" "sunset" "midday" "midnight"))]) (ranger . [(20170817 857) ((emacs (24 4))) "Make dired more like ranger" single ((:commit . "6bbff5df2e55f56047fca5058d9ca93ba4963aef") (:url . "https://github.com/ralesi/ranger") (:keywords "files" "convenience" "dired"))]) (random-splash-image . [(20151002 1830) nil "Randomly sets splash image to *GNU Emacs* buffer on startup." single ((:commit . "53a39ebfd8ac6be066a652a508a717870f94218a") (:url . "https://github.com/kakakaya/random-splash-image") (:keywords "games"))]) (rand-theme . [(20151219 1535) ((cl-lib (0 5))) "Random Emacs theme at start-up!" single ((:commit . "65a00e5c5150f857aa96803b68f50bc8da0215b7") (:url . "https://github.com/gopar/rand-theme"))]) (rally-mode . [(20161113 1954) ((popwin (1 0 0))) "a mode to interact with the Rally Software web site." single ((:commit . "0f5e09a6abe2de7613f174b4f54863df93343134") (:url . "https://pragcraft.wordpress.com/") (:keywords "rally" "ca" "agile"))]) (rake . [(20170921 801) ((f (0 13 0)) (dash (1 5 0)) (cl-lib (0 5))) "Run rake commands" single ((:commit . "a27322262ebcce7765574b577000f6f939400206") (:url . "https://github.com/asok/rake.el") (:keywords "rake" "ruby"))]) (rainbow-identifiers . [(20141102 726) ((emacs (24))) "Highlight identifiers according to their names" single ((:commit . "19fbfded1baa98d12335f26f6d7b20e5ae44ce2e") (:url . "https://github.com/Fanael/rainbow-identifiers"))]) (rainbow-delimiters . [(20170929 432) nil "Highlight brackets according to their depth" single ((:commit . "19b93892afa0494ba749c2ca9c154e04447ad778") (:url . "https://github.com/Fanael/rainbow-delimiters") (:keywords "faces" "convenience" "lisp" "tools"))]) (rainbow-blocks . [(20171025 738) nil "Block syntax highlighting for lisp code" single ((:commit . "dd435d7bb34ff6f162a5f315df308b90b7e9f842") (:url . "https://github.com/istib/rainbow-blocks"))]) (railscasts-theme . [(20150219 725) nil "Railscasts color theme for GNU Emacs." single ((:commit . "1340c3f6c2717761cab95617cf8dcbd962b1095b") (:url . "https://github.com/mikenichols/railscasts-theme") (:keywords "railscasts" "color" "theme"))]) (railscasts-reloaded-theme . [(20170314 146) nil "Railscasts Reloaded color theme" single ((:commit . "bd6e385752c89760fdee7bdf331e24d1d80ee7e9") (:url . "https://github.com/thegeorgeous/railscasts-reloaded-theme"))]) (rails-log-mode . [(20140407 2125) nil "Major mode for viewing Rails log files" single ((:commit . "ff440003ad7d47cb0ac3300f2a632f4cfd36a446") (:keywords "rails" "log"))]) (racket-mode . [(20171116 1435) ((emacs (24 3)) (faceup (0 0 2)) (s (1 9 0))) "Major mode for Racket language." tar ((:commit . "132175062ca4b8436bfc69b60e0de1feac0d2c8c") (:url . "https://github.com/greghendershott/racket-mode"))]) (racer . [(20171129 1343) ((emacs (24 3)) (rust-mode (0 2 0)) (dash (2 13 0)) (s (1 10 0)) (f (0 18 2)) (pos-tip (0 4 6))) "code completion, goto-definition and docs browsing for Rust via racer" single ((:commit . "af4167f310fffc82051ceced17c0cc40fdf5cbfa") (:url . "https://github.com/racer-rust/emacs-racer") (:keywords "abbrev" "convenience" "matching" "rust" "tools"))]) (r-autoyas . [(20140101 710) ((ess (0)) (yasnippet (0 8 0))) "Provides automatically created yasnippets for R function argument lists." tar ((:commit . "b4020ee7f5f895e0065b8b26da8a49c51432d530") (:url . "https://github.com/mlf176f2/r-autoyas.el") (:keywords "r" "yasnippet"))]) (quiz . [(20170818 415) ((cl-lib (0 5)) (emacs (25))) "Multiple choice quiz game" single ((:commit . "c43151212ead2330e7ec8e5ac6914c617a12e4f8") (:url . "https://github.com/davep/quiz.el") (:keywords "games" "trivia" "quiz"))]) (quiet . [(20160508 556) nil "disconnect from the online world for a while" single ((:commit . "6f20309f99e26fcae2601d1544b342f044e54baf") (:url . "https://github.com/zzkt/quiet") (:keywords "quiet" "distraction" "network" "detachment" "offline"))]) (quickrun . [(20170222 1715) ((emacs (24 3))) "Run commands quickly" single ((:commit . "55bbe5d54b80206ea5a60bf2f58eb6368b2c8201") (:url . "https://github.com/syohex/emacs-quickrun"))]) (quickref . [(20170817 532) ((dash (1 0 3)) (s (1 0 0))) "Display relevant notes-to-self in the echo area" single ((:commit . "f368c8b8219bb90498c5ab84e26f00eedaa234cf") (:url . "https://github.com/pd/quickref.el"))]) (quick-shell-keybind . [(20171022 2313) ((emacs (24))) "Interactively bind a key to shell commands" single ((:commit . "5f4541a5a5554d108bf16b5fd1713e962161ca1b") (:url . "https://github.com/eyeinsky/quick-shell-keybind") (:keywords "maint" "convenience" "processes"))]) (quick-preview . [(20150828 2139) nil "quick preview using GNOME sushi, gloobus or quick look" single ((:commit . "29c884c6ab385ef67d9aa656ebb7c94cabeb5c35") (:url . "https://github.com/myuhe/quick-preview.el") (:keywords "files" "hypermedia"))]) (quick-peek . [(20170327 27) ((emacs (24 3))) "Inline quick-peek windows" single ((:commit . "6a006fbf1a41b04c0e7522d50c942ec89c3637fc") (:keywords "tools" "help" "doc" "convenience"))]) (quick-buffer-switch . [(20151007 1508) nil "Quick switch to file or dir buffers." single ((:commit . "d5fdd67b4c9f04b7a7122da2215e4ae076a03b1b") (:keywords "emacs" "configuration"))]) (quelpa-use-package . [(20161212 1038) ((emacs (24 3)) (quelpa (0)) (use-package (2))) "quelpa handler for use-package" single ((:commit . "f276555d6bead02a0d869149f03a545d4d4265ad") (:url . "https://github.com/quelpa/quelpa-use-package") (:keywords "package" "management" "elpa" "use-package"))]) (quelpa . [(20170727 557) ((package-build (0)) (emacs (24 3))) "Emacs Lisp packages built directly from source" tar ((:commit . "c095fa14046c1313b97df4ec102bdea5a981ff1d") (:url . "https://github.com/quelpa/quelpa") (:keywords "package" "management" "build" "source" "elpa"))]) (quasi-monochrome-theme . [(20171126 203) nil "Quasi Monochrome theme" tar ((:commit . "aa6a3649ad518b9eebd7bc5c84f184469ea735a9") (:keywords "color" "theme" "monochrome"))]) (quack . [(20160410 207) nil "enhanced support for editing and running Scheme code" single ((:commit . "c1c8e448d295cc1b5752104a63a5759a9c5fdf6d"))]) (qt-pro-mode . [(20170604 1141) ((emacs (24))) "Qt Pro/Pri major mode" single ((:commit . "66601441cc728a609765b149ee0d7dcfb74dc8bf") (:keywords "extensions"))]) (qml-mode . [(20161015 1731) nil "Major mode for editing QT Declarative (QML) code." single ((:commit . "6c5f33ba88ae010bf201a80ee8095e20a724558c") (:url . "https://github.com/coldnew/qml-mode") (:keywords "qml" "qt" "qt declarative"))]) (qiita . [(20140118 44) ((helm (1 5 9)) (markdown-mode (2 0))) "Qiita API Library for emacs" single ((:commit . "93c697b97d540fd1601a13a3d9889fb939b19878") (:url . "https://github.com/gongo/qiita-el") (:keywords "qiita"))]) (pyvenv . [(20171005 1106) nil "Python virtual environment interface" single ((:commit . "9f528449dfc35516647118689a2104603f23b49c") (:url . "http://github.com/jorgenschaefer/pyvenv") (:keywords "python" "virtualenv" "tools"))]) (pythonic . [(20160221 1123) ((emacs (24)) (cl-lib (0 5)) (dash (2 11)) (s (1 9)) (f (0 17 2))) "Utility functions for writing pythonic emacs package." single ((:commit . "87475def246b84339f464e80c76c7e7fcc2e780a") (:url . "https://github.com/proofit404/pythonic"))]) (python-x . [(20171006 336) ((python (0 24)) (folding (0)) (cl-lib (0 5))) "python.el extras for interactive evaluation" tar ((:commit . "9bf0d16cfe7b5f24b98d6b33cbc8763edaceb174") (:keywords "python" "eval" "folding") (:url . "https://github.com/wavexx/python-x.el") (:author . "Yuri D'Elia "))]) (python-test . [(20171112 2137) ((emacs (25 1))) "Python testing integration" single ((:commit . "f00b9de14647b15b6f36ceee77d7e9e08dd074a4") (:url . "https://github.com/emacs-pe/python-test.el") (:keywords "convenience" "tools" "processes"))]) (python-switch-quotes . [(20161228 9) ((emacs (24 3))) "cycle between ' and \" quotes in python strings" single ((:commit . "93f1e9b40e061a6cea480139e8b1362b6404abd0") (:url . "https://github.com/werehuman/python-switch-quotes") (:keywords "python" "tools" "convenience"))]) (python-mode . [(20171203 900) nil "Python major mode" tar ((:commit . "4d398282511fedc9a24e15cdbbcb47caf10a4ae3"))]) (python-info . [(20151228 1052) nil "Python info manual for Emacs" tar ((:commit . "306f15441b54b25757cdfd3b327b84024ea21ed7"))]) (python-environment . [(20150310 153) ((deferred (0 3 1))) "virtualenv API for Emacs Lisp" tar ((:commit . "401006584e32864a10c69d29f14414828909362e") (:keywords "applications" "tools"))]) (python-docstring . [(20170508 156) nil "Smart Python docstring formatting" tar ((:commit . "d35d2e0fbe468743c19a870fec7b28a7e725790d"))]) (python-django . [(20150821 2104) nil "A Jazzy package for managing Django projects" single ((:commit . "fc54ad74f0309670359b939f64d0f1fff68aeac4") (:url . "https://github.com/fgallina/python-django.el") (:keywords "languages"))]) (python-cell . [(20131029 1616) nil "Support for MATLAB-like cells in python mode" single ((:commit . "ccacd91a19be784860d687eb1e8ce88fddaacaf6") (:keywords "python" "matlab" "cell"))]) (pytest . [(20170614 745) ((s (1 9 0))) "Easy Python test running in Emacs" single ((:commit . "013fccd684fc8f2092d6e1ec4203ec574e12051d") (:url . "https://github.com/ionrock/pytest-el") (:keywords "pytest" "python" "testing"))]) (pylint . [(20170402 555) nil "minor mode for running `pylint'" single ((:commit . "6ef5895e7d8dd54a12f5e2a37239806ac3ef0a71") (:keywords "languages" "python"))]) (pyimpsort . [(20160129 2053) ((emacs (24 3))) "Sort python imports." tar ((:commit . "d5c61d70896b642646dfd3c809c06174ae086c1a") (:url . "https://github.com/emacs-pe/pyimpsort.el") (:keywords "convenience"))]) (pyimport . [(20170808 346) ((dash (2 8 0)) (s (1 9 0)) (shut-up (0 3 2))) "Manage Python imports!" single ((:commit . "50789ef8c5e19997bd5b0d4c47acb7660d128e76"))]) (pyim-wbdict . [(20170724 1527) ((pyim (1 0))) "Some wubi dicts for pyim" tar ((:commit . "114489ed97e825ae11a8d09da6e873820cf23106") (:url . "https://github.com/tumashu/pyim-wbdict") (:keywords "convenience" "chinese" "pinyin" "input-method" "complete"))]) (pyim-cangjie5dict . [(20170729 1946) ((pyim (1 0))) "Some cangjie5 dicts for pyim" tar ((:commit . "c8618590780b818db1a67a29bc47c5d25903517a") (:url . "https://github.com/erstern/pyim-cangjie5dict") (:keywords "convenience" "chinese" "pinyin" "input-method" "complete"))]) (pyim-basedict . [(20170726 1959) nil "The default pinyin dict of pyim" tar ((:commit . "3196cb210e056702c5a4ea1dac1d8e1e27740fab") (:url . "https://github.com/tumashu/pyim-basedict") (:keywords "convenience" "chinese" "pinyin" "input-method" "complete"))]) (pyim . [(20171206 435) ((emacs (24 3)) (cl-lib (0 5)) (popup (0 1)) (async (1 6)) (pyim-basedict (0 1))) "A Chinese input method which support quanpin, shuangpin, wubi and cangjie." tar ((:commit . "5e303047a419f7c0ec71f7bf2c94b17da4b30237") (:url . "https://github.com/tumashu/pyim") (:keywords "convenience" "chinese" "pinyin" "input-method"))]) (pygen . [(20161120 2106) ((elpy (1 12 0)) (python-mode (6 2 2)) (dash (2 13 0))) "Python code generation using Elpy and Python-mode." single ((:commit . "9019ff44ba49d7295b1476530feab91fdadb084b") (:url . "https://github.com/JackCrawley/pygen/") (:keywords "python" "code generation"))]) (pyfmt . [(20150521 1356) nil "Emacs interface to pyfmt" single ((:commit . "cb92be2cf0804cc53142dc5edb36f8e0ef5cec32") (:url . "https://github.com/aheaume/pyfmt.el") (:keywords "tools"))]) (pyenv-mode-auto . [(20160122 2341) ((pyenv-mode (0 1 0)) (s (1 11 0)) (f (0 17 0))) "Automatically activates pyenv version if .python-version file exists." single ((:commit . "714e322319ad7a8f5f2a3691aa431537b8a1b26c") (:url . "https://github.com/ssbb/pyenv-mode-auto") (:keywords "python" "pyenv"))]) (pyenv-mode . [(20170801 1648) ((pythonic (0 1 0))) "Integrate pyenv with python-mode" single ((:commit . "215b7f0ed3847e0c844adbff7d9b19057aa7c820") (:url . "https://github.com/proofit404/pyenv-mode"))]) (pydoc-info . [(20110301 34) nil "Better Python support for info-lookup-symbol." tar nil]) (pydoc . [(20170429 1158) nil "functional, syntax highlighted pydoc navigation" single ((:commit . "916153516382e5546b59b46342c58ed76cf27faf") (:url . "https://github.com/statmobile/pydoc") (:keywords "pydoc" "python"))]) (pycoverage . [(20160324 1812) ((emacs (24 3))) "Support for coverage stats on Python 2.X and 3" tar ((:commit . "4f5451f4d6e1e2ddd5878fc7d18f5fc4fc92a83d") (:url . "https://github.com/mattharrison/pycoverage.el") (:keywords "project" "convenience"))]) (pycarddavel . [(20150831 516) ((helm (1 7 0)) (emacs (24 0))) "Integrate pycarddav" single ((:commit . "a6d81ee4eb8309cd82f6082aeca68c5a015702a3") (:keywords "helm" "pyccarddav" "carddav" "message" "mu4e" "contacts"))]) (py-yapf . [(20160925 422) nil "Use yapf to beautify a Python buffer" single ((:commit . "a878304202ad827a1f3de3dce1badd9ca8731146") (:url . "https://github.com/paetzke/py-yapf.el"))]) (py-test . [(20151116 2222) ((dash (2 9 0)) (f (0 17)) (emacs (24 4))) "A test runner for Python code." single ((:commit . "3b2a0bdaacb54df6f2bee8317423e5c0d159d5cf") (:url . "https://github.com/Bogdanp/py-test.el") (:keywords "python" "testing" "py.test"))]) (py-smart-operator . [(20170531 509) ((s (1 9 0))) "smart-operator for python-mode" single ((:commit . "0c8a66faca4b35158d0b5885472cb75286039167") (:keywords "python" "convenience" "smart-operator"))]) (py-isort . [(20160925 318) nil "Use isort to sort the imports in a Python buffer" single ((:commit . "e67306f459c47c53a65604e4eea88a3914596560") (:url . "http://paetzke.me/project/py-isort.el"))]) (py-import-check . [(20130802 411) nil "Finds the unused python imports using importchecker" single ((:commit . "9787f87745a4234cd9bed711860b707902bc8ae4") (:url . "https://github.com/psibi/emacs-py-import-check") (:keywords "python" "import" "check"))]) (py-gnitset . [(20170821 1032) nil "Run your Python tests any way you'd like" single ((:commit . "1e993cc29cbc31e06fe1e335dec198e21972fa55") (:url . "https://www.github.com/quodlibetor/py-gnitset"))]) (py-autopep8 . [(20160925 352) nil "Use autopep8 to beautify a Python buffer" single ((:commit . "68e12d8788c91c7ec53a68acf1d23adb2ffa4788") (:url . "http://paetzke.me/project/py-autopep8.el"))]) (px . [(20170317 1630) nil "preview inline latex in any mode" single ((:commit . "0c52f7933eab3ca1642ab0df151db9950430c9e2") (:url . "http://github.com/aaptel/preview-latex"))]) (pushover . [(20170818 1403) ((cl-lib (0 5))) "Pushover API Access" single ((:commit . "bbe3ac8df3c532a72da4552615af960b8a577588") (:url . "http://github.com/swflint/pushover.el") (:keywords "notifications"))]) (pushbullet . [(20140809 532) ((grapnel (0 5 2)) (json (1 2))) "Emacs client for the PushBullet Android app" single ((:commit . "73c59a0f1dc04875b3e5a2c8afbc26c32128e445") (:url . "http://www.github.com/theanalyst/revolver") (:keywords "convenience"))]) (purty-mode . [(20131004 1559) nil "Safely pretty-print greek letters, mathematical symbols, or anything else." single ((:commit . "8eef77317a3bab07ade212353a50fbd3f20f365a"))]) (purple-haze-theme . [(20141014 1929) ((emacs (24 0))) "an overtly purple color theme for Emacs24." single ((:commit . "3e245cbef7cd09e6b3ee124963e372a04e9a6485") (:url . "https://github.com/jasonm23/emacs-purple-haze-theme"))]) (purescript-mode . [(20171203 2234) nil "A PureScript editing mode" tar ((:commit . "2d1fa590a6de875ea4bd964349df0ba5e24fb1f3"))]) (puppet-mode . [(20170928 1007) ((emacs (24 1)) (pkg-info (0 4))) "Major mode for Puppet manifests" single ((:commit . "e04f041386ebfe29fc67c3407e85b577b820df4f") (:url . "https://github.com/voxpupuli/puppet-mode") (:keywords "languages"))]) (punpun-theme . [(20161103 147) nil "A bleak theme" tar ((:commit . "cce8b10b2df6f9187a9eaa0c3f21ff0dda175968"))]) (pungi . [(20150222 446) ((jedi (0 2 0 -3 2)) (pyvenv (1 5))) "Integrates jedi with virtualenv and buildout python environments" single ((:commit . "a2d4d439ea371be0b064a12248288903b8a521a0") (:keywords "convenience"))]) (punctuality-logger . [(20141120 1231) nil "Punctuality logger for Emacs" single ((:commit . "e09e5dd37bc92289fa2f7dc44aed51a7b5e04bb0") (:url . "https://gitlab.com/elzair/punctuality-logger") (:keywords "reminder" "calendar"))]) (pulseaudio-control . [(20171024 2339) nil "Use `pactl' to manage PulseAudio volumes." single ((:commit . "08c59e1dc45ec96edb62f34036e82cf5f14c0e8b") (:url . "https://github.com/flexibeast/pulseaudio-control") (:keywords "multimedia" "hardware" "sound" "pulseaudio"))]) (pug-mode . [(20171018 829) ((emacs (24 4)) (cl-lib (0 5))) "Major mode for jade/pug template files" single ((:commit . "9dcebdb10c50620a3a5c6d71361d53bf482a482e") (:url . "https://github.com/hlissner/emacs-pug-mode") (:keywords "markup" "language" "jade" "pug"))]) (pt . [(20161226 1159) nil "A front-end for pt, The Platinum Searcher." single ((:commit . "6d99b2aaded3ece3db19a20f4b8f1d4abe382622") (:url . "https://github.com/bling/pt.el") (:keywords "pt" "ack" "ag" "grep" "search"))]) (psysh . [(20171022 2229) ((emacs (24 3)) (s (1 9 0)) (f (0 17))) "PsySH, PHP interactive shell (REPL)" single ((:commit . "926af4ae0c068ed699fc939f4b3e642aaa6f7c9e") (:url . "https://github.com/zonuexe/psysh.el") (:keywords "processes" "php"))]) (psvn . [(20151103 1042) nil "Subversion interface for emacs" single ((:commit . "23048d302858fc3a52c118652bd83491a4956410"))]) (psession . [(20171107 2313) ((emacs (24)) (cl-lib (0 5)) (async (1 9 2))) "Persistent save of elisp objects." single ((:commit . "d087644db226e2c66481d3c248e26afa9e4eb670") (:url . "https://github.com/thierryvolpiatto/psession"))]) (psci . [(20171011 50) ((purescript-mode (13 10)) (dash (2 9 0)) (s (1 9 0)) (f (0 17 1))) "Major mode for purescript repl psci" tar ((:commit . "5360b244c588ed2f2a5bb86180cb5d4deb2216de") (:url . "https://github.com/ardumont/emacs-psci") (:keywords "purescript" "psci" "repl" "major" "mode"))]) (psc-ide . [(20171122 347) ((dash (2 13 0)) (dash-functional (1 2 0)) (company (0 8 7)) (cl-lib (0 5)) (s (1 10 0)) (emacs (24 4)) (flycheck (0 24)) (let-alist (1 0 4)) (seq (1 11))) "Minor mode for PureScript's psc-ide tool." tar ((:commit . "633b07b238aff51dc4b95a75c67910a18ba28da1") (:url . "https://github.com/epost/psc-ide-emacs") (:keywords "languages"))]) (protocols . [(20170802 432) ((cl-lib (0 5))) "Protocol database access functions." single ((:commit . "d0f7c4acb05465f1a0d4be54363bbd2802647e77") (:url . "https://github.com/davep/protocols.el") (:keywords "convenience" "net" "protocols"))]) (protobuf-mode . [(20170526 950) nil "major mode for editing protocol buffers." single ((:commit . "9021f623e1420f513268a01a5ad43a23618a84ba") (:keywords "google" "protobuf" "languages"))]) (prosjekt . [(20151127 616) ((dash (2 8 0))) "a software project tool for emacs" tar ((:commit . "a864a8be5842223043702395f311e3350c28e9db") (:url . "https://github.com/abingham/prosjekt"))]) (proportional . [(20171025 1637) ((emacs (25 1))) "use a proportional font everywhere" single ((:commit . "f671ffe8fd803e2fc462e2e1844aeeab1a13918e") (:url . "https://github.com/ksjogo/proportional") (:keywords "faces"))]) (propfont-mixed . [(20150113 1411) ((emacs (24)) (cl-lib (0 5))) "Use proportional fonts with space-based indentation." single ((:commit . "0b461ef4754a469610dba71874a34b6da42176bf") (:url . "https://github.com/ikirill/propfont-mixed") (:keywords "faces"))]) (prop-menu . [(20150728 418) ((emacs (24 3)) (cl-lib (0 5))) "Create and display a context menu based on text and overlay properties" single ((:commit . "50b102c1c0935fd3e0c465feed7f27d66b21cdf3") (:url . "https://github.com/david-christiansen/prop-menu-el") (:keywords "convenience"))]) (prompts . [(20160916 341) ((dash (2 13 0))) "utilities for working with text prompts." single ((:commit . "1cd5e732ff2a86b47836eb7252e5b59cd4b6ab26") (:url . "https://github.com/guiltydolphin/prompts.el") (:keywords "input" "minibuffer"))]) (prompt-text . [(20160106 609) nil "Various information in minibuffer prompt" single ((:commit . "bb9265ebfada42d0e3c67c809665e1e5d980691e") (:url . "https://github.com/10sr/prompt-text-el") (:keywords "utility" "minibuffer"))]) (promise . [(20170215 2204) ((emacs (25)) (async (1 9))) "Promises/A+" tar ((:commit . "d3cad4e1f7825404828cd9f5b887f18d3fd83c56") (:url . "https://github.com/chuntaro/emacs-promise") (:keywords "async" "promise" "convenience"))]) (projmake-mode . [(20161031 1015) ((dash (20150611 922)) (indicators (20130217 1405))) "Project oriented automatic builder and error highlighter, flymake for projects" tar ((:commit . "a897701f7e8f8cc11459ed44eb0e454db2a460c1"))]) (projekt . [(20150324 148) ((emacs (24))) "some kind of staging for CVS" single ((:commit . "a65e554e5d8b0def08c5d06f3fe34fec40bebd83"))]) (projector . [(20171006 1258) ((alert (1 1)) (projectile (0 11 0)) (cl-lib (0 5))) "Lightweight library for managing project-aware shell and command buffers" single ((:commit . "03751fca880c95cf47e560c78cfc2aaa056cd455") (:url . "https://github.com/waymondo/projector"))]) (projectile-variable . [(20170208 918) ((emacs (24)) (cl-lib (0 5))) "Store project local variables." single ((:commit . "8d348ac70bdd6dc320c13a12941b32b38140e264") (:url . "https://github.com/zonuexe/projectile-variable") (:keywords "project" "convenience"))]) (projectile-trailblazer . [(20170928 924) ((emacs (24 4)) (projectile (0 12 0)) (inflections (1 1)) (inf-ruby (2 2 6)) (f (0 13 0)) (rake (0 3 2))) "Minor mode for Rails projects using trailblazer" single ((:commit . "a37a4f7b7f727d98e4c74c0256e059e84263553d") (:url . "https://github.com/micdahl/projectile-trailblazer") (:keywords "rails" "projectile" "trailblazer" "languages"))]) (projectile-speedbar . [(20170516 1943) ((projectile (0 11 0)) (sr-speedbar (0))) "projectile integration for speedbar" single ((:commit . "dcab13db72c2084edbebe808e35f1126fe0b3bcd") (:url . "https://github.com/anshulverma/projectile-speedbar") (:keywords "project" "convenience" "speedbar" "projectile"))]) (projectile-sift . [(20160107 215) ((sift (0 2 0)) (projectile (0 13 0))) "Run a sift with Projectile" single ((:commit . "4ce8878a0fc396ded7521ce38852d93e1d863065") (:url . "https://github.com/nlamirault/sift.el") (:keywords "sift" "projectile"))]) (projectile-ripgrep . [(20170211 857) ((ripgrep (0 3 0)) (projectile (0 14 0))) "Run ripgrep with Projectile" single ((:commit . "c47a2da4668ca338e7fadc3d8c095e075caaa17d") (:url . "https://github.com/nlamirault/ripgrep.el") (:keywords "ripgrep" "projectile"))]) (projectile-rails . [(20171117 730) ((emacs (24 3)) (projectile (0 12 0)) (inflections (1 1)) (inf-ruby (2 2 6)) (f (0 13 0)) (rake (0 3 2))) "Minor mode for Rails projects based on projectile-mode" single ((:commit . "348b11b237e87d87e784ab7accaef2bf97664bd6") (:url . "https://github.com/asok/projectile-rails") (:keywords "rails" "projectile"))]) (projectile-hanami . [(20160505 611) ((emacs (24 3)) (projectile (0 12 0)) (rake (0 3 2)) (inf-ruby (2 2 6))) "Minor mode for Hanami projects based on projectile" single ((:commit . "c4b8e7d4dfec789ef8493a7c5d4ce0cf7937e579") (:url . "https://github.com/avdgaag/projectile-hanami") (:keywords "hanami" "ruby" "projectile"))]) (projectile-git-autofetch . [(20170612 1011) ((projectile (0 14 0)) (alert (1 2))) "automatically fetch git repositories" single ((:commit . "51b40134000a2411c6342e865e63f74c950a9310") (:url . "https://github.com/andrmuel/projectile-git-autofetch") (:keywords "tools" "vc"))]) (projectile-direnv . [(20160305 1738) ((emacs (24)) (s (1 11 0)) (dash (2 12 0)) (projectile (0 13 0))) "Set environment variables from .envrc" single ((:commit . "d5d29e5228f840b7a25358a2fd50353ef2dc9b16") (:url . "https://github.com/christianromney/projectile-direnv") (:keywords "convenience"))]) (projectile-codesearch . [(20171129 600) ((codesearch (20171122 431)) (projectile (20150405 126))) "Integration of codesearch into projectile" single ((:commit . "4e6a2382c26d1218a4a007d31de2bab8ef9d2e7c") (:url . "https://github.com/abingham/emacs-codesearch") (:keywords "tools" "development" "search"))]) (projectile . [(20171126 6) ((emacs (24 3)) (pkg-info (0 4))) "Manage and navigate projects in Emacs easily" single ((:commit . "184d3451c9258cfbbfa2b26a07c7daeee2e9a605") (:url . "https://github.com/bbatsov/projectile") (:keywords "project" "convenience"))]) (project-shells . [(20171107 51) ((emacs (24 3)) (seq (2 19))) "Manage the shell buffers of each project" single ((:commit . "d9401de750e444697c2eb9de1ff79f2a2eba4af8") (:url . "https://github.com/hying-caritas/project-shells") (:keywords "processes" "terminals"))]) (project-root . [(20110206 1230) nil "Define a project root and take actions based upon it." single nil]) (project-persist-drawer . [(20151108 422) ((project-persist (0 3))) "Use a project drawer with project-persist." tar ((:commit . "35bbe132a4fab6a0fec15ce6c0fd2fe6a4aa9626"))]) (project-persist . [(20150519 1324) nil "A minor mode to allow loading and saving of project settings." tar ((:commit . "8da45c80b23b1d7499eac11a258fd7382312a304"))]) (project-local-variables . [(20080502 952) nil "Set project-local variables from a file." single ((:url . "http://www.emacswiki.org/cgi-bin/wiki/ProjectLocalVariables") (:keywords "project" "convenience"))]) (project-explorer . [(20150503 1714) ((cl-lib (0 3)) (es-lib (0 3)) (es-windows (0 1)) (emacs (24))) "A project explorer sidebar" single ((:commit . "589a09008706f5f4ef91393dc4306eede0d15ca9") (:url . "https://github.com/sabof/project-explorer"))]) (programmer-dvorak . [(20150426 1837) nil "Input method for Programmer Dvorak." single ((:commit . "3288a8f058eca4cab390a564babbbcb17cfa0350") (:url . "https://github.com/yangchenyun/programmer-dvorak") (:keywords "dvorak" "programmer-dvorak" "input-method"))]) (prognth . [(20130920 1059) nil "Extend prog1 to arbitrary index" single ((:commit . "2f1ca4d34b1fd581163e1df122c85418137e8e62") (:keywords "lisp"))]) (professional-theme . [(20150315 400) nil "Emacs port of Vim's professional theme" single ((:commit . "0927d1474049a193f9f366bde5eb1887b9ba20ed") (:url . "https://github.com/juanjux/emacs-professional-theme") (:keywords "theme" "light" "professional"))]) (prodigy . [(20171121 512) ((s (1 8 0)) (dash (2 4 0)) (f (0 14 0)) (emacs (24))) "Manage external services from within Emacs" single ((:commit . "da9ab59dc807968841ef369617edd6a67a9ad1de") (:url . "http://github.com/rejeep/prodigy.el"))]) (processing-snippets . [(20140426 728) ((yasnippet (0 8 0))) "Snippets for processing-mode" tar ((:commit . "448aba82970c98322629eaf2746e73be6c30c98e"))]) (processing-mode . [(20171022 1602) nil "Major mode for Processing 2.0" single ((:commit . "448aba82970c98322629eaf2746e73be6c30c98e") (:url . "https://github.com/ptrv/processing2-emacs") (:keywords "languages" "snippets"))]) (proc-net . [(20130321 1712) nil "network process tools" single ((:commit . "10861112a1f3994c8e6374d6c5bb5d734cfeaf73") (:url . "http://github.com/nicferrier/emacs-procnet") (:keywords "processes"))]) (private-diary . [(20151216 857) ((emacs (24 0))) "maintain a private diary in Emacs" single ((:commit . "0c86fb6150ad8ed14f94def3504f5a68f4147283") (:url . "https://github.com/cacology/private-diary") (:keywords "diary" "encryption"))]) (private . [(20150121 1757) ((aes (0 6))) "take care of your private configuration files." single ((:commit . "9266d01c095895cc3ee9de95bc20511e88353755") (:url . "https://github.com/cheunghy/private") (:keywords "private" "configuration" "backup" "recover"))]) (pretty-symbols . [(20140814 259) nil "Draw tokens as Unicode glyphs." single ((:commit . "582cbe51ecfe1cc0a5b185bc06113c8a661e3956") (:url . "http://github.com/drothlis/pretty-symbols") (:keywords "faces"))]) (pretty-sha-path . [(20141105 1026) nil "Prettify Guix/Nix store paths" single ((:commit . "a2b43dd9de423a38d67cda2e3bd9412f7d363257") (:url . "https://gitorious.org/alezost-emacs/pretty-sha-path") (:keywords "faces" "convenience"))]) (pretty-mode . [(20160614 1146) nil "Redisplay parts of the buffer as pretty Unicode symbols." single ((:commit . "500085206e25b98d00b9ec996f91c87ba569c4ce") (:url . "https://github.com/akatov/pretty-mode") (:keywords "pretty" "unicode" "symbols"))]) (pretty-lambdada . [(20170307 940) nil "Show the word `lambda' as the Greek letter." single ((:url . "https://www.emacswiki.org/emacs/download/pretty-lambdada.el") (:keywords "convenience" "display"))]) (prettify-greek . [(20160603 208) nil "Greek letters for prettify-symbols" single ((:commit . "698d07a6ffe85f6fb53f3bfec4f49380c25cfd90") (:url . "https://gitlab.com/fommil/emacs-prettify-greek") (:keywords "faces"))]) (prettier-js . [(20170823 159) nil "Minor mode to format JS code on file save" single ((:commit . "6cc79cc933968f9ecae988ed79398d9dc97790e2") (:url . "https://github.com/prettier/prettier-emacs") (:keywords "convenience" "wp" "edit" "js"))]) (preseed-generic-mode . [(20170802 1753) nil "Debian preseed file major mode" single ((:commit . "341d85f8ecdc8834956a0352ece542f45def88db") (:url . "https://github.com/suntong001/preseed-generic-mode"))]) (preproc-font-lock . [(20151107 1218) nil "Highlight C-style preprocessor directives." single ((:commit . "565fda9f5fdeb0598986174a07e9fb09f7604397") (:url . "https://github.com/Lindydancer/preproc-font-lock") (:keywords "c" "languages" "faces"))]) (prassee-theme . [(20170406 1953) ((emacs (24))) "A high contrast color theme for Emacs." single ((:commit . "7ce96272a514caa8598aa3c7227ade8a21e20daa") (:url . "https://github.com/prassee/prassee-emacs-theme") (:keywords "faces"))]) (ppd-sr-speedbar . [(20151108 424) ((sr-speedbar (20140914 2339)) (project-persist-drawer (0 0 4))) "Sr Speedbar adaptor for project-persist-drawer." tar ((:commit . "19d3e924407f40a6bb38c8fe427a159af755adce"))]) (pp-c-l . [(20170307 939) nil "Display Control-l characters in a pretty way" single ((:url . "https://www.emacswiki.org/emacs/download/pp-c-l.el") (:keywords "display" "convenience" "faces"))]) (pp+ . [(20170307 938) nil "Extensions to `pp.el'." single ((:url . "https://www.emacswiki.org/emacs/download/pp%2b.el") (:keywords "lisp"))]) (powershell . [(20161103 2354) ((emacs (24))) "Mode for editing Powershell scripts" single ((:commit . "3c09e1b87064bedc065e45346fd4c3e051eeb0f0") (:url . "http://github.com/jschaf/powershell.el") (:keywords "powershell" "languages"))]) (powerline-evil . [(20151112 710) ((evil (1 0 8)) (powerline (2 3))) "Utilities for better Evil support for Powerline" tar ((:commit . "98b3a102b6dba6632aa0755a7257300c9b164309") (:url . "http://github.com/raugturi/powerline-evil/") (:keywords "evil" "mode-line" "powerline"))]) (powerline . [(20171023 750) ((cl-lib (0 2))) "Rewrite of Powerline" tar ((:commit . "fda4fb96984607d4a6502b1d8c8898e56d10cf6c") (:url . "http://github.com/milkypostman/powerline/") (:keywords "mode-line"))]) (pow . [(20140420 106) ((emacs (24)) (cl-lib (0 5))) "pow (http://pow.cx/) manager for emacs" tar ((:commit . "ea83986b8ca8e27cb996290d6463b111ec0966ce") (:url . "http://github.com/yukihr/emacs-pow") (:keywords "develop" "web" "pow"))]) (pov-mode . [(20161114 2343) nil "Major mode for editing POV-Ray scene files." tar ((:commit . "9fc1db3aab7c27155674dd1a87ec62606035d074"))]) (postcss-sorting . [(20170531 1858) ((emacs (24))) "postcss-sorting interface" single ((:commit . "1320d74abd8ee7f0a09b5f7920d554650a7047a6") (:url . "https://github.com/P233/postcss-sorting.el"))]) (pos-tip . [(20150318 813) nil "Show tooltip at point" single ((:commit . "051e08fec5cf30b7574bdf439f79fef7d42d689d") (:keywords "tooltip"))]) (portage-navi . [(20141208 555) ((concurrent (0 3 1)) (ctable (0 1 2))) "portage viewer" single ((:commit . "8016c3e99fe6cef101d479a3d69185796b22ca2f") (:url . "https://github.com/kiwanami/emacs-portage-navi") (:keywords "tools" "gentoo"))]) (popwin . [(20150315 600) nil "Popup Window Manager." single ((:commit . "95dea14c60019d6cccf9a3b33e0dec4e1f22c304") (:keywords "convenience"))]) (popup-switcher . [(20171205 51) ((cl-lib (0 3)) (popup (0 5 3))) "switch to other buffers and files via popup." single ((:commit . "f5788a31918e37bb5c04139048c667bcec9f1b62") (:url . "https://github.com/kostafey/popup-switcher") (:keywords "popup" "switch" "buffers" "functions"))]) (popup-kill-ring . [(20131020 1154) ((popup (0 4)) (pos-tip (0 4))) "interactively insert item from kill-ring" single ((:commit . "5773dfadc104a906c088a3ec62e8cdd3e01e57fa") (:url . "https://github.com/waymondo/popup-kill-ring") (:keywords "popup" "kill-ring" "pos-tip"))]) (popup-imenu . [(20170326 340) ((dash (2 12 1)) (popup (0 5 3)) (flx-ido (0 6 1))) "imenu index popup" single ((:commit . "c5e2e69adbd3a630e4cb750965a1aee8c10c1f09") (:url . "https://github.com/ancane/popup-imenu") (:keywords "popup" "imenu"))]) (popup-edit-menu . [(20170404 725) ((emacs (24))) "a popup context edit menu package" single ((:commit . "925600a6e29183841199e866cf55e566a6a1b002") (:keywords "lisp" "pop-up" "context" "edit" "menu"))]) (popup-complete . [(20141108 1908) ((popup (0 5 0))) "completion with popup" single ((:commit . "caa655a6d8472e9a4bfa1311126d90d7d1b07fca") (:url . "https://github.com/syohex/emacs-popup-complete"))]) (popup . [(20160709 729) ((cl-lib (0 5))) "Visual Popup User Interface" single ((:commit . "80829dd46381754639fb764da11c67235fe63282") (:keywords "lisp"))]) (poporg . [(20170403 51) nil "Pop a comment or string to an empty buffer for text editing" single ((:commit . "2c58d68c81ecca4140bf179f19ed153ec804b65a") (:url . "https://github.com/QBobWatson/poporg") (:keywords "outlines" "tools"))]) (pophint . [(20170917 1948) ((log4e (0 2 0)) (yaxception (0 3))) "Provide navigation using pop-up tips, like Firefox's Vimperator Hint Mode" tar ((:commit . "909025c5a871ca4b9ec7aed7f1a27c819a94dba1") (:url . "https://github.com/aki2o/emacs-pophint") (:keywords "popup"))]) (ponylang-mode . [(20171028 1356) ((dash (2 10 0))) "Major mode for Pony code" single ((:commit . "5e23459dc395eb77fa4c6cfa3d6c08b1b185a6df") (:url . "https://github.com/seantallen/ponylang-mode") (:keywords "languages" "programming"))]) (pony-snippets . [(20160204 2011) ((yasnippet (0 8 0))) "Yasnippets for Pony" tar ((:commit . "a6615ab0693f17fc47ec45753202010238157810") (:url . "https://github.com/seantallen/pony-snippets") (:keywords "snippets" "pony"))]) (pony-mode . [(20170807 822) nil "Minor mode for working with Django Projects" tar ((:commit . "760684d30b6c234d1b88c9a4673a808f36f7f341"))]) (pomodoro . [(20150716 1046) nil "A timer for the Pomodoro Technique" single ((:commit . "4a299b8f5e6623010224dcb3e524ff288c6a082c"))]) (pomidor . [(20170925 2301) ((emacs (24 3)) (alert (1 2))) "Simple and cool pomodoro timer" tar ((:commit . "16bed77ff933cb5f8430b6eacf27509631d22072") (:url . "https://github.com/TatriX/pomidor") (:keywords "tools" "time" "applications" "pomodoro technique"))]) (polymode . [(20170307 322) ((emacs (24))) "Versatile multiple modes with extensive literate programming support" tar ((:commit . "0340f5e7e55235832e59673f027cc79a23cbdcd6") (:url . "https://github.com/vitoshka/polymode"))]) (poly-ruby . [(20170802 648) ((emacs (24 3)) (polymode (1 0))) "Provides poly-ruby-mode" single ((:commit . "e6f50a92d29a5ff567d70cafa6621c4f89056d11") (:url . "https://github.com/knu/poly-ruby.el") (:keywords "languages"))]) (pollen-mode . [(20160808 2000) ((emacs (24 3)) (cl-lib (0 5))) "major mode for editing pollen files" single ((:commit . "de762bd7f9760185dae8ef025ca9a9126ae78de0") (:url . "https://github.com/lijunsong/pollen-mode") (:keywords "languages" "pollen" "pollenpub"))]) (pointback . [(20100210 752) nil "Restore window points when returning to buffers" single ((:commit . "e3a02c1784d81b5a1d2477338d049af581ed19f8") (:keywords "convenience"))]) (point-undo . [(20100504 129) nil "undo/redo position" single nil]) (point-stack . [(20170808 958) nil "Back and forward navigation through buffer locations" single ((:commit . "76e17311e3a810314c7d31ac46dc55450ff30fa2"))]) (point-pos . [(20170421 932) nil "Save and restore point positions" single ((:commit . "442bccb40791832cbc2d6f5c8f53be745aea2b73") (:url . "https://github.com/alezost/point-pos.el") (:keywords "tools" "convenience"))]) (podcaster . [(20161020 835) ((cl-lib (0 5))) "Podcast client" single ((:commit . "9854517025deb5d556168a68955fb7b662239f5c") (:url . "https://github.com/lujun9972/podcaster"))]) (pocket-reader . [(20171127 335) ((emacs (25 1)) (dash (2 13 0)) (kv (0 0 19)) (pocket-lib (0 1)) (s (1 10)) (ov (1 0 6)) (rainbow-identifiers (0 2 2)) (org-web-tools (0 1)) (ht (2 2))) "Client for Pocket reading list" single ((:commit . "6a35d531f2425e2e187f5107047f3dc7625f3623") (:url . "https://github.com/alphapapa/pocket-reader.el") (:keywords "pocket"))]) (pocket-mode . [(20171201 515) ((emacs (24 4)) (pocket-api (0 1))) "Manage your pocket" single ((:commit . "229de7d35b7e5605797591c46aa8200d7efc363c") (:keywords "convenience" "pocket"))]) (pocket-lib . [(20171108 421) ((emacs (25 1)) (request (0 2)) (dash (2 13 0)) (kv (0 0 19)) (s (1 12 0))) "Library for accessing getpocket.com API" single ((:commit . "c860dc2f67398d837de2be17e85894a1303e7b49") (:url . "https://github.com/alphapapa/pocket-lib.el") (:keywords "pocket"))]) (pocket-api . [(20170818 533) ((emacs (24 4)) (request (0 2))) "another pocket api" single ((:commit . "26e4583311ebc472f7bba59a1189f04938f2c03e") (:url . "https://github.com/lujun9972/pocket-api.el") (:keywords "convenience" "pocket"))]) (po-mode . [(20170419 303) nil "major mode for GNU gettext PO files" single ((:commit . "981c523ddbd1462970335a1069573ca3bdd3df5e") (:keywords "i18n" "gettext"))]) (pmdm . [(20151109 1036) nil "poor man's desktop-mode alternative." single ((:url . "https://bitbucket.com/inigoserna/pmdm.el"))]) (plur . [(20160504 224) ((emacs (24 4))) "Easily search and replace multiple variants of a word" single ((:commit . "5bdd3b9a2f0624414bd596e798644713cd1545f0") (:url . "https://github.com/xuchunyang/plur"))]) (plsql . [(20121115 243) nil "Programming support for PL/SQL code" single ((:url . "http://www.emacswiki.org/elisp/plsql.el") (:keywords "languages"))]) (plsense-direx . [(20140520 1308) ((direx (0 1 -3)) (plsense (0 3 2)) (log4e (0 2 0)) (yaxception (0 3 2))) "Perl Package Explorer" single ((:commit . "8a2f465264c74e04524cc789cdad0190ace43f6c") (:url . "https://github.com/aki2o/plsense-direx") (:keywords "perl" "convenience"))]) (plsense . [(20151104 645) ((auto-complete (1 4 0)) (log4e (0 2 0)) (yaxception (0 2 0))) "provide interface for PlSense that is a development tool for Perl." single ((:commit . "d50f9dccc98f42bdb42f1d1c8142246e03879218") (:url . "https://github.com/aki2o/emacs-plsense") (:keywords "perl" "completion"))]) (plim-mode . [(20140812 1713) nil "Major mode for editing Plim files" single ((:commit . "92e39190286f172567ceb02c80e1df3b81abfa2d") (:url . "http://github.com/dongweiming/plim-mode") (:keywords "markup" "language"))]) (plenv . [(20130706 2316) nil "A plenv wrapper for Emacs" single ((:commit . "ee937d0f3a1a7ba2d035f45be896d3ed8fefaee2") (:keywords "emacs" "perl"))]) (playerctl . [(20170414 156) nil "Control your music player (e.g. Spotify) with playerctl" single ((:commit . "8354352813cd206efb60002f2af4427957bf8894") (:url . "https://github.com/thomasluquet/playerctl.el") (:keywords "multimedia" "playerctl" "music"))]) (play-routes-mode . [(20170426 33) nil "Play Framework Routes File Support" single ((:commit . "22d7b87e0eaf0330f2b2283872f8dc08a3258771") (:url . "https://github.com/brocode/play-routes-mode/") (:keywords "play" "scala"))]) (platformio-mode . [(20161210 539) ((projectile (0 13 0))) "PlatformIO integration" single ((:commit . "1466aed132a77f48fcb31938d64abb1a1e58ec42") (:url . "https://github.com/zachmassia/platformio-mode"))]) (plantuml-mode . [(20170819 1033) nil "Major mode for PlantUML" single ((:commit . "fce628885b54635b0287b3337626752b2725369d") (:keywords "uml" "plantuml" "ascii"))]) (planet-theme . [(20161030 1917) ((emacs (24))) "A dark theme inspired by Gmail's 'Planets' theme of yore" single ((:commit . "b0a310ff36565fe22224c407cf59569986698a32") (:url . "https://github.com/cmack/emacs-planet-theme") (:keywords "themes"))]) (plan9-theme . [(20170529 2212) nil "A color theme for Emacs based on Plan9" single ((:commit . "cdc50195f6579e6c3e6e8060142ce25b609f7949") (:url . "https://github.com/john2x/plan9-theme.el"))]) (plain-theme . [(20171123 2010) ((emacs (24))) "Plain theme without syntax highlighting" single ((:commit . "2609a811335d58cfb73a65d6307c156fe09037d3"))]) (pkgbuild-mode . [(20151010 736) nil "Interface to the ArchLinux package manager" single ((:commit . "7369ab3c6b59cfdf2ecd2b32ad96ce006e766fa0"))]) (pkg-info . [(20150517 443) ((epl (0 8))) "Information about packages" single ((:commit . "76ba7415480687d05a4353b27fea2ae02b8d9d61") (:url . "https://github.com/lunaryorn/pkg-info.el") (:keywords "convenience"))]) (pixiv-novel-mode . [(20160220 621) nil "Major mode for pixiv novel" single ((:commit . "0d1ca524d92b91f20a7105402a773bc21779b434") (:keywords "novel" "pixiv"))]) (pixie-mode . [(20150121 2124) ((clojure-mode (3 0 1)) (inf-clojure (1 0 0))) "Major mode for Pixie-lang" single ((:commit . "f32d5d812c7b5b72d7ff7bad52b41035f9ef6e96") (:url . "https://github.com/johnwalker/pixie-mode"))]) (pivotal-tracker . [(20170720 816) nil "Interact with Pivotal Tracker through its API" single ((:commit . "0311d117037c74512149a4a78b269c2e46d7dfba") (:url . "http://github.com/jxa/pivotal-tracker"))]) (pippel . [(20170730 623) ((emacs (25 1)) (s (1 11 0)) (dash (2 12 0))) "Frontend to python package manager pip" tar ((:commit . "3737d5934665b5059c1e858feeb4270262b37e53") (:url . "https://github.com/brotzeitmacher/pippel"))]) (pip-requirements . [(20171109 1439) ((dash (2 8 0))) "A major mode for editing pip requirements files." single ((:commit . "d6d0437794e5de205a5fb03e0ff0a4a1b9e04eea"))]) (pinyinlib . [(20170827 1442) nil "Convert first letter of Pinyin to Simplified/Traditional Chinese characters" single ((:commit . "45f05d3dbb4fe957f7ab332ca6f94675848b6aa3") (:keywords "extensions"))]) (pinyin-search . [(20160514 2058) ((pinyinlib (0 1 0))) "Search Chinese by Pinyin" single ((:commit . "2e877a76851009d41bde66eb33182a03a7f04262") (:url . "https://github.com/xuchunyang/pinyin-search.el") (:keywords "chinese" "search"))]) (pinot . [(20140211 1226) nil "Emacs interface to pinot-search" tar ((:commit . "67fda555a155b22bb2ce44ba618b4bd6fc5f144a"))]) (pinboard-api . [(20140324 448) nil "Rudimentary http://pinboard.in integration" single ((:commit . "b7b5214d0c35178f8dca08cf22d6ef3c21f0fce4") (:url . "https://github.com/danieroux/pinboard-api-el") (:keywords "pinboard" "www"))]) (pillar . [(20141112 1011) ((makey (0 3))) "Major mode for editing Pillar files" tar ((:commit . "13a7f676544cc66005ccd8e6fc1c25e4ccd6f909") (:url . "http://github.com/DamienCassou/pillar-mode") (:keywords "markup" "major-mode"))]) (pig-snippets . [(20130912 2324) ((yasnippet (0 8 0))) "Snippets for pig-mode" tar ((:commit . "af4200c88a50264b63fa162a02860f3f54c8755b"))]) (pig-mode . [(20140617 1058) nil "Major mode for Pig files" single ((:commit . "af4200c88a50264b63fa162a02860f3f54c8755b"))]) (picpocket . [(20170905 1133) ((emacs (24 4))) "Image viewer" single ((:commit . "e0ca0f1fc03b4166ce2eab9d7532b9b29989e5bd") (:url . "https://github.com/johanclaesson/picpocket") (:keywords "multimedia"))]) (picolisp-mode . [(20150516 155) nil "Major mode for PicoLisp programming." single ((:commit . "1a537b14090813f46cbba54636d40365e1a8067e") (:url . "https://github.com/flexibeast/picolisp-mode") (:keywords "picolisp" "lisp" "programming"))]) (pianobar . [(20171117 1522) nil "thin wrapper for Pianobar, a Pandora Radio client" single ((:commit . "68fe0ed839f6775535081b3ae0a946ccaf11234a") (:url . "http://github.com/agrif/pianobar.el"))]) (phpunit . [(20171127 301) ((s (1 9 0)) (f (0 16 0)) (pkg-info (0 5)) (cl-lib (0 5)) (emacs (24 3))) "Launch PHP unit tests using phpunit" tar ((:commit . "a13706733f98be3639c47311fc820b3b50f4bc33") (:url . "https://github.com/nlamirault/phpunit.el") (:keywords "tools" "php" "tests" "phpunit"))]) (phpcbf . [(20150302 528) ((s (1 9 0))) "Format PHP code in Emacs using PHP_CodeSniffer's phpcbf" single ((:commit . "b556b548ceb061b002389d6165d2cc63d8bddb5d") (:url . "https://github.com/nishimaki10/emacs-phpcbf") (:keywords "tools" "php"))]) (php-scratch . [(20161103 1517) ((emacs (24 3)) (s (1 11 0)) (php-mode (1 17 0))) "A scratch buffer to interactively evaluate php code" single ((:commit . "3aa66d1d53b84b779374edff7a7e6b5f2cd7575d"))]) (php-runtime . [(20170901 1106) ((emacs (24)) (cl-lib (0 5))) "Language binding bridge to PHP" single ((:commit . "e1bca88ab5472e9b520b4ce915cd27d1e7803c2d") (:url . "https://github.com/emacs-php/php-runtime.el") (:keywords "processes" "php"))]) (php-refactor-mode . [(20171123 2235) nil "Minor mode to quickly and safely perform common refactorings" single ((:commit . "7a794b0618df2882b1bd586fdd698dba0bc5130d") (:url . "https://github.com/keelerm84/php-refactor-mode.el") (:keywords "php" "refactor"))]) (php-mode . [(20171204 23) ((emacs (24)) (cl-lib (0 5))) "Major mode for editing PHP code" tar ((:commit . "ad7d1092e1d66602482c5b54ed0609c6171dcae1") (:url . "https://github.com/ejmr/php-mode"))]) (php-eldoc . [(20140202 1141) nil "eldoc backend for php" tar ((:commit . "df05064146b884d9081e10657e32dc480f070cfe") (:url . "https://github.com/sabof/php-eldoc"))]) (php-cs-fixer . [(20170506 1133) ((cl-lib (0 5))) "php-cs-fixer wrapper." single ((:commit . "ca2c075a22ad156c336d2aa093fb6394c9f6c112") (:url . "https://github.com/OVYA/php-cs-fixer") (:keywords "languages" "php"))]) (php-boris-minor-mode . [(20140209 1035) ((php-boris (0 0 1)) (highlight (0))) "a minor mode to evaluate PHP code in the Boris repl" single ((:commit . "c70e176dd6545f2d42ca3427e87b469635616d8a") (:url . "https://github.com/steckerhalter/php-boris-minor-mode") (:keywords "php" "repl" "eval"))]) (php-boris . [(20130527 121) nil "Run boris php REPL" single ((:commit . "f2faebf610c917f7091f7ec0cd97645629c4f819") (:keywords "php" "commint" "repl" "boris"))]) (php-auto-yasnippets . [(20170330 1814) ((php-mode (1 11)) (yasnippet (0 8 0))) "Creates snippets for PHP functions" tar ((:commit . "03e1f0899c081813901ac15c2f7a675a37cca9f5") (:url . "https://github.com/ejmr/php-auto-yasnippets"))]) (php+-mode . [(20171027 921) nil "A better PHP mode with Zend Framework 1 support." tar ((:commit . "523e7e50f9978ba74b8a324f9f896cd9b5dfd9de"))]) (phoenix-dark-pink-theme . [(20170729 703) nil "Originally a port of the Sublime Text 2 theme" single ((:commit . "4defbb76b00c1a29f060813898578152d6be623d") (:url . "http://github.com/j0ni/phoenix-dark-pink"))]) (phoenix-dark-mono-theme . [(20170729 706) nil "Monochromatic version of the Phoenix theme" single ((:commit . "a54f515d162148bcb38676980bc2316adb3d7b8b") (:url . "http://github.com/j0ni/phoenix-dark-mono"))]) (phi-search-migemo . [(20170618 221) ((phi-search (2 2 0)) (migemo (1 9 1))) "migemo extension for phi-search" single ((:commit . "308909ebfc8003d16673f97ca9eb26a667b72969") (:url . "http://hins11.yu-yake.com/"))]) (phi-search-mc . [(20160324 803) ((phi-search (2 0 0)) (multiple-cursors (1 2 1))) "multiple-cursors extension for phi-search" single ((:commit . "7aa671910f766437089aec26c3aa7814222d1356") (:url . "https://github.com/knu/phi-search-mc.el") (:keywords "search" "cursors"))]) (phi-search-dired . [(20150405 14) ((phi-search (2 2 0))) "interactive filtering for dired powered by phi-search" single ((:commit . "162a5e4507c72512affae22744bb606a906d4193") (:url . "http://hins11.yu-yake.com/"))]) (phi-search . [(20170310 237) nil "another incremental search & replace, compatible with \"multiple-cursors\"" tar ((:commit . "a81c4ea203fcb572f6cc37cc658d6b01453bef9d") (:url . "http://hins11.yu-yake.com/"))]) (phi-rectangle . [(20151207 2254) nil "another rectangle-mark command (rewrite of rect-mark)" single ((:commit . "0c12716afc71d803d1f39417469521dc465762d9") (:url . "http://hins11.yu-yake.com/"))]) (phi-grep . [(20170606 107) ((cl-lib (0 1))) "Interactively-editable recursive grep implementation in elisp" single ((:commit . "ab9bd8d25e751a9cbfa108b49839293230b6e8b5") (:url . "http://github.com/zk-phi/phi-grep"))]) (phi-autopair . [(20170216 1953) ((paredit (20))) "another simple-minded autopair implementation" single ((:commit . "3c7556779c3a53b045f5df33ae2a0c67469cbf60") (:url . "http://hins11.yu-yake.com/"))]) (phan . [(20171017 2045) ((emacs (24)) (composer (0 0 8)) (f (0 17))) "Utility functions for Phan (PHP static analizer)" single ((:commit . "17b44a62580272bcf5ee91fb58098292e9de6f83") (:url . "https://github.com/emacs-php/phan.el") (:keywords "tools" "php"))]) (phabricator . [(20160510 725) ((emacs (24 4)) (dash (1 0)) (projectile (0 13 0)) (s (1 10 0)) (f (0 17 2))) "Phabricator/Arcanist helpers for Emacs." single ((:commit . "d09d6f059aea92d3b11c68664a5e80c901182ab8") (:url . "https://github.com/ajtulloch/phabricator.el") (:keywords "phabricator" "arcanist" "diffusion"))]) (ph . [(20161029 822) ((emacs (24 3))) "A global minor mode for managing multiple projects." tar ((:commit . "ed80dad9211583ed0db633448b3624c99b7fac23"))]) (pgdevenv . [(20150105 1436) nil "Manage your PostgreSQL development envs" tar ((:commit . "7f1d5bc734750aca98cf67a9491cdbd5615fd132") (:keywords "emacs" "postgresql" "development" "environment" "shell" "debug" "gdb"))]) (pg . [(20130731 1442) nil "Emacs Lisp interface to the PostgreSQL RDBMS" single ((:commit . "4f6516ec3946d95dcef49abb6703cc89ecb5183d") (:keywords "data" "comm" "database" "postgresql"))]) (pfuture . [(20171116 812) ((emacs (24 4))) "a simple wrapper around asynchronous processes" single ((:commit . "d55a764b5beee803e489974be2408dbe236fc482") (:url . "https://github.com/Alexander-Miller/pfuture"))]) (perspeen . [(20171203 221) ((emacs (25 0)) (powerline (2 4))) "An package for multi-workspace" tar ((:commit . "edb70c530bda50ff3d1756e32a703d5fef5e5480") (:url . "https://github.com/seudut/perspeen") (:keywords "lisp"))]) (perspective . [(20160609 1444) ((cl-lib (0 5))) "switch between named \"perspectives\" of the editor" single ((:commit . "89a8ef5e8297b113e4f732bb94336608b76e13fd") (:url . "http://github.com/nex3/perspective-el") (:keywords "workspace" "convenience" "frames"))]) (persp-projectile . [(20160709 2317) ((perspective (1 9)) (projectile (0 11 0)) (cl-lib (0 3))) "Perspective integration with Projectile" single ((:commit . "7686633acf44402fa90429759cca6a155e4df2b9") (:keywords "project" "convenience"))]) (persp-mode-projectile-bridge . [(20170315 420) ((persp-mode (2 9)) (projectile (0 13 0)) (cl-lib (0 5))) "persp-mode + projectile integration." single ((:commit . "f6453cd7b8b4352c06e771706f2c5b7e2cdff1ce") (:url . "https://github.com/Bad-ptr/persp-mode-projectile-bridge.el") (:keywords "persp-mode" "projectile"))]) (persp-mode . [(20171014 111) nil "windows/buffers sets shared among frames + save/load." single ((:commit . "ccf87da2c230c3a91e627105b0f034a954e6842a") (:url . "https://github.com/Bad-ptr/persp-mode.el") (:keywords "perspectives" "session" "workspace" "persistence" "windows" "buffers" "convenience"))]) (persp-fr . [(20170908 44) ((emacs (25 0)) (persp-mode (2 9 6))) "In persp-mode, show perspective list in the GUI window title" single ((:commit . "4d2d1a75019f520742da79f1aeed9c4a960677e0") (:url . "http://github.com/rocher/persp-fr") (:keywords "perspectives" "workspace" "windows" "convenience"))]) (persistent-soft . [(20150223 1053) ((pcache (0 3 1)) (list-utils (0 4 2))) "Persistent storage, returning nil on failure" single ((:commit . "a1e0ddf2a12a6f18cab565dee250f070384cbe02") (:url . "http://github.com/rolandwalker/persistent-soft") (:keywords "data" "extensions"))]) (persistent-scratch . [(20170110 546) ((emacs (24))) "Preserve the scratch buffer across Emacs sessions" single ((:commit . "551c655fa349e6f48e4e29f427fff7594f76ac1d") (:url . "https://github.com/Fanael/persistent-scratch"))]) (persistent-overlays . [(20161127 2300) nil "Minor mode to store selected overlays to be loaded later" tar ((:commit . "f563c8b966edc78c9d806661c4eb80e4781c4eab") (:url . "https://github.com/mneilly/Emacs-Persistent-Overlays") (:keywords "overlays" "persistent"))]) (perlbrew . [(20161108 2309) nil "A perlbrew wrapper for Emacs" single ((:commit . "3a3406c3307c92aa30f9400d430925c434a3b6f0") (:keywords "emacs" "perl"))]) (perl6-mode . [(20161228 430) ((emacs (24 4)) (pkg-info (0 1))) "Major mode for editing Perl 6 code" tar ((:commit . "4867c6d268545f5356111d72c4ae77917d34cb21") (:url . "https://github.com/hinrik/perl6-mode") (:keywords "languages"))]) (per-buffer-theme . [(20160318 1501) ((cl-lib (0 5))) "Change theme according to buffer name or major mode." single ((:url . "https://bitbucket.com/inigoserna/per-buffer-theme.el") (:keywords "themes"))]) (pelican-mode . [(20171001 503) ((emacs (25))) "Minor mode for editing Pelican sites" single ((:commit . "64d41f0ee5970b2d875880994eb287b97cad24a1") (:url . "https://git.korewanetadesu.com/pelican-mode.git") (:keywords "convenience" "editing"))]) (peg . [(20150707 2341) nil "Parsing Expression Grammars in Emacs Lisp" single ((:commit . "081efeca91d790c7fbc90871ac22c40935f4833b"))]) (peep-dired . [(20160321 1537) nil "Peep at files in another window from dired buffers" single ((:commit . "c88a9a3050197840edfe145f11e0bb9488de32f4") (:keywords "files" "convenience"))]) (peek-mode . [(20130620 1246) ((elnode (0 9 8 1))) "Serve buffers live over HTTP with elnode backend" tar ((:commit . "55a7dd011375330c7d57322257a5167516702c71") (:url . "https://github.com/erikriverson/peek-mode"))]) (peacock-theme . [(20170808 620) ((emacs (24 0))) "an Emacs 24 theme based on Peacock (tmTheme)" single ((:commit . "9e46fbfb562b6e26c6e3d6d618b044b3694da4c8") (:url . "https://github.com/emacsfodder/tmtheme-to-deftheme"))]) (pdf-tools . [(20171012 2226) ((emacs (24 3)) (tablist (0 70)) (let-alist (1 0 4))) "Support library for PDF documents." tar ((:commit . "0f99f0c06514acf51445e7e4cb0f638fa0c75ee5") (:keywords "files" "multimedia"))]) (pdb-mode . [(20150128 951) nil "Major mode for editing Protein Data Bank files" single ((:commit . "855fb18ebb73b5df30c8d7677c2bcd0f361b138a") (:url . "http://bondxray.org/software/pdb-mode/") (:keywords "data" "pdb"))]) (pcsv . [(20150220 331) nil "Parser of csv" single ((:commit . "798e0933f8d0818beb17aebf3b1056bbf74e03d0") (:url . "https://github.com/mhayashi1120/Emacs-pcsv/raw/master/pcsv.el") (:keywords "data"))]) (pcre2el . [(20161120 1303) ((emacs (24)) (cl-lib (0 3))) "regexp syntax converter" single ((:commit . "0b5b2a2c173aab3fd14aac6cf5e90ad3bf58fa7d") (:url . "https://github.com/joddie/pcre2el"))]) (pcomplete-extension . [(20140604 947) ((emacs (24)) (cl-lib (0 5))) "additional completion for pcomplete" single ((:commit . "839740c90de857e18db2f578d6660951522faab5") (:url . "https://github.com/thierryvolpiatto/pcomplete-extension"))]) (pcmpl-pip . [(20171201 33) ((s (1 12 0)) (f (0 19 0)) (seq (2 15))) "pcomplete for pip" single ((:commit . "8b001b579fc015f80ee0e4f3211058b830bf7c47") (:keywords "pcomplete" "pip" "python" "tools"))]) (pcmpl-homebrew . [(20170110 1609) nil "pcomplete for homebrew" single ((:commit . "d001520fec4715c9a4c73f02fd948bac371cc50a") (:keywords "pcomplete" "homebrew" "tools" "cask" "services"))]) (pcmpl-git . [(20170120 1659) nil "pcomplete for git" tar ((:commit . "9472ac70baeda025ef7becd1cf141d72aec93f32") (:keywords "tools"))]) (pcmpl-args . [(20120911 2224) nil "Enhanced shell command completion" single ((:commit . "2ba03b3125ada8037585e545b88bd85b79da5c37") (:url . "https://github.com/JonWaltman/pcmpl-args.el") (:keywords "abbrev" "completion" "convenience" "processes" "terminals" "unix"))]) (pcap-mode . [(20161025 748) ((emacs (24 3))) "Major mode for working with PCAP files" single ((:commit . "52780669af0ade136f84d73f21b4dbb7ab655416") (:keywords "pcap" "packets" "tcpdump" "wireshark" "tshark"))]) (pcache . [(20170105 1414) ((eieio (1 3))) "persistent caching for Emacs." single ((:commit . "1f8086077d770e524492e6fa59b07856e85a6fea"))]) (pc-bufsw . [(20150923 13) nil "PC style quick buffer switcher" single ((:commit . "a76120bca9821c355069f135b4e6978351b66bc2") (:url . "https://github.com/ibukanov/pc-bufsw") (:keywords "buffer"))]) (pbcopy . [(20150224 2059) nil "Emacs Interface to pbcopy" single ((:commit . "338f7245746b5de1bb96c5cc2b32bfd9b5d83272") (:url . "https://github.com/jkp/pbcopy.el") (:keywords "mac" "osx" "pbcopy"))]) (paxedit . [(20160730 1027) ((cl-lib (0 5)) (paredit (23))) "Structured, Context Driven LISP Editing and Refactoring" single ((:commit . "09f3d5aeb108937a801e77ef413e29eaa4ecc4be") (:url . "https://github.com/promethial/paxedit") (:keywords "lisp" "refactoring" "context"))]) (pathify . [(20160423 146) nil "Symlink your scripts into a PATH directory" single ((:commit . "401b184c743694a60b3bc4273fc43de05cd5ac4b") (:url . "https://gitlab.com/alezost-emacs/pathify") (:keywords "convenience"))]) (path-headerline-mode . [(20140423 632) nil "Displaying file path on headerline." single ((:commit . "b5b2725c6a8b1cb592fc242b7dbbd54b4dff2e69") (:url . "https://github.com/7696122/path-headerline-mode") (:keywords "headerline"))]) (pastery . [(20171113 1949) ((emacs (24 4)) (request (0 2 0))) "paste snippets to pastery.net." tar ((:commit . "4493be98b743b4d062cb4e00760125e394a55022") (:url . "https://github.com/diasbruno/pastery.el") (:keywords "tools"))]) (pastelmac-theme . [(20151030 1936) ((emacs (24 1))) "a soothing theme with a pastel color palette" single ((:commit . "bead21741e3f46f6506e8aef4469d4240a819389") (:url . "https://github.com/bmastenbrook/pastelmac-theme-el") (:keywords "themes"))]) (pastehub . [(20140614 2320) nil "A client for the PasteHub cloud service" single ((:commit . "37b045c67659c078f1517d0fbd5282dab58dca23") (:url . "https://github.com/kiyoka/pastehub"))]) (pastebin . [(20101125 1202) nil "A simple interface to the www.pastebin.com webservice" single ((:commit . "8e9a829298ce0f747ab80758aa26caeb2af6cb30"))]) (paste-of-code . [(20170709 1655) ((emacs (24 3)) (request (0 2 0))) "paste code on https://paste.ofcode.org" single ((:commit . "92d258e8ec98598d847ecab82903f9224c7c2050") (:keywords "lisp"))]) (password-vault . [(20160126 1020) ((cl-lib (0 2)) (emacs (24))) "A Password manager for Emacs." single ((:commit . "dc56e6c2f5da66f1ab63736cecf08fb2c6c2b30f") (:url . "http://github.com/PuercoPop/password-vault") (:keywords "password" "productivity"))]) (password-store-otp . [(20170928 18) ((emacs (25)) (s (1 9 0)) (password-store (0 1))) "Password store (pass) OTP extension support" single ((:commit . "a39a64a91de36e87b852339635bd3c5fb0e32441") (:url . "https://github.com/volrath/password-store-otp.el") (:keywords "tools" "pass"))]) (password-store . [(20170829 1633) ((emacs (24)) (f (0 11 0)) (s (1 9 0)) (with-editor (2 5 11))) "Password store (pass) support" single ((:commit . "7252e8b3cf829e908179913daad16ff2b8bdefdd") (:url . "https://www.passwordstore.org/") (:keywords "tools" "pass" "password" "password-store"))]) (password-mode . [(20170411 2329) nil "Hide password text using overlays" single ((:commit . "ed764a4ec1011526457c71b7c37fa9a659a866ab") (:keywords "docs" "password" "passphrase"))]) (password-generator . [(20150222 1240) nil "Password generator for humans. Good, Bad, Phonetic passwords included." single ((:commit . "c8193d5e963bda0a2f8e51fd4a94dcf37c76f282") (:url . "http://github.com/zargener/emacs-password-genarator"))]) (passthword . [(20141201 123) ((cl-lib (0 5))) "Simple password manager" single ((:commit . "30bace842eaaa6b48cb2251fb84868ebca0467d6"))]) (passmm . [(20170113 837) ((emacs (24 4))) "A minor mode for pass (Password Store)." single ((:commit . "076df7221f9450b96855c36684ae4a7481e0bb71") (:url . "https://github.com/pjones/passmm"))]) (pass . [(20171010 410) ((emacs (24 3)) (password-store (0 1)) (password-store-otp (0 1 5)) (f (0 17))) "Major mode for password-store.el" single ((:commit . "0f4ff034fb31b18f387e67f1de4029826db6cd0b") (:keywords "password-store" "password" "keychain"))]) (pasp-mode . [(20170803 1301) ((emacs (24 3))) "- A major mode for editing Answer Set Programs." single ((:commit . "6511193677d6113fec1171f476c0db3be242ee15") (:url . "https://github.com/santifa/pasp-mode") (:keywords "asp" "pasp" "answer set programs" "potassco answer set programs" "major mode" "languages"))]) (parsec . [(20171202 2031) ((emacs (24)) (cl-lib (0 5))) "Parser combinator library" single ((:commit . "212f848d95c2614a86f135c1bf3de15ef0e09805") (:url . "https://github.com/cute-jumper/parsec.el") (:keywords "extensions"))]) (parsebib . [(20170501 347) ((emacs (24 3))) "A library for parsing bib files" single ((:commit . "bc31b627c666df576aa37e21c27a2223b3cb91a3") (:keywords "text" "bibtex"))]) (parse-csv . [(20160512 1023) nil "Parse strings with CSV fields into s-expressions" single ((:commit . "96bef1ffbc89ea12d13311c9fa239c5c3e864890") (:url . "https://github.com/mrc/el-csv") (:keywords "csv"))]) (parinfer . [(20170710 821) ((dash (2 13 0)) (cl-lib (0 5))) "Simpler Lisp editing" tar ((:commit . "23ac701e2a1a1364ca96d267437c3413986a4497") (:url . "https://github.com/DogLooksGood/parinfer-mode") (:keywords "parinfer"))]) (parent-mode . [(20150824 1600) nil "get major mode's parent modes" single ((:commit . "db692cf08deff2f0e973e6e86e26662b44813d1b") (:url . "https://github.com/Fanael/parent-mode"))]) (paren-face . [(20161028 1127) nil "a face for parentheses in lisp modes" single ((:commit . "0a7cbd65bb578cc52a9dc495a4fcaf23a57507bf") (:url . "https://github.com/tarsius/paren-face"))]) (paren-completer . [(20160501 352) ((emacs (24 3))) "Automatically, language agnostically, fill in delimiters." single ((:commit . "74183a8e13fa1266271bdcbcb4bfb29a4f915f0a") (:url . "https://github.com/MatthewBregg/paren-completer") (:keywords "convenience"))]) (paredit-menu . [(20160128 933) ((paredit (25))) "Adds a menu to paredit.el as memory aid" single ((:commit . "cc0ae85bd819f9ebfa4f2a419ab3b2d70e39c9c8") (:keywords "paredit"))]) (paredit-everywhere . [(20150821 2144) ((paredit (22))) "Enable some paredit features in non-lisp buffers" single ((:commit . "94c92095c2096713fb3e2f7662ddd994f4b694c6") (:keywords "languages" "convenience"))]) (paredit . [(20171126 1805) nil "minor mode for editing parentheses" single ((:commit . "acbe10fdd85d2e91831adf70b6a828bc7e900da0") (:keywords "lisp"))]) (paradox . [(20161117 502) ((emacs (24 4)) (seq (1 7)) (let-alist (1 0 3)) (spinner (1 7 3)) (hydra (0 13 2))) "A modern Packages Menu. Colored, with package ratings, and customizable." tar ((:commit . "dfdfbec8b4a3b71966c134f00c3f5edfa87b6245") (:url . "https://github.com/Malabarba/paradox") (:keywords "package" "packages"))]) (paperless . [(20170213 503) ((emacs (24 4)) (f (0 19 0)) (s (1 10 0)) (cl-lib (0 6 1))) "A major mode for sorting and filing PDF documents." single ((:commit . "4e8c5d147db5c8ef0a3914e95b4030b28d29c6bb") (:url . "http://github.com/atgreen/paperless") (:keywords "pdf" "convenience"))]) (paper-theme . [(20170924 1231) ((emacs (24)) (hexrgb (0))) "A minimal Emacs colour theme." single ((:commit . "02829f582d03c149d0aace9a0bdf2bd405b2e4a2") (:url . "http://gkayaalp.com/emacs.html#paper") (:keywords "theme" "paper"))]) (pangu-spacing . [(20170317 157) nil "Minor-mode to add space between Chinese and English characters." single ((:commit . "a4463dbb74abdeddb6c1c132a1f8fcf67ed87498") (:url . "http://github.com/coldnew/pangu-spacing"))]) (pandoc-mode . [(20171204 1441) ((hydra (0 10 0)) (dash (2 10 0))) "Minor mode for interacting with Pandoc" tar ((:commit . "2b2c5678b3bea84a28e90bf1b1c05aee191df88a") (:keywords "text" "pandoc"))]) (pandoc . [(20161128 357) ((emacs (24 4))) "Pandoc interface" single ((:commit . "198d262d09e30448f1672338b0b5a81cf75e1eaa") (:url . "https://github.com/zonuexe/pandoc.el") (:keywords "hypermedia" "documentation" "markup" "converter"))]) (pamparam . [(20170927 1048) ((emacs (24 3)) (lispy (0 26 0)) (worf (0 1 0)) (hydra (0 13 4))) "Simple and fast flashcards." single ((:commit . "c840a8f941940bb8e694c635995566faee995c7b") (:url . "https://github.com/abo-abo/pamparam") (:keywords "outlines" "hypermedia" "flashcards" "memory"))]) (pallet . [(20150512 2) ((dash (2 10 0)) (s (1 9 0)) (f (0 17 1)) (cask (0 7))) "A package management tool for Emacs, using Cask." tar ((:commit . "b8d0df1883224a371ac0a3bc9b9c1c4dc61e6ac0"))]) (palimpsest . [(20170119 1232) nil "Various deletion strategies when editing" single ((:commit . "e6d5944393c260ceb724462c84046cc62c9ae916"))]) (palette . [(20170307 936) ((hexrgb (0))) "Color palette useful with RGB, HSV, and color names" single ((:url . "https://www.emacswiki.org/emacs/download/palette.el") (:keywords "color" "rgb" "hsv" "hexadecimal" "face" "frame"))]) (pager-default-keybindings . [(20130719 1357) ((pager (1 0))) "Add the default keybindings suggested for pager.el" single ((:commit . "dbbd49c2ac5906d1dabf9e9c832bfebc1ab405b3") (:url . "http://github.com/nflath/pager-default-keybindings"))]) (pager . [(20151201 1720) nil "windows-scroll commands" single ((:commit . "5c791ed23f1136e04040d6f4bc9b4ca5b6dc919f"))]) (page-break-lines . [(20171020 108) ((emacs (24 4))) "Display ^L page breaks as tidy horizontal lines" single ((:commit . "ae1c0065984429c7364a667abb9180e80134c4c0") (:url . "https://github.com/purcell/page-break-lines") (:keywords "convenience" "faces"))]) (paganini-theme . [(20160612 337) ((emacs (24 0))) "A colorful, dark and warm theme." single ((:commit . "44e3ae4c451f3b380956fea8aef8cca75279746b") (:url . "https://github.com/onurtemizkan/paganini"))]) (pacmacs . [(20160131 32) ((emacs (24 4)) (dash (2 11 0)) (dash-functional (1 2 0)) (cl-lib (0 5)) (f (0 18 0))) "Pacman for Emacs" tar ((:commit . "d813e9c62c2540fe619234824fc60e128c786442") (:url . "http://github.com/codingteam/pacmacs.el"))]) (packed . [(20170819 942) ((emacs (24 3))) "package manager agnostic Emacs Lisp package utilities" single ((:commit . "94ea12b9d44bfa42c28d0548199f2fcd19e4aa6a") (:url . "https://github.com/emacscollective/packed") (:keywords "compile" "convenience" "lisp" "package" "library"))]) (package-utils . [(20170222 2352) nil "Extensions for package.el" single ((:commit . "3cbbc2ff50ecb5e6fb20a309cb07d74ca10d4d42") (:url . "https://github.com/Silex/package-utils") (:keywords "package" "convenience"))]) (package-safe-delete . [(20150116 807) ((emacs (24)) (epl (0 7 -3))) "Safely delete package.el packages" single ((:commit . "138171e4fc03c0ef05a8260cbb5cd2e114c1c194") (:url . "https://github.com/Fanael/package-safe-delete"))]) (package-lint . [(20171201 1903) ((cl-lib (0 5)) (emacs (24))) "A linting library for elisp package authors" single ((:commit . "9abfb14d9ad903ef73895a27b9964b5e6023d752") (:url . "https://github.com/purcell/package-lint") (:keywords "lisp"))]) (package-filter . [(20161121 2319) nil "package archive whitelist and blacklist" single ((:commit . "bc73b41aea1d65ca44ef1593ca13126df9bbb39e") (:url . "https://github.com/milkypostman/package-filter"))]) (package-build . [(20171127 902) ((cl-lib (0 5))) "Tools for assembling a package archive" tar ((:commit . "fc706968dc0bb60e06c5d21025a6ea82d3279e96") (:keywords "tools"))]) (package+ . [(20170815 1956) nil "Extensions for the package library." single ((:commit . "9213f6134eabc2cff5826779ced437714324c066") (:url . "TBA") (:keywords "extensions" "tools"))]) (pabbrev . [(20160320 1401) nil "Predictive abbreviation expansion" single ((:commit . "56400d5d256b42ffe45c229ea9827f026b650cf5"))]) (p4 . [(20150721 1237) nil "Simple Perforce-Emacs Integration" single ((:commit . "eff047caa75dbe4965defca9d1212454cdb755d5") (:url . "https://github.com/gareth-rees/p4.el"))]) (ox-twiki . [(20170803 1339) ((org (8)) (cl-lib (0 5))) "org Twiki and Foswiki export" single ((:commit . "970bb8ed0e4c4426c37a929b1fe08f944c1cf74f") (:url . "https://github.com/dfeich/org8-wikiexporters") (:keywords "org"))]) (ox-twbs . [(20161103 1316) nil "Bootstrap compatible HTML Back-End for Org" single ((:commit . "2414e6b1de7deb6dd2ae79a7be633fdccb9c2f28") (:url . "https://github.com/marsmining/ox-twbs") (:keywords "org" "html" "publish" "twitter" "bootstrap"))]) (ox-tufte . [(20160926 907) ((org (8 2)) (emacs (24))) "Tufte HTML org-mode export backend" single ((:commit . "49d7ea78fde063b407ce6fa57739f90c83500682") (:url . "https://github.com/dakrone/ox-tufte") (:keywords "org" "tufte" "html"))]) (ox-trac . [(20171026 1123) ((org (9 0))) "Org Export Backend to Trac WikiFormat" single ((:commit . "03cc31efb1aa06991918f1071e250a9d58f96cfb") (:url . "https://github.com/JalapenoGremlin/ox-trac") (:keywords "org-mode" "trac"))]) (ox-tiddly . [(20151206 240) ((org (8)) (cl-lib (0 5))) "org TiddlyWiki exporter" single ((:commit . "970bb8ed0e4c4426c37a929b1fe08f944c1cf74f") (:url . "https://github.com/dfeich/org8-wikiexporters") (:keywords "org"))]) (ox-textile . [(20171120 1758) ((org (8 1))) "Textile Back-End for Org Export Engine" single ((:commit . "e40472b13aee3d7dbf7bd916825431547024303d") (:url . "https://github.com/yashi/org-textile") (:keywords "org" "textile"))]) (ox-rst . [(20171004 1553) ((emacs (24 4)) (org (8 2 4))) "Export reStructuredText using org-mode." single ((:commit . "6d1eab55ff7c8dc4bcf511c9483e69f2a840e928") (:url . "https://github.com/masayuko/ox-rst") (:keywords "org" "rst" "rest" "restructuredtext"))]) (ox-reveal . [(20161027 226) ((org (20150330))) "reveal.js Presentation Back-End for Org Export Engine" single ((:commit . "001567cc12d50ba07612edd1718b86a12e8c2547") (:keywords "outlines" "hypermedia" "slideshow" "presentation"))]) (ox-qmd . [(20170402 957) ((org (8 0))) "Qiita Markdown Back-End for Org Export Engine" single ((:commit . "3a24c7a0b3ec80e494b977e14a3dfb94c9f1d8ec") (:url . "https://github.com/0x60df/ox-qmd") (:keywords "org" "wp" "markdown" "qiita"))]) (ox-pukiwiki . [(20150124 916) ((org (8 1))) "Pukiwiki Back-End for Org Export Engine" single ((:commit . "bdbde2c294f5d3de11f08a3fe19f01175d2e011a") (:url . "https://github.com/yashi/org-pukiwiki") (:keywords "org" "pukiwiki"))]) (ox-pandoc . [(20171107 341) ((org (8 2)) (emacs (24)) (dash (2 8)) (ht (2 0)) (cl-lib (0 5))) "org exporter for pandoc." single ((:commit . "cd3c59f6c0ea49e0cac31d8392a5bbac02886d8f") (:url . "https://github.com/kawabata/ox-pandoc") (:keywords "tools"))]) (ox-nikola . [(20151114 316) ((emacs (24 4)) (org (8 2 4)) (ox-rst (0 2))) "Export Nikola articles using org-mode." single ((:commit . "5bcbc1a38f6619f62294194f13ca0cd4ca14dd48") (:url . "https://github.com/masayuko/ox-nikola") (:keywords "org" "nikola"))]) (ox-minutes . [(20170323 835) ((emacs (24 4))) "Plain text backend for Org for Meeting Minutes" single ((:commit . "ad9632f35524ac546c6d55dfa827e8597669e1e1") (:url . "https://github.com/kaushalmodi/ox-minutes") (:keywords "org" "exporter" "notes"))]) (ox-mediawiki . [(20161228 850) ((cl-lib (0 5)) (s (1 9 0))) "Mediawiki Back-End for Org Export Engine" single ((:commit . "9e13392fe88817564f46a7a9f1eadebf54a2c346") (:url . "https://github.com/tomalexander/orgmode-mediawiki") (:keywords "org" "wp" "mediawiki"))]) (ox-jira . [(20171001 216) ((org (8 3))) "JIRA Backend for Org Export Engine" single ((:commit . "db2ec528f46c9e611624ba28611c440a99bff255") (:url . "https://github.com/stig/ox-jira.el") (:keywords "outlines" "hypermedia" "wp"))]) (ox-ioslide . [(20161015 638) ((emacs (24 1)) (org (8 0)) (cl-lib (0 5)) (f (0 17 2)) (makey (0 3))) "Export org-mode to Google I/O HTML5 slide." tar ((:commit . "6555680be5364c8ddd2bf446865cb1a82adb6b9e") (:url . "http://github.com/coldnew/org-ioslide") (:keywords "html" "presentation"))]) (ox-impress-js . [(20150412 1016) ((org (8))) "impress.js Back-End for Org Export Engine" tar ((:commit . "91c6d2af6af308ade352a03355c4fb551b238c6b") (:url . "https://github.com/kinjo/org-impress-js.el") (:keywords "outlines" "hypermedia" "calendar" "wp"))]) (ox-hugo . [(20171204 1012) ((emacs (24 5)) (org (9 0))) "Hugo Markdown Back-End for Org Export Engine" tar ((:commit . "832a5d7424013f60b77354ec28613440afac0269") (:url . "https://ox-hugo.scripter.co") (:keywords "org" "markdown" "docs"))]) (ox-html5slide . [(20131227 2206) ((org (8 0))) "Export org-mode to HTML5 slide." single ((:commit . "4703dfbd9d79161509def673d2c1e118d722a58f") (:url . "http://github.com/coldnew/org-html5slide") (:keywords "html" "presentation"))]) (ox-gfm . [(20170628 1402) nil "Github Flavored Markdown Back-End for Org Export Engine" single ((:commit . "99f93011b069e02b37c9660b8fcb45dab086a07f") (:keywords "org" "wp" "markdown" "github"))]) (ox-epub . [(20171105 0) ((emacs (24 3)) (org (9))) "Export org mode projects to EPUB" single ((:commit . "93bd7b42ad4a70d7008470820266546d261222d6") (:url . "http://github.com/ofosos/org-epub") (:keywords "hypermedia"))]) (ox-clip . [(20170805 505) ((org (8 2)) (htmlize (0))) "Cross-platform formatted copying for org-mode" single ((:commit . "b596760aec2ab4e10b18807c01839047aa209d6e") (:url . "https://github.com/jkitchin/ox-clip/ox-clip.el") (:keywords "org-mode"))]) (ox-bibtex-chinese . [(20170722 2009) ((emacs (24 4))) "Let ox-bibtex work well for Chinese users" tar ((:commit . "2ad2364399229144110db7ef6365ad0461d6a38c"))]) (ox-asciidoc . [(20171111 354) ((org (8 1))) "AsciiDoc Back-End for Org Export Engine" single ((:commit . "e75d9565dd07dc59d11fa92d392ab47cecb3c902") (:url . "https://github.com/yashi/org-asciidoc") (:keywords "org" "asciidoc"))]) (owdriver . [(20170401 612) ((smartrep (0 0 3)) (log4e (0 2 0)) (yaxception (0 2 0))) "Quickly perform various actions on other windows" single ((:commit . "d934f182bafe29aa16c173440eff3fef08b0ec10") (:url . "https://github.com/aki2o/owdriver") (:keywords "convenience"))]) (overseer . [(20170207 2241) ((emacs (24)) (dash (2 10 0)) (pkg-info (0 4)) (f (0 18 1))) "Ert-runner Integration Into Emacs" single ((:commit . "6be1f2a4df1b7a20298865b85502ee89e327898d") (:url . "http://www.github.com/tonini/overseer.el"))]) (ov . [(20150311 2228) ((emacs (24 3))) "Overlay library for Emacs Lisp" single ((:commit . "fae7215b3dedba2a9ced145284332e4609bfdc38") (:url . "https://github.com/ShingoFukuyama/ov.el") (:keywords "overlay"))]) (outshine . [(20171108 441) ((outorg (2 0)) (cl-lib (0 5))) "outline with outshine outshines outline" tar ((:commit . "5f1a6b70231d2811c522e4e5e8c89ff461b311d6") (:url . "http://github.com/alphapapa/outshine"))]) (outrespace . [(20170904 511) ((emacs (24 4))) "c++ namespace utility functions" single ((:commit . "cf2a397971f82c87dcfbe3400e3e7c2de79fa68e") (:url . "https://github.com/articuluxe/outrespace.git") (:keywords "tools" "c++" "namespace"))]) (outorg . [(20170414 1215) ((emacs (24 4))) "Org-style comment editing" single ((:commit . "78b0695121fb974bc4e971eb4ef7f8afd6d89d64") (:url . "https://github.com/alphapapa/outorg"))]) (outlined-elisp-mode . [(20131108 327) nil "outline-minor-mode settings for emacs lisp" single ((:commit . "c16cb02b540448919ad148f2be6a41523ee5489c") (:url . "http://hins11.yu-yake.com/"))]) (outline-toc . [(20170730 430) nil "Sidebar showing a \"table of contents\"." single ((:commit . "31f04bea19cfcfb01a94d1fd2b72391cb02b7463") (:url . "https://github.com/abingham/outline-toc.el") (:keywords "convenience" "outlines"))]) (outline-magic . [(20150209 1426) nil "outline mode extensions for Emacs" single ((:commit . "5689436cd67edc86066e51be77fa4e1fe21de507") (:keywords "outlines"))]) (otama . [(20160404 332) nil "Org-table Manipulator" single ((:commit . "c114fd8006762f891bc120a7c0ea213872e7ab31") (:keywords "database" "org-mode"))]) (osx-trash . [(20160520 600) ((emacs (24 1))) "System trash for OS X" tar ((:commit . "0f1dc052d0a750b8c75f14530a4897f5d4324b4e") (:url . "https://github.com/lunaryorn/osx-trash.el") (:keywords "files" "convenience" "tools" "unix"))]) (osx-pseudo-daemon . [(20170722 837) nil "Daemon mode that plays nice with OSX." tar ((:commit . "4d10e327cd8ee5bb7f006d68744be21c7097c1fc") (:url . "https://github.com/DarwinAwardWinner/osx-pseudo-daemon") (:keywords "convenience" "osx"))]) (osx-plist . [(20101130 448) nil "Apple plist file parser" single ((:commit . "5e6de2622fdfe552d4902904f05ea03bc5a6ebd0") (:keywords "convenience"))]) (osx-org-clock-menubar . [(20150205 1311) nil "simple menubar integration for org-clock" tar ((:commit . "9964d2a97cc2fb6570dc4116da44f73bd8eb7cb3") (:url . "https://github.com/jordonbiondo/osx-org-clock-menubar") (:keywords "org" "osx"))]) (osx-location . [(20150613 217) nil "Watch and respond to changes in geographical location on OS X" tar ((:commit . "8bb3a94cc9f04b922d2d730fe08596cc6ee12bf2"))]) (osx-lib . [(20160919 1700) ((emacs (24 4))) "Basic function for Apple/OSX." single ((:commit . "fdbbb41e07ba64d6a09b54bd142a7c7b83bfd09f") (:keywords "apple" "applescript" "osx" "finder" "emacs" "elisp" "vpn" "speech"))]) (osx-dictionary . [(20171026 34) ((cl-lib (0 5))) "Interface for OSX Dictionary.app" tar ((:commit . "b16630ecf69f87ac873486d8b9c8c03e6c9ea7fa") (:url . "https://github.com/xuchunyang/osx-dictionary.el") (:keywords "mac" "dictionary"))]) (osx-clipboard . [(20141012 17) nil "Use the OS X clipboard from terminal Emacs" single ((:commit . "e46dd31327a3f92f77b013b4c9b1e5fdd0e5c73d") (:url . "https://github.com/joddie/osx-clipboard-mode"))]) (osx-browse . [(20140508 1341) ((string-utils (0 3 2)) (browse-url-dwim (0 6 6))) "Web browsing helpers for OS X" single ((:commit . "44ded7cc3a7ee426c1c3257fae534c121f7e752e") (:url . "http://github.com/rolandwalker/osx-browse") (:keywords "hypermedia" "external"))]) (origami . [(20170129 805) ((s (1 9 0)) (dash (2 5 0)) (emacs (24))) "Flexible text folding" tar ((:commit . "5630536d04613476e13b413fe05fd0bbff4107ca") (:url . "https://github.com/gregsexton/origami.el") (:keywords "folding"))]) (orgtbl-show-header . [(20141023 137) nil "Show the header of the current column in the minibuffer" single ((:commit . "112d54a44682f065318ed0c9c89a8f5b8907342a"))]) (orgtbl-join . [(20150121 1446) ((cl-lib (0 5))) "join columns from another table" tar ((:commit . "ccf5e0d96e053dc289da39a048715fcf36835ff2") (:keywords "org" "table" "join" "filtering"))]) (orgtbl-ascii-plot . [(20151215 1351) nil "ascii-art bar plots in org-mode tables" single ((:commit . "cd91f6ae26a7402e192a1f4fd6248f5797edf19e") (:keywords "org" "table" "ascii" "plot"))]) (orgtbl-aggregate . [(20160421 726) nil "Create an aggregated Org table from another one" tar ((:commit . "a33a02ba70639cadaef5f6ea028c2fe73f76cf14") (:keywords "org" "table" "aggregation" "filtering"))]) (orgnav . [(20170608 1013) ((helm (2 7 0)) (s (1 11 0)) (dash (1 11 0)) (emacs (24))) "Org tree navigation using helm" tar ((:commit . "9e2cac9c1a67af5f0080e60022e821bf7b70312d") (:url . "http://github.com/facetframer/orgnav") (:keywords "convenience" "outlines"))]) (orglue . [(20150503 114) ((org (8 1)) (epic (0 2)) (org-mac-link (1 2))) "more functionality to org-mode." tar ((:commit . "1274652d527cb6afe45d1acb79f41be5a2886ee4") (:keywords "org"))]) (orglink . [(20161104 1800) ((emacs (24 3)) (dash (2 12 1)) (org (8 3))) "use Org Mode links in other modes" single ((:commit . "50debcf3508d2252bdce35c8822af1b3a81fd2dd") (:url . "https://github.com/tarsius/orglink") (:keywords "hypertext"))]) (orgit . [(20170731 1003) ((emacs (24 4)) (dash (2 13 0)) (magit (2 10 0)) (org (8 3 3))) "support for Org links to Magit buffers" single ((:commit . "022687eb02f0bf0d0151d0ad917b165bfef2d663") (:url . "https://github.com/magit/orgit"))]) (orgbox . [(20140528 1826) ((org (8 0)) (cl-lib (0 5))) "Mailbox-like task scheduling Org." single ((:commit . "72373b09768cc2200d143af38e25a0c082e8375d") (:url . "https://github.com/yasuhito/orgbox") (:keywords "org"))]) (organic-green-theme . [(20170720 1111) nil "Low-contrast green color theme." single ((:commit . "eea6b77b7ee26310fd6741b9affc3f2c43be2820"))]) (org2web . [(20171005 1617) ((cl-lib (1 0)) (ht (1 5)) (mustache (0 22)) (htmlize (1 47)) (org (8 0)) (dash (2 0 0)) (el2org (0 10)) (simple-httpd (0 1))) "A static site generator based on org mode." tar ((:commit . "5243b399927a4c474bb3b8d1c8a00799df1f27d7"))]) (org2jekyll . [(20170225 115) ((dash-functional (2 11 0)) (s (1 9 0)) (deferred (0 3 1)) (kv (0 0 19))) "Minor mode to publish org-mode post to jekyll without specific yaml" tar ((:commit . "52a19a5d372116262b9d613f4ec8490a3b49e329") (:url . "https://github.com/ardumont/org2jekyll") (:keywords "org-mode" "jekyll" "blog" "publish"))]) (org2issue . [(20160426 1818) ((org (8 0)) (emacs (24 4)) (ox-gfm (0 1)) (gh (0 1)) (s (20160405 920))) "export org to github issue" single ((:commit . "0f7f13463e389f2d8d7d830a928042d0cf1c71eb") (:url . "https://github.com/lujun9972/org2issue") (:keywords "convenience" "github" "org"))]) (org2elcomment . [(20170324 245) ((org (8 3 4))) "Convert Org file to Elisp comments" single ((:commit . "c88a75d9587c484ead18f7adf08592b09c1cceb0") (:keywords "extensions"))]) (org2ctex . [(20171016 2343) ((emacs (24 4))) "Export org to ctex (a latex macro for Chinese)" single ((:commit . "1b74aa9cf45de224ffd6aa9b93f0debddc2b48bc") (:url . "https://github.com/tumashu/org2ctex"))]) (org2blog . [(20170826 1843) ((org (8 3)) (xml-rpc (1 6 12)) (metaweblog (1 0 0)) (htmlize (1 51))) "Blog from Org mode to wordpress" tar ((:commit . "62a6400746847f246e12493271f0bb52f7465a92"))]) (org-wunderlist . [(20150817 1913) ((request-deferred (0 2 0)) (alert (1 1)) (emacs (24)) (cl-lib (0 5)) (org (8 2 4)) (s (1 9 0))) "Org sync with Wunderlist" single ((:commit . "f7f1ca73661356b9fa072efd73431592ff1182e1") (:url . "https://github.com/myuhe/org-wunderlist.el") (:keywords "convenience"))]) (org-web-tools . [(20171014 804) ((emacs (25 1)) (org (9 0)) (dash (2 12)) (s (1 10 0))) "Display and capture web content with Org-mode" single ((:commit . "e9583248e838806271643770102e786671fabaf5") (:url . "http://github.com/alphapapa/org-web-tools") (:keywords "hypermedia" "outlines" "org" "web"))]) (org-wc . [(20170727 1911) nil "Count words in org mode trees." single ((:commit . "d294ad7117c150445e6166fc0d88c14a8386f34e"))]) (org-vcard . [(20170929 410) nil "org-mode support for vCard export and import." tar ((:commit . "dbe266b79df4fb31f1766010322bf4e383ce1c03") (:url . "https://github.com/flexibeast/org-vcard") (:keywords "outlines" "org" "vcard"))]) (org-trello . [(20170225 1247) ((request-deferred (0 2 0)) (deferred (0 4 0)) (s (1 11 0)) (dash-functional (2 12 1)) (dash (2 12 1))) "Minor mode to synchronize org-mode buffer and trello board" tar ((:commit . "d7885038d7e160a64f561f8abc942206d582faa6"))]) (org-tree-slide . [(20171129 2238) nil "A presentation tool for org-mode" single ((:commit . "dff8f1a4a64c8dd0a1fde0b0131e2fe186747134") (:keywords "org-mode" "presentation" "narrowing"))]) (org-transform-tree-table . [(20150110 633) ((dash (2 10 0)) (s (1 3 0))) "Transform org-mode tree with properties to a table, and the other way around" single ((:commit . "0a9bf07f01bc5fc3b349aff64e83999a8de83b52") (:url . "https://github.com/jplindstrom/emacs-org-transform-tree-table") (:keywords "org-mode" "table" "org-table" "tree" "csv" "convert"))]) (org-tracktable . [(20161118 529) ((emacs (24)) (cl-lib (0 5))) "Track your writing progress in an org-table" single ((:commit . "8e0e60a582a034bd66d5efb72d513140b7d4d90a") (:url . "https://github.com/tty-tourist/org-tracktable") (:keywords "org" "writing"))]) (org-toodledo . [(20150301 313) ((request-deferred (0 2 0)) (emacs (24)) (cl-lib (0 5))) "Toodledo integration for Emacs Org mode" tar ((:commit . "2c91a92bd07ae4a546771b018a6faa0e06399968") (:keywords "outlines" "data"))]) (org-time-budgets . [(20151111 1) ((alert (0 5 10)) (cl-lib (0 5))) "Define time budgets and display clocked time." single ((:commit . "baa1ce6333157fed3b3799a80e6cf8c73c9e2c18"))]) (org-themis . [(20160121 2004) ((cl-lib (0 4))) "Experimental project management mode for org-mode" single ((:commit . "78aadbbe22b1993be5c4accd0d3f91a4e85c9a3c") (:url . "http://github.com/zellio/org-themis") (:keywords "org-mode" "elisp" "project"))]) (org-tfl . [(20170923 518) ((org (0 16 2)) (cl-lib (0 5)) (emacs (24 1))) "Transport for London meets Orgmode" tar ((:commit . "f0d7d39106a1de5457f5160cddd98ab892b61066") (:url . "https://github.com/storax/org-tfl") (:keywords "org" "tfl"))]) (org-table-sticky-header . [(20170408 1814) ((org (8 2 10)) (emacs (24 4))) "Sticky header for org-mode tables" single ((:commit . "93dc69efc00ac9fd3cc2ece5100f51df33ec7d8b") (:keywords "extensions"))]) (org-table-comment . [(20120209 1051) nil "Org table comment modes." single ((:commit . "33b9966c33ecbc3e27cca67c2f2cdea04364d74e") (:url . "http://github.com/mlf176f2/org-table-comment.el") (:keywords "org-mode" "orgtbl"))]) (org-sync-snippets . [(20170824 1128) ((org (8 3 5)) (emacs (24 3)) (f (0 17 3))) "Export snippets to org-mode and vice versa" single ((:commit . "0f264a032d371d7dbb4a7cbaf0ea2f91b5a629ca") (:url . "https://github.com/abrochard/org-sync-snippets") (:keywords "snippet" "org-mode" "yasnippet" "tools"))]) (org-sync . [(20150817 754) ((cl-lib (0 5)) (org (8 2)) (emacs (24))) "Synchronize Org documents with External Issue Trackers" tar ((:commit . "7f02167ef805cd76def274be4d3bd0c6e41d9af8") (:url . "https://github.com/arbox/org-sync") (:keywords "org" "synchronization" "issue tracking" "github" "redmine"))]) (org-super-agenda . [(20170904 1516) ((emacs (25 1)) (s (1 10 0)) (dash (2 13)) (org (9 0)) (ht (2 2))) "Supercharge your agenda" single ((:commit . "d06bfb021bee575ce750b36ee9bfc2d8fc8fd635") (:url . "http://github.com/alphapapa/org-super-agenda") (:keywords "hypermedia" "outlines" "org" "agenda"))]) (org-sticky-header . [(20170422 2135) ((emacs (24 4)) (org (8 3 5))) "Show off-screen Org heading at top of window" single ((:commit . "aae8dbc7f3b33c4dd35dc38d83791d7c23757060") (:url . "http://github.com/alphapapa/org-sticky-header") (:keywords "hypermedia" "outlines" "org"))]) (org-static-blog . [(20170706 646) ((emacs (24 3))) "a simple org-mode based static blog generator" single ((:commit . "9dea733006ae53902e6ec91fb11ff058229afe84") (:url . "https://github.com/bastibe/org-static-blog"))]) (org-seek . [(20161216 2102) ((emacs (24 3)) (ag (0 48))) "Searching Org-mode files with search tools." single ((:commit . "1f51e6634e3b9a6a29d335d0d14370a6ffef2265") (:url . "https://github.com/stardiviner/org-seek.el") (:keywords "org" "search" "ag" "pt"))]) (org-rtm . [(20160214 436) ((rtm (0 1))) "Simple import/export from rememberthemilk to org-mode" single ((:commit . "adc42ad1fbe92ab447ccc9553780f4456f2508d2") (:url . "https://github.com/pmiddend/org-rtm") (:keywords "outlines" "data"))]) (org-review . [(20160906 2237) nil "schedule reviews for Org entries" single ((:commit . "058e75b7f28d2ad2390290fe17a63d98ef5ab763") (:url . "https://github.com/brabalan/org-review") (:keywords "org" "review"))]) (org-repo-todo . [(20160307 1029) nil "Simple repository todo management with org-mode" single ((:commit . "b164bacefcd3c55dd40cd1a9e91ffefd315b400d") (:url . "https://github.com/waymondo/org-repo-todo") (:keywords "convenience"))]) (org-ref . [(20171127 2044) ((dash (2 11 0)) (helm (1 5 5)) (helm-bibtex (2 0 0)) (ivy (0 8 0)) (hydra (0 13 2)) (key-chord (0)) (s (1 10 0)) (f (0 18 0)) (emacs (24 4)) (pdf-tools (0 7))) "citations, cross-references and bibliographies in org-mode" tar ((:commit . "459484e80a0c3fefbfad922b0afb97c8e0d93ce2") (:url . "https://github.com/jkitchin/org-ref") (:keywords "org-mode" "cite" "ref" "label"))]) (org-redmine . [(20160711 414) nil "Redmine tools using Emacs OrgMode" single ((:commit . "e77d013bc3784947c46a5c53f03cd7d3c68552fc") (:url . "https://github.com/gongo/org-redmine") (:keywords "redmine" "org"))]) (org-recent-headings . [(20170907 2129) ((emacs (25 1)) (org (9 0 5)) (dash (2 13 0)) (frecency (0 1))) "Jump to recently used Org headings" single ((:commit . "a09c2670c400c7a4fbbf0ac05d2d9226aa10e8f4") (:url . "http://github.com/alphapapa/org-recent-headings") (:keywords "hypermedia" "outlines" "org"))]) (org-readme . [(20151204 417) ((http-post-simple (1 0)) (yaoddmuse (0 1 1)) (header2 (21 0)) (lib-requires (21 0)) (cl-lib (0 5))) "Integrates Readme.org and Commentary/Change-logs." tar ((:commit . "4cb9f768d282a2835b4510b6504ff9ede487007d") (:url . "https://github.com/mlf176f2/org-readme") (:keywords "header2" "readme.org" "emacswiki" "git"))]) (org-randomnote . [(20171117 848) ((f (0 19 0)) (dash (2 12 0))) "Find a random note in your Org-Mode files" single ((:commit . "552742f0574171629824c9627b4cc59ce3d73d74") (:url . "http://github.com/mwfogleman/org-randomnote"))]) (org-random-todo . [(20170404 318) ((emacs (24 3)) (alert (1 2))) "notify of random TODO's" single ((:commit . "0736e8508b19fe9c3a3911f357d30e3e498e3e3b") (:keywords "org" "todo" "notification"))]) (org-protocol-jekyll . [(20170328 939) ((cl-lib (0 5))) "Jekyll's handler for org-protocol" single ((:commit . "dec064a42d6dfe81dfde7ba59ece5ca103ac6334"))]) (org-projectile-helm . [(20170819 826) ((org-projectile (1 0 0)) (helm (2 3 1)) (emacs (25))) "helm functions for org-projectile" single ((:commit . "8cec702f602b18da90b3d6207888a887b8e07750") (:url . "https://github.com/IvanMalison/org-projectile") (:keywords "org" "projectile" "todo" "helm" "outlines"))]) (org-projectile . [(20171022 950) ((projectile (0 11 0)) (dash (2 10 0)) (emacs (24)) (s (1 9 0)) (org-category-capture (0 0 0))) "Repository todo management for org-mode" single ((:commit . "8cec702f602b18da90b3d6207888a887b8e07750") (:url . "https://github.com/IvanMalison/org-projectile") (:keywords "org-mode" "projectile" "todo" "tools" "outlines"))]) (org-preview-html . [(20160913 526) ((org (8 0)) (emacs (24 4))) "automatically use eww to preview the current org file on save" single ((:commit . "2b6afbaf1fcf781bcd53074ee62895f15f5282e5") (:url . "https://github.com/lujun9972/org-preview-html") (:keywords "convenience" "eww" "org"))]) (org-present . [(20141109 1756) ((org (7))) "Minimalist presentation minor-mode for Emacs org-mode." single ((:commit . "1b519cfd5abf44bed307cac576dc9fd61eb2c35f") (:url . "https://github.com/rlister/org-present"))]) (org-pomodoro . [(20171108 1314) ((alert (0 5 10)) (cl-lib (0 5))) "Pomodoro implementation for org-mode." tar ((:commit . "3deed1c26dcbda4d5231b9085ddf68e302b0f9dc") (:url . "https://github.com/lolownia/org-pomodoro"))]) (org-pdfview . [(20161130 1053) ((org (6 1)) (pdf-tools (0 40))) "Support for links to documents in pdfview mode" single ((:commit . "9de96eef6f187a10cd910e3bc3eb274d38856819") (:keywords "org" "pdf-view" "pdf-tools"))]) (org-password-manager . [(20170701 919) ((org (8 2 10)) (s (1 9 0)) (dash (2 13 0))) "Password manager for Org Mode." single ((:commit . "3e7058586b2ab96b12e9b1195b1db1e66e704f20") (:url . "https://git.leafac.com/org-password-manager") (:keywords "password"))]) (org-parser . [(20171002 2136) ((emacs (25 1)) (dash (2 12 0)) (ht (2 1))) "parse org files into structured datatypes." single ((:url . "https://bitbucket.org/zck/org-parser.el") (:keywords "files" "outlines" "tools"))]) (org-page . [(20170806 1924) ((ht (1 5)) (simple-httpd (1 4 6)) (mustache (0 22)) (htmlize (1 47)) (org (8 0)) (dash (2 0 0)) (cl-lib (0 5)) (git (0 1 1))) "a static site generator based on org mode" tar ((:commit . "50430ababf73a2d090881a952e9770badaf7478b"))]) (org-outlook . [(20160705 638) nil "Outlook org" tar ((:commit . "ec32d8d9d8ffd17e6de4de0b52fc3f5ad9b4cc0d") (:url . "https://github.com/mlf176f2/org-outlook.el") (:keywords "org-outlook"))]) (org-onenote . [(20171007 2200) ((oauth2 (0 11)) (request (0 2 0)) (org (8 2 10))) "export org-mode document to onenote." single ((:commit . "5ce5cf4edb143180e0b185ac26826d39ae5bc929") (:url . "https://github.com/ifree/org-onenote") (:keywords "tools" "docs" "org-mode" "onenote"))]) (org-octopress . [(20170820 2115) ((org (9 0)) (orglue (0 1)) (ctable (0 1 1))) "Compose octopress articles using org-mode." tar ((:commit . "38598ef98d04076a8eb78d549907ddfde8d3a652") (:keywords "org" "jekyll" "octopress" "blog"))]) (org-notebook . [(20170321 2152) ((emacs (24)) (org (8)) (cl-lib (0 5))) "Ease the use of org-mode as a notebook" single ((:commit . "d90c4aeca2442161e6dd89de175561af85aace03") (:keywords "convenience" "tools"))]) (org-multiple-keymap . [(20150328 1806) ((org (8 2 4)) (emacs (24)) (cl-lib (0 5))) "Set keymap to elements, such as timestamp and priority." single ((:commit . "8ebc532df7f0dd6e6c3aa7c380a51d4166c668e8") (:url . "https://github.com/myuhe/org-multiple-keymap.el") (:keywords "convenience" "org-mode"))]) (org-mru-clock . [(20171101 506) ((emacs (24 3))) "load most recently used clocks into history" single ((:commit . "9af184d3c8a15432516113be481f6882ef67cb3e") (:keywords "convenience" "calendar"))]) (org-mobile-sync . [(20160629 1307) ((emacs (24 3 50)) (org (8 0))) "automatically sync org-mobile on changes" single ((:commit . "442bcfe93f4f2cab02e2dd2c3634fbffcda9a17d") (:url . "https://github.com/steckerhalter/org-mobile-sync") (:keywords "org-mode" "org" "mobile" "sync" "todo"))]) (org-mind-map . [(20171206 645) ((emacs (24)) (dash (1 8 0)) (org (8 2 10))) "Creates a directed graph from org-mode files" single ((:commit . "d7854dbd30d565d3087d2810d6a77cc882988eae") (:url . "https://github.com/theodorewiles/org-mind-map/org-mind-map.el") (:keywords "orgmode" "extensions" "graphviz" "dot"))]) (org-mime . [(20171105 1440) ((emacs (24 3)) (cl-lib (0 5))) "org html export for text/html MIME emails" single ((:commit . "64a3f56651369b2a8b0a601abea1cf1216db2ded") (:url . "http://github.com/org-mime/org-mime") (:keywords "mime" "mail" "email" "html"))]) (org-linkany . [(20160206 2011) ((log4e (0 2 0)) (yaxception (0 1))) "Insert link using anything.el/helm.el on org-mode" single ((:commit . "8cfe2f1a46e6654a79f56505349d1396263cecb3") (:url . "https://github.com/aki2o/org-linkany") (:keywords "org" "completion"))]) (org-link-travis . [(20140405 1627) ((org (7))) "Insert/Export the link of Travis CI on org-mode" single ((:commit . "596615ad8373d9090bd4138da683524f0ad0bda5") (:url . "https://github.com/aki2o/org-link-travis") (:keywords "org"))]) (org-link-minor-mode . [(20170805 1152) ((org (8))) "Enable org-mode links in non-org modes" single ((:commit . "7b92df60f3fee7f609d649d80ef243b45771ebea") (:url . "https://github.com/seanohalpin/org-link-minor-mode"))]) (org-journal . [(20171113 53) nil "a simple org-mode based journaling mode" single ((:commit . "44a52a20a154d5c1a78684ef720972c4fe36b64a") (:url . "http://github.com/bastibe/org-journal"))]) (org-jira . [(20171126 1833) ((emacs (24 5)) (cl-lib (0 5)) (request (0 2 0))) "Syncing between Jira and Org-mode." tar ((:commit . "d125ade5069e0840e204142ca3d4405cac2593f7") (:url . "https://github.com/ahungry/org-jira") (:keywords "ahungry" "jira" "org" "bug" "tracker"))]) (org-iv . [(20171001 322) ((impatient-mode (1 0 0)) (org (8 0)) (cl-lib (0 5))) "a tool used to view html (in browser) generated by org-file once the org-file changes" tar ((:commit . "7f2bb1b32647655fd9d6684f6f09dcc66b61b0cd"))]) (org-if . [(20150920 813) nil "Interactive Fiction Authoring System for Org-Mode." tar ((:commit . "fab602cc1bbee7a4e99c0083e129219d3f9ed2e8"))]) (org-grep . [(20151202 429) ((cl-lib (0 5))) "Kind of M-x rgrep adapted for Org mode." single ((:commit . "5bdd04c0f53b8a3d656f36ea17bba3df7f0cb684") (:url . "https://github.com/pinard/org-grep"))]) (org-gnome . [(20150614 757) ((alert (1 2)) (telepathy (0 1)) (gnome-calendar (0 1))) "Orgmode integration with the GNOME desktop" single ((:commit . "122e14cf6f8104150a65246a9a7c10e1d7939862") (:keywords "org" "gnome"))]) (org-gcal . [(20170420 1401) ((request-deferred (0 2 0)) (alert (1 1)) (emacs (24)) (cl-lib (0 5)) (org (8 2 4))) "Org sync with Google Calendar" single ((:commit . "bdc704842da000a1cffb8f155ef3887c5e1d0446") (:url . "https://github.com/myuhe/org-gcal.el") (:keywords "convenience"))]) (org-fstree . [(20090723 819) nil "include a filesystem subtree into an org file" single ((:commit . "24e305c6443be9f45198185772eecfddc390a9ce") (:url . "http://www.burtzlaff.de/org-fstree/org-fstree.el") (:keywords "org-mode" "filesystem" "tree"))]) (org-evil . [(20171102 556) ((dash (2 13 0)) (evil (0)) (monitor (0)) (org (0))) "Evil extensions for Org." tar ((:commit . "90a82ec72fb688ef98d1343c02dc3c6da9e4bbee") (:url . "https://github.com/guiltydolphin/org-evil") (:keywords "convenience" "evil" "org"))]) (org-elisp-help . [(20161121 1655) ((cl-lib (0 5)) (org (9 0))) "org links to emacs-lisp documentation" single ((:commit . "3e33ab1a2933dd7f2782ef91d667a37f12d633ab") (:url . "https://github.com/tarsius/org-elisp-help") (:keywords "org" "remember" "lisp"))]) (org-ehtml . [(20150506 1658) ((web-server (20140109 2200)) (emacs (24 3))) "Export Org-mode files as editable web pages" tar ((:commit . "9df85de1a0fe1e7b2d6c000777c1a0c0217f92d0"))]) (org-edit-latex . [(20170908 822) ((emacs (24 4)) (auctex (11 90))) "Edit embedded LaTeX in a dedicated buffer" single ((:commit . "1f228310ef2f3f2959a527f6d99e42ce977384c8") (:url . "https://github.com/et2010/org-edit-latex") (:keywords "org" "latex"))]) (org-easy-img-insert . [(20160915 1308) ((emacs (24 4))) "An easier way to add images from the web in org mode" single ((:commit . "9f8aaa7f68ff1f0d8d7b1e9b618abb15002f971e") (:url . "https://github.com/tashrifsanil/org-easy-img-insert") (:keywords "convenience" "hypermedia" "files"))]) (org-dropbox . [(20150113 2109) ((dash (2 2)) (names (20150000)) (emacs (24))) "move Dropbox notes from phone into org-mode datetree" single ((:commit . "75dab6d6f0438a7a8a18ccf3a5d55f50bf531f6e") (:url . "https://github.com/heikkil/org-dropbox") (:keywords "dropbox" "android" "notes" "org-mode"))]) (org-drill-table . [(20170408 1205) ((s (1 7 0)) (dash (2 2 0)) (cl-lib (0 3)) (org-plus-contrib (8 2)) (emacs (24 1))) "Generate drill cards from org tables" single ((:commit . "5662511e98697e086149a223a64f9f01fabf7330"))]) (org-dp . [(20160326 603) ((cl-lib (0 5))) "Declarative Local Programming with Org Elements" tar ((:commit . "d9a18e8fb04c94d5d35236b37ee7db0afcb7d580") (:url . "https://github.com/tj64/org-dp"))]) (org-download . [(20171116 1045) ((async (1 2))) "Image drag-and-drop for Emacs org-mode" single ((:commit . "d0e6793497d57a90543d711310ad26fae7c9bcba") (:url . "https://github.com/abo-abo/org-download") (:keywords "images" "screenshots" "download"))]) (org-dotemacs . [(20151119 1022) ((org (7 9 3)) (cl-lib (1 0))) "Store your emacs config as an org file, and choose which bits to load." single ((:commit . "99a066508fedf8c80a3bfef08e015e612499d417") (:url . "https://github.com/vapniks/org-dotemacs") (:keywords "local"))]) (org-doing . [(20161017 920) nil "Keep track of what you're doing" tar ((:commit . "07ddbfc238cba31e4990c9b52e9a2757b39111da") (:url . "https://github.com/omouse/org-doing") (:keywords "tools" "org"))]) (org-dashboard . [(20171203 210) ((cl-lib (0 5))) "Visually summarize progress in org files" single ((:commit . "716a557f9f0dcb8e79fcc5775ec1f6f43d338a11") (:url . "http://github.com/bard/org-dashboard") (:keywords "outlines" "calendar"))]) (org-cua-dwim . [(20120202 2134) nil "Org-mode and Cua mode compatibility layer" single ((:commit . "a55d6c7009fc0b22f1110c07de629acc955c85e4") (:keywords "org-mode" "cua-mode"))]) (org-context . [(20170107 537) nil "Contextual capture and agenda commands for Org-mode" single ((:commit . "a3b4a4ce6d15e3c2d45eb5dcb78bea81913f3e21") (:url . "https://github.com/thisirs/org-context") (:keywords "org" "capture" "agenda" "convenience"))]) (org-commentary . [(20160801 2337) ((dash (2 0)) (emacs (24 4)) (org (8 0))) "generate or update conventional library headers using Org mode files" tar ((:commit . "821ccb994811359c42f4e3d459e0e88849d42b75") (:url . "https://github.com/smaximov/org-commentary") (:keywords "convenience" "docs" "tools"))]) (org-clock-today . [(20161014 220) ((emacs (25))) "Show the total clocked time of the current day in the mode line" single ((:commit . "02b8fd541a01040405a9a1400c46dcb68b7c2a3a"))]) (org-clock-csv . [(20170904 1745) ((org (8 3)) (s (1 0))) "Export `org-mode' clock entries to CSV format." single ((:commit . "20ab6ee4395bedc0a7b8dfaf7b51f2c63dc8d2c6") (:url . "https://github.com/atheriel/org-clock-csv") (:keywords "calendar" "data" "org"))]) (org-clock-convenience . [(20160830 1156) ((cl-lib (0 5)) (org (8)) (emacs (24 3))) "convenience functions for org time tracking" single ((:commit . "2d3fab0991ef7fa8d94c46a63a66abd289c79d9e") (:url . "https://github.com/dfeich/org-clock-convenience") (:keywords "org"))]) (org-cliplink . [(20170724 413) ((emacs (24 4))) "insert org-mode links from the clipboard" tar ((:commit . "16c2cad9c3bafb71fea70f70c1e584307a6dee01") (:url . "http://github.com/rexim/org-cliplink"))]) (org-category-capture . [(20170819 1047) ((org (9 0 0)) (emacs (24))) "Contextualy capture of org-mode TODOs." single ((:commit . "8cec702f602b18da90b3d6207888a887b8e07750") (:url . "https://github.com/IvanMalison/org-projectile") (:keywords "org-mode" "todo" "tools" "outlines"))]) (org-capture-pop-frame . [(20160518 308) ((emacs (24 4))) "Run org-capture in a new pop frame" single ((:commit . "b16fd712de62cf0d1f9befd03be6ab5983cb3301") (:url . "https://github.com/tumashu/org-capture-pop-frame.git"))]) (org-caldav . [(20170615 724) ((org (7))) "Sync org files with external calendar through CalDAV" single ((:commit . "07e6ccda6756754a115d567f2ad3a760514b731d") (:keywords "calendar" "caldav"))]) (org-bullets . [(20171127 526) nil "Show bullets in org-mode as UTF-8 characters" single ((:commit . "5b096148bc37306f73b27da838dca751d5b1936f") (:url . "https://github.com/emacsorphanage/org-bullets"))]) (org-brain . [(20171116 2353) ((emacs (25)) (org (9))) "Org-mode concept mapping" single ((:commit . "e2cadeeb83060437d2b002215680f399ca3281d7") (:url . "http://github.com/Kungsgeten/org-brain") (:keywords "outlines" "hypermedia"))]) (org-bookmark-heading . [(20170510 1008) ((emacs (24 4))) "Emacs bookmark support for org-mode" single ((:commit . "c535fd9b430d2cc50b54a1ab550d64e20ebd5bd6") (:url . "http://github.com/alphapapa/org-bookmark-heading") (:keywords "hypermedia" "outlines"))]) (org-board . [(20170507 858) nil "bookmarking and web archival system for Org mode." single ((:commit . "2978aee8981a2ff5c09104b2d8b055957b277078") (:url . "https://github.com/scallywag/org-board") (:keywords "org" "bookmarks" "archives"))]) (org-beautify-theme . [(20170908 1518) nil "A sub-theme to make org-mode more beautiful." single ((:commit . "df6a1114fda313e1689363e196c8284fbe2a2738") (:keywords "org" "theme"))]) (org-babel-eval-in-repl . [(20170511 514) ((eval-in-repl (0 9 2)) (matlab-mode (3 3 6)) (ess (16 10)) (emacs (24))) "Eval org-mode babel code blocks in various REPLs." tar ((:commit . "bfa72c582ac1531ad42aba23e2b1267ab68e31f6") (:url . "https://github.com/diadochos/org-babel-eval-in-repl") (:keywords "literate programming" "reproducible research" "async execution"))]) (org-autolist . [(20170924 1201) nil "Improved list management in org-mode" single ((:commit . "c82d1e83e982b5f0c106b8800e5b0cfd5f73fdc1") (:url . "https://github.com/calvinwyoung/org-autolist") (:keywords "lists" "checklists" "org-mode"))]) (org-attach-screenshot . [(20160928 258) nil "screenshots integrated with org attachment dirs" single ((:commit . "1aabac1a2885d31a3d862cbeb31a635c3d68b9ab") (:url . "https://github.com/dfeich/org-screenshot") (:keywords "org"))]) (org-alert . [(20170724 2116) ((s (1 10 0)) (dash (2 12 0)) (alert (1 2))) "Notify org deadlines via notify-send" single ((:commit . "3b7417ac12f2710e88f8dff538670621064ef8bc") (:url . "https://github.com/groksteve/org-alert") (:keywords "org" "org-mode" "notify" "notifications"))]) (org-agenda-property . [(20140626 1416) ((emacs (24 2))) "Display org properties in the agenda buffer." single ((:commit . "3b469f3e93de0036547f3631cd0366d53f7584c8") (:url . "http://github.com/Bruce-Connor/org-agenda-property") (:keywords "calendar"))]) (org-ac . [(20170401 607) ((auto-complete-pcmp (0 0 1)) (log4e (0 2 0)) (yaxception (0 1))) "Some auto-complete sources for org-mode" single ((:commit . "41e3ef8e4039619d0370c23c66730b3b2e9e32ed") (:url . "https://github.com/aki2o/org-ac") (:keywords "org" "completion"))]) (orca . [(20171030 1216) ((emacs (24 3))) "Org Capture" single ((:commit . "5e1744afb793dda744ddc6fe342144b5e90bea08") (:url . "https://github.com/abo-abo/orca") (:keywords "org" "convenience"))]) (operate-on-number . [(20150706 2323) nil "Operate on number at point with arithmetic functions" single ((:commit . "ceb3be565a29326c1098244fac0c50606723a56e") (:url . "https://github.com/knu/operate-on-number.el") (:keywords "editing"))]) (openwith . [(20120531 1436) nil "Open files with external programs" single ((:url . "https://bitbucket.org/jpkotta/openwith") (:keywords "files" "processes"))]) (openstack-cgit-browse-file . [(20130819 227) nil "Browse the current file in OpenStack cgit" single ((:commit . "244219288b9aef41155044697bb114b7af83ab8f") (:url . "https://github.com/chmouel/openstack-cgit-browse-file") (:keywords "convenience" "vc" "git" "cgit" "gerrit" "openstack"))]) (opensource . [(20160926 916) ((s (1 11 0)) (dash (2 12 1)) (pkg-info (0 6 0)) (request (0 2 0))) "Client for Opensource API" tar ((:commit . "13499b7ae602c735e40c1c494bda6252a2f1c98f") (:url . "https://github.com/OpenSourceOrg/el-opensourceorg") (:keywords "opensource"))]) (opener . [(20161207 1010) ((request (0 2 0)) (emacs (24)) (cl-lib (0 5))) "opening urls as buffers" tar ((:commit . "c384f67278046fdcd220275fdd212ab85672cbeb") (:url . "https://github.com/0robustus1/opener.el") (:keywords "url" "http" "files"))]) (opencl-mode . [(20170816 549) nil "Syntax coloring for opencl kernels" single ((:commit . "6e69434d0fa6e11a542acad370611bba18d3bc5c") (:url . "https://github.com/salmanebah/opencl-mode") (:keywords "c" "opencl"))]) (opencc . [(20170722 116) ((emacs (24 4))) "中文简繁转换 <-> 中文簡繁轉換 (Convert Chinese with OpenCC)" single ((:commit . "8c539f72669ba9a99d8b5198db5ea930897ad1b9") (:url . "https://github.com/xuchunyang/emacs-opencc") (:keywords "chinese"))]) (open-junk-file . [(20161210 314) nil "Open a junk (memo) file to try-and-error" single ((:commit . "558bec7372b0fed4c4cb6074ab906535fae615bd") (:url . "http://www.emacswiki.org/cgi-bin/wiki/download/open-junk-file.el") (:keywords "convenience" "tools"))]) (open-in-msvs . [(20170123 1428) nil "Open current file:line:column in Microsoft Visual Studio" tar ((:commit . "e0d071c83188ad5db8f3297d6ce784b4ed554a04") (:url . "https://github.com/evgeny-panasyuk/open-in-msvs") (:keywords "convenience" "usability" "integration" "visual studio" "msvs" "ide"))]) (opam . [(20150719 520) ((emacs (24 1))) "OPAM tools" single ((:commit . "4d589de5765728f56af7078fae328b6792de8600") (:url . "https://github.com/lunaryorn/opam.el") (:keywords "convenience"))]) (oneonone . [(20170416 858) ((hexrgb (0))) "Frame configuration that uses one frame per window." single ((:url . "https://www.emacswiki.org/emacs/download/oneonone.el") (:keywords "local" "frames"))]) (one-time-pad-encrypt . [(20160329 813) nil "One time pad encryption within file" single ((:commit . "87cc1f124024ce3d277299ca0ac703f182937d9f") (:url . "https://github.com/garvinguan/emacs-one-time-pad/") (:keywords "convenience"))]) (on-screen . [(20160302 150) ((cl-lib (0))) "guide your eyes while scrolling" single ((:commit . "206468aa4de299ad26c2db12b757f5ad7290912f") (:url . "https://github.com/michael-heerdegen/on-screen.el") (:keywords "convenience"))]) (on-parens . [(20150702 1506) ((dash (2 10 0)) (emacs (24)) (evil (1 1 6)) (smartparens (1 6 3))) "smartparens wrapper to fit with evil-mode/vim normal-state" single ((:commit . "16a145bf73550d5000ffbc2725c541a8458d0d3c") (:keywords "evil" "smartparens"))]) (omtose-phellack-theme . [(20161111 1320) nil "A dark theme, with cold bluish touch." tar ((:commit . "66f99633e199e65bd28641626435e8e59246529a"))]) (omnisharp . [(20171119 1236) ((emacs (24 4)) (flycheck (30)) (dash (2 12 0)) (auto-complete (1 4)) (popup (0 5 1)) (csharp-mode (0 8 7)) (cl-lib (0 5)) (s (1 10 0)) (shut-up (0 3 2)) (f (0 19 0))) "Omnicompletion (intellisense) and more for C#" tar ((:commit . "b0c61e91d1b600875ad2eae06fe72a179a3028b6") (:url . "https://github.com/Omnisharp/omnisharp-emacs") (:keywords "languages" "csharp" "c#" "ide" "auto-complete" "intellisense"))]) (omni-tags . [(20170426 1409) ((pcre2el (1 7)) (cl-lib (0 5))) "Highlight and Actions for 'Tags'" tar ((:commit . "8f0f6c302fab900b7681e5c039f90850cbbabd33") (:url . "http://github.com/AdrieanKhisbe/omni-tags.el") (:keywords "convenience"))]) (omni-scratch . [(20171009 1451) nil "Easy and mode-specific draft buffers" single ((:commit . "9eee3161e5cb6df58618548a2173f4da7d194814") (:url . "https://github.com/AdrieanKhisbe/omni-scratch.el") (:keywords "convenience" "languages" "tools"))]) (omni-quotes . [(20170425 1132) ((dash (2 8)) (omni-log (0 3 3)) (f (0 19 0)) (s (1 11 0)) (ht (2 1))) "Random quotes displayer" tar ((:commit . "454116c1dd6581baaeefd6b9310b1b6b7a5c36d0") (:url . "https://github.com/AdrieanKhisbe/omni-quotes.el") (:keywords "convenience"))]) (omni-log . [(20170930 535) ((emacs (24)) (ht (2 0)) (s (1 6 1)) (dash (2 13 0))) "Logging utilities" tar ((:commit . "11e959473c1bd9415d0cda785940c36ba6ad44ab") (:url . "https://github.com/AdrieanKhisbe/omni-log.el") (:keywords "convenience" "languages" "tools"))]) (omni-kill . [(20171016 1440) nil "Kill all the things" single ((:commit . "904549c8fd6ac3cf22b5d7111ca8944e179cffea") (:keywords "convenience" "editing" "tools"))]) (om-mode . [(20140915 1410) nil "Insert Om component template with life cycle." single ((:commit . "cdc0c2912321f8438b0f3449ba8aca50ec150bba") (:keywords "clojurescript"))]) (olivetti . [(20171102 1906) ((emacs (24 4))) "Minor mode for a nice writing environment" single ((:commit . "cd2fdca25935a47a5d3b0417a206f886579f8c45") (:url . "https://github.com/rnkn/olivetti") (:keywords "wp"))]) (oldlace-theme . [(20150705 600) ((emacs (24))) "Emacs 24 theme with an 'oldlace' background." single ((:commit . "5c6f437203b0783b36a7aff4a578de4a0c8c4ee6"))]) (old-norse-input . [(20170816 1142) ((emacs (24))) "An input method for Old Norse" single ((:commit . "c2e21ee72c3768e9152aff6baf12a19cde1d0c53") (:url . "https://github.com/david-christiansen/emacs-old-norse-input") (:keywords "languages"))]) (offlineimap . [(20150916 458) nil "Run OfflineIMAP from Emacs" single ((:commit . "cc3e067e6237a1eb7b21c575a41683b1febb47f1") (:url . "http://julien.danjou.info/offlineimap-el.html"))]) (octopress . [(20170813 615) nil "A lightweight wrapper for Jekyll and Octopress." tar ((:commit . "b4c25df9e3ccf49ac27c0a152daa4e27d1247d56") (:url . "https://github.com/aaronbieber/octopress.el") (:keywords "octopress" "blog"))]) (octo-mode . [(20161008 529) ((emacs (24))) "Major mode for Octo assembly language" single ((:commit . "bd4db7e5e3275b24c74e6a23c11d04f54e9feca5") (:url . "https://github.com/cryon/octo-mode") (:keywords "languages"))]) (octicons . [(20151031 2040) ((cl-lib (0 5))) "octicons utility" tar ((:commit . "a61e561966ffd8faa3b48ce5b3a4eec10c59708b") (:url . "https://github.com/syohex/emacs-octicons"))]) (ocp-indent . [(20170803 222) nil "automatic indentation with ocp-indent" single ((:commit . "20517e96299e147ef349b9e8913f036a6c35399d") (:url . "http://www.typerex.org/ocp-indent.html") (:keywords "ocaml" "languages"))]) (ocodo-svg-modelines . [(20150516 719) ((svg-mode-line-themes (0))) "A collection of beautiful SVG modelines" tar ((:commit . "c7b0789a177219f117c4de5659ecfa8622958c40"))]) (oceanic-theme . [(20161015 119) nil "Oceanic theme." single ((:commit . "a92ee9b470843c923e6cdcafdd65106ff994d04d") (:url . "https://github.com/terry3/oceanic-theme") (:keywords "oceanic" "color" "theme"))]) (occur-x . [(20130610 643) nil "Extra functionality for occur" single ((:commit . "352f5fab207d8a1d3dd048073ff127a83e97c82b") (:keywords "occur" "search" "convenience"))]) (occur-context-resize . [(20170904 1609) nil "dynamically resize context around matches in occur-mode" single ((:commit . "cdee5a631ceed9337579d4090e0acf8140747f80") (:url . "https://github.com/dgtized/occur-context-resize.el") (:keywords "matching"))]) (occidental-theme . [(20130312 1258) nil "Custom theme for faces based on Adwaita" single ((:commit . "fd2db7256d4f78c43d99c3cddb1c39106d479816") (:url . "http://github.com/olcai/occidental-theme"))]) (obsidian-theme . [(20170719 248) nil "port of the eclipse obsidian theme" single ((:commit . "f45efb2ebe9942466c1db6abbe2d0e6847b785ea") (:url . "http://github.com/mswift42/obsidian-theme"))]) (objc-font-lock . [(20141021 1122) nil "Highlight Objective-C method calls." single ((:commit . "34b457d577f97ca94b8792d025f9a909c7610612") (:url . "https://github.com/Lindydancer/objc-font-lock") (:keywords "languages" "faces"))]) (obfusurl . [(20170809 824) ((cl-lib (0 5))) "Obfuscate URLs so they aren't spoilers" single ((:commit . "7a5a41905000ce2ec1fd72509a5567e5fd9f47e5") (:url . "https://github.com/davep/obfusurl.el") (:keywords "convenience" "web" "text"))]) (oberon . [(20120715 209) nil "Major mode for editing Oberon/Oberon-2 program texts" single ((:commit . "fb57d18ce13835a8a69b6bafecdd9193ca9a59a3") (:keywords "oberon" "oberon-2" "languages" "oop"))]) (ob-uart . [(20170521 158) nil "org-babel support for UART communication" single ((:commit . "90daeac90a9e75c20cdcf71234c67b812110c50e") (:url . "https://www.0x7.ch") (:keywords "tools" "comm" "org-mode" "uart" "literate programming" "reproducible development"))]) (ob-typescript . [(20150804 530) ((emacs (24)) (org (8 0))) "org-babel functions for typescript evaluation" single ((:commit . "9dcbd226cbfb75e790dd9de91d9401dde85a889a") (:url . "https://github.com/lurdan/ob-typescript") (:keywords "literate programming" "reproducible research" "typescript"))]) (ob-translate . [(20170720 1219) ((google-translate (0 11)) (org (8))) "Translation of text blocks in org-mode." single ((:commit . "9d9054a51bafd5a29a8135964069b4fa3a80b169") (:url . "https://github.com/krisajenkins/ob-translate") (:keywords "org" "babel" "translate" "translation"))]) (ob-swift . [(20170921 625) ((org (8))) "org-babel functions for swift evaluation" single ((:commit . "ed478ddbbe41ce5373efde06b4dd0c3663c9055f") (:url . "http://github.com/zweifisch/ob-swift") (:keywords "org" "babel" "swift"))]) (ob-sql-mode . [(20170213 1056) ((emacs (24 3))) "SQL code blocks evaluated by sql-mode" single ((:commit . "778232af7c87b6a32ecb3668a9e5a2763d6a4830") (:url . "http://github.com/nikclayton/ob-sql-mode") (:keywords "languages" "org" "org-babel" "sql"))]) (ob-spice . [(20170801 2222) ((spice-mode (0 0 1)) (org (8))) "org-babel functions for spice evaluation" single ((:commit . "b296232e28f61366265084fafb2f47876d987069") (:url . "http://tiagoweber.github.io"))]) (ob-sml . [(20130829 1143) ((sml-mode (6 4))) "org-babel functions for template evaluation" single ((:commit . "958165c92b6cff6cada5c85c8ae5887806b8451b") (:url . "http://orgmode.org") (:keywords "literate programming" "reproducible research"))]) (ob-smiles . [(20160717 421) ((smiles-mode (0 0 1)) (org (8))) "Org-mode Babel support for SMILES." single ((:commit . "c23c318bf8bbe2e266967388221893fbecdd2fd5") (:keywords "org" "babel" "smiles"))]) (ob-sagemath . [(20170130 1833) ((sage-shell-mode (0 0 8)) (s (1 8 0)) (emacs (24))) "org-babel functions for SageMath evaluation" tar ((:commit . "68d3e516c712bc7aa5042f305f3eb5bbb6d656c2") (:url . "https://github.com/stakemori/ob-sagemath") (:keywords "sagemath" "org-babel"))]) (ob-rust . [(20170730 759) nil "Org-babel functions for Rust" tar ((:commit . "f23d93725c21ab95a44cb4d2c0c4ab0489bd55d9") (:url . "https://github.com/micanzhang/ob-rust") (:keywords "rust" "languages" "org" "babel"))]) (ob-restclient . [(20160323 2305) ((restclient (0))) "org-babel functions for restclient-mode" single ((:commit . "08b82b9ea668631968ae4fb531fd74494630f840") (:url . "http://orgmode.org") (:keywords "literate programming" "reproducible research"))]) (ob-redis . [(20160411 2013) ((org (8))) "Execute Redis queries within org-mode blocks." single ((:commit . "244a21569499a3d8cb39f651fbf00ce26accf983") (:url . "https://github.com/stardiviner/ob-redis") (:keywords "org" "babel" "redis"))]) (ob-prolog . [(20170126 921) nil "org-babel functions for prolog evaluation." single ((:commit . "e70a9f9b96fd0fedcc30de7768c870f4b0ee1ae9") (:url . "https://github.com/ljos/ob-prolog") (:keywords "literate programming" "reproducible research"))]) (ob-php . [(20171017 2206) ((org (8))) "Execute PHP within org-mode blocks." single ((:commit . "c281c1e17f0fd7de4adb6c3e6029dc2bd76beca1") (:url . "https://github.com/stardiviner/ob-php") (:keywords "org" "babel" "php"))]) (ob-nim . [(20170809 1130) ((cl-lib (0 5))) "Babel Functions for nim" single ((:commit . "bf1642cb93f0a898804dc13fd9408d2964403bd2") (:keywords "literate programming" "reproducible research"))]) (ob-mongo . [(20170720 1219) ((org (8))) "Execute mongodb queries within org-mode blocks." single ((:commit . "371bf19c7c10eab2f86424f8db8ab685997eb5aa") (:url . "https://github.com/krisajenkins/ob-mongo") (:keywords "org" "babel" "mongo" "mongodb"))]) (ob-ml-marklogic . [(20170622 1133) nil "org-babel functions for MarkLogic evaluation" tar ((:commit . "f678af0f440b3030e311ed6fbc444200be04da91") (:url . "http://github.com/ndw/ob-ml-marklogic") (:keywords "marklogic" "xquery" "javascript" "sparql"))]) (ob-lfe . [(20170725 720) ((org (8))) "org-babel functions for lfe evaluation" single ((:commit . "f7780f58e650b4d29dfd834c662b1d354b620a8e") (:url . "http://github.com/zweifisch/ob-lfe") (:keywords "org" "babel" "lfe" "lisp" "erlang"))]) (ob-kotlin . [(20170725 718) ((org (8))) "org-babel functions for kotlin evaluation" single ((:commit . "3b2f57e9944cfc36f2714dc550db42159904929a") (:url . "http://github.com/zweifisch/ob-kotlin") (:keywords "org" "babel" "kotlin"))]) (ob-ipython . [(20171203 126) ((s (1 9 0)) (dash (2 10 0)) (dash-functional (1 2 0)) (f (0 17 2)) (emacs (24))) "org-babel functions for IPython evaluation" tar ((:commit . "420b67cb386da2b77c46853fb0d39e07196e2367") (:url . "http://www.gregsexton.org") (:keywords "literate programming" "reproducible research"))]) (ob-hy . [(20171101 344) ((emacs (24 4))) "org-babel functions for Hy-lang evaluation" tar ((:commit . "a3512f274709dc4ab6c18d7955d361f8715505f0") (:url . "https://github.com/brantou/ob-hy") (:keywords "hy" "literate programming" "reproducible research"))]) (ob-http . [(20170920 2251) ((s (1 9 0)) (cl-lib (0 5))) "http request in org-mode babel" tar ((:commit . "c4da6d47b3f96c31c00f9eaaf712b59afe00daef") (:url . "http://github.com/zweifisch/ob-http"))]) (ob-go . [(20170731 1057) nil "org-babel functions for go evaluation" tar ((:commit . "28a0250cd969974936e44dfdccb0265632d25f84") (:url . "http://orgmode.org") (:keywords "golang" "go" "literate programming" "reproducible research"))]) (ob-fsharp . [(20170618 729) ((fsharp-mode (1 9 8)) (emacs (25))) "Org-Babel F#" tar ((:commit . "65ec2b626ac55313d8a04e746940370f615fed1e"))]) (ob-elixir . [(20170725 719) ((org (8))) "org-babel functions for elixir evaluation" single ((:commit . "8990a8178b2f7bd93504a9ab136622aab6e82e32") (:url . "http://github.com/zweifisch/ob-elixir") (:keywords "org" "babel" "elixir"))]) (ob-diagrams . [(20160407 537) nil "org-babel functions for diagrams evaluation" single ((:commit . "ed6649616325ca5b2d2109f74aded8bcb8aa5186") (:url . "http://orgmode.org") (:keywords "literate programming" "reproducible research"))]) (ob-dart . [(20170106 824) nil "org-babel functions for Dart evaluation" single ((:commit . "04d63b922a5469506560ca0c00678e57131e0269") (:url . "http://github.org/mzimmerm/ob-dart") (:keywords "literate programming" "reproducible research" "emacs" "org" "babel" "dart"))]) (ob-dao . [(20170816 858) ((org (8))) "Org Babel Functions for Dao" single ((:commit . "fa92f62a63c684d689f57e790e5dd614c5bba270") (:url . "https://github.com/xuchunyang/ob-dao") (:keywords "literate programming" "reproducible research" "org" "babel" "dao"))]) (ob-cypher . [(20170725 720) ((s (1 9 0)) (cypher-mode (0 0 6)) (dash (2 10 0)) (dash-functional (1 2 0))) "query neo4j using cypher in org-mode blocks" single ((:commit . "114bdf6db20ee0ade060bb5df379ddee48ff4f26") (:url . "http://github.com/zweifisch/ob-cypher") (:keywords "org" "babel" "cypher" "neo4j"))]) (ob-crystal . [(20171101 347) ((emacs (24 3))) "org-babel functions for Crystal evaluation" tar ((:commit . "9d58b880b74e0ad83b37596bb44635e5d7ae5c3f") (:url . "https://github.com/brantou/ob-crystal") (:keywords "crystal" "literate programming" "reproducible research"))]) (ob-coffeescript . [(20170719 121) nil "org-babel functions for coffee-script evaluation, and fully implementation!" single ((:commit . "b70f3d822c707cb02333fcb739ba4874614cad2a") (:url . "https://github.com/brantou/ob-coffeescript") (:keywords "coffee-script" "literate programming" "reproducible research"))]) (ob-coffee . [(20170725 724) ((org (8))) "org-babel functions for coffee-script evaluation" tar ((:commit . "7f0b330273e8af7777de87a75fe52a89798e4548") (:url . "http://github.com/zweifisch/ob-coffee") (:keywords "org" "babel" "coffee-script"))]) (ob-cfengine3 . [(20170915 634) nil "Org Babel functions for CFEngine 3" single ((:commit . "f38f87256efcb2b02f5c7042900087be941c1ddc") (:url . "https://github.com/nickanderson/ob-cfengine3") (:keywords "tools" "convenience"))]) (ob-browser . [(20170720 1218) ((org (8))) "Render HTML in org-mode blocks." tar ((:commit . "a347d9df1c87b7eb660be8723982c7ad2563631a") (:url . "https://github.com/krisajenkins/ob-browser") (:keywords "org" "babel" "browser" "phantomjs"))]) (ob-blockdiag . [(20170727 1801) nil "org-babel functions for blockdiag evaluation" single ((:commit . "634fcf64a4ae735afe7001d865b03f5d71e23046") (:url . "https://github.com/corpix/ob-blockdiag.el") (:keywords "tools" "convenience"))]) (ob-axiom . [(20171103 1548) ((emacs (24 2)) (axiom-environment (20171021))) "An org-babel backend for the axiom-environment system" single ((:commit . "b4f0fa9cd013e107d2af8e2ebedff8a7f40be7b5") (:keywords "axiom" "openaxiom" "fricas"))]) (ob-async . [(20171114 1936) ((async (1 9)) (org (9 0 1)) (emacs (24 4))) "Asynchronous org-babel src block execution" single ((:commit . "6099e94538083e035a4152335f93eae5b13c8d3f") (:url . "https://github.com/astahlman/ob-async") (:keywords "tools"))]) (ob-applescript . [(20160914 1327) nil "org-babel functions for template evaluation" single ((:commit . "bc708af6cf45707d4e8d8f00ea59a7e413bfaca7") (:url . "http://github.com/stig/ob-applescript.el") (:keywords "literate programming" "reproducible research" "mac"))]) (oauth . [(20130127 1751) nil "Oauth library." tar ((:commit . "ee4744ad76a1560281b0c4944575a3bd598c6458") (:keywords "comm"))]) (o-blog . [(20151202 1539) nil "Standalone orgmode blog exporter" tar ((:commit . "e466c59478feddc8126c43c1b98550474af484c0") (:keywords "emacs"))]) (nyx-theme . [(20170910 607) ((emacs (24))) "Dark theme" single ((:commit . "afe2b8c3b5421b4c292d182dcf77079b278e93d8") (:url . "https://github.com/GuidoSchmidt/emacs-nyx-theme") (:keywords "themes" "dark-theme"))]) (nyan-mode . [(20170423 40) nil "Nyan Cat shows position in current buffer in mode-line." tar ((:commit . "3447aa114575230cb230862ac0ac9b065f789ecd") (:url . "https://github.com/TeMPOraL/nyan-mode/") (:keywords "nyan" "cat" "lulz" "scrolling" "pop tart cat" "build something amazing"))]) (nvm . [(20170513 1501) ((s (1 8 0)) (dash (2 4 0)) (f (0 14 0)) (dash-functional (2 4 0))) "Manage Node versions within Emacs" single ((:commit . "61590e7fdeb19b1d866d26e48aef1af4767e5709") (:url . "http://github.com/rejeep/nvm.el") (:keywords "node" "nvm"))]) (nv-delete-back . [(20170224 449) ((emacs (24))) "backward delete like modern text editors" single ((:commit . "44d506105989873dc1725e0cfc675925b35c9c98") (:keywords "lisp"))]) (nummm-mode . [(20131117 214) nil "Display the number of minor modes instead of their names" single ((:commit . "81951e12032274543c5f7a585b29bd93961e94e4") (:url . "http://github.com/agpchil/nummm-mode"))]) (numbers . [(20170802 434) ((emacs (24))) "Display information and trivia about numbers" single ((:commit . "dd02508b788a13b7d4dbcc4923fa23134b783ab3") (:url . "https://github.com/davep/numbers.el") (:keywords "games" "trivia" "maths" "numbers"))]) (number-lock . [(20160829 1900) nil "Enter symbols on your number keys without pressing shift" single ((:commit . "74417b1238953bf485961a0dd7d20f5c36ae25ea") (:url . "https://github.com/Liu233w/number-lock.el") (:keywords "convenience"))]) (number . [(20170901 612) nil "Working with numbers at point." single ((:commit . "bbc278d34dbcca83e70e3be855ec98b23debfb99"))]) (nubox . [(20170619 210) nil "Nubox color theme (dark, light and tty versions)" tar ((:commit . "1ccb8035ae42727ba6bdd5c1106fbceddeeed370") (:keywords "faces"))]) (nu-mode . [(20171204 1342) ((undo-tree (0 6 5)) (ace-window (0)) (avy (0)) (which-key (0)) (transpose-frame (0))) "Modern Emacs Prompts Based Keybinding." tar ((:commit . "4b166359ae5f1b9d6ffac326e7f039fce0d5ec1c"))]) (nsis-mode . [(20150914 546) nil "NSIS-mode" tar ((:commit . "5ea767c326bbe180e42be723605c0b03b16fdb06") (:url . "http://github.com/mlf176f2/nsis-mode") (:keywords "nsis"))]) (nrepl-sync . [(20140807 854) ((cider (0 6))) "connect to nrepl port and eval .sync.clj." single ((:commit . "bab53a2361526d63a24cda176d07a1247bf5b399") (:url . "https://github.com/phillord/lein-sync"))]) (nrepl-eval-sexp-fu . [(20140311 341) ((highlight (0 0 0)) (smartparens (0 0 0)) (thingatpt (0 0 0))) "Tiny functionality enhancements for evaluating sexps." single ((:commit . "3a24b7d4bca13e87c987a4ddd212da914ff59191") (:keywords "lisp" "highlight" "convenience"))]) (npm-mode . [(20171103 1135) ((emacs (24 1))) "minor mode for working with npm projects" single ((:commit . "91b8a5ad9301a368e1ce051e625450d7fe3884a4") (:url . "https://github.com/mojochao/npm-mode") (:keywords "convenience" "project" "javascript" "node" "npm"))]) (noxml-fold . [(20170823 657) nil "Fold away XML things." single ((:commit . "46c7f6a008672213238a9f8d7a416ce80916aa62") (:url . "https://github.com/paddymcall/noxml-fold") (:keywords "xml" "folding"))]) (novice+ . [(20170307 925) nil "Extensions to `novice.el'." single ((:url . "https://www.emacswiki.org/emacs/download/novice%2b.el") (:keywords "internal" "help"))]) (nov . [(20171104 1641) ((dash (2 12 0)) (esxml (0 3 3)) (emacs (24 4))) "Featureful EPUB reader mode" single ((:commit . "7d14b6a2aa649e2213348883893a24a6a6083cb9") (:url . "https://github.com/wasamasa/nov.el") (:keywords "hypermedia" "multimedia" "epub"))]) (notmuch-labeler . [(20131230 919) ((notmuch (0))) "Improve notmuch way of displaying labels" tar ((:commit . "d65d1129555d368243df4770ecc1e7ccb88efc58") (:url . "https://github.com/DamienCassou/notmuch-labeler") (:keywords "emacs" "package" "elisp" "notmuch" "emails"))]) (notmuch . [(20170927 415) nil "run notmuch within emacs" tar ((:commit . "cf08295c503a2cefc4c51c5398f3fc1159521ff1") (:url . "https://notmuchmail.org/"))]) (nose . [(20140520 948) nil "Easy Python test running in Emacs" single ((:keywords "nose" "python" "testing"))]) (nord-theme . [(20171005 1039) ((emacs (24))) "An arctic, north-bluish clean and elegant theme" single ((:commit . "be32879416bbed1d6524f7c30ac53fbfa5a0e024") (:url . "https://github.com/arcticicestudio/nord-emacs"))]) (noflet . [(20141102 654) nil "locally override functions" single ((:commit . "7ae84dc3257637af7334101456dafe1759c6b68a") (:url . "https://github.com/nicferrier/emacs-noflet") (:keywords "lisp"))]) (nodejs-repl . [(20170722 443) nil "Run Node.js REPL" single ((:commit . "4a4104dbf2cd314e90f35d200f28bd93c34708d0"))]) (node-resolver . [(20140930 1023) ((cl-lib (0 5))) "hook to install node modules in background" single ((:commit . "ef9d0486907a746a80b02ffc6208a09c168a9f7c") (:url . "https://github.com/meandavejustice/node-resolver.el") (:keywords "convenience" "nodejs" "javascript" "npm"))]) (noctilux-theme . [(20161113 642) ((emacs (24))) "Dark theme inspired by LightTable" single ((:commit . "a3265a1be7f4d73f44acce6d968ca6f7add1f2ca") (:url . "https://github.com/sjrmanning/noctilux-theme"))]) (nocomments-mode . [(20170213 1237) nil "Minor mode that makes comments invisible." single ((:commit . "5a41a20cc44dfe4a9ea584354ed6dbc15dd92f46") (:url . "https://github.com/Lindydancer/nocomments-mode"))]) (noccur . [(20150514 1420) nil "Run multi-occur on project/dired files" single ((:commit . "6cc02ce07178a61ae38a849f80472c01969272bc") (:keywords "convenience"))]) (noaa . [(20170719 1136) ((request (0 2 0)) (cl-lib (0 5)) (emacs (24))) "Get NOAA weather data" single ((:commit . "a4ec583275450d718334238d2813579420229f65") (:url . "https://github.com/thomp/noaa"))]) (no-littering . [(20171201 219) ((cl-lib (0 5))) "help keeping ~/.emacs.d clean" single ((:commit . "314a16bc917816af89462c6823ac3bd86b1bc962") (:url . "https://github.com/emacscollective/no-littering"))]) (nnir-est . [(20170818 746) nil "Gnus nnir interface for HyperEstraier" single ((:commit . "dc1fee4757725b8171b755313d7bafbf1364f49a") (:url . "https://github.com/kawabata/nnir-est") (:keywords "mail"))]) (nm . [(20151110 1110) ((notmuch (0 21)) (peg (0 6)) (company (0)) (emacs (24 3))) "NEVERMORE: an email interface for Notmuch" tar ((:commit . "5a3f29174b3a4b2b2e7a700a862f3b16a942687e") (:url . "https://github.com/tjim/nevermore"))]) (nlinum-relative . [(20160526 8) ((emacs (24 4)) (nlinum (1 5))) "Relative line number with nlinum" single ((:commit . "5b9950c97ba79a6f0683e38b13da23f39e01031c") (:keywords "convenience"))]) (nlinum-hl . [(20170613 1748) ((emacs (24 4)) (nlinum (1 7)) (cl-lib (0 5))) "heal nlinum's line numbers" single ((:commit . "d5ca1490e0cde0605e34a6a17de8cc236c9810da") (:url . "https://github.com/hlissner/emacs-nlinum-hl") (:keywords "nlinum" "highlight" "current" "line" "faces"))]) (nixos-options . [(20160209 1041) ((emacs (24))) "Interface for browsing and completing NixOS options." single ((:commit . "7007363e773a419203a69798fb0e0731b2eb0f73") (:url . "http://www.github.com/travisbhartwell/nix-emacs/") (:keywords "unix"))]) (nix-sandbox . [(20171004 1006) ((dash (2 12 1)) (s (1 10 0))) "Utility functions to work with nix-shell sandboxes" single ((:commit . "7007363e773a419203a69798fb0e0731b2eb0f73") (:url . "https://github.com/travisbhartwell/nix-emacs"))]) (nix-mode . [(20170831 1721) ((emacs (24 3))) "Major mode for editing .nix files" tar ((:commit . "3294f8a2f83ace2d71f16c274a262ff76be412dc") (:url . "https://github.com/matthewbauer/nix-mode") (:keywords "nix" "languages" "tools" "unix"))]) (nix-buffer . [(20170809 1128) ((f (0 17 3)) (emacs (24 4))) "Set up buffer environments with nix" single ((:commit . "b922497ea0af39fdf1a7e856d0cd2ce81d98d76f") (:url . "https://github.com/shlevy/nix-buffer/tree/master/"))]) (ninja-mode . [(20141203 2159) ((emacs (24))) "Major mode for editing .ninja files" single ((:commit . "e234a7bdb6c42f4539c0ab09b624f191287c2c10"))]) (nimbus-theme . [(20171120 1300) nil "An awesome dark theme" single ((:commit . "a955a210f147694b257f8e79aa0a4ad23ff4fd44") (:url . "https://github.com/m-cat/nimbus-theme") (:keywords "faces"))]) (nim-mode . [(20171119 1027) ((emacs (24 4)) (epc (0 1 1)) (let-alist (1 0 1)) (commenter (0 5 1)) (flycheck-nimsuggest (0 8 1))) "A major mode for the Nim programming language" tar ((:commit . "91450d3117a4dec975d913b58f1ece6808e5c2ba") (:keywords "nim" "languages"))]) (nikola . [(20170703 1321) ((async (1 5)) (emacs (24 3))) "Simple wrapper for nikola" single ((:commit . "964715ac30943c9d6976999cad208dc60d09def0") (:url . ": https://git.daemons.it/drymer/nikola.el") (:keywords ":" "nikola"))]) (niconama . [(20170910 801) ((emacs (24)) (request (20170131 1747)) (cl-lib (0 5))) "Tools for Niconico Live Broadcast" single ((:commit . "96e7553e50e6bf7b58aac50f52c9b0b8edb41c56") (:url . "https://github.com/NOBUTOKA/niconama.el") (:keywords "comm"))]) (niceify-info . [(20160416 544) nil "improve usability of Info pages" single ((:commit . "38df5062bc3b99d1074cab3e788b5ed66732111c"))]) (nginx-mode . [(20170611 2137) nil "major mode for editing nginx config files" single ((:commit . "a2bab83c2eb233d57d76b236e7c141c2ccc97005") (:keywords "languages" "nginx"))]) (ng2-mode . [(20170504 2007) ((typescript-mode (0 1))) "Major modes for editing Angular 2" tar ((:commit . "adbfe16a47cf26edeb1b508cbedae5307b4efbf6") (:url . "http://github.com/AdamNiederer/ng2-mode") (:keywords "typescript" "angular" "angular2" "template"))]) (nexus . [(20140114 505) nil "REST Client for Nexus Maven Repository servers" tar ((:commit . "c46f499951b90839aa8683779fe43d8f01672a60") (:keywords "comm"))]) (newlisp-mode . [(20160226 745) nil "newLISP editing mode for Emacs" single ((:commit . "ac23be40c81a360988ab803d365f1510733f6db4") (:url . "https://github.com/kosh04/newlisp-mode") (:keywords "language" "lisp" "newlisp"))]) (never-comment . [(20140104 1407) nil "Never blocks are comment" single ((:commit . "74ded8f1e7f23240f5f6032d0451fb0a51733bc4") (:url . "http://stackoverflow.com/a/4554658/89376"))]) (network-watch . [(20171123 346) ((emacs (24 3))) "Support for intermittent network connectivity" single ((:commit . "958dd0d419e4f9402648a86b754091ba346e01b8") (:url . "https://github.com/jamiguet/network-watch") (:keywords "unix" "tools" "hardware" "lisp"))]) (netrunner . [(20160910 1632) ((popup (0 5 3)) (company (0 9 0)) (helm (1 9 5))) "Create Android: Netrunner decklists using Company, Helm and org-mode" single ((:commit . "c64672992175c8c1073c0f56c2e471839db71a0f") (:url . "http://github.com/Kungsgeten/netrunner") (:keywords "games"))]) (netherlands-holidays . [(20150202 817) nil "Netherlands holidays for Emacs calendar." single ((:commit . "26236178cdd650df9958bf5a086e184096559f00") (:url . "https://github.com/abo-abo/netherlands-holidays") (:keywords "calendar"))]) (neotree . [(20170522 758) ((cl-lib (0 5))) "A tree plugin like NerdTree for Vim" tar ((:commit . "bc98dfb44c106375efa4f26848f3790ee264da97") (:url . "https://github.com/jaypei/emacs-neotree"))]) (neon-mode . [(20170711 501) nil "Simple major mode for editing neon files" single ((:commit . "9c23289c0c8ed17d1596cfb95a5ade57df7db5f7") (:keywords "conf"))]) (nemerle . [(20161029 1323) nil "major mode for editing nemerle programs" single ((:commit . "847d1343e63c0a2d25a43f8432c4d750e4e9e7d0") (:keywords "nemerle" "mode" "languages"))]) (neato-graph-bar . [(20170731 2341) ((emacs (24 3))) "Neat-o graph bars CPU/memory etc." single ((:commit . "3ebd5168c9b8cc56cc4163206c03864b9b802f27") (:url . "https://gitlab.com/RobertCochran/neato-graph-bar"))]) (nclip . [(20130617 1315) nil "Network (HTTP) Clipboard" tar ((:commit . "af88e38b1f04be02bf2e57affc662dbd0f828e67") (:url . "http://www.github.com/maio/nclip.el") (:keywords "nclip" "clipboard" "network"))]) (ncl-mode . [(20170903 2355) ((emacs (24))) "Major Mode for editing NCL scripts and other goodies" tar ((:commit . "84599a730169b9b19f9dcc532e20dcdc9648bbaa"))]) (navorski . [(20141203 1024) ((s (1 9 0)) (dash (1 5 0)) (multi-term (0 8 14))) "Helping you live in the terminal, like Viktor did." single ((:commit . "698c1c62da70164aebe9a7a5d034778fbc30ea5b") (:keywords "terminal"))]) (navi2ch . [(20150329 1916) nil "Navigator for 2ch for Emacsen" tar ((:commit . "f39d93c32acd5b9c3a7fb1a9fe14c5e1c4b5288e") (:keywords "network" "2ch"))]) (navi-mode . [(20170414 1228) ((outshine (2 0)) (outorg (2 0))) "major-mode for easy buffer-navigation" single ((:commit . "c1d38e8237f4e14af020a0b7d4f118ea198ab674") (:url . "https://github.com/alphapapa/navi"))]) (nav-flash . [(20140508 1341) nil "Briefly highlight the current line" single ((:commit . "53f5bc59e3f32c1192d15637d3979732dacb2c35") (:url . "http://github.com/rolandwalker/nav-flash") (:keywords "extensions" "navigation" "interface"))]) (nav . [(20120507 7) nil "Emacs mode for filesystem navigation" tar ((:commit . "c5eb234c063f435dbdcd1f8bdc46cfc68c973ebe"))]) (nasm-mode . [(20161216 736) ((emacs (24 3))) "NASM x86 assembly major mode" single ((:commit . "d990ed94d902b74a5c834fb567e03307607cee45") (:url . "https://github.com/skeeto/nasm-mode"))]) (nash-mode . [(20160830 512) nil "Nash major mode" single ((:commit . "2cd96535eb7d669a94306183e95ee37333872c1a") (:url . "https://github.com/tiago4orion/nash-mode.el") (:keywords "nash" "languages"))]) (narrowed-page-navigation . [(20150108 2119) ((emacs (24)) (cl-lib (0 5))) "A minor mode for showing one page at a time" single ((:commit . "b215adbac4873f56fbab65772062f0f5be8058a1") (:keywords "outlines"))]) (narrow-reindent . [(20150722 1206) ((emacs (24 4))) "Defines a minor mode to left-align narrowed regions." single ((:commit . "87466aac4dbeb79597124dd077bf5c704872fd3d") (:url . "https://github.com/emallson/narrow-reindent.el"))]) (narrow-indirect . [(20170820 1748) nil "Narrow using an indirect buffer that is a clone" single ((:url . "https://www.emacswiki.org/emacs/download/narrow-indirect.el") (:keywords "narrow" "indirect" "buffer" "clone" "view" "multiple-modes"))]) (naquadah-theme . [(20160819 121) nil "A theme based on Tango color set" single ((:commit . "37e822ccea0ff4a6eb79ea6615a1fd6dc6c72d51"))]) (nanowrimo . [(20151104 1828) nil "Track progress for nanowrimo" single ((:url . "https://bitbucket.org/gvol/nanowrimo-mode"))]) (nand2tetris-assembler . [(20171201 1013) ((nand2tetris (1 1 0))) "Assembler For the Nand2tetris Course" single ((:commit . "33acee34d24b1c6a87db833b7d23449cf858f64f") (:url . "http://www.github.com/CestDiego/nand2tetris-assembler.el/") (:keywords "nand2tetris-assembler" "hdl"))]) (nand2tetris . [(20171201 1013) ((emacs (24))) "Major mode for HDL files in the nand2tetris course" tar ((:commit . "33acee34d24b1c6a87db833b7d23449cf858f64f") (:url . "http://www.github.com/CestDiego/nand2tetris.el/") (:keywords "nand2tetris" "hdl"))]) (namespaces . [(20130326 1550) nil "An implementation of namespaces for Elisp, with an emphasis on immutabilty." single ((:commit . "3d02525d9b9a5ae6e7be3adefd880121436e6270") (:url . "https://github.com/chrisbarrett/elisp-namespaces"))]) (names . [(20171012 1214) ((emacs (24 1)) (cl-lib (0 5))) "Namespaces for emacs-lisp. Avoid name clobbering without hiding symbols." tar ((:commit . "1d45ec50568eb2f5b55973f7ed0b48c68f9f13aa") (:url . "https://github.com/Malabarba/names") (:keywords "extensions" "lisp"))]) (nameless . [(20161012 1214) ((emacs (24 4))) "Hide package namespace in your emacs-lisp code" single ((:commit . "108f16e743aecd35401c0e914c896572cf1d5082") (:url . "https://github.com/Malabarba/nameless") (:keywords "convenience" "lisp"))]) (nameframe-projectile . [(20160927 2103) ((nameframe (0 4 1 -2)) (projectile (0 13 0))) "Nameframe integration with Projectile" single ((:commit . "aafb8c5c5fbe0510e2f5d5b6b6b5dd0b73abe5d8") (:url . "https://github.com/john2x/nameframe"))]) (nameframe-perspective . [(20170405 1819) ((nameframe (0 4 1 -2)) (perspective (1 12))) "Nameframe integration with perspective.el" single ((:commit . "aafb8c5c5fbe0510e2f5d5b6b6b5dd0b73abe5d8") (:url . "https://github.com/john2x/nameframe"))]) (nameframe . [(20171106 1656) nil "Manage frames by name." single ((:commit . "aafb8c5c5fbe0510e2f5d5b6b6b5dd0b73abe5d8") (:url . "https://github.com/john2x/nameframe"))]) (name-this-color . [(20151014 1330) ((emacs (24)) (cl-lib (0 5)) (dash (2 11 0))) "Match RGB codes to names easily and precisely" single ((:commit . "e37cd1291d5d68d4c8d6386eab9cb9d94fd3bcfa") (:url . "https://github.com/knl/name-this-color.el") (:keywords "lisp" "color" "hex" "rgb" "shade" "name"))]) (naked . [(20170418 1822) nil "Provide for naked key descriptions: no angle brackets." single ((:url . "https://www.emacswiki.org/emacs/download/naked.el") (:keywords "lisp" "key" "print" "format" "help"))]) (n4js . [(20150713 1931) ((emacs (24)) (cypher-mode (0))) "Neo4j Shell" single ((:commit . "3991ed8975151d5e8d568e952362df810f7ffab7") (:url . "https://github.com/tmtxt/n4js.el") (:keywords "neo4j" "shell" "comint"))]) (myterminal-controls . [(20170425 1936) ((emacs (24)) (cl-lib (0 5))) "Quick toggle controls at a key-stroke" single ((:commit . "3edcef051f882342ca769b84527bf92dfb755e14") (:url . "http://ismail.teamfluxion.com") (:keywords "convenience" "shortcuts"))]) (mysql2sqlite . [(20170725 1516) nil "Convert mysql databases into sqlite databases." single ((:commit . "8e6e74451c942e2e92f90dc13222b95a7dbb285e"))]) (mysql-to-org . [(20170205 1306) ((emacs (24 3)) (s (1 11 0))) "Minor mode to output the results of mysql queries to org tables" single ((:commit . "d87e9b6117fc0db4b156e8a12550cf9ee4bd692a"))]) (mynt-mode . [(20150512 1349) ((virtualenvwrapper (20131514))) "Minor mode to work with the mynt static site generator" single ((:commit . "23d4489167bfa899634548cb41ed32fdeb3600c9") (:url . "https://github.com/crshd/mynt-mode") (:keywords "convenience"))]) (mykie . [(20150808 1505) ((emacs (24 3)) (cl-lib (0 5))) "Command multiplexer: Register multiple functions to a keybind" tar ((:commit . "7676f0e883af1d1054e404e97691f3c13aba196f") (:url . "https://github.com/yuutayamada/mykie-el") (:keywords "emacs" "configuration" "keybind"))]) (myanmar-input-methods . [(20160106 737) nil "Emacs Input Method for Myanmar" single ((:commit . "9d4e0d6358c61bde7a2274e430ef71683faea32e") (:url . "http://github.com/yelinkyaw/emacs-myanmar-input-methods") (:keywords "myanmar" "unicode" "keyboard"))]) (mwim . [(20161004 647) nil "Switch between the beginning/end of line or code" single ((:commit . "e53da113b88a7e0693fd8f91862ce5948ad80a5b") (:url . "https://github.com/alezost/mwim.el") (:keywords "convenience"))]) (mwe-log-commands . [(20100703 541) nil "log keyboard commands to buffer" single ((:commit . "8253f2a311f35b03f72a035744f0cbdd776ea17e") (:keywords "help"))]) (mvn . [(20160211 743) nil "helpers for compiling with maven" single ((:commit . "8a65b4eb88c9801aa3bff1921b600c72dfb8791a") (:url . "https://github.com/apgwoz/mvn-el") (:keywords "compilation" "maven" "java"))]) (muttrc-mode . [(20090804 1552) nil "Major mode to edit muttrc under Emacs" single nil]) (mutant . [(20160124 553) ((emacs (24 4)) (dash (2 1 0))) "An interface for the Mutant testing tool" single ((:commit . "de9cdefe48c880128a8f62c6699d7416e9c8ced1") (:url . "http://github.com/p-lambert/mutant.el") (:keywords "mutant" "testing"))]) (mustard-theme . [(20170808 619) ((emacs (24 0))) "an Emacs 24 theme based on Mustard (tmTheme)" single ((:commit . "3b15d992c79590d7ea2503004e2a863b57e274b5") (:url . "https://github.com/emacsfodder/tmtheme-to-deftheme"))]) (mustang-theme . [(20170719 246) nil "port of vim's mustang theme" single ((:commit . "dda6d04803f1c9b196b620ef564e7768fee15de2") (:url . "http://github.com/mswift42/mustang-theme"))]) (mustache-mode . [(20141024 732) nil "A major mode for editing Mustache files." single ((:commit . "bf9897eb287ca47ced65d7d4e07ea61ea0aec39f"))]) (mustache . [(20170923 533) ((ht (0 9)) (s (1 3 0)) (dash (1 2 0))) "a mustache templating library in emacs lisp" tar ((:commit . "5e39654b933a18131146a0f3b3e3dc55c5058124"))]) (multitran . [(20161122 1323) ((emacs (24)) (cl-lib (0 5))) "Interface to multitran" single ((:commit . "c0ce2e1b3706263946f9240a47c3f65ed4fc0afa") (:keywords "dictionary" "hypermedia"))]) (multiple-cursors . [(20170908 1452) ((cl-lib (0 5))) "Multiple cursors for Emacs." tar ((:commit . "10752700084595bb24712c27ba70a2326302e45b"))]) (multifiles . [(20130615 1433) nil "View and edit parts of multiple files in one buffer" single ((:commit . "dddfe64b8e1c1cd1f9ccc1f03405477fc0d53897") (:keywords "multiple" "files"))]) (multicolumn . [(20150202 1451) nil "Creating and managing multiple side-by-side windows." single ((:commit . "c7a3afecd470859b2e60aa7c554d6e4d436df7fa") (:url . "https://github.com/Lindydancer/multicolumn"))]) (multi-web-mode . [(20130823 2054) nil "multiple major mode support for web editing" tar ((:commit . "ad1c8d1c870334052d244c7ae3636cb7b9357b7c") (:url . "https://github.com/fgallina/multi-web-mode") (:keywords "convenience" "languages" "wp"))]) (multi-term . [(20160619 233) nil "Managing multiple terminal buffers in Emacs." single ((:commit . "f954e4e18b0a035151d34852387e724d87a3316f") (:url . "http://www.emacswiki.org/emacs/download/multi-term.el") (:keywords "term" "terminal" "multiple buffer"))]) (multi-project . [(20171119 1230) nil "Find files, compile, search, and switch between" single ((:url . "https://bitbucket.org/ellisvelo/multi-project/overview") (:keywords "project" "management"))]) (multi-line . [(20170821 1926) ((emacs (24 3)) (s (1 9 0)) (cl-lib (0 5)) (dash (2 12 0)) (shut-up (0 3 2))) "multi-line statements" tar ((:commit . "d3ce76b6aec62f96ef2c0409d8262fd39e67dccc") (:url . "https://github.com/IvanMalison/multi-line") (:keywords "multi" "line" "length" "whitespace" "programming" "tools" "convenience" "files"))]) (multi-eshell . [(20120608 1135) nil "Create and manage multiple shells within Emacs" single ((:url . "http://cims.nyu.edu/~stucchio"))]) (multi-compile . [(20160306 1423) ((emacs (24)) (dash (2 12 1))) "Multi target interface to compile." single ((:commit . "bd0331854774e7a269ce8a7dd49580cd397c0ec2") (:url . "https://github.com/ReanGD/emacs-multi-compile") (:keywords "tools" "compile" "build"))]) (multi . [(20131013 844) ((emacs (24))) "Clojure-style multi-methods for emacs lisp" single ((:commit . "0987ab71692717ed457cb3984de184db9185806d") (:url . "http://github.com/kurisuwhyte/emacs-multi") (:keywords "multimethod" "generic" "predicate" "dispatch"))]) (mu4e-query-fragments . [(20170923 622) ((emacs (24 4))) "mu4e query fragments extension" single ((:commit . "34ddad4e6785f575333efcc66153d892daa1c884") (:url . "https://github.com/wavexx/mu4e-query-fragments.el") (:keywords "mu4e" "mail" "convenience"))]) (mu4e-maildirs-extension . [(20171119 1125) ((dash (0 0 0))) "Show mu4e maildirs summary in mu4e-main-view" single ((:commit . "c3ebeedd5c12e190949aed53c3040d51d21de58f") (:url . "http://github.com/agpchil/mu4e-maildirs-extension"))]) (mu4e-jump-to-list . [(20171104 1248) ((emacs (24 4)) (cl-lib (0 5))) "mu4e jump-to-list extension" single ((:commit . "2aa995ddedc7634292b459a3ea2718eea39695cf") (:url . "https://github.com/wavexx/mu4e-jump-to-list.el") (:keywords "mu4e" "mail" "convenience"))]) (mu4e-alert . [(20170901 1027) ((alert (1 2)) (s (1 10 0)) (ht (2 0)) (emacs (24 1))) "Desktop notification for mu4e" single ((:commit . "ef90cd0f0fb6c841f326db5cad276567eb5f96b5") (:url . "https://github.com/iqbalansari/mu4e-alert") (:keywords "mail" "convenience"))]) (mu-cite . [(20160130 300) ((flim (1 14 9))) "A library to provide MIME features." tar ((:commit . "aea3c2d01eb3284d5e0124059d368e8c6b6ffddc"))]) (mtg-deck-mode . [(20170925 1338) ((emacs (25 1))) "Major mode to edit MTG decks" tar ((:commit . "546a62ada70aa89d325cc3941c8c9379a4c21553") (:url . "https://github.com/mattiasb/mtg-deck-mode") (:keywords "data" "mtg" "magic"))]) (msvc . [(20171203 921) ((emacs (24)) (cl-lib (0 5)) (cedet (1 0)) (ac-clang (1 2 0))) "Microsoft Visual C/C++ mode" tar ((:commit . "093f6d4eecfbfc67650644ebb637a4f1c31c08fa") (:url . "https://github.com/yaruopooner/msvc") (:keywords "languages" "completion" "syntax check" "mode" "intellisense"))]) (mpv . [(20150218 118) ((cl-lib (0 5)) (emacs (24)) (json (1 3)) (names (0 5 4)) (org (8 0))) "control mpv for easy note-taking" single ((:commit . "3021c55fa5723a806dde5fb2a630b115e2c53d06") (:url . "https://github.com/kljohann/mpv.el") (:keywords "tools" "multimedia"))]) (mpages . [(20150710 704) nil "An Emacs buffer for quickly writing your Morning Pages" single ((:commit . "39a72a0931ab1cdbfdf0ab9f412dc12d43a3829f") (:url . "https://github.com/slevin/mpages"))]) (mozc-temp . [(20160228 40) ((emacs (24)) (dash (2 10 0)) (mozc (0))) "Use mozc temporarily" single ((:commit . "9d6b645eff901ea79dbc43a55d5a97ead3f4bad7") (:url . "https://github.com/HKey/mozc-temp"))]) (mozc-popup . [(20150223 1634) ((popup (0 5 2)) (mozc (0))) "Mozc with popup" single ((:commit . "f0684b875a7427ec08f8df13939a486e5d5cf420") (:keywords "i18n" "extentions"))]) (mozc-im . [(20160411 1722) ((mozc (0))) "Mozc with input-method-function interface." single ((:commit . "df614a1076c28a11551fb3e822868bae47e855a5") (:keywords "i18n" "extentions"))]) (mozc . [(20160102 1506) nil "minor mode to input Japanese with Mozc" single ((:commit . "4767ce2f2b6a63f1f139daea6e98bc7a564d5e4e") (:keywords "mule" "multilingual" "input method"))]) (moz-controller . [(20151208 1806) ((moz (0))) "Control Firefox from Emacs" single ((:commit . "46f665c03574fa922de767fc29795e0db4a7c5c6") (:url . "https://github.com/RenWenshan/emacs-moz-controller"))]) (moz . [(20150805 1006) nil "Lets current buffer interact with inferior mozilla." single ((:commit . "ab3e79914445039ceb62f7f2dc342358fec3492e") (:url . "http://github.com/bard/mozrepl/raw/master/chrome/content/moz.el"))]) (mowedline . [(20161121 1835) nil "elisp utilities for using mowedline" single ((:commit . "7a572c0d87098336777efde5abdeaf2bcd11b95e"))]) (move-text . [(20170908 2030) nil "Move current line or region with M-up or M-down." single ((:commit . "bdaf3e3a0d33cd528cad1d10facbdf0635232e4d") (:url . "https://github.com/emacsfodder/move-text") (:keywords "edit"))]) (move-dup . [(20170513 1911) nil "Eclipse-like moving and duplicating lines or rectangles." single ((:commit . "dae61de7aa5e2bf56a7bab1fa36fa3a39520a3c0") (:url . "https://github.com/wyuenho/move-dup") (:keywords "convenience" "wp" "edit"))]) (mouse3 . [(20170324 1050) nil "Customizable behavior for `mouse-3'." single ((:url . "https://www.emacswiki.org/emacs/download/mouse3.el") (:keywords "mouse" "menu" "keymap" "kill" "rectangle" "region"))]) (mouse-slider-mode . [(20161021 1214) ((emacs (24 3)) (cl-lib (0 3))) "scale numbers dragged under the mouse" single ((:commit . "b3c19cd231edecce76787c5a9bbe5e4046d91f88") (:url . "https://github.com/skeeto/mouse-slider-mode"))]) (mouse+ . [(20170307 859) nil "Extensions to `mouse.el'." single ((:url . "https://www.emacswiki.org/emacs/download/mouse%2b.el") (:keywords "mouse"))]) (motion-mode . [(20140919 1856) ((flymake-easy (0 7)) (flymake-cursor (1 0 2))) "major mode for RubyMotion enviroment" tar ((:commit . "4c94180e3ecea611a61240a0c0cd48f1032c4a55") (:url . "https://github.com/ainame/motion-mode"))]) (mote-mode . [(20160122 1629) ((ruby-mode (1 1))) "Mote minor mode" single ((:commit . "666c6641addbd3b337a7aa01fd2742ded2f41b83") (:url . "http://inkel.github.com/mote-mode/"))]) (mosey . [(20161015 319) ((emacs (24 4))) "Mosey around your buffers" single ((:commit . "eb0ae6ec10f1d9828a2665476f6d6811df9b0bfa") (:url . "http://github.com/alphapapa/mosey.el") (:keywords "convenience"))]) (morlock . [(20161008 1358) nil "more font-lock keywords for elisp" single ((:commit . "5845b60c705e8db88ce790b0b12cd8b917e1e5a5") (:url . "https://github.com/tarsius/morlock") (:keywords "convenience"))]) (morganey-mode . [(20170118 134) ((emacs (24 4))) "Major mode for editing Morganey files" single ((:commit . "5cf3870432a2aeb69d373abe63b3be1f325f6d21") (:url . "https://github.com/morganey-lang/morganey-mode"))]) (moonscript . [(20170831 1526) ((cl-lib (0 5)) (emacs (24))) "Major mode for editing MoonScript code" tar ((:commit . "56f90471e2ced2b0a177aed4d8c2f854797e9cc7"))]) (monroe . [(20170623 103) nil "Yet another client for nREPL" single ((:commit . "2bb59ac84e030f7047e7443e2df25185b397a5d3") (:url . "http://www.github.com/sanel/monroe") (:keywords "languages" "clojure" "nrepl" "lisp"))]) (monokai-theme . [(20171013 236) nil "A fruity color theme for Emacs." single ((:commit . "019e07947426f0192fc3458f3f72c19031b607de") (:url . "http://github.com/oneKelvinSmith/monokai-emacs"))]) (monokai-alt-theme . [(20170630 1348) ((emacs (24))) "Theme with a dark background. Based on sublime monokai theme." single ((:commit . "f342b6afc31f929be0626eca2d696ee9fab78011") (:url . "https://github.com/dawidof/emacs-monokai-theme"))]) (monochrome-theme . [(20140326 350) nil "A dark Emacs 24 theme for your focused hacking sessions" tar ((:commit . "bfca67fe7365310bc47ae9ca96c417caada54896"))]) (monky . [(20170224 921) nil "Control Hg from Emacs." tar ((:commit . "62fc907cb541aef1c253d6bcd60447156e6f064c"))]) (monitor . [(20161018 444) ((dash (2 13 0))) "Utilities for monitoring expressions." tar ((:commit . "63f4643a0ee81616dbb692b8b03bae21df2283e2") (:url . "https://github.com/guiltydolphin/monitor") (:keywords "lisp" "monitor" "utility"))]) (mongo . [(20150315 519) nil "MongoDB driver for Emacs Lisp" tar ((:commit . "595529ddd70ecb9fab8b11daad2c3929941099d6") (:keywords "convenience"))]) (molokai-theme . [(20151016 845) nil "molokai theme with Emacs theme engine" single ((:commit . "04a44f21184b6a26caae4f2c92db9019d883309c") (:url . "https://github.com/alloy-d/color-theme-molokai"))]) (moe-theme . [(20170914 2111) nil "A colorful eye-candy theme. Moe, moe, kyun!" tar ((:commit . "b8f0206614ab40ffb75e50ce6c38675fb9c7cf2e") (:url . "https://github.com/kuanyui/moe-theme.el"))]) (modtime-skip-mode . [(20140128 1401) nil "Minor mode for disabling modtime and supersession checks on files." single ((:commit . "c0e49523aa26b2263a8693691ac775988015f592") (:url . "http://www.github.com/jordonbiondo/modtime-skip-mode"))]) (modern-cpp-font-lock . [(20170625 1306) nil "Font-locking for \"Modern C++\"" single ((:commit . "b0a45dc1d7c49854988103c2570c783f46f44566") (:url . "https://github.com/ludwigpacifici/modern-cpp-font-lock") (:keywords "languages" "c++" "cpp" "font-lock"))]) (modeline-posn . [(20170307 856) nil "Set up `mode-line-position'." single ((:url . "https://www.emacswiki.org/emacs/download/modeline-posn.el") (:keywords "mode-line" "region" "column"))]) (modeline-char . [(20170307 854) nil "In the mode-line, show the value of the character after point." single ((:url . "https://www.emacswiki.org/emacs/download/modeline-char.el") (:keywords "mode-line" "character"))]) (mode-line-debug . [(20150307 512) nil "show status of `debug-on-error' in the mode-line" single ((:commit . "da44422eeb6a1f055b4ec2f822962c5162fce001") (:url . "https://github.com/tarsius/mode-line-debug") (:keywords "convenience" "lisp"))]) (mode-icons . [(20170216 620) ((emacs (24)) (cl-lib (0 5))) "Show icons for modes" tar ((:commit . "2d47c03ee33c53d069fd64409f7212a2e1ed3f18") (:url . "http://ryuslash.org/projects/mode-icons.html") (:keywords "multimedia"))]) (modalka . [(20170519 32) ((emacs (24 4))) "Easily introduce native modal editing of your own design" single ((:commit . "88935a26318a574adeeb2301ae8d010f0102b1d3") (:url . "https://github.com/mrkkrp/modalka") (:keywords "modal" "editing"))]) (mocker . [(20150916 1854) ((eieio (1 3)) (el-x (0 2 4))) "mocking framework for emacs" single ((:commit . "6a1d7c9189bd721debd1a60707526e43a733f537") (:keywords "lisp" "testing"))]) (mocha-snippets . [(20170103 2127) ((yasnippet (0 8 0))) "Yasnippets for the Mocha JS Testing Framework" tar ((:commit . "e054137bd78f0d236e983874da1f345d30a71816") (:keywords "test" "javascript"))]) (mocha . [(20171203 810) ((js2-mode (20150909)) (f (0 18))) "Run Mocha or Jasmine tests" single ((:commit . "8c93902ec3498024e44b1307dfd22285cfab907b") (:url . "http://github.com/scottaj/mocha.el") (:keywords "javascript" "mocha" "jasmine"))]) (mobdebug-mode . [(20140109 1946) ((lua-mode (20130419)) (emacs (24))) "Major mode for MobDebug" single ((:commit . "e1d483bc4e341c762bc5c0a8c52306a8d01ea0da") (:url . "https://github.com/deftsp/mobdebug-mode"))]) (mo-vi-ment-mode . [(20131028 2333) nil "Provide vi-like cursor movement that's easy on the fingers" single ((:commit . "f45b014261f8fab19254920bd1d92f3a83263411") (:keywords "convenience"))]) (mo-git-blame . [(20160129 959) nil "An interactive, iterative 'git blame' mode for Emacs" single ((:commit . "254a675eb794cdbbdef9fa2b4b7bb510b70089c0") (:keywords "tools"))]) (mmt . [(20170519 4) ((emacs (24 1)) (cl-lib (0 3))) "Missing macro tools for Emacs Lisp" single ((:commit . "5cc5d1ee3efe675fa49d62fe0ae6b483d7ad9392") (:url . "https://github.com/mrkkrp/mmt") (:keywords "macro" "emacs-lisp"))]) (mmm-mode . [(20171004 336) nil "Allow Multiple Major Modes in a buffer" tar ((:commit . "7661968fa6974996e58dfa28da33bca0cbde777d") (:url . "https://github.com/purcell/mmm-mode") (:keywords "convenience" "faces" "languages" "tools"))]) (mmm-mako . [(20121019 2351) ((mmm-mode (0 4 8))) "MMM submode class for Mako Templates" single ((:url . "https://bitbucket.org/pjenvey/mmm-mako"))]) (mmm-jinja2 . [(20170313 720) ((mmm-mode (0 5 4))) "MMM submode class for Jinja2 Templates" single ((:commit . "c8cb763174fa2fb61b9a0e5e0ff8cb0210f8492f") (:url . "https://github.com/glynnforrest/mmm-jinja2"))]) (mkdown . [(20140517 718) ((markdown-mode (2 0))) "Pretty Markdown previews based on mkdown.com" tar ((:commit . "8e23de82719af6c5b53b52b3308a02b3a1fb872e") (:url . "https://github.com/ajtulloch/mkdown.el") (:keywords "markdown"))]) (mixed-pitch . [(20170723 955) ((emacs (24 3))) "Use a variable pitch, keeping fixed pitch where it's sensible" single ((:commit . "6a4fbb9c48fc345d4d40228e8b686f6f2e585f8a") (:url . "https://github.com/jabranham/mixed-pitch"))]) (misc-fns . [(20170307 848) nil "Miscellaneous non-interactive functions." single ((:url . "https://www.emacswiki.org/emacs/download/misc-fns.el") (:keywords "internal" "unix" "lisp" "extensions" "local"))]) (misc-cmds . [(20170823 842) nil "Miscellaneous commands (interactive functions)." single ((:url . "https://www.emacswiki.org/emacs/download/misc-cmds.el") (:keywords "internal" "unix" "extensions" "maint" "local"))]) (mips-mode . [(20170310 2149) nil "Major-mode for MIPS assembly" single ((:commit . "a13d1fc5b583a29f059f7794f2d83e59da439fa1") (:url . "https://github.com/hlissner/emacs-mips-mode") (:keywords "mips" "assembly"))]) (mip-mode . [(20151126 2217) nil "virtual projects for emacs." single ((:commit . "7c88c383b4c7ed0a4c1dc397735f365c1fcb461c") (:keywords "workspaces" "workspace" "project" "projects" "mip-mode"))]) (minor-mode-hack . [(20141226 1220) nil "Change priority of minor-mode keymaps" single ((:url . "http://www.emacswiki.org/cgi-bin/wiki/download/minor-mode-hack.el") (:keywords "lisp"))]) (minizinc-mode . [(20170708 358) ((emacs (24 1))) "Major mode for MiniZinc code" single ((:commit . "b621b9e106edbe094bcc8e609d9398a60c2ac8b5") (:url . "http://github.com/m00nlight/minizinc-mode") (:keywords "languages" "minizinc"))]) (minitest . [(20160628 1120) ((dash (1 0 0))) "An Emacs mode for ruby minitest files" tar ((:commit . "1aadb7865c1dc69c201cecee275751ecec33a182") (:url . "https://github.com/arthurnn/minitest-emacs"))]) (minimal-theme . [(20160608 322) nil "A light/dark minimalistic Emacs 24 theme." tar ((:commit . "430e0d3fc2044c16aa9f10961841febbd60df285") (:url . "http://github.com/ikame/minimal-theme") (:keywords "color" "theme" "minimal"))]) (minimal-session-saver . [(20140508 1341) nil "Very lean session saver" single ((:commit . "cf654ac549850746dc21091746e4bcc1aef7668e") (:url . "http://github.com/rolandwalker/minimal-session-saver") (:keywords "tools" "frames" "project"))]) (miniedit . [(20100419 1045) nil "Enhanced editing for minibuffer fields." single ((:commit . "e12bf659c3eb92dd8a4cb77642dc0865c54667a3"))]) (minibuffer-cua . [(20130906 434) nil "Make CUA mode's S-up/S-down work in minibuffer" single ((:commit . "adc4979a64f8b36e05960e9afa0746dfa9e2e4c7") (:url . "https://github.com/knu/minibuffer-cua.el") (:keywords "completion" "editing"))]) (minibuffer-complete-cycle . [(20130813 945) nil "Cycle through the *Completions* buffer" single ((:commit . "3df80135887d0169e02294a948711f6dfeca4a6f") (:url . "https://github.com/knu/minibuffer-complete-cycle") (:keywords "completion"))]) (minibuf-isearch . [(20151226 1143) nil "incremental search on minibuffer history" single ((:commit . "2846c6ac369ee623dad4cd3c8a7a6d9078965516") (:keywords "minibuffer" "history" "incremental search"))]) (mini-header-line . [(20170621 521) ((emacs (24 4))) "a minimal header-line" single ((:commit . "73b6724e0a26c4528d93768191c8aa59e6bce2e5") (:url . "https://github.com/ksjogo/mini-header-line") (:keywords "header-line" "mode-line"))]) (mingus . [(20171124 238) ((libmpdee (2 1))) "MPD Interface" tar ((:commit . "93827f564145a598838d3c3232202a60d681bd49") (:url . "https://github.com/pft/mingus") (:keywords "multimedia" "elisp" "music" "mpd"))]) (minesweeper . [(20150413 2222) nil "play minesweeper in Emacs" single ((:url . "https://bitbucket.org/zck/minesweeper.el") (:keywords "game" "fun" "minesweeper" "inane" "diversion"))]) (milkode . [(20140926 2229) nil "Command line search and direct jump with Milkode" single ((:commit . "ba97e2aeefa1d9d0b3835bf08edd0de248b0c513") (:keywords "milkode" "search" "grep" "jump" "keyword"))]) (migemo . [(20160924 741) ((cl-lib (0 5))) "Japanese incremental search through dynamic pattern expansion" single ((:commit . "e4744efae1b2fdea2bbd2ceaff0f6ea0bb739f5a") (:url . "https://github.com/emacs-jp/migemo"))]) (midje-mode . [(20170808 2103) ((cider (0 1 4)) (clojure-mode (1 0))) "Minor mode for running Midje tests in emacs" tar ((:commit . "10ad5b6084cd03d5cd268b486a7c3c246d85535f"))]) (micgoline . [(20160414 2026) ((emacs (24 3)) (powerline (2 3))) "powerline mode, color schemes from microsoft and google's logo." single ((:commit . "837504263bb1711203b0f7efecd6b7b5f272fae0") (:url . "https://github.com/yzprofile/micgoline") (:keywords "mode-line" "powerline" "theme"))]) (mic-paren . [(20170731 1207) nil "advanced highlighting of matching parentheses" single ((:commit . "d0410c7d805c9aaf51a1bcefaaef092bed5824c4") (:keywords "languages" "faces" "parenthesis" "matching"))]) (mhc . [(20171016 335) ((calfw (20150703))) "Message Harmonized Calendaring system." tar ((:commit . "03a50a7dd5f90fb981b72e4b9e9385e4d1fe3be3") (:url . "http://www.quickhack.net/mhc") (:keywords "calendar"))]) (mexican-holidays . [(20160109 1342) nil "Mexico holidays for Emacs calendar." single ((:commit . "43ced1f9e40a04be6927d1a1be64060f9be4f5c5") (:url . "https://github.com/shopClerk/mexican-holidays") (:keywords "calendar"))]) (mew . [(20170508 22) nil "Messaging in the Emacs World" tar ((:commit . "36b36a154dab22e112cc19675cfd73478f2a5956"))]) (metaweblog . [(20170626 750) ((xml-rpc (1 6 8))) "An emacs library to access metaweblog based weblogs" tar ((:commit . "c039d1ffb618d19d160bde835fab389e9a7433a3"))]) (metascript-mode . [(20150708 1757) ((emacs (24 3))) "Major mode for the Metascript programming language" single ((:commit . "edb361c7b0e5de231e5334a17b90652fb1df78f9") (:url . "http://github.com/metascript/metascript-mode") (:keywords "languages" "metascript" "mjs"))]) (metalheart-theme . [(20160709 2341) ((emacs (24))) "Low-contrast theme with a dark blue-green background." single ((:commit . "ec98ea2c11dc1213dae8cbe1fe0cee73ca138bb2"))]) (meta-presenter . [(20170425 1934) nil "A simple multi-file presentation tool for Emacs" single ((:commit . "e882ac7f7658dd9507aca0ff88c88fcf74618252") (:url . "http://ismail.teamfluxion.com") (:keywords "productivity" "presentation"))]) (messages-are-flowing . [(20170218 1720) nil "visible indication when composing \"flowed\" emails" single ((:commit . "ef879726957c850c3a5afd7f1118604991e37e32") (:keywords "mail"))]) (message-x . [(20151029 718) nil "customizable completion in message headers" single ((:keywords "news" "mail" "compose" "completion"))]) (meson-mode . [(20170901 1135) ((emacs (24 3))) "Major mode for the Meson build system files" single ((:commit . "212d9f38a08074f1cb6e914e12b60bc52dcb8bee") (:url . "https://github.com/wentasah/meson-mode") (:keywords "languages" "tools"))]) (merlin . [(20170917 430) nil "Mode for Merlin, an assistant for OCaml." tar ((:commit . "a5dbf8e321ff162476555e62264468dd6f55c279") (:url . "https://github.com/ocaml/merlin") (:keywords "ocaml" "languages"))]) (menu-bar+ . [(20170720 710) nil "Extensions to `menu-bar.el'." single ((:url . "https://www.emacswiki.org/emacs/download/menu-bar%2b.el") (:keywords "internal" "local" "convenience"))]) (mentor . [(20170105 221) ((xml-rpc (1 6 9)) (seq (1 11)) (cl-lib (0 5))) "Frontend for the rTorrent bittorrent client" tar ((:commit . "9a160d718b02a95b1bb24072cca87b4348e1e261") (:keywords "comm" "processes" "bittorrent"))]) (memolist . [(20150804 1021) ((markdown-mode (22 0)) (ag (0 45))) "memolist.el is Emacs port of memolist.vim." single ((:commit . "60c296e202a71e9dcf1c3936d47b5c4b95c5839f") (:url . "http://github.com/mikanfactory/emacs-memolist") (:keywords "markdown" "memo"))]) (memoize . [(20170720 1802) nil "Memoization functions" single ((:commit . "636defefa9168f90bce6fc27431352ac7d01a890") (:url . "https://github.com/skeeto/emacs-memoize"))]) (melpa-upstream-visit . [(20130720 333) ((s (1 6 0))) "A set of kludges to visit a melpa-hosted package's homepage" single ((:commit . "7310c74fdead3c0f86ad6eff76cf989e63f70f66") (:keywords "convenience"))]) (mellow-theme . [(20170808 617) ((emacs (24 0))) "an Emacs 24 theme based on Mellow (tmTheme)" single ((:commit . "2bdf18f05f5212b6f269d9a94afe2cf201766891") (:url . "https://github.com/emacsfodder/tmtheme-to-deftheme"))]) (melancholy-theme . [(20170220 1248) nil "A dark theme for dark minds" single ((:commit . "a9e13ca7051731b3a2c2aece9f3e3033b9a5e41d") (:url . "http://github.com/techquila/melancholy-theme"))]) (meghanada . [(20171122 626) ((emacs (24 3)) (yasnippet (0 6 1)) (company (0 9 0)) (flycheck (0 23))) "A better java development mode" tar ((:commit . "555b8b9ea8ef56dda645ea605b38501cb4222b12") (:url . "https://github.com/mopemope/meghanada-emacs") (:keywords "languages" "java"))]) (mediawiki . [(20170812 2255) nil "mediawiki frontend" single ((:commit . "8473e12d1839f5287a4227586bf117dad820f867") (:url . "https://github.com/hexmode/mediawiki-el") (:keywords "mediawiki" "wikipedia" "network" "wiki"))]) (md-readme . [(20160811 946) nil "Markdown-formatted READMEs for your ELisp" tar ((:commit . "bf818dd847c8b06b3b5100c5d3cf24cf96662528") (:url . "http://github.com/thomas11/md-readme/tree/master") (:keywords "lisp" "help" "readme" "markdown" "header" "documentation" "github"))]) (mc-extras . [(20170824 2239) ((multiple-cursors (1 2 1))) "Extra functions for multiple-cursors mode." tar ((:commit . "f0ba639e9b18cc56e80ae45bbb2b694dbad9171a") (:url . "https://github.com/knu/mc-extras.el") (:keywords "editing" "cursors"))]) (mbsync . [(20171130 335) nil "run mbsync to fetch mails" single ((:commit . "911d9ac255e8f7fb4bd21c0e816e44abfeb59128") (:url . "https://github.com/dimitri/mbsync-el"))]) (mbo70s-theme . [(20170808 615) ((emacs (24 0))) "70s style palette, with similarities to mbo theme" single ((:commit . "bed3db8965708ed4e9482b224a9b084765c052f2") (:url . "https://github.com/emacsfodder/tmtheme-to-deftheme"))]) (mbe . [(20151126 334) ((emacs (24)) (cl-lib (0 5))) "Macros by Example" single ((:commit . "bb10aa8f26bb7e9b1d5746934c94edb00402940c") (:url . "https://github.com/ijp/mbe.el") (:keywords "tools" "macros"))]) (mb-url . [(20161224 1806) ((cl-lib (0))) "Multiple Backends for Emacs URL package." tar ((:commit . "129a0bb6a684be76fb9f09010e710065d0e5baaa") (:url . "https://github.com/dochang/mb-url") (:keywords "url"))]) (mb-depth+ . [(20170307 844) nil "Indicate minibuffer-depth in prompt" single ((:url . "https://www.emacswiki.org/emacs/download/mb-depth%2b.el") (:keywords "convenience"))]) (maxframe . [(20170120 905) nil "maximize the emacs frame based on display size" single ((:commit . "13bda6dd9f1d96aa4b9dd9957a26cefd399a7772") (:keywords "display" "frame" "window" "maximize"))]) (maven-test-mode . [(20141219 2157) ((s (1 9)) (emacs (24))) "Utilities for navigating test files and running maven test tasks." single ((:commit . "a19151861df2ad8ae4880a2e7c86ddf848cb569a") (:url . "http://github.com/rranelli/maven-test-mode") (:keywords "java" "maven" "test"))]) (maude-mode . [(20160222 807) nil "Emacs mode for the programming language Maude" single ((:commit . "c9543bb8a172fa77af592388e7f520a4a6d38987") (:keywords "maude"))]) (matlab-mode . [(20160902 459) nil "Major mode for MATLAB(R) dot-m files" tar ((:commit . "3b3c48ac0c27039e0bef89c643f0ee4c0b53d3d0") (:url . "http://sourceforge.net/projects/matlab-emacs/") (:keywords "matlab" "programming" "language" "(X)emacs"))]) (math-symbols . [(20170818 759) ((helm (1 0))) "Math Symbol Input methods and conversion tools" tar ((:commit . "3f8b466f002e1b28ddbe9a6f236c9a1352adb17d") (:url . "https://github.com/kawabata/math-symbols") (:keywords "i18n" "languages" "tex"))]) (math-symbol-lists . [(20170221 553) nil "Lists of Unicode math symbols and latex commands" tar ((:commit . "1af8fdcab7941a62287c2d04b8876e1538f39c60") (:url . "https://github.com/vspinu/math-symbol-lists") (:keywords "unicode" "symbols" "mathematics"))]) (material-theme . [(20171123 1040) ((emacs (24 1))) "A Theme based on the colors of the Google Material Design" tar ((:commit . "b66838d220ad380a16da1d8878936974b26f815d") (:url . "http://github.com/cpaulik/emacs-material-theme") (:keywords "themes"))]) (mastodon . [(20170619 1050) ((emacs (24 4))) "Client for Mastodon" tar ((:commit . "e08bb5794762d22f90e85fd65cef7c143e6b9318") (:url . "https://github.com/jdenen/mastodon.el"))]) (maruo-macro-mode . [(20160616 649) ((emacs (24 3))) "Major mode for editing Hidemaru/Maruo macro script" single ((:commit . "8fc9a38ad051eafa8eb94038711acc52c5d1d8d5") (:keywords "programming" "editor" "macro"))]) (marshal . [(20171018 932) ((eieio (1 4)) (json (1 3)) (ht (2 1))) "eieio extension for automatic (un)marshalling" single ((:commit . "6a31133b25addabc5ec9c87ba959d69c5122171b") (:url . "https://github.com/sigma/marshal.el") (:keywords "eieio"))]) (marmalade-client . [(20141231 1207) ((web (0 5 2)) (kv (0 0 19)) (gh (0 8 0))) "client for marmalade API from emacs" tar ((:commit . "f315dea57e4fbebd9ee0668c0bafd4c45c7b754a") (:url . "https://github.com/nicferrier/emacs-marmalade-upload") (:keywords "lisp"))]) (markup-faces . [(20141110 17) nil "collection of faces for markup language modes" single ((:commit . "98a807ed82473eb41c6a201ed7ef816d6bcd67b0") (:url . "https://github.com/sensorflo/markup-faces") (:keywords "wp" "faces"))]) (markup . [(20170420 429) ((cl-lib (0 5))) "Simple markup generation helpers." single ((:commit . "876da2d3f23473475bb0fd0a1480ae11d2671291") (:url . "http://github.com/leoc/markup.el") (:keywords "convenience" "markup" "html"))]) (markdownfmt . [(20160609 541) ((emacs (24))) "Format markdown using markdownfmt" single ((:commit . "187a74eb4fd9e8520ce08da42d1d292b9af7f2b7") (:url . "https://github.com/nlamirault/emacs-markdownfmt") (:keywords "markdown"))]) (markdown-toc . [(20170711 1249) ((s (1 9 0)) (dash (2 11 0)) (markdown-mode (2 1))) "A simple TOC generator for markdown file" tar ((:commit . "7038f4f6d5c2bc7e4aea89699a607ac2b7dd16a8"))]) (markdown-preview-mode . [(20171121 2323) ((emacs (24 3)) (websocket (1 6)) (markdown-mode (2 0)) (cl-lib (0 5)) (web-server (0 1 1)) (uuidgen (0 3))) "markdown realtime preview minor mode." tar ((:commit . "4ec15183fc9fadb9368902c9b77a2d0e1196d1c6") (:url . "https://github.com/ancane/markdown-preview-mode") (:keywords "markdown" "gfm" "convenience"))]) (markdown-preview-eww . [(20160111 702) ((emacs (24 4))) "Realtime preview by eww" single ((:commit . "5853f836425c877c8a956501f0adda137ef1d3b7") (:url . "https://github.com/niku/markdown-preview-eww"))]) (markdown-mode . [(20171126 929) ((emacs (24)) (cl-lib (0 5))) "Major mode for Markdown-formatted text" single ((:commit . "ea03dcb144e08dce83c9b0078bb03f767b836f23") (:url . "https://jblevins.org/projects/markdown-mode/") (:keywords "markdown" "github flavored markdown" "itex"))]) (markdown-mode+ . [(20170320 1404) ((markdown-mode (20111229))) "extra functions for markdown-mode" tar ((:commit . "411d079f4430a33c34ec0bbcb1535fe1145a2509") (:url . "http://github.com/milkypostman/markdown-mode-plus") (:keywords "markdown" "latex" "osx" "rtf"))]) (mark-tools . [(20130614 325) nil "Some simple tools to access the mark-ring in Emacs" single ((:commit . "a11b61effa90bd0abc876d12573674d36fc17f0c") (:url . "https://github.com/stsquad/emacs-mark-tools"))]) (mark-multiple . [(20121118 754) nil "Sorta lets you mark several regions at once." tar ((:commit . "f6a53c7c5283d640ae718f4548b0fda78877a375"))]) (marcopolo . [(20160421 304) ((s (1 9 0)) (dash (2 9 0)) (pkg-info (0 5 0)) (request (0 1 0))) "Emacs client to the Docker HUB/Registry API" tar ((:commit . "9193aabdf12223087b5ed58f1507d5d8a24a4381") (:url . "https://github.com/nlamirault/marcopolo") (:keywords "docker"))]) (map-regexp . [(20130522 1403) ((cl-lib (0 2))) "map over matches of a regular expression" single ((:commit . "b8e06284ec1c593d7d2bda5f35597a63de46333f") (:url . "https://github.com/tarsius/map-regexp") (:keywords "convenience"))]) (map-progress . [(20140310 1432) nil "mapping macros that report progress" single ((:commit . "3167eb218510953fb97e7d50948a625eaa3f0005") (:url . "https://github.com/tarsius/map-progress/") (:keywords "convenience"))]) (mandoku-tls . [(20171117 1840) ((emacs (24 4)) (mandoku (20170301)) (github-clone (0 2)) (hydra (0 13 6)) (helm (1 7 0)) (org (9 0)) (helm-charinfo (20170601))) "A tool to access the TLS database" single ((:commit . "ffeebf5bd451ac1806ddfe1744fbbd036a56f902") (:url . "https://github.com/mandoku/mandoku-tls") (:keywords "convenience"))]) (mandoku . [(20171002 12) ((org (8 0)) (magit (20151028)) (github-clone (20150705)) (git (20140128))) "A tool to access repositories of premodern Chinese texts" tar ((:commit . "77647573331c602847b06b9e21de69f72cd7bad5"))]) (mandm-theme . [(20170925 321) nil "An M&M color theme." single ((:commit . "078d6d6f11bd48193c5de590cfb0e3d0d687ffc9") (:url . "https://github.com/choppsv1/emacs-mandm-theme.git"))]) (manage-minor-mode . [(20140310 900) ((emacs (24 3))) "Manage your minor-modes easily" single ((:commit . "1bed33b0752380b548b822fe72e6858c5fe70c8e") (:url . "https://github.com/ShingoFukuyama/manage-minor-mode") (:keywords "minor-mode" "manage" "emacs"))]) (man-commands . [(20151221 1421) ((cl-lib (0 5))) "Add interactive commands for every manpages installed in your computer." single ((:commit . "f4ba0c3790855d7544dff92d470d212f24de1d9d") (:url . "http://github.com/nflath/man-commands"))]) (malyon . [(20161208 1325) ((cl-lib (0 5))) "mode to execute Z-code files version 3, 5, 8" single ((:commit . "0d9882650720b4a791556f5e2d917388965d6fc0") (:url . "https://github.com/speedenator/malyon") (:keywords "games" "emulations"))]) (mallard-snippets . [(20131023 1151) ((yasnippet (0 8 0)) (mallard-mode (0 1 1))) "Yasnippets for Mallard" tar ((:commit . "70c5293f10722f2ace73bdf74d9a18f95b040edc") (:url . "https://github.com/jhradilek/emacs-mallard-snippets") (:keywords "snippets" "mallard"))]) (mallard-mode . [(20131203 2025) nil "Major mode for editing Mallard files" tar ((:commit . "c48170c1ace4959abcc5fb1df0d4cb149cff44c1") (:url . "https://github.com/jhradilek/emacs-mallard-mode") (:keywords "xml" "mallard"))]) (malinka . [(20171202 221) ((s (1 9 0)) (dash (2 4 0)) (f (0 11 0)) (cl-lib (0 3)) (rtags (0 0)) (projectile (0 11 0))) "A C/C++ project configuration package for Emacs" single ((:commit . "d4aa517c7a9022eae16c758c7efdb3a0403542d7") (:url . "https://github.com/LefterisJP/malinka") (:keywords "c" "c++" "project-management"))]) (makey . [(20131231 630) ((cl-lib (0 2))) "interactive commandline mode" single ((:commit . "a61781e69d3b451551e269446e1c5f624ab81137"))]) (makefile-executor . [(20171017 438) ((emacs (24 3)) (dash (2 11 0)) (f (0 11 0)) (s (1 10 0))) "Commands for conveniently running makefile targets" single ((:commit . "a950438c93dc2fdcb867ac25174c773deda95aff") (:url . "https://github.com/thiderman/makefile-executor.el") (:keywords "processes"))]) (make-it-so . [(20171129 655) ((swiper (0 8 0)) (emacs (24))) "Transform files with Makefile recipes." tar ((:commit . "4f8b61011700036c98993e287d7aa36a52f2e206") (:url . "https://github.com/abo-abo/make-it-so") (:keywords "make" "dired"))]) (make-color . [(20140625 450) nil "Alternative to picking color - update fg/bg color by pressing r/g/b/... keys" single ((:commit . "5ca1383ca9228bca82120b238bdc119f302b75c0") (:url . "https://github.com/alezost/make-color.el") (:keywords "color"))]) (major-mode-icons . [(20170228 2314) ((emacs (24 3)) (powerline (2 4)) (all-the-icons (2 3 0))) "display icon for major-mode on mode-line." tar ((:commit . "e6117a236b2ad52e948576550b183053321dfc91") (:url . "http://github.com/stardiviner/major-mode-icons") (:keywords "frames" "multimedia"))]) (majapahit-theme . [(20160817 1148) nil "Color theme with a dark and light versions" tar ((:commit . "77c96df7619666b2102d90d452eeadf04adc89a6") (:keywords "color" "theme") (:url . "https://gitlab.com/franksn/majapahit-theme"))]) (main-line . [(20151120 1806) ((cl-lib (0 5))) "modeline replacement forked from an early version of powerline.el" single ((:commit . "2ef3175854f5b6c85f2e1bed26507cdca2f6ad16") (:url . "https://github.com/jasonm23/emacs-mainline") (:keywords "statusline" "/" "modeline"))]) (magnatune . [(20151030 1235) ((dash (2 9 0)) (s (1 9 0))) "browse magnatune's music catalog" tar ((:commit . "605b01505ba30589c77ebb4c96834b5072ccbdd4"))]) (magma-mode . [(20160304 408) ((cl-lib (0 3)) (dash (2 6 0)) (f (0 17 1))) "Magma mode for Emacs" tar ((:commit . "528c96a269980dcc6b65e2e973510ff07e6b9fc4") (:url . "https://github.com/ThibautVerron/magma-mode"))]) (magithub . [(20171203 1659) ((emacs (25)) (magit (2 8)) (s (1 12 0)) (ghub+ (0 2)) (git-commit (2 8)) (markdown-mode (2 3))) "Magit interfaces for Github" tar ((:commit . "ddcbd86cd2286e669b27d6350c064c57f3cc5f82") (:url . "https://github.com/vermiculus/magithub") (:keywords "git" "tools" "vc"))]) (magit-topgit . [(20160313 1254) ((emacs (24 4)) (magit (2 1 0))) "TopGit extension for Magit" single ((:commit . "11489ea798bc88d0ea5244bbf725285eedfefbef") (:keywords "vc" "tools"))]) (magit-tbdiff . [(20170725 1850) ((emacs (24 4)) (magit (2 10 0))) "Magit extension for git-tbdiff" single ((:commit . "1d1333af9d76b9e832212e9da152397df65f7205") (:url . "https://github.com/magit/magit-tbdiff") (:keywords "vc" "tools"))]) (magit-svn . [(20170213 433) ((emacs (24 4)) (magit (2 1 0))) "Git-Svn extension for Magit" single ((:commit . "c833903732a14478f5c4cfc561bae7c50671b36c") (:keywords "vc" "tools"))]) (magit-stgit . [(20171115 754) ((emacs (24 4)) (magit (2 1 0))) "StGit extension for Magit" single ((:commit . "0e44df69d7c0c793808a5278bed35b2c6ec39f7f") (:keywords "vc" "tools"))]) (magit-rockstar . [(20170703 704) ((dash (2 12 1)) (magit (2 6 1))) "commit like a rockstar" single ((:commit . "a65042e3445008b55190f1258ae54bd78e12174b") (:url . "https://github.com/tarsius/magit-rockstar") (:keywords "convenience"))]) (magit-popup . [(20171121 1110) ((emacs (24 4)) (async (1 9 2)) (dash (2 13 0))) "Define prefix-infix-suffix command combos" tar ((:commit . "70e3cdd6140ebdf477f86b88ac2bd1a8de115e88") (:url . "https://github.com/magit/magit-popup") (:keywords "bindings"))]) (magit-p4 . [(20170414 546) ((magit (2 1)) (magit-popup (2 1)) (p4 (12 0)) (cl-lib (0 5))) "git-p4 plug-in for Magit" single ((:commit . "c87de6d3f10fd35415a0c56e63747eb14ed5a113") (:url . "https://github.com/qoocku/magit-p4") (:keywords "vc" "tools"))]) (magit-lfs . [(20170312 1524) ((emacs (24 4)) (magit (2 10 3)) (dash (2 13 0))) "Magit plugin for Git LFS" single ((:commit . "799282fce73b668d2cf6e4fa87f889fec8e25333") (:url . "https://github.com/ailrun/magit-lfs") (:keywords "magit" "git" "lfs" "tools" "vc"))]) (magit-imerge . [(20170805 819) ((emacs (24 4)) (magit (2 10 0))) "Magit extension for git-imerge" single ((:commit . "1cd0fa843095f4ce8aa4eae89476c116414d060c") (:url . "https://github.com/magit/magit-imerge") (:keywords "vc" "tools"))]) (magit-gitflow . [(20170929 124) ((magit (2 1 0)) (magit-popup (2 2 0))) "gitflow extension for magit" single ((:commit . "cc41b561ec6eea947fe9a176349fb4f771ed865b") (:url . "https://github.com/jtatarik/magit-gitflow") (:keywords "vc" "tools"))]) (magit-gh-pulls . [(20171117 226) ((emacs (24 4)) (gh (0 9 1)) (magit (2 1 0)) (pcache (0 2 3)) (s (1 6 1))) "GitHub pull requests extension for Magit" single ((:commit . "d526f4c9ee1709c79f8a4630699ce1f25ae054e7") (:url . "https://github.com/sigma/magit-gh-pulls") (:keywords "git" "tools"))]) (magit-gerrit . [(20160226 130) ((magit (2 3 1))) "Magit plugin for Gerrit Code Review" single ((:commit . "ece6f369694aca17f3ac166ed2801b432acfe20d") (:url . "https://github.com/terranpro/magit-gerrit"))]) (magit-find-file . [(20150702 130) ((magit (2 1 0)) (dash (2 8 0))) "completing-read over all files in Git" single ((:commit . "c3ea91bab37d10a814a829728ec972811f728d60") (:url . "https://github.com/bradleywright/magit-find-file.el") (:keywords "git"))]) (magit-filenotify . [(20151116 1540) ((magit (1 3 0)) (emacs (24 4))) "Refresh status buffer when git tree changes" single ((:commit . "c0865b3c41af20b6cd89de23d3b0beb54c8401a4") (:keywords "tools"))]) (magit-annex . [(20170913 659) ((cl-lib (0 3)) (magit (2 11 0))) "Control git-annex from Magit" single ((:commit . "895c229c2b0d822a4debb302d8638105ecb4ee20") (:url . "https://github.com/magit/magit-annex") (:keywords "vc" "tools"))]) (magit . [(20171202 439) ((emacs (24 4)) (async (20170823)) (dash (20170810)) (with-editor (20170817)) (git-commit (20170823)) (magit-popup (20171121))) "A Git porcelain inside Emacs" tar ((:commit . "67234c1619b94442679aa887571f94a8477b2edc") (:url . "https://github.com/magit/magit") (:keywords "git" "tools" "vc"))]) (magic-latex-buffer . [(20170530 1705) ((cl-lib (0 5)) (emacs (24 3))) "Magically enhance LaTeX-mode font-locking for semi-WYSIWYG editing" single ((:commit . "c03277d5619d9adcd871f3e6480a1a27985810cb") (:url . "http://hins11.yu-yake.com/"))]) (magic-filetype . [(20161214 1017) ((emacs (24)) (s (1 9 0))) "Enhance filetype major mode" single ((:commit . "9a20137474697063898902b43a40423daa4eb64d") (:url . "https://github.com/zonuexe/magic-filetype.el") (:keywords "emulations" "vim" "ft" "file" "magic-mode"))]) (mag-menu . [(20150505 1150) ((splitter (0 1 0))) "Intuitive keyboard-centric menu system" single ((:commit . "9b9277021cd09fb1dba64b1d2a00705d20914bd6") (:url . "https://github.com/chumpage/mag-menu") (:keywords "convenience"))]) (madhat2r-theme . [(20170202 1630) ((emacs (24))) "dark color theme that is easy on the eyes" single ((:commit . "6b387f09de055cfcc15d74981cd4f32f8f9a7323") (:url . "https://github.com/madhat2r/madhat2r-theme") (:keywords "color" "theme"))]) (macrostep . [(20161120 1306) ((cl-lib (0 5))) "interactive macro expander" tar ((:commit . "424e3734a1ee526a1bd7b5c3cd1d3ef19d184267") (:url . "https://github.com/joddie/macrostep") (:keywords "lisp" "languages" "macro" "debugging"))]) (macros+ . [(20170307 842) nil "Extensions to `macros.el'." single ((:url . "http://www.emacswiki.org/emacs/download/macros%2b.el") (:keywords "abbrev" "local"))]) (macro-math . [(20130328 904) nil "in-buffer mathematical operations" single ((:commit . "216e59371e9ee39c34117ba79b9acd78bb415750") (:url . "http://nschum.de/src/emacs/macro-math/") (:keywords "convenience"))]) (maces-game . [(20170903 851) ((dash (2 12 0)) (cl-lib (0 5)) (emacs (24))) "another anagram game." tar ((:commit . "c0fb795f5642467ea528d2f04d904547e8a77ecd") (:url . "https://github.com/pawelbx/anagram-game") (:keywords "games" "word games" "anagram"))]) (mac-pseudo-daemon . [(20170728 1240) ((cl-lib (0 1))) "Daemon mode that plays nice with Mac OS." single ((:commit . "d235680a72677f11925b912428ad1a57b664e3e8") (:url . "https://github.com/DarwinAwardWinner/osx-pseudo-daemon") (:keywords "convenience" "osx" "mac"))]) (m-buffer . [(20170407 1441) ((seq (2 14))) "List-Oriented, Functional Buffer Manipulation" tar ((:commit . "8681342aaffa187e5c54945ab91b812965a96d19"))]) (lyrics . [(20160920 1945) ((emacs (25 1)) (seq (2 15))) "Show lyrics" single ((:commit . "1378d534614793a51ebbed661c59eb8818299182") (:url . "https://github.com/emacs-pe/lyrics.el") (:keywords "convenience"))]) (lxc . [(20140410 1322) nil "lxc integration with Emacs" single ((:commit . "88bed56c954d1edd9ff5ce0ced2c02dcf9f71835") (:url . "https://github.com/nicferrier/emacs-lxc") (:keywords "processes"))]) (lusty-explorer . [(20171126 1221) nil "Dynamic filesystem explorer and buffer switcher" single ((:commit . "303618cafa01da3c8f99da4849d3ddbdc146a5d1") (:keywords "convenience" "files" "matching"))]) (lush-theme . [(20141107 806) ((emacs (24))) "A dark theme with strong colors" single ((:commit . "3b80004f33cdce9f4db69e9ccf2041561e98985d") (:url . "https://github.com/andre-richter/emacs-lush-theme") (:keywords "theme" "dark" "strong colors"))]) (luarocks . [(20170430 1605) ((emacs (24)) (cl-lib (0 5))) "luarocks tools" single ((:commit . "cee27ba0716edf338077387969883226dd2b7484") (:url . "https://github.com/emacs-pe/luarocks.el") (:keywords "convenience"))]) (lua-mode . [(20170130 435) nil "a major-mode for editing Lua scripts" tar ((:commit . "652e299cb967fccca827dda381d61a9c144d97de") (:url . "http://immerrr.github.com/lua-mode") (:keywords "languages" "processes" "tools"))]) (lsp-vue . [(20171202 917) ((emacs (25 1)) (lsp-mode (3 0))) "Vue support for lsp-mode" single ((:commit . "9085d6c7646d80728d14bf5e4ec9037dfb91e3d1") (:url . "https://github.com/emacs-lsp/lsp-vue"))]) (lsp-rust . [(20171128 331) ((lsp-mode (3 0)) (rust-mode (0 3 0))) "Rust support for lsp-mode" single ((:commit . "e560b81f21f770648a1a8621add9a2fe3dbe83af") (:url . "https://github.com/emacs-lsp/lsp-rust") (:keywords "rust"))]) (lsp-python . [(20171021 254) ((lsp-mode (3 0))) "Python support for lsp-mode" single ((:commit . "5acea5f921dc396ea092ee253ec01b45dee3cbfd") (:url . "https://github.com/emacs-lsp/lsp-python") (:keywords "python"))]) (lsp-ocaml . [(20171111 1352) ((emacs (25 1)) (lsp-mode (3 0))) "OCaml support for lsp-mode" single ((:commit . "1aef50ceb2794a2f2234fb0f13410b7f1e3b5c16") (:url . "https://github.com/anmonteiro/lsp-ocaml") (:keywords "languages" "ocaml" "reason" "lsp"))]) (lsp-mode . [(20171205 1957) ((emacs (25 1)) (flycheck (30))) "Minor mode for interacting with Language Servers" tar ((:commit . "b07f954eb3f568ed0e78634515af06cea3264505") (:url . "https://github.com/emacs-lsp/lsp-mode"))]) (lsp-javascript-typescript . [(20171125 147) ((lsp-mode (3 0))) "Javascript/Typescript support for lsp-mode" single ((:commit . "6e303c84f1edd9863cacfcfacaf52f7adb64babc") (:url . "https://github.com/emacs-lsp/lsp-javascript") (:keywords "javascript" "typescript" "lsp"))]) (lsp-javacomp . [(20171024 1547) ((emacs (25 1)) (lsp-mode (3 0)) (s (1 2 0))) "Provide Java IDE features powered by JavaComp." single ((:commit . "ed23aaeee27e6253bed5752fb8fbb7a5fa61967c") (:url . "https://github.com/tigersoldier/lsp-javacomp") (:keywords "java"))]) (lsp-java . [(20171023 650) ((emacs (25 1)) (lsp-mode (3 0))) "Java support for lsp-mode" single ((:commit . "5176f63e80e8f971563c0b98658db7dc72404369") (:url . "https://github.com/emacs-lsp/lsp-java") (:keywords "java"))]) (lsp-haskell . [(20171021 330) ((lsp-mode (3 0)) (haskell-mode (1 0))) "Haskell support for lsp-mode" single ((:commit . "16ca9fa975e64e840e062485ed30e4b297d72424") (:url . "https://github.com/emacs-lsp/lsp-haskell") (:keywords "haskell"))]) (lsp-hack . [(20171128 1238) ((lsp-mode (3 1))) "lsp-mode client for hacklang" single ((:commit . "f299555ad5206f13d7cfe75a3c76607b1f0d6da5") (:url . "https://github.com/jra3/lsp-hack"))]) (lsp-go . [(20171021 336) ((lsp-mode (3 0))) "Go support for lsp-mode" single ((:commit . "d270b7c0bd893fdc73a97763e07706830756cad2") (:url . "https://github.com/emacs-lsp/lsp-go") (:keywords "go" "golang"))]) (love-minor-mode . [(20170726 2236) ((lua-mode (20130419))) "Minor mode for working on LÖVE projects" single ((:commit . "3ca8f3405338f2d6f4fbcdd5e89342a46378543a") (:url . "https://github.com/ejmr/love-minor-mode"))]) (lorem-ipsum . [(20140911 1408) nil "Insert dummy pseudo Latin text." single ((:commit . "4b39f6fed455d67f635b3837cf5668bf74d0f6cd") (:keywords "tools" "language" "convenience"))]) (loop . [(20160813 707) nil "friendly imperative loop structures" single ((:commit . "e22807f83a0890dc8a904c51ee0742c34efccc6c") (:keywords "loop" "while" "for each" "break" "continue"))]) (look-mode . [(20151211 1026) nil "quick file viewer for image and text file browsing" single ((:commit . "d65f75e8ea24eff2ac31c53b4835b45127eedd56"))]) (look-dired . [(20160729 1623) ((look-mode (1 0))) "Extensions to look-mode for dired buffers" single ((:commit . "9bfa4e5e6f3810705b6426c88493ea0bf6b15640") (:url . "https://github.com/vapniks/look-dired") (:keywords "convenience"))]) (lolcode-mode . [(20111002 147) nil "Major mode for editing LOLCODE" single ((:commit . "1914f1ba87587ecf5f175eeb2144c28e9f039317") (:url . "http://github.com/bodil/lolcode-mode") (:keywords "lolcode" "major" "mode"))]) (logview . [(20170928 820) ((emacs (24 1)) (datetime (0 3))) "Major mode for viewing log files" single ((:commit . "72b6c5349206172a146b2c730b8ac040a92ebc3f") (:url . "https://github.com/doublep/logview") (:keywords "files" "tools"))]) (logstash-conf . [(20170524 1229) nil "basic mode for editing logstash configuration" single ((:commit . "4e127f9aec190786613445aa88efa307ff7c6748"))]) (logito . [(20120225 1255) ((eieio (1 3))) "logging library for Emacs" single ((:commit . "824acb89d2cc18cb47281a4fbddd81ad244a2052") (:keywords "lisp" "tool"))]) (logalimacs . [(20131021 1129) ((popwin (0 6 2)) (popup (0 5 0)) (stem (20130120))) "Front-end to logaling-command for Ruby gems" single ((:commit . "8286e39502250fc6c3c6656a7f46a8eee8e9a713") (:url . "https://github.com/logaling/logalimacs") (:keywords "translation" "logaling-command"))]) (log4j-mode . [(20160108 1118) nil "major mode for viewing log files" single ((:commit . "26171b1e723502055e085393b0ecdcb6db406010") (:url . "http://log4j-mode.sourceforge.net") (:keywords "tools"))]) (log4e . [(20170401 604) nil "provide logging framework for elisp" single ((:commit . "34309972ad02abcebbcff6b1682731978aef030c") (:url . "https://github.com/aki2o/log4e") (:keywords "log"))]) (lodgeit . [(20150312 649) nil "Paste to a lodgeit powered pastebin" single ((:commit . "ec9b8e5cbb17bcf8ac4bdddd1d361cb60e59384c") (:url . "https://github.com/ionrock/lodgeit-el") (:keywords "pastebin" "lodgeit"))]) (lockfile-mode . [(20170624 2207) nil "Major mode for .lock files" single ((:commit . "fcfef88460cb3cd67c4d83a1801d0326d282feac") (:url . "https://github.com/preetpalS/emacs-lockfile-mode"))]) (loccur . [(20161227 251) ((emacs (24 3))) "Perform an occur-like folding in current buffer" single ((:commit . "650d91dda0d313c8f445a0803c07809d857dee0f") (:url . "https://github.com/fourier/loccur") (:keywords "matching"))]) (loc-changes . [(20160801 1008) nil "keep track of positions even after buffer changes" single ((:commit . "4d1dcdf7631c23b1259ad4f72bf9686cf95fb46c") (:url . "http://github.com/rocky/emacs-loc-changes"))]) (load-theme-buffer-local . [(20120702 1336) nil "Install emacs24 color themes by buffer." single ((:commit . "e606dec66f16a06140b9aad625a4fd52bca4f936") (:url . "http://github.com/vic/color-theme-buffer-local") (:keywords "faces"))]) (load-relative . [(20170526 310) nil "relative file load (within a multi-file Emacs package)" tar ((:commit . "738896e3da491b35399178ed2c6bc92cc728d119") (:url . "http://github.com/rocky/emacs-load-relative") (:keywords "internal"))]) (lms . [(20170804 922) ((emacs (25 1))) "Squeezebox / Logitech Media Server frontend" single ((:url . "https://bitbucket.com/inigoserna/lms.el") (:keywords "multimedia"))]) (llvm-mode . [(20160617 2215) nil "Major mode for the LLVM assembler language." tar ((:commit . "8582763b6572004bcd65b569e7e462c56fc32e96"))]) (livid-mode . [(20131116 544) ((skewer-mode (1 5 3)) (s (1 8 0))) "Live browser eval of JavaScript every time a buffer changes" single ((:commit . "dfe5212fa64738bc4138bfebf349fbc8bc237c26") (:url . "https://github.com/pandeiro/livid-mode"))]) (livescript-mode . [(20140612 2121) nil "Major mode for editing LiveScript files" single ((:commit . "90a918d9686e256e6d4d439cc20f24dad8d3b804") (:url . "https://github.com/yhisamatsu/livescript-mode") (:keywords "languages" "livescript"))]) (livereload . [(20170628 2350) ((emacs (25)) (websocket (1 8))) "Livereload server" tar ((:commit . "1e501d7e46dbd476c2c7cc9d20b5ac9d41fb1955") (:keywords "convenience"))]) (lively . [(20171005 54) nil "interactively updating text" single ((:commit . "348675828c6a81bfa1ac311ca465aad813542c1b"))]) (live-py-mode . [(20171201 2320) ((emacs (24 3))) "Live Coding in Python" tar ((:commit . "794b17dd0a18987414ff762588a56ae776f13844") (:url . "http://donkirkby.github.io/live-py-plugin/") (:keywords "live" "coding"))]) (live-code-talks . [(20150115 1423) ((emacs (24)) (cl-lib (0 5)) (narrowed-page-navigation (0 1))) "Support for slides with live code in them" single ((:commit . "fece58108939a53104f88d348298c9e122f25b75") (:keywords "docs" "multimedia"))]) (literate-starter-kit . [(20150730 1154) ((emacs (24 3))) "A literate starter kit to configure Emacs using Org-mode files." tar ((:commit . "6dce1d01781966c14558aa553cfc85008c06e115"))]) (literate-coffee-mode . [(20170211 715) ((coffee-mode (0 5 0))) "major-mode for Literate CoffeeScript" single ((:commit . "55ce0305495f4a38c8063c4bd63deb1e1252373d") (:url . "https://github.com/syohex/emacs-literate-coffee-mode"))]) (literal-string . [(20170301 730) ((markdown-mode (2 0)) (emacs (25))) "edit string literals in a dedicated buffer" single ((:commit . "2ca4fc08b8e19e6183b1f1db747bb0a4aa4f98eb") (:url . "https://github.com/joodie/literal-string-mode/") (:keywords "lisp" "tools" "docs"))]) (litecoin-ticker . [(20160611 1711) ((json (1 2))) "litecoin price in modeline" single ((:commit . "3d8047c736e4ee0b8638953f8cc63eaefad34106"))]) (litable . [(20160922 859) ((dash (2 6 0))) "dynamic evaluation replacement with emacs" single ((:commit . "90a2dca14a6da9b24fe332a65cff899ab4a90810") (:keywords "lisp"))]) (lit-mode . [(20141123 936) nil "Major mode for lit" single ((:commit . "c61c403afc8333a5649c5421ab1a6341dc1c7d92") (:keywords "languages" "tools"))]) (list-utils . [(20160414 702) nil "List-manipulation utility functions" single ((:commit . "acf18aca1131a90f8d673974673e3c5d8fdc6a86") (:url . "http://github.com/rolandwalker/list-utils") (:keywords "extensions"))]) (list-unicode-display . [(20150219 101) ((cl-lib (0 5))) "Search for and list unicode characters by name" single ((:commit . "222c21c68ccc930b2843ea919c960de9be3b55c2") (:keywords "convenience"))]) (list-register . [(20091203 1015) nil "List register" single ((:commit . "f8bec5dc3765174de1089549947d9ca9a1cdbe5f"))]) (list-processes+ . [(20131117 1135) nil "Add process management to `list-processes'" single ((:url . "not distributed yet"))]) (list-packages-ext . [(20151115 916) ((s (1 6 0)) (ht (1 5 0)) (persistent-soft (0 8 6))) "Extras for list-packages" single ((:commit . "b4dd644e4369c9aa66f5bb8895ea49ebbfd0a27a") (:keywords "convenience" "tools"))]) (list-environment . [(20151226 1856) nil "A tabulated process environment editor" single ((:commit . "b7ca30b05905047be2e55199a6475f8d98ce318b") (:keywords "processes" "unix"))]) (lispyville . [(20170907 926) ((lispy (0)) (evil (1 2 12)) (cl-lib (0 5)) (emacs (24 4))) "A minor mode for integrating evil with lispy." single ((:commit . "522fd8dcce23b2719c758e64f99b64591406f2f5") (:url . "https://github.com/noctuid/lispyville") (:keywords "vim" "evil" "lispy" "lisp" "parentheses"))]) (lispyscript-mode . [(20170720 1217) nil "Major mode for LispyScript code." single ((:commit . "def632e3335b0c481fbcf5a17f18b0a8c58dd12f") (:url . "https://github.com/krisajenkins/lispyscript-mode") (:keywords "lisp" "languages"))]) (lispy . [(20171204 1232) ((emacs (24 1)) (ace-window (0 9 0)) (iedit (0 9 9)) (swiper (0 7 0)) (hydra (0 13 4)) (zoutline (0 1 0))) "vi-like Paredit" tar ((:commit . "c0db7dfd8203deca929b6ec48978ae9b06b6887a"))]) (lispxmp . [(20170110 1508) nil "Automagic emacs lisp code annotation" single ((:url . "http://www.emacswiki.org/cgi-bin/wiki/download/lispxmp.el") (:keywords "lisp" "convenience"))]) (lisp-extra-font-lock . [(20160930 1227) nil "Highlight bound variables and quoted exprs." single ((:commit . "092f5a6e75ddfc8051b252f10e182723a17980e4") (:url . "https://github.com/Lindydancer/lisp-extra-font-lock") (:keywords "languages" "faces"))]) (liso-theme . [(20160410 1329) nil "Eclectic Dark Theme for GNU Emacs" single ((:commit . "844688245eb860d23043455e165ee24503454c81") (:url . "https://github.com/caisah/liso-theme") (:keywords "theme" "themes"))]) (liquid-types . [(20151201 2335) ((flycheck (0 13)) (dash (1 2)) (emacs (24 1)) (popup (0 5 2)) (pos-tip (0 5 0)) (flycheck-liquidhs (0 0 1)) (button-lock (1 0 2))) "show inferred liquid-types" single ((:commit . "cc4bacbbf204ef9cf0756f78dfebee2c6ae14d7b"))]) (linum-relative . [(20160510 118) nil "display relative line number in emacs." single ((:commit . "b8a99dcfe38a491172a8193053fb7849634b43c0") (:url . "http://github.com/coldnew/linum-relative") (:keywords "converience"))]) (linum-off . [(20160217 1337) nil "Provides an interface for turning line-numbering off" single ((:commit . "116e66ac259b183e0763b85616888316ab196822") (:url . "http://www.emacswiki.org/emacs/auto-indent-mode.el ") (:keywords "line" "numbering"))]) (linphone . [(20130524 409) nil "Emacs interface to Linphone" tar ((:commit . "99af3db941b7f4e5272bb48bff96c1ce4ceac302") (:url . "https://github.com/zabbal/emacs-linphone") (:keywords "comm"))]) (link-hint . [(20170923 855) ((avy (0 3 0)) (emacs (24 1)) (cl-lib (0 5))) "Use avy to open or copy visible urls." single ((:commit . "0294df85aee10b47fcf6c2c9bfe7e1038660fa21") (:url . "https://github.com/noctuid/link-hint.el") (:keywords "url"))]) (link . [(20140717 2029) nil "Hypertext links in text buffers" single ((:commit . "a23b8f4a422d0de69a006ed010eff5795319db98") (:keywords "interface" "hypermedia"))]) (lingr . [(20100807 1031) nil "Lingr Client for GNU Emacs" single ((:commit . "4215a8704492d3c860097cbe2649936c22c196df") (:url . "http://github.com/lugecy/lingr-el") (:keywords "chat" "client" "internet"))]) (light-soap-theme . [(20150607 745) ((emacs (24))) "Emacs 24 theme with a light background." single ((:commit . "76a787bd40c6b567ae68ced7f5d9f9f10725e00d"))]) (lice . [(20170220 143) nil "License And Header Template" tar ((:commit . "4339929927c62bd636f89bb39ea999d18d269250") (:url . "https://github.com/buzztaiki/lice-el") (:keywords "template" "license" "tools"))]) (libmpdee . [(20160117 1501) nil "Client end library for mpd, a music playing daemon" single ((:commit . "a6ca3b7d6687f3ba60996b9b5044ad1d3b228290") (:keywords "music" "mpd"))]) (lib-requires . [(20170307 855) nil "Commands to list Emacs Lisp library dependencies." single ((:url . "https://www.emacswiki.org/emacs/download/lib-requires.el") (:keywords "libraries" "files"))]) (lfe-mode . [(20170121 454) nil "Lisp Flavoured Erlang mode" tar ((:commit . "2880c8a2a7fe998238b6490fe3e3c484b5c5985e"))]) (lexbind-mode . [(20141027 729) nil "Puts the value of lexical-binding in the mode line" single ((:commit . "fa0a6848c1cfd3fbf45db43dc2deef16377d887d") (:url . "https://github.com/spacebat/lexbind-mode") (:keywords "convenience" "lisp"))]) (levenshtein . [(20090830 340) nil "Edit distance between two strings." single ((:commit . "070925197ebf6b704e6e00c4f2d2ec783f3df38c") (:keywords "lisp"))]) (leuven-theme . [(20170919 252) nil "Awesome Emacs color theme on white background" tar ((:commit . "9d31a9d4ed763d6309e9d44985cd8b4a5a2fb500") (:url . "https://github.com/fniessen/emacs-leuven-theme") (:keywords "color" "theme"))]) (letterbox-mode . [(20170701 1825) ((emacs (24 3))) "hide sensitive text on a buffer" single ((:commit . "88c67a51d67216d569a28e8423200883fde096dd") (:url . "http://github.com/pacha64/letterbox-mode") (:keywords "password" "convenience"))]) (letcheck . [(20160202 1148) nil "Check the erroneous assignments in let forms" single ((:commit . "edf188ca2f85349e971b83f164c6484264e79426") (:url . "https://github.com/Fuco1/letcheck") (:keywords "convenience"))]) (less-css-mode . [(20160930 2153) nil "Major mode for editing LESS CSS files (lesscss.org)" single ((:commit . "2c3f69640c3c98457255f601db98f520dee2e7b6") (:url . "https://github.com/purcell/less-css-mode") (:keywords "less" "css" "mode"))]) (lentic-server . [(20160717 1352) ((lentic (0 8)) (web-server (0 1 1))) "Web Server for Emacs Literate Source" single ((:commit . "8e809fafbb27a98f815b544d9d9ee15843eb6a36"))]) (lentic . [(20161202 1352) ((emacs (24 4)) (m-buffer (0 13)) (dash (2 5 0)) (f (0 17 2)) (s (1 9 0))) "One buffer as a view of another" tar ((:commit . "678db9327209a1e6200c9272f4080595dc68f8a5"))]) (lenlen-theme . [(20170328 1945) ((color-theme-solarized (20150110))) "a solarized-based kawaii light theme" single ((:commit . "b8a6412c81633b10fb98ba0930f55b25071c084a") (:url . "http://hins11.yu-yake.com/"))]) (lemon-mode . [(20130216 504) nil "A major mode for editing lemon grammar files" single ((:commit . "155bfced6c9afc8072a0133d3d1baa54c6d67430") (:keywords "lemon"))]) (legalese . [(20150820 1024) nil "Add legalese to your program files" single ((:commit . "ec23e69d18329456beed9546a1d6c72f96db91cf") (:url . "https://github.com/jorgenschaefer/legalese") (:keywords "convenience"))]) (leerzeichen . [(20170422 613) nil "Minor mode to display whitespace characters." single ((:commit . "5acf9855ecb2b2cd5da4402bb48df149e7525cc5") (:url . "http://github.com/fgeller/leerzeichen.el") (:keywords "whitespace" "characters"))]) (ledger-mode . [(20170901 2039) ((emacs (24 3))) "Helper code for use with the \"ledger\" command-line tool" tar ((:commit . "24b43e34dd34de23e54d7ddaa2a147efda6af03d"))]) (leanote . [(20161222 1739) ((emacs (24 4)) (cl-lib (0 5)) (request (0 2)) (let-alist (1 0 3)) (pcache (0 4 0)) (s (1 10 0)) (async (1 9))) "A minor mode writing markdown leanote" single ((:commit . "d499e7b59bb1f1a2fabc0e4c26fb101ed62ebc7b") (:url . "https://github.com/aborn/leanote-emacs") (:keywords "leanote" "note" "markdown"))]) (lean-mode . [(20171102 754) ((emacs (24 3)) (dash (2 12 0)) (dash-functional (1 2 0)) (s (1 10 0)) (f (0 19 0)) (flycheck (30))) "A major mode for the Lean language" tar ((:commit . "c0af876c967fc969d67c467bc6767210d19c5d87") (:url . "https://github.com/leanprover/lean-mode") (:keywords "languages"))]) (ldap-mode . [(20091203 1015) nil "major modes for editing LDAP schema and LDIF files" single ((:commit . "8761a835e90b990fb5fe70173ecdcd6f4b776cb0") (:url . "http://www.loveshack.ukfsn.org/emacs") (:keywords "data"))]) (lcb-mode . [(20160815 2240) ((emacs (24))) "LiveCode Builder major mode" single ((:commit . "be0768e9aa6f9b8e76f2230f4f7f4d152a766b9a") (:url . "https://github.com/peter-b/lcb-mode") (:keywords "languages"))]) (lavender-theme . [(20170808 613) ((emacs (24 0))) "an Emacs 24 theme based on Lavender (tmTheme)" single ((:commit . "ef5e959b95d7fb8152137bc186c4c24e986c1e3c") (:url . "https://github.com/emacsfodder/tmtheme-to-deftheme"))]) (launchctl . [(20150518 609) ((emacs (24 1))) "Interface to launchctl on Mac OS X." single ((:commit . "73f8f52a5aa9a0be9bdcf68c29ad0fa2b4a115a4") (:url . "http://github.com/pekingduck/launchctl-el") (:keywords "tools" "convenience"))]) (launch-mode . [(20170105 2112) ((emacs (24 4))) "Major mode for launch-formatted text" tar ((:commit . "25ebd4ba77afcbe729901eb74923dbe9ae81c313") (:url . "https://github.com/iory/launch-mode"))]) (launch . [(20130619 1504) nil "launch files with OS-standard associated applications." single ((:commit . "e7c3b573fc05fe4d3d322389079909311542e799") (:url . "https://github.com/sfllaw/emacs-launch") (:keywords "convenience" "processes"))]) (latexdiff . [(20171130 905) ((emacs (24 4))) "Latexdiff integration in Emacs" single ((:commit . "3e82958d1fdc4983189f187b32824b6d1989120a") (:url . "http://github.com/galaunay/latexdiff.el") (:keywords "tex" "vc" "tools" "git" "helm"))]) (latex-unicode-math-mode . [(20170123 1016) nil "Input method for Unicode math symbols" tar ((:commit . "e8931e68214ca94e6a04080ebc629693d5881884") (:url . "https://github.com/Christoph-D/latex-unicode-math-mode"))]) (latex-preview-pane . [(20151023 1303) nil "Makes LaTeX editing less painful by providing a updatable preview pane" tar ((:commit . "1a0539ab70eaf5dd31c2c94773dddd6f437fed41"))]) (latex-pretty-symbols . [(20151112 244) nil "Display many latex symbols as their unicode counterparts" single ((:url . "https://bitbucket.org/mortiferus/latex-pretty-symbols.el") (:keywords "convenience" "display"))]) (latex-math-preview . [(20170522 1455) nil "preview LaTeX mathematical expressions." single ((:commit . "775887a89447dd19541b121161cc02e9799d0d3a") (:url . "https://gitlab.com/latex-math-preview/latex-math-preview") (:keywords "latex" "tex"))]) (latex-extra . [(20170816 1847) ((auctex (11 86 1)) (cl-lib (0 5))) "Adds several useful functionalities to LaTeX-mode." single ((:commit . "82d99b8b0c2db20e5270749582e03bcc2443ffb5") (:url . "http://github.com/Malabarba/latex-extra") (:keywords "tex"))]) (lastpass . [(20170801 1214) ((emacs (24 4)) (seq (1 9)) (cl-lib (0 5))) "LastPass command wrapper" single ((:commit . "264250725b3ba23412919ec10cfa7390473b534c") (:url . "https://github.com/storvik/emacs-lastpass") (:keywords "extensions" "processes" "lpass" "lastpass"))]) (language-detection . [(20161123 1013) ((emacs (24)) (cl-lib (0 5))) "Automatic language detection from code snippets" single ((:commit . "54a6ecf55304fba7d215ef38a4ec96daff2f35a4") (:url . "https://github.com/andreasjansson/language-detection.el"))]) (langtool . [(20170917 2154) ((cl-lib (0 3))) "Grammar check utility using LanguageTool" single ((:commit . "bae4bdd240583b2253b4ff03af5295146e285103") (:url . "https://github.com/mhayashi1120/Emacs-langtool") (:keywords "docs"))]) (langdoc . [(20150217 2245) ((cl-lib (0 2))) "Help to define help document mode for various languages" single ((:commit . "2c7223bacb116992d700ecb19a60df5c09c63424") (:url . "https://github.com/tom-tan/langdoc/") (:keywords "convenience" "eldoc"))]) (lang-refactor-perl . [(20131122 1327) nil "Simple refactorings, primarily for Perl" single ((:commit . "691bd69639de6b7af357e3b7143563ececd9c497") (:url . "https://github.com/jplindstrom/emacs-lang-refactor-perl") (:keywords "languages" "refactoring" "perl"))]) (lacarte . [(20170307 837) nil "Execute menu items as commands, with completion." single ((:url . "https://www.emacswiki.org/emacs/download/lacarte.el") (:keywords "menu-bar" "menu" "command" "help" "abbrev" "minibuffer" "keys" "completion" "matching" "local" "internal" "extensions"))]) (labburn-theme . [(20170502 207) nil "A lab color space zenburn theme." single ((:commit . "e95334acd8a73fbe8e156f70e047014a87e92e66") (:url . "https://github.com/ksjogo/labburn-theme") (:keywords "theme" "zenburn"))]) (kwin . [(20150308 1112) nil "communicatewith the KWin window manager" single ((:commit . "d4f8f3593598b71ee596e0a87b2c1d6a912a9566") (:url . "http://github.com/reactormonk/kwin-minor-mode"))]) (kv . [(20140108 734) nil "key/value data structure functions" single ((:commit . "721148475bce38a70e0b678ba8aa923652e8900e") (:keywords "lisp"))]) (kurecolor . [(20170808 602) ((emacs (24 1)) (s (1 0))) "color editing goodies for Emacs" single ((:commit . "3e8b63e89e294179e42a14a4a357c29a72669a22"))]) (kubernetes-tramp . [(20171026 922) ((emacs (24)) (cl-lib (0 5))) "TRAMP integration for kubernetes containers" single ((:commit . "9fa84df71f6e88bc23a756cdf2df393a35aec945") (:url . "https://github.com/gruggiero/kubernetes-tramp") (:keywords "kubernetes" "convenience"))]) (kubernetes-evil . [(20171122 1819) ((kubernetes (0 12 0)) (evil (1 2 12))) "Kubernetes keybindings for evil-mode." single ((:commit . "d4ce5eb5da1ea0879b7d3266d97aecc8aee2807c"))]) (kubernetes . [(20171122 1819) ((emacs (25 1)) (dash (2 12 0)) (magit (2 8 0))) "Magit-like porcelain for Kubernetes." tar ((:commit . "d4ce5eb5da1ea0879b7d3266d97aecc8aee2807c"))]) (ksp-cfg-mode . [(20170724 1127) ((cl-lib (0 5))) "major mode for editing KSP CFG files" single ((:commit . "713a22ee28688e581ec3ad60228c853b516a14b6") (:url . "http://github.com/lashtear/ksp-cfg-mode") (:keywords "data"))]) (kroman . [(20150827 1640) nil "Korean hangul romanization" single ((:commit . "90402b6ae40383e75d8ba97d66eee93eebf40f70") (:keywords "korean" "roman"))]) (kpm-list . [(20170924 652) nil "An emacs buffer list that tries to intelligently group together buffers." single ((:commit . "e0f5112e5ce8ec1b603f4428fa51681c68bb28f5") (:url . "https://github.com/KMahoney/kpm-list/"))]) (kotlin-mode . [(20171009 1301) ((emacs (24 3))) "Major mode for kotlin" single ((:commit . "ebcf6f3730f455894ebb7ed8e42950f66e8e1c1d") (:keywords "languages"))]) (kosmos-theme . [(20170502 1150) ((emacs (24))) "Black and lightgray theme with not so much syntax highlighting." single ((:commit . "616456d2376a75dc31190ad65137d179fbad4336") (:url . "https://github.com/habamax/kosmos-theme"))]) (korean-holidays . [(20170228 2045) nil "Korean holidays for calendar." single ((:commit . "6e94c2e071069aee9ed12ebbfd9b0ad863b8c78e") (:url . "https://github.com/tttuuu888/korean-holidays") (:keywords "calendar"))]) (kooten-theme . [(20161023 205) ((emacs (24 1))) "Dark color theme" single ((:commit . "d10197b4dd7af02cd14aeab2573c273a294798c3") (:url . "http://github.com/kootenpv/emacs-kooten-theme") (:keywords "themes"))]) (kolon-mode . [(20140122 334) nil "Syntax highlighting for Text::Xslate's Kolon syntax" single ((:commit . "5af0955e280ae991862189ebecd3937c5fc8fb9f") (:url . "https://github.com/samvtran/kolon-mode") (:keywords "xslate" "perl"))]) (kodi-remote . [(20171008 2226) ((request (0 2 0)) (let-alist (1 0 4)) (json (1 4)) (elnode (20140203 1506))) "Remote Control for Kodi" single ((:commit . "479075d96857696cf029cd1f482b9f2f31d82452") (:url . "http://github.com/spiderbit/kodi-remote.el") (:keywords "kodi" "tools" "convinience"))]) (know-your-http-well . [(20160208 1504) nil "Look up the meaning of HTTP headers, methods, relations, status codes" tar ((:commit . "3cc5ab6d2764ab7aacb1b6e026abaccbeb6c37f2"))]) (kixtart-mode . [(20150611 904) ((emacs (24))) "major mode for Kixtart scripting files" single ((:commit . "1c2356797e7b766bbaaa2b341176a8b10499cd79") (:url . "https://github.com/ryrun/kixtart-mode") (:keywords "languages"))]) (kiwix . [(20170927 120) ((emacs (24 4)) (cl-lib (0 5))) "Kiwix interface and support." single ((:commit . "86dbead6c0017beefd92a0b64a0bb5f5d12c5b16") (:url . "https://github.com/stardiviner/kiwix.el") (:keywords "kiwix" "wikipedia"))]) (kivy-mode . [(20160902 1041) nil "Emacs major mode for editing Kivy files" single ((:commit . "67f7deef07de85351648332bf644c43fa1722a24"))]) (kite-mini . [(20160508 406) ((dash (2 11 0)) (websocket (1 5))) "Remotely evaluate JavaScript in the WebKit debugger" tar ((:commit . "a68619dbc109c7989f3448426d8c1ee9e797c11f") (:url . "https://github.com/tungd/kite-mini.el") (:keywords "webkit"))]) (kite . [(20130201 1138) ((json (1 2)) (websocket (0 93 1))) "WebKit inspector front-end" tar ((:commit . "7ed74d1147a6ddd152d3da65dc30df3517d53144") (:keywords "tools"))]) (killer . [(20120808 422) nil "kill and delete text" single ((:commit . "7bbb223f875402a7b2abee4baa5a54f10bd97212") (:url . "http://github.com/tarsius/killer") (:keywords "convenience"))]) (kill-ring-search . [(20140422 855) nil "incremental search for the kill ring" single ((:commit . "23535b4a01a1cb1574604e36c49614e84e85c883") (:url . "http://nschum.de/src/emacs/kill-ring-search/") (:keywords "convenience" "matching"))]) (kill-or-bury-alive . [(20170518 2358) ((emacs (24 4)) (cl-lib (0 5))) "Precise control over buffer killing in Emacs" single ((:commit . "415de48695efd30163a015063873b03f4ca5b743") (:url . "https://github.com/mrkkrp/kill-or-bury-alive") (:keywords "buffer" "killing" "convenience"))]) (kibit-helper . [(20150508 833) ((s (0 8)) (emacs (24))) "Conveniently use the Kibit Leiningen plugin from Emacs" single ((:commit . "16bdfff785ee05d8e74a5780f6808506d990cef7") (:url . "http://www.github.com/brunchboy/kibit-helper") (:keywords "languages" "clojure" "kibit"))]) (kfg . [(20140908 2238) ((f (0 17 1))) "an emacs configuration system" single ((:commit . "d2c9dd26618fb2f7bf1e7b6eae193b1cceba3c97") (:url . "https://github.com/abingham/kfg"))]) (keyword-search . [(20170309 2247) nil "browser keyword search from Emacs" tar ((:commit . "33682e93429027805ee7c51c5f6f608872b6f5dc") (:url . "https://github.com/juhp/keyword-search") (:keywords "web" "search" "keyword"))]) (keyswap . [(20160813 257) ((emacs (24 3))) "swap bindings between key pairs" single ((:commit . "cd682a7c4a8d64d6bae6a005db5045232e5e7b95") (:url . "http://github.com/hardenedapple/keyswap.el") (:keywords "convenience"))]) (keyset . [(20150219 2130) ((dash (2 8 0)) (cl-lib (0 5))) "A small library for structuring key bindings." single ((:commit . "41bbfc4dbed5de6ecf3ec1dba634c7c26241ca84") (:url . "https://github.com/HKey/keyset"))]) (keymap-utils . [(20170614 1134) ((cl-lib (0 3))) "keymap utilities" single ((:commit . "0130f32e5ade649dd2738206a80570e450906ef6") (:url . "https://github.com/tarsius/keymap-utils") (:keywords "convenience" "extensions"))]) (keyfreq . [(20160516 716) ((cl-lib (0 5))) "track command frequencies" single ((:commit . "9c665c8c219d18866403897936427bb408e3d6b9"))]) (keydef . [(20090428 1231) nil "a simpler way to define keys, with kbd syntax" single ((:commit . "dff2be9f58d12d8c6a490ad0c1b2b10b55528dc0") (:keywords "convenience" "lisp" "customization" "keyboard" "keys"))]) (keychain-environment . [(20170118 626) nil "load keychain environment variables" single ((:commit . "7c08e8c4c3ea4d6eaee12d710a56793771f837c5") (:url . "https://github.com/tarsius/keychain-environment") (:keywords "gnupg" "pgp" "ssh"))]) (key-seq . [(20150907 56) ((key-chord (0 6))) "map pairs of sequentially pressed keys to commands" single ((:commit . "e29b083a6427d061638749194fc249ef69ad2cc0") (:url . "http://github.com/vlevit/key-seq.el") (:keywords "convenience" "keyboard" "keybindings"))]) (key-leap . [(20160831 747) ((emacs (24 3))) "Leap between lines by typing keywords" single ((:commit . "b3f6ef15c8a13870475d5af159fa24b30f97dea0") (:url . "https://github.com/MartinRykfors/key-leap") (:keywords "point" "convenience"))]) (key-intercept . [(20140210 2349) nil "Intercept prefix keys" single ((:commit . "d9a60edb4ce893f2d3d94f242164fdcc62d43cf2") (:url . "http://github.com/tarao/key-intercept-el") (:keywords "keyboard"))]) (key-combo . [(20150324 739) nil "map key sequence to commands" single ((:commit . "2fb5c65bc82d5bd2964e2b163822429ab45d90a1") (:url . "https://github.com/uk-ar/key-combo") (:keywords "keyboard" "input"))]) (key-chord . [(20160227 438) nil "map pairs of simultaneously pressed keys to commands" single ((:commit . "72443e9ff3c4f1c3ccaced3130236801efde3d83") (:keywords "keyboard" "chord" "input"))]) (kerl . [(20150424 1305) nil "Emacs integration for kerl" single ((:commit . "1732ee26213f021bf040919c45ad276aafcaae14") (:url . "http://github.com/correl/kerl.el/") (:keywords "tools"))]) (kdeconnect . [(20161022 700) nil "An interface for KDE Connect" single ((:commit . "a91a045cd4aabd671b689361efa10f2e01ad8e8e") (:keywords "kdeconnect" "android"))]) (karma . [(20160220 445) ((pkg-info (0 4)) (emacs (24))) "Karma Test Runner Emacs Integration" single ((:commit . "31d3e7708246183d7ed0686be92bf23140af348c") (:url . "http://github.com/tonini/karma.el") (:keywords "language" "javascript" "js" "karma" "testing"))]) (kaomoji . [(20170311 2151) ((emacs (24 3)) (helm-core (1 9 1))) "Input kaomoji superb easily" tar ((:commit . "91ab93cc7455486182d5e7f88e03d0de44c9953e") (:url . "https://github.com/kuanyui/kaomoji.el") (:keywords "tools" "fun"))]) (kaolin-themes . [(20171206 339) ((emacs (24 3)) (autothemer (0 2 2)) (cl-lib (0 6))) "A set of eye pleasing themes" tar ((:commit . "acf37448ffe25464e39730939091c70be305f811") (:url . "https://github.com/ogdenwebb/emacs-kaolin-themes"))]) (kanji-mode . [(20160826 439) nil "View stroke order for kanji characters at cursor" tar ((:commit . "eda4f8666486689d36317db7dbda54fb73d3e3d2") (:url . "http://github.com/wsgac/kanji-mode "))]) (kanban . [(20170418 110) nil "Parse org-todo headlines to use org-tables as Kanban tables" single ((:keywords "outlines" "convenience"))]) (kaleidoscope-evil-state-flash . [(20170728 320) ((evil (1 2 12)) (kaleidoscope (0 1 0)) (s (1 11 0))) "Flash keyboard LEDs when changing Evil state" single ((:commit . "e932103e043bd1503bf5d98dd117ff6737b852bc") (:url . "https://github.com/algernon/kaleidoscope.el"))]) (kaleidoscope . [(20170808 117) ((s (1 11 0))) "Controlling Kaleidoscope-powered devices." single ((:commit . "e932103e043bd1503bf5d98dd117ff6737b852bc") (:url . "https://github.com/algernon/kaleidoscope.el"))]) (kakapo-mode . [(20171003 2151) ((cl-lib (0 5))) "TABS (hard or soft) for indentation (leading whitespace), and SPACES for alignment." single ((:commit . "67d516138172fd60782df94454b3d0bd247e84f3") (:url . "https://github.com/listx/kakapo-mode") (:keywords "indentation"))]) (kaesar-mode . [(20160128 208) ((kaesar (0 1 4)) (cl-lib (0 3))) "Encrypt/Decrypt buffer by AES with password." single ((:commit . "d087075cb1a46c2c85cd075220e09b2eaef9b86e") (:url . "https://github.com/mhayashi1120/Emacs-kaesar") (:keywords "data" "convenience"))]) (kaesar-file . [(20160128 208) ((kaesar (0 1 1))) "Encrypt/Decrypt file by AES with password." single ((:commit . "d087075cb1a46c2c85cd075220e09b2eaef9b86e") (:url . "https://github.com/mhayashi1120/Emacs-kaesar") (:keywords "data" "files"))]) (kaesar . [(20160128 208) ((cl-lib (0 3))) "Another AES algorithm encrypt/decrypt string with password." single ((:commit . "d087075cb1a46c2c85cd075220e09b2eaef9b86e") (:url . "https://github.com/mhayashi1120/Emacs-kaesar") (:keywords "data"))]) (jvm-mode . [(20150422 8) ((dash (2 6 0)) (emacs (24))) "Monitor and manage your JVMs" single ((:commit . "3355dbaf5b0185aadfbad24160399abb32c5bea0") (:url . "https://github.com/martintrojer/jvm-mode.el") (:keywords "convenience"))]) (jumplist . [(20151119 1945) ((cl-lib (0 5))) "Jump like vim jumplist or ex jumplist" single ((:commit . "c482d137d95bc5e1bcd790cdbde25b7f729b2502") (:url . "https://github.com/ganmacs/jumplist") (:keywords "jumplist" "vim"))]) (jump-tree . [(20171014 851) nil "Treat position history as a tree" tar ((:commit . "282267dc6305889e31d46b405b7ad4dfe5923b66") (:url . "https://github.com/yangwen0228/jump-tree") (:keywords "convenience" "position" "jump" "tree"))]) (jump-to-line . [(20130122 853) nil "Jump to line number at point." single ((:commit . "01ef8c3529d85e6c59cc20840acbc4a8e8325bc8") (:keywords "jump" "line" "back" "file" "ruby" "csharp" "python" "perl"))]) (jump-char . [(20160505 851) nil "navigation by char" single ((:commit . "9c1c3618662e7b43d5937342816fd63b5a31e861") (:url . "https://github.com/lewang/jump-char"))]) (jump . [(20161126 1728) ((findr (0 7)) (inflections (2 4)) (cl-lib (0 5))) "build functions which contextually jump between files" single ((:commit . "e4f1372cf22e811faca52fc86bdd5d817498a4d8") (:url . "http://github.com/eschulte/jump.el") (:keywords "project" "convenience" "navigation"))]) (jumblr . [(20170727 1343) ((s (1 8 0)) (dash (2 2 0))) "an anagram game for emacs" tar ((:commit . "34533dfb9db8538c005f4eaffafeff7ed193729f") (:url . "https://github.com/mkmcc/jumblr") (:keywords "anagram" "word game" "games"))]) (julia-shell . [(20161125 1110) ((julia-mode (0 3))) "Major mode for an inferior Julia shell" tar ((:commit . "583a0b2ca20461ab4356929fd0f2212c22341b69"))]) (julia-repl . [(20171116 46) ((emacs (25))) "A minor mode for a Julia REPL" single ((:commit . "f808a12e7ebe403f82036899c2dace640be73154") (:keywords "languages"))]) (julia-mode . [(20171116 642) nil "Major mode for editing Julia source code" single ((:commit . "2ef6992125a85674532a1e37dacd5c60bee4feeb") (:url . "https://github.com/JuliaLang/julia") (:keywords "languages"))]) (judge-indent . [(20160609 622) nil "detect indent style (indent and tab widths) and change behavior of Emacs" single ((:keywords "indent" "tab"))]) (jtags . [(20160211 1229) nil "enhanced tags functionality for Java development" tar ((:commit . "b50daa48510f71e74ce0ec2eb85030896a79cf96") (:url . "http://jtags.sourceforge.net") (:keywords "languages" "tools"))]) (jsx-mode . [(20130908 1024) nil "major mode for JSX" single ((:commit . "47213429c09259126cddb5742482cfc444c70d50") (:url . "https://github.com/jsx/jsx-mode.el"))]) (jst . [(20150604 438) ((s (1 9)) (f (0 17)) (dash (2 10)) (pcache (0 3)) (emacs (24 4))) "JS test mode" single ((:commit . "2a3fd16c992f7790dc67134ef06a814c3d20579c") (:url . "https://github.com/cheunghy/jst-mode") (:keywords "js" "javascript" "jasmine" "coffee" "coffeescript"))]) (jss . [(20130508 723) ((emacs (24 1)) (websocket (0)) (js2-mode (0))) "An emacs interface to webkit and mozilla debuggers" tar ((:commit . "41749257aecf13c7bd6ed489b5ab3304d06e40bc") (:keywords "languages"))]) (jsonnet-mode . [(20171005 24) ((emacs (24))) "Major mode for editing jsonnet files" single ((:commit . "efe768fdcff25d746674fbbf229b9e1a7efea4f1") (:url . "https://github.com/mgyucht/jsonnet-mode") (:keywords "languages"))]) (json-snatcher . [(20150511 2047) ((emacs (24))) "Grabs the path to JSON values in a JSON file" single ((:commit . "c4cecc0a5051bd364373aa499c47a1bb7a5ac51c") (:url . "http://github.com/sterlingg/json-snatcher"))]) (json-rpc . [(20170402 955) ((emacs (24 1)) (cl-lib (0 5))) "JSON-RPC library" single ((:commit . "e77a62012e4d6c946666eed3a17454d5c6f83367") (:url . "https://github.com/skeeto/elisp-json-rpc"))]) (json-reformat . [(20160212 53) nil "Reformatting tool for JSON" single ((:commit . "8eb6668ed447988aea06467ba8f42e1f2178246f") (:url . "https://github.com/gongo/json-reformat") (:keywords "json"))]) (json-navigator . [(20170606 34) ((emacs (24 3)) (hierarchy (0 6 0))) "View and navigate JSON structures" single ((:commit . "d005a253fa73ed2c6c0b3ebbc7dc41be9270c304"))]) (json-mode . [(20170719 2205) ((json-reformat (0 0 5)) (json-snatcher (1 0 0))) "Major mode for editing JSON files." single ((:commit . "32d5a9b3319e6797c4d52e7d61a65e5638102ef4") (:url . "https://github.com/joshwnj/json-mode"))]) (jsfmt . [(20150727 1525) nil "Interface to jsfmt command for javascript files" single ((:commit . "68109120f553fbc651fafb6fc35ed83c3e79f8a6") (:url . "https://github.com/brettlangdon/jsfmt.el"))]) (jscs . [(20151015 1049) ((emacs (24 1)) (cl-lib (0 5))) "Consistent JavaScript editing using JSCS" single ((:commit . "9d39d0f2355e69a020bf76242504f3a33e013ccf") (:url . "https://github.com/papaeye/emacs-jscs") (:keywords "languages" "convenience"))]) (js3-mode . [(20160515 850) nil "An improved JavaScript editing mode" tar ((:commit . "229aeb374f1b1f3ee5c59b8ba3eebb6385c232cb") (:keywords "javascript" "languages"))]) (js2-refactor . [(20171109 921) ((js2-mode (20101228)) (s (1 9 0)) (multiple-cursors (1 0 0)) (dash (1 0 0)) (s (1 0 0)) (yasnippet (0 9 0 1))) "A JavaScript refactoring library for emacs." tar ((:commit . "35db9111d49536f41e005560e8e90fd93836e8e4"))]) (js2-mode . [(20171128 1412) ((emacs (24 1)) (cl-lib (0 5))) "Improved JavaScript editing mode" tar ((:commit . "ba3263bb1375b5f4f9b6df7bb8d39f4d97f02688") (:url . "https://github.com/mooz/js2-mode/") (:keywords "languages" "javascript"))]) (js2-highlight-vars . [(20170418 1129) ((emacs (24 4)) (js2-mode (20150908))) "highlight occurrences of the variable under cursor" single ((:commit . "e3bb177e50f76b272e8073a94d4f46be6512a163") (:url . "http://mihai.bazon.net/projects/editing-javascript-with-emacs-js2-mode/js2-highlight-vars-mode"))]) (js2-closure . [(20170816 1218) ((js2-mode (20150909))) "Google Closure dependency manager" single ((:commit . "f59db386d7d0693935d0bf52babcd2c203c06d04") (:url . "http://github.com/jart/js2-closure") (:keywords "javascript" "closure"))]) (js-import . [(20170115 853) ((emacs (24 4)) (f (0 19 0)) (projectile (0 14 0)) (dash (2 13 0))) "Import Javascript files from your current project or dependencies" single ((:commit . "7b1b7c963e3df9c76ed6cfb66c908c80775c6cfb") (:url . "https://github.com/jakoblind/js-import") (:keywords "tools"))]) (js-format . [(20170118 1702) ((emacs (24 1)) (js2-mode (20101228))) "Format or transform code style using NodeJS server with different javascript formatter" tar ((:commit . "544bda9be72b74ec2d442543ba60cff727d96669") (:url . "http://github.com/futurist/js-format.el") (:keywords "js" "javascript" "format" "standard" "jsbeautify" "esformatter" "airbnb"))]) (js-doc . [(20160714 2134) nil "Insert JsDoc style comment easily" single ((:commit . "f0606e89d5aa89146f96edb38cf69af0068a9d1e") (:url . "https://github.com/mooz/js-doc") (:keywords "document" "comment"))]) (js-comint . [(20171129 2056) ((emacs (24 3))) "JavaScript interpreter in window." single ((:commit . "83e932e4a83d1a69098ee87e0ab911d299368e60") (:url . "https://github.com/redguardtoo/js-comint") (:keywords "javascript" "node" "inferior-mode" "convenience"))]) (js-codemod . [(20171104 454) ((emacs (24 4))) "Run js-codemod on current line or selected region" tar ((:commit . "014e56c846487d1eeaf8a91dd503b9d96eb1510a") (:keywords "js" "codemod" "region"))]) (js-auto-format-mode . [(20171031 1819) ((emacs (24))) "Minor mode for auto-formatting JavaScript code" single ((:commit . "5ba81cd7cdd09d41a8e9c9d53d370497bf64edbd") (:url . "https://github.com/ybiquitous/js-auto-format-mode") (:keywords "languages"))]) (js-auto-beautify . [(20161030 2209) ((web-beautify (0 3 1)) (web-mode (14 0 27))) "auto format you js/jsx file" single ((:commit . "180d15af7b5dfaab4ee1954cca2fdc797932f9de"))]) (jquery-doc . [(20150812 58) nil "jQuery api documentation interface for emacs" tar ((:commit . "24032284919b942ec27707d929bdd8bf48420062") (:keywords "docs" "jquery"))]) (jq-mode . [(20171116 815) ((emacs (25 1))) "Edit jq scripts." tar ((:commit . "8384a1926cc22000e5e42f86f28d807fd6149f8e") (:url . "https://github.com/ljos/jq-mode"))]) (jpop . [(20170410 550) ((emacs (24)) (dash (2 11 0)) (cl-lib (0 5))) "Lightweight project caching and navigation framework" tar ((:commit . "7628b03260be96576b34459d45959ee77d8b2110") (:url . "https://github.com/domtronn/jpop.el") (:keywords "project" "convenience"))]) (jonprl-mode . [(20160818 1759) ((emacs (24 3)) (cl-lib (0 5)) (yasnippet (0 8 0))) "A major mode for editing JonPRL files" tar ((:commit . "6059bb64891fae45827174e044d6a87ac07172d8") (:keywords "languages"))]) (jknav . [(20121006 1325) nil "Automatically enable j/k keys for line-based navigation" single ((:commit . "861245715c728503dad6573278fdd75c271dbf8b") (:keywords "keyboard" "navigation"))]) (jist . [(20161229 921) ((emacs (24 4)) (dash (2 12 0)) (seq (1 11)) (let-alist (1 0 4)) (magit (2 1 0)) (request (0 2 0))) "Gist integration" single ((:commit . "da0692452e312a99bb27d8708504b521798aca48") (:url . "https://github.com/emacs-pe/jist.el") (:keywords "convenience"))]) (jira-markup-mode . [(20150601 1409) nil "Emacs Major mode for JIRA-markup-formatted text files" single ((:commit . "4fc534c47df26a2f402bf835ebe2ed89474a4062") (:url . "https://github.com/mnuessler/jira-markup-mode") (:keywords "jira" "markup"))]) (jira . [(20131210 1022) nil "Connect to JIRA issue tracking software" single nil]) (jinja2-mode . [(20141128 207) nil "A major mode for jinja2" single ((:commit . "cfaa7bbe7bb290cc500440124ce89686f3e26f86"))]) (jg-quicknav . [(20170808 1830) ((s (1 9 0)) (cl-lib (0 5))) "Quickly navigate the file system to find a file." single ((:commit . "c8d53e774d63e68a944092c08a026b57da741038") (:url . "https://github.com/jeffgran/jg-quicknav") (:keywords "navigation"))]) (jetbrains . [(20171107 847) ((emacs (24 3)) (cl-lib (0 5)) (f (0 17))) "JetBrains IDE bridge" single ((:commit . "8d0851793d0658cc39bca455dc14c89f78ab8335") (:url . "https://github.com/emacs-php/jetbrains.el") (:keywords "tools" "php"))]) (jenkins-watch . [(20121004 1626) nil "Watch continuous integration build status" single ((:commit . "37b84dfbd98240a57ff798e1ff8bc7dba2913577") (:url . "https://github.com/ataylor284/jenkins-watch"))]) (jenkins . [(20170721 236) ((dash (2 12)) (emacs (24 3)) (json (1 4))) "Minimalistic Jenkins client for Emacs" single ((:commit . "1ec967973db685c9d84133ec6a5e06489ce06b62") (:keywords "jenkins" "convenience"))]) (jemdoc-mode . [(20170704 1327) ((emacs (24 3))) "Major mode for editing jemdoc files" single ((:commit . "529b4d4681e1198b9892f340fdd6c3f1592a047a") (:url . "https://github.com/drdv/jemdoc-mode") (:keywords "convenience" "usability"))]) (jekyll-modes . [(20141117 514) ((polymode (0 2))) "Major modes (markdown and HTML) for authoring Jekyll content" single ((:commit . "7cb10b50fd2883e3f7b10fdfd98f19f2f0b2381c") (:url . "https://github.com/fred-o/jekyll-modes") (:keywords "docs"))]) (jedi-direx . [(20140310 236) ((jedi (0 1 2)) (direx (0 1 -3))) "Tree style source code viewer for Python buffer" single ((:commit . "7a2e677400717ed12b959cb5988e7b3fb1c12117"))]) (jedi-core . [(20170121 610) ((emacs (24)) (epc (0 1 0)) (python-environment (0 0 2)) (cl-lib (0 5))) "Common code of jedi.el and company-jedi.el" tar ((:commit . "b0764f425766786dfb1bff910ed1d1670f11eb9c"))]) (jedi . [(20160425 2156) ((emacs (24)) (jedi-core (0 2 2)) (auto-complete (1 4))) "a Python auto-completion for Emacs" single ((:commit . "b0764f425766786dfb1bff910ed1d1670f11eb9c"))]) (jdee . [(20171007 835) ((emacs (24 3)) (flycheck (30)) (memoize (1 0 1)) (dash (2 13 0)) (s (1 12 0))) "Java Development Environment for Emacs" tar ((:commit . "ebe5d2e36a6a367376ed6cde590d5f805830ec9e") (:url . "http://github.com/jdee-emacs/jdee") (:keywords "java" "tools"))]) (jdecomp . [(20170224 1400) ((emacs (24 5))) "Interface to Java decompilers" single ((:commit . "692866abc83deedce62be8d6040cf24dda7fb7a8") (:url . "https://github.com/xiongtx/jdecomp") (:keywords "decompile" "java" "languages" "tools"))]) (jbeans-theme . [(20171108 1431) ((emacs (24))) "Jbeans theme for GNU Emacs 24 (deftheme)" single ((:commit . "9a5095d65de8355c88b102831b81a525d507612a") (:url . "https://github.com/synic/jbeans-emacs"))]) (jazz-theme . [(20170411 711) nil "A warm color theme for Emacs 24+." single ((:commit . "b1cb78a97cc4050f19d88a89e455c3e52d98240e") (:url . "https://github.com/donderom/jazz-theme"))]) (jaword . [(20170425 2327) ((tinysegmenter (0 1))) "Minor-mode for handling Japanese words better" single ((:commit . "ac062b0e5ab4bd3270497e80aa0f3ac033a0493f") (:url . "http://hins11.yu-yake.com/"))]) (javap-mode . [(20120223 1408) nil "Javap major mode" single ((:commit . "864c1130e204b2072e1d19cd027b6fce8ebe6629") (:url . "http://github.com/hiredman/javap-mode"))]) (javadoc-lookup . [(20160213 1631) ((cl-lib (0 3))) "Javadoc Emacs integration with Maven" tar ((:commit . "507a2dd443d60b537b8f779c1847e2cd0ccd1382") (:url . "https://github.com/skeeto/javadoc-lookup"))]) (java-snippets . [(20160626 1952) ((yasnippet (0 8 0))) "Yasnippets for Java" tar ((:commit . "738523debb1018439bda0ce70e00248154a600ac") (:url . "https://github.com/nekop/yasnippet-java-mode"))]) (java-imports . [(20170913 710) ((emacs (24 4)) (s (1 10 0)) (pcache (0 3 2))) "Code for dealing with Java imports" single ((:commit . "e96ff44ed48b362ab6227b8b802b84d84f78bcaa") (:url . "http://www.github.com/dakrone/emacs-java-imports") (:keywords "java"))]) (jastadd-ast-mode . [(20161219 126) ((emacs (24))) "Major mode for editing JastAdd AST files" single ((:commit . "a29fdb470cbf0a398164950a3b0d2217de48e0c0") (:url . "https://github.com/rudi/jastadd-ast-mode") (:keywords "languages"))]) (jasminejs-mode . [(20150526 1705) nil "A minor mode for manipulating jasmine test files" tar ((:commit . "9f8044bf81ab5b4841a30b0bd099916e1b7ff54a") (:url . "https://github.com/stoltene2/jasminejs-mode") (:keywords "javascript" "jasmine"))]) (jar-manifest-mode . [(20160430 1726) nil "Major mode to edit JAR manifest files" single ((:commit . "270dae14c481300f75ed96dad3a5ae42ca928a1d") (:url . "http://github.com/omajid/jar-manifest-mode") (:keywords "convenience" "languages"))]) (jape-mode . [(20140903 806) nil "An Emacs editing mode mode for GATE's JAPE files" single ((:commit . "85b9182850707b5d107391f6caee5bd401507a7d") (:url . "http://github.com/tanzoniteblack/jape-mode") (:keywords "languages" "jape" "gate"))]) (japanlaw . [(20160129 20) ((cl-lib (0 5))) "Japan law from law.e-gov.go.jp" single ((:commit . "c160e195cda0e02a709a2d39c62bc2a1ed39a09a") (:keywords "docs" "help"))]) (japanese-holidays . [(20160927 2318) ((cl-lib (0 3))) "calendar functions for the Japanese calendar" single ((:commit . "0bccfac342d6ebda1c1a35c3babca0c800ff0c9b") (:url . "https://github.com/emacs-jp/japanese-holidays") (:keywords "calendar"))]) (jammer . [(20160310 59) nil "Punish yourself for using Emacs inefficiently" single ((:commit . "48aa795df6df7ae6484518bcd0398293ca49d7c6") (:url . "https://github.com/wasamasa/jammer") (:keywords "games"))]) (jade-mode . [(20160525 741) nil "Major mode for editing .jade files" single ((:commit . "4dbde92542fc7ad61df38776980905a4721d642e") (:url . "https://github.com/brianc/jade-mode"))]) (jack-connect . [(20141207 407) nil "Manage jack connections within Emacs" single ((:commit . "b00658dfe3d5d67431c18ffa693d5a3705067ba0"))]) (jabber-otr . [(20150918 444) ((emacs (24)) (jabber (0 8 92))) "Off-The-Record messaging for jabber.el" tar ((:commit . "2692b1530234e0ba9a0d6c1eaa1cbe8679f193c0") (:url . "https://github.com/legoscia/emacs-jabber-otr/") (:keywords "comm"))]) (jabber . [(20170106 1603) ((fsm (0 2))) "A Jabber client for Emacs." tar ((:commit . "2ef76cff4a5a932cf17dc6107a0c5adee806081e"))]) (j-mode . [(20171103 845) nil "Major mode for editing J programs" tar ((:commit . "6f7f598eaa1a32ccf06b707631f2d539a2315fba") (:url . "http://github.com/zellio/j-mode") (:keywords "j" "languages"))]) (iy-go-to-char . [(20141029 846) nil "Go to next CHAR which is similar to \"f\" and \"t\" in vim" single ((:commit . "04ab4f5f3a241cbbc9b8c178a22b412a62f632f9") (:url . "https://github.com/doitian/iy-go-to-char") (:keywords "navigation" "search"))]) (ix . [(20131027 929) ((grapnel (0 5 3))) "Emacs client for http://ix.io pastebin" single ((:commit . "aea4c54a5cc5a6f26637353c16a3a0e70fc76963") (:url . "http://www.github.com/theanalyst/ix.el"))]) (ivy-youtube . [(20171112 732) ((request (0 2 0)) (ivy (0 8 0)) (cl-lib (0 5))) "Query YouTube and play videos in your browser" single ((:commit . "8168dc1f26521830dfd99466d35ab93159afd004") (:url . "https://github.com/squiter/ivy-youtube") (:keywords "youtube" "multimedia" "mpv" "vlc"))]) (ivy-xref . [(20171202 1351) ((emacs (25 1)) (ivy (0 10 0))) "Ivy interface for xref results" single ((:commit . "43b7c35be871b04635864334ffd2b315401150d5") (:url . "https://github.com/alexmurray/ivy-xref"))]) (ivy-xcdoc . [(20160917 355) ((ivy (0 8 0)) (emacs (24 4))) "Search Xcode documents with ivy interface." single ((:commit . "5ea22af36c4c2737fb0bec53432c233482d8b314") (:url . "https://github.com/hex2010/emacs-ivy-xcdoc") (:keywords "ivy" "xcode" "xcdoc"))]) (ivy-todo . [(20171128 1444) ((ivy (0 8 0)) (emacs (24 3))) "Manage org-mode TODOs with ivy" single ((:commit . "2dd28974ead8f9e751d8d166d46447b3f87ef76b") (:url . "http://github.com/Kungsgeten/ivy-todo") (:keywords "convenience"))]) (ivy-rtags . [(20170522 2154) ((ivy (0 7 0)) (rtags (2 10))) "RTags completion back-end for ivy" single ((:commit . "324f256acfdac2582c684e757078b1ca73ba28ec") (:url . "http://rtags.net"))]) (ivy-rich . [(20171106 2334) ((emacs (24 4)) (ivy (0 8 0))) "More friendly display transformer for ivy." single ((:commit . "565ea4128741f68727df9d54dee40c9a89b63885") (:keywords "ivy"))]) (ivy-purpose . [(20160724 303) ((emacs (24)) (ivy (0 8)) (window-purpose (1 5))) "Ivy Interface for Purpose" single ((:commit . "0495f2f3aed64d7e0028125e76a9a68f8fc4107e") (:url . "https://github.com/bmag/ivy-purpose"))]) (ivy-pass . [(20170812 1255) ((emacs (24)) (ivy (0 8 0)) (password-store (1 6 5))) "ivy interface for pass" single ((:commit . "5b523de1151f2109fdd6a8114d0af12eef83d3c5") (:url . "https://github.com/ecraven/ivy-pass/") (:keywords "pass" "password" "convenience" "data"))]) (ivy-pages . [(20160728 1220) ((emacs (24 1)) (ivy (0 8 0))) "Complete current buffer's pages with Ivy" single ((:commit . "47b03a1f9384502cf22369ff31a2898c863d3aff") (:url . "https://github.com/igorepst/ivy-pages") (:keywords "convenience" "matching"))]) (ivy-lobsters . [(20171202 1241) ((ivy (0 8 0)) (cl-lib (0 5))) "Browse lobste.rs stories with ivy." single ((:commit . "4364df4b3685fd1b50865ac9360fb948c0288dd1") (:url . "https://github.com/julienXX/ivy-lobsters"))]) (ivy-hydra . [(20171130 1143) ((emacs (24 1)) (ivy (0 9 0)) (hydra (0 13 4))) "Additional key bindings for Ivy" single ((:commit . "b960aa4fa52b19dba4d5994fb29f445164209f46") (:url . "https://github.com/abo-abo/swiper") (:keywords "completion" "matching" "bindings"))]) (ivy-historian . [(20170715 2120) ((emacs (24 4)) (historian (20170111)) (ivy (0 8 0)) (flx (0 6 1))) "Persistently store selected minibuffer candidates" single ((:commit . "78ec5632e4f4fd005014bd762c4a5ccdeabbd33d") (:url . "https://github.com/PythonNut/historian.el") (:keywords "convenience" "ivy"))]) (ivy-gitlab . [(20160519 312) ((s (1 9 0)) (dash (2 9 0)) (ivy (0 8 0)) (gitlab (0 8))) "Ivy interface to Gitlab" single ((:commit . "67567a354a1888419331b79862f151817d9747c5") (:url . "https://github.com/nlamirault/emacs-gitlab") (:keywords "gitlab" "ivy"))]) (ivy-feedwrangler . [(20171121 1306) ((ivy (9 0))) "An Ivy interface to the Feedwrangler RSS service" single ((:commit . "ad4f94f8cc4557876ea0b0fb9b519f16ce23e96a") (:url . "https://github.com/asimpson/ivy-feedwrangler") (:keywords "rss" "url" "ivy"))]) (ivy-erlang-complete . [(20170709 2151) ((async (1 9)) (counsel (0 8 0)) (ivy (0 8 0)) (erlang (19 2)) (emacs (24 4))) "Erlang context sensitive completion at point using ivy. It also support xref and eldoc." tar ((:commit . "acd6322571cb0820868a6febdc5326782a29b729"))]) (ivy-dired-history . [(20170625 2256) ((ivy (0 9 0)) (counsel (0 9 0)) (cl-lib (0 5))) "use ivy to open recent directories" single ((:commit . "c9c67ea1ee5e68443f0e6006ba162d6c8d868b69") (:url . "https://github.com/jixiuf/ivy-dired-history"))]) (ivy-bibtex . [(20171022 220) ((swiper (0 7 0)) (parsebib (1 0)) (s (1 9 0)) (dash (2 6 0)) (f (0 16 2)) (cl-lib (0 5)) (biblio (0 2))) "A bibliography manager based on Ivy" tar ((:commit . "54de08577f9c19354cc303ee52836263aef486fb"))]) (ivy . [(20171205 1229) ((emacs (24 1))) "Incremental Vertical completYon" tar ((:commit . "83d85ac4b8376c1c297791c485f4dd017f5cb505") (:url . "https://github.com/abo-abo/swiper") (:keywords "matching"))]) (ivs-edit . [(20170818 741) ((emacs (24 3)) (dash (2 6 0)) (cl-lib (1 0))) "IVS (Ideographic Variation Sequence) editing tool" tar ((:commit . "5db39c234aa7393b591168a4fd0a9a4cbbca347d") (:url . "http://github.com/kawabata/ivs-edit") (:keywords "text"))]) (ivariants . [(20170822 1924) ((emacs (24 3)) (ivs-edit (1 0))) "Ideographic variants editor and browser" tar ((:commit . "ca0b74d32b5d2d77a45cc6ad6edc00be0ee85284") (:url . "http://github.com/kawabata/ivariants") (:keywords "i18n" "languages"))]) (iterator . [(20170207 38) ((emacs (24)) (cl-lib (0 5))) "A library to create and use elisp iterators objects." single ((:commit . "9da54f9aed945b46866782cdf962c9e530419297") (:url . "https://github.com/thierryvolpiatto/iterator"))]) (iter2 . [(20171128 1211) ((emacs (25 1))) "Reimplementation of Elisp generators" single ((:commit . "b0e8ecebe2d6807403a5eb1c75d68a4706259d4e") (:url . "https://github.com/doublep/iter2") (:keywords "elisp" "extensions"))]) (itasca . [(20170601 922) ((emacs (24 3))) "Major modes for Itasca software data files." tar ((:commit . "3d15dd1b70d6db69b0f4758a3e28b8b506cc84ca") (:url . "http://github.com/jkfurtney/itasca-emacs/") (:keywords "itasca" "flac" "3dec" "udec" "flac3d" "pfc" "pfc2d" "pfc3d" "fish"))]) (itail . [(20171112 4) nil "An interactive tail mode" single ((:commit . "6e43c20da03be3b9c6ece93b7dc3495975ec1888") (:url . "https://github.com/re5et/itail") (:keywords "tail"))]) (iss-mode . [(20141001 1213) nil "Mode for InnoSetup install scripts" single ((:commit . "3b517aff31529bab33f8d7b562bd17aff0107fd1"))]) (isortify . [(20170726 1254) nil "(automatically) format python buffers using isort." single ((:commit . "28699f29cfc0d9d78b636d0ecadcf9139173bc6f") (:url . "https://github.com/proofit404/isortify"))]) (isgd . [(20150414 236) nil "Shorten URLs using the isgd.com shortener service" single ((:commit . "764306dadd5a9213799081a48aba22f7c75cca9a") (:url . "https://github.com/chmouel/isgd.el"))]) (isend-mode . [(20171118 745) nil "Interactively send parts of an Emacs buffer to an interpreter" single ((:commit . "88d4576e70e5874115c305ab2767d181dfda5985") (:url . "https://github.com/ffevotte/isend-mode.el"))]) (isearch-symbol-at-point . [(20130728 1521) nil "Use isearch to search for the symbol at point" single ((:commit . "51a1029bec1ec414885f9edb7e5947603dffdab2") (:url . "https://github.com/re5et/isearch-symbol-at-point") (:keywords "isearch"))]) (isearch-prop . [(20170303 1504) nil "Search text-property or overlay-property contexts." single ((:url . "https://www.emacswiki.org/emacs/download/isearch-prop.el") (:keywords "search" "matching" "invisible" "thing" "help"))]) (isearch-dabbrev . [(20141223 2222) ((cl-lib (0 5))) "Use dabbrev in isearch" single ((:commit . "1efe7abba4923015cbc2462395deaec5446a9cc8") (:url . "https://github.com/Dewdrops/isearch-dabbrev") (:keywords "dabbrev" "isearch"))]) (isearch+ . [(20170723 1826) nil "Extensions to `isearch.el' (incremental search)." single ((:url . "https://www.emacswiki.org/emacs/download/isearch%2b.el") (:keywords "help" "matching" "internal" "local"))]) (irony-eldoc . [(20170502 1208) ((emacs (24)) (cl-lib (0 5)) (irony (0 1))) "irony-mode support for eldoc-mode" single ((:commit . "0df5831eaae264a25422b061eb2792aadde8b3f2") (:url . "https://github.com/ikirill/irony-eldoc") (:keywords "c" "c++" "objc" "convenience" "tools"))]) (irony . [(20171110 1151) ((cl-lib (0 5)) (json (1 2))) "C/C++ minor mode powered by libclang" tar ((:commit . "1d865c71fefeab952a2f61184d7f77371706954a") (:url . "https://github.com/Sarcasm/irony-mode") (:keywords "c" "convenience" "tools"))]) (irfc . [(20130824 507) nil "Interface for IETF RFC document." single ((:url . "http://www.emacswiki.org/emacs/download/irfc.el") (:keywords "rfc" "ietf"))]) (iregister . [(20150515 1407) nil "Interactive register commands for Emacs." tar ((:commit . "6a48c66187289de5f300492be11c83e98410c018") (:url . "https://github.com/atykhonov/iregister.el") (:keywords "convenience"))]) (ir-black-theme . [(20130302 2355) nil "Port of ir-black theme" single ((:commit . "36e930d107604b5763c80294a6f92aaa02e6c272") (:keywords "faces"))]) (iqa . [(20170722 834) ((emacs (24 3))) "Init file(and directory) Quick Access." single ((:commit . "08e3f70d0a3ed95a0c5675ae88e7966474ecc45a") (:url . "https://github.com/a13/iqa.el"))]) (ipretty . [(20140406 2220) nil "Interactive Emacs Lisp pretty-printing" single ((:commit . "6f6da8907abea53d6d246d61e1a0f4ebeb0b9f38") (:url . "https://github.com/steckerhalter/ipretty") (:keywords "pretty-print" "elisp" "buffer"))]) (iplayer . [(20161120 1320) nil "Browse and download BBC TV/radio shows" single ((:commit . "b788fffa4b36bbd558047ffa6be51b1f0f462f23") (:url . "https://github.com/csrhodes/iplayer-el") (:keywords "multimedia" "bbc"))]) (ipcalc . [(20170926 105) ((cl-lib (0 5))) "IP subnet calculator" single ((:commit . "2720f7e3e662e04e195f8338b81a499cf321296a") (:url . "http://github.com/dotemacs/ipcalc.el") (:keywords "networking" "tools"))]) (iodine-theme . [(20151031 939) ((emacs (24))) "A light emacs color theme" single ((:commit . "02fb780e1d8d8a6b9c709bfac399abe1665c6999") (:url . "https://github.com/srdja/iodine-theme") (:keywords "themes"))]) (ioccur . [(20130821 2248) nil "Incremental occur" single ((:commit . "4c0ef992a6fcd2aed62e3866d56650463108ab5a") (:url . "https://github.com/thierryvolpiatto/ioccur"))]) (io-mode-inf . [(20140128 1134) nil "Interaction with an Io interpreter." single ((:commit . "6dd2bac3fd87484bb7d97e135b06c29d70b444b6") (:url . "https://github.com/slackorama/io-emacs") (:keywords "io" "languages"))]) (io-mode . [(20161004 56) nil "Major mode to edit Io language files in Emacs" single ((:commit . "fd65ae769093defcf554d6d637eba6e6dfc29f56") (:url . "https://github.com/superbobry/io-mode") (:keywords "languages" "io"))]) (inverse-acme-theme . [(20170822 1954) ((autothemer (0 2)) (cl-lib (0 5))) "A theme that looks like an inverse of Acme's color scheme." single ((:commit . "74d6f3e2f6534371509dd2d77006435156c276d6") (:url . "http://github.com/djohnson/inverse-acme-theme"))]) (interval-tree . [(20130325 707) ((dash (1 1 0))) "Interval tree data structure for 1D range queries" single ((:commit . "301302f480617091cf3ab6989caac385d52543dc") (:url . "https://github.com/Fuco1/interval-tree") (:keywords "extensions" "data structure"))]) (interval-list . [(20150327 1018) ((dash (2 4 0)) (cl-lib (0 5)) (emacs (24 4))) "Interval list data structure for 1D selections" single ((:commit . "38af7ecf0a493ad8f487074938a2a115f3531177") (:url . "https://github.com/Fuco1/interval-list") (:keywords "extensions" "data structure"))]) (intero . [(20171206 212) ((flycheck (0 25)) (company (0 8)) (emacs (24 4)) (haskell-mode (13 0))) "Complete development mode for Haskell" single ((:commit . "44b2c383b09ffead3e46553409334f0f62e55749") (:url . "https://github.com/commercialhaskell/intero") (:keywords "haskell" "tools"))]) (interleave . [(20171003 2324) nil "Interleaving text books since 2015" single ((:commit . "87549df30cbc681baf86b238bd14c7cf7ec11fc4") (:url . "https://github.com/rudolfochrist/interleave"))]) (interaction-log . [(20160305 501) ((cl-lib (0))) "exhaustive log of interactions with Emacs" single ((:commit . "a49a06746d4df6bcfceec3c48dece065d635f9f9") (:url . "https://github.com/michael-heerdegen/interaction-log.el") (:keywords "convenience"))]) (intellij-theme . [(20171017 715) nil "Inspired by IntelliJ's default theme" single ((:commit . "1bbfff8e6742d18e9b77ed796f44da3b7bd10606") (:keywords "faces"))]) (instapaper . [(20130104 621) nil "add URLs to instapaper from emacs" single ((:url . "htts://bitbucket.org/jfm/emacs-instapaper"))]) (insfactor . [(20141116 1602) nil "Client for a Clojure project with insfactor in it" single ((:commit . "7ef5446cebb08a17d4106d2e6f3c053e49e1e829") (:url . "http://github.com/duelinmarkers/insfactor.el") (:keywords "clojure"))]) (insert-shebang . [(20170825 438) nil "Insert shebang line automatically." single ((:commit . "adfa473f07443b231914d277c20a3419b30399b6") (:url . "http://github.com/psachin/insert-shebang") (:keywords "shebang" "tool" "convenience"))]) (inlineR . [(20120520 732) nil "insert Tag for inline image of R graphics" single ((:commit . "29357186beca825e3d0451b700ec09b9ed65e37b") (:url . "https://github.com/myuhe/inlineR.el") (:keywords "convenience" "iimage.el" "cacoo.el"))]) (inline-docs . [(20170522 2150) ((emacs (24 3))) "Show inline contextual docs." single ((:commit . "b57f1681be6147f999cdc12abff414a0442e8897") (:url . "https://github.com/stardiviner/inline-docs.el") (:keywords "inline" "docs" "overlay"))]) (inline-crypt . [(20170824 200) nil "Simple inline encryption via openssl" tar ((:commit . "281385b383f850fd2e895926b1cef804dd052633"))]) (inkpot-theme . [(20171106 640) nil "port of vim's inkpot theme" single ((:commit . "046d0bb361500e14c718b00930d31c73890929cb") (:url . "https://github.com/ideasman42/emacs-inkpot-theme") (:keywords "color" "theme"))]) (ink-mode . [(20160814 416) ((emacs (24 3))) "Major mode for writing interactive fiction in Ink" single ((:commit . "e35f26abbaf8ea23c5aa0a0c7ef15334cdfb7b48") (:url . "http://github.com/Kungsgeten/ink-mode") (:keywords "languages"))]) (initsplit . [(20160919 1118) nil "code to split customizations into different files" single ((:commit . "c941d436eb2b10b01c76a582c5a2b23fb30751aa") (:url . "http://www.gci-net.com/users/j/johnw/emacs.html") (:keywords "lisp"))]) (init-open-recentf . [(20161206 645) ((emacs (24 4))) "Open recentf immediately after Emacs is started" single ((:commit . "7d8fb124806291f7f6ef2ec3a664ea25899b6d68") (:url . "https://github.com/zonuexe/init-open-recentf.el") (:keywords "files" "recentf" "after-init-hook"))]) (init-loader . [(20160528 615) nil "Loader for configuration files" single ((:commit . "5d3cea1004c11ff96b33020e337b03b925c67c42") (:url . "https://github.com/emacs-jp/init-loader/"))]) (ini-mode . [(20170424 209) nil "Major mode for Windows-style ini files." single ((:commit . "2194cfa2fd13196a37350ec20b3f00dcf6162b7c") (:url . "https://github.com/Lindydancer/ini-mode") (:keywords "languages" "faces"))]) (inherit-local . [(20170409 949) ((emacs (24 3))) "Inherited buffer-local variables" single ((:commit . "b1f4ff9c41f9d64e4adaf5adcc280b82f084cdc7") (:url . "https://github.com/shlevy/inherit-local/tree-master/"))]) (info-buffer . [(20170112 622) nil "Display info topics in separate buffers" single ((:commit . "d35dad6e766c6e2ddb8dc6acb4ce5b6e10fbcaa7") (:url . "http://www.github.com/llvilanova/info-buffer") (:keywords "docs" "info"))]) (info+ . [(20170923 1929) nil "Extensions to `info.el'." single ((:url . "https://www.emacswiki.org/emacs/download/info%2b.el") (:keywords "help" "docs" "internal"))]) (inflections . [(20170913 216) ((cl-lib (0 5)) (emacs (24))) "convert english words between singular and plural" single ((:commit . "e4f1372cf22e811faca52fc86bdd5d817498a4d8") (:url . "https://github.com/eschulte/jump.el") (:keywords "languages" "tools" "wp"))]) (inferior-spim . [(20160826 646) nil "inferior mode for spim." single ((:commit . "fb9aa091f6058bf320793f1a608c1ed7322c1f47") (:keywords "spim" "inferior" "mips"))]) (inf-ruby . [(20170615 335) nil "Run a Ruby process in a buffer" single ((:commit . "674a2a837fccea88ada6634e981a656b41d16d8e") (:url . "http://github.com/nonsequitur/inf-ruby") (:keywords "languages" "ruby"))]) (inf-mongo . [(20160815 216) nil "Run a MongoDB shell process in a buffer" single ((:commit . "649dc6ea8e468f1d8109568548eb222c71486dbf") (:url . "http://github.com/endofunky/inf-mongo") (:keywords "databases" "mongodb"))]) (inf-clojure . [(20171120 2310) ((emacs (24 4)) (clojure-mode (5 6))) "Run an external Clojure process in an Emacs buffer" single ((:commit . "12583f4aba2f4aea3879c0ca5ec1d002c0578371") (:url . "http://github.com/clojure-emacs/inf-clojure") (:keywords "processes" "clojure"))]) (indy . [(20150610 1006) nil "A minor mode and EDSL to manage your mode's indentation rules." single ((:commit . "4604867d8111f0e186a5351e68e054a77cb14abf") (:keywords "convenience" "matching" "tools"))]) (indium . [(20171204 128) ((emacs (25)) (seq (2 16)) (js2-mode (20140114)) (company (0 9 0)) (websocket (1 6))) "JavaScript Awesome Development Environment" tar ((:commit . "c1e13b8cee42b4b2399d0b1ccba35f9949cc7269") (:url . "https://github.com/NicolasPetton/indium") (:keywords "tools" "javascript"))]) (indicators . [(20161211 326) ((dash (2 13 0)) (cl-lib (0 5 0))) "Display the buffer relative location of line in the fringe." single ((:commit . "f62a1201f21453e3aca93f48483e65ae8251432e") (:url . "https://github.com/Fuco1/indicators.el") (:keywords "fringe" "frames"))]) (indent-tools . [(20171103 750) ((s (0)) (hydra (0)) (yafolding (0))) "Indent, navigate (and more) by blocks of indentation: yaml, python etc." tar ((:commit . "6e8e9a8cf9efe4a8624e52f45cb5faa5fe8ec996") (:url . "https://gitlab.com/emacs-stuff/indent-tools/") (:keywords "indentation" "movements" "navigation" "kill" "fold" "yaml" "python"))]) (indent-info . [(20171122 1555) nil "show indentation information in status bar" single ((:commit . "a295ed813f5c84fe202c9100dd33a46bc1184bc5") (:url . "https://github.com/terlar/indent-info.el") (:keywords "convenience" "tools"))]) (indent-guide . [(20170221 327) nil "show vertical lines to guide indentation" single ((:commit . "d64f43011c72068e008621e620009ec592b35913") (:url . "http://hins11.yu-yake.com/"))]) (importmagic . [(20170702 1844) ((f (0 11 0)) (epc (0 1 0)) (emacs (24 3))) "Fix Python imports using importmagic." tar ((:commit . "c0360a8146ca65565a7fa66c6d72986edd916dd5") (:url . "https://github.com/anachronic/importmagic.el") (:keywords "languages" "convenience"))]) (import-popwin . [(20170218 607) ((emacs (24 3)) (popwin (0 6))) "popwin buffer near by import statements with popwin" single ((:commit . "bb05a9e226f8c63fe7b18a3e92010357049ab5ba") (:url . "https://github.com/syohex/emacs-import-popwin"))]) (import-js . [(20171026 1628) ((grizzl (0 1 0)) (emacs (24))) "Import Javascript dependencies" single ((:commit . "0a1032894445062b87dbe4e2c8cdba35ac25c250") (:url . "http://github.com/Galooshi/emacs-import-js/") (:keywords "javascript"))]) (impatient-mode . [(20170505 1921) ((cl-lib (0 3)) (simple-httpd (1 4 0)) (htmlize (1 40))) "Serve buffers live over HTTP" tar ((:commit . "48e6c4842b1fc2657a3c6c23029f89e35fafc859") (:url . "https://github.com/netguy204/imp.el"))]) (immutant-server . [(20140311 1508) nil "Run your Immutant server in Emacs" single ((:commit . "2a21e65588acb6a976f2998e30b21fdabdba4dbb") (:url . "http://www.github.com/leathekd/immutant-server.el"))]) (immortal-scratch . [(20160517 1418) nil "respawn the scratch buffer when it's killed" single nil]) (imgur . [(20120307 225) ((anything (1 287))) "imgur client for Emacs" single ((:commit . "ed952eb8f556c6fc0d982e2a689083504558cffb") (:keywords "multimedia" "convenience"))]) (imenus . [(20170217 47) ((cl-lib (0 5))) "Imenu for multiple buffers and without subgroups" single ((:commit . "7eea33f0aeca0737b3d7d87aeb67073ef4b5d978") (:url . "https://github.com/alezost/imenus.el") (:keywords "tools" "convenience"))]) (imenu-list . [(20171120 1255) ((cl-lib (0 5))) "Show imenu entries in a separate buffer" single ((:commit . "62de9b897f0f6168f57cc64532dbcaa1bfcbe47e") (:url . "https://github.com/bmag/imenu-list"))]) (imenu-anywhere . [(20170805 1155) ((cl-lib (0 5))) "ido/ivy/helm imenu across same mode/project/etc buffers" single ((:commit . "fc7f0fd2f19e5ebee70156a99bf87393123893e3") (:url . "https://github.com/vitoshka/imenu-anywhere") (:keywords "ido" "imenu" "tags"))]) (imenu+ . [(20170303 1457) nil "Extensions to `imenu.el'." single ((:url . "https://www.emacswiki.org/emacs/download/imenu%2b.el") (:keywords "tools" "menus"))]) (imapfilter . [(20161008 1357) nil "run the imapfilter executable" single ((:commit . "a879ddc36fedc30311693f308f414c520fdfc370") (:url . "https://github.com/tarsius/imapfilter") (:keywords "mail"))]) (imake . [(20171006 450) ((emacs (24 3))) "Simple, opinionated make target runner" single ((:commit . "edd2e59f7996c35450987cf8f137ecb54777e9ca") (:url . "https://github.com/tarsius/imake"))]) (imakado . [(20141024 223) nil "imakado's usefull macros and functions" single ((:commit . "00a1e7eea2cb9e9066343a23927d6c747707902f") (:url . "https://github.com/imakado/emacs-imakado") (:keywords "convenience"))]) (image-dired+ . [(20150429 2244) ((cl-lib (0 3))) "Image-dired extensions" single ((:commit . "b68094625d963056ad64e0e44af0e2266b2eadc7") (:url . "https://github.com/mhayashi1120/Emacs-image-diredx") (:keywords "extensions" "multimedia"))]) (image-archive . [(20150620 1832) ((emacs (24)) (cl-lib (0 5))) "Image thumbnails in archive file with non-blocking" single ((:commit . "8d29535bd832329ffeeac780aae7aa8919af1175") (:url . "https://github.com/mhayashi1120/Emacs-image-archive") (:keywords "multimedia"))]) (image+ . [(20150707 916) ((cl-lib (0 3))) "Image manipulate extensions for Emacs" single ((:commit . "6834d0c09bb4df9ecc0d7a559bd7827fed48fffc") (:url . "https://github.com/mhayashi1120/Emacs-imagex") (:keywords "multimedia" "extensions"))]) (igv . [(20141210 427) nil "Control Integrative Genomic Viewer within Emacs" single ((:commit . "47ac6ceede252f451348a2c696398c0cb5279555"))]) (igrep . [(20130824 507) nil "An improved interface to `grep` and `find`" single ((:keywords "tools" "processes" "search"))]) (ignoramus . [(20160414 709) nil "Ignore backups, build files, et al." single ((:commit . "b37dc7c07edd9d152436f9019c14df158b599be3") (:url . "http://github.com/rolandwalker/ignoramus") (:keywords "convenience" "tools"))]) (iflipb . [(20171113 1244) nil "interactively flip between recently visited buffers" single ((:commit . "a5ad1fbd1173cff5228dab265515c92c0778f86a") (:url . "https://github.com/jrosdahl/iflipb"))]) (ietf-docs . [(20150928 257) nil "Fetch, Cache and Load IETF documents" single ((:commit . "ede30d6d26044069e1731fd20c0ab2324552c0b4") (:url . "https://github.com/choppsv1/ietf-docs") (:keywords "ietf" "rfc"))]) (iedit . [(20170916 1024) nil "Edit multiple regions in the same way simultaneously." tar ((:commit . "5b14cc9fcaef509c50f25cff872fba5d70b2c799") (:url . "http://www.emacswiki.org/emacs/Iedit") (:keywords "occurrence" "region" "simultaneous" "refactoring"))]) (ids-edit . [(20170818 802) ((emacs (24 3))) "IDS (Ideographic Description Sequence) editing tool" tar ((:commit . "8562a6cbfb3f2d44bc6f62ab15081a80f8fee502") (:url . "http://github.com/kawabata/ids-edit") (:keywords "i18n" "wp"))]) (idris-mode . [(20171205 1236) ((emacs (24)) (prop-menu (0 1)) (cl-lib (0 5))) "Major mode for editing Idris code" tar ((:commit . "fec1632fc84ea0f4e516cdfe2ded6ab9d1cd7697") (:url . "https://github.com/idris-hackers/idris-mode") (:keywords "languages"))]) (idomenu . [(20141123 1320) nil "imenu tag selection a la ido" single ((:commit . "4b0152d606360c70204fb4c27f68de79ca885386"))]) (ido-yes-or-no . [(20161108 1551) ((ido-completing-read+ (0))) "Use Ido to answer yes-or-no questions" single ((:commit . "c55383b1fce5879e87e7ca6809fc60534508e182") (:url . "https://github.com/DarwinAwardWinner/ido-yes-or-no") (:keywords "convenience" "completion" "ido"))]) (ido-vertical-mode . [(20160429 1037) nil "Makes ido-mode display vertically." single ((:commit . "b42e4227ed5d37b5d840a9d9d1cdaabf50e189b1") (:url . "https://github.com/creichert/ido-vertical-mode.el") (:keywords "convenience"))]) (ido-ubiquitous . [(20170923 842) ((ido-completing-read+ (4 6)) (cl-lib (0 5))) "Use ido (nearly) everywhere." single ((:commit . "e2ea358725f03ae623ae03ed90715efb92a61030") (:url . "https://github.com/DarwinAwardWinner/ido-ubiquitous") (:keywords "convenience" "completion" "ido"))]) (ido-springboard . [(20170105 2355) nil "Temporarily change default-directory for one command" single ((:commit . "263a8cd4582c81bfc29d7db37d5267e2488b148c") (:url . "https://github.com/jwiegley/springboard") (:keywords "ido"))]) (ido-sort-mtime . [(20171121 59) nil "Sort Ido's file list by modification time" single ((:commit . "f638ff0c922af862f5211779f2311a27fde428eb") (:keywords "convenience" "files"))]) (ido-skk . [(20151111 150) ((emacs (24 4)) (ddskk (20150912 1820))) "ido interface for skk henkan" single ((:commit . "89a2e62799bff2841ff634517c86084c4ce69246") (:url . "https://github.com/tsukimizake/ido-skk") (:keywords "languages"))]) (ido-select-window . [(20131220 1247) ((emacs (24 1))) "Select a window using ido and buffer names" single ((:commit . "a64707d8d154664d50d12e26417d586e4c3dd78b") (:url . "https://github.com/pjones/ido-select-window"))]) (ido-occur . [(20160820 740) ((dash (2 13 0))) "Yet another `occur' with `ido'." single ((:commit . "522af5d55b3d4cd6885f3b4100913566c202cec4") (:url . "https://github.com/danil/ido-occur") (:keywords "inner" "buffer" "search"))]) (ido-occasional . [(20150214 448) ((emacs (24 1))) "Use ido where you choose." single ((:commit . "d405f1795e1e0c63be411ee2825184738d29c33a") (:url . "https://github.com/abo-abo/ido-occasional") (:keywords "completion"))]) (ido-migemo . [(20150921 1544) ((migemo (1 9 1))) "Migemo plug-in for Ido" single ((:commit . "e71114a92dd69cb46abf3fb71a09ce27506fcf77") (:url . "https://github.com/myuhe/ido-migemo.el") (:keywords "files"))]) (ido-load-library . [(20140611 900) ((persistent-soft (0 8 8)) (pcache (0 2 3))) "Load-library alternative using ido-completing-read" single ((:commit . "e03b55957c93aa1a7dd190e173e16ec59dbb2ba7") (:url . "http://github.com/rolandwalker/ido-load-library") (:keywords "maint" "completion"))]) (ido-hacks . [(20150331 1209) nil "Put more IDO in your IDO" single ((:commit . "b7e7514a0e011e4d767d1f5755c5eae9d85f83dc") (:keywords "convenience"))]) (ido-grid-mode . [(20160122 339) ((emacs (24 4))) "Display ido-prospects in the minibuffer in a grid." single ((:commit . "7cfca3988a6dc3ad18e28abe114218095ff2366f") (:url . "https://github.com/larkery/ido-grid-mode.el") (:keywords "convenience"))]) (ido-gnus . [(20140216 846) ((gnus (5 13))) "Access gnus groups or servers using ido" single ((:commit . "f5fe3f6aa8086f675ba216abace9e3d5f2e3a089") (:url . "https://github.com/vapniks/ido-gnus") (:keywords "comm"))]) (ido-flex-with-migemo . [(20170319 431) ((flx-ido (0 6 1)) (migemo (1 9 1)) (emacs (24 4))) "use ido with flex and migemo" single ((:commit . "c620934f50b9713693eba8e23f88c2aaa8510708") (:url . "https://github.com/ROCKTAKEY/ido-flex-with-migemo") (:keywords "matching"))]) (ido-exit-target . [(20170717 1151) ((emacs (24 4))) "Commands and keys for selecting other window and frame targets within ido" single ((:commit . "e56fc6928649c87ccf39d56d84ab53ebaced1f73") (:url . "https://github.com/waymondo/ido-exit-target") (:keywords "convenience" "tools" "extensions"))]) (ido-describe-bindings . [(20161023 402) ((dash (2 13 0))) "Yet another `describe-bindings' with `ido'." single ((:commit . "a142ff1c33df23ed9665497d0dcae2943b3c706a") (:url . "https://github.com/danil/ido-describe-bindings") (:keywords "help"))]) (ido-completing-read+ . [(20170820 3) ((emacs (24 4)) (cl-lib (0 5)) (s (0 1)) (memoize (1 1))) "A completing-read-function using ido" single ((:commit . "e2ea358725f03ae623ae03ed90715efb92a61030") (:url . "https://github.com/DarwinAwardWinner/ido-completing-read-plus") (:keywords "ido" "completion" "convenience"))]) (ido-complete-space-or-hyphen . [(20130228 208) nil "Complete SPACE or HYPHEN when type SPACE in ido" single ((:commit . "3fe1fe1e1a743f8deb8f4025977647afecd58f14") (:url . "https://github.com/doitian/ido-complete-space-or-hyphen") (:keywords "ido" "completion"))]) (ido-clever-match . [(20151011 1026) ((emacs (24 4)) (cl-lib (0 5))) "Alternative matcher for ido." single ((:commit . "f173473e99c8b0756f12e4cc8f67e68fa59eadd3") (:url . "https://github.com/Bogdanp/ido-clever-match") (:keywords "ido" "flex"))]) (ido-at-point . [(20151021 57) ((emacs (24))) "ido-style completion-at-point" single ((:commit . "e5907bbe8a3d148d07698b76bd994dc3076e16ee") (:url . "https://github.com/katspaugh/ido-at-point") (:keywords "convenience" "abbrev"))]) (idle-require . [(20090715 1503) nil "load elisp libraries while Emacs is idle" single ((:commit . "33592bb098223b4432d7a35a1d65ab83f47c1ec1") (:url . "http://nschum.de/src/emacs/idle-require/") (:keywords "internal"))]) (idle-highlight-mode . [(20120920 948) nil "highlight the word the point is on" single ((:commit . "c466f2a9e291f9da1167dc879577b2e1a7880482") (:url . "http://www.emacswiki.org/cgi-bin/wiki/IdleHighlight") (:keywords "convenience"))]) (identica-mode . [(20130204 1453) nil "Major mode API client for status.net open microblogging" tar ((:commit . "cf9183ee11ac922e85c7c908f04e2d00b03111b3") (:url . "http://blog.gabrielsaldana.org/identica-mode-for-emacs/") (:keywords "identica" "web"))]) (idea-darkula-theme . [(20160416 1603) ((emacs (24 1))) "Color theme based on IntelliJ IDEA Darkula color theme" single ((:commit . "52602d9b91883e1f297d000951aeed48bf60176e") (:url . "http://github.com/fourier/idea-darkula-theme") (:keywords "themes"))]) (id-manager . [(20170320 546) nil "id-password management" single ((:commit . "14ebc35db298aac4dedc8aa188bc46bacab81f3b") (:keywords "password" "convenience"))]) (icomplete+ . [(20170303 1456) nil "Extensions to `icomplete.el'." single ((:url . "https://www.emacswiki.org/emacs/download/icomplete%2b.el") (:keywords "help" "abbrev" "internal" "extensions" "local" "completion" "matching"))]) (icicles . [(20170917 942) nil "Minibuffer input completion and cycling." tar ((:url . "https://www.emacswiki.org/emacs/download/icicles.el") (:keywords "extensions" "help" "abbrev" "local" "minibuffer" "projects" "keys" "apropos" "completion" "matching" "regexp" "command"))]) (ibuffer-vc . [(20171106 2341) ((cl-lib (0 2))) "Group ibuffer's list by VC project, or show VC status" single ((:commit . "83d60aefd21e2aa20c7217d224f38a40bb75e63b") (:url . "http://github.com/purcell/ibuffer-vc") (:keywords "themes"))]) (ibuffer-tramp . [(20151118 939) nil "Group ibuffer's list by TRAMP connection" single ((:commit . "41fab2ad174f53a4cf5ef7d2ebef518dede82ab4") (:url . "http://github.com/svend/ibuffer-tramp") (:keywords "convenience"))]) (ibuffer-rcirc . [(20150215 1318) ((cl-lib (0 2))) "Ibuffer integration for rcirc" single ((:commit . "8a4409b1c679d65c819dee4085faf929840e79f8") (:url . "https://github.com/fgallina/ibuffer-rcirc") (:keywords "buffer" "convenience" "comm"))]) (ibuffer-projectile . [(20171201 1458) ((projectile (0 11 0))) "Group ibuffer's list by projectile root" single ((:commit . "c18ac540ee46cb759fc5df18747f6e8d23563011") (:url . "http://github.com/purcell/ibuffer-projectile") (:keywords "themes"))]) (ibuffer-git . [(20110508 31) nil "show git status in ibuffer column" single ((:commit . "d326319c05ddb8280885b31f9094040c1b365876") (:keywords "convenience"))]) (iasm-mode . [(20171023 722) nil "interactive assembly major mode." single ((:commit . "abbec7f308f9ce97beeb57e459fff35f559b4c18") (:url . "https://github.com/RAttab/iasm-mode") (:keywords ":" "tools"))]) (i3wm . [(20170822 738) nil "i3wm integration library" single ((:commit . "71391dc61063fee77ad174f3b2ca25c60b41009e") (:url . "https://git.flintfam.org/swf-projects/emacs-i3") (:keywords "convenience" "extensions"))]) (i2b2-mode . [(20140709 1804) nil "Highlights corresponding PHI data in the text portion of an i2b2 XML Document." single ((:commit . "db10efcfc8bed369a516bbf7526ede41f98cb95a") (:keywords "xml" "phi" "i2b2" "deidi2b2"))]) (hydra . [(20171120 1042) ((cl-lib (0 5))) "Make bindings that stick around." tar ((:commit . "e228432bb64385f67f20aa525bce56ae4e8419eb") (:url . "https://github.com/abo-abo/hydra") (:keywords "bindings"))]) (hyde . [(20160507 2008) nil "Major mode to help create and manage Jekyll blogs" tar ((:commit . "a8cd6ed00ecd8d7de0ded2f4867015b412b15b76"))]) (hydandata-light-theme . [(20160815 2118) nil "A light color theme that is easy on your eyes" single ((:commit . "0fbc91678ef65e1f65d7ec6792ff0b2f104d16a9") (:keywords "color-theme" "theme"))]) (hyai . [(20170301 647) ((cl-lib (0 5)) (emacs (24))) "Haskell Yet Another Indentation" single ((:commit . "e9a7e945fed12d8e664e898cf8b434b0376d5d80") (:url . "https://github.com/iquiw/hyai"))]) (hy-mode . [(20171202 1141) ((dash (2 13 0)) (dash-functional (1 2 0)) (s (1 11 0)) (emacs (24))) "Major mode for Hylang" tar ((:commit . "3220f00a9bdb24667a1c3876b4a2f889dcb77501") (:url . "http://github.com/hylang/hy-mode") (:keywords "languages" "lisp" "python"))]) (hungry-delete . [(20170411 1802) nil "hungry delete minor mode" single ((:commit . "0434458d3f6b2b585f332271feaa054bf4ec96d7") (:url . "http://github.com/nflath/hungry-delete"))]) (hungarian-holidays . [(20161020 438) nil "Adds a list of Hungarian public holidays to Emacs calendar" single ((:commit . "653108769279499d84a79267c90e640d98823872") (:keywords "calendar"))]) (hugsql-ghosts . [(20170612 1223) ((s (1 9 0)) (dash (2 10 0)) (cider (0 14 0))) "Display ghostly hugsql defqueries inline" single ((:commit . "2f3f98b644b4da35f4fb80b7c3b63f986417b415") (:url . "https://github.com/rkaercher/hugsql-ghosts"))]) (httprepl . [(20141101 1034) ((s (1 9 0)) (dash (2 5 0)) (emacs (24))) "An HTTP REPL" single ((:commit . "cfa3693267a8ed1c96a86a126823f37dbfe077d8") (:url . "https://github.com/gregsexton/httprepl.el") (:keywords "http" "repl"))]) (httpcode . [(20121001 2045) nil "explains the meaning of an HTTP status code" single ((:commit . "a45e735082b09477cd704a99294d336cdbeb12ba") (:url . "http://github.com/rspivak/httpcode.el"))]) (http-twiddle . [(20160801 1211) nil "send & twiddle & resend HTTP requests" single ((:commit . "4d0c73b7dcbde8b483d4f3a75c49c74d2fe3ca45") (:url . "https://github.com/hassy/http-twiddle/blob/master/http-twiddle.el") (:keywords "http" "rest" "soap"))]) (http-post-simple . [(20170715 240) nil "HTTP POST requests using the url library" single ((:commit . "f53697fca278c741051aeb668b00466b5e0fd3fe") (:keywords "comm" "data" "processes" "hypermedia"))]) (http . [(20170906 1111) ((emacs (24 4)) (request (0 2 0)) (edit-indirect (0 1 4))) "Yet another HTTP client" single ((:commit . "193a7bf843dd6b6805c7b18dab31f50c8325d710") (:url . "https://github.com/emacs-pe/http.el") (:keywords "convenience"))]) (htmlize . [(20171017 141) nil "Convert buffer text and decorations to HTML." single ((:commit . "a0b55cba65a225df8d9e17a3ac448ce9e8ec962d") (:keywords "hypermedia" "extensions"))]) (html2org . [(20170417 2201) ((emacs (24 4))) "Convert html to org format text" single ((:commit . "6904aed40259ad8afccff079ebd8a07bff319ebc") (:url . "http://github.com/lujun9972/html2org.el") (:keywords "convenience" "html" "org"))]) (html-to-markdown . [(20151105 40) ((cl-lib (0 5))) "HTML to Markdown converter written in Emacs-lisp." single ((:commit . "60c5498c801be186478cf7c05be05b4430c4a144") (:url . "http://github.com/Bruce-Connor/html-to-markdown") (:keywords "tools" "wp" "languages"))]) (html-to-hiccup . [(20161028 701) ((emacs (25 1)) (dash (2 13 0)) (s (1 10 0))) "Convert HTML to Hiccup syntax" single ((:commit . "99217a5058626d253ed8ada51a7642071fe54ba5") (:url . "https://github.com/plexus/html-to-hiccup") (:keywords "html" "hiccup" "clojure"))]) (html-script-src . [(20120403 1115) nil "Insert +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/html-mode/script.javascript-src b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/html-mode/script.javascript-src new file mode 100644 index 0000000..b64c4dc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/html-mode/script.javascript-src @@ -0,0 +1,4 @@ +#contributor : Jimmy Wu +#name : +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/html-mode/textarea b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/html-mode/textarea new file mode 100644 index 0000000..058498f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/html-mode/textarea @@ -0,0 +1,4 @@ +#contributor : Jimmy Wu +#name : +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/html-mode/th b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/html-mode/th new file mode 100644 index 0000000..3b5fab1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/html-mode/th @@ -0,0 +1,5 @@ +#contributor : Jimmy Wu +#name : ... +#group : table +# -- +$2 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/apr_assert b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/apr_assert new file mode 100644 index 0000000..a3942be --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/apr_assert @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: apr_assert +# key: apr_assert +# -- +if (Globals.useAssertions) { + ${1:assert ..}; +} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/assert b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/assert new file mode 100644 index 0000000..686ffea --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/assert @@ -0,0 +1,5 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: assert +# key: as +# -- +assert ${1:expression}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/assertEquals b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/assertEquals new file mode 100644 index 0000000..ce23dae --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/assertEquals @@ -0,0 +1,7 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: assertEquals +# key: ae +# group: test +# -- +Assert.assertEquals($1, $2); +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/cls b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/cls new file mode 100644 index 0000000..88f534f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/cls @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: cls +# key: cls +# -- +class ${1:Class} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/constructor b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/constructor new file mode 100644 index 0000000..602e496 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/constructor @@ -0,0 +1,7 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: constructor +# key: c +# -- +public ${1:Class} (${2:args}) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/define test method b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/define test method new file mode 100644 index 0000000..fd9daf6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/define test method @@ -0,0 +1,8 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: define test method +# key: dt +# -- +@Test +public void test${1:Name}() throws Exception { + $0 +} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/doc b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/doc new file mode 100644 index 0000000..88f556e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/doc @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: doc +# key: /* +# -- +/** + * ${1:documentation} + */ \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/equals b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/equals new file mode 100644 index 0000000..e990966 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/equals @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: equals +# key: eq +# -- +public boolean equals(${1:Class} other) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/file_class b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/file_class new file mode 100644 index 0000000..e0a46f6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/file_class @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: file_class +# key: file +# -- +public class ${1:`(file-name-base + (or (buffer-file-name) + (buffer-name)))`} { + $0 +} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/for new file mode 100644 index 0000000..833827b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/for @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: for +# key: for +# -- +for (${1:int i = 0}; ${2:i < N}; ${3:i++}) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/fori b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/fori new file mode 100644 index 0000000..a417f2c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/fori @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: fori +# key: fori +# -- +for (${1:Object el} : ${2:iterator}) { + $0 +} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/getter b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/getter new file mode 100644 index 0000000..747f9f4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/getter @@ -0,0 +1,7 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: getter +# key: g +# -- +public ${1:int} get${2:Field}() { + return ${3:field}; +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/if new file mode 100644 index 0000000..cae545f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/if @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: if +# key: if +# -- +if (${1:condition}) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/ife b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/ife new file mode 100644 index 0000000..975643f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/ife @@ -0,0 +1,10 @@ +# -*- mode: snippet -*- +# name: ife +# key: ife +# -- +if (${1:cond}) { + $2 +} +else { + $3 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/import b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/import new file mode 100644 index 0000000..56235a2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/import @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: import +# key: imp +# -- +import ${1:System.}; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/iterator b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/iterator new file mode 100644 index 0000000..69fb2ac --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/iterator @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: iterator +# key: iterator +# -- +public Iterator<${1:type}> iterator() { + $0 +} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/javadoc b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/javadoc new file mode 100644 index 0000000..5bc9051 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/javadoc @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: javadoc +# key: doc +# -- +/** + * $0 + * + */ \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/lambda b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/lambda new file mode 100644 index 0000000..a73a7a5 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/lambda @@ -0,0 +1,5 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: lambda +# key: \ +# -- +(${1:args}) -> ${2:expression}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/main b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/main new file mode 100644 index 0000000..b24e49d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/main @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: main +# key: main +# -- +public static void main(String[] args) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/main_class b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/main_class new file mode 100644 index 0000000..624b31c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/main_class @@ -0,0 +1,11 @@ +# contributor: L. Guruprasad +# name: main_class +# key: main_class +# -- +class `(file-name-nondirectory (file-name-sans-extension (buffer-file-name)))` +{ +public static void main(String args[]) +{ +$0 +} +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/method b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/method new file mode 100644 index 0000000..7a6b9ed --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/method @@ -0,0 +1,7 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: method +# key: m +# -- +${1:public} ${2:void} ${3:name}(${4:args}) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/new b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/new new file mode 100644 index 0000000..f06091d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/new @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: new +# key: new +# -- +${1:Type} ${2:obj} = new ${3:Constr}(${4:args}); +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/override b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/override new file mode 100644 index 0000000..9878c85 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/override @@ -0,0 +1,6 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: override +# key: o +# -- +@Override +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/param b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/param new file mode 100644 index 0000000..4a1f44d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/param @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: param +# key: param +# -- +@param ${1:paramater} $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/printf b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/printf new file mode 100644 index 0000000..f93c965 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/printf @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: printf +# key: printf +# -- +System.out.printf("$0%n"); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/println b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/println new file mode 100644 index 0000000..7dd8f0d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/println @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: println +# key: pr +# -- +System.out.println("${1:text}"); +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/return b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/return new file mode 100644 index 0000000..5712e0c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/return @@ -0,0 +1,5 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: return +# key: r +# -- +return $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/test b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/test new file mode 100644 index 0000000..a37d115 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/test @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: test +# key: test +# -- +@Test +public void test_${1:Case}() { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/testClass b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/testClass new file mode 100644 index 0000000..b01a68f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/testClass @@ -0,0 +1,12 @@ +# -*- mode: snippet -*- +# name: testClass +# key: tc +# -- +import junit.framework.*; +import junit.textui.*; + +public class Test${1:Class} extends TestCase { + protected void setUp() { + $0 + } +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/this b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/this new file mode 100644 index 0000000..45201b4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/this @@ -0,0 +1,6 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: this +# key: . +# -- +this.$1 = $1; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/toString b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/toString new file mode 100644 index 0000000..0382a9e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/toString @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: toString +# key: toStr +# -- +public String toString() { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/try b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/try new file mode 100644 index 0000000..1a17ba3 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/try @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# name: try +# key: try +# -- +try { + $0 +} +catch (${1:Throwable e}) { + ${2:System.out.println("Error " + e.getMessage()); + e.printStackTrace();} +} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/value b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/value new file mode 100644 index 0000000..7ec38ef --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/java-mode/value @@ -0,0 +1,5 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: value +# key: val +# -- +final ${1:int} ${2:n} = $0; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/al b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/al new file mode 100644 index 0000000..04fbec4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/al @@ -0,0 +1,4 @@ +# -*- mode: snippet -*- +#name : alert +# -- +alert($0); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/class b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/class new file mode 100644 index 0000000..84171bb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/class @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#name : Class +# -- +var ${1:name} = new Class({ + initialize: function($2) { + $0 + } +}); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/com b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/com new file mode 100644 index 0000000..6179e18 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/com @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name : comment (/* ... */) +# -- +/* + * $0 + */ \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/debugger b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/debugger new file mode 100644 index 0000000..09af6eb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/debugger @@ -0,0 +1,5 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: debugger +# key: dbg +# -- +debugger; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/each b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/each new file mode 100644 index 0000000..74cbddd --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/each @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name : each +# -- +${1:collection}.each(function($2) { + $0 +}); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/el b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/el new file mode 100644 index 0000000..ac13571 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/el @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name : else +# -- +else { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/ev.add b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/ev.add new file mode 100644 index 0000000..cf2a7e0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/ev.add @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name : addEvent +# -- +addEvent('${1:event}', function($2) { + $0 +}); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/ev.fire b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/ev.fire new file mode 100644 index 0000000..c90e9ed --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/ev.fire @@ -0,0 +1,4 @@ +# -*- mode: snippet -*- +#name : fireEvent +# -- +fireEvent('$0') \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/for new file mode 100644 index 0000000..d79ed03 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/for @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name : for +# -- +for(var ${1:i} = ${2:0}; $1 < ${3:collection}.length; $1++) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/function b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/function new file mode 100644 index 0000000..31ef374 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/function @@ -0,0 +1,7 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: function +# key: f +# -- +function ${1:name}(${2:arg}) { + $0 +} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/if new file mode 100644 index 0000000..7306759 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/if @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name : if +# -- +if (${1:condition}) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/init b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/init new file mode 100644 index 0000000..feac58a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/init @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name : Constructor +# -- +initialize: function($1) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/log b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/log new file mode 100644 index 0000000..2f33f4d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/log @@ -0,0 +1,4 @@ +# -*- mode: snippet -*- +#name : console.log +# -- +console.log($0); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/multiline-comment b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/multiline-comment new file mode 100644 index 0000000..1d34aed --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/multiline-comment @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +#name : multiline-comment +#key: /** +# -- +/** + * $0 + */ \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/param-comment b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/param-comment new file mode 100644 index 0000000..e3c9d27 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/param-comment @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name: param-comment +#key: *@p +#condition: (= (js2-node-type (js2-node-at-point)) js2-COMMENT) +# -- +* @param {${type}} ${comment}. \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/req.html b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/req.html new file mode 100644 index 0000000..bc1491f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/req.html @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#name : html +# -- +new Request.HTML({ + onSuccess: function(responseTree, responseElements, responseHTML, responseJavaScript) { + $0 + } +}).${1:get}(${2:url}); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/req.json b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/req.json new file mode 100644 index 0000000..36fb03f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/req.json @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#name : json +# -- +new Request.JSON({ + onSuccess: function(responseJSON, responseText) { + $0 + } +}).${1:send}(${2:url}); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/return-comment b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/return-comment new file mode 100644 index 0000000..fc5dadf --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/return-comment @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name: return-comment +#key: *@r +#condition: (= (js2-node-type (js2-node-at-point)) js2-COMMENT) +# -- +* @return {${type}} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/type-inline-comment b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/type-inline-comment new file mode 100644 index 0000000..ccc9430 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/type-inline-comment @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name: type-inline-comment +#key: @ty +#condition: (not (= (js2-node-type (js2-node-at-point)) js2-COMMENT)) +# -- +/** @type {${type}} */ \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/type-multiline-comment b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/type-multiline-comment new file mode 100644 index 0000000..92d7482 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js-mode/type-multiline-comment @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#name: type-inline-comment +#key: *ty +#condition: (= (js2-node-type (js2-node-at-point)) js2-COMMENT) +# -- +* @type {${type}} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js2-mode/.yas-parents b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js2-mode/.yas-parents new file mode 100644 index 0000000..27dab30 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js2-mode/.yas-parents @@ -0,0 +1 @@ +js-mode diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js3-mode/.yas-parents b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js3-mode/.yas-parents new file mode 100644 index 0000000..27dab30 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/js3-mode/.yas-parents @@ -0,0 +1 @@ +js-mode diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/acronym b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/acronym new file mode 100644 index 0000000..ea2314c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/acronym @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: acronym +# key: ac +# -- +\newacronym{${1:label}}{${1:$(upcase yas-text)}}{${2:Name}} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/alertblock b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/alertblock new file mode 100644 index 0000000..d259d2b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/alertblock @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: alertblock +# key: al +# -- +\begin{alertblock}{$2} + $0 +\end{alertblock} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/alg b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/alg new file mode 100644 index 0000000..24a9c94 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/alg @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: alg +# key: alg +# -- +\begin{algorithmic} +$0 +\end{algorithmic} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/article b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/article new file mode 100644 index 0000000..ec46c9a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/article @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# name: full template of article class +# key: article +# -- +\documentclass[${1:options}]{article} + +\author{$3} + +\begin{document} +$0 +\end{document} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/begin b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/begin new file mode 100644 index 0000000..dabcbe8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/begin @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: begin +# key: begin +# -- +\begin{${1:environment}} +$0 +\end{$1} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/block b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/block new file mode 100644 index 0000000..6b16f4b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/block @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: block +# key: bl +# -- +\begin{block}{$1} + $0 +\end{block} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/capgls b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/capgls new file mode 100644 index 0000000..d469185 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/capgls @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: Gls +# key: G +# -- +\Gls{${1:label}} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/caption b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/caption new file mode 100644 index 0000000..98e25fb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/caption @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: caption +# key: ca +# -- +\caption{$0} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/cite b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/cite new file mode 100644 index 0000000..2e24838 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/cite @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: cite +# key: c +# -- +\cite{$1} $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/code b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/code new file mode 100644 index 0000000..cef9570 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/code @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: code +# key: code +# -- +\begin{lstlisting} +$0 +\end{lstlisting} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/columns b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/columns new file mode 100644 index 0000000..80388f1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/columns @@ -0,0 +1,13 @@ +# -*- mode: snippet -*- +# name: columns +# key: cols +# -- +\begin{columns} + \begin{column}{.${1:5}\textwidth} + $0 + \end{column} + + \begin{column}{.${2:5}\textwidth} + + \end{column} +\end{columns} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/documentclass b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/documentclass new file mode 100644 index 0000000..9c03a21 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/documentclass @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: documentclass +# key: doc +# -- +\documentclass[${1:options}]{$2} +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/emph b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/emph new file mode 100644 index 0000000..36b19d7 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/emph @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: emph +# key: e +# -- +\emph{$1}$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/enumerate b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/enumerate new file mode 100644 index 0000000..d49ce37 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/enumerate @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: enumerate +# key: enum +# -- +\begin{enumerate} +\item $0 +\end{enumerate} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/figure b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/figure new file mode 100644 index 0000000..a25d601 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/figure @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: figure +# key: fig +# -- +\begin{figure}[ht] + \centering + \includegraphics[${1:options}]{figures/${2:path.pdf}} + \caption{\label{fig:${3:label}} $0} +\end{figure} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/frac b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/frac new file mode 100644 index 0000000..b35f8ef --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/frac @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: frac +# key: frac +# -- +\frac{${1:numerator}}{${2:denominator}}$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/frame b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/frame new file mode 100644 index 0000000..f94357d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/frame @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: frame +# key: fr +# -- +\begin{frame}${1:[$2]} + ${3:\frametitle{$4}} + $0 +\end{frame} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/gls b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/gls new file mode 100644 index 0000000..c6a7aac --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/gls @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: gls +# key: g +# -- +\gls{${1:label}} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/glspl b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/glspl new file mode 100644 index 0000000..699927b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/glspl @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: glspl +# key: gp +# -- +\glspl{${1:label}} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/if new file mode 100644 index 0000000..2d80b81 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/if @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: if +# key: if +# -- +\IF {$${1:cond}$} + $0 +\ELSE +\ENDIF diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/includegraphics b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/includegraphics new file mode 100644 index 0000000..d46c9a4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/includegraphics @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: includegraphics +# key: ig +# -- +\includegraphics${1:[$2]}{$0} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/item b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/item new file mode 100644 index 0000000..d4773f5 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/item @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: item +# key: - +# -- +\item $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/itemize b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/itemize new file mode 100644 index 0000000..09a848f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/itemize @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: itemize +# key: it +# -- +\begin{itemize} +\item $0 +\end{itemize} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/label b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/label new file mode 100644 index 0000000..96a72b4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/label @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: label +# key: lab +# -- +\label{$0} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/listing b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/listing new file mode 100644 index 0000000..3c95b17 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/listing @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: listing +# key: lst +# -- +\begin{lstlisting}[float,label=lst:${1:label},caption=nextHopInfo: ${2:caption}] +$0 +\end{lstlisting} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv new file mode 100644 index 0000000..8de90bb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv @@ -0,0 +1,15 @@ +# -*- mode: snippet -*- +# name: full template of moderncv class +# key: moderncv +# -- +\documentclass[${1:options}]{moderncv} + +\firstname{$3} +\familyname{$4} + +\moderncvstyle{${5:casual}} +\moderncvcolor{${6:blue}} + +\begin{document} +$0 +\end{document} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvcomputer b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvcomputer new file mode 100644 index 0000000..d73a6f0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvcomputer @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: moderncv-cvcomputer +# key: cvcomp +# -- +\cvcomputer{${1:category}}{${2:programs}}{${3:category}}{${3:programs}} +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cventry b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cventry new file mode 100644 index 0000000..8a7b656 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cventry @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: moderncv-cventry +# key: cventry +# -- +\cventry{${1:year}}{${2:job}}{${3:employer}}{${4:city}}{${5:description}} +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvlanguage b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvlanguage new file mode 100644 index 0000000..c9dd65b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvlanguage @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: moderncv-cvlanguage +# key: cvlang +# -- +\cvlanguage{${1:language}}{${2:skill-level}}{${3:comment}} +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvline b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvline new file mode 100644 index 0000000..a193fed --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvline @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: moderncv-cvline +# key: cvline +# -- +\cvline{${1:hobby}}{${2:Description}} +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvlistdoubleitem b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvlistdoubleitem new file mode 100644 index 0000000..41f86c6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvlistdoubleitem @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: moderncv-cvlistdoubleitem +# key: cvditem +# -- +\cvlistdoubleitem{${1:item}}{${2:item}} +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvlistitem b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvlistitem new file mode 100644 index 0000000..d50fc8c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/moderncv-cvlistitem @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: moderncv-cvlistitem +# key: cvitem +# -- +\cvlistitem{${1:item}} +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/movie b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/movie new file mode 100644 index 0000000..a01d032 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/movie @@ -0,0 +1,15 @@ +# -*- mode: snippet -*- +# name: movie +# key: movie +# -- +\begin{center} +\includemovie[ + label=test, + controls=false, + text={\includegraphics[width=4in]{${1:image.pdf}}} +]{4in}{4in}{${2:video file}} + +\movieref[rate=3]{test}{Play Fast} +\movieref[rate=1]{test}{Play Normal Speed} +\movieref[rate=0.2]{test}{Play Slow} +\movieref[resume]{test}{Pause/Resume} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/newcommand b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/newcommand new file mode 100644 index 0000000..e9e03ca --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/newcommand @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: newcommand +# key: cmd +# -- +\newcommand{\\${1:name}}${2:[${3:0}]}{$0} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/newglossaryentry b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/newglossaryentry new file mode 100644 index 0000000..66c964a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/newglossaryentry @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: newglossaryentry +# key: gl +# -- +\newglossaryentry{${1:AC}}{name=${2:Andrea Crotti}${3:, description=${4:description}}} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/note b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/note new file mode 100644 index 0000000..1122d7a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/note @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: note +# key: no +# -- +\note{$0} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/python b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/python new file mode 100644 index 0000000..0ba0fc4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/python @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: python +# key: py +# -- +\lstset{language=python} +\begin[language=python]{lstlisting} +$0 +\end{lstlisting} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/question b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/question new file mode 100644 index 0000000..235eb59 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/question @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: question +# key: q +# -- +\question{$0} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/section b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/section new file mode 100644 index 0000000..88faeab --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/section @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: section +# key: sec +# -- +\section{${1:name}} +\label{sec:${2:label}} + +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/subf b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/subf new file mode 100644 index 0000000..0497748 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/subf @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: subf +# key: sf +# -- +\subfigure[${1:caption}]{ + \label{fig:${2:label}} + \includegraphics[width=.${3:3}\textwidth]{${4:path}}} +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/subfigure b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/subfigure new file mode 100644 index 0000000..e93678b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/subfigure @@ -0,0 +1,13 @@ +# -*- mode: snippet -*- +# name: subfigure +# key: subfig +# -- +\begin{figure}[ht] + \centering + \subfigure[$1] + {\label{fig:${2:label}} + \includegraphics[width=.${3:5}\textwidth]{${4:path}}} + + \caption{${5:caption}} +\label{fig:${6:label}} +\end{figure} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/subsec b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/subsec new file mode 100644 index 0000000..5658494 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/subsec @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: subsec +# key: sub +# -- +\subsection{${1:name}} +\label{subsec:${2:label}} + +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/textbf b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/textbf new file mode 100644 index 0000000..84171d7 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/textbf @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: textbf +# key: b +# -- +\textbf{$1}$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/usepackage b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/usepackage new file mode 100644 index 0000000..2afd38b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/latex-mode/usepackage @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: usepackage +# key: pkg +# -- +\usepackage{$0} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-interaction-mode/defun b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-interaction-mode/defun new file mode 100644 index 0000000..5cf3d68 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-interaction-mode/defun @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: defun +# key: defun +# -- +(defun ${1:fun} (${2:args}) + $0 +) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/class b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/class new file mode 100644 index 0000000..bc5eec9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/class @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: class +# key: cls +# -- +(defclass ${1:name} (${2:inherits}) + (${4:slot}) + (:documentation "${3:doc}")) +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/comment b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/comment new file mode 100644 index 0000000..107fad9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/comment @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: comment +# key: /* +# -- +#|${1:type the comment here}|# +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/defpackage b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/defpackage new file mode 100644 index 0000000..2e44ac2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/defpackage @@ -0,0 +1,10 @@ +# -*- mode: snippet -*- +# name: defpackage +# key: defp +# -- +(defpackage #:${1:name} + (:nicknames #:${2:nick}) + (:use #:cl #:closer-mop #:${3:package}) + (:shadow :${4.symbol}) + (:shadowing-import-from #:${5:package} #:${6:symbol}) + (:export :$0)) diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/do b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/do new file mode 100644 index 0000000..6f90064 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/do @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: do +# key: do +# -- +(do ((${1:var1} ${2:init-form} ${3:step-form}) + (${4:var2} ${5:init-form} ${6:step-form})) + (${7:condition} ${8:return-value}) + (${9:body})) +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/for new file mode 100644 index 0000000..de8f644 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/for @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: do +# key: for +# -- +(dotimes (${1:var} ${2:count-form}) + ${3:body}) +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/foreach b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/foreach new file mode 100644 index 0000000..a993bf1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/foreach @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: do +# key: foreach +# -- +(dolist (${1:var} ${2:list-form}) + ${3:body}) +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/format b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/format new file mode 100644 index 0000000..d4f10ad --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/format @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: format +# key: print +# -- +(format t "~& $0 ~%") diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/if new file mode 100644 index 0000000..cd57e3d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/if @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: if +# key: if +# -- +(when (${1:condition}) + (${2:then-do-this})) +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/ifelse b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/ifelse new file mode 100644 index 0000000..91854d8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/ifelse @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: ifelse (...) (...) (...) ... +# key: ifelse +# -- + +(if (${1:condition}) + (${2:then}) + (${3:else})) +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/ifnot b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/ifnot new file mode 100644 index 0000000..467636e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/ifnot @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: ifnot (...) (...) ... +# key: ifnot +# -- + +(unless (${1:condition}) + (${2:then-do-this})) +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/slot b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/slot new file mode 100644 index 0000000..2a51f64 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/slot @@ -0,0 +1,13 @@ +# -*- mode: snippet -*- +# name: slot +# key: slot +# -- +(${1:name} :initarg :${1:$(yas/substr yas-text "[^: ]*")} + :initform (error ":${1:$(yas/substr yas-text "[^: ]*")} must be specified") + ;; :accessor ${1:$(yas/substr yas-text "[^: ]*")} + :reader ${1:$(yas/substr yas-text "[^: ]*")}-changed + :writer set-${1:$(yas/substr yas-text "[^: ]*")} + :type + :allocation ${3::class :instance} + :documentation "${2:about-slot}") +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/switch b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/switch new file mode 100644 index 0000000..6d002dd --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/switch @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: switch +# key: switch +# -- + +(cond (${1:case1} (${2:do-this})) + (${3:case2} (${4:do-this})) + (t ${5:default})) +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/typecast b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/typecast new file mode 100644 index 0000000..4856e93 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lisp-mode/typecast @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: typecast +# name: cast +# -- +(coerce ${1:object} ${2:type}) +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/do b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/do new file mode 100644 index 0000000..43d4d86 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/do @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: do +# key: do +# -- +do + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/eif b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/eif new file mode 100644 index 0000000..b085911 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/eif @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: if elseif +# key: eif +# -- +if $1 then + $2 +elseif $3 then + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/eife b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/eife new file mode 100644 index 0000000..87db0e0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/eife @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# name: if elseif else +# key: eife +# -- +if $1 then + $2 +elseif $3 then + $4 +else + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/fun b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/fun new file mode 100644 index 0000000..0819e72 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/fun @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: fun +# key: fun +# -- +function ($1) + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/if new file mode 100644 index 0000000..c74a5ec --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/if @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: if +# key: if +# -- +if $1 then + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/ife b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/ife new file mode 100644 index 0000000..92248c5 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/ife @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: if else +# key: ife +# -- +if $1 then + $2 +else + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/ipairs b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/ipairs new file mode 100644 index 0000000..5acfd5c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/ipairs @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: for in ipairs +# key: ipairs +# -- +for ${1:idx}, ${2:val} in ipairs(${3:table_name}) do + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/pairs b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/pairs new file mode 100644 index 0000000..7d7d61c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/pairs @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: for in pairs +# key: pairs +# -- +for ${1:name}, ${2:val} in pairs(${3:table_name}) do + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/repeat b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/repeat new file mode 100644 index 0000000..8636fba --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/repeat @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: repeat util +# key: repeat +# -- +repeat + $0 +until $1 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/require b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/require new file mode 100644 index 0000000..ce15ee1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/require @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: require +# key: require +# -- +local $1 = require "$2" diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/while b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/while new file mode 100644 index 0000000..2207754 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/lua-mode/while @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: while +# key: while +# -- +while $1 do + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/m4-mode/def b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/m4-mode/def new file mode 100644 index 0000000..2cc90cb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/m4-mode/def @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: def +# key: def +# -- +define(\`${1:macro}',\`${2:subst}'). +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-automake-mode/noinst_HEADERS b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-automake-mode/noinst_HEADERS new file mode 100644 index 0000000..ab0a30b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-automake-mode/noinst_HEADERS @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: noinst_HEADERS +# key: noinst +# -- +noinst_HEADERS = $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/PHONY b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/PHONY new file mode 100644 index 0000000..9652539 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/PHONY @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: PHONY +# key: phony +# -- +.PHONY: $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/echo b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/echo new file mode 100644 index 0000000..d772a6e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/echo @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: echo +# key: echo +# -- +@echo ${1:"message to output"} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/gen b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/gen new file mode 100644 index 0000000..2b5e466 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/gen @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# name: gen +# key: gen +# possibly add some smart control over the list +# -- +all: ${1:targets} + +$0 + +clean: + ${2:clean actions} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/if new file mode 100644 index 0000000..2e623f0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/if @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: if +# key: if +# -- +@if [ ${1:cond} ] + then $0 +fi diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/var b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/var new file mode 100644 index 0000000..196f4d9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-bsdmake-mode/var @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: var +# key: $ +# -- +$(${1:VAR})$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/abspath b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/abspath new file mode 100644 index 0000000..e02c55c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/abspath @@ -0,0 +1,6 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: abspath +# contributor: gbalats +# key: abs +# -- +\$(abspath ${1:\$(${2:paths})})$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/addprefix b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/addprefix new file mode 100644 index 0000000..2edc1e3 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/addprefix @@ -0,0 +1,6 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: addprefix +# contributor: gbalats +# key: ap +# -- +\$(addprefix ${1:\$(${2:dir})/},${3:\$(${4:items})})$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/addsuffix b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/addsuffix new file mode 100644 index 0000000..6a3ebe4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/addsuffix @@ -0,0 +1,6 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: addsuffix +# contributor: gbalats +# key: as +# -- +\$(addsuffix ${1:.suffix},${2:\$(${3:items})})$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/dir b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/dir new file mode 100644 index 0000000..bc3561b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/dir @@ -0,0 +1,6 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: dir +# contributor: gbalats +# key: d +# -- +\$(dir ${1:\$(${2:paths})})$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/make b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/make new file mode 100644 index 0000000..16c49ce --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/make @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: make +# contributor: gbalats +# key: make +# -- +\$(MAKE) --directory=${1:\$@} +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/notdir b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/notdir new file mode 100644 index 0000000..d5e82d5 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/notdir @@ -0,0 +1,6 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: notdir +# contributor: gbalats +# key: nd +# -- +\$(notdir ${1:\$(${2:paths})})$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/patsubst b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/patsubst new file mode 100644 index 0000000..a966757 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/patsubst @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: patsubst +# key: ps +# -- +$(patsubst ${1:from},${2:to},${3:src}) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/phony b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/phony new file mode 100644 index 0000000..8da99d7 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/phony @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: phony +# key: ph +# -- +.PHONY = $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/shell b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/shell new file mode 100644 index 0000000..b550475 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/shell @@ -0,0 +1,5 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: shell +# key: sh +# -- +\$(shell ${1:command})$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/special b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/special new file mode 100644 index 0000000..775021f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/special @@ -0,0 +1,6 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: special targets +# contributor: gbalats +# key: . +# -- +.${1:PHONY$(upcase yas-text)}: $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/template b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/template new file mode 100644 index 0000000..285624d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/template @@ -0,0 +1,10 @@ +# -*- mode: snippet -*- +# name: template +# contributor: gbalats +# binding: C-c C-t +# -- +define ${1:PROGRAM$(upcase yas-text)}_template +$0 +endef + +\$(foreach ${2:${1:$(downcase yas-text)}},\$(${3:$1S}),\$(eval \$(call $1_template,\$($2)))) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/wildcard b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/wildcard new file mode 100644 index 0000000..c91dc9c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-gmake-mode/wildcard @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: wildcard +# key: wl +# -- +$(wildcard $0) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-mode/all b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-mode/all new file mode 100644 index 0000000..823886f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-mode/all @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: all +# key: all +# -- +all: + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-mode/clean b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-mode/clean new file mode 100644 index 0000000..7ade5eb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/makefile-mode/clean @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: clean +# contributor: gbalats +# expand-env: ((yas-indent-line 'fixed)) +# key: cl +# -- +clean: + ${1:rm -r ${2:\$(${3:OUTDIR})}} +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/malabar-mode/variable b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/malabar-mode/variable new file mode 100644 index 0000000..16ec628 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/malabar-mode/variable @@ -0,0 +1,5 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: variable +# key: var +# -- +${1:int} ${2:n} = $0; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/+ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/+ new file mode 100644 index 0000000..0407169 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/+ @@ -0,0 +1,5 @@ +#name : Unordered List +#contributor: Peng Deng +# -- ++ ${1:Text} ++$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/- b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/- new file mode 100644 index 0000000..9d5c51d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/- @@ -0,0 +1,5 @@ +#name : Unordered List +#contributor: Peng Deng +# -- +- ${1:Text} +-$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/_ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/_ new file mode 100644 index 0000000..50ab476 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/_ @@ -0,0 +1,4 @@ +#name : Emphasis +#contributor: Peng Deng +# -- +_${1:Text}_ $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/__ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/__ new file mode 100644 index 0000000..b6304f3 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/__ @@ -0,0 +1,4 @@ +#name : Strong +#contributor: Peng Deng +# -- +**${1:Text}** $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/` b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/` new file mode 100644 index 0000000..ae58211 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/` @@ -0,0 +1,4 @@ +#name : Inline Code +#contributor: Peng Deng +# -- +\`${1:Code}\` $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h1.1 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h1.1 new file mode 100644 index 0000000..8bb7ea2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h1.1 @@ -0,0 +1,6 @@ +#name : Header 1 (#) +#contributor: Peng Deng +# -- +# ${1:Header 1} # + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h1.2 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h1.2 new file mode 100644 index 0000000..57b178d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h1.2 @@ -0,0 +1,7 @@ +#name : Header 1 (=) +#contributor: Peng Deng +# -- +${1:Header 1} +${1:$(make-string (string-width yas-text) ?\=)} + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h2.1 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h2.1 new file mode 100644 index 0000000..bfee3fc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h2.1 @@ -0,0 +1,6 @@ +#name : Header 2 (##) +#contributor: Peng Deng +# -- +## ${1:Header 1} ## + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h2.2 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h2.2 new file mode 100644 index 0000000..8f94c73 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h2.2 @@ -0,0 +1,7 @@ +#name : Header 2 (-) +#contributor: Peng Deng +# -- +${1:Header 2} +${1:$(make-string (string-width yas-text) ?\-)} + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h3 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h3 new file mode 100644 index 0000000..44a6104 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h3 @@ -0,0 +1,6 @@ +#name : Header 3 +#contributor: Peng Deng +# -- +### ${1:Header 3} ### + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h4 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h4 new file mode 100644 index 0000000..315140a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h4 @@ -0,0 +1,6 @@ +#name : Header 4 +#contributor: Peng Deng +# -- +#### ${1:Header 4} #### + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h5 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h5 new file mode 100644 index 0000000..f50a785 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h5 @@ -0,0 +1,6 @@ +#name : Header 5 +#contributor: Peng Deng +# -- +##### ${1:Header 5} ##### + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h6 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h6 new file mode 100644 index 0000000..1cdfebb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/h6 @@ -0,0 +1,6 @@ +#name : Header 6 +#contributor: Peng Deng +# -- +###### ${1:Header 6} ###### + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/highlight b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/highlight new file mode 100644 index 0000000..f1bce71 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/highlight @@ -0,0 +1,6 @@ +#name : Highlight +#contributor: nguyenvinhlinh +# -- +{% highlight ${1:language} %} +${0:content} +{% endhighlight %} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/hr.1 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/hr.1 new file mode 100644 index 0000000..5fbe4f4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/hr.1 @@ -0,0 +1,7 @@ +#name : Horizontal Rule (-) +#contributor: Peng Deng +# -- + +---------- + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/hr.2 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/hr.2 new file mode 100644 index 0000000..2d4de22 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/hr.2 @@ -0,0 +1,7 @@ +#name : Horizontal Rule (*) +#contributor: Peng Deng +# -- + +******* + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/img b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/img new file mode 100644 index 0000000..69ee77d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/img @@ -0,0 +1,4 @@ +#name : Image +#contributor: Peng Deng +# -- +![${1:Alt Text}](${2:URL} $3) $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/link b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/link new file mode 100644 index 0000000..dd7f99b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/link @@ -0,0 +1,4 @@ +#name : Link +#contributor: Peng Deng +# -- +[${1:Link Text}](${2:URL} $3) $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/ol b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/ol new file mode 100644 index 0000000..c8e3970 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/ol @@ -0,0 +1,5 @@ +#name : Ordered List +#contributor: Peng Deng +# -- +${1:1}. ${2:Text} +${1:$(number-to-string (1+ (string-to-number yas-text)))}. $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/rimg b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/rimg new file mode 100644 index 0000000..caafb60 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/rimg @@ -0,0 +1,4 @@ +#name : Referenced Image +#contributor: Peng Deng +# -- +![${1:Alt Text}][$2] $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/rlb b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/rlb new file mode 100644 index 0000000..681d9f0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/rlb @@ -0,0 +1,5 @@ +#name : Reference Label +#contributor: Peng Deng +# -- +[${1:Reference}]: ${2:URL} $3 +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/rlink b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/rlink new file mode 100644 index 0000000..e35a0c0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/rlink @@ -0,0 +1,4 @@ +#name : Reference Link +#contributor: Peng Deng +# -- +[${1:Link Text}][$2] $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/utf8 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/utf8 new file mode 100644 index 0000000..b21c56f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/markdown-mode/utf8 @@ -0,0 +1,6 @@ +# name: utf-8 encoding +# key: utf8 +# contributor: Thiago Perrotta +# -- + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/.yas-parents b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/.yas-parents new file mode 100644 index 0000000..0539988 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/.yas-parents @@ -0,0 +1 @@ +prog-mode \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/chan b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/chan new file mode 100644 index 0000000..b1dda9a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/chan @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: chan +# key: chan +# -- +channel Channel extends ${1:ned.DelayChannel} { + $0 +} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/connections b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/connections new file mode 100644 index 0000000..a731e88 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/connections @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: connections +# key: conn +# -- +connections${1: allowunconnected}: + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/for new file mode 100644 index 0000000..62ed072 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/for @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: for +# key: for +# -- +for ${1:i}=${2:0}..${3:sizeof(port)-1} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/import b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/import new file mode 100644 index 0000000..47aa063 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/import @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: import +# key: imp +# -- +import ned.${1:Package}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/network b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/network new file mode 100644 index 0000000..a7691e3 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/network @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# name: network +# key: net +# -- +network ${1:Name} +{ + submodules: + $2 + connections: + $3 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/simple b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/simple new file mode 100644 index 0000000..7db2698 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/simple @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: simple +# key: simple +# -- +simple ${1:Component}${2: extends ${3:Component}} +{ + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/submodules b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/submodules new file mode 100644 index 0000000..46c1612 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ned-mode/submodules @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: submodules +# key: sub +# -- +submodules: + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/.yas-parents b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/.yas-parents new file mode 100644 index 0000000..2fa94cd --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/.yas-parents @@ -0,0 +1 @@ +text-mode cc-mode \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/TOSSIM b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/TOSSIM new file mode 100644 index 0000000..a7d6edb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/TOSSIM @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: TOSSIM +# key: tossim +# -- +#ifndef TOSSIM + $0 +#endif \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/command b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/command new file mode 100644 index 0000000..314e7a0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/command @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: command +# key: command +# -- +command ${1:void} ${2:naMe}($3) { + +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/dbg b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/dbg new file mode 100644 index 0000000..ab9b580 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/dbg @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: dbg +# key: dbg +# -- +dbg("${1:Module}", "${2:message}"${3:, ${4:var list}}); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/event b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/event new file mode 100644 index 0000000..1cdc257 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/event @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: event +# key: event +# -- +event ${1:void} ${2:On.Event}($3) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/ifdef b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/ifdef new file mode 100644 index 0000000..dbe1a29 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/ifdef @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: ifdef +# key: ifdef +# -- +#ifdef ${1:Macro} + $2 +${3:#else} + $4 +#endif \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/interface b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/interface new file mode 100644 index 0000000..495a6c4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/interface @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: interface +# key: int +# -- +interface ${1:Interface} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/module b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/module new file mode 100644 index 0000000..477f49e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/module @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: module +# key: mod +# -- +module ${1:Module} { + ${2:uses interface ${3:Packet}}; + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/nx b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/nx new file mode 100644 index 0000000..38da916 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/nx @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: nx +# key: nx +# -- +nx_uint${1:8}_t ${2:var}; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/provides b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/provides new file mode 100644 index 0000000..175b621 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/provides @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: provides +# key: provides +# -- +provides interface ${1:Interface}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/sim b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/sim new file mode 100644 index 0000000..cd77218 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/sim @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: sim +# key: sim +# -- +#ifdef TOSSIM + $0 +#endif \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/uint8_t b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/uint8_t new file mode 100644 index 0000000..eb0144e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/uint8_t @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: uint8_t +# key: u8 +# -- +uint8_t ${1:var}; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/uses b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/uses new file mode 100644 index 0000000..cbb977d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nesc-mode/uses @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: uses +# key: uses +# -- +uses interface ${1:Interface}${2: as ${3:alias}}; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/buildPhase b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/buildPhase new file mode 100644 index 0000000..c912f41 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/buildPhase @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: buildPhase +# key: bp +# -- +buildPhase= '' +$1 +''; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/checkPhase b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/checkPhase new file mode 100644 index 0000000..76622fa --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/checkPhase @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: checkPhase +# key: ch +# -- +checkPhase= '' +$1 +''; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/configurePhase b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/configurePhase new file mode 100644 index 0000000..c07bf09 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/configurePhase @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: configurePhase +# key: cp +# -- +configurePhase= '' +$1 +''; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/distPhase b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/distPhase new file mode 100644 index 0000000..88524f6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/distPhase @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: distPhase +# key: dp +# -- +distPhase= '' +$1 +''; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/fixPhase b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/fixPhase new file mode 100644 index 0000000..9db5bb4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/fixPhase @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: fixPhase +# key: fp +# -- +fixPhase= '' +$1 +''; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/installCheckPhase b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/installCheckPhase new file mode 100644 index 0000000..b017621 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/installCheckPhase @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: installCheckPhase +# key: ic +# -- +installCheckPhase= '' +$1 +''; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/installPhase b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/installPhase new file mode 100644 index 0000000..f30bfb2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/installPhase @@ -0,0 +1,12 @@ +# -*- mode: snippet -*- +# name: installPhase +# key: ip +# -- +installPhase= '' +${1: mkdir -p \$out/bin + for f in \$(find . -executable -type f); + do + cp \$f \$out/bin/ + done} +''; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/package_github b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/package_github new file mode 100644 index 0000000..5a7230e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/package_github @@ -0,0 +1,56 @@ +# -*- mode: snippet -*- +# name: package github +# key: pg +# -- +{ stdenv, fetchFromGitHub$1 }: +stdenv.mkDerivation rec { + name = "$2-\$\{version\}"; + version = "$3"; + + src = fetchFromGitHub { + owner = "$4"; + repo = "$2"; + rev = "${5:v\$\{version\}}"; + sha256 = "$6"; + }; + + buildInputs = [ $1]; + + meta = { + description = "$7"; + homepage = https://${8:github.com/$4/$2}; + + license = stdenv.lib.licenses.${9:$$ + (yas-choose-value '( + "agpl3" + "asl20" + "bsd2" + "bsd3" + "gpl2" + "gpl3" + "lgpl3" + "mit" + ))}; + maintainers = [ stdenv.lib.maintainers.$10 ]; + platforms = stdenv.lib.platforms.${11:$$ + (yas-choose-value '( + "gnu" + "linux" + "darwin" + "freebsd" + "openbsd" + "netbsd" + "cygwin" + "illumos" + "unix" + "all" + "none" + "allBut" + "mesaPlatforms" + "x86" + "i686" + "arm" + "mips" + ))}; + }; +} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/package_url b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/package_url new file mode 100644 index 0000000..5461e42 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/package_url @@ -0,0 +1,54 @@ +# -*- mode: snippet -*- +# name: package url +# key: pu +# -- +{ stdenv, fetchurl$1}: + +stdenv.mkDerivation rec { + version = "$2"; + name = "$3-\$\{version\}"; + + src = fetchurl { + url = "$4"; + sha256 = "$5"; + }; + + buildInputs = [ $1 ]; + + meta = { + description = "$6"; + homepage = https://$7; + license = stdenv.lib.licenses.${8:$$ + (yas-choose-value '( + "agpl3" + "asl20" + "bsd2" + "bsd3" + "gpl2" + "gpl3" + "lgpl3" + "mit" + ))}; + maintainers = [ stdenv.lib.maintainers.$9 ]; + platforms = stdenv.lib.platforms.${10:$$ + (yas-choose-value '( + "gnu" + "linux" + "darwin" + "freebsd" + "openbsd" + "netbsd" + "cygwin" + "illumos" + "unix" + "all" + "none" + "allBut" + "mesaPlatforms" + "x86" + "i686" + "arm" + "mips" + ))}; + }; +} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/patchPhase b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/patchPhase new file mode 100644 index 0000000..329f527 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/patchPhase @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: patchPhase +# key: pp +# -- +patchPhase = '' + $1 +''; +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/phases b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/phases new file mode 100644 index 0000000..50326f2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/phases @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: phases +# key: ph +# -- + phases="${1:\$prePhases unpackPhase patchPhase \$preConfigurePhases configurePhase \$preBuildPhases buildPhase checkPhase \$preInstallPhases installPhase fixupPhase installCheckPhase \$preDistPhases distPhase \$postPhases}"; diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/unpackPhase b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/unpackPhase new file mode 100644 index 0000000..558dbe8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nix-mode/unpackPhase @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: unpackPhase +# key: up +# -- +unpackPhase = '' + $1 +''; +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/.yas-parents b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/.yas-parents new file mode 100644 index 0000000..0539988 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/.yas-parents @@ -0,0 +1 @@ +prog-mode \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/define b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/define new file mode 100644 index 0000000..223d364 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/define @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: define +# key: def +# -- +!define ${1:CONSTANT} ${2:value} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/function b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/function new file mode 100644 index 0000000..22926eb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/function @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: function +# key: fun +# -- +Function ${1:Name} + $0 +FunctionEnd \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/if new file mode 100644 index 0000000..da3e92f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/if @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: if +# key: if +# -- +${IF} ${1:cond} + $0 +${ElseIf} ${2:else_cond} + +${EndIf} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/include b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/include new file mode 100644 index 0000000..a7e0f24 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/include @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: include +# key: inc +# -- +!include "${Library.nsh}" \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/insert_macro b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/insert_macro new file mode 100644 index 0000000..451dbb6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/insert_macro @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: insert_macro +# key: im +# -- +!insermacro ${1:Name} ${2:"args"} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/instdir b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/instdir new file mode 100644 index 0000000..f5b14bc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/instdir @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: instdir +# key: $ +# -- +$INSTDIR \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/macro b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/macro new file mode 100644 index 0000000..0316183 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/macro @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: macro +# key: macro +# -- +!macro ${1:Name} UN +$0 + +!macroend \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/message b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/message new file mode 100644 index 0000000..37de365 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/message @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: message +# key: msg +# -- +MessageBox MB_OK "${1:hello}" \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/outdir b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/outdir new file mode 100644 index 0000000..234b74d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/outdir @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: outdir +# key: $ +# -- +$OUTDIR \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/outfile b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/outfile new file mode 100644 index 0000000..14abffc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/outfile @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: outfile +# key: out +# -- +outFile "${1:setup}.exe" \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/section b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/section new file mode 100644 index 0000000..5f0556e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nsis-mode/section @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: section +# key: sec +# -- +Section "${1:Program}" + $0 +SectionEnd \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/body b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/body new file mode 100644 index 0000000..ddcf0cf --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/body @@ -0,0 +1,6 @@ +#contributor : Anders Bach Nielsen +#name : ... +# -- + + $0 + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/br b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/br new file mode 100644 index 0000000..ba35773 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/br @@ -0,0 +1,4 @@ +#contributor : Anders Bach Nielsen +#name :
+# -- +
\ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/doctype b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/doctype new file mode 100644 index 0000000..3fdcf17 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/doctype @@ -0,0 +1,5 @@ +#contributor : Anders Bach Nielsen +#name : DocType XHTML 1.1 +#group : meta +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/doctype_xhtml1_strict b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/doctype_xhtml1_strict new file mode 100644 index 0000000..eca5860 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/doctype_xhtml1_strict @@ -0,0 +1,5 @@ +#contributor : Anders Bach Nielsen +#name : DocType XHTML 1.0 Strict +#group : meta +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/doctype_xhtml1_transitional b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/doctype_xhtml1_transitional new file mode 100644 index 0000000..fba232a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/doctype_xhtml1_transitional @@ -0,0 +1,5 @@ +#contributor : Anders Bach Nielsen +#name : DocType XHTML 1.0 Transitional +#group : meta +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/form b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/form new file mode 100644 index 0000000..252253e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/form @@ -0,0 +1,6 @@ +#contributor : Anders Bach Nielsen +#name :
+# -- +
+ $0 +
\ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/href b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/href new file mode 100644 index 0000000..47cb84a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/href @@ -0,0 +1,5 @@ +#contributor : Anders Bach Nielsen +#name : ... +#key: a +# -- +$2 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/html b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/html new file mode 100644 index 0000000..85e09f7 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/html @@ -0,0 +1,6 @@ +#contributor : Anders Bach Nielsen +#name : ... +# -- + + $0 + diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/img b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/img new file mode 100644 index 0000000..1f4382b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/img @@ -0,0 +1,4 @@ +#contributor : Anders Bach Nielsen +#name : ... +# -- +$2 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/input b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/input new file mode 100644 index 0000000..80c3503 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/input @@ -0,0 +1,4 @@ +#contributor : Anders Bach Nielsen +#name : +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/link b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/link new file mode 100644 index 0000000..d93b7a5 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/link @@ -0,0 +1,4 @@ +#contributor : Anders Bach Nielsen +#name : +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/meta b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/meta new file mode 100644 index 0000000..dfee1f2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/meta @@ -0,0 +1,5 @@ +#contributor : Anders Bach Nielsen +#name : +#group : meta +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/name b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/name new file mode 100644 index 0000000..592d0da --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/name @@ -0,0 +1,4 @@ +#contributor : Anders Bach Nielsen +#name : +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/quote b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/quote new file mode 100644 index 0000000..20fed1e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/quote @@ -0,0 +1,6 @@ +#contributor : Anders Bach Nielsen +#name :
...
+# -- +
+ $1 +
\ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/style b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/style new file mode 100644 index 0000000..b80be1c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/style @@ -0,0 +1,6 @@ +#contributor : Anders Bach Nielsen +#name : +# -- + \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/tag b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/tag new file mode 100644 index 0000000..7c6a766 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/tag @@ -0,0 +1,5 @@ +#contributor : Anders Bach Nielsen +#name : ... +#key: t +# -- +<${1:tag}>$2$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/tag_closing b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/tag_closing new file mode 100644 index 0000000..dcf5523 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/tag_closing @@ -0,0 +1,5 @@ +#contributor : Anders Bach Nielsen +#name : +#key: t +# -- +<$1 $2 />$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/tag_newline b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/tag_newline new file mode 100644 index 0000000..a1e1260 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/nxml-mode/tag_newline @@ -0,0 +1,7 @@ +#contributor : Anders Bach Nielsen +#name : \n...\n +#key: tn +# -- +<${1:tag}> + $2 +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/octave-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/octave-mode/for new file mode 100644 index 0000000..c8e1dde --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/octave-mode/for @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: for +# key: for +# -- +for ${1:var} = ${2:expr} + $0 +endfor \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/octave-mode/function b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/octave-mode/function new file mode 100644 index 0000000..ad2fe56 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/octave-mode/function @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: function +# key: fun +# -- +function ${1:return_val} = ${2:fname}(${3:args}) + $0 +endfunction \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/octave-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/octave-mode/if new file mode 100644 index 0000000..c785a24 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/octave-mode/if @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: if +# key: if +# -- +if ${1:cond} + $0 +${2:else + ${3:other}} +endif \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/dot b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/dot new file mode 100644 index 0000000..e9e76a1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/dot @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: dot +# key: dot_ +# -- +#+begin_src dot :file ${1:file} :cmdline -T${2:pdf} :exports none :results silent + $0 +#+end_src + +[[file:$1]] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/elisp b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/elisp new file mode 100644 index 0000000..c96251e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/elisp @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: elisp +# key: elisp_ +# -- +#+begin_src emacs-lisp :tangle yes +$0 +#+end_src \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/embedded b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/embedded new file mode 100644 index 0000000..5e74820 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/embedded @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: embedded +# key: emb_ +# -- +src_${1:lang}${2:[${3:where}]}{${4:code}} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/entry b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/entry new file mode 100644 index 0000000..51d680a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/entry @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# name: entry +# key: entry_ +# -- +#+begin_html +--- +layout: ${1:default} +title: ${2:title} +--- +#+end_html +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/figure b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/figure new file mode 100644 index 0000000..6c01df8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/figure @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: figure +# key: fig_ +# -- +#+CAPTION: ${1:caption} +#+ATTR_LaTeX: ${2:scale=0.75} +#+LABEL: fig:${3:label} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/img b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/img new file mode 100644 index 0000000..9da54ba --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/img @@ -0,0 +1,10 @@ +# -*- mode: snippet -*- +# name: img +# key: img_ +# -- +$2 +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/latex b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/latex new file mode 100644 index 0000000..66541c2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/latex @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: latex +# key: latex_ +# -- +#+BEGIN_LaTeX +$0 +#+END_LaTeX \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/matrix b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/matrix new file mode 100644 index 0000000..01f28c0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/matrix @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# name: matrix +# key: matrix_ +# possible improvement, compute the number of lines from the argument to array +# -- +\left \( +\begin{array}{${1:ccc}} +${2:v1 & v2} \\ +$0 +\end{array} +\right \) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/uml b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/uml new file mode 100644 index 0000000..304367e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/uml @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#name : uml +#key : uml +#contributor : Robert O'Connor +# -- +#+BEGIN_UML +$1 +#+END_UML diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/verse b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/verse new file mode 100644 index 0000000..02c691e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/org-mode/verse @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: verse +# key: verse_ +# -- +#+begin_verse + $0 +#+end_verse \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/.yas-parents b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/.yas-parents new file mode 100644 index 0000000..eed5b44 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/.yas-parents @@ -0,0 +1 @@ +text-mode diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/eval b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/eval new file mode 100644 index 0000000..a484014 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/eval @@ -0,0 +1,9 @@ +# name: eval { ... } if ($@) { ... } +# key: eval +# -- +eval { + ${1:# do something risky...} +}; +if (\$@) { + ${2:# handle failure...} +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/for new file mode 100644 index 0000000..1ba240f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/for @@ -0,0 +1,6 @@ +# name: for (...) { ... } +# key: for +# -- +for (my \$${1:var} = 0; \$$1 < ${2:expression}; \$$1++) { + ${3:# body...} +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/fore b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/fore new file mode 100644 index 0000000..c3b81d5 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/fore @@ -0,0 +1,6 @@ +# name: foreach ... { ... } +# key: fore +# -- +foreach my \$${1:x} (@${2:array}) { + ${3:# body...} +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/if new file mode 100644 index 0000000..567db90 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/if @@ -0,0 +1,6 @@ +# name: if (...) { ... } +# key: if +# -- +if ($1) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/ife b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/ife new file mode 100644 index 0000000..f278f21 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/ife @@ -0,0 +1,8 @@ +# name: if (...) { ... } else { ... } +# key: ife +# -- +if ($1) { + $2 +} else { + $3 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/ifee b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/ifee new file mode 100644 index 0000000..d1bf237 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/ifee @@ -0,0 +1,10 @@ +# name: if, elsif, else ... +# key: ifee +# -- +if ($1) { + ${2:# body...} +} elsif ($3) { + ${4:# elsif...} +} else { + ${5:# else...} +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/sub b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/sub new file mode 100644 index 0000000..05607d6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/sub @@ -0,0 +1,6 @@ +# name: sub ... { ... } +# key: sub +# -- +sub ${1:function_name} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/unless b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/unless new file mode 100644 index 0000000..f91a652 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/unless @@ -0,0 +1,6 @@ +# name: unless (...) { ... } +# key: unless +# -- +unless ($1) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/while b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/while new file mode 100644 index 0000000..2744530 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/while @@ -0,0 +1,6 @@ +# name: while (...) { ... } +# key: while +# -- +while ($1) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xfore b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xfore new file mode 100644 index 0000000..018e140 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xfore @@ -0,0 +1,4 @@ +# name: ... foreach ... +# key: xfore +# -- +${1:expression} foreach @${2:array}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xif b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xif new file mode 100644 index 0000000..ca8b563 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xif @@ -0,0 +1,4 @@ +# name: ... if ... +# key: xif +# -- +${1:expression} if ${2:condition} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xunless b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xunless new file mode 100644 index 0000000..dbb7d7d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xunless @@ -0,0 +1,4 @@ +# name: ... unless ... +# key: xunless +# -- +${1:expression} unless ${2:condition} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xwhile b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xwhile new file mode 100644 index 0000000..14c6308 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/perl-mode/xwhile @@ -0,0 +1,4 @@ +# name: ... while ... +# key: xwhile +# -- +${1:expression} while ${2:condition}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/.yas-setup.el b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/.yas-setup.el new file mode 100644 index 0000000..22a8168 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/.yas-setup.el @@ -0,0 +1,39 @@ +(require 'yasnippet) + +(defun yas-with-comment (str) + (format "%s%s%s" comment-start str comment-end)) + +;; whitespace removing functions from Magnar Sveen ;;;;;;;;;;;;;;;;;;;;;;;;;;;; +(defun yas-s-trim-left (s) + "Remove whitespace at the beginning of S." + (if (string-match "\\`[ \t\n\r]+" s) + (replace-match "" t t s) + s)) + +(defun yas-s-trim-right (s) + "Remove whitespace at the end of S." + (if (string-match "[ \t\n\r]+\\'" s) + (replace-match "" t t s) + s)) + +(defun yas-s-trim (s) + "Remove whitespace at the beginning and end of S." + (yas-s-trim-left (yas-s-trim-right s))) + + +(defun yas-string-reverse (str) + "Reverse a string STR manually to be compatible with emacs versions < 25." + (apply #'string + (reverse + (string-to-list str)))) + +(defun yas-trimmed-comment-start () + "This function returns `comment-start' trimmed by whitespaces." + (yas-s-trim comment-start)) + +(defun yas-trimmed-comment-end () + "This function returns `comment-end' trimmed by whitespaces if `comment-end' is not empty. +Otherwise the reversed output of function `yas-trimmed-comment-start' is returned." + (if (eq (length comment-end) 0) + (yas-string-reverse (yas-trimmed-comment-start)) + (yas-s-trim comment-end))) diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/.yas-setup.elc b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/.yas-setup.elc new file mode 100644 index 0000000..d24d9bf Binary files /dev/null and b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/.yas-setup.elc differ diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/comment b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/comment new file mode 100644 index 0000000..7ae2b8c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/comment @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# contributor: sh-ow +# name: comment +# key: co +# -- +`(yas-trimmed-comment-start)` ${1:comment}`(unless (eq (length comment-end) 0) (concat " " (yas-trimmed-comment-end)))`$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/commentblock b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/commentblock new file mode 100644 index 0000000..ba61f61 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/commentblock @@ -0,0 +1,36 @@ +# -*- mode: snippet -*- +# contributor: sh-ow +# name: commentblock +# key: cob +# -- +${1:$(let* ((col (current-column)) + (str "") + (lastcom (substring (yas-trimmed-comment-start) -1)) + (start (yas-trimmed-comment-start)) + (end (yas-trimmed-comment-end)) + (over (- (+ (string-width yas-text) (length start) (length end) col) 77))) + (while (< (length str) (+ (- 79 (length start) (length end) col) (if (> over 0) over 0))) + (setq str (concat str lastcom))) + (concat start str end))} +${1:$(let* ((col (current-column)) + (str "") + (start (yas-trimmed-comment-start)) + (end (yas-trimmed-comment-end))) + (while (< (length str) (ffloor (/ (- 78.0 (+ col (length start) (string-width yas-text) (length end))) 2.0))) + (setq str (concat str " "))) + (concat start str))} ${1:comment} ${1:$(let* ((col (current-column)) + (str "") + (start (yas-trimmed-comment-start)) + (end (yas-trimmed-comment-end))) + (while (< (length str) (- 79.0 (if (eq (mod (string-width yas-text) 2) 1) (- col 1) col) (length end))) + (setq str (concat str " "))) + (concat str end))} +${1:$(let* ((col (current-column)) + (str "") + (lastcom (substring (yas-trimmed-comment-start) -1)) + (start (yas-trimmed-comment-start)) + (end (yas-trimmed-comment-end)) + (over (- (+ (string-width yas-text) (length start) (length end) col) 77))) + (while (< (length str) (+ (- 79 (length start) (length end) col) (if (> over 0) over 0))) + (setq str (concat str lastcom))) + (concat start str end))}$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/commentline b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/commentline new file mode 100644 index 0000000..400a7bf --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/commentline @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# contributor: sh-ow +# name: commentline +# key: col +# -- +`(yas-trimmed-comment-start)` ${1:comment} ${1:$(let* ((start (yas-trimmed-comment-start)) + (lastcom (aref start (1- (length start)))) + (end (yas-trimmed-comment-end)) + (endpadlen (- 79 (+ (current-column) (length end))))) + (concat (make-string (max endpadlen 0) lastcom) + end))}$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/fixme b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/fixme new file mode 100644 index 0000000..146db8b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/fixme @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: fixme +# key: fi +# condition: (not (eq major-mode 'sh-mode)) +# -- +`(yas-with-comment "FIXME: ")` \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/todo b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/todo new file mode 100644 index 0000000..973151f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/todo @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: todo +# key: t +# -- +`(yas-with-comment "TODO: ")` \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/xxx b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/xxx new file mode 100644 index 0000000..09df18b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/prog-mode/xxx @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: xxx +# key: x +# -- +`(yas-with-comment "XXX: ")` \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/protobuf-mode/message b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/protobuf-mode/message new file mode 100644 index 0000000..af26d9a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/protobuf-mode/message @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: message +# key: msg +# -- +message ${1:Name} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/protobuf-mode/syntax b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/protobuf-mode/syntax new file mode 100644 index 0000000..5269e8f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/protobuf-mode/syntax @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: syntax +# key: syn +# -- +syntax = "${1:proto3}"; diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/.yas-parents b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/.yas-parents new file mode 100644 index 0000000..75d003f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/.yas-parents @@ -0,0 +1 @@ +prog-mode diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/.yas-setup.el b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/.yas-setup.el new file mode 100644 index 0000000..1af8703 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/.yas-setup.el @@ -0,0 +1,39 @@ +(require 'yasnippet) +(defvar yas-text) + +(defun python-split-args (arg-string) + "Split a python argument string into ((name, default)..) tuples" + (mapcar (lambda (x) + (split-string x "[[:blank:]]*=[[:blank:]]*" t)) + (split-string arg-string "[[:blank:]]*,[[:blank:]]*" t))) + +(defun python-args-to-docstring () + "return docstring format for the python arguments in yas-text" + (let* ((indent (concat "\n" (make-string (current-column) 32))) + (args (python-split-args yas-text)) + (max-len (if args (apply 'max (mapcar (lambda (x) (length (nth 0 x))) args)) 0)) + (formatted-args (mapconcat + (lambda (x) + (concat (nth 0 x) (make-string (- max-len (length (nth 0 x))) ? ) " -- " + (if (nth 1 x) (concat "\(default " (nth 1 x) "\)")))) + args + indent))) + (unless (string= formatted-args "") + (mapconcat 'identity (list "Keyword Arguments:" formatted-args) indent)))) + +(defun python-args-to-docstring-numpy () + "return docstring format for the python arguments in yas-text" + (let* ((args (python-split-args yas-text)) + (format-arg (lambda(arg) + (concat (nth 0 arg) " : " (if (nth 1 arg) ", optional") "\n"))) + (formatted-params (mapconcat format-arg args "\n")) + (formatted-ret (mapconcat format-arg (list (list "out")) "\n"))) + (unless (string= formatted-params "") + (mapconcat 'identity + (list "\nParameters\n----------" formatted-params + "\nReturns\n-------" formatted-ret) + "\n")))) + + +(add-hook 'python-mode-hook + '(lambda () (set (make-local-variable 'yas-indent-line) 'fixed))) diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/.yas-setup.elc b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/.yas-setup.elc new file mode 100644 index 0000000..58fca13 Binary files /dev/null and b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/.yas-setup.elc differ diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__contains__ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__contains__ new file mode 100644 index 0000000..4d4ad50 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__contains__ @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: __contains__ +# key: cont +# group: dunder methods +# -- +def __contains__(self, el): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__enter__ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__enter__ new file mode 100644 index 0000000..3dcc3ba --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__enter__ @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: __enter__ +# key: ent +# group: dunder methods +# -- +def __enter__(self): + $0 + + return self \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__exit__ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__exit__ new file mode 100644 index 0000000..cd9de7d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__exit__ @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: __exit__ +# key: ex +# group: dunder methods +# -- +def __exit__(self, type, value, traceback): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__getitem__ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__getitem__ new file mode 100644 index 0000000..939bd1a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__getitem__ @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: __getitem__ +# key: getit +# group: dunder methods +# -- +def __getitem__(self, ${1:key}): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__len__ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__len__ new file mode 100644 index 0000000..9e6c164 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__len__ @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: __len__ +# key: len +# group: dunder methods +# -- +def __len__(self): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__new__ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__new__ new file mode 100644 index 0000000..8ccb151 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__new__ @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: __new__ +# key: new +# group: dunder methods +# -- +def __new__(mcs, name, bases, dct): + $0 + return type.__new__(mcs, name, bases, dct) diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__setitem__ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__setitem__ new file mode 100644 index 0000000..c7db5b1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/__setitem__ @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: __setitem__ +# key: setit +# group: dunder methods +# -- +def __setitem__(self, ${1:key}, ${2:val}): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/all b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/all new file mode 100644 index 0000000..b92c4dc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/all @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: all +# key: all +# -- +__all__ = [ + $0 +] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/arg b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/arg new file mode 100644 index 0000000..f5145ec --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/arg @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: arg +# key: arg +# group: argparser +# -- +parser.add_argument('-$1', '--$2', + $0) diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/arg_positional b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/arg_positional new file mode 100644 index 0000000..b54fc46 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/arg_positional @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: arg_positional +# key: arg +# group: argparser +# -- +parser.add_argument('${1:varname}', $0) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assert b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assert new file mode 100644 index 0000000..ec82efe --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assert @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: assert +# key: ass +# group: testing +# -- +assert $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertEqual b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertEqual new file mode 100644 index 0000000..29282b9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertEqual @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: assertEqual +# key: ae +# group: testing +# -- +self.assertEqual($1, $2) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertFalse b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertFalse new file mode 100644 index 0000000..41a9dcf --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertFalse @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: assertFalse +# key: af +# group: testing +# -- +self.assertFalse($0) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertIn b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertIn new file mode 100644 index 0000000..74e1ee7 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertIn @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: assertIn +# key: ai +# group: testing +# -- +self.assertIn(${1:member}, ${2:container}) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertNotEqual b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertNotEqual new file mode 100644 index 0000000..6837407 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertNotEqual @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: assertNotEqual +# key: ane +# group: testing +# -- +self.assertNotEqual($1, $2) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertNotIn b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertNotIn new file mode 100644 index 0000000..4780a7e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertNotIn @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: assetNotIn +# key: an +# group: testing +# -- +self.assertNotIn(${1:member}, ${2:container}) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertRaises b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertRaises new file mode 100644 index 0000000..db125da --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertRaises @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: assertRaises +# key: ar +# group: testing +# -- +self.assertRaises(${1:Exception}, ${2:fun}) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertRaises.with b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertRaises.with new file mode 100644 index 0000000..c97807e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertRaises.with @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: assertRaises +# key: ar +# -- +with self.assertRaises(${1:Exception}): + $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertTrue b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertTrue new file mode 100644 index 0000000..1cc59ac --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/assertTrue @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: assertTrue +# key: at +# group: testing +# -- +self.assertTrue($0) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/celery_pdb b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/celery_pdb new file mode 100644 index 0000000..6095b2d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/celery_pdb @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: celery pdb +# key: cdb +# group: debug +# -- +from celery.contrib import rdb; rdb.set_trace() \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/classmethod b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/classmethod new file mode 100644 index 0000000..8e0e106 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/classmethod @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: classmethod +# key: cm +# group: object oriented +# -- +@classmethod +def ${1:meth}(cls, $2): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/cls b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/cls new file mode 100644 index 0000000..f857cdb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/cls @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: class +# key: cls +# group: object oriented +# -- +class ${1:class}: + $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/dec b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/dec new file mode 100644 index 0000000..b22c9e9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/dec @@ -0,0 +1,14 @@ +# -*- mode: snippet -*- +# name: dec +# key: dec +# group : definitions +# -- +def ${1:decorator}(func): + $2 + def _$1(*args, **kwargs): + $3 + ret = func(*args, **kwargs) + $4 + return ret + + return _$1 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/deftest b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/deftest new file mode 100644 index 0000000..394553a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/deftest @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: deftest +# key: dt +# group: testing +# -- +def test_${1:long_name}(self): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/django_test_class b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/django_test_class new file mode 100644 index 0000000..386e305 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/django_test_class @@ -0,0 +1,7 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: django_test_class +# key: tcs +# group: testing +# -- +class ${1:Model}Test(TestCase): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/doc b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/doc new file mode 100644 index 0000000..2929e78 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/doc @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: doc +# key: d +# -- +"""$0 +""" \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/doctest b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/doctest new file mode 100644 index 0000000..a5e4bb5 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/doctest @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: doctest +# key: doc +# group: testing +# -- +>>> ${1:function calls} +${2:desired output} +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/embed b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/embed new file mode 100644 index 0000000..8d21a7c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/embed @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: embed +# key: embed +# -- +from IPython import embed; embed() diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/eq b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/eq new file mode 100644 index 0000000..e19c328 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/eq @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: __eq__ +# key: eq +# group: dunder methods +# -- +def __eq__(self, other): + return self.$1 == other.$1 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/for new file mode 100644 index 0000000..0033c87 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/for @@ -0,0 +1,6 @@ +# name: for ... in ... : ... +# key: for +# group : control structure +# -- +for ${var} in ${collection}: + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/from b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/from new file mode 100644 index 0000000..3a4acfc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/from @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: from +# key: from +# group : general +# -- +from ${1:lib} import ${2:funs} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/function b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/function new file mode 100644 index 0000000..d7e8f12 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/function @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: function +# key: f +# group: definitions +# -- +def ${1:fun}(${2:args}): + $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/function_docstring b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/function_docstring new file mode 100644 index 0000000..f372d26 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/function_docstring @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# name: function_docstring +# key: fd +# group: definitions +# NOTE: Use minimum indentation, because Emacs 25+ doesn't dedent docstrings. +# -- +def ${1:name}($2): + \"\"\"$3 + ${2:$(python-args-to-docstring)} + \"\"\" + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/function_docstring_numpy b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/function_docstring_numpy new file mode 100644 index 0000000..00ea351 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/function_docstring_numpy @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# contributor: Egor Panfilov +# name: function_docstring_numpy +# key: fdn +# group: definitions +# -- +def ${1:name}($2): + \"\"\"$3 + ${2:$(python-args-to-docstring-numpy)} + \"\"\" + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/if new file mode 100644 index 0000000..d1538a9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/if @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: if +# key: if +# group : control structure +# -- +if ${1:cond}: + $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/ife b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/ife new file mode 100644 index 0000000..4b8f613 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/ife @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: ife +# key: ife +# group : control structure +# -- +if $1: + $2 +else: + $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/ifmain b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/ifmain new file mode 100644 index 0000000..9575798 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/ifmain @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: ifmain +# key: ifm +# -- +if __name__ == '__main__': + ${1:main()} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/import b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/import new file mode 100644 index 0000000..f34bc39 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/import @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: import +# key: imp +# group : general +# -- +import ${1:lib}${2: as ${3:alias}} +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/init b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/init new file mode 100644 index 0000000..aece55c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/init @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: init +# key: init +# group : definitions +# -- +def __init__(self${1:, args}): + ${2:"${3:docstring}" + }$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/init_docstring b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/init_docstring new file mode 100644 index 0000000..51af8db --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/init_docstring @@ -0,0 +1,10 @@ +# -*- mode: snippet -*- +# name: init_docstring +# key: id +# group : definitions +# -- +def __init__(self$1): + \"\"\"$2 + ${1:$(python-args-to-docstring)} + \"\"\" + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/interact b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/interact new file mode 100644 index 0000000..4b412c8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/interact @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: interact +# key: int +# -- +import code; code.interact(local=locals()) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/ipdbdebug b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/ipdbdebug new file mode 100644 index 0000000..f45ad75 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/ipdbdebug @@ -0,0 +1,6 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: ipdb trace +# key: itr +# group: debug +# -- +import ipdb; ipdb.set_trace() \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/iter b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/iter new file mode 100644 index 0000000..a4fed13 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/iter @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: __iter__ +# key: iter +# group: dunder methods +# -- +def __iter__(self): + return ${1:iter($2)} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/lambda b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/lambda new file mode 100644 index 0000000..08b268b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/lambda @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: lambda +# key: lam +# -- +lambda ${1:x}: $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/list b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/list new file mode 100644 index 0000000..63cef24 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/list @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: list +# key: li +# group : definitions +# -- +[${1:el} for $1 in ${2:list}] +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/logger_name b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/logger_name new file mode 100644 index 0000000..9759dd9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/logger_name @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: logger_name +# key: ln +# -- +logger = logging.getLogger(${1:__name__}) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/logging b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/logging new file mode 100644 index 0000000..568eeea --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/logging @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: logging +# key: log +# -- +logger = logging.getLogger("${1:name}") +logger.setLevel(logging.${2:level}) diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/main b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/main new file mode 100644 index 0000000..9f3c721 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/main @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: main +# key: main +# -- +def main(): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/metaclass b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/metaclass new file mode 100644 index 0000000..1e688e4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/metaclass @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: metaclass +# key: mt +# group: object oriented +# -- +__metaclass__ = type \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/method b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/method new file mode 100644 index 0000000..985ef0c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/method @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: method +# key: m +# group: object oriented +# -- +def ${1:method}(self${2:, $3}): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/method_docstring b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/method_docstring new file mode 100644 index 0000000..8f5e78d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/method_docstring @@ -0,0 +1,10 @@ +# -*- mode: snippet -*- +# name: method_docstring +# key: md +# group: object oriented +# -- +def ${1:name}(self$2): + \"\"\"$3 + ${2:$(python-args-to-docstring)} + \"\"\" + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/not_impl b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/not_impl new file mode 100644 index 0000000..515e353 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/not_impl @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: not_impl +# key: not_impl +# -- +raise NotImplementedError \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/np b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/np new file mode 100644 index 0000000..9f6327c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/np @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: np +# key: np +# group : general +# -- +import numpy as np +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/parse_args b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/parse_args new file mode 100644 index 0000000..aa61070 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/parse_args @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: parse_args +# key: pargs +# group: argparser +# -- +def parse_arguments(): + parser = argparse.ArgumentParser(description='$1') + $0 + return parser.parse_args() \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/parser b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/parser new file mode 100644 index 0000000..29a04ea --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/parser @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: parser +# key: pars +# group: argparser +# -- +parser = argparse.ArgumentParser(description='$1') +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/pass b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/pass new file mode 100644 index 0000000..4734f7f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/pass @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: pass +# key: ps +# -- +pass \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/pl b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/pl new file mode 100644 index 0000000..f0fdd05 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/pl @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: Import pyplot +# key: plt +# group : general +# -- +import matplotlib.pyplot as plt +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/print b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/print new file mode 100644 index 0000000..cc1c797 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/print @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: print +# key: p +# -- +print($0) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/prop b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/prop new file mode 100644 index 0000000..34e4fa1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/prop @@ -0,0 +1,17 @@ +# contributor: Mads D. Kristensen +# name: prop +# -- +def ${1:foo}(): + doc = """${2:Doc string}""" + def fget(self): + return self._$1 + + def fset(self, value): + self._$1 = value + + def fdel(self): + del self._$1 + return locals() +$1 = property(**$1()) + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/reg b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/reg new file mode 100644 index 0000000..c4ebeac --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/reg @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: reg +# key: reg +# group : general +# -- +${1:regexp} = re.compile(r"${2:expr}") +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/repr b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/repr new file mode 100644 index 0000000..a1f6783 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/repr @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: __repr__ +# key: repr +# group: dunder methods +# -- +def __repr__(self): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/return b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/return new file mode 100644 index 0000000..641a308 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/return @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: return +# key: r +# -- +return $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/scls b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/scls new file mode 100644 index 0000000..4a10e28 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/scls @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: subclass +# key: scls +# group: object oriented +# -- +class ${1:class}(${2:super-class}): + $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/script b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/script new file mode 100644 index 0000000..55e42e9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/script @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +# name: script +# key: script +# -- +#!/usr/bin/env python + +def main(): + pass + +if __name__ == '__main__': + main() diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/self b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/self new file mode 100644 index 0000000..4461022 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/self @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: self +# key: . +# group: object oriented +# -- +self.$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/self_without_dot b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/self_without_dot new file mode 100644 index 0000000..a1a0526 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/self_without_dot @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: self_without_dot +# key: s +# group: object oriented +# -- +self \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/selfassign b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/selfassign new file mode 100644 index 0000000..95d7b2b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/selfassign @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: selfassign +# key: sn +# group: object oriented +# -- +self.$1 = $1 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/setdef b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/setdef new file mode 100644 index 0000000..2398eb1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/setdef @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: setdef +# key: setdef +# -- +${1:var}.setdefault(${2:key}, []).append(${3:value}) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/setup b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/setup new file mode 100644 index 0000000..107abc1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/setup @@ -0,0 +1,14 @@ +# -*- mode: snippet -*- +# name: setup +# key: setup +# group: distribute +# -- +from setuptools import setup + +package = '${1:name}' +version = '${2:0.1}' + +setup(name=package, + version=version, + description="${3:description}", + url='${4:url}'$0) diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/size b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/size new file mode 100644 index 0000000..47a0f38 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/size @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: size +# key: size +# -- +sys.getsizeof($0) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/static b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/static new file mode 100644 index 0000000..19c3df9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/static @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: static +# key: sm +# -- +@staticmethod +def ${1:func}($0): diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/str b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/str new file mode 100644 index 0000000..b0572e3 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/str @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: __str__ +# key: str +# group: dunder methods +# -- +def __str__(self): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/super b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/super new file mode 100644 index 0000000..23fba5d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/super @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: super +# key: super +# group: object oriented +# -- +super(`(replace-regexp-in-string "\\([.]\\)[^.]+$" ", self)." (python-info-current-defun) nil nil 1)`($1) +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/test_class b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/test_class new file mode 100644 index 0000000..7342c5f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/test_class @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: test_class +# key: tcs +# group : testing +# -- +class Test${1:toTest}(${2:unittest.TestCase}): + $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/test_file b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/test_file new file mode 100644 index 0000000..e4b5315 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/test_file @@ -0,0 +1,12 @@ +# -*- mode: snippet -*- +# name: test_file +# key: tf +# group : testing +# -- +import unittest +${1:from ${2:test_file} import *} + +$0 + +if __name__ == '__main__': + unittest.main() \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/trace b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/trace new file mode 100644 index 0000000..e475d62 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/trace @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: trace +# key: tr +# group: debug +# -- +import pdb; pdb.set_trace() \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/try b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/try new file mode 100644 index 0000000..8836de6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/try @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: try +# key: try +# -- +try: + $1 +except ${2:Exception}: + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/tryelse b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/tryelse new file mode 100644 index 0000000..f2e44e4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/tryelse @@ -0,0 +1,10 @@ +# -*- mode: snippet -*- +# name: tryelse +# key: try +# -- +try: + $1 +except $2: + $3 +else: + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/unicode b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/unicode new file mode 100644 index 0000000..52d6b8d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/unicode @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: __unicode__ +# key: un +# group: dunder methods +# -- +def __unicode__(self): + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/unicode_literals b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/unicode_literals new file mode 100644 index 0000000..08e2eb5 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/unicode_literals @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: unicode_literals +# key: fu +# group: future +# -- +from __future__ import unicode_literals diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/utf8 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/utf8 new file mode 100644 index 0000000..2ebd82e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/utf8 @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: utf-8 encoding +# key: utf8 +# -- +# -*- coding: utf-8 -*- diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/while b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/while new file mode 100644 index 0000000..7b3539c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/while @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: while +# key: wh +# group: control structure +# -- +while ${1:True}: + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/with b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/with new file mode 100644 index 0000000..7fcbd38 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/with @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: with +# key: with +# group : control structure +# -- +with ${1:expr}${2: as ${3:alias}}: + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/with_statement b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/with_statement new file mode 100644 index 0000000..1be3692 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/python-mode/with_statement @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: with_statement +# key: fw +# group: future +# -- +from __future__ import with_statement \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rename_add_contr.py b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rename_add_contr.py new file mode 100755 index 0000000..3ed7847 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rename_add_contr.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python +import os +import re +from os.path import join +from shutil import move + + +def rename(root, f): + if f.endswith('.yasnippet'): + base, _ = f.split('.') + print("move %s to %s" % (join(root, f), join(root, base))) + move(join(root, f), join(root, base)) + + +CONT = "# contributor: Andrea crotti\n# --" +END = "# --\n\n" + +orig = "# --\n\n" +to = "# --\n" + +def insert(root, f, orig, to): + fname = join(root, f) + text = open(fname).read() + nex_text = re.sub(orig, to, text) + open(fname, 'w').write(nex_text) + +if __name__ == '__main__': + for root, dirs, files in os.walk('.'): + if "mode" in root: + # os.popen("git add *yasnippet") + for f in files: + rename(root, f) + # insert(root, f, orig, to) + + + diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/autoclass b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/autoclass new file mode 100644 index 0000000..b207dd3 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/autoclass @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: autoclass +# key: auto +# -- +.. autoclass:: $0 + ${1::members: ${2:members}} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/autofunction b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/autofunction new file mode 100644 index 0000000..7ed5c5e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/autofunction @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: autofunction +# key: auto +# -- +.. autofunction:: $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/automodule b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/automodule new file mode 100644 index 0000000..2929f77 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/automodule @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: automodule +# key: auto +# -- +.. automodule:: ${1:module_name} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/chapter b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/chapter new file mode 100644 index 0000000..c5e3483 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/chapter @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name : Chapter title +# key: chap +# -- +${1:Chapter} +${1:$(make-string (string-width yas-text) ?\=)} + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/class b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/class new file mode 100644 index 0000000..66ad562 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/class @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: class +# key: cls +# -- +:class:\`$0\` \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/code b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/code new file mode 100644 index 0000000..49ff111 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/code @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: code +# key: code +# -- +.. code:: ${1:python} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/digraph b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/digraph new file mode 100644 index 0000000..448de13 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/digraph @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: digraph +# key: graph +# -- +.. digraph:: $1 + + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/function b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/function new file mode 100644 index 0000000..8677632 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/function @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: function +# key: fun +# -- +:function:\`$0\` \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/graph b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/graph new file mode 100644 index 0000000..f7d7b69 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/graph @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: graph +# key: graph +# -- +.. graph:: $1 + + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/graphviz b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/graphviz new file mode 100644 index 0000000..53ca449 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/graphviz @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: graphviz +# key: graph +# -- +.. graphviz:: + + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/image b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/image new file mode 100644 index 0000000..402c9a5 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/image @@ -0,0 +1,10 @@ +# -*- mode: snippet -*- +# name: image +# key: img +# -- +.. image:: ${1:path} + :height: ${2:100} + :width: ${3:200} + :alt: ${4:description} + +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/inheritance b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/inheritance new file mode 100644 index 0000000..e646c9a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/inheritance @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: inheritance +# key: inh +# -- +.. inheritance-diagram:: $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/literal_include b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/literal_include new file mode 100644 index 0000000..9e2a7de --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/literal_include @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: literatal include +# key: inc +# -- +.. literalinclude:: ${1:path} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/meta b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/meta new file mode 100644 index 0000000..6aaae41 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/meta @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: meta +# key: : +# -- +:${1:var}: $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/module b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/module new file mode 100644 index 0000000..e60e18e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/module @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: module +# key: mod +# -- +:mod: \`$0\` \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/parsed_literal b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/parsed_literal new file mode 100644 index 0000000..ee8c07c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/parsed_literal @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: parsed_literal +# key: src +# -- +.. parsed-literal:: + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/pause b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/pause new file mode 100644 index 0000000..0833e87 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/pause @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: pause +# key: pause +# group: hieroglyph +# -- +.. rst-class:: build \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/section b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/section new file mode 100644 index 0000000..1739ad8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/section @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name : Section title +# key: sec +# -- +${1:Section} +${1:$(make-string (string-width yas-text) ?\-)} + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/term b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/term new file mode 100644 index 0000000..86624e2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/term @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: term +# key: term +# -- +:term:\`$0\` \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/title b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/title new file mode 100644 index 0000000..88c32f8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/title @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name : Document title +# key: tit +# -- +${1:$(make-string (string-width yas-text) ?\=)} +${1:Title} +${1:$(make-string (string-width yas-text) ?\=)} + +$0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/url b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/url new file mode 100644 index 0000000..ead9d35 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/url @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: url +# key: url +# -- +.. _${1:description}: $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/verbatim b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/verbatim new file mode 100644 index 0000000..1d0362c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/verbatim @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: verbatim +# key: | +# -- +| $0 +| \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/warning b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/warning new file mode 100644 index 0000000..8f74b36 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rst-mode/warning @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: warning +# key: warn +# -- +.. warning: + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/# b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/# new file mode 100644 index 0000000..33581c8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/# @@ -0,0 +1,4 @@ +#name : # => +#group : general +# -- +# => \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/=b b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/=b new file mode 100644 index 0000000..22a013f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/=b @@ -0,0 +1,6 @@ +#name : =begin rdoc ... =end +#group : general +# -- +=begin rdoc + $0 +=end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/Comp b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/Comp new file mode 100644 index 0000000..03f2b35 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/Comp @@ -0,0 +1,8 @@ +#name : include Comparable; def <=> ... end +#group : definitions +# -- +include Comparable + +def <=> other + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/Enum b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/Enum new file mode 100644 index 0000000..9804bd6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/Enum @@ -0,0 +1,10 @@ +# -*- mode: snippet -*- +# name: include Enumerable +# key: Enum +# group: collections +# -- +include Enumerable + +def each${1:(&block)} + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/GLOB b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/GLOB new file mode 100644 index 0000000..6667254 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/GLOB @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: GLOB +# key: $ +# -- +$${1:GLOBAL} = $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/all b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/all new file mode 100644 index 0000000..a98a9f4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/all @@ -0,0 +1,4 @@ +#name : all? { |...| ... } +#group : collections +# -- +all? { |${e}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/am b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/am new file mode 100644 index 0000000..7675a97 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/am @@ -0,0 +1,4 @@ +#name : alias_method new, old +#group : definitions +# -- +alias_method :${new_name}, :${old_name} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/any b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/any new file mode 100644 index 0000000..d0b6dd2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/any @@ -0,0 +1,4 @@ +#name : any? { |...| ... } +#group : collections +# -- +any? { |${e}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/app b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/app new file mode 100644 index 0000000..19bf60a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/app @@ -0,0 +1,6 @@ +#name : if __FILE__ == $PROGRAM_NAME ... end +#group : general +# -- +if __FILE__ == $PROGRAM_NAME + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/attribute b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/attribute new file mode 100644 index 0000000..4e8e37a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/attribute @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: attribute +# key: @ +# -- +@${1:attr} = $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/bench b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/bench new file mode 100644 index 0000000..e440919 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/bench @@ -0,0 +1,10 @@ +# -*- mode: snippet -*- +# name: bench +# key: bench +# -- +require "benchmark" + +TESTS = ${1:1_000} +Benchmark.bmbm do |x| + x.report("${2:var}") {} +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/bm b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/bm new file mode 100644 index 0000000..4789f64 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/bm @@ -0,0 +1,6 @@ +#name : Benchmark.bmbm(...) do ... end +#group : general +# -- +Benchmark.bmbm(${1:10}) do |x| + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/case b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/case new file mode 100644 index 0000000..40c3529 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/case @@ -0,0 +1,7 @@ +#name : case ... end +#group : general +# -- +case ${1:object} +when ${2:condition} + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/cla b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/cla new file mode 100644 index 0000000..81ccf45 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/cla @@ -0,0 +1,6 @@ +#name : class << self ... end +#group : definitions +# -- +class << ${self} + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/cls b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/cls new file mode 100644 index 0000000..ab81ca8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/cls @@ -0,0 +1,11 @@ +#name : class ... end +#contributor : hitesh +#group : definitions +# -- +class ${1:`(let ((fn (capitalize (file-name-nondirectory + (file-name-sans-extension + (or (buffer-file-name) + (buffer-name (current-buffer)))))))) + (replace-regexp-in-string "_" "" fn t t))`} + $0 +end diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/collect b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/collect new file mode 100644 index 0000000..934014a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/collect @@ -0,0 +1,4 @@ +#name : collect { |...| ... } +#group : collections +# -- +collect { |${e}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/dee b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/dee new file mode 100644 index 0000000..56d0a18 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/dee @@ -0,0 +1,4 @@ +#name : deep_copy(...) +#group : general +# -- +Marshal.load(Marshal.dump($0)) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/def b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/def new file mode 100644 index 0000000..875f0ff --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/def @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: def ... end +# key: def +# -- +def ${1:method}${2:(${3:args})} + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/deli b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/deli new file mode 100644 index 0000000..8476ef9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/deli @@ -0,0 +1,4 @@ +#name : delete_if { |...| ... } +#group : collections +# -- +delete_if { |${e}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/det b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/det new file mode 100644 index 0000000..6a17da9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/det @@ -0,0 +1,4 @@ +#name : detect { |...| ... } +#group : collections +# -- +detect { |${e}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/dow b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/dow new file mode 100644 index 0000000..3b65271 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/dow @@ -0,0 +1,6 @@ +#name : downto(...) { |n| ... } +#group : control structure +# -- +downto(${0}) { |${n}| + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/ea b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/ea new file mode 100644 index 0000000..9cdf8dc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/ea @@ -0,0 +1,4 @@ +#name : each { |...| ... } +#group : collections +# -- +each { |${e}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eac b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eac new file mode 100644 index 0000000..f0d9cb1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eac @@ -0,0 +1,4 @@ +#name : each_cons(...) { |...| ... } +#group : collections +# -- +each_cons(${1:2}) { |${group}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eai b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eai new file mode 100644 index 0000000..5b0ed67 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eai @@ -0,0 +1,4 @@ +#name : each_index { |i| ... } +#group : collections +# -- +each_index { |${i}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eav b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eav new file mode 100644 index 0000000..558e5b4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eav @@ -0,0 +1,4 @@ +#name : each_value { |val| ... } +#group : collections +# -- +each_value { |${val}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eawi b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eawi new file mode 100644 index 0000000..edf8418 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/eawi @@ -0,0 +1,4 @@ +#name : each_with_index { |e, i| ... } +#group : collections +# -- +each_with_index { |${e}, ${i}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/for new file mode 100644 index 0000000..03dd82c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/for @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: for +# key: for +# -- +for ${1:el} in ${2:collection} + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/forin b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/forin new file mode 100644 index 0000000..36b4387 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/forin @@ -0,0 +1,6 @@ +#name : for ... in ...; ... end +#group : control structure +# -- +for ${1:element} in ${2:collection} + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/formula b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/formula new file mode 100644 index 0000000..735b0d1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/formula @@ -0,0 +1,16 @@ +# -*- mode: snippet -*- +# name: formula +# key: form +# -- +require 'formula' + +class ${1:Name} , jimeh +# key: mod +# -- +module ${1:`(let ((fn (capitalize (file-name-nondirectory + (file-name-sans-extension + (or (buffer-file-name) + (buffer-name (current-buffer)))))))) + (while (string-match "_" fn) + (setq fn (replace-match "" nil nil fn))) + fn)`} + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/pry b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/pry new file mode 100644 index 0000000..cea3988 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/pry @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: binding.pry +# key: pry +# -- +require 'pry'; binding.pry diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/r b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/r new file mode 100644 index 0000000..2e7b797 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/r @@ -0,0 +1,4 @@ +#name : attr_reader ... +#group : definitions +# -- +attr_reader : \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rb b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rb new file mode 100644 index 0000000..94b75c0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rb @@ -0,0 +1,4 @@ +#name : /usr/bin/ruby -wU +#group : general +# -- +#!/usr/bin/ruby -wU diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/red b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/red new file mode 100644 index 0000000..6318e0b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/red @@ -0,0 +1,4 @@ +#name : reduce(...) { |...| ... } +#group : collections +# -- +reduce(${1:0}) { |${2:accumulator}, ${3:element}| $0 } diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/reject b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/reject new file mode 100644 index 0000000..c2501bc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/reject @@ -0,0 +1,4 @@ +#name : reject { |...| ... } +#group : collections +# -- +reject { |${1:element}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rel b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rel new file mode 100644 index 0000000..4063a60 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rel @@ -0,0 +1,4 @@ +#name : require_relative +#group : general +# -- +require_relative '$0' \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/req b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/req new file mode 100644 index 0000000..a1440cb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/req @@ -0,0 +1,4 @@ +#name : require "..." +#group : general +# -- +require '$0' \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rpry b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rpry new file mode 100644 index 0000000..d93221f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rpry @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: binding.pry_remote +# key: rpry +# -- +require 'pry-remote'; binding.remote_pry \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rw b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rw new file mode 100644 index 0000000..a364675 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/rw @@ -0,0 +1,4 @@ +#name : attr_accessor ... +#group : definitions +# -- +attr_accessor : \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/select b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/select new file mode 100644 index 0000000..78bca8f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/select @@ -0,0 +1,4 @@ +#name : select { |...| ... } +#group : collections +# -- +select { |${1:element}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/str b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/str new file mode 100644 index 0000000..733cef5 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/str @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: str +# key: s +# -- +#{$0} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/test class b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/test class new file mode 100644 index 0000000..1f7fb91 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/test class @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: test class +# key: tc +# -- +class TC_${1:Class} < Test::Unit::TestCase + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/tim b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/tim new file mode 100644 index 0000000..0da115f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/tim @@ -0,0 +1,4 @@ +#name : times { |n| ... } +#group : control structure +# -- +times { |${n}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/to_ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/to_ new file mode 100644 index 0000000..a2f9cde --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/to_ @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: to_ +# key: to_ +# -- +def to_s + "${1:string}" +end +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/tu b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/tu new file mode 100644 index 0000000..b9244b6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/tu @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: tu +# key: tu +# -- +require 'test/unit' \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/until b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/until new file mode 100644 index 0000000..476966a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/until @@ -0,0 +1,6 @@ +#name : until ... end +#group: control structure +# -- +until ${condition} + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/upt b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/upt new file mode 100644 index 0000000..6fc6810 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/upt @@ -0,0 +1,6 @@ +#name : upto(...) { |n| ... } +#group : control structure +# -- +upto(${n}) { |${i}| + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/w b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/w new file mode 100644 index 0000000..9edbfcb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/w @@ -0,0 +1,4 @@ +#name : attr_writer ... +#group : definitions +# -- +attr_writer : \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/when b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/when new file mode 100644 index 0000000..9b06f21 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/when @@ -0,0 +1,6 @@ +#name : when ... end +#group : control structure +# -- +when ${condition} + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/while b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/while new file mode 100644 index 0000000..4c9ad35 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/while @@ -0,0 +1,6 @@ +#name : while ... end +#group : control structure +# -- +while ${condition} + $0 +end \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/y b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/y new file mode 100644 index 0000000..0ddf0f9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/y @@ -0,0 +1,4 @@ +#name : :yields: arguments (rdoc) +#group : general +# -- +:yields: $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/zip b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/zip new file mode 100644 index 0000000..56f4266 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/ruby-mode/zip @@ -0,0 +1,4 @@ +#name : zip(...) { |...| ... } +#group : collections +# -- +zip(${enums}) { |${row}| $0 } \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/allow b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/allow new file mode 100644 index 0000000..c30c1e8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/allow @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: #[allow(lint)] +# key: allow +# -- +#[allow(${1:lint})] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/allow! b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/allow! new file mode 100644 index 0000000..cfb0c7d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/allow! @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: #![allow(lint)] +# key: allow! +# -- +#![allow(${1:lint})] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/assert b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/assert new file mode 100644 index 0000000..d1252d0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/assert @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: assert!(predicate); +# key: ass +# -- +assert!(${1:predicate}); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/asserteq b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/asserteq new file mode 100644 index 0000000..7bfafd2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/asserteq @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: assert_eq!(expected, actual); +# key: asseq +# -- +assert_eq!(${1:expected}, ${2:actual}); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/case b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/case new file mode 100644 index 0000000..9ea6609 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/case @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: pattern => expression, +# key: case +# -- +${1:pattern} => ${2:expression}, \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/cfg b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/cfg new file mode 100644 index 0000000..583e021 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/cfg @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: #[cfg(option)] +# key: cfg +# -- +#[cfg(${1:option})] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/cfg= b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/cfg= new file mode 100644 index 0000000..b01a458 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/cfg= @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: #[cfg(option = "value")] +# key: cfg= +# -- +#[cfg(${1:option} = "${2:value}")] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/closure b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/closure new file mode 100644 index 0000000..8257983 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/closure @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: closure +# key: || +# -- +|${1:arguments}| { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/deny b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/deny new file mode 100644 index 0000000..5b7f3d9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/deny @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: #[deny(lint)] +# key: deny +# -- +#[deny(${1:lint})] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/deny! b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/deny! new file mode 100644 index 0000000..232dfbc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/deny! @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: #![deny(lint)] +# key: deny! +# -- +#![deny(${1:lint})] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/derive b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/derive new file mode 100644 index 0000000..581c86f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/derive @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: #[derive(Trait)] +# key: derive +# -- +#[derive(${1:Trait})] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/drop b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/drop new file mode 100644 index 0000000..310d0ad --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/drop @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: impl Drop for Type { fn drop(...) } +# key: drop +# -- +impl Drop for ${1:Type} { + fn drop(&mut self) { + $0 + } +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/enum b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/enum new file mode 100644 index 0000000..058aadc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/enum @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: enum Type { ... } +# key: enum +# -- +enum ${1:Type} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fn b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fn new file mode 100644 index 0000000..459fd49 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fn @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: fn name() { ... } +# key: fn +# -- +fn ${1:name}($2) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fnr b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fnr new file mode 100644 index 0000000..4a4db71 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fnr @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: fn name() -> Type { ... } +# key: fnr +# -- +fn ${1:name}($2) -> ${3:Type} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fns b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fns new file mode 100644 index 0000000..6d2c828 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fns @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: fn name(&self) -> Type; +# key: fns +# -- +fn ${1:name}(${2:&self}) -> ${3:Type}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fnw b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fnw new file mode 100644 index 0000000..77bee6e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/fnw @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: fn name(x: T) where T: Clone { ... } +# key: fnw +# -- +fn ${1:name}<${2:T}>(${3:x: T}) where ${4:T: Clone} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/for new file mode 100644 index 0000000..66dca09 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/for @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: for var in iterable { ... } +# key: for +# -- +for ${1:var} in ${2:iterable} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/if new file mode 100644 index 0000000..c793ace --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/if @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: if expr { ... } +# key: if +# -- +if ${1:expression} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/ife b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/ife new file mode 100644 index 0000000..c738d4b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/ife @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: if expression { ... } else { .. } +# key: ife +# -- +if ${1:expression} { + $0 +} else { + +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/ifl b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/ifl new file mode 100644 index 0000000..177a359 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/ifl @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: if let pattern = expression { ... }; +# key: ifl +# -- +if let ${1:pattern} = ${2:expression} { $0 }; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/impl b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/impl new file mode 100644 index 0000000..2d90db9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/impl @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: impl Type { ... } +# key: impl +# -- +impl ${1:Type} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/implt b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/implt new file mode 100644 index 0000000..54269df --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/implt @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: impl Trait for Type { ... } +# key: implt +# -- +impl ${1:Trait} for ${2:Type} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/let b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/let new file mode 100644 index 0000000..9f603ea --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/let @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: let pattern = expression; +# key: let +# -- +let ${1:pattern} = ${2:expression}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/letm b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/letm new file mode 100644 index 0000000..b07d673 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/letm @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: let mut pattern = expression; +# key: letm +# -- +let mut ${1:pattern} = ${2:expression}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/lett b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/lett new file mode 100644 index 0000000..10a7fa6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/lett @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: let pattern: type = expression; +# key: lett +# -- +let ${1:pattern}: ${2:type} = ${3:expression}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/lettm b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/lettm new file mode 100644 index 0000000..9ceb8c3 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/lettm @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: let mut pattern: type = expression; +# key: lettm +# -- +let mut ${1:pattern}: ${2:type} = ${3:expression}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/loop b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/loop new file mode 100644 index 0000000..2285b75 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/loop @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: loop { ... } +# key: loop +# -- +loop { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/macro b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/macro new file mode 100644 index 0000000..b07f748 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/macro @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: macro_rules! name { (..) => (..); } +# key: macro +# -- +macro_rules! ${1:name} { + ($2) => ($3); +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/main b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/main new file mode 100644 index 0000000..75ae143 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/main @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: fn main() { ... } +# key: main +# -- +fn main() { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/match b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/match new file mode 100644 index 0000000..54b7c80 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/match @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: match expression { ... } +# key: match +# -- +match ${1:expression} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/print b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/print new file mode 100644 index 0000000..11ba7c8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/print @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: print!("{}", value); +# key: print +# -- +print!("${1:{}}", $2); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/println b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/println new file mode 100644 index 0000000..a53f860 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/println @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: println!("{}", value); +# key: println +# -- +println!("${1:{}}", $2); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/spawn b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/spawn new file mode 100644 index 0000000..4b44ccc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/spawn @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: spawn(proc() { ... }); +# key: spawn +# -- +spawn(proc() { + $0 +}); \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/static b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/static new file mode 100644 index 0000000..eef8072 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/static @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: CONSTANT: Type = value; +# key: static +# -- +static ${1:CONSTANT}: ${2:Type} = ${3:value}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/struct b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/struct new file mode 100644 index 0000000..1c2e4c8 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/struct @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: struct TypeName { .. } +# key: struct +# -- +struct ${1:TypeName} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/test b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/test new file mode 100644 index 0000000..c83d83d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/test @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: #[test] fn test_name() { .. } +# key: test +# -- +#[test] +fn ${1:test_name}() { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/testmod b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/testmod new file mode 100644 index 0000000..f0be987 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/testmod @@ -0,0 +1,13 @@ +# -*- mode: snippet -*- +# name: test module +# key: testmod +# -- +#[cfg(test)] +mod ${1:tests} { + use super::*; + + #[test] + fn ${2:test_name}() { + $0 + } +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/trait b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/trait new file mode 100644 index 0000000..15ab201 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/trait @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: trait Type { ... } +# key: trait +# -- +trait ${1:Type} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/type b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/type new file mode 100644 index 0000000..584a089 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/type @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: type TypeName = TypeName; +# key: type +# -- +type ${1:TypeName} = ${2:TypeName}; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/union b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/union new file mode 100644 index 0000000..bfd93aa --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/union @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: union Type { ... } +# key: union +# -- +union ${1:Type} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/warn b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/warn new file mode 100644 index 0000000..acf5c5c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/warn @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: #[warn(lint)] +# key: warn +# -- +#[warn(${1:lint})] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/warn! b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/warn! new file mode 100644 index 0000000..2f4885d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/warn! @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: #![warn(lint)] +# key: warn! +# -- +#![warn(${1:lint})] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/while b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/while new file mode 100644 index 0000000..2fa221a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/while @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: while expression { ... } +# key: while +# -- +while ${1:expression} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/whilel b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/whilel new file mode 100644 index 0000000..7f807e1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/rust-mode/whilel @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: while let pattern = expression { ... } +# key: whilel +# -- +while let ${1:pattern} = ${2:expression} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/app b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/app new file mode 100644 index 0000000..f02b309 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/app @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#Author : Anders Bach Nielsen +#name : object name extends App +# key: app +# -- +object ${1:name} extends App { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/case b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/case new file mode 100644 index 0000000..b16dcae --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/case @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#Author : Jonas Bonèr +#name : case pattern => +# key: case +# -- +case ${1:_} => $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/cc b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/cc new file mode 100644 index 0000000..3eedbc7 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/cc @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#Author : Sam Halliday +#name : case class T(arg: A) +# key: cc +# -- +case class ${1:Name}( + ${2:arg}: ${3:Type} +) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/co b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/co new file mode 100644 index 0000000..7c3d371 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/co @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#Author : Jonas Bonèr +#name : case object T +# key: co +# -- +case object ${1:name} $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/cons b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/cons new file mode 100644 index 0000000..bb2b26c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/cons @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#Author : Jonas Bonèr +#name : element1 :: element2 +# key: cons +# -- +${1:element1} :: ${2:element2} $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/def b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/def new file mode 100644 index 0000000..22a8ee9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/def @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#Author : Jonas Bonèr +#name : def f(arg: T): R = {...} +# key: def +# -- +def ${1:name}(${2:args}): ${3:Unit} = { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/doc b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/doc new file mode 100644 index 0000000..60b5007 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/doc @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +#Author : Anders Bach Nielsen +#name : /** ... */ +# key: doc +# -- +/** + * ${1:description} + * $0 + */ \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/for new file mode 100644 index 0000000..44a4253 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/for @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#Author : Sam Halliday +#name : for { x <- xs } yield +#key: for +# -- +for { + ${1:x} <- ${2:xs} +} yield ${3:x} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/if new file mode 100644 index 0000000..28ff792 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/if @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#Author : Jonas Bonèr +#name : if (cond) { .. } +# key: if +# -- +if (${1:condition}) { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/ls b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/ls new file mode 100644 index 0000000..3e1fb51 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/ls @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#Author : Jonas Bonèr +#name : List(..) +# key: ls +# -- +List(${1:args}, ${2:args}) $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/main b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/main new file mode 100644 index 0000000..4befc32 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/main @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#Author : Jonas Bonèr +#name: def main(args: Array[String]) = { ... } +# key: main +# -- +def main(args: Array[String]) = { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/match b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/match new file mode 100644 index 0000000..8aadeea --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/match @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +#Author : Jonas Bonèr +#name : cc match { .. } +# key: match +# -- +${1:cc} match { + case ${2:pattern} => $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/ob b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/ob new file mode 100644 index 0000000..1890550 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/ob @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#Author : Jonas Bonèr +#name : object name extends T +# key: ob +# -- +object ${1:name} extends ${2:type} $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/throw b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/throw new file mode 100644 index 0000000..02ad549 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/throw @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +#Author : Jonas Bonèr +#name : throw new Exception +# key: throw +# -- +throw new ${1:Exception}(${2:msg}) $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/try b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/try new file mode 100644 index 0000000..d0c8d04 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/try @@ -0,0 +1,11 @@ +# -*- mode: snippet -*- +#Author : Sam Halliday +#name : try { .. } catch { case e => ..} +# key: try +# -- +try { + $0 +} catch { + case e: ${1:Throwable} => + ${2:// TODO: handle exception} +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/valueclass b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/valueclass new file mode 100644 index 0000000..8ad8ead --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/scala-mode/valueclass @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# Author: Michael Pollmeier +# name: value class +# key: vc +# -- +case class ${1:Name}(value: ${2:Type}) extends AnyVal diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/args b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/args new file mode 100644 index 0000000..09fe3a0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/args @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name:args +# key: args +# -- +if [ $# -lt ${1:2} ] + then $0 +fi \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/bang b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/bang new file mode 100644 index 0000000..5e11f0e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/bang @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: bang +# key: ! +# -- +#!/usr/bin/env bash +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/for loop b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/for loop new file mode 100644 index 0000000..438706b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/for loop @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: for loop +# key: for +# -- +for ${1:var} in ${2:stuff}; do + $0 +done \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/function b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/function new file mode 100644 index 0000000..c0f670a --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/function @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: function +# key: f +# -- +function ${1:name} { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/if b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/if new file mode 100644 index 0000000..2dc537d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/if @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: if +# key: if +# -- +if ${1:[ -f file]} + then ${2:do} +fi +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/ife b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/ife new file mode 100644 index 0000000..f046a3e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/ife @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: ife +# key: ife +# -- +if ${1:cond} +then ${2:stuff} +else ${3:other} +fi +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/safe-bang b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/safe-bang new file mode 100644 index 0000000..ef93a83 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/safe-bang @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: safer bash settings for scripts +# key: s! +# -- +#!/usr/bin/env bash +set -euo pipefail +IFS=$'\n\t' + +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/while b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/while new file mode 100644 index 0000000..16b147c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sh-mode/while @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: while loop +# key: while +# -- +while ${1:cond}; do + $0 +done \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/cont b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/cont new file mode 100644 index 0000000..3783d54 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/cont @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: cont +# key: cont +# -- +# contributor: `user-full-name` \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/elisp b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/elisp new file mode 100644 index 0000000..768e94d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/elisp @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: elisp +# key: ` +# -- +\`$0\` \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/field b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/field new file mode 100644 index 0000000..12ff0e0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/field @@ -0,0 +1,6 @@ +# name : ${ ... } field +# contributor : joaotavora +# key : $f +# key: field +# -- +\${${1:${2:n}:}$3${4:\$(${5:lisp-fn})}\}$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/group b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/group new file mode 100644 index 0000000..3ae8fd2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/group @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: group +# key: group +# -- +# group : ${1:group} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/mirror b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/mirror new file mode 100644 index 0000000..2a45042 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/mirror @@ -0,0 +1,6 @@ +# name : ${n:$(...)} mirror +# key : $m +# contributor : joaotavora +# key: mirror +# -- +\${${2:n}:${4:\$(${5:reflection-fn})}\}$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/vars b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/vars new file mode 100644 index 0000000..ec4e4b6 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/snippet-mode/vars @@ -0,0 +1,13 @@ +# -*- mode: snippet -*- +# name : Snippet header +# contributor : joaotavora +# key: vars +# -- +# name : $1${2: +# key : ${3:trigger-key}}${4: +# keybinding : ${5:keybinding}}${6: +# expand-env : (${7:})} +# contributor : $6 +# key: vars +# -- +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/column b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/column new file mode 100644 index 0000000..90e4963 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/column @@ -0,0 +1,4 @@ +#contributor : Alejandro Espinoza Esparza +#name : , ColumnName ColumnType NOT NULL... +# -- + , ${1:Name} ${2:Type} ${3:NOT NULL} diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/constraint b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/constraint new file mode 100644 index 0000000..989e508 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/constraint @@ -0,0 +1,4 @@ +#contributor : Alejandro Espinoza Esparza +#name : CONSTRAINT [..] PRIMARY KEY ... +# -- +CONSTRAINT [${1:PK_Name}] PRIMARY KEY ${2:CLUSTERED} ([${3:ColumnName}]) diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/constraint.1 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/constraint.1 new file mode 100644 index 0000000..98d89f0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/constraint.1 @@ -0,0 +1,4 @@ +#contributor : Alejandro Espinoza Esparza +#name : CONSTRAINT [..] FOREIGN KEY ... +# -- +CONSTRAINT [${1:FK_Name}] FOREIGN KEY ${2:CLUSTERED} ([${3:ColumnName}]) diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/create b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/create new file mode 100644 index 0000000..a34624d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/create @@ -0,0 +1,10 @@ +#contributor : Alejandro Espinoza Esparza +#name : create table ... +# -- +CREATE TABLE [${1:dbo}].[${2:TableName}] +( + ${3:Id} ${4:INT IDENTITY(1,1)} ${5:NOT NULL} +$0 + CONSTRAINT [${6:PK_}] PRIMARY KEY ${7:CLUSTERED} ([$3]) +) +GO diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/create.1 b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/create.1 new file mode 100644 index 0000000..1323daf --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/create.1 @@ -0,0 +1,12 @@ +#contributor : Alejandro Espinoza Esparza +#name : create procedure ... +# -- +CREATE PROCEDURE [${1:dbo}].[${2:Name}] +( + $3 $4 = ${5:NULL} ${6:OUTPUT} +) +AS +BEGIN +$0 +END +GO diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/insert b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/insert new file mode 100644 index 0000000..9ac08fe --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/insert @@ -0,0 +1,5 @@ +# -*- mode: snippet; -*- +# name: insert +# key: ins +# -- +INSERT INTO ${table-name} (${col1, col2}) VALUES (${'val1', 'val2'});$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/references b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/references new file mode 100644 index 0000000..f2e4eab --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/sql-mode/references @@ -0,0 +1,4 @@ +#contributor : Alejandro Espinoza Esparza +#name : REFERENCES ... +# -- +REFERENCES ${1:TableName}([${2:ColumnName}]) diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/terraform-mode/resource b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/terraform-mode/resource new file mode 100644 index 0000000..adc0ea2 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/terraform-mode/resource @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: resource +# key: res +# -- +resource "${1:name}" { + $0 +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/terraform-mode/variable b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/terraform-mode/variable new file mode 100644 index 0000000..84d13f0 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/terraform-mode/variable @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: variable +# key: var +# -- +variable "${1:name}" { + ${2:default = "$3"} +} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/text-mode/.yas-parents b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/text-mode/.yas-parents new file mode 100644 index 0000000..c3ca481 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/text-mode/.yas-parents @@ -0,0 +1 @@ +fundamental-mode diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/assert b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/assert new file mode 100644 index 0000000..574f865 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/assert @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: assert +# key: as +# -- +assert $0;; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/docstring b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/docstring new file mode 100644 index 0000000..6738353 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/docstring @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: docstring +# key: d +# -- +(* $0 *) \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/for b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/for new file mode 100644 index 0000000..f21b345 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/for @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: for +# key: for +# -- +for ${1:cond} do + $0 +done \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/fun b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/fun new file mode 100644 index 0000000..7579a3c --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/fun @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: fun +# key: fun +# -- +fun ${1:args} -> $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/guard b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/guard new file mode 100644 index 0000000..13d43fc --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/guard @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: guard +# key: | +# -- +| ${1:match} -> $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/ifthen b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/ifthen new file mode 100644 index 0000000..dfb1907 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/ifthen @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: ifthen +# key: if +# -- +if ${1:cond} then + $0 diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/ifthenelse b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/ifthenelse new file mode 100644 index 0000000..86d409f --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/ifthenelse @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: ifthenelse +# key: if +# -- +if ${1:cond} then + $2 +else + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/let b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/let new file mode 100644 index 0000000..1a0162e --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/let @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: let +# key: let +# -- +let ${1:var} $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/list_comprehension b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/list_comprehension new file mode 100644 index 0000000..86d4a53 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/list_comprehension @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: list_comprehension +# key: l +# -- +[? $1 | $0 ?] \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/main b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/main new file mode 100644 index 0000000..3351548 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/main @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: main +# key: m +# -- +let main = + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/match b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/match new file mode 100644 index 0000000..18d4caa --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/match @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: match +# key: match +# -- +match ${1:to_match} with + | ${2:matching} -> $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/module b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/module new file mode 100644 index 0000000..7e14d14 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/module @@ -0,0 +1,9 @@ +# -*- mode: snippet -*- +# name: module +# key: mod +# -- +module ${1:A} = + struct + ${2:type t = { name : string; phone : string }} + $0 +end;; diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/open b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/open new file mode 100644 index 0000000..cfc71f4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/open @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: open +# key: op +# -- +open ${1:Module} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/printf b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/printf new file mode 100644 index 0000000..71a9a59 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/printf @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: printf +# key: pr +# -- +Printf.printf "${1:string}" ${2:vals};; \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/rec b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/rec new file mode 100644 index 0000000..e901eb4 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/rec @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: rec +# key: rec +# -- +let rec ${1:fun} ${2:args} = + $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/try b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/try new file mode 100644 index 0000000..9c7faed --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/try @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: try +# key: try +# -- +try + $0 +with + $1 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/type b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/type new file mode 100644 index 0000000..a81b0e1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/type @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: type_record +# key: type +# -- +type ${1:name} = {${2:var}: ${3:int}$0} \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/type_type b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/type_type new file mode 100644 index 0000000..c5b4ac9 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/type_type @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: type_type +# key: type +# -- +type ${1:expr} = + | $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/val b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/val new file mode 100644 index 0000000..6a565ac --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/val @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: val +# key: val +# -- +val ${1:fun} : $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/while b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/while new file mode 100644 index 0000000..e4b1f07 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/tuareg-mode/while @@ -0,0 +1,7 @@ +# -*- mode: snippet -*- +# name: while +# key: wh +# -- +while ${1:cond} do + $0 +done \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/typerex-mode/.yas-parents b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/typerex-mode/.yas-parents new file mode 100644 index 0000000..f26cfc7 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/typerex-mode/.yas-parents @@ -0,0 +1 @@ +tuareg-mode diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/ENV b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/ENV new file mode 100644 index 0000000..e25b271 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/ENV @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: ENV +# key: env +# -- +ENV{$1}$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/GOTO b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/GOTO new file mode 100644 index 0000000..2200b5d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/GOTO @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: GOTO +# key: goto +# -- +GOTO="$1" +$0 + +LABEL="$1" \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/KERNEL b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/KERNEL new file mode 100644 index 0000000..c27d937 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/KERNEL @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: KERNEL +# key: ker +# -- +KERNEL!="$0" \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/add b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/add new file mode 100644 index 0000000..8cbd63b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/add @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: add +# key: add +# -- +ACTION=="add", $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/env$ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/env$ new file mode 100644 index 0000000..7c743b1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/env$ @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: env$ +# key: $ +# -- +$env{$1} $0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/run b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/run new file mode 100644 index 0000000..cc0bb7b --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/udev-mode/run @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: run +# key: run +# -- +RUN+="$0" \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/web-mode/.yas-parents b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/web-mode/.yas-parents new file mode 100644 index 0000000..8a11383 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/web-mode/.yas-parents @@ -0,0 +1 @@ +html-mode diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/yaml-mode/entry b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/yaml-mode/entry new file mode 100644 index 0000000..f9cfbe7 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/yaml-mode/entry @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: entry +# key: entry +# -- +${1:entry}: ${2:value} +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/yaml-mode/list b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/yaml-mode/list new file mode 100644 index 0000000..89d97eb --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/yaml-mode/list @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: list +# key: list +# -- +[$1] +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/snippets/yaml-mode/section b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/yaml-mode/section new file mode 100644 index 0000000..5e8782d --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/snippets/yaml-mode/section @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: section +# key: -- +# -- +--- # ${1:section} +$0 \ No newline at end of file diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet-autoloads.el b/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet-autoloads.el new file mode 100644 index 0000000..6ea2af1 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet-autoloads.el @@ -0,0 +1,65 @@ +;;; yasnippet-autoloads.el --- automatically extracted autoloads +;; +;;; Code: +(add-to-list 'load-path (directory-file-name (or (file-name-directory #$) (car load-path)))) + +;;;### (autoloads nil "yasnippet" "yasnippet.el" (23071 43277 106975 +;;;;;; 345000)) +;;; Generated autoloads from yasnippet.el + +(autoload 'yas-minor-mode "yasnippet" "\ +Toggle YASnippet mode. + +When YASnippet mode is enabled, `yas-expand', normally bound to +the TAB key, expands snippets of code depending on the major +mode. + +With no argument, this command toggles the mode. +positive prefix argument turns on the mode. +Negative prefix argument turns off the mode. + +Key bindings: +\\{yas-minor-mode-map} + +\(fn &optional ARG)" t nil) + +(defvar yas-global-mode nil "\ +Non-nil if Yas-Global mode is enabled. +See the `yas-global-mode' command +for a description of this minor mode. +Setting this variable directly does not take effect; +either customize it (see the info node `Easy Customization') +or call the function `yas-global-mode'.") + +(custom-autoload 'yas-global-mode "yasnippet" nil) + +(autoload 'yas-global-mode "yasnippet" "\ +Toggle Yas minor mode in all buffers. +With prefix ARG, enable Yas-Global mode if ARG is positive; +otherwise, disable it. If called from Lisp, enable the mode if +ARG is omitted or nil. + +Yas minor mode is enabled in all buffers where +`yas-minor-mode-on' would do it. +See `yas-minor-mode' for more information on Yas minor mode. + +\(fn &optional ARG)" t nil) + +(autoload 'snippet-mode "yasnippet" "\ +A mode for editing yasnippets + +\(fn)" t nil) + +;;;*** + +;;;### (autoloads nil nil ("yasnippet-pkg.el") (23071 43263 553895 +;;;;;; 175000)) + +;;;*** + +;; Local Variables: +;; version-control: never +;; no-byte-compile: t +;; no-update-autoloads: t +;; End: +;;; yasnippet-autoloads.el ends here diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet-pkg.el b/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet-pkg.el new file mode 100644 index 0000000..2c08874 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet-pkg.el @@ -0,0 +1,7 @@ +(define-package "yasnippet" "20170923.1646" "Yet another snippet extension for Emacs." + '((cl-lib "0.5")) + :url "http://github.com/joaotavora/yasnippet" :keywords + '("convenience" "emulation")) +;; Local Variables: +;; no-byte-compile: t +;; End: diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet.el b/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet.el new file mode 100644 index 0000000..b3c5c90 --- /dev/null +++ b/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet.el @@ -0,0 +1,4961 @@ +;;; yasnippet.el --- Yet another snippet extension for Emacs. + +;; Copyright (C) 2008-2017 Free Software Foundation, Inc. +;; Authors: pluskid , +;; João Távora , +;; Noam Postavsky +;; Maintainer: Noam Postavsky +;; Version: 0.12.2 +;; X-URL: http://github.com/joaotavora/yasnippet +;; Keywords: convenience, emulation +;; URL: http://github.com/joaotavora/yasnippet +;; Package-Requires: ((cl-lib "0.5")) +;; EmacsWiki: YaSnippetMode + +;; This program is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see . + +;;; Commentary: +;; +;; Basic steps to setup: +;; +;; (add-to-list 'load-path +;; "~/path-to-yasnippet") +;; (require 'yasnippet) +;; (yas-global-mode 1) +;; +;; +;; Interesting variables are: +;; +;; `yas-snippet-dirs' +;; +;; The directory where user-created snippets are to be +;; stored. Can also be a list of directories. In that case, +;; when used for bulk (re)loading of snippets (at startup or +;; via `yas-reload-all'), directories appearing earlier in +;; the list override other dir's snippets. Also, the first +;; directory is taken as the default for storing the user's +;; new snippets. +;; +;; The deprecated `yas/root-directory' aliases this variable +;; for backward-compatibility. +;; +;; +;; Major commands are: +;; +;; M-x yas-expand +;; +;; Try to expand snippets before point. In `yas-minor-mode', +;; this is normally bound to TAB, but you can customize it in +;; `yas-minor-mode-map'. +;; +;; M-x yas-load-directory +;; +;; Prompts you for a directory hierarchy of snippets to load. +;; +;; M-x yas-activate-extra-mode +;; +;; Prompts you for an extra mode to add snippets for in the +;; current buffer. +;; +;; M-x yas-insert-snippet +;; +;; Prompts you for possible snippet expansion if that is +;; possible according to buffer-local and snippet-local +;; expansion conditions. With prefix argument, ignore these +;; conditions. +;; +;; M-x yas-visit-snippet-file +;; +;; Prompts you for possible snippet expansions like +;; `yas-insert-snippet', but instead of expanding it, takes +;; you directly to the snippet definition's file, if it +;; exists. +;; +;; M-x yas-new-snippet +;; +;; Lets you create a new snippet file in the correct +;; subdirectory of `yas-snippet-dirs', according to the +;; active major mode. +;; +;; M-x yas-load-snippet-buffer +;; +;; When editing a snippet, this loads the snippet. This is +;; bound to "C-c C-c" while in the `snippet-mode' editing +;; mode. +;; +;; M-x yas-tryout-snippet +;; +;; When editing a snippet, this opens a new empty buffer, +;; sets it to the appropriate major mode and inserts the +;; snippet there, so you can see what it looks like. This is +;; bound to "C-c C-t" while in `snippet-mode'. +;; +;; M-x yas-describe-tables +;; +;; Lists known snippets in a separate buffer. User is +;; prompted as to whether only the currently active tables +;; are to be displayed, or all the tables for all major +;; modes. +;; +;; If you have `dropdown-list' installed, you can optionally use it +;; as the preferred "prompting method", putting in your .emacs file, +;; for example: +;; +;; (require 'dropdown-list) +;; (setq yas-prompt-functions '(yas-dropdown-prompt +;; yas-ido-prompt +;; yas-completing-prompt)) +;; +;; Also check out the customization group +;; +;; M-x customize-group RET yasnippet RET +;; +;; If you use the customization group to set variables +;; `yas-snippet-dirs' or `yas-global-mode', make sure the path to +;; "yasnippet.el" is present in the `load-path' *before* the +;; `custom-set-variables' is executed in your .emacs file. +;; +;; For more information and detailed usage, refer to the project page: +;; http://github.com/joaotavora/yasnippet + +;;; Code: + +(require 'cl-lib) +(declare-function cl-progv-after "cl-extra") ; Needed for 23.4. +(require 'easymenu) +(require 'help-mode) + +(defvar yas--editing-template) +(defvar yas--guessed-modes) +(defvar yas--indent-original-column) +(defvar yas--scheduled-jit-loads) +(defvar yas-keymap) +(defvar yas-selected-text) +(defvar yas-verbosity) +(defvar yas--current-template) + + +;;; User customizable variables + +(defgroup yasnippet nil + "Yet Another Snippet extension" + :prefix "yas-" + :group 'editing) + +(defconst yas--loaddir + (file-name-directory (or load-file-name buffer-file-name)) + "Directory that yasnippet was loaded from.") + +(defvar yas-installed-snippets-dir nil) +(setq yas-installed-snippets-dir + (expand-file-name "snippets" yas--loaddir)) + +(defconst yas--default-user-snippets-dir + (expand-file-name "snippets" user-emacs-directory)) + +(defcustom yas-snippet-dirs (remove nil + (list yas--default-user-snippets-dir + 'yas-installed-snippets-dir)) + "List of top-level snippet directories. + +Each element, a string or a symbol whose value is a string, +designates a top-level directory where per-mode snippet +directories can be found. + +Elements appearing earlier in the list override later elements' +snippets. + +The first directory is taken as the default for storing snippet's +created with `yas-new-snippet'. " + :type '(choice (directory :tag "Single directory") + (repeat :tag "List of directories" + (choice (directory) (variable)))) + :set #'(lambda (symbol new) + (let ((old (and (boundp symbol) + (symbol-value symbol)))) + (set-default symbol new) + (unless (or (not (fboundp 'yas-reload-all)) + (equal old new)) + (yas-reload-all))))) + +(defun yas-snippet-dirs () + "Return variable `yas-snippet-dirs' as list of strings." + (cl-loop for e in (if (listp yas-snippet-dirs) + yas-snippet-dirs + (list yas-snippet-dirs)) + collect + (cond ((stringp e) e) + ((and (symbolp e) + (boundp e) + (stringp (symbol-value e))) + (symbol-value e)) + (t + (error "[yas] invalid element %s in `yas-snippet-dirs'" e))))) + +(defcustom yas-new-snippet-default "\ +# -*- mode: snippet -*- +# name: $1 +# key: ${2:${1:$(yas--key-from-desc yas-text)}} +# -- +$0`(yas-escape-text yas-selected-text)`" + "Default snippet to use when creating a new snippet. +If nil, don't use any snippet." + :type 'string) + +(defcustom yas-prompt-functions '(yas-dropdown-prompt + yas-completing-prompt + yas-maybe-ido-prompt + yas-no-prompt) + "Functions to prompt for keys, templates, etc interactively. + +These functions are called with the following arguments: + +- PROMPT: A string to prompt the user + +- CHOICES: a list of strings or objects. + +- optional DISPLAY-FN : A function that, when applied to each of +the objects in CHOICES will return a string. + +The return value of any function you put here should be one of +the objects in CHOICES, properly formatted with DISPLAY-FN (if +that is passed). + +- To signal that your particular style of prompting is +unavailable at the moment, you can also have the function return +nil. + +- To signal that the user quit the prompting process, you can +signal `quit' with + + (signal \\='quit \"user quit!\")." + :type '(repeat function)) + +(defcustom yas-indent-line 'auto + "Controls indenting applied to a recent snippet expansion. + +The following values are possible: + +- `fixed' Indent the snippet to the current column; + +- `auto' Indent each line of the snippet with `indent-according-to-mode' + +Every other value means don't apply any snippet-side indentation +after expansion (the manual per-line \"$>\" indentation still +applies)." + :type '(choice (const :tag "Nothing" nothing) + (const :tag "Fixed" fixed) + (const :tag "Auto" auto))) + +(defcustom yas-also-auto-indent-first-line nil + "Non-nil means also auto indent first line according to mode. + +Naturally this is only valid when `yas-indent-line' is `auto'." + :type 'boolean) + +(defcustom yas-also-indent-empty-lines nil + "Non-nil means also indent empty lines according to mode." + :type 'boolean) + +(defcustom yas-snippet-revival t + "Non-nil means re-activate snippet fields after undo/redo." + :type 'boolean) + +(defcustom yas-triggers-in-field nil + "If non-nil, allow stacked expansions (snippets inside snippets). + +Otherwise `yas-next-field-or-maybe-expand' just moves on to the +next field" + :type 'boolean) + +(defcustom yas-fallback-behavior 'return-nil + "This option is obsolete. +Now that the conditional keybinding `yas-maybe-expand' is +available, there's no more need for it." + :type '(choice (const :tag "Call previous command" call-other-command) + (const :tag "Do nothing" return-nil))) + +(make-obsolete-variable + 'yas-fallback-behavior + "For `call-other-command' behavior bind to the conditional +command value `yas-maybe-expand', for `return-nil' behavior bind +directly to `yas-expand'." + "0.12") + +(defcustom yas-choose-keys-first nil + "If non-nil, prompt for snippet key first, then for template. + +Otherwise prompts for all possible snippet names. + +This affects `yas-insert-snippet' and `yas-visit-snippet-file'." + :type 'boolean) + +(defcustom yas-choose-tables-first nil + "If non-nil, and multiple eligible snippet tables, prompts user for tables first. + +Otherwise, user chooses between the merging together of all +eligible tables. + +This affects `yas-insert-snippet', `yas-visit-snippet-file'" + :type 'boolean) + +(defcustom yas-use-menu 'abbreviate + "Display a YASnippet menu in the menu bar. + +When non-nil, submenus for each snippet table will be listed +under the menu \"Yasnippet\". + +- If set to `abbreviate', only the current major-mode +menu and the modes set in `yas--extra-modes' are listed. + +- If set to `full', every submenu is listed + +- If set to nil, hide the menu. + +Any other non-nil value, every submenu is listed." + :type '(choice (const :tag "Full" full) + (const :tag "Abbreviate" abbreviate) + (const :tag "No menu" nil))) + +(defcustom yas-trigger-symbol (or (and (eq window-system 'mac) + (ignore-errors + (char-to-string ?\x21E5))) ;; little ->| sign + " =>") + "The text that will be used in menu to represent the trigger." + :type 'string) + +(defcustom yas-wrap-around-region nil + "What to insert for snippet's $0 field. + +If set to a character, insert contents of corresponding register. +If non-nil insert region contents. This can be overridden on a +per-snippet basis. A value of `cua' is considered equivalent to +`?0' for backwards compatibility." + :type '(choice (character :tag "Insert from register") + (const t :tag "Insert region contents") + (const nil :tag "Don't insert anything") + (const cua))) ; backwards compat + +(defcustom yas-good-grace t + "If non-nil, don't raise errors in elisp evaluation. + +This affects both the inline elisp in snippets and the hook +variables such as `yas-after-exit-snippet-hook'. + +If this variable's value is `inline', an error string \"[yas] +error\" is returned instead of raising the error. If this +variable's value is `hooks', a message is output to according to +`yas-verbosity-level'. If this variable's value is t, both are +active." + :type 'boolean) + +(defcustom yas-visit-from-menu nil + "If non-nil visit snippets's files from menu, instead of expanding them. + +This can only work when snippets are loaded from files." + :type 'boolean) + +(defcustom yas-expand-only-for-last-commands nil + "List of `last-command' values to restrict tab-triggering to, or nil. + +Leave this set at nil (the default) to be able to trigger an +expansion simply by placing the cursor after a valid tab trigger, +using whichever commands. + +Optionally, set this to something like (self-insert-command) if +you to wish restrict expansion to only happen when the last +letter of the snippet tab trigger was typed immediately before +the trigger key itself." + :type '(repeat function)) + +(defcustom yas-alias-to-yas/prefix-p t + "If non-nil make aliases for the old style yas/ prefixed symbols. +It must be set to nil before loading yasnippet to take effect." + :type 'boolean + :group 'yasnippet) + +;; Only two faces, and one of them shouldn't even be used... +;; +(defface yas-field-highlight-face + '((t (:inherit 'region))) + "The face used to highlight the currently active field of a snippet") + +(defface yas--field-debug-face + '() + "The face used for debugging some overlays normally hidden") + + +;;; User-visible variables + +(defvar yas-keymap (let ((map (make-sparse-keymap))) + (define-key map [(tab)] 'yas-next-field-or-maybe-expand) + (define-key map (kbd "TAB") 'yas-next-field-or-maybe-expand) + (define-key map [(shift tab)] 'yas-prev-field) + (define-key map [backtab] 'yas-prev-field) + (define-key map (kbd "C-g") 'yas-abort-snippet) + (define-key map (kbd "C-d") 'yas-skip-and-clear-or-delete-char) + map) + "The active keymap while a snippet expansion is in progress.") + +(defvar yas-key-syntaxes (list "w" "w_" "w_." "w_.()" + #'yas-try-key-from-whitespace) + "Syntaxes and functions to help look for trigger keys before point. + +Each element in this list specifies how to skip buffer positions +backwards and look for the start of a trigger key. + +Each element can be either a string or a function receiving the +original point as an argument. A string element is simply passed +to `skip-syntax-backward' whereas a function element is called +with no arguments and should also place point before the original +position. + +The string between the resulting buffer position and the original +point is matched against the trigger keys in the active snippet +tables. + +If no expandable snippets are found, the next element is the list +is tried, unless a function element returned the symbol `again', +in which case it is called again from the previous position and +may once more reposition point. + +For example, if `yas-key-syntaxes' has the value (\"w\" \"w_\"), +trigger keys composed exclusively of \"word\"-syntax characters +are looked for first. Failing that, longer keys composed of +\"word\" or \"symbol\" syntax are looked for. Therefore, +triggering after + +foo-bar + +will, according to the \"w\" element first try \"barbaz\". If +that isn't a trigger key, \"foo-barbaz\" is tried, respecting the +second \"w_\" element. Notice that even if \"baz\" is a trigger +key for an active snippet, it won't be expanded, unless a +function is added to `yas-key-syntaxes' that eventually places +point between \"bar\" and \"baz\". + +See also Info node `(elisp) Syntax Descriptors'.") + +(defvar yas-after-exit-snippet-hook + '() + "Hooks to run after a snippet exited. + +The hooks will be run in an environment where some variables bound to +proper values: + +`yas-snippet-beg' : The beginning of the region of the snippet. + +`yas-snippet-end' : Similar to beg. + +Attention: These hooks are not run when exiting nested/stacked snippet expansion!") + +(defvar yas-before-expand-snippet-hook + '() + "Hooks to run just before expanding a snippet.") + +(defconst yas-not-string-or-comment-condition + '(if (and (let ((ppss (syntax-ppss))) + (or (nth 3 ppss) (nth 4 ppss))) + (memq this-command '(yas-expand yas-expand-from-trigger-key + yas-expand-from-keymap))) + '(require-snippet-condition . force-in-comment) + t) + "Disables snippet expansion in strings and comments. +To use, set `yas-buffer-local-condition' to this value.") + +(defcustom yas-buffer-local-condition t + "Snippet expanding condition. + +This variable is a Lisp form which is evaluated every time a +snippet expansion is attempted: + + * If it evaluates to nil, no snippets can be expanded. + + * If it evaluates to the a cons (require-snippet-condition + . REQUIREMENT) + + * Snippets bearing no \"# condition:\" directive are not + considered + + * Snippets bearing conditions that evaluate to nil (or + produce an error) won't be considered. + + * If the snippet has a condition that evaluates to non-nil + RESULT: + + * If REQUIREMENT is t, the snippet is considered + + * If REQUIREMENT is `eq' RESULT, the snippet is + considered + + * Otherwise, the snippet is not considered. + + * If it evaluates to the symbol `always', all snippets are + considered for expansion, regardless of any conditions. + + * If it evaluates to t or some other non-nil value + + * Snippet bearing no conditions, or conditions that + evaluate to non-nil, are considered for expansion. + + * Otherwise, the snippet is not considered. + +Here's an example preventing snippets from being expanded from +inside comments, in `python-mode' only, with the exception of +snippets returning the symbol `force-in-comment' in their +conditions. + + (add-hook \\='python-mode-hook + (lambda () + (setq yas-buffer-local-condition + \\='(if (python-syntax-comment-or-string-p) + \\='(require-snippet-condition . force-in-comment) + t))))" + :type + `(choice + (const :tag "Disable snippet expansion inside strings and comments" + ,yas-not-string-or-comment-condition) + (const :tag "Expand all snippets regardless of conditions" always) + (const :tag "Expand snippets unless their condition is nil" t) + (const :tag "Disable all snippet expansion" nil) + sexp)) + +(defcustom yas-overlay-priority 100 + "Priority to use for yasnippets overlays. +This is useful to control whether snippet navigation bindings +override bindings from other packages (e.g., `company-mode')." + :type 'integer) + + +;;; Internal variables + +(defconst yas--version "0.12.2") + +(defvar yas--menu-table (make-hash-table) + "A hash table of MAJOR-MODE symbols to menu keymaps.") + +(defvar yas--escaped-characters + '(?\\ ?` ?\" ?' ?$ ?} ?{ ?\( ?\)) + "List of characters which *might* need to be escaped.") + +(defconst yas--field-regexp + "${\\([0-9]+:\\)?\\([^}]*\\)}" + "A regexp to *almost* recognize a field.") + +(defconst yas--multi-dollar-lisp-expression-regexp + "$+[ \t\n]*\\(([^)]*)\\)" + "A regexp to *almost* recognize a \"$(...)\" expression.") + +(defconst yas--backquote-lisp-expression-regexp + "`\\([^`]*\\)`" + "A regexp to recognize a \"\\=`lisp-expression\\=`\" expression." ) + +(defconst yas--transform-mirror-regexp + "${\\(?:\\([0-9]+\\):\\)?$\\([ \t\n]*([^}]*\\)" + "A regexp to *almost* recognize a mirror with a transform.") + +(defconst yas--simple-mirror-regexp + "$\\([0-9]+\\)" + "A regexp to recognize a simple mirror.") + +(defvar yas--snippet-id-seed 0 + "Contains the next id for a snippet.") + +(defvar yas--original-auto-fill-function nil + "The original value of `auto-fill-function'.") +(make-variable-buffer-local 'yas--original-auto-fill-function) + +(defun yas--snippet-next-id () + (let ((id yas--snippet-id-seed)) + (cl-incf yas--snippet-id-seed) + id)) + + +;;; Minor mode stuff + +;; XXX: `last-buffer-undo-list' is somehow needed in Carbon Emacs for MacOSX +(defvar last-buffer-undo-list nil) + +(defvar yas--minor-mode-menu nil + "Holds the YASnippet menu.") + +(defvar yas--condition-cache-timestamp nil) + +(defun yas--maybe-expand-key-filter (cmd) + (when (let ((yas--condition-cache-timestamp (current-time))) + (yas--templates-for-key-at-point)) + cmd)) + +(defconst yas-maybe-expand + '(menu-item "" yas-expand :filter yas--maybe-expand-key-filter) + "A conditional key definition. +This can be used as a key definition in keymaps to bind a key to +`yas-expand' only when there is a snippet available to be +expanded.") + +(defvar yas-minor-mode-map + (let ((map (make-sparse-keymap))) + (define-key map [(tab)] yas-maybe-expand) + (define-key map (kbd "TAB") yas-maybe-expand) + (define-key map "\C-c&\C-s" 'yas-insert-snippet) + (define-key map "\C-c&\C-n" 'yas-new-snippet) + (define-key map "\C-c&\C-v" 'yas-visit-snippet-file) + map) + "The keymap used when `yas-minor-mode' is active.") + +(easy-menu-define yas--minor-mode-menu + yas-minor-mode-map + "Menu used when `yas-minor-mode' is active." + '("YASnippet" :visible yas-use-menu + "----" + ["Expand trigger" yas-expand + :help "Possibly expand tab trigger before point"] + ["Insert at point..." yas-insert-snippet + :help "Prompt for an expandable snippet and expand it at point"] + ["New snippet..." yas-new-snippet + :help "Create a new snippet in an appropriate directory"] + ["Visit snippet file..." yas-visit-snippet-file + :help "Prompt for an expandable snippet and find its file"] + "----" + ("Snippet menu behaviour" + ["Visit snippets" (setq yas-visit-from-menu t) + :help "Visit snippets from the menu" + :active t :style radio :selected yas-visit-from-menu] + ["Expand snippets" (setq yas-visit-from-menu nil) + :help "Expand snippets from the menu" + :active t :style radio :selected (not yas-visit-from-menu)] + "----" + ["Show all known modes" (setq yas-use-menu 'full) + :help "Show one snippet submenu for each loaded table" + :active t :style radio :selected (eq yas-use-menu 'full)] + ["Abbreviate according to current mode" (setq yas-use-menu 'abbreviate) + :help "Show only snippet submenus for the current active modes" + :active t :style radio :selected (eq yas-use-menu 'abbreviate)]) + ("Indenting" + ["Auto" (setq yas-indent-line 'auto) + :help "Indent each line of the snippet with `indent-according-to-mode'" + :active t :style radio :selected (eq yas-indent-line 'auto)] + ["Fixed" (setq yas-indent-line 'fixed) + :help "Indent the snippet to the current column" + :active t :style radio :selected (eq yas-indent-line 'fixed)] + ["None" (setq yas-indent-line 'none) + :help "Don't apply any particular snippet indentation after expansion" + :active t :style radio :selected (not (member yas-indent-line '(fixed auto)))] + "----" + ["Also auto indent first line" (setq yas-also-auto-indent-first-line + (not yas-also-auto-indent-first-line)) + :help "When auto-indenting also, auto indent the first line menu" + :active (eq yas-indent-line 'auto) + :style toggle :selected yas-also-auto-indent-first-line] + ) + ("Prompting method" + ["System X-widget" (setq yas-prompt-functions + (cons #'yas-x-prompt + (remove #'yas-x-prompt + yas-prompt-functions))) + :help "Use your windowing system's (gtk, mac, windows, etc...) default menu" + :active t :style radio :selected (eq (car yas-prompt-functions) + #'yas-x-prompt)] + ["Dropdown-list" (setq yas-prompt-functions + (cons #'yas-dropdown-prompt + (remove #'yas-dropdown-prompt + yas-prompt-functions))) + :help "Use a special dropdown list" + :active t :style radio :selected (eq (car yas-prompt-functions) + #'yas-dropdown-prompt)] + ["Ido" (setq yas-prompt-functions + (cons #'yas-ido-prompt + (remove #'yas-ido-prompt + yas-prompt-functions))) + :help "Use an ido-style minibuffer prompt" + :active t :style radio :selected (eq (car yas-prompt-functions) + #'yas-ido-prompt)] + ["Completing read" (setq yas-prompt-functions + (cons #'yas-completing-prompt + (remove #'yas-completing-prompt + yas-prompt-functions))) + :help "Use a normal minibuffer prompt" + :active t :style radio :selected (eq (car yas-prompt-functions) + #'yas-completing-prompt)] + ) + ("Misc" + ["Wrap region in exit marker" + (setq yas-wrap-around-region + (not yas-wrap-around-region)) + :help "If non-nil automatically wrap the selected text in the $0 snippet exit" + :style toggle :selected yas-wrap-around-region] + ["Allow stacked expansions " + (setq yas-triggers-in-field + (not yas-triggers-in-field)) + :help "If non-nil allow snippets to be triggered inside other snippet fields" + :style toggle :selected yas-triggers-in-field] + ["Revive snippets on undo " + (setq yas-snippet-revival + (not yas-snippet-revival)) + :help "If non-nil allow snippets to become active again after undo" + :style toggle :selected yas-snippet-revival] + ["Good grace " + (setq yas-good-grace + (not yas-good-grace)) + :help "If non-nil don't raise errors in bad embedded elisp in snippets" + :style toggle :selected yas-good-grace] + ) + "----" + ["Load snippets..." yas-load-directory + :help "Load snippets from a specific directory"] + ["Reload everything" yas-reload-all + :help "Cleanup stuff, reload snippets, rebuild menus"] + ["About" yas-about + :help "Display some information about YASnippet"])) + +(defvar yas--extra-modes nil + "An internal list of modes for which to also lookup snippets. + +This variable probably makes more sense as buffer-local, so +ensure your use `make-local-variable' when you set it.") +(define-obsolete-variable-alias 'yas-extra-modes 'yas--extra-modes "0.9.1") + +(defvar yas--tables (make-hash-table) + "A hash table of mode symbols to `yas--table' objects.") + +(defvar yas--parents (make-hash-table) + "A hash table of mode symbols do lists of direct parent mode symbols. + +This list is populated when reading the \".yas-parents\" files +found when traversing snippet directories with +`yas-load-directory'. + +There might be additional parenting information stored in the +`derived-mode-parent' property of some mode symbols, but that is +not recorded here.") + +(defvar yas--direct-keymaps (list) + "Keymap alist supporting direct snippet keybindings. + +This variable is placed in `emulation-mode-map-alists'. + +Its elements looks like (TABLE-NAME . KEYMAP). They're +instantiated on `yas-reload-all' but KEYMAP is added to only when +loading snippets. `yas--direct-TABLE-NAME' is then a variable +set buffer-locally when entering `yas-minor-mode'. KEYMAP binds +all defined direct keybindings to `yas-maybe-expand-from-keymap' +which decides on the snippet to expand.") + +(defun yas-direct-keymaps-reload () + "Force reload the direct keybinding for active snippet tables." + (interactive) + (setq yas--direct-keymaps nil) + (maphash #'(lambda (name table) + (push (cons (intern (format "yas--direct-%s" name)) + (yas--table-direct-keymap table)) + yas--direct-keymaps)) + yas--tables)) + +(defun yas--modes-to-activate (&optional mode) + "Compute list of mode symbols that are active for `yas-expand' and friends." + (defvar yas--dfs) ;We rely on dynbind. We could use `letrec' instead! + (let* ((explored (if mode (list mode) ; Building up list in reverse. + (cons major-mode (reverse yas--extra-modes)))) + (yas--dfs + (lambda (mode) + (cl-loop for neighbour + in (cl-list* (get mode 'derived-mode-parent) + ;; NOTE: `fboundp' check is redundant + ;; since Emacs 24.4. + (and (fboundp mode) (symbol-function mode)) + (gethash mode yas--parents)) + when (and neighbour + (not (memq neighbour explored)) + (symbolp neighbour)) + do (push neighbour explored) + (funcall yas--dfs neighbour))))) + (mapc yas--dfs explored) + (nreverse explored))) + +(defvar yas-minor-mode-hook nil + "Hook run when `yas-minor-mode' is turned on.") + +(defun yas--auto-fill-wrapper () + (when (and auto-fill-function + (not (eq auto-fill-function #'yas--auto-fill))) + (setq yas--original-auto-fill-function auto-fill-function) + (setq auto-fill-function #'yas--auto-fill))) + +;;;###autoload +(define-minor-mode yas-minor-mode + "Toggle YASnippet mode. + +When YASnippet mode is enabled, `yas-expand', normally bound to +the TAB key, expands snippets of code depending on the major +mode. + +With no argument, this command toggles the mode. +positive prefix argument turns on the mode. +Negative prefix argument turns off the mode. + +Key bindings: +\\{yas-minor-mode-map}" + :lighter " yas" ;; The indicator for the mode line. + (cond ((and yas-minor-mode (featurep 'yasnippet)) + ;; Install the direct keymaps in `emulation-mode-map-alists' + ;; (we use `add-hook' even though it's not technically a hook, + ;; but it works). Then define variables named after modes to + ;; index `yas--direct-keymaps'. + ;; + ;; Also install the post-command-hook. + ;; + (cl-pushnew 'yas--direct-keymaps emulation-mode-map-alists) + (add-hook 'post-command-hook #'yas--post-command-handler nil t) + ;; Set the `yas--direct-%s' vars for direct keymap expansion + ;; + (dolist (mode (yas--modes-to-activate)) + (let ((name (intern (format "yas--direct-%s" mode)))) + (set-default name nil) + (set (make-local-variable name) t))) + ;; Perform JIT loads + (yas--load-pending-jits) + ;; Install auto-fill handler. + (yas--auto-fill-wrapper) ; Now... + (add-hook 'auto-fill-mode-hook #'yas--auto-fill-wrapper)) ; or later. + (t + ;; Uninstall the direct keymaps, post-command hook, and + ;; auto-fill handler. + (remove-hook 'post-command-hook #'yas--post-command-handler t) + (remove-hook 'auto-fill-mode-hook #'yas--auto-fill-wrapper) + (when (local-variable-p 'yas--original-auto-fill-function) + (setq auto-fill-function yas--original-auto-fill-function)) + (setq emulation-mode-map-alists + (remove 'yas--direct-keymaps emulation-mode-map-alists))))) + +(defun yas-activate-extra-mode (mode) + "Activates the snippets for the given `mode' in the buffer. + +The function can be called in the hook of a minor mode to +activate snippets associated with that mode." + (interactive + (let (modes + symbol) + (maphash (lambda (k _) + (setq modes (cons (list k) modes))) + yas--parents) + (setq symbol (completing-read + "Activate mode: " modes nil t)) + (list + (when (not (string= "" symbol)) + (intern symbol))))) + (when mode + (add-to-list (make-local-variable 'yas--extra-modes) mode) + (yas--load-pending-jits))) + +(defun yas-deactivate-extra-mode (mode) + "Deactivates the snippets for the given `mode' in the buffer." + (interactive + (list (intern + (completing-read + "Deactivate mode: " (mapcar #'list yas--extra-modes) nil t)))) + (set (make-local-variable 'yas--extra-modes) + (remove mode + yas--extra-modes))) + +(define-obsolete-variable-alias 'yas-dont-activate + 'yas-dont-activate-functions "0.9.2") +(defvar yas-dont-activate-functions (list #'minibufferp) + "Special hook to control which buffers `yas-global-mode' affects. +Functions are called with no argument, and should return non-nil to prevent +`yas-global-mode' from enabling yasnippet in this buffer. + +In Emacsen < 24, this variable is buffer-local. Because +`yas-minor-mode-on' is called by `yas-global-mode' after +executing the buffer's major mode hook, setting this variable +there is an effective way to define exceptions to the \"global\" +activation behaviour. + +In Emacsen >= 24, only the global value is used. To define +per-mode exceptions to the \"global\" activation behaviour, call +`yas-minor-mode' with a negative argument directily in the major +mode's hook.") +(unless (> emacs-major-version 23) + (with-no-warnings + (make-variable-buffer-local 'yas-dont-activate))) + + +(defun yas-minor-mode-on () + "Turn on YASnippet minor mode. + +Honour `yas-dont-activate-functions', which see." + (interactive) + (unless (or + ;; The old behavior used for Emacs<24 was to set + ;; `yas-dont-activate-functions' to t buffer-locally. + (not (or (listp yas-dont-activate-functions) + (functionp yas-dont-activate-functions))) + (run-hook-with-args-until-success 'yas-dont-activate-functions)) + (yas-minor-mode 1))) + +;;;###autoload +(define-globalized-minor-mode yas-global-mode yas-minor-mode yas-minor-mode-on) + +(defun yas--global-mode-reload-with-jit-maybe () + "Run `yas-reload-all' when `yas-global-mode' is on." + (when yas-global-mode (yas-reload-all))) + +(add-hook 'yas-global-mode-hook #'yas--global-mode-reload-with-jit-maybe) + + +;;; Major mode stuff + +(defvar yas--font-lock-keywords + (append '(("^#.*$" . font-lock-comment-face)) + (with-temp-buffer + (let ((prog-mode-hook nil) + (emacs-lisp-mode-hook nil)) + (ignore-errors (emacs-lisp-mode))) + (font-lock-set-defaults) + (if (eq t (car-safe font-lock-keywords)) + ;; They're "compiled", so extract the source. + (cadr font-lock-keywords) + font-lock-keywords)) + '(("\\$\\([0-9]+\\)" + (0 font-lock-keyword-face) + (1 font-lock-string-face t)) + ("\\${\\([0-9]+\\):?" + (0 font-lock-keyword-face) + (1 font-lock-warning-face t)) + ("\\(\\$(\\)" 1 font-lock-preprocessor-face) + ("}" + (0 font-lock-keyword-face))))) + +(defvar snippet-mode-map + (let ((map (make-sparse-keymap))) + (easy-menu-define nil + map + "Menu used when snippet-mode is active." + (cons "Snippet" + (mapcar #'(lambda (ent) + (when (nth 2 ent) + (define-key map (nth 2 ent) (nth 1 ent))) + (vector (nth 0 ent) (nth 1 ent) t)) + '(("Load this snippet" yas-load-snippet-buffer "\C-c\C-l") + ("Load and quit window" yas-load-snippet-buffer-and-close "\C-c\C-c") + ("Try out this snippet" yas-tryout-snippet "\C-c\C-t"))))) + map) + "The keymap used when `snippet-mode' is active.") + + +;;;###autoload +(define-derived-mode snippet-mode text-mode "Snippet" + "A mode for editing yasnippets" + (setq font-lock-defaults '(yas--font-lock-keywords)) + (set (make-local-variable 'require-final-newline) nil) + (set (make-local-variable 'comment-start) "#") + (set (make-local-variable 'comment-start-skip) "#+[\t ]*") + (add-hook 'after-save-hook #'yas-maybe-load-snippet-buffer nil t)) + +(defun yas-snippet-mode-buffer-p () + "Return non-nil if current buffer should be in `snippet-mode'. +Meaning it's visiting a file under one of the mode directories in +`yas-snippet-dirs'." + (when buffer-file-name + (member + (expand-file-name + ".." + (file-name-directory buffer-file-name)) + (yas-snippet-dirs)))) + +;; We're abusing `magic-fallback-mode-alist' here because +;; `auto-mode-alist' doesn't support function matchers. +(add-to-list 'magic-fallback-mode-alist + `(yas-snippet-mode-buffer-p . snippet-mode)) + + +;;; Internal structs for template management + +(cl-defstruct (yas--template + (:constructor yas--make-template) + ;; Handles `yas-define-snippets' format, plus the + ;; initial TABLE argument. + (:constructor + yas--define-snippets-2 + (table + key content + &optional xname condition group + expand-env load-file xkeybinding xuuid save-file + &aux + (name (or xname + ;; A little redundant: we always get a name + ;; from `yas--parse-template' except when + ;; there isn't a file. + (and load-file (file-name-nondirectory load-file)) + (and save-file (file-name-nondirectory save-file)) + key)) + (keybinding (yas--read-keybinding xkeybinding)) + (uuid (or xuuid name)) + (old (gethash uuid (yas--table-uuidhash table))) + (menu-binding-pair + (and old (yas--template-menu-binding-pair old))) + (perm-group + (and old (yas--template-perm-group old)))))) + "A template for a snippet." + key + content + name + condition + expand-env + load-file + save-file + keybinding + uuid + menu-binding-pair + group ;; as dictated by the #group: directive or .yas-make-groups + perm-group ;; as dictated by `yas-define-menu' + table + ) + +(cl-defstruct (yas--table (:constructor yas--make-snippet-table (name))) + "A table to store snippets for a particular mode. + +Has the following fields: + +`yas--table-name' + + A symbol name normally corresponding to a major mode, but can + also be a pseudo major-mode to be used in + `yas-activate-extra-mode', for example. + +`yas--table-hash' + + A hash table (KEY . NAMEHASH), known as the \"keyhash\". KEY is + a string or a vector, where the former is the snippet's trigger + and the latter means it's a direct keybinding. NAMEHASH is yet + another hash of (NAME . TEMPLATE) where NAME is the snippet's + name and TEMPLATE is a `yas--template' object. + +`yas--table-direct-keymap' + + A keymap for the snippets in this table that have direct + keybindings. This is kept in sync with the keyhash, i.e., all + the elements of the keyhash that are vectors appear here as + bindings to `yas-maybe-expand-from-keymap'. + +`yas--table-uuidhash' + + A hash table mapping snippets uuid's to the same `yas--template' + objects. A snippet uuid defaults to the snippet's name." + name + (hash (make-hash-table :test 'equal)) + (uuidhash (make-hash-table :test 'equal)) + (parents nil) + (direct-keymap (make-sparse-keymap))) + +(defun yas--get-template-by-uuid (mode uuid) + "Find the snippet template in MODE by its UUID." + (let* ((table (gethash mode yas--tables mode))) + (when table + (gethash uuid (yas--table-uuidhash table))))) + +;; Apropos storing/updating in TABLE, this works in two steps: +;; +;; 1. `yas--remove-template-by-uuid' removes any +;; keyhash-namehash-template mappings from TABLE, grabbing the +;; snippet by its uuid. Also removes mappings from TABLE's +;; `yas--table-direct-keymap' (FIXME: and should probably take care +;; of potentially stale menu bindings right?.) +;; +;; 2. `yas--add-template' adds this all over again. +;; +;; Create a new or add to an existing keyhash-namehash mapping. +;; +;; For reference on understanding this, consider three snippet +;; definitions: +;; +;; A: # name: The Foo +;; # key: foo +;; # binding: C-c M-l +;; +;; B: # name: Mrs Foo +;; # key: foo +;; +;; C: # name: The Bar +;; # binding: C-c M-l +;; +;; D: # name: Baz +;; # key: baz +;; +;; keyhash namehashes(3) yas--template structs(4) +;; ----------------------------------------------------- +;; __________ +;; / \ +;; "foo" ---> "The Foo" ---> [yas--template A] | +;; "Mrs Foo" ---> [yas--template B] | +;; | +;; [C-c M-l] ---> "The Foo" -------------------------/ +;; "The Bar" ---> [yas--template C] +;; +;; "baz" ---> "Baz" ---> [yas--template D] +;; +;; Additionally, since uuid defaults to the name, we have a +;; `yas--table-uuidhash' for TABLE +;; +;; uuidhash yas--template structs +;; ------------------------------- +;; "The Foo" ---> [yas--template A] +;; "Mrs Foo" ---> [yas--template B] +;; "The Bar" ---> [yas--template C] +;; "Baz" ---> [yas--template D] +;; +;; FIXME: the more I look at this data-structure the more I think I'm +;; stupid. There has to be an easier way (but beware lots of code +;; depends on this). +;; +(defun yas--remove-template-by-uuid (table uuid) + "Remove from TABLE a template identified by UUID." + (let ((template (gethash uuid (yas--table-uuidhash table)))) + (when template + (let* ((name (yas--template-name template)) + (empty-keys nil)) + ;; Remove the name from each of the targeted namehashes + ;; + (maphash #'(lambda (k v) + (let ((template (gethash name v))) + (when (and template + (equal uuid (yas--template-uuid template))) + (remhash name v) + (when (zerop (hash-table-count v)) + (push k empty-keys))))) + (yas--table-hash table)) + ;; Remove the namehash themselves if they've become empty + ;; + (dolist (key empty-keys) + (when (vectorp key) + (define-key (yas--table-direct-keymap table) key nil)) + (remhash key (yas--table-hash table))) + + ;; Finally, remove the uuid from the uuidhash + ;; + (remhash uuid (yas--table-uuidhash table)))))) + +(defconst yas-maybe-expand-from-keymap + '(menu-item "" yas-expand-from-keymap + :filter yas--maybe-expand-from-keymap-filter)) + +(defun yas--add-template (table template) + "Store in TABLE the snippet template TEMPLATE. + +KEY can be a string (trigger key) of a vector (direct +keybinding)." + (let ((name (yas--template-name template)) + (key (yas--template-key template)) + (keybinding (yas--template-keybinding template)) + (_menu-binding-pair (yas--template-menu-binding-pair-get-create template))) + (dolist (k (remove nil (list key keybinding))) + (puthash name + template + (or (gethash k + (yas--table-hash table)) + (puthash k + (make-hash-table :test 'equal) + (yas--table-hash table)))) + (when (vectorp k) + (define-key (yas--table-direct-keymap table) k yas-maybe-expand-from-keymap))) + + ;; Update TABLE's `yas--table-uuidhash' + (puthash (yas--template-uuid template) + template + (yas--table-uuidhash table)))) + +(defun yas--update-template (table template) + "Add or update TEMPLATE in TABLE. + +Also takes care of adding and updating to the associated menu. +Return TEMPLATE." + ;; Remove from table by uuid + ;; + (yas--remove-template-by-uuid table (yas--template-uuid template)) + ;; Add to table again + ;; + (yas--add-template table template) + ;; Take care of the menu + ;; + (yas--update-template-menu table template) + template) + +(defun yas--update-template-menu (table template) + "Update every menu-related for TEMPLATE." + (let ((menu-binding-pair (yas--template-menu-binding-pair-get-create template)) + (key (yas--template-key template)) + (keybinding (yas--template-keybinding template))) + ;; The snippet might have changed name or keys, so update + ;; user-visible strings + ;; + (unless (eq (cdr menu-binding-pair) :none) + ;; the menu item name + ;; + (setf (cl-cadar menu-binding-pair) (yas--template-name template)) + ;; the :keys information (also visible to the user) + (setf (cl-getf (cdr (car menu-binding-pair)) :keys) + (or (and keybinding (key-description keybinding)) + (and key (concat key yas-trigger-symbol)))))) + (unless (yas--template-menu-managed-by-yas-define-menu template) + (let ((menu-keymap + (yas--menu-keymap-get-create (yas--table-mode table) + (mapcar #'yas--table-mode + (yas--table-parents table)))) + (group (yas--template-group template))) + ;; Remove from menu keymap + ;; + (cl-assert menu-keymap) + (yas--delete-from-keymap menu-keymap (yas--template-uuid template)) + + ;; Add necessary subgroups as necessary. + ;; + (dolist (subgroup group) + (let ((subgroup-keymap (lookup-key menu-keymap (vector (make-symbol subgroup))))) + (unless (and subgroup-keymap + (keymapp subgroup-keymap)) + (setq subgroup-keymap (make-sparse-keymap)) + (define-key menu-keymap (vector (make-symbol subgroup)) + `(menu-item ,subgroup ,subgroup-keymap))) + (setq menu-keymap subgroup-keymap))) + + ;; Add this entry to the keymap + ;; + (define-key menu-keymap + (vector (make-symbol (yas--template-uuid template))) + (car (yas--template-menu-binding-pair template)))))) + +(defun yas--namehash-templates-alist (namehash) + "Return NAMEHASH as an alist." + (let (alist) + (maphash #'(lambda (k v) + (push (cons k v) alist)) + namehash) + alist)) + +(defun yas--fetch (table key) + "Fetch templates in TABLE by KEY. + +Return a list of cons (NAME . TEMPLATE) where NAME is a +string and TEMPLATE is a `yas--template' structure." + (let* ((keyhash (yas--table-hash table)) + (namehash (and keyhash (gethash key keyhash)))) + (when namehash + (yas--filter-templates-by-condition (yas--namehash-templates-alist namehash))))) + + +;;; Filtering/condition logic + +(defun yas--eval-condition (condition) + (condition-case err + (save-excursion + (save-restriction + (save-match-data + (eval condition)))) + (error (progn + (yas--message 1 "Error in condition evaluation: %s" (error-message-string err)) + nil)))) + + +(defun yas--filter-templates-by-condition (templates) + "Filter the templates using the applicable condition. + +TEMPLATES is a list of cons (NAME . TEMPLATE) where NAME is a +string and TEMPLATE is a `yas--template' structure. + +This function implements the rules described in +`yas-buffer-local-condition'. See that variables documentation." + (let ((requirement (yas--require-template-specific-condition-p))) + (if (eq requirement 'always) + templates + (cl-remove-if-not (lambda (pair) + (yas--template-can-expand-p + (yas--template-condition (cdr pair)) requirement)) + templates)))) + +(defun yas--require-template-specific-condition-p () + "Decide if this buffer requests/requires snippet-specific +conditions to filter out potential expansions." + (if (eq 'always yas-buffer-local-condition) + 'always + (let ((local-condition (or (and (consp yas-buffer-local-condition) + (yas--eval-condition yas-buffer-local-condition)) + yas-buffer-local-condition))) + (when local-condition + (if (eq local-condition t) + t + (and (consp local-condition) + (eq 'require-snippet-condition (car local-condition)) + (symbolp (cdr local-condition)) + (cdr local-condition))))))) + +(defun yas--template-can-expand-p (condition requirement) + "Evaluate CONDITION and REQUIREMENT and return a boolean." + (let* ((result (or (null condition) + (yas--eval-condition condition)))) + (cond ((eq requirement t) + result) + (t + (eq requirement result))))) + +(defun yas--table-templates (table) + (when table + (let ((acc (list))) + (maphash #'(lambda (_key namehash) + (maphash #'(lambda (name template) + (push (cons name template) acc)) + namehash)) + (yas--table-hash table)) + (yas--filter-templates-by-condition acc)))) + +(defun yas--templates-for-key-at-point () + "Find `yas--template' objects for any trigger keys preceding point. +Returns (TEMPLATES START END). This function respects +`yas-key-syntaxes', which see." + (save-excursion + (let ((original (point)) + (methods yas-key-syntaxes) + (templates) + (method)) + (while (and methods + (not templates)) + (unless (eq method (car methods)) + ;; TRICKY: `eq'-ness test means we can only be here if + ;; `method' is a function that returned `again', and hence + ;; don't revert back to original position as per + ;; `yas-key-syntaxes'. + (goto-char original)) + (setq method (car methods)) + (cond ((stringp method) + (skip-syntax-backward method) + (setq methods (cdr methods))) + ((functionp method) + (unless (eq (funcall method original) + 'again) + (setq methods (cdr methods)))) + (t + (setq methods (cdr methods)) + (yas--warning "Invalid element `%s' in `yas-key-syntaxes'" method))) + (let ((possible-key (buffer-substring-no-properties (point) original))) + (save-excursion + (goto-char original) + (setq templates + (cl-mapcan (lambda (table) + (yas--fetch table possible-key)) + (yas--get-snippet-tables)))))) + (when templates + (list templates (point) original))))) + +(defun yas--table-all-keys (table) + "Get trigger keys of all active snippets in TABLE." + (let ((acc)) + (maphash #'(lambda (key namehash) + (when (yas--filter-templates-by-condition (yas--namehash-templates-alist namehash)) + (push key acc))) + (yas--table-hash table)) + acc)) + +(defun yas--table-mode (table) + (intern (yas--table-name table))) + + +;;; Internal functions and macros: + +(defun yas--eval-for-string (form) + "Evaluate FORM and convert the result to string." + (let ((debug-on-error (and (not (memq yas-good-grace '(t inline))) + debug-on-error))) + (condition-case oops + (save-excursion + (save-restriction + (save-match-data + (widen) + (let ((result (eval form))) + (when result + (format "%s" result)))))) + ((debug error) (cdr oops))))) + +(defun yas--eval-for-effect (form) + (yas--safely-call-fun (apply-partially #'eval form))) + +(defun yas--read-lisp (string &optional nil-on-error) + "Read STRING as a elisp expression and return it. + +In case STRING in an invalid expression and NIL-ON-ERROR is nil, +return an expression that when evaluated will issue an error." + (condition-case err + (read string) + (error (and (not nil-on-error) + `(error (error-message-string ,err)))))) + +(defun yas--read-keybinding (keybinding) + "Read KEYBINDING as a snippet keybinding, return a vector." + (when (and keybinding + (not (string-match "keybinding" keybinding))) + (condition-case err + (let ((res (or (and (string-match "^\\[.*\\]$" keybinding) + (read keybinding)) + (read-kbd-macro keybinding 'need-vector)))) + res) + (error + (yas--message 2 "warning: keybinding \"%s\" invalid since %s." + keybinding (error-message-string err)) + nil)))) + +(defun yas--table-get-create (mode) + "Get or create the snippet table corresponding to MODE." + (let ((table (gethash mode + yas--tables))) + (unless table + (setq table (yas--make-snippet-table (symbol-name mode))) + (puthash mode table yas--tables) + (push (cons (intern (format "yas--direct-%s" mode)) + (yas--table-direct-keymap table)) + yas--direct-keymaps)) + table)) + +(defun yas--get-snippet-tables (&optional mode) + "Get snippet tables for MODE. + +MODE defaults to the current buffer's `major-mode'. + +Return a list of `yas--table' objects. The list of modes to +consider is returned by `yas--modes-to-activate'" + (remove nil + (mapcar #'(lambda (name) + (gethash name yas--tables)) + (yas--modes-to-activate mode)))) + +(defun yas--menu-keymap-get-create (mode &optional parents) + "Get or create the menu keymap for MODE and its PARENTS. + +This may very well create a plethora of menu keymaps and arrange +them all in `yas--menu-table'" + (let* ((menu-keymap (or (gethash mode yas--menu-table) + (puthash mode (make-sparse-keymap) yas--menu-table)))) + (mapc #'yas--menu-keymap-get-create parents) + (define-key yas--minor-mode-menu (vector mode) + `(menu-item ,(symbol-name mode) ,menu-keymap + :visible (yas--show-menu-p ',mode))) + menu-keymap)) + + +;;; Template-related and snippet loading functions + +(defun yas--parse-template (&optional file) + "Parse the template in the current buffer. + +Optional FILE is the absolute file name of the file being +parsed. + +Optional GROUP is the group where the template is to go, +otherwise we attempt to calculate it from FILE. + +Return a snippet-definition, i.e. a list + + (KEY TEMPLATE NAME CONDITION GROUP VARS LOAD-FILE KEYBINDING UUID) + +If the buffer contains a line of \"# --\" then the contents above +this line are ignored. Directives can set most of these with the syntax: + +# directive-name : directive-value + +Here's a list of currently recognized directives: + + * type + * name + * contributor + * condition + * group + * key + * expand-env + * binding + * uuid" + (goto-char (point-min)) + (let* ((type 'snippet) + (name (and file + (file-name-nondirectory file))) + (key nil) + template + bound + condition + (group (and file + (yas--calculate-group file))) + expand-env + binding + uuid) + (if (re-search-forward "^# --\n" nil t) + (progn (setq template + (buffer-substring-no-properties (point) + (point-max))) + (setq bound (point)) + (goto-char (point-min)) + (while (re-search-forward "^# *\\([^ ]+?\\) *: *\\(.*?\\)[[:space:]]*$" bound t) + (when (string= "uuid" (match-string-no-properties 1)) + (setq uuid (match-string-no-properties 2))) + (when (string= "type" (match-string-no-properties 1)) + (setq type (if (string= "command" (match-string-no-properties 2)) + 'command + 'snippet))) + (when (string= "key" (match-string-no-properties 1)) + (setq key (match-string-no-properties 2))) + (when (string= "name" (match-string-no-properties 1)) + (setq name (match-string-no-properties 2))) + (when (string= "condition" (match-string-no-properties 1)) + (setq condition (yas--read-lisp (match-string-no-properties 2)))) + (when (string= "group" (match-string-no-properties 1)) + (setq group (match-string-no-properties 2))) + (when (string= "expand-env" (match-string-no-properties 1)) + (setq expand-env (yas--read-lisp (match-string-no-properties 2) + 'nil-on-error))) + (when (string= "binding" (match-string-no-properties 1)) + (setq binding (match-string-no-properties 2))))) + (setq template + (buffer-substring-no-properties (point-min) (point-max)))) + (unless (or key binding) + (setq key (and file (file-name-nondirectory file)))) + (when (eq type 'command) + (setq template (yas--read-lisp (concat "(progn" template ")")))) + (when group + (setq group (split-string group "\\."))) + (list key template name condition group expand-env file binding uuid))) + +(defun yas--calculate-group (file) + "Calculate the group for snippet file path FILE." + (let* ((dominating-dir (locate-dominating-file file + ".yas-make-groups")) + (extra-path (and dominating-dir + (file-relative-name file dominating-dir))) + (extra-dir (and extra-path + (file-name-directory extra-path))) + (group (and extra-dir + (replace-regexp-in-string "/" + "." + (directory-file-name extra-dir))))) + group)) + +(defun yas--subdirs (directory &optional filep) + "Return subdirs or files of DIRECTORY according to FILEP." + (cl-remove-if (lambda (file) + (or (string-match "\\`\\." + (file-name-nondirectory file)) + (string-match "\\`#.*#\\'" + (file-name-nondirectory file)) + (string-match "~\\'" + (file-name-nondirectory file)) + (if filep + (file-directory-p file) + (not (file-directory-p file))))) + (directory-files directory t))) + +(defun yas--make-menu-binding (template) + (let ((mode (yas--table-mode (yas--template-table template)))) + `(lambda () (interactive) (yas--expand-or-visit-from-menu ',mode ,(yas--template-uuid template))))) + +(defun yas--expand-or-visit-from-menu (mode uuid) + (let* ((table (yas--table-get-create mode)) + (yas--current-template (and table + (gethash uuid (yas--table-uuidhash table))))) + (when yas--current-template + (if yas-visit-from-menu + (yas--visit-snippet-file-1 yas--current-template) + (let ((where (if (region-active-p) + (cons (region-beginning) (region-end)) + (cons (point) (point))))) + (yas-expand-snippet (yas--template-content yas--current-template) + (car where) + (cdr where) + (yas--template-expand-env yas--current-template))))))) + +(defun yas--key-from-desc (text) + "Return a yasnippet key from a description string TEXT." + (replace-regexp-in-string "\\(\\w+\\).*" "\\1" text)) + + +;;; Popping up for keys and templates + +(defun yas--prompt-for-template (templates &optional prompt) + "Interactively choose a template from the list TEMPLATES. + +TEMPLATES is a list of `yas--template'. + +Optional PROMPT sets the prompt to use." + (when templates + (setq templates + (sort templates #'(lambda (t1 t2) + (< (length (yas--template-name t1)) + (length (yas--template-name t2)))))) + (cl-some (lambda (fn) + (funcall fn (or prompt "Choose a snippet: ") + templates + #'yas--template-name)) + yas-prompt-functions))) + +(defun yas--prompt-for-keys (keys &optional prompt) + "Interactively choose a template key from the list KEYS. + +Optional PROMPT sets the prompt to use." + (when keys + (cl-some (lambda (fn) + (funcall fn (or prompt "Choose a snippet key: ") keys)) + yas-prompt-functions))) + +(defun yas--prompt-for-table (tables &optional prompt) + "Interactively choose a table from the list TABLES. + +Optional PROMPT sets the prompt to use." + (when tables + (cl-some (lambda (fn) + (funcall fn (or prompt "Choose a snippet table: ") + tables + #'yas--table-name)) + yas-prompt-functions))) + +(defun yas-x-prompt (prompt choices &optional display-fn) + "Display choices in a x-window prompt." + (when (and window-system choices) + ;; Let window position be recalculated to ensure that + ;; `posn-at-point' returns non-nil. + (redisplay) + (or + (x-popup-menu + (if (fboundp 'posn-at-point) + (let ((x-y (posn-x-y (posn-at-point (point))))) + (list (list (+ (car x-y) 10) + (+ (cdr x-y) 20)) + (selected-window))) + t) + `(,prompt ("title" + ,@(cl-mapcar (lambda (c d) `(,(concat " " d) . ,c)) + choices + (if display-fn (mapcar display-fn choices) + choices))))) + (keyboard-quit)))) + +(defun yas-maybe-ido-prompt (prompt choices &optional display-fn) + (when (bound-and-true-p ido-mode) + (yas-ido-prompt prompt choices display-fn))) + +(defun yas-ido-prompt (prompt choices &optional display-fn) + (require 'ido) + (yas-completing-prompt prompt choices display-fn #'ido-completing-read)) + +(defun yas-dropdown-prompt (_prompt choices &optional display-fn) + (when (fboundp 'dropdown-list) + (let* ((formatted-choices + (if display-fn (mapcar display-fn choices) choices)) + (n (dropdown-list formatted-choices))) + (if n (nth n choices) + (keyboard-quit))))) + +(defun yas-completing-prompt (prompt choices &optional display-fn completion-fn) + (let* ((formatted-choices + (if display-fn (mapcar display-fn choices) choices)) + (chosen (funcall (or completion-fn #'completing-read) + prompt formatted-choices + nil 'require-match nil nil))) + (if (eq choices formatted-choices) + chosen + (nth (or (cl-position chosen formatted-choices :test #'string=) 0) + choices)))) + +(defun yas-no-prompt (_prompt choices &optional _display-fn) + (cl-first choices)) + + +;;; Defining snippets +;; This consists of creating and registering `yas--template' objects in the +;; correct tables. +;; + +(defvar yas--creating-compiled-snippets nil) + +(defun yas--define-snippets-1 (snippet snippet-table) + "Helper for `yas-define-snippets'." + ;; Update the appropriate table. Also takes care of adding the + ;; key indicators in the templates menu entry, if any. + (yas--update-template + snippet-table (apply #'yas--define-snippets-2 snippet-table snippet))) + +(defun yas-define-snippets (mode snippets) + "Define SNIPPETS for MODE. + +SNIPPETS is a list of snippet definitions, each taking the +following form + + (KEY TEMPLATE NAME CONDITION GROUP EXPAND-ENV LOAD-FILE KEYBINDING UUID SAVE-FILE) + +Within these, only KEY and TEMPLATE are actually mandatory. + +TEMPLATE might be a Lisp form or a string, depending on whether +this is a snippet or a snippet-command. + +CONDITION, EXPAND-ENV and KEYBINDING are Lisp forms, they have +been `yas--read-lisp'-ed and will eventually be +`yas--eval-for-string'-ed. + +The remaining elements are strings. + +FILE is probably of very little use if you're programatically +defining snippets. + +UUID is the snippet's \"unique-id\". Loading a second snippet +file with the same uuid would replace the previous snippet. + +You can use `yas--parse-template' to return such lists based on +the current buffers contents." + (if yas--creating-compiled-snippets + (let ((print-length nil)) + (insert ";;; Snippet definitions:\n;;;\n") + (dolist (snippet snippets) + ;; Fill in missing elements with nil. + (setq snippet (append snippet (make-list (- 10 (length snippet)) nil))) + ;; Move LOAD-FILE to SAVE-FILE because we will load from the + ;; compiled file, not LOAD-FILE. + (let ((load-file (nth 6 snippet))) + (setcar (nthcdr 6 snippet) nil) + (setcar (nthcdr 9 snippet) load-file))) + (insert (pp-to-string + `(yas-define-snippets ',mode ',snippets))) + (insert "\n\n")) + ;; Normal case. + (let ((snippet-table (yas--table-get-create mode)) + (template nil)) + (dolist (snippet snippets) + (setq template (yas--define-snippets-1 snippet + snippet-table))) + template))) + + +;;; Loading snippets from files + +(defun yas--template-get-file (template) + "Return TEMPLATE's LOAD-FILE or SAVE-FILE." + (or (yas--template-load-file template) + (let ((file (yas--template-save-file template))) + (when file + (yas--message 3 "%s has no load file, using save file, %s, instead." + (yas--template-name template) file)) + file))) + +(defun yas--load-yas-setup-file (file) + (if (not yas--creating-compiled-snippets) + ;; Normal case. + (load file 'noerror (<= yas-verbosity 4)) + (let ((elfile (concat file ".el"))) + (when (file-exists-p elfile) + (insert ";;; contents of the .yas-setup.el support file:\n;;;\n") + (insert-file-contents elfile) + (goto-char (point-max)))))) + +(defun yas--define-parents (mode parents) + "Add PARENTS to the list of MODE's parents." + (puthash mode (cl-remove-duplicates + (append parents + (gethash mode yas--parents))) + yas--parents)) + +(defun yas-load-directory (top-level-dir &optional use-jit interactive) + "Load snippets in directory hierarchy TOP-LEVEL-DIR. + +Below TOP-LEVEL-DIR each directory should be a mode name. + +With prefix argument USE-JIT do jit-loading of snippets." + (interactive + (list (read-directory-name "Select the root directory: " nil nil t) + current-prefix-arg t)) + (unless yas-snippet-dirs + (setq yas-snippet-dirs top-level-dir)) + (let ((impatient-buffers)) + (dolist (dir (yas--subdirs top-level-dir)) + (let* ((major-mode-and-parents (yas--compute-major-mode-and-parents + (concat dir "/dummy"))) + (mode-sym (car major-mode-and-parents)) + (parents (cdr major-mode-and-parents))) + ;; Attention: The parents and the menus are already defined + ;; here, even if the snippets are later jit-loaded. + ;; + ;; * We need to know the parents at this point since entering a + ;; given mode should jit load for its parents + ;; immediately. This could be reviewed, the parents could be + ;; discovered just-in-time-as well + ;; + ;; * We need to create the menus here to support the `full' + ;; option to `yas-use-menu' (all known snippet menus are shown to the user) + ;; + (yas--define-parents mode-sym parents) + (yas--menu-keymap-get-create mode-sym) + (let ((fun (apply-partially #'yas--load-directory-1 dir mode-sym))) + (if use-jit + (yas--schedule-jit mode-sym fun) + (funcall fun))) + ;; Look for buffers that are already in `mode-sym', and so + ;; need the new snippets immediately... + ;; + (when use-jit + (cl-loop for buffer in (buffer-list) + do (with-current-buffer buffer + (when (eq major-mode mode-sym) + (yas--message 4 "Discovered there was already %s in %s" buffer mode-sym) + (push buffer impatient-buffers))))))) + ;; ...after TOP-LEVEL-DIR has been completely loaded, call + ;; `yas--load-pending-jits' in these impatient buffers. + ;; + (cl-loop for buffer in impatient-buffers + do (with-current-buffer buffer (yas--load-pending-jits)))) + (when interactive + (yas--message 3 "Loaded snippets from %s." top-level-dir))) + +(defun yas--load-directory-1 (directory mode-sym) + "Recursively load snippet templates from DIRECTORY." + (if yas--creating-compiled-snippets + (let ((output-file (expand-file-name ".yas-compiled-snippets.el" + directory))) + (with-temp-file output-file + (insert (format ";;; Compiled snippets and support files for `%s'\n" + mode-sym)) + (yas--load-directory-2 directory mode-sym) + (insert (format ";;; Do not edit! File generated at %s\n" + (current-time-string))))) + ;; Normal case. + (unless (file-exists-p (expand-file-name ".yas-skip" directory)) + (unless (and (load (expand-file-name ".yas-compiled-snippets" directory) 'noerror (<= yas-verbosity 3)) + (progn (yas--message 4 "Loaded compiled snippets from %s" directory) t)) + (yas--message 4 "Loading snippet files from %s" directory) + (yas--load-directory-2 directory mode-sym))))) + +(defun yas--load-directory-2 (directory mode-sym) + ;; Load .yas-setup.el files wherever we find them + ;; + (yas--load-yas-setup-file (expand-file-name ".yas-setup" directory)) + (let* ((default-directory directory) + (snippet-defs nil)) + ;; load the snippet files + ;; + (with-temp-buffer + (dolist (file (yas--subdirs directory 'no-subdirs-just-files)) + (when (file-readable-p file) + ;; Erase the buffer instead of passing non-nil REPLACE to + ;; `insert-file-contents' (avoids Emacs bug #23659). + (erase-buffer) + (insert-file-contents file) + (push (yas--parse-template file) + snippet-defs)))) + (when snippet-defs + (yas-define-snippets mode-sym + snippet-defs)) + ;; now recurse to a lower level + ;; + (dolist (subdir (yas--subdirs directory)) + (yas--load-directory-2 subdir + mode-sym)))) + +(defun yas--load-snippet-dirs (&optional nojit) + "Reload the directories listed in `yas-snippet-dirs' or +prompt the user to select one." + (let (errors) + (if (null yas-snippet-dirs) + (call-interactively 'yas-load-directory) + (when (member yas--default-user-snippets-dir yas-snippet-dirs) + (make-directory yas--default-user-snippets-dir t)) + (dolist (directory (reverse (yas-snippet-dirs))) + (cond ((file-directory-p directory) + (yas-load-directory directory (not nojit)) + (if nojit + (yas--message 4 "Loaded %s" directory) + (yas--message 4 "Prepared just-in-time loading for %s" directory))) + (t + (push (yas--message 1 "Check your `yas-snippet-dirs': %s is not a directory" directory) errors))))) + errors)) + +(defun yas-reload-all (&optional no-jit interactive) + "Reload all snippets and rebuild the YASnippet menu. + +When NO-JIT is non-nil force immediate reload of all known +snippets under `yas-snippet-dirs', otherwise use just-in-time +loading. + +When called interactively, use just-in-time loading when given a +prefix argument." + (interactive (list (not current-prefix-arg) t)) + (catch 'abort + (let ((errors) + (snippet-editing-buffers + (cl-remove-if-not (lambda (buffer) + (with-current-buffer buffer + yas--editing-template)) + (buffer-list)))) + ;; Warn if there are buffers visiting snippets, since reloading will break + ;; any on-line editing of those buffers. + ;; + (when snippet-editing-buffers + (if interactive + (if (y-or-n-p "Some buffers editing live snippets, close them and proceed with reload? ") + (mapc #'kill-buffer snippet-editing-buffers) + (yas--message 1 "Aborted reload...") + (throw 'abort nil)) + ;; in a non-interactive use, at least set + ;; `yas--editing-template' to nil, make it guess it next time around + (mapc #'(lambda (buffer) + (with-current-buffer buffer + (kill-local-variable 'yas--editing-template))) + (buffer-list)))) + + ;; Empty all snippet tables and parenting info + ;; + (setq yas--tables (make-hash-table)) + (setq yas--parents (make-hash-table)) + + ;; Before killing `yas--menu-table' use its keys to cleanup the + ;; mode menu parts of `yas--minor-mode-menu' (thus also cleaning + ;; up `yas-minor-mode-map', which points to it) + ;; + (maphash #'(lambda (menu-symbol _keymap) + (define-key yas--minor-mode-menu (vector menu-symbol) nil)) + yas--menu-table) + ;; Now empty `yas--menu-table' as well + (setq yas--menu-table (make-hash-table)) + + ;; Cancel all pending 'yas--scheduled-jit-loads' + ;; + (setq yas--scheduled-jit-loads (make-hash-table)) + + ;; Reload the directories listed in `yas-snippet-dirs' or prompt + ;; the user to select one. + ;; + (setq errors (yas--load-snippet-dirs no-jit)) + ;; Reload the direct keybindings + ;; + (yas-direct-keymaps-reload) + + (run-hooks 'yas-after-reload-hook) + (yas--message (if errors 2 3) + (if no-jit "Snippets loaded %s." + "Prepared just-in-time loading of snippets %s.") + (if errors + "with some errors. Check *Messages*" + "successfully"))))) + +(defvar yas-after-reload-hook nil + "Hooks run after `yas-reload-all'.") + +(defun yas--load-pending-jits () + (dolist (mode (yas--modes-to-activate)) + (let ((funs (reverse (gethash mode yas--scheduled-jit-loads)))) + ;; must reverse to maintain coherence with `yas-snippet-dirs' + (dolist (fun funs) + (yas--message 4 "Loading for `%s', just-in-time: %s!" mode fun) + (funcall fun)) + (remhash mode yas--scheduled-jit-loads)))) + +(defun yas-escape-text (text) + "Escape TEXT for snippet." + (when text + (replace-regexp-in-string "[\\$]" "\\\\\\&" text))) + + +;;; Snippet compilation function + +(defun yas-compile-directory (top-level-dir) + "Create .yas-compiled-snippets.el files under subdirs of TOP-LEVEL-DIR. + +This works by stubbing a few functions, then calling +`yas-load-directory'." + (interactive "DTop level snippet directory?") + (let ((yas--creating-compiled-snippets t)) + (yas-load-directory top-level-dir nil))) + +(defun yas-recompile-all () + "Compile every dir in `yas-snippet-dirs'." + (interactive) + (mapc #'yas-compile-directory (yas-snippet-dirs))) + + +;;; JIT loading +;;; + +(defvar yas--scheduled-jit-loads (make-hash-table) + "Alist of mode-symbols to forms to be evaled when `yas-minor-mode' kicks in.") + +(defun yas--schedule-jit (mode fun) + (push fun (gethash mode yas--scheduled-jit-loads))) + + + +;;; Some user level functions + +(defun yas-about () + (interactive) + (message "yasnippet (version %s) -- pluskid/joaotavora/npostavs" + (or (ignore-errors (car (let ((default-directory yas--loaddir)) + (process-lines "git" "describe" + "--tags" "--dirty")))) + (when (and (featurep 'package) + (fboundp 'package-desc-version) + (fboundp 'package-version-join)) + (defvar package-alist) + (ignore-errors + (let* ((yas-pkg (cdr (assq 'yasnippet package-alist))) + (version (package-version-join + (package-desc-version (car yas-pkg))))) + ;; Special case for MELPA's bogus version numbers. + (if (string-match "\\`20..[01][0-9][0-3][0-9][.][0-9]\\{3,4\\}\\'" + version) + (concat yas--version "-snapshot" version) + version)))) + yas--version))) + + +;;; Apropos snippet menu: +;; +;; The snippet menu keymaps are stored by mode in hash table called +;; `yas--menu-table'. They are linked to the main menu in +;; `yas--menu-keymap-get-create' and are initially created empty, +;; reflecting the table hierarchy. +;; +;; They can be populated in two mutually exclusive ways: (1) by +;; reading `yas--template-group', which in turn is populated by the "# +;; group:" directives of the snippets or the ".yas-make-groups" file +;; or (2) by using a separate `yas-define-menu' call, which declares a +;; menu structure based on snippets uuids. +;; +;; Both situations are handled in `yas--update-template-menu', which +;; uses the predicate `yas--template-menu-managed-by-yas-define-menu' +;; that can tell between the two situations. +;; +;; Note: +;; +;; * if `yas-define-menu' is used it must run before +;; `yas-define-snippets' and the UUIDS must match, otherwise we get +;; duplicate entries. The `yas--template' objects are created in +;; `yas-define-menu', holding nothing but the menu entry, +;; represented by a pair of ((menu-item NAME :keys KEYS) TYPE) and +;; stored in `yas--template-menu-binding-pair'. The (menu-item ...) +;; part is then stored in the menu keymap itself which make the item +;; appear to the user. These limitations could probably be revised. +;; +;; * The `yas--template-perm-group' slot is only used in +;; `yas-describe-tables'. +;; +(defun yas--template-menu-binding-pair-get-create (template &optional type) + "Get TEMPLATE's menu binding or assign it a new one. + +TYPE may be `:stay', signaling this menu binding should be +static in the menu." + (or (yas--template-menu-binding-pair template) + (let (;; (key (yas--template-key template)) + ;; (keybinding (yas--template-keybinding template)) + ) + (setf (yas--template-menu-binding-pair template) + (cons `(menu-item ,(or (yas--template-name template) + (yas--template-uuid template)) + ,(yas--make-menu-binding template) + :keys ,nil) + type))))) +(defun yas--template-menu-managed-by-yas-define-menu (template) + "Non-nil if TEMPLATE's menu entry was included in a `yas-define-menu' call." + (cdr (yas--template-menu-binding-pair template))) + + +(defun yas--show-menu-p (mode) + (cond ((eq yas-use-menu 'abbreviate) + (cl-find mode + (mapcar #'yas--table-mode + (yas--get-snippet-tables)))) + (yas-use-menu t))) + +(defun yas--delete-from-keymap (keymap uuid) + "Recursively delete items with UUID from KEYMAP and its submenus." + + ;; XXX: This used to skip any submenus named \"parent mode\" + ;; + ;; First of all, recursively enter submenus, i.e. the tree is + ;; searched depth first so that stale submenus can be found in the + ;; higher passes. + ;; + (mapc #'(lambda (item) + (when (and (consp (cdr-safe item)) + (keymapp (nth 2 (cdr item)))) + (yas--delete-from-keymap (nth 2 (cdr item)) uuid))) + (cdr keymap)) + ;; Set the uuid entry to nil + ;; + (define-key keymap (vector (make-symbol uuid)) nil) + ;; Destructively modify keymap + ;; + (setcdr keymap (cl-delete-if (lambda (item) + (cond ((not (listp item)) nil) + ((null (cdr item))) + ((and (keymapp (nth 2 (cdr item))) + (null (cdr (nth 2 (cdr item)))))))) + (cdr keymap)))) + +(defun yas-define-menu (mode menu &optional omit-items) + "Define a snippet menu for MODE according to MENU, omitting OMIT-ITEMS. + +MENU is a list, its elements can be: + +- (yas-item UUID) : Creates an entry the snippet identified with + UUID. The menu entry for a snippet thus identified is + permanent, i.e. it will never move (be reordered) in the menu. + +- (yas-separator) : Creates a separator + +- (yas-submenu NAME SUBMENU) : Creates a submenu with NAME, + SUBMENU has the same form as MENU. NAME is also added to the + list of groups of the snippets defined thereafter. + +OMIT-ITEMS is a list of snippet uuids that will always be +omitted from MODE's menu, even if they're manually loaded." + (let* ((table (yas--table-get-create mode)) + (hash (yas--table-uuidhash table))) + (yas--define-menu-1 table + (yas--menu-keymap-get-create mode) + menu + hash) + (dolist (uuid omit-items) + (let ((template (or (gethash uuid hash) + (puthash uuid + (yas--make-template :table table + :uuid uuid) + hash)))) + (setf (yas--template-menu-binding-pair template) (cons nil :none)))))) + +(defun yas--define-menu-1 (table menu-keymap menu uuidhash &optional group-list) + "Helper for `yas-define-menu'." + (cl-loop + for (type name submenu) in (reverse menu) + collect (cond + ((or (eq type 'yas-item) + (and yas-alias-to-yas/prefix-p + (eq type 'yas/item))) + (let ((template (or (gethash name uuidhash) + (puthash name + (yas--make-template + :table table + :perm-group group-list + :uuid name) + uuidhash)))) + (car (yas--template-menu-binding-pair-get-create + template :stay)))) + ((or (eq type 'yas-submenu) + (and yas-alias-to-yas/prefix-p + (eq type 'yas/submenu))) + (let ((subkeymap (make-sparse-keymap))) + (yas--define-menu-1 table subkeymap submenu uuidhash + (append group-list (list name))) + `(menu-item ,name ,subkeymap))) + ((or (eq type 'yas-separator) + (and yas-alias-to-yas/prefix-p + (eq type 'yas/separator))) + '(menu-item "----")) + (t (yas--message 1 "Don't know anything about menu entry %s" type) + nil)) + into menu-entries + finally do (push (apply #'vector menu-entries) (cdr menu-keymap)))) + +(defun yas--define (mode key template &optional name condition group) + "Define a snippet. Expanding KEY into TEMPLATE. + +NAME is a description to this template. Also update the menu if +`yas-use-menu' is t. CONDITION is the condition attached to +this snippet. If you attach a condition to a snippet, then it +will only be expanded when the condition evaluated to non-nil." + (yas-define-snippets mode + (list (list key template name condition group)))) + +(defun yas-hippie-try-expand (first-time?) + "Integrate with hippie expand. + +Just put this function in `hippie-expand-try-functions-list'." + (when yas-minor-mode + (if (not first-time?) + (let ((yas-fallback-behavior 'return-nil)) + (yas-expand)) + (undo 1) + nil))) + + +;;; Apropos condition-cache: +;;; +;;; +;;; +;;; +(defmacro yas-define-condition-cache (func doc &rest body) + "Define a function FUNC with doc DOC and body BODY. +BODY is executed at most once every snippet expansion attempt, to check +expansion conditions. + +It doesn't make any sense to call FUNC programatically." + `(defun ,func () ,(if (and doc + (stringp doc)) + (concat doc +"\n\nFor use in snippets' conditions. Within each +snippet-expansion routine like `yas-expand', computes actual +value for the first time then always returns a cached value.") + (setq body (cons doc body)) + nil) + (let ((timestamp-and-value (get ',func 'yas--condition-cache))) + (if (equal (car timestamp-and-value) yas--condition-cache-timestamp) + (cdr timestamp-and-value) + (let ((new-value (progn + ,@body + ))) + (put ',func 'yas--condition-cache (cons yas--condition-cache-timestamp new-value)) + new-value))))) + +(defalias 'yas-expand 'yas-expand-from-trigger-key) +(defun yas-expand-from-trigger-key (&optional field) + "Expand a snippet before point. + +If no snippet expansion is possible, fall back to the behaviour +defined in `yas-fallback-behavior'. + +Optional argument FIELD is for non-interactive use and is an +object satisfying `yas--field-p' to restrict the expansion to." + (interactive) + (setq yas--condition-cache-timestamp (current-time)) + (let (templates-and-pos) + (unless (and yas-expand-only-for-last-commands + (not (member last-command yas-expand-only-for-last-commands))) + (setq templates-and-pos (if field + (save-restriction + (narrow-to-region (yas--field-start field) + (yas--field-end field)) + (yas--templates-for-key-at-point)) + (yas--templates-for-key-at-point)))) + (if templates-and-pos + (yas--expand-or-prompt-for-template + (nth 0 templates-and-pos) + ;; Delete snippet key and active region when expanding. + (min (if (use-region-p) (region-beginning) most-positive-fixnum) + (nth 1 templates-and-pos)) + (max (if (use-region-p) (region-end) most-negative-fixnum) + (nth 2 templates-and-pos))) + (yas--fallback)))) + +(defun yas--maybe-expand-from-keymap-filter (cmd) + (let* ((yas--condition-cache-timestamp (current-time)) + (vec (cl-subseq (this-command-keys-vector) + (if current-prefix-arg + (length (this-command-keys)) + 0))) + (templates (cl-mapcan (lambda (table) + (yas--fetch table vec)) + (yas--get-snippet-tables)))) + (if templates (or cmd templates)))) + +(defun yas-expand-from-keymap () + "Directly expand some snippets, searching `yas--direct-keymaps'." + (interactive) + (setq yas--condition-cache-timestamp (current-time)) + (let* ((templates (yas--maybe-expand-from-keymap-filter nil))) + (when templates + (yas--expand-or-prompt-for-template templates)))) + +(defun yas--expand-or-prompt-for-template (templates &optional start end) + "Expand one of TEMPLATES from START to END. + +Prompt the user if TEMPLATES has more than one element, else +expand immediately. Common gateway for +`yas-expand-from-trigger-key' and `yas-expand-from-keymap'." + (let ((yas--current-template (or (and (cl-rest templates) ;; more than one + (yas--prompt-for-template (mapcar #'cdr templates))) + (cdar templates)))) + (when yas--current-template + (yas-expand-snippet (yas--template-content yas--current-template) + start + end + (yas--template-expand-env yas--current-template))))) + +;; Apropos the trigger key and the fallback binding: +;; +;; When `yas-minor-mode-map' binds , that correctly overrides +;; org-mode's , for example and searching for fallbacks correctly +;; returns `org-cycle'. However, most other modes bind "TAB". TODO, +;; improve this explanation. +;; +(defun yas--fallback () + "Fallback after expansion has failed. + +Common gateway for `yas-expand-from-trigger-key' and +`yas-expand-from-keymap'." + (cond ((eq yas-fallback-behavior 'return-nil) + ;; return nil + nil) + ((eq yas-fallback-behavior 'yas--fallback) + (error (concat "yasnippet fallback loop!\n" + "This can happen when you bind `yas-expand' " + "outside of the `yas-minor-mode-map'."))) + ((eq yas-fallback-behavior 'call-other-command) + (let* ((yas-fallback-behavior 'yas--fallback) + ;; Also bind `yas-minor-mode' to prevent fallback + ;; loops when other extensions use mechanisms similar + ;; to `yas--keybinding-beyond-yasnippet'. (github #525 + ;; and #526) + ;; + (yas-minor-mode nil) + (beyond-yasnippet (yas--keybinding-beyond-yasnippet))) + (yas--message 4 "Falling back to %s" beyond-yasnippet) + (cl-assert (or (null beyond-yasnippet) (commandp beyond-yasnippet))) + (setq this-command beyond-yasnippet) + (when beyond-yasnippet + (call-interactively beyond-yasnippet)))) + ((and (listp yas-fallback-behavior) + (cdr yas-fallback-behavior) + (eq 'apply (car yas-fallback-behavior))) + (let ((command-or-fn (cadr yas-fallback-behavior)) + (args (cddr yas-fallback-behavior)) + (yas-fallback-behavior 'yas--fallback) + (yas-minor-mode nil)) + (if args + (apply command-or-fn args) + (when (commandp command-or-fn) + (setq this-command command-or-fn) + (call-interactively command-or-fn))))) + (t + ;; also return nil if all the other fallbacks have failed + nil))) + +(defun yas--keybinding-beyond-yasnippet () + "Get current keys's binding as if YASsnippet didn't exist." + (let* ((yas-minor-mode nil) + (yas--direct-keymaps nil) + (keys (this-single-command-keys))) + (or (key-binding keys t) + (key-binding (yas--fallback-translate-input keys) t)))) + +(defun yas--fallback-translate-input (keys) + "Emulate `read-key-sequence', at least what I think it does. + +Keys should be an untranslated key vector. Returns a translated +vector of keys. FIXME not thoroughly tested." + (let ((retval []) + (i 0)) + (while (< i (length keys)) + (let ((j i) + (translated local-function-key-map)) + (while (and (< j (length keys)) + translated + (keymapp translated)) + (setq translated (cdr (assoc (aref keys j) (remove 'keymap translated))) + j (1+ j))) + (setq retval (vconcat retval (cond ((symbolp translated) + `[,translated]) + ((vectorp translated) + translated) + (t + (substring keys i j))))) + (setq i j))) + retval)) + + +;;; Utils for snippet development: + +(defun yas--all-templates (tables) + "Get `yas--template' objects in TABLES, applicable for buffer and point. + +Honours `yas-choose-tables-first', `yas-choose-keys-first' and +`yas-buffer-local-condition'" + (when yas-choose-tables-first + (setq tables (list (yas--prompt-for-table tables)))) + (mapcar #'cdr + (if yas-choose-keys-first + (let ((key (yas--prompt-for-keys + (cl-mapcan #'yas--table-all-keys tables)))) + (when key + (cl-mapcan (lambda (table) + (yas--fetch table key)) + tables))) + (cl-remove-duplicates (cl-mapcan #'yas--table-templates tables) + :test #'equal)))) + +(defun yas--lookup-snippet-1 (name mode) + "Get the snippet called NAME in MODE's tables." + (let ((yas-choose-tables-first nil) ; avoid prompts + (yas-choose-keys-first nil)) + (cl-find name (yas--all-templates + (yas--get-snippet-tables mode)) + :key #'yas--template-name :test #'string=))) + +(defun yas-lookup-snippet (name &optional mode noerror) + "Get the snippet content for the snippet NAME in MODE's tables. + +MODE defaults to the current buffer's `major-mode'. If NOERROR +is non-nil, then don't signal an error if there isn't any snippet +called NAME. + +Honours `yas-buffer-local-condition'." + (let ((snippet (yas--lookup-snippet-1 name mode))) + (cond + (snippet (yas--template-content snippet)) + (noerror nil) + (t (error "No snippet named: %s" name))))) + +(defun yas-insert-snippet (&optional no-condition) + "Choose a snippet to expand, pop-up a list of choices according +to `yas-prompt-functions'. + +With prefix argument NO-CONDITION, bypass filtering of snippets +by condition." + (interactive "P") + (setq yas--condition-cache-timestamp (current-time)) + (let* ((yas-buffer-local-condition (or (and no-condition + 'always) + yas-buffer-local-condition)) + (templates (yas--all-templates (yas--get-snippet-tables))) + (yas--current-template (and templates + (or (and (cl-rest templates) ;; more than one template for same key + (yas--prompt-for-template templates)) + (car templates)))) + (where (if (region-active-p) + (cons (region-beginning) (region-end)) + (cons (point) (point))))) + (if yas--current-template + (yas-expand-snippet (yas--template-content yas--current-template) + (car where) + (cdr where) + (yas--template-expand-env yas--current-template)) + (yas--message 1 "No snippets can be inserted here!")))) + +(defun yas-visit-snippet-file () + "Choose a snippet to edit, selection like `yas-insert-snippet'. + +Only success if selected snippet was loaded from a file. Put the +visited file in `snippet-mode'." + (interactive) + (let* ((yas-buffer-local-condition 'always) + (templates (yas--all-templates (yas--get-snippet-tables))) + (template (and templates + (or (yas--prompt-for-template templates + "Choose a snippet template to edit: ") + (car templates))))) + + (if template + (yas--visit-snippet-file-1 template) + (message "No snippets tables active!")))) + +(defun yas--visit-snippet-file-1 (template) + "Helper for `yas-visit-snippet-file'." + (let ((file (yas--template-get-file template))) + (cond ((and file (file-readable-p file)) + (find-file-other-window file) + (snippet-mode) + (set (make-local-variable 'yas--editing-template) template)) + (file + (message "Original file %s no longer exists!" file)) + (t + (switch-to-buffer (format "*%s*"(yas--template-name template))) + (let ((type 'snippet)) + (when (listp (yas--template-content template)) + (insert (format "# type: command\n")) + (setq type 'command)) + (insert (format "# key: %s\n" (yas--template-key template))) + (insert (format "# name: %s\n" (yas--template-name template))) + (when (yas--template-keybinding template) + (insert (format "# binding: %s\n" (yas--template-keybinding template)))) + (when (yas--template-expand-env template) + (insert (format "# expand-env: %s\n" (yas--template-expand-env template)))) + (when (yas--template-condition template) + (insert (format "# condition: %s\n" (yas--template-condition template)))) + (insert "# --\n") + (insert (if (eq type 'command) + (pp-to-string (yas--template-content template)) + (yas--template-content template)))) + (snippet-mode) + (set (make-local-variable 'yas--editing-template) template) + (set (make-local-variable 'default-directory) + (car (cdr (car (yas--guess-snippet-directories (yas--template-table template)))))))))) + +(defun yas--guess-snippet-directories-1 (table) + "Guess possible snippet subdirectories for TABLE." + (cons (file-name-as-directory (yas--table-name table)) + (cl-mapcan #'yas--guess-snippet-directories-1 + (yas--table-parents table)))) + +(defun yas--guess-snippet-directories (&optional table) + "Try to guess suitable directories based on the current active +tables (or optional TABLE). + +Returns a list of elements (TABLE . DIRS) where TABLE is a +`yas--table' object and DIRS is a list of all possible directories +where snippets of table might exist." + (let ((main-dir (car (or (yas-snippet-dirs) + (setq yas-snippet-dirs + (list yas--default-user-snippets-dir))))) + (tables (if table (list table) + (yas--get-snippet-tables)))) + ;; HACK! the snippet table created here is actually registered! + ;; + (unless (or table (gethash major-mode yas--tables)) + (push (yas--table-get-create major-mode) + tables)) + + (mapcar #'(lambda (table) + (cons table + (mapcar #'(lambda (subdir) + (expand-file-name subdir main-dir)) + (yas--guess-snippet-directories-1 table)))) + tables))) + +(defun yas--make-directory-maybe (table-and-dirs &optional main-table-string) + "Return a dir inside TABLE-AND-DIRS, prompts for creation if none exists." + (or (cl-some (lambda (dir) (when (file-directory-p dir) dir)) + (cdr table-and-dirs)) + (let ((candidate (cl-first (cdr table-and-dirs)))) + (unless (file-writable-p (file-name-directory candidate)) + (error (yas--format "%s is not writable." candidate))) + (if (y-or-n-p (format "Guessed directory (%s) for%s%s table \"%s\" does not exist! Create? " + candidate + (if (gethash (yas--table-mode (car table-and-dirs)) + yas--tables) + "" + " brand new") + (or main-table-string + "") + (yas--table-name (car table-and-dirs)))) + (progn + (make-directory candidate 'also-make-parents) + ;; create the .yas-parents file here... + candidate))))) + +;; NOTE: Using the traditional "*new snippet*" stops whitespace mode +;; from activating (it doesn't like the leading "*"). +(defconst yas-new-snippet-buffer-name "+new-snippet+") + +(defun yas-new-snippet (&optional no-template) + "Pops a new buffer for writing a snippet. + +Expands a snippet-writing snippet, unless the optional prefix arg +NO-TEMPLATE is non-nil." + (interactive "P") + (let ((guessed-directories (yas--guess-snippet-directories)) + (yas-selected-text (or yas-selected-text + (and (region-active-p) + (buffer-substring-no-properties + (region-beginning) (region-end)))))) + + (switch-to-buffer yas-new-snippet-buffer-name) + (erase-buffer) + (kill-all-local-variables) + (snippet-mode) + (yas-minor-mode 1) + (set (make-local-variable 'yas--guessed-modes) + (mapcar (lambda (d) (yas--table-mode (car d))) + guessed-directories)) + (set (make-local-variable 'default-directory) + (car (cdr (car guessed-directories)))) + (if (and (not no-template) yas-new-snippet-default) + (yas-expand-snippet yas-new-snippet-default)))) + +(defun yas--compute-major-mode-and-parents (file) + "Given FILE, find the nearest snippet directory for a given mode. + +Returns a list (MODE-SYM PARENTS), the mode's symbol and a list +representing one or more of the mode's parents. + +Note that MODE-SYM need not be the symbol of a real major mode, +neither do the elements of PARENTS." + (let* ((file-dir (and file + (directory-file-name + (or (cl-some (lambda (special) + (locate-dominating-file file special)) + '(".yas-setup.el" + ".yas-make-groups" + ".yas-parents")) + (directory-file-name (file-name-directory file)))))) + (parents-file-name (concat file-dir "/.yas-parents")) + (major-mode-name (and file-dir + (file-name-nondirectory file-dir))) + (major-mode-sym (or (and major-mode-name + (intern major-mode-name)))) + (parents (when (file-readable-p parents-file-name) + (mapcar #'intern + (split-string + (with-temp-buffer + (insert-file-contents parents-file-name) + (buffer-substring-no-properties (point-min) + (point-max)))))))) + (when major-mode-sym + (cons major-mode-sym (remove major-mode-sym parents))))) + +(defvar yas--editing-template nil + "Supporting variable for `yas-load-snippet-buffer' and `yas--visit-snippet'.") + +(defvar yas--current-template nil + "Holds the current template being expanded into a snippet.") + +(defvar yas--guessed-modes nil + "List of guessed modes supporting `yas-load-snippet-buffer'.") + +(defun yas--read-table () + "Ask user for a snippet table, help with some guessing." + (let ((prompt (if (and (featurep 'ido) + ido-mode) + 'ido-completing-read 'completing-read))) + (unless yas--guessed-modes + (set (make-local-variable 'yas--guessed-modes) + (or (yas--compute-major-mode-and-parents buffer-file-name)))) + (intern + (funcall prompt (format "Choose or enter a table (yas guesses %s): " + (if yas--guessed-modes + (cl-first yas--guessed-modes) + "nothing")) + (mapcar #'symbol-name yas--guessed-modes) + nil + nil + nil + nil + (if (cl-first yas--guessed-modes) + (symbol-name (cl-first yas--guessed-modes))))))) + +(defun yas-load-snippet-buffer (table &optional interactive) + "Parse and load current buffer's snippet definition into TABLE. +TABLE is a symbol name passed to `yas--table-get-create'. When +called interactively, prompt for the table name. +Return the `yas--template' object created" + (interactive (list (yas--read-table) t)) + (cond + ;; We have `yas--editing-template', this buffer's content comes from a + ;; template which is already loaded and neatly positioned,... + ;; + (yas--editing-template + (yas--define-snippets-1 (yas--parse-template (yas--template-load-file yas--editing-template)) + (yas--template-table yas--editing-template))) + ;; Try to use `yas--guessed-modes'. If we don't have that use the + ;; value from `yas--compute-major-mode-and-parents' + ;; + (t + (unless yas--guessed-modes + (set (make-local-variable 'yas--guessed-modes) (or (yas--compute-major-mode-and-parents buffer-file-name)))) + (let* ((table (yas--table-get-create table))) + (set (make-local-variable 'yas--editing-template) + (yas--define-snippets-1 (yas--parse-template buffer-file-name) + table))))) + (when interactive + (yas--message 3 "Snippet \"%s\" loaded for %s." + (yas--template-name yas--editing-template) + (yas--table-name (yas--template-table yas--editing-template)))) + yas--editing-template) + +(defun yas-maybe-load-snippet-buffer () + "Added to `after-save-hook' in `snippet-mode'." + (let* ((mode (intern (file-name-sans-extension + (file-name-nondirectory + (directory-file-name default-directory))))) + (current-snippet + (apply #'yas--define-snippets-2 (yas--table-get-create mode) + (yas--parse-template buffer-file-name))) + (uuid (yas--template-uuid current-snippet))) + (unless (equal current-snippet + (if uuid (yas--get-template-by-uuid mode uuid) + (yas--lookup-snippet-1 + (yas--template-name current-snippet) mode))) + (yas-load-snippet-buffer mode t)))) + +(defun yas-load-snippet-buffer-and-close (table &optional kill) + "Load and save the snippet, then `quit-window' if saved. +Loading is performed by `yas-load-snippet-buffer'. If the +snippet is new, ask the user whether (and where) to save it. If +the snippet already has a file, just save it. + +The prefix argument KILL is passed to `quit-window'. + +Don't use this from a Lisp program, call `yas-load-snippet-buffer' +and `kill-buffer' instead." + (interactive (list (yas--read-table) current-prefix-arg)) + (let ((template (yas-load-snippet-buffer table t))) + (when (and (buffer-modified-p) + (y-or-n-p + (format "[yas] Loaded for %s. Also save snippet buffer?" + (yas--table-name (yas--template-table template))))) + (let ((default-directory (car (cdr (car (yas--guess-snippet-directories + (yas--template-table template)))))) + (default-file-name (yas--template-name template))) + (unless (or buffer-file-name (not default-file-name)) + (setq buffer-file-name + (read-file-name "File to save snippet in: " + nil nil nil default-file-name)) + (rename-buffer (file-name-nondirectory buffer-file-name) t)) + (save-buffer))) + (quit-window kill))) + +(defun yas-tryout-snippet (&optional debug) + "Test current buffer's snippet template in other buffer." + (interactive "P") + (let* ((major-mode-and-parent (yas--compute-major-mode-and-parents buffer-file-name)) + (parsed (yas--parse-template)) + (test-mode (or (and (car major-mode-and-parent) + (fboundp (car major-mode-and-parent)) + (car major-mode-and-parent)) + (cl-first yas--guessed-modes) + (intern (read-from-minibuffer (yas--format "Please input a mode: "))))) + (yas--current-template + (and parsed + (fboundp test-mode) + (yas--make-template :table nil ;; no tables for ephemeral snippets + :key (nth 0 parsed) + :content (nth 1 parsed) + :name (nth 2 parsed) + :expand-env (nth 5 parsed))))) + (cond (yas--current-template + (let ((buffer-name (format "*testing snippet: %s*" (yas--template-name yas--current-template)))) + (kill-buffer (get-buffer-create buffer-name)) + (switch-to-buffer (get-buffer-create buffer-name)) + (setq buffer-undo-list nil) + (condition-case nil (funcall test-mode) (error nil)) + (yas-minor-mode 1) + (setq buffer-read-only nil) + (yas-expand-snippet (yas--template-content yas--current-template) + (point-min) + (point-max) + (yas--template-expand-env yas--current-template)) + (when (and debug + (require 'yasnippet-debug nil t) + (fboundp 'yas-debug-snippet-vars)) + (add-hook 'post-command-hook #'yas-debug-snippet-vars nil t)))) + (t + (yas--message 1 "Cannot test snippet for unknown major mode"))))) + +(defun yas-active-keys () + "Return all active trigger keys for current buffer and point." + (cl-remove-duplicates + (cl-remove-if-not #'stringp (cl-mapcan #'yas--table-all-keys + (yas--get-snippet-tables))) + :test #'string=)) + +(defun yas--template-fine-group (template) + (car (last (or (yas--template-group template) + (yas--template-perm-group template))))) + +(defun yas-describe-table-by-namehash () + "Display snippet tables by NAMEHASH." + (interactive) + (with-current-buffer (get-buffer-create "*YASnippet Tables by NAMEHASH*") + (let ((inhibit-read-only t)) + (erase-buffer) + (insert "YASnippet tables by NAMEHASH: \n") + (maphash + (lambda (_mode table) + (insert (format "\nSnippet table `%s':\n\n" (yas--table-name table))) + (maphash + (lambda (key _v) + (insert (format " key %s maps snippets: %s\n" key + (let ((names)) + (maphash #'(lambda (k _v) + (push k names)) + (gethash key (yas--table-hash table))) + names)))) + (yas--table-hash table))) + yas--tables)) + (view-mode +1) + (goto-char 1) + (display-buffer (current-buffer)))) + +(defun yas-describe-tables (&optional with-nonactive) + "Display snippets for each table." + (interactive "P") + (let ((original-buffer (current-buffer)) + (tables (yas--get-snippet-tables))) + (with-current-buffer (get-buffer-create "*YASnippet Tables*") + (let ((inhibit-read-only t)) + (when with-nonactive + (maphash #'(lambda (_k v) + (cl-pushnew v tables)) + yas--tables)) + (erase-buffer) + (insert "YASnippet tables:\n") + (dolist (table tables) + (yas--describe-pretty-table table original-buffer)) + (yas--create-snippet-xrefs)) + (help-mode) + (goto-char 1) + (display-buffer (current-buffer))))) + +(defun yas--describe-pretty-table (table &optional original-buffer) + (insert (format "\nSnippet table `%s'" + (yas--table-name table))) + (if (yas--table-parents table) + (insert (format " parents: %s\n" + (mapcar #'yas--table-name + (yas--table-parents table)))) + (insert "\n")) + (insert (make-string 100 ?-) "\n") + (insert "group state name key binding\n") + (let ((groups-hash (make-hash-table :test #'equal))) + (maphash #'(lambda (_k v) + (let ((group (or (yas--template-fine-group v) + "(top level)"))) + (when (yas--template-name v) + (puthash group + (cons v (gethash group groups-hash)) + groups-hash)))) + (yas--table-uuidhash table)) + (maphash + #'(lambda (group templates) + (setq group (truncate-string-to-width group 25 0 ? "...")) + (insert (make-string 100 ?-) "\n") + (dolist (p templates) + (let* ((name (truncate-string-to-width (propertize (format "\\\\snippet `%s'" (yas--template-name p)) + 'yasnippet p) + 50 0 ? "...")) + (group (prog1 group + (setq group (make-string (length group) ? )))) + (condition-string (let ((condition (yas--template-condition p))) + (if (and condition + original-buffer) + (with-current-buffer original-buffer + (if (yas--eval-condition condition) + "(y)" + "(s)")) + "(a)"))) + (key-description-string (key-description (yas--template-keybinding p))) + (template-key-padding (if (string= key-description-string "") nil ? ))) + (insert group " " + condition-string " " + name (if (string-match "\\.\\.\\.$" name) + "'" " ") + " " + (truncate-string-to-width (or (yas--template-key p) "") + 15 0 template-key-padding "...") + (or template-key-padding "") + (truncate-string-to-width key-description-string + 15 0 nil "...") + "\n")))) + groups-hash))) + + + +;;; User convenience functions, for using in `yas-key-syntaxes' + +(defun yas-try-key-from-whitespace (_start-point) + "As `yas-key-syntaxes' element, look for whitespace delimited key. + +A newline will be considered whitespace even if the mode syntax +marks it as something else (typically comment ender)." + (skip-chars-backward "^[:space:]\n")) + +(defun yas-shortest-key-until-whitespace (_start-point) + "Like `yas-longest-key-from-whitespace' but take the shortest key." + (when (/= (skip-chars-backward "^[:space:]\n" (1- (point))) 0) + 'again)) + +(defun yas-longest-key-from-whitespace (start-point) + "As `yas-key-syntaxes' element, look for longest key between point and whitespace. + +A newline will be considered whitespace even if the mode syntax +marks it as something else (typically comment ender)." + (if (= (point) start-point) + (yas-try-key-from-whitespace start-point) + (forward-char)) + (unless (<= start-point (1+ (point))) + 'again)) + + + +;;; User convenience functions, for using in snippet definitions + +(defvar yas-modified-p nil + "Non-nil if field has been modified by user or transformation.") + +(defvar yas-moving-away-p nil + "Non-nil if user is about to exit field.") + +(defvar yas-text nil + "Contains current field text.") + +(defun yas-substr (str pattern &optional subexp) + "Search PATTERN in STR and return SUBEXPth match. + +If found, the content of subexp group SUBEXP (default 0) is + returned, or else the original STR will be returned." + (let ((grp (or subexp 0))) + (save-match-data + (if (string-match pattern str) + (match-string-no-properties grp str) + str)))) + +(defun yas-choose-value (&rest possibilities) + "Prompt for a string in POSSIBILITIES and return it. + +The last element of POSSIBILITIES may be a list of strings." + (unless (or yas-moving-away-p + yas-modified-p) + (let* ((last-link (last possibilities)) + (last-elem (car last-link))) + (when (listp last-elem) + (setcar last-link (car last-elem)) + (setcdr last-link (cdr last-elem)))) + (cl-some (lambda (fn) + (funcall fn "Choose: " possibilities)) + yas-prompt-functions))) + +(defun yas-key-to-value (alist) + (unless (or yas-moving-away-p + yas-modified-p) + (let ((key (read-key-sequence ""))) + (when (stringp key) + (or (cdr (cl-find key alist :key #'car :test #'string=)) + key))))) + +(defun yas-throw (text) + "Signal `yas-exception' with TEXT as the reason." + (signal 'yas-exception (list text))) +(put 'yas-exception 'error-conditions '(error yas-exception)) +(put 'yas-exception 'error-message "[yas] Exception") + +(defun yas-verify-value (possibilities) + "Verify that the current field value is in POSSIBILITIES. +Otherwise signal `yas-exception'." + (when (and yas-moving-away-p (cl-notany (lambda (pos) (string= pos yas-text)) possibilities)) + (yas-throw (format "Field only allows %s" possibilities)))) + +(defun yas-field-value (number) + "Get the string for field with NUMBER. + +Use this in primary and mirror transformations to tget." + (let* ((snippet (car (yas-active-snippets))) + (field (and snippet + (yas--snippet-find-field snippet number)))) + (when field + (yas--field-text-for-display field)))) + +(defun yas-text () + "Return `yas-text' if that exists and is non-empty, else nil." + (if (and yas-text + (not (string= "" yas-text))) + yas-text)) + +(defun yas-selected-text () + "Return `yas-selected-text' if that exists and is non-empty, else nil." + (if (and yas-selected-text + (not (string= "" yas-selected-text))) + yas-selected-text)) + +(defun yas--get-field-once (number &optional transform-fn) + (unless yas-modified-p + (if transform-fn + (funcall transform-fn (yas-field-value number)) + (yas-field-value number)))) + +(defun yas-default-from-field (number) + (unless yas-modified-p + (yas-field-value number))) + +(defun yas-inside-string () + "Return non-nil if the point is inside a string according to font-lock." + (equal 'font-lock-string-face (get-char-property (1- (point)) 'face))) + +(defun yas-unimplemented (&optional missing-feature) + (if yas--current-template + (if (y-or-n-p (format "This snippet is unimplemented (missing %s) Visit the snippet definition? " + (or missing-feature + "something"))) + (yas--visit-snippet-file-1 yas--current-template)) + (message "No implementation. Missing %s" (or missing-feature "something")))) + + +;;; Snippet expansion and field management + +(defvar yas--active-field-overlay nil + "Overlays the currently active field.") + +(defvar yas--field-protection-overlays nil + "Two overlays protect the current active field.") + +(defvar yas-selected-text nil + "The selected region deleted on the last snippet expansion.") + +(defvar yas--start-column nil + "The column where the snippet expansion started.") + +(make-variable-buffer-local 'yas--active-field-overlay) +(make-variable-buffer-local 'yas--field-protection-overlays) +(put 'yas--active-field-overlay 'permanent-local t) +(put 'yas--field-protection-overlays 'permanent-local t) + +(cl-defstruct (yas--snippet (:constructor yas--make-snippet (expand-env))) + "A snippet. + +..." + expand-env + (fields '()) + (exit nil) + (id (yas--snippet-next-id) :read-only t) + (control-overlay nil) + active-field + ;; stacked expansion: the `previous-active-field' slot saves the + ;; active field where the child expansion took place + previous-active-field + force-exit) + +(cl-defstruct (yas--field (:constructor yas--make-field (number start end parent-field))) + "A field. + +NUMBER is the field number. +START and END are mostly buffer markers, but see \"apropos markers-to-points\". +PARENT-FIELD is a `yas--field' this field is nested under, or nil. +MIRRORS is a list of `yas--mirror's +TRANSFORM is a lisp form. +MODIFIED-P is a boolean set to true once user inputs text. +NEXT is another `yas--field' or `yas--mirror' or `yas--exit'. +" + number + start end + parent-field + (mirrors '()) + (transform nil) + (modified-p nil) + next) + + +(cl-defstruct (yas--mirror (:constructor yas--make-mirror (start end transform))) + "A mirror. + +START and END are mostly buffer markers, but see \"apropos markers-to-points\". +TRANSFORM is a lisp form. +PARENT-FIELD is a `yas--field' this mirror is nested under, or nil. +NEXT is another `yas--field' or `yas--mirror' or `yas--exit' +DEPTH is a count of how many nested mirrors can affect this mirror" + start end + (transform nil) + parent-field + next + depth) + +(cl-defstruct (yas--exit (:constructor yas--make-exit (marker))) + marker + next) + +(defmacro yas--letenv (env &rest body) + "Evaluate BODY with bindings from ENV. +ENV is a lisp expression that evaluates to list of elements with +the form (VAR FORM), where VAR is a symbol and FORM is a lisp +expression that evaluates to its value." + (declare (debug (form body)) (indent 1)) + (let ((envvar (make-symbol "envvar"))) + `(let ((,envvar ,env)) + (cl-progv + (mapcar #'car ,envvar) + (mapcar (lambda (v-f) (eval (cadr v-f))) ,envvar) + ,@body)))) + +(defun yas--snippet-map-markers (fun snippet) + "Apply FUN to all marker (sub)fields in SNIPPET. +Update each field with the result of calling FUN." + (dolist (field (yas--snippet-fields snippet)) + (setf (yas--field-start field) (funcall fun (yas--field-start field))) + (setf (yas--field-end field) (funcall fun (yas--field-end field))) + (dolist (mirror (yas--field-mirrors field)) + (setf (yas--mirror-start mirror) (funcall fun (yas--mirror-start mirror))) + (setf (yas--mirror-end mirror) (funcall fun (yas--mirror-end mirror))))) + (let ((snippet-exit (yas--snippet-exit snippet))) + (when snippet-exit + (setf (yas--exit-marker snippet-exit) + (funcall fun (yas--exit-marker snippet-exit)))))) + +(defun yas--snippet-live-p (snippet) + "Return non-nil if SNIPPET hasn't been committed." + (catch 'live + (yas--snippet-map-markers (lambda (m) + (if (markerp m) m + (throw 'live nil))) + snippet) + t)) + +(defun yas--apply-transform (field-or-mirror field &optional empty-on-nil-p) + "Calculate transformed string for FIELD-OR-MIRROR from FIELD. + +If there is no transform for ht field, return nil. + +If there is a transform but it returns nil, return the empty +string iff EMPTY-ON-NIL-P is true." + (let* ((yas-text (yas--field-text-for-display field)) + (yas-modified-p (yas--field-modified-p field)) + (transform (if (yas--mirror-p field-or-mirror) + (yas--mirror-transform field-or-mirror) + (yas--field-transform field-or-mirror))) + (start-point (if (yas--mirror-p field-or-mirror) + (yas--mirror-start field-or-mirror) + (yas--field-start field-or-mirror))) + (transformed (and transform + (save-excursion + (goto-char start-point) + (let ((ret (yas--eval-for-string transform))) + (or ret (and empty-on-nil-p ""))))))) + transformed)) + +(defsubst yas--replace-all (from to &optional text) + "Replace all occurrences from FROM to TO. + +With optional string TEXT do it in that string." + (if text + (replace-regexp-in-string (regexp-quote from) to text t t) + (goto-char (point-min)) + (while (search-forward from nil t) + (replace-match to t t text)))) + +(defun yas--snippet-find-field (snippet number) + (cl-find-if (lambda (field) + (eq number (yas--field-number field))) + (yas--snippet-fields snippet))) + +(defun yas--snippet-sort-fields (snippet) + "Sort the fields of SNIPPET in navigation order." + (setf (yas--snippet-fields snippet) + (sort (yas--snippet-fields snippet) + #'yas--snippet-field-compare))) + +(defun yas--snippet-field-compare (field1 field2) + "Compare FIELD1 and FIELD2. + +The field with a number is sorted first. If they both have a +number, compare through the number. If neither have, compare +through the field's start point" + (let ((n1 (yas--field-number field1)) + (n2 (yas--field-number field2))) + (if n1 + (if n2 + (or (zerop n2) (and (not (zerop n1)) + (< n1 n2))) + (not (zerop n1))) + (if n2 + (zerop n2) + (< (yas--field-start field1) + (yas--field-start field2)))))) + +(defun yas--field-probably-deleted-p (snippet field) + "Guess if SNIPPET's FIELD should be skipped." + (and + ;; field must be zero length + ;; + (zerop (- (yas--field-start field) (yas--field-end field))) + ;; field must have been modified + ;; + (yas--field-modified-p field) + ;; either: + (or + ;; 1) it's a nested field + ;; + (yas--field-parent-field field) + ;; 2) ends just before the snippet end + ;; + (and (eq field (car (last (yas--snippet-fields snippet)))) + (= (yas--field-start field) (overlay-end (yas--snippet-control-overlay snippet))))) + ;; the field numbered 0, just before the exit marker, should + ;; never be skipped + ;; + (not (and (yas--field-number field) + (zerop (yas--field-number field)))))) + +(defun yas-active-snippets (&optional beg end) + "Return a sorted list of active snippets. +The most recently-inserted snippets are returned first. + +Only snippets overlapping the region BEG ... END are returned. +Overlapping has the same meaning as described in `overlays-in'. +If END is omitted, it defaults to (1+ BEG). If BEG is omitted, +it defaults to point. A non-nil, non-buffer position BEG is +equivalent to a range covering the whole buffer." + (unless beg + (setq beg (point))) + (cond ((not (or (integerp beg) (markerp beg))) + (setq beg (point-min) end (point-max))) + ((not end) + (setq end (1+ beg)))) + (cl-sort + (delete-dups ;; Snippets have multiple overlays. + (delq nil + (mapcar (lambda (ov) (overlay-get ov 'yas--snippet)) + (overlays-in beg end)))) + #'>= :key #'yas--snippet-id)) + +(define-obsolete-function-alias 'yas--snippets-at-point + 'yas-active-snippets "0.12") + +(defun yas-next-field-or-maybe-expand () + "Try to expand a snippet at a key before point. + +Otherwise delegate to `yas-next-field'." + (interactive) + (if yas-triggers-in-field + (let ((yas-fallback-behavior 'return-nil) + (active-field (overlay-get yas--active-field-overlay 'yas--field))) + (when active-field + (unless (yas-expand-from-trigger-key active-field) + (yas-next-field)))) + (yas-next-field))) + +(defun yas-next-field-will-exit-p (&optional arg) + "Return non-nil if (yas-next-field ARG) would exit the current snippet." + (let ((snippet (car (yas-active-snippets))) + (active (overlay-get yas--active-field-overlay 'yas--field))) + (when snippet + (not (yas--find-next-field arg snippet active))))) + +(defun yas--find-next-field (n snippet active) + "Return the Nth field after the ACTIVE one in SNIPPET." + (let ((live-fields (cl-remove-if + (lambda (field) + (and (not (eq field active)) + (yas--field-probably-deleted-p snippet field))) + (yas--snippet-fields snippet)))) + (nth (abs n) (memq active (if (>= n 0) live-fields (reverse live-fields)))))) + +(defun yas-next-field (&optional arg) + "Navigate to the ARGth next field. + +If there's none, exit the snippet." + (interactive) + (unless arg (setq arg 1)) + (let* ((snippet (car (yas-active-snippets))) + (active-field (overlay-get yas--active-field-overlay 'yas--field)) + (target-field (yas--find-next-field arg snippet active-field))) + (yas--letenv (yas--snippet-expand-env snippet) + ;; Apply transform to active field. + (when active-field + (let ((yas-moving-away-p t)) + (when (yas--field-update-display active-field) + (yas--update-mirrors snippet)))) + ;; Now actually move... + (if target-field + (yas--move-to-field snippet target-field) + (yas-exit-snippet snippet))))) + +(defun yas--place-overlays (snippet field) + "Correctly place overlays for SNIPPET's FIELD." + (yas--make-move-field-protection-overlays snippet field) + ;; Only move active field overlays if this is field is from the + ;; innermost snippet. + (when (eq snippet (car (yas-active-snippets (1- (yas--field-start field)) + (1+ (yas--field-end field))))) + (yas--make-move-active-field-overlay snippet field))) + +(defun yas--move-to-field (snippet field) + "Update SNIPPET to move to field FIELD. + +Also create some protection overlays" + (goto-char (yas--field-start field)) + (yas--place-overlays snippet field) + (overlay-put yas--active-field-overlay 'yas--snippet snippet) + (overlay-put yas--active-field-overlay 'yas--field field) + (let ((number (yas--field-number field))) + ;; check for the special ${0: ...} field + (if (and number (zerop number)) + (progn + (set-mark (yas--field-end field)) + (setf (yas--snippet-force-exit snippet) + (or (yas--field-transform field) + t))) + ;; make this field active + (setf (yas--snippet-active-field snippet) field) + ;; primary field transform: first call to snippet transform + (unless (yas--field-modified-p field) + (if (yas--field-update-display field) + (yas--update-mirrors snippet) + (setf (yas--field-modified-p field) nil)))))) + +(defun yas-prev-field () + "Navigate to prev field. If there's none, exit the snippet." + (interactive) + (yas-next-field -1)) + +(defun yas-abort-snippet (&optional snippet) + (interactive) + (let ((snippet (or snippet + (car (yas-active-snippets))))) + (when snippet + (setf (yas--snippet-force-exit snippet) t)))) + +(defun yas-exit-snippet (snippet) + "Goto exit-marker of SNIPPET." + (interactive (list (cl-first (yas-active-snippets)))) + (when snippet + (setf (yas--snippet-force-exit snippet) t) + (goto-char (if (yas--snippet-exit snippet) + (yas--exit-marker (yas--snippet-exit snippet)) + (overlay-end (yas--snippet-control-overlay snippet)))))) + +(defun yas-exit-all-snippets () + "Exit all snippets." + (interactive) + (mapc #'(lambda (snippet) + (yas-exit-snippet snippet) + (yas--check-commit-snippet)) + (yas-active-snippets 'all))) + + +;;; Some low level snippet-routines: + +(defvar yas--inhibit-overlay-hooks nil + "Bind this temporarily to non-nil to prevent running `yas--on-*-modification'.") + +(defvar yas-snippet-beg nil "Beginning position of the last snippet committed.") +(defvar yas-snippet-end nil "End position of the last snippet committed.") + +(defun yas--commit-snippet (snippet) + "Commit SNIPPET, but leave point as it is. + +This renders the snippet as ordinary text." + + (let ((control-overlay (yas--snippet-control-overlay snippet))) + ;; + ;; Save the end of the moribund snippet in case we need to revive it + ;; its original expansion. + ;; + (when (and control-overlay + (overlay-buffer control-overlay)) + (setq yas-snippet-beg (overlay-start control-overlay)) + (setq yas-snippet-end (overlay-end control-overlay)) + (delete-overlay control-overlay) + (setf (yas--snippet-control-overlay snippet) nil)) + + (let ((yas--inhibit-overlay-hooks t)) + (when yas--active-field-overlay + (delete-overlay yas--active-field-overlay)) + (when yas--field-protection-overlays + (mapc #'delete-overlay yas--field-protection-overlays))) + + ;; stacked expansion: if the original expansion took place from a + ;; field, make sure we advance it here at least to + ;; `yas-snippet-end'... + ;; + (let ((previous-field (yas--snippet-previous-active-field snippet))) + (when (and yas-snippet-end previous-field) + (yas--advance-end-maybe previous-field yas-snippet-end))) + + ;; Convert all markers to points, + ;; + (yas--markers-to-points snippet) + + ;; Take care of snippet revival + ;; + (if yas-snippet-revival + (push `(apply yas--snippet-revive ,yas-snippet-beg ,yas-snippet-end ,snippet) + buffer-undo-list) + ;; Dismember the snippet... this is useful if we get called + ;; again from `yas--take-care-of-redo'.... + (setf (yas--snippet-fields snippet) nil))) + + (yas--message 4 "Snippet %s exited." (yas--snippet-id snippet))) + +(defvar yas--snippets-to-move nil) +(make-variable-buffer-local 'yas--snippets-to-move) + +(defun yas--prepare-snippets-for-move (beg end buf pos) + "Gather snippets in BEG..END for moving to POS in BUF." + (let ((to-move nil) + (snippets (yas-active-snippets beg end)) + (dst-base-line (with-current-buffer buf + (count-lines (point-min) pos)))) + (when snippets + (dolist (snippet snippets) + (yas--snippet-map-markers + (lambda (m) + (goto-char m) + (beginning-of-line) + (prog1 (cons (count-lines (point-min) (point)) + (yas--snapshot-marker-location m)) + (set-marker m nil))) + snippet) + (let ((ctrl-ov (yas--snapshot-overlay-line-location + (yas--snippet-control-overlay snippet)))) + (push (list ctrl-ov dst-base-line snippet) to-move) + (delete-overlay (car ctrl-ov)))) + (with-current-buffer buf + (setq yas--snippets-to-move (nconc to-move yas--snippets-to-move)))))) + +(defun yas--on-buffer-kill () + ;; Org mode uses temp buffers for fontification and "native tab", + ;; move all the snippets to the original org-mode buffer when it's + ;; killed. + (let ((org-marker nil)) + (when (and yas-minor-mode + (or (bound-and-true-p org-edit-src-from-org-mode) + (bound-and-true-p org-src--from-org-mode)) + (markerp + (setq org-marker + (or (bound-and-true-p org-edit-src-beg-marker) + (bound-and-true-p org-src--beg-marker))))) + (yas--prepare-snippets-for-move + (point-min) (point-max) + (marker-buffer org-marker) org-marker)))) + +(add-hook 'kill-buffer-hook #'yas--on-buffer-kill) + +(defun yas--finish-moving-snippets () + "Finish job started in `yas--prepare-snippets-for-move'." + (cl-loop for (ctrl-ov base-line snippet) in yas--snippets-to-move + for base-pos = (progn (goto-char (point-min)) + (forward-line base-line) (point)) + do (yas--snippet-map-markers + (lambda (l-m-r-w) + (goto-char base-pos) + (forward-line (nth 0 l-m-r-w)) + (save-restriction + (narrow-to-region (line-beginning-position) + (line-end-position)) + (yas--restore-marker-location (cdr l-m-r-w))) + (nth 1 l-m-r-w)) + snippet) + (goto-char base-pos) + (yas--restore-overlay-location ctrl-ov) + (yas--maybe-move-to-active-field snippet)) + (setq yas--snippets-to-move nil)) + +(defun yas--safely-call-fun (fun) + "Call FUN and catch any errors." + (condition-case error + (funcall fun) + ((debug error) + (yas--message 2 "Error running %s: %s" fun + (error-message-string error))))) + +(defun yas--safely-run-hook (hook) + "Call HOOK's functions. +HOOK should be a symbol, a hook variable, as in `run-hooks'." + (let ((debug-on-error (and (not (memq yas-good-grace '(t hooks))) + debug-on-error))) + (yas--safely-call-fun (apply-partially #'run-hooks hook)))) + +(defun yas--check-commit-snippet () + "Check if point exited the currently active field of the snippet. + +If so cleans up the whole snippet up." + (let* ((snippets (yas-active-snippets 'all)) + (snippets-left snippets) + (snippet-exit-transform) + ;; Record the custom snippet `yas-after-exit-snippet-hook' + ;; set in the expand-env field. + (snippet-exit-hook yas-after-exit-snippet-hook)) + (dolist (snippet snippets) + (let ((active-field (yas--snippet-active-field snippet))) + (yas--letenv (yas--snippet-expand-env snippet) + ;; Note: the `force-exit' field could be a transform in case of + ;; ${0: ...}, see `yas--move-to-field'. + (setq snippet-exit-transform (yas--snippet-force-exit snippet)) + (cond ((or snippet-exit-transform + (not (and active-field (yas--field-contains-point-p active-field)))) + (setq snippets-left (delete snippet snippets-left)) + (setf (yas--snippet-force-exit snippet) nil) + (setq snippet-exit-hook yas-after-exit-snippet-hook) + (yas--commit-snippet snippet)) + ((and active-field + (or (not yas--active-field-overlay) + (not (overlay-buffer yas--active-field-overlay)))) + ;; + ;; stacked expansion: this case is mainly for recent + ;; snippet exits that place us back int the field of + ;; another snippet + ;; + (save-excursion + (yas--move-to-field snippet active-field) + (yas--update-mirrors snippet))) + (t + nil))))) + (unless (or (null snippets) snippets-left) + (when snippet-exit-transform + (yas--eval-for-effect snippet-exit-transform)) + (let ((yas-after-exit-snippet-hook snippet-exit-hook)) + (yas--safely-run-hook 'yas-after-exit-snippet-hook))))) + +;; Apropos markers-to-points: +;; +;; This was found useful for performance reasons, so that an excessive +;; number of live markers aren't kept around in the +;; `buffer-undo-list'. We don't reuse the original marker object +;; because that leaves an unreadable object in the history list and +;; undo-tree persistence has trouble with that. +;; +;; This shouldn't bring horrible problems with undo/redo, but you +;; never know. +;; +(defun yas--markers-to-points (snippet) + "Save all markers of SNIPPET as positions." + (yas--snippet-map-markers (lambda (m) + (prog1 (marker-position m) + (set-marker m nil))) + snippet)) + +(defun yas--points-to-markers (snippet) + "Restore SNIPPET's marker positions, saved by `yas--markers-to-points'." + (yas--snippet-map-markers #'copy-marker snippet)) + +(defun yas--maybe-move-to-active-field (snippet) + "Try to move to SNIPPET's active (or first) field and return it if found." + (let ((target-field (or (yas--snippet-active-field snippet) + (car (yas--snippet-fields snippet))))) + (when target-field + (yas--move-to-field snippet target-field) + target-field))) + +(defun yas--field-contains-point-p (field &optional point) + (let ((point (or point + (point)))) + (and (>= point (yas--field-start field)) + (<= point (yas--field-end field))))) + +(defun yas--field-text-for-display (field) + "Return the propertized display text for field FIELD." + (buffer-substring (yas--field-start field) (yas--field-end field))) + +(defun yas--undo-in-progress () + "True if some kind of undo is in progress." + (or undo-in-progress + (eq this-command 'undo) + (eq this-command 'redo))) + +(defun yas--make-control-overlay (snippet start end) + "Create the control overlay that surrounds the snippet and +holds the keymap." + (let ((overlay (make-overlay start + end + nil + nil + t))) + (overlay-put overlay 'keymap yas-keymap) + (overlay-put overlay 'priority yas-overlay-priority) + (overlay-put overlay 'yas--snippet snippet) + overlay)) + +(defun yas-skip-and-clear-or-delete-char (&optional field) + "Clears unmodified field if at field start, skips to next tab. + +Otherwise deletes a character normally by calling `delete-char'." + (interactive) + (let ((field (or field + (and yas--active-field-overlay + (overlay-buffer yas--active-field-overlay) + (overlay-get yas--active-field-overlay 'yas--field))))) + (cond ((and field + (not (yas--field-modified-p field)) + (eq (point) (marker-position (yas--field-start field)))) + (yas--skip-and-clear field) + (yas-next-field 1)) + (t + (call-interactively 'delete-char))))) + +(defun yas--skip-and-clear (field &optional from) + "Deletes the region of FIELD and sets it's modified state to t. +If given, FROM indicates position to start at instead of FIELD's beginning." + ;; Just before skipping-and-clearing the field, mark its children + ;; fields as modified, too. If the children have mirrors-in-fields + ;; this prevents them from updating erroneously (we're skipping and + ;; deleting!). + ;; + (yas--mark-this-and-children-modified field) + (unless (= (yas--field-start field) (yas--field-end field)) + (delete-region (or from (yas--field-start field)) (yas--field-end field)))) + +(defun yas--mark-this-and-children-modified (field) + (setf (yas--field-modified-p field) t) + (let ((fom (yas--field-next field))) + (while (and fom + (yas--fom-parent-field fom)) + (when (and (eq (yas--fom-parent-field fom) field) + (yas--field-p fom)) + (yas--mark-this-and-children-modified fom)) + (setq fom (yas--fom-next fom))))) + +(defun yas--make-move-active-field-overlay (snippet field) + "Place the active field overlay in SNIPPET's FIELD. + +Move the overlay, or create it if it does not exit." + (if (and yas--active-field-overlay + (overlay-buffer yas--active-field-overlay)) + (move-overlay yas--active-field-overlay + (yas--field-start field) + (yas--field-end field)) + (setq yas--active-field-overlay + (make-overlay (yas--field-start field) + (yas--field-end field) + nil nil t)) + (overlay-put yas--active-field-overlay 'priority yas-overlay-priority) + (overlay-put yas--active-field-overlay 'face 'yas-field-highlight-face) + (overlay-put yas--active-field-overlay 'yas--snippet snippet) + (overlay-put yas--active-field-overlay 'modification-hooks '(yas--on-field-overlay-modification)) + (overlay-put yas--active-field-overlay 'insert-in-front-hooks + '(yas--on-field-overlay-modification)) + (overlay-put yas--active-field-overlay 'insert-behind-hooks + '(yas--on-field-overlay-modification)))) + +(defun yas--skip-and-clear-field-p (field beg _end length) + "Tell if newly modified FIELD should be cleared and skipped. +BEG, END and LENGTH like overlay modification hooks." + (and (= length 0) ; A 0 pre-change length indicates insertion. + (= beg (yas--field-start field)) ; Insertion at field start? + (not (yas--field-modified-p field)))) + +(defun yas--on-field-overlay-modification (overlay after? beg end &optional length) + "Clears the field and updates mirrors, conditionally. + +Only clears the field if it hasn't been modified and point is at +field start. This hook does nothing if an undo is in progress." + (unless (or (not after?) + yas--inhibit-overlay-hooks + (not (overlayp yas--active-field-overlay)) ; Avoid Emacs bug #21824. + ;; If a single change hits multiple overlays of the same + ;; snippet, then we delete the snippet the first time, + ;; and then subsequent calls get a deleted overlay. + ;; Don't delete the snippet again! + (not (overlay-buffer overlay)) + (yas--undo-in-progress)) + (let* ((inhibit-modification-hooks nil) + (yas--inhibit-overlay-hooks t) + (field (overlay-get overlay 'yas--field)) + (snippet (overlay-get yas--active-field-overlay 'yas--snippet))) + (if (yas--snippet-live-p snippet) + (save-match-data + (yas--letenv (yas--snippet-expand-env snippet) + (when (yas--skip-and-clear-field-p field beg end length) + ;; We delete text starting from the END of insertion. + (yas--skip-and-clear field end)) + (setf (yas--field-modified-p field) t) + (yas--advance-end-maybe field (overlay-end overlay)) + (save-excursion + (yas--field-update-display field)) + (yas--update-mirrors snippet))) + (lwarn '(yasnippet zombie) :warning "Killing zombie snippet!") + (delete-overlay overlay))))) + +(defun yas--auto-fill () + (let* ((orig-point (point)) + (end (progn (forward-paragraph) (point))) + (beg (progn (backward-paragraph) (point))) + (snippets (yas-active-snippets beg end)) + (remarkers nil) + (reoverlays nil)) + (dolist (snippet snippets) + (dolist (m (yas--collect-snippet-markers snippet)) + (when (and (<= beg m) (<= m end)) + (push (yas--snapshot-marker-location m beg end) remarkers))) + (push (yas--snapshot-overlay-location + (yas--snippet-control-overlay snippet) beg end) + reoverlays)) + (goto-char orig-point) + (let ((yas--inhibit-overlay-hooks t)) + (funcall yas--original-auto-fill-function)) + (save-excursion + (setq end (progn (forward-paragraph) (point))) + (setq beg (progn (backward-paragraph) (point)))) + (save-excursion + (save-restriction + (narrow-to-region beg end) + (mapc #'yas--restore-marker-location remarkers) + (mapc #'yas--restore-overlay-location reoverlays)) + (mapc (lambda (snippet) + (yas--letenv (yas--snippet-expand-env snippet) + (yas--update-mirrors snippet))) + snippets)))) + + +;;; Apropos protection overlays: +;; +;; These exist for nasty users who will try to delete parts of the +;; snippet outside the active field. Actual protection happens in +;; `yas--on-protection-overlay-modification'. +;; +;; As of github #537 this no longer inhibits the command by issuing an +;; error: all the snippets at point, including nested snippets, are +;; automatically commited and the current command can proceed. +;; +(defun yas--make-move-field-protection-overlays (snippet field) + "Place protection overlays surrounding SNIPPET's FIELD. + +Move the overlays, or create them if they do not exit." + (let ((start (yas--field-start field)) + (end (yas--field-end field))) + ;; First check if the (1+ end) is contained in the buffer, + ;; otherwise we'll have to do a bit of cheating and silently + ;; insert a newline. the `(1+ (buffer-size))' should prevent this + ;; when using stacked expansion + ;; + (when (< (buffer-size) end) + (save-excursion + (let ((yas--inhibit-overlay-hooks t)) + (goto-char (point-max)) + (newline)))) + ;; go on to normal overlay creation/moving + ;; + (cond ((and yas--field-protection-overlays + (cl-every #'overlay-buffer yas--field-protection-overlays)) + (move-overlay (nth 0 yas--field-protection-overlays) + (1- start) start) + (move-overlay (nth 1 yas--field-protection-overlays) end (1+ end))) + (t + (setq yas--field-protection-overlays + (list (make-overlay (1- start) start nil t nil) + (make-overlay end (1+ end) nil t nil))) + (dolist (ov yas--field-protection-overlays) + (overlay-put ov 'face 'yas--field-debug-face) + (overlay-put ov 'yas--snippet snippet) + ;; (overlay-put ov 'evaporate t) + (overlay-put ov 'modification-hooks '(yas--on-protection-overlay-modification))))))) + +(defun yas--on-protection-overlay-modification (_overlay after? beg end &optional length) + "Commit the snippet if the protection overlay is being killed." + (unless (or yas--inhibit-overlay-hooks + (not after?) + (= length (- end beg)) ; deletion or insertion + (yas--undo-in-progress)) + (let ((snippets (yas-active-snippets))) + (yas--message 2 "Committing snippets. Action would destroy a protection overlay.") + (cl-loop for snippet in snippets + do (yas--commit-snippet snippet))))) + +(add-to-list 'debug-ignored-errors "^Exit the snippet first!$") + + +;;; Snippet expansion and "stacked" expansion: +;; +;; Stacked expansion is when you try to expand a snippet when already +;; inside a snippet expansion. +;; +;; The parent snippet does not run its fields modification hooks +;; (`yas--on-field-overlay-modification' and +;; `yas--on-protection-overlay-modification') while the child snippet +;; is active. This means, among other things, that the mirrors of the +;; parent snippet are not updated, this only happening when one exits +;; the child snippet. +;; +;; Unfortunately, this also puts some ugly (and not fully-tested) +;; bits of code in `yas-expand-snippet' and +;; `yas--commit-snippet'. I've tried to mark them with "stacked +;; expansion:". +;; +;; This was thought to be safer in an undo/redo perspective, but +;; maybe the correct implementation is to make the globals +;; `yas--active-field-overlay' and `yas--field-protection-overlays' be +;; snippet-local and be active even while the child snippet is +;; running. This would mean a lot of overlay modification hooks +;; running, but if managed correctly (including overlay priorities) +;; they should account for all situations... + +(defvar yas--first-indent-undo nil + "Internal variable for indent undo entries. +Used to pass info from `yas--indent-region' to `yas-expand-snippet'.") +(defvar yas--get-indent-undo-pos nil + "Record undo info for line beginning at given position. +We bind this when first creating a snippet. See also +`yas--first-indent-undo'.") + +(defun yas-expand-snippet (content &optional start end expand-env) + "Expand snippet CONTENT at current point. + +Text between START and END will be deleted before inserting +template. EXPAND-ENV is a list of (SYM VALUE) let-style dynamic bindings +considered when expanding the snippet." + (cl-assert (and yas-minor-mode + (memq 'yas--post-command-handler post-command-hook)) + nil + "[yas] `yas-expand-snippet' needs properly setup `yas-minor-mode'") + (run-hooks 'yas-before-expand-snippet-hook) + + ;; + (let* ((yas-selected-text (or yas-selected-text + (and (region-active-p) + (buffer-substring-no-properties (region-beginning) + (region-end))))) + (start (or start + (and (region-active-p) + (region-beginning)) + (point))) + (end (or end + (and (region-active-p) + (region-end)) + (point))) + (to-delete (and start + end + (buffer-substring-no-properties start end))) + (yas--first-indent-undo nil) + snippet) + (goto-char start) + (setq yas--indent-original-column (current-column)) + ;; Delete the region to delete, this *does* get undo-recorded. + ;; + (when (and to-delete + (> end start)) + (delete-region start end)) + + (cond ((listp content) + ;; x) This is a snippet-command + ;; + (yas--eval-for-effect content)) + (t + ;; x) This is a snippet-snippet :-) + ;; + ;; Narrow the region down to the content, shoosh the + ;; `buffer-undo-list', and create the snippet, the new + ;; snippet updates its mirrors once, so we are left with + ;; some plain text. The undo action for deleting this + ;; plain text will get recorded at the end. + ;; + ;; stacked expansion: also shoosh the overlay modification hooks + (let ((buffer-undo-list t) + (yas--get-indent-undo-pos (line-beginning-position))) + ;; snippet creation might evaluate users elisp, which + ;; might generate errors, so we have to be ready to catch + ;; them mostly to make the undo information + ;; + (setq yas--start-column (current-column)) + (let ((yas--inhibit-overlay-hooks t)) + (insert content) + (setq snippet + (yas--snippet-create expand-env start (point))))) + + ;; stacked-expansion: This checks for stacked expansion, save the + ;; `yas--previous-active-field' and advance its boundary. + ;; + (let ((existing-field (and yas--active-field-overlay + (overlay-buffer yas--active-field-overlay) + (overlay-get yas--active-field-overlay 'yas--field)))) + (when existing-field + (setf (yas--snippet-previous-active-field snippet) existing-field) + (yas--advance-end-maybe existing-field (overlay-end yas--active-field-overlay)))) + + ;; Exit the snippet immediately if no fields + ;; + (unless (yas--snippet-fields snippet) + (yas-exit-snippet snippet)) + + ;; Undo actions from indent of snippet's 1st line. + (setq buffer-undo-list + (nconc yas--first-indent-undo buffer-undo-list)) + ;; Undo action for the expand snippet contents. + (push (cons (overlay-start (yas--snippet-control-overlay snippet)) + (overlay-end (yas--snippet-control-overlay snippet))) + buffer-undo-list) + ;; Follow up with `yas--take-care-of-redo' on the newly + ;; inserted snippet boundaries. + (push `(apply yas--take-care-of-redo ,start + ,(overlay-end (yas--snippet-control-overlay snippet)) + ,snippet) + buffer-undo-list) + + ;; Now, schedule a move to the first field + ;; + (let ((first-field (car (yas--snippet-fields snippet)))) + (when first-field + (sit-for 0) ;; fix issue 125 + (yas--letenv (yas--snippet-expand-env snippet) + (yas--move-to-field snippet first-field)) + (when (and (eq (yas--field-number first-field) 0) + (> (length (yas--field-text-for-display + first-field)) + 0)) + ;; Keep region for ${0:exit text}. + (setq deactivate-mark nil)))) + (yas--message 4 "snippet %d expanded." (yas--snippet-id snippet)) + t)))) + +(defun yas--take-care-of-redo (_beg _end snippet) + "Commits SNIPPET, which in turn pushes an undo action for reviving it. + +Meant to exit in the `buffer-undo-list'." + ;; slightly optimize: this action is only needed for snippets with + ;; at least one field + (when (yas--snippet-fields snippet) + (yas--commit-snippet snippet))) + +(defun yas--snippet-revive (beg end snippet) + "Revives SNIPPET and creates a control overlay from BEG to END. + +BEG and END are, we hope, the original snippets boundaries. +All the markers/points exiting existing inside SNIPPET should point +to their correct locations *at the time the snippet is revived*. + +After revival, push the `yas--take-care-of-redo' in the +`buffer-undo-list'" + ;; Reconvert all the points to markers + (yas--points-to-markers snippet) + ;; When at least one editable field existed in the zombie snippet, + ;; try to revive the whole thing... + (when (yas--maybe-move-to-active-field snippet) + (setf (yas--snippet-control-overlay snippet) (yas--make-control-overlay snippet beg end)) + (overlay-put (yas--snippet-control-overlay snippet) 'yas--snippet snippet) + (push `(apply yas--take-care-of-redo ,beg ,end ,snippet) + buffer-undo-list))) + +(defun yas--snippet-create (expand-env begin end) + "Create a snippet from a template inserted at BEGIN to END. + +Returns the newly created snippet." + (save-restriction + (narrow-to-region begin end) + (let ((snippet (yas--make-snippet expand-env))) + (yas--letenv expand-env + (goto-char begin) + (yas--snippet-parse-create snippet) + + ;; Sort and link each field + (yas--snippet-sort-fields snippet) + + ;; Create keymap overlay for snippet + (setf (yas--snippet-control-overlay snippet) + (yas--make-control-overlay snippet (point-min) (point-max))) + + ;; Move to end + (goto-char (point-max)) + + snippet)))) + + +;;; Apropos adjacencies and "fom's": +;; +;; Once the $-constructs bits like "$n" and "${:n" are deleted in the +;; recently expanded snippet, we might actually have many fields, +;; mirrors (and the snippet exit) in the very same position in the +;; buffer. Therefore we need to single-link the +;; fields-or-mirrors-or-exit (which I have abbreviated to "fom") +;; according to their original positions in the buffer. +;; +;; Then we have operation `yas--advance-end-maybe' and +;; `yas--advance-start-maybe', which conditionally push the starts and +;; ends of these foms down the chain. +;; +;; This allows for like the printf with the magic ",": +;; +;; printf ("${1:%s}\\n"${1:$(if (string-match "%" text) "," "\);")} \ +;; $2${1:$(if (string-match "%" text) "\);" "")}$0 +;; +(defun yas--fom-start (fom) + (cond ((yas--field-p fom) + (yas--field-start fom)) + ((yas--mirror-p fom) + (yas--mirror-start fom)) + (t + (yas--exit-marker fom)))) + +(defun yas--fom-end (fom) + (cond ((yas--field-p fom) + (yas--field-end fom)) + ((yas--mirror-p fom) + (yas--mirror-end fom)) + (t + (yas--exit-marker fom)))) + +(defun yas--fom-next (fom) + (cond ((yas--field-p fom) + (yas--field-next fom)) + ((yas--mirror-p fom) + (yas--mirror-next fom)) + (t + (yas--exit-next fom)))) + +(defun yas--fom-parent-field (fom) + (cond ((yas--field-p fom) + (yas--field-parent-field fom)) + ((yas--mirror-p fom) + (yas--mirror-parent-field fom)) + (t + nil))) + +(defun yas--calculate-adjacencies (snippet) + "Calculate adjacencies for fields or mirrors of SNIPPET. + +This is according to their relative positions in the buffer, and +has to be called before the $-constructs are deleted." + (let* ((fom-set-next-fom + (lambda (fom nextfom) + (cond ((yas--field-p fom) + (setf (yas--field-next fom) nextfom)) + ((yas--mirror-p fom) + (setf (yas--mirror-next fom) nextfom)) + (t + (setf (yas--exit-next fom) nextfom))))) + (compare-fom-begs + (lambda (fom1 fom2) + (if (= (yas--fom-start fom2) (yas--fom-start fom1)) + (yas--mirror-p fom2) + (>= (yas--fom-start fom2) (yas--fom-start fom1))))) + (link-foms fom-set-next-fom)) + ;; make some yas--field, yas--mirror and yas--exit soup + (let ((soup)) + (when (yas--snippet-exit snippet) + (push (yas--snippet-exit snippet) soup)) + (dolist (field (yas--snippet-fields snippet)) + (push field soup) + (dolist (mirror (yas--field-mirrors field)) + (push mirror soup))) + (setq soup + (sort soup compare-fom-begs)) + (when soup + (cl-reduce link-foms soup))))) + +(defun yas--calculate-mirrors-in-fields (snippet mirror) + "Attempt to assign a parent field of SNIPPET to the mirror MIRROR. + +Use the tightest containing field if more than one field contains +the mirror. Intended to be called *before* the dollar-regions are +deleted." + (let ((min (point-min)) + (max (point-max))) + (dolist (field (yas--snippet-fields snippet)) + (when (and (<= (yas--field-start field) (yas--mirror-start mirror)) + (<= (yas--mirror-end mirror) (yas--field-end field)) + (< min (yas--field-start field)) + (< (yas--field-end field) max)) + (setq min (yas--field-start field) + max (yas--field-end field)) + (setf (yas--mirror-parent-field mirror) field))))) + +(defun yas--advance-end-maybe (fom newend) + "Maybe advance FOM's end to NEWEND if it needs it. + +If it does, also: + +* call `yas--advance-start-maybe' on FOM's next fom. + +* in case FOM is field call `yas--advance-end-maybe' on its parent + field + +Also, if FOM is an exit-marker, always call +`yas--advance-start-maybe' on its next fom. This is because +exit-marker have identical start and end markers." + (cond ((and fom (< (yas--fom-end fom) newend)) + (set-marker (yas--fom-end fom) newend) + (yas--advance-start-maybe (yas--fom-next fom) newend) + (yas--advance-end-of-parents-maybe (yas--fom-parent-field fom) newend)) + ((yas--exit-p fom) + (yas--advance-start-maybe (yas--fom-next fom) newend)))) + +(defun yas--advance-start-maybe (fom newstart) + "Maybe advance FOM's start to NEWSTART if it needs it. + +If it does, also call `yas--advance-end-maybe' on FOM." + (when (and fom (< (yas--fom-start fom) newstart)) + (set-marker (yas--fom-start fom) newstart) + (yas--advance-end-maybe fom newstart))) + +(defun yas--advance-end-of-parents-maybe (field newend) + "Like `yas--advance-end-maybe' but for parent fields. + +Only works for fields and doesn't care about the start of the +next FOM. Works its way up recursively for parents of parents." + (when (and field + (< (yas--field-end field) newend)) + (set-marker (yas--field-end field) newend) + (yas--advance-end-of-parents-maybe (yas--field-parent-field field) newend))) + +(defvar yas--dollar-regions nil + "When expanding the snippet the \"parse-create\" functions add +cons cells to this var.") + +(defvar yas--backquote-markers-and-strings nil + "List of (MARKER . STRING) marking where the values from +backquoted Lisp expressions should be inserted at the end of +expansion.") + +(defvar yas--indent-markers nil + "List of markers for manual indentation.") + +(defun yas--snippet-parse-create (snippet) + "Parse a recently inserted snippet template, creating all +necessary fields, mirrors and exit points. + +Meant to be called in a narrowed buffer, does various passes" + (let ((parse-start (point))) + ;; Avoid major-mode's syntax propertizing function, since we + ;; change the syntax-table while calling `scan-sexps'. + (let ((syntax-propertize-function nil)) + (setq yas--dollar-regions nil) ; Reset the yas--dollar-regions. + (yas--protect-escapes nil '(?`)) ; Protect just the backquotes. + (goto-char parse-start) + (yas--save-backquotes) ; Replace all backquoted expressions. + (yas--protect-escapes) ; Protect escaped characters. + (goto-char parse-start) + (yas--indent-parse-create) ; Parse indent markers: `$>'. + (goto-char parse-start) + (yas--field-parse-create snippet) ; Parse fields with {}. + (goto-char parse-start) + (yas--simple-mirror-parse-create snippet) ; Parse simple mirrors & fields. + (goto-char parse-start) + (yas--transform-mirror-parse-create snippet) ; Parse mirror transforms. + ;; Invalidate any syntax-propertizing done while + ;; `syntax-propertize-function' was nil. + (syntax-ppss-flush-cache parse-start)) + ;; Set "next" links of fields & mirrors. + (yas--calculate-adjacencies snippet) + (save-restriction + (widen) ; Delete $-constructs. + (yas--delete-regions yas--dollar-regions)) + ;; Make sure to do this insertion *after* deleting the dollar + ;; regions, otherwise we invalidate the calculated positions of + ;; all the fields following $0. + (let ((exit (yas--snippet-exit snippet))) + (goto-char (if exit (yas--exit-marker exit) (point-max)))) + (when (eq yas-wrap-around-region 'cua) + (setq yas-wrap-around-region ?0)) + (cond ((and yas-wrap-around-region yas-selected-text) + (insert yas-selected-text)) + ((and (characterp yas-wrap-around-region) + (get-register yas-wrap-around-region)) + (insert (prog1 (get-register yas-wrap-around-region) + (set-register yas-wrap-around-region nil))))) + (yas--restore-backquotes) ; Restore backquoted expression values. + (goto-char parse-start) + (yas--restore-escapes) ; Restore escapes. + (yas--update-mirrors snippet) ; Update mirrors for the first time. + (goto-char parse-start)) + (yas--indent snippet)) ; Indent the best we can. + +;; HACK: Some implementations of `indent-line-function' (called via +;; `indent-according-to-mode') delete text before they insert (like +;; cc-mode), some make complicated regexp replacements (looking at +;; you, org-mode). To find place where the marker "should" go after +;; indentation, we create a regexp based on what the line looks like +;; before, putting a capture group where the marker is. The regexp +;; matches any whitespace with [[:space:]]* to allow for the +;; indentation changing whitespace. Additionally, we try to preserve +;; the amount of whitespace *following* the marker, because +;; indentation generally affects whitespace at the beginning, not the +;; end. +;; +;; Two other cases where we apply a similar strategy: +;; +;; 1. Handling `auto-fill-mode', in this case we need to use the +;; current paragraph instead of line. +;; +;; 2. Moving snippets from an `org-src' temp buffer into the main org +;; buffer, in this case we need to count the line offsets (because org +;; may add indentation on each line making character positions +;; unreliable). +;; +;; This is all best-effort heuristic stuff, but it should cover 99% of +;; use-cases. + +(defun yas--snapshot-marker-location (marker &optional beg end) + "Returns info for restoring MARKER's location after indent. +The returned value is a list of the form (MARKER REGEXP WS-COUNT)." + (unless beg (setq beg (line-beginning-position))) + (unless end (setq end (line-end-position))) + (let ((before (split-string (buffer-substring-no-properties beg marker) + "[[:space:]\n]+" t)) + (after (split-string (buffer-substring-no-properties marker end) + "[[:space:]\n]+" t))) + (list marker + (concat "[[:space:]\n]*" + (mapconcat (lambda (s) + (if (eq s marker) "\\(\\)" + (regexp-quote s))) + (nconc before (list marker) after) + "[[:space:]\n]*")) + (progn (goto-char marker) + (skip-chars-forward "[:space:]\n" end) + (- (point) marker))))) + +(defun yas--snapshot-overlay-location (overlay beg end) + "Like `yas--snapshot-marker-location' for overlays. +The returned format is (OVERLAY (RE WS) (RE WS)). Either of +the (RE WS) lists may be nil if the start or end, respectively, +of the overlay is outside the range BEG .. END." + (let ((obeg (overlay-start overlay)) + (oend (overlay-end overlay))) + (list overlay + (when (and (<= beg obeg) (< obeg end)) + (cdr (yas--snapshot-marker-location obeg beg end))) + (when (and (<= beg oend) (< oend end)) + (cdr (yas--snapshot-marker-location oend beg end)))))) + +(defun yas--snapshot-overlay-line-location (overlay) + "Return info for restoring OVERLAY's line based location. +The returned format is (OVERLAY (LINE RE WS) (LINE RE WS))." + (let ((loc-beg (progn (goto-char (overlay-start overlay)) + (yas--snapshot-marker-location (point)))) + (loc-end (progn (goto-char (overlay-end overlay)) + (yas--snapshot-marker-location (point))))) + (setcar loc-beg (count-lines (point-min) (progn (goto-char (car loc-beg)) + (line-beginning-position)))) + (setcar loc-end (count-lines (point-min) (progn (goto-char (car loc-end)) + (line-beginning-position)))) + (list overlay loc-beg loc-end))) + +(defun yas--goto-saved-location (regexp ws-count) + "Move point to location saved by `yas--snapshot-marker-location'. +Buffer must be narrowed to BEG..END used to create the snapshot info." + (goto-char (point-min)) + (if (not (looking-at regexp)) + (lwarn '(yasnippet re-marker) :warning + "Couldn't find: %S" regexp) + (goto-char (match-beginning 1)) + (skip-chars-forward "[:space:]\n") + (skip-chars-backward "[:space:]\n" (- (point) ws-count)))) + +(defun yas--restore-marker-location (re-marker) + "Restores marker based on info from `yas--snapshot-marker-location'. +Buffer must be narrowed to BEG..END used to create the snapshot info." + (apply #'yas--goto-saved-location (cdr re-marker)) + (set-marker (car re-marker) (point))) + +(defun yas--restore-overlay-location (ov-locations) + "Restores marker based on info from `yas--snapshot-marker-location'. +Buffer must be narrowed to BEG..END used to create the snapshot info." + (cl-destructuring-bind (overlay loc-beg loc-end) ov-locations + (move-overlay overlay + (if (not loc-beg) (overlay-start overlay) + (apply #'yas--goto-saved-location loc-beg) + (point)) + (if (not loc-end) (overlay-end overlay) + (apply #'yas--goto-saved-location loc-end) + (point))))) + + +(defun yas--restore-overlay-line-location (ov-locations) + "Restores overlay based on info from `yas--snapshot-overlay-line-location'." + (save-restriction + (move-overlay (car ov-locations) + (save-excursion + (forward-line (car (nth 1 ov-locations))) + (narrow-to-region (line-beginning-position) (line-end-position)) + (apply #'yas--goto-saved-location (cdr (nth 1 ov-locations))) + (point)) + (save-excursion + (forward-line (car (nth 2 ov-locations))) + (narrow-to-region (line-beginning-position) (line-end-position)) + (apply #'yas--goto-saved-location (cdr (nth 2 ov-locations))) + (point))))) + +(defun yas--indent-region (from to snippet) + "Indent the lines between FROM and TO with `indent-according-to-mode'. +The SNIPPET's markers are preserved." + (save-excursion + (save-restriction + (widen) + (let* ((snippet-markers (yas--collect-snippet-markers snippet)) + (to (set-marker (make-marker) to))) + (goto-char from) + (cl-loop for bol = (line-beginning-position) + for eol = (line-end-position) + if (or yas-also-indent-empty-lines + (/= bol eol)) + do + ;; Indent each non-empty line. + (let ((remarkers nil)) + (dolist (m snippet-markers) + (when (and (<= bol m) (<= m eol)) + (push (yas--snapshot-marker-location m bol eol) + remarkers))) + (unwind-protect + (progn (back-to-indentation) + (if (eq yas--get-indent-undo-pos bol) + (let ((buffer-undo-list nil)) + (indent-according-to-mode) + (setq yas--first-indent-undo + (delq nil buffer-undo-list))) + (indent-according-to-mode))) + (save-restriction + (narrow-to-region bol (line-end-position)) + (mapc #'yas--restore-marker-location remarkers)))) + while (and (zerop (forward-line 1)) + (< (point) to))))))) + +(defvar yas--indent-original-column nil) +(defun yas--indent (snippet) + ;; Indent lines that had indent markers (`$>') on them. + (save-excursion + (dolist (marker yas--indent-markers) + (unless (eq yas-indent-line 'auto) + (goto-char marker) + (yas--indent-region (line-beginning-position) + (line-end-position) + snippet)) + ;; Finished with this marker. + (set-marker marker nil)) + (setq yas--indent-markers nil)) + ;; Now do stuff for `fixed' and `auto'. + (save-excursion + (cond ((eq yas-indent-line 'fixed) + (while (and (zerop (forward-line)) + (zerop (current-column))) + (indent-to-column yas--indent-original-column))) + ((eq yas-indent-line 'auto) + (unless yas-also-auto-indent-first-line + (forward-line 1)) + (yas--indent-region (line-beginning-position) + (point-max) + snippet))))) + +(defun yas--collect-snippet-markers (snippet) + "Make a list of all the markers used by SNIPPET." + (let (markers) + (yas--snippet-map-markers (lambda (m) (push m markers) m) snippet) + markers)) + +(defun yas--escape-string (escaped) + (concat "YASESCAPE" (format "%d" escaped) "PROTECTGUARD")) + +(defun yas--protect-escapes (&optional text escaped) + "Protect all escaped characters with their numeric ASCII value. + +With optional string TEXT do it in string instead of buffer." + (let ((changed-text text) + (text-provided-p text)) + (mapc #'(lambda (escaped) + (setq changed-text + (yas--replace-all (concat "\\" (char-to-string escaped)) + (yas--escape-string escaped) + (when text-provided-p changed-text)))) + (or escaped yas--escaped-characters)) + changed-text)) + +(defun yas--restore-escapes (&optional text escaped) + "Restore all escaped characters from their numeric ASCII value. + +With optional string TEXT do it in string instead of the buffer." + (let ((changed-text text) + (text-provided-p text)) + (mapc #'(lambda (escaped) + (setq changed-text + (yas--replace-all (yas--escape-string escaped) + (char-to-string escaped) + (when text-provided-p changed-text)))) + (or escaped yas--escaped-characters)) + changed-text)) + +(defun yas--save-backquotes () + "Save all the \"\\=`(lisp-expression)\\=`\"-style expressions +with their evaluated value into `yas--backquote-markers-and-strings'." + (let* ((yas--snippet-buffer (current-buffer)) + (yas--change-detected nil) + (detect-change (lambda (_beg _end) + (when (eq (current-buffer) yas--snippet-buffer) + (setq yas--change-detected t))))) + (while (re-search-forward yas--backquote-lisp-expression-regexp nil t) + (let ((current-string (match-string-no-properties 1)) transformed) + (save-restriction (widen) + (delete-region (match-beginning 0) (match-end 0))) + (let ((before-change-functions + (cons detect-change before-change-functions))) + (setq transformed (yas--eval-for-string (yas--read-lisp + (yas--restore-escapes + current-string '(?`)))))) + (goto-char (match-beginning 0)) + (when transformed + (let ((marker (make-marker)) + (before-change-functions (cdr before-change-functions))) + (save-restriction + (widen) + (insert "Y") ;; quite horrendous, I love it :) + (set-marker marker (point)) + (insert "Y")) + (push (cons marker transformed) yas--backquote-markers-and-strings))))) + (when yas--change-detected + (lwarn '(yasnippet backquote-change) :warning + "`%s' modified buffer in a backquote expression. + To hide this warning, add (yasnippet backquote-change) to `warning-suppress-types'." + (if yas--current-template + (yas--template-name yas--current-template) + "Snippet"))))) + +(defun yas--restore-backquotes () + "Replace markers in `yas--backquote-markers-and-strings' with their values." + (while yas--backquote-markers-and-strings + (let* ((marker-and-string (pop yas--backquote-markers-and-strings)) + (marker (car marker-and-string)) + (string (cdr marker-and-string))) + (save-excursion + (goto-char marker) + (save-restriction + (widen) + (delete-char -1) + (insert string) + (delete-char 1)) + (set-marker marker nil))))) + +(defun yas--scan-sexps (from count) + (ignore-errors + (save-match-data ; `scan-sexps' may modify match data. + (with-syntax-table (standard-syntax-table) + (let ((parse-sexp-lookup-properties nil)) + (scan-sexps from count)))))) + +(defun yas--make-marker (pos) + "Create a marker at POS with nil `marker-insertion-type'." + (let ((marker (set-marker (make-marker) pos))) + (set-marker-insertion-type marker nil) + marker)) + +(defun yas--indent-parse-create () + "Parse the \"$>\" indentation markers just inserted." + (setq yas--indent-markers ()) + (while (search-forward "$>" nil t) + (delete-region (match-beginning 0) (match-end 0)) + ;; Mark the beginning of the line. + (push (yas--make-marker (line-beginning-position)) + yas--indent-markers)) + (setq yas--indent-markers (nreverse yas--indent-markers))) + +(defun yas--field-parse-create (snippet &optional parent-field) + "Parse most field expressions in SNIPPET, except for the simple one \"$n\". + +The following count as a field: + +* \"${n: text}\", for a numbered field with default text, as long as N is not 0; + +* \"${n: text$(expression)}, the same with a Lisp expression; + this is caught with the curiously named `yas--multi-dollar-lisp-expression-regexp' + +* the same as above but unnumbered, (no N:) and number is calculated automatically. + +When multiple expressions are found, only the last one counts." + ;; + (save-excursion + (while (re-search-forward yas--field-regexp nil t) + (let* ((real-match-end-0 (yas--scan-sexps (1+ (match-beginning 0)) 1)) + (number (and (match-string-no-properties 1) + (string-to-number (match-string-no-properties 1)))) + (brand-new-field (and real-match-end-0 + ;; break if on "$(" immediately + ;; after the ":", this will be + ;; caught as a mirror with + ;; transform later. + (not (string-match-p "\\`\\$[ \t\n]*(" + (match-string-no-properties 2))) + ;; allow ${0: some exit text} + ;; (not (and number (zerop number))) + (yas--make-field number + (yas--make-marker (match-beginning 2)) + (yas--make-marker (1- real-match-end-0)) + parent-field)))) + (when brand-new-field + (goto-char real-match-end-0) + (push (cons (1- real-match-end-0) real-match-end-0) + yas--dollar-regions) + (push (cons (match-beginning 0) (match-beginning 2)) + yas--dollar-regions) + (push brand-new-field (yas--snippet-fields snippet)) + (save-excursion + (save-restriction + (narrow-to-region (yas--field-start brand-new-field) (yas--field-end brand-new-field)) + (goto-char (point-min)) + (yas--field-parse-create snippet brand-new-field))))))) + ;; if we entered from a parent field, now search for the + ;; `yas--multi-dollar-lisp-expression-regexp'. This is used for + ;; primary field transformations + ;; + (when parent-field + (save-excursion + (while (re-search-forward yas--multi-dollar-lisp-expression-regexp nil t) + (let* ((real-match-end-1 (yas--scan-sexps (match-beginning 1) 1))) + ;; commit the primary field transformation if: + ;; + ;; 1. we don't find it in yas--dollar-regions (a subnested + ;; field) might have already caught it. + ;; + ;; 2. we really make sure we have either two '$' or some + ;; text and a '$' after the colon ':'. This is a FIXME: work + ;; my regular expressions and end these ugly hacks. + ;; + (when (and real-match-end-1 + (not (member (cons (match-beginning 0) + real-match-end-1) + yas--dollar-regions)) + (not (eq ?: + (char-before (1- (match-beginning 1)))))) + (let ((lisp-expression-string (buffer-substring-no-properties (match-beginning 1) + real-match-end-1))) + (setf (yas--field-transform parent-field) + (yas--read-lisp (yas--restore-escapes lisp-expression-string)))) + (push (cons (match-beginning 0) real-match-end-1) + yas--dollar-regions))))))) + +(defun yas--transform-mirror-parse-create (snippet) + "Parse the \"${n:$(lisp-expression)}\" mirror transformations in SNIPPET." + (while (re-search-forward yas--transform-mirror-regexp nil t) + (let* ((real-match-end-0 (yas--scan-sexps (1+ (match-beginning 0)) 1)) + (number (string-to-number (match-string-no-properties 1))) + (field (and number + (not (zerop number)) + (yas--snippet-find-field snippet number))) + (brand-new-mirror + (and real-match-end-0 + field + (yas--make-mirror (yas--make-marker (match-beginning 0)) + (yas--make-marker (match-beginning 0)) + (yas--read-lisp + (yas--restore-escapes + (buffer-substring-no-properties (match-beginning 2) + (1- real-match-end-0)))))))) + (when brand-new-mirror + (push brand-new-mirror + (yas--field-mirrors field)) + (yas--calculate-mirrors-in-fields snippet brand-new-mirror) + (push (cons (match-beginning 0) real-match-end-0) yas--dollar-regions))))) + +(defun yas--simple-mirror-parse-create (snippet) + "Parse the simple \"$n\" fields/mirrors/exitmarkers in SNIPPET." + (while (re-search-forward yas--simple-mirror-regexp nil t) + (let ((number (string-to-number (match-string-no-properties 1)))) + (cond ((zerop number) + (setf (yas--snippet-exit snippet) + (yas--make-exit (yas--make-marker (match-end 0)))) + (push (cons (match-beginning 0) (yas--exit-marker (yas--snippet-exit snippet))) + yas--dollar-regions)) + (t + (let ((field (yas--snippet-find-field snippet number))) + (if field + (let ((brand-new-mirror (yas--make-mirror + (yas--make-marker (match-beginning 0)) + (yas--make-marker (match-beginning 0)) + nil))) + (push brand-new-mirror + (yas--field-mirrors field)) + (yas--calculate-mirrors-in-fields snippet brand-new-mirror)) + (push (yas--make-field number + (yas--make-marker (match-beginning 0)) + (yas--make-marker (match-beginning 0)) + nil) + (yas--snippet-fields snippet)))) + (push (cons (match-beginning 0) (match-end 0)) + yas--dollar-regions)))))) + +(defun yas--delete-regions (regions) + "Sort disjuct REGIONS by start point, then delete from the back." + (mapc #'(lambda (reg) + (delete-region (car reg) (cdr reg))) + (sort regions + #'(lambda (r1 r2) + (>= (car r1) (car r2)))))) + +(defun yas--calculate-mirror-depth (mirror &optional traversed) + (let* ((parent (yas--mirror-parent-field mirror)) + (parents-mirrors (and parent + (yas--field-mirrors parent)))) + (or (yas--mirror-depth mirror) + (setf (yas--mirror-depth mirror) + (cond ((memq mirror traversed) 0) + ((and parent parents-mirrors) + (1+ (cl-reduce + #'max parents-mirrors + :key (lambda (m) + (yas--calculate-mirror-depth + m (cons mirror traversed)))))) + (parent 1) + (t 0)))))) + +(defun yas--update-mirrors (snippet) + "Update all the mirrors of SNIPPET." + (save-restriction + (widen) + (save-excursion + (cl-loop + for (field . mirror) + in (cl-sort + ;; Make a list of (FIELD . MIRROR). + (cl-mapcan (lambda (field) + (mapcar (lambda (mirror) + (cons field mirror)) + (yas--field-mirrors field))) + (yas--snippet-fields snippet)) + ;; Then sort this list so that entries with mirrors with + ;; parent fields appear before. This was important for + ;; fixing #290, and also handles the case where a mirror in + ;; a field causes another mirror to need reupdating. + #'> :key (lambda (fm) (yas--calculate-mirror-depth (cdr fm)))) + ;; Before updating a mirror with a parent-field, maybe advance + ;; its start (#290). + do (let ((parent-field (yas--mirror-parent-field mirror))) + (when parent-field + (yas--advance-start-maybe mirror (yas--fom-start parent-field)))) + ;; Update this mirror. + do (yas--mirror-update-display mirror field) + ;; Delay indenting until we're done all mirrors. We must do + ;; this to avoid losing whitespace between fields that are + ;; still empty (i.e., they will be non-empty after updating). + when (eq yas-indent-line 'auto) + collect (cons (yas--mirror-start mirror) (yas--mirror-end mirror)) + into indent-regions + ;; `yas--place-overlays' is needed since the active field and + ;; protected overlays might have been changed because of insertions + ;; in `yas--mirror-update-display'. + do (let ((active-field (yas--snippet-active-field snippet))) + (when active-field (yas--place-overlays snippet active-field))) + finally do + (let ((yas--inhibit-overlay-hooks t)) + (cl-loop for (beg . end) in (cl-sort indent-regions #'< :key #'car) + do (yas--indent-region beg end snippet))))))) + +(defun yas--mirror-update-display (mirror field) + "Update MIRROR according to FIELD (and mirror transform)." + + (let* ((mirror-parent-field (yas--mirror-parent-field mirror)) + (reflection (and (not (and mirror-parent-field + (yas--field-modified-p mirror-parent-field))) + (or (yas--apply-transform mirror field 'empty-on-nil) + (yas--field-text-for-display field))))) + (when (and reflection + (not (string= reflection (buffer-substring-no-properties (yas--mirror-start mirror) + (yas--mirror-end mirror))))) + (goto-char (yas--mirror-start mirror)) + (let ((yas--inhibit-overlay-hooks t)) + (insert reflection)) + (if (> (yas--mirror-end mirror) (point)) + (delete-region (point) (yas--mirror-end mirror)) + (set-marker (yas--mirror-end mirror) (point)) + (yas--advance-start-maybe (yas--mirror-next mirror) (point)) + ;; super-special advance + (yas--advance-end-of-parents-maybe mirror-parent-field (point)))))) + +(defun yas--field-update-display (field) + "Much like `yas--mirror-update-display', but for fields." + (when (yas--field-transform field) + (let ((transformed (and (not (eq (yas--field-number field) 0)) + (yas--apply-transform field field)))) + (when (and transformed + (not (string= transformed (buffer-substring-no-properties (yas--field-start field) + (yas--field-end field))))) + (setf (yas--field-modified-p field) t) + (goto-char (yas--field-start field)) + (let ((yas--inhibit-overlay-hooks t)) + (insert transformed) + (if (> (yas--field-end field) (point)) + (delete-region (point) (yas--field-end field)) + (set-marker (yas--field-end field) (point)) + (yas--advance-start-maybe (yas--field-next field) (point))) + t))))) + + +;;; Post-command hook: +;; +(defun yas--post-command-handler () + "Handles various yasnippet conditions after each command." + (condition-case err + (progn (yas--finish-moving-snippets) + (cond ((eq 'undo this-command) + ;; + ;; After undo revival the correct field is sometimes not + ;; restored correctly, this condition handles that + ;; + (let* ((snippet (car (yas-active-snippets))) + (target-field + (and snippet + (cl-find-if-not + (lambda (field) + (yas--field-probably-deleted-p snippet field)) + (remq nil + (cons (yas--snippet-active-field snippet) + (yas--snippet-fields snippet))))))) + (when target-field + (yas--move-to-field snippet target-field)))) + ((not (yas--undo-in-progress)) + ;; When not in an undo, check if we must commit the snippet + ;; (user exited it). + (yas--check-commit-snippet)))) + ((debug error) (signal (car err) (cdr err))))) + +;;; Fancy docs: +;; +;; The docstrings for some functions are generated dynamically +;; depending on the context. +;; +(put 'yas-expand 'function-documentation + '(yas--expand-from-trigger-key-doc t)) +(defun yas--expand-from-trigger-key-doc (context) + "A doc synthesizer for `yas--expand-from-trigger-key-doc'." + (let* ((yas-fallback-behavior (and context yas-fallback-behavior)) + (fallback-description + (cond ((eq yas-fallback-behavior 'call-other-command) + (let* ((fallback (yas--keybinding-beyond-yasnippet))) + (or (and fallback + (format "call command `%s'." + (pp-to-string fallback))) + "do nothing (`yas-expand' doesn't override\nanything)."))) + ((eq yas-fallback-behavior 'return-nil) + "do nothing.") + (t "defer to `yas-fallback-behavior' (which see).")))) + (concat "Expand a snippet before point. If no snippet +expansion is possible, " + fallback-description + "\n\nOptional argument FIELD is for non-interactive use and is an +object satisfying `yas--field-p' to restrict the expansion to."))) + +(put 'yas-expand-from-keymap 'function-documentation + '(yas--expand-from-keymap-doc t)) +(defun yas--expand-from-keymap-doc (context) + "A doc synthesizer for `yas--expand-from-keymap-doc'." + (add-hook 'temp-buffer-show-hook #'yas--snippet-description-finish-runonce) + (concat "Expand/run snippets from keymaps, possibly falling back to original binding.\n" + (when (and context (eq this-command 'describe-key)) + (let* ((vec (this-single-command-keys)) + (templates (cl-mapcan (lambda (table) + (yas--fetch table vec)) + (yas--get-snippet-tables))) + (yas--direct-keymaps nil) + (fallback (key-binding vec))) + (concat "In this case, " + (when templates + (concat "these snippets are bound to this key:\n" + (yas--template-pretty-list templates) + "\n\nIf none of these expands, ")) + (or (and fallback + (format "fallback `%s' will be called." (pp-to-string fallback))) + "no fallback keybinding is called.")))))) + +(defun yas--template-pretty-list (templates) + (let ((acc) + (yas-buffer-local-condition 'always)) + (dolist (plate templates) + (setq acc (concat acc "\n*) " + (propertize (concat "\\\\snippet `" (car plate) "'") + 'yasnippet (cdr plate))))) + acc)) + +(define-button-type 'help-snippet-def + :supertype 'help-xref + 'help-function (lambda (template) (yas--visit-snippet-file-1 template)) + 'help-echo (purecopy "mouse-2, RET: find snippets's definition")) + +(defun yas--snippet-description-finish-runonce () + "Final adjustments for the help buffer when snippets are concerned." + (yas--create-snippet-xrefs) + (remove-hook 'temp-buffer-show-hook + #'yas--snippet-description-finish-runonce)) + +(defun yas--create-snippet-xrefs () + (save-excursion + (goto-char (point-min)) + (while (search-forward-regexp "\\\\\\\\snippet[ \s\t]+`\\([^']+\\)'" nil t) + (let ((template (get-text-property (match-beginning 1) + 'yasnippet))) + (when template + (help-xref-button 1 'help-snippet-def template) + (delete-region (match-end 1) (match-end 0)) + (delete-region (match-beginning 0) (match-beginning 1))))))) + +;;; Utils + +(defvar yas-verbosity 3 + "Log level for `yas--message' 4 means trace most anything, 0 means nothing.") + +(defun yas--message (level message &rest args) + "When LEVEL is at or below `yas-verbosity-level', log MESSAGE and ARGS." + (when (>= yas-verbosity level) + (message "%s" (apply #'yas--format message args)))) + +(defun yas--warning (format-control &rest format-args) + (let ((msg (apply #'format format-control format-args))) + (display-warning 'yasnippet msg :warning) + (yas--message 1 msg))) + +(defun yas--format (format-control &rest format-args) + (apply #'format (concat "[yas] " format-control) format-args)) + + +;;; Some hacks: +;; +;; The functions +;; +;; `locate-dominating-file' +;; `region-active-p' +;; +;; added for compatibility in emacsen < 23 +(unless (>= emacs-major-version 23) + (unless (fboundp 'region-active-p) + (defun region-active-p () (and transient-mark-mode mark-active))) + + (unless (fboundp 'locate-dominating-file) + (defvar locate-dominating-stop-dir-regexp + "\\`\\(?:[\\/][\\/][^\\/]+[\\/]\\|/\\(?:net\\|afs\\|\\.\\.\\.\\)/\\)\\'" + "Regexp of directory names which stop the search in `locate-dominating-file'. +Any directory whose name matches this regexp will be treated like +a kind of root directory by `locate-dominating-file' which will stop its search +when it bumps into it. +The default regexp prevents fruitless and time-consuming attempts to find +special files in directories in which filenames are interpreted as hostnames, +or mount points potentially requiring authentication as a different user.") + + (defun locate-dominating-file (file name) + "Look up the directory hierarchy from FILE for a file named NAME. +Stop at the first parent directory containing a file NAME, +and return the directory. Return nil if not found." + ;; We used to use the above locate-dominating-files code, but the + ;; directory-files call is very costly, so we're much better off doing + ;; multiple calls using the code in here. + ;; + ;; Represent /home/luser/foo as ~/foo so that we don't try to look for + ;; `name' in /home or in /. + (setq file (abbreviate-file-name file)) + (let ((root nil) + try) + (while (not (or root + (null file) + ;; FIXME: Disabled this heuristic because it is sometimes + ;; inappropriate. + ;; As a heuristic, we stop looking up the hierarchy of + ;; directories as soon as we find a directory belonging + ;; to another user. This should save us from looking in + ;; things like /net and /afs. This assumes that all the + ;; files inside a project belong to the same user. + ;; (let ((prev-user user)) + ;; (setq user (nth 2 (file-attributes file))) + ;; (and prev-user (not (equal user prev-user)))) + (string-match locate-dominating-stop-dir-regexp file))) + (setq try (file-exists-p (expand-file-name name file))) + (cond (try (setq root file)) + ((equal file (setq file (file-name-directory + (directory-file-name file)))) + (setq file nil)))) + root)))) + + +;;; Backward compatibility to yasnippet <= 0.7 + +(defun yas-initialize () + "For backward compatibility, enable `yas-minor-mode' globally." + (declare (obsolete "Use (yas-global-mode 1) instead." "0.8")) + (yas-global-mode 1)) + +(defvar yas--backported-syms '(;; `defcustom's + ;; + yas-snippet-dirs + yas-prompt-functions + yas-indent-line + yas-also-auto-indent-first-line + yas-snippet-revival + yas-triggers-in-field + yas-fallback-behavior + yas-choose-keys-first + yas-choose-tables-first + yas-use-menu + yas-trigger-symbol + yas-wrap-around-region + yas-good-grace + yas-visit-from-menu + yas-expand-only-for-last-commands + yas-field-highlight-face + + ;; these vars can be customized as well + ;; + yas-keymap + yas-verbosity + yas-extra-modes + yas-key-syntaxes + yas-after-exit-snippet-hook + yas-before-expand-snippet-hook + yas-buffer-local-condition + yas-dont-activate + + ;; prompting functions + ;; + yas-x-prompt + yas-ido-prompt + yas-no-prompt + yas-completing-prompt + yas-dropdown-prompt + + ;; interactive functions + ;; + yas-expand + yas-minor-mode + yas-global-mode + yas-direct-keymaps-reload + yas-minor-mode-on + yas-load-directory + yas-reload-all + yas-compile-directory + yas-recompile-all + yas-about + yas-expand-from-trigger-key + yas-expand-from-keymap + yas-insert-snippet + yas-visit-snippet-file + yas-new-snippet + yas-load-snippet-buffer + yas-tryout-snippet + yas-describe-tables + yas-next-field-or-maybe-expand + yas-next-field + yas-prev-field + yas-abort-snippet + yas-exit-snippet + yas-exit-all-snippets + yas-skip-and-clear-or-delete-char + yas-initialize + + ;; symbols that I "exported" for use + ;; in snippets and hookage + ;; + yas-expand-snippet + yas-define-snippets + yas-define-menu + yas-snippet-beg + yas-snippet-end + yas-modified-p + yas-moving-away-p + yas-substr + yas-choose-value + yas-key-to-value + yas-throw + yas-verify-value + yas-field-value + yas-text + yas-selected-text + yas-default-from-field + yas-inside-string + yas-unimplemented + yas-define-condition-cache + yas-hippie-try-expand + + ;; debug definitions + ;; yas-debug-snippet-vars + ;; yas-exterminate-package + ;; yas-debug-test + + ;; testing definitions + ;; yas-should-expand + ;; yas-should-not-expand + ;; yas-mock-insert + ;; yas-make-file-or-dirs + ;; yas-variables + ;; yas-saving-variables + ;; yas-call-with-snippet-dirs + ;; yas-with-snippet-dirs +) + "Backported yasnippet symbols. + +They are mapped to \"yas/*\" variants.") + +(when yas-alias-to-yas/prefix-p + (dolist (sym yas--backported-syms) + (let ((backported (intern (replace-regexp-in-string "\\`yas-" "yas/" (symbol-name sym))))) + (when (boundp sym) + (make-obsolete-variable backported sym "yasnippet 0.8") + (defvaralias backported sym)) + (when (fboundp sym) + (make-obsolete backported sym "yasnippet 0.8") + (defalias backported sym)))) + (make-obsolete 'yas/root-directory 'yas-snippet-dirs "yasnippet 0.8") + (defvaralias 'yas/root-directory 'yas-snippet-dirs)) + +(defvar yas--exported-syms + (let (exported) + (mapatoms (lambda (atom) + (if (and (or (and (boundp atom) + (not (get atom 'byte-obsolete-variable))) + (and (fboundp atom) + (not (get atom 'byte-obsolete-info)))) + (string-match-p "\\`yas-[^-]" (symbol-name atom))) + (push atom exported)))) + exported) + "Exported yasnippet symbols. + +i.e. the ones with \"yas-\" single dash prefix. I will try to +keep them in future yasnippet versions and other elisp libraries +can more or less safely rely upon them.") + + +(provide 'yasnippet) +;; Local Variables: +;; coding: utf-8 +;; indent-tabs-mode: nil +;; End: +;;; yasnippet.el ends here diff --git a/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet.elc b/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet.elc new file mode 100644 index 0000000..3b0c26f Binary files /dev/null and b/.emacs.d/elpa/yasnippet-20170923.1646/yasnippet.elc differ