X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/ad191f4eb0a643961acfd7cee6e558fef9236eab..f36cdb77c550b846c20e12919d662d1fa5f76576:/el/dot-emacs.el diff --git a/el/dot-emacs.el b/el/dot-emacs.el index 1322789..dc5529d 100644 --- a/el/dot-emacs.el +++ b/el/dot-emacs.el @@ -501,6 +501,42 @@ CHECK is fboundp, and returning the correponding FUNC." (setq answer func))) answer)) +(eval-after-load "w3m-search" + '(progn + (dolist + (item + '(("g" "Google" "http://www.google.co.uk/search?q=%s") + ("gd" "Google Directory" + "http://www.google.com/search?cat=gwd/Top&q=%s") + ("gg" "Google Groups" "http://groups.google.com/groups?q=%s") + ("ward" "Ward's wiki" "http://c2.com/cgi/wiki?%s") + ("gi" "Images" "http://images.google.com/images?q=%s") + ("rfc" "RFC" + "http://metalzone.distorted.org.uk/ftp/pub/mirrors/rfc/rfc%s.txt.gz") + ("wp" "Wikipedia" + "http://en.wikipedia.org/wiki/Special:Search?go=Go&search=%s") + ("imdb" "IMDb" "http://www.imdb.com/Find?%s") + ("nc-wiki" "nCipher wiki" + "http://wiki.ncipher.com/wiki/bin/view/Devel/?topic=%s") + ("map" "Google maps" "http://maps.google.co.uk/maps?q=%s&hl=en") + ("lp" "Launchpad bug by number" + "https://bugs.launchpad.net/bugs/%s") + ("lppkg" "Launchpad bugs by package" + "https://bugs.launchpad.net/%s") + ("msdn" "MSDN" + "http://social.msdn.microsoft.com/Search/en-GB/?query=%s&ac=8") + ("debbug" "Debian bug by number" + "http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=%s") + ("debbugpkg" "Debian bugs by package" + "http://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=%s") + ("ljlogin" "LJ login" "http://www.livejournal.com/login.bml"))) + (add-to-list 'w3m-search-engine-alist + (list (cadr item) (caddr item) nil)) + (add-to-list 'w3m-uri-replace-alist + (list (concat "\\`" (car item) ":") + 'w3m-search-uri-replace + (cadr item)))))) + ;;;-------------------------------------------------------------------------- ;;; Paragraph filling. @@ -645,6 +681,7 @@ case." (and (fboundp 'gtags-mode) (gtags-mode)) (outline-minor-mode t) + (hs-minor-mode t) (mdw-set-font)) (eval-after-load 'gtags @@ -860,6 +897,15 @@ doesn't match any of the regular expressions in (statement-case-intro . +))) t)) +(defvar mdw-c-comment-fill-prefix + `((,(concat "\\([ \t]*/?\\)" + "\\(\*\\|//]\\)" + "\\([ \t]*\\)" + "\\([A-Za-z]+:[ \t]*\\)?" + mdw-hanging-indents) + (pad . 1) (match . 2) (pad . 3) (pad . 4) (pad . 5))) + "Fill prefix matching C comments (both kinds).") + (defun mdw-fontify-c-and-c++ () ;; Fiddle with some syntax codes. @@ -872,12 +918,7 @@ doesn't match any of the regular expressions in (setq c-hanging-comment-ender-p nil) (setq c-backslash-column 72) (setq c-label-minimum-indentation 0) - (setq mdw-fill-prefix - `((,(concat "\\([ \t]*/?\\)" - "\\([\*/][ \t]*\\)" - "\\([A-Za-z]+:[ \t]*\\)?" - mdw-hanging-indents) - (pad . 1) (match . 2) (pad . 3) (pad . 4)))) + (setq mdw-fill-prefix mdw-c-comment-fill-prefix) ;; Now define things to be fontified. (make-local-variable 'font-lock-keywords) @@ -1046,12 +1087,7 @@ doesn't match any of the regular expressions in (setq c-backslash-column 72) (setq comment-start "/* ") (setq comment-end " */") - (setq mdw-fill-prefix - `((,(concat "\\([ \t]*/?\\)" - "\\([\*/][ \t]*\\)" - "\\([A-Za-z]+:[ \t]*\\)?" - mdw-hanging-indents) - (pad . 1) (match . 2) (pad . 3) (pad . 4)))) + (setq mdw-fill-prefix mdw-c-comment-fill-prefix) ;; Now define things to be fontified. (make-local-variable 'font-lock-keywords) @@ -1105,14 +1141,7 @@ doesn't match any of the regular expressions in (mdw-java-style) (setq c-hanging-comment-ender-p nil) (setq c-backslash-column 72) - (setq comment-start "/* ") - (setq comment-end " */") - (setq mdw-fill-prefix - `((,(concat "\\([ \t]*/?\\)" - "\\([\*/][ \t]*\\)" - "\\([A-Za-z]+:[ \t]*\\)?" - mdw-hanging-indents) - (pad . 1) (match . 2) (pad . 3) (pad . 4)))) + (setq mdw-fill-prefix mdw-c-comment-fill-prefix) ;; Now define things to be fontified. (make-local-variable 'font-lock-keywords) @@ -1174,14 +1203,7 @@ doesn't match any of the regular expressions in (mdw-csharp-style) (setq c-hanging-comment-ender-p nil) (setq c-backslash-column 72) - (setq comment-start "/* ") - (setq comment-end " */") - (setq mdw-fill-prefix - `((,(concat "\\([ \t]*/?\\)" - "\\([\*/][ \t]*\\)" - "\\([A-Za-z]+:[ \t]*\\)?" - mdw-hanging-indents) - (pad . 1) (match . 2) (pad . 3) (pad . 4)))) + (setq mdw-fill-prefix mdw-c-comment-fill-prefix) ;; Now define things to be fontified. (make-local-variable 'font-lock-keywords) @@ -1361,7 +1383,7 @@ strip numbers instead." (list ;; Set up the keywords defined above. - (list (concat "\\<\\(" python-keywords "\\)\\>") + (list (concat "\\<\\(" keywords "\\)\\>") '(0 font-lock-keyword-face)) ;; At least numbers are simpler than C. @@ -2162,7 +2184,7 @@ strip numbers instead." (auto-fill-mode 1)) ;;;-------------------------------------------------------------------------- -;;; Outline mode. +;;; Outline and hide/show modes. (defun mdw-outline-collapse-all () "Completely collapse everything in the entire buffer." @@ -2173,6 +2195,8 @@ strip numbers instead." (hide-subtree) (forward-line)))) +(setq hs-hide-comments-when-hiding-all nil) + ;;;-------------------------------------------------------------------------- ;;; Shell mode.