2013-11-07 6 views
3

Я использую emacs с sr-speedbar, но не могу контролировать его ширину. Когда я изменяю размер окна emacs, sr-speedbar всегда расширяется вместе с ним. Я пробовал это как с xemacs, так и с emacs.Невозможно управлять шириной sr-speedbar

Мой .emacs файл ниже:

(require 'package) 
(package-initialize) 
(setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") 
         ("marmalade" . "http://marmalade-repo.org/packages/") 
        ("melpa" . "http://melpa.milkbox.net/packages/"))) 
(setq c-default-style "linux" 
      c-basic-offset 4) 
(iswitchb-mode 1) 
(setq inhibit-splash-screen t) 
(load-theme 'zenburn t) 
(require 'ecb) 
(setq stack-trace-on-error t) 
(desktop-save-mode 1) 
;(defun toggle-fullscreen() 
; (interactive)  
; (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 
;    '(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0)) 
; (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 
;    '(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0)) 
;) 
;(toggle-fullscreen) 
(require 'sr-speedbar) 
(setq 
    sr-speedbar-right-side nil 
    sr-speedbar-width-x 10 
    sr-speedbar-width-console 10 
    sr-speedbar-max-width 10 
    sr-speedbar-delete-windows t) 
(sr-speedbar-open) 
(put 'dired-find-alternate-file 'disabled nil) 
(add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on) 
;; Single char cursor movement. (assuming you are on qwerty) 
(global-set-key (kbd "M-j") 'backward-char) 
(global-set-key (kbd "M-l") 'forward-char) 
(global-set-key (kbd "M-i") 'previous-line) 
(global-set-key (kbd "M-k") 'next-line) 
(global-set-key (kbd "M-SPC") 'set-mark-command) 
(custom-set-variables 
;; custom-set-variables was added by Custom. 
;; If you edit it by hand, you could mess it up, so be careful. 
;; Your init file should contain only one such instance. 
;; If there is more than one, they won't work right. 
'(custom-safe-themes (quote   ("d63e19a84fef5fa0341fa68814200749408ad4a321b6d9f30efc117aeaf68a2e" default))) 
'(ecb-options-version "2.40")) 
(custom-set-faces 
;; custom-set-faces was added by Custom. 
;; If you edit it by hand, you could mess it up, so be careful. 
;; Your init file should contain only one such instance. 
;; If there is more than one, they won't work right. 
) 

ответ

0

Он потребляет переменные во время загрузки, а не когда открыта.

Параметр sr-speedbar-width- * должен быть установлен до загрузки скрипта.

+0

Просьба прояснить ваш ответ, поскольку его можно неверно истолковать. Не будет ли переопределять библиотеку при загрузке библиотеки после ее загрузки? Например: библиотека содержит переменную с именем «xyz». Если пользователь устанавливает значение «xyz» перед загрузкой библиотеки, то загрузка библиотеки отменяет предыдущую настройку. В то время как загрузка библиотеки сначала, а затем установка «xyz» позволит последней настройке оставаться в силе. – lawlist

+0

Речь идет о библиотеке sr-speedbar и переменных sr-speedbar-width-x и sr-speedbar-width-console. Параметр sr-speedbar использует переменные при загрузке и инициализации. Когда он уже загружен с помощью require или load-library, изменение переменных не может иметь никакого эффекта. – qMax

Смежные вопросы