diff options
Diffstat (limited to '.config/openbox')
-rwxr-xr-x | .config/openbox/autostart.sh | 19 | ||||
-rw-r--r-- | .config/openbox/lxde-rc.xml | 779 | ||||
-rw-r--r-- | .config/openbox/menu.xml | 236 | ||||
-rwxr-xr-x | .config/openbox/pipemenus/obpipemenu-places | 102 | ||||
-rw-r--r-- | .config/openbox/rc.xml | 937 | ||||
-rwxr-xr-x | .config/openbox/scripts/xcompmgr.sh | 25 | ||||
-rwxr-xr-x | .config/openbox/scripts/xdg-menu | 49 |
7 files changed, 2147 insertions, 0 deletions
diff --git a/.config/openbox/autostart.sh b/.config/openbox/autostart.sh new file mode 100755 index 0000000..ea10b93 --- /dev/null +++ b/.config/openbox/autostart.sh @@ -0,0 +1,19 @@ +#!/bin/sh +feh --bg-fill '/home/ly/pictures/wallpapers/.current' & +#nitrogen --restore & +#ibus-daemon -d -x +pgrep fcitx || fcitx & +pkill tint2 +tint2 & +#xcompmgr -CfF & +pgrep xcompmgr || xcompmgr & +pgrep xscreensaver || xscreensaver -no-splash & +#wicd-client & +#scrolling.sh & +#xfce4-volumed +#xmms2-launcher +#mpd & +#parcellite & +pgrep urxvtd || urxvtd -q -f -o & +#/usr/bin/conky -q & +#xfce4-power-manager & diff --git a/.config/openbox/lxde-rc.xml b/.config/openbox/lxde-rc.xml new file mode 100644 index 0000000..6b52056 --- /dev/null +++ b/.config/openbox/lxde-rc.xml @@ -0,0 +1,779 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Do not edit this file, it will be overwritten on install. + Copy the file to $HOME/.config/openbox/ instead. --> +<openbox_config xmlns="http://openbox.org/3.4/rc"> + <resistance> + <strength>10</strength> + <screen_edge_strength>20</screen_edge_strength> + </resistance> + <focus> + <focusNew>yes</focusNew> + <!-- always try to focus new windows when they appear. other rules do + apply --> + <followMouse>yes</followMouse> + <!-- move focus to a window when you move the mouse into it --> + <focusLast>yes</focusLast> + <!-- focus the last used window when changing desktops, instead of the one + under the mouse pointer. when followMouse is enabled --> + <underMouse>no</underMouse> + <!-- move focus under the mouse, even when the mouse is not moving --> + <focusDelay>200</focusDelay> + <!-- when followMouse is enabled, the mouse must be inside the window for + this many milliseconds (1000 = 1 sec) before moving focus to it --> + <raiseOnFocus>no</raiseOnFocus> + <!-- when followMouse is enabled, and a window is given focus by moving the + mouse into it, also raise the window --> + </focus> + <placement> + <policy>Smart</policy> + <!-- 'Smart' or 'UnderMouse' --> + <center>yes</center> + <!-- whether to place windows in the center of the free area found or + the top left corner --> + <monitor>Any</monitor> + <!-- with Smart placement on a multi-monitor system, try to place new windows + on: 'Any' - any monitor, 'Mouse' - where the mouse is, 'Active' - where + the active window is --> + <primaryMonitor/> + </placement> + <theme> + <name>Litestyle-Mint</name> + <titleLayout>NLIMC</titleLayout> + <!-- + available characters are NDSLIMC, each can occur at most once. + N: window icon + L: window label (AKA title). + I: iconify + M: maximize + C: close + S: shade (roll up/down) + D: omnipresent (on all desktops). + --> + <keepBorder>yes</keepBorder> + <animateIconify>yes</animateIconify> + <font place="ActiveWindow"> + <name>sans</name> + <size>10</size> + <!-- font size in points --> + <weight>bold</weight> + <!-- 'bold' or 'normal' --> + <slant>normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="InactiveWindow"> + <name>sans</name> + <size>10</size> + <!-- font size in points --> + <weight>bold</weight> + <!-- 'bold' or 'normal' --> + <slant>normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="MenuHeader"> + <name>sans</name> + <size>10</size> + <!-- font size in points --> + <weight>normal</weight> + <!-- 'bold' or 'normal' --> + <slant>normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="MenuItem"> + <name>sans</name> + <size>10</size> + <!-- font size in points --> + <weight>normal</weight> + <!-- 'bold' or 'normal' --> + <slant>normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="ActiveOnScreenDisplay"> + <name/> + </font> + <font place="InactiveOnScreenDisplay"> + <name>Sans</name> + <size>8</size> + <weight/> + <slant/> + </font> + </theme> + <desktops> + <!-- this stuff is only used at startup, pagers allow you to change them + during a session + + these are default values to use when other ones are not already set + by other applications, or saved in your session + + use obconf if you want to change these without having to log out + and back in --> + <number>2</number> + <firstdesk>1</firstdesk> + <names> + <!-- set names up here if you want to, like this: + <name>desktop 1</name> + <name>desktop 2</name> + --> + </names> + <popupTime>875</popupTime> + <!-- The number of milliseconds to show the popup for when switching + desktops. Set this to 0 to disable the popup. --> + </desktops> + <resize> + <drawContents>yes</drawContents> + <popupShow>Nonpixel</popupShow> + <!-- 'Always', 'Never', or 'Nonpixel' (xterms and such) --> + <popupPosition>Center</popupPosition> + <!-- 'Center', 'Top', or 'Fixed' --> + <popupFixedPosition> + <!-- these are used if popupPosition is set to 'Fixed' --> + <x>10</x> + <!-- positive number for distance from left edge, negative number for + distance from right edge, or 'Center' --> + <y>10</y> + <!-- positive number for distance from top edge, negative number for + distance from bottom edge, or 'Center' --> + </popupFixedPosition> + </resize> + <!-- You can reserve a portion of your screen where windows will not cover when + they are maximized, or when they are initially placed. + Many programs reserve space automatically, but you can use this in other + cases. --> + <margins> + <top>0</top> + <bottom>0</bottom> + <left>0</left> + <right>0</right> + </margins> + <dock> + <position>TopLeft</position> + <!-- (Top|Bottom)(Left|Right|)|Top|Bottom|Left|Right|Floating --> + <floatingX>0</floatingX> + <floatingY>0</floatingY> + <noStrut>no</noStrut> + <stacking>Above</stacking> + <!-- 'Above', 'Normal', or 'Below' --> + <direction>Vertical</direction> + <!-- 'Vertical' or 'Horizontal' --> + <autoHide>no</autoHide> + <hideDelay>300</hideDelay> + <!-- in milliseconds (1000 = 1 second) --> + <showDelay>300</showDelay> + <!-- in milliseconds (1000 = 1 second) --> + <moveButton>Middle</moveButton> + <!-- 'Left', 'Middle', 'Right' --> + </dock> + <keyboard> + <chainQuitKey>C-g</chainQuitKey> + <!-- Keybindings for desktop switching --> + <keybind key="C-A-Left"> + <action name="DesktopLeft"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="C-A-Right"> + <action name="DesktopRight"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="C-A-Up"> + <action name="DesktopUp"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="C-A-Down"> + <action name="DesktopDown"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Left"> + <action name="SendToDesktopLeft"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Right"> + <action name="SendToDesktopRight"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Up"> + <action name="SendToDesktopUp"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Down"> + <action name="SendToDesktopDown"> + <dialog>no</dialog> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="W-F1"> + <action name="Desktop"> + <desktop>1</desktop> + </action> + </keybind> + <keybind key="W-F2"> + <action name="Desktop"> + <desktop>2</desktop> + </action> + </keybind> + <keybind key="W-F3"> + <action name="Desktop"> + <desktop>3</desktop> + </action> + </keybind> + <keybind key="W-F4"> + <action name="Desktop"> + <desktop>4</desktop> + </action> + </keybind> + <keybind key="W-d"> + <action name="ToggleShowDesktop"/> + </keybind> + <keybind key="C-A-d"> + <action name="ToggleShowDesktop"/> + </keybind> + <!-- Keybindings for windows --> + <keybind key="A-F4"> + <action name="Close"/> + </keybind> + <keybind key="A-Escape"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </keybind> + <keybind key="A-space"> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </keybind> + <!-- Keybindings for window switching --> + <keybind key="A-Tab"> + <action name="NextWindow"/> + </keybind> + <keybind key="A-S-Tab"> + <action name="PreviousWindow"/> + </keybind> + <keybind key="C-A-Tab"> + <action name="NextWindow"> + <panels>yes</panels> + <desktop>yes</desktop> + </action> + </keybind> + <!-- Keybindings for running applications --> + <keybind key="W-e"> + <action name="Execute"> + <startupnotify> + <enabled>true</enabled> + <name>PCManFM</name> + </startupnotify> + <command>pcmanfm</command> + </action> + </keybind> + <!--keybindings for LXPanel --> + <keybind key="W-r"> + <action name="Execute"> + <command>lxpanelctl run</command> + </action> + </keybind> + <keybind key="A-F2"> + <action name="Execute"> + <command>lxpanelctl run</command> + </action> + </keybind> + <keybind key="C-Escape"> + <action name="Execute"> + <command>lxpanelctl menu</command> + </action> + </keybind> + <keybind key="F11"> + <action name="ToggleFullscreen"/> + </keybind> + <!-- Launch Task Manager with Ctrl+Alt+Del --> + <keybind key="A-C-Delete"> + <action name="Execute"> + <command>lxsession-logout</command> + </action> + </keybind> + <!-- LY4ever customization --> + <keybind key="Print"> + <action name="Execute"> + <execute>scrot 'ly_%Y%m%d_$wx$h.png' -e 'mv $f ~/pictures/screenshots'</execute> + </action> + </keybind> + <keybind key="A-Print"> + <action name="Execute"> + <execute>scrot -bud 3 'ly_%Y%m%d_$wx$h.png' -e 'mv $f ~/pictures/screenshots'</execute> + </action> + </keybind> + <keybind key="A-F3"> + <action name="Execute"> + <command>~/bin/dmenu.sh</command> + </action> + </keybind> + <keybind key="W-t"> + <action name="Execute"> + <command>urxvt</command> + <startupnotify> + <enabled>yes</enabled> + <name>URxvt</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-w"> + <action name="Execute"> + <command>firefox</command> + <startupnotify> + <enabled>yes</enabled> + <name>Firefox Web Browser</name> + </startupnotify> + </action> + </keybind> + <!-- Volume Control --> + <keybind key="XF86AudioLowerVolume"> + <action name="Execute"> + <execute>mixer vol -5:-5</execute> + </action> + </keybind> + <keybind key="XF86AudioRaiseVolume"> + <action name="Execute"> + <execute>mixer vol +5:+5</execute> + </action> + </keybind> + <!-- screensaver --> + <keybind key="C-A-l"> + <action name="Execute"> + <execute>xscreensaver-command -lock</execute> + </action> + </keybind> + </keyboard> + <mouse> + <dragThreshold>8</dragThreshold> + <!-- number of pixels the mouse must move before a drag begins --> + <doubleClickTime>200</doubleClickTime> + <!-- in milliseconds (1000 = 1 second) --> + <screenEdgeWarpTime>400</screenEdgeWarpTime> + <!-- Time before changing desktops when the pointer touches the edge of the + screen while moving a window, in milliseconds (1000 = 1 second). + Set this to 0 to disable warping --> + <context name="Frame"> + <mousebind button="A-Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="A-Left" action="Click"> + <action name="Unshade"/> + </mousebind> + <mousebind button="A-Left" action="Drag"> + <action name="Move"/> + </mousebind> + <mousebind button="A-Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="A-Right" action="Drag"> + <action name="Resize"/> + </mousebind> + <mousebind button="A-Middle" action="Press"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </mousebind> + <mousebind button="A-Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="A-Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="C-A-Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="C-A-Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="A-S-Up" action="Click"> + <action name="SendToDesktopPrevious"/> + </mousebind> + <mousebind button="A-S-Down" action="Click"> + <action name="SendToDesktopNext"/> + </mousebind> + </context> + <context name="Titlebar"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Move"/> + </mousebind> + <mousebind button="Left" action="DoubleClick"> + <action name="ToggleMaximizeFull"/> + </mousebind> + <mousebind button="Middle" action="Press"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </mousebind> + <mousebind button="Up" action="Click"> + <action name="Shade"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + <action name="Lower"/> + </mousebind> + <mousebind button="Down" action="Click"> + <action name="Unshade"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + </context> + <context name="Top"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"> + <edge>top</edge> + </action> + </mousebind> + </context> + <context name="Left"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"> + <edge>left</edge> + </action> + </mousebind> + </context> + <context name="Right"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"> + <edge>right</edge> + </action> + </mousebind> + </context> + <context name="Bottom"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"> + <edge>bottom</edge> + </action> + </mousebind> + <mousebind button="Middle" action="Press"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + </context> + <context name="BLCorner"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"/> + </mousebind> + </context> + <context name="BRCorner"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"/> + </mousebind> + </context> + <context name="TLCorner"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"/> + </mousebind> + </context> + <context name="TRCorner"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Drag"> + <action name="Resize"/> + </mousebind> + </context> + <context name="Client"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Middle" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + </context> + <context name="Icon"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + </context> + <context name="AllDesktops"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Click"> + <action name="ToggleOmnipresent"/> + </mousebind> + </context> + <context name="Shade"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Click"> + <action name="ToggleShade"/> + </mousebind> + </context> + <context name="Iconify"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Left" action="Click"> + <action name="Iconify"/> + </mousebind> + </context> + <context name="Maximize"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Middle" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Click"> + <action name="ToggleMaximizeFull"/> + </mousebind> + <mousebind button="Middle" action="Click"> + <action name="ToggleMaximizeVert"/> + </mousebind> + <mousebind button="Right" action="Click"> + <action name="ToggleMaximizeHorz"/> + </mousebind> + </context> + <context name="Close"> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind button="Left" action="Click"> + <action name="Close"/> + </mousebind> + </context> + <context name="Desktop"> + <mousebind button="Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="A-Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="A-Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="C-A-Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="C-A-Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="Left" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + </context> + <context name="Root"> + <!-- Menus --> + <mousebind button="Middle" action="Press"> + <action name="ShowMenu"> + <menu>client-list-combined-menu</menu> + </action> + </mousebind> + <mousebind button="Right" action="Press"> + <action name="ShowMenu"> + <menu>root-menu</menu> + </action> + </mousebind> + </context> + <context name="MoveResize"> + <mousebind button="Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + <mousebind button="A-Up" action="Click"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind button="A-Down" action="Click"> + <action name="DesktopNext"/> + </mousebind> + </context> + </mouse> + <menu> + <!-- You can specify more than one menu file in here and they are all loaded, + just don't make menu ids clash or, well, it'll be kind of pointless --> + <!-- default menu file (or custom one in $HOME/.config/openbox/) --> + <file>/usr/local/share/lxde/openbox/menu.xml</file> + <hideDelay>200</hideDelay> + <!-- if a press-release lasts longer than this setting (in milliseconds), the + menu is hidden again --> + <middle>no</middle> + <!-- center submenus vertically about the parent entry --> + <submenuShowDelay>100</submenuShowDelay> + <!-- this one is easy, time to delay before showing a submenu after hovering + over the parent entry --> + <applicationIcons>yes</applicationIcons> + <!-- controls if icons appear in the client-list-(combined-)menu --> + <manageDesktops>yes</manageDesktops> + <!-- show the manage desktops section in the client-list-(combined-)menu --> + </menu> + <applications> + <!-- + # this is an example with comments through out. use these to make your + # own rules, but without the comments of course. + + <application name="first element of window's WM_CLASS property (see xprop)" + class="second element of window's WM_CLASS property (see xprop)" + role="the window's WM_WINDOW_ROLE property (see xprop)"> + # the name or the class can be set, or both. this is used to match + # windows when they appear. role can optionally be set as well, to + # further restrict your matches. + + # the name, class, and role use simple wildcard matching such as those + # used by a shell. you can use * to match any characters and ? to match + # any single character. + + # when multiple rules match a window, they will all be applied, in the + # order that they appear in this list + + + # each element can be left out or set to 'default' to specify to not + # change that attribute of the window + + <decor>yes</decor> + # enable or disable window decorations + + <shade>no</shade> + # make the window shaded when it appears, or not + + <position> + # the position is only used if both an x and y coordinate are provided + # (and not set to 'default') + <x>center</x> + # a number like 50, or 'center' to center on screen. use a negative number + # to start from the right (or bottom for <y>), ie -50 is 50 pixels from the + # right edge (or bottom). + <y>200</y> + <monitor>1</monitor> + # specifies the monitor in a xinerama setup. + # 1 is the first head, or 'mouse' for wherever the mouse is + </position> + + <focus>yes</focus> + # if the window should try be given focus when it appears. if this is set + # to yes it doesn't guarantee the window will be given focus. some + # restrictions may apply, but Openbox will try to + + <desktop>1</desktop> + # 1 is the first desktop, 'all' for all desktops + + <layer>normal</layer> + # 'above', 'normal', or 'below' + + <iconic>no</iconic> + # make the window iconified when it appears, or not + + <skip_pager>no</skip_pager> + # asks to not be shown in pagers + + <skip_taskbar>no</skip_taskbar> + # asks to not be shown in taskbars. window cycling actions will also + # skip past such windows + + <fullscreen>yes</fullscreen> + # make the window in fullscreen mode when it appears + + <maximized>true</maximized> + # 'Horizontal', 'Vertical' or boolean (yes/no) + </application> + + # end of the example +--> + </applications> +</openbox_config> diff --git a/.config/openbox/menu.xml b/.config/openbox/menu.xml new file mode 100644 index 0000000..c6fd3a7 --- /dev/null +++ b/.config/openbox/menu.xml @@ -0,0 +1,236 @@ +<?xml version="1.0" encoding="utf-8"?> +<openbox_menu xmlns="http://openbox.org/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://openbox.org/ file:///usr/share/openbox/menu.xsd"> + <menu id="root-menu" label="Debian"> + <!-- + <item label="Install"> + <action name="Execute"> + <execute> + xterm -T "Install ArchBang" -e "gksudo ab-install" + </execute> + </action> + </item> + <item label="cp2ram"> + <action name="Execute"> + <execute> + xterm -T "Copy to ram" -e "gksudo cp2ram" + </execute> + </action> + </item> + <separator/> + --> + <item label="Run Program"> + <action name="Execute"> + <execute> + dmenu.sh + </execute> + </action> + </item> + <separator/> + <item label="Terminal"> + <action name="Execute"> + <execute> + urxvtc + </execute> + </action> + </item> + <item label="Web Browser"> + <action name="Execute"> + <execute> + firefox + </execute> + </action> + </item> + <item label="File Manager"> + <action name="Execute"> + <execute> + thunar + </execute> + </action> + </item> + <item label="Text Editor"> + <action name="Execute"> + <execute> + leafpad + </execute> + </action> + </item> + <separator/> + <menu id="accessories" label="Accessories"> + <item label="Archive Manager"> + <action name="Execute"> + <execute> + xarchiver + </execute> + </action> + </item> + <item label="GVim"> + <action name="Execute"> + <execute> + gvim + </execute> + </action> + </item> + <item label="Leafpad"> + <action name="Execute"> + <execute> + leafpad + </execute> + </action> + </item> + <item label="LXTerminal"> + <action name="Execute"> + <execute> + lxterminal + </execute> + </action> + </item> + <menu id="graphicsScreenshots" label="Take Screenshot"> + <item label="Now"> + <action name="Execute"> + <execute> + scrot 'ly_%Y%m%d_$wx$h.png' -e 'mv $f ~/ & geeqie ~/$f' + </execute> + </action> + </item> + <item label="In 3 Seconds..."> + <action name="Execute"> + <execute> + scrot -d 3 'ly_%Y%m%d_$wx$h.png' -e 'mv $f ~/ & geeqie ~/$f' + </execute> + </action> + </item> + <item label="In 10 Seconds..."> + <action name="Execute"> + <execute> + scrot -d 10 'ly_%Y%m%d_$wx$h.png' -e 'mv $f ~/ & geeqie ~/$f' + </execute> + </action> + </item> + <item label="Selected Area... (click & drag mouse)"> + <action name="Execute"> + <execute> + scrot -s 'ly_%Y%m%d_$wx$h.png' -e 'mv $f ~/ & geeqie ~/$f' + </execute> + </action> + </item> + <item label="Active Window"> + <action name="Execute"> + <execute> + scrot -bud 3 'ly_%Y%m%d_$wx$h.png' -e 'mv $f ~/ & geeqie ~/$f' + </execute> + </action> + </item> + </menu> + </menu> + <separator/> + <menu execute="~/.config/openbox/pipemenus/obpipemenu-places ~/" id="places" label="Places"/> + <menu execute="python ~/.config/openbox/scripts/xdg-menu" id="apps-menu" label="XDG-Menus"/> + <separator/> + <menu id="settings" label="Preferences"> + <menu id="settings-162352" label="Effects"> + <item label="No effects"> + <action name="Execute"> + <execute> + ~/.config/openbox/scripts/xcompmgr.sh unset + </execute> + </action> + </item> + <item label="Transparency"> + <action name="Execute"> + <execute> + ~/.config/openbox/scripts/xcompmgr.sh set + </execute> + </action> + </item> + <item label="Transparency, fading"> + <action name="Execute"> + <execute> + ~/.config/openbox/scripts/xcompmgr.sh setshaded + </execute> + </action> + </item> + <item label="Transparancy, fading shadows"> + <action name="Execute"> + <execute> + ~/.config/openbox/scripts/xcompmgr.sh setshadowshade + </execute> + </action> + </item> + </menu> + <menu id="obConfig" label="Openbox Config"> + <item label="Edit menu.xml"> + <action name="Execute"> + <execute> + gvim ~/.config/openbox/menu.xml + </execute> + </action> + </item> + <item label="Edit rc.xml"> + <action name="Execute"> + <execute> + gvim ~/.config/openbox/rc.xml + </execute> + </action> + </item> + <item label="Edit autostart.sh"> + <action name="Execute"> + <execute> + gvim ~/.config/openbox/autostart.sh + </execute> + </action> + </item> + <!-- + <item label="GUI Menu Editor"> + <action name="Execute"> + <execute> + obmenu + </execute> + </action> + </item> + --> + <item label="GUI Config Tool"> + <action name="Execute"> + <execute> + obconf + </execute> + </action> + </item> + </menu> + <item label="tint2 Panel Config"> + <action name="Execute"> + <execute> + gvim ~/.config/tint2/tint2rc + </execute> + </action> + </item> + <item label="GTK Appearance"> + <action name="Execute"> + <execute> + lxappearance + </execute> + </action> + </item> + </menu> + <separator/> + <menu id="Session" label="Session"> + <item label="Reconfigure"> + <action name="Reconfigure"/> + </item> + <item label="Restart"> + <action name="Restart"/> + </item> + <item label="Exit"> + <action name="Exit"/> + </item> + <!-- + <item label="Logout"> + <action name="Execute"> + <execute> + oblogout + </execute> + </action> + </item> + --> + </menu> + </menu> +</openbox_menu> diff --git a/.config/openbox/pipemenus/obpipemenu-places b/.config/openbox/pipemenus/obpipemenu-places new file mode 100755 index 0000000..3b73618 --- /dev/null +++ b/.config/openbox/pipemenus/obpipemenu-places @@ -0,0 +1,102 @@ +#!/usr/bin/perl +# Recursively browse filesystem through openbox3 pipe menus +#### Usage: add +# <menu id="browse" label="Browse" execute="obpipemenu-places ~" /> +# to your .config/openbox/menu.xml +#### CAVEAT #### +# This script was hacked on exclusively in stints between the hours of +# 4 and 5 in the morning. Quality may have suffered. +#### +# Script by dircha from ob list on 05/17/04 +# suggested improvements by John Russell on 05/17/04 implemented +# a year later by Kacper Wysocki. +# 05/30/05 - Kacper Wysocki +# - opens files with 'rox', which launches appropriate file handler +# - hidden directories now stay hidden +# - spaces, ampersands in dir- and filenames are escaped +# - newlines at each entry to make output a little readable +# 06/04/05 - Kacper Wysocki +# - use $0 for scriptname +# - use $ENV{'HOME'} as default path +# - now follows symlinks + +use strict; + +# Command to lauch files with +my $cmd = "thunar"; + +my $path = $ARGV[0]; +$path = "$ENV{'HOME'}" if $path eq ""; +my @files = split /\n/, `ls -1p '$path'`; +mk_menu_element($path, @files); + +sub mk_menu_element { + my ($path, @files) = @_; + + print "<openbox_pipe_menu>\n"; + + # "Browse here..." lauches this dir + print "<item label=\"Browse here..\">". + "\n\t<action name=\"Execute\">". + "\n\t\t<execute>$cmd '$path'</execute>". + "\n\t</action>". + "\n</item>\n". + "<separator />"; + + foreach $_ (@files) { + my $length = length $_; + my $last_c = substr $_, $length - 1, 1; + + if ($last_c eq "/") { + print mk_dir_element($path, substr $_, 0, $length - 1); + } elsif ($last_c eq "@") { + print mk_sym_element($path, substr $_, 0, $length - 1); + } else { + print mk_file_element($path, $_); + } + } + print "</openbox_pipe_menu>\n"; +} + +sub mk_dir_element { + my ($path, $name) = @_; + # escape ampersand and space in pathnames + $path =~ s/&/&/g; + $name =~ s/&/&/g; + $path =~ s/ /\\ /g; + $name =~ s/ /\\ /g; + + return "<menu id=\"$path/$name\" label=\"$name\" execute=\"$0 $path/$name\" />\n"; +} + +sub mk_sym_element { + my ($path, $name) = @_; + # escape ampersand in pathnames + $path =~ s/&/&/g; + $name =~ s/&/&/g; + + # Follow symlinks instead of opening links in rox. + return "<menu id=\"$path/$name\" label=\"$name\" execute=\"$0 $path/$name\" />\n"; +=cut + return "<item label=\"$name\">". + "\n\t<action name=\"Execute\">". + "\n\t\t<execute>$cmd '$path/$name'</execute>". + "\n\t</action>" + . "\n</item>\n"; +=cut +} + +sub mk_file_element { + my ($path, $name) = @_; + my $label = $name; + # escape ampersand in pathnames + $path =~ s/&/&/g; + $name =~ s/&/&/g; + + return "<item label=\"$name\">". + "\n\t<action name=\"Execute\">". + "\n\t\t<execute>$cmd '$path/$name'</execute>". + "\n\t</action>" + . "\n</item>\n"; +} + diff --git a/.config/openbox/rc.xml b/.config/openbox/rc.xml new file mode 100644 index 0000000..aad1450 --- /dev/null +++ b/.config/openbox/rc.xml @@ -0,0 +1,937 @@ +<?xml version="1.0"?> +<openbox_config xmlns="http://openbox.org/3.4/rc"> + <resistance> + <strength>10</strength> + <screen_edge_strength>20</screen_edge_strength> + </resistance> + <focus> + <focusNew>yes</focusNew> + <!-- always try to focus new windows when they appear. other rules do + apply --> + <followMouse>yes</followMouse> + <!-- move focus to a window when you move the mouse into it --> + <focusLast>yes</focusLast> + <!-- focus the last used window when changing desktops, instead of the one + under the mouse pointer. when followMouse is enabled --> + <underMouse>no</underMouse> + <!-- move focus under the mouse, even when the mouse is not moving --> + <focusDelay>200</focusDelay> + <!-- when followMouse is enabled, the mouse must be inside the window for + this many milliseconds (1000 = 1 sec) before moving focus to it --> + <raiseOnFocus>no</raiseOnFocus> + <!-- when followMouse is enabled, and a window is given focus by moving the + mouse into it, also raise the window --> + </focus> + <placement> + <policy>Smart</policy> + <!-- 'Smart' or 'UnderMouse' --> + <center>yes</center> + <!-- whether to place windows in the center of the free area found or + the top left corner --> + <monitor>Any</monitor> + <primaryMonitor></primaryMonitor> + </placement> + <theme> + <name>Litestyle-Mint</name> + <titleLayout>DSLIMC</titleLayout> + <!-- + avaible characters are NDSLIMC, each can occur at most once. + N: window icon + L: window label (AKA title). + I: iconify + M: maximize + C: close + S: shade (roll up/down) + D: omnipresent (on all desktops). + --> + <keepBorder>yes</keepBorder> + <animateIconify>yes</animateIconify> + <font place="ActiveWindow"> + <name>Sans</name> + <size>9</size> + <!-- font size in points --> + <weight>Bold</weight> + <!-- 'bold' or 'normal' --> + <slant>Normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="InactiveWindow"> + <name>Sans</name> + <size>9</size> + <!-- font size in points --> + <weight>Normal</weight> + <!-- 'bold' or 'normal' --> + <slant>Normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="MenuHeader"> + <name>Sans</name> + <size>9</size> + <!-- font size in points --> + <weight>Normal</weight> + <!-- 'bold' or 'normal' --> + <slant>Normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="MenuItem"> + <name>Sans</name> + <size>9</size> + <!-- font size in points --> + <weight>Normal</weight> + <!-- 'bold' or 'normal' --> + <slant>Normal</slant> + <!-- 'italic' or 'normal' --> + </font> + <font place="ActiveOnScreenDisplay"> + <name/> + </font> + <font place="InactiveOnScreenDisplay"> + <name>Sans</name> + <size>8</size> + <weight></weight> + <slant></slant> + </font> + </theme> + <desktops> + <!-- this stuff is only used at startup, pagers allow you to change them + during a session + + these are default values to use when other ones are not already set + by other applications, or saved in your session + + use obconf if you want to change these without having to log out + and back in --> + <number>2</number> + <firstdesk>1</firstdesk> + <names> + <name>MAIN</name> + <name>MISC</name> + <name>3</name> + <name>4</name> + </names> + <popupTime>150</popupTime> + <!-- The number of milliseconds to show the popup for when switching + desktops. Set this to 0 to disable the popup. --> + </desktops> + <resize> + <drawContents>yes</drawContents> + <popupShow>NonPixel</popupShow> + <!-- 'Always', 'Never', or 'Nonpixel' (xterms and such) --> + <popupPosition>Center</popupPosition> + <!-- 'Center' or 'Top' --> + <popupFixedPosition> + <x>0</x> + <y>0</y> + </popupFixedPosition> + </resize> + <!-- You can reserve a portion of your screen where windows will not cover when + they are maximized, or when they are initially placed. + Many programs reserve space automatically, but you can use this in other + cases. --> + <margins> + <top>0</top> + <bottom>0</bottom> + <left>0</left> + <right>0</right> + </margins> + <dock> + <position>Top</position> + <!-- (Top|Bottom)(Left|Right|)|Top|Bottom|Left|Right|Floating --> + <floatingX>0</floatingX> + <floatingY>0</floatingY> + <noStrut>no</noStrut> + <stacking>Above</stacking> + <!-- 'Above', 'Normal', or 'Below' --> + <direction>Horizontal</direction> + <!-- 'Vertical' or 'Horizontal' --> + <autoHide>no</autoHide> + <hideDelay>300</hideDelay> + <!-- in milliseconds (1000 = 1 second) --> + <showDelay>300</showDelay> + <!-- in milliseconds (1000 = 1 second) --> + <moveButton>Middle</moveButton> + <!-- 'Left', 'Middle', 'Right' --> + </dock> + <keyboard> + <chainQuitKey>C-g</chainQuitKey> + <keybind key="C-A-Left"> + <action name="DesktopLeft"> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="C-A-Right"> + <action name="DesktopRight"> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="C-A-Up"> + <action name="DesktopUp"> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="C-A-Down"> + <action name="DesktopDown"> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Left"> + <action name="SendToDesktopLeft"> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Right"> + <action name="SendToDesktopRight"> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Up"> + <action name="SendToDesktopUp"> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="S-A-Down"> + <action name="SendToDesktopDown"> + <wrap>no</wrap> + </action> + </keybind> + <keybind key="W-F1"> + <action name="Desktop"/> + </keybind> + <keybind key="W-F2"> + <action name="Desktop"> + <desktop>2</desktop> + </action> + </keybind> + <keybind key="W-F3"> + <action name="Desktop"> + <desktop>3</desktop> + </action> + </keybind> + <keybind key="W-F4"> + <action name="Desktop"> + <desktop>4</desktop> + </action> + </keybind> + <keybind key="W-d"> + <action name="ToggleShowDesktop"/> + </keybind> + <keybind key="A-F4"> + <action name="Close"/> + </keybind> + <keybind key="A-Escape"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </keybind> + <keybind key="A-space"> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </keybind> + <keybind key="A-Tab"> + <action name="NextWindow"/> + </keybind> + <keybind key="C-Tab"> + <action name="PreviousWindow"/> + </keybind> + <keybind key="C-A-Tab"> + <action name="NextWindow"> + <panels>yes</panels> + <desktop>yes</desktop> + </action> + </keybind> + <keybind key="Print"> + <action name="Execute"> + <execute>scrot 'ly_%Y%m%d_$wx$h.png' -e 'mv $f ~/pictures/screenshots'</execute> + </action> + </keybind> + <keybind key="A-Print"> + <action name="Execute"> + <execute>scrot -bud 3 'ly_%Y%m%d_$wx$h.png' -e 'mv $f ~/pictures/screenshots'</execute> + </action> + </keybind> + <keybind key="A-F2"> + <action name="Execute"> + <command>gmrun</command> + <startupnotify> + <enabled>yes</enabled> + <name>gmrun</name> + </startupnotify> + </action> + </keybind> + <keybind key="A-F3"> + <action name="Execute"> + <command>~/bin/dmenu.sh</command> + <startupnotify> + <enabled>yes</enabled> + <name>dmenu</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-space"> + <action name="ShowMenu"> + <menu>root-menu</menu> + </action> + </keybind> + <keybind key="W-Tab"> + <action name="ShowMenu"> + <menu>client-list-combined-menu</menu> + </action> + </keybind> + <keybind key="W-b"> + <action name="Execute"> + <command>~/bin/blank-screen.sh</command> + </action> + </keybind> + <keybind key="W-c"> + <action name="Execute"> + <command>catfish</command> + <startupnotify> + <enabled>yes</enabled> + <name>Catfish</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-e"> + <action name="Execute"> + <command>epdfview</command> + <startupnotify> + <enabled>yes</enabled> + <name>PDF</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-f"> + <action name="Execute"> + <command>thunar</command> + <startupnotify> + <enabled>yes</enabled> + <name>Thunar</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-g"> + <action name="Execute"> + <command>gimp</command> + <startupnotify> + <enabled>yes</enabled> + <name>GIMP</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-k"> + <action name="Execute"> + <command>xkill</command> + <startupnotify> + <enabled>yes</enabled> + <name>Xkill</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-l"> + <action name="Execute"> + <command>leafpad</command> + <startupnotify> + <enabled>yes</enabled> + <name>Editor</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-m"> + <action name="Execute"> + <command>smplayer</command> + <startupnotify> + <enabled>yes</enabled> + <name>Mediaplayer</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-o"> + <action name="Execute"> + <command>openfetion</command> + <startupnotify> + <enabled>yes</enabled> + <name>OpenFetion</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-p"> + <action name="Execute"> + <command>pidgin</command> + <startupnotify> + <enabled>yes</enabled> + <name>Pidgin</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-t"> + <action name="Execute"> + <command>urxvtc</command> + <startupnotify> + <enabled>yes</enabled> + <name>Terminal</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-w"> + <action name="Execute"> + <command>firefox</command> + <startupnotify> + <enabled>yes</enabled> + <name>Web Browser</name> + </startupnotify> + </action> + </keybind> + <keybind key="C-A-Delete"> + <action name="Execute"> + <command>oblogout</command> + <startupnotify> + <enabled>yes</enabled> + <name>Openbox Logout</name> + </startupnotify> + </action> + </keybind> + <!-- MPD Settings --> + <keybind key="W-Down"> + <action name="Execute"> + <command>mpc toggle</command> + <startupnotify> + <enabled>yes</enabled> + <name>MPD</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-Left"> + <action name="Execute"> + <command>mpc prev</command> + <startupnotify> + <enabled>yes</enabled> + <name>MPD Prev</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-Right"> + <action name="Execute"> + <command>mpc next</command> + <startupnotify> + <enabled>yes</enabled> + <name>MPD Next</name> + </startupnotify> + </action> + </keybind> + <keybind key="W-Up"> + <action name="Execute"> + <command>mpc stop</command> + <startupnotify> + <enabled>yes</enabled> + <name>MPD Stopped</name> + </startupnotify> + </action> + </keybind> + <keybind key="XF86AudioPlay"> + <action name="Execute"> + <execute>mpc toggle</execute> + </action> + </keybind> + <keybind key="XF86AudioPrev"> + <action name="Execute"> + <execute>mpc prev</execute> + </action> + </keybind> + <keybind key="XF86AudioNext"> + <action name="Execute"> + <execute>mpc next</execute> + </action> + </keybind> + <keybind key="XF86AudioStop"> + <action name="Execute"> + <execute>mpc stop</execute> + </action> + </keybind> + <!-- XMMS2 Settings End --> + <!-- Volume Control --> + <keybind key="XF86AudioLowerVolume"> + <action name="Execute"> + <execute>mixer vol -5:-5</execute> + </action> + </keybind> + <keybind key="XF86AudioRaiseVolume"> + <action name="Execute"> + <execute>mixer vol +5:+5</execute> + </action> + </keybind> + <!-- screensaver --> + <keybind key="XF86Screensaver"> + <action name="Execute"> + <execute>xscreensaver-command -lock</execute> + </action> + </keybind> + <keybind key="C-A-l"> + <action name="Execute"> + <execute>xscreensaver-command -lock</execute> + </action> + </keybind> + </keyboard> + <mouse> + <dragThreshold>8</dragThreshold> + <!-- number of pixels the mouse must move before a drag begins --> + <doubleClickTime>200</doubleClickTime> + <!-- in milliseconds (1000 = 1 second) --> + <screenEdgeWarpTime>400</screenEdgeWarpTime> + <!-- Time before changing desktops when the pointer touches the edge of the + screen while moving a window, in milliseconds (1000 = 1 second). + Set this to 0 to disable warping --> + <context name="Frame"> + <mousebind action="Press" button="A-Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Click" button="A-Left"> + <action name="Unshade"/> + </mousebind> + <mousebind action="Drag" button="A-Left"> + <action name="Move"/> + </mousebind> + <mousebind action="Press" button="A-Right"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind action="Drag" button="A-Right"> + <action name="Resize"/> + </mousebind> + <mousebind action="Press" button="A-Middle"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </mousebind> + <mousebind action="Click" button="A-Up"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind action="Click" button="A-Down"> + <action name="DesktopNext"/> + </mousebind> + <mousebind action="Click" button="C-A-Up"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind action="Click" button="C-A-Down"> + <action name="DesktopNext"/> + </mousebind> + <mousebind action="Click" button="A-S-Up"> + <action name="SendToDesktopPrevious"/> + </mousebind> + <mousebind action="Click" button="A-S-Down"> + <action name="SendToDesktopNext"/> + </mousebind> + </context> + <context name="Titlebar"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Drag" button="Left"> + <action name="Move"/> + </mousebind> + <mousebind action="DoubleClick" button="Left"> + <action name="ToggleShade"/> + </mousebind> + <mousebind action="Press" button="Middle"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </mousebind> + <mousebind action="Click" button="Up"> + <action name="Shade"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + <action name="Lower"/> + </mousebind> + <mousebind action="Click" button="Down"> + <action name="Unshade"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Press" button="Right"> + <action name="Focus"/> + <action name="Raise"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + <!-- transparency --> + <mousebind action="Click" button="C-Up"> + <action name="Execute"> + <execute>transset-df -p --inc 0.2 </execute> + </action> + </mousebind> + <mousebind action="Click" button="C-Down"> + <action name="Execute"> + <execute>transset-df -p --min 0.2 --dec 0.2 </execute> + </action> + </mousebind> + </context> + <context name="Top"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind action="Drag" button="Left"> + <action name="Resize"> + <edge>top</edge> + </action> + </mousebind> + </context> + <context name="Left"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Drag" button="Left"> + <action name="Resize"> + <edge>left</edge> + </action> + </mousebind> + </context> + <context name="Right"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Drag" button="Left"> + <action name="Resize"> + <edge>right</edge> + </action> + </mousebind> + </context> + <context name="Bottom"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Drag" button="Left"> + <action name="Resize"> + <edge>bottom</edge> + </action> + </mousebind> + <mousebind action="Press" button="Middle"> + <action name="Lower"/> + <action name="FocusToBottom"/> + <action name="Unfocus"/> + </mousebind> + <mousebind action="Press" button="Right"> + <action name="Focus"/> + <action name="Raise"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + </context> + <context name="BLCorner"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Drag" button="Left"> + <action name="Resize"/> + </mousebind> + </context> + <context name="BRCorner"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Drag" button="Left"> + <action name="Resize"/> + </mousebind> + </context> + <context name="TLCorner"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind action="Drag" button="Left"> + <action name="Resize"/> + </mousebind> + </context> + <context name="TRCorner"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind action="Drag" button="Left"> + <action name="Resize"/> + </mousebind> + </context> + <context name="Client"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Press" button="Middle"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Press" button="Right"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + </context> + <context name="Icon"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + <mousebind action="Press" button="Right"> + <action name="Focus"/> + <action name="Raise"/> + <action name="ShowMenu"> + <menu>client-menu</menu> + </action> + </mousebind> + </context> + <context name="AllDesktops"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind action="Click" button="Left"> + <action name="ToggleOmnipresent"/> + </mousebind> + </context> + <context name="Shade"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Click" button="Left"> + <action name="ToggleShade"/> + </mousebind> + </context> + <context name="Iconify"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + <mousebind action="Click" button="Left"> + <action name="Iconify"/> + </mousebind> + </context> + <context name="Maximize"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind action="Press" button="Middle"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind action="Press" button="Right"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind action="Click" button="Left"> + <action name="ToggleMaximizeFull"/> + </mousebind> + <mousebind action="Click" button="Middle"> + <action name="ToggleMaximizeVert"/> + </mousebind> + <mousebind action="Click" button="Right"> + <action name="ToggleMaximizeHorz"/> + </mousebind> + </context> + <context name="Close"> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + <action name="Unshade"/> + </mousebind> + <mousebind action="Click" button="Left"> + <action name="Close"/> + </mousebind> + </context> + <context name="Desktop"> + <mousebind action="Click" button="Up"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind action="Click" button="Down"> + <action name="DesktopNext"/> + </mousebind> + <mousebind action="Click" button="A-Up"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind action="Click" button="A-Down"> + <action name="DesktopNext"/> + </mousebind> + <mousebind action="Click" button="C-A-Up"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind action="Click" button="C-A-Down"> + <action name="DesktopNext"/> + </mousebind> + <mousebind action="Press" button="Left"> + <action name="Focus"/> + <action name="Raise"/> + </mousebind> + </context> + <context name="Root"> + <!-- Menus --> + <mousebind action="Press" button="Middle"> + <action name="ShowMenu"> + <menu>client-list-combined-menu</menu> + </action> + </mousebind> + <mousebind action="Press" button="Right"> + <action name="ShowMenu"> + <menu>root-menu</menu> + </action> + </mousebind> + </context> + <context name="MoveResize"> + <mousebind action="Click" button="Up"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind action="Click" button="Down"> + <action name="DesktopNext"/> + </mousebind> + <mousebind action="Click" button="A-Up"> + <action name="DesktopPrevious"/> + </mousebind> + <mousebind action="Click" button="A-Down"> + <action name="DesktopNext"/> + </mousebind> + </context> + </mouse> + <menu> + <!-- You can specify more than one menu file in here and they are all loaded, + just don't make menu ids clash or, well, it'll be kind of pointless --> + <!-- default menu file (or custom one in $HOME/.config/openbox/) --> + <!-- system menu files on Debian systems + <file>/var/lib/openbox/debian-menu.xml</file> + <file>debian-menu.xml</file> --> + <file>menu.xml</file> + <hideDelay>200</hideDelay> + <middle>no</middle> + <submenuShowDelay>100</submenuShowDelay> + <applicationIcons>yes</applicationIcons> + </menu> + <applications> + <!-- + # this is an example with comments through out. use these to make your + # own rules, but without the comments of course. + + <application name="first element of window's WM_CLASS property (see xprop)" + class="second element of window's WM_CLASS property (see xprop)" + role="the window's WM_WINDOW_ROLE property (see xprop)"> + # the name or the class can be set, or both. this is used to match + # windows when they appear. role can optionally be set as well, to + # further restrict your matches. + + # the name, class, and role use simple wildcard matching such as those + # used by a shell. you can use * to match any characters and ? to match + # any single character. + + # when multiple rules match a window, they will all be applied, in the + # order that they appear in this list + + + # each element can be left out or set to 'default' to specify to not + # change that attribute of the window + + <decor>yes</decor> + # enable or disable window decorations + + <shade>no</shade> + # make the window shaded when it appears, or not + + <position> + # the position is only used if both an x and y coordinate are provided + # (and not set to 'default') + <x>center</x> + # a number like 50, or 'center' to center on screen. use a negative number + # to start from the right (or bottom for <y>), ie -50 is 50 pixels from the + # right edge (or bottom). + <y>200</y> + <monitor>1</monitor> + # specifies the monitor in a xinerama setup. + # 1 is the first head, or 'mouse' for wherever the mouse is + </position> + + <focus>yes</focus> + # if the window should try be given focus when it appears. if this is set + # to yes it doesn't guarantee the window will be given focus. some + # restrictions may apply, but Openbox will try to + + <desktop>1</desktop> + # 1 is the first desktop, 'all' for all desktops + + <layer>normal</layer> + # 'above', 'normal', or 'below' + + <iconic>no</iconic> + # make the window iconified when it appears, or not + + <skip_pager>no</skip_pager> + # asks to not be shown in pagers + + <skip_taskbar>no</skip_taskbar> + # asks to not be shown in taskbars. window cycling actions will also + # skip past such windows + + <fullscreen>yes</fullscreen> + # make the window in fullscreen mode when it appears + + <maximized>true</maximized> + # 'Horizontal', 'Vertical' or boolean (yes/no) + </application> + + # end of the example + --> + <application name="gmessage"> + <decor>no</decor> + <shade>no</shade> + <skip_pager>yes</skip_pager> + <skip_taskbar>yes</skip_taskbar> + <fullscreen>no</fullscreen> + <maximized>no</maximized> + </application> + <application name="openbox-logout"> + <decor>no</decor> + <shade>no</shade> + <skip_pager>yes</skip_pager> + <fullscreen>no</fullscreen> + <maximized>no</maximized> + <layer>above</layer> + </application> + <!-- + <application name="urxvt"> + <decor>no</decor> + <shade>no</shade> + <iconic>no</iconic> + <focus>yes</focus> + <position> + <x>0</x> + <y>0</y> + </position> + <layer>below</layer> + <desktop>1</desktop> + <skip_taskbar>yes</skip_taskbar> + <skip_pager>yes</skip_pager> + </application> + --> + <application name="oblogout"> + <layer>above</layer> + <skip_taskbar>yes</skip_taskbar> + <skip_pager>yes</skip_pager> + </application> + </applications> +</openbox_config> diff --git a/.config/openbox/scripts/xcompmgr.sh b/.config/openbox/scripts/xcompmgr.sh new file mode 100755 index 0000000..e59eb6a --- /dev/null +++ b/.config/openbox/scripts/xcompmgr.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +case "$1" in + set) + killall xcompmgr + sed -i 's/#xcompmgr.*$/xcompmgr \&/g' ~/.config/openbox/autostart.sh + xcompmgr & + ;; + unset) + sed -i 's/^xcompmgr.*$/#xcompmgr \&/g' ~/.config/openbox/autostart.sh + killall xcompmgr + ;; + setshaded) + killall xcompmgr + sed -i 's/#xcompmgr.*$/xcompmgr -CfF \&/g' ~/.config/openbox/autostart.sh + xcompmgr -CfF & + ;; + setshadowshade) + killall xcompmgr + sed -i 's/#xcompmgr.*$/xcompmgr -CcfF \&/g' ~/.config/openbox/autostart.sh + xcompmgr -CcfF & + ;; + *) + echo "This script accepts the following arguments : set, setshaded, setshadowshade, unset" +esac diff --git a/.config/openbox/scripts/xdg-menu b/.config/openbox/scripts/xdg-menu new file mode 100755 index 0000000..05d6cec --- /dev/null +++ b/.config/openbox/scripts/xdg-menu @@ -0,0 +1,49 @@ +#!/usr/bin/env python
+#
+# Copyright (C) 2008 Red Hat, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+# Author(s): Luke Macken <lmacken@redhat.com>
+# Miroslav Lichvar <mlichvar@redhat.com>
+
+
+import gmenu, re, sys
+from xml.sax.saxutils import escape
+
+def walk_menu(entry):
+ if entry.get_type() == gmenu.TYPE_DIRECTORY:
+ print '<menu id="%s" label="%s">' \
+ % (escape(entry.menu_id), escape(entry.get_name()))
+ map(walk_menu, entry.get_contents())
+ print '</menu>'
+ elif entry.get_type() == gmenu.TYPE_ENTRY and not entry.is_excluded:
+ print ' <item label="%s">' % escape(entry.get_name())
+ command = re.sub(' [^ ]*%[fFuUdDnNickvm]', '', entry.get_exec())
+ if entry.launch_in_terminal:
+ command = 'xterm -title "%s" -e %s' % \
+ (entry.get_name(), command)
+ print ' <action name="Execute">' + \
+ '<command>%s</command></action>' % escape(command)
+ print ' </item>'
+
+if len(sys.argv) > 1:
+ menu = sys.argv[1] + '.menu'
+else:
+ menu = 'applications.menu'
+
+print '<?xml version="1.0" encoding="UTF-8"?>'
+print '<openbox_pipe_menu>'
+map(walk_menu, gmenu.lookup_tree(menu).root.get_contents())
+print '</openbox_pipe_menu>'
|