You are not logged in.

#501 2009-08-21 09:36:03

SpeedVin
Member
From: Poland
Registered: 2009-04-29
Posts: 955

Re: uzbl. A browser that adheres to the unix philosophy.

Vintendo wrote:

Where is your xmonad.hs?

BTW #xmonad at irc.freenode.net is a great help

Here:

10 -- Imports
 11 import XMonad
 12 import XMonad hiding (Tall)
 13 import XMonad.Hooks.DynamicLog
 14 import XMonad.Hooks.UrgencyHook
 15 import XMonad.Hooks.ManageDocks
 16 import XMonad.Hooks.ManageHelpers
 17 import XMonad.Hooks.XPropManage
 18 import XMonad.Layout.DecorationMadness
 19 import XMonad.Layout.ResizableTile
 20 import XMonad.Layout.Reflect
 21 import XMonad.Layout.HintedTile
 22 import XMonad.Layout.PerWorkspace
 23 import XMonad.Layout.NoBorders
 24 import XMonad.Layout.ThreeColumns
 25 import XMonad.Layout.Grid
 26 import XMonad.Layout.IM
 27 import XMonad.Actions.WindowGo
 28 import XMonad.Util.Run
 29 import qualified Data.Map as M
 30 import qualified XMonad.StackSet as W
 31 import Data.Ratio
 32 import System.IO
 33 import System.Exit
 34 
 35 import Graphics.X11.Xlib
 36 import Graphics.X11.Xlib.Extras
 37 import Foreign.C.Types (CLong)
 38 
 39 -- Main
 40 main = do
 41   d <- spawnPipe myStatusBar
 42   spawn myOtherBar
 43   xmonad $ withUrgencyHook NoUrgencyHook $ defaultConfig
 44     { terminal           = myTerminal
 45     , workspaces         = myWorkspaces
 46     , borderWidth        = myBorderWidth
 47     , normalBorderColor  = myNormalBorderColor
 48     , focusedBorderColor = myFocusedBorderColor
 49     , layoutHook         = myLayout
 50     , manageHook         = myManageHook
 51     , keys               = myKeys
 52     }
 53 
 54 -- Options
 55 myBorderWidth        = 0
 56 myTerminal           = "urxvtc"
 57 myNormalBorderColor  = "#303030"
 58 myFocusedBorderColor = "#ff0000"
 59 myWorkspaces         = ["1-irssi", "2-web" ,"3-im", "4", "5", "6", "7", "8", "9-term"]
 60 
 61 -- Menu and Dialog Hook
 62 getProp a w = withDisplay $ \dpy -> io $ getWindowProperty32 dpy a w
 63 
 64 checkAtom name value = ask >>= \w -> liftX $ do
 65   a   <- getAtom name
 66   val <- getAtom value
 67   mbr <- getProp a w
 68   case mbr of
 69     Just [r] -> return $ elem (fromIntegral r) [val]
 70     _        -> return False
 71 
 72 checkMenu   = checkAtom "_NET_WM_WINDOW_TYPE" "_NET_WM_WINDOW_TYPE_MENU"
 73 checkDialog = checkAtom "_NET_WM_WINDOW_TYPE" "_NET_WM_WINDOW_TYPE_DIALOG"
 74 
 75 manageMenus   = checkMenu   --> doFloat
 76 manageDialogs = checkDialog --> doFloat
 77 
 78 --  Window Management
 79 myManageHook = composeAll . concat $
 80   [ [(className =? m <&&> role =? "roster") --> (ask >>= doF . W.sink) | m <- myIMs    ]
 81   , [className  =? m                        --> doShift "3-im"         | m <- myIMs    ]
 82   , [className  =? w                        --> doShift "2-web"        | w <- myWebs   ]
 83   , [title      =? i                        --> doShift "1-irssi"      | i <- myIRC    ]
 84   , [className  =? f                        --> doFloat                | f <- myFloats ]
 85   , [className  =? c                        --> doCenterFloat          | c <- myCFloats]
 86   ]
 87   where
 88     role      = stringProperty "WM_WINDOW_ROLE"
 89     myIMs     = ["Gajim.py", "Pidgin"]
 90     myWebs    = ["Navigator", "Shiretoko", "Firefox"]
 91     myIRC     = ["irssi", "weechat"]
 92     myFloats  = ["VirtualBox"]
 93     myCFloats = ["Gajim.py", "Pidgin", "Zenity"]
 94 
 95 -- Layouts
 96 myLayout = avoidStruts $ onWorkspace "3-im" imLayout $ tiled ||| Mirror tiled ||| hintedTile Tall ||| hintedTile Wide ||| imLayout |||
 97   where
 98     tiled      = ResizableTall nmaster delta ratio []
 99     hintedTile = HintedTile nmaster delta ratio TopLeft
