Update.
[elisp.git] / emacs.el
index ebc608e..1d2d66f 100644 (file)
--- a/emacs.el
+++ b/emacs.el
@@ -598,6 +598,8 @@ load-warning buffer in case of failure."
 
 (define-key global-map [(control c) (control q)] 'ff/delete-trailing-whitespaces-and-indent)
 
+(define-key global-map [(control x) (control o)] 'other-window)
+
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; Playing sounds
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -1192,12 +1194,24 @@ goback argument, go back where we were."
 ;; (define-key python-mode-map [(shift right)] 'indent-rigidly-right-to-tab-stop)
 ;; (define-key python-mode-map [(shift left)] 'indent-rigidly-left-to-tab-stop)
 
+(load "vc-git")
+
+(defun ff/git-pull-push () (interactive)
+       (message "git pull / push ...")
+       (shell-command "git pull && git push" nil)
+       )
+
+(defun ff/git-pull () (interactive)
+       (shell-command "git pull" nil)
+       )
+
+(define-key global-map [(control x) (v) (p)] 'ff/git-pull-push)
+(define-key global-map [(control x) (v) (P)] 'ff/git-pull)
+
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; The big stuff (bbdb, mailcrypt, etc.)
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
-(load "vc-git")
-
 (setq bbdb-file "~/private/bbdb")
 
 (when (file-exists-p bbdb-file)
@@ -1760,7 +1774,7 @@ require 'optim'
   "Adds all the stuff to start a new python file"
   (interactive)
   (goto-char (point-min))
-  (insert "#!/usr/bin/env python
+  (insert "#!/usr/bin/env python-for-pytorch
 
 import torch
 import math
@@ -1819,9 +1833,7 @@ the function is invoked with a universal arg"
   (interactive "P")
   (let ((line (if arg "cerr" "cout")))
     (goto-char (point-at-bol))
-    ;; Regexp syntax sucks moose balls, honnest. To match '[', just
-    ;; put it as the first char in the [...] ... This leads to some
-    ;; obvious things like the following
+    ;; To match '[', put it as the first char in the [...]
     (while (re-search-forward "\\([][a-zA-Z0-9_.:\(\)]+\\)" (point-at-eol) t)
       (setq line
             (concat line " << \" "
@@ -2590,12 +2602,15 @@ proposes to visit them."
 ;; The fridge!
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
-(defun ff/move-region-to-fridge () (interactive)
+(defun ff/move-region-to-fridge (&optional universal) (interactive "P")
        "Cut the current region, paste it in a file called ./fridge
 with a time tag, and save this file"
        (unless (use-region-p) (error "No region selected"))
        (let ((bn (file-name-nondirectory (buffer-file-name))))
-         (kill-region (region-beginning) (region-end))
+         (if universal
+             (copy-region-as-kill (region-beginning) (region-end))
+           (kill-region (region-beginning) (region-end))
+           )
          (with-current-buffer (find-file-noselect "fridge")
            (goto-char (point-max))
            (insert "\n")