From 2c15870d211567d1e7b80446c13945f9972f9d28 Mon Sep 17 00:00:00 2001 From: Will Farrington Date: Tue, 26 Aug 2008 21:52:02 -0400 Subject: [PATCH] Use an alist for identifying the highlighting to be used online by using the active modes, for those times where you have oddly named files without an extension (eg. ~/.conkerorrc or ~/.bashrc) --- gist.el | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/gist.el b/gist.el index f780090..0676fa4 100644 --- a/gist.el +++ b/gist.el @@ -9,13 +9,46 @@ ;; Ideas: fork +(defvar gist-supported-modes-alist '((action-script-mode . "as") + (c-mode . "c") + (c++-mode . "cpp") + (common-lisp-mode . "el") + (css-mode . "css") + (diff-mode . "diff") + (emacs-lisp-mode . "el") + (erlang-mode . "erl") + (haskell-mode . "hs") + (html-mode . "html") + (io-mode . "io") + (java-mode . "java") + (javascript-mode . "js") + (jde-mode . "java") + (js2-mode . "js") + (lua-mode . "lua") + (ocaml-mode . "ml") + (objective-c-mode . "m") + (perl-mode "pl") + (php-mode . "php") + (python-mode . "sc") + (ruby-mode . "rbx") + (text-mode . "txt") + (sql-mode . "sql") + (scheme-mode . "scm") + (smalltalk-mode . "st") + (sh-mode . "sh") + (tcl-mode . "tcl") + (tex-mode . "tex") + (xml-mode . "xml"))) + (defun gist-region (begin end) "Post the current region as a new paste at gist.github.com Copies the URL into the kill ring." (interactive "r") (let* ((file (or (buffer-file-name) (buffer-name))) (name (file-name-nondirectory file)) - (ext (or (file-name-extension file) "txt")) + (ext (or (cdr (assoc major-mode gist-supported-modes-alist)) + (file-name-extension file) + "txt")) (output (generate-new-buffer " *gist*"))) (shell-command-on-region begin end