C'est Kaspar (comprennent ceux qui le connaissent) qui m'a initié, en 1998, à cet éditeur irremplaçable, lorsque eclipse, quanta, nvu ou autre éditeur graphique ne suffit plus et en évitant le rupestre vim
Utile pour recharger un programme édité ailleurs (si on bosse avec plusieurs éditeurs simultanément sur un même fichier:
M-x revert-buffer (if you want you can bind it to a key), or use a more practice trick: use C-x C-v RET.
SOURCE: http://www.cs.rutgers.edu/LCSR-Computing/some-docs/emacs-chart.html
Emacs command summary, Thu Jul 25.
C-SP set-mark-command C-q quoted-insert
C-a beginning-of-line C-r isearch-backward
C-b backward-char C-s isearch-forward
C-c exit-recursive-edit C-t transpose-chars
C-d delete-char C-u universal-argument
C-e end-of-line C-v scroll-up
C-f forward-char C-w kill-region
C-h help-command C-x Control-X-prefix
TAB indent-for-tab-command C-y yank
LFD newline-and-indent C-z suspend-emacs
C-k kill-line ESC ESC-prefix
C-l recenter C-] abort-recursive-edit
RET newline C-_ undo
C-n next-line SPC .. ~ self-insert-command
C-o open-line DEL delete-backward-char
C-p previous-line
C-h v describe-variable C-h d describe-function
C-h w where-is C-h k describe-key
C-h t help-with-tutorial C-h c describe-key-briefly
C-h s describe-syntax C-h b describe-bindings
C-h n view-emacs-news C-h a command-apropos
C-h C-n view-emacs-news C-h C-d describe-distribution
C-h m describe-mode C-h C-c describe-copying
C-h l view-lossage C-h ? help-for-help
C-h i info C-h C-h help-for-help
C-h f describe-function
C-x C-a add-mode-abbrev C-x 5 split-window-horizontally
C-x C-b list-buffers C-x ; set-comment-column
C-x C-c save-buffers-kill-emacs C-x < scroll-left
C-x C-d list-directory C-x = what-cursor-position
C-x C-e eval-last-sexp C-x > scroll-right
C-x C-f find-file C-x [ backward-page
C-x C-h inverse-add-mode-abbrev C-x ] forward-page
C-x TAB indent-rigidly C-x ^ enlarge-window
C-x C-l downcase-region C-x ` next-error
C-x C-n set-goal-column C-x a append-to-buffer
C-x C-o delete-blank-lines C-x b switch-to-buffer
C-x C-p mark-page C-x d dired
C-x C-q toggle-read-only C-x e call-last-kbd-macro
C-x C-r find-file-read-only C-x f set-fill-column
C-x C-s save-buffer C-x g insert-register
C-x C-t transpose-lines C-x h mark-whole-buffer
C-x C-u upcase-region C-x i insert-file
C-x C-v find-alternate-file C-x j register-to-dot
C-x C-w write-file C-x k kill-buffer
C-x C-x exchange-dot-and-mark C-x l count-lines-page
C-x C-z suspend-emacs C-x m mail
C-x ESC repeat-complex-command C-x n narrow-to-region
C-x $ set-selective-display C-x o other-window
C-x ( start-kbd-macro C-x p narrow-to-page
C-x ) end-kbd-macro C-x q kbd-macro-query
C-x + add-global-abbrev C-x r copy-rectangle-to-register
C-x - inverse-add-global-abbrev C-x s save-some-buffers
C-x . set-fill-prefix C-x u advertised-undo
C-x / dot-to-register C-x w widen
C-x 0 delete-window C-x x copy-to-register
C-x 1 delete-other-windows C-x { shrink-window-horizontally
C-x 2 split-window-vertically C-x } enlarge-window-horizontally
C-x 4 ctl-x-4-prefix C-x DEL backward-kill-sentence
ESC C-SP mark-sexp ESC = count-lines-region
ESC C-a beginning-of-defun ESC > end-of-buffer
ESC C-b backward-sexp ESC @ mark-word
ESC C-c exit-recursive-edit ESC O ??
ESC C-d down-list ESC [ backward-paragraph
ESC C-e end-of-defun ESC \ delete-horizontal-space
ESC C-f forward-sexp ESC ] forward-paragraph
ESC C-h mark-defun ESC ^ delete-indentation
ESC LFD indent-new-comment-line ESC a backward-sentence
ESC C-k kill-sexp ESC b backward-word
ESC C-n forward-list ESC c capitalize-word
ESC C-o split-line ESC d kill-word
ESC C-p backward-list ESC e forward-sentence
ESC C-s isearch-forward-regexp ESC f forward-word
ESC C-t transpose-sexps ESC g fill-region
ESC C-u backward-up-list ESC h mark-paragraph
ESC C-v scroll-other-window ESC i tab-to-tab-stop
ESC C-w append-next-kill ESC j indent-new-comment-line
ESC ESC ?? ESC k kill-sentence
ESC C-\ indent-region ESC l downcase-word
ESC SPC just-one-space ESC m back-to-indentation
ESC ! shell-command ESC q fill-paragraph
ESC $ spell-word ESC r move-to-window-line
ESC % query-replace ESC t transpose-words
ESC ' abbrev-prefix-mark ESC u upcase-word
ESC ( insert-parentheses ESC v scroll-down
ESC ) move-past-close-and-reindent ESC w copy-region-as-kill
ESC , tags-loop-continue ESC x execute-extended-command
ESC - negative-argument ESC y yank-pop
ESC . find-tag ESC z zap-to-char
ESC 0 .. ESC 9 digit-argument ESC | shell-command-on-region
ESC ; indent-for-comment ESC ~ not-modified
ESC < beginning-of-buffer ESC DEL backward-kill-word
C-x 4 C-f find-file-other-window C-x 4 d dired-other-window
C-x 4 . find-tag-other-window C-x 4 f find-file-other-window
C-x 4 b pop-to-buffer C-x 4 m mail-other-window
uppercase word M-u lowercase word M-l capitalize word M-c uppercase region C-x C-u lowercase region C-x C-l capitalize region M-x capitalize-region
C-x TAB
Shift block of lines rigidly right or left (indent-rigidly).
TAB
Indent current line "appropriately" in a mode-dependent fashion.
LFD
Perform RET followed by TAB (newline-and-indent).
M-^
Merge two lines (delete-indentation). This would cancel out the effect of LFD.
C-M-o
Split line at point; text on the line after point becomes a new line indented to the same column that it now starts in (split-line).
M-m
Move (forward or back) to the first nonblank character on the current line (back-to-indentation).
C-M-\
Indent several lines to same column (indent-region).
M-i
Indent from point to the next prespecified tab stop column (tab-to-tab-stop).
M-x indent-relative
Indent from point to under an indentation point in the previous line.
query-replace-regexp <a href=\(.*\)> <a class="ns" href=\1> <a href="http://www.a">a</a> b c <\(/?\)font> <font>\(.*\)<\/font> \1 <font.*>\(.*\)<\/font> <span class="ns">\1</span> <font class="\(.*\)">\(.*\)<\/font> <span class="\1">\2</span> <font size=\(.*\)>\(.*\)<\/font> <span class="\1">\2</span>
/* put here your variable list var1 variabl2 etc... note: you can get it with a command like ex. your form has lines like <input type="text" name="titre" size="60"> <input type="checkbox" name="image" value="1"> cat yourForm.php | sed 's|^.*name="||g' | sed 's|".*$||g' will return titre image */ /*copy-paste var1 variabl2 etc... */ in emacs, do a: CTRL-ALT-SHIFT-% (query-replace-regexp) ^\(.*\)$ [ENTER] $\1=$_POST['\1']; [ENTER] then try somes, if ok just make ! to change everything the result $var1=$_POST['var1']; $variabl2=$_POST['variabl2']; of course you can do the same with other replacement
Un bon outil pour visualiser ses expressions régulières sous emacs
eg you have
John.Doe@soviet.org Mary.Smith@bolchoi.net
and want
John John.Doe@soviet.org Mary Mary.Smith@bolchoi.net
this is the way:
CTRL-SHIFT-ALT-%
^\([A-Z][a-z]*\)\.\([A-Z][a-z]*\)@\(.*\)$ \1 \1.\2@\3
example: transform a,b,c into a b c use regular expression replacement: alt-ctrl-shift-% type the string you want to replace, eg. , RET alt-J RET ! and it's done! THE OTHER WAY (REPLACE LINES WITH STHING) alt-ctrl-shift-% type the string you want to replace, eg. , alt-J RET THEN THE REPLACEMENT, eg , RET ! a b c WILL become a,b,c
-> scratch, C-q + caract. (eg tab) esc ^[ return ^M linefeed ^J
http://www.akademia.ch/info/emacs/html_helper_mode.htm
for ubuntu:
sudo apt-get install php-mode php-elisp html-helper-mode css-mode
pour cakephp & ses fichus fichiers “views” *.ctp:
radeff@radeff-desktop:~$ gedit .xemacs/init.el
(add-to-list 'auto-mode-alist '(“\\.ctp$” . php-mode))
et relancer xemacs
If you want XEmacs to load UTF-8 files correctly, add the following lines to your ~/.xemacs/init.el:
(require 'un-define) (set-coding-priority-list '(utf-8)) (set-coding-category-system 'utf-8 'utf-8)
ci-dessus pas terrible, il faut mieux utiliser la solution suivante:
source: http://www.maruko.ca/i18n/
If you want XEmacs to load UTF-8 files correctly, add the following lines to your ~/.xemacs/init.el:
(require 'un-define) (set-coding-priority-list '(utf-8)) (set-coding-category-system 'utf-8 'utf-8)
C-x esc esc before commands: esc p
ESC < followed by C-x ESC ESC
esc < esc >
Source: http://www.benjaminbaudouin.com/xemacs-edit-over-ssh
Grâce au package TRAMP (Transparent Remote Access, Multiple Protocols), il est possible d’éditer des fichiers distants via SSH par exemple.
Installation (Debian) :
apt-get install tramp
Utilisation :
xemacs /[ssh/user@host]/chemin/fichier
emacs /ssh:user@host:/chemin/fichier
Remarque :
Ajoutez (setq tramp-default-method “ssh”) dans votre ~/.xemacs/custom.el pour de pas avoir à préciser la méthode ssh