2011-01-25 12 views
15

SQL kodumu düzenlemek için emacs kullanıyorum. Postgresql plpgsql kodu üzerinde% 99 çalışıyorum. Tüm dosyaları .sql uzantılı postgresql içerir. Merak ediyorum, bir dosya açtığımda her zaman geçiş yapmak için oldukça can sıkıcı bir durum olduğundan, AN123 SQL yerine sql-highlight-postgres-keywords SQL'i varsayılan olarak vurgulamak için bir yol var.Varsayılan olarak postgresql sözdizimini vurgulamak için emacs oluşturma

+1

'sql-highlight-postgres-keywords' değişken mi? Emacs 23'te bulamıyorum. Çalıştığım gibi görünen M-x sql-modunu kullandım, ama bu sadece bir kerelik oldu. – SabreWolfy

+1

SQL'e bağlı olarak sözdizimi vurgulamasını değiştirmek için sql-modunda sql-highlight- -anahtar sözcüklerini kullanıyorum. sql modunda değilseniz, bunu kullanamayacaksınız. –

+0

^Teşekkürler. Evet, sql modunda çalışıyor :) – SabreWolfy

cevap

14

Genellikle emacs modunda, bazı modlar her açıldığında ayarları değiştirmek isterseniz, bir kanca kullanın. Buna benzer bir şey çalışmalıdır:

(add-to-list 'auto-mode-alist 
      '("\\.psql$" . (lambda() 
           (sql-mode) 
           (sql-highlight-postgres-keywords)))) 
+0

Teşekkürler, aradığım şey gibi görünüyor. –

16

her zaman bir .sql dosyasını açtığınızda Emacs' dosya değişkenleri özelliğini kullanabilirsiniz vurgulayarak PostgreSQL geçmek için yerine bir kanca kullanmak yerine, farklı veritabanları ile çalışmak gerekiyorsa Ürünü dosya bazında ayarlamak.

Örneğin, .sql dosyanın ilk satırı otomatik olarak PostgreSQL vurgulama kullanacaktır

-- -*- mode: sql; sql-product: postgres; -*- 

sql modu ise. Emacs dosya değişkenleri here (siz de her yerde dosyasında bir blokta ayarlayabilirsiniz) ve ürün adları listesinde

tüm detaylar muhtemelen eaiest görmek için TAB ansi varsayılan geriye doğru silme, M-x sql-set-product yapıyor ve vurarak bulunursa tamamlama listesi. Örnekler "mysql", "oracle", "sqlite" vb. (Kurulumumda yaklaşık bir düzine kadar).

İlgili konular