Sadece yerleşik olanı kullanın asm-mode. Herhangi bir montaj dili için sözdizimi vurgulama sağlar. gas-modebunu yapmaz ve AT&T sözdizimi ile kullanılamaz.
Girintisini ayarlamak asm-modeistiyorsanız, kullanamayacağınızı tab-widthancak tab-stop-list1 sekmesinin, 2 sekmesinin, 3 sekmesinin ... görüntüleyebileceği boşlukları belirttiğini unutmayın :
(setq tab-stop-list '(4 8 12 16 20 24 28 32 36 40 44 48 52 56 60
64 68 72 76 80 84 88 92 96 100 104 108 112
116 120))
Yukarıdaki örnek, yumruk sekmesinin 4 boşluğa, 2. sekmenin (ilk sekmenin yanında) 8 boşluğa, 3. sekmenin (ikinci sekmenin yanında) 12 boşluğa sahip olduğu anlamına gelir ...
Listeyi şu şekilde de oluşturabilirsiniz:
(setq tab-stop-list (number-sequence 2 60 2))
number-sequencebir sayı listesi oluşturur, başlangıç numarası 2(ilk argüman) yukarı 60(ikinci argüman), her 2sayı yanındaki sayıya göre farklılık gösterir . Ve newline-and-indentRET'e bağlanmayı unutmayın , böylece Emacs sizin için otomatik olarak girintili olur.
Atlamak istiyorsanız, aşağıdaki gibi Ctags kullanın:
ctags -e -R
-eEmacs tarafından kullanılacak etiket veritabanı oluşturmak anlamına gelir.
-Rproje kökünden alt dizinlerdeki dosyalar için özyinelemeli olarak etiket oluşturmak anlamına gelir.
Bundan sonra, Helm kullanmıyorsanız Emacs'ta helm-etags-selectatlamak için veya başka bir etagsmüşteri kullanabilirsiniz.
EDIT : İşte örnek bir kurulum:
(require 'asm-mode)
(add-hook 'asm-mode-hook (lambda ()
(setq indent-tabs-mode nil) ; use spaces to indent
(electric-indent-mode -1) ; indentation in asm-mode is annoying
(setq tab-stop-list (number-sequence 2 60 2))))
(define-key asm-mode-map (kbd "<ret>") 'newline-and-indent)
(define-key asm-mode-map (kbd "M-.") 'helm-etags-select)
Aşağıdakilere company-completebasarken temel tamamlama da yapabilirsiniz S-TAB:
(define-key asm-mode-map (kbd "<backtab>") 'company-complete)
Sen kullanabilirsiniz <tab>hem çünkü tetik tamamlanmasına <tab>ve M-iaynı komutunu çalıştırın tab-to-tab-stopekler boşluk veya sekme sizin ayarına bağlı olduğunu indent-tabs-mode. Güzel olan şey company-mode, eğer varsa, minibuffer'da şu anda vurgulanan adayın kısa bir açıklamasını almanızdır. Örneğin, böyle bir tanımınız varsa:
KeyStrokes word 0
İmleci KeyStrokesadaya taşıdığınızda word 0, minibuffer'a yazdırır .
asm-modene yapmalı, ama yapmamalı? (Hangi özellikler eksik?)