Variable: semantic-stickyfunc-indent-string
semantic-stickyfunc-indent-string is a customizable variable defined
in util-modes.el.gz.
Value
""
Documentation
String used to indent the stickyfunc header.
Customize this string to match the space used by scrollbars and fringe so it does not appear that the code is moving left/right when it lands in the sticky line.
Source Code
;; Defined in /usr/src/emacs/lisp/cedet/semantic/util-modes.el.gz
(defcustom semantic-stickyfunc-indent-string
(if window-system
(concat
(condition-case nil
;; Test scroll bar location
(let ((charwidth (frame-char-width))
(scrollpos (frame-parameter (selected-frame)
'vertical-scroll-bars))
)
(if (or (eq scrollpos 'left)
;; Now wait a minute. If you turn scroll-bar-mode
;; on, then off, the new value is t, not left.
;; Will this mess up older emacs where the default
;; was on the right? I don't think so since they don't
;; support a header line.
(eq scrollpos t))
(let ((w (when (boundp 'scroll-bar-width)
(symbol-value 'scroll-bar-width))))
(if (not w)
(setq w (frame-parameter (selected-frame)
'scroll-bar-width)))
;; in 21.2, the frame parameter is sometimes empty
;; so we need to get the value here.
(if (not w)
(setq w (+ (get 'scroll-bar-width 'x-frame-parameter)
;; In 21.4, or perhaps 22.1 the x-frame
;; parameter is different from the frame
;; parameter by only 1 pixel.
1)))
(if (not w)
" "
(setq w (+ 2 w)) ; Some sort of border around
; the scrollbar.
(make-string (/ w charwidth) ? )))
""))
(error ""))
(condition-case nil
;; Test fringe size.
(let* ((f (window-fringes))
(fw (car f))
(numspace (/ fw (frame-char-width)))
)
(make-string numspace ? ))
(error
;; Well, the fancy new Emacs functions failed. Try older
;; tricks.
(condition-case nil
;; I'm not so sure what's up with the 21.1-21.3 fringe.
;; It looks to be about 1 space wide.
(if (get 'fringe 'face)
" "
"")
(error ""))))
)
;; Not Emacs or a window system means no scrollbar or fringe,
;; and perhaps not even a header line to worry about.
"")
"String used to indent the stickyfunc header.
Customize this string to match the space used by scrollbars and
fringe so it does not appear that the code is moving left/right
when it lands in the sticky line."
:group 'semantic
:type 'string)