uMtMu
Table of Contents
- 1. Elisp
- 2. Okunacak
- 3. Artist mode - Ascii/Diagram çizimi
- 4. orgmode hedefli dosya bağlantıları
- 5. GnuPG
- 6. MoveIt
- 7. SpacEmacs & ErgoEmacs
- 8. orgmode easy templates
- 9. Orgmode metin stilleri
- 10. Elpy kısayollar
- 11. Kaydedilmemiş değişiklikler
- 12. multiple replace on fly Ara
- 13. .emacs
- 14. ipuçları
- 15. ElPy
- 16. Bağlantılar
1 Elisp
1.1 1.ders
(+ 2 5 34 32 (/ 22 3)) (defun add-nums (a b c) (+ a b c) ) (add-nums 10 23) ;; test lib (require 'ert) (ert-deftest add-nums-pos () should (equal (add-nums-pos 11 10) 21)) ;; M - x ert
1.2 2.ders
(org-src-debug) (setq a 10 b 32) (+ a b) (null nil) '(1 2 3 4) (equal nil '()) (setq my_list '(1 2 3 4)) (car my_list) (cdr my_list) (nth 0 my_list) (member 4 my_list) (defun does_exist (number my-list) ( (member number my-list))) (require 'ert) (ert-deftest check-number ((should (does_exist 1 '(1 2 3 4)) ) ) (ert-deftest check-number ((should (not (does_exist 5 '(1 2 3 4)) )) ) ) (ert-deftest check-number () (should (does_exist 1 '(1 2 3 4))) (should (not (does_exist 5 '(1 2 3 4)))) )
1.3 3.ders
(setq my_list '(1 2 3 4)) ;; loop through list and print even number (dolist (elm my_list) (when (= (mod elm 2) 0) (print elm) ;; writes to mini buffer (message (number-to-string elm)) ;; durumu tam anlamadım )) (let (some-var) ;; sets scope, some-var will work only in let (when (null some-var) (message "var is null") )) (let ((some-var 0) (other-var 99)) (if (null some-var) (message "null") (message "not null") )) (defun sum-evens (some-list) (let ((sum 0)) (dolist (elm some-list) (when (= (mod 2 elm)) (setq sum (+ sum elm)))) (message (number-to-string sum)) )) (sum-evens '(1 2 3 4))
1.4 4.ders
;; C-h f get help for function ;; C-h k get help for key (defun cheap-count-words () (interactive) (let ((words 0)) (save-excursion ;; imlecin son yerini hatırla (goto-char (point-min)) ;; buffer'ın en başına gel (while (forward-word) ;; bir kelime ilerle (setq words (+ 1 words))) (message (format "Words in buffer: %s" words)) words)) ;; sadece let çalıştığı zaman fonksiyon hata veriyor. words'ü de yazdırıyoruz ?? ) (require 'ert) (ert-deftest count-words-test () (get-buffer-create "*test*") ;; bu isimli buffer yoksa oluştur (with-current-buffer "*test*" (erase-buffer) (insert "Hello Worlds") ;; buffera yaz (should (= (cheap-count-words) 2)) ) (kill-buffer "*test*") ) ;; C-x C-e M-x ert
1.5 5.ders
(defvar boolcase-mode-words '("true" "false") "Words to capitalize" ) (defun boolcase-mode-check () "Check if we capitalize or not" ;; iif it's "e" (if (= last-command-event 101) (boolcase-mode-fix))) (defun boolcase-mode-fix () (save-excursion (copy-region-as-kill (point) (progn (backward-sexp) (point))) (when (member (current-kill 0) boolcase-mode-words) (capitalize-word 1)) ;; Remove the element from kill ring (setq kill-ring (cdr kill-ring)) ) ) (define-minor-mode boolcase-mode "Auto capitalize" :lighter " BC" (if boolcase-mode (add-hook 'post-self-insert-hook 'boolcase-mode-check nil t) (remove-hook 'post-self-insert-hook 'boolcase-mode-check t) ) )
2 Okunacak
3 Artist mode - Ascii/Diagram çizimi
M-x artist-mode
mouse tekerlek tuşu menüyü açıyor. gerisi anlaşılır zaten :D
4 orgmode hedefli dosya bağlantıları
[[file:~/code/main.c::255]] Find line 255 [[file:~/xx.org::My Target]] Find ‘<<My Target>>’ [[file:~/xx.org::#my-custom-id]] Find entry with custom id
5 GnuPG
- Kurulum
sudo apt-get install gnupg2
sudo apt-get install kleopatra # arayüz
- Key oluşturma
gpg –gen-key # eposta adresi önemli. Keyringde belirleyici olacak
- .emacs ayarlar
(require 'epa-file)
(epa-file-enable)
- orgmode kullanımı
Dosya uzantısı gpg (*.gpg) olan dosyanın ilk satırına
eklenecek
- Oluşturulan anahtar dosyasının taşıma amaçlı çıkarılması (Export)
gpg –armor –export me@mydomain.com > mykey.asc
- Çıkarılan anahtarın eklenmesi (Import)
gpg –import mykey.asc
6 MoveIt
Numerik tekrarlama
(C|M)-Num Komut örneği C-5 C-f
Komut | Boyut | Yöne |
C-f | Karakter | İleri |
C-b | Karakter | Geri |
C-n | Satır | İleri |
M-f | Kelime | İleri |
C-p | Satır | Geri |
M-f | Kelime | İleri |
M-b | Kelime | Geri |
M-v | Paragraf | İleri |
C-v | Paragraf | Geri |
M-< | Buffer | Tepe |
M-> | Buffer | Dip |
7 SpacEmacs & ErgoEmacs
8 orgmode easy templates
1. | 2. | Sonuç |
<s | TAB | #+BEGIN_SRC … #+END_SRC |
<e | TAB | #+BEGIN_EXAMPLE … #+END_EXAMPLE |
<q | TAB | #+BEGIN_QUOTE … #+END_QUOTE |
<v | TAB | #+BEGIN_VERSE … #+END_VERSE |
<c | TAB | #+BEGIN_CENTER … #+END_CENTER |
<l | TAB | #+BEGIN_LaTeX … #+END_LaTeX |
<L | TAB | #+LaTeX: |
<h | TAB | #+BEGIN_HTML … #+END_HTML |
<H | TAB | #+HTML: |
<a | TAB | #+BEGIN_ASCII … #+END_ASCII |
<A | TAB | #+ASCII: |
<i | TAB | #+INDEX: line |
<I | TAB | #+INCLUDE: line |
9 Orgmode metin stilleri
_ | metin stili |
* | metin stili |
~ | metin stili |
= | metin stili |
+ |
10 Elpy kısayollar
M - . | Tanımlanan noktaya git |
M - * | M - . ya geri dön |
C - c C - o | Fonsiyon ve sınıfları listele |
11 Kaydedilmemiş değişiklikler
C-x s kombinasyonu ile toplu tampon kayıtlarında "d" tuşu ile değişiklikler
görülebilir.
12 multiple replace on fly Ara
Değiştirilen kelimenin her bir kopyasının aynı anda güncellenmesi
13 .emacs
14 ipuçları
14.1 List occurence
M - s o -> list occurence
M - s o RET def RET -> list functions
M - s o RET class RET -> list classes
14.2 conf-mode
14.3 Template kısayolları
1. | 2. | 3. | Sonuç |
< | s | TAB | #+BEGIN_SRC … #+END_SRC |
< | e | TAB | #+BEGIN_EXAMPLE … #+END_EXAMPLE |
< | q | TAB | #+BEGIN_QUOTE … #+END_QUOTE |
< | v | TAB | #+BEGIN_VERSE … #+END_VERSE |
< | c | TAB | #+BEGIN_CENTER … #+END_CENTER |
< | l | TAB | #+BEGIN_LaTeX … #+END_LaTeX |
< | L | TAB | #+LaTeX: |
< | h | TAB | #+BEGIN_HTML … #+END_HTML |
< | H | TAB | #+HTML: |
< | a | TAB | #+BEGIN_ASCII … #+END_ASCII |
< | A | TAB | #+ASCII: |
< | i | TAB | #+INDEX: line |
< | I | TAB | #+INCLUDE: line |
14.4 Registerlar
C-x r s r
Copy region into register r (copy-to-register).
C-x r i r
Insert text from register r (insert-register).
M-x append-to-register RET r
Append region to text in register r.
When register r contains text, you can use C-x r + (increment-register) to append to that register. Note that command C-x r + behaves differently if r contains a number. See Number Registers.
M-x prepend-to-register RET r
Prepend region to text in register r.
15 ElPy
- Reponun eklenmesi
(require 'package) (add-to-list 'package-archives '("elpy" . "http://jorgenschaefer.github.io/packages/"))
- Paketin yüklenmesi
M-x package-install RET elpy
- Paketin aktifleştirilmesi
(package-initialize) (elpy-enable)
- Paketin yapılandırılması
M-x elpy-config RET