.emacs-my
author Oleksandr Gavenko <gavenkoa@gmail.com>
Fri, 19 Dec 2014 01:50:42 +0200
changeset 1182 616154dadd38
parent 1181 64523c0fddb0
child 1183 6fdc4a4f4155
permissions -rw-r--r--
Replace kill-this-buffer with core functions.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
     1
;; -*- mode: emacs-lisp; coding: utf-8; fill-column: 78 -*-
6
d1c4515c3cfa Add copyright notice.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 5
diff changeset
     2
;;
279
fd6164dfec82 Update copyright statement and year.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 272
diff changeset
     3
;; Written by Oleksandr Gavenko <gavenkoa@gmail.com>, 2008-2010.
6
d1c4515c3cfa Add copyright notice.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 5
diff changeset
     4
;;
121
864a0daf737e Update copiright.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 120
diff changeset
     5
;; This file formed from parts and ideas from many sites/docs and
110
6b6e3f8cb371 Set copyright notice.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 109
diff changeset
     6
;; placed in public domain.
6b6e3f8cb371 Set copyright notice.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 109
diff changeset
     7
;;
302
e93ff9360a51 Point to README from config file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 299
diff changeset
     8
;; Config file for GNU Emacs.
83
d2eaf2ed6d1c Added basic jabber customization.
gavenkoa@gavenko.bifit.int
parents: 82
diff changeset
     9
;;
351
e30e4bd7e85e Small spell correction.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 348
diff changeset
    10
;; For load order see README.
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
    11
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
    12
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
611
49c993d41d3f Firstly enable 'recentf' to easy access to recently edited file when Emacs
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 610
diff changeset
    13
(message "recentf")
49c993d41d3f Firstly enable 'recentf' to easy access to recently edited file when Emacs
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 610
diff changeset
    14
766
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
    15
(setq recentf-save-file "~/.recentf")
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
    16
