From 7ca59eee39ac26744f81c3f1780bd04f40ba65d7 Mon Sep 17 00:00:00 2001 From: Nick Crohn Date: Wed, 9 Apr 2014 11:00:15 -0700 Subject: [PATCH] Updates from my emacs config --- .emacs | 10 +- vendor/js2-mode.el | 11752 ++++++++++++++++++++++++++++++++++++++ vendor/less-css-mode.el | 202 + vendor/thrift-mode.el | 109 + 4 files changed, 12072 insertions(+), 1 deletion(-) create mode 100644 vendor/js2-mode.el create mode 100644 vendor/less-css-mode.el create mode 100644 vendor/thrift-mode.el diff --git a/.emacs b/.emacs index 688a845..72796e1 100644 --- a/.emacs +++ b/.emacs @@ -31,6 +31,12 @@ (autoload 'css-mode "css-mode" "CSS Mode." t) (add-to-list 'auto-mode-alist '("\\.css\\'" . css-mode)) +(autoload 'less-css-mode "less-css-mode" "LESS Mode." t) +(add-to-list 'auto-mode-alist '("\\.less\\'" . less-css-mode)) + +(autoload 'thrift-mode "thrift-mode" "Thrift Mode." t) +(add-to-list 'auto-mode-alist '("\\.thrift\\'" . thrift-mode)) + (autoload 'php-mode "php-mode" "PHP Mode." t) (add-to-list 'auto-mode-alist '("\\.php\\'" . php-mode)) (add-to-list 'auto-mode-alist '("\\.tpl\\'" . php-mode)) @@ -115,4 +121,6 @@ " \n" "") -(define-auto-insert "\\.html\\'" 'xhtml1t-throwaway) \ No newline at end of file +(define-auto-insert "\\.html\\'" 'xhtml1t-throwaway) + +;; (load "~/.emacs.d/floobits/floobits.el") \ No newline at end of file diff --git a/vendor/js2-mode.el b/vendor/js2-mode.el new file mode 100644 index 0000000..d23d8a1 --- /dev/null +++ b/vendor/js2-mode.el @@ -0,0 +1,11752 @@ +;;; js2-mode.el --- Improved JavaScript editing mode + +;; Copyright (C) 2009, 2012 Free Software Foundation, Inc. + +;; Author: Steve Yegge +;; mooz +;; Dmitry Gutov +;; Version: 1.0 +;; Keywords: languages, javascript + +;; This file is part of GNU Emacs. + +;; GNU Emacs 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. + +;; GNU Emacs 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 GNU Emacs. If not, see . + +;;; Commentary: + +;; This JavaScript editing mode supports: + +;; - strict recognition of the Ecma-262 language standard +;; - support for most Rhino and SpiderMonkey extensions from 1.5 and up +;; - parsing support for ECMAScript for XML (E4X, ECMA-357) +;; - accurate syntax highlighting using a recursive-descent parser +;; - on-the-fly reporting of syntax errors and strict-mode warnings +;; - undeclared-variable warnings using a configurable externs framework +;; - "bouncing" line indentation to choose among alternate indentation points +;; - smart line-wrapping within comments and strings +;; - code folding: +;; - show some or all function bodies as {...} +;; - show some or all block comments as /*...*/ +;; - context-sensitive menu bar and popup menus +;; - code browsing using the `imenu' package +;; - typing helpers such as automatic insertion of matching braces/parens +;; - many customization options + +;; To customize how it works: +;; M-x customize-group RET js2-mode RET + +;; Notes: + +;; This mode includes a port of Mozilla Rhino's scanner, parser and +;; symbol table. Ideally it should stay in sync with Rhino, keeping +;; `js2-mode' current as the EcmaScript language standard evolves. + +;; Unlike cc-engine based language modes, js2-mode's line-indentation is not +;; customizable. It is a surprising amount of work to support customizable +;; indentation. The current compromise is that the tab key lets you cycle among +;; various likely indentation points, similar to the behavior of python-mode. + +;; This mode does not yet work with "multi-mode" modes such as `mmm-mode' +;; and `mumamo', although it could be made to do so with some effort. +;; This means that `js2-mode' is currently only useful for editing JavaScript +;; files, and not for editing JavaScript within