Make possible to move through English word pronunciation with single forward-word.
;; -*- mode: emacs-lisp; coding: utf-8; fill-column: 78 -*-
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(iswitchb-mode 1)
(setq iswitchb-regexp t)
(setq iswitchb-use-virtual-buffers t)
(setq iswitchb-buffer-ignore
'("^ "
"^\\*Buffer"
"^\\*Completions\\*"
"^\\*tramp"
"^\\*Dired log\\*"
"^\\*Quail Completions\\*"
"^\\*Disabled Command\\*"
"^TAGS"
))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(require 'ffap)
(ffap-bindings)
;; I usually mistype "C-x C-f" to "C-x d" or "C-x C-d", so always use find-file,
;; because when file if directory find-file load dired, if regular file open it.
(global-set-key (kbd "C-x C-f") 'find-file-at-point)
(global-set-key (kbd "C-x C-d") 'find-file-at-point)
(global-set-key (kbd "C-x d") 'find-file-at-point)
;; Stop 'ffap' in Dired as its suggestion is inconvenient.
(define-key dired-mode-map (kbd "C-x C-f") 'find-file)
(define-key dired-mode-map (kbd "C-x C-d") 'find-file)
(define-key dired-mode-map (kbd "C-x d") 'find-file)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(mapc (lambda (ext) (add-to-list 'completion-ignored-extensions ext))
'(
".class" "~" ".aux"
".o" ".obj" ".map" ".lib" ".lo" ".la" ".a" ".bin" ".exe"
;; Place dir at end to appear at the start of completion-ignored-extensions.
"CVS/" ".hg/" ".svn/" ".git/" ".bzr/"
) )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun my-find-subdirs (dir)
(if (file-directory-p dir)
(cons dir (apply 'append (mapcar 'my-find-subdirs (directory-files dir t "^[^.]")) ) )
))
(defun my-add-subdirs-to-load-path (dir)
(mapc
(lambda (d)
(add-to-list 'load-path d t)
(message "Load-path updated with: %s" d)
)
(my-find-subdirs dir)) )
(my-add-subdirs-to-load-path my-usr-lisp-dir)
(my-add-subdirs-to-load-path my-lisp-dir)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(add-hook 'comint-output-filter-functions 'comint-strip-ctrl-m)
(add-hook 'comint-mode-hook 'ansi-color-for-comint-mode-on)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; For Cygwin.
(add-hook 'comint-output-filter-functions 'comint-strip-ctrl-m)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "TODO, XXX, FIXME highlight")
(defface my-contrasty-face
'((t :background "pink" :foreground "red" :weight bold))
"Font for showing conflicts."
:group 'basic-faces)
(dolist (mode (append my-devel-mode-list my-text-mode-list))
(font-lock-add-keywords
mode
`(
;; 64 times, for highlight C-u C-u C-u <key>
("\\([^[:space:]]\\)\\1\\{63\\}" 0 'my-contrasty-face t) )) )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Make mouse clicks work in xterm (and iTerm).
(when (not (window-system))
(xterm-mouse-mode +1))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "org-mode, GTD, PIM, organize, todo")
(when (>= emacs-major-version 22)
(require 'org))
(when (or (featurep 'org) (featurep 'org-install))
(message "Many lines here..."))
(cond
((featurep 'org-capture)
(setq org-default-notes-file my-org-agenda-todo-file)
(setq org-capture-templates
'(("t" "Todo" entry (file my-org-agenda-todo-file) "* %?\n SCHEDULED: %T")))
(define-key global-map "\C-vr"
(lambda () (interactive) (org-capture nil "t")))
)
((or (featurep 'remember) (fboundp 'remember))
(setq remember-annotation-functions '(org-remember-annotation))
(setq remember-handler-functions '(org-remember-handler))
(add-hook 'remember-mode-hook 'org-remember-apply-template)
(define-key global-map "\C-vr" 'org-remember)
(setq org-remember-templates
;; With one item org-mode do not prompt choose template.
`(
("todo" ?t "* TODO %?" ,my-org-agenda-todo-file)
;; ("note" ?n "* %?\n" ,my-org-agenda-note-file)
))
(setq org-remember-store-without-prompt t)
(org-remember-insinuate)
))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "highlight selected text")
(cond
((= emacs-major-version 21) (pc-selection-mode))
((>= emacs-major-version 22) (pc-selection-mode 1)) )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "keyboard, mouse")
(setq my-russian-input-method 'russian-computer)
(setq my-ukranian-input-method 'ukrainian-computer)
(setq my-ipa-input-method 'ipa-x-sampa)
(when (<= emacs-major-version 21)
(setq my-russian-input-method 'cyrillic-jcuken)
(setq my-ukranian-input-method 'cyrillic-jcuken))
(setq default-input-method my-russian-input-method)
(defun my-toggle-input-method (&optional arg)
(interactive "P")
(if (numberp arg)
(cond
((eq arg 1)
(activate-input-method nil))
((eq arg 2)
(activate-input-method 'my-russian-input-method))
((eq arg 3)
(activate-input-method 'my-ukranian-input-method))
((eq arg 4)
(activate-input-method 'greek))
((eq arg 5)
(activate-input-method 'my-ipa-input-method))
((eq arg 6)
(activate-input-method 'TeX)) )
(toggle-input-method arg)) )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "dired")
(when (>= emacs-major-version 22)
;; Enable 'a' command.
(put 'dired-find-alternate-file 'disabled nil)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "devel, programming")
(when (>= emacs-major-version 22)
(add-to-list 'magic-mode-alist '(my--c++-header-file-p . c++-mode))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "desktop")
(when (>= emacs-major-version 22)
(require 'desktop)
(add-to-list 'desktop-path desktop-dirname)
(setq desktop-restore-frames nil)
(desktop-save-mode 1)
(setq
desktop-globals-to-save
(append
'((file-name-history . 100)
(compile-history . 100)
(command-history . 100)
(extended-command-history . 100)
(shell-command-history . 100)
(search-ring . 20)
(query-replace-history . 100)
(regexp-history . 100)
(grep-history . 100)
(minibuffer-history . 100)
tags-file-name
register-alist)
desktop-globals-to-save))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "coding system, charset, locale, lang")
;; Emacs 23.1 no longer need codepage-setup.
(when (<= emacs-major-version 22)
(codepage-setup 866)
(codepage-setup 1251)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "jdone")
(ignore-errors
(require 'jdone)
(jdone-setup-key-binding)
(jdone-integrate-hook)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "yasnippet")
(setq my-yas-root-directory "~/.emacs.d/my-yas")
(setq yas/ignore-filenames-as-triggers t)
;; (my--eval-after-load yasnippet
;; (cond
;; ((listp yas/root-directory) (add-to-list 'yas/root-directory my-yas-root-directory))
;; ((stringp yas/root-directory) (setq yas/root-directory (list my-yas-root-directory yas/root-directory)))
;; (t (error "I expect that yas/root-directory is a list of string")) )
;; (mapc 'yas/load-directory yas/root-directory))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "ECB")
(setq ecb-tip-of-the-day nil)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "vc-mode, VCS, version control, cvs, svn, mercurial, hg, bazaar, bzr, git, fossil")
(when (equal window-system 'w32)
(modify-coding-system-alist 'process "cvs" '(cp1251-dos . cp1251-dos))
(modify-coding-system-alist 'process "svn" '(cp1251 . cp1251))
(setq vc-svn-checkin-switches '("--encoding" "UTF-8"))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "fortune")
(setq fortune-file "~/XXX")
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "bbdb")
(eval-when 'compile (require 'bbdb nil t))
(setq
bbdb-offer-save 1
bbdb-use-pop-up t
bbdb-electric-p t
bbdb-popup-target-lines 1
)
(setq bbdb-complete-name-full-completion t)
(setq bbdb-completion-type 'primary-or-name)
(setq bbdb-complete-name-allow-cycling t)
(setq bbdb-file "~/.gnus/bbdb")
;; (bbdb-initialize 'gnus 'message)
;; (bbdb-insinuate-message)
;; (add-hook 'gnus-startup-hook 'bbdb-insinuate-gnus)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "rcirc")
(eval-when 'compile (require 'rcirc))
;; Turn on logging everything to a special buffer, for debugging.
;; (setq rcirc-debug-flag t)
(add-hook 'rcirc-mode-hook (lambda () (rcirc-track-minor-mode 1)))
(setq rcirc-time-format "%H:%M ")
(defun rcirc-handler-301 (process cmd sender args)
"/away message handler.")
(setq rcirc-default-server "irc.freenode.net")
(setq rcirc-default-port 6667)
(setq rcirc-default-nick user-nick)
(setq rcirc-default-user-full-name user-full-name)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "psvn")
(setq svn-status-verbose t)
(setq svn-status-hide-unmodified t)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "DVC")
(when (featurep 'dvc-emacs)
(setq dvc-tips-enabled nil)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(setq smtpmail-smtp-server "192.168.0.xxx")
(setq smtpmail-smtp-service "25")