(when (eq system-type 'cygwin)
1148
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    17
  (setq recentf-save-file "~/.recentf-cygwin"))
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    18
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    19
(setq recentf-auto-cleanup 'mode)
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    20
;; Prevent TRAMP to login on remote host when loading. Its take time and ask passwords!
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    21
(setq recentf-keep '(file-remote-p file-readable-p))
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    22
(setq recentf-exclude                   ; Use ``M-x recentf-cleanup`` to update recentf-list.
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    23
      '("/devel/[^/]*-\\(orig\\|tmp\\|xxx\\)"
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    24
        "/devel/my-\\(merge\\|pull\\)/"))
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    25
(setq recentf-max-saved-items 10000)
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    26
611
49c993d41d3f Firstly enable 'recentf' to easy access to recently edited file when Emacs
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 610
diff changeset
    27
(require 'recentf)
49c993d41d3f Firstly enable 'recentf' to easy access to recently edited file when Emacs
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 610
diff changeset
    28
(recentf-mode t)
1148
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    29
611
49c993d41d3f Firstly enable 'recentf' to easy access to recently edited file when Emacs
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 610
diff changeset
    30
(global-set-key (kbd "\e\eq")  'recentf-open-files)
49c993d41d3f Firstly enable 'recentf' to easy access to recently edited file when Emacs
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 610
diff changeset
    31
1141
294e4bafc4a5 Set recentf-menu-filter as recentf-arrange-by-dir to avoid shown duplicate
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1140
diff changeset
    32
(setq recentf-max-menu-items 40)
1148
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    33
(setq recentf-show-file-shortcuts-flag nil)
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    34
9659883a1bec Add ``recentf-exclude`` to prevent opening unwanted files from temporary copy.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1147
diff changeset
    35
;; (setq recentf-menu-filter 'recentf-arrange-by-dir) ; Too slow with dir widgets.
1153
516ab8f13ece Don't sort ``recentf-list`` so ``recentf-open-files`` show files in historical order!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1150
diff changeset
    36
;; Don't sort ``recentf-list`` so ``recentf-open-files`` show files in historical order!
516ab8f13ece Don't sort ``recentf-list`` so ``recentf-open-files`` show files in historical order!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1150
diff changeset
    37
(setq recentf-menu-filter nil)
1141
294e4bafc4a5 Set recentf-menu-filter as recentf-arrange-by-dir to avoid shown duplicate
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1140
diff changeset
    38
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
    39
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
658
b8a1ffa6408f Make revert buffer available more early.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 657
diff changeset
    40
(message "revert buffer")
b8a1ffa6408f Make revert buffer available more early.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 657
diff changeset
    41
b8a1ffa6408f Make revert buffer available more early.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 657
diff changeset
    42
(global-set-key [f5]    'revert-buffer)
b8a1ffa6408f Make revert buffer available more early.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 657
diff changeset
    43
(setq revert-without-query (quote (".*")))
b8a1ffa6408f Make revert buffer available more early.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 657
diff changeset
    44
(setq auto-revert-interval 2)
b8a1ffa6408f Make revert buffer available more early.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 657
diff changeset
    45
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
    46
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
    47
(message "debugging")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
    48
175
a505ab71060a Make comment shorter.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 174
diff changeset
    49
;; Shut off message buffer by setting nil.
252
330b4cdfaddf Increase log message count.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 251
diff changeset
    50
(setq message-log-max 512)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
    51
539
4e0728ed912a Document 'inhibit-default-init'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 538
diff changeset
    52
;; Prevent Emacs from loading 'default.el', which loaded after '.emacs'.
4e0728ed912a Document 'inhibit-default-init'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 538
diff changeset
    53
;; Also '-q' prevent loading your init file.
4e0728ed912a Document 'inhibit-default-init'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 538
diff changeset
    54
(setq inhibit-default-init nil)         ; t/nil
4e0728ed912a Document 'inhibit-default-init'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 538
diff changeset
    55
743
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    56
(defun my-debug (mode)
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    57
  "With prefix enable debug backtrace when problems occur else disable."
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    58
  (interactive "P")
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    59
  (when mode
756
8dbeaf05129d Don't call the debugger regardless of condition handlers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 755
diff changeset
    60
    ;; (setq debug-on-signal t)
743
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    61
    (setq mode t))
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    62
  (setq debug-on-error mode)
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    63
  ;; Get trace when press C-g.
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    64
  (setq debug-on-quit mode)
874
02cbb7560e64 Add info to remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 871
diff changeset
    65
  ;; (setq debug-on-signal mode)
743
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    66
  )
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    67
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    68
(my-debug nil)
234a9934b957 With prefix enable debug backtrace when problems occur else disable.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 742
diff changeset
    69
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
    70
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
    71
(message "user info")
531
a6466b47121e Move user info to top.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 530
diff changeset
    72
774
ebfb1eb5cf56 Set following in ~/.emacs-auth.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 773
diff changeset
    73
;; Set following in ~/.emacs-auth:
ebfb1eb5cf56 Set following in ~/.emacs-auth.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 773
diff changeset
    74
;; (setq user-full-name "Oleksandr Gavenko")
ebfb1eb5cf56 Set following in ~/.emacs-auth.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 773
diff changeset
    75
;; (setq user-mail-address "gavenkoa@gmail.com")
ebfb1eb5cf56 Set following in ~/.emacs-auth.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 773
diff changeset
    76
;; (setq user-nick "gavenkoa")
930
ab0ce5cb09bf Add link to my home page in Organization mail header.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 929
diff changeset
    77
;; (setq user-home-page "http://gavenkoa.users.sf.net")
774
ebfb1eb5cf56 Set following in ~/.emacs-auth.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 773
diff changeset
    78
825
92790cbc5fd2 Set 'user-nick' if it was not defined in ~/.emacs-auth or somewhere.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 824
diff changeset
    79
(unless (and (boundp 'user-nick) (stringp user-nick))
92790cbc5fd2 Set 'user-nick' if it was not defined in ~/.emacs-auth or somewhere.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 824
diff changeset
    80
  (setq user-nick (user-login-name)) )
930
ab0ce5cb09bf Add link to my home page in Organization mail header.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 929
diff changeset
    81
;; auto-insert and copyright package use this to insert copyright owner. Gnus
ab0ce5cb09bf Add link to my home page in Organization mail header.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 929
diff changeset
    82
;; uses this for Organization header.
ab0ce5cb09bf Add link to my home page in Organization mail header.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 929
diff changeset
    83
(setenv "ORGANIZATION"
ab0ce5cb09bf Add link to my home page in Organization mail header.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 929
diff changeset
    84
        (concat
ab0ce5cb09bf Add link to my home page in Organization mail header.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 929
diff changeset
    85
         user-full-name
ab0ce5cb09bf Add link to my home page in Organization mail header.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 929
diff changeset
    86
         " <" user-mail-address  ">"
ab0ce5cb09bf Add link to my home page in Organization mail header.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 929
diff changeset
    87
         (when (boundp 'user-home-page) (concat ", " user-home-page))))
531
a6466b47121e Move user info to top.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 530
diff changeset
    88
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
    89
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
670
d10f2e70ff5e Redefine action to put 'html' tag in sgml-mode (more pretty look).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 669
diff changeset
    90
(message "my defun, defmacro, defvar")
d10f2e70ff5e Redefine action to put 'html' tag in sgml-mode (more pretty look).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 669
diff changeset
    91
1068
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
    92
(require 'cl)
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
    93
1017
7b1ae3e0c9e3 Omit condition from loop.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1016
diff changeset
    94
(defmacro my-filter (pred list)
7b1ae3e0c9e3 Omit condition from loop.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1016
diff changeset
    95
  "Construct list with elements from LIST which satisfy PRED."
1018
94b0ca71a583 Fix (info "(elisp) Surprising Local Vars").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1017
diff changeset
    96
  (let ( (r (make-symbol "r_")) )
94b0ca71a583 Fix (info "(elisp) Surprising Local Vars").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1017
diff changeset
    97
    `(let ( (,r (list nil)) )
94b0ca71a583 Fix (info "(elisp) Surprising Local Vars").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1017
diff changeset
    98
       (mapc (lambda (item)
94b0ca71a583 Fix (info "(elisp) Surprising Local Vars").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1017
diff changeset
    99
               (when (,pred item)
94b0ca71a583 Fix (info "(elisp) Surprising Local Vars").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1017
diff changeset
   100
                 (nconc ,r (cons item nil))))
94b0ca71a583 Fix (info "(elisp) Surprising Local Vars").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1017
diff changeset
   101
             ,list)
94b0ca71a583 Fix (info "(elisp) Surprising Local Vars").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1017
diff changeset
   102
       (cdr ,r))))
670
d10f2e70ff5e Redefine action to put 'html' tag in sgml-mode (more pretty look).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 669
diff changeset
   103
716
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
   104
(defun my-fold (f x list)
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
   105
  "Recursively applies (F i j) to LIST starting with X.
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
   106
For example, (fold F X '(1 2 3)) computes (F (F (F X 1) 2) 3)."
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
   107
  (let ((li list) (x2 x))
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
   108
    (while li
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
   109
      (setq x2 (funcall f x2 (pop li)))
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
   110
      )
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
   111
    x2
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
   112
    ) )
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
   113
720
e50b78c6a53d Fix: ignore-errors does not defined under Emacs 22.2.1 (on Debian).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
   114
(unless (fboundp 'ignore-errors)
e50b78c6a53d Fix: ignore-errors does not defined under Emacs 22.2.1 (on Debian).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
   115
  (defmacro ignore-errors (&rest body)
e50b78c6a53d Fix: ignore-errors does not defined under Emacs 22.2.1 (on Debian).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
   116
    "Execute BODY; if an error occurs, return nil.
e50b78c6a53d Fix: ignore-errors does not defined under Emacs 22.2.1 (on Debian).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
   117
Otherwise, return result of last form in BODY."
e50b78c6a53d Fix: ignore-errors does not defined under Emacs 22.2.1 (on Debian).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
   118
    (declare (debug t) (indent 0))
e50b78c6a53d Fix: ignore-errors does not defined under Emacs 22.2.1 (on Debian).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
   119
    `(condition-case nil (progn ,@body) (error nil)))
e50b78c6a53d Fix: ignore-errors does not defined under Emacs 22.2.1 (on Debian).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
   120
  )
e50b78c6a53d Fix: ignore-errors does not defined under Emacs 22.2.1 (on Debian).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
   121
1016
6c3765dd9ed2 Search for KEY in all known keymaps.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1015
diff changeset
   122
(defun my-lookup-key (key)
6c3765dd9ed2 Search for KEY in all known keymaps.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1015
diff changeset
   123
  "Search for KEY in all known keymaps."
6c3765dd9ed2 Search for KEY in all known keymaps.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1015
diff changeset
   124
  (mapatoms (lambda (ob) (when (and (boundp ob) (keymapp (symbol-value ob)))
6c3765dd9ed2 Search for KEY in all known keymaps.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1015
diff changeset
   125
                      (when (lookup-key (symbol-value ob) key)
6c3765dd9ed2 Search for KEY in all known keymaps.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1015
diff changeset
   126
                        (message "%S" ob))))
6c3765dd9ed2 Search for KEY in all known keymaps.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1015
diff changeset
   127
            obarray))
6c3765dd9ed2 Search for KEY in all known keymaps.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1015
diff changeset
   128
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   129
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   130
(message "mode groups")
333
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   131
606
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   132
(defmacro my-defun-rename-symb-tree (name doc func)
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   133
  "Travel by TREE and applies FUNC to each symbol."
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   134
  `(defun ,name (tree)
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   135
     ,doc
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   136
     (cond
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   137
      ((symbolp tree)
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   138
       (,func tree)
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   139
       )
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   140
      ((listp tree)
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   141
       (mapcar ',name tree)
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   142
       )
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   143
      (t (error "Only tree of symbols allowed."))
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   144
      )))
605
c228c0414e0b Generalize logic to rename symbols.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 604
diff changeset
   145
606
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   146
(my-defun-rename-symb-tree
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   147
 my-feature2mode
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   148
 "Convert TREE of features to TREE of modes for these features. Single symbol allowed."
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   149
 (lambda (symb) (intern (concat (symbol-name symb) "-mode"))))
605
c228c0414e0b Generalize logic to rename symbols.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 604
diff changeset
   150
606
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   151
(my-defun-rename-symb-tree
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   152
 my-mode2hook
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   153
 "Convert TREE of modes to TREE of hooks for these modes. Single symbol allowed."
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   154
 (lambda (symb) (intern (concat (symbol-name symb) "-hook")))
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   155
 )
605
c228c0414e0b Generalize logic to rename symbols.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 604
diff changeset
   156
606
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   157
(my-defun-rename-symb-tree
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   158
 my-mode2modemap
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   159
 "Convert TREE of modes to TREE of keymaps for these modes. Single symbol allowed."
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   160
 (lambda (symb) (intern (concat (symbol-name symb) "-map")))
959d64f49788 Generalize code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 605
diff changeset
   161
 )
493
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   162
333
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   163
(defvar my-devel-mode-list
401
4e91288dbd84 Highlight TODO FIXME in outline-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 400
diff changeset
   164
  '(
695
273e9d5c4f86 Add 'tcl-mode' to 'my-devel-mode-list'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 692
diff changeset
   165
    sh-mode script-mode tcl-mode
488
a3e4b656e4e6 Added js-mode to my list of development modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 487
diff changeset
   166
    c-mode c++-mode java-mode js-mode
887
bbd5b721e5c1 Add perl-mode cperl-mode to my-devel-mode-list for Imenu.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 886
diff changeset
   167
    python-mode perl-mode cperl-mode
401
4e91288dbd84 Highlight TODO FIXME in outline-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 400
diff changeset
   168
    lisp-mode
1053
a6a203a2b64c Add sql mode to devel mode list for imenu support.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1052
diff changeset
   169
    sql-mode
401
4e91288dbd84 Highlight TODO FIXME in outline-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 400
diff changeset
   170
    emacs-lisp-mode
4e91288dbd84 Highlight TODO FIXME in outline-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 400
diff changeset
   171
    makefile-mode makefile-gmake-mode
494
e388310789d1 Added 'nsis-mode' to 'my-devel-mode-list'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 493
diff changeset
   172
    nsis-mode
692
6e566f6c7386 Add 'bat-generic-mode' to 'my-devel-mode-list'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
   173
    bat-generic-mode
993
0a4851d1f516 Add nxml to list of devel modes. Call 'nxml-complete' as completion function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 992
diff changeset
   174
    html-mode nxml-mode
737
fb4d18368c1f Add 'LilyPond-mode' to 'my-devel-mode-list' for enabling scroll-margin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 736
diff changeset
   175
    LilyPond-mode
866
b6b520b4e11e Add 'texinfo-mode' to 'my-devel-mode-list' for TODO highlighting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 865
diff changeset
   176
    texinfo-mode
401
4e91288dbd84 Highlight TODO FIXME in outline-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 400
diff changeset
   177
    )
333
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   178
  "List of development modes.")
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   179
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   180
(defvar my-devel-mode-hook-list
605
c228c0414e0b Generalize logic to rename symbols.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 604
diff changeset
   181
   (my-mode2hook my-devel-mode-list)
493
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   182
  "List of development mode hooks.")
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   183
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   184
(defvar my-scroll-margin-mode-list
427
69d3c7df190f Added outline-mode-hook to my-devel-mode-hook-list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 426
diff changeset
   185
  '(
493
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   186
    vc-dir-mode
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   187
    recentf-dialog-mode
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   188
    org-agenda-grid-mode           ; XXX for this item not worked!
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   189
    log-view-mode
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   190
    dired-mode
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   191
    compilation-mode
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   192
    )
4f91b5ccab17 'my-modelist-to-hooklist' convert list of MODES to list of hooks for these
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 492
diff changeset
   193
  "List of modes for enabling scroll margin.")
333
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   194
391
09cfea42153e Added list of mode hooks for enabling scroll margin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 389
diff changeset
   195
(defvar my-scroll-margin-mode-hook-list
605
c228c0414e0b Generalize logic to rename symbols.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 604
diff changeset
   196
  (my-mode2hook my-scroll-margin-mode-list)
391
09cfea42153e Added list of mode hooks for enabling scroll margin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 389
diff changeset
   197
  "List of mode hooks for enabling scroll margin.")
09cfea42153e Added list of mode hooks for enabling scroll margin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 389
diff changeset
   198
333
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   199
(defvar my-text-mode-list
631
eb5ce5b0b208 Add 'html-mode' to devel mode list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   200
  '(
eb5ce5b0b208 Add 'html-mode' to devel mode list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   201
    text-mode
eb5ce5b0b208 Add 'html-mode' to devel mode list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   202
    outline-mode
665
9761254a1260 Maintaining the table of contents up-to-date.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 664
diff changeset
   203
    rst-mode
723
ff912b026ad2 Move 'diff-mode' to 'my-text-mode-list' for trailing spaces highlighting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 721
diff changeset
   204
    diff-mode
691
0722f3949eda Enable dict-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 689
diff changeset
   205
    dict-c5-mode
631
eb5ce5b0b208 Add 'html-mode' to devel mode list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
   206
    )
333
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   207
  "List of text modes.")
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   208
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   209
(defvar my-text-mode-hook-list
605
c228c0414e0b Generalize logic to rename symbols.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 604
diff changeset
   210
  (my-mode2hook my-text-mode-list)
333
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   211
  "List of text mode hooks.")
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   212
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   213
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1070
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   214
(message "package, elpa")
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   215
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   216
;; (setq package-enable-at-startup t)
1085
e5be6d749d06 Check if 'package-initialize' present.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1081
diff changeset
   217
(when (fboundp 'package-initialize)
e5be6d749d06 Check if 'package-initialize' present.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1081
diff changeset
   218
  (package-initialize))
1070
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   219
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   220
(setq package-archives
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   221
      '(
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   222
        ("elpa" . "http://tromey.com/elpa/")
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   223
        ("gnu" . "http://elpa.gnu.org/packages/")
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   224
        ("marmalade" . "http://marmalade-repo.org/packages/")
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   225
        ("melpa" . "http://melpa.milkbox.net/packages/")
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   226
        ))
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   227
ade365833a09 Move package initialisation to top of file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1069
diff changeset
   228
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   229
(message "appearance")
362
f4bd431ad549 By default start from user home directory (HOME point to it).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 361
diff changeset
   230
370
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   231
;; To maximize frame on full screen, not work with Windows Emacs 21.4.
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   232
;; And maked different height with Emacs 22.3 and 23.1.
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   233
;; (setq initial-frame-alist '((fullscreen . fullboth)))
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   234
550
d8092299457a (setq display-buffer-reuse-frames t)
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 549
diff changeset
   235
(setq display-buffer-reuse-frames t)
d8092299457a (setq display-buffer-reuse-frames t)
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 549
diff changeset
   236
370
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   237
;; Next code work with Emacs 21.4, 22.3, 23.1.
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   238
(when window-system
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   239
  (let (
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   240
        (px (display-pixel-width))
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   241
        (py (display-pixel-height))
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   242
        (fx (frame-char-width))
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   243
        (fy (frame-char-height))
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   244
        tx ty
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   245
        )
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   246
    ;; Next formulas discovered empiric on Windows host with default font.
373
bdf2522ad35c On Debian with font 7x13 right part of windows go out of display border.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 372
diff changeset
   247
    (setq tx (- (/ px fx) 7))
370
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   248
    (setq ty (- (/ py fy) 4))
625
78017f6d5b43 Indent initial frame to 2 pixel.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 624
diff changeset
   249
    (setq initial-frame-alist '((top . 2) (left . 2)))
370
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   250
    (add-to-list 'initial-frame-alist (cons 'width tx))
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   251
    (add-to-list 'initial-frame-alist (cons 'height ty))
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   252
    ) )
378a4dc8ea1c Maximize frame on full screen.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 369
diff changeset
   253
151
0b6f4adf5096 Minor changes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 150
diff changeset
   254
(menu-bar-mode -1)
415
a325b9a15b8e Fix: 'scroll-bar-mode' and 'tooltip-mode' do not defined in Cygwin nox Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 412
diff changeset
   255
(when window-system
585
2431be336034 mouse-avoidance-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 584
diff changeset
   256
  (mouse-avoidance-mode 'animate)
502
64a475fa36e2 tool-bar-mode not available under Cygwin console Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 501
diff changeset
   257
  (scroll-bar-mode 1)
64a475fa36e2 tool-bar-mode not available under Cygwin console Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 501
diff changeset
   258
  (tool-bar-mode -1)
952
6ec8b1014d11 line-spacing and ediff-split-window-function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 951
diff changeset
   259
  (setq-default line-spacing nil)
429
998f33a8ec6e Open menu by f10 like by C-Mouse-3 without mouse!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 428
diff changeset
   260
  (defun my-popup-menu ()
1003
8c1abe90331a Add doc strings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1001
diff changeset
   261
    "Menu from keyboard by emulating mouse event."
429
998f33a8ec6e Open menu by f10 like by C-Mouse-3 without mouse!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 428
diff changeset
   262
    (interactive)
490
d6c84d84af9b 'mouse-menu-bar-map' appear only in Emacs 23.x. To get work on any Emacs used
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 489
diff changeset
   263
    (mouse-popup-menubar
d6c84d84af9b 'mouse-menu-bar-map' appear only in Emacs 23.x. To get work on any Emacs used
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 489
diff changeset
   264
     (list (list (/ (display-pixel-width) 2) 10) (get-buffer-window (buffer-name)))
d6c84d84af9b 'mouse-menu-bar-map' appear only in Emacs 23.x. To get work on any Emacs used
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 489
diff changeset
   265
     nil)
d6c84d84af9b 'mouse-menu-bar-map' appear only in Emacs 23.x. To get work on any Emacs used
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 489
diff changeset
   266
    )
429
998f33a8ec6e Open menu by f10 like by C-Mouse-3 without mouse!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 428
diff changeset
   267
  (global-set-key [f10] 'my-popup-menu)
436
95dfd88eee58 Open *Global menu* by <apps> key.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 435
diff changeset
   268
  (global-set-key [apps] 'my-popup-menu)
491
72d77b2117d1 Menu key under X have name 'menu' (in contrast to Windows - 'app').
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 490
diff changeset
   269
  (global-set-key [menu] 'my-popup-menu)
415
a325b9a15b8e Fix: 'scroll-bar-mode' and 'tooltip-mode' do not defined in Cygwin nox Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 412
diff changeset
   270
  (when (>= emacs-major-version 22) (tooltip-mode -1))
a325b9a15b8e Fix: 'scroll-bar-mode' and 'tooltip-mode' do not defined in Cygwin nox Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 412
diff changeset
   271
  )
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   272
595
be6c27e4c776 Fix "Prefer horizontal windows splitting" for terminals.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 594
diff changeset
   273
;; Prefer horizontal windows splitting.
612
1c59e45f5358 split-height-threshold/split-width-threshold can not be nil in Emacs 21.x/22.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 611
diff changeset
   274
(when (>= emacs-major-version 23)
1c59e45f5358 split-height-threshold/split-width-threshold can not be nil in Emacs 21.x/22.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 611
diff changeset
   275
  (setq split-height-threshold nil)
1c59e45f5358 split-height-threshold/split-width-threshold can not be nil in Emacs 21.x/22.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 611
diff changeset
   276
  (setq split-width-threshold nil)
1c59e45f5358 split-height-threshold/split-width-threshold can not be nil in Emacs 21.x/22.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 611
diff changeset
   277
  )
573
c28b88b60ed0 Prefer horizontal windows splitting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 524
diff changeset
   278
1147
490ac6d8ab55 Simplify title.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1146
diff changeset
   279
(setq frame-title-format '("EMACS " system-name ": %b"))
338
ebf88f988c37 Move some appearance related switch together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 337
diff changeset
   280
933
8627e7b2c209 header-line-format
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 932
diff changeset
   281
;; Deprecated: `default-header-line-format', `default-mode-line-format'.
8627e7b2c209 header-line-format
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 932
diff changeset
   282
;; For `mode-line-format' default value was used.
8627e7b2c209 header-line-format
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 932
diff changeset
   283
(setq-default header-line-format nil)
363
17df92226b5a Set default-header-line-format.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 362
diff changeset
   284
364
3d18cfe179cc Set default fringe and margin width.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 363
diff changeset
   285
(setq default-left-fringe-width nil)
3d18cfe179cc Set default fringe and margin width.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 363
diff changeset
   286
(setq default-right-fringe-width nil)
3d18cfe179cc Set default fringe and margin width.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 363
diff changeset
   287
(setq default-left-margin-width nil)
3d18cfe179cc Set default fringe and margin width.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 363
diff changeset
   288
(setq default-right-margin-width nil)
3d18cfe179cc Set default fringe and margin width.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 363
diff changeset
   289
882
58b84ad67327 default-truncate-lines is depricated since 23.2. Set
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 881
diff changeset
   290
(if (< emacs-major-version 24)
58b84ad67327 default-truncate-lines is depricated since 23.2. Set
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 881
diff changeset
   291
    (setq default-truncate-lines nil)
58b84ad67327 default-truncate-lines is depricated since 23.2. Set
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 881
diff changeset
   292
  (setq truncate-lines nil)
58b84ad67327 default-truncate-lines is depricated since 23.2. Set
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 881
diff changeset
   293
  )
58b84ad67327 default-truncate-lines is depricated since 23.2. Set
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 881
diff changeset
   294
(setq truncate-partial-width-windows nil)
366
223c01e1a084 Don't truncate long lines.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 365
diff changeset
   295
338
ebf88f988c37 Move some appearance related switch together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 337
diff changeset
   296
;; show column & line numbers in status bar
ebf88f988c37 Move some appearance related switch together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 337
diff changeset
   297
(setq column-number-mode t)
ebf88f988c37 Move some appearance related switch together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 337
diff changeset
   298
(setq line-number-mode t)
413
5b28a08bf61b Set size-indication-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 412
diff changeset
   299
(setq size-indication-mode t)
934
e8af987ef004 document linum-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 933
diff changeset
   300
;; (linum-mode 1)
338
ebf88f988c37 Move some appearance related switch together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 337
diff changeset
   301
ebf88f988c37 Move some appearance related switch together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 337
diff changeset
   302
;; Also useful such format: (setq display-time-format " %H:%M %d-%m-%y ")
ebf88f988c37 Move some appearance related switch together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 337
diff changeset
   303
(setq display-time-24hr-format t)
683
b50b879b9e04 display-time-day-and-date
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 682
diff changeset
   304
(setq display-time-day-and-date nil)
338
ebf88f988c37 Move some appearance related switch together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 337
diff changeset
   305
(setq display-time-default-load-average nil)
ebf88f988c37 Move some appearance related switch together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 337
diff changeset
   306
(display-time)                          ; display-time-mode
ebf88f988c37 Move some appearance related switch together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 337
diff changeset
   307
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   308
(when window-system
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   309
  (set-background-color "white")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   310
  (set-foreground-color "black")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   311
  (set-cursor-color "brown")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   312
  ;; (set-mouse-color "white")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   313
  (setq cursor-type 'box)           ; box, hollow, bar, hbar
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   314
  ;;(setq blink-matching-delay 0.01)
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   315
  (blink-cursor-mode 1)
686
563751ecd385 Bind 'yes-or-no-p' to 'y-or-n-p'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 685
diff changeset
   316
  (setq use-file-dialog t)
563751ecd385 Bind 'yes-or-no-p' to 'y-or-n-p'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 685
diff changeset
   317
  (setq use-dialog-box t)
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   318
  ;; (set-face-font 'default "7x14")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   319
  )
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   320
218
1a48dde2dfa3 See what I am typing immediately (for keystroke in minibuffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
   321
;; See what I am typing immediately (for keystroke in minibuffer).
1a48dde2dfa3 See what I am typing immediately (for keystroke in minibuffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
   322
(setq echo-keystrokes 0.2)
1a48dde2dfa3 See what I am typing immediately (for keystroke in minibuffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
   323
1089
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   324
(when (eq window-system 'x)
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   325
  (set-frame-font "-misc-fixed-medium-r-normal--14-*-*-*-c-*-iso10646-1")
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   326
  (set-fontset-font "fontset-default" 'latin
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   327
                    "-misc-fixed-medium-r-normal--14-*-*-*-c-*-iso10646-1")
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   328
  (set-fontset-font "fontset-default" 'phonetic
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   329
                    "-misc-fixed-medium-r-normal--14-*-*-*-c-*-iso10646-1")
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   330
  (set-fontset-font "fontset-default" 'cyrillic
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   331
                    "-misc-fixed-medium-r-normal--14-*-*-*-c-*-iso10646-1")
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   332
  (set-fontset-font "fontset-default" 'greek
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   333
                    "-misc-fixed-medium-r-normal--14-*-*-*-c-*-iso10646-1"))
7d9bd1fe3cb0 Set font for IPA and other fontset under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1085
diff changeset
   334
686
563751ecd385 Bind 'yes-or-no-p' to 'y-or-n-p'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 685
diff changeset
   335
(fset 'yes-or-no-p 'y-or-n-p)
563751ecd385 Bind 'yes-or-no-p' to 'y-or-n-p'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 685
diff changeset
   336
563751ecd385 Bind 'yes-or-no-p' to 'y-or-n-p'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 685
diff changeset
   337
(when (boundp 'confirm-kill-emacs)
563751ecd385 Bind 'yes-or-no-p' to 'y-or-n-p'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 685
diff changeset
   338
  (setq confirm-kill-emacs 'y-or-n-p))
563751ecd385 Bind 'yes-or-no-p' to 'y-or-n-p'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 685
diff changeset
   339
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   340
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   341
(message "silent runing")
85
2bb7e6aceac9 Added target dist-tar.
gavenkoa@gavenko.bifit.int
parents: 83
diff changeset
   342
2bb7e6aceac9 Added target dist-tar.
gavenkoa@gavenko.bifit.int
parents: 83
diff changeset
   343
;; (setq inhibit-splash-screen t) ; nonexist on 21.4.1
2bb7e6aceac9 Added target dist-tar.
gavenkoa@gavenko.bifit.int
parents: 83
diff changeset
   344
(setq inhibit-startup-message t)
2bb7e6aceac9 Added target dist-tar.
gavenkoa@gavenko.bifit.int
parents: 83
diff changeset
   345
1114
10adeb987567 Make *scratch* buffer empty.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1113
diff changeset
   346
(setq initial-scratch-message nil)
10adeb987567 Make *scratch* buffer empty.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1113
diff changeset
   347
734
d5281f386f48 Fix headline.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 733
diff changeset
   348
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
676
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   349
(message "shell, bash, Cygwin, MSYS")
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
   350
676
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   351
(defvar my-use-windows-shell nil
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   352
  "If t 'cmdproxy.exe' will be used as shell. Affect on M-x shell like
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   353
  commands. If nil, 'sh' will be used." )
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   354
709
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   355
(defun follow-cygwin-symlink ()
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   356
  "Follow new-style (and also UCS-16) Cygwin symlinks."
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   357
  (save-excursion
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   358
    (goto-char 0)
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   359
    (when (looking-at "!<symlink>\xff\xfe")
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   360
      (find-alternate-file
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   361
       (substring
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   362
        (decode-coding-string
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   363
         (buffer-substring (match-end 0) (point-max))
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   364
         'utf-16-le)
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   365
        0 -1)                           ; -1 for stripping final \0.
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   366
       ))))
2cb49be54b21 Follow new-style (and also UCS-16) Cygwin symlinks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
   367
731
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   368
(defun my-dos2cygwin-path (path)
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   369
  "Convert DOS path to Cygwin according to current mount table."
732
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
   370
  (interactive (list (read-directory-name "Enter DOS path: ")))
731
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   371
  (setq path (replace-regexp-in-string "\\\\" "/" (expand-file-name path)))
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   372
  (let ( (table cygwin-mount-table--internal) item prefix )
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   373
    (while table
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   374
      (setq item (car table))
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   375
      (setq prefix (concat "\\`" (regexp-quote (car item))))
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   376
      (setq table (cdr table))
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   377
      (when (string-match prefix path)
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   378
        (setq path (replace-regexp-in-string prefix (cdr item) path))
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   379
        (setq table nil)
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   380
        ) )
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   381
    path
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   382
    ))
5b6105640c0e my-dos2cygwin-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 730
diff changeset
   383
676
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   384
(when (eq system-type 'windows-nt)
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
   385
  (ignore-errors
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
   386
    (require 'cygwin-mount)
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
   387
    (cygwin-mount-activate)
676
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   388
    )
733
67e6d0381996 Use 'find-file-hook' as 'find-file-hooks' marked as deprecated.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 724
diff changeset
   389
  (add-hook 'find-file-hook 'follow-cygwin-symlink)
676
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   390
  ;; Workaround for Cygwin shell, when set 'CYGWIN=noglob'. By default 'shell-quote-argument'
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   391
  ;; quoted by double '\' chars this cause failure.
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   392
  (defun shell-quote-argument (argument)
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   393
    (concat "'" argument "'")
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   394
    )
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   395
  ;; Workaround for Cygwin when 'shell-file-name' is 'bash'.
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   396
  (setq null-device "/dev/null")
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   397
  ;; Use shell from Cygwin/MinGW.
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   398
  (setq shell-file-name "bash")
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   399
  (setenv "SHELL" "/bin/bash")
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   400
  (modify-coding-system-alist 'process "bash" '(cp1251-unix . cp1251-unix))
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   401
  )
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   402
746
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   403
(when (eq window-system 'w32)
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   404
  ;; Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   405
  ;; 'gnutls-cli' run with '-s' opt and process wait for SIGALRM.
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   406
  ;; But build-in native Emacs 'kill' command can not send such Cygwin
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   407
  ;; specific sygnal. So 'starttls-negotiate-gnutls' function infinitely
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   408
  ;; wait for 'gnutls-cli' output.
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   409
  (defadvice signal-process (around cygwin (process sigcode))
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   410
    "Use 'kill.exe' instead build-in Emacs 'kill'."
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   411
    (if (eq sigcode 'SIGALRM)
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   412
        (shell-command
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   413
         (format "kill.exe -s SIGALRM %d"
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   414
                 (if (processp process) (process-id process) process)))
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   415
      ad-do-it
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   416
      ))
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   417
  (ad-activate 'signal-process)
748
a42f5a803c98 Do not convert output of 'gnutls-cli'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 747
diff changeset
   418
  (modify-coding-system-alist 'process "gnutls-cli" '(binary . binary))
746
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   419
  )
f7ce19afa666 Fix 'starttls.el' on native Windows Emacs with gnutls-cli from Cygwin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 745
diff changeset
   420
858
81c925713d9c Add '.py' and '.sh' as allowed executable extension.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 857
diff changeset
   421
(when (eq window-system 'w32)
81c925713d9c Add '.py' and '.sh' as allowed executable extension.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 857
diff changeset
   422
  (add-to-list 'exec-suffixes ".py")
81c925713d9c Add '.py' and '.sh' as allowed executable extension.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 857
diff changeset
   423
  (add-to-list 'exec-suffixes ".sh")
81c925713d9c Add '.py' and '.sh' as allowed executable extension.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 857
diff changeset
   424
  (defun executable-find (command) (locate-file command exec-path exec-suffixes))
81c925713d9c Add '.py' and '.sh' as allowed executable extension.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 857
diff changeset
   425
  )
81c925713d9c Add '.py' and '.sh' as allowed executable extension.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 857
diff changeset
   426
676
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   427
(ansi-color-for-comint-mode-on)
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   428
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   429
(setq explicit-bash-args '("-i"))
0accf646e451 Move code for shell setup to proper place. Remove unused code as I do not use
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 675
diff changeset
   430
(setq explicit-sh-args '("-i"))
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
   431
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   432
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
923
e2c69e1c4642 Define C-left/-right navigation in term raw mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 922
diff changeset
   433
(message "term")
e2c69e1c4642 Define C-left/-right navigation in term raw mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 922
diff changeset
   434
926
1ad4d40e5b5e Set term-buffer-maximum-size.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 925
diff changeset
   435
(setq term-buffer-maximum-size (lsh 1 14))
1ad4d40e5b5e Set term-buffer-maximum-size.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 925
diff changeset
   436
924
3e398de9b2c1 Fix: symbol term-raw-map is void.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 923
diff changeset
   437
(eval-after-load 'term
3e398de9b2c1 Fix: symbol term-raw-map is void.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 923
diff changeset
   438
  '(progn
948
8af7f6d912f6 Add key binding for readline command: backward-kill-word and kill-word.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 947
diff changeset
   439
    (defun my-term-send-delete-word-forward () (interactive) (term-send-raw-string "\ed"))
8af7f6d912f6 Add key binding for readline command: backward-kill-word and kill-word.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 947
diff changeset
   440
    (defun my-term-send-delete-word-backward () (interactive) (term-send-raw-string "\e\C-h"))
1001
d9b2474219f6 Send M-left and M-right control sequences as in xterm for my Readline
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1000
diff changeset
   441
    (define-key term-raw-map [C-delete] 'my-term-send-delete-word-forward)
d9b2474219f6 Send M-left and M-right control sequences as in xterm for my Readline
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1000
diff changeset
   442
    (define-key term-raw-map [C-backspace] 'my-term-send-delete-word-backward)
924
3e398de9b2c1 Fix: symbol term-raw-map is void.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 923
diff changeset
   443
    (defun my-term-send-forward-word () (interactive) (term-send-raw-string "\ef"))
3e398de9b2c1 Fix: symbol term-raw-map is void.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 923
diff changeset
   444
    (defun my-term-send-backward-word () (interactive) (term-send-raw-string "\eb"))
925
545ceb8d87be Fix typo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 924
diff changeset
   445
    (define-key term-raw-map [C-left] 'my-term-send-backward-word)
1001
d9b2474219f6 Send M-left and M-right control sequences as in xterm for my Readline
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1000
diff changeset
   446
    (define-key term-raw-map [C-right] 'my-term-send-forward-word)
d9b2474219f6 Send M-left and M-right control sequences as in xterm for my Readline
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1000
diff changeset
   447
    (defun my-term-send-m-right () (interactive) (term-send-raw-string "\e[1;3C"))
d9b2474219f6 Send M-left and M-right control sequences as in xterm for my Readline
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1000
diff changeset
   448
    (defun my-term-send-m-left () (interactive) (term-send-raw-string "\e[1;3D"))
d9b2474219f6 Send M-left and M-right control sequences as in xterm for my Readline
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1000
diff changeset
   449
    (define-key term-raw-map [M-right] 'my-term-send-m-right)
d9b2474219f6 Send M-left and M-right control sequences as in xterm for my Readline
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1000
diff changeset
   450
    (define-key term-raw-map [M-left] 'my-term-send-m-left)
d9b2474219f6 Send M-left and M-right control sequences as in xterm for my Readline
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1000
diff changeset
   451
    ))
923
e2c69e1c4642 Define C-left/-right navigation in term raw mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 922
diff changeset
   452
1062
c1cac6e85f9b Enable 'goto-address-mode' in 'term-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1061
diff changeset
   453
(defun my-term-mode-hook ()
c1cac6e85f9b Enable 'goto-address-mode' in 'term-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1061
diff changeset
   454
  (goto-address-mode 1))
c1cac6e85f9b Enable 'goto-address-mode' in 'term-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1061
diff changeset
   455
(add-hook 'term-mode-hook #'my-term-mode-hook)
c1cac6e85f9b Enable 'goto-address-mode' in 'term-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1061
diff changeset
   456
923
e2c69e1c4642 Define C-left/-right navigation in term raw mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 922
diff changeset
   457
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1104
0e876ae7ffe7 Show memory usage in proced.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1103
diff changeset
   458
(message "proced")
0e876ae7ffe7 Show memory usage in proced.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1103
diff changeset
   459
0e876ae7ffe7 Show memory usage in proced.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1103
diff changeset
   460
(setq-default proced-format 'medium)
0e876ae7ffe7 Show memory usage in proced.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1103
diff changeset
   461
0e876ae7ffe7 Show memory usage in proced.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1103
diff changeset
   462
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   463
(message "whitespaces")
361
9dbe92b8b329 Added indicate-buffer-boundaries.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 360
diff changeset
   464
9dbe92b8b329 Added indicate-buffer-boundaries.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 360
diff changeset
   465
(setq default-indicate-empty-lines t)
368
a9c688c1b85f More verbose buffer-boundaries.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 366
diff changeset
   466
(setq default-indicate-buffer-boundaries 'left)
361
9dbe92b8b329 Added indicate-buffer-boundaries.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 360
diff changeset
   467
624
9db0b51b229c Enable showing of trailing whitespace only in developer modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 623
diff changeset
   468
;; (setq-default show-trailing-whitespace t)
1063
a804ee9bb8e2 Use global-whitespace-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1061
diff changeset
   469
a804ee9bb8e2 Use global-whitespace-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1061
diff changeset
   470
(setq whitespace-style '(face trailing tabs))
a804ee9bb8e2 Use global-whitespace-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1061
diff changeset
   471
(setq whitespace-global-modes (append my-devel-mode-list my-text-mode-list))
a804ee9bb8e2 Use global-whitespace-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1061
diff changeset
   472
(ignore-errors
a804ee9bb8e2 Use global-whitespace-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1061
diff changeset
   473
  (require 'whitespace)
a804ee9bb8e2 Use global-whitespace-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1061
diff changeset
   474
  (global-whitespace-mode 1))
361
9dbe92b8b329 Added indicate-buffer-boundaries.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 360
diff changeset
   475
9dbe92b8b329 Added indicate-buffer-boundaries.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 360
diff changeset
   476
(setq next-line-add-newlines nil)
9dbe92b8b329 Added indicate-buffer-boundaries.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 360
diff changeset
   477
9dbe92b8b329 Added indicate-buffer-boundaries.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 360
diff changeset
   478
;; See also 'mode-require-final-newline'.
9dbe92b8b329 Added indicate-buffer-boundaries.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 360
diff changeset
   479
(add-hook 'text-mode-hook (lambda () (setq require-final-newline nil)))
9dbe92b8b329 Added indicate-buffer-boundaries.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 360
diff changeset
   480
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   481
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
741
cd25b9526e76 'gnuserv' now dead.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 740
diff changeset
   482
(message "server")
85
2bb7e6aceac9 Added target dist-tar.
gavenkoa@gavenko.bifit.int
parents: 83
diff changeset
   483
766
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
   484
(when (and (>= emacs-major-version 22) (not (eq system-type 'cygwin)))
394
03d8b85ff815 Do not load server.el for Emacs 21.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 393
diff changeset
   485
  (require 'server)
398
47a3e4de976e Fix compare func name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 397
diff changeset
   486
  (when (and (= emacs-major-version 23) (>= emacs-minor-version 1) (<= emacs-minor-version 2) (equal window-system 'w32))
394
03d8b85ff815 Do not load server.el for Emacs 21.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 393
diff changeset
   487
    (defun server-ensure-safe-dir (dir) "Noop" t)) ; Suppress error directory ~/.emacs.d/server is unsafe on windows.
662
81ca1335730a Fix condition as it stop server from loading.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 660
diff changeset
   488
  (when (or (= emacs-major-version 22) (not (eq (server-running-p server-name) t)))
640
b430ca70e6b0 Start the emacs server only if another instance of the server is not running.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 639
diff changeset
   489
    (server-start))
394
03d8b85ff815 Do not load server.el for Emacs 21.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 393
diff changeset
   490
  )
85
2bb7e6aceac9 Added target dist-tar.
gavenkoa@gavenko.bifit.int
parents: 83
diff changeset
   491
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   492
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   493
(message "standart/general settings")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   494
336
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   495
;; Try to speed things up, especially in VM.
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   496
(setq gc-cons-threshold 2000000)
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   497
408
78cf8a4feb66 Fix: default 'command-history' length too short (in Emacs 23.2 is 30).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 404
diff changeset
   498
;; Default 'command-history' length too short (in Emacs 23.2 is 30).
78cf8a4feb66 Fix: default 'command-history' length too short (in Emacs 23.2 is 30).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 404
diff changeset
   499
(setq history-length 200)
78cf8a4feb66 Fix: default 'command-history' length too short (in Emacs 23.2 is 30).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 404
diff changeset
   500
336
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   501
;; Don't beep in my headphones!
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   502
(setq ring-bell-function '(lambda () "Empty ring-bell-function." nil))
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   503
(setq visible-bell t) ; With default ring-bell-function in text terminal
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   504
                      ; revert screen if press [end] or [home]
880
995e7f89c52d Set track-eol.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 879
diff changeset
   505
(setq track-eol nil)
336
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   506
868
dde03832c69f Comment customising of 'enable-recursive-minibuffers' (use for example purpose).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 867
diff changeset
   507
;; (setq enable-recursive-minibuffers t)
867
2a689826c166 Set enable-recursive-minibuffers to t.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 866
diff changeset
   508
336
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   509
;; Prompt before evaluating local bits of lisp.  This stops people
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   510
;; putting things at the end of files which delete all your files!
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   511
(setq enable-local-variables t
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   512
      enable-local-eval      1)
a252995f7d6b Move general getting into one place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 335
diff changeset
   513
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   514
(setq kill-whole-line t)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   515
879
a14d684e34f7 Don't set view-read-only to 't' because of bug with gettext.el.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 878
diff changeset
   516
;; Disable because of bug with gettext.el. See
a14d684e34f7 Don't set view-read-only to 't' because of bug with gettext.el.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 878
diff changeset
   517
;;   http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=287261
a14d684e34f7 Don't set view-read-only to 't' because of bug with gettext.el.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 878
diff changeset
   518
;; (setq view-read-only t)
102
25585e240b4a Move customization from .emacs (custom-set-variables) to .emacs-my. Remove duplication.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 101
diff changeset
   519
171
2f2aae1d394c Set read-quoted-char-radix.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 169
diff changeset
   520
(setq read-quoted-char-radix 16)
2f2aae1d394c Set read-quoted-char-radix.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 169
diff changeset
   521
622
596406094fd1 Port to Mac OS X console Emacs 22.1.1.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   522
(when (and (>= emacs-major-version 22) (not (eq system-type 'darwin)))
613
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   523
  (setq standard-display-table (make-display-table))
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   524
  (let ( (i ?\x80) hex hi low )
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   525
    (while (<= i ?\xff)
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   526
      (setq hex (format "%x" i))
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   527
      (setq hi (elt hex 0))
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   528
      (setq low (elt hex 1))
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   529
      (aset standard-display-table (unibyte-char-to-multibyte i)
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   530
            (vector (make-glyph-code ?\\ 'escape-glyph)
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   531
                    (make-glyph-code ?x 'escape-glyph)
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   532
                    (make-glyph-code hi 'escape-glyph)
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   533
                    (make-glyph-code low 'escape-glyph)))
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   534
      (setq i (+ i 1))))
1e7314bb84bc Fix loading error for Emacs 21.3.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 612
diff changeset
   535
  )
525
c8d4f5368b04 Show non printable characters in hex, not in octal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 524
diff changeset
   536
863
d48ba6196046 Add sign for euro and hryvnia.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 862
diff changeset
   537
(when (>= emacs-major-version 23)
d48ba6196046 Add sign for euro and hryvnia.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 862
diff changeset
   538
  (define-key global-map "\C-x8g" (lambda nil (interactive) (ucs-insert `,(cdr (assoc-string "HRYVNIA SIGN" (ucs-names) t)))))
d48ba6196046 Add sign for euro and hryvnia.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 862
diff changeset
   539
  (define-key global-map "\C-x8e" (lambda nil (interactive) (ucs-insert `,(cdr (assoc-string "EURO SIGN" (ucs-names) t)))))
d48ba6196046 Add sign for euro and hryvnia.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 862
diff changeset
   540
  )
d48ba6196046 Add sign for euro and hryvnia.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 862
diff changeset
   541
344
b7d0989d9472 generic-define-* before (require 'generic-x) allow load all useful extra modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 342
diff changeset
   542
;; generic-define-* before (require 'generic-x) allow load all useful extra modes.
b7d0989d9472 generic-define-* before (require 'generic-x) allow load all useful extra modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 342
diff changeset
   543
(setq generic-define-mswindows-modes t)
b7d0989d9472 generic-define-* before (require 'generic-x) allow load all useful extra modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 342
diff changeset
   544
(setq generic-define-unix-modes t)
341
84db44766351 Remove bat-file-mode as it present in generic-x.el.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 339
diff changeset
   545
(require 'generic-x)
84db44766351 Remove bat-file-mode as it present in generic-x.el.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 339
diff changeset
   546
345
90b5ae643a6d Move code to proper place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 344
diff changeset
   547
;; The following commands are usually disabled by default. Enable them...
90b5ae643a6d Move code to proper place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 344
diff changeset
   548
(put 'eval-expression  'disabled nil)
90b5ae643a6d Move code to proper place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 344
diff changeset
   549
(put 'downcase-region  'disabled nil)
90b5ae643a6d Move code to proper place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 344
diff changeset
   550
(put 'upcase-region    'disabled nil)
90b5ae643a6d Move code to proper place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 344
diff changeset
   551
(put 'narrow-to-page   'disabled nil)
90b5ae643a6d Move code to proper place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 344
diff changeset
   552
(put 'narrow-to-region 'disabled nil)
90b5ae643a6d Move code to proper place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 344
diff changeset
   553
(put 'scroll-left      'disabled nil)
90b5ae643a6d Move code to proper place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 344
diff changeset
   554
432
650ccece6b01 use-dialog-box set to t.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 431
diff changeset
   555
(setq
650ccece6b01 use-dialog-box set to t.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 431
diff changeset
   556
 use-dialog-box t
650ccece6b01 use-dialog-box set to t.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 431
diff changeset
   557
 x-gtk-show-hidden-files t
650ccece6b01 use-dialog-box set to t.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 431
diff changeset
   558
 )
650ccece6b01 use-dialog-box set to t.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 431
diff changeset
   559
719
694f7e388f2b Add func 'my-prevent-kill-buffer' and prevent kill '*scratch*' buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 718
diff changeset
   560
(defun my-prevent-kill-buffer ()
865
2a99ede322cd Prevent from closing 'NOTE.org' buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 864
diff changeset
   561
  (if (member (buffer-name) '("*scratch*" "NOTE.org")) nil t))
719
694f7e388f2b Add func 'my-prevent-kill-buffer' and prevent kill '*scratch*' buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 718
diff changeset
   562
(add-to-list 'kill-buffer-query-functions 'my-prevent-kill-buffer)
694f7e388f2b Add func 'my-prevent-kill-buffer' and prevent kill '*scratch*' buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 718
diff changeset
   563
966
e1eb89d99570 Switch to C-v prefix for my key bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 965
diff changeset
   564
(define-key global-map "\C-v" nil)
e1eb89d99570 Switch to C-v prefix for my key bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 965
diff changeset
   565
(define-key global-map "\C-vt" (lambda nil (interactive) (switch-to-buffer "*scratch*")))
722
7d43d5ae86fe Use "*scratch*" as temp buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 721
diff changeset
   566
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   567
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   568
(message "scrolling")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   569
339
4e131c57a0ef With scroll-step 3 when go down it scroll one line but if up - 3 so set
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 338
diff changeset
   570
(defvar my-scroll-margin 4)
4e131c57a0ef With scroll-step 3 when go down it scroll one line but if up - 3 so set
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 338
diff changeset
   571
127
0e82eedbaa82 Setup scrolling.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 126
diff changeset
   572
(setq-default
802
6168f8ab6479 Fix scrolling speed as I am use settings that documentation recommend avoid.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 801
diff changeset
   573
 ;; Set to zero as this recomment documentation.
6168f8ab6479 Fix scrolling speed as I am use settings that documentation recommend avoid.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 801
diff changeset
   574
 scroll-step 0
6168f8ab6479 Fix scrolling speed as I am use settings that documentation recommend avoid.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 801
diff changeset
   575
 ;; If the value is greater than 100, redisplay will never recenter point, but
6168f8ab6479 Fix scrolling speed as I am use settings that documentation recommend avoid.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 801
diff changeset
   576
 ;; will always scroll just enough text to bring point into view
6168f8ab6479 Fix scrolling speed as I am use settings that documentation recommend avoid.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 801
diff changeset
   577
 scroll-conservatively 1000
127
0e82eedbaa82 Setup scrolling.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 126
diff changeset
   578
 scroll-preserve-screen-position t
0e82eedbaa82 Setup scrolling.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 126
diff changeset
   579
 )
0e82eedbaa82 Setup scrolling.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 126
diff changeset
   580
333
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   581
;; Set margin only for desired modes! Do not frustrate calendar any more.
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   582
(make-variable-buffer-local 'scroll-margin)
339
4e131c57a0ef With scroll-step 3 when go down it scroll one line but if up - 3 so set
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 338
diff changeset
   583
(mapc (lambda (hook) (add-hook hook (lambda nil (setq scroll-margin my-scroll-margin))))
372
32b54537dd10 Code ported to work with Emac 21.4. Mainly problems in undefi8ned functions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 371
diff changeset
   584
      ;; TODO its good invoke delete-dups for list, but delete-dups not exist in Emacs 21.4
391
09cfea42153e Added list of mode hooks for enabling scroll margin.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 389
diff changeset
   585
      (append my-text-mode-hook-list my-devel-mode-hook-list my-scroll-margin-mode-hook-list) )
333
14b07ca8335a Set margin only for desired modes! Do not frustrate calendar any more.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 332
diff changeset
   586
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   587
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
738
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   588
(message "chars, unicode")
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   589
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   590
(defun my-print-unicode (&optional start end)
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   591
  "Print UNICODE table."
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   592
  (interactive "nstart: \nnend: ")
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   593
  (switch-to-buffer (get-buffer-create "*UNICODE*"))
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   594
  (erase-buffer)
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   595
  (let ( (i start) )
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   596
    (while (<= i end)
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   597
      (insert (format "%s: U+%04x, %s\n" (char-to-string i) i (get-char-code-property i 'name)))
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   598
      (setq i (1+ i))
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   599
      )))
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   600
2a81232aa82f Add 'my-print-unicode' which print UNICODE table.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 737
diff changeset
   601
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   602
(message "search, isearch, occur")
254
51b47da56551 Highlight on search and repalce.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 253
diff changeset
   603
989
2967a171f889 Fix: case-fold-search become buffer local so set default value...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 988
diff changeset
   604
(setq-default case-fold-search t)
217
1c42ba3ac4ba Case insensitive search. Group search customization together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   605
254
51b47da56551 Highlight on search and repalce.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 253
diff changeset
   606
(setq query-replace-highlight t)        ; highlight during query
51b47da56551 Highlight on search and repalce.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 253
diff changeset
   607
(setq search-highlight t)               ; highlight incremental search
51b47da56551 Highlight on search and repalce.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 253
diff changeset
   608
563
6d5387a4e95d Move code to proper place. Add 'f7' key binding for 'occur'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 562
diff changeset
   609
;; Make old Emacs key binding like in Emacs 23.x.
6d5387a4e95d Move code to proper place. Add 'f7' key binding for 'occur'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 562
diff changeset
   610
(when (< emacs-major-version 23)
6d5387a4e95d Move code to proper place. Add 'f7' key binding for 'occur'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 562
diff changeset
   611
  (global-set-key (kbd "M-s o") 'occur)
6d5387a4e95d Move code to proper place. Add 'f7' key binding for 'occur'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 562
diff changeset
   612
  )
6d5387a4e95d Move code to proper place. Add 'f7' key binding for 'occur'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 562
diff changeset
   613
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   614
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   615
(message "grep, find")
526
9e613d7de6e1 Added exclude pattern to 'grep-find-ignored-directories'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 525
diff changeset
   616
542
22eb7a31b689 Speedup find-dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 541
diff changeset
   617
;; -ls produce very noisy output:
22eb7a31b689 Speedup find-dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 541
diff changeset
   618
;; (setq find-ls-option '("-ls" . ""))
22eb7a31b689 Speedup find-dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 541
diff changeset
   619
;; So I use next expression, which work with GNU find, I replace %s with '0'
22eb7a31b689 Speedup find-dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 541
diff changeset
   620
;; to avoid unnecessary sys calls and this make output aligned by column:
22eb7a31b689 Speedup find-dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 541
diff changeset
   621
(setq find-ls-option '("-printf ' -rw-rw-rw- 0 %AY-%Am-%Ad %AH:%AM %p\n'" . ""))
22eb7a31b689 Speedup find-dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 541
diff changeset
   622
357
84c8c5f03fd4 Correct grep command.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 356
diff changeset
   623
;; Do not set t because some grep do not has --color options.
84c8c5f03fd4 Correct grep command.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 356
diff changeset
   624
(setq grep-highlight-matches nil)
84c8c5f03fd4 Correct grep command.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 356
diff changeset
   625
(setq grep-use-null-device nil)
84c8c5f03fd4 Correct grep command.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 356
diff changeset
   626
544
4095ef5f1346 Fix "grep-find-ignored-directories unknow variable".
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 543
diff changeset
   627
(eval-after-load 'grep
556
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
   628
  '(progn
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
   629
     (add-to-list 'grep-find-ignored-directories "build" t)
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
   630
     (add-to-list 'grep-find-ignored-directories "dist" t)
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
   631
     (add-to-list 'grep-find-ignored-directories "lib" t)
760
5d452486f388 Add _build, _dist, _lib to 'grep-find-ignored-directories'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 759
diff changeset
   632
     (add-to-list 'grep-find-ignored-directories "_build" t)
5d452486f388 Add _build, _dist, _lib to 'grep-find-ignored-directories'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 759
diff changeset
   633
     (add-to-list 'grep-find-ignored-directories "_dist" t)
5d452486f388 Add _build, _dist, _lib to 'grep-find-ignored-directories'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 759
diff changeset
   634
     (add-to-list 'grep-find-ignored-directories "_lib" t)
526
9e613d7de6e1 Added exclude pattern to 'grep-find-ignored-directories'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 525
diff changeset
   635
560
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 557 559
diff changeset
   636
     (when (boundp 'grep-find-ignored-files)
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 557 559
diff changeset
   637
       (add-to-list 'grep-find-ignored-files "*TAGS")
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 557 559
diff changeset
   638
       (add-to-list 'grep-find-ignored-files "GPATH")
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 557 559
diff changeset
   639
       )
556
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
   640
     ))
768
4af9b5e3ac15 Bind 'F7' to 'rgrep' as 'M-F7' does not possible in terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 767
diff changeset
   641
(global-set-key [f7] 'rgrep)
356
fd1af7a494de Added key binding for rgrep.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 355
diff changeset
   642
(global-set-key [M-f7] 'rgrep)
fd1af7a494de Added key binding for rgrep.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 355
diff changeset
   643
1068
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   644
(defun lzgrep ()
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   645
  (interactive)
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   646
  (let ( (grep-template "zgrep <C> -nH -e <R> <F>") (grep-find-ignored-files nil) )
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   647
    (flet ( (grep-compute-defaults () nil) )
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   648
      (call-interactively #'lgrep))))
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   649
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   650
(defun rzgrep ()
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   651
  (interactive)
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   652
  (let ( (grep-find-template "find . -type f <F> -exec zgrep <C> -nH -e <R> {} +") (grep-find-ignored-files nil) )
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   653
    (flet ( (grep-compute-defaults () nil) )
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   654
      (call-interactively #'rgrep))))
93381cc4a63d Implement lzgrep and rzgrep commands.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1067
diff changeset
   655
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   656
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
861
f8f14aacfc9b Enable 'global-hi-lock-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 860
diff changeset
   657
(message "highlighting")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
   658
996
0eb9113dddaa Increase scrolling speed by defer consuming operation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 995
diff changeset
   659
;; Increase scrolling speed by defer consuming operation.
1000
289782aa4afa I disable this due to bugs in Emacs (it doesn't highlight at all until you
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 999
diff changeset
   660
;; I disable this due to bugs in Emacs (it doesn't highlight at all until you
289782aa4afa I disable this due to bugs in Emacs (it doesn't highlight at all until you
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 999
diff changeset
   661
;; press any key).
289782aa4afa I disable this due to bugs in Emacs (it doesn't highlight at all until you
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 999
diff changeset
   662
;; (setq jit-lock-defer-time 0.01)
996
0eb9113dddaa Increase scrolling speed by defer consuming operation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 995
diff changeset
   663
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   664
(setq font-lock-maximum-decoration t)
395
c7f6eb04626d Port to Emacs 32.2 (in 'global-font-lock-mode' error - Wrong number of arguments).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 391
diff changeset
   665
(global-font-lock-mode 1)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   666
861
f8f14aacfc9b Enable 'global-hi-lock-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 860
diff changeset
   667
(global-hi-lock-mode 1)
f8f14aacfc9b Enable 'global-hi-lock-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 860
diff changeset
   668
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   669
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   670
(message "highlight selected text")
64
54ef0d72488f More pretty with selecting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 63
diff changeset
   671
776
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   672
(delete-selection-mode 1)
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   673
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   674
(when (<= emacs-major-version 23)
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   675
  ;; 1/-1, when the mark is active, the region is highlighted.
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   676
  (transient-mark-mode 1)
80
bfc8c3d03527 Correct code to remove warning in *Messages* when loading .emacs-my.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 79
diff changeset
   677
776
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   678
  ;; Order of next items is important, (assignment must done before pc-selection-mode enabled).
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   679
  (require 'pc-select)
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   680
  (setq pc-select-selection-keys-only t)  ; To avoid some key bindings as F6, etc.
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   681
  (setq pc-select-meta-moves-sexps t)
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   682
  (cond
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   683
   ((= emacs-major-version 21) (pc-selection-mode))
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   684
   ((>= emacs-major-version 22) (pc-selection-mode 1))
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   685
   )
1e680ded54d1 'transient-mark-mode' and 'pc-selection-mode' are deprecated. Emacs 24 default
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 775
diff changeset
   686
  )
64
54ef0d72488f More pretty with selecting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 63
diff changeset
   687
1122
0e255897262a Set selection background color.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1121
diff changeset
   688
(when window-system
0e255897262a Set selection background color.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1121
diff changeset
   689
  (set-face-attribute 'region nil :background "light blue"))
0e255897262a Set selection background color.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1121
diff changeset
   690
146
506d2883199f kill/yank func also use/update CLIPBOARD selsction on X window.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 145
diff changeset
   691
(when (eq window-system 'x)
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
   692
  (setq x-select-enable-clipboard t)    ; for Emacs 21.2.1 and newer
146
506d2883199f kill/yank func also use/update CLIPBOARD selsction on X window.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 145
diff changeset
   693
  )
64
54ef0d72488f More pretty with selecting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 63
diff changeset
   694
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   695
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   696
(message "highlighting current line")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
   697
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
   698
(when window-system
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
   699
  (custom-set-faces '(hl-line ((t (:inherit highlight :background "light yellow")))))
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
   700
  (global-hl-line-mode 1)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   701
  )
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   702
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   703
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   704
(message "paren, braces")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   705
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   706
(show-paren-mode 1) ; Parenthesis matching via highlighting.
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   707
(setq show-paren-style (quote parenthesis))
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   708
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   709
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   710
(message "keyboard, mouse")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   711
1115
f67ef4132301 mouse-yank-at-point
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1114
diff changeset
   712
(setq mouse-yank-at-point t)
f67ef4132301 mouse-yank-at-point
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1114
diff changeset
   713
1080
8fad37c1d42f Refactoring input method selection.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1076
diff changeset
   714
;; (pc-bindings-mode) ; I define own keybinding...
8fad37c1d42f Refactoring input method selection.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1076
diff changeset
   715
402
b1a9c8e0c22e As cyrillic-jcuken input metod fixed
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 398
diff changeset
   716
;; cyrillic-jis-russian  for 567 is :,.
b1a9c8e0c22e As cyrillic-jcuken input metod fixed
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 398
diff changeset
   717
;; cyrillic-jcuken  for SHIFT 567 is :,.
b1a9c8e0c22e As cyrillic-jcuken input metod fixed
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 398
diff changeset
   718
;; russian-computer for SHIFT 567 is %^&
1080
8fad37c1d42f Refactoring input method selection.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1076
diff changeset
   719
(setq my-russian-input-method 'russian-computer)
1081
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   720
(setq my-ukranian-input-method 'ukrainian-computer)
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   721
(setq my-ipa-input-method 'ipa-x-sampa)
1080
8fad37c1d42f Refactoring input method selection.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1076
diff changeset
   722
(when (<= emacs-major-version 21)
8fad37c1d42f Refactoring input method selection.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1076
diff changeset
   723
  (setq my-russian-input-method 'cyrillic-jcuken)
8fad37c1d42f Refactoring input method selection.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1076
diff changeset
   724
  (setq my-ukranian-input-method 'cyrillic-jcuken))
8fad37c1d42f Refactoring input method selection.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1076
diff changeset
   725
(setq default-input-method my-russian-input-method)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   726
1081
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   727
(defun my-toggle-input-method (&optional arg)
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   728
  (interactive "P")
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   729
  (if (numberp arg)
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   730
      (cond
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   731
       ((eq arg 1)
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   732
        (activate-input-method nil))
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   733
       ((eq arg 2)
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   734
        (activate-input-method my-russian-input-method))
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   735
       ((eq arg 3)
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   736
        (activate-input-method my-ukranian-input-method))
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   737
       ((eq arg 4)
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   738
        (activate-input-method my-ipa-input-method)) )
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   739
    (toggle-input-method arg)) )
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   740
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   741
(global-set-key (kbd "C-\\") 'my-toggle-input-method)
37ddc669849c Enhance selection of input methods by using numeric prefix for modeless
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1080
diff changeset
   742
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   743
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   744
(message "mouse")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   745
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   746
;; Scroll Bar gets dragged by mouse butn 1
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   747
(global-set-key [vertical-scroll-bar down-mouse-1] 'scroll-bar-drag)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   748
;; Paste at point NOT at cursor
151
0b6f4adf5096 Minor changes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 150
diff changeset
   749
(setq mouse-yank-at-point t)
439
a1910375f39e mouse-wheel-mode don't defined for Cygwin console Emacs 23.2.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 438
diff changeset
   750
(when window-system
a1910375f39e mouse-wheel-mode don't defined for Cygwin console Emacs 23.2.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 438
diff changeset
   751
  (mouse-wheel-mode 1)
a1910375f39e mouse-wheel-mode don't defined for Cygwin console Emacs 23.2.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 438
diff changeset
   752
  )
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   753
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   754
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   755
(message "key binding, short-keys")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   756
1157
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   757
(defun my-smart-beginning-of-line ()
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   758
  "Move point to beginning-of-line. If repeat command it cycle
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   759
position between `back-to-indentation' and `beginning-of-line'."
1158
89f674f09ca3 If the string begins with ^' andshift-select-mode' is non-nil, Emacs first
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1157
diff changeset
   760
  (interactive "^")
1157
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   761
  (if (and (eq last-command 'my-smart-beginning-of-line)
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   762
           (= (line-beginning-position) (point)))
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   763
      (back-to-indentation)
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   764
    (beginning-of-line)))
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   765
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   766
(global-set-key [home]     'my-smart-beginning-of-line)
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   767
(global-set-key [end]      'end-of-line)
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   768
(global-set-key [C-home]   'beginning-of-buffer)
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   769
(global-set-key [C-end]    'end-of-buffer)
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   770
(global-set-key [C-delete] 'kill-word)
2036f6052212 my-smart-beginning-of-line
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1156
diff changeset
   771
(global-set-key [delete]   'delete-char)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   772
;; (global-set-key [backspace]  'backward-delete-char-untabify) ; not work properly in *info* mode
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   773
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   774
(global-set-key [f2]    'save-buffer)
134
a071b60e4339 Set key binding to rename buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 125
diff changeset
   775
(global-set-key [S-f6]  'rename-buffer)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   776
(global-set-key [M-f4]  'save-buffers-kill-emacs)
18
91626ebef652 Added hotkey for wrap long line.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 17
diff changeset
   777
(global-set-key [f6]    'toggle-truncate-lines)
1019
cbc477acb47e Switch to other window by Super-TAB.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1018
diff changeset
   778
(global-set-key [s-tab] 'other-window)
cbc477acb47e Switch to other window by Super-TAB.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1018
diff changeset
   779
cbc477acb47e Switch to other window by Super-TAB.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1018
diff changeset
   780
;; Disable suspend. It is ugly.
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   781
(when window-system
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   782
  (global-set-key (kbd "C-z") nil))
435
a34e8ddc9e12 Disable suspend by C-x C-z. It ugly.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 434
diff changeset
   783
(global-set-key (kbd "C-x C-z") nil)
81
0ce6eaf6f26c Disable C-z, it ugly.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 80
diff changeset
   784
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   785
;; (global-set-key [language-change] 'ignore)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   786
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   787
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   788
(message "coding system, charset, locale, lang")
80
bfc8c3d03527 Correct code to remove warning in *Messages* when loading .emacs-my.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 79
diff changeset
   789
162
0ac8d1f4304d Emacs 23.1 no longer need codepage-setup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 157
diff changeset
   790
;; Emacs 23.1 no longer need codepage-setup.
0ac8d1f4304d Emacs 23.1 no longer need codepage-setup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 157
diff changeset
   791
(when (<= emacs-major-version 22)
0ac8d1f4304d Emacs 23.1 no longer need codepage-setup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 157
diff changeset
   792
  (codepage-setup 866)
0ac8d1f4304d Emacs 23.1 no longer need codepage-setup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 157
diff changeset
   793
  (codepage-setup 1251)
0ac8d1f4304d Emacs 23.1 no longer need codepage-setup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 157
diff changeset
   794
  )
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   795
53
0d8616eedf8b Reformat.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 52
diff changeset
   796
;; Comment because prefer-coding-system will be ignored.
0d8616eedf8b Reformat.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 52
diff changeset
   797
;; (setq-default coding-system-for-read  'cp1251-dos)
0d8616eedf8b Reformat.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 52
diff changeset
   798
;; (setq-default coding-system-for-write 'cp1251-dos)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   799
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   800
;; (setq locale-coding-system  'cp1251-dos)
583
a9e5bfad6dd5 Add note.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 582
diff changeset
   801
;; (set-language-environment 'UTF-8)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   802
;; (set-terminal-coding-system 'cp1251)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   803
;; (set-keyboard-coding-system 'cp1251)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   804
4
46543c097be0 Transfer changer from .eamcs_unix, add case for w32 or other system.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 3
diff changeset
   805
(modify-coding-system-alist 'file "\\.el" 'iso-2022-7bit)
192
8b4811c64ec4 Correct copy/paste coding in windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 191
diff changeset
   806
(cond
106
0591d06cf752 Решил проблему copy/paste в X. Решил проблему поиска в UTF-8 буфере.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 102
diff changeset
   807
 ((equal window-system 'w32)          ; also (string-equal system-type "windows-nt")
839
27fac2557f13 Don't set 'selection-coding-system' for Windows. This is no longer needed.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 835
diff changeset
   808
  ;; (set-selection-coding-system 'utf-16-le-dos)
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   809
  (setq-default buffer-file-coding-system 'cp1251)
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   810
  (setq default-file-name-coding-system 'cp1251)
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   811
  (setq default-process-coding-system '(cp1251 . cp1251))
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   812
  )
106
0591d06cf752 Решил проблему copy/paste в X. Решил проблему поиска в UTF-8 буфере.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 102
diff changeset
   813
 ((equal window-system 'x)
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   814
  (prefer-coding-system 'utf-8-unix)
991
e8c74f4c5d9e Set 'selection-coding-system' to 'nil' to automatically select proper coding
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 990
diff changeset
   815
  (setq selection-coding-system nil)
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   816
  (setq x-select-request-type '(UTF8_STRING COMPOUND_TEXT TEXT STRING))
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   817
  (modify-coding-system-alist 'process ".*" 'utf-8-unix)
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   818
  )
769
5ed69391dc95 Fix coding for Cygwin Emacs when LANG=ru_RU.cp1251.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 768
diff changeset
   819
 ((eq system-type 'cygwin)
5ed69391dc95 Fix coding for Cygwin Emacs when LANG=ru_RU.cp1251.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 768
diff changeset
   820
  (when (string-match "1251\\'" (getenv "LANG"))
5ed69391dc95 Fix coding for Cygwin Emacs when LANG=ru_RU.cp1251.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 768
diff changeset
   821
    (prefer-coding-system 'cp1251-unix)
5ed69391dc95 Fix coding for Cygwin Emacs when LANG=ru_RU.cp1251.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 768
diff changeset
   822
    (prefer-coding-system 'utf-8-unix)
5ed69391dc95 Fix coding for Cygwin Emacs when LANG=ru_RU.cp1251.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 768
diff changeset
   823
    (modify-coding-system-alist 'process ".*" 'cp1251-unix)
5ed69391dc95 Fix coding for Cygwin Emacs when LANG=ru_RU.cp1251.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 768
diff changeset
   824
    )
5ed69391dc95 Fix coding for Cygwin Emacs when LANG=ru_RU.cp1251.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 768
diff changeset
   825
  )
622
596406094fd1 Port to Mac OS X console Emacs 22.1.1.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   826
 ((eq system-type 'darwin)
623
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 621 622
diff changeset
   827
  nil
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 621 622
diff changeset
   828
  )
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
   829
 )
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
   830
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   831
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1142
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   832
(message "selecting/switching, creating/killing buffers, open file")
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   833
(message "ido, ffap")
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   834
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   835
;; Loaded and used by ido.
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   836
;; (require 'ffap)
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   837
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   838
(require 'ido)
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   839
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   840
(setq ido-enable-flex-matching t)
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   841
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   842
(setq ido-use-filename-at-point 'guess)
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   843
(setq ido-use-url-at-point t)
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   844
(setq ido-enable-tramp-completion t)
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   845
(setq ido-use-virtual-buffers t)
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   846
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   847
(setq ido-create-new-buffer 'always)
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   848
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   849
(setq ido-file-extensions-order '(".java" ".c" ".py" ".xml" ".txt" ".el" ".ini" ".cfg" ".cnf" ".log"))
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   850
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   851
(setq ido-ignore-buffers
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   852
      '("\\` "))
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   853
;; ido-ignore-directories
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   854
;; ido-ignore-files
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   855
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   856
(ido-mode 1)
953
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   857
956
661dc3bfc076 Remove key bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 955
diff changeset
   858
(global-set-key [?\C-x right] 'next-buffer)
661dc3bfc076 Remove key bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 955
diff changeset
   859
(global-set-key [?\C-x left]  'previous-buffer)
1094
5cff783d79a3 Add shortcut to speedup buffer killing.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1093
diff changeset
   860
(global-set-key (kbd "C-x C-k") 'kill-this-buffer)
1135
b6dcbd747884 Kill current buffer. Switch to next buffer if previous command was switching
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1133
diff changeset
   861
(defun my-kill-this-buffer-maybe-switch-to-next ()
b6dcbd747884 Kill current buffer. Switch to next buffer if previous command was switching
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1133
diff changeset
   862
  "Kill current buffer. Switch to next buffer if previous command
b6dcbd747884 Kill current buffer. Switch to next buffer if previous command was switching
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1133
diff changeset
   863
was switching to next buffer or this command itself allowing
b6dcbd747884 Kill current buffer. Switch to next buffer if previous command was switching
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1133
diff changeset
   864
sequential closing of uninteresting buffers."
b6dcbd747884 Kill current buffer. Switch to next buffer if previous command was switching
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1133
diff changeset
   865
  (interactive)
b6dcbd747884 Kill current buffer. Switch to next buffer if previous command was switching
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1133
diff changeset
   866
  (let ( (cmd last-command) )
1182
616154dadd38 Replace kill-this-buffer with core functions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1181
diff changeset
   867
    (kill-buffer (current-buffer))
1135
b6dcbd747884 Kill current buffer. Switch to next buffer if previous command was switching
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1133
diff changeset
   868
    (when (memq cmd (list 'next-buffer this-command))
b6dcbd747884 Kill current buffer. Switch to next buffer if previous command was switching
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1133
diff changeset
   869
      (next-buffer))))
b6dcbd747884 Kill current buffer. Switch to next buffer if previous command was switching
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1133
diff changeset
   870
(global-set-key [?\C-x deletechar] 'my-kill-this-buffer-maybe-switch-to-next)
1099
ca26bcd6e73b Rebind C-x UP to mentally obvious behavior when used 3 or more windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1098
diff changeset
   871
(global-set-key [?\C-x up] '(lambda ()
ca26bcd6e73b Rebind C-x UP to mentally obvious behavior when used 3 or more windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1098
diff changeset
   872
                              (interactive)
ca26bcd6e73b Rebind C-x UP to mentally obvious behavior when used 3 or more windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1098
diff changeset
   873
                              (other-window -1)))
1095
c71fb6dedc38 Add useful key binding for killing window and switching to another window.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1094
diff changeset
   874
(global-set-key [?\C-x down] 'other-window)
956
661dc3bfc076 Remove key bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 955
diff changeset
   875
953
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   876
(require 'uniquify)
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   877
(setq uniquify-buffer-name-style 'post-forward)
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   878
(setq uniquify-separator "|")
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   879
(setq uniquify-after-kill-buffer-p t)
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   880
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   881
(setq read-buffer-completion-ignore-case t)
1127
dec4b1d47f61 Remove useless comment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1126
diff changeset
   882
(setq read-file-name-completion-ignore-case t)
953
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   883
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   884
;; buffer-menu better then buffer-list, but ibuffer much better.
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   885
(global-set-key "\C-x\C-b" 'ibuffer)
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   886
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   887
(icomplete-mode 1)
1025
3d524b2cbbc1 Use icomplete for all completion-tables.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1024
diff changeset
   888
(setq icomplete-with-completion-tables t)
953
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   889
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   890
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   891
(message "completion")
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   892
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   893
;; I remove partial-completion-mode because it depricated in Emacs 24.0.
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   894
;; Completion controled by 'completion-styles' variable.
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   895
3ad3abeec5f9 Move related code to common place.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 952
diff changeset
   896
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
970
5b2a8a8a036c Add basic Yasnippet settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 968
diff changeset
   897
(message "yasnippet")
5b2a8a8a036c Add basic Yasnippet settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 968
diff changeset
   898
5b2a8a8a036c Add basic Yasnippet settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 968
diff changeset
   899
(setq my-yas-root-directory "~/.emacs.d/my-yas")
5b2a8a8a036c Add basic Yasnippet settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 968
diff changeset
   900
(setq yas/ignore-filenames-as-triggers t)
5b2a8a8a036c Add basic Yasnippet settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 968
diff changeset
   901
972
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
   902
;; (eval-after-load 'yasnippet
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
   903
;;   '(progn
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
   904
;;      (cond
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
   905
;;       ((listp yas/root-directory) (add-to-list 'yas/root-directory my-yas-root-directory))
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
   906
;;       ((stringp yas/root-directory) (setq yas/root-directory (list my-yas-root-directory yas/root-directory)))
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
   907
;;       (t (error "I expect that yas/root-directory is a list of string")) )
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
   908
;;      (mapc 'yas/load-directory yas/root-directory)))
970
5b2a8a8a036c Add basic Yasnippet settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 968
diff changeset
   909
5b2a8a8a036c Add basic Yasnippet settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 968
diff changeset
   910
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1142
7906db469af0 Switch to ido from iswitchb. Use ido key binding instead of ffap-bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1141
diff changeset
   911
(message "dired")
598
9399292dae57 Enable 'ffap' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 597
diff changeset
   912
460
9bd638f8f74c Use saveplace mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   913
(setq-default save-place t)
9bd638f8f74c Use saveplace mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   914
(require 'saveplace)
9bd638f8f74c Use saveplace mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 459
diff changeset
   915
598
9399292dae57 Enable 'ffap' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 597
diff changeset
   916
(require 'dired)
241
78cbd4c692ee Added dired settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 240
diff changeset
   917
78cbd4c692ee Added dired settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 240
diff changeset
   918
(setq dired-dwim-target t)
78cbd4c692ee Added dired settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 240
diff changeset
   919
;; dangerous
78cbd4c692ee Added dired settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 240
diff changeset
   920
;; (setq
78cbd4c692ee Added dired settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 240
diff changeset
   921
;;  dired-recursive-copies 'top
78cbd4c692ee Added dired settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 240
diff changeset
   922
;;  dired-recursive-deletes 'top)
78cbd4c692ee Added dired settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 240
diff changeset
   923
463
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   924
(defun my-dired-up-dir ()
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   925
  "'Reuse' buffer if enter to dir or open new buffer if enter to file."
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   926
  (interactive)
471
1d59b8a9d8a0 Fix bug: under Linux you can not go upper for '/dir' like dir (that lie
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 470
diff changeset
   927
  ;; (dired-current-directory) always end with trailing '/' char.
1d59b8a9d8a0 Fix bug: under Linux you can not go upper for '/dir' like dir (that lie
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 470
diff changeset
   928
  (let* ( (dir (dired-current-directory)) (i (- (length dir) 2)) upperdir )
463
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   929
    (while (and
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   930
            (>= i 0)
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   931
            (not (equal (aref dir i) ?/)) )
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   932
      (setq i (- i 1))
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   933
      )
471
1d59b8a9d8a0 Fix bug: under Linux you can not go upper for '/dir' like dir (that lie
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 470
diff changeset
   934
    (setq upperdir (substring dir 0 (+ i 1)))
1d59b8a9d8a0 Fix bug: under Linux you can not go upper for '/dir' like dir (that lie
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 470
diff changeset
   935
    (when (file-directory-p upperdir)
1d59b8a9d8a0 Fix bug: under Linux you can not go upper for '/dir' like dir (that lie
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 470
diff changeset
   936
      (find-alternate-file upperdir)
463
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   937
      (dired-goto-file dir)
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   938
      )
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   939
    ))
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   940
(define-key dired-mode-map (kbd "<backspace>") 'my-dired-up-dir)
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   941
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   942
(defun my-dired-enter-to-dir ()
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   943
  "'Reuse' buffer if enter to dir or open new buffer if enter to file."
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   944
  (interactive)
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   945
  (let ( (file (dired-get-file-for-visit)) )
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   946
    (if (file-directory-p file)
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   947
        (find-alternate-file file)
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   948
      (find-file file)
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   949
      )))
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   950
(define-key dired-mode-map (kbd "<return>")
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   951
  'my-dired-enter-to-dir)
adc3abb3c1fc Make Total Commmander like key binding for Enter and Backspace.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 462
diff changeset
   952
697
d19881accc91 Make behaviour same as in GUI for dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 695
diff changeset
   953
;; Make behaviour same as in GUI.
d19881accc91 Make behaviour same as in GUI for dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 695
diff changeset
   954
(unless window-system
d19881accc91 Make behaviour same as in GUI for dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 695
diff changeset
   955
  (define-key dired-mode-map (kbd "DEL") 'my-dired-up-dir)
d19881accc91 Make behaviour same as in GUI for dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 695
diff changeset
   956
  (define-key dired-mode-map (kbd "RET") 'my-dired-enter-to-dir)
d19881accc91 Make behaviour same as in GUI for dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 695
diff changeset
   957
  )
d19881accc91 Make behaviour same as in GUI for dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 695
diff changeset
   958
455
434f14adcd26 Added key binding for reuse existent dired buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   959
(when (>= emacs-major-version 22)
434f14adcd26 Added key binding for reuse existent dired buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   960
  ;; Enable 'a' command.
434f14adcd26 Added key binding for reuse existent dired buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   961
  (put 'dired-find-alternate-file 'disabled nil)
434f14adcd26 Added key binding for reuse existent dired buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 454
diff changeset
   962
  )
326
ded53e19d23a Enable 'a' command in dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 303
diff changeset
   963
469
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   964
(defun my-file-name-tmp-p (file)
667
32cbaa8f4368 Add .base .local .other to list of tmp files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 666
diff changeset
   965
  (string-match
32cbaa8f4368 Add .base .local .other to list of tmp files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 666
diff changeset
   966
   `,(concat
1020
9566db24d58e Mark Python binary files as temporary.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1019
diff changeset
   967
    "\\(?:^#.*#\\|~\\|"
9566db24d58e Mark Python binary files as temporary.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1019
diff changeset
   968
    "\\." (regexp-opt '("base" "local" "orig" "other" "rej" "diff" "log" "stackdump" "pyc" "pyo"))
667
32cbaa8f4368 Add .base .local .other to list of tmp files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 666
diff changeset
   969
    "\\)\\'")
869
842f7cd10ef8 Do not mark directories as temp files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 868
diff changeset
   970
   (or (and (file-directory-p file) "") (file-name-nondirectory file))))
469
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   971
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   972
(defun my-dired-flag-tmp-files ()
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   973
  "Flag all temporary files for deletion."
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   974
  (interactive)
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   975
  (dired-mark-if
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   976
   (let ( (fn (dired-get-filename 'verbatim t)) )
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   977
     (and fn (my-file-name-tmp-p fn)) )
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   978
   "backup file"
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   979
   )
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   980
  )
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   981
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   982
(define-key dired-mode-map (kbd "`") 'my-dired-flag-tmp-files)
a9adec4fbcbf Mark temporary files in dired by '`'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 468
diff changeset
   983
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
   984
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
   985
(message "ls-lisp, dired ls")
464
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
   986
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
   987
;; If non-nil - use 'insert-directory-program', which I dislike.
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
   988
(setq ls-lisp-use-insert-directory-program nil)
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
   989
(setq ls-lisp-ignore-case t)
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
   990
(setq ls-lisp-dirs-first t)
519
bdc19bd3820f Ignore owners and groups under Cygwin (mostly because
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 517
diff changeset
   991
(if (memq system-type '(windows-nt cygwin))
464
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
   992
    (setq ls-lisp-verbosity nil)
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
   993
  (setq  ls-lisp-verbosity '(links uid gid)))
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
   994
;; Force use 'ls-lisp-format-time-list'.
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
   995
(setq ls-lisp-use-localized-time-format t)
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
   996
(setq ls-lisp-format-time-list
474
d1a3f9322927 Show seconds for file modification time in dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 473
diff changeset
   997
      '("%Y-%m-%d %H:%M:%S"
d1a3f9322927 Show seconds for file modification time in dired.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 473
diff changeset
   998
        "%Y-%m-%d %H:%M   "))
475
bb2bc4c0192a Emacs must load ls-lisp to enable it under Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 474
diff changeset
   999
(require 'ls-lisp)
464
ae073d35f674 Always use 'ls-lisp' to emulate 'ls'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
  1000
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1001
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1002
(message "compression, archive")
240
77b01720a256 Enable image if supported.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 239
diff changeset
  1003
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1004
(require 'jka-compr) ; Automatic decompression, hooks for tar-mode.
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1005
(when (fboundp 'auto-compression-mode)
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1006
  (auto-compression-mode 1))
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1007
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  1008
(modify-coding-system-alist 'file "\\.\\(war\\|ear\\|sar\\|egg\\)\\'" 'no-conversion)
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  1009
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  1010
(add-to-list 'auto-mode-alist '("\\.\\(war\\|ear\\|sar\\|egg\\)\\'" . archive-mode))
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  1011
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1012
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
619
d5b22e5edae1 Exclude .svg image from supported image list, as Emacs doesn't come with SVG
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
  1013
(message "image, png, svg")
240
77b01720a256 Enable image if supported.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 239
diff changeset
  1014
77b01720a256 Enable image if supported.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 239
diff changeset
  1015
(when (fboundp 'auto-image-file-mode)
77b01720a256 Enable image if supported.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 239
diff changeset
  1016
  (auto-image-file-mode 1))
619
d5b22e5edae1 Exclude .svg image from supported image list, as Emacs doesn't come with SVG
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
  1017
(eval-after-load 'image-file
d5b22e5edae1 Exclude .svg image from supported image list, as Emacs doesn't come with SVG
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
  1018
  '(progn
d5b22e5edae1 Exclude .svg image from supported image list, as Emacs doesn't come with SVG
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
  1019
     ;; Exclude .svg image from supported image list, as Emacs doesn't come
d5b22e5edae1 Exclude .svg image from supported image list, as Emacs doesn't come with SVG
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
  1020
     ;; with SVG shared library.
d5b22e5edae1 Exclude .svg image from supported image list, as Emacs doesn't come with SVG
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
  1021
     (setq image-file-name-extensions (remove "svg" image-file-name-extensions))
655
9639cfe1e0b2 simplify
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 652
diff changeset
  1022
     ;; Re-initialize the image-file handler.
9639cfe1e0b2 simplify
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 652
diff changeset
  1023
     (auto-image-file-mode t)
619
d5b22e5edae1 Exclude .svg image from supported image list, as Emacs doesn't come with SVG
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 618
diff changeset
  1024
     ))
240
77b01720a256 Enable image if supported.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 239
diff changeset
  1025
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1026
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
716
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1027
(message "url")
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1028
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1029
;; http://tools.ietf.org/html/rfc3986
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1030
;; http://en.wikipedia.org/wiki/Percent-encoding
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1031
(defun my-percent-decode (str)
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1032
  (decode-coding-string
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1033
   (let* ( (s (split-string str "%")) )
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1034
     (my-fold
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1035
      'concat
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1036
      (car s)
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1037
      (mapcar
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1038
       (lambda (x)
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1039
         (concat (unibyte-string (string-to-number (substring x 0 2) 16)) (substring x 2)))
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1040
       (cdr s))
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1041
      )) 'utf-8))
a3f42d9dd281 my-percent-decode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 715
diff changeset
  1042
1014
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1043
(defun my-percent-decode-region (beg end &optional arg)
717
b958f182d0d4 Convert percent encoded string to native.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 716
diff changeset
  1044
  "Convert percent encoded string to native."
1014
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1045
  (interactive "r\nP")
717
b958f182d0d4 Convert percent encoded string to native.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 716
diff changeset
  1046
  (let ( (result (my-percent-decode (buffer-substring-no-properties beg end))) )
b958f182d0d4 Convert percent encoded string to native.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 716
diff changeset
  1047
    (if (not arg)
1014
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1048
        result
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1049
      (delete-region beg end)
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1050
      (insert result))
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1051
    ) )
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1052
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1053
(defun my-percent-encode (str)
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1054
  (apply 'concat
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1055
         (mapcar
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1056
          (lambda (ch) (if (or (and (<= ?a ch) (>= ?z ch))
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1057
                          (and (<= ?A ch) (>= ?Z ch))
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1058
                          (memq ch '(?- ?_ ?. ?~)))
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1059
                      (char-to-string ch)
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1060
                    (format "%%%02X" ch)))
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1061
          (encode-coding-string str 'utf-8) )))
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1062
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1063
(defun my-percent-encode-region (beg end &optional arg)
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1064
  "Encode string to percent encoding."
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1065
  (interactive "r\nP")
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1066
  (let ( (result (my-percent-encode (buffer-substring-no-properties beg end))) )
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1067
    (if (not arg)
82ae06b5d7c4 Add function: "Encode string to percent encoding."
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1013
diff changeset
  1068
        result
717
b958f182d0d4 Convert percent encoded string to native.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 716
diff changeset
  1069
      (delete-region beg end)
b958f182d0d4 Convert percent encoded string to native.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 716
diff changeset
  1070
      (insert result))
b958f182d0d4 Convert percent encoded string to native.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 716
diff changeset
  1071
    ) )
b958f182d0d4 Convert percent encoded string to native.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 716
diff changeset
  1072
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1073
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1074
(message "browser")
98
5223817dad90 Use mozilla browser. Not tested for Windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 97
diff changeset
  1075
138
90fda97adcb1 Setup browse-url func for linux and windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 120
diff changeset
  1076
(cond
90fda97adcb1 Setup browse-url func for linux and windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 120
diff changeset
  1077
 ((equal window-system 'w32)
90fda97adcb1 Setup browse-url func for linux and windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 120
diff changeset
  1078
  (setq browse-url-browser-function 'browse-url-default-windows-browser))
476
4d3b20be2562 Use Firefox to open URLs under Debian Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 475
diff changeset
  1079
 ((boundp 'debian-emacs-flavor)
4d3b20be2562 Use Firefox to open URLs under Debian Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 475
diff changeset
  1080
  (setq browse-url-browser-function 'browse-url-firefox))
138
90fda97adcb1 Setup browse-url func for linux and windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 120
diff changeset
  1081
 (t
90fda97adcb1 Setup browse-url func for linux and windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 120
diff changeset
  1082
  (setq browse-url-browser-function 'browse-url-mozilla)))
98
5223817dad90 Use mozilla browser. Not tested for Windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 97
diff changeset
  1083
677
154f402aa2dc my-cygwin-search
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 676
diff changeset
  1084
(defun my-cygwin-search (str)
154f402aa2dc my-cygwin-search
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 676
diff changeset
  1085
  "Search for Cygwin package on-line."
154f402aa2dc my-cygwin-search
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 676
diff changeset
  1086
  (interactive (list (read-input "Search for Cygwin package on-line: ")))
154f402aa2dc my-cygwin-search
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 676
diff changeset
  1087
  (browse-url (format "http://cygwin.com/cgi-bin2/package-grep.cgi?grep=%s" str))
154f402aa2dc my-cygwin-search
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 676
diff changeset
  1088
  )
154f402aa2dc my-cygwin-search
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 676
diff changeset
  1089
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1090
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
960
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1091
(message "netbeans")
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1092
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1093
(defun netbeans-find-command ()
962
5d94d3736bbe Search for NetBeans executable in PATH, later in '/opt/netbeans*/bin/'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 961
diff changeset
  1094
  "Search for NetBeans executable in PATH, later in '/opt/netbeans*/bin/'."
961
d8f1ed2f2f9c Fix typo: command name. Add error checking code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 960
diff changeset
  1095
  (or
d8f1ed2f2f9c Fix typo: command name. Add error checking code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 960
diff changeset
  1096
   (executable-find "netbeans")
963
102845496d41 Fix: balance parents. Fix typo in func name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 962
diff changeset
  1097
   (car (last (sort (file-expand-wildcards "/opt/[Nn]etbeans*/bin/netbeans" t) 'equal))) ))
961
d8f1ed2f2f9c Fix typo: command name. Add error checking code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 960
diff changeset
  1098
(defvar netbeans-command (netbeans-find-command)
960
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1099
  "Command to run NetBeans.")
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1100
(defun netbeans-open-file (file &optional line)
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1101
  "Open FILE on LINE in NetBeans."
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1102
  (if (integerp line)
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1103
      (start-process "netbeans" nil netbeans-command "--open" (format "%s:%d" file line))
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1104
    (start-process "netbeans" nil netbeans-command "--open" file)))
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1105
(defun netbeans-open-this-buffer ()
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1106
  "Open file for burrent buffer in NetBeans."
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1107
  (interactive)
986
6e74bf91f1df Add checks for: Buffer have no association with a file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 985
diff changeset
  1108
  (unless (stringp (buffer-file-name))
6e74bf91f1df Add checks for: Buffer have no association with a file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 985
diff changeset
  1109
    (error "Buffer have no association with a file"))
961
d8f1ed2f2f9c Fix typo: command name. Add error checking code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 960
diff changeset
  1110
  (if (file-regular-p (buffer-file-name))
d8f1ed2f2f9c Fix typo: command name. Add error checking code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 960
diff changeset
  1111
      (netbeans-open-file (buffer-file-name) (line-number-at-pos))
963
102845496d41 Fix: balance parents. Fix typo in func name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 962
diff changeset
  1112
    (message "Current buffer wasnt' associated with a real file")))
960
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1113
272a40dfdbcd Add integration with NetBeans (netbeans-open-this-buffer).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 959
diff changeset
  1114
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1115
(message "calendar")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  1116
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1117
;; (setq mark-holidays-in-calendar t)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1118
;; (setq all-christian-calendar-holidays t)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1119
;; (setq calendar-date-display-form (quote ((format "%04s-%02d-%02d" year (string-to-int month) (string-to-int day)))))
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1120
;; (setq calendar-time-display-form (quote (24-hours ":" minutes (if time-zone " (") time-zone (if time-zone ")"))))
49
71cec5d9c60f Set week start with Monday.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 48
diff changeset
  1121
(setq calendar-week-start-day 1)
71cec5d9c60f Set week start with Monday.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 48
diff changeset
  1122
(setq european-calendar-style t)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1123
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1124
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1125
(message "standard hooks")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1126
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1127
(add-hook 'write-file-hooks 'time-stamp)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1128
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1129
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
735
337d64d4f27b Enable auto-revert-tail-mode for log files from /var/log.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 734
diff changeset
  1130
(message "logging, logs")
337d64d4f27b Enable auto-revert-tail-mode for log files from /var/log.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 734
diff changeset
  1131
337d64d4f27b Enable auto-revert-tail-mode for log files from /var/log.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 734
diff changeset
  1132
(defun my-auto-revert-tail-mode-hook ()
1164
ca644074aac4 Enable log4-hi-mode and auto-revert-tail-mode for ~/.xsession-errors.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1158
diff changeset
  1133
  (when (string-match "/logs?/\\|\\.\\(?:log\\|out\\)\\'\\|/.xsession-errors\\'"
735
337d64d4f27b Enable auto-revert-tail-mode for log files from /var/log.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 734
diff changeset
  1134
                      (buffer-file-name (current-buffer)))
337d64d4f27b Enable auto-revert-tail-mode for log files from /var/log.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 734
diff changeset
  1135
    (auto-revert-tail-mode 1)
1076
eed45b8a9e3a Highlight standard elements in log4* like log-files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1074
diff changeset
  1136
    (log4-hi-mode 1)
1084
a1af1d3582b6 Add margin to log buffers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1081
diff changeset
  1137
    (setq scroll-margin my-scroll-margin)
735
337d64d4f27b Enable auto-revert-tail-mode for log files from /var/log.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 734
diff changeset
  1138
    ))
337d64d4f27b Enable auto-revert-tail-mode for log files from /var/log.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 734
diff changeset
  1139
(add-hook 'find-file-hook 'my-auto-revert-tail-mode-hook)
337d64d4f27b Enable auto-revert-tail-mode for log files from /var/log.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 734
diff changeset
  1140
337d64d4f27b Enable auto-revert-tail-mode for log files from /var/log.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 734
diff changeset
  1141
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1142
(message "auto-fill")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1143
102
25585e240b4a Move customization from .emacs (custom-set-variables) to .emacs-my. Remove duplication.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 101
diff changeset
  1144
(setq-default fill-column 78)
25585e240b4a Move customization from .emacs (custom-set-variables) to .emacs-my. Remove duplication.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 101
diff changeset
  1145
335
748c6e05fe87 Use common value for fill-column.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 334
diff changeset
  1146
(defvar my-fill-column 100
748c6e05fe87 Use common value for fill-column.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 334
diff changeset
  1147
  "I use greater value then 78 for comment in prog source.")
748c6e05fe87 Use common value for fill-column.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 334
diff changeset
  1148
148
7df64d2c9f3d Remove unused key binding. Added more docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 147
diff changeset
  1149
;; By default used American convention - sentence and with two spaces. Change
7df64d2c9f3d Remove unused key binding. Added more docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 147
diff changeset
  1150
;; it to one space. Has affect on filling and M-a, M-e commands.
102
25585e240b4a Move customization from .emacs (custom-set-variables) to .emacs-my. Remove duplication.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 101
diff changeset
  1151
(setq sentence-end-double-space nil)
25585e240b4a Move customization from .emacs (custom-set-variables) to .emacs-my. Remove duplication.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 101
diff changeset
  1152
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1153
;; Turn on auto-fill mode
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1154
(add-hook 'html-mode-hook 'turn-on-auto-fill)
102
25585e240b4a Move customization from .emacs (custom-set-variables) to .emacs-my. Remove duplication.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 101
diff changeset
  1155
(add-hook 'text-mode-hook 'turn-on-auto-fill)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1156
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1157
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1158
(message "cacl, calculator")
367
58e70956523a Set cacl digit grouping.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 366
diff changeset
  1159
58e70956523a Set cacl digit grouping.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 366
diff changeset
  1160
(setq-default calc-group-digits t)
58e70956523a Set cacl digit grouping.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 366
diff changeset
  1161
(setq-default calc-group-char "'")
58e70956523a Set cacl digit grouping.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 366
diff changeset
  1162
517
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1163
(defun my-calc-eval-region (arg beg end)
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1164
  "Calculate the region and display the result in the echo area.
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1165
With prefix ARG non-nil, insert the result at the end of region."
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1166
  (interactive "P\nr")
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1167
  (require 'calc)
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1168
  (let* ((expr (buffer-substring-no-properties beg end))
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1169
         (result (calc-eval expr)))
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1170
    (if (null arg)
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1171
        (message "%s = %s" expr result)
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1172
      (goto-char end)
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1173
      (save-excursion
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1174
        (insert result)))))
6889ad2dbd35 Add 'my-calc-eval-region' func.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 516
diff changeset
  1175
665
9761254a1260 Maintaining the table of contents up-to-date.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 664
diff changeset
  1176
;; ----------------------------------------------------------------
666
994de1974616 fix misspelling
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 665
diff changeset
  1177
(message "rst, reStructuredText")
665
9761254a1260 Maintaining the table of contents up-to-date.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 664
diff changeset
  1178
9761254a1260 Maintaining the table of contents up-to-date.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 664
diff changeset
  1179
;; Maintaining the table of contents up-to-date.
9761254a1260 Maintaining the table of contents up-to-date.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 664
diff changeset
  1180
(add-hook 'rst-adjust-hook 'rst-toc-update)
9761254a1260 Maintaining the table of contents up-to-date.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 664
diff changeset
  1181
689
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1182
(unless window-system
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1183
  (eval-after-load 'rst
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1184
    '(progn
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1185
       (custom-set-faces
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1186
        '(rst-level-1-face ((t (:background "yellow"))) t)
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1187
        '(rst-level-2-face ((t (:background "yellow"))) t)
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1188
        '(rst-level-3-face ((t (:background "yellow"))) t)
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1189
        '(rst-level-4-face ((t (:background "yellow"))) t)
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1190
        '(rst-level-5-face ((t (:background "yellow"))) t)
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1191
        '(rst-level-6face ((t (:background "yellow"))) t)
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1192
        ) ) ) )
1b632e2151cc Fix rst-level-*-face for terminal.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 688
diff changeset
  1193
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1194
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1195
(message "TeX, LaTeX")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  1196
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1197
(setq tex-run-command "initex")
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1198
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1199
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1200
(message "AUC TeX")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1201
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1202
;(add-hook 'LaTeX-mode-hook 'LaTeX-install-toolbar)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1203
;; (setq TeX-parse-self t)             ; Enable parse on load.
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1204
;; (setq TeX-auto-save t)              ; Enable parse on save.
347
ae8ed6d33e90 Dont prompt for master file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 346
diff changeset
  1205
;; Query for master file. If you often use \include or \input, you should make AUCTEX aware of the
ae8ed6d33e90 Dont prompt for master file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 346
diff changeset
  1206
;; multi-file document structure.
ae8ed6d33e90 Dont prompt for master file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 346
diff changeset
  1207
(setq-default TeX-master nil)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1208
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1209
;(setq TeX-PDF-mode t)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1210
;(setq TeX-interactive-mode t)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1211
;(setq TeX-source-specials-mode 1)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1212
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1213
;;; some more menu entries in the command list:
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1214
;;; see tex-mik.el from package auctex: %v is defined in tex-mik.el
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1215
;;; other variables are defined in tex.el from auctex
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1216
;;; the meaning of some auctex-varibles:
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1217
        ;symbols defined in tex.el and tex-mik.el:
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1218
        ;%b name slave tex-file  %t name master tex-file
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1219
        ;%d dvi-file  %f ps-file
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1220
        ;%l "latex --src-specials"
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1221
        ;%n line number  %p printcommand  %q "lpq"
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1222
        ;%r (TeX-style-check TeX-print-style)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1223
        ;%s master-file-name without extention
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1224
        ;%v yap command view line
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1225
;(eval-after-load "tex"
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1226
;  '(progn
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1227
;     (add-to-list 'TeX-command-list
9
96e0cbcd92ab Untabify.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 8
diff changeset
  1228
;         (list "->PS landscape for pdf"
96e0cbcd92ab Untabify.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 8
diff changeset
  1229
;           "dvips %d -N0 -Ppdf -G0 -T 297mm,210mm -o %f "
96e0cbcd92ab Untabify.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 8
diff changeset
  1230
;           'TeX-run-command nil t))
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1231
;     (add-to-list 'TeX-command-list
9
96e0cbcd92ab Untabify.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 8
diff changeset
  1232
;         (list "All Texify run-viewer"
96e0cbcd92ab Untabify.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 8
diff changeset
  1233
;           "texify --tex-opt=--src --run-viewer --clean %s.tex"
96e0cbcd92ab Untabify.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 8
diff changeset
  1234
;           'TeX-run-command nil t))))
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1235
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1236
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1237
(message "reftex")
461
1639d2540bbd Set outline-minor for file. Fix section to feet header outline pattern.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 460
diff changeset
  1238
1639d2540bbd Set outline-minor for file. Fix section to feet header outline pattern.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 460
diff changeset
  1239
;; Reftex is included with Emacs 21.1.
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1240
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1241
;; (autoload 'reftex-mode     "reftex" "RefTeX Minor Mode" t)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1242
;; (autoload 'turn-on-reftex  "reftex" "RefTeX Minor Mode" nil)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1243
;; (autoload 'reftex-citation "reftex-cite" "Make citation" nil)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1244
;; (autoload 'reftex-index-phrase-mode "reftex-index" "Phrase mode" t)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1245
;; (add-hook 'LaTeX-mode-hook 'turn-on-reftex)   ; with AUCTeX LaTeX mode
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1246
;; (add-hook 'latex-mode-hook 'turn-on-reftex)   ; with Emacs latex mode
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1247
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1248
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1249
(message "PreviewLatex")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1250
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1251
;(load "preview-latex.el" nil t t)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1252
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1253
;(add-hook 'LaTeX-mode-hook #'LaTeX-preview-setup)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1254
;(autoload 'LaTeX-preview-setup "preview")
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1255
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1256
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1257
(message "Info")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1258
323
7a7dc2befa99 Because of Debian policy documentation covered by FDL license with invariant sections not allowed in packet
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 322
diff changeset
  1259
(unless (getenv "INFOPATH")
1166
ea9a6964c811 expand-file-name
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1165
diff changeset
  1260
  (setenv "INFOPATH" (expand-file-name "~/usr/share/info:")))
323
7a7dc2befa99 Because of Debian policy documentation covered by FDL license with invariant sections not allowed in packet
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 322
diff changeset
  1261
799
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1262
;; Assume that cygwin-mount already activated.
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1263
(when (featurep 'cygwin-mount)
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1264
  (setenv "INFOPATH" "/usr/share/info/:~/usr/share/info/:")
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1265
  ;; Redefine path-separator to UNIX to update Info-directory-list.
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1266
  (let ( (path-separator ":") )
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1267
    (require 'info)
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1268
    (info-initialize)
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1269
    ))
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1270
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1271
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
972
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1272
(message "info-lookup")
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1273
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1274
;; Info index nodes for automake under Debian.
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1275
(setq my-fix-for-automake-info-lookup
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1276
      '(("(automake-1.11)Macro Index" nil
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1277
         "^`" "['(]")
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1278
        ("(automake-1.11)Variable Index" nil
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1279
         "^`" "['(]")
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1280
        ("(automake-1.11)General Index" nil
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1281
         "^`" "['(]")))
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1282
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1283
;; Add `my-fix-for-automake-info-lookup' entries to the end of doc-spec for
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1284
;; some modes.
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1285
(eval-after-load 'info-look
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1286
  '(progn
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1287
     (mapc
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1288
      (lambda (mode)
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1289
        (let ( (doc-spec (info-lookup->doc-spec 'symbol mode)) )
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1290
          (mapc
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1291
           (lambda (doc-spec-item)
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1292
             (setcdr (last doc-spec) (list doc-spec-item)))
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1293
           my-fix-for-automake-info-lookup)))
973
cb197c1eeb15 Enable 'info-lookup' for 'makefile-gmake-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 972
diff changeset
  1294
      '(makefile-mode autoconf-mode))
cb197c1eeb15 Enable 'info-lookup' for 'makefile-gmake-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 972
diff changeset
  1295
     (info-lookup-maybe-add-help
cb197c1eeb15 Enable 'info-lookup' for 'makefile-gmake-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 972
diff changeset
  1296
      :mode 'makefile-gmake-mode
cb197c1eeb15 Enable 'info-lookup' for 'makefile-gmake-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 972
diff changeset
  1297
      :other-modes '(makefile-mode))
cb197c1eeb15 Enable 'info-lookup' for 'makefile-gmake-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 972
diff changeset
  1298
     ))
972
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1299
eb7992880db9 Disable yas. Add info-lookup fix for automake manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 970
diff changeset
  1300
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1301
(message "man, woman")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  1302
799
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1303
;; Assume that cygwin-mount already activated.
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1304
(when (featurep 'cygwin-mount)
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1305
  (let ( (path (expand-file-name "~")) )
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1306
    (when (string-match "\\([c-z]\\):/" path)
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1307
      (setenv "MANPATH" (concat "/cygdrive/" (substring path 0 1) "/" (substring path 3) "/usr/share/man/:"))
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1308
      ) ))
c39f6e6fd191 Enable man and info page from Cygwin and from '~/usr/share'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 798
diff changeset
  1309
156
55aed5f25591 Added customisation for woman.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
  1310
(setq woman-use-own-frame nil)
55aed5f25591 Added customisation for woman.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
  1311
(setq woman-fill-frame t)
736
33d4749081b9 I prefer EN man pages.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
  1312
;; I prefer EN man pages.
842
9da301f47799 Don't change ``manual-program`` for Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 841
diff changeset
  1313
(when (memq system-type '(windows-nt cygwin))
9da301f47799 Don't change ``manual-program`` for Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 841
diff changeset
  1314
  (setq manual-program "LANG=C man")
9da301f47799 Don't change ``manual-program`` for Linux.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 841
diff changeset
  1315
  )
156
55aed5f25591 Added customisation for woman.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
  1316
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1317
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1318
(message "comint")
434
12acc6727bd9 Set comint-eol-on-send.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 433
diff changeset
  1319
12acc6727bd9 Set comint-eol-on-send.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 433
diff changeset
  1320
;; If non-nil, add a `/' to completed directories, ` ' to file names.
12acc6727bd9 Set comint-eol-on-send.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 433
diff changeset
  1321
(setq comint-completion-addsuffix t)
12acc6727bd9 Set comint-eol-on-send.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 433
diff changeset
  1322
;; Non-nil means go to the end of the line before sending input.
12acc6727bd9 Set comint-eol-on-send.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 433
diff changeset
  1323
(setq comint-eol-on-send t)
12acc6727bd9 Set comint-eol-on-send.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 433
diff changeset
  1324
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1325
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
775
a7253eb62dee Enable flyspell for Log-Edit buffer to decrease spell errors.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 774
diff changeset
  1326
(message "spell, ispell, aspell, flyspell")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1327
387
7340a863ae23 Fix spelling settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 385
diff changeset
  1328
;; Settings for spelling done in '.emacs-autogen'.
775
a7253eb62dee Enable flyspell for Log-Edit buffer to decrease spell errors.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 774
diff changeset
  1329
a7253eb62dee Enable flyspell for Log-Edit buffer to decrease spell errors.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 774
diff changeset
  1330
(add-hook 'log-edit-mode-hook 'flyspell-mode)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1331
740
5dd70683a699 ispell-extra-args
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 739
diff changeset
  1332
;; (setq-default ispell-extra-args  '("--sug-mode=ultra"))
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  1333
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1334
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
691
0722f3949eda Enable dict-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 689
diff changeset
  1335
(message "dict, dictd, dictionary")
0722f3949eda Enable dict-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 689
diff changeset
  1336
0722f3949eda Enable dict-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 689
diff changeset
  1337
(when (fboundp 'dict-c5-mode)
0722f3949eda Enable dict-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 689
diff changeset
  1338
  (add-to-list 'auto-mode-alist '("\\.dict-c5$" . dict-c5-mode))
0722f3949eda Enable dict-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 689
diff changeset
  1339
  )
0722f3949eda Enable dict-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 689
diff changeset
  1340
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1341
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
826
869bc1369aca Add basic figlet function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 825
diff changeset
  1342
(message "figlet")
869bc1369aca Add basic figlet function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 825
diff changeset
  1343
869bc1369aca Add basic figlet function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 825
diff changeset
  1344
(defun my-figlet-region (&optional b e)
869bc1369aca Add basic figlet function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 825
diff changeset
  1345
  (interactive "r")
869bc1369aca Add basic figlet function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 825
diff changeset
  1346
  (shell-command-on-region b e "figlet" (current-buffer) t)
869bc1369aca Add basic figlet function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 825
diff changeset
  1347
  (comment-region (mark) (point)))
869bc1369aca Add basic figlet function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 825
diff changeset
  1348
869bc1369aca Add basic figlet function.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 825
diff changeset
  1349
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
830
52df3d263c55 Enable jdone if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 829
diff changeset
  1350
(message "jdone")
52df3d263c55 Enable jdone if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 829
diff changeset
  1351
52df3d263c55 Enable jdone if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 829
diff changeset
  1352
(ignore-errors
52df3d263c55 Enable jdone if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 829
diff changeset
  1353
  (require 'jdone)
52df3d263c55 Enable jdone if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 829
diff changeset
  1354
  (jdone-setup-key-binding)
52df3d263c55 Enable jdone if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 829
diff changeset
  1355
  (jdone-integrate-hook)
52df3d263c55 Enable jdone if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 829
diff changeset
  1356
  )
52df3d263c55 Enable jdone if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 829
diff changeset
  1357
52df3d263c55 Enable jdone if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 829
diff changeset
  1358
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
588
aa917b11ffef Initialize remember mode before org-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 587
diff changeset
  1359
(message "org-mode, GTD, PIM, organize, todo")
79
f80cd58e09cb Use buildin and installed version of org-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 78
diff changeset
  1360
561
18c74742b032 Simplify expr.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 560
diff changeset
  1361
(when (>= emacs-major-version 22)
589
d82530e4f0a6 Move common part.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 588
diff changeset
  1362
  (require 'org))
108
1559bb79bdd1 Enable org mode for >= emacs22.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 107
diff changeset
  1363
295
5be44cff4683 Use utf-8 encoding.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 289
diff changeset
  1364
;; XXX org-todo-keywords '((sequence "TODO" "START" "|" "DONE")) for org-version 4.67c
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1365
(when (or (featurep 'org) (featurep 'org-install))
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1366
  (add-to-list 'auto-mode-alist '("\\.org$" . org-mode))
1139
e4879b513d50 Fix path to my projects (use shorter name).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1138
diff changeset
  1367
  (setq org-directory "~/devel/my/gtd")
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1368
  (setq
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1369
   org-agenda-ndays 31
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1370
   org-deadline-warning-days 7
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1371
   org-agenda-show-all-dates t
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1372
   org-agenda-format-date "%Y-%m-%d, %A %e %B"
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1373
   org-agenda-skip-deadline-if-done t
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1374
   org-agenda-skip-scheduled-if-done t
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1375
   org-agenda-start-on-weekday nil
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1376
   org-reverse-note-order t
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1377
   org-hide-leading-stars t
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1378
   org-tags-column 64
1006
2267dc920fe9 Set org-mode archiving info types.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1005
diff changeset
  1379
   org-archive-save-context-info '(time file olpath todo itags)
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1380
   )
663
1fdbc6490e16 Use ~/devel/my-devel/gtd for 'org-directory' to allow fetch changes with
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 662
diff changeset
  1381
  (setq my-org-agenda-todo-file (concat org-directory "/TODO.org"))
1fdbc6490e16 Use ~/devel/my-devel/gtd for 'org-directory' to allow fetch changes with
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 662
diff changeset
  1382
  (setq my-org-agenda-note-file (concat org-directory "/NOTE.org"))
1103
fd7c7d90758a Add learning file to list of files with deadline.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1102
diff changeset
  1383
  (setq my-org-agenda-learning-file (concat org-directory "/LEARNING.org"))
fd7c7d90758a Add learning file to list of files with deadline.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1102
diff changeset
  1384
  (setq org-agenda-files `(,my-org-agenda-todo-file ,my-org-agenda-note-file ,my-org-agenda-learning-file))
966
e1eb89d99570 Switch to C-v prefix for my key bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 965
diff changeset
  1385
  (define-key global-map "\C-va" 'org-agenda)
e1eb89d99570 Switch to C-v prefix for my key bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 965
diff changeset
  1386
  (define-key global-map "\C-ve" (lambda nil (interactive) (find-file my-org-agenda-note-file)))
589
d82530e4f0a6 Move common part.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 588
diff changeset
  1387
1112
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1388
  (setq org-todo-keywords '("TODO" "DONE"))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1389
671
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1390
  ;; My tags for remember buffer.
1005
39447be44b13 With `org-tag-persistent-alist' variable tags duplicated in *Org Tags* menu. I
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1004
diff changeset
  1391
  (setq org-tag-alist
671
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1392
        '(
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1393
          ("ADMIN" . ?a)
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1394
          ("BLOG" . ?b)
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1395
          ("DEVEL" . ?d)
1012
3432d1144a70 Add HOME tag to org-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1011
diff changeset
  1396
          ("HOME" . ?h)
1004
494cbbd890f0 Add "GET" tag for org-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1003
diff changeset
  1397
          ("GET" . ?g)
671
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1398
          ("LIFE" . ?l)
950
dc922d7bcb05 Add MAIL org tag.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 949
diff changeset
  1399
          ("MAIL" . ?m)
671
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1400
          ("JOB" . ?j)
947
7c53dd33d231 Add org tag.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 946
diff changeset
  1401
          ("QUESTION" . ?q)
671
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1402
          ("PROJECT" . ?p)
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1403
          ("READ" . ?r)
687
54a77c8a091a Add item to org-tag-persistent-alist.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 682
diff changeset
  1404
          ("SEE" . ?s)
671
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1405
          ))
1005
39447be44b13 With `org-tag-persistent-alist' variable tags duplicated in *Org Tags* menu. I
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1004
diff changeset
  1406
  ;; With this variable tags duplicated in *Org Tags* menu. I use
39447be44b13 With `org-tag-persistent-alist' variable tags duplicated in *Org Tags* menu. I
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1004
diff changeset
  1407
  ;; `org-tag-alist' instead until bug fixed.
39447be44b13 With `org-tag-persistent-alist' variable tags duplicated in *Org Tags* menu. I
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1004
diff changeset
  1408
  (setq org-tag-persistent-alist nil)
671
c8f7a49f06a9 My tags for remember buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  1409
1177
4a7ffe52d06c org-support-shift-select
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1176
diff changeset
  1410
  (setq org-support-shift-select t)
4a7ffe52d06c org-support-shift-select
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1176
diff changeset
  1411
1176
4998abbdd5f9 org-remember.el has been removed so I get error
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
  1412
  (when (>= emacs-major-version 24)
4998abbdd5f9 org-remember.el has been removed so I get error
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
  1413
    (require 'org-capture))
4998abbdd5f9 org-remember.el has been removed so I get error
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
  1414
1111
494d4d574a26 Use org-capture if available instead of org-remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  1415
  (cond
494d4d574a26 Use org-capture if available instead of org-remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  1416
   ((featurep 'org-capture)
494d4d574a26 Use org-capture if available instead of org-remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  1417
    (setq org-default-notes-file my-org-agenda-todo-file)
494d4d574a26 Use org-capture if available instead of org-remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  1418
    (setq org-capture-templates
494d4d574a26 Use org-capture if available instead of org-remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  1419
          '(("t" "Todo" entry (file my-org-agenda-todo-file) "* TODO %?\n  SCHEDULED: %T")))
494d4d574a26 Use org-capture if available instead of org-remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  1420
    (define-key global-map "\C-vr"
494d4d574a26 Use org-capture if available instead of org-remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  1421
      (lambda () (interactive) (org-capture nil "t")))
494d4d574a26 Use org-capture if available instead of org-remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  1422
    )
494d4d574a26 Use org-capture if available instead of org-remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  1423
   ((or (featurep 'remember) (fboundp 'remember))
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1424
    (setq remember-annotation-functions '(org-remember-annotation))
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1425
    (setq remember-handler-functions '(org-remember-handler))
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1426
    (add-hook 'remember-mode-hook 'org-remember-apply-template)
966
e1eb89d99570 Switch to C-v prefix for my key bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 965
diff changeset
  1427
    (define-key global-map "\C-vr" 'org-remember)
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1428
    (setq org-remember-templates
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1429
          ;; With one item org-mode do not prompt choose template.
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1430
          `(
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1431
            ("todo" ?t "* TODO %?" ,my-org-agenda-todo-file)
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1432
            ;; ("note" ?n "* %?\n" ,my-org-agenda-note-file)
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1433
            ))
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1434
    (setq org-remember-store-without-prompt t)
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1435
    (org-remember-insinuate)
1111
494d4d574a26 Use org-capture if available instead of org-remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  1436
    ))
589
d82530e4f0a6 Move common part.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 588
diff changeset
  1437
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  1438
  )
48
5aa6729514f6 Add customize for org mode. Place todo higlight вместе с org mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 47
diff changeset
  1439
1112
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1440
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1441
(defun my-org-archive-location (org-file)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1442
  (concat (if (string-match "\\(.*\\)\\.org$" org-file)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1443
              (match-string 1 org-file)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1444
            org-file)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1445
          "_done.org"))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1446
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1447
(defun my-org-archive ()
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1448
  "Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'."
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1449
  (interactive)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1450
  (let ( (org-archive (my-org-archive-location (buffer-file-name)))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1451
         (entry-re (concat "^\\* "))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1452
         (entry-done-re (concat "^\\* *" (mapconcat 'regexp-quote org-done-keywords "\\|") " "))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1453
         entry-beg entry-end )
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1454
    (save-excursion
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1455
      (show-all)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1456
      (kill-new "")
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1457
      (goto-char (point-min))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1458
      (while (re-search-forward entry-done-re nil t)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1459
        (setq entry-beg (line-beginning-position))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1460
        ()
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1461
        (if (re-search-forward entry-re nil t)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1462
            (beginning-of-line)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1463
          (goto-char (point-max)))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1464
        (setq entry-end (point))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1465
        (let ( (last-command 'kill-region) )
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1466
          (kill-region entry-beg entry-end))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1467
        )
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1468
      (find-file org-archive)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1469
      (goto-char (point-max))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1470
      (insert ?\n)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1471
      (yank)
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1472
      )))
1fc59cf19c28 Move marked by `org-done-keywords' entries to archive file defined by `my-org-archive-location'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1111
diff changeset
  1473
834
07219d4d737e (setq org-agenda-include-diary t)
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 830
diff changeset
  1474
(setq org-agenda-include-diary t)
07219d4d737e (setq org-agenda-include-diary t)
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 830
diff changeset
  1475
1032
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1476
(defun my-org-kill-by-tag (tag)
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1477
  "Put all entries that matches TAG from current org-file to `kill-ring'."
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1478
  (interactive (list (completing-read "Enter tag: " (org-get-buffer-tags))))
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1479
  (kill-new "")
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1480
  (org-scan-tags
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1481
   (lambda ()
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1482
     (let ( (last-command 'kill-region) )
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1483
       (org-cut-subtree)))
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1484
   '(member tag tags-list)
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1485
   nil) )
2177746c28a0 Implement 'my-org-kill-by-tag'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1031
diff changeset
  1486
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1487
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1488
(message "TODO, XXX, FIXME highlight")
48
5aa6729514f6 Add customize for org mode. Place todo higlight вместе с org mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 47
diff changeset
  1489
465
0a9cbfab10f4 Moved highlight pattern from hook to mode highlighting list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
  1490
(defface my-contrasty-face
48
5aa6729514f6 Add customize for org mode. Place todo higlight вместе с org mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 47
diff changeset
  1491
  '((t :background "pink" :foreground "red" :weight bold))
5aa6729514f6 Add customize for org mode. Place todo higlight вместе с org mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 47
diff changeset
  1492
  "Font for showing conflicts."
5aa6729514f6 Add customize for org mode. Place todo higlight вместе с org mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 47
diff changeset
  1493
  :group 'basic-faces)
5aa6729514f6 Add customize for org mode. Place todo higlight вместе с org mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 47
diff changeset
  1494
682
c80875ec8ad3 Remove text modes from devel mode list as it can not supprt imenu.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 681
diff changeset
  1495
(dolist (mode (append my-devel-mode-list my-text-mode-list))
465
0a9cbfab10f4 Moved highlight pattern from hook to mode highlighting list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
  1496
  (font-lock-add-keywords
0a9cbfab10f4 Moved highlight pattern from hook to mode highlighting list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
  1497
   mode
600
5a67b40de30d Add some TODO keywords.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 599
diff changeset
  1498
   `(
5a67b40de30d Add some TODO keywords.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 599
diff changeset
  1499
     ( ,(concat "\\<\\(" (regexp-opt '("TODO" "FIX" "FIXME" "HACK" "XXX")) ":?\\)\\>") 1 'font-lock-warning-face t)
465
0a9cbfab10f4 Moved highlight pattern from hook to mode highlighting list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
  1500
     ;; 64 times, for highlight C-u C-u C-u <key>
467
e08ed1434053 Simplify regex.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 466
diff changeset
  1501
     ("\\([^[:space:]]\\)\\1\\{63\\}" 0 'my-contrasty-face t)
465
0a9cbfab10f4 Moved highlight pattern from hook to mode highlighting list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
  1502
     ))
0a9cbfab10f4 Moved highlight pattern from hook to mode highlighting list.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 463
diff changeset
  1503
  )
284
bf5829d9bbf7 Another way to register TODO highlighting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 280
diff changeset
  1504
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1505
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
660
7abcc3f39fe9 Set basic mail settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 658
diff changeset
  1506
(message "fortune")
7abcc3f39fe9 Set basic mail settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 658
diff changeset
  1507
(setq fortune-file "~/XXX")
7abcc3f39fe9 Set basic mail settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 658
diff changeset
  1508
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1509
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
779
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1510
(message "mail, message")
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1511
780
afc4ee8b5dea Use message-user-agent as mail-user-agent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 779
diff changeset
  1512
(setq mail-user-agent 'message-user-agent)
afc4ee8b5dea Use message-user-agent as mail-user-agent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 779
diff changeset
  1513
938
d063544b9199 Add Organization header for 'C-x m'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 937
diff changeset
  1514
(defun my-compose-mail ()
d063544b9199 Add Organization header for 'C-x m'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 937
diff changeset
  1515
  (interactive)
d063544b9199 Add Organization header for 'C-x m'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 937
diff changeset
  1516
  (compose-mail nil nil `(("Organization" . ,(getenv "ORGANIZATION")))))
d063544b9199 Add Organization header for 'C-x m'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 937
diff changeset
  1517
(global-set-key (kbd "C-x m") #'my-compose-mail)
d063544b9199 Add Organization header for 'C-x m'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 937
diff changeset
  1518
781
c0b65744479e Define own citation format. Also this fix of inclusion mail address of cited
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 780
diff changeset
  1519
(setq message-citation-line-format "On %Y-%m-%d, %N wrote:
c0b65744479e Define own citation format. Also this fix of inclusion mail address of cited
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 780
diff changeset
  1520
")
c0b65744479e Define own citation format. Also this fix of inclusion mail address of cited
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 780
diff changeset
  1521
(setq message-citation-line-function 'message-insert-formatted-citation-line)
660
7abcc3f39fe9 Set basic mail settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 658
diff changeset
  1522
7abcc3f39fe9 Set basic mail settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 658
diff changeset
  1523
(setq mail-signature t)
7abcc3f39fe9 Set basic mail settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 658
diff changeset
  1524
(setq mail-signature-file "~/.signature")
7abcc3f39fe9 Set basic mail settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 658
diff changeset
  1525
;; (add-hook 'mail-setup-hook 'fortune-to-signature)
7abcc3f39fe9 Set basic mail settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 658
diff changeset
  1526
779
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1527
;; (setq mail-from-style 'angles)
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1528
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1529
(setq mail-personal-alias-file "~/.mailrc")
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1530
;; Initialize from your mail aliases file...
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1531
(setq mail-aliases t)
783
f2d86933e2b5 Enable ecomplete in addition to abbrev for mail completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 782
diff changeset
  1532
(require 'ecomplete)
f2d86933e2b5 Enable ecomplete in addition to abbrev for mail completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 782
diff changeset
  1533
(setq message-mail-alias-type '(abbrev ecomplete))
779
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1534
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1535
(eval-after-load 'message
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1536
  '(progn
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1537
     (require 'mailabbrev)
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1538
     (define-key message-mode-map "\e\t" 'mail-abbrev-complete-alias)
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1539
     ))
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1540
937
8f8987262795 Move code to proper place. Merge duplicate code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 936
diff changeset
  1541
(defun my-message-mode-hook ()
8f8987262795 Move code to proper place. Merge duplicate code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 936
diff changeset
  1542
  (setq fill-column 78)
8f8987262795 Move code to proper place. Merge duplicate code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 936
diff changeset
  1543
  (turn-on-auto-fill)
8f8987262795 Move code to proper place. Merge duplicate code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 936
diff changeset
  1544
  (flyspell-mode 1))
8f8987262795 Move code to proper place. Merge duplicate code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 936
diff changeset
  1545
(add-hook 'message-mode-hook 'my-message-mode-hook)
8f8987262795 Move code to proper place. Merge duplicate code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 936
diff changeset
  1546
1044
84d453ec622e Fix docs. Simplify code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1043
diff changeset
  1547
;; Mark all my messages by "common" string in "Message-Id" field to simplify
84d453ec622e Fix docs. Simplify code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1043
diff changeset
  1548
;; lookup for followups to me.
937
8f8987262795 Move code to proper place. Merge duplicate code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 936
diff changeset
  1549
(setq message-user-fqdn "gavenkoa.example.com")
784
982eee9d0366 Enable flyspell for message composing buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 783
diff changeset
  1550
779
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1551
;; Kill message buffer after mail send. You always can use C-c C-s to preserve it.
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1552
(setq message-kill-buffer-on-exit t)
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1553
893
0e1febcbddb6 Escape file name with safe chars.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 892
diff changeset
  1554
(defconst my-safe-filename-char-regex "[[:alnum:]-_!.@]"
0e1febcbddb6 Escape file name with safe chars.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 892
diff changeset
  1555
  "Safe file names.")
0e1febcbddb6 Escape file name with safe chars.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 892
diff changeset
  1556
0e1febcbddb6 Escape file name with safe chars.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 892
diff changeset
  1557
(defun my-clean-filename (filename)
0e1febcbddb6 Escape file name with safe chars.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 892
diff changeset
  1558
  (mapconcat
0e1febcbddb6 Escape file name with safe chars.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 892
diff changeset
  1559
   (lambda (ch) (or (when (string-match my-safe-filename-char-regex (char-to-string ch)) (char-to-string ch)) "-"))
0e1febcbddb6 Escape file name with safe chars.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 892
diff changeset
  1560
   filename "") )
0e1febcbddb6 Escape file name with safe chars.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 892
diff changeset
  1561
890
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1562
(defun my-message-save ()
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1563
  "Store message in `gnus-article-save-directory' after
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1564
successful sending. It is possible that mail rejected and I lost
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1565
it completely, this func save it for me."
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1566
  (unless (eq major-mode 'message-mode)
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1567
    (error "Attempt to call my-message-save in non message-mode buffer"))
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1568
  (make-directory gnus-article-save-directory t)
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1569
  (let ( (buf (current-buffer))
893
0e1febcbddb6 Escape file name with safe chars.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 892
diff changeset
  1570
         (field-to (my-clean-filename (or (message-fetch-field "Newsgroups") (message-fetch-field "To"))))
0e1febcbddb6 Escape file name with safe chars.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 892
diff changeset
  1571
         (field-subject (my-clean-filename (message-fetch-field "Subject")))
890
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1572
         file )
1107
cc1303629cde Fix: save-current-buffer: Opening output file: file name too long.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1106
diff changeset
  1573
    (when (> (length field-to) 32)
cc1303629cde Fix: save-current-buffer: Opening output file: file name too long.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1106
diff changeset
  1574
      (setq field-to (substring field-to 0 32)))
cc1303629cde Fix: save-current-buffer: Opening output file: file name too long.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1106
diff changeset
  1575
    (when (> (length field-subject) 64)
cc1303629cde Fix: save-current-buffer: Opening output file: file name too long.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1106
diff changeset
  1576
      (setq field-subject (substring field-subject 0 64)))
890
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1577
    (setq file (concat gnus-article-save-directory "/" (format-time-string "%F_%T") "_" field-to "_" field-subject))
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1578
    (with-temp-file file
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1579
      (insert-buffer buf)
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1580
      )) )
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1581
(add-hook 'message-sent-hook 'my-message-save)
7558a3f8a3d9 Store message in `gnus-article-save-directory' after successful sending. It is
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 889
diff changeset
  1582
779
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1583
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
747
dd1d88804512 Use smtpmail mode for sending mail.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 746
diff changeset
  1584
(message "smtp, smtpmail")
dd1d88804512 Use smtpmail mode for sending mail.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 746
diff changeset
  1585
843
2adc2d3542a4 Use 'sendmail-send-it' for 'send-mail-function' under Debian as
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 842
diff changeset
  1586
(when (and (not (eq system-type 'gnu/linux)) (boundp 'smtpmail-smtp-server))
773
9308a0c91624 Load auth info if possible. Load smtpmail if user provide server to use.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 772
diff changeset
  1587
  (require 'smtpmail)
9308a0c91624 Load auth info if possible. Load smtpmail if user provide server to use.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 772
diff changeset
  1588
  (setq
9308a0c91624 Load auth info if possible. Load smtpmail if user provide server to use.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 772
diff changeset
  1589
   ;; If you use the default mail user agent.
9308a0c91624 Load auth info if possible. Load smtpmail if user provide server to use.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 772
diff changeset
  1590
   send-mail-function 'smtpmail-send-it
9308a0c91624 Load auth info if possible. Load smtpmail if user provide server to use.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 772
diff changeset
  1591
   ;; If you use Message or Gnus.
9308a0c91624 Load auth info if possible. Load smtpmail if user provide server to use.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 772
diff changeset
  1592
   message-send-mail-function 'smtpmail-send-it
9308a0c91624 Load auth info if possible. Load smtpmail if user provide server to use.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 772
diff changeset
  1593
   )
9308a0c91624 Load auth info if possible. Load smtpmail if user provide server to use.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 772
diff changeset
  1594
  )
747
dd1d88804512 Use smtpmail mode for sending mail.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 746
diff changeset
  1595
;; (setq smtpmail-debug-verb t)
dd1d88804512 Use smtpmail mode for sending mail.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 746
diff changeset
  1596
;; (setq smtpmail-debug-info t)
dd1d88804512 Use smtpmail mode for sending mail.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 746
diff changeset
  1597
dd1d88804512 Use smtpmail mode for sending mail.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 746
diff changeset
  1598
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
779
df488c333452 Move message-mode settings to own section.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
  1599
(message "gnus, mh-e")
772
f0a62f45a356 Kill message buffer after mail send. You always can use C-c C-s to preserve it.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 771
diff changeset
  1600
757
789d7ac3d34f gnus-site-init-file
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 756
diff changeset
  1601
(setq gnus-site-init-file "~/.gnus.el")
789d7ac3d34f gnus-site-init-file
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 756
diff changeset
  1602
1054
144dcc473957 Set GNUS file reading settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1050
diff changeset
  1603
(setq
144dcc473957 Set GNUS file reading settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1050
diff changeset
  1604
 gnus-read-newsrc-file nil
144dcc473957 Set GNUS file reading settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1050
diff changeset
  1605
 gnus-save-newsrc-file nil
144dcc473957 Set GNUS file reading settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1050
diff changeset
  1606
 gnus-backup-startup-file t
144dcc473957 Set GNUS file reading settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1050
diff changeset
  1607
 gnus-use-dribble-file t
144dcc473957 Set GNUS file reading settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1050
diff changeset
  1608
 gnus-save-killed-list t
144dcc473957 Set GNUS file reading settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1050
diff changeset
  1609
 )
144dcc473957 Set GNUS file reading settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1050
diff changeset
  1610
841
68e40729a4f4 Kill Gnus when exiting Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 840
diff changeset
  1611
(defun my-kill-gnus ()
68e40729a4f4 Kill Gnus when exiting Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 840
diff changeset
  1612
  "Kill Gnus when exiting Emacs."
68e40729a4f4 Kill Gnus when exiting Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 840
diff changeset
  1613
  (let ( (gnus-interactive-exit nil) )
68e40729a4f4 Kill Gnus when exiting Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 840
diff changeset
  1614
    (gnus-group-exit)
68e40729a4f4 Kill Gnus when exiting Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 840
diff changeset
  1615
    ))
1044
84d453ec622e Fix docs. Simplify code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1043
diff changeset
  1616
(eval-after-load 'gnus '(add-hook 'kill-emacs-hook 'my-kill-gnus))
895
8bf321b7f86e Fix code grouping.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 894
diff changeset
  1617
878
c3227efdee1e Show "Archived-At" header for Gmane.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 877
diff changeset
  1618
(eval-after-load 'gnus-art
c3227efdee1e Show "Archived-At" header for Gmane.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 877
diff changeset
  1619
  '(progn
c3227efdee1e Show "Archived-At" header for Gmane.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 877
diff changeset
  1620
     (setq gnus-visible-headers (concat gnus-visible-headers "\\|^Archived-At"))
c3227efdee1e Show "Archived-At" header for Gmane.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 877
diff changeset
  1621
     ))
841
68e40729a4f4 Kill Gnus when exiting Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 840
diff changeset
  1622
794
7f81d5acc2bc Store gnus specific files to '~/.gnus'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 793
diff changeset
  1623
;; Store gnus specific files to '~/.gnus'.
804
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1624
(setq
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1625
 gnus-directory "~/.gnus"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1626
 gnus-agent-directory "~/.gnus/agent/"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1627
 gnus-article-save-directory "~/.gnus/saved"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1628
 gnus-kill-files-directory "~/.gnus/scores"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1629
 gnus-cache-directory "~/.gnus/cache"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1630
 mail-source-directory "~/.gnus/mail"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1631
 message-directory "~/.gnus/mail"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1632
 message-auto-save-directory "~/.gnus/autosave"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1633
 ;; message-signature-directory
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1634
 mailcap-download-directory  "~/.gnus/mailcap"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1635
 nnml-directory "~/.gnus/nnml-mail"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1636
 spam-directory "~/.gnus/spam/"
c347ec94c201 Set "~/.gnus" prefix to all mail directories.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 803
diff changeset
  1637
 smime-certificate-directory "~/.gnus/certs/"
805
d7cbd3a099e5 Set nnfolder-active-file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 804
diff changeset
  1638
 nnfolder-directory "~/.gnus/archive"
d7cbd3a099e5 Set nnfolder-active-file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 804
diff changeset
  1639
 nnfolder-active-file "~/.gnus/archive/active"
975
75ac0063fd22 Fix indenting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 974
diff changeset
  1640
 )
798
c1f795e32b09 Spam settings (commented).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 797
diff changeset
  1641
806
eaabe3db15a5 Remove gnus-ignored-newsgroups to show all GMail folders.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 805
diff changeset
  1642
;; Remove gnus-ignored-newsgroups to show all GMail folders.
862
6b956999856b Fix "isearch-no-upper-case-p: Wrong type argument: stringp, nil" from gnus.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 861
diff changeset
  1643
(setq gnus-ignored-newsgroups "some-non-existing")
798
c1f795e32b09 Spam settings (commented).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 797
diff changeset
  1644
c1f795e32b09 Spam settings (commented).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 797
diff changeset
  1645
;; (require 'spam)
c1f795e32b09 Spam settings (commented).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 797
diff changeset
  1646
;; (setq gnus-spam-process-newsgroups
c1f795e32b09 Spam settings (commented).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 797
diff changeset
  1647
;;       '(("^gmane\\."
c1f795e32b09 Spam settings (commented).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 797
diff changeset
  1648
;;          ((spam spam-use-gmane)))))
794
7f81d5acc2bc Store gnus specific files to '~/.gnus'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 793
diff changeset
  1649
739
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1650
(setq
819
38b7c81853e8 Mark that I am not 'gnus-novice-user' to avoid conformation when delete mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 818
diff changeset
  1651
 gnus-novice-user nil
739
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1652
 gnus-expert-user nil
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1653
 gnus-interactive-catchup t
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1654
 gnus-interactive-exit t
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1655
 )
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1656
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1657
(setq
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1658
 gnus-read-active-file nil
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1659
 gnus-check-new-newsgroups nil
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1660
 gnus-check-bogus-newsgroups nil
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1661
 )
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1662
1058
fac5c0d3af6a Check for timeout in gnus article fetching.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1055
diff changeset
  1663
(setq nntp-connection-timeout 10)
fac5c0d3af6a Check for timeout in gnus article fetching.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1055
diff changeset
  1664
902
09f76020fc46 Increase gnus-large-newsgroup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 901
diff changeset
  1665
(setq gnus-large-newsgroup 800)
941
ea395da0c817 Increase gnus-large-ephemeral-newsgroup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 940
diff changeset
  1666
(setq gnus-large-ephemeral-newsgroup 600)
ea395da0c817 Increase gnus-large-ephemeral-newsgroup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 940
diff changeset
  1667
(setq gnus-group-listing-limit 1000)
902
09f76020fc46 Increase gnus-large-newsgroup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 901
diff changeset
  1668
912
a3b18cbc7293 Set gnus-summary-next-group-on-exit to nil as I like stay an group from which
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 911
diff changeset
  1669
(setq
a3b18cbc7293 Set gnus-summary-next-group-on-exit to nil as I like stay an group from which
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 911
diff changeset
  1670
 gnus-group-goto-unread t
a3b18cbc7293 Set gnus-summary-next-group-on-exit to nil as I like stay an group from which
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 911
diff changeset
  1671
 gnus-summary-next-group-on-exit nil
a3b18cbc7293 Set gnus-summary-next-group-on-exit to nil as I like stay an group from which
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 911
diff changeset
  1672
 )
a3b18cbc7293 Set gnus-summary-next-group-on-exit to nil as I like stay an group from which
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 911
diff changeset
  1673
922
b0636498a974 Shown read groups anyway.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 921
diff changeset
  1674
(setq
b0636498a974 Shown read groups anyway.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 921
diff changeset
  1675
 gnus-permanently-visible-groups ".*"
b0636498a974 Shown read groups anyway.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 921
diff changeset
  1676
 gnus-topic-display-empty-topics t)
913
cb42c2651d3f Add command to show all subscribed groups (ever read).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 912
diff changeset
  1677
829
093b6699e903 Some settings for Gnus caching (same as default values).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 826
diff changeset
  1678
;; (setq 'gnus-use-cache t)
093b6699e903 Some settings for Gnus caching (same as default values).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 826
diff changeset
  1679
(setq gnus-use-long-file-name t)
093b6699e903 Some settings for Gnus caching (same as default values).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 826
diff changeset
  1680
(setq gnus-cache-remove-articles '(read))
093b6699e903 Some settings for Gnus caching (same as default values).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 826
diff changeset
  1681
786
496791c4fe36 If you're spooling in overlapping mbox folders, you probably want
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 785
diff changeset
  1682
;; If you're spooling in overlapping mbox folders, you probably want to delete
496791c4fe36 If you're spooling in overlapping mbox folders, you probably want
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 785
diff changeset
  1683
;; all messages with duplicate message IDs.
496791c4fe36 If you're spooling in overlapping mbox folders, you probably want
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 785
diff changeset
  1684
(setq nnmail-treat-duplicates 'delete)
496791c4fe36 If you're spooling in overlapping mbox folders, you probably want
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 785
diff changeset
  1685
787
fc00f202c3e3 Do not use the html part of a message, use the text part if possible!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 786
diff changeset
  1686
;; Do not use the html part of a message, use the text part if possible!
fc00f202c3e3 Do not use the html part of a message, use the text part if possible!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 786
diff changeset
  1687
(setq mm-discouraged-alternatives '("text/html" "text/richtext"))
939
efac9eeab57c I need use w3m because nntp://sql.ru provide only articles in HTML with highly
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 938
diff changeset
  1688
(setq mm-text-html-renderer 'w3m)
787
fc00f202c3e3 Do not use the html part of a message, use the text part if possible!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 786
diff changeset
  1689
1071
60f93286b9a1 Browse URLs in external browser in w3m.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1068
diff changeset
  1690
(defun my-w3m-view-url ()
60f93286b9a1 Browse URLs in external browser in w3m.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1068
diff changeset
  1691
  (interactive)
60f93286b9a1 Browse URLs in external browser in w3m.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1068
diff changeset
  1692
  (browse-url (w3m-anchor)))
60f93286b9a1 Browse URLs in external browser in w3m.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1068
diff changeset
  1693
940
90485e256108 Add key bindings for natural movement by arrow keys and opening url in
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 939
diff changeset
  1694
(eval-after-load 'w3m
90485e256108 Add key bindings for natural movement by arrow keys and opening url in
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 939
diff changeset
  1695
  '(progn
1071
60f93286b9a1 Browse URLs in external browser in w3m.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1068
diff changeset
  1696
     (define-key w3m-minor-mode-map (kbd "RET") #'my-w3m-view-url)
940
90485e256108 Add key bindings for natural movement by arrow keys and opening url in
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 939
diff changeset
  1697
     (define-key w3m-minor-mode-map (kbd "S-RET") #'w3m-safe-view-this-url)
990
29036d63bfe7 *-nomark like function removed in Emacs 24.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 989
diff changeset
  1698
     (define-key w3m-minor-mode-map (kbd "<left>") #'backward-char)
29036d63bfe7 *-nomark like function removed in Emacs 24.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 989
diff changeset
  1699
     (define-key w3m-minor-mode-map (kbd "<right>") #'forward-char)
29036d63bfe7 *-nomark like function removed in Emacs 24.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 989
diff changeset
  1700
     (define-key w3m-minor-mode-map (kbd "<up>") #'previous-line)
29036d63bfe7 *-nomark like function removed in Emacs 24.x.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 989
diff changeset
  1701
     (define-key w3m-minor-mode-map (kbd "<down>") #'next-line)))
940
90485e256108 Add key bindings for natural movement by arrow keys and opening url in
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 939
diff changeset
  1702
797
886b872e46cc gnus-topic-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 796
diff changeset
  1703
(add-hook 'gnus-group-mode-hook 'gnus-topic-mode)
886b872e46cc gnus-topic-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 796
diff changeset
  1704
898
5cf5a1df2fb8 Scan for news.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 897
diff changeset
  1705
(eval-after-load 'gnus '(progn (gnus-demon-add-handler 'gnus-demon-scan-news 10 t)))
5cf5a1df2fb8 Scan for news.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 897
diff changeset
  1706
929
dc590d8c6f7b Show prefix and 'To' field instead 'From' for my mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 928
diff changeset
  1707
;; Show prefix and 'To' field instead 'From' for my mails.
dc590d8c6f7b Show prefix and 'To' field instead 'From' for my mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 928
diff changeset
  1708
(setq gnus-summary-to-prefix "==> ")
dc590d8c6f7b Show prefix and 'To' field instead 'From' for my mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 928
diff changeset
  1709
(setq gnus-summary-newsgroup-prefix "==> ")
dc590d8c6f7b Show prefix and 'To' field instead 'From' for my mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 928
diff changeset
  1710
(setq gnus-ignored-from-addresses (list (regexp-quote user-mail-address) (regexp-quote user-full-name)))
dc590d8c6f7b Show prefix and 'To' field instead 'From' for my mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 928
diff changeset
  1711
936
c5f9c7bc1661 Use ORGANIZATION env var in gnus-posting-styles.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 935
diff changeset
  1712
(setq gnus-posting-styles
c5f9c7bc1661 Use ORGANIZATION env var in gnus-posting-styles.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 935
diff changeset
  1713
      '((".*"
c5f9c7bc1661 Use ORGANIZATION env var in gnus-posting-styles.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 935
diff changeset
  1714
         (organization (getenv "ORGANIZATION"))
c5f9c7bc1661 Use ORGANIZATION env var in gnus-posting-styles.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 935
diff changeset
  1715
         (signature-file "~/.signature"))))
742
f59b924b1b7d Add signature to mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 741
diff changeset
  1716
928
067307a8ab45 Change layout of summary buffer: add group window.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 927
diff changeset
  1717
(gnus-add-configuration
1038
2c905ed01467 Don't show group buffer to speed up buffer switching.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1030
diff changeset
  1718
 '(article (vertical 1.0 (summary .30 point) (article 1.0))))
928
067307a8ab45 Change layout of summary buffer: add group window.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 927
diff changeset
  1719
932
5648b7498bc5 gnus-summary-display-arrow
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 931
diff changeset
  1720
(setq gnus-summary-display-arrow t)
5648b7498bc5 gnus-summary-display-arrow
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 931
diff changeset
  1721
897
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1722
;; `gnus-summary-line-format',
789
6daf35744ad3 Modify 'gnus-summary-line-format'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 788
diff changeset
  1723
;; `gnus-server-line-format', `gnus-topic-line-format',
6daf35744ad3 Modify 'gnus-summary-line-format'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 788
diff changeset
  1724
;; `gnus-group-mode-line-format', `gnus-summary-mode-line-format',
6daf35744ad3 Modify 'gnus-summary-line-format'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 788
diff changeset
  1725
;; `gnus-article-mode-line-format', `gnus-server-mode-line-format',
6daf35744ad3 Modify 'gnus-summary-line-format'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 788
diff changeset
  1726
;; `gnus-summary-pick-line-format'.
6daf35744ad3 Modify 'gnus-summary-line-format'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 788
diff changeset
  1727
790
356d5ed1649c Customize gnus-sum-thread-tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 789
diff changeset
  1728
(when window-system
356d5ed1649c Customize gnus-sum-thread-tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 789
diff changeset
  1729
  (setq
931
de20db59231c Highlight root articles in Gnus summary buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 930
diff changeset
  1730
   gnus-sum-thread-tree-root "● "
de20db59231c Highlight root articles in Gnus summary buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 930
diff changeset
  1731
   gnus-sum-thread-tree-false-root " ○ "
790
356d5ed1649c Customize gnus-sum-thread-tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 789
diff changeset
  1732
   gnus-sum-thread-tree-indent " "
931
de20db59231c Highlight root articles in Gnus summary buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 930
diff changeset
  1733
   gnus-sum-thread-tree-single-indent "⚇ "
790
356d5ed1649c Customize gnus-sum-thread-tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 789
diff changeset
  1734
   gnus-sum-thread-tree-leaf-with-other "├► "
803
05cd01bc7813 Use another symbol graphic symbol as old does not present in Windows 7.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 802
diff changeset
  1735
   gnus-sum-thread-tree-single-leaf "└► "
790
356d5ed1649c Customize gnus-sum-thread-tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 789
diff changeset
  1736
   gnus-sum-thread-tree-vertical "│"
356d5ed1649c Customize gnus-sum-thread-tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 789
diff changeset
  1737
   ))
356d5ed1649c Customize gnus-sum-thread-tree.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 789
diff changeset
  1738
789
6daf35744ad3 Modify 'gnus-summary-line-format'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 788
diff changeset
  1739
(setq gnus-user-date-format-alist '((t . "%Y-%m-%d %H:%M")))
791
134ec9507faf Show standard status in Gnus summary.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 790
diff changeset
  1740
(setq gnus-summary-line-format "%U%R%z %&user-date; %B %[%-22,22f%] %s\n")
789
6daf35744ad3 Modify 'gnus-summary-line-format'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 788
diff changeset
  1741
(setq gnus-summary-mode-line-format "Gnus: %p %Z")
6daf35744ad3 Modify 'gnus-summary-line-format'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 788
diff changeset
  1742
927
33cee658675d Enable user defined dates in article buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 926
diff changeset
  1743
(setq gnus-treat-date-user-defined 'head)
744
d3fc2caa5498 Setup own time format (ISO 8601 + day of week) for GNUS article.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 743
diff changeset
  1744
(setq gnus-article-time-format "%Y-%m-%d %T%z %a")
782
03aa367920e6 Make date header setting in portable way as recommended in manual.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 781
diff changeset
  1745
(setq gnus-article-date-headers '(combined-lapsed user-defined))
744
d3fc2caa5498 Setup own time format (ISO 8601 + day of week) for GNUS article.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 743
diff changeset
  1746
897
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1747
;; Remember when I visit group last time.
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1748
(add-hook 'gnus-select-group-hook 'gnus-group-set-timestamp)
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1749
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1750
(defun gnus-user-format-function-d (header)
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1751
  (let ((time (gnus-group-timestamp gnus-tmp-group)))
899
e723c4b0d48c Do not show very old timestamps.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 898
diff changeset
  1752
    (if (and time (time-less-p (time-subtract (current-time) time) (seconds-to-time (* 3600 24 7 30 2))))
897
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1753
        (format-time-string "%Y-%m-%d %H:%M" time)
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1754
      "")))
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1755
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1756
;; %d (or with user defined format %ud) shown when I visit group last time in
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1757
;; %*Group* buffer.
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1758
(setq gnus-group-line-format "%M%S%p%P%6y:%B%(%-50,50G%)%3O %ud\n")
1979b76d6f6b Remember when I visit group last time.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 896
diff changeset
  1759
944
664e6f4c3dc8 Document gnus-extra-headers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 942
diff changeset
  1760
;; gnus-visible-headers gnus-extra-headers
796
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1761
(setq
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1762
 gnus-sorted-header-list
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1763
 '(
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1764
   "^From:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1765
   "^Subject:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1766
   "^Summary:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1767
   "^Keywords:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1768
   "^Newsgroups:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1769
   "^Followup-To:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1770
   "^To:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1771
   "^Cc:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1772
   "^Organization:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1773
   "^Date:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1774
   "^User-Agent:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1775
   "^X-Mailer:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1776
   "^X-Newsreader:"
23e9f51428a9 gnus-sorted-header-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 795
diff changeset
  1777
   ))
795
627ed33d9488 gnus-visible-headers
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 794
diff changeset
  1778
755
6f903d3b2ec7 Adaptive score for GNUS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 754
diff changeset
  1779
(setq
6f903d3b2ec7 Adaptive score for GNUS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 754
diff changeset
  1780
 gnus-show-threads t
785
7956c2497dda gnus-thread-sort-by-date
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 784
diff changeset
  1781
 gnus-thread-sort-functions '(gnus-thread-sort-by-date gnus-thread-sort-by-total-score)
1048
9d671852b5c1 Some GNUS default settings...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1047
diff changeset
  1782
 gnus-summary-thread-gathering-function 'gnus-gather-threads-by-subject
9d671852b5c1 Some GNUS default settings...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1047
diff changeset
  1783
 gnus-summary-gather-subject-limit 'fuzzy
9d671852b5c1 Some GNUS default settings...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1047
diff changeset
  1784
 gnus-thread-hide-killed t
9d671852b5c1 Some GNUS default settings...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1047
diff changeset
  1785
 gnus-thread-ignore-subject t
755
6f903d3b2ec7 Adaptive score for GNUS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 754
diff changeset
  1786
 )
788
b7b60066599e Split scoring setting from other.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 787
diff changeset
  1787
906
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1788
;; gnus-summary-mark-below gnus-summary-default-score gnus-summary-default-high-score gnus-summary-default-low-score
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1789
908
e3b3e9f4d759 New scoring rules.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 906
diff changeset
  1790
;; Scoring.
e3b3e9f4d759 New scoring rules.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 906
diff changeset
  1791
(setq
820
dc1331cd9729 Set gnus-use-scoring to t.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 819
diff changeset
  1792
 gnus-use-scoring t
dc1331cd9729 Set gnus-use-scoring to t.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 819
diff changeset
  1793
 gnus-save-score t
788
b7b60066599e Split scoring setting from other.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 787
diff changeset
  1794
 gnus-score-expiry-days 60
1039
b87d918d2523 I don't need lowering scores.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1038
diff changeset
  1795
 ;; gnus-decay-scores t
903
6b24df8816ff Set gnus-score-decay-constant.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 902
diff changeset
  1796
 gnus-score-decay-constant 3
788
b7b60066599e Split scoring setting from other.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 787
diff changeset
  1797
 )
908
e3b3e9f4d759 New scoring rules.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 906
diff changeset
  1798
1041
0b70ed39332f These variables are local to each summary buffer and usually set by the score
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1040
diff changeset
  1799
(setq gnus-score-interactive-default-score 100)
0b70ed39332f These variables are local to each summary buffer and usually set by the score
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1040
diff changeset
  1800
0b70ed39332f These variables are local to each summary buffer and usually set by the score
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1040
diff changeset
  1801
;; These variables are local to each summary buffer and usually set by the
0b70ed39332f These variables are local to each summary buffer and usually set by the score
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1040
diff changeset
  1802
;; score file: gnus-summary-mark-below, gnus-summary-expunge-below, gnus-thread-expunge-below
909
14efc19ada1c Do not use gnus-score-followup-article if we use gnus-score-followup-thread.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 908
diff changeset
  1803
908
e3b3e9f4d759 New scoring rules.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 906
diff changeset
  1804
(setq gnus-use-adaptive-scoring t)
945
79c13b7327fa I use 100 for replay to me and 200 for essential mails, and -50 for bad mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 944
diff changeset
  1805
;; I use 100 for replay to me and 200 for essential mails, and -50 for bad mails.
908
e3b3e9f4d759 New scoring rules.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 906
diff changeset
  1806
(setq gnus-default-adaptive-score-alist
e3b3e9f4d759 New scoring rules.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 906
diff changeset
  1807
      '(
e3b3e9f4d759 New scoring rules.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 906
diff changeset
  1808
        (gnus-unread-mark)
945
79c13b7327fa I use 100 for replay to me and 200 for essential mails, and -50 for bad mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 944
diff changeset
  1809
        (gnus-ticked-mark (followup 100))
79c13b7327fa I use 100 for replay to me and 200 for essential mails, and -50 for bad mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 944
diff changeset
  1810
        (gnus-dormant-mark (followup 100))
918
f7a88390ec90 Decrease score only if I delete articles, not when read.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 916
diff changeset
  1811
        ;; (gnus-read-mark (followup -50))
f7a88390ec90 Decrease score only if I delete articles, not when read.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 916
diff changeset
  1812
        ;; (gnus-catchup-mark (subject -50))
f7a88390ec90 Decrease score only if I delete articles, not when read.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 916
diff changeset
  1813
        (gnus-del-mark (followup -50))
908
e3b3e9f4d759 New scoring rules.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 906
diff changeset
  1814
        (gnus-killed-mark (followup -50))
e3b3e9f4d759 New scoring rules.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 906
diff changeset
  1815
        (gnus-kill-file-mark (from -9999))
945
79c13b7327fa I use 100 for replay to me and 200 for essential mails, and -50 for bad mails.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 944
diff changeset
  1816
        ))
908
e3b3e9f4d759 New scoring rules.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 906
diff changeset
  1817
793
dee9b2482842 Increase the score for followups to a sent article.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 792
diff changeset
  1818
;; Increase the score for followups to a sent article.
821
e385d1d48a8d Increase the score for followups to a sent article.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 820
diff changeset
  1819
(eval-after-load 'gnus-score
e385d1d48a8d Increase the score for followups to a sent article.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 820
diff changeset
  1820
  '(progn
909
14efc19ada1c Do not use gnus-score-followup-article if we use gnus-score-followup-thread.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 908
diff changeset
  1821
     ;; (add-hook 'message-sent-hook 'gnus-score-followup-article)
821
e385d1d48a8d Increase the score for followups to a sent article.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 820
diff changeset
  1822
     (add-hook 'message-sent-hook 'gnus-score-followup-thread)
e385d1d48a8d Increase the score for followups to a sent article.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 820
diff changeset
  1823
     ))
755
6f903d3b2ec7 Adaptive score for GNUS.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 754
diff changeset
  1824
1047
a9fcc9b86225 Fix feature name. Limit minimal subject length for exclude...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1046
diff changeset
  1825
(defvar my-gnus-summary-kill-same-subject-min-len 8
a9fcc9b86225 Fix feature name. Limit minimal subject length for exclude...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1046
diff changeset
  1826
  "Minimal length of subject string to ignore this subject.")
1046
2ca7e7cfa6d9 Add negative scores for all articles with same subject.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1044
diff changeset
  1827
(defun my-gnus-summary-kill-same-subject (&optional unmark)
2ca7e7cfa6d9 Add negative scores for all articles with same subject.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1044
diff changeset
  1828
  "Add negative scores for all articles with same subject."
2ca7e7cfa6d9 Add negative scores for all articles with same subject.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1044
diff changeset
  1829
  (interactive "P")
2ca7e7cfa6d9 Add negative scores for all articles with same subject.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1044
diff changeset
  1830
  (when (or (not (integerp unmark)) (< 0 unmark))
1047
a9fcc9b86225 Fix feature name. Limit minimal subject length for exclude...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1046
diff changeset
  1831
    (let ( (subj (gnus-simplify-subject-fuzzy (gnus-summary-article-subject))) )
a9fcc9b86225 Fix feature name. Limit minimal subject length for exclude...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1046
diff changeset
  1832
      (when (<= (length subj) my-gnus-summary-kill-same-subject-min-len)
a9fcc9b86225 Fix feature name. Limit minimal subject length for exclude...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1046
diff changeset
  1833
        (gnus-summary-score-entry
a9fcc9b86225 Fix feature name. Limit minimal subject length for exclude...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1046
diff changeset
  1834
         "subject" subj
a9fcc9b86225 Fix feature name. Limit minimal subject length for exclude...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1046
diff changeset
  1835
         's (- gnus-score-interactive-default-score) (current-time-string)))))
1046
2ca7e7cfa6d9 Add negative scores for all articles with same subject.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1044
diff changeset
  1836
  (gnus-summary-kill-same-subject unmark))
1047
a9fcc9b86225 Fix feature name. Limit minimal subject length for exclude...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1046
diff changeset
  1837
(eval-after-load 'gnus-sum
1046
2ca7e7cfa6d9 Add negative scores for all articles with same subject.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1044
diff changeset
  1838
  '(define-key gnus-summary-mode-map (kbd "C-k") #'my-gnus-summary-kill-same-subject))
2ca7e7cfa6d9 Add negative scores for all articles with same subject.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1044
diff changeset
  1839
1118
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1840
(defun my-gnus.mark-thread-as-read ()
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1841
  "Mark unmarked articles in current thread as read and move to
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1842
next thread without selecting article."
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1843
  (interactive)
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1844
  (gnus-summary-top-thread)
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1845
  (catch 'exit
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1846
    (while t
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1847
      (when (eq (gnus-summary-article-mark (gnus-summary-article-number)) gnus-unread-mark)
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1848
        (gnus-summary-mark-article (gnus-summary-article-number) gnus-del-mark))
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1849
      (when (or (not (gnus-summary-search-forward)) (eq (gnus-summary-thread-level) 0))
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1850
        (throw 'exit nil)) )))
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1851
(eval-after-load 'gnus-sum
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1852
  '(define-key gnus-summary-mode-map (kbd "H-k") #'my-gnus.mark-thread-as-read))
ece4746ba12e Mark unmarked articles in current thread as read and move to
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1117
diff changeset
  1853
919
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1854
(defun my-gnus-thread-score-function (&rest scores)
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1855
  "If any followup have positive score assign greater available
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1856
score to thread, else assign lesser available score."
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1857
  (let ( (max (apply 'max scores)) (min (apply 'min scores)) )
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1858
    (if (< 0 max) max min)))
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1859
(setq gnus-thread-score-function #'my-gnus-thread-score-function)
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1860
(defun my-gnus-thread-total-score ()
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1861
  "Helper to debug `gnus-thread-score-function' function."
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1862
  (interactive)
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1863
  (message
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1864
   (int-to-string
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1865
    (gnus-thread-total-score
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1866
     (gnus-id-to-thread (mail-header-id (gnus-summary-article-header)))))))
fcd73bc6b91c Own gnus-thread-score-function: If any followup have positive score assign
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 918
diff changeset
  1867
906
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1868
;; Especially highlight my message and replays to me.
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1869
(eval-after-load 'gnus-sum
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1870
  '(progn
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1871
     (defface my-gnus-own-unread-face nil
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1872
       "Use this face to display own postings in Summary Buffer")
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1873
     (copy-face 'gnus-summary-high-unread-face 'my-gnus-own-unread-face)
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1874
     (set-face-background 'my-gnus-own-unread-face "linen")
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1875
     (add-to-list 'gnus-summary-highlight
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1876
                  '((and (> score 190) (eq mark gnus-unread-mark)) . my-gnus-own-unread-face))
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1877
     (defface my-gnus-own-ancient-face nil
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1878
       "Use this face to display own postings in Summary Buffer")
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1879
     (copy-face 'gnus-summary-high-ancient-face 'my-gnus-own-ancient-face)
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1880
     (set-face-background 'my-gnus-own-ancient-face "linen")
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1881
     (add-to-list 'gnus-summary-highlight
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1882
                  '((and (> score 190) (eq mark gnus-ancient-mark)) . my-gnus-own-ancient-face))
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1883
     (defface my-gnus-own-ticked-face nil
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1884
       "Use this face to display own postings in Summary Buffer")
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1885
     (copy-face 'gnus-summary-high-ticked-face 'my-gnus-own-ticked-face)
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1886
     (set-face-background 'my-gnus-own-ticked-face "linen")
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1887
     (add-to-list 'gnus-summary-highlight
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1888
                  '((and (> score 190) (or (eq mark gnus-dormant-mark) (eq mark gnus-ticked-mark))) . my-gnus-own-ticked-face))
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1889
     (defface my-gnus-fup-face nil
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1890
       "Use this face to display direct fups to my postings.")
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1891
     (copy-face 'gnus-summary-high-unread-face 'my-gnus-fup-face)
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1892
     (set-face-background 'my-gnus-fup-face "honeydew")
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1893
     (add-to-list 'gnus-summary-highlight
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1894
                  '((and (<= 90 score) (<= score 110) (eq mark gnus-unread-mark)) . my-gnus-fup-face))
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1895
     ))
da962aa69458 Especially highlight my message and replays to me.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 905
diff changeset
  1896
807
63c56a8cf9f1 Remove duplication, move code above.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 806
diff changeset
  1897
;; (setq gnus-home-score-file
63c56a8cf9f1 Remove duplication, move code above.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 806
diff changeset
  1898
;;       ;; All groups that match the regexp `"\\.emacs"'
63c56a8cf9f1 Remove duplication, move code above.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 806
diff changeset
  1899
;;       '(("\\.emacs" "emacs.SCORE")
63c56a8cf9f1 Remove duplication, move code above.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 806
diff changeset
  1900
;;         ;; All the comp groups in one score file
63c56a8cf9f1 Remove duplication, move code above.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 806
diff changeset
  1901
;;         ("^comp" "comp.SCORE")))
63c56a8cf9f1 Remove duplication, move code above.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 806
diff changeset
  1902
911
ce5cb0a281ee Make C-Up, C-Down more like across paragraph moving.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 910
diff changeset
  1903
;; Make C-Up, C-Down more like across paragraph moving.
ce5cb0a281ee Make C-Up, C-Down more like across paragraph moving.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 910
diff changeset
  1904
(eval-after-load 'gnus
ce5cb0a281ee Make C-Up, C-Down more like across paragraph moving.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 910
diff changeset
  1905
  '(progn
ce5cb0a281ee Make C-Up, C-Down more like across paragraph moving.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 910
diff changeset
  1906
     (define-key gnus-summary-mode-map [(meta up)] '(lambda() (interactive) (scroll-other-window -1)))
ce5cb0a281ee Make C-Up, C-Down more like across paragraph moving.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 910
diff changeset
  1907
     (define-key gnus-summary-mode-map [(meta down)] '(lambda() (interactive) (scroll-other-window 1)))
ce5cb0a281ee Make C-Up, C-Down more like across paragraph moving.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 910
diff changeset
  1908
     (define-key gnus-summary-mode-map [(control down)] 'gnus-summary-next-thread)
ce5cb0a281ee Make C-Up, C-Down more like across paragraph moving.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 910
diff changeset
  1909
     (define-key gnus-summary-mode-map [(control up)] 'gnus-summary-prev-thread)
ce5cb0a281ee Make C-Up, C-Down more like across paragraph moving.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 910
diff changeset
  1910
     ))
ce5cb0a281ee Make C-Up, C-Down more like across paragraph moving.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 910
diff changeset
  1911
785
7956c2497dda gnus-thread-sort-by-date
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 784
diff changeset
  1912
;; (setq imap-log t)
7956c2497dda gnus-thread-sort-by-date
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 784
diff changeset
  1913
660
7abcc3f39fe9 Set basic mail settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 658
diff changeset
  1914
;; (setq mail-user-agent 'mh-e-user-agent)
83
d2eaf2ed6d1c Added basic jabber customization.
gavenkoa@gavenko.bifit.int
parents: 82
diff changeset
  1915
900
85a05f7d8bed Set gnus-signature-face to grey.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
  1916
(custom-set-faces
85a05f7d8bed Set gnus-signature-face to grey.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
  1917
 '(gnus-summary-cancelled ((t (:foreground "plum" :background nil))))
85a05f7d8bed Set gnus-signature-face to grey.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
  1918
 '(gnus-signature-face ((t (:foreground "grey"))))
85a05f7d8bed Set gnus-signature-face to grey.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 899
diff changeset
  1919
 )
739
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1920
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1921
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
801
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1922
(message "bbdb")
739
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1923
801
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1924
(setq
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1925
 bbdb-offer-save 1
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1926
 bbdb-use-pop-up t
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1927
 bbdb-electric-p t
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1928
 bbdb-popup-target-lines  1
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1929
 )
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1930
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1931
(setq bbdb-complete-name-full-completion t)
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1932
(setq bbdb-completion-type 'primary-or-name)
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1933
(setq bbdb-complete-name-allow-cycling t)
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1934
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1935
(setq bbdb-file "~/.gnus/bbdb")
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1936
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1937
;; (bbdb-initialize 'gnus 'message)
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1938
;; (bbdb-insinuate-message)
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1939
;; (add-hook 'gnus-startup-hook 'bbdb-insinuate-gnus)
feb479e720e1 Basic 'bbdb' settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 800
diff changeset
  1940
739
65e6b1b497fb Add some GNUS settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 738
diff changeset
  1941
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  1942
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  1943
(message "jabber")
83
d2eaf2ed6d1c Added basic jabber customization.
gavenkoa@gavenko.bifit.int
parents: 82
diff changeset
  1944
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1945
(autoload 'jabber-connect-all "jabber")
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1946
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1947
(setq
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1948
 jabber-history-enabled t
1116
a34c8bbd5c3a jabber-history-muc-enabled
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1115
diff changeset
  1949
 jabber-history-muc-enabled t
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1950
 jabber-use-global-history nil
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1951
 jabber-backlog-number 40
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1952
 jabber-backlog-days 30
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1953
 jabber-alert-presence-message-function (lambda (who oldstatus newstatus statustext) nil)
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1954
 )
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1955
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1956
(eval-after-load 'jabber
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1957
  '(progn
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1958
    ;; Redefine standard binding for sending message form RET to C-RET.
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1959
    (define-key jabber-chat-mode-map (kbd "RET") 'newline)
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1960
    (define-key jabber-chat-mode-map [C-return] 'jabber-chat-buffer-send)
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1961
    ;; fsm used in emacs jabber
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1962
    (when (featurep 'fsm)
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1963
      (setq fsm-debug nil)                  ; Disable *fsm-debug* buffer.
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1964
      )
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1965
    ;; Handle Emacs exit.
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1966
    (add-hook 'kill-emacs-hook 'jabber-disconnect)
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1967
    ))
83
d2eaf2ed6d1c Added basic jabber customization.
gavenkoa@gavenko.bifit.int
parents: 82
diff changeset
  1968
214
f4234e15d891 Fix prompt format (prompt and text stay on two line, not one).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 211
diff changeset
  1969
(setq my-chat-prompt "[%t] %n>\n")
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1970
(setq
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1971
 jabber-chat-foreign-prompt-format my-chat-prompt
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1972
 jabber-chat-local-prompt-format my-chat-prompt
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1973
 jabber-groupchat-prompt-format my-chat-prompt
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1974
 jabber-muc-private-foreign-prompt-format "[%t] %g/%n>\n"
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1975
 )
214
f4234e15d891 Fix prompt format (prompt and text stay on two line, not one).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 211
diff changeset
  1976
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1977
(let ( (mgs-list '("Я тутачки, а где Вы меня ожидали?"
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1978
                   "Software Development == Church Development. Step 1. Build it. Step 2. Pray."
680
285d2ffb35ff Update jabber motd.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 677
diff changeset
  1979
                   "Great books aren't written – they're rewritten."
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1980
                   "А любит Б, Б любит С, что делать A? Найти другую Б!")) )
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1981
  (random t)
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1982
  (setq jabber-default-show (nth (random (length mgs-list)) mgs-list))
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  1983
  (setq jabber-default-status (nth (random (length mgs-list)) mgs-list))
182
8a8bf4f3e7c2 Correctly set fsm var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 181
diff changeset
  1984
  )
83
d2eaf2ed6d1c Added basic jabber customization.
gavenkoa@gavenko.bifit.int
parents: 82
diff changeset
  1985
516
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1986
(defvar my-jabber-users nil
533
15b63e0cc424 Document some settings from .emacs-pre/-post.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 532
diff changeset
  1987
  "Assoc list of jabber user group. Keys are strings, values are lists of JIDs.")
516
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1988
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1989
(defun my-jabber-send (group)
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1990
  "GROUP is keys from `my-jabber-users'"
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1991
  (interactive
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1992
   (list (completing-read "Select group: " my-jabber-users))
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1993
   )
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1994
  (let (
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1995
        (msg (if (use-region-p)
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1996
                 (buffer-substring (region-beginning) (region-end))
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1997
               (buffer-string)))
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1998
        (jc (jabber-read-account))
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  1999
        )
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2000
    (deactivate-mark)
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2001
    (mapc
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2002
     (lambda (user)
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2003
       (jabber-send-message jc user "" msg "normal")
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2004
       )
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2005
     (cdr (assoc group my-jabber-users))
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2006
     )
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2007
    )
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2008
  )
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2009
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2010
(global-set-key (kbd "C-x C-j C-s") 'my-jabber-send)
efa00a6ef34e Allow send message to multiply users.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 515
diff changeset
  2011
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2012
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2013
(message "rcirc")
142
adfc0c678483 Basic customisation for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 141
diff changeset
  2014
adfc0c678483 Basic customisation for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 141
diff changeset
  2015
;; Turn on logging everything to a special buffer, for debugging.
adfc0c678483 Basic customisation for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 141
diff changeset
  2016
;; (setq rcirc-debug-flag t)
adfc0c678483 Basic customisation for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 141
diff changeset
  2017
adfc0c678483 Basic customisation for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 141
diff changeset
  2018
(add-hook 'rcirc-mode-hook (lambda () (rcirc-track-minor-mode 1)))
adfc0c678483 Basic customisation for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 141
diff changeset
  2019
(setq rcirc-time-format "%H:%M ")
adfc0c678483 Basic customisation for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 141
diff changeset
  2020
(defun rcirc-handler-301 (process cmd sender args)
adfc0c678483 Basic customisation for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 141
diff changeset
  2021
  "/away message handler.")
adfc0c678483 Basic customisation for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 141
diff changeset
  2022
532
a77d1bbd676c Set conection/login info for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 531
diff changeset
  2023
(setq rcirc-default-server "irc.freenode.net")
a77d1bbd676c Set conection/login info for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 531
diff changeset
  2024
(setq rcirc-default-port 6667)
a77d1bbd676c Set conection/login info for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 531
diff changeset
  2025
(setq rcirc-default-nick user-nick)
a77d1bbd676c Set conection/login info for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 531
diff changeset
  2026
(setq rcirc-default-user-full-name user-full-name)
a77d1bbd676c Set conection/login info for rcirc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 531
diff changeset
  2027
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2028
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2029
(message "erc")
239
408ebfd38be3 Set default erc encoding to utf-8 because on Windows I have default coding - cp1251.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 238
diff changeset
  2030
639
3e66a9605c4f erc-notify-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 638
diff changeset
  2031
;; (add-to-list 'erc-modules 'notify)
3e66a9605c4f erc-notify-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 638
diff changeset
  2032
;; (setq erc-notify-list '(""))
3e66a9605c4f erc-notify-list
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 638
diff changeset
  2033
377
3e8792ee03cc Take off noise message from erc in notify.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 376
diff changeset
  2034
;; Take off noise message.
3e8792ee03cc Take off noise message from erc in notify.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 376
diff changeset
  2035
(setq erc-track-exclude-types '("JOIN" "PART" "QUIT" "NICK" "MODE"))
3e8792ee03cc Take off noise message from erc in notify.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 376
diff changeset
  2036
3e8792ee03cc Take off noise message from erc in notify.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 376
diff changeset
  2037
(setq erc-current-nick-highlight-type 'nick-or-keyword)
3e8792ee03cc Take off noise message from erc in notify.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 376
diff changeset
  2038
(setq erc-track-use-faces t)
3e8792ee03cc Take off noise message from erc in notify.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 376
diff changeset
  2039
239
408ebfd38be3 Set default erc encoding to utf-8 because on Windows I have default coding - cp1251.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 238
diff changeset
  2040
(setq erc-server-coding-system 'utf-8)
877
b4412d7ff8a1 Set encoding for '#debian-russian'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 876
diff changeset
  2041
(setq erc-encoding-coding-alist
b4412d7ff8a1 Set encoding for '#debian-russian'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 876
diff changeset
  2042
      '(
b4412d7ff8a1 Set encoding for '#debian-russian'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 876
diff changeset
  2043
        ("^icq-" . cp1251)
b4412d7ff8a1 Set encoding for '#debian-russian'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 876
diff changeset
  2044
        ("#debian-russian" . koi8-r)
b4412d7ff8a1 Set encoding for '#debian-russian'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 876
diff changeset
  2045
        ))
634
97785d982806 erc-encoding-coding-alist, erc-autojoin-channels-alist
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 632
diff changeset
  2046
942
b08e5d2da63f Disable erc-autojoin-channels.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 941
diff changeset
  2047
;; (setq erc-autojoin-channels-alist '(("freenode.net" "#emacs")))
239
408ebfd38be3 Set default erc encoding to utf-8 because on Windows I have default coding - cp1251.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 238
diff changeset
  2048
637
f4806bc22860 Enable reconnect facility for ERC.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 636
diff changeset
  2049
(setq
f4806bc22860 Enable reconnect facility for ERC.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 636
diff changeset
  2050
 erc-server-auto-reconnect t
f4806bc22860 Enable reconnect facility for ERC.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 636
diff changeset
  2051
 erc-server-reconnect-timeout 60
f4806bc22860 Enable reconnect facility for ERC.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 636
diff changeset
  2052
 erc-server-reconnect-attempts 2
f4806bc22860 Enable reconnect facility for ERC.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 636
diff changeset
  2053
 )
f4806bc22860 Enable reconnect facility for ERC.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 636
diff changeset
  2054
636
1c47e3a86feb Add commented settings for remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 635
diff changeset
  2055
;; Kill buffers for channels after /part
1c47e3a86feb Add commented settings for remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 635
diff changeset
  2056
;; (setq erc-kill-buffer-on-part t)
1c47e3a86feb Add commented settings for remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 635
diff changeset
  2057
;; Kill buffers for private queries after quitting the server
1c47e3a86feb Add commented settings for remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 635
diff changeset
  2058
;; (setq erc-kill-queries-on-quit t)
1c47e3a86feb Add commented settings for remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 635
diff changeset
  2059
;; Kill buffers for server messages after quitting the server
1c47e3a86feb Add commented settings for remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 635
diff changeset
  2060
;; (setq erc-kill-server-buffer-on-quit t)
1c47e3a86feb Add commented settings for remember.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 635
diff changeset
  2061
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2062
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
974
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2063
(message "devel, programming")
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2064
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2065
(which-func-mode 1)
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2066
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2067
(add-to-list 'auto-mode-alist '("\\.cu$" . c-mode))
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2068
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2069
(defun my-c++-header-file-p ()
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2070
  "Return non-nil, if in a C++ header."
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2071
  (and (string-match "\\.h$"
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2072
                     (or (buffer-file-name)
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2073
                         (buffer-name)))
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2074
       (save-excursion
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2075
         (re-search-forward "\\_<class\\_>" nil t))))
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2076
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2077
(when (>= emacs-major-version 22)
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2078
  (add-to-list 'magic-mode-alist '(my-c++-header-file-p . c++-mode))
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2079
  )
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2080
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2081
(setq-default comment-style (quote indent))
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2082
(setq-default comment-column 44)
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2083
(setq-default comment-fill-column my-fill-column)
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2084
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2085
(mapc (lambda (hook) (add-hook hook (lambda () (setq fill-column my-fill-column)) ))
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2086
      (append my-devel-mode-hook-list my-text-mode-hook-list))
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2087
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2088
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2089
(message "diff, patch, ediff, emerge")
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2090
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2091
(setq diff-switches "-u")
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2092
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2093
(setq ediff-diff-options "")
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2094
(setq ediff-custom-diff-options "-u")
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2095
(setq ediff-window-setup-function 'ediff-setup-windows-plain)
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2096
(setq ediff-split-window-function 'split-window-vertically)
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2097
992
8523f94a9aa9 Disable: sometimes it take a long time to process large hunks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 991
diff changeset
  2098
;; Disable: sometimes it take a long time to process large hunks.
8523f94a9aa9 Disable: sometimes it take a long time to process large hunks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 991
diff changeset
  2099
;; Use C-c C-b on hunk by own.
8523f94a9aa9 Disable: sometimes it take a long time to process large hunks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 991
diff changeset
  2100
;; (defun my-diff-auto-refine-mode-on () (diff-auto-refine-mode 1))
8523f94a9aa9 Disable: sometimes it take a long time to process large hunks.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 991
diff changeset
  2101
;; (add-hook 'diff-mode-hook 'my-diff-auto-refine-mode-on)
976
9378739883bb Enable diff-auto-refine-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 975
diff changeset
  2102
974
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2103
(when window-system
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2104
  (eval-after-load 'diff-mode
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2105
    '(progn
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2106
       (set-face-foreground 'diff-added-face "DarkGreen")
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2107
       (set-face-foreground 'diff-removed-face "DarkRed")
977
f1c1a26ad0b9 Set background for diff refine.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 976
diff changeset
  2108
       (set-face-background 'diff-refine-change "LightBlue1")
975
75ac0063fd22 Fix indenting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 974
diff changeset
  2109
       )))
974
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2110
a044269d57e0 Reorder sections.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 973
diff changeset
  2111
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
648
6486ccef8fd1 `-b' switch to ignore changes in whitespaces.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 647
diff changeset
  2112
(message "vc-mode, VCS, version control, cvs, svn, mercurial, hg, bazaar, bzr, git, fossil")
6486ccef8fd1 `-b' switch to ignore changes in whitespaces.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 647
diff changeset
  2113
6486ccef8fd1 `-b' switch to ignore changes in whitespaces.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 647
diff changeset
  2114
;; `-b' switch to ignore changes in whitespaces.
6486ccef8fd1 `-b' switch to ignore changes in whitespaces.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 647
diff changeset
  2115
;; (setq vc-git-diff-switches "-b")
6486ccef8fd1 `-b' switch to ignore changes in whitespaces.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 647
diff changeset
  2116
;; (setq vc-diff-switches "-b")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2117
1162
aadda3d1653c For Hg with C-u show latest MQ patch and with C-u C-u show MQ patch and local
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1158
diff changeset
  2118
(defun my-vc-root-diff (prefix)
aadda3d1653c For Hg with C-u show latest MQ patch and with C-u C-u show MQ patch and local
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1158
diff changeset
  2119
  "Same as `vc-root-diff' but for Hg with C-u show latest MQ patch and
aadda3d1653c For Hg with C-u show latest MQ patch and with C-u C-u show MQ patch and local
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1158
diff changeset
  2120
with C-u C-u show MQ patch and local changes."
aadda3d1653c For Hg with C-u show latest MQ patch and with C-u C-u show MQ patch and local
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1158
diff changeset
  2121
  (interactive "P")
1163
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2122
  (when (eq 'non-hg-mq
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2123
            (catch 'break
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2124
              (unless (and prefix (eq (vc-deduce-backend) 'Hg))
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2125
                (throw 'break 'non-hg-mq))
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2126
              (let* ( (rootdir (vc-call-backend 'Hg 'root default-directory)) (default-directory rootdir) )
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2127
                (unless (eq (vc-hg-command nil t rootdir "log" "-r" "qtip") 0)
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2128
                  (throw 'break 'non-hg-mq))
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2129
                (cond
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2130
                 ((equal prefix '(4))
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2131
                  (vc-diff-internal t (list 'Hg (list rootdir)) "qparent" "qtip"))
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2132
                 ((equal prefix '(16))
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2133
                  (vc-diff-internal t (list 'Hg (list rootdir)) "qparent" nil)) ))))
e7728b2522b2 Handle HG MQ from non-root directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1162
diff changeset
  2134
    (call-interactively 'vc-root-diff nil) ))
1162
aadda3d1653c For Hg with C-u show latest MQ patch and with C-u C-u show MQ patch and local
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1158
diff changeset
  2135
aadda3d1653c For Hg with C-u show latest MQ patch and with C-u C-u show MQ patch and local
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1158
diff changeset
  2136
(global-set-key (kbd "C-x v D") 'my-vc-root-diff)
aadda3d1653c For Hg with C-u show latest MQ patch and with C-u C-u show MQ patch and local
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1158
diff changeset
  2137
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2138
(when (equal window-system 'w32)
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2139
  (modify-coding-system-alist 'process "cvs" '(cp1251-dos . cp1251-dos))
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2140
  (modify-coding-system-alist 'process "svn" '(cp1251 . cp1251))
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2141
  (setq vc-svn-checkin-switches '("--encoding" "UTF-8"))
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2142
  )
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2143
615
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2144
(when window-system
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2145
  (setq
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2146
   vc-annotate-very-old-color "#0b5b20"
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2147
   vc-annotate-background "white"
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2148
   vc-annotate-color-map
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2149
   '(
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2150
     (20 .  "#EE0000")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2151
     (40 .  "#E0800D")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2152
     (60 .  "#D3001A")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2153
     (80 .  "#C68027")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2154
     (100 . "#B90034")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2155
     (120 . "#AB8042")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2156
     (140 . "#9E004F")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2157
     (160 . "#91805C")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2158
     (180 . "#840069")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2159
     (200 . "#778077")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2160
     (220 . "#690084")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2161
     (240 . "#5C8091")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2162
     (260 . "#4F009E")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2163
     (280 . "#4280AB")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2164
     (300 . "#3400B9")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2165
     (320 . "#2780C6")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2166
     (340 . "#1A00D3")
22cf0c9014d9 Replace '(if COND (progn BODY...))' by '(when COND BODY...)'. Remove
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 614
diff changeset
  2167
     (360 . "#0D80E0")))
19
a8e7a6e94341 Теперь белый фон для annotated.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 18
diff changeset
  2168
  )
a8e7a6e94341 Теперь белый фон для annotated.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 18
diff changeset
  2169
767
47c2dbdb69dd Set fill-column for "Log-Edit" buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 766
diff changeset
  2170
(defun my-log-edit-mode-hook ()
47c2dbdb69dd Set fill-column for "Log-Edit" buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 766
diff changeset
  2171
  (setq fill-column 78)
47c2dbdb69dd Set fill-column for "Log-Edit" buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 766
diff changeset
  2172
  )
47c2dbdb69dd Set fill-column for "Log-Edit" buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 766
diff changeset
  2173
(add-hook 'log-edit-mode-hook 'my-log-edit-mode-hook t)
47c2dbdb69dd Set fill-column for "Log-Edit" buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 766
diff changeset
  2174
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2175
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2176
(message "psvn")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  2177
197
2abcea5b91db Added settings for psvn.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 192
diff changeset
  2178
(setq svn-status-verbose t)
2abcea5b91db Added settings for psvn.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 192
diff changeset
  2179
(setq svn-status-hide-unmodified t)
2abcea5b91db Added settings for psvn.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 192
diff changeset
  2180
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2181
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2182
(message "DVC")
91
0eb9d7ee4bec Don't show dvc tips.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 90
diff changeset
  2183
0eb9d7ee4bec Don't show dvc tips.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 90
diff changeset
  2184
(when (featurep 'dvc-emacs)
0eb9d7ee4bec Don't show dvc tips.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 90
diff changeset
  2185
  (setq dvc-tips-enabled nil)
0eb9d7ee4bec Don't show dvc tips.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 90
diff changeset
  2186
  )
0eb9d7ee4bec Don't show dvc tips.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 90
diff changeset
  2187
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2188
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2189
(message "indenting")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2190
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2191
(setq standard-indent 4)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2192
(setq c-basic-offset 4)
22
8ca8997d9f1d Определил размер отступа для sh-mode.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 21
diff changeset
  2193
(setq sh-basic-offset 2)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2194
(setq sgml-basic-offset 4)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2195
1181
64523c0fddb0 Disable electric-indent-mode new in v24.4.1.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1180
diff changeset
  2196
(when (fboundp 'electric-indent-mode)
64523c0fddb0 Disable electric-indent-mode new in v24.4.1.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1180
diff changeset
  2197
  (electric-indent-mode -1))
64523c0fddb0 Disable electric-indent-mode new in v24.4.1.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1180
diff changeset
  2198
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2199
;; TAB (tab settings)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2200
(setq-default tab-width 4)
253
7cb6ff8a9a75 Translate comment to English.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 252
diff changeset
  2201
(setq-default indent-tabs-mode nil)     ; spaces instead of tabs by default
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2202
(setq tab-always-indent t)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2203
(setq c-tab-always-indent t)
188
e36736f245fd Start tab-stop-list with zero.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 162
diff changeset
  2204
(let ( (line-width 400) i )
e36736f245fd Start tab-stop-list with zero.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 162
diff changeset
  2205
  (setq i (* (ceiling line-width 4) 4))
73
73e42aa11b3c Correct initial asigned with nil.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 72
diff changeset
  2206
  (setq tab-stop-list nil)
188
e36736f245fd Start tab-stop-list with zero.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 162
diff changeset
  2207
  (while (>= i 0)
e36736f245fd Start tab-stop-list with zero.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 162
diff changeset
  2208
    (setq tab-stop-list (cons i tab-stop-list))
e36736f245fd Start tab-stop-list with zero.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 162
diff changeset
  2209
    (setq i (- i 4))))
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2210
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2211
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2212
(message "compile")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  2213
647
993160feda92 Add docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 646
diff changeset
  2214
;; Prompt for compilation command.
993160feda92 Add docs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 646
diff changeset
  2215
(setq compilation-read-command 1)
638
5bfd6f2d1ae7 Use gmake on FreeBSD.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 637
diff changeset
  2216
(setq compile-auto-highlight t)
894
d993e3e910ef Make 'mymake' as default compile command.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 893
diff changeset
  2217
(setq compile-command "mymake ")
638
5bfd6f2d1ae7 Use gmake on FreeBSD.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 637
diff changeset
  2218
(when (eq system-type 'berkeley-unix)
5bfd6f2d1ae7 Use gmake on FreeBSD.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 637
diff changeset
  2219
  (setq compile-command "gmake "))
646
6c2682a5d81e Add comment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 645
diff changeset
  2220
;; With '1' compilation window shall scroll down, with `first-error' stops scrolling at the first error.
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2221
(setq compilation-scroll-output 1)
684
f0604e71f261 compilation-ask-about-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 683
diff changeset
  2222
(setq compilation-ask-about-save t)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2223
577
d24848aec7d1 Show error in EN locale to easy search how fix problem in docs and Internet.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 564
diff changeset
  2224
;; Show error in EN locale to easy search how fix problem in docs and Internet.
d24848aec7d1 Show error in EN locale to easy search how fix problem in docs and Internet.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 564
diff changeset
  2225
(setq compilation-environment '("LANG=C"))
d24848aec7d1 Show error in EN locale to easy search how fix problem in docs and Internet.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 564
diff changeset
  2226
552
1cdd21e5f0b9 Set compilation-error-regexp-alist after loading 'compile.el'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 551
diff changeset
  2227
(eval-after-load 'compile
556
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
  2228
  '(progn
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
  2229
     ;; My funny error messages.
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
  2230
     (add-to-list 'compilation-error-regexp-alist '("^\\( +\\[csc\\] \\|\\)\\(.*\\)(\\([0-9]*\\),\\([0-9]*\\)):" 2 3 4))
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
  2231
     (add-to-list 'compilation-error-regexp-alist '("^ *\\(.*\\)(\\([0-9]*\\)) +:" 1 2))
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
  2232
     (add-to-list 'compilation-error-regexp-alist '("^\"?\\([^\"]*\\)\"?,\\([0-9]*\\) .*\\[.*\\]: " 1 2)) ; KEIL compiler
967
5d0ffd485a43 Add error parsing from Maven.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 965
diff changeset
  2233
     (add-to-list 'compilation-error-regexp-alist-alist '(maven "\\[ERROR\\] \\(.*\\.java\\):\\[\\([0-9]+\\),\\([0-9]+\\)\\]" 1 2 3))
5d0ffd485a43 Add error parsing from Maven.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 965
diff changeset
  2234
     (add-to-list 'compilation-error-regexp-alist 'maven)
556
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
  2235
     (when (boundp 'compilation-mode-font-lock-keywords)
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
  2236
       (add-to-list 'compilation-mode-font-lock-keywords '("\\(/[Oo][Uu][Tt]:[^[:blank:]]+\\)" . 1))
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
  2237
       (add-to-list 'compilation-mode-font-lock-keywords '("[[:blank:]]\\(/F[oe][^[:blank:]]+\\)" . 1))
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
  2238
       )
782325bafc4a Fix 'eval-after-load' usage.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 555
diff changeset
  2239
     ))
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2240
1098
ac3d34a14b99 Colorize ANSI colour sequences in compilation buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1097
diff changeset
  2241
(ignore-errors
ac3d34a14b99 Colorize ANSI colour sequences in compilation buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1097
diff changeset
  2242
  (require 'ansi-color)
ac3d34a14b99 Colorize ANSI colour sequences in compilation buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1097
diff changeset
  2243
  (defun my-colorize-compilation-buffer ()
ac3d34a14b99 Colorize ANSI colour sequences in compilation buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1097
diff changeset
  2244
    (when (eq major-mode 'compilation-mode)
ac3d34a14b99 Colorize ANSI colour sequences in compilation buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1097
diff changeset
  2245
      (ansi-color-apply-on-region compilation-filter-start (point-max))))
ac3d34a14b99 Colorize ANSI colour sequences in compilation buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1097
diff changeset
  2246
  (add-hook 'compilation-filter-hook 'my-colorize-compilation-buffer))
ac3d34a14b99 Colorize ANSI colour sequences in compilation buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1097
diff changeset
  2247
672
ec015b06e121 my-comint-send-string
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  2248
(defvar my-comint-send-hist-list nil
ec015b06e121 my-comint-send-string
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  2249
  "History list for `my-comint-send-string'."
ec015b06e121 my-comint-send-string
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  2250
  )
ec015b06e121 my-comint-send-string
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  2251
(defun my-comint-send-string (string)
704
474a9291a602 Automaticaly append final newline.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 703
diff changeset
  2252
  "Send string to comint buffers. Useful for *compilation* read-only buffer.
474a9291a602 Automaticaly append final newline.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 703
diff changeset
  2253
Automaticaly append final newline."
672
ec015b06e121 my-comint-send-string
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  2254
  (interactive
ec015b06e121 my-comint-send-string
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  2255
   (list (read-input "Type string: " nil 'my-comint-send-hist-list))
ec015b06e121 my-comint-send-string
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  2256
   )
704
474a9291a602 Automaticaly append final newline.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 703
diff changeset
  2257
  (comint-send-string (get-buffer-process (current-buffer)) (concat string "\n"))
672
ec015b06e121 my-comint-send-string
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  2258
  )
674
f3ac6416ef21 Fix: "Symbol's value as variable is void: compilation-mode-map".
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 673
diff changeset
  2259
(eval-after-load 'compile
f3ac6416ef21 Fix: "Symbol's value as variable is void: compilation-mode-map".
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 673
diff changeset
  2260
  '(progn
f3ac6416ef21 Fix: "Symbol's value as variable is void: compilation-mode-map".
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 673
diff changeset
  2261
     (define-key compilation-mode-map [C-return] 'my-comint-send-string)
f3ac6416ef21 Fix: "Symbol's value as variable is void: compilation-mode-map".
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 673
diff changeset
  2262
     ))
672
ec015b06e121 my-comint-send-string
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 670
diff changeset
  2263
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2264
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
951
1beeb0ad3272 Add scons settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 950
diff changeset
  2265
(message "scons")
1beeb0ad3272 Add scons settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 950
diff changeset
  2266
1beeb0ad3272 Add scons settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 950
diff changeset
  2267
(add-to-list 'auto-mode-alist '("SConstruct\\'" . python-mode))
1beeb0ad3272 Add scons settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 950
diff changeset
  2268
(add-to-list 'auto-mode-alist '("SConscript\\'" . python-mode))
1beeb0ad3272 Add scons settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 950
diff changeset
  2269
1beeb0ad3272 Add scons settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 950
diff changeset
  2270
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1100
df3489a212a9 Show sources along with debugger.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1099
diff changeset
  2271
(message "gdb, gud")
df3489a212a9 Show sources along with debugger.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1099
diff changeset
  2272
;; Use C-x SPACE to set breakpoint in source file.
df3489a212a9 Show sources along with debugger.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1099
diff changeset
  2273
df3489a212a9 Show sources along with debugger.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1099
diff changeset
  2274
(setq gdb-show-main t)                  ; See also (gdb-many-windows)
df3489a212a9 Show sources along with debugger.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1099
diff changeset
  2275
df3489a212a9 Show sources along with debugger.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1099
diff changeset
  2276
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2277
(message "TAGS, etags, ctags, GNU GLOBAL")
421
44d516f2badd Enable automatic depth up search for TAGS file when 'etags-table' available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 420
diff changeset
  2278
529
1d38dfff2664 Add 'etags-select' and 'etags-table' customization.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 528
diff changeset
  2279
;; One of 'tags-table-list' or 'tags-file-name' control which TAGS files to
1d38dfff2664 Add 'etags-select' and 'etags-table' customization.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 528
diff changeset
  2280
;; use.
1d38dfff2664 Add 'etags-select' and 'etags-table' customization.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 528
diff changeset
  2281
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  2282
(ignore-errors
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  2283
  (require 'etags-table)
529
1d38dfff2664 Add 'etags-select' and 'etags-table' customization.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 528
diff changeset
  2284
  (setq etags-table-search-up-depth 8)
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  2285
  (require 'etags-select)
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  2286
  (global-set-key "\M-." 'etags-select-find-tag)
421
44d516f2badd Enable automatic depth up search for TAGS file when 'etags-table' available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 420
diff changeset
  2287
  )
44d516f2badd Enable automatic depth up search for TAGS file when 'etags-table' available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 420
diff changeset
  2288
675
7bef62461084 Try enable modes to avoid do this explicitly in '.emacs-pre'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 674
diff changeset
  2289
(setq tags-add-tables t)
541
3d913b8531f4 Bound 'complete-tag' to M-RET.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 539
diff changeset
  2290
(global-set-key "\M-\r" 'complete-tag)
3d913b8531f4 Bound 'complete-tag' to M-RET.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 539
diff changeset
  2291
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2292
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1021
88e787ae4703 Enable SRecord.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1020
diff changeset
  2293
(message "CEDET, semantic, SRecord")
422
021017e52754 Enable 'semantic' for Emacs 23.2.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 421
diff changeset
  2294
425
b835c68d20a8 Added more semantic customisation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 424
diff changeset
  2295
;; For debug use 'semantic-debug-idle-function' and 'semantic-debug-idle-work-function'.
454
18ce601cb4fb Enable CEDET which custom installed.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 453
diff changeset
  2296
1121
88df66cabc20 Enable semantic mode not only for build-in CEDET but for external Bzr/Git.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1120
diff changeset
  2297
(when (or
88df66cabc20 Enable semantic mode not only for build-in CEDET but for external Bzr/Git.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1120
diff changeset
  2298
       (and (= emacs-major-version 23) (>= emacs-minor-version 2))
88df66cabc20 Enable semantic mode not only for build-in CEDET but for external Bzr/Git.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1120
diff changeset
  2299
       (>= emacs-major-version 24) )
88df66cabc20 Enable semantic mode not only for build-in CEDET but for external Bzr/Git.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1120
diff changeset
  2300
  (require 'cedet))
454
18ce601cb4fb Enable CEDET which custom installed.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 453
diff changeset
  2301
18ce601cb4fb Enable CEDET which custom installed.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 453
diff changeset
  2302
(when (featurep 'cedet)
1125
2fab89e9858e Fix: Symbol's function definition is void: global-semantic-idle-scheduler-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1124
diff changeset
  2303
  (require 'semantic)
2fab89e9858e Fix: Symbol's function definition is void: global-semantic-idle-scheduler-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1124
diff changeset
  2304
1035
daf872211946 Enable many CEDET features.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1034
diff changeset
  2305
  (global-semantic-idle-scheduler-mode 1)
422
021017e52754 Enable 'semantic' for Emacs 23.2.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 421
diff changeset
  2306
  (global-semantic-idle-summary-mode 1)
1035
daf872211946 Enable many CEDET features.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1034
diff changeset
  2307
  (global-semantic-idle-completions-mode 1)
425
b835c68d20a8 Added more semantic customisation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 424
diff changeset
  2308
  (global-semantic-mru-bookmark-mode 1)
b835c68d20a8 Added more semantic customisation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 424
diff changeset
  2309
  ;; (setq semantic-stickyfunc-sticky-classes '(function type variable include package))
456
7b13bdbb2d0e Explicitly disable 'global-semantic-stickyfunc-mode' for manually installed CEDET.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 455
diff changeset
  2310
  (global-semantic-stickyfunc-mode -1)
1035
daf872211946 Enable many CEDET features.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1034
diff changeset
  2311
  (global-semantic-highlight-func-mode 1)
daf872211946 Enable many CEDET features.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1034
diff changeset
  2312
  (global-semantic-decoration-mode 1)
daf872211946 Enable many CEDET features.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1034
diff changeset
  2313
  (global-semantic-idle-local-symbol-highlight-mode 1)
daf872211946 Enable many CEDET features.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1034
diff changeset
  2314
1171
489a962e1bd3 Increase timeout for CEDET parsing to prevent freezing when open files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
  2315
  (setq semantic-idle-scheduler-idle-time 10)
466
71d60f805984 Make larger time for heavy idle-scheduler-work.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 465
diff changeset
  2316
  (setq semantic-idle-scheduler-work-idle-time 60)
1167
0e8b45e9b09f semantic-idle-scheduler-max-buffer-size
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1166
diff changeset
  2317
  (setq semantic-idle-scheduler-max-buffer-size 100000)
466
71d60f805984 Make larger time for heavy idle-scheduler-work.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 465
diff changeset
  2318
  ;; (setq semantic-idle-work-parse-neighboring-files-flag nil)
71d60f805984 Make larger time for heavy idle-scheduler-work.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 465
diff changeset
  2319
450
53773da85b43 Magic for semantic-add-system-include. Previous not worked.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 443
diff changeset
  2320
  ;; semantic-dependency-system-include-path, semantic-customize-system-include-path
626
a759aa107534 Enable 'semantc'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 625
diff changeset
  2321
a759aa107534 Enable 'semantc'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 625
diff changeset
  2322
  ;; file local project unloaded system recursive
1124
77aed3ad8164 Enable Semantic local file parsing.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1123
diff changeset
  2323
  (setq-mode-local c-mode semanticdb-find-default-throttle '(file local))
447
fde6ee13fce1 Use '~/.emacs.d/include' as place for headers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 446
diff changeset
  2324
  (add-hook 'c-mode-hook (lambda nil (semantic-add-system-include "~/.emacs.d/include" 'c-mode)))
fde6ee13fce1 Use '~/.emacs.d/include' as place for headers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 446
diff changeset
  2325
  (add-hook 'c-mode-hook (lambda nil (semantic-add-system-include "~/.emacs.d/include" 'c++-mode)))
443
8c5d0e026821 Set my path for headers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 442
diff changeset
  2326
  (global-semanticdb-minor-mode 1)
8c5d0e026821 Set my path for headers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 442
diff changeset
  2327
1170
c7babd912af4 global-cedet-m3-minor-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
  2328
  (global-cedet-m3-minor-mode 1)
c7babd912af4 global-cedet-m3-minor-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
  2329
1169
00ed27b56ff4 Group related configs together.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
  2330
  (semantic-mode 1)
1168
1dbeeeb5b05b Fix argument to satisfy usual convention for enabling mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
  2331
  (global-ede-mode 1)
1036
9b8015c8a847 Reorder code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1035
diff changeset
  2332
1121
88df66cabc20 Enable semantic mode not only for build-in CEDET but for external Bzr/Git.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1120
diff changeset
  2333
  (require 'srecode)
1155
a4a30b11e1ca Fix: eval-expression: Symbol's value as variable is void: srecode-map-load-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1153
diff changeset
  2334
  (unless (boundp 'srecode-map-load-path)
a4a30b11e1ca Fix: eval-expression: Symbol's value as variable is void: srecode-map-load-path
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1153
diff changeset
  2335
    (setq srecode-map-load-path nil))
1150
dad3fb58f710 Add srecode templates.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1148
diff changeset
  2336
  (add-to-list 'srecode-map-load-path (locate-user-emacs-file "srecode/"))
1105
74211b52b859 Enable SRecode key binding for prog modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1104
diff changeset
  2337
  (global-srecode-minor-mode 1)
74211b52b859 Enable SRecode key binding for prog modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1104
diff changeset
  2338
  (add-hook 'prog-mode-hook 'srecode-minor-mode)
74211b52b859 Enable SRecode key binding for prog modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1104
diff changeset
  2339
1119
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2340
  (ignore-errors
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2341
    (cedet-ectag-version-check)
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2342
    (semantic-load-enable-primary-ectags-support))
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2343
  (ignore-errors
1123
130a4e1944d5 Add GNU Global check.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1122
diff changeset
  2344
    (cedet-gnu-global-version-check)
1119
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2345
    (require 'cedet-global)
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2346
    (semanticdb-enable-gnu-global-databases 'c-mode)
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2347
    (semanticdb-enable-gnu-global-databases 'c++-mode))
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2348
1120
ce8e07de9789 Enable cedet-java.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1119
diff changeset
  2349
  (ignore-errors
ce8e07de9789 Enable cedet-java.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1119
diff changeset
  2350
    (require 'cedet-java))
ce8e07de9789 Enable cedet-java.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1119
diff changeset
  2351
1036
9b8015c8a847 Reorder code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1035
diff changeset
  2352
  ;; (require 'semantic/db-javap)
9b8015c8a847 Reorder code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1035
diff changeset
  2353
626
a759aa107534 Enable 'semantc'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 625
diff changeset
  2354
  ;; (add-to-list 'ede-locate-setup-options 'ede-locate-idutils)
a759aa107534 Enable 'semantc'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 625
diff changeset
  2355
  ;; (add-to-list 'ede-locate-setup-options 'ede-locate-global)
a759aa107534 Enable 'semantc'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 625
diff changeset
  2356
630
2dc36a3fdde6 Temporary disable cedet-global and cedet-idutils as GNU Global and IdUtils may
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 629
diff changeset
  2357
  ;; (ignore-errors (require 'cedet-idutils))
470
f859726fcca9 Enable GNU Global and GNU ID utils for EDE.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 469
diff changeset
  2358
1037
63dd116e3153 Properly set come keys for completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1036
diff changeset
  2359
  (defun my-c-mode-cedet-hook ()
1119
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2360
    ;; (local-set-key [C-return] 'semantic-complete-symbol)
1037
63dd116e3153 Properly set come keys for completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1036
diff changeset
  2361
    ;; (local-set-key [C-return] 'semantic-complete-analyze-inline)
63dd116e3153 Properly set come keys for completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1036
diff changeset
  2362
    (local-set-key "." 'semantic-complete-self-insert)
63dd116e3153 Properly set come keys for completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1036
diff changeset
  2363
    (local-set-key ">" 'semantic-complete-self-insert))
63dd116e3153 Properly set come keys for completion.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1036
diff changeset
  2364
  (add-hook 'c-mode-common-hook 'my-c-mode-cedet-hook)
1119
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2365
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2366
  (ignore-errors
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2367
    (require 'semantic/ia)
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2368
    (define-key semantic-mode-map (kbd "C-c , .") 'semantic-ia-fast-jump)
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2369
    (define-key semantic-mode-map (kbd "C-c , d") 'semantic-ia-show-doc)
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2370
    (define-key semantic-mode-map (kbd "C-c , D") 'semantic-ia-show-summary)
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2371
    (define-key semantic-mode-map (kbd "C-c , ?") 'semantic-ia-complete-symbol-menu)
1133
ca0a819ff8c5 semantic-mode-map override major mode binding, so disable conflicting key bindings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1132
diff changeset
  2372
    ;; (define-key semantic-mode-map [(control return)] 'semantic-ia-complete-symbol)
1119
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2373
    ;; (define-key semantic-mode-map (kbd "C-c , C") 'semantic-ia-describe-class)
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2374
    ;; semantic-decoration-include-visit
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2375
    ;; semantic-analyze-proto-impl-toggle
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2376
    )
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2377
a1a33efa7ad0 Enable ectag and global if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1118
diff changeset
  2378
  ;; END OF: (when (featurep 'cedet) ...)
422
021017e52754 Enable 'semantic' for Emacs 23.2.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 421
diff changeset
  2379
  )
021017e52754 Enable 'semantic' for Emacs 23.2.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 421
diff changeset
  2380
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2381
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2382
(message "imenu")
428
6e8b3a312262 Allow imenu function if manu-bar-mode disabled (becase in that case
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 427
diff changeset
  2383
1003
8c1abe90331a Add doc strings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1001
diff changeset
  2384
(require 'imenu)
8c1abe90331a Add doc strings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1001
diff changeset
  2385
652
243f52487da7 Always enable 'imenu'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 650
diff changeset
  2386
(defun my-imenu-to-menubar ()
1003
8c1abe90331a Add doc strings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1001
diff changeset
  2387
  "Force imenu building when (menu-bar-mode -1)."
995
9d2f14f723c4 Fix condition to check support for imenu.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 994
diff changeset
  2388
  (when imenu-generic-expression
994
4bc77d7283ea Fix: File mode specification error: (error "The mode `nXML' does not support Imenu").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 993
diff changeset
  2389
    (imenu-add-menubar-index)
4bc77d7283ea Fix: File mode specification error: (error "The mode `nXML' does not support Imenu").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 993
diff changeset
  2390
    (run-hooks 'menu-bar-update-hook) ))
652
243f52487da7 Always enable 'imenu'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 650
diff changeset
  2391
(mapc (lambda (hook) (add-hook hook 'my-imenu-to-menubar))
243f52487da7 Always enable 'imenu'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 650
diff changeset
  2392
      my-devel-mode-hook-list)
243f52487da7 Always enable 'imenu'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 650
diff changeset
  2393
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2394
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2395
(message "windows inf files for driver installin")
303
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 288 302
diff changeset
  2396
288
5009c3f4afef Windows inf files for installing drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 285
diff changeset
  2397
(add-to-list 'auto-mode-alist '("\\.inf\\'" . conf-mode))
5009c3f4afef Windows inf files for installing drivers.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 285
diff changeset
  2398
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2399
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1101
500c2af9b6fb Set fvwm-fvwmcommand-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1100
diff changeset
  2400
(message "fvwm-mode")
500c2af9b6fb Set fvwm-fvwmcommand-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1100
diff changeset
  2401
1102
15dcb049a269 Set fvwm-fvwmcommand-path after loading fvwm-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1101
diff changeset
  2402
(eval-after-load 'fvwm-mode
1101
500c2af9b6fb Set fvwm-fvwmcommand-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1100
diff changeset
  2403
  (setq fvwm-fvwmcommand-path (executable-find "FvwmCommand")))
500c2af9b6fb Set fvwm-fvwmcommand-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1100
diff changeset
  2404
500c2af9b6fb Set fvwm-fvwmcommand-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1100
diff changeset
  2405
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2406
(message "makefile, make")
196
154d8ebf534b Added matches for makefile-gmake-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 192
diff changeset
  2407
762
a4787876e986 Down priority for Makefile pattern to allow match .diff/.rej first.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 761
diff changeset
  2408
(add-to-list 'auto-mode-alist '("\\(Makefile\\|Makefile\\..+\\)\\'" . makefile-gmake-mode) t)
196
154d8ebf534b Added matches for makefile-gmake-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 192
diff changeset
  2409
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2410
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2411
(message "asm, assembler")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  2412
36
4261883ccdb6 Use C-style comment in asm files.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 35
diff changeset
  2413
;; (setq-default asm-comment-char 59)
4261883ccdb6 Use C-style comment in asm files.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 35
diff changeset
  2414
(add-hook 'asm-mode-hook '(lambda () (setq comment-start "/*") (setq comment-end "*/")) t)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2415
186
8c74e1ac4da1 Added association for IAR asm file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 185
diff changeset
  2416
(add-to-list 'auto-mode-alist '("\\.\\([sS]79\\|[sS]\\)\\'" . asm-mode))
8c74e1ac4da1 Added association for IAR asm file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 185
diff changeset
  2417
176
69d65b8a0a25 Added example for unset-key.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 175
diff changeset
  2418
;; (add-hook 'asm-mode-hook '(lambda () (local-unset-key ":")))
69d65b8a0a25 Added example for unset-key.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 175
diff changeset
  2419
;; (add-hook 'asm-mode-hook '(lambda () (local-set-key ":" ":")))
69d65b8a0a25 Added example for unset-key.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 175
diff changeset
  2420
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2421
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2422
(message "linker")
272
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2423
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2424
(when (fboundp 'iar-linker-config-mode)
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2425
  (add-to-list 'auto-mode-alist '("\\.icf\\'" . iar-linker-config-mode))
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2426
  )
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2427
(when (fboundp 'iar4-linker-config-mode)
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2428
  (add-to-list 'auto-mode-alist '("\\.xcl\\'" . iar4-linker-config-mode))
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2429
  )
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2430
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2431
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
602
e8242148f3dd Enable 'turn-on-eldoc-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 601
diff changeset
  2432
(message "lisp, elisp")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  2433
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2434
(setq list-command-history-max 256)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2435
602
e8242148f3dd Enable 'turn-on-eldoc-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 601
diff changeset
  2436
(add-hook 'emacs-lisp-mode-hook 'turn-on-eldoc-mode)
1015
a3e820b84227 Set TAB width to 8 in .el files to proper shown Emacs sources.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1014
diff changeset
  2437
(defun my-emacs-lisp-mode-hook ()
a3e820b84227 Set TAB width to 8 in .el files to proper shown Emacs sources.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1014
diff changeset
  2438
  (setq tab-width 8))
a3e820b84227 Set TAB width to 8 in .el files to proper shown Emacs sources.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1014
diff changeset
  2439
(add-hook 'emacs-lisp-mode-hook 'my-emacs-lisp-mode-hook)
610
9af87adeed3c Try find variable at point, if fail find function in 'emacs-lisp-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 609
diff changeset
  2440
9af87adeed3c Try find variable at point, if fail find function in 'emacs-lisp-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 609
diff changeset
  2441
(defun my-elisp-find-tag ()
9af87adeed3c Try find variable at point, if fail find function in 'emacs-lisp-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 609
diff changeset
  2442
  (interactive)
629
f441ee5e03d4 Fix error: my-elisp-find-tag: Symbol's value as variable is void: find-tag-marker-ring
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 628
diff changeset
  2443
  (require 'etags)
614
41c826f2b24f Save place from which we jump.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 613
diff changeset
  2444
  (ring-insert find-tag-marker-ring (point-marker))
610
9af87adeed3c Try find variable at point, if fail find function in 'emacs-lisp-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 609
diff changeset
  2445
  (unless (find-variable-at-point)
9af87adeed3c Try find variable at point, if fail find function in 'emacs-lisp-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 609
diff changeset
  2446
    (find-function-at-point)
9af87adeed3c Try find variable at point, if fail find function in 'emacs-lisp-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 609
diff changeset
  2447
    ))
603
291a8df0cf97 Goto elisp definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 602
diff changeset
  2448
;; Goto elisp definition.
610
9af87adeed3c Try find variable at point, if fail find function in 'emacs-lisp-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 609
diff changeset
  2449
(define-key emacs-lisp-mode-map (kbd "M-.") 'my-elisp-find-tag)
602
e8242148f3dd Enable 'turn-on-eldoc-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 601
diff changeset
  2450
1180
ed7746a7cb0c global-prettify-symbols-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
  2451
(if (not (fboundp 'global-prettify-symbols-mode))
ed7746a7cb0c global-prettify-symbols-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
  2452
    ;; http://www.emacswiki.org/emacs/PrettyLambda
ed7746a7cb0c global-prettify-symbols-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
  2453
    (font-lock-add-keywords
ed7746a7cb0c global-prettify-symbols-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
  2454
     'emacs-lisp-mode
ed7746a7cb0c global-prettify-symbols-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
  2455
     `(("(\\<\\(lambda\\)\\>"
ed7746a7cb0c global-prettify-symbols-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
  2456
        (1 (progn (compose-region (match-beginning 1) (match-end 1) ,(make-char 'greek-iso8859-7 107)) font-lock-keyword-face)) )))
ed7746a7cb0c global-prettify-symbols-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
  2457
  (global-prettify-symbols-mode 1))
608
9bbdc481172e http://www.emacswiki.org/emacs/PrettyLambda
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 607
diff changeset
  2458
1007
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2459
(defun my-dump-funcs ()
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2460
  "Dump all function calls in current buffer. Useful to explore
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2461
elisp API from somebody else files."
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2462
  (interactive)
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2463
  (let* ( (cur-buffer (current-buffer)) (new-buffer (get-buffer-create (concat (buffer-name cur-buffer) "-funcs.el"))) symb )
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2464
    (while (search-forward-regexp "([[:alnum:]*]" nil t)
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2465
      (setq symb (thing-at-point 'symbol))
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2466
      (with-current-buffer new-buffer
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2467
        (insert-string symb)
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2468
        (insert-char ?\n 1)))
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2469
    (switch-to-buffer new-buffer)
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2470
    (shell-command-on-region (point-min) (point-max) "sort -u" nil t)
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2471
    ))
8b5717119af4 Add function that dump all function calls in current buffer. Useful to explore
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1006
diff changeset
  2472
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2473
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1172
e13ab3bb9331 Minor mode that highlights suspicious C and C++ constructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
  2474
(message "c-mode, cc-mode, c++-mode")
173
04b974b118c2 cc-mode customisations.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 172
diff changeset
  2475
645
f5a8fa2c4534 Minor mode that highlights suspicious C and C++ constructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 644
diff changeset
  2476
;; Minor mode that highlights suspicious C and C++ constructions.
1172
e13ab3bb9331 Minor mode that highlights suspicious C and C++ constructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
  2477
(global-cwarn-mode 1)
645
f5a8fa2c4534 Minor mode that highlights suspicious C and C++ constructions.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 644
diff changeset
  2478
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2479
(setq c-echo-syntactic-information-p t)
710
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2480
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2481
(defun my-c-mode-common-hook ()
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2482
  ;; Automatically inserte newlines after special characters such as brace, comma, semi-colon, and colon.
823
c1c5a6b3255a Enable 'electric' and disable 'auto-newline' in C-like modes. Previously I
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 818
diff changeset
  2483
  (c-toggle-auto-newline -1)
710
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2484
  ;; Delete all preceding whitespace by DEL.
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2485
  (c-toggle-hungry-state -1)
711
c124c5e589af Enable electric new-line. Document auto indent after typing colon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 710
diff changeset
  2486
  ;; Auto indent after typing colon according to `c-hanging-colons-alist'.
c124c5e589af Enable electric new-line. Document auto indent after typing colon.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 710
diff changeset
  2487
  (c-toggle-electric-state 1)
710
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2488
  )
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2489
(add-hook 'c-mode-common-hook 'my-c-mode-common-hook)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2490
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2491
(defconst my-c-style
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2492
  '((c-tab-always-indent . t)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2493
    (c-comment-only-line-offset . 4)
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2494
    (c-hanging-braces-alist
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2495
     . (
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2496
        (brace-list-open)
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2497
        (substatement-open after)
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2498
        ))
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2499
    (c-hanging-colons-alist
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2500
     . (
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2501
        (access-label after)
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2502
        (case-label after)
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2503
        (inher-intro)
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2504
        (label after)
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2505
        (member-init-intro before)
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2506
        ))
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2507
    (c-cleanup-list
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2508
     . (
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2509
        defun-close-semi
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2510
        empty-defun-braces
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2511
        scope-operator
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2512
        ))
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2513
    (c-offsets-alist
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2514
     . (
712
b54c2306b184 Set indent level for privdate/public keywords.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 711
diff changeset
  2515
        (access-label . -)
485
28f82b8f4f46 Set 'arglist-close' to same indent level as 'arglist-intro' and 'arglist-cont-nonempty'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 484
diff changeset
  2516
        (arglist-intro . ++)
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2517
        (arglist-cont-nonempty . ++)
485
28f82b8f4f46 Set 'arglist-close' to same indent level as 'arglist-intro' and 'arglist-cont-nonempty'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 484
diff changeset
  2518
        (arglist-close . ++)
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2519
        (block-open . 0)
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2520
        (case-label . 0)
562
f277076ade00 Don't indent first LEFT CURLY BRACKET on new line of macros.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 561
diff changeset
  2521
        (cpp-define-intro . 0)
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2522
        (comment-intro . 0)
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2523
        (func-decl-cont . ++)
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2524
        (inexpr-class . 0)
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2525
        (inline-open . 0)
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2526
        (knr-argdecl-intro . -)
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2527
        (label . 0)
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2528
        (statement-block-intro . +)
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2529
        (statement-cont . ++)
129
23d028bad418 More regular indent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 128
diff changeset
  2530
        (substatement-open . 0)
445
17ffd2e22d12 Disable indent on extern C.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 444
diff changeset
  2531
        (inextern-lang . 0)
131
bd2400a18295 Practice alphabetical order.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 130
diff changeset
  2532
        ))
1174
1f2b829bd3e6 Certain syntactic errors are reported (like wrong indent).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
  2533
    ;; Certain syntactic errors are reported (like wrong indent).
1f2b829bd3e6 Certain syntactic errors are reported (like wrong indent).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
  2534
    (c-report-syntactic-errors . t)
1173
bf65579bd653 Echo syntactic information on TAB in message buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
  2535
    ;; Echo syntactic information on TAB in message buffer.
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2536
    (c-echo-syntactic-information-p . t))
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2537
  "My C Programming Style")
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2538
710
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2539
(defun my-c-mode-style-hook ()
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2540
  (c-add-style "my" my-c-style t)
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2541
  ;; If set 'c-default-style' before 'c-add-style'
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2542
  ;; "Undefined style: my" error occured from 'c-get-style-variables'.
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2543
  (setq c-default-style
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2544
        '(
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2545
          (java-mode . "my") (c-mode . "my") (csharp-mode . "my") (c++-mode . "my") (objc-mode . "my")
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2546
          (idl-mode . "my")
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2547
          (awk-mode . "awk")
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2548
          (other . "my")
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2549
          ))
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2550
  )
49635ebf70f1 Move some anonymous hooks to func definition.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 704
diff changeset
  2551
(add-hook 'c-mode-common-hook 'my-c-mode-style-hook)
424
188eba7735eb If set 'c-default-style' before 'c-add-style'
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 423
diff changeset
  2552
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2553
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
703
970915b27f69 Don't send ^M to Python process under Windows as you get error
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
  2554
(message "python")
970915b27f69 Don't send ^M to Python process under Windows as you get error
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
  2555
727
4d38b9e96670 Set 'python-indent' and 'python-continuation-offset'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 724
diff changeset
  2556
(setq python-indent 4)
4d38b9e96670 Set 'python-indent' and 'python-continuation-offset'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 724
diff changeset
  2557
856
7757d0840a78 Fix bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=654398
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 843
diff changeset
  2558
(eval-after-load 'python-mode
1023
3a49cbe13ae3 Fix 'eval-after-load' usage. Fix mode name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1022
diff changeset
  2559
  '(when (and (boundp 'py-version) (equal py-version "5.1.0"))
856
7757d0840a78 Fix bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=654398
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 843
diff changeset
  2560
    (setq-default py-which-shell py-python-command)
7757d0840a78 Fix bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=654398
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 843
diff changeset
  2561
    ;; (py-toggle-shells 'cpython)
7757d0840a78 Fix bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=654398
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 843
diff changeset
  2562
    ))
7757d0840a78 Fix bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=654398
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 843
diff changeset
  2563
1023
3a49cbe13ae3 Fix 'eval-after-load' usage. Fix mode name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1022
diff changeset
  2564
(eval-after-load 'python
3a49cbe13ae3 Fix 'eval-after-load' usage. Fix mode name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1022
diff changeset
  2565
  '(define-key inferior-python-mode-map "\C-c\C-f" 'python-describe-symbol))
3a49cbe13ae3 Fix 'eval-after-load' usage. Fix mode name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1022
diff changeset
  2566
957
15fc17674517 Enable "M-/", "C-c g", "C-c d", "C-c f" shortcuts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 956
diff changeset
  2567
;; Enable "M-/", "C-c g", "C-c d", "C-c f" shortcuts.
15fc17674517 Enable "M-/", "C-c g", "C-c d", "C-c f" shortcuts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 956
diff changeset
  2568
(setq ropemacs-enable-shortcuts t)
864
adacfc97125b Load 'pymacs' and 'ropemacs' automatically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 863
diff changeset
  2569
(ignore-errors
1022
37071d001c49 Disable rope.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1021
diff changeset
  2570
  ;; (require 'pymacs)
37071d001c49 Disable rope.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1021
diff changeset
  2571
  ;; (pymacs-load "ropemacs" "rope-")
864
adacfc97125b Load 'pymacs' and 'ropemacs' automatically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 863
diff changeset
  2572
  )
adacfc97125b Load 'pymacs' and 'ropemacs' automatically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 863
diff changeset
  2573
;; Automatically save project python buffers before refactorings
adacfc97125b Load 'pymacs' and 'ropemacs' automatically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 863
diff changeset
  2574
(setq ropemacs-confirm-saving 'nil)
adacfc97125b Load 'pymacs' and 'ropemacs' automatically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 863
diff changeset
  2575
732
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2576
(defun my-python-add-to-path (path)
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2577
  (interactive (list (read-directory-name "Enter new path for PYTHONPATH: ")))
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2578
  (when (featurep 'cygwin-mount)
1024
4bb32327e98b Fix my-python-add-to-path to allow ~ in path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1023
diff changeset
  2579
    (setq path (my-dos2cygwin-path path)))
4bb32327e98b Fix my-python-add-to-path to allow ~ in path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1023
diff changeset
  2580
  (python-send-string (format "import sys; sys.path.append(\"%s\")" (expand-file-name path))) )
732
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2581
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2582
(defun my-python-django-fix (path)
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2583
  "XXX not work on Cygwin + naive Emacs."
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2584
  (interactive (list (read-directory-name "Enter new path for PYTHONPATH: ")))
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2585
  (when (featurep 'cygwin-mount)
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2586
    (setq path (my-dos2cygwin-path path))
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2587
    )
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2588
  (let ((file (concat path "manage.py")))
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2589
    (if (file-exists-p file)
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2590
        (python-send-string (format "import os; os.chdir(\"%s\"); execfile(\"%s\")" path file))
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2591
      (error (format "file '%s' does not exist" file))
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2592
      )))
139665dd6ada my-python-django-fix + my-python-add-to-path.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 731
diff changeset
  2593
1129
3458d2911643 Disable eldoc for Python in flavor of Semantic and perfomance reason.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1128
diff changeset
  2594
;; Disable in flavor of Semantic and perfomance reason.
3458d2911643 Disable eldoc for Python in flavor of Semantic and perfomance reason.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1128
diff changeset
  2595
;; (when (>= emacs-major-version 22)
3458d2911643 Disable eldoc for Python in flavor of Semantic and perfomance reason.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1128
diff changeset
  2596
;;   (add-hook 'python-mode-hook 'turn-on-eldoc-mode))
729
9c5cb48451ad Enable 'eldoc-mode' for 'python-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 728
diff changeset
  2597
703
970915b27f69 Don't send ^M to Python process under Windows as you get error
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
  2598
(when (equal window-system 'w32)
1129
3458d2911643 Disable eldoc for Python in flavor of Semantic and perfomance reason.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1128
diff changeset
  2599
  (add-to-list 'process-coding-system-alist '("python" cp1251-unix . cp1251-unix)))
703
970915b27f69 Don't send ^M to Python process under Windows as you get error
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 699
diff changeset
  2600
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2601
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
884
8c6ff01debc1 Use cperl instead perl mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 883
diff changeset
  2602
(message "perl, cperl")
8c6ff01debc1 Use cperl instead perl mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 883
diff changeset
  2603
8c6ff01debc1 Use cperl instead perl mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 883
diff changeset
  2604
;; Use cperl instead perl mode.
8c6ff01debc1 Use cperl instead perl mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 883
diff changeset
  2605
(mapc
8c6ff01debc1 Use cperl instead perl mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 883
diff changeset
  2606
 (lambda (pair)
8c6ff01debc1 Use cperl instead perl mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 883
diff changeset
  2607
   (if (eq (cdr pair) 'perl-mode)
8c6ff01debc1 Use cperl instead perl mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 883
diff changeset
  2608
       (setcdr pair 'cperl-mode)))
8c6ff01debc1 Use cperl instead perl mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 883
diff changeset
  2609
 (append auto-mode-alist interpreter-mode-alist))
885
fd8ec78ece0a Don't show all man page. I set man switches to "-a"...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 884
diff changeset
  2610
;; Don't show all man page. I set man switches to "-a"...
fd8ec78ece0a Don't show all man page. I set man switches to "-a"...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 884
diff changeset
  2611
(add-hook
fd8ec78ece0a Don't show all man page. I set man switches to "-a"...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 884
diff changeset
  2612
 'cperl-mode-hook
fd8ec78ece0a Don't show all man page. I set man switches to "-a"...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 884
diff changeset
  2613
 '(lambda ()
fd8ec78ece0a Don't show all man page. I set man switches to "-a"...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 884
diff changeset
  2614
    (make-local-variable 'Man-switches)
fd8ec78ece0a Don't show all man page. I set man switches to "-a"...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 884
diff changeset
  2615
    (setq Man-switches nil)))
884
8c6ff01debc1 Use cperl instead perl mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 883
diff changeset
  2616
886
0867fc471c12 Expands for keywords such as foreach, while, etc...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 885
diff changeset
  2617
;; Expands for keywords such as foreach, while, etc...
0867fc471c12 Expands for keywords such as foreach, while, etc...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 885
diff changeset
  2618
(setq cperl-electric-keywords t)
0867fc471c12 Expands for keywords such as foreach, while, etc...
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 885
diff changeset
  2619
888
37348d961bfb Set indentation rules for cperl.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 887
diff changeset
  2620
(setq
37348d961bfb Set indentation rules for cperl.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 887
diff changeset
  2621
 cperl-indent-level 2
889
7f24172c2c4b Fix indent level for closed parenthesis.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 888
diff changeset
  2622
 cperl-close-paren-offset -2
888
37348d961bfb Set indentation rules for cperl.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 887
diff changeset
  2623
 cperl-continued-statement-offset 2
37348d961bfb Set indentation rules for cperl.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 887
diff changeset
  2624
 cperl-indent-parens-as-block t
37348d961bfb Set indentation rules for cperl.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 887
diff changeset
  2625
 cperl-tab-always-indent t)
37348d961bfb Set indentation rules for cperl.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 887
diff changeset
  2626
884
8c6ff01debc1 Use cperl instead perl mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 883
diff changeset
  2627
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
873
900edc8d663e Define key binding to send paragraph to SML process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 872
diff changeset
  2628
(message "SML, Standard ML")
900edc8d663e Define key binding to send paragraph to SML process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 872
diff changeset
  2629
900edc8d663e Define key binding to send paragraph to SML process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 872
diff changeset
  2630
(eval-after-load 'sml
900edc8d663e Define key binding to send paragraph to SML process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 872
diff changeset
  2631
  '(progn
900edc8d663e Define key binding to send paragraph to SML process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 872
diff changeset
  2632
     (define-key sml-mode-map (kbd "C-c C-p") 'sml-send-function)
900edc8d663e Define key binding to send paragraph to SML process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 872
diff changeset
  2633
     ))
900edc8d663e Define key binding to send paragraph to SML process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 872
diff changeset
  2634
900edc8d663e Define key binding to send paragraph to SML process.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 872
diff changeset
  2635
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2636
(message "javascript, js")
508
79bcafd3d45f As old Emacs have on 'js-mode', use 'javascript-generic-mode'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 507
diff changeset
  2637
965
72d443fe2b1d Disable workaround for:
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 964
diff changeset
  2638
(if (>= emacs-major-version 23)
72d443fe2b1d Disable workaround for:
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 964
diff changeset
  2639
    (add-to-list 'auto-mode-alist '("\\.js$" . js-mode))
72d443fe2b1d Disable workaround for:
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 964
diff changeset
  2640
  (add-to-list 'auto-mode-alist '("\\.js$" . javascript-generic-mode))
72d443fe2b1d Disable workaround for:
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 964
diff changeset
  2641
  )
72d443fe2b1d Disable workaround for:
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 964
diff changeset
  2642
1031
a064392620d7 Fix mode feature name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1030
diff changeset
  2643
(eval-after-load 'js '(modify-syntax-entry ?$ "w" js-mode-syntax-table))
1009
c6e2c636296f Treat '$' as word syntax for JS mode to simplify C-Left/Right movement for jQuery.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1001
diff changeset
  2644
965
72d443fe2b1d Disable workaround for:
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 964
diff changeset
  2645
;; BUG: all single char comments do not stop highlighting on end of line but
72d443fe2b1d Disable workaround for:
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 964
diff changeset
  2646
;; go to end of buffer. To fix use code:
72d443fe2b1d Disable workaround for:
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 964
diff changeset
  2647
;; (setq auto-mode-alist (rassq-delete-all 'js-mode auto-mode-alist))
72d443fe2b1d Disable workaround for:
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 964
diff changeset
  2648
;; (add-to-list 'auto-mode-alist '("\\.js$" . c++-mode))
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2649
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2650
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2651
(message "bat file, batch")
272
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2652
461
1639d2540bbd Set outline-minor for file. Fix section to feet header outline pattern.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 460
diff changeset
  2653
;; loaded from 'generic-x.el'
1639d2540bbd Set outline-minor for file. Fix section to feet header outline pattern.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 460
diff changeset
  2654
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2655
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2656
(message "nsis-mode")
272
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2657
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2658
(when (fboundp 'nsis-mode)
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2659
  (add-to-list 'auto-mode-alist '("\\.\\(nsi\\|nsh\\)\\'" . nsis-mode))
f7fba93f4028 Enable file association for myself defined modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 266
diff changeset
  2660
  )
204
4545865a64c3 Move bat file mode code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 203
diff changeset
  2661
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2662
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2663
(message "csharp, c-sharp")
204
4545865a64c3 Move bat file mode code.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 203
diff changeset
  2664
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2665
(autoload 'csharp-mode "csharp-mode" "Major mode for editing C# code." t)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2666
(add-to-list 'auto-mode-alist '("\\.cs$" . csharp-mode))
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2667
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2668
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2669
(message "java")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  2670
1179
b2e1cb526649 Fix if subword-mode isn't defined.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1178
diff changeset
  2671
(when (fboundp 'subword-mode)
b2e1cb526649 Fix if subword-mode isn't defined.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1178
diff changeset
  2672
  (add-hook 'java-mode-hook #'subword-mode))
1178
2eeb9a3996b4 subword-mode for java-mode
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1177
diff changeset
  2673
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2674
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2675
(message "ECB")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2676
102
25585e240b4a Move customization from .emacs (custom-set-variables) to .emacs-my. Remove duplication.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 101
diff changeset
  2677
(setq ecb-tip-of-the-day nil)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2678
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2679
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
958
f93fa1c0f480 Add customisation for 'htmlize'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 957
diff changeset
  2680
(message "htmlize")
f93fa1c0f480 Add customisation for 'htmlize'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 957
diff changeset
  2681
f93fa1c0f480 Add customisation for 'htmlize'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 957
diff changeset
  2682
(setq
f93fa1c0f480 Add customisation for 'htmlize'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 957
diff changeset
  2683
 htmlize-html-charset "utf-8"
f93fa1c0f480 Add customisation for 'htmlize'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 957
diff changeset
  2684
 htmlize-output-type 'inline-css
f93fa1c0f480 Add customisation for 'htmlize'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 957
diff changeset
  2685
 htmlize-html-major-mode 'html-mode
f93fa1c0f480 Add customisation for 'htmlize'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 957
diff changeset
  2686
 htmlize-convert-nonascii-to-entities nil)
f93fa1c0f480 Add customisation for 'htmlize'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 957
diff changeset
  2687
f93fa1c0f480 Add customisation for 'htmlize'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 957
diff changeset
  2688
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2689
(message "html")
104
e921a5d906ca Use highlighting on sgml modes!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 102
diff changeset
  2690
654
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2691
(defun html-charref-escape-region (start end)
628
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2692
  (interactive "r")
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2693
  (save-excursion
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2694
    (save-restriction
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2695
      (narrow-to-region start end)
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2696
      (goto-char (point-min))
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2697
      (replace-string "&" "&amp;")
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2698
      (goto-char (point-min))
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2699
      (replace-string "<" "&lt;")
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2700
      (goto-char (point-min))
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2701
      (replace-string ">" "&gt;")
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2702
      )))
c00e41cc019e text2html
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 627
diff changeset
  2703
654
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2704
(defun html-charref-from-char (char)
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2705
  (format "&#%d;" char)
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2706
  )
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2707
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2708
(defun html-charref-from-string (string)
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2709
  (let ((res ""))
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2710
    (mapc
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2711
     (lambda (char) (setq res (concat res (html-charref-from-char char))))
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2712
     string)
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2713
    res
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2714
    ) )
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2715
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2716
(defun html-charref-escape-region2 (begin end &optional prefix)
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2717
  (interactive "r\nP")
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2718
  (if prefix
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2719
      (save-excursion
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2720
        (goto-char begin)
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2721
        (insert (html-charref-from-string (delete-and-extract-region begin end))))
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2722
    (html-charref-from-string (buffer-substring begin end))
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2723
    ))
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2724
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2725
(defun html-charref-to-string (html)
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2726
  (let ((res "") (pos 0))
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2727
    (while (string-match "&#\\([[:digit:]]+\\);" html pos)
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2728
      (setq res (concat res (string (string-to-int (substring html (match-beginning 1) (match-end 1)) 10))))
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2729
      (setq pos (match-end 0))
975
75ac0063fd22 Fix indenting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 974
diff changeset
  2730
      )
654
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2731
    res
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2732
    ) )
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2733
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2734
(defun html-charref-unescape-region (begin end &optional prefix)
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2735
  (interactive "r\nP")
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2736
  (if prefix
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2737
      (save-excursion
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2738
        (goto-char begin)
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2739
        (insert (html-charref-to-string (delete-and-extract-region begin end))))
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2740
    (html-charref-to-string (buffer-substring begin end))
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2741
    ))
f08ea38190d6 html-charref package for converting string from/to HTML charref.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 653
diff changeset
  2742
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2743
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2744
(message "nxml")
520
7e8d77531ecf Make the complete element be treated as a single markup item.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 514
diff changeset
  2745
7e8d77531ecf Make the complete element be treated as a single markup item.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 514
diff changeset
  2746
(setq nxml-sexp-element-flag t)
522
14a5ff978db7 Set indent for NXML.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 521
diff changeset
  2747
(setq nxml-child-indent 2)
14a5ff978db7 Set indent for NXML.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 521
diff changeset
  2748
(setq nxml-attribute-indent 4)
104
e921a5d906ca Use highlighting on sgml modes!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 102
diff changeset
  2749
997
28255ceefe52 Use .pom files as XML files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 993
diff changeset
  2750
(add-to-list 'auto-mode-alist '("\.pom\\'" . nxml-mode))
1033
970347ad41f8 Associate .xsd/.rng files with nxml-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1032
diff changeset
  2751
(add-to-list 'auto-mode-alist '("\.xsd\\'" . nxml-mode))
970347ad41f8 Associate .xsd/.rng files with nxml-mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1032
diff changeset
  2752
(add-to-list 'auto-mode-alist '("\.rng\\'" . nxml-mode))
1156
736410a49d60 Use NXML for .xul files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1155
diff changeset
  2753
(add-to-list 'auto-mode-alist '("\.xul\\'" . nxml-mode))
997
28255ceefe52 Use .pom files as XML files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 993
diff changeset
  2754
994
4bc77d7283ea Fix: File mode specification error: (error "The mode `nXML' does not support Imenu").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 993
diff changeset
  2755
(eval-after-load 'nxml-mode '(define-key nxml-mode-map [C-return] 'nxml-complete))
4bc77d7283ea Fix: File mode specification error: (error "The mode `nXML' does not support Imenu").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 993
diff changeset
  2756
998
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 995 997
diff changeset
  2757
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 995 997
diff changeset
  2758
(message "relax ng, rng")
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 995 997
diff changeset
  2759
994
4bc77d7283ea Fix: File mode specification error: (error "The mode `nXML' does not support Imenu").
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 993
diff changeset
  2760
(eval-after-load 'rng-loc '(add-to-list 'rng-schema-locating-files "~/.emacs.d/rnc/schemas.xml"))
617
5e34660f1a23 Add path to local rnc schemas.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 616
diff changeset
  2761
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2762
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1026
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2763
(message "web-mode")
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2764
1067
493ae377ca5d Set web-mode offsets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1064
diff changeset
  2765
(setq web-mode-markup-indent-offset 2
493ae377ca5d Set web-mode offsets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1064
diff changeset
  2766
      web-mode-css-indent-offset 2
1074
fffe729d20a0 Update web-mode setting to new version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1073
diff changeset
  2767
      web-mode-code-indent-offset 2
fffe729d20a0 Update web-mode setting to new version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1073
diff changeset
  2768
      web-mode-script-padding 2
fffe729d20a0 Update web-mode setting to new version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1073
diff changeset
  2769
      web-mode-style-padding 2)
fffe729d20a0 Update web-mode setting to new version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1073
diff changeset
  2770
fffe729d20a0 Update web-mode setting to new version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1073
diff changeset
  2771
(setq web-mode-enable-comment-keywords t)
1067
493ae377ca5d Set web-mode offsets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1064
diff changeset
  2772
1026
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2773
(ignore-errors (require 'web-mode))
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2774
(when (featurep 'web-mode)
1128
33ab3ce7f973 Use original values of web-mode-engine-file-regexps. Enable PHP mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1127
diff changeset
  2775
  (setq web-mode-engine-file-regexps (delq (assoc "jsp" web-mode-engine-file-regexps) web-mode-engine-file-regexps))
33ab3ce7f973 Use original values of web-mode-engine-file-regexps. Enable PHP mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1127
diff changeset
  2776
  (mapc (lambda (i) (add-to-list 'web-mode-engine-file-regexps i))
33ab3ce7f973 Use original values of web-mode-engine-file-regexps. Enable PHP mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1127
diff changeset
  2777
          '(("jsp" . "\\.tagf?\\'")
33ab3ce7f973 Use original values of web-mode-engine-file-regexps. Enable PHP mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1127
diff changeset
  2778
            ("jsp" . "\\.jspf?\\'")))
1026
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2779
  (add-to-list 'auto-mode-alist '("\\.phtml\\'" . web-mode))
1130
4aea0ddc3607 Use web-mode for PHP.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1125
diff changeset
  2780
  (add-to-list 'auto-mode-alist '("\\.php\\'" . web-mode))
1027
53633ac1c134 Fix pattern for '.jspf' files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1026
diff changeset
  2781
  (add-to-list 'auto-mode-alist '("\\.jspf?\\'" . web-mode))
1028
939bec5b98f8 Add JSP tag file to web-modes.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1027
diff changeset
  2782
  (add-to-list 'auto-mode-alist '("/WEB-INF/tags/.*\\.tagf?\\'" . web-mode))
1026
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2783
  (add-to-list 'auto-mode-alist '("\\.as[cp]x\\'" . web-mode))
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2784
  (add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode))
1128
33ab3ce7f973 Use original values of web-mode-engine-file-regexps. Enable PHP mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1127
diff changeset
  2785
  (add-to-list 'auto-mode-alist '("\\.php\\'" . web-mode))
1026
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2786
  (add-to-list 'auto-mode-alist '("\\.mustache\\'" . web-mode))
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2787
  (add-to-list 'auto-mode-alist '("\\.djhtml\\'" . web-mode))
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2788
  (add-to-list 'auto-mode-alist '("\\.html?\\'" . web-mode)) )
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2789
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2790
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2791
(message "psgml")
296
e502c69ab80a Make header name like tags, separated by comma and ended on period.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 295
diff changeset
  2792
698
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2793
(setq my-html-template
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2794
      '("html"
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2795
        (nil
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2796
         "\n<head>" \n
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2797
         "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=" (read-input "Charset: ") "\">" \n
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2798
         "<title>" (setq str (read-input "Title: ")) "</title>\n"
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2799
         "</head>\n"
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2800
         "<body>\n<h1>" str "</h1>"
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2801
         "\n<address>" \n
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2802
         "<a href=\"mailto:" user-mail-address "\">" (user-full-name) "</a>" \n
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2803
         "</address>" \n
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2804
         "</body>\n"
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2805
         ))
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2806
      )
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2807
245
77389965f6bb TABs removed.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 244
diff changeset
  2808
(setq sgml-set-face t)                  ; for highlighting in sgml
670
d10f2e70ff5e Redefine action to put 'html' tag in sgml-mode (more pretty look).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 669
diff changeset
  2809
(eval-after-load 'sgml-mode
d10f2e70ff5e Redefine action to put 'html' tag in sgml-mode (more pretty look).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 669
diff changeset
  2810
  '(progn
698
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2811
     (unless (featurep 'psgml)
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2812
       (setq html-tag-alist
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2813
             (cons
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2814
              my-html-template
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2815
              (my-filter
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2816
               (lambda (item) (not (equal (car item) "html")))
2a081d4e2e7c FIX: 'html-tag-alist' is not defined in 'psgml' mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 691
diff changeset
  2817
               html-tag-alist)))
753
732e4cefb33b Add completion for 'script' and 'style' tags in html from sgml mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 748
diff changeset
  2818
       (add-to-list 'html-tag-alist '("script" (\n) ("type" "text/javascript") ))
732e4cefb33b Add completion for 'script' and 'style' tags in html from sgml mode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 748
diff changeset
  2819
       (add-to-list 'html-tag-alist '("style" (\n) ("type" "text/css") ))
975
75ac0063fd22 Fix indenting.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 974
diff changeset
  2820
       )))
104
e921a5d906ca Use highlighting on sgml modes!
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 102
diff changeset
  2821
985
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2822
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2823
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2824
(message "jsp")
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2825
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2826
(define-derived-mode jsp-mode html-mode "JSP"
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2827
  "JSP editing mode. Redefine HTML comment syntax to JSP."
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2828
  (setq comment-start "<%--")
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2829
  (setq comment-end "--%>")
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2830
  (setq comment-start-skip "<[!%]--[ \t]*")
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2831
  (setq comment-end-skip "[ \t]*--[% \t\n]*>")
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2832
  (setq jsp-font-lock-syntactic-keywords
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2833
        '(("\\(<\\)%--" (1 "< b"))
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2834
          ("--%\\(>\\)" (1 "> b"))))
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2835
  (setcdr (assoc 'font-lock-syntactic-keywords font-lock-defaults) 'jsp-font-lock-syntactic-keywords) )
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2836
1026
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2837
(unless (featurep 'web-mode)
ce279dbcf880 Use 'web-mode' if available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1025
diff changeset
  2838
  (add-to-list 'auto-mode-alist '("\\.jspf?\\'" . jsp-mode)))
985
ad3c49e55848 Define own jsp-mode based on html-mode with JSP comment style.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 984
diff changeset
  2839
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2840
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2841
(message "sh, bash")
438
740efbdc5777 Associate shell-script-mode for .cygport files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 437
diff changeset
  2842
740efbdc5777 Associate shell-script-mode for .cygport files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 437
diff changeset
  2843
(add-to-list 'auto-mode-alist '("\\.cygport\\'" . shell-script-mode))
740efbdc5777 Associate shell-script-mode for .cygport files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 437
diff changeset
  2844
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2845
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
870
faf5e15495dc Add Proof General settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 869
diff changeset
  2846
(message "pg, Proof General")
faf5e15495dc Add Proof General settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 869
diff changeset
  2847
875
ad6675a2cc8e Disable shown consts in *goal* buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 874
diff changeset
  2848
(setq proof-splash-enable nil)
870
faf5e15495dc Add Proof General settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 869
diff changeset
  2849
;; (setq proof-toolbar-enable nil)
faf5e15495dc Add Proof General settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 869
diff changeset
  2850
875
ad6675a2cc8e Disable shown consts in *goal* buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 874
diff changeset
  2851
(setq
ad6675a2cc8e Disable shown consts in *goal* buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 874
diff changeset
  2852
 isar-display:show-types t
ad6675a2cc8e Disable shown consts in *goal* buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 874
diff changeset
  2853
 isar-display:show-sorts t
ad6675a2cc8e Disable shown consts in *goal* buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 874
diff changeset
  2854
 isar-display:show-main-goal t
ad6675a2cc8e Disable shown consts in *goal* buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 874
diff changeset
  2855
 isar-display:show-brackets t
ad6675a2cc8e Disable shown consts in *goal* buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 874
diff changeset
  2856
 ;; Too many output, so commented:
ad6675a2cc8e Disable shown consts in *goal* buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 874
diff changeset
  2857
 ;; isar-display:show-consts t
ad6675a2cc8e Disable shown consts in *goal* buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 874
diff changeset
  2858
 )
871
209250a782ff Set isar-display:show-types and isar-display:show-brackets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 870
diff changeset
  2859
870
faf5e15495dc Add Proof General settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 869
diff changeset
  2860
(eval-after-load 'proof
faf5e15495dc Add Proof General settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 869
diff changeset
  2861
  '(progn
871
209250a782ff Set isar-display:show-types and isar-display:show-brackets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 870
diff changeset
  2862
     ;; (proof-maths-menu-toggle 1)
209250a782ff Set isar-display:show-types and isar-display:show-brackets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 870
diff changeset
  2863
     ;; (unicode-tokens-mode 1)
209250a782ff Set isar-display:show-types and isar-display:show-brackets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 870
diff changeset
  2864
     ;; (proof-imenu-toggle 1)
870
faf5e15495dc Add Proof General settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 869
diff changeset
  2865
     ))
872
aa382d4f09f5 Define key binding 'proof-goto-point' for .thy file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 871
diff changeset
  2866
(eval-after-load 'isar
aa382d4f09f5 Define key binding 'proof-goto-point' for .thy file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 871
diff changeset
  2867
  '(progn
aa382d4f09f5 Define key binding 'proof-goto-point' for .thy file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 871
diff changeset
  2868
     (define-key isar-mode-map (kbd "C-c C-m") 'proof-goto-point)
aa382d4f09f5 Define key binding 'proof-goto-point' for .thy file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 871
diff changeset
  2869
     ))
870
faf5e15495dc Add Proof General settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 869
diff changeset
  2870
faf5e15495dc Add Proof General settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 869
diff changeset
  2871
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2872
(message "printing")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2873
881
10910d09430c Set ps-paper-type.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 880
diff changeset
  2874
(setq ps-paper-type 'a4)
10910d09430c Set ps-paper-type.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 880
diff changeset
  2875
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2876
;; Use Notepad to print plain text files to the default Windows printer
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2877
;(setq lpr-command "notepad")
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2878
;(setq lpr-headers-switches '("/p"))    ; \ mis-use these
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2879
;(setq lpr-switches nil)                ; / two variables
9
96e0cbcd92ab Untabify.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 8
diff changeset
  2880
;(setq printer-name nil)        ; notepad takes the default
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2881
;(setq lpr-printer-switch "/P") ;; run notepad as batch printer
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2882
;;
295
5be44cff4683 Use utf-8 encoding.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 289
diff changeset
  2883
461
1639d2540bbd Set outline-minor for file. Fix section to feet header outline pattern.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 460
diff changeset
  2884
;; Printing to file.
295
5be44cff4683 Use utf-8 encoding.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 289
diff changeset
  2885
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2886
;(setq printer-name "~/myprint.txt")
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2887
;(setq ps-printer-name nil)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2888
;(setq ps-print-header nil)
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2889
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2890
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2891
(message "SQL")
102
25585e240b4a Move customization from .emacs (custom-set-variables) to .emacs-my. Remove duplication.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 101
diff changeset
  2892
25585e240b4a Move customization from .emacs (custom-set-variables) to .emacs-my. Remove duplication.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 101
diff changeset
  2893
(setq sql-password "")
1051
1248821d9d0b Add plsql file extension to auto-mode-alist.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1050
diff changeset
  2894
(add-to-list 'auto-mode-alist '("\\.plsql\\'" . sql-mode))
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2895
1110
6b18658edec8 Disable placeholders substitution in Oracle SQLi by Emacs itself.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  2896
;; Disable placeholders substitution in Oracle SQLi by Emacs itself.
6b18658edec8 Disable placeholders substitution in Oracle SQLi by Emacs itself.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  2897
;; This enable "define" and "&var" syntax.
6b18658edec8 Disable placeholders substitution in Oracle SQLi by Emacs itself.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  2898
(setq sql-oracle-scan-on nil)
6b18658edec8 Disable placeholders substitution in Oracle SQLi by Emacs itself.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1107
diff changeset
  2899
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2900
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2901
(message "backuping")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2902
75
cd964a1d58b9 Use backup for files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 74
diff changeset
  2903
(setq
328
c770f75a351f Set make-backup-files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 327
diff changeset
  2904
 make-backup-files t
374
e64e256d2772 Update comment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 373
diff changeset
  2905
 ;; In other case (by renaming) you loose original file creation date.
e64e256d2772 Update comment.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 373
diff changeset
  2906
 backup-by-copying t
75
cd964a1d58b9 Use backup for files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 74
diff changeset
  2907
 backup-directory-alist '(("." . "~/.backup")) ; don't litter my fs tree
82
1a705650ca56 Delete excess backup versions silently, else it prompt to delete ~/.recentf.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 81
diff changeset
  2908
 delete-old-versions t                         ; delete excess backup versions silently
75
cd964a1d58b9 Use backup for files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 74
diff changeset
  2909
 kept-old-versions 1                           ; store first original version
cd964a1d58b9 Use backup for files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 74
diff changeset
  2910
 kept-new-versions 3                           ; store last 3 version
cd964a1d58b9 Use backup for files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 74
diff changeset
  2911
 version-control t)                            ; use versioned backups
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2912
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2913
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2914
(message "auto save")
150
8716dde9dd03 Enable autosave.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 149
diff changeset
  2915
8716dde9dd03 Enable autosave.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 149
diff changeset
  2916
(setq auto-save-default t)
8716dde9dd03 Enable autosave.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 149
diff changeset
  2917
;; If nil autosave to different than original to buffer file.
8716dde9dd03 Enable autosave.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 149
diff changeset
  2918
(setq auto-save-visited-file-name nil)
653
76d35d1516dc Make auto-save-interval lager.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 652
diff changeset
  2919
(setq auto-save-interval 300)
150
8716dde9dd03 Enable autosave.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 149
diff changeset
  2920
;; Note: if you kill unsaved file auto save file not deleted.
8716dde9dd03 Enable autosave.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 149
diff changeset
  2921
(setq delete-auto-save-files t)
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2922
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2923
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
657
e8416d2b2f6a Use c++-mode for JS files because of single char comment highlight but when
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 656
diff changeset
  2924
;; Save and restore my buffers every time.
766
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
  2925
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
  2926
(setq desktop-base-file-name ".emacs.desktop")
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
  2927
(setq desktop-base-lock-name ".emacs.desktop.lock")
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
  2928
(when (eq system-type 'cygwin)
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
  2929
  (setq desktop-base-file-name ".emacs.desktop-cygwin")
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
  2930
  (setq desktop-base-lock-name ".emacs.desktop-cygwin.lock")
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
  2931
  )
31b6b63917df Use different 'recentf' and 'desktop' files and do not enable
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 764
diff changeset
  2932
657
e8416d2b2f6a Use c++-mode for JS files because of single char comment highlight but when
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 656
diff changeset
  2933
(when (>= emacs-major-version 22)
e8416d2b2f6a Use c++-mode for JS files because of single char comment highlight but when
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 656
diff changeset
  2934
  (desktop-save-mode 1)
914
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2935
  (setq
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2936
   desktop-globals-to-save
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2937
   (append
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2938
    '((file-name-history . 100)
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2939
      (compile-history . 100)
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2940
      (command-history . 100)
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2941
      (extended-command-history . 100)
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2942
      (shell-command-history . 100)
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2943
      (query-replace-history . 100)
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2944
      (regexp-history . 100)
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2945
      (grep-history . 100)
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2946
      (minibuffer-history . 100))
0eccf022ee90 Fix: Symbol's value as variable is void: desktop-globals-to-save
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 913
diff changeset
  2947
    desktop-globals-to-save))
657
e8416d2b2f6a Use c++-mode for JS files because of single char comment highlight but when
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 656
diff changeset
  2948
  )
e8416d2b2f6a Use c++-mode for JS files because of single char comment highlight but when
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 656
diff changeset
  2949
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2950
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
545
24992bae7599 Use 'message' instead of comment to easy debug where error occurred.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 544
diff changeset
  2951
(message "User welcome msg")
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2952
250
ef1c7269280f Show different messages on statup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 249
diff changeset
  2953
(add-hook 'emacs-startup-hook
ef1c7269280f Show different messages on statup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 249
diff changeset
  2954
          (lambda ()
ef1c7269280f Show different messages on statup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 249
diff changeset
  2955
            (let ( (mgs-list '("Welcome to emacs, the thermonuclear editor."
ef1c7269280f Show different messages on statup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 249
diff changeset
  2956
                               "You enter to Out Space. Emacs on."
ef1c7269280f Show different messages on statup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 249
diff changeset
  2957
                               "Nice day for Emacsing!")) )
ef1c7269280f Show different messages on statup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 249
diff changeset
  2958
              (message (nth (random (length mgs-list)) mgs-list)))))
0
aef1d0017234 Initial commit.
Oleksander Gavenko <gavenko_a@3g.ua>
parents:
diff changeset
  2959
548
1bfa0cf51c9c Set *Messages* buffer 'default-directory' to $HOME.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 547
diff changeset
  2960
(switch-to-buffer "*Messages*")
1bfa0cf51c9c Set *Messages* buffer 'default-directory' to $HOME.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 547
diff changeset
  2961
(setq default-directory "~/")
546
083974006b4a 'default-directory' for '*scratch*' buffer. This allow 'eval-buffer' on '.emacs-my'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 545
diff changeset
  2962
(switch-to-buffer "*scratch*")
083974006b4a 'default-directory' for '*scratch*' buffer. This allow 'eval-buffer' on '.emacs-my'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 545
diff changeset
  2963
(setq default-directory "~/")
083974006b4a 'default-directory' for '*scratch*' buffer. This allow 'eval-buffer' on '.emacs-my'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 545
diff changeset
  2964
461
1639d2540bbd Set outline-minor for file. Fix section to feet header outline pattern.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 460
diff changeset
  2965
;;; End loading...
718
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2966
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2967
;; Local variables:
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2968
;; mode: outline-minor
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2969
;; outline-regexp: "(message \""
19ab21ec7640 Define own outline-regex to easy view file structure.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 717
diff changeset
  2970
;; End: