X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=emacs.d%2Fconfig.org;h=064a1b39088a48f34a7ad40787b703064e8d3387;hb=dfc61390fb1055e4f5d0df2c762de4cd8885248d;hp=63e3373bd3260627e119dd13f30529cc7a4b3ed6;hpb=465ba1c51a6d69453710051de3c7abb52accb10b;p=dotfiles.git diff --git a/emacs.d/config.org b/emacs.d/config.org index 63e3373..064a1b3 100644 --- a/emacs.d/config.org +++ b/emacs.d/config.org @@ -1471,6 +1471,29 @@ brew install the-silver-searcher (add-hook 'text-mode-hook 'table-recognize) #+END_SRC +** url-download +To download file in =elisp=, best is =url-copy-file=, here refer [[http://stackoverflow.com/questions/4448055/download-a-file-with-emacs-lisp][download-a-file-with-emacs-lisp]] using =url-retrieve-synchronously= wrapping +as a http download client tool +#+BEGIN_SRC emacs-lisp :tangle yes :results silent + (defun sd/download-file (&optional url download-dir download-name) + (interactive) + (let ((url (or url + (read-string "Enter download URL: "))) + (download-dir (or (read-string "Save to (~/Downloads): ") "~/Downloads"))) + (let ((download-buffer (url-retrieve-synchronously url))) + (save-excursion + (set-buffer download-buffer) + ;; we may have to trim the http response + (goto-char (point-min)) + (re-search-forward "^$" nil 'move) + (forward-char) + (delete-region (point-min) (point)) + (write-file (concat (or download-dir + "~/Downloads/") + (or download-name + (car (last (split-string url "/" t)))))))))) +#+END_SRC + * Dired ** Dired bindings =C-o= is defined as a global key for window operation, here unset it in dired mode @@ -2056,6 +2079,24 @@ irony-company :ensure t) #+END_SRC +** Scheme +Install =guile=, =guile= is an implementation of =Scheme= programming language. +#+BEGIN_SRC sh + brew install guile +#+END_SRC + +#+BEGIN_SRC emacs-lisp :tangle yes :results silent + (setq geiser-scheme-implementation 'guile) +#+END_SRC + +#+BEGIN_SRC scheme + (define a "3") + a +#+END_SRC + +#+RESULTS: +: 3 + ** Racket #+BEGIN_SRC emacs-lisp :tangle yes :results silent (use-package racket-mode @@ -2117,7 +2158,7 @@ Set the environments vairables in compilation mode (file-name-nondirectory (buffer-file-name))) ".hpp\"" \n \n "using namespace std;" \n \n - "int main ()" + "int main (int argc, char *argv[])" "\n{" \n > _ \n "return 0;" @@ -2136,7 +2177,7 @@ Set the environments vairables in compilation mode (file-name-sans-extension (file-name-nondirectory (buffer-file-name))) ".h\"" \n \n - "int main ()\n" + "int main (int argc, char *argv[])\n" "{" \n > _ \n "return 0;\n" @@ -2839,6 +2880,11 @@ Search, replace and hightlight will in later paragraph #+BEGIN_SRC emacs-lisp :tangle yes :results silent (global-set-key (kbd "M-i") #'counsel-imenu) ;; (global-set-key (kbd "M-i") #'imenu) + + ;; define M-[ as C-M-a + ;; http://ergoemacs.org/emacs/emacs_key-translation-map.html + (define-key key-translation-map (kbd "M-[") (kbd "C-M-a")) + (define-key key-translation-map (kbd "M-]") (kbd "C-M-e")) #+END_SRC *** Go-to line