100     imLayout   = reflectHoriz $ withIM (1%10) (Role "roster") Grid
101     nmaster    = 1
102     delta      = 3 % 100
103     ratio      = 1 % 2
104 
105 -- LogHook
106 myLogHook h = dynamicLogWithPP $ defaultPP
107   { ppCurrent         = dzenColor "#303030" "#909090" . pad
108   , ppHidden          = dzenColor "#909090" "" . pad
109   , ppHiddenNoWindows = dzenColor "#606060" "" . pad
110   , ppLayout          = dzenColor "#909090" "" . pad
111   , ppUrgent          = wrap (dzenColor "#ff0000" "" "{") (dzenColor "#ff0000" "" "}") . pad
112   , ppTitle           = wrap "^fg(#909090)[ " " ]^fg()" . shorten 40
113   , ppWsSep           = ""
114   , ppSep             = " "
115   , ppOutput          = hPutStrLn h
116   }
117 
118 -- Status Bars 
119 myStatusBar = "dzen2 -p -ta l -fn Verdana-8 -x 0 -y 0 -w 700 -h 15 -fg '#606060' -bg '#303030' -e 'onexit=ungrabmouse'"
120 myOtherBar  = "conky -c ~/.dzen_conkyrc | dzen2 -p -ta r -fn Verdana-8 -x 700 -y 0 -w 1220 -h 15 -fg '#606060' -bg '#303030' -e 'onexit
121 
122 -- Key Bindings
123 myKeys conf@(XConfig {XMonad.modMask = modMask}) = M.fromList $
124   [ ((modMask .|. shiftMask, xK_Return), spawn $ XMonad.terminal conf)
125   , ((modMask,               xK_p     ), spawn "sh /home/user/dmenu.sh")                  -- %! program launcher
126   , ((modMask,               xK_i     ), spawn "sh /home/user/mpd.sh")                      -- %! command runner
127   , ((modMask .|. shiftMask, xK_w     ), spawn "uzbl")                       -- %! open web client
128   , ((modMask .|. shiftMask, xK_m     ), spawn "urxvtc -e mutt")             -- %! open mail client
129   , ((modMask .|. shiftMask, xK_i     ), spawn "urxvtc -e irssi")            -- %! open IRC client
130   , ((modMask,               xK_a     ), spawn "msearch all")                -- %! Search current playlist via dmenu
131   , ((modMask,               xK_w     ), kill)                               -- %! Close current window
132   , ((modMask,               xK_n     ), refresh)                            -- %! Resize viewed windows to the correct size
133   , ((modMask,               xK_space ), sendMessage NextLayout)             -- %! Rotate through the available layout algorithms
134   , ((modMask .|. shiftMask, xK_space ), setLayout $ XMonad.layoutHook conf) -- %! Reset the layouts on the current workspace to defaul
135   , ((modMask,               xK_Tab   ), windows W.focusDown)                -- %! Move focus to the next window
136   , ((modMask .|. shiftMask, xK_Tab   ), windows W.focusUp)                  -- %! Move focus to the previous window
137   , ((modMask,               xK_j     ), windows W.focusDown)                -- %! Move focus to the next window
138   , ((modMask,               xK_k     ), windows W.focusUp)                  -- %! Move focus to the previous window
139   , ((modMask,               xK_m     ), windows W.focusMaster)              -- %! Move focus to the master window
140   , ((modMask,               xK_Return), windows W.swapMaster)               -- %! Swap the focused window with the master window
141   , ((modMask .|. shiftMask, xK_j     ), windows W.swapDown)                 -- %! Swap the focused window with the next window
142   , ((modMask .|. shiftMask, xK_k     ), windows W.swapUp)                   -- %! Swap the focused window with the previous window
143   , ((modMask,               xK_h     ), sendMessage Shrink)                 -- %! Shrink the master area
144   , ((modMask,               xK_l     ), sendMessage Expand)                 -- %! Expand the master area
145   , ((modMask,               xK_u     ), sendMessage MirrorShrink)           -- %! Shrink the selected pane vertically
146   , ((modMask,               xK_i     ), sendMessage MirrorExpand)           -- %! Expand the selected pane vertically
147   , ((modMask,               xK_t     ), withFocused $ windows . W.sink)     -- %! Push window back into tiling
148   , ((modMask,               xK_comma ), sendMessage (IncMasterN 1))         -- %! Increment the number of windows in the master area
149   , ((modMask,               xK_period), sendMessage (IncMasterN (-1)))      -- %! Decrement the number of windows in the master area
150   --, ((modMask,               xK_q     ), restart "xmonad" True)              -- %! Restart xmonad
151   , ((modMask .|. shiftMask, xK_q     ), io (exitWith ExitSuccess))          -- %! Quit xmonad
152   ]
153   ++
154   [ ((m .|. modMask, k), windows $ f i)
155   | (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9]                    -- %! Switch to workspace N
156   , (f, m) <- [(W.greedyView, 0), (W.shift, shiftMask)]                      -- %! Move client to workspace N
157   ]
158 
159 ---

Shell Scripter | C/C++/Python/Java Coder | ZSH

Offline

#502 2009-08-21 09:42:31

Vintendo
Member
From: Netherlands
Registered: 2008-04-21
Posts: 375
Website

Re: uzbl. A browser that adheres to the unix philosophy.

First of all you have to do add "import XMonad.Layout.Tabbed" and try removing import XMonad at the top.

Offline

#503 2009-08-21 11:45:45

SpeedVin
Member
From: Poland
Registered: 2009-04-29
Posts: 955

Re: uzbl. A browser that adheres to the unix philosophy.

I will try this but on http://xmonad.org/xmonad-docs/xmonad-co … bed.html#1 I have write import XMonad to config smile


Shell Scripter | C/C++/Python/Java Coder | ZSH

Offline

#504 2009-08-21 11:50:53

SpeedVin
Member
From: Poland
Registered: 2009-04-29
Posts: 955

Re: uzbl. A browser that adheres to the unix philosophy.

Ok after this steps XMonad compiled succesfull smile
Thanks Vintendo.
The tabbed layout are working perfeclty smile.

Last edited by SpeedVin (2009-08-21 11:53:03)


Shell Scripter | C/C++/Python/Java Coder | ZSH

Offline

#505 2009-08-21 17:47:43

hatten
Arch Linux f@h Team Member
From: Sweden, Borlange
Registered: 2009-02-23
Posts: 736

Re: uzbl. A browser that adheres to the unix philosophy.

np wrote:

That's awesome, the only problem for me is that there are large white rectangles below peoples names on this forum, any idea how to get rid of that?

Uhm, i got that in firefox:P Although mine are light blue, the same color as my text.

Offline

#506 2009-08-25 15:34:43

Falstaff
Member
Registered: 2008-11-03
Posts: 81

Re: uzbl. A browser that adheres to the unix philosophy.

Hi guys. Just wanted to point out that the RSS feed of uzbl.org is bloody broken.

Offline

#507 2009-08-25 18:34:53

Dieter@be
Forum Fellow
From: Belgium
Registered: 2006-11-05
Posts: 2,001
Website

Re: uzbl. A browser that adheres to the unix philosophy.

Falstaff wrote:

Hi guys. Just wanted to point out that the RSS feed of uzbl.org is bloody broken.

1) Can you elaborate? what exactly is wrong?
2) The website code is very simple (uses the phatso framework which is <100 lines or so): http://github.com/Dieterbe/uzbl-website/tree/master patch welcome!


< Daenyth> and he works prolifically
4 8 15 16 23 42

Offline

#508 2009-08-26 22:43:16

fflarex
Member
Registered: 2007-09-15
Posts: 466

Re: uzbl. A browser that adheres to the unix philosophy.

I have a problem with animated gifs. Only the first frame displays correctly... after that, every other frame is just a black rectangle. Never seen the problem mentioned before, so it can't be too widespread.

Offline

#509 2009-08-27 07:45:51

SpeedVin
Member
From: Poland
Registered: 2009-04-29
Posts: 955

Re: uzbl. A browser that adheres to the unix philosophy.

I was getting the same try webkitgtk-svn or libwebkit-git package from AUR smile


Shell Scripter | C/C++/Python/Java Coder | ZSH

Offline

#510 2009-08-27 08:22:11

zodmaner
Member
Registered: 2007-07-11
Posts: 653

Re: uzbl. A browser that adheres to the unix philosophy.

Just want to drop in and say thank you to all people who have contributed to Uzbl. Uzbl have just replaced Firefox as my default browser. smile

Offline

#511 2009-08-27 17:01:53

mini
Member
Registered: 2006-12-18
Posts: 132

Re: uzbl. A browser that adheres to the unix philosophy.

I have got en error when starts uzbl

$ uzbl
GThread-ERROR **: Trying to recursivly lock a mutex at 'unknown', previously locked at 'unknown'
aborting...

Offline

#512 2009-08-27 19:04:33

SpeedVin
Member
From: Poland
Registered: 2009-04-29
Posts: 955

Re: uzbl. A browser that adheres to the unix philosophy.

mini wrote:

I have got en error when starts uzbl

$ uzbl
GThread-ERROR **: Trying to recursivly lock a mutex at 'unknown', previously locked at 'unknown'
aborting...

Which branch you use experimental or master?


Shell Scripter | C/C++/Python/Java Coder | ZSH

Offline

#513 2009-08-27 19:44:02

mini
Member
Registered: 2006-12-18
Posts: 132

Re: uzbl. A browser that adheres to the unix philosophy.

I USE

aur/uzbl-git 20090826-2 [installed] (246)
    The Uzbl browser: latest from the git master branch

I have tried uzbl-experimental-git but got the same error

Offline

#514 2009-08-27 22:32:06

Peasantoid
Member
Registered: 2009-04-26
Posts: 928
Website

Re: uzbl. A browser that adheres to the unix philosophy.

JS support seems to be not all there: Gmail doesn't quite work properly (AJAX issue, I guess) and searching Python documentation (docs.python.org) causes a crash. Probably a Webkit issue.

I'm trying libwebkit-git as I write this, but downloading the source takes bloody ages.

Last edited by Peasantoid (2009-08-27 22:32:50)

Offline

#515 2009-08-28 06:32:40

SpeedVin
Member
From: Poland
Registered: 2009-04-29
Posts: 955

Re: uzbl. A browser that adheres to the unix philosophy.

Peasantoid wrote:

JS support seems to be not all there: Gmail doesn't quite work properly (AJAX issue, I guess) and searching Python documentation (docs.python.org) causes a crash. Probably a Webkit issue.

I'm trying libwebkit-git as I write this, but downloading the source takes bloody ages.

I don't know why but webkitgtk-svn from have less to download smile


Shell Scripter | C/C++/Python/Java Coder | ZSH

Offline

#516 2009-08-30 04:21:12

Peasantoid
Member
Registered: 2009-04-26
Posts: 928
Website

Re: uzbl. A browser that adheres to the unix philosophy.

Maybe I missed something, but where the hell did history_handler go? The commit log shows it being removed from the documentation, but no information on how to replace it.

Ideas? Or should I just go shoot whoever did that? tongue

Offline

#517 2009-08-30 06:52:10

SpeedVin
Member
From: Poland
Registered: 2009-04-29
Posts: 955

Re: uzbl. A browser that adheres to the unix philosophy.

Peasantoid wrote:

Maybe I missed something, but where the hell did history_handler go? The commit log shows it being removed from the documentation, but no information on how to replace it.

Ideas? Or should I just go shoot whoever did that? tongue

It just saves page's history of pages where you was and when you prees shift + u (default keybinding) you can load page from histry.

Last edited by SpeedVin (2009-08-30 06:52:41)


Shell Scripter | C/C++/Python/Java Coder | ZSH

Offline

#518 2009-08-30 10:19:55

Vintendo
Member
From: Netherlands
Registered: 2008-04-21
Posts: 375
Website

Re: uzbl. A browser that adheres to the unix philosophy.

That are just default SpeedVin. Peasantoid (and I) is wondering where the history_handler went. Because history.sh has to be called sometimes...

Offline

#519 2009-09-01 13:58:34

Peasantoid
Member
Registered: 2009-04-26
Posts: 928
Website

Re: uzbl. A browser that adheres to the unix philosophy.

The lack of information on the subject leads me to believe it was a [bad] decision by the developer(s).

*loads shotgun*

edit: Apparently it's now load_{start,commit,finish}_handler. While I'd still like to shoot the devs for doing something this frustrating, I have to give grudging kudos for replacing history_handler with something better.

note: load_start_handler doesn't do what you might expect — it passes the current URI to the script instead of the one that is to be loaded.

Last edited by Peasantoid (2009-09-01 14:08:26)

Offline

#520 2009-09-01 14:10:05

Dieter@be
Forum Fellow
From: Belgium
Registered: 2006-11-05
Posts: 2,001
Website

Re: uzbl. A browser that adheres to the unix philosophy.

the history handler (history.sh) went nowhere.  BUT it was pointless to have a separate variable (history_handler) for it, as we already have the more generic load_finish_handler.
just look for the string "history" on the page http://github.com/Dieterbe/uzbl/blob/ex … zbl/config
as you can see, we still call the history.sh script after each pageload. but in a more simple/generic way.


< Daenyth> and he works prolifically
4 8 15 16 23 42

Offline

#521 2009-09-01 18:27:47

doom_phd
Member
From: US
Registered: 2009-08-11
Posts: 25

Re: uzbl. A browser that adheres to the unix philosophy.

Is anyone having problems with facebook? When I comment on statuses and wall posts they do not show up once I click the "Comment" button that I assume submits it.


Don't you worry about blank. Let me worry about blank
I did do the nasty in the past-y.
Pizza delivery for... I. C. Weiner. Aww... I always thought by this stage in my life I'd be the one making the crank calls.

Offline

#522 2009-09-01 21:23:03

ataraxia
Member
From: Pittsburgh
Registered: 2007-05-06
Posts: 1,553

Re: uzbl. A browser that adheres to the unix philosophy.

How are everyday users of uzbl handling webapps that provide their own keyboard UIs, like Gmail and Google Reader? It's annoying to have to enter insert mode every time I load a page in one of these apps, and setting always_insert_mode isn't much fun either since I end up typing commands with arguments with the modkey held down. Is there some smart compromise I'm missing?

I had the same trouble with Vimperator, which was enough to turn me off of it. I want every page to present the same UI, including the content-provided UI. Probably it's not a new browser we Unix-heads are really wanting, it's a new internet.

Offline

#523 2009-09-01 23:14:11

Peasantoid
Member
Registered: 2009-04-26
Posts: 928
Website

Re: uzbl. A browser that adheres to the unix philosophy.

ataraxia wrote:

Probably it's not a new browser we Unix-heads are really wanting, it's a new internet.

rant {
Nah, I think you mean 'web pages' — the whole idea is flawed. HTML is not a page layout language, it's markup; that is, you turn plain text into something more interesting. My opinion is that you shouldn't try to make applications out of something that isn't designed for it in the first place. That's what client-side programs are for. And this whole standards business is just silly, considering that no web browser displays content the same as another (seriously, look at Internet Explorer, the bastard child of Microsoft and Satan).
}

Who's with me? A web forum based on client-server protocol, communicating over TCP without any of this HTML nonsense?

(Teehee, I'm old-fashioned and I'm not even legally an adult yet.)

(Also, sorry for going way off-topic here.)

Last edited by Peasantoid (2009-09-01 23:20:11)

Offline

#524 2009-09-02 08:24:21

Dieter@be
Forum Fellow
From: Belgium
Registered: 2006-11-05
Posts: 2,001
Website

Re: uzbl. A browser that adheres to the unix philosophy.

ataraxia wrote:

How are everyday users of uzbl handling webapps that provide their own keyboard UIs, like Gmail and Google Reader? It's annoying to have to enter insert mode every time I load a page in one of these apps, and setting always_insert_mode isn't much fun either since I end up typing commands with arguments with the modkey held down. Is there some smart compromise I'm missing?

In your load_finish_handler, call a script which checks the url and sets insert_mode accordingly (by writing to the fifo)

Peasantoid wrote:
ataraxia wrote:

Probably it's not a new browser we Unix-heads are really wanting, it's a new internet.

rant {
Nah, I think you mean 'web pages' — the whole idea is flawed. HTML is not a page layout language, it's markup; that is, you turn plain text into something more interesting. My opinion is that you shouldn't try to make applications out of something that isn't designed for it in the first place. That's what client-side programs are for. And this whole standards business is just silly, considering that no web browser displays content the same as another (seriously, look at Internet Explorer, the bastard child of Microsoft and Satan).
}

Who's with me? A web forum based on client-server protocol, communicating over TCP without any of this HTML nonsense?

(Teehee, I'm old-fashioned and I'm not even legally an adult yet.)

(Also, sorry for going way off-topic here.)

While I don't really understand what ataraxia is talking about, I mostly agree with Peasantoid: the web sucks.  it's way too complex for what it should be and it's very inflexible and it's bloated and.. it sucks.  We can only try to make it suck less.


< Daenyth> and he works prolifically
4 8 15 16 23 42

Offline

#525 2009-09-02 08:29:17

Dieter@be
Forum Fellow
From: Belgium
Registered: 2006-11-05
Posts: 2,001
Website

Re: uzbl. A browser that adheres to the unix philosophy.

Peasantoid wrote:

Who's with me? A web forum based on client-server protocol, communicating over TCP without any of this HTML nonsense?

"web" implies http.  and http is not even needed in this case.  What you're looking for already exists: e-mail and mailing list software. or usenet


< Daenyth> and he works prolifically
4 8 15 16 23 42

Offline

Board footer

Powered by FluxBB