- Panther blogja
- A hozzászóláshoz be kell jelentkezni
- 806 megtekintés
Hozzászólások
Tedd ki a vimes megoldast is... erdekel...
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Ez nem egy nagy durranás: http://hup.hu/node/62448
- A hozzászóláshoz be kell jelentkezni
Talán így egyszerűbb. A panther/c-modes-directory-alist változót a M-x customize-variable panther/c-modes-directory-alist utasítással bármikor könnyen tudod módosítani.
(defcustom panther/c-modes-directory-alist
'(("/home/panther/src" "linux")
("/home/panther/gnu" "gnu"))
"Alist of Panther's (DIRECTORY CODING-STYLE) mapping."
:type '(alist :key-type file :value-type (group string))
:group 'c)
(defun panther/c-set-style ()
"Set C style according to visiting file's directory."
(interactive)
(mapcar (lambda (item)
(when (string-match (car item) (buffer-file-name))
(message "Setting C-style to '%s'" (cadr item))
(c-set-style (cadr item)))) panther/c-modes-directory-alist))
(add-hook 'c-mode-hook 'panther/c-set-style)
A
file-in-dirfüggvényed beépítettje a
file-directory-p, string összehasonlításra pedig itt kiváló a
string-equal.
- A hozzászóláshoz be kell jelentkezni
Ismerkedem még csak a lisp-pel. De köszi, így sokkal barátságosabb :D
A gondom csak az, hogy elsőre elég tömény (funkcionális nyelv, és a procedurálist szoktam meg, értem ez alatt az objektum-orientált nyelveket is), és egyelőre kevés könyvet, meg példát találtam.
szerk: ebből hiányzik a fallback stílus, de majd törpölök rajta, legalább megértem teljes egészében (a használatot). Bár lehet, erre a hétre nem sok emacsozás jut :P
- A hozzászóláshoz be kell jelentkezni
Csak a teljesség kedvéért: Emacs 23-ban már benne van a kívánt funkció, dir-locals-set-class-variables néven fut. Pont az teszi, amit szeretnél: elérési útvonaltól függően megváltoztatja a megadott változók értékéet.
- A hozzászóláshoz be kell jelentkezni