issue with route
JINMEI Tatuya / 神明達哉
jinmei at isl.rdc.toshiba.co.jp
Fri Jun 3 17:16:35 PDT 2005
(I'm afraid we're going to an off-topic. If this message needs a
response, we should perhaps do that off-list.)
>>>>> On Fri, 3 Jun 2005 15:40:14 -0700,
>>>>> "Li, Qing" <qing.li at bluecoat.com> said:
>> Are you perhaps asking for .emacs setting which conforms to this (the
>> four-space) style?
> Yes, do you have one ?
I'm using this one.
JINMEI, Tatuya
Communication Platform Lab.
Corporate R&D Center, Toshiba Corp.
jinmei at isl.rdc.toshiba.co.jp
(add-hook 'c-mode-common-hook
(function
(lambda ()
(c-set-style "bsd")
(c-set-offset 'statement 'netbsd-knf-lineup-statement)
(c-set-offset 'arglist-intro 'netbsd-knf-lineup-arglist)
(c-set-offset 'arglist-cont 'netbsd-knf-lineup-arglist)
(c-set-offset 'arglist-cont-nonempty 'netbsd-knf-lineup-arglist)
...;;(other personal settings)
)))
(defun netbsd-knf-lineup-arglist (langelem)
(let ((syntax (car (c-guess-basic-syntax)))
(langelem-col (c-langelem-col langelem t))
(head)
)
(save-excursion
(while (memq (car syntax)
'(arglist-cont-nonempty statement-cont
arglist-intro arglist-cont))
(goto-char (cdr syntax))
(setq syntax (car (c-guess-basic-syntax))))
(if (eq (car syntax) 'statement)
(goto-char (netbsd-knf-statement-head)))
(beginning-of-line)
(skip-chars-forward " \t")
(+ (- (current-column) langelem-col) (/ c-basic-offset 2)))))
(defun netbsd-knf-statement-head ()
(let ((cp (point)))
(save-excursion
(backward-up-list 1)
(cond ((netbsd-knf-after-for-loop-p (point))
(beginning-of-line)
(skip-chars-forward " \t")
(point))
(t cp)))))
(defun netbsd-knf-lineup-statement (langelem)
(let ((syntax (car (c-guess-basic-syntax))))
(cond ((and (cdr syntax) ;to handle (comment-intro) (statement . xx)
(netbsd-knf-after-for-loop-p (cdr syntax)))
(save-excursion
(goto-char (cdr syntax))
(beginning-of-line)
(skip-chars-forward " \t")
(+ (- (current-column) (c-langelem-col langelem t))
(/ c-basic-offset 2))))
(t 0))))
(defun netbsd-knf-after-for-loop-p (pos)
"True if POS is just after `for ('"
(save-excursion
(goto-char pos)
(condition-case ()
(progn (backward-word 1)
(looking-at "\\bfor ("))
(beginning-of-buffer nil))))
More information about the freebsd-net
mailing list