LINUX.ORG.RU

RE: sawfish мнения


0

0

sorry, ту тему потерял и забыл. вот ответ:

кусок ~/.sawfishrc: ;load defaults (they are loaded if there's no ~/.sawfishrc) (require 'sawmill-defaults)

;bind alt+ctrl+t to show current time (bind-keys global-keymap "M-C-t" '(show-message (current-time-string))) (bind-keys global-keymap "M-C-x" '(system "urxvt&")) (bind-keys global-keymap "M-C-m" '(system "seamonkey&"))

;send to desktop X feature (define (darkness:send-to-workspace-menu window) (let* ((limits (workspace-limits)) (number-of-workspaces (1+ (- (cdr limits) (car limits))))) (do ((workspace-number 0 (1+ workspace-number)) (menu nil)) ((>= workspace-number number-of-workspaces) menu) (let ((menu-string (format nil "Workspace _%d" (1+ workspace-number))) (action (lambda () (send-window-to-workspace-from-first window workspace-number)))) (setq menu (nconc menu (list (list menu-string action)))))))) (rplacd (assoc "_Send window to" window-ops-menu) darkness:send-to-workspace-menu)

;redefine programs menu (setq apps-menu `(("xterm" (system "xterm &")) ("Seamonkey" (system "seamonkey &")) ("Emacs" (system "emacs &"))))

насчет jump-or-exec.jl, этот файл вроде в ~/.sawfish каталог просто положить надо. а системные конфиги у меня лежат тут - /usr/share/sawfish/1.3/lisp/

вот тут еще grob свой конфиг выкладывал http://www.linux.org.ru/view-message.jsp?msgid=1702374

еще раз сорри за запоздавший ответ

anonymous

сидел и думал, что я забыл. оказалось - форматирование :)

кусок ~/.sawfishrc:
;load defaults (they are loaded if there's no ~/.sawfishrc)
(require 'sawmill-defaults)

;bind alt+ctrl+t to show current time
(bind-keys global-keymap
	   "M-C-t" '(show-message (current-time-string)))
(bind-keys global-keymap
	   "M-C-x" '(system "urxvt&"))
(bind-keys global-keymap
	   "M-C-m" '(system "seamonkey&"))

;send to desktop X feature
(define (darkness:send-to-workspace-menu window)
  (let* ((limits (workspace-limits))
	 (number-of-workspaces (1+ (- (cdr limits) (car limits)))))
    (do ((workspace-number 0 (1+ workspace-number))
	 (menu nil))
        ((>= workspace-number number-of-workspaces) menu)
      (let ((menu-string (format nil "Workspace _%d" (1+ workspace-number)))
	    (action (lambda ()
		      (send-window-to-workspace-from-first window
							   workspace-number))))
	(setq menu (nconc menu (list (list menu-string action))))))))
(rplacd (assoc "_Send window to" window-ops-menu)
	darkness:send-to-workspace-menu)

;redefine programs menu
(setq apps-menu
  `(("xterm" (system "xterm &"))
    ("Seamonkey" (system "seamonkey &"))
    ("Emacs" (system "emacs &"))))

anonymous
()

> насчет jump-or-exec.jl, этот файл вроде в ~/.sawfish каталог просто положить надо.

В ~/.sawfish/lisp

anonymous
()

Спасибо. Уже во многом разобрался, но есть вопросы:

Написал ф-цию
(defun my-func (prog #!optional onfocused)
	(let ((win (input-focus)))
		(destroy-window win)
		(display-window win)))
Удаляет окно.
Не работает без (display-window win). Почему ?
И в ~/.sawfish объявляю:
(bind-keys global-keymap
	"H-z" `(my-func))
	,(lambda (win)
	(display-window win))))
Почему без 
,(lambda (win)
 (display-window win)) Не работает ???

anonymous
()
Ответ на: комментарий от anonymous

> (setq apps-menu
>  `(("xterm" (system "xterm &"))
>    ("Seamonkey" (system "seamonkey &"))
>    ("Emacs" (system "emacs &"))))

А где это отражается ? Вставил эти строки, но ничего не появилось ...

anonymous
()
Ответ на: комментарий от anonymous

>> (setq apps-menu >> `(("xterm" (system "xterm &")) >> ("Seamonkey" (system "seamonkey &")) >> ("Emacs" (system "emacs &")))) >А где это отражается ? Вставил эти строки, но ничего не появилось ... это находится в ~/.sawfishrc. я оставил стандартное меню sawfish'а, просто переконфигурировал подменю "Programs". соответственно после этих строк там остаются эти 3 пункта. grob, вроде, полностью меню переделывает.

>Написал ф-цию >(defun my-func (prog #!optional onfocused) > (let ((win (input-focus))) > (destroy-window win) > (display-window win))) >Удаляет окно. >Не работает без (display-window win). Почему ? >И в ~/.sawfish объявляю: >(bind-keys global-keymap > "H-z" `(my-func)) > ,(lambda (win) > (display-window win)))) >Почему без >,(lambda (win) > (display-window win)) Не работает ??? не знаю. к сожалению, в лиспе не силен. но глобальный hotkey на закрытие окна можно назначить в sawfish-ui. в ~/.sawfish/custom для ctrl+q получится примерно так: (custom-set-keymap (quote window-keymap) (quote (keymap ... (delete-window . "C-q")...)))

anonymous
()
Ответ на: комментарий от anonymous

>> (setq apps-menu
>>  `(("xterm" (system "xterm &"))
>>    ("Seamonkey" (system "seamonkey &"))
>>    ("Emacs" (system "emacs &"))))
>А где это отражается ? Вставил эти строки, но ничего не появилось ...
это находится в ~/.sawfishrc. я оставил стандартное меню sawfish'а,
просто переконфигурировал подменю "Programs". соответственно после
этих строк там остаются эти 3 пункта.
grob, вроде, полностью меню переделывает.


>Написал ф-цию
>(defun my-func (prog #!optional onfocused)
>	(let ((win (input-focus)))
>		(destroy-window win)
>		(display-window win)))
>Удаляет окно.
>Не работает без (display-window win). Почему ?
>И в ~/.sawfish объявляю:
>(bind-keys global-keymap
>	"H-z" `(my-func))
>	,(lambda (win)
>	(display-window win))))
>Почему без 
>,(lambda (win)
> (display-window win)) Не работает ???
не знаю. к сожалению, в лиспе не силен.
но глобальный hotkey на закрытие окна можно назначить в sawfish-ui.
в ~/.sawfish/custom для ctrl+q получится примерно так:
(custom-set-keymap (quote window-keymap) (quote (keymap ... (delete-window . "C-q")...)))

anonymous
()

А как поменять св-ва окна ? Например, хочу добавить Konqueror'у свойство sticky, как с помощью window-put, так и make-window-sticky. А главное, где эти ф-ции размещать ? При вызове конка ?

anonymous
()
Ответ на: комментарий от anonymous

>А как поменять св-ва окна ? Например, хочу добавить Konqueror'у свойство sticky, как с помощью window-put, так и make-window-sticky. А главное, где эти ф-ции размещать ? При вызове конка ?

тоже в sawfish-ui. вкладка "Matched Windows". основные matchers - это "Class" и "Name". дальше сам разберешься ;)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.