Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Journal : Une astuce dans IceWM

Posté par Zorro () le 10 juin 2005
Je viens de découvrir une astuce fabuleuse dans IceWM. Quand on fait Ctrl+Alt+un chiffre du pavé numérique, ça déplace la fenêtre active dans un endroit de l'écran correspondant à cette touche du pavé. Ex. : Ctrl+Alt+9 envoit la fenêtre dans le coin supérieure droit.
Très pratique pour envoyer dinguer une fenêtre d'ICQ ailleurs.

> Lire le journal (6 commentaires, moyenne: 3,5).  

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

Conseil

Posté par Infernal Quack (Jabber id, page perso, ) le 10/06/2005 à 09:30. (lien). Évalué à 6.

Poste une astuce au lieu d'un journal :)

Après les Goto Forums, les Gotos Astuces

Posté par Dragon () le 10/06/2005 à 09:30. (lien). Évalué à 3.

Je te fais gentiment remarquer qu'il existe une rubrique Astuces http://linuxfr.org/tips/(...) sur ce site.

D'ailleurs, j'y ai découvert comment faire une iso depuis un cd sans gros logiciels genre readcd ou autre : cp /dev/cdrom image.iso

Just for fun

Posté par jerome (page perso, ) le 10/06/2005 à 13:27. (lien). Évalué à 4.

Un petit .jl pour faire la même chose. Attention, ça ne permet de bouger dans les coins en prenant soin d'éviter un éventuel panel, pager (qui utilise ce genre de trucs de toute façon ?).


;; -*- sawfish -*-
;; http://maruska.dyndns.org/comp/activity/sawfish/mmc/extremes.jl(...)
;; 2003, fatnerf

;;; push window to the extreme (of the viewport)

(define-structure extremes
(export move-to-extreme
extreme-window-n)
(open rep
rep.system
rep.regexp
rep.data.ring
sawfish.wm.windows
sawfish.wm.events
sawfish.wm.misc
sawfish.wm.util.rects
sawfish.wm.state.maximize
sawfish.wm.state.iconify
sawfish.wm.custom
sawfish.wm.commands
sawfish.wm.workspace
sawfish.wm.util.stacking
sawfish.wm.commands)


;;(define desired-x)
;;(define desired-y)

;; copied from ...'friedel.corner (by Friedrich Delgado Friedrichs <friedel@ nomaden.org>)
(define (corner-window-position w x y)
(window-put w 'position x y)
(move-window-to w x y)
;; isn't it implicit?
(call-window-hook 'after-move-hook w '(())))

;; -1 0 1
;;
(define (shift selector position size width)
(cond ((eq selector -1)
0)
((eq selector 0)
position)
((eq selector 1)
(- size width)
)
((eq selector 3)
(round (/ (- size width) 2))
)))

(define (move-to-extreme w vert hor)
""
(let((desired-x ;<---->
(shift
hor
(car (window-position w))
(screen-width)
(car (window-frame-dimensions w))))
(desired-y
(shift
vert
(cdr (window-position w))
(screen-height)
(cdr (window-frame-dimensions w)))))
(corner-window-position w desired-x desired-y)))

;; (move (input-focus) 1 0)
(define-command 'extreme-window-se
(lambda (w) (move-to-extreme w 1 1)) #:spec "%W")
(define-command 'extreme-window-sw
(lambda (w) (move-to-extreme w 1 -1)) #:spec "%W")
(define-command 'extreme-window-s
(lambda (w) (move-to-extreme w 1 0)) #:spec "%W")

;; west/eastt
(define-command 'extreme-window-w
(lambda (w) (move-to-extreme w 0 -1)) #:spec "%W")
(define-command 'extreme-window-e
(lambda (w) (move-to-extreme w 0 1)) #:spec "%W")

;; north
(define-command 'extreme-window-n
(lambda (w) (move-to-extreme w -1 0)) #:spec "%W")
(define-command 'extreme-window-nw
(lambda (w) (move-to-extreme w -1 -1)) #:spec "%W")
(define-command 'extreme-window-ne
(lambda (w) (move-to-extreme w -1 1)) #:spec "%W")

;; center
(define-command 'extreme-window-c
(lambda (w) (move-to-extreme w 3 3)) #:spec "%W")
)


Ainsi que les raccourcis qui vont bien (parce que le pavé numérique, c'est bien, mais sur les laptops, c'est pas terrible.

(require 'extremes)
(require 'sawfish.wm.keymaps)
(bind-keys window-keymap
"C-I" 'extreme-window-nw ; move to extr.
"C-P" 'extreme-window-ne
"C-L" 'extreme-window-c
"C-." 'extreme-window-sw
"C-section" 'extreme-window-se
)


Et pour finir, un petit mode de placement, pour placer automatiquement les fenêtres dans un coin (ignore les panels, c'est un peu gruik ...

;; (c) nerf, 2004
;; GPL http://gnu.org(...)

;; New placement mode to put windows in corners

;; require ...
(require 'extremes)
(require 'sawfish.wm.placement)

(define (plac-se w)
((move-to-extreme w 1 1)))
(define (plac-nw w)
((move-to-extreme w -1 -1)))
(define (plac-ne w)
((move-to-extreme w -1 1)))
(define (plac-sw w)
((move-to-extreme w 1 -1)))

(define-placement-mode 'south-east plac-se #:normal t)
(define-placement-mode 'south-west plac-sw #:normal t)
(define-placement-mode 'north-east plac-ne #:normal t)
(define-placement-mode 'north-west plac-nw #:normal t)

  • [^]Re: Just for fun

    Posté par L (page perso, ) le 10/06/2005 à 13:50. (lien). Évalué à 2.

    C'est vrai qu'avec IceWM, ce qui est con, c'est que cette gestion des fenêtres est déjà intégrée : tu n'as pas à te taper un code LISP réputé pour sa clarté et sa lisibilité :)

    • [^]Re: Just for fun

      Posté par jerome (page perso, ) le 11/06/2005 à 22:21. (lien). Évalué à 4.

      nianiania, mais IceWM n'a pas de fonction fishbowl, alors bon :P

  • [^]Re: Just for fun

    Posté par tgl () le 10/06/2005 à 15:30. (lien). Évalué à 2.

    > ça ne permet de bouger dans les coins en prenant soin d'éviter un
    > éventuel panel

    Patch :
    http://tdegreni.free.fr/temp/extremes--workarea.patch(...)

    > (qui utilise ce genre de trucs de toute façon ?).

    Bah moi, et j'assume :)

Revenir en haut de page