Autres
AideEnLigne
CahierDeBrouillon
Présentation
Administration

MesLectures
[Journal d'Ophelia]
[Blog Larnac]
[Traitement texte en ligne]
[Kim Khal]

Informations
[Rue 89]
[Tele libre]

DNS etc
[Robtex]
Logins
Votre ID: 111
Nom:
Login utilisateur
Mot de passe éditeur

MonEmacs

Mes ajouts dans le fichier .emacs

Ce que je rajoute souvent dans mon fichier .emacs. Comme je me connecte avec une console vt100, il ya quelques problèmes. Pour éviter de lancer sous X-Window, j'utilise la commande emacs -nw. Voir aussi la page CVSViteFait sur ce site pour les commandes spécifiques Emacs/CVS..

Pour Emacs et GIT, voir le lien suivant : http://alexott.net/en/writings/emacs-vcs/EmacsGit.html qui fait une comparaison entre les différents modules git pour Emacs.

;; fix backspace deletes backward

 (define-key global-map "\C-h" 'backward-delete-char)

;; turn on font-lock mode

 (global-font-lock-mode t)

;;Caracteres francais accentues

 (setq-default iso-accents-mode t)

;; Abbrev-mode configuration

 ;;(quietly-read-abbrev-file)  ;; read on startup
 ;;(setq abbrev-file-name       ;; where to read abbrevs
 ;; "~/.abbrev_defs")
 ;;(setq save-abbrevs t)        ;; auto-save on quit
 ;;(setq abbrev-mode 1)         ;; abbrev mode on

;; Copy line

 (defun copy-line (n)
   "Copy N lines at point to the kill-ring."
   (interactive "p")
   (kill-ring-save (line-beginning-position) (line-beginning-position (1+ n))))

 (global-set-key "\C-ck" 'copy-line)

;; Goto line

 (global-set-key "\C-cg" 'goto-line)

;; provides goal column availibility

 (put 'set-goal-column 'disabled nil)

;; preserve hard linked files

 (setq backup-by-copying-when-linked t)

;; run Perl from Emacs (select region then type M-C-p)

 (defun perl-eval (beg end)
   "Run selected region as Perl code"
   (interactive "r")
   (shell-command-on-region beg end "perl")
 )
 (global-set-key "\M-\C-p" 'perl-eval)

;; editer ds fichiers en utf-16

;; 1- Detect endianness of UTF-16 containing a Byte Order Mark U+FEFF

 (add-to-list 'auto-coding-regexp-alist '("^\xFF\xFE" . utf-16-le) t)
 (add-to-list 'auto-coding-regexp-alist '("^\xFE\xFF" . utf-16-be) t)

;; 2- adds a BOM U+FEFF at the begining of the file before saving

 (defun utf-16-le-pre-write-conversion
   (start end) nil)
 (defun utf-16-be-pre-write-conversion
   (start end) nil)

;; Marquer les fichiers en utf8 ou utf16

;;la première ligne du fichier doit comporter (mettre en commentaire selon la nature du fichier)

  *-* coding: utf-16-le *-* 

;; desktop save line number for each file

 (setq desktop-enable t)
 (desktop-load-default)
 (desktop-read)

;; emacs and UTF16. Add the following in .emacs

;; Detect endianness of UTF-16 containing a Byte Order Mark U+FEFF

 (add-to-list 'auto-coding-regexp-alist '("^\xFF\xFE" . utf-16-le) t)
 (add-to-list 'auto-coding-regexp-alist '("^\xFE\xFF" . utf-16-be) t)

;; Add missing support functions

 (defun utf-16-le-pre-write-conversion (start end) nil)
 (defun utf-16-be-pre-write-conversion (start end) nil)

Ruby mode ( http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/misc/ ).

Install the module ruby.el and stuff this in .emacs

 (add-to-list 'auto-mode-alist '("\\.rb\\'" . ruby-mode))
 (autoload 'ruby-mode "ruby-mode" "Ruby mode" t) 

;; Insert date string (a la time-stamp)

 (defun insert-date-string ()
   (interactive)
   (insert "<" (format-time-string "%Y-%m-%d %H:%M:%S" ) " "user-login-name ">"
           ))
 (global-set-key "\C-c\C-d" 'insert-date-string)

;; activer le mode cperl

;; Pour plus d'infos, différence entre perl-mode et c-perl-mode voir la http://ergoemacs.org/emacs/emacs_perl_vs_cperl_mode.html

 (defalias 'perl-mode 'cperl-mode)
 (add-to-list 'auto-mode-alist '("\\.\\([pP][Llm]\\|al\\)\\'" . cperl-mode))

;; ensuite, pour ameliorer l'indentation (cas de fonction de fonction, etc...)

 M-x customize-option
 Customize variable: cperl-indent-parens-as-block
 placer à "on" et sauvegarder 
 NB ou placer ca dans le .emacs ?

Autres trucs (mais pas dans .emacs)

;;Rester sur la même colonne en parcourant un fichier. Se positionner sur la colonne choisie, puis taper

 C-x C-n

;;Garder en ligne 1 une copie de la ligne courante (ex garder en ligne 1 les

;;legendes d'un tableau). taper M:, ce qui positionne dans le

;;minibuffer pour un eval. Taper ensuite la fonction ci-dessous

 M-:
 (setq header-line-format (buffer-substring 1 (line-end-position (goto-char 1))))

;;pour placer la commande ci-dessus dans le .emacs, c'est plus compliqué.

;; Voir alors le thread

 http://groups.google.fr/group/gnu.emacs.help/browse_frm/thread/77dc549480d95f92?hl=fr

;;Afficher les numéros de lignes sur la gauche avec l'utilisation du module linum

Inferior Elisp Mode
buffer interactif pour evaluer des expressions Elisp (REPL)

 M-x ielm 

Ido mode
modifie et rend plus simple les commandes C-x b (switch to buffer) , C-x f (find file), etc..

 M-x ido-mode  

;;Quick calculator

 C-x * q

;;Calculer une expression elisp et insérer le code dans le buffer courant

 C-u C-x C-e