Nützliche Funktionen Emacs

Finden Sie doppelte Linien und halten nur das erste Vorkommen

 uniquify-all-lines-region ( start end ) "Find duplicate lines in region START to END keeping first occurrence." ( interactive "*r" ) ( save-excursion ( let ( ( end ( copy-marker end ) ) ) ( while ( progn ( goto-char start ) ( re-search-forward "^ \\ (.* \\ ) \n \\ ( \\ (.* \n \\ )* \\ ) \\ 1 \n " end t ) ) ( replace-match " \\ 1 \n \\ 2" ) ) ) ) ) ( defun uniquify-all-lines-buffer ( ) "Delete duplicate lines in buffer and keep first occurrence." ( interactive "*" ) ( uniquify-all-lines-region ( point- min ) ( point- max ) ) ) (DEFUN uniquify-all-Linien-Region (Beginn Ende) "Find Region doppelte Zeilen in Anfang bis zum Ende halten erste Auftreten." ("* R") (save-Exkursion (wir Interactive ((Ende (copy-marker Ende)) ) (while (Prognose (goto-char start) (re-search-forward "^ \ \ (.* \ \) \ n \ \ (\ \ (.* \ n \ \) * \ \) \ \ 1 \ n "end t)) (Ersatz-match" \ \ 1 \ n \ \ 2 "))))) (defun uniquify-all-Zeilen-Puffer () "Löschen von doppelten Zeilen in den Puffer und halten Sie das erste Vorkommen." (interaktive "*") (uniquify-all-Linien-Bereich (Punkt-min) (Punkt-max))) 

Also, für dieses Puffers:
Duplicate line 1
Unique line 1
Duplicate line 1
Unique line 2
Unique line 3
Duplicate line 1
Duplicate line 2
Duplicate line 2
Unique line 4

Running 'Mx uniquify-all-Zeilen-Puffer "produziert:
Duplicate line 1
Unique line 1
Unique line 2
Unique line 3
Duplicate line 2
Unique line 4

Welche Kills Die gesamte Linie der Cursor befindet

Wenn Sie ein Benutzer sind, ist es wie 'dd'. Ich schrieb sogar die Funktion, weil ein Freund von mir fragte mich: "Warum nicht über emacs 'dd'?" Na, jetzt tut es:

  kill-whole-line nil (DEFUN kill-Ganzes-line nil
   "Welche Kills Die gesamte Linie der Cursor befindet, und legt die  
  Cursor so nahe an seiner früheren Stellung als möglich. "
   (Interactive)
   (Prognose
     ( ( y ( current-column ) ) (Let ((y (Strom-Spalte))
	   progn ( beginning-of-line ) ( point ) ) ) (A (Prognose (beginning-of-line) (Punkt)))
	   progn ( forward-line 1 ) ( point ) ) ) ) (B (Prognose (forward-Linie 1) (Punkt))))
       (Kill-Region ab)
       (Move-to-Spalte y)))) 

PHP Syntax-Check

Diese Funktion führt eine Syntaxprüfung auf der PHP-Code Tests für Scripting Fehler.

  ;; PHP lint überprüfen
 ;; Geht davon aus "php" ist in $ PATH
 php-lint ( ) (DEFUN php-lint ()
   "Lint-PHP Führt eine Überprüfung der aktuellen Datei."
   (Interactive)
   concat "php -l " ( buffer-file- name ) ) ) ) (Shell-Befehl (concat "php-l" (buffer-file-name)))) 

Lassen Sie eine Antwort