X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=emacs_el%2Fvcl-mode.el;h=54d91f661269e6587ae448f1754949020cc86573;hb=3e10f9b1c84d227ddc999381e024cd462796c9ad;hp=3530bd043a53d5620e93501df742c40dbedfec3c;hpb=111e739cebf9fe40bdb4f53424187f11db5b1a1c;p=lib.git diff --git a/emacs_el/vcl-mode.el b/emacs_el/vcl-mode.el index 3530bd0..54d91f6 100644 --- a/emacs_el/vcl-mode.el +++ b/emacs_el/vcl-mode.el @@ -30,6 +30,10 @@ ;;; ;;; $Id$ ;;; +;;; Based on +;;; https://www.varnish-cache.org/trac/browser/fragmentation/varnish-tools/emacs/vcl-mode.el?rev=72322230cfe73244bcf31e008a05a9c2c3867816 +;;; Updated to work with varnish 3 a bit better; highlight more of the +;;; variable names and functions (defgroup vcl nil "Customizations for vcl-mode") @@ -63,15 +67,22 @@ "elsif" "if" "remove" - "set" ) 'font-lock-keyword-face) ;; Types (generic-make-keywords-list (list - "purge_url" + "set" + "unset" + "ban_url" + "ban" "regsub" + "regsuball" + "hash_data" + "return" + "call" + "import" ) 'font-lock-builtin-face) @@ -106,40 +117,83 @@ "lookup" "pass" "pipe" + "hit_for_pass" ) 'font-lock-function-name-face) ;; Variables (generic-make-keywords-list (list - "backend.host" - "backend.port" - "bereq.proto" + "now" + ".host" + ".port" + + "client.ip" + "client.identity" + "server.ip" + "server.port" + "server.hostname" + "server.identity" + + "req.request" + "req.url" + "req.proto" + "req.backend" + "req.backend.healthy" + "req.hash_always_miss" + "req.hash_ignore_busy" + "req.can_gzip" + "req.restarts" + "req.esi" + "req.esi_level" + "req.grace" + "req.xid" + + "bereq.request" "bereq.url" - "client.ip" - "now" - "obj.cacheable" - "obj.lastuse" + "bereq.proto" + "bereq.connect_timeout" + "bereq.first_byte_timeout" + "bereq.between_bytes_timeout" + + + "beresp.do_stream" + "beresp.do_esi" + "beresp.do_gzip" + "beresp.do_gunzip" + "beresp.proto" + "beresp.status" + "beresp.response" + "beresp.ttl" + "beresp.grace" + "beresp.saintmode" + "beresp.backend.name" + "beresp.backend.ip" + "beresp.backend.port" + "beresp.storage" + + "obj.proto" - "obj.response" "obj.status" + "obj.response" "obj.ttl" - "obj.valid" - "req.backend" + "obj.lastuse" + "obj.hits" + "obj.grace" + "obj.http.header" + + "req.hash" - "req.proto" - "req.request" - "req.url" "resp.proto" - "resp.response" "resp.status" - "server.ip" + "resp.response" + "resp.http.header" ) 'font-lock-variable-name-face) ;; More variables - '("\\(\\(be\\)?req\\|resp\\|obj\\)\.http\.[A-Za-z-]+" . + '("\\(\\(be\\)?\\(req\\|resp\\|obj\\)\\)\.http\.[A-Za-z-]+" . font-lock-variable-name-face)) ;; Filenames to highlight