;;; dvc-init.el --- configuration file for DVC ;; This file is part of Michael Olson's Emacs settings. ;; The code in this file may be used, distributed, and modified ;; without restriction. ;; I use initsplit.el to separate customize settings on a per-project ;; basis. ;;; Add to load paths ;;(add-to-list 'load-path "/home/mwolson/proj/emacs/dvc/mwolson/lisp") ;;(add-to-list 'load-path "/home/mwolson/proj/emacs/dvc/sr/++build/lisp/contrib") ;;(load-file "/usr/local/share/emacs/site-lisp/dvc/dvc-load.el") ;;(load-file "/home/mwolson/proj/emacs/dvc/sr/++build/lisp/dvc-autoloads.el") (if (featurep 'xemacs) (unless (featurep 'dvc-core) (load "/home/mwolson/proj/emacs/dvc/mwolson.xemacs/dvc-load.el")) (load "/home/mwolson/proj/emacs/dvc/git-dvc/dvc-load.el")) ;;; Initialize ;(require 'tla) ;(require 'bzr) ;(require 'bzr-submit) ;(require 'xdarcs) ;(require 'xhg) (require 'dvc-gnus) ;(require 'tla-browse) (dvc-insinuate-gnus) ;; (defcustom git-log-max-count -1 ;; "Number of logs to print. Specify negative value for all logs. ;; Limiting this to low number will shorten time for log retrieval ;; for large projects like Linux kernel on slow machines (Linux ;; kernel has >50000 logs)." ;; :type 'integer ;; :group 'dvc-xgit) ;; (defcustom git-log-pretty "" ;; "Specify '--pretty=' option to pass to git-log. ;; You can choose from 'oneline', 'short', 'medium', 'full', ;; 'fuller', 'email' or 'raw' or other options supported in your ;; version of git. ;; If string is empty, will not pass '--pretty=' option." ;; :type 'string ;; :group 'dvc-xgit) ;; (defun* git-log (dir &key cnt log-regexp diff-match rev file) ;; "Run git log for DIR. ;; DIR is a directory controlled by Git/Cogito. ;; CNT is max number of log to print. If not specified, uses git-log-max-count. ;; LOG-REGEXP is regexp to filter logs by matching commit logs. ;; DIFF-MATCH is string to filter logs by matching commit diffs. ;; REV is revision to show. ;; FILE is filename in repostory to filter logs by matching filename. ;; " ;; (interactive (list default-directory)) ;; (let* ((buffer (dvc-get-buffer-create 'xgit 'log dir)) ;; (repo (xgit-git-dir dir)) ;; (cmd "log") ;; (count (format "--max-count=%s" (if cnt cnt git-log-max-count))) ;; (grep (if log-regexp (format "--grep=%s" log-regexp))) ;; (diff (if diff-match (format "-S%s" diff-match))) ;; (pretty (if (not (string= "" git-log-pretty)) ;; (format "--pretty=%s" git-log-pretty))) ;; (fname (if file (file-relative-name file (xgit-tree-root dir)))) ;; (args (list repo cmd pretty count grep diff rev "--" fname))) ;; (dvc-switch-to-buffer-maybe buffer) ;; (let ((default-directory dir)) ;; (dvc-run-dvc-sync 'xgit args ;; :finished ;; (dvc-capturing-lambda (output error status arguments) ;; (progn ;; (with-current-buffer (capture buffer) ;; (let ((inhibit-read-only t)) ;; (erase-buffer) ;; (insert-buffer-substring output) ;; (goto-char (point-min)) ;; (insert (format "git %s\n\n" ;; (mapconcat #'identity ;; (delq nil args) ;; " "))) ;; (xgit-log-mode))))))))) ;; (defalias 'xgit-log-mode 'dvc-log-buffer-mode) ;; (setq xgit-log-max-count -1) (defun my-dvc-kill-procs () "Rid my Emacs session of annoying hung DVC processes." (interactive) (dolist (proc (process-list)) (when (string-match "tla" (process-name proc)) (delete-process proc)))) ;; Remember to customize `mail-user-agent'! ;;; Functions ;; (defun tla-changes-remove-marked-files () ;; "Remove the currently-marked files in a *tla-changes* buffer." ;; (interactive) ;; (dolist (file tla-buffer-marked-file-list) ;; (shell-command-to-string (concat "rm -fr " file)))) ;;; Customizations (custom-set-variables '(bzr-mail-notification-destination (quote (("mwolson" ("[commit] " "dvc-dev@gna.org" "http://mwolson.org/bzr/dvc/"))))) '(dvc-config-directory "~/.emacs.d/.dvc/") '(dvc-confirm-file-op-method (quote y-or-n-p)) '(dvc-fileinfo-printer-interface (quote terse)) '(tla-apply-patch-mapping (quote ((("mwolson@gnu.org--2006" "muse" nil nil nil) "~/proj/emacs/muse/mwolson") (("mwolson@gnu.org--2006" "planner" nil nil nil) "~/proj/emacs/planner/mwolson")))) '(tla-arch-branch (quote tla)) '(tla-log-edit-mode-hook (quote ((lambda nil (flyspell-mode 1))))) '(tla-mail-notification-destination (quote ((("mwolson@gnu.org--2005" "muse" nil nil nil) ("[commit][muse--main--1.0] " "muse-el-commits@gna.org")) (("mwolson@gnu.org--2005" "emacs-wiki" nil nil nil) ("[commit][emacs-wiki--main--1.0] " "Emacs Wiki Discussion List "))))) '(tla-submit-patch-mapping (quote (((nil "dvc" nil nil nil) ("xtla-el-dev@gna.org" "dvc")) ((nil "mpc" nil nil nil) ("Stefan Monnier " "mpc"))))) '(xgit-apply-patch-mapping (quote ((".*muse-el-discuss@gna\\.org" "/stuff/proj/emacs/muse/git-muse") (".*erc-discuss@gnu\\.org" "/stuff/proj/emacs/erc/git-erc") (".*emms-.*@gnu\\.org" "/stuff/proj/emacs/emms/git-emms")))) '(xgit-mail-notification-destination (quote (("/stuff/proj/emacs/dvc/git-dvc" "[COMMIT] " "dvc-dev@gna.org" "git://git.hcoop.net/git/mwolson/emacs/dvc.git")))) '(xgit-use-index (quote never))) (custom-set-faces) ;;; dvc-init.el ends here