<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>C L Snyder &#187; Emacs</title>
	<atom:link href="http://www.clsnyder.com/WordPress/category/computer/emacs/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.clsnyder.com/WordPress</link>
	<description>Kaizen with Sprezzatura</description>
	<lastBuildDate>Mon, 06 Feb 2012 22:52:45 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>.Emacs for Windows 29 Jun 2009</title>
		<link>http://www.clsnyder.com/WordPress/2009/06/29/emacs-for-windows-29-jun-2009/</link>
		<comments>http://www.clsnyder.com/WordPress/2009/06/29/emacs-for-windows-29-jun-2009/#comments</comments>
		<pubDate>Mon, 29 Jun 2009 20:55:42 +0000</pubDate>
		<dc:creator>clsnyder</dc:creator>
				<category><![CDATA[Emacs]]></category>

		<guid isPermaLink="false">http://www.clsnyder.com/WordPress/?p=491</guid>
		<description><![CDATA[(setq load-path (cons "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/org-6.27a/" load-path)) (add-to-list 'load-path "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/remember/") (require 'org) (require 'remember) (require 'org-install) (add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode)) (global-set-key "\C-cl" 'org-store-link) (global-set-key "\C-ca" 'org-agenda) (global-set-key "\C-cb" 'org-iswitchb) (global-font-lock-mode 1) ; for all buffers &#8230; <a href="http://www.clsnyder.com/WordPress/2009/06/29/emacs-for-windows-29-jun-2009/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<pre class="prettyprint">
(setq load-path (cons "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/org-6.27a/" load-path))
(add-to-list 'load-path "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/remember/")

(require 'org)
(require 'remember)
(require 'org-install)
(add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode))

(global-set-key "\C-cl" 'org-store-link)
(global-set-key "\C-ca" 'org-agenda)
(global-set-key "\C-cb" 'org-iswitchb)

(global-font-lock-mode 1)                     ; for all buffers
(add-hook 'org-mode-hook 'turn-on-font-lock)  ; Org buffers only

(defalias 'list-buffers 'ibuffer)
(defconst cls-tmp-dir    "~/.emacs.tmp")

(setq org-log-done t)
(setq org-directory "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org")
(setq org-default-notes-file "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/notes.org")

(setq remember-annotation-functions '(org-remember-annotation))
(setq remember-handler-functions '(org-remember-handler))
(add-hook 'remember-mode-hook 'org-remember-apply-template)
(define-key global-map "\C-cr" 'org-remember)

(setq org-remember-templates
    '(("Todo" ?t "* TODO %? %T %^g\n %i\n " "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/personal.org" )
     ("Journal" ?j "\n* %^{topic} %T \n%i%?\n" "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/journal.org")
     ("Reference" ?r "\n* %^{topic} %T \n%i%?\n" "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/reference.org")
     ("Notes" ?n "\n* %^{topic} %T \n%i%?\n" "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/notes.org")
     ("Contact" ?c "\n* %^{Name} :CONTACT:\n%[C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/contacts.txt]\n"
              "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/")
     ))

(require 'org-publish)
(setq org-publish-project-alist
      '(
	      ("org-notes"
		 :base-directory "~/org/"
		 :base-extension "org"
		 :publishing-directory "~/public_html/"
		 :recursive t
		 :publishing-function org-publish-org-to-html
		 :headline-levels 4             ; Just the default for this project.
		 :auto-preamble t
	         :auto-index t                  ; Generate index.org automagically...
		 :index-filename "sitemap.org"  ; ... call it sitemap.org ...
		 :index-title "Sitemap"         ; ... with title 'Sitemap'.
		 )
		("org-static"
		 :base-directory "~/org/"
		 :base-extension "css\\|js\\|png\\|jpg\\|gif\\|pdf\\|mp3\\|ogg\\|swf"
		 :publishing-directory "~/public_html/"
		 :recursive t
		 :publishing-function org-publish-attachment
		 )
		("org" :components ("org-notes" "org-static"))
      ))

(setq org-agenda-custom-commands
      '(("p" . "Priorities")
        ("pa" "A items" tags-todo "+PRIORITY=\"A\"")
        ("pb" "B items" tags-todo "+PRIORITY=\"B\"")
        ("pc" "C items" tags-todo "+PRIORITY=\"C\"")
        ;; ...other commands here
        ))

;; To change the location of the annotation file:
(setq org-annotate-file-storage-file "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/annotated.org")
(setq org-annotate-file-add-search t)

(custom-set-variables
  ;; custom-set-variables was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 '(cua-mode t nil (cua-base))
 '(inhibit-startup-screen t)
 '(org-agenda-files (quote ("C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/personal.org")))
 '(show-paren-mode t)
 '(text-mode-hook (quote (turn-on-auto-fill text-mode-hook-identify)))
 '(transient-mark-mode t))
(custom-set-faces
  ;; custom-set-faces was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 )

(defun wc ()
  (interactive)
  (message "Word count: %s" (how-many "\\w+" (point-min) (point-max))))

(defun run-current-file ()
(interactive)
  (let (ext-map file-name file-ext prog-name cmd-str)
; get the file name
; get the program name
; run it
    (setq ext-map
          '(
            ("pl" . "perl")
            ("py" . "python")
            ("sh" . "bash")
            ("rb" . "ruby")
            )
          )
    (setq file-name (buffer-file-name))
    (setq file-ext (file-name-extension file-name))
    (setq prog-name (cdr (assoc file-ext ext-map)))
    (setq cmd-str (concat prog-name " " file-name))
    (shell-command cmd-str)))

(define-key global-map "\C-c9" 'run-current-file)
(global-set-key (kbd "M-S-<f1>") ;; open my personal.org file
  (lambda()(interactive)(find-file "C:/Documents and Settings/csnyder/Desktop/My Dropbox/emacs_org/personal.org")))

;; backups
(setq cls-backup-dir (concat cls-tmp-dir "/backups"))
(setq make-backup-files t ;; do make backups
  backup-by-copying t     ;; and copy them here
  backup-directory-alist '(("." . "~/.emacs.tmp/backups")) ;; FIXME
  version-control t
  kept-new-versions 2
  kept-old-versions 5
  delete-old-versions t)
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.clsnyder.com/WordPress/2009/06/29/emacs-for-windows-29-jun-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>dot emacs file mac 19June2009</title>
		<link>http://www.clsnyder.com/WordPress/2009/06/20/dot-emacs-file-mac-19june2009/</link>
		<comments>http://www.clsnyder.com/WordPress/2009/06/20/dot-emacs-file-mac-19june2009/#comments</comments>
		<pubDate>Sat, 20 Jun 2009 22:41:06 +0000</pubDate>
		<dc:creator>clsnyder</dc:creator>
				<category><![CDATA[Emacs]]></category>

		<guid isPermaLink="false">http://www.clsnyder.com/WordPress/2009/06/20/dot-emacs-file-mac-19june2009/</guid>
		<description><![CDATA[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 &#8230; <a href="http://www.clsnyder.com/WordPress/2009/06/20/dot-emacs-file-mac-19june2009/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
</pre></td><td class="code"><pre class="lisp" style="font-family:monospace;"><span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> load-path <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cons</span> <span style="color: #ff0000;">&quot;/Users/clsnyder/emacs_org/org-6.27a/lisp&quot;</span> load-path<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>add-to-<span style="color: #b1b100;">list</span> 'load-path <span style="color: #ff0000;">&quot;/Users/clsnyder/emacs_org/remember&quot;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>require 'org<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>require 'remember<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>require 'org-install<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>add-to-<span style="color: #b1b100;">list</span> 'auto-mode-alist '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.org<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span> <span style="color: #66cc66;">.</span> org-mode<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>add-to-<span style="color: #b1b100;">list</span> 'auto-mode-alist '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.org<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span> <span style="color: #66cc66;">.</span> org-mode<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-cl&quot;</span> 'org-store-link<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-ca&quot;</span> 'org-agenda<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-cb&quot;</span> 'org-iswitchb<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-font-lock-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>                     <span style="color: #808080; font-style: italic;">; for all buffers</span>
<span style="color: #66cc66;">&#40;</span>add-hook 'org-mode-hook 'turn-on-font-lock<span style="color: #66cc66;">&#41;</span>  <span style="color: #808080; font-style: italic;">; Org buffers only</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> org-log-done t<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> org-directory <span style="color: #ff0000;">&quot;~/Dropbox/emacs_org&quot;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> org-default-notes-file <span style="color: #ff0000;">&quot;~/Dropbox/emacs_org/notes.org&quot;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> remember-annotation-functions '<span style="color: #66cc66;">&#40;</span>org-remember-annotation<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> remember-handler-functions '<span style="color: #66cc66;">&#40;</span>org-remember-handler<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>add-hook 'remember-mode-hook 'org-remember-apply-template<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>define-key global-map <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-cr&quot;</span> 'org-remember<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> org-remember-templates
    '<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Todo&quot;</span> ?t <span style="color: #ff0000;">&quot;* TODO %? %T %^g<span style="color: #000099; font-weight: bold;">\n</span> %i<span style="color: #000099; font-weight: bold;">\n</span> &quot;</span> <span style="color: #ff0000;">&quot;~/Dropbox/emacs_org/personal.org&quot;</span> <span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Journal&quot;</span> ?j <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>* %^{topic} %T <span style="color: #000099; font-weight: bold;">\n</span>%i%?<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #ff0000;">&quot;~/Dropbox/emacs_org/journal.org&quot;</span><span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Reference&quot;</span> ?r <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>* %^{topic} %T <span style="color: #000099; font-weight: bold;">\n</span>%i%?<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #ff0000;">&quot;~/Dropbox/emacs_org/reference.org&quot;</span><span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Notes&quot;</span> ?n <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>* %^{topic} %T <span style="color: #000099; font-weight: bold;">\n</span>%i%?<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #ff0000;">&quot;~/Dropbox/emacs_org/notes.org&quot;</span><span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Contact&quot;</span> ?c <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>* %^{Name} :CONTACT:<span style="color: #000099; font-weight: bold;">\n</span>%[~/Dropbox/emacs_org/contacts.txt]<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> 
              <span style="color: #ff0000;">&quot;~/Dropbox/emacs_org/contacts.org&quot;</span><span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> org-agenda-custom-commands
      '<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;p&quot;</span> <span style="color: #66cc66;">.</span> <span style="color: #ff0000;">&quot;Priorities&quot;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;pa&quot;</span> <span style="color: #ff0000;">&quot;A items&quot;</span> tags-todo <span style="color: #ff0000;">&quot;+PRIORITY=<span style="color: #000099; font-weight: bold;">\&quot;</span>A<span style="color: #000099; font-weight: bold;">\&quot;</span>&quot;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;pb&quot;</span> <span style="color: #ff0000;">&quot;B items&quot;</span> tags-todo <span style="color: #ff0000;">&quot;+PRIORITY=<span style="color: #000099; font-weight: bold;">\&quot;</span>B<span style="color: #000099; font-weight: bold;">\&quot;</span>&quot;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;pc&quot;</span> <span style="color: #ff0000;">&quot;C items&quot;</span> tags-todo <span style="color: #ff0000;">&quot;+PRIORITY=<span style="color: #000099; font-weight: bold;">\&quot;</span>C<span style="color: #000099; font-weight: bold;">\&quot;</span>&quot;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #808080; font-style: italic;">;; ...other commands here</span>
        <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;</span>
<span style="color: #808080; font-style: italic;">;; To change the location of the annotation file:</span>
<span style="color: #808080; font-style: italic;">;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> org-annotate-file-storage-file <span style="color: #ff0000;">&quot;~/Dropbox/emacs_org/annotated.org&quot;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> org-annotate-file-add-search t<span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span>custom-set-variables
  <span style="color: #808080; font-style: italic;">;; custom-set-variables was added by Custom.</span>
  <span style="color: #808080; font-style: italic;">;; If you edit it by hand, you could mess it up, so be careful.</span>
  <span style="color: #808080; font-style: italic;">;; Your init file should contain only one such instance.</span>
  <span style="color: #808080; font-style: italic;">;; If there is more than one, they won't work right.</span>
 '<span style="color: #66cc66;">&#40;</span>cua-mode t <span style="color: #b1b100;">nil</span> <span style="color: #66cc66;">&#40;</span>cua-base<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
 '<span style="color: #66cc66;">&#40;</span>org-agenda-files <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">quote</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;~/Dropbox/emacs_org/personal.org&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
 '<span style="color: #66cc66;">&#40;</span>show-paren-mode t<span style="color: #66cc66;">&#41;</span>
 '<span style="color: #66cc66;">&#40;</span>text-mode-hook <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">quote</span> <span style="color: #66cc66;">&#40;</span>turn-on-auto-fill text-mode-hook-identify<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
 '<span style="color: #66cc66;">&#40;</span>transient-mark-mode t<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>custom-set-faces
  <span style="color: #808080; font-style: italic;">;; custom-set-faces was added by Custom.</span>
  <span style="color: #808080; font-style: italic;">;; If you edit it by hand, you could mess it up, so be careful.</span>
  <span style="color: #808080; font-style: italic;">;; Your init file should contain only one such instance.</span>
  <span style="color: #808080; font-style: italic;">;; If there is more than one, they won't work right.</span>
 <span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> wc <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>message <span style="color: #ff0000;">&quot;Word count: %s&quot;</span> <span style="color: #66cc66;">&#40;</span>how-many <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>w+&quot;</span> <span style="color: #66cc66;">&#40;</span>point-<span style="color: #b1b100;">min</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>point-<span style="color: #b1b100;">max</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> run-current-file <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span>ext-map file-<span style="color: #b1b100;">name</span> file-ext prog-<span style="color: #b1b100;">name</span> cmd-str<span style="color: #66cc66;">&#41;</span>
<span style="color: #808080; font-style: italic;">; get the file name</span>
<span style="color: #808080; font-style: italic;">; get the program name</span>
<span style="color: #808080; font-style: italic;">; run it</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> ext-map
          '<span style="color: #66cc66;">&#40;</span>
            <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;pl&quot;</span> <span style="color: #66cc66;">.</span> <span style="color: #ff0000;">&quot;perl&quot;</span><span style="color: #66cc66;">&#41;</span>
            <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;py&quot;</span> <span style="color: #66cc66;">.</span> <span style="color: #ff0000;">&quot;python&quot;</span><span style="color: #66cc66;">&#41;</span>
            <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;sh&quot;</span> <span style="color: #66cc66;">.</span> <span style="color: #ff0000;">&quot;bash&quot;</span><span style="color: #66cc66;">&#41;</span>
            <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;rb&quot;</span> <span style="color: #66cc66;">.</span> <span style="color: #ff0000;">&quot;ruby&quot;</span><span style="color: #66cc66;">&#41;</span>
            <span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> file-<span style="color: #b1b100;">name</span> <span style="color: #66cc66;">&#40;</span>buffer-file-<span style="color: #b1b100;">name</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> file-ext <span style="color: #66cc66;">&#40;</span>file-name-extension file-<span style="color: #b1b100;">name</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> prog-<span style="color: #b1b100;">name</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cdr</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">assoc</span> file-ext ext-map<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> cmd-str <span style="color: #66cc66;">&#40;</span>concat prog-<span style="color: #b1b100;">name</span> <span style="color: #ff0000;">&quot; &quot;</span> file-<span style="color: #b1b100;">name</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>shell-command cmd-str<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>define-key global-map <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-c9&quot;</span> 'run-current-file<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">; return a backup file path of a give file path</span>
<span style="color: #808080; font-style: italic;">; with full directory mirroring from a root dir</span>
<span style="color: #808080; font-style: italic;">; non-existant dir will be created</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> my-backup-file-<span style="color: #b1b100;">name</span> <span style="color: #66cc66;">&#40;</span>fpath<span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Return a new file path of a given file path.
If the new path's directories does not exist, create them.&quot;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span>backup-root bpath<span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> backup-root <span style="color: #ff0000;">&quot;~/Dropbox/emacs_org/emacs-backup&quot;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> bpath <span style="color: #66cc66;">&#40;</span>concat backup-root fpath <span style="color: #ff0000;">&quot;~&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>make-directory <span style="color: #66cc66;">&#40;</span>file-name-directory bpath<span style="color: #66cc66;">&#41;</span> bpath<span style="color: #66cc66;">&#41;</span>
    bpath
  <span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> make-backup-file-name-<span style="color: #b1b100;">function</span> 'my-backup-file-<span style="color: #b1b100;">name</span><span style="color: #66cc66;">&#41;</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.clsnyder.com/WordPress/2009/06/20/dot-emacs-file-mac-19june2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Repeating events in org-mode</title>
		<link>http://www.clsnyder.com/WordPress/2009/06/17/repeating-events-in-org-mode/</link>
		<comments>http://www.clsnyder.com/WordPress/2009/06/17/repeating-events-in-org-mode/#comments</comments>
		<pubDate>Thu, 18 Jun 2009 02:04:53 +0000</pubDate>
		<dc:creator>clsnyder</dc:creator>
				<category><![CDATA[Emacs]]></category>

		<guid isPermaLink="false">http://www.clsnyder.com/WordPress/?p=442</guid>
		<description><![CDATA[This is from org mode forum: I am reading the Org-mode Release 6.27a manual to learn new things. and just discovered the C-c C-x c (clone subtree) command. This makes copies of a tree and inserts them as siblings. The &#8230; <a href="http://www.clsnyder.com/WordPress/2009/06/17/repeating-events-in-org-mode/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This is from org mode forum:</p>
<p>I am reading the Org-mode Release 6.27a manual to learn new things.<br />
and just discovered the C-c C-x c  (clone subtree) command.</p>
<p>This makes copies of a tree and inserts them as siblings. The command<br />
prompts you for the number of copies to make. The really useful<br />
feature is to update dates according to a pattern. </p>
<p>Here is an example of creating headings for each of the next six months:</p>
<p>Start with this:</p>
<p>** First of the month<br />
*** July<br />
    SCHEDULED: <2009-07-01 Wed></p>
<p>Position the cursor to the beginning of the line *** July<br />
then issue the C-c C-x c </p>
<p>Answer the question &#8220;Number of clones to produce:&#8221;  with 6</p>
<p>Next question is<br />
&#8220;Date shift per clone (e.g. +1w, empty to copy unchanged): &#8221;</p>
<p>Answer it +1m and the tree looks like:</p>
<p>*** July<br />
    SCHEDULED: <2009-07-01 Wed><br />
*** July<br />
    SCHEDULED: <2009-08-01 Sat><br />
*** July<br />
    SCHEDULED: <2009-09-01 Tue><br />
*** July<br />
    SCHEDULED: <2009-10-01 Thu><br />
*** July<br />
    SCHEDULED: <2009-11-01 Sun><br />
*** July<br />
    SCHEDULED: <2009-12-01 Tue><br />
*** July<br />
    SCHEDULED: <2010-01-01 Fri></p>
<p>Now you just have to change the occurrences of July to the real<br />
month names!   </p>
]]></content:encoded>
			<wfw:commentRss>http://www.clsnyder.com/WordPress/2009/06/17/repeating-events-in-org-mode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs: Writing a Macro</title>
		<link>http://www.clsnyder.com/WordPress/2008/05/18/emacs-writing-a-macro/</link>
		<comments>http://www.clsnyder.com/WordPress/2008/05/18/emacs-writing-a-macro/#comments</comments>
		<pubDate>Mon, 19 May 2008 01:23:20 +0000</pubDate>
		<dc:creator>clsnyder</dc:creator>
				<category><![CDATA[Emacs]]></category>

		<guid isPermaLink="false">http://www.clsnyder.com/WordPress/?p=174</guid>
		<description><![CDATA[To start defining a macro, press F3 or C-x (.[2] The abbreviation Def appears on the mode line, showing that you are in macro definition mode. In this mode, Emacs records all the keystrokes that you type, whether they are &#8230; <a href="http://www.clsnyder.com/WordPress/2008/05/18/emacs-writing-a-macro/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>To start defining a macro, press F3 or C-x (.[2] The abbreviation Def appears on the mode line, showing that you are in macro definition mode. In this mode, Emacs records all the keystrokes that you type, whether they are commands or literal text, so that you can replay them later. To end the macro, press F4 or C-x ); you leave macro definition mode, and Emacs stops recording your keystrokes. Emacs also stops recording your keystrokes automatically if an error occurs or if you press C-g.</p>
<p>[2] Mac OS X users may have bound F3 and F4, used in defining and executing macros, to another key. These users should press Option-F3 and Option-F4 to get the same functionality.</p>
<p>While you&#8217;re defining a macro, Emacs acts on your keystrokes as well as recording them: that is, anything you type while in macro definition mode is treated as a regular command and executed. While you&#8217;re defining a macro, you&#8217;re doing completely normal editing. That way you can see that the macro does exactly what you want it to, and you can cancel it (with C-g) if you notice that the macro isn&#8217;t really quite what you want.</p>
<p>To execute your macro, press F4 or C-x e. Emacs then replays your keystrokes exactly. (You can see that F4 has two different functions relating to macros: to end a macro definition and, after it&#8217;s defined, to execute the macro.)</p>
<p>This macro is referred to as the &#8220;last&#8221; keyboard macro, with last here meaning most recent. Only one macro is the last keyboard macro. A macro ring, much like the kill ring, allows you to access a number of macros during an Emacs session.</p>
<p>Table 6-1 shows the steps required to define and execute a macro. This macro takes a list of names in the ordinary First Name Last Name order and changes it to the frequently needed Last Name, First Name order.</p>
<blockquote>
<table>
<tr>
<td>Keystrokes</td>
<td>Action</td>
</tr>
<tr>
<td>F3 or C-x ( </td>
<td>Start the macro; Def appears on the mode line.</td>
</tr>
<tr>
<td>C-a </td>
<td> Move to the beginning of the current line.</td>
</tr>
<tr>
<td>M-f </td>
<td> Move forward a word.</td>
</tr>
<tr>
<td>, </td>
<td> Type a comma. </td>
</tr>
<tr>
<td>M-t </td>
<td> Transpose first and last.</td>
</tr>
<tr>
<td>C-n </td>
<td> Move to the next line.</td>
</tr>
<tr>
<td>F4 or C-x ) </td>
<td>End the macro definition.</td>
</tr>
</table>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.clsnyder.com/WordPress/2008/05/18/emacs-writing-a-macro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs: Interact with User</title>
		<link>http://www.clsnyder.com/WordPress/2008/05/18/emacs-interact-with-user/</link>
		<comments>http://www.clsnyder.com/WordPress/2008/05/18/emacs-interact-with-user/#comments</comments>
		<pubDate>Mon, 19 May 2008 01:14:36 +0000</pubDate>
		<dc:creator>clsnyder</dc:creator>
				<category><![CDATA[Emacs]]></category>

		<guid isPermaLink="false">http://www.clsnyder.com/WordPress/?p=147</guid>
		<description><![CDATA[Q: In emacs, how can one get input from the user after a prompt? (modified from Xah Lee site) A: &#8220;Interactive&#8221; turns a function into a command: 1 2 3 4 5 6 &#40;defun irc-join &#40;chan&#41; &#34;join an IRC channel&#34; &#8230; <a href="http://www.clsnyder.com/WordPress/2008/05/18/emacs-interact-with-user/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Q: In emacs, how can one get input from the user after a prompt? (modified from Xah Lee site)<br />
A: &#8220;Interactive&#8221; turns a function into a command:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code"><pre class="lisp" style="font-family:monospace;"><span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> irc-join <span style="color: #66cc66;">&#40;</span>chan<span style="color: #66cc66;">&#41;</span> 
  <span style="color: #ff0000;">&quot;join an IRC channel&quot;</span> 
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;sChannel to join: &quot;</span><span style="color: #66cc66;">&#41;</span> 
  <span style="color: #66cc66;">&#40;</span>save-excursion 
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> irc-channel chan<span style="color: #66cc66;">&#41;</span> 
    <span style="color: #66cc66;">&#40;</span>irc-send-server <span style="color: #66cc66;">&#40;</span>concat <span style="color: #ff0000;">&quot;JOIN &quot;</span> chan<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span></pre></td></tr></table></div>

<p>Define a function via &#8216;defun&#8217;.  &#8216;irc-join&#8217;, is the name<br />
of the function. &#8216;chan&#8217; is a local variable / parameter. Next  is the description.<br />
The string: &#8220;sChannel to join: &#8221;  &#8211;> The first character &#8216;s&#8217;  specifies<br />
a string as the first variable of the parameter<br />
list. The character &#8216;s&#8217; means &#8220;string&#8221;. If you<br />
wanted more parameters, it would be something like:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="lisp" style="font-family:monospace;"><span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> function-<span style="color: #b1b100;">name</span> <span style="color: #66cc66;">&#40;</span>stringparam numberparam<span style="color: #66cc66;">&#41;</span> 
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;sPrompt here: <span style="color: #000099; font-weight: bold;">\n</span>nAnother prompt: &quot;</span><span style="color: #66cc66;">&#41;</span> 
        etc<span style="color: #66cc66;">...</span></pre></td></tr></table></div>

<p>Note that each prompt string is separated by a newline character &#8220;\n&#8221;.<br />
Also, &#8216;n&#8217; means you want to get a number from the user. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.clsnyder.com/WordPress/2008/05/18/emacs-interact-with-user/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs: Color themes</title>
		<link>http://www.clsnyder.com/WordPress/2008/05/18/emacs-color-themes/</link>
		<comments>http://www.clsnyder.com/WordPress/2008/05/18/emacs-color-themes/#comments</comments>
		<pubDate>Mon, 19 May 2008 00:52:21 +0000</pubDate>
		<dc:creator>clsnyder</dc:creator>
				<category><![CDATA[Emacs]]></category>

		<guid isPermaLink="false">http://www.clsnyder.com/WordPress/?p=168</guid>
		<description><![CDATA[To put in color themes: 1. Download the themes, and put them in a folder (A windows example would be): &#8220;c:/Program File/Emacs/emacs/lisp/your_color_folder/&#8221; 2. Emacs must of course be able to find the files. You can check the &#8220;load path&#8221; (= &#8230; <a href="http://www.clsnyder.com/WordPress/2008/05/18/emacs-color-themes/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>To put in color themes:<br />
1. Download the themes, and put them in a folder (A windows example would be):<br />
&#8220;c:/Program File/Emacs/emacs/lisp/your_color_folder/&#8221;</p>
<p>2. Emacs must of course be able to find the files. You can check the &#8220;load path&#8221; (= where it looks) by:</p>
<p>The directories that Emacs searches through when an elisp file is to be loaded are stored in the load-path variable. This shows you the current load-path:</p>
<p>C-h v load-path RET.</p>
<p>3. You must modify the .emacs file as follows:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="lisp" style="font-family:monospace;"><span style="color: #66cc66;">&#40;</span>add-to-<span style="color: #b1b100;">list</span> 'load-path <span style="color: #ff0000;">&quot;c:/Program File/Emacs/emacs/lisp/your_color_folder/&quot;</span><span style="color: #66cc66;">&#41;</span> 
<span style="color: #66cc66;">&#40;</span>require 'color-theme<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>color-theme-initialize<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>color-theme-matrix<span style="color: #66cc66;">&#41;</span></pre></td></tr></table></div>

<p>That&#8217;s it!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clsnyder.com/WordPress/2008/05/18/emacs-color-themes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Dot emacs file</title>
		<link>http://www.clsnyder.com/WordPress/2008/05/18/my-dot-emacs-file/</link>
		<comments>http://www.clsnyder.com/WordPress/2008/05/18/my-dot-emacs-file/#comments</comments>
		<pubDate>Sun, 18 May 2008 23:36:23 +0000</pubDate>
		<dc:creator>clsnyder</dc:creator>
				<category><![CDATA[Emacs]]></category>

		<guid isPermaLink="false">http://www.clsnyder.com/WordPress/?p=167</guid>
		<description><![CDATA[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 &#8230; <a href="http://www.clsnyder.com/WordPress/2008/05/18/my-dot-emacs-file/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[
<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
</pre></td><td class="code"><pre class="lisp" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">;;; -*-emacs-lisp-*-</span>
<span style="color: #808080; font-style: italic;">;;; $Id: dot-emacs.el,v 1.00 2008-05-15</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> load-path <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cons</span> <span style="color: #66cc66;">&#40;</span>expand-file-<span style="color: #b1b100;">name</span> <span style="color: #ff0000;">&quot;~/.emacs.d/&quot;</span><span style="color: #66cc66;">&#41;</span> load-path<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defmacro</span> setq-if-<span style="color: #b1b100;">equal</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">symbol</span> old-<span style="color: #b1b100;">value</span> new-<span style="color: #b1b100;">value</span> <span style="color: #66cc66;">&amp;</span>optional nowarn<span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;setq-if-equal set SYMBOL to NEW-VALUE iff it has OLD-VALUE.
It compare the old value with OLD-VALUE using `equal' then
set it to NEW-VALUE if the old value matched.
If NOWARN is nil, and the old value is not matched with the
supplied one, a warning message is generated.&quot;</span>
   `<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
      <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">equal</span> <span style="color: #66cc66;">,</span><span style="color: #b1b100;">symbol</span> <span style="color: #66cc66;">,</span>old-<span style="color: #b1b100;">value</span><span style="color: #66cc66;">&#41;</span>
	  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> <span style="color: #66cc66;">,</span><span style="color: #b1b100;">symbol</span> <span style="color: #66cc66;">,</span>new-<span style="color: #b1b100;">value</span><span style="color: #66cc66;">&#41;</span>
	<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">not</span> <span style="color: #66cc66;">,</span>nowarn<span style="color: #66cc66;">&#41;</span>
	    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span> <span style="color: #66cc66;">&#40;</span>message <span style="color: #ff0000;">&quot;%s has unexpected value `%S'&quot;</span>
			    <span style="color: #66cc66;">&#40;</span>symbol-<span style="color: #b1b100;">name</span> '<span style="color: #66cc66;">,</span><span style="color: #b1b100;">symbol</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">,</span><span style="color: #b1b100;">symbol</span><span style="color: #66cc66;">&#41;</span>
		   <span style="color: #66cc66;">,</span>old-<span style="color: #b1b100;">value</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> move-key <span style="color: #66cc66;">&#40;</span>keymap old-key new-key<span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Move the key definition from OLD-KEY to NEW-KEY in KEYMAP.&quot;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>def <span style="color: #66cc66;">&#40;</span>lookup-key keymap old-key<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span>alt <span style="color: #66cc66;">&#40;</span>lookup-key keymap new-key<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>define-key keymap new-key def<span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>define-key keymap old-key <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
    alt<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;; Set up the keyboard so the delete key on both the regular keyboard</span>
<span style="color: #808080; font-style: italic;">;;; and the keypad delete the character under the cursor and to the right</span>
<span style="color: #808080; font-style: italic;">;;; under X, instead of the default, backspace behavior.</span>
<span style="color: #808080; font-style: italic;">;; (global-set-key [delete] 'delete-char)</span>
<span style="color: #808080; font-style: italic;">;; (global-set-key [kp-delete] 'delete-char)</span>
<span style="color: #808080; font-style: italic;">;;; This sets up the coding mode for linux kernel sources.</span>
<span style="color: #808080; font-style: italic;">;;; (originally obtained from Documentation/CodingStyle in Linux kernel tree)</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> linux-c-mode <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;C mode with adjusted defaults for use with the Linux kernel.&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>c-mode<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&gt;=</span> emacs-version <span style="color: #cc66cc;">22</span><span style="color: #66cc66;">&#41;</span>
      <span style="color: #66cc66;">&#40;</span>c-set-style <span style="color: #ff0000;">&quot;linux&quot;</span><span style="color: #66cc66;">&#41;</span>   <span style="color: #808080; font-style: italic;">; After version ??, we have &quot;linux&quot; mode!</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
      <span style="color: #66cc66;">&#40;</span>c-set-style <span style="color: #ff0000;">&quot;K&amp;R&quot;</span><span style="color: #66cc66;">&#41;</span>
      <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> c-basic-offset <span style="color: #cc66cc;">8</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>add-to-<span style="color: #b1b100;">list</span> 'auto-mode-alist '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;/linux.*/.*<span style="color: #000099; font-weight: bold;">\\</span>.[ch]$&quot;</span> <span style="color: #66cc66;">.</span> linux-c-mode<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>setq-default make-backup-files <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;; Buffer Menu</span>
<span style="color: #808080; font-style: italic;">;;; Sort by the 2nd column (buffer name) in Buffer list</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> Buffer-menu-sort-column <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;; for wheel mouse</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;;  http://www.inria.fr/koala/colas/mouse-wheel-scroll/#gnuemacs</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;(defun up-slightly () (interactive) (scroll-up 5))</span>
<span style="color: #808080; font-style: italic;">;;(defun down-slightly () (interactive) (scroll-down 5))</span>
<span style="color: #808080; font-style: italic;">;;(global-set-key [mouse-4] 'down-slightly)</span>
<span style="color: #808080; font-style: italic;">;;(global-set-key [mouse-5] 'up-slightly)</span>
<span style="color: #808080; font-style: italic;">;;(defun up-one () (interactive) (scroll-up 1))</span>
<span style="color: #808080; font-style: italic;">;;(defun down-one () (interactive) (scroll-down 1))</span>
<span style="color: #808080; font-style: italic;">;;(global-set-key [S-mouse-4] 'down-one)</span>
<span style="color: #808080; font-style: italic;">;;(global-set-key [S-mouse-5] 'up-one)</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cond</span> <span style="color: #66cc66;">&#40;</span>window-system
       <span style="color: #66cc66;">&#40;</span>mwheel-install<span style="color: #66cc66;">&#41;</span>
       <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Force mouse yanks at point not at cursor.</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> mouse-yank-at-point t<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;; frame title : set to buffer name</span>
<span style="color: #808080; font-style: italic;">;;(setq frame-title-format &quot;Emacs - %f &quot;)  </span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> frame-title-format <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> window-system
			     <span style="color: #ff0000;">&quot;%F - %f&quot;</span>
			   <span style="color: #ff0000;">&quot;Emacs - %f&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> icon-title-format  <span style="color: #ff0000;">&quot;%b&quot;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;(defun up-a-lot () (interactive) (scroll-up))</span>
<span style="color: #808080; font-style: italic;">;;(defun down-a-lot () (interactive) (scroll-down))</span>
<span style="color: #808080; font-style: italic;">;;(global-set-key [C-mouse-4] 'down-a-lot)</span>
<span style="color: #808080; font-style: italic;">;;(global-set-key [C-mouse-5] 'up-a-lot)</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; If you want to scroll by half a page instead of only 5 lines as above,</span>
<span style="color: #808080; font-style: italic;">;;; John Rowe sent this GNU Emacs code: </span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;(defun scroll-up-half ()</span>
<span style="color: #808080; font-style: italic;">;;  &quot;Scroll up half a page.&quot;</span>
<span style="color: #808080; font-style: italic;">;;  (interactive)</span>
<span style="color: #808080; font-style: italic;">;;  (scroll-up (/ (window-height) 2)))</span>
<span style="color: #808080; font-style: italic;">;;</span>
<span style="color: #808080; font-style: italic;">;;(defun scroll-down-half ()</span>
<span style="color: #808080; font-style: italic;">;;  &quot;Scroll down half a page.&quot;</span>
<span style="color: #808080; font-style: italic;">;;  (interactive)</span>
<span style="color: #808080; font-style: italic;">;;  (scroll-down (/ (window-height) 2)))</span>
<span style="color: #808080; font-style: italic;">;;</span>
<span style="color: #808080; font-style: italic;">;;(global-set-key [(mouse-5)] 'scroll-up-half)</span>
<span style="color: #808080; font-style: italic;">;;(global-set-key [(mouse-4)] 'scroll-down-half)</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; If you are intended BS (backspace) key to work</span>
<span style="color: #808080; font-style: italic;">;;; correctly on some terminals, uncomment one of below s-exp.</span>
<span style="color: #808080; font-style: italic;">;;;                                                 -- cinsk</span>
<span style="color: #808080; font-style: italic;">;;(global-set-key [C-?] 'backward-delete-char)</span>
<span style="color: #808080; font-style: italic;">;;(global-set-key [C-h] 'backward-delete-char);</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; To use function keys, mouse button, or non-ASCII character such</span>
<span style="color: #808080; font-style: italic;">;;; as `C-=' or `H-a', use a vector(`[..]') to specify the key sequence.</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;;  - If a vector element is a character, use the Lisp character constant,</span>
<span style="color: #808080; font-style: italic;">;;;    `?'. e.g. `?\C-='</span>
<span style="color: #808080; font-style: italic;">;;;  - For example, below two statements are the same:</span>
<span style="color: #808080; font-style: italic;">;;;     (global-set-key &quot;\C-x\e\e&quot; 'repeat-complex-command)</span>
<span style="color: #808080; font-style: italic;">;;;     (global-set-key [?\C-x ?\e ?\e] 'repeat-complex-command)</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Lisp Symbols for the function keys:</span>
<span style="color: #808080; font-style: italic;">;;;  `left', `up', `right', `down'</span>
<span style="color: #808080; font-style: italic;">;;;       Cursor arrow keys.</span>
<span style="color: #808080; font-style: italic;">;;;  </span>
<span style="color: #808080; font-style: italic;">;;;  `begin', `end', `home', `next', `prior'</span>
<span style="color: #808080; font-style: italic;">;;;       Other cursor repositioning keys.</span>
<span style="color: #808080; font-style: italic;">;;;  </span>
<span style="color: #808080; font-style: italic;">;;;  `select', `print', `execute', `backtab'</span>
<span style="color: #808080; font-style: italic;">;;;  `insert', `undo', `redo', `clearline'</span>
<span style="color: #808080; font-style: italic;">;;;  `insertline', `deleteline', `insertchar', `deletechar'</span>
<span style="color: #808080; font-style: italic;">;;;       Miscellaneous function keys.</span>
<span style="color: #808080; font-style: italic;">;;;  </span>
<span style="color: #808080; font-style: italic;">;;;  `f1', `f2', ... `f35'</span>
<span style="color: #808080; font-style: italic;">;;;       Numbered function keys (across the top of the keyboard).</span>
<span style="color: #808080; font-style: italic;">;;;  </span>
<span style="color: #808080; font-style: italic;">;;;  `kp-add', `kp-subtract', `kp-multiply', `kp-divide'</span>
<span style="color: #808080; font-style: italic;">;;;  `kp-backtab', `kp-space', `kp-tab', `kp-enter'</span>
<span style="color: #808080; font-style: italic;">;;;  `kp-separator', `kp-decimal', `kp-equal'</span>
<span style="color: #808080; font-style: italic;">;;;       Keypad keys (to the right of the regular keyboard), with names or</span>
<span style="color: #808080; font-style: italic;">;;;       punctuation.</span>
<span style="color: #808080; font-style: italic;">;;;  </span>
<span style="color: #808080; font-style: italic;">;;;  `kp-0', `kp-1', ... `kp-9'</span>
<span style="color: #808080; font-style: italic;">;;;       Keypad keys with digits.</span>
<span style="color: #808080; font-style: italic;">;;;  </span>
<span style="color: #808080; font-style: italic;">;;;  `kp-f1', `kp-f2', `kp-f3', `kp-f4'</span>
<span style="color: #808080; font-style: italic;">;;;       Keypad PF keys.</span>
<span style="color: #808080; font-style: italic;">;;;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-cc&quot;</span> 'compile<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-cd&quot;</span> 'unicode-shell<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control ?c<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control ?d<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'zap-to-nonspace<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span>?\C-<span style="color: #66cc66;">.</span><span style="color: #66cc66;">&#93;</span> 'find-tag-other-window<span style="color: #66cc66;">&#41;</span> <span style="color: #808080; font-style: italic;">; C-x o </span>
&nbsp;
<span style="color: #808080; font-style: italic;">;; C-c C-l is used for c-toggle-electric-state</span>
<span style="color: #808080; font-style: italic;">;(global-set-key [(control c) ?l] 'goto-line) ; M-g M-g is binded to goto-line</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control c<span style="color: #66cc66;">&#41;</span> ?i<span style="color: #66cc66;">&#93;</span> 'indent-region<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;; C-x C-v is binded find-alternate-file by default.</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-x<span style="color: #000099; font-weight: bold;">\C</span>-v&quot;</span> 'view-file<span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;(defun my-c-mode-hook ()</span>
<span style="color: #808080; font-style: italic;">;;;  (local-set-key &quot;\C-cc&quot; 'compile)</span>
<span style="color: #808080; font-style: italic;">;;;  (local-set-key &quot;\C-cs&quot; 'shell))</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;;(add-hook 'c-mode-hook 'my-c-mode-hook)</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span>define-abbrev-table 'c-mode-abbrev-table 
  <span style="color: #808080; font-style: italic;">;; I don't know why `@' for abbreviation doesn't work.</span>
  <span style="color: #808080; font-style: italic;">;; So I choose `$' for that.</span>
  '<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;$niy&quot;</span> <span style="color: #ff0000;">&quot;/* TODO: Not Implemented Yet. */&quot;</span> <span style="color: #b1b100;">nil</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>add-hook 'c-mode-hook <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">function</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #b1b100;">nil</span> <span style="color: #66cc66;">&#40;</span>abbrev-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;; imenu mode</span>
<span style="color: #808080; font-style: italic;">;;;(add-hook 'c-mode-hook (function (lambda nil (imenu-add-to-menubar))))</span>
<span style="color: #808080; font-style: italic;">;;;(add-hook 'c++-mode-hook (function (lambda nil (imenu-add-to-menubar))))</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;; which-function mode</span>
<span style="color: #808080; font-style: italic;">;;;(add-hook 'c-mode-hook (function (lambda nil (which-function-mode))))</span>
<span style="color: #808080; font-style: italic;">;;;(add-hook 'c++-mode-hook (function (lambda nil (which-function-mode))))</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>which-function-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>			<span style="color: #808080; font-style: italic;">; display function names in mode-line</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Switching between buffers using iswitchb</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span>iswitchb-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>			<span style="color: #808080; font-style: italic;">; smart buffer switching mode</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> iswitchb-default-method 'maybe-frame<span style="color: #66cc66;">&#41;</span> <span style="color: #808080; font-style: italic;">; ask to use another frame.</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-font-lock-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>		<span style="color: #808080; font-style: italic;">; every buffer uses font-lock-mode</span>
<span style="color: #66cc66;">&#40;</span>line-number-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>			<span style="color: #808080; font-style: italic;">; show line number in mode-line</span>
<span style="color: #66cc66;">&#40;</span>column-number-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>			<span style="color: #808080; font-style: italic;">; show column number in mode-line</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> resize-minibuffer-mode t<span style="color: #66cc66;">&#41;</span>		<span style="color: #808080; font-style: italic;">; ensure all contents of mini</span>
					<span style="color: #808080; font-style: italic;">; buffer visible</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>tool-bar-mode -<span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>			<span style="color: #808080; font-style: italic;">; hide tool bar</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;(when window-system</span>
<span style="color: #808080; font-style: italic;">;;  (setq special-display-buffer-names</span>
<span style="color: #808080; font-style: italic;">;;        '(&quot;*Completions*&quot; &quot;*grep*&quot; &quot;*Buffer List*&quot;)))</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>setq-default indent-tabs-mode <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>	<span style="color: #808080; font-style: italic;">; do not insert tab character.</span>
&nbsp;

<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> source-untabify <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Stealed from Jamie Zawinski's homepage,
http://www.jwz.org/doc/tabs-vs-spaces.html
Remove any right trailing whitespaces and convert any tab
character to the spaces&quot;</span>
  <span style="color: #66cc66;">&#40;</span>save-excursion
    <span style="color: #66cc66;">&#40;</span>goto-char <span style="color: #66cc66;">&#40;</span>point-<span style="color: #b1b100;">min</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>while <span style="color: #66cc66;">&#40;</span>re-search-forward <span style="color: #ff0000;">&quot;[ <span style="color: #000099; font-weight: bold;">\t</span>]+$&quot;</span> <span style="color: #b1b100;">nil</span> t<span style="color: #66cc66;">&#41;</span>
      <span style="color: #66cc66;">&#40;</span>delete-region <span style="color: #66cc66;">&#40;</span>match-beginning <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>match-end <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>goto-char <span style="color: #66cc66;">&#40;</span>point-<span style="color: #b1b100;">min</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>search-forward <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\t</span>&quot;</span> <span style="color: #b1b100;">nil</span> t<span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span>untabify <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">1</span>- <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>point-<span style="color: #b1b100;">max</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>add-hook 'c-mode-hook '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> 
                          <span style="color: #66cc66;">&#40;</span>make-local-variable 'write-contents-hooks<span style="color: #66cc66;">&#41;</span>
                          <span style="color: #66cc66;">&#40;</span>add-hook 'write-contents-hooks 'source-untabify<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>add-hook 'c++-mode-hook '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> 
                            <span style="color: #66cc66;">&#40;</span>make-local-variable 'write-contents-hooks<span style="color: #66cc66;">&#41;</span>
                            <span style="color: #66cc66;">&#40;</span>add-hook 'write-contents-hooks 'source-untabify<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;

<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> zap-to-nonspace <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Delete all whitespace up to the next non-whitespace char.&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>save-excursion
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>start <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span>end <span style="color: #66cc66;">&#40;</span>point-<span style="color: #b1b100;">max</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
      <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>re-search-forward <span style="color: #ff0000;">&quot;[^ <span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\t</span><span style="color: #000099; font-weight: bold;">\v</span>]&quot;</span> <span style="color: #b1b100;">nil</span> t<span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> end <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">min</span> <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">1</span>- <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> end<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
      <span style="color: #66cc66;">&#40;</span>kill-region start end<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>

<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #b1b100;">nil</span>
  <span style="color: #808080; font-style: italic;">;; Support for GNU global, the source code tag system</span>
  <span style="color: #66cc66;">&#40;</span>load-library <span style="color: #ff0000;">&quot;gtags&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>add-hook 'c-mode-hook '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>gtags-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>add-hook 'c++-mode-hook '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>gtags-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Colors</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;;(set-background-color &quot;rgb:0000/1500/8000&quot;)</span>
<span style="color: #808080; font-style: italic;">;;;(set-foreground-color &quot;white&quot;)</span>
<span style="color: #808080; font-style: italic;">;;;(set-cursor-color &quot;&quot;)</span>
<span style="color: #808080; font-style: italic;">;;;(set-mouse-color &quot;&quot;)</span>
<span style="color: #808080; font-style: italic;">;;;(set-face-foreground 'highlight &quot;white&quot;)</span>
<span style="color: #808080; font-style: italic;">;;;(set-face-background 'highlight &quot;slate blue&quot;)</span>
<span style="color: #808080; font-style: italic;">;;;(set-face-background 'region &quot;slate blue&quot;)</span>
<span style="color: #808080; font-style: italic;">;;;(set-face-background 'secondary-selection &quot;turquoise&quot;)</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; emacs server</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;;(load &quot;/usr/share/emacs/21.2/lisp/gnuserv&quot;)</span>
<span style="color: #66cc66;">&#40;</span>server-start<span style="color: #66cc66;">&#41;</span>
<span style="color: #808080; font-style: italic;">;;;(load &quot;gnuserv&quot;)</span>
<span style="color: #808080; font-style: italic;">;;;(gnuserv-start)</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; I prefer case-sensitive search &amp; replace</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span>setq-default case-fold-search <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>setq-default tags-case-fold-search <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span>fset 'find-next-tag <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-u<span style="color: #000099; font-weight: bold;">\2</span>56&quot;</span><span style="color: #66cc66;">&#41;</span>        <span style="color: #808080; font-style: italic;">; macro for C-u M-.</span>
<span style="color: #66cc66;">&#40;</span>fset 'find-prev-tag <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-u-<span style="color: #000099; font-weight: bold;">\2</span>56&quot;</span><span style="color: #66cc66;">&#41;</span>       <span style="color: #808080; font-style: italic;">; macro for C-u - M-. </span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\M</span>-]&quot;</span> 'find-next-tag<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\M</span>-[&quot;</span> 'find-prev-tag<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;(global-set-key [up]   '(lambda () (interactive) (scroll-down 1)))</span>
<span style="color: #808080; font-style: italic;">;(global-set-key [down] '(lambda () (interactive) (scroll-up 1)))</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>fset 'scroll-other-frame <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-xo<span style="color: #000099; font-weight: bold;">\C</span>-v<span style="color: #000099; font-weight: bold;">\C</span>-xo&quot;</span><span style="color: #66cc66;">&#41;</span>      <span style="color: #808080; font-style: italic;">; C-x o C-v C-x o</span>
<span style="color: #66cc66;">&#40;</span>fset 'scroll-other-frame-down <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-xo<span style="color: #000099; font-weight: bold;">\3</span>66<span style="color: #000099; font-weight: bold;">\C</span>-xo&quot;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #808080; font-style: italic;">; C-x o M-v C-x o</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>meta shift prior<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'scroll-other-frame-down<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>meta shift next<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'scroll-other-frame<span style="color: #66cc66;">&#41;</span>
&nbsp;

<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; navigation customization</span>
<span style="color: #808080; font-style: italic;">;;;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>require 'cc-mode<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;cc-subword&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>require 'cc-subword<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>define-key c-mode-base-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>meta ?F<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'c-forward-subword<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>define-key c-mode-base-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>meta ?B<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'c-backward-subword<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>define-key c-mode-base-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>meta ?D<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'c-kill-subword<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>add-hook 'c-mode-common-hook <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>cwarn-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>define-key c-mode-base-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>meta ?<span style="color: #66cc66;">&#123;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'c-beginning-of-<span style="color: #b1b100;">defun</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>define-key c-mode-base-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>meta ?<span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'c-end-of-<span style="color: #b1b100;">defun</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>define-key c-mode-base-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control meta ?<span style="color: #66cc66;">&#123;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'c-up-conditional-with-else<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>define-key c-mode-base-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control meta ?<span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'c-down-conditional-with-else<span style="color: #66cc66;">&#41;</span>
&nbsp;

<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Prompt for arguments to the preprocessor for `c-macro-expand'</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> c-macro-prompt-flag t<span style="color: #66cc66;">&#41;</span>
&nbsp;

<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> reverse-other-window <span style="color: #66cc66;">&#40;</span>arg<span style="color: #66cc66;">&#41;</span> 
  <span style="color: #ff0000;">&quot;Reverse `other-window' with no argument&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;p&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>other-window <span style="color: #66cc66;">&#40;</span>- arg<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> first-window <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Select the first window of the current frame.&quot;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>window <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">mapcar</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span>w<span style="color: #66cc66;">&#41;</span>
               <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>edges <span style="color: #66cc66;">&#40;</span>window-edges w<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                 <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">eql</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> edges<span style="color: #66cc66;">&#41;</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span>
                      <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">eql</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cadr</span> edges<span style="color: #66cc66;">&#41;</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span>
                      <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> window w<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>window-<span style="color: #b1b100;">list</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    window<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> abs-other-window <span style="color: #66cc66;">&#40;</span>index<span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Same as <span style="color: #000099; font-weight: bold;">\\</span>[other-window] except the base is the first window not the
current window&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;p&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>select-window <span style="color: #66cc66;">&#40;</span>first-window<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>other-window index<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?<span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span>
                '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>abs-other-window <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?<span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#93;</span>
                '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>abs-other-window <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?<span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#93;</span>
                '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>abs-other-window <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?<span style="color: #cc66cc;">3</span><span style="color: #66cc66;">&#93;</span>
                '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>abs-other-window <span style="color: #cc66cc;">3</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?<span style="color: #cc66cc;">4</span><span style="color: #66cc66;">&#93;</span>
                '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>abs-other-window <span style="color: #cc66cc;">4</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?<span style="color: #cc66cc;">5</span><span style="color: #66cc66;">&#93;</span>
                '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>abs-other-window <span style="color: #cc66cc;">5</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?<span style="color: #cc66cc;">6</span><span style="color: #66cc66;">&#93;</span>
                '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>abs-other-window <span style="color: #cc66cc;">6</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?<span style="color: #cc66cc;">7</span><span style="color: #66cc66;">&#93;</span>
                '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>abs-other-window <span style="color: #cc66cc;">7</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?<span style="color: #cc66cc;">8</span><span style="color: #66cc66;">&#93;</span>
                '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>abs-other-window <span style="color: #cc66cc;">8</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?<span style="color: #cc66cc;">9</span><span style="color: #66cc66;">&#93;</span>
                '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>abs-other-window <span style="color: #cc66cc;">9</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;(global-set-key [C-tab] 'other-window)  ; C-x o</span>
<span style="color: #808080; font-style: italic;">;(global-set-key [S-iso-lefttab] 'reverse-other-window)</span>
<span style="color: #808080; font-style: italic;">;(global-set-key [(backtab)] 'reverse-other-window)</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control tab<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'smart-other-window<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?n<span style="color: #66cc66;">&#93;</span> 'other-window<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?o<span style="color: #66cc66;">&#93;</span> 'other-window<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?p<span style="color: #66cc66;">&#93;</span> 'reverse-other-window<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?k<span style="color: #66cc66;">&#93;</span> 'delete-window<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?w ?K<span style="color: #66cc66;">&#93;</span> 'delete-other-window<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> smart-other-window <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;This calls `other-window' if there are more than one window, otherwise
calls `iswitchb'&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>one-window-p t <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>
      <span style="color: #66cc66;">&#40;</span>call-interactively 'iswitchb-buffer<span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>call-interactively 'other-window<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> smart-other-frame <span style="color: #66cc66;">&#40;</span>arg<span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;This calls `other-frame' if there are more than one frame, otherwise calls
`other-window'&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;p&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&gt;</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">length</span> <span style="color: #66cc66;">&#40;</span>frame-<span style="color: #b1b100;">list</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>
      <span style="color: #66cc66;">&#40;</span>other-frame arg<span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>other-window arg<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> reverse-smart-other-frame <span style="color: #66cc66;">&#40;</span>arg<span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;This calls `other-frame' if there are more than one frame, otherwise calls
`other-window'&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;p&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&gt;</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">length</span> <span style="color: #66cc66;">&#40;</span>frame-<span style="color: #b1b100;">list</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>
      <span style="color: #66cc66;">&#40;</span>other-frame <span style="color: #66cc66;">&#40;</span>- arg<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>other-window <span style="color: #66cc66;">&#40;</span>- arg<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?o<span style="color: #66cc66;">&#93;</span> 'smart-other-frame<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-unset-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?f<span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?f ?f<span style="color: #66cc66;">&#93;</span> 'new-frame<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?f ?k<span style="color: #66cc66;">&#93;</span> 'delete-frame<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?f ?K<span style="color: #66cc66;">&#93;</span> 'delete-other-frames<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?f ?n<span style="color: #66cc66;">&#93;</span> 'smart-other-frame<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?f ?o<span style="color: #66cc66;">&#93;</span> 'smart-other-frame<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?f ?p<span style="color: #66cc66;">&#93;</span> 'reverse-smart-other-frame<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> run-command-other-frame <span style="color: #66cc66;">&#40;</span>command<span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Run COMMAND in a new frame.&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;CC-x 5 M-x &quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>select-frame <span style="color: #66cc66;">&#40;</span>new-frame<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>call-interactively command<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\C</span>-x5<span style="color: #000099; font-weight: bold;">\M</span>-x&quot;</span> 'run-command-other-frame<span style="color: #66cc66;">&#41;</span>
&nbsp;

<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Quick Frame Configuration Load/Save</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control f2<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
                                  <span style="color: #ff0000;">&quot;Quick frame load&quot;</span>
                                  <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
                                  <span style="color: #66cc66;">&#40;</span>jump-to-register ?\x3<span style="color: #66cc66;">&#41;</span>
                                  <span style="color: #66cc66;">&#40;</span>message <span style="color: #ff0000;">&quot;Load saved frame configuration&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control f3<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
                                  <span style="color: #ff0000;">&quot;Quick frame save&quot;</span>
                                  <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
                                  <span style="color: #66cc66;">&#40;</span>frame-configuration-to-register ?\x3<span style="color: #66cc66;">&#41;</span>
                                  <span style="color: #66cc66;">&#40;</span>message <span style="color: #ff0000;">&quot;Frame configuration saved&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;

<span style="color: #808080; font-style: italic;">;(require 'autofit-frame)</span>
<span style="color: #808080; font-style: italic;">;(add-hook 'after-make-frame-functions 'fit-frame)</span>
<span style="color: #808080; font-style: italic;">;</span>
<span style="color: #808080; font-style: italic;">;(add-hook 'temp-buffer-show-hook</span>
<span style="color: #808080; font-style: italic;">;          'fit-frame-if-one-window 'append)</span>
&nbsp;

<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Emacs Lisp Mode</span>
<span style="color: #808080; font-style: italic;">;;;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>add-hook 'emacs-lisp-mode-hook 
          '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
             <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>tagfile <span style="color: #ff0000;">&quot;/usr/share/emacs/TAGS&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
               <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> <span style="color: #66cc66;">&#40;</span>file-readable-p tagfile<span style="color: #66cc66;">&#41;</span>
                    <span style="color: #66cc66;">&#40;</span>visit-tags-table <span style="color: #ff0000;">&quot;/usr/share/emacs/TAGS&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;lisp-mode&quot;</span>
  '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
    <span style="color: #66cc66;">&#40;</span>define-key emacs-lisp-mode-map <span style="color: #66cc66;">&#91;</span>f5<span style="color: #66cc66;">&#93;</span> 'eval-buffer<span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>define-key emacs-lisp-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control c<span style="color: #66cc66;">&#41;</span> ?<span style="color: #66cc66;">|</span><span style="color: #66cc66;">&#93;</span> 'eval-region<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;

<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Common Lisp Mode -- from clisp-2.38/editors.txt</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; It seems that Emacs already have `lisp-eval-last-sexp' that has</span>
<span style="color: #808080; font-style: italic;">;;; the same feature of `</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> inferior-lisp-program <span style="color: #ff0000;">&quot;clisp -I -q -E utf-8&quot;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> lisp-macroexpand-region <span style="color: #66cc66;">&#40;</span>start end <span style="color: #66cc66;">&amp;</span>optional and-<span style="color: #b1b100;">go</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Macroexpand the current region in the inferior Lisp process.
Prefix argument means switch to the Lisp buffer afterwards.&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;r<span style="color: #000099; font-weight: bold;">\n</span>P&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>comint-send-string
   <span style="color: #66cc66;">&#40;</span>inferior-lisp-proc<span style="color: #66cc66;">&#41;</span>
   <span style="color: #66cc66;">&#40;</span>format <span style="color: #ff0000;">&quot;(macroexpand-1 (quote %s))<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>
           <span style="color: #66cc66;">&#40;</span>buffer-substring-no-properties start end<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> and-<span style="color: #b1b100;">go</span> <span style="color: #66cc66;">&#40;</span>switch-to-lisp t<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> lisp-macroexpand-sexp <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&amp;</span>optional and-<span style="color: #b1b100;">go</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Macroexpand the next sexp in the inferior Lisp process.
Prefix argument means switch to the Lisp buffer afterwards.&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;P&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>lisp-macroexpand-region <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>scan-sexps <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span> <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> and-<span style="color: #b1b100;">go</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;inf-lisp&quot;</span>
  '<span style="color: #66cc66;">&#40;</span>define-key inferior-lisp-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control ?x<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control ?m<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 
     'lisp-macro-expand-sexp<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>define-key lisp-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control ?x<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control ?m<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'lisp-macro-expand-sexp<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; psgml mode setup</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;(autoload 'sgml-mode &quot;psgml&quot; &quot;Major mode to edit SGML files.&quot; t)</span>
<span style="color: #808080; font-style: italic;">;(autoload 'xml-mode &quot;psgml&quot; &quot;Major mode to edit XML files.&quot; t)</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> lzx-nxml-mode <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;OpenLaszlo XML Mode&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>nxml-mode<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>make-local-variable 'nxml-child-indent<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> nxml-child-indent <span style="color: #cc66cc;">4</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;rng-auto&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>load <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;rng-auto&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #808080; font-style: italic;">;; `sgml-mode' adds an entry to `magic-mode-alist' so that</span>
  <span style="color: #808080; font-style: italic;">;; `auto-mode-alist' to `nxml-mode' might not work.  To work around</span>
  <span style="color: #808080; font-style: italic;">;; this, define an alias for `xml-mode' to `nxml-mode'.</span>
  <span style="color: #66cc66;">&#40;</span>defalias 'xml-mode 'nxml-mode<span style="color: #66cc66;">&#41;</span>
  <span style="color: #808080; font-style: italic;">;(autoload 'nxml-mode &quot;nxml-mode&quot; &quot;new XML major mode&quot; t)</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> auto-mode-alist <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cons</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.<span style="color: #000099; font-weight: bold;">\\</span>(xml<span style="color: #000099; font-weight: bold;">\\</span>|pvm<span style="color: #000099; font-weight: bold;">\\</span>|rss<span style="color: #000099; font-weight: bold;">\\</span>)<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span> <span style="color: #66cc66;">.</span> nxml-mode<span style="color: #66cc66;">&#41;</span>
                              auto-mode-alist<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> auto-mode-alist <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cons</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.lzx<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span> <span style="color: #66cc66;">.</span> lzx-nxml-mode<span style="color: #66cc66;">&#41;</span>
                              auto-mode-alist<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; nxml mode</span>
<span style="color: #808080; font-style: italic;">;;;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;; Make a slash automatically completes the end-tag</span>
<span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;nxml-mode&quot;</span>
  '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
     <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> nxml-slash-auto-complete-flag t<span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span>define-key nxml-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control ?c<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control ?e<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span>
       'nxml-enclose-paragraph<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> nxml-enclose-paragraph <span style="color: #66cc66;">&#40;</span>start end prefix<span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Enclose each paragraph with the element in the region.
By default, &lt;para&gt; element is used.  A prefix argument will give you a
chance to change the name of the element.&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;*r<span style="color: #000099; font-weight: bold;">\n</span>P&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span>curpos 
        <span style="color: #66cc66;">&#40;</span>done <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>elname <span style="color: #ff0000;">&quot;para&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">not</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">eq</span> <span style="color: #66cc66;">&#40;</span>prefix-numeric-<span style="color: #b1b100;">value</span> prefix<span style="color: #66cc66;">&#41;</span> <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> elname <span style="color: #66cc66;">&#40;</span>read-string <span style="color: #ff0000;">&quot;Element name: &quot;</span>
                                  <span style="color: #ff0000;">&quot;para&quot;</span> 'docbook-element-name-history<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>save-excursion
      <span style="color: #66cc66;">&#40;</span>save-restriction
        <span style="color: #66cc66;">&#40;</span>narrow-to-region start end<span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span>goto-char <span style="color: #66cc66;">&#40;</span>point-<span style="color: #b1b100;">min</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
        <span style="color: #66cc66;">&#40;</span>while <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">not</span> done<span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> curpos <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span>forward-paragraph<span style="color: #66cc66;">&#41;</span>
          <span style="color: #808080; font-style: italic;">;(message (format &quot;curpos(%d) point(%d)&quot; curpos (point)))</span>
          <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&gt;=</span> curpos <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
              <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
                <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> done t<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span>backward-paragraph<span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">eq</span> <span style="color: #66cc66;">&#40;</span>char-after<span style="color: #66cc66;">&#41;</span> ?\n<span style="color: #66cc66;">&#41;</span>
              <span style="color: #66cc66;">&#40;</span>goto-char <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">1</span>+ <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
          <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">not</span> done<span style="color: #66cc66;">&#41;</span>
              <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
                <span style="color: #66cc66;">&#40;</span>insert <span style="color: #66cc66;">&#40;</span>concat <span style="color: #ff0000;">&quot;&lt;&quot;</span> elname <span style="color: #ff0000;">&quot;&gt;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                <span style="color: #66cc66;">&#40;</span>forward-paragraph<span style="color: #66cc66;">&#41;</span>
                <span style="color: #66cc66;">&#40;</span>insert <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">eq</span> <span style="color: #66cc66;">&#40;</span>char-before<span style="color: #66cc66;">&#41;</span> ?\n<span style="color: #66cc66;">&#41;</span>
                            <span style="color: #66cc66;">&#40;</span>concat <span style="color: #ff0000;">&quot;&lt;/&quot;</span> elname <span style="color: #ff0000;">&quot;&gt;<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #66cc66;">&#41;</span>
                          <span style="color: #66cc66;">&#40;</span>concat <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\n</span>&lt;/&quot;</span> elname <span style="color: #ff0000;">&quot;&gt;&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                <span style="color: #808080; font-style: italic;">;(message (format &quot;pt(%d) pt-max(%d)&quot; (point) (point-max)))</span>
                <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&gt;=</span> <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">1</span>- <span style="color: #66cc66;">&#40;</span>point-<span style="color: #b1b100;">max</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> done t<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Dired and dired-x setting</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span>require 'dired-x<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>add-hook 'dired-load-hook
	  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
	    <span style="color: #808080; font-style: italic;">;; Set dired-x global variables here.  For example:</span>
	    <span style="color: #808080; font-style: italic;">;; (setq dired-guess-shell-gnutar &quot;gtar&quot;)</span>
	    <span style="color: #808080; font-style: italic;">;; Bind dired-x-find-file.</span>
	    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> dired-x-hands-off-my-keys <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
	    <span style="color: #808080; font-style: italic;">;; Make sure our binding preference is invoked.</span>
	    <span style="color: #66cc66;">&#40;</span>dired-x-bind-find-file<span style="color: #66cc66;">&#41;</span>
	    <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>add-hook 'dired-mode-hook
	  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
	    <span style="color: #808080; font-style: italic;">;; Set dired-x buffer-local variables here.  For example:</span>
	    <span style="color: #66cc66;">&#40;</span>dired-omit-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>
	    <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> auto-mode-alist <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cons</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;[^/]<span style="color: #000099; font-weight: bold;">\\</span>.dired$&quot;</span> <span style="color: #66cc66;">.</span> dired-virtual-mode<span style="color: #66cc66;">&#41;</span>
                            auto-mode-alist<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>setq-if-<span style="color: #b1b100;">equal</span> dired-omit-files <span style="color: #ff0000;">&quot;^<span style="color: #000099; font-weight: bold;">\\</span>.?#<span style="color: #000099; font-weight: bold;">\\</span>|^<span style="color: #000099; font-weight: bold;">\\</span>.$<span style="color: #000099; font-weight: bold;">\\</span>|^<span style="color: #000099; font-weight: bold;">\\</span>.<span style="color: #000099; font-weight: bold;">\\</span>.$&quot;</span>
               <span style="color: #66cc66;">&#40;</span>concat dired-omit-files
                       <span style="color: #808080; font-style: italic;">;; Omit RCS files</span>
                       <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>|^RCS$<span style="color: #000099; font-weight: bold;">\\</span>|,v<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span>
                       <span style="color: #808080; font-style: italic;">;; Omit CVS and Bitkeeper files</span>
                       <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>|^CVS$<span style="color: #000099; font-weight: bold;">\\</span>|^BitKeeper<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span>
                       <span style="color: #808080; font-style: italic;">;; Omit dot files</span>
                       <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>|^<span style="color: #000099; font-weight: bold;">\\</span>..+<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span>
                       <span style="color: #808080; font-style: italic;">;; Omit .o, .lo, .Po, .Plo, .a, .la files</span>
                       <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>|.+<span style="color: #000099; font-weight: bold;">\\</span>.<span style="color: #000099; font-weight: bold;">\\</span>(o<span style="color: #000099; font-weight: bold;">\\</span>|lo<span style="color: #000099; font-weight: bold;">\\</span>|Po<span style="color: #000099; font-weight: bold;">\\</span>|Plo<span style="color: #000099; font-weight: bold;">\\</span>|a<span style="color: #000099; font-weight: bold;">\\</span>|la<span style="color: #000099; font-weight: bold;">\\</span>)<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>setq-if-<span style="color: #b1b100;">equal</span> dired-garbage-files-regexp
               <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.<span style="color: #000099; font-weight: bold;">\\</span>(?:aux<span style="color: #000099; font-weight: bold;">\\</span>|bak<span style="color: #000099; font-weight: bold;">\\</span>|dvi<span style="color: #000099; font-weight: bold;">\\</span>|log<span style="color: #000099; font-weight: bold;">\\</span>|orig<span style="color: #000099; font-weight: bold;">\\</span>|rej<span style="color: #000099; font-weight: bold;">\\</span>|toc<span style="color: #000099; font-weight: bold;">\\</span>)<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span>
               <span style="color: #66cc66;">&#40;</span>format <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>(?:%s<span style="color: #000099; font-weight: bold;">\\</span>|%s<span style="color: #000099; font-weight: bold;">\\</span>)<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span>
                       <span style="color: #ff0000;">&quot;aux<span style="color: #000099; font-weight: bold;">\\</span>|bak<span style="color: #000099; font-weight: bold;">\\</span>|dvi<span style="color: #000099; font-weight: bold;">\\</span>|log<span style="color: #000099; font-weight: bold;">\\</span>|orig<span style="color: #000099; font-weight: bold;">\\</span>|rej<span style="color: #000099; font-weight: bold;">\\</span>|toc&quot;</span> <span style="color: #808080; font-style: italic;">; TeX related</span>
                       <span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>`<span style="color: #000099; font-weight: bold;">\.</span>#.*[0-9]&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>                          <span style="color: #808080; font-style: italic;">; VC related</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;(define-key global-map &quot;\C-x\C-j&quot; 'dired-jump)</span>
<span style="color: #808080; font-style: italic;">;(define-key global-map &quot;\C-x4\C-j&quot; 'dired-jump-other-window)</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> dired-jump-other-frame <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Like `dired-jump-other-window' but in other frame.&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span>* <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>file buffer-file-<span style="color: #b1b100;">name</span><span style="color: #66cc66;">&#41;</span>
         <span style="color: #66cc66;">&#40;</span>dir <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> file <span style="color: #66cc66;">&#40;</span>file-name-directory file<span style="color: #66cc66;">&#41;</span> default-directory<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>dired-other-frame dir<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> ?f ?j<span style="color: #66cc66;">&#93;</span> 'dired-jump-other-frame<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> dired-find-file-other-frame <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&amp;</span>optional arg<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;p&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>buffer <span style="color: #66cc66;">&#40;</span>get-file-buffer <span style="color: #66cc66;">&#40;</span>dired-get-file-for-visit<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span>frame <span style="color: #66cc66;">&#40;</span>next-frame <span style="color: #66cc66;">&#40;</span>selected-frame<span style="color: #66cc66;">&#41;</span> 'visible<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">not</span> buffer<span style="color: #66cc66;">&#41;</span>
         <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> buffer <span style="color: #66cc66;">&#40;</span>find-file-noselect
                       <span style="color: #66cc66;">&#40;</span>dired-get-file-for-visit<span style="color: #66cc66;">&#41;</span> <span style="color: #b1b100;">nil</span> <span style="color: #b1b100;">nil</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">or</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">not</span> frame<span style="color: #66cc66;">&#41;</span>
             <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">eq</span> frame <span style="color: #66cc66;">&#40;</span>selected-frame<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
         <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> frame <span style="color: #66cc66;">&#40;</span>make-frame<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>set-window-buffer <span style="color: #66cc66;">&#40;</span>get-lru-window frame<span style="color: #66cc66;">&#41;</span> buffer<span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&lt;</span> arg <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span>
         <span style="color: #66cc66;">&#40;</span>select-frame-set-input-focus frame<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;dired&quot;</span>
  '<span style="color: #66cc66;">&#40;</span>define-key dired-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control <span style="color: #b1b100;">return</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'dired-find-file-other-frame<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Launch view-mode when visiting other's file.</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> file-uid <span style="color: #66cc66;">&#40;</span>filename<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">caddr</span> <span style="color: #66cc66;">&#40;</span>file-attributes <span style="color: #66cc66;">&#40;</span>expand-file-<span style="color: #b1b100;">name</span> filename<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> smart-view-mode <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>file <span style="color: #66cc66;">&#40;</span>buffer-file-<span style="color: #b1b100;">name</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">not</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">eq</span> <span style="color: #66cc66;">&#40;</span>file-uid file<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>user-uid<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
         <span style="color: #66cc66;">&#40;</span>view-mode <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;(add-hook 'find-file-hook 'smart-view-mode)</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; cscope binding</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; You need to install cscope(1) and xcscope.el to use below bindings</span>
<span style="color: #808080; font-style: italic;">;;; Read xcscope.el packaged in cscope source tarball. It can be obtained</span>
<span style="color: #808080; font-style: italic;">;;; from http://cscope.sourceforge.net/</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;xcscope&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>require 'xcscope<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Version Control</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control q<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'vc-toggle-read-only<span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;(when window-system</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #b1b100;">nil</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> same-window-buffer-names 
        <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">append</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #808080; font-style: italic;">;&quot;*compilation*&quot;</span>
                  <span style="color: #ff0000;">&quot;*Process List*&quot;</span><span style="color: #66cc66;">&#41;</span>
                  same-window-buffer-names<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> special-display-regexps 
        '<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>*Buffer List<span style="color: #000099; font-weight: bold;">\\</span>*&quot;</span>
           <span style="color: #66cc66;">&#40;</span>font <span style="color: #66cc66;">.</span> <span style="color: #ff0000;">&quot;fixed&quot;</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>left <span style="color: #66cc66;">.</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span>                   <span style="color: #808080; font-style: italic;">; in pixels</span>
           <span style="color: #66cc66;">&#40;</span>top <span style="color: #66cc66;">.</span> -<span style="color: #cc66cc;">30</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>auto-raise <span style="color: #66cc66;">.</span> t<span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>width <span style="color: #66cc66;">.</span> <span style="color: #cc66cc;">70</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>height <span style="color: #66cc66;">.</span> <span style="color: #cc66cc;">10</span><span style="color: #66cc66;">&#41;</span>                <span style="color: #808080; font-style: italic;">; in characters</span>
           <span style="color: #66cc66;">&#40;</span>vertical-scroll-bars <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>tool-bar-lines <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>menu-bar-lines <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>*Completions<span style="color: #000099; font-weight: bold;">\\</span>*&quot;</span>
           <span style="color: #66cc66;">&#40;</span>font <span style="color: #66cc66;">.</span> <span style="color: #ff0000;">&quot;fixed&quot;</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>left <span style="color: #66cc66;">.</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span>                   <span style="color: #808080; font-style: italic;">; in pixels</span>
           <span style="color: #66cc66;">&#40;</span>top <span style="color: #66cc66;">.</span> -<span style="color: #cc66cc;">30</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>auto-raise <span style="color: #66cc66;">.</span> f<span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>width <span style="color: #66cc66;">.</span> <span style="color: #cc66cc;">70</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>height <span style="color: #66cc66;">.</span> <span style="color: #cc66cc;">10</span><span style="color: #66cc66;">&#41;</span>                <span style="color: #808080; font-style: italic;">; in characters</span>
           <span style="color: #66cc66;">&#40;</span>vertical-scroll-bars <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>tool-bar-lines <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>menu-bar-lines <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>*cscope<span style="color: #000099; font-weight: bold;">\\</span>*&quot;</span>
           <span style="color: #66cc66;">&#40;</span>font <span style="color: #66cc66;">.</span> <span style="color: #ff0000;">&quot;fixed&quot;</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>left <span style="color: #66cc66;">.</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>top <span style="color: #66cc66;">.</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>auto-raise <span style="color: #66cc66;">.</span> t<span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>width <span style="color: #66cc66;">.</span> <span style="color: #cc66cc;">80</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>height <span style="color: #66cc66;">.</span> <span style="color: #cc66cc;">20</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>vertical-scroll-bars <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>tool-bar-lines <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>menu-bar-lines <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>*.*<span style="color: #000099; font-weight: bold;">\\</span>*&quot;</span>
           <span style="color: #66cc66;">&#40;</span>tool-bar-lines <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
           <span style="color: #66cc66;">&#40;</span>menu-bar-lines <span style="color: #66cc66;">.</span> <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;(load &quot;~/.emacs.d/theme&quot;)</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;(split-window-horizontally)</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;</span>
<span style="color: #808080; font-style: italic;">;; Make the inferior shell a login shell.</span>
<span style="color: #808080; font-style: italic;">;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> explicit-bash-args <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">quote</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;--noediting&quot;</span> <span style="color: #ff0000;">&quot;-i&quot;</span> <span style="color: #ff0000;">&quot;-l&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> gnus-select-method '<span style="color: #66cc66;">&#40;</span>nntp <span style="color: #ff0000;">&quot;news.kornet.net&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defmacro</span> save-font-excursion <span style="color: #66cc66;">&#40;</span>face <span style="color: #66cc66;">&amp;</span>rest body<span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Save the :font property of given FACE during the execution of BODY.&quot;</span>
  <span style="color: #66cc66;">&#40;</span>declare <span style="color: #66cc66;">&#40;</span>indent <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>debug t<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  `<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>oldfont <span style="color: #66cc66;">&#40;</span>face-attribute <span style="color: #66cc66;">,</span>face <span style="color: #66cc66;">:</span><span style="color: #555;">font</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> ret<span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> ret <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span> <span style="color: #66cc66;">,</span>@body<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">or</span> <span style="color: #66cc66;">&#40;</span>string<span style="color: #66cc66;">=</span> oldfont <span style="color: #66cc66;">&#40;</span>face-attribute <span style="color: #66cc66;">,</span>face <span style="color: #66cc66;">:</span><span style="color: #555;">font</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
         <span style="color: #66cc66;">&#40;</span>set-face-attribute <span style="color: #66cc66;">,</span>face <span style="color: #b1b100;">nil</span> <span style="color: #66cc66;">:</span><span style="color: #555;">font</span> oldfont<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
     ret<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; color-theme settings</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> color-theme-history-max-<span style="color: #b1b100;">length</span> <span style="color: #cc66cc;">32</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>defvar color-theme-favorites '<span style="color: #66cc66;">&#40;</span>color-theme-deep-blue
                                color-theme-cinsk-wood
                                color-theme-charcoal-black
                                color-theme-clarity
                                color-theme-comidia
                                color-theme-dark-blue2
                                color-theme-dark-laptop
                                color-theme-taylor
                                color-theme-robin-hood<span style="color: #66cc66;">&#41;</span>
      <span style="color: #ff0000;">&quot;My favorite color theme list&quot;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> color-theme-select-<span style="color: #b1b100;">random</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Select random color theme&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>sym <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">nth</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">random</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">length</span> color-themes<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> color-themes<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">funcall</span> sym<span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>message <span style="color: #ff0000;">&quot;%s installed&quot;</span> <span style="color: #66cc66;">&#40;</span>symbol-<span style="color: #b1b100;">name</span> sym<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #b1b100;">nil</span>
      <span style="color: #808080; font-style: italic;">;; Below code was my first creation.  Don't know which is better yet.</span>
      <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
        <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">random</span> t<span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span>* <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>index <span style="color: #66cc66;">&#40;</span>+ <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">random</span> <span style="color: #66cc66;">&#40;</span>- <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">length</span> color-themes<span style="color: #66cc66;">&#41;</span> <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
               <span style="color: #66cc66;">&#40;</span>theme <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">nth</span> index color-themes<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span>save-font-excursion 'default
            <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">funcall</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> theme<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
          <span style="color: #66cc66;">&#40;</span>message <span style="color: #ff0000;">&quot;%s installed&quot;</span> <span style="color: #66cc66;">&#40;</span>symbol-<span style="color: #b1b100;">name</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> theme<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> color-themes-next-<span style="color: #b1b100;">symbol</span> <span style="color: #66cc66;">&#40;</span>theme<span style="color: #66cc66;">&#41;</span>
<span style="color: #ff0000;">&quot;Return the next color-theme symbol of THEME&quot;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>found <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>next <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">catch</span> 'found
      <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">mapcar</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span>entry<span style="color: #66cc66;">&#41;</span>
                <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">=</span> found <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">null</span> next<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> next <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> entry<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                           <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">throw</span> 'found t<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">eq</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> entry<span style="color: #66cc66;">&#41;</span> theme<span style="color: #66cc66;">&#41;</span>
                    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> found <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
              color-themes<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">=</span> found <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">null</span> next<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> next <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">caddr</span> color-themes<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
      next<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> color-theme-<span style="color: #b1b100;">apply</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&amp;</span>optional arg<span style="color: #66cc66;">&#41;</span>
<span style="color: #ff0000;">&quot;Apply the color theme.
&nbsp;
If the argument is :random, this applies any color theme randomly, 
or if the argument is :next, this applies the next color theme in the
installed color theme list.  or if the argument is a symbol indicates
the color-theme function, it applies that color theme.&quot;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cond</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>fboundp arg<span style="color: #66cc66;">&#41;</span>  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">apply</span> arg <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">eq</span> arg <span style="color: #66cc66;">:</span><span style="color: #b1b100;">random</span><span style="color: #66cc66;">&#41;</span>  <span style="color: #66cc66;">&#40;</span>color-theme-select-<span style="color: #b1b100;">random</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">eq</span> arg <span style="color: #66cc66;">:</span><span style="color: #555;">next</span><span style="color: #66cc66;">&#41;</span>	<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>theme <span style="color: #66cc66;">&#40;</span>color-theme-next-<span style="color: #b1b100;">symbol</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                          <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">apply</span> theme <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
                          <span style="color: #66cc66;">&#40;</span>message <span style="color: #ff0000;">&quot;%s installed&quot;</span> <span style="color: #66cc66;">&#40;</span>symbol-<span style="color: #b1b100;">name</span> theme<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span>t <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">error</span> <span style="color: #ff0000;">&quot;Wrong type of argument&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> color-theme-next-<span style="color: #b1b100;">symbol</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #ff0000;">&quot;Return the next color-theme symbol of the last applied color theme.
&nbsp;
This function works iff color-theme-history-max-length is not NIL&quot;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">null</span> color-theme-history<span style="color: #66cc66;">&#41;</span>
      <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> color-themes<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span>color-themes-next-<span style="color: #b1b100;">symbol</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">car</span> color-theme-history<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> set-frame-color-theme <span style="color: #66cc66;">&#40;</span>frame<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>select-frame frame<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>color-theme-select-<span style="color: #b1b100;">random</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> window-system
           <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;color-theme&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>require 'color-theme<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>color-theme-initialize<span style="color: #66cc66;">&#41;</span>
&nbsp;
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;pink-bliss&quot;</span><span style="color: #66cc66;">&#41;</span>
       <span style="color: #66cc66;">&#40;</span>require 'pink-bliss<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">and</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;cinsk-wood&quot;</span><span style="color: #66cc66;">&#41;</span>
       <span style="color: #66cc66;">&#40;</span>require 'cinsk-wood<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
  <span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control f1<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'color-theme-select-<span style="color: #b1b100;">random</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control f2<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>
                                    <span style="color: #66cc66;">&#40;</span>interactive<span style="color: #66cc66;">&#41;</span>
                                    <span style="color: #66cc66;">&#40;</span>color-theme-<span style="color: #b1b100;">apply</span> <span style="color: #66cc66;">:</span><span style="color: #555;">next</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>add-hook 'after-make-frame-functions 'set-frame-color-theme<span style="color: #66cc66;">&#41;</span>
&nbsp;
  <span style="color: #808080; font-style: italic;">;; color-theme-* is frame-local from now.</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> color-theme-is-global <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
  <span style="color: #808080; font-style: italic;">;; Select random color theme from my favorite list</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>theme <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">nth</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">random</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">length</span> color-theme-favorites<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                    color-theme-favorites<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span>buf <span style="color: #ff0000;">&quot;*scratch*&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">funcall</span> theme<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
  <span style="color: #808080; font-style: italic;">;(set-face-font 'default &quot;fontset-etl14&quot;)</span>
  <span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span>autoload 'css-mode <span style="color: #ff0000;">&quot;css-mode&quot;</span> <span style="color: #ff0000;">&quot;CSS editing major mode&quot;</span> t<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;css-mode&quot;</span>
  '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> cssm-indent-<span style="color: #b1b100;">function</span> #'cssm-c-style-indenter<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>add-to-<span style="color: #b1b100;">list</span> 'auto-mode-alist '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.css<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span> <span style="color: #66cc66;">.</span> css-mode<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Calender</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> calendar-date-display-form
      '<span style="color: #66cc66;">&#40;</span>year <span style="color: #ff0000;">&quot;-&quot;</span> month <span style="color: #ff0000;">&quot;-&quot;</span> day <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> dayname <span style="color: #66cc66;">&#40;</span>concat <span style="color: #ff0000;">&quot;, &quot;</span> dayname<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> mark-holidays-in-calendar t<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> mark-diary-entries-in-calendar t<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>add-hook 'diary-display-hook 'fancy-diary-display<span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Org mode</span>
<span style="color: #808080; font-style: italic;">;;;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;; org-hide-leading-stars should be set before loading org-mode.</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> org-hide-leading-stars t<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> org-odd-levels-only t<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> org-agenda-include-diary t<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>add-to-<span style="color: #b1b100;">list</span> 'auto-mode-alist '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.org$&quot;</span> <span style="color: #66cc66;">.</span> org-mode<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control c<span style="color: #66cc66;">&#41;</span> ?a<span style="color: #66cc66;">&#93;</span> 'org-agenda<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control c<span style="color: #66cc66;">&#41;</span> ?<span style="color: #b1b100;">l</span><span style="color: #66cc66;">&#93;</span> 'org-store-link<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;org&quot;</span>
  '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
     <span style="color: #66cc66;">&#40;</span>define-key outline-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control down<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span>
       'outline-next-visible-heading<span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span>define-key outline-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control up<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 
       'outline-previous-visible-heading<span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span>define-key outline-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control shift down<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span>
       'outline-forward-same-level<span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span>define-key outline-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control shift up<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span>
       'outline-backward-same-level<span style="color: #66cc66;">&#41;</span>
&nbsp;
     <span style="color: #808080; font-style: italic;">;; Rebind `org-force-cycle-archived' from &quot;C-&lt;TAB&gt;&quot; to &quot;C-x C-&lt;TAB&gt;&quot;</span>
     <span style="color: #808080; font-style: italic;">;; since I use &quot;C-&lt;TAB&gt;&quot; for `smart-other-window'.</span>
     <span style="color: #66cc66;">&#40;</span>move-key org-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control tab<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control x<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control tab<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;; Emacs-wiki support</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;(require 'emacs-wiki)</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; ispell(aspell) configuration</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Currently neither of them provides Korean dictionary.</span>
<span style="color: #808080; font-style: italic;">;;; Currently, ispell complained that it does not have proper dictionary in</span>
<span style="color: #808080; font-style: italic;">;;; Korean language environment. </span>
<span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;ispell&quot;</span>
  '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
     <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> ispell-dictionary <span style="color: #ff0000;">&quot;english&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Ediff customization</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;ediff&quot;</span>
  '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
     <span style="color: #808080; font-style: italic;">;; ignore whitespaces and newlines</span>
     <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> ediff-ignore-similar-regions t<span style="color: #66cc66;">&#41;</span>
     <span style="color: #808080; font-style: italic;">;; do not create new frame for the control panel</span>
     <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> ediff-window-setup-<span style="color: #b1b100;">function</span> 'ediff-setup-windows-plain<span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; Do not display splash screen on startup</span>
<span style="color: #808080; font-style: italic;">;;;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;(when window-system</span>
<span style="color: #808080; font-style: italic;">;;  (fancy-splash-screens))</span>
<span style="color: #808080; font-style: italic;">;;(setq initial-buffer-choice t)</span>
<span style="color: #808080; font-style: italic;">;;(setq inhibit-splash-screen t)</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> initial-buffer-choice t<span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; ERC (IRC client) settings</span>
<span style="color: #808080; font-style: italic;">;;;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;erc&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;erc&quot;</span>
    '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
       <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> erc-default-coding-system '<span style="color: #66cc66;">&#40;</span>cp949 <span style="color: #66cc66;">.</span> undecided<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
       <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> erc-nick '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;cinsk&quot;</span> <span style="color: #ff0000;">&quot;cinsky&quot;</span> <span style="color: #ff0000;">&quot;cinsk_&quot;</span> <span style="color: #ff0000;">&quot;cinsk__&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
       <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> erc-user-full-<span style="color: #b1b100;">name</span> <span style="color: #ff0000;">&quot;Seong-Kook Shin&quot;</span><span style="color: #66cc66;">&#41;</span>
       <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> erc-server <span style="color: #ff0000;">&quot;localhost:8668&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;

<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; CLISP -- See doc/editors.txt in the CLISP package.</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> inferior-lisp-program <span style="color: #ff0000;">&quot;clisp -I -q -E utf-8&quot;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> lisp-macroexpand-region <span style="color: #66cc66;">&#40;</span>start end <span style="color: #66cc66;">&amp;</span>optional and-<span style="color: #b1b100;">go</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Macroexpand the current region in the inferior Lisp process.
Prefix argument means switch to the Lisp buffer afterwards.&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;r<span style="color: #000099; font-weight: bold;">\n</span>P&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>comint-send-string
   <span style="color: #66cc66;">&#40;</span>inferior-lisp-proc<span style="color: #66cc66;">&#41;</span>
   <span style="color: #66cc66;">&#40;</span>format <span style="color: #ff0000;">&quot;(macroexpand-1 (quote %s))<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span>
	   <span style="color: #66cc66;">&#40;</span>buffer-substring-no-properties start end<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> and-<span style="color: #b1b100;">go</span> <span style="color: #66cc66;">&#40;</span>switch-to-lisp t<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> lisp-macroexpand-sexp <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&amp;</span>optional and-<span style="color: #b1b100;">go</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #ff0000;">&quot;Macroexpand the next sexp in the inferior Lisp process.
Prefix argument means switch to the Lisp buffer afterwards.&quot;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;P&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>lisp-macroexpand-region <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>scan-sexps <span style="color: #66cc66;">&#40;</span>point<span style="color: #66cc66;">&#41;</span> <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span> and-<span style="color: #b1b100;">go</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;inf-lisp&quot;</span>
  '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
     <span style="color: #66cc66;">&#40;</span>define-key lisp-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control ?x<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control ?m<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span>
       'lisp-macroexpand-sexp<span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span>define-key inferior-lisp-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control ?x<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control ?m<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span>
       'lisp-macroexpand-sexp<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; python-mode</span>
<span style="color: #808080; font-style: italic;">;;;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;python-mode&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> auto-mode-alist <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cons</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.py$&quot;</span> <span style="color: #66cc66;">.</span> python-mode<span style="color: #66cc66;">&#41;</span> auto-mode-alist<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> interpreter-mode-alist <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cons</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;python&quot;</span> <span style="color: #66cc66;">.</span> python-mode<span style="color: #66cc66;">&#41;</span>
                                     interpreter-mode-alist<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>autoload 'python-mode <span style="color: #ff0000;">&quot;python-mode&quot;</span> <span style="color: #ff0000;">&quot;Python editing mode.&quot;</span> t<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;python-mode&quot;</span>
  '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
     <span style="color: #808080; font-style: italic;">;; python-mode uses `C-c C-c' for `py-execute-buffer' where most</span>
     <span style="color: #808080; font-style: italic;">;; major modes uses that for `comment-region'.  Thus, I'll uses</span>
     <span style="color: #808080; font-style: italic;">;; `C-c C-e' bindings for py-execute-buffer.  It makes sense</span>
     <span style="color: #808080; font-style: italic;">;; because cc-mode uses this for `c-macro-expand'.</span>
     <span style="color: #66cc66;">&#40;</span>define-key py-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control ?c<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control ?c<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'comment-region<span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#40;</span>define-key py-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control ?c<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control ?e<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'py-execute-buffer<span style="color: #66cc66;">&#41;</span>
&nbsp;
     <span style="color: #808080; font-style: italic;">;; python-mode uses `C-c C-d' for `py-pdbtrack-toggle-stack-tracking'</span>
     <span style="color: #66cc66;">&#40;</span>define-key py-mode-map <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control ?c<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>control ?d<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'zap-to-nonspace<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; w3m</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;w3m&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>require 'w3m-load<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; gnuplot</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;gnuplot&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>autoload 'gnuplot-mode <span style="color: #ff0000;">&quot;gnuplot&quot;</span> <span style="color: #ff0000;">&quot;gnuplot major mode&quot;</span> t<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>autoload 'gnuplot-make-buffer <span style="color: #ff0000;">&quot;gnuplot&quot;</span> <span style="color: #ff0000;">&quot;open a buffer in gnuplot-mode&quot;</span> t<span style="color: #66cc66;">&#41;</span>
&nbsp;
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> auto-mode-alist <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">append</span> '<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.gp$&quot;</span> <span style="color: #66cc66;">.</span> gnuplot-mode<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
                                auto-mode-alist<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; lua</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;lua-mode&quot;</span><span style="color: #66cc66;">&#41;</span>
   <span style="color: #66cc66;">&#40;</span>autoload 'lua-mode <span style="color: #ff0000;">&quot;lua-mode&quot;</span> <span style="color: #ff0000;">&quot;Major mode for lua script&quot;</span><span style="color: #66cc66;">&#41;</span>
   <span style="color: #66cc66;">&#40;</span>add-to-<span style="color: #b1b100;">list</span> 'auto-mode-alist '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.lua<span style="color: #000099; font-weight: bold;">\\</span>'&quot;</span> <span style="color: #66cc66;">.</span> lua-mode<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; ESS(Emacs Speaks Statistics) setting for R.</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #66cc66;">&#40;</span>locate-library <span style="color: #ff0000;">&quot;ess-site&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>require 'ess-site<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;; To save &amp; load Emacs session, following lines should be the last line</span>
<span style="color: #808080; font-style: italic;">;;; in this file. </span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; The first time you save the state of the Emacs session, you must do it</span>
<span style="color: #808080; font-style: italic;">;;; manually, with the command `M-x desktop-save'. Once you have done that,</span>
<span style="color: #808080; font-style: italic;">;;; exiting Emacs will save the state again--not only the present Emacs</span>
<span style="color: #808080; font-style: italic;">;;; session, but also subsequent sessions. You can also save the state at</span>
<span style="color: #808080; font-style: italic;">;;; any time, without exiting Emacs, by typing `M-x desktop-save' again.</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; In order for Emacs to recover the state from a previous session, you</span>
<span style="color: #808080; font-style: italic;">;;; must start it with the same current directory as you used when you</span>
<span style="color: #808080; font-style: italic;">;;; started the previous session.  This is because `desktop-read' looks in</span>
<span style="color: #808080; font-style: italic;">;;; the current directory for the file to read.  This means that you can have</span>
<span style="color: #808080; font-style: italic;">;;; separate saved sessions in different directories; the directory in which</span>
<span style="color: #808080; font-style: italic;">;;; you start Emacs will control which saved session to use.</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;(desktop-load-default)</span>
<span style="color: #808080; font-style: italic;">;;(desktop-read)</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>put 'narrow-to-region 'disabled <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> <span style="color: #b1b100;">nil</span>
  <span style="color: #66cc66;">&#40;</span>require 'kmacro<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>fset 'next-visible-outline-other-window
        <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&amp;</span>optional arg<span style="color: #66cc66;">&#41;</span> 
          <span style="color: #ff0000;">&quot;Keyboard macro.&quot;</span> 
          <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;p&quot;</span><span style="color: #66cc66;">&#41;</span> 
          <span style="color: #66cc66;">&#40;</span>kmacro-exec-ring-item <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">quote</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#91;</span>C-tab <span style="color: #cc66cc;">3</span> <span style="color: #cc66cc;">14</span> <span style="color: #cc66cc;">12</span> C-tab<span style="color: #66cc66;">&#93;</span> <span style="color: #cc66cc;">0</span> <span style="color: #ff0000;">&quot;%d&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> arg<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
  <span style="color: #66cc66;">&#40;</span>fset 'prev-visible-outline-other-window
        <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">lambda</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&amp;</span>optional arg<span style="color: #66cc66;">&#41;</span> 
          <span style="color: #ff0000;">&quot;Keyboard macro.&quot;</span> 
          <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;p&quot;</span><span style="color: #66cc66;">&#41;</span> 
          <span style="color: #66cc66;">&#40;</span>kmacro-exec-ring-item <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">quote</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#91;</span>C-tab <span style="color: #cc66cc;">3</span> <span style="color: #cc66cc;">16</span> <span style="color: #cc66cc;">12</span> C-tab<span style="color: #66cc66;">&#93;</span> <span style="color: #cc66cc;">0</span> <span style="color: #ff0000;">&quot;%d&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> arg<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
  <span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span>f3<span style="color: #66cc66;">&#93;</span> 'prev-visible-outline-other-window<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span>f4<span style="color: #66cc66;">&#93;</span> 'next-visible-outline-other-window<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #66cc66;">&#40;</span>autoload 'calc <span style="color: #ff0000;">&quot;calc&quot;</span> <span style="color: #ff0000;">&quot;The Emacs Calculator&quot;</span> t<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span>f12<span style="color: #66cc66;">&#93;</span> 'calc<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#40;</span>control f12<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 'quick-calc<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>add-to-<span style="color: #b1b100;">list</span> 'auto-mode-alist '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;<span style="color: #000099; font-weight: bold;">\\</span>.org$&quot;</span> <span style="color: #66cc66;">.</span> org-mode<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span>f2<span style="color: #66cc66;">&#93;</span> 'ff-find-other-file<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span>f3<span style="color: #66cc66;">&#93;</span> 'dired-jump<span style="color: #66cc66;">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #808080; font-style: italic;">;;; ecb settings</span>
<span style="color: #808080; font-style: italic;">;;;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">when</span> window-system
  <span style="color: #66cc66;">&#40;</span>autoload 'ecb-activate <span style="color: #ff0000;">&quot;ecb&quot;</span> <span style="color: #ff0000;">&quot;Emacs Code Browser&quot;</span> t<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>eval-after-load <span style="color: #ff0000;">&quot;ecb&quot;</span>
    '<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span>
       <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> ecb-toggle-layout-sequence
             '<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;left3&quot;</span> <span style="color: #ff0000;">&quot;left-symboldef&quot;</span> <span style="color: #ff0000;">&quot;left8&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
       <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> ecb-tip-of-the-day <span style="color: #b1b100;">nil</span><span style="color: #66cc66;">&#41;</span>
       <span style="color: #66cc66;">&#40;</span>set-face-font 'ecb-default-general-face
                      <span style="color: #ff0000;">&quot;-*-helvetica-medium-r-*-*-12-*-*-*-*-*-*-*&quot;</span><span style="color: #66cc66;">&#41;</span>
       <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> ecb-next-action <span style="color: #66cc66;">&#40;</span>arg<span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span>interactive <span style="color: #ff0000;">&quot;P&quot;</span><span style="color: #66cc66;">&#41;</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">or</span> <span style="color: #66cc66;">&#40;</span>featurep 'ecb<span style="color: #66cc66;">&#41;</span>
      <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">progn</span> <span style="color: #66cc66;">&#40;</span>require 'cedet<span style="color: #66cc66;">&#41;</span>
             <span style="color: #66cc66;">&#40;</span>require 'ecb<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>           <span style="color: #808080; font-style: italic;">; load required packages</span>
  <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">cond</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">null</span> ecb-minor-mode<span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#40;</span>ecb-activate<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
        <span style="color: #66cc66;">&#40;</span>t <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">null</span> arg<span style="color: #66cc66;">&#41;</span> 
               <span style="color: #66cc66;">&#40;</span>ecb-toggle-layout<span style="color: #66cc66;">&#41;</span>
             <span style="color: #66cc66;">&#40;</span>ecb-deactivate<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #66cc66;">&#40;</span>global-set-key <span style="color: #66cc66;">&#91;</span>f11<span style="color: #66cc66;">&#93;</span> 'ecb-next-action<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> dired-recursive-copies 'always<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> dired-recursive-deletes 'top<span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">;;; Local Variables:</span>
<span style="color: #808080; font-style: italic;">;;; coding: utf-8</span>
<span style="color: #808080; font-style: italic;">;;; End:</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.clsnyder.com/WordPress/2008/05/18/my-dot-emacs-file/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs Interact</title>
		<link>http://www.clsnyder.com/WordPress/2008/05/05/emacs-interact/</link>
		<comments>http://www.clsnyder.com/WordPress/2008/05/05/emacs-interact/#comments</comments>
		<pubDate>Mon, 05 May 2008 16:07:23 +0000</pubDate>
		<dc:creator>clsnyder</dc:creator>
				<category><![CDATA[Emacs]]></category>

		<guid isPermaLink="false">http://www.clsnyder.com/WordPress/?p=148</guid>
		<description><![CDATA[How do you get user input (after displaying a prompt) in the command line? One way is with (interactive), which is used to turn a function into a command. As an example, look at (defun irc-join (chan) "join an IRC &#8230; <a href="http://www.clsnyder.com/WordPress/2008/05/05/emacs-interact/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>How do you get user input (after displaying a prompt) in the command line?<br />
One way is with (interactive), which is used to turn a function<br />
into a command. As an example, look at<br />
<code><br />
   (defun irc-join (chan)<br />
     "join an IRC channel"<br />
   (interactive "sChannel to join: ")<br />
  (save-excursion<br />
    (setq irc-channel chan)<br />
    (irc-send-server (concat "JOIN " chan))))<br />
</code><br />
Okay, what does this mean? When you want to define a function,<br />
it begins with &#8216;defun&#8217;. Then next word, &#8216;irc-join&#8217;, is the name<br />
of the function. Following that is &#8216;(chan)&#8217;, which is in<br />
general the parameter list; this means that &#8216;chan&#8217; is a<br />
variable which is local to this function; if you want no parameters,<br />
just put an empty list (). Following that is a description string<br />
&#8220;join an IRC channel&#8221;; that string will show up whenever you do<br />
M-x apropos on the function; that string is optional.<br />
    Finally, we get to the (interactive) part. What we are<br />
concentrating on is the string: &#8220;sChannel to join: &#8220;, which has<br />
a special format. The first character &#8212; &#8216;s&#8217; in this case &#8212; specifies<br />
the &#8220;type&#8221; of value to put in the first variable of the parameter<br />
list. The character &#8216;s&#8217; means &#8220;string&#8221;. So, now whenever somebody<br />
calls your function with M-x irc-join, they would be prompted<br />
to enter a string; the prompt will be &#8220;Channel to join: &#8220;. If you<br />
wanted more parameters, it would be something like: </p>
<p><code class="prettyprint"><br />
(defun function-name (stringparam numberparam)<br />
  (interactive "sPrompt here: \nnAnother prompt: ")<br />
        etc...<br />
</code></p>
<p>Note that each prompt string is separated by a newline character &#8220;\n&#8221;.<br />
Also, &#8216;n&#8217; means you want to get a number from the user. For more<br />
info on these code characters, look under &#8220;defining commands&#8221;<br />
section of the elisp docs. </p>
<p>You don&#8217;t necessarily have to use (interactive) to read in those<br />
values, however. You could also do something like the following: </p>
<p><code class="prettyprint"><br />
(defun irc-set-port ()<br />
  "set port number"<br />
  (interactive)<br />
  (let ((port<br />
         (read-string (concat "Port[" irc-port "]: ") "6667")))<br />
    (if (not (string-equal port ""))<br />
        (setq irc-port (string-to-number port)))))<br />
</code></p>
<p>This function has no parameters, and you notice (interactive)<br />
also doesn&#8217;t have any prompt string. The main thing to look at<br />
here is the &#8216;read-string&#8217; function. This function takes one<br />
argument which is a string for a prompt. Here I have shown a<br />
little trick using the &#8216;concat&#8217; function, which will let you<br />
show a default value in the prompt.<br />
    You can find lots of information on functions like this by<br />
using the apropos command: M-x apropos RET</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clsnyder.com/WordPress/2008/05/05/emacs-interact/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs Backup File Management</title>
		<link>http://www.clsnyder.com/WordPress/2008/05/02/emacs-backup-file-management/</link>
		<comments>http://www.clsnyder.com/WordPress/2008/05/02/emacs-backup-file-management/#comments</comments>
		<pubDate>Fri, 02 May 2008 18:28:43 +0000</pubDate>
		<dc:creator>clsnyder</dc:creator>
				<category><![CDATA[Emacs]]></category>

		<guid isPermaLink="false">http://www.clsnyder.com/WordPress/?p=145</guid>
		<description><![CDATA[Set emacs so that all backups are directed into one folder: (such as at a directory “~/myBackups”) Use the following lisp code in init file: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ; &#8230; <a href="http://www.clsnyder.com/WordPress/2008/05/02/emacs-backup-file-management/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Set emacs so that all backups are directed into one folder:<br />
(such as at a directory “~/myBackups”)</p>
<p>Use the following lisp code in init file:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
</pre></td><td class="code"><pre class="lisp" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">; return a backup file path of a give file path</span>
<span style="color: #808080; font-style: italic;">; with full directory mirroring from a root dir</span>
<span style="color: #808080; font-style: italic;">; non-existant dir will be created</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">defun</span> my-backup-file-<span style="color: #b1b100;">name</span> <span style="color: #66cc66;">&#40;</span>fpath<span style="color: #66cc66;">&#41;</span>
“<span style="color: #b1b100;">Return</span> a new file path of a given file path<span style="color: #66cc66;">.</span>
<span style="color: #b1b100;">If</span> the new path’s directories does <span style="color: #b1b100;">not</span> exist<span style="color: #66cc66;">,</span> create them<span style="color: #66cc66;">.</span>”
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">let</span> <span style="color: #66cc66;">&#40;</span>backup-root bpath<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> backup-root “~/<span style="color: #66cc66;">.</span>emacs<span style="color: #66cc66;">.</span>d/emacs-backup”<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> bpath <span style="color: #66cc66;">&#40;</span>concat backup-root fpath “~”<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span>make-directory <span style="color: #66cc66;">&#40;</span>file-name-directory bpath<span style="color: #66cc66;">&#41;</span> bpath<span style="color: #66cc66;">&#41;</span>
bpath
<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> make-backup-file-name-<span style="color: #b1b100;">function</span> ‘my-backup-file-<span style="color: #b1b100;">name</span><span style="color: #66cc66;">&#41;</span></pre></td></tr></table></div>

<p>The above will mirror all directories at the given backup dir. For<br />
example, if you are editing a file “/Users/jane/web/xyz/myfile.txt”,<br />
and your backup root is “/Users/jane/.emacs.d/emacs-backup”, then the<br />
backup will be at “/Users/jane/.emacs.d/emacs-backup/Users/jane/web/<br />
xyz/myfile.txt~”.</p>
<p>If you want all backup to be flat in a dir, use the following:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="lisp" style="font-family:monospace;"><span style="color: #66cc66;">&#40;</span><span style="color: #b1b100;">setq</span> backup-directory-alist ‘<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span>”<span style="color: #ff0000;">&quot; . “~/.emacs.d/emacs-backup”)))</span></pre></td></tr></table></div>

<p>This will create backup files flat in the given dir, and the backup<br />
file names will have “!” characters in place of the directory<br />
separator. For example, if you are editing a file at “/Users/jane/web/<br />
xyz/myfile.txt”, and your backup dir is set at “/Users/jane/.emacs.d/<br />
emacs-backup”, then the backup file will be at: “/Users/jane/.emacs.d/<br />
emacs-backup/Users!jane!web!emacs!myfile.txt~”. If you use long file<br />
names or many nested dirs, this scheme will reach file name length<br />
limit quickly.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clsnyder.com/WordPress/2008/05/02/emacs-backup-file-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs Cheats</title>
		<link>http://www.clsnyder.com/WordPress/2008/05/01/emacs-cheats/</link>
		<comments>http://www.clsnyder.com/WordPress/2008/05/01/emacs-cheats/#comments</comments>
		<pubDate>Fri, 02 May 2008 03:48:40 +0000</pubDate>
		<dc:creator>clsnyder</dc:creator>
				<category><![CDATA[Emacs]]></category>

		<guid isPermaLink="false">http://www.clsnyder.com/WordPress/?p=144</guid>
		<description><![CDATA[Emacs tips ========== Time-stamp: Inside an incremental search: * C-w pulls in the word under point * C-y pulls in the rest of the line from point * M-y yanks the last text from the kill ring Keybinding Function Description &#8230; <a href="http://www.clsnyder.com/WordPress/2008/05/01/emacs-cheats/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Emacs tips<br />
==========</p>
<p>Time-stamp: <2007-08-18 17:40:08 sjs></p>
<p>Inside an incremental search:<br />
  * C-w pulls in the word under point<br />
  * C-y pulls in the rest of the line from point<br />
  * M-y yanks the last text from the kill ring</p>
<p>Keybinding   Function                                Description<br />
&#8212;&#8212;&#8212;-   &#8212;&#8212;&#8211;                                &#8212;&#8212;&#8212;&#8211;</p>
<p>==Help</p>
<table>
<tr>
<td>C-h c</td>
<td>describe-key-briefly</td>
<td>Display the name of the function bound to the given key sequence.</td>
</tr>
<tr>
<td>C-h k</td>
<td>describe-key</td>
<td> Display documentation for the function bound to the given key sequence.</td>
</tr>
<tr>
<td>C-h w</td>
<td>where-is</td>
<td>Display key sequences bound to the given command name.</td>
</tr>
<tr>
<td>C-h l</td>
<td>view-lossage</td>
<td> Display the last 100 keystrokes.</td>
</tr>
<tr>
<td>C-h m</td>
<td>describe-mode</td>
<td>Display documentation on the current major mode.</td>
</tr>
</table>
<p>** C-h after any prefix key will display all available shortcuts under that prefix. **</p>
<p>==General<br />
             word-search-{forward,backward}          Search for sequences of words across newlines &#038; puncuation.<br />
C-x $        set-selective-display                   Hide lines indented greater than ARG levels (folding).<br />
             follow-mode                             Scroll windows of the same buffer in harmony.<br />
C-x =        what-cursor-position                    Display details about what&#8217;s under the cursor.<br />
C-x z        repeat                                  Repeat the most recently executed command.<br />
C-x ESC ESC  repeat-complex-command                  Edit and re-evaluate the last complex command (or ARGth command).<br />
             list-history-command                    List commands available for repitition (via repeat-complex-command).</p>
<p>==Mark and point<br />
M-r          move-to-window-line                     nil ARG: Move to the middle of the window.<br />
                                                     ARG > 0: Move point to the ARGth line.<br />
                                                     ARG < 0: Move point to the |ARG|th line from the bottom.<br />
C-x h        mark-whole-buffer                       Mark the entire buffer.<br />
C-x C-x      exchange-mark-and-point                 Exchange mark and point, reactivating mark if required.<br />
C-SPC        set-mark-command                        Set and activate the mark, C-u C-SPC pops the mark ring.<br />
C-x C-SPC    pop-global-mark</p>
<p>A prefix of 0 (C-u 0) has a special meaning for the transpose family of functions. Since it would otherwise be meaningless<br />
it transposes the chars/words/sexps/lines around the region specified by point and mark. It's best to try this one out to<br />
see exactly how it works!</p>
<p>C-t          transpose-chars<br />
M-t          transpose-words<br />
C-M-t        transpose-sexps<br />
C-x C-t      transpose-lines</p>
<p>** Mark and point can be treated as a rectangle, and are by certain functions. (see next section) **</p>
<p>==Rectangles<br />
C-x r c      clear-rectangle                         Replace text in the rectangle with spaces, blanking out the region destructively.<br />
C-x r d      delete-rectangle                        Delete text in the rectangle described by mark and point.<br />
C-x r o      open-rectangle                          Shift text in the rectangle right, blanking out the region non-destructively.<br />
C-x r t      string-rectangle                        Replace rectangle contents with the given string.<br />
C-x r y      yank-rectangle                          Yank back the last killed rectangle contents, top-left at point.</p>
<p>==Whitespace / cleaning up<br />
C-x C-o      delete-blank-lines                      Delete all but one of many consecutive blank lines.<br />
             fixup-whitespace                        Clean up space between objects around point.<br />
M-\          delete-horizontal-space                 Delete all spaces &#038; tabs around point.<br />
M-SPC        just-one-space                          Delete all spaces &#038; tabs around point except for one (or N).<br />
             canonically-space-region                Remove extra spaces between words in region.<br />
             delete-trailing-whitespace              Delete all trailing whitespace in the current buffer.</p>
<p>==Shell mode<br />
C-c C-n      comint-next-prompt                      Move point to the next prompt.<br />
C-c C-p      comint-previous-prompt                  Move point to the previous prompt.<br />
C-c RET      comint-copy-old-input                   Copy the command input at point to the end of the buffer.</p>
<p>Variable           Description<br />
--------           -----------</p>
<p>track-eol          If set next-line and previous-line will move to EOL if moving from EOL.</p>
<p>Slime mode<br />
==========</p>
<p>Keybinding   Function                                Description<br />
----------   --------                                -----------</p>
<p>==Compilation<br />
C-c C-k      slime-compile-and-load-file             Compile and load the current buffer.<br />
C-c M-k      slime-compile-file                      Compile (but don't load) the current buffer.<br />
C-c C-c      slime-compile-defun                     Compile the top-level form at or around point.<br />
M-n          slime-next-note                         Move to the next compiler note.<br />
M-p          slime-previous-note                     Move to the previous compiler note.<br />
C-c M-c      slime-remove-notes                      Remove all annotations from the buffer.</p>
<p>==REPL<br />
C-Return     slime-repl-closing-return               Close all open parentheses and evaluate the current line.</p>
<p>==Navigation<br />
M-.          slime-edit-definition                   Go to the definition of the symbol at point.<br />
M-,          slime-pop-find-definition-stack         Go back from the definition found with slime-edit-definition.</p>
<p>==Evaluation<br />
C-M-x        slime-eval-defun                        Evaluate the top-level form.<br />
                                                         (ARG inserts result into buffer)<br />
C-x C-e      slime-eval-last-expression              Evaluate the last expression before point.<br />
                                                         (ARG inserts result info buffer)<br />
C-c C-p      slime-pprint-eval-last-expression       Evaluate the expression before point and pretty-print the result.<br />
C-c C-r      slime-eval-region                       Evaluate the region.<br />
C-c :        slime-interactive-eval                  Evaluate an expression read from the minibuffer.</p>
<p>             slime-scratch                           Create a buffer like Emacs' *scratch*, eval expressions with C-j.</p>
<p>==Programming<br />
C-c M-i      slime-fuzzy-complete-symbol             Presents a list of likely completions to choose from for an abbreviation<br />
                                                     at point.<br />
C-c C-s      slime-insert-arglist                    Look up and insert the arg list for the function at point.<br />
C-c C-m      slime-macroexpand-1                     Macroexpand the expression at point once. Use a prefix to call macroexpand<br />
                                                     instead of macroexpand-1.<br />
C-c C-t      slime-toggle-trace-fdefinition          Toggle tracing of the function at point.<br />
C-c M-d      slime-disassemble-symbol                Dissassemble the function definition of the symbol at point.</p>
<p>==Debugging</p>
<p>[TODO clean this up, this is copied from the Emacs wiki]</p>
<p>The following commands invoke restarts:</p>
<p>    * 0 .. 9 - Invoke a restart by number.<br />
    * q - Throw to the top-level.<br />
    * a - Invoke the ABORT restart.<br />
    * c - Invoke the CONTINUE restart.</p>
<p>There are also commands for poking around in the frame at point:</p>
<p>    * v - Show the current frame's source expression in a buffer.<br />
    * t - Toggle verbose display of the frame at point. The verbose version includes all local variables and CATCH tags.<br />
    * l - Show local variables.<br />
    * e - Evaluate an expression from inside a frame.<br />
    * d - Evaluate an expression and display the result in an extra buffer.<br />
    * i - Evaluate an expression and inspect the result.<br />
    * : - Evaluate an expression (in the global environment).<br />
    * D - Disassemble the code of the current frame.<br />
    * r - Restart execution of the frame with the same arguments as it was called originally. (Not supported by all backends.)<br />
    * R - Return a value from the current frame. (Not supported by all backends.)</p>
<p>Motion between frames:</p>
<p>    * n - Move to the next frame.<br />
    * p - Move to the previous frame.<br />
    * M-n - Detail-move to the next frame. This switches the current frame to a one-line summary, then moves to the next frame, displays it verbosely in the backtrace (as with t), and shows the corresponding source expression (as with v).<br />
    * M-p - Detail-move to the previous frame.</p>
<p>==Reference<br />
C-c <        slime-who-calls                         Reveal callers of the function at or around point.<br />
C-c >        slime-who-references                    Reveal references to the global variable at or around point.</p>
<p>C-c C-d is the prefix for the following help commands:<br />
    d        slime-describe-symbol                    Describe the symbol at point.<br />
    a        slime-apropos<br />
    z        slime-apropos-all                        Includes internal symbols.<br />
    p        slime-apropos-package<br />
    h        slime-hyperspec-lookup                   Customize with common-lisp-hyperspec-root browse-url-browser-function.<br />
    ~        common-lisp-hyperspec-format</p>
]]></content:encoded>
			<wfw:commentRss>http://www.clsnyder.com/WordPress/2008/05/01/emacs-cheats/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

