Not a blog; Windows 7 vs. Ion; displays, laptops, etc.

2010-10-27 Thread Tuomo Valkonen
Since I put up a new site with an archive of my software, a few have
asked me to return the non-blog online as well. I don't think that
will happen. I can't be arsed to start blogging again; it's a waste of
time. I shortly entertained the idea of combining the good/essential
material into a longer “Goodbuy, suckers!” anthology, but... even
pissing on Linux (desktop *nix) is a waste
of time. Ignorance is a bliss, and I'm much happier ignoring it all
and sticking to Windows. Windows 7 is, in fact, not that bad at all.

Yeah, I have been using Windows 7 for some weeks now. It's
surprisingly good, far more keyboard-usable than previous releases of
Windows.. let alone popular Linux DEs, which have always been inferior
to Windows. Of course, I'm looking at everything through the
Trackpoint-glasses; I probably would find W7 far less usable if I only
had a normal mouse or, *shudder*, or had to rely on the shotgun err..
touchpad.

One reason for the improved keyboard-usability is the integration of
search into Windows 7. No more browsing of endless menu and dialog
hierarchies (esp. control panel and startmenu), just search. No need
for third-party launchers, which never worked very well on XP; just
hit the Windows key and start typing. In a way, this is a partial
return to the command line interface. Maybe there's still a trace of
sanity left in the world.

Windows 7 even supports proto-tabbing and proto-tiling. By pinning
an application/shortcut to the taskbar, you can use Win+number to
cycle through instances of that application. (The visual indication of
the chosen instance when cycling is too weak, though; the currently
focussed instance is much more strongly indicated.) And with
Win+left/right arrow, you can
throw a window to the left or right side of the screen, which is
almost the only layout I ever used in Ion, aside from full-screen (and
Ion4, if I had started working on it, would have been more based on
restricted layouts like this). I just wish you could adjust (maybe you
can) the widths of windows thrown this way, as in the split-float
tiling mode of Ion, where frames could partially overlap each other.
On a small laptop display, most windows are simply too narrow without
some degree of overlapping. In any case, the ideas introduced in PWM
and Ion seem to be catching on, at least in diluted forms.

My first gripe is that it still doesn't have a sensible safely
remove feature. Still a fly-crap-sized system tray icon... which is
even hidden by default, an otherwise excellent feature for all that
annoying crap that everyone wants to put there. That or opening
explorer (which is the only way by default to even mount anything on
the POS OpenSUSE at the office...) And even with all the other
improvements on keyboard-usability (after you enable the display of
accelerator keys, which is idiotically disabled by default) the fact
remains that the choice of keybindings suck, a lot of things depending
on poorly-accessible cursor keys etc., instead of something closer to
the typing position.

Fonts... difficult to say, because the display on the
Thinkpad X201 is so awful -- the worst I've ever come
across -- that the constant shifting of everything on the display in
reaction to minute movements of the head is more annoying than the
blurring that W7 almost insists upon. (You need to do a lot of work to
replace the semi-hard-coded Segoe UI everywhere, to get rid of the
blurring.) That said, the blurring on W7 seems better than on any
other OS... depending on the font of course, and the fact that the
display has so crappy contrast. I should try to get around to trying
it on a semi-decent display. But all desktop displays have so horrible
DPI that any kind of blurring immediately induces uncontrollable
vomiting. It really sucks that there are no decent displays these
days: desktop  displays have shitty DPI, although you can get IPS, and
laptop displays are too shallow and generally el cheapo
TN-film crap, although the DPI is somewhat more reasonable. (But most
smartphones have even better DPI... and have higher-quality displays
too, with far better viewing angles than laptops.)

Yeah... I finally gave up on trying to run Modern Bloatware(tm) on the
aging T43 (with its splendid although a bit dim IPS panel), and got a
new laptop. I'd have preferred a desktop computer with an IPS panel,
but since a desktop display is difficult to lug when moving around the
world, that's presently no option for me. And the low DPI would make
my eyes bleed anyway. I was also not going to buy a big laptop with a
shallow display, so a netbook or an ultraportable was the only option.
Preferrably a cheap netbook, as I wouldn't want to pay much for the
crap that you get as laptop displays. But netbooks are not
significantly more powerful than the T43... so  X20[01] it was, as I
need the pointing stick. Fortunately you can get a little-used demo
machine on Ebay for a somewhat more reasonable price than the list
price. For idling use - random web 

Archives

2010-10-10 Thread Tuomo Valkonen


In case someone still cares, an archive of all the code
and stuff is online at http://iki.fi/tuomov/software/ .


Re: so, what now?

2010-04-07 Thread Tuomo Valkonen
On 2010-04-06 18:10 -0400, Benjamin R. Haskell wrote:
 Guess I'll go back to lurking.  (I'm only still here for the occasional 
 Tuomo rant.)

I use Windows. I have only been in Finland three months during
the last year. I'm running out of material.

(Although I could rant about software bloat and ever diminishing
laptop screen heights, etc., which make it impossible to work
around bloatware the brute force way of adding ever more hardware.
But I can't be arsed. Oh, how fscking difficult it's to buy 
a summer jacket these days: almost everything is full of plastic.
I hate plastic noise. I hate plastic against skin.)

-- 
Tuomo


Re: disabling mouse focus

2010-03-22 Thread Tuomo Valkonen
On 2010-03-19 14:33 +0200, M. Rawash wrote:
 hi, is there a simple way to disable 'mousefocus' on certain clients
 (a on-screen keyboard, for example)?

There's the 'passive' winprop. There should be examples in the
list archives, maybe even something in the scripts repository.

-- 
Tuomo


Re: Moving workspaces

2010-01-20 Thread Tuomo Valkonen
On 2010-01-14 17:35 -0500, Timandahaf wrote:
 I want to be able to move an entire workspace from one screen to
 another. I tried (using the context menu), Workspace-Toggle Tag, and
 then went to a new workspace in the other screen, and did
 Workspace-Attach Tagged.
 
 What did this is: it created a new floating workspace, put all my tiled,
 tabbed windows from my original workspace into this new WGroupWS, and
 then attached this WGroupWS to the other screen.


There are no tiled workspaces anymore. Workspaces are floating
always, but may contain tilings. You moved the entire workspace,
so you got some mess.

You can do shit better with the primitives, instead of trying to
extend the tagging functionality beyond its design (as a simple
component of the default simple Ion way of doing things).


-- 
Tuomo


Re: Youtube fullscreen not working

2009-11-27 Thread Tuomo Valkonen
On 2009-11-27 00:54 -0500, Timandahaf wrote:
 I tried to do this, but I still have the exact same problem. I see what
 your kludge is doing, but it doesn't seem to fix the problem. Regardless
 of whether or not I use your script, when I press the full-screen button
 inside the youtube player, the video disappears, and the browser window
 gets surrounded by a thin read line (which I assume is the video
 window). Any clue what else the problem could be?

The red line is probably Ion's marker for the source frame of a detached
window. You can detach/reattach windows with Mod1+K D, but too big
transients also get detached automatically... is flash purporting its
fullscreen document window to be a transient now? And then it somehow
fails when Ion's detach code keeps moving the window around? Maybe it
even gives the window size hints that force it to be a single pixel,
and hence basically invisible with the minimal transient decorations.
(Ion always applies size hints; modern idiot-applications often request 
sizes that do not fall into the range of their size hints.)

You may be able to find the window id with xprop -tree -root or
something, if it sets any identifying information at all (probably
won't, being modern crapware), and then find the size hints and
the TRANSIENT_FOR property with xprop -id the_id.

I'm not running Linux or even X anymore, so that's all I can help.

-- 
Tuomo


Re: bindings to move mouse cursor?

2009-11-24 Thread Tuomo Valkonen
  I think that would be a very useful way to switch to the frame you
  want, just move the cursor until it's over that frame, should normally
  only take a couple of keystrokes.

If you really want to do that, I suggest a Trackpoint keyboard instead.
The difficult a foresee with key(board) control of the pointer -- based
on experience with keyboard resize -- is control of the acceleration.
You need some kind of acceleration for fast yet precise movement of the
pointer, but with an on/off control device you have to do it based on
hacks based on the time pressed, which is hacky and does not work so
well. Trackpoint, on the other hand, does it by the pressure you apply.
By applying little pressure, you can move the pointer very precisely;
by a large amount of pressure, you're on the other side of the screen
in no time. (Assuming you have sane almost maxed-out settings; the
defaults tend to be crappy, and maybe one of the reason many people 
give up on the Trackpoint, and become ice-skaters.)

 well, it's a bit like buying a car navigation system and then only using it
 street by street ... maybe you should have a look at the commands ion
 provides.

Isn't that what navigation systems are all about? If you actually 
bothered looking at the map for a moment, you wouldn't need some 
device to tell you where to go (wrong). 

-- 
Tuomo


Re: Lua..

2009-11-18 Thread Tuomo Valkonen
On 2009-11-17 19:51 -0200, TC wrote:
 _any_ language he/she's used to, which I find a good basement philosophy if 
 you ask me.

Not quite. Such a generic scripting interface inherently has to stick to
the lowest common denominator.. and hence it should really not be the
main extension/scripting interface, I think, but a more simplified 
command interface.. For more thoughts on this, see

http://iki.fi/tuomov/b/2007/scripting_configuration_and_api_design/
http://iki.fi/tuomov/vis/

 I'm reluctant to learn yet another language just for the window manager. 

Baawaawaa, it's not written in My Language Of Choice, so it must be
rewritten. That describes something like 49% of FOSS projects
The other 49% is baawaawaa, it's not Freeⓡ: it doesn't use My 
License of Choice. The remaining 2% may have some originality.

There really is not much to learn in Lua, and if you can't pick up 
a language  on the go -- especially as simple one as lua, with 
a very short official reference manual -- you shouldn't be programming
at all. It's not like you need a high level of proficiency for 
scripting. I've written plugins for programs written in perl, ruby,
and python, and I have never taken the time to properly learn them, 
don't really like them (Lua is _much_ better, except for the 
library selection), and would not start a project using them 
myself, unless there was some very compelling reason (library 
availability or such).

 which I find far less versatile and readable than my language of choice. 

Then you haven't even bothered reading the basic description of the
language, and are criticising just because it's not Your Language of
Choice.

 Again, this may be just a matter of taste, but in any case, I do not feel 
 like messing with lua, and I think it should not be imposed.

It's not imposed. As far as I know, nobody has to use Ion, as it's
a marginal alternative among a gazillion other window managers.
It's not XFascistType, pukedev, Hardware Obstruction Layer (of
the Year) or other core software that the only way to avoid is 
to not use Linux/*nix. Which is exactly what I have done.

http://iki.fi/tuomov/b/2009/defection_part_3_windows/

 My suggestion? Why not make ion controllable through IPC? maybe a fifo, 
 socket, tcp, whatever, to _let the user choose_ the language to be used.

Why don't you do that?

Actually there is mod_ionflux, that you can use to send Lua code...

 I'm not saying that ion should be redesigned and reimplemented right away 
 either. It will definitely be rewritten from scratch at some point I guess, 
 so why not keep this in mind when the time comes?

Ion is not being developed.  For details on any possible future, see

http://article.gmane.org/gmane.comp.window-managers.ion.general/9056

-- 
Tuomo


Re: Lua..

2009-11-18 Thread Tuomo Valkonen
On 2009-11-18 02:17 -0800, Daniel Clemente wrote:
  Baawaawaa, it's not written in My Language Of Choice, so
  it must be
  rewritten. That describes something like 49% of FOSS
  projects
  The other 49% is baawaawaa, it's not Freeⓡ: it doesn't
  use My 
  License of Choice.
 …
  The remaining 2% may have some originality.
 
 wmii is among that 2%:
 - it can be scripted in any language, also in your language of choice
 - it is free from restrictions; you may also sublicense it to your free 
 license of choice

Muahhah, looks more like belonging to both of the 49%.
I suggest taking some language classes.

And knowing the history of tabbing/tiling WMs, the 2% is
reserved for a certain other WM or WMs...

-- 
Tuomo


Re: Statusbar question

2009-10-31 Thread Tuomo Valkonen
On 2009-10-30 16:54 -0400, Timandahaf wrote:
 The problem is, the workspace_pager that's shown on the screen1 is
 actually a copy of screen0's pager, and is therefore useless. How do I
 fix this?

Check if the script provides %workspace_pager_n (n=0,1) or
something like that. If not, then modify it to do so.

-- 
Tuomo


On continuing Ion development [+footnote on fonts on 5800xm]

2009-09-17 Thread Tuomo Valkonen

Since I've been asked a few times whether it's possible for
someone to adopt or continue the development of Ion, now that
I'm unlikely to work on it, I thought I should post my thoughts
here on the list.

First of all, as it always has been, it is, of course, possible 
for people to fork a _renamed_ project, and develop it into
whatever direction. But, for various reasons, such complete 
forks are not entirely desirable, and it would be better if
any new developments that fit under the banner Ion could
keep using this name.

I always intended Ion3plus as a sort of wiki branch, where
most patches fitting some loose guidelines are welcome, and
that still remains the case.. but I won't waste time applying
them to the repositories (darcs and my scripts being broken on
Cygwin, etc.), anyone taking over its maintenance would have 
to host it. These guidelines are there to keep the project
true to the name Ion, and therefore include

  * Quality code
  * A veto for me for major changes that do not simply enhance
existing features. XFascistType and Shitorama have snowball's
chance in hell of getting into Ion. Ion runs on pure X11, not
fugly complex extensions.

It's all, of course, a bit vague, as it should be; strict 
catch-all terms and licenses suck anyway, and more should 
be based on case-by-case negotations. Therefore, initially,
I would have to review all changes to see that whoever takes
over, can produce good code (or filter out bad code from 
others)... take it as a job negotation, or trial period. If
I'm satisfied with the results, then there shall be more 
free hands but, still, attempts at the scale of adding
Shitorama or XFuglyType should be passed through me (to 
be rejected). 

As for development after Ion3plus, which shouldn't 
_fundamentally_ stray too far from Ion3, I have some new
ideas to try for Ion4, that I'd still like to see implemented.
I just doubt I'm going to do it myself... I'd really like
to move to the management department already, and have
someone else do the gruntwork. I'm not yet ready to just
give up the ideas, for various reasons, but if there's 
good work on Ion3plus... or other arrangements are reached
that ensure that they're implemented in Ion instead of 
a clone... I will consider that. I would also require
at that point that Ion be ported to Windows and, why not, 
OS X at. Not necessarily as a full WM, but rather as an
IDE managing some nicely behaving embeddable applications. 
If I magically found the time and interest to actually do 
the gruntwork on Ion4, it would most likely be a Windows 
program in any case. (Unless Apple somehow decided to add 
a Trackpoint on their laptops and support unblurred fonts 
- or screen resolutions quadrupled[1] - and my T43 died 
so I had to buy current shallowscreen crap.)

---

[1] To replace my 5 year old phone with dying battery, and 6 year
old mp3 player, I recently got a Nokia 5800 XpressMusic, as it 
was the only sub-300e touchscreen phone with standard USB and 
headphone sockets. (Easily loseable adapters suck. On the 
downside, no charging off USB, which some competitors' more
expensive models would have. But you can get two two of these
for the price of an iTrendClown  co.)

I like the touchscreen. With hand-writing recognition (which
could admittedly perform even better), it makes the device 
vastly more usable than T9 or even a mini-keyboard. But 
that is not the topic of this footnote, so no more on that.

The device blurry fonts. Perhaps surprisingly, they're not actually
that bad in the �main interface. Partly this can be attributed to 
the graphical interface style, partly to usage, partly to choice
of font, but mostly to the 230dpi screen, which makes sub-100dpi 
desktop displays and even ~120dpi laptop displays pale in comparison.
By usage I mean that you don't read text for extended lengths 
on the phone, as on the computer. By choice of font I mean that
the font in the interface is simple and thick, so the proportion
of blurred pixels is small. It's not so great for reading texts, 
and the thinner font in the browser handles the blurring much 
more poorly. But, still, it's vastly more tolerable than on 
soddy computer displays resolutions, which are still the
technological equivalent of the PC beeper, which could not
play real music tolerably, only music designed for it.

Still, despite the blurring being more tolerable on the phone
than I expected, it confirms that 200dpi is not enough resolution
in serious use and with a wide range of fonts, for blurring not 
to annoy. And, yet, OS makers keep pushing on the blur-fascist 
front.

-- 
Windows may blow, but Linux sucks the crap in the wind.



Re: The end of the line

2009-09-02 Thread Tuomo Valkonen
On 2009-09-01, Tuomo Valkonen tuo...@iki.fi wrote:
 It has come to this. Unless miracles happen, I don't think I will
 be using or working on Ion much anymore. Cygwin is a big pile of
 shit [1], with an even bigger pile of filth 

Yesterday I was angry, today I'm miserable. I'm too much
alone with my thoughts; my anger and misery.

I'm feeling somewhat regretful for such angry words; no
I don't particularly like the guy and his strict discipline, 
but I do not want to be a bitter old man hating and hated 
by everybody, so I'll start by saying sorry here.




Re: The end of the line

2009-09-01 Thread Tuomo Valkonen
On 2009-09-01 14:51 +, Kris Malfettone wrote:
 Vim works fine without cygwin on windows and I am sure emacs or its
 various derivitives have cygwin-less windows ports as well.

I never liked emacs. Joe-bindings are half emacs, half wordstar,
but I just can't stand emacs' own bindings, beyond the basic
de facto standard unix movement bindings. Years ago, I tried 
to start usin emacs, but just couldn't. Too crippled. It's like 
an OS missing the editor. ^X combos are awful hand-twisters,
and it seems ^X is hard-coded (at least in GNU emacs) in many
places, so can't be remapped to something more useful (in joe:
forward word). Another annoyance was, well, Escape Meta Alt
Control Shift, how you needed one binding for search forward,
another for search backward, third for replace forward, and
so on, these not even including a case-sensitivity toggle.
In joe, otoh, the single search function just queries the
options. There were various other annoyances, like the syntax
highlighter not having the concept of numbers, etc. 
So I doubt I'll be going for emacs, if I can find something
else. Joe would be the best, but it doesn't run natively on
Windows. And, since not running in a terminal, something
not contstrained by the text terminal would be nice, for
displaying automatic folds, etc.

Vi, well, it's from such a different world that I don't
dislike it like emacs, but never really “got it” either.

-- 
Tuomo


Re: command line ?

2009-08-28 Thread Tuomo Valkonen
On 2009-08-28, Ole Jørgen Brønner olejorg...@yahoo.no wrote:
 No, you're right, they don't.

If someone wants to work on this, here's what I after
a very quick glance over the code (that it's been ages
since I last looked into), think might be the plan:

- In input_do_refit, we have to rqgeom instead of window_do_fitrep. 
The crux is that with FULL_BOUNDS we know the available space. 
With the size policy set to something else, we only know the 
area the managing WMPlex (or other region) is willing to give us
per the size policy. So we have to ask for as much as we'd like
to have with rqgeom... but to calculate the wanted height for our
requests, we have to assume that the width stays fixed. 
Thus, input_calc_size has to be modified to support calculations
with infinite max_geom.h (virtually; INT_MAX or so).

- We can no longer use the modified input_refit in input_fitrep 
(that gets alled by the managing object to do the resizing),
instead an updated version of the current code has to be used
there. (It's just a couple of lines.)

- It should be possible to get rid of the last_fp field, modifying
all code involving it, as we no longer make requests using the
last known available space.

- Of course, for nicer top-aligned queries, the completions
should expand downwards, and this demands a bit of extra work,
figuring out whether we're actually attached to a WMPlex,
and asking for the effective size policy to see if it is a
top-aligned one.

Probably I'm missing something, but that should get anyone
interested in this started. I have better things to do...
actually haven't been able to use Ion lately, because Cygwin
X has been in a crash every 5 minutes state for nearly a
couple of months now. Typical FOSScrap.

-- 
Off the dope since 2009;
  http://iki.fi/tuomov/b/archives/2009/07/21/T17_26_09/



Re: command line ?

2009-08-27 Thread Tuomo Valkonen
On 2009-08-27, Piter_ x.pi...@gmail.com wrote:
 There is command line opened by F3 button.
 I wonder if its possible to move it up from the bottom of the screen.
 Thanks.
 Petro

No, unless you write the necessary code.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde



Re: close frame when empty

2009-08-14 Thread Tuomo Valkonen
On 2009-08-14, Javier Rojas jeroja...@devnull.li wrote:
 I think is possible to avoid such behaviour by checking the tiling
 (or the ws) to close the frame only when there are more frames in the
 tiling. But I don't know how to ask Ion about how many frames are in a
 tiling (or in a workspace). Any suggestions?

One possibility is using WTiling.managed_i to go through
the list of objects managed by the tiling. RTFM on details,
but, e.g., the following snippet in Mod1+F3 prints the names
of everything (except the somewhat transient stdisp) managed
by the tiling:

_:manager():managed_i(function(x)
  print(x:name())
  return true
  end)

_ is the frame in which Mod1+F3 is opened, _:manager() is
typically the tiling object on tiled workspaces, etc. The
function must return true to continue iteration, false 
(or nil) to stop iteration. Just replace the print with
something that sets a (local) variable outside the iterated 
function to frame count, and stop iteration if this has 
become at least two.


-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: window titlebar

2009-08-06 Thread Tuomo Valkonen
On 2009-08-05, Sam Mason ma...@f2s.com wrote:
 That's what you get for not using a proper operating system! :)

Yes, on a proper operating system (instead of a half of one
running on another proper one), I'd be stuck to the 80x25
VGA console.

Random Cygwin brokenness (1.7 betas) is just the familiar 
situation from Linux, where you're also stuck to using
unstable/experimental distributions, because the stable
megadistros provide too old non-core software and do not
run the newest third-party software without massive library
recompilation efforts. At least on Windows there's a stable
proper _core_ operating system underneath, running all the
latest software.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: window titlebar

2009-08-06 Thread Tuomo Valkonen
On 2009-08-06, Maximilian W. Zeller maw...@gmail.com wrote:
 i dont't quite get how to give absolute x/y position?!

 i am looking for something like
 position = { x = 100, y = 100 }

There isn't one in Ion3. I did add a winprop to ion3plus,
but all the documentation is the changelog entry.
(See also WGroup.attach docs.)

Fri Oct 24 20:25:20 FLE Daylight Time 2008  Tuomo Valkonen tuo...@iki.fi
  * * Added attach_params winprop and auto_placement option.
The first, attach_params, is a table containing the same parameters that can
be passed to WGroup.attach. It is applied when a new frame would normally be
created for the window, as attach parameters of the frame. The parameters 
are
thus not applied when attaching a new window to an existing (tiled) frame, 
or
for attaching the window within the newly created frame.

The second, auto_placement, is a boolean option in the attach parameters,
and can be used to control whether application-supplied position is used,
or whether Ion should itself calculate a position for the window.

-- 
Stop Gnomes and other pests! Purchase Windows today!
  http://iki.fi/tuomov/b/archives/2009/07/21/T17_26_09/




Re: Compilation pb on FreeBSD.

2009-07-25 Thread Tuomo Valkonen
On 2009-07-23, Albert Shih albert.s...@obspm.fr wrote:
 After I press F12 I've got 

   Main menu -- session/sortir (I using French)

 and I've a
   
   No entry for 'session/sortir'

Does it show up in tab-completion? Could there be some
accent issue? Are the locales correct in that case?

-- 
Off the dope since 2009;
  http://iki.fi/tuomov/b/archives/2009/07/21/T17_26_09/



Re: Ion wiki?

2009-06-10 Thread Tuomo Valkonen
On 2009-06-09, Ole Jørgen Brønner olejorg...@yahoo.no wrote:
 I have very limited experience with web services and hosting, but I've set
 up a temporary
 dokuwiki [1] at http://folk.ntnu.no/bronner/ion3wiki
 (Temporary as in I don't really have a proper host. Maybe someone else
 has?)

Maybe you an just use some of the hosting services? (sf.net, berlios, etc.)
Ion of course has a berlios account for this mailing list, and in theory
a wiki could be hosted on that account... but I don't support webshit-only
wikis, and I don't think it's right for an unofficial wiki to appear at
a semi-official address.

-- 
Stop Gnomes and other pests! Purchase Windows today!



Re: Winsplit-revolution - window manager for MS-WindowsXP etc.

2009-06-05 Thread Tuomo Valkonen
On 2009-06-05, Timandahaf timandahaf+...@gmail.com wrote:
 Has anyone seen/heard of this?

 http://winsplit-revolution.com/

I find that tiling w/o tabbing is rather useless.
And it's the tabbing part that takes extra effort to
implement under Windows. Under X, the WM can -- still
as of June 2009 -- reparent application windows within
its own windows, and draw the decorations in its frame
windows. Under Windows, applications always create 
top-level windows, which are divided into client area
and the remaining boundary, that is drawn by the system
-- whatever part that is. You'd somehow have to replace 
that system to draw different kind of decorations and
add different kind of controls, which are duplicated
between all the windows associated to a pseudo-frame/
tabbed set. Of course, further problems arise because
many applications seem to override the system, and
draw their own decorations... and then there's the
issue of the apparent lack of the equivalent of the
ICCCM, so you can't enforce tiling... as far as I know,
but I'm no WinAPI expert.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: confirm 852223f5c787b0857a42616c26c0a94208eae60a

2009-06-02 Thread Tuomo Valkonen
On 2009-05-30, Ole Jørgen Brønner olejorg...@yahoo.no wrote:
 I'm not sure how you can easily force the number to be exacly 10, but ion3
 will remember your layout, so if you create 10 workspaces manually they  
 should still be there after a restart.

If you restart/quit properly, i.e., though Ion's menus/functions,
instead of simply killing X (C-A-BS). 

-- 
Stop Gnomes and other pests! Purchase Windows today!



Re: RPM spec file for ion3 for Fedora

2009-05-27 Thread Tuomo Valkonen
On 2009-05-27, Timandahaf timandahaf+...@gmail.com wrote:
 Any chance you'd be willing to host this RPM .spec file anywhere in your
 darcs repo? It'd be very helpful to users who have an rpm based system.

I have no public repositories that I could update. And anything that
requires additional manual effort from me to update, is totally out
of the question.

-- 
Stop Gnomes and other pests! Purchase Windows today!



Patch collection

2009-05-26 Thread Tuomo Valkonen
Some of the latest changes to Ion, including the scripts repository,
can be downloaded from

http://iki.fi/tuomov/ion/patches.html

pending my VCS switch eternity project. (All version control systems
suck. Only darcs developers have devoted more than two brain cells 
to the UI. But GHC sucks donkey balls and thus there's no cygwin
version of darcs, and the native Windows version of darcs sucks.
That's the biggest hurdle of my windows switch: lack of decent
vcs/darcs. Otherwise I'm very happy to have taken broken away 
from the feces-throwing competition known as linux.)

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: Patch collection

2009-05-26 Thread Tuomo Valkonen
On 2009-05-26, Ciprian Dorin, Craciun ciprian.crac...@gmail.com wrote:
 But I wonder: you like darcs (or at least compared with others),
 and you have searched for other distributed VCS's but all of them
 suck, what is wrong about (for example) Hg or Git? I mean what are
 your thoughts about this topic.
 (Disclaimer: I've switched all my repositories from CVS to SVN and
 then to Git... and until now, I'm happy... Indeed the Windows support
 is a little bit brittle, but under Cygwin it should work...)

Actually, it doesn't. The packaged version (cygwin 1.7) doesn't
do anything when you run it. And I couldn't compile it myself.
(The build failed at some point, although it did build the git
binary, that failed similarly to the cygwin-packaged version.)

What annoys the shit out of me in hg, is its manual configuration
approach to everything. Darcs is interactive. It asks you
for your name/email when you first use it in a repository
(unless you have globally configured them); hg used to assume
usern...@hostname, which is 99% of the time crap, so you ruined
your repository, and have to fix it. This days it iirc refuses
to run until you configure. But at least this is an action you
have to do only once on each computer. 

Unfortunately, the same single brain cell approach persists in
default push locations. Darcs is nice, and it by
defaults remembers the previous push/pull location, defaulting
subsequent pushes and pulls there. And it is interactive, so
unless you pass -a that just pushes everything without questions
asked, you'll get to see where and what it is trying to push.
Also you can't completely ruin your repository with darcs,
because you can just unpull patches. Now, with hg, it only
remembers where you first cloned from, and always defaults
there.. if you've cloned from anywhere. push/pull don't make
it remember the location. Also, push just pushes the patches
to the default location, no questions asked, and with hg you
can ruin the repository this way: there's no way to get rid
of the patches. If the target repository was wrong, you have
to figure out what was pushed, and try to fork from an earlier
point. They want you to do extra work and first do 'hg outgoing'
to check what would be pushed where, and only after that 'hg push'.
'darcs push', by contrast, includes the 'outgoing' functionality
in its default interactive mode, so you can safely type the command.
Also, to push by default somewhere else than the initial default
(none unless a cloned repository), you always have manually edit
a configuration file in .hg. That sucks.

Bazaar has rather similar idiotic push location behaviour, but
at least there's a --remember switch to push. Git.. I haven't
tried a recent version, as remarked above. But a few years ago
[1], its email push support was a complete joke, equivalent to
just sending a plain old diff and applying it, without any
inter-repository tracking. Same, I think, with bazaar. hg at
least seems to try to do its best within its traditional
'kludge based on three-way diff' approach to version control,
that is to be contrasted with the more advanced theories behind 
darcs.

  [1] http://iki.fi/tuomov/b/archives/2006/10/29/T16_57_00/

That is, indeed, another major problem with the VCS switch... 
it does not seem in general possible to convert _multiple_ 
interoperable darcs repositories (e.g. ion-3, ion-3plus)
into a three-way-diff-kludge vcs, and maintain inter-operability.
In some limited cases (if the patches in ion-3 and ion-3plus
were cleanly ordered) it might be possible, but would demand
a lot of manual effort.

...

What sucks about the Windows darcs? Well, it's no posix program,
so a lot of things won't work from cygwin shell. ^C either won't
work, or will just kill it without cleaning up locks. single-key
queries won't work; you have to press enter. Generally line-editing
keys are broken.

Time zones are printed in a non-standard format that other programs
(such as thost that convert to other VCSs) fail to parse: 'W. Europe
Standard Time' instead of WEDT. Also, if you set the TZ environment
variable in cygwin, darcs gets totally confused __although it
shouldn't see the variable, as it's no cygwin program!__

ssh won't work using cygwin-ssh and the keys stored in ssh-agent;
you'd have to set up separate putty pagent setup for it... and a key
setup is _required_, which is just shit. 

Also, at least this version of darcs I have, is just broken, 'reading
pristine' *all the fucking time*, whatever you do. It's dog-slow.
(Also seems to be compiled with a shitty compiler, and is generally
slow.)

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Patch collection

2009-05-26 Thread Tuomo Valkonen
On 2009-05-26, Tuomo Valkonen tuo...@iki.fi wrote:
 Time zones are printed in a non-standard format that other programs
 (such as thost that convert to other VCSs) fail to parse: 'W. Europe
 Standard Time' instead of WEDT. 

Um... WEST, of course. (Idiotic DST kludge. Just looked up the 
current zone from 'date', not being familiar with these western
europe zone abbreviations, .fi being EET/EEST, and that patch 
was from before the DST switch.)

-- 
Stop Gnomes and other pests! Purchase Windows today!



Re: Keypresses when closing the mod_sp window?

2009-05-18 Thread Tuomo Valkonen
On 2009-05-15, Thomas Themel i...@themel.com wrote:
 When closing the mod_sp window, it seems that the window that is
 underneath also gets the keypress (in my default case, META..space)
 that I use to close the window. Is this a bug?

It will get the release event, not the press (unless the key is pressed
long enough to start repeating), and if it's a stupid app, it will act
on it.

Generally Ion ungrabs the keyboard in grabbed binding handler to avoid
problems with the keyboard being grabbed on application startup etc...
and there might have been other reasons too. This will cause subsequent
release events to fall through. However, I'm not 100% sure that removing
this hack would help in this case without other workaround, because the
window is being hidden, and thus X should kill the grab in any case.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: VirtualBox seamless mode

2009-04-10 Thread Tuomo Valkonen
On 2009-04-09, Vladimir Skuratovich skuratov...@gmail.com wrote:
 Hi,

 Is it possible to set up the VirtualBox 'seamless mode', where it is
 supposed to integrate with the window manager, so that the guest
 windows are managed by Ion? 

Does it create managed windows or just override-redirects?
I'd expect the latter, which are likely to then get hidden
under Ion's tiling.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: X is dead. Long live windows.

2009-04-10 Thread Tuomo Valkonen
On 2009-04-10, Tuomo Valkonen tuo...@iki.fi wrote:
 DOS as a simple and manageable system was the high point of computing. XP
 was a local maximum: the last OS with good fonts, and not even nearly as bad
 as W95, around the release of which I switched from DOS to what can now
 clearly be seen as the failure known as Linux/FOSS.

And unlike Linux from 2001 -- which didn't suck quite as much 
as Linux 2009 -- Windows XP is still a widely-used and somewhat
supported operating system that you can actually use and run 
new applications on.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: Attach client to several workspaces

2009-04-10 Thread Tuomo Valkonen
On 2009-04-07, Matthieu Moy matthieu@imag.fr wrote:
 What you can do (and what wmii, awesome and other do) is that the
 resize the window on-the-fly when the workspace changes. Then the
 application redraws the frame at the new place, with its new size.

You can manually emulate this by tagging a window with Mod1+T,
switchking workspace, and attaching the window in a frame on the
chosen workspace with Mod1+K A.

It's not difficult to write a basic script to automate this.
I can't find one in the repository, but I'd expect someone
to already have done this...

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: VirtualBox seamless mode

2009-04-10 Thread Tuomo Valkonen
On 2009-04-10, Klaus Umbach treibholz-...@sozial-inkompetent.de wrote:
 Just use VirtualBox in standard-fullscreen-mode on a separate Workspace.
 That's the most acceptable pain.

No, that's Ion-in-cygwin-X-on-windows, after changing Mod1+Tab
to Mod1+Q in Ion. Integrates much better than a fully 
keyboard-grabbing VM... albeit not perfectly :(.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: cannot type in run dialog

2009-04-09 Thread Tuomo Valkonen
On 2009-04-08, Deepanjan Kesh deepk...@gmail.com wrote:
 i have installed ion3 in ubuntu 8.10. but i am not able to type in the
 run dialog though tab completion works.
 any help would be really appreciated

Fix your locales settings. You need the .encoding (e.g. fi_FI.UTF-8)
part in LC_CTYPE (or LANG), because Xlib is broken.

-- 
Stop Gnomes and other pests! Purchase Windows today!



X is dead. Long live windows.

2009-04-09 Thread Tuomo Valkonen

The X we all knew is dying, and it's being killed by its developers.

As their latest onslaught, the Xorg dickheads have removed 
SaveUnders from X. Expect flicker when dragging tabs or 
moving windows under Ion and a new and rusy X. They want you
to implement and use a heavy memory, cpu, and battery-hungry
composite manager instead... and do not provide a generic 
one worth shit.

They do not follow the original design of X and extend it; 
they gradually replace everything with crap and remove the 
old ways of doing things. Soon on their list will be core
the good old fonts, as they want you to use their blur-fascist
fantasies. It's impossible to keep up with the shit that the 
FOSScracy throws at you, unless you're one of the big 
corporate-sponsored projects that is already part of the FOSScracy.

The lamers even banned me from posting on the list. Censorship, 
silencing the critique. Sure sing of an incompetent tyranny.


It was a good time to switch to Windows. X as we knew it will 
soon no longer be. 


Something to laugh at:

On the same tread, the fuckwits discuss how they need some way
to identify displays for DPI settings etc... after they removed
simple display identification by switching from the good old X
multihead o Xinerama/Xrandr crap.


-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: Attach client to several workspaces

2009-04-07 Thread Tuomo Valkonen
On 2009-04-06, Oskar Nordquist oskar.nordqu...@gmail.com wrote:
 I'm wondering how hard it would be to implement support for having clients
 visible in more than one workspace, e.g it could work like the tagging feature
 for moving windows, only clients could be attached to several frames and/or
 workspaces.

A basic version shouldn't be too difficult. Just a script that attaches 
to one of the hooks that signal workspace change, and then moves the 
window around.

What's more work is remembering where exactly the window was on each
workspace... for that, there's the placeholder mechanism, but it
isn't exported to the Lua side ATM.


-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Attach client to several workspaces

2009-04-07 Thread Tuomo Valkonen
On 2009-04-07, Oskar Nordquist oskar.nordqu...@gmail.com wrote:
 Would it not be easier to just duplicate the client to refer to the same X
 window? I don't even know if that is possible, but if it is, that's how I'd
 prefer to do it.

Ummm... I don't know what you really mean. The client always refers to
the same window it initially created. You can move it around in Ion's
window management hierarchy (cf. Mod1+A, Mod1+T  Mod1+K A, tab drag),
also to follow you around. Obviously you can automate this by attaching
a script to suitable hooks. 

The difficult part is that it would always appear at the same index in
a frame etc.; this demands exporting the placeholders to Lua side.


-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Ikiwiki replacement etc.

2009-03-31 Thread Tuomo Valkonen
Ok, the site should be back in updatable condition, using webgen
after all. Let me know if something is broken. Next up: VCS switch.

(Suggestions about what to do about the site, the scripts repository,
and other repositories are still welcome.)

-- 
Tuomo


Re: Abandoning darcs

2009-03-31 Thread Tuomo Valkonen
On 2009-03-31, Yves Rutschle i...@rutschle.net wrote:
 Yeah, the biggest problem is Windows users naming
 directories like Program Files, Last year's review,
 Deliveries for this and that, which means the 255
 limitation actually comes up quickly. Then try to convince
 them to use short names and no spaces.

Yeah, it sucks.. but it's coming in Linux too.
I absolutely fucking hate the Desktop directory
that every now and then shows up in ~.
IT'S MY HOME DIRECTORY YOU GNOME FUCKTARDS! DON'T PUT ANYTHING
VISIBLE THERE! I'S ***MNE***, NOT YOURS, YOU  PIECE OF SHIT
RETARDS!! GET IT?!?!?

 especially as NTFS uses Unicode, so special characters don't 
 take many bytes as with UTF-8.

 Actually I think NTFS uses UTF-16 which is about twice as

NTFS: 255 UTF-16 code points = 510 bytes
ext2: 255 _bytes_ = less than 255 UTF-8 characters even with latin alphabet.

This is what I meant.

Of course, even with UTF-16 you get less than 255 glyphs when
using combining characters and stuff. 

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: Abandoning darcs

2009-03-31 Thread Tuomo Valkonen
On 2009-03-31, Adam Duck adam.ian.d...@gmail.com wrote:
 Yes, it is possible to _create_ such file names, but you can't use 
 them.  Here at WinXP I can create (best under Desktop) dirs close to 
 255 chars.

Actually, I've been succesfully using file names with colons in them
in Linux on NTFS (stupid NTFS-3g not failing on such names), and
Windows shows them, but you can't access them.

Actually, there is a low path length limit not in NTFS but in the some
old versions of the _Windows API_ itself.  This is probably what the FUD
was about. (And if you consider an API originating for 8+3 names -- if
this is the case -- 255 is a tolerable limitation for path length.)

http://msdn.microsoft.com/en-us/library/aa365247.aspx


In the Windows API (with some exceptions discussed in the following
paragraphs), the maximum length for a path is MAX_PATH, which is defined as
260 characters. A local path is structured in the following order: drive
letter, colon, backslash, components separated by backslashes, and a
terminating null character. For example, the maximum path on drive D is
D:\some 256 character path stringNUL where NUL represents the
invisible terminating null character for the current system codepage. (The
characters   are used here for visual clarity and cannot be part of a
valid path string.)

Note  File I/O functions in the Windows API convert / to \ as part of
converting the name to an NT-style name, except when using the \\?\ prefix
as detailed in the following sections.

The Windows API has many functions that also have Unicode versions to permit
an extended-length path for a maximum total path length of 32,767 characters


-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: Abandoning darcs

2009-03-31 Thread Tuomo Valkonen
On 2009-03-31, Daniel Clemente dcl441-b...@yahoo.com wrote:
   Yes, I also hate it, but I have learnt to ignore it with version
   control. Or better, I use it to store trash. 
   And if I want a directory
   that I control myself, I create one, it's not so complex.

But it's not ~, it's ~/my or /my or something long and non-automatic.

I suspect that when they realise this home directory cluttering problem,
instead of choosing saner names, they'll reinvent the wheel and introduce
a Hidden attribute to file systems... in an additional gnome indirection
layer, not the kernel.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Abandoning darcs

2009-03-29 Thread Tuomo Valkonen
On 2009-03-28, Klaus Umbach treibholz-...@sozial-inkompetent.de wrote:
 Ah, OK. So it's a driver and a service. Anyway, it was pretty stable.

Maybe I'll try it one day. No time now.

 Yes, but I can use both my cores and don't have to reserve one for my
 virus-scanner. From my point of view, Windows is still worse.

Both cores.. doing fine with just one. Only really notice the scanner
at login, which takes ages, just like the boot too. But with reliable
standby/hibernate, it's not necessary to boot often, and you can still
shut down the system for the night, etc. 

 e.g. you can't overwrite a file, when it is executed.
 You can't open a file when another application writes in it (how am a I
 supposed to read logfiles?). 

This is indeed a major annoyance that you can't delete a file
in use, as on *nix. At least in cygwin they can, however, be 
renamed out of the way. I've been told this should've been
improved in Vista.

 A path in NTFS is not allowed to be longer than 255 chars... 

Path? You mean file name? It's the same on ext2/3 as far as I
recall, and no practical limitation, just Linux fanboy FUD -- 
especially as NTFS uses Unicode, so special characters don't 
take many bytes as with UTF-8.

 And worst of all: it lacks a package-management.

Worst of all: Linux has fragmented centralised package 
management. All the gazillion distributions doing redundant
work have de facto central control over what software you 
can easily install on that particular distribution.

On Windows I can just download software from the ISV, and 
easily run it. In a sandbox if I want to. And, best of all,
nearly all the latest sofware still runs on Windows XP, which
is from 2001 (and largely still uninfected by the current 
blur-fascist IT regime). Try running latest Linux binaries
-- or even source, for that matter -- on Linux from 2001. 
FAIL.

It's sick. Linux is outright against independent software 
vendors, and yet it's Microsoft that gets sued for any 
feature they add to their OS.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Abandoning darcs

2009-03-27 Thread Tuomo Valkonen
On 2009-03-27, Nicolas Schier sch...@shf.de wrote:
 have you already decided which SCM you want to switch to? I have noticed
 you took a look at mercurial... I for myself am very content with it,
 but I know that your requirements have mostly a little higher level.

Probably Mercurial. I've been using it for all new repositories 
anyway. It mostly sucks compared to darcs, but I don't know anything
better that's portable. Stupid GHC, stupid compilers, their
bootstrapping, and complicated build systems.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and local vendors and
artisans have had to yield to all under one roof big box hypermarkets.



Re: Abandoning darcs

2009-03-27 Thread Tuomo Valkonen
On 2009-03-27, Sylvain Abélard sylvain.abel...@gmail.com wrote:
 If only Apple wasn't so blur-fascist, and had 4:3 laptops with a nipple...
 And non-glossy screens for all configurations, not just for  2000€ ones.

Well, yes, but the situation is almost the same on PCs: all the 
affordable models have a glossy screen.. and typically crappy 
keyboards. And the nipple you find only on the el cheapo Thinkpad
SL models. The better T-model Thinkpads are just as expensive
as Macbook Pros in .fi but come with a shallowscreen and megabezels
these days. (The Thinkpads tend to be about 500e cheaper in .de 
compared to .fi!)

 I'm testing this right now. That's not really a problem to keep your
 thumbs on the trackpad, even with the tap-mode activated. If they
 move a little, your mouse will flicker (thak God, it disappears when
 you're typing), but that's not really a big deal.

Would have to try for an extended period to find out if they'd
have managed to make it work tolerably, but so far I've always had
to disable to trackpad to be able to use a laptop.

 The most painful is Window Management (missing ion so much) and that
 Spaces multi-desktop thing not well integrated, especially
 overriding some keyboard bindings (which are customisable with
 limited choices, all of them not satisfying).

Sure you can run Ion in X in OS X? I run it in Windows XP under
Cygwin/X, and half of my apps/windows there. (In Xterm, but
also plan to use gv/xpdf/xdvi for TeXing when it comes time 
to write something again.) It works comfortably enough, switching
between Windows and Ion, after I changed Mod1+Tab to Mod1+Q
in Ion, instead of passing -keyhook to X, which disables the
Windows key too, which I'd like to work (could then Win+tab
on the taskbar). This keeps the Windows window-count tolerable;
it couldn't handle the gazillion terminals comfortably without 
a tabbing terminal emulator or something... but that's just Ion
then; I consider it my IDE.

 You may find yourself disappointed at their quite-non-standard
 keyboard layout 

I have to reconfigure the keyboard on any system I plan to actually
use for anything, in any case. Done that on Windows too. (Caps lock = 
control, extra altgr between shift and z, extra altgr+key bindings [1].
No dead keys, they suck.) 

  [1]: http://article.gmane.org/gmane.comp.window-managers.ion.general/8542


-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: Abandoning darcs

2009-03-27 Thread Tuomo Valkonen
On 2009-03-27 08:19 +, Tuomo Valkonen wrote:
 On 2009-03-27, Nicolas Schier sch...@shf.de wrote:
  have you already decided which SCM you want to switch to? I have noticed
  you took a look at mercurial... I for myself am very content with it,
  but I know that your requirements have mostly a little higher level.
 
 Probably Mercurial. I've been using it for all new repositories 
 anyway. It mostly sucks compared to darcs, but I don't know anything
 better that's portable. Stupid GHC, stupid compilers, their
 bootstrapping, and complicated build systems.

*sigh* Even in my Windows switch, FOSS crap causes the most trouble. 
GHC: fail (= Darcs: fail, lua-xgettext: fail, riot: fail).
Ikiwiki: fail. And Cygwin itself poorly supports locales (i.e., UTF-8
in practise), although with some effort I've managed to make it mostly
work. Ion is one that doesn't support non-ascii... with the settings 
that other stuff works with. The problem seems to be, once again, that
X doesn't quite understand the cygwin/libc locales. Cygwin bash is 
also _slow_... actually wrote my first _much_ faster (still under cygwin)
python program [1] ever thanks to this.

Windows (XP) itself works quite smoothly.. far better than Modern
Linux, so far.. but doesn't natively provide all the software I'd 
like to use. Maybe coLinux would work better than Cygwin, although
it's in principle an ugly solution, and seems to be poorly supported
and difficult to set up... plus you have to deal with all the current
Linux crap [2] that I want to escape from, unless there's some lightweight
coLinux-oriented distro that strips away all that useless crap.

If only Apple wasn't so blur-fascist, and had 4:3 laptops with a
nipple... Although, I did try the _huge_ touchpad on one of the newer
Apple laptops recently, and it was far better than most I've come 
across: no need to be skating back and forth, actually quite comfortable
to move the cursor with it. But, still, it's in the way of typing -- 
can't rest your thumbs anywhere, whereas on the Trackpoint you can 
comfortable rest them on the buttons, ready to press -- and you need
to move your hand to actually use it, while the Trackpoint is simply
an integral part of the keyboard.

  [1]: A small tool to backup ID3 tags, eyeD3 providing a python library for
   reading and copying the raw frames to dummy files. Since copying my
   music collection from CDs and DVDs to a hard drive -- it's quite
   incredible in how small a package 500G goes in a usb-powered 2.5
   disk, compared to the pile of 3.5 disks I had with combined capacity
   of just 300G... and these aren't big compared to stuff you find from
   the 80's -- and switching from mocp to foobar2000, I've been adding
   tags to my collection and downloading cover art, and need to back them
   up separately.

  [2]: http://iki.fi/tuomov/b/archives/2009/03/13/T16_46_57/


\end{another status report written in a moment of boredom and tiredness}

-- 
Tuomo


Re: Abandoning darcs

2009-03-26 Thread Tuomo Valkonen
On 2009-03-13 12:09 +, Tuomo Valkonen wrote:
 The Ion darcs repositories have been taken offline, and I will
 switch away from darcs. Reason: no version for the most viable
 *nix platform of the day, Cygwin. The website will be upgraded 
 when I manage to replace Ikiwiki, which also does not work under
 Cygwin.

This is going to take some time. I, of course, can't even use the
usual tools to convert from darcs to another format, because
the non-deterministic windows-cygwin hybrid darcs does not even
print dates etc. in a standard format, so parsers fail.

(No, passing TZ does not work. Darcs shouldn't know about it,
as it's not a cygwin program. In truth, though, setting TZ
messes everything up. Must be a leak in GHC from depending
on cygwin for compilation, although it can not be compiled
for cygwin -- which is the reason why there's no cygwin
verion of darcs.)

...

Has anyone any experience of a simple coLinux setup?
That wouldn't mess hibernate/standby up? With internal
samba? No udev and other crap; Windows handles devices.

-- 
Tuomo


Re: Abandoning darcs

2009-03-26 Thread Tuomo Valkonen
On 2009-03-26, Tuomo Valkonen tuo...@iki.fi wrote:
 This is going to take some time. I, of course, can't even use the
 usual tools to convert from darcs to another format, because
 the non-deterministic windows-cygwin hybrid darcs does not even
 print dates etc. in a standard format, so parsers fail.

Another big project is writing a non-Haskell (read: Lua)
implementation of lua-xgettext. Fuck GHC and its unportability.
Help appreciated.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and local vendors and
artisans have had to yield to all under one roof big box hypermarkets.



Ikiwiki replacement etc.

2009-03-16 Thread Tuomo Valkonen

I will have to replace Ikiwiki as the Ion site generator, since
it fails to work under Cygwin. (Excessive and ugly mangling of
all input into UTF-8 breaks down in the 2007 snapshot I'd been
using. *sigh*. The compiler doesn't need to know the encoding
used; only the web frontend does. Newer versions don't build. 
No response from the author.)

One thing that has been suggested, is webgen. But it seems that to do
all the inlining or even listing of all the FAQ entries, I'd have to
spend time learning Ruby/ERB/webgen internals, and I really have spent
far too much time on the computer/OS switch [1] already. A quickdirty
Lua or shell script would be faster to write. (Actually, I hate the
way Ikiwiki handles intra-wiki links, with its own syntax instead of
using markdown. Webgen, OTOH, doesn't have any support for easy linking.
I'd like to just define ready aliases for markdown for pages on the
site. There actually exists a markdown implementation in Lua...)

Does anyone have any other suggestions for site generator, or what 
to do with the site, that wouldn't involve too much effort from me? 
This could also be tied to the scripts repository, distribution of 
extra patches etc..

I still refuse to edit pages through crappy browsers' editors,
and whatever is chosen should support markdown for easy conversion
(and because most other ASCII markup languages are too bloated).

  [1]: http://iki.fi/tuomov/b/archives/2009/03/13/T16_46_57/

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Ikiwiki replacement etc.

2009-03-16 Thread Tuomo Valkonen
On 2009-03-16, Evgeny Kurbatov evgenykurba...@yandex.ru wrote:
 Try AsciiDOC.  It has not any web engine just text-to-html converter.

I'm not looking for a markup language -- I'm sticking to markdown.
I'm looking for a web engine.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Ikiwiki replacement etc.

2009-03-16 Thread Tuomo Valkonen
On 2009-03-16, Evgeny Kurbatov evgenykurba...@yandex.ru wrote:
 Which means web engine?  I meant no web engine -- no cgi, no web
 forms, no page editor thru web forms, just kosher html.  You can manage
 your pages with ftp.  Let the web server be engine.

No, I'm not looking for dynamic content. I'm looking for something
to generate static web pages; not he nicer-markup-to-html converter,
which will be markdown, but the part that wraps that into templates;
generates RSS; inlines multiple pages into one for news, FAQ;
offers nicer wiki-like linking rather than referring to individual
files; etc.

-- 
Stop Gnomes and other pests! Purchase Windows today!



Abandoning darcs

2009-03-13 Thread Tuomo Valkonen

The Ion darcs repositories have been taken offline, and I will
switch away from darcs. Reason: no version for the most viable
*nix platform of the day, Cygwin. The website will be upgraded 
when I manage to replace Ikiwiki, which also does not work under
Cygwin.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: Scratchpad stuck in max size mode

2009-03-12 Thread Tuomo Valkonen
On 2009-03-12, Per Johannes Schöön j.sch...@kabelmail.de wrote:
 I have been struck by a very curious problem. The scratchpad, from one day
 to the next, decided it wanted to be, and remain, as large as my screen.

Have you upgraded recently? It may have wrong size policies etc. in 
that case. I suggest deleting the scratchpad (Mod1+C), and then 
reopening it (Mod1+space), when it will be recreated with correct
settings.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: [Slightly-OT] On usability: managing usb devices network profiles in a ion3 environment

2009-03-09 Thread Tuomo Valkonen
On 2009-03-07, Mico Filós elmico.fi...@gmail.com wrote:
 Thank you all for your feedback. I will play with the scripts a little...

While you're at it, write ion-power-manager. Something simple 
and reliable to replace the awful bloated and complicated 
gnome and kde crap. No fucking HAL crap; just talk to /sys,
acpi, whatever. Can be Thinkpad-specific. Indeed probably 
should be based on plugins specific to particular computer
models or classes instead of over-engineered low-level 
abstr^Windirection.

(I tried reading the gnome-power-damager code to see how it works... 
with the effort I put into it, I couldn't make heads and tails
of how it's interacting with other HAL/DBus crap; how the XSync 
extension is supposed to keep track of idle times -- the documentation
of the extension is poor at best -- if it is supposed to do that. 
You have to trace a gazillion levels of indirection.

I'd probably just use the screensaver extension for idle timing, 
if it can be tricked into multiple timeouts. After all, you want
to run the screen lock _before_  suspend/hibernate; the scripts
should synchronise the locking program startup, or just include
the screen lock in the power manager. The Gnome crap doesn't do 
this, and all the system-level scripts have finished restoring 
the system from suspension -- when all the sun spots are correctly
aligned and it all works -- before it seems to run the locker, 
which is a big gleaming security black hole.

But it's a lot of work to do all that, and for now Windows mostly
works for me. I'm really liking _reliable_ suspend and hibernate
in Windowsland, foobar2k, undervolting -- even that requires a fucking
kernel patch on the piece of shit Linux -- etc. Finally even managed
to get locales/UTF-8 working in Cygwin: the trick is to use
LC_CTYPE=C-UTF-8.UTF-8. The biggest problem ATM is getting a cygwin
version of darcs. If it doesn't work out, I may have to switch to 
Mercurial for Ion and my other projects.)

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and local vendors and
artisans have had to yield to all under one roof big box hypermarkets.



Re: [Slightly-OT] On usability: managing usb devices network profiles in a ion3 environment

2009-03-03 Thread Tuomo Valkonen
On 2009-03-03, Vladimir Skuratovich skuratov...@gmail.com wrote:
 With network profiles you actually have a lot of options, starting from
 ifupdown scripts in Debian, where you can specify a profile manually,
 through 'divine', a nice small program that is able to send ARP requests
 to specified hosts to check if they are on the network and then
 configure the interface, to 'guessnet' - a plug-in for ifupdown, which
 can do the same things as 'divine' and some more.

NetworkManager (and its applet) are one of the few things that actually
didn't totally suck abount Xubuntu. Could even get VPN working with less
effort than Windows. (F-secure + Cisco VPN client - BSOD, if you install
them in that order. The only one I've had, while Linux has locked up many
times on console switches etc.) Otherwise, can't say much good about 
wireless in Xubuntu: all the radios blasting at full power on startup, 
have to manually turn them off, instead of it remembering the settings.  
And in 8.04 the Fn-key radio button just toggled the first device of
wifi/bluetooth, while in 8.10 it cycles through the combos without  
indicating the current choice: bluetooth led works, but wifi led doesn't.
In Windows I get a nice popup where to turn radios on/off, and it 
remembers the settings.

(As a temporary measure, I've been just running the XFCE panel as 
Ion's stdisp for all the systray shit. But it sucks, because it 
can't align stuff to the right in the non-fullwidth mode.)

-- 
Stop Gnomes and other pests! Purchase Windows today!



Re: [Slightly-OT] On usability: managing usb devices network profiles in a ion3 environment

2009-03-03 Thread Tuomo Valkonen
On 2009-03-03 17:21 -0500, Antonio De Leon wrote:
 On the question of detecting usb devices this tool can help on the
 detection part.

Here's my ls-removable script too. It's in Lua, and needs
both luafilesystem and posix packages for Lua.

There are two versions. The suffix-1 version worked with
the old 2.6.18 or whateveritwas Etch. Suffix-2 is a
conversion to work the modified /sys layout in *buntu 8.10,
but it fails to work because pmount doesn't seem to have
been upgraded to to reflect that. It, however, shouldn't be
too difficult to create a suid-root counterpart based on my
code, that just calls mount -- this time with sane FAT and
NTFS mounting arguments.

(*sigh*, even the ntfs-3g in 8.10 ubuntu is old, and does
not seem to support .NTFS-3G/UserMapping. A lot of shit in
it is _old_, and yet it has just half-a-year release
cycles.)

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS


#!/usr/local/bin/lua
--
-- Copyright (c) Tuomo Valkonen 2008.
--

require('lfs')
require('posix')

local function filtered_dir(d) 
local f, s_, v_ = lfs.dir(d)
local function g(s, v)
while true do
local vn=f(s, v)
if vn~='.' and vn~='..' then
return vn
end
end
end
return g, s_, v_
end

local function readfile(d)
local f, err = io.open(d, 'r')
if f then
local s=f:read('*a')
f:close()
return s
end
end

local function simplify_string(s)
if s then
return string.gsub(s, \n$, )
end
end

local function readfile_simple(d)
return simplify_string(readfile(d))
end

local function removable(d)
return readfile_simple(d../removable)==1;
end

local function removable_class(d)
-- Super-dirty hack
return d and string.match(d, /usb%d+/)
end

local function simplify_path(p)
local capts={}
local start=string.match(p, ^(/))
string.gsub(p, ([^/]+),
   function(e)
   if e==.. and #capts  1 then
   capts[#capts]=nil
   elseif e~=. then
   table.insert(capts, e)
   end
end) 
return (start or )..table.concat(capts, /)
end

local function get_device(d)
l=posix.readlink(d../device)
if not l then
return nil
end
if string.match(l, ^.) then
return simplify_path(d../..l)
else
return simplify_path(l)
end
end

local function get_info(dev)
return {
vendor=readfile_simple(dev../vendor),
model=readfile_simple(dev../model),
serial=readfile_simple(dev../serial)
}
end

local function get_info_usb(dev)
par=string.match(dev, (.*)/[^/]+)
if not par then
return {}
else
local m=readfile_simple(par../manufacturer)
if not m then
return get_info_usb(par)
else
return {
vendor=m,
model=readfile_simple(par../product),
serial=readfile_simple(par../serial)
}
end
end
end

local function scan_volumes(bd, d)
local function g()
local found=false
for v in filtered_dir(bd..d) do
if string.match(v, ^..d..%d+$) then
coroutine.yield(v)
found=true
end
end
if not found then
coroutine.yield(d)
end
end

return coroutine.wrap(g)
end



local mounts={}
--local mounts_=io.popen(mount):read('*a')
--string.gsub(mounts_, [^\n]+, function(l) table.insert(mounts, l) end)
local f=io.open(/etc/mtab)
for l in f:lines() do
table.insert(mounts, l)
end
f:close()

local function mounted(v)
for _, l in ipairs(mounts) do
local mp=string.match(l, ^/dev/..v..%s+([^%s]+))
if mp then
return mp
end
end
return false
end

local bd='/sys/block/'

local volumes={}

for d in filtered_dir(bd) do
local dev=get_device(bd..d)
if removable(bd..d) or removable_class(dev) then
local i1=get_info(dev)
local i2=get_info_usb(dev)

if i2 and i2.vendor then
info=table.concat({i2.vendor, i2.model, i2.serial},  )
else
info=table.concat({i1.vendor, i1.model, i1.serial},  )
end

for v in scan_volumes(bd, d) do
table.insert(volumes, {
kernel=v,
info=info,
mountpoint=mounted(v),
})
end
end
end

table.sort(volumes,
   function(a, b) 
   if a.mountpoint and not b.mountpoint then
   return false
   elseif not a.mountpoint and b.mountpoint then
   return true
   else
   return (a.kernel  b.kernel

Re: Keyboard focus lost in Swing applications (ex: Netbeans) after changing to window

2009-02-10 Thread Tuomo Valkonen
On 2009-02-09, Daniel Clemente dcl441-b...@yahoo.com wrote:
   Well, it improved lots of things. It works perfectly with gtk, qt, tk,
   keyboard, mouse, … The example code now works when I use Java
   1.6.0_12-b04. But if I compile and run it with the unreleased
   1.7.0-ea-b43, the focus is still buggy: 

You could, again, try reversing the order of the finalise_focus and
sendmsg in the TAKE_FOCUS branch of the clientwin focus function.

-- 
Stop Gnomes and other pests! Purchase Windows today!




Re: signal 11 from X 1.4.2 with nvidia driver

2009-02-10 Thread Tuomo Valkonen
On 2009-02-09, Antonio De Leon aldle...@gmail.com wrote:
 it only happens when using ion3 from 200808 onwards. xfce and others
 work normally.

Sounds like an Xorg bug. 

-- 
Stop Gnomes and other pests! Purchase Windows today!



Re: Keyboard focus lost in Swing applications (ex: Netbeans) after changing to window

2009-02-08 Thread Tuomo Valkonen
On 2009-02-08 21:52 +0100, Daniel Clemente wrote:
 
 Hi; thanks for the helpful explanations.
 
   I tried doing that change and it stayed the same. I also tried doing a 
 sleep(2) before sending the WM_TAKE_FOCUS (with the +2s timestamp), but 
 without success.
 
   What did work is this:

Try the attached patch. (Disclaimer: I haven't particularly tried it; 
just quickly threw it together.)

-- 
Stop Gnomes and other pests! Purchase Windows today!

diff -rN -u old-ion-3/ioncore/clientwin.c new-ion-3/ioncore/clientwin.c
--- old-ion-3/ioncore/clientwin.c   2009-02-09 00:35:07.380883290 +0200
+++ new-ion-3/ioncore/clientwin.c   2009-02-09 00:35:07.488878930 +0200
@@ -1015,10 +1015,11 @@
 {
 if(cwin-flagsCLIENTWIN_P_WM_TAKE_FOCUS){
 Time stmp=ioncore_get_timestamp();
+region_finalise_focusing((WRegion*)cwin, cwin-win, warp, stmp);
 send_clientmsg(cwin-win, ioncore_g.atom_wm_take_focus, stmp);
+}else{
+region_finalise_focusing((WRegion*)cwin, cwin-win, warp, CurrentTime);
 }
-
-region_finalise_focusing((WRegion*)cwin, cwin-win, warp);
 
 XSync(ioncore_g.dpy, 0);
 }
diff -rN -u old-ion-3/ioncore/focus.c new-ion-3/ioncore/focus.c
--- old-ion-3/ioncore/focus.c   2009-02-09 00:35:07.368883774 +0200
+++ new-ion-3/ioncore/focus.c   2009-02-09 00:35:07.484879092 +0200
@@ -347,7 +347,7 @@
 /*Time ioncore_focus_time=CurrentTime;*/
 
 
-void region_finalise_focusing(WRegion* reg, Window win, bool warp)
+void region_finalise_focusing(WRegion* reg, Window win, bool warp, Time time)
 {
 if(warp)
 region_do_warp(reg);
@@ -356,10 +356,7 @@
 return;
 
 region_set_await_focus(reg);
-/*xwindow_do_set_focus(win);*/
-XSetInputFocus(ioncore_g.dpy, win, RevertToParent, 
-   CurrentTime/*ioncore_focus_time*/);
-/*ioncore_focus_time=CurrentTime;*/
+XSetInputFocus(ioncore_g.dpy, win, RevertToParent, time);
 }
 
 
diff -rN -u old-ion-3/ioncore/focus.h new-ion-3/ioncore/focus.h
--- old-ion-3/ioncore/focus.h   2009-02-09 00:35:07.368883774 +0200
+++ new-ion-3/ioncore/focus.h   2009-02-09 00:35:07.484879092 +0200
@@ -23,7 +23,7 @@
 extern void region_warp(WRegion *reg); /* maybewarp TRUE */
 extern void region_set_focus(WRegion *reg); /* maybewarp FALSE */
 
-extern void region_finalise_focusing(WRegion* reg, Window win, bool warp);
+extern void region_finalise_focusing(WRegion* reg, Window win, bool warp, Time 
time);
 
 DYNFUN void region_do_set_focus(WRegion *reg, bool warp);
 extern void region_do_warp(WRegion *reg);
diff -rN -u old-ion-3/ioncore/group.c new-ion-3/ioncore/group.c
--- old-ion-3/ioncore/group.c   2009-02-09 00:35:07.272887653 +0200
+++ new-ion-3/ioncore/group.c   2009-02-09 00:35:07.460880061 +0200
@@ -241,7 +241,7 @@
 if(st!=NULL  st-reg!=NULL)
 region_do_set_focus(st-reg, warp);
 else
-region_finalise_focusing((WRegion*)ws, ws-dummywin, warp);
+region_finalise_focusing((WRegion*)ws, ws-dummywin, warp, 
CurrentTime);
 }
 
 
diff -rN -u old-ion-3/ioncore/window.c new-ion-3/ioncore/window.c
--- old-ion-3/ioncore/window.c  2009-02-09 00:35:07.332885230 +0200
+++ new-ion-3/ioncore/window.c  2009-02-09 00:35:07.480879252 +0200
@@ -182,7 +182,7 @@
 
 void window_do_set_focus(WWindow *wwin, bool warp)
 {
-region_finalise_focusing((WRegion*)wwin, wwin-win, warp);
+region_finalise_focusing((WRegion*)wwin, wwin-win, warp, CurrentTime);
 }
 
 
diff -rN -u old-ion-3/mod_tiling/tiling.c new-ion-3/mod_tiling/tiling.c
--- old-ion-3/mod_tiling/tiling.c   2009-02-09 00:35:07.124893627 +0200
+++ new-ion-3/mod_tiling/tiling.c   2009-02-09 00:35:07.416881837 +0200
@@ -158,7 +158,7 @@
 
 void tiling_fallback_focus(WTiling *ws, bool warp)
 {
-region_finalise_focusing((WRegion*)ws, ws-dummywin, warp);
+region_finalise_focusing((WRegion*)ws, ws-dummywin, warp, CurrentTime);
 }
 
 



Re: Multi-, different- monitors is multi-hopeless?

2009-01-18 Thread Tuomo Valkonen
On 2009-01-18, ebik e...@drak.ucw.cz wrote:
 I don't use mod_xrandr, for me it is useless since it doesn't support
 xrandr 1.2. 

Xrandr 1.2 itself is useless shit-o-rama shit. *nix is dead.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and local vendors and
artisans have had to yield to all under one roof big box hypermarkets.



Re: Multi-, different- monitors is multi-hopeless?

2009-01-18 Thread Tuomo Valkonen
On 2009-01-18, ebik e...@drak.ucw.cz wrote:
 There is
 currently no option to multiple screens than xrandr today.

Yes there is: it's called plain-old-X-multihead, or _the clean
solution_ that doesn't smell of a rotten kludge to the other side
of the globe. *Eugh*, adding more screens by pre-allocating a huge
root window and then adding views to it, *eugh*, *puke*, *blaargh*.
And that's the approach taken to everything these days in 
Futile/fascist Open Sore Software. (Futile, because it's destined
to become just another incredibly poor bastard son of Windows and
MacOS, instead of offering a real choice. Fascist, because it
offers no practical choice anymore; only the _purely theoretical_
choice of forking the code yourself, wasting your life on it.)

How about just creating new root windows dynamically? And using 
the same old APIs that are used for any other windows?

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: [SEMI-OT] Applications in a typical ion3 desktop environment

2009-01-17 Thread Tuomo Valkonen
On 2009-01-17 11:47 +0100, Sylvain Abélard wrote:
 
  (The Modern Web counts as sheer lunacy. In
  a few years, given the trend, it will require triple-widescreen
  configurations for all the advertisements and other crap, yet still
  have a single 5cm text column in the middle.)
 
 The Web will not require a triple-wide screen since the trend seems
 precisely to get the content on a third of the width, two thirds being
 empty white (or styled) borders. 

The two thirds are mega-wide and force the text out of view in narrow
browsers for sane content (such as my slightly smaller than portrait A4
or letter window on a 17 4:3 display) and viewing other stuff on the
side. You need the tripe-wide screen configuration to not have
to scroll horizontally to get to the text.

  In fact, an approx A4 sized screen [...] could be quite nice on a laptop.
 
 That would be great, readable, and not to mention easier to fit in normal 
 bags.

Of course, it would also be great if you could use it as a tablet in
portrait mode... with an e-paper display mode. The current tablet PCs
seem horribly kludgy, though, and, in fact, it might be better for the
tablet mode to be the default, with the computer behind the screen and
no keyboard except on a docking station that perhaps can be attached
to the computer nicely for transportation. At least I don't think 
I'd miss the keyboard much when travelling lightly. The keyboard 
does work as a screen cover, though, and there needs to be something
to replace that function. Surely it can be made lighter and less 
fragile than esp. tablet hinges. Or maybe the docking station can
be made to fill this function, essentially making the computer
of two detachable parts, so the tablet can be made less clunky.

In fact, maybe you could also split the eletronics and battery
between the two components, further reducing the tablet weight.
E.g., a primary storage HD (or SSD) could go in the KB part, as 
well as any optical drives -- actually, it sucks that you have to 
again pay extra for a laptop that doesn't waste space for one;
this is again something that belongs in a docking station or
otherwise external device -- with a smaller SSD on the tablet
part for the OS and some documents etc. The mechanical coupling
between the parts of course has to be made reliable.

-- 
Tuomo


Re: Keyboard focus lost in Swing applications (ex: Netbeans) after changing to window

2009-01-16 Thread Tuomo Valkonen
On 2009-01-16, Daniel Clemente dcl441-b...@yahoo.com wrote:
   I was using Ubuntu GNU/Linux 8.04.1 with these packages:

 ii  sun-java6-bin  6-06-0ubuntu1  Sun Java(TM) 
 Runtime Environment (JRE) 6 (architecture dependent fil

Etch, sun-java5-bin.
Also, just now whatever they've got on this FC4. (
$ java --version
java version 1.4.2
gij (GNU libgcj) version 4.0.2 20051125 (Red Hat 4.0.2-8)
)

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: [SEMI-OT] Applications in a typical ion3 desktop environment

2009-01-16 Thread Tuomo Valkonen
On 2009-01-16, Philip Snowberger psnow...@nd.edu wrote:
 On Sun, Jan 11, 2009 at 10:23 AM, Tuomo Valkonen tuo...@iki.fi wrote:
 bought almost an identical x61s about 18 months previous.  That said,
 it's kinda sad that the only reason it could be considered
 'affordable' is that Lenovo was blowing them out so that they can
 hurry up and end-of-life them (I guess?).

One thing I've been wondering is, whether a widescreen display on
a laptop (not a dragtop!) is actually a bad idea too. And it's the
trend. For most _sane_ documents, the height of the screen is more
important than width. (The Modern Web counts as sheer lunacy. In
a few years, given the trend, it will require triple-widescreen 
configurations for all the advertisements and other crap, yet still
have a single 5cm text column in the middle.)

You'd need at least 15.4 WS (1.6 aspect) to fit a single A5-sized 
document (21cm tall) on the screen without noticeable downscaling. 
Such a laptop is already quite huge width-wise. In 4:3 aspect ratio
14 is enough, and width-wise it's about the same as 13.1 WS, which
just about fits a keyboard without it looking crammed. (I don't 
have much direct experience with laptops.) And a 12 4:3 is 
approximately as tall as a 14.1 WS.

(A5 is what you get when you print two pages on one A4 sheet, and
anything noticeably smaller than that is too small for documents
that you have not specifically prepared for printing small --
see earlier post. In fact, an approx A4 sized screen -- A4 has
14.5 diameter -- with sqrt(2)/1=~1.4 aspect ratio, which is wider 
than  4:3=~1.3 but taller than 1.6, could be quite nice on a laptop.
The WS laptopss themselves actually have about the aspect ratio of A4,
but tend to have huge uneven borders around the screen. 

 [1] on the topic of mail clients, I haven't seen anybody mention 'sup'
 ( http://sup.rubyforge.org/ ), which didn't completely suck last time
 I tried it (early 2008).  

I've heard of it before and on principle it seemed almost what I've
wanted. However, at least then it suffered from some limitations that
I can't recall now, so I didn't bother trying it. 
I also read mail on a remote computer that I don't control, so
installing programs written in one of the Popular Bloated Scripting
Languages isn't very straightforward.


 it, I noticed on the mailing list lots of Architecture Astronaut talk
 about splitting it into sup the service and sup the client.  YMMV,
 it may be shit by now.

That sounds bad.

 [2] I used to use remind + wyrd with great success and much happiness
 until I started using google calendar+mail for work.  The only thing
 I'd really need for remind to keep working for me is a better backup
 solution for ~/reminders than I had at the time.  Every once in a
 while I think about going back to remind+wyrd.

I use a combination of xmessages and the cell phone for reminders,
depending on the importance of the reminder and whether I should
be near a computer anyway to act on it. (Why can't computer calendar
software be as simple as that in cell phones? Wait! Probably they've
managed to ruin them in them too with increased screen size and CPU 
power.)


~$ cat bin/atxm 
#!/bin/sh

if test $# -lt 1; then
echo 'Usage: atxm time [message]'
exit 0
fi

TIME=$1

shift

cd /

(
echo '(iconv --to=latin1 | xmessage -display :0.0 -file -)  EOF'
if test $# -gt 0; then
echo $@
else
cat
fi
echo EOF
) | at $TIME


-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Keyboard focus lost in Swing applications (ex: Netbeans) after changing to window

2009-01-15 Thread Tuomo Valkonen
On 2009-01-15, Daniel Clemente dcl441-b...@yahoo.com wrote:
 In fact any Swing application has this problem. You can use this one to test:

CBA going through all the trouble of installing java compilers
and whatever dependencies there may be. Java on Linux is pain;
already been too much trouble installing the VM back in the day.

   Why is it so?

Probably because Swing is crap and sets the focus somewhere where
it shouldn't be -- in violation of the ICCCM. X doesn't forward 
focus changes to the WM is requests, but rather obeys each and 
every one (unless the target window is hidden, etc.), so the 
WM should have to start fighting agianst them.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: [SEMI-OT] Applications in a typical ion3 desktop environment

2009-01-12 Thread Tuomo Valkonen

 other stuff

latex, rubber, 


... dramatic pause ...


bibtex, metapost, xdvi, xpdf, gv, psbind -3 [*], dvipdfm.

And should we start listing latex packages too?


Seriously though, this listing of all the software one uses
and that is far removed from setting up a consistent ionic 
operating (no desktops here!) environment, could be seen as 
spamming the list. A wiki would be a better location for this
sort of stuff but, alas, it's too much of a hassle to set up
one that wouldn't start sucking. 

Maybe some site offers ad hoc wikis, a bit akin to pastebots?


[*] With narrow text column classes such as amsart, three pages 
fit on one side of an A4 just fine with psbind, and saves a lot 
of paper -- together with duplex printing, of course.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: [SEMI-OT] Applications in a typical ion3 desktop environment

2009-01-11 Thread Tuomo Valkonen
On 2009-01-11, Sylvain Abélard sylvain.abel...@gmail.com wrote:
 I also heard you can find companies that replace MacBooks screens with
 matte ones for $100.
 FYI, the matte screen option is $100, only available on the biggest $2500 
 Mac.

Yeah, they only seem to sell matte displays on corporate-priced stuff
worth more than your monthly salary. To people who want quality and 
are ready to pay for it. The typical idiot consumer is all wet over 
a 19 (wow, big number!) dragtop with a glossy (shineee! my precious!)
finish.

Matte display finish is like green paint: worth more than the device
it is covered with. \end{army joke}

(In theory e.g. the el cheapo Thinkpad SL400 should be available in 
matte, but all the shops only seem to carry glossy versions.)

-- 
Dreams of the past: Computers will automate menial tasks. Paperless office.
Reality: Paper forms replaced by a hundred times more electronic forms 
required to be filled by human slaves for management departments.



ion-3-20090110

2009-01-09 Thread Tuomo Valkonen

This is yet another maintenance release.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and local vendors and
artisans have had to yield to all under one roof big box hypermarkets.



Re: path, alias with F3

2009-01-07 Thread Tuomo Valkonen
On 2009-01-07, ebik e...@drak.ucw.cz wrote:
 Which scripts? If you set environment variable PATH for ion to contain
 ~/bin, it will search executables there also. 

Ion also has its own search path for its scripts. You can set
it from the command line, or modifying the searchpath field of
ioncore.set/get_paths.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Toggle horizontal/vertical maximize behaviour

2009-01-07 Thread Tuomo Valkonen
On 2009-01-05, Chris Burkhardt ch...@mretc.net wrote:
 Ah, I see. But what I think is still a bug is that after performing a 'Mod1-K 
 V'
 in the other top frame (as in step 5 in my example), then the originally
 maximized frame forgets its original height. 'Mod1-TAB'ing to it and trying to
 un-maximize it with 'Mod1-K V' has no effect, although even with the intended
 per-frame maximize I would expect it to (right?). 

The logic is that frames store their size when they're specifically
shaded or maximised, and forget the stored size whenever they are
otherwise resized -- including resizing is enforced in a tiled layout
whenever some other frame is resized. Fixing these annoyances you've
pointed out, involves a different kind of logic not based on maximizing
individual frames, but altering the entire layout somehow.

 Thanks for everything, I hope your PhD defense/preparations went (are going)
 well for you.

It was on the 22th of December already. 

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Toggle horizontal/vertical maximize behaviour

2009-01-05 Thread Tuomo Valkonen
On 2009-01-02, Chris Burkhardt ch...@mretc.net wrote:
 4) Again in the top frame do a 'Mod1-K S' to do a horizontal split.
 5) In one of the top frames do a 'Mod1-K V' to collapse the bottom frame. Then
 'Mod1-TAB' to the other top frame and 'Mod1-K V'... the bottom frame
 unexpectedly stays at 0!

Ah... well I'd classify that as an (unintentional) feature then. 
Maximise is completely unaware of tiling/layout, it just works on
a per-frame basis. It should be done somewhat differently (snapshotting
entire layout instead of just saving the size of a single frame) for 
what you want to work. It'st hus will not be changed in the stable 
Ion3. For Ion3plus a good-quality patch would certainly be accepted;
if I ever find the time, I may even do it myself.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: xkbion.lua

2008-12-30 Thread Tuomo Valkonen
On 2008-12-19, Anton Yuzhaninov cit...@citrin.ru wrote:
 xkbion.lua from ion scripts collection works for me only with this patch:

Please submit the fixes to the repository.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and local vendors and
artisans have had to yield to all under one roof big box hypermarkets.



Re: ion scripts location

2008-12-19 Thread Tuomo Valkonen
On 2008-12-19, Anton Yuzhaninov cit...@citrin.ru wrote:
 darcs get http://iki.fi/tuomov/repos/ion-scripts-3/

Works for me.

However, http://modeemi.fi/~tuomov/repos/ion-scripts-3/
may be faster; at least darcs1 used to handle redirects
stupidly.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Toggle horizontal/vertical maximize behaviour

2008-12-15 Thread Tuomo Valkonen
On 2008-12-15, Ilya Schurov ilya.schu...@noo.ru wrote:
 resize commands. (E.g. I see only tab heading, but if I switch to that
 heading and try to do ALT+K-V or even ALT+R-N, there's no reaction.) The
 only way to unshrink it is to resize main frame.

 Is it a bug or a feature? :)

For some reason, Alt+R Mod1+N does work, although it's the
move binding.

I may look into this more closely next year; now I have
other things to concentrate on.

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: Tab width in 'shaped' bar style

2008-11-30 Thread Tuomo Valkonen
On 2008-11-29, Oskar Nordquist [EMAIL PROTECTED] wrote:
 However, the tab width depends on the maximum tab width in their
 containing frame. Is there any way for the individual tabs to only
 stretch as far as their own title width?

Other than touching the code for a custom hack? No. Tabs have uniform
widths. For a good reason. (I find varying widths confusing.)


-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
By 2008, Linux has bloated into a gas-guzzler, and the cycle paths 
have been replaced with polluted motorways.



Re: statusd_mpd-socket.lua

2008-11-19 Thread Tuomo Valkonen
On 2008-11-19, Marc Hartstein [EMAIL PROTECTED] wrote:
 A drop-in replacement for statusd_mpd.lua which uses sockets instead of
 popen to communicate with mpd.  Suggest renaming to replace the other
 script.

I suggest sending it to the scripts repository for easy availability.

Also, on a cursory glance, it appeared to be a timer hack. If it's
at all possible to get the file descriptor from Lua, I suggest
adding it to those selected on for event-based processing. This
will require a little bit of C code to add the desciptor, since 
popen_bgread is currently the only interface and unlikely to work
correctly on sockets. While to ion3plus, certainly new interfaces
could be added to support selecting on arbitrary fds from the Lua
side (and the primary reason the support isn't there, is that fds
are not well available from Lua), this can be done with e.g. the
TCC/alien/c/invoke hacks disgussed e.g. at

  http://www.mail-archive.com/ion-general@lists.berlios.de/msg02559.html

-- 
In 1995, Linux was almost a bicycle; an alternative way of live to the
Windows petrol beasts that had to be taken to the dealer for service.
In 2008, Linux has bloated into a gas-guzzler, and cycle paths have 
been replaced with polluted motorways.



Re: Can't type queries

2008-11-16 Thread Tuomo Valkonen
On 2008-11-16, sughosh ganu [EMAIL PROTECTED] wrote:
  The problem was that ion did not recognize the locale on my system
 (en_IN). Changing it to en_US.UTF-8 solved the problem. Thanks for the
 help.

It's not Ion. It's Xlib. en_IN.UTF-8 should work, if it's been
compiled.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Can't type queries

2008-11-16 Thread Tuomo Valkonen
On 2008-11-16, Tuomo Valkonen [EMAIL PROTECTED] wrote:
 On 2008-11-16, sughosh ganu [EMAIL PROTECTED] wrote:
  The problem was that ion did not recognize the locale on my system
 (en_IN). Changing it to en_US.UTF-8 solved the problem. Thanks for the
 help.

 It's not Ion. It's Xlib. en_IN.UTF-8 should work, if it's been
 compiled.

I'm not exactly sure why Xlib handles LC_CTYPEs without the encoding
part specified in a fucked up manner, but it does have a locale.alias
database of its own, /usr/share/X11/locale/locale.alias, which does
e.g. list

en_IN:  en_IN.ISO8859-1

If Xlib uses this database instead of the information from libc,
nl_langinfo(CODESET), and libc has been compiled with a different
character set for en_IN, it could be why it's fscked up.

The modern (read: shit) toolkits afaik pretty much reinvent all
this, being utf-8 monoculturistic [ which also results in nobody
bothering to fix Xlib, the generic multibyte routines of which
handle utf-8 locales very badly ], and xterm also uses the Xutf8
routines instead of Xmb routines when in an utf-8 locale.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: two quick misc. questions - labeling workspace and changing title bar height...

2008-11-15 Thread Tuomo Valkonen
On 2008-11-14, Juri Mianovich [EMAIL PROTECTED] wrote:
 I did this, and the workspace still has:

 xterm5

 in the title.  

It's not workspace title. It's the window title.
Workspace titles aren't shown.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Can't type queries

2008-11-15 Thread Tuomo Valkonen
On 2008-11-15, Tuomo Valkonen [EMAIL PROTECTED] wrote:
 On 2008-11-14, sughosh ganu [EMAIL PROTECTED] wrote:
 So pressing F3 prompts
 for a command, but typing does not produce any string. Same is the
 case with other keys like F4 and F5.

 IIRC it's a locale setup fuckup. You have to have the encoding
 specified as part of LC_CTYPE for X, e.g. LC_CTYPE=fi_FI.ISO-8859-1,
 and you have to have the locale compiled for libc. (Debian:
 config /etc/locale.gen, generate: locale-gen.)

Another thing you might look for is, if the startup errors
(non-logged; you'll have to dig into the console or 
.xsession-errors of you run a DM and it supports it) 
has complaints about input methods or input contexts,
in the case that you're running in a strange locale
(as your name might imply). Ion only has very basic support
for X input managers, so pre-edit windows etc. might not work.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Ion rewriting

2008-11-13 Thread Tuomo Valkonen
On 2008-11-13, Roy Lanek [EMAIL PROTECTED] wrote:
 etc. A bit like with ice hockey, which maybe (Finland) you know better than
 scuba diving.

I don't.

 That approach doesn't scale to big projects

 Well, I have not proposed to rewrite Linux or PostgreSQL in Haskell yet ...

Even Ion is far too much work to rewrite, with little practical 
benefit. Rewrites of working code just to conform to fads are 
pure insanity. I rather concentrate my academic wanking on the 
far more interesting mathematics... 

Indeed, one of the biggest obstacles I have in producing new
code is that I'd need to be able to take a lot of time to
properly concentrate on it. But I don't have that time and
energy, and it's always a lot of effort to start working for
a few spare hours on something you only ever look at for 
a few hours every couple of weeks. Maintaining an existing 
codebase that you've previously had more time and energy
to concentrate on, so it's burned into your neural patterns,
is far easier. One should be able to get into The Zone for
an extended period to properly get going with a new project,
but with projects bigger than a single-file hack, it's difficult
to find the time and energy. Indeed, I found The Zone to write 
Riot in, immediately after having lost the shitjob I had back 
then. (One of the best days of my life.)

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Ion rewriting

2008-11-13 Thread Tuomo Valkonen
On 2008-11-13, Roy Lanek [EMAIL PROTECTED] wrote:
 Which The Zone?! ... 

The Zone, the flow, super-concentration/immersion on/in a problem.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: two quick misc. questions - labeling workspace and changing title bar height...

2008-11-13 Thread Tuomo Valkonen
On 2008-11-13, Juri Mianovich [EMAIL PROTECTED] wrote:
 Hello,

 When I create a workspace, it is named:

empty frame

That's not the workspace name; it's just indicator of an empty frame.

 my favorite xterms  (or whatever) and have that name/title stick ?

Mod1+M workspace/rename

 Second, I'd like to change the height of the title bar slightly and have
 that new height apply to all future title bars.  How can I do that ?

Change the style file.

PS. Turn on line in your mail program. Max. ~76 characters/line.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: quickly cloning an existing statusbar script (date)?

2008-11-13 Thread Tuomo Valkonen
On 2008-11-13, Juri Mianovich [EMAIL PROTECTED] wrote:
 If that is correct, would you tell me what/where the monitor
 is ?

Where ever you found the following line:

 statusd.inform('date', os.date(settings.date_format, tm))

 to this:

 statusd.inform('date -v +7H', os.date(settings.date_format, tm))

 does that seem reasonable ?

The monitor name must be parseable, and should be based on the
file name. RTFM:

http://modeemi.fi/~tuomov/ion-doc-3/ionconf/node6.html#SECTION0064

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Ion rewriting

2008-11-12 Thread Tuomo Valkonen
On 2008-11-13, Philip Snowberger [EMAIL PROTECTED] wrote:
 On Tue, Nov 11, 2008 at 12:53 AM, Tuomo Valkonen [EMAIL PROTECTED] wrote:
 On 2008-11-10, Tuomo Valkonen [EMAIL PROTECTED] wrote:
 And Haskell just sucks for the moderately object-oriented approach that is
 obvious for certain things.

 OTOH, Haskell and Parsec [1] are simply wonderful for writing parsers.

 Do you find that's the case because of pattern-matching function
 definition syntax ?

In case of Parsec, I think it's more about how monads can be used 
to create domain specific languages (DSLs), and the monad syntax.

Of course, one can write primitive parsers with the language's pattern
matcher too, but Parsec is even more convenient than for anything
except the most trivial parsers.

That said, pattern matching and algebraic data types / tagged unions
are a very nice thing. If there are two features I'd most like C
to have without significantly altering its nature, it would be
tagged unions and subtyping (i.e. the most basic component of
inheritance).

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Ion rewriting

2008-11-11 Thread Tuomo Valkonen
On 2008-11-10, Tuomo Valkonen [EMAIL PROTECTED] wrote:
 And Haskell just sucks for the moderately object-oriented approach that is
 obvious for certain things. 

OTOH, Haskell and Parsec [1] are simply wonderful for writing parsers.
In fact, I use Haskell in the build process of Ion for parsing translatable
strings from Lua source with lua-xgettext [2]. With Parsec, the parser [3]
can be pretty much written in a DSL monad as the language is specified,
without crummy parser generators.

  [1]: http://www.cs.uu.nl/~daan/parsec.html

  [2]: darcs get http://modeemi.fi/~tuomov/repos/lua-xgettext/

  [3]: http://modeemi.fi/~tuomov/repos/lua-xgettext/Kuu/Parser.hs

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Ion rewriting

2008-11-10 Thread Tuomo Valkonen
On 2008-11-10, Roy Lanek [EMAIL PROTECTED] wrote:
 Haskell language-of-the-day ... why?, 

Umm... increasing popularity?

 Oh dear, hello Moses- (the illiterate who brought back the astonishing
 writings) alike, or Muhammad- (ditto [illiterate]) alike. And who did write
 your frameworks ages ago?

I have written object crap etc. for C. I can use them 
comfortably enough.

 The language just isn't meant for that kind of stuff.

 Can't tell now. On the other hand:

 Roll Your Own Window Manager: Tracking Focus with a Zipper

They have a adaptive data structure for O(1) access to currently
focussed window! How incredible! How about all the other state updates
triggered by client software? A window manager depends on a lot of 
state, and pure FP makes it difficult/laboursome to maintain it. 

Pointers are comfortable.

 You do have a good, comfortable life, there in Finland, eh? :) 

Finland is a shithole.

 Bullshit. It's very very laboursome to make fast Haskell code, and
 especially such that doesn't eat gigabytes of memory for breakfast.

 I have, e.g., *met* reference counting in the *real world* for the first time

It's not ref. counting/GC/shit I'm talking about. I'm talking about all
the boxing and shit. The basic data structures incredibly inefficient,
so you have to use other more hacky ones for efficiency, and they are
again more difficult to use generically, may demand messing in the IO
monad, etc. (The uniqueness typing of Clean seems more comfortable..)

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Ion rewriting

2008-11-10 Thread Tuomo Valkonen
On 2008-11-10, Roy Lanek [EMAIL PROTECTED] wrote:
 instead of their heads.) In the hands of a great programmer (like James
 Clark), it's astounding what can be done in a few lines of Haskel, and
 it's interesting to compare the amount of Java code it takes the same
 programmer to implement the same algorithm.

Yep, you can do incredible things in 10 lines. But to think how to write
those few lines takes ten times as long as the writing the corresponding
1000 lines of C. That approach doesn't scale to big projects, where you have
some other objective than an academic exercise in the language in question.
And Haskell just sucks for the moderately object-oriented approach that is
obvious for certain things. You have to build workarounds upon
workarounds, because the obvious approach can't be sanely done.[*] And it gets
very tiresome, if you have to try to come up with a non-obvious model for
everything in a big project. The massive threading approach that I proposed
might be workable and functional (as well as actually message passing
OO), perhaps even scalable, but it also would need better language support
to be convenient to use.

I am actually very very slowly working on something in Haskell, dunno if
I'll ever finish, and in all the time I've spent fighting with the language,
I'd already have finished the project in C. Actually many things that would
be a single line in C are tens of lines of Haskell... But the entire project
is really an academic exercise.


[*] That said, a lot of time should be spent on designing the 
API of important core libraries etc. that everyone gets to suffer
from, to avoid the crummy obvious approach, and maybe come up 
with something nicer.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Ion rewriting

2008-11-10 Thread Tuomo Valkonen
On 2008-11-10, Leslie P. Polzer [EMAIL PROTECTED] wrote:
 Ever tried Common Lisp?

I'm not a fan of Lisp syntax.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Ion rewriting

2008-11-10 Thread Tuomo Valkonen
On 2008-11-10, Roy Lanek [EMAIL PROTECTED] wrote:
 What--and I am serious--about rewriting Ion in ... Haskell?

Rewrites in The Language of the Day are lame (see also the .signature),
for people with a lot of time in their hands and no original ideas.

 Why so?!, because Ion is written--shudder--in the US-dollar of the programming
 languages anno 2008 still; hence, Tuomo (but not only he) has, to ... I am
 paraphrasing Torvalds, play at the masturbating monke^H^H^H^H^Hreindeer
 every time he needs to change something in the code that goes beyond
 cosmetics, and be it as as an experiment only, quite likely. ( C's
 *expressivity* oblige.)

C works quite well, especially combined with Lua for the tasks that
are not nicely done in C. Working on Ion's code, I don't often run
into the limitations of C, because I have my frameworks written ages
ago. What would make sense is gradually moving some of auxiliary C 
code to the Lua side.

I really don't like writing the kind of stuff a window manager is in
Haskell. It's too painful. The language just isn't meant for that kind
of stuff. Dynamic data structures (e.g. objects) are _pain_; perhaps
the best way to get around this is _heavy_ threading, every object being
its own thread... it's an academic exercise that I have no time for, 
and of little practical benefit over a tried C implementation that 
works today.

 I skip mentioning other advantages in general, moreover I am sure Tuomo
 perfectly knows that Compiled Haskell is as fast than C

Bullshit. It's very very laboursome to make fast Haskell code, and
especially such that doesn't eat gigabytes of memory for breakfast.

Lie, statistic, benchmark.

Liar, politician, software advocate..

 Lua may be fun, but Haskell (and other modern functional languages) are no
 match ... on standard environments at the least. 

Haskell is fun for academic exercises. Real-world programs are pain. 
Plus the Haskell build environments are shit. GHC is infinite
pain to install anything under. All these language fundies (which
includes the majority of FP people) are always reinventing the OS
for their language only, instead of using the operating system's
tools (such as the file system).

 dwm and all its clone and derivatives look like nano (the editor), or pico of
 the window managers pretty much to me, where ion could be vi; 

Ion is joe http://joe-editor.sf.net/.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Ion rewriting

2008-11-10 Thread Tuomo Valkonen
On 2008-11-10, Christian Walther [EMAIL PROTECTED] wrote:
 I'll never forget one of my teachers telling me that I used java to
 store my functions. I'm still not sure that I understand what he
 meant. ;-)

One example of Pure Uglyness in programming languages are the
OO first class function hacks. i.e. writing some kind of
Function1Int,Int template class, overloading the call 
operator, etc. 

 That's why I think that this discussion is kind of... pointless.

Of course it is, as are rewrites just because the language 
used isn't in fashion anymore.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Disable automatic saving of workspace (frame layout)

2008-11-06 Thread Tuomo Valkonen
On 2008-11-06, Sylvain Abélard [EMAIL PROTECTED] wrote:
 How do I save workspace and frame layout?
 Ion does it automatically for you when you exit it cleanly.
  Can ion be configured not to do this?

 A long time ago, my hack was to remove the write rights to the
 saved-layout file.
 If there isn't a better way now, I hope it helps

Exit with ioncore.resign() instead of ioncore.shutdown()


-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Disable automatic saving of workspace (frame layout)

2008-11-06 Thread Tuomo Valkonen
On 2008-11-06, Daniel Clemente [EMAIL PROTECTED] wrote:
The restart will save the session unless the source code is modified.
Or maybe it can be overriden in Lua?

No. And it doesn't make much sense to override; saving is needed
for sane restart behaviour that will place the windows where they
were. (Of course, one might use some X root window property too
in this case.) The primary reason for the existence of resign() is 
also being able to quit the WM under a session manager (that supports
remote exit) without shutting down and saving the entire session. 
If one wants a static setup, it's perhaps best to just clean up
files in .xsession.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Disable automatic saving of workspace (frame layout)

2008-11-06 Thread Tuomo Valkonen
On 2008-11-06, Tuomo Valkonen [EMAIL PROTECTED] wrote:
 If one wants a static setup, it's perhaps best to just clean up
 files in .xsession.

Perhaps this needs a clarification: you can put a saved_layout.lua
in ~/.ion3/.  If one doesn't exist in the session directory
(which one can explicitly specify with -session), this one is 
loaded. If you remove the one in the session directory in 
.xsession, restarts should work fine, as the state gets saved
over restarts.

(It's also possible to do some search path mangling in
Lua and from the command line, and maybe even set X properties
to detect restarts. But it's more kludgy. And the session
directory is always the first directory looked into, despite
other search path orders, which excludes certain options.)

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Moving tabbar to bottom of the screen

2008-10-31 Thread Tuomo Valkonen
On 2008-10-31, Eider Oliveira [EMAIL PROTECTED] wrote:
   Is there a way for me to place the tab below the frame, instead of on top
 of it?

Other than writing a patch, no.

It shouldn't be too difficult. There's already the 'bar' parameter
of frame styles, that supports the modes inside, outside, and
shaped. Just add -below variants, and wherever FRAME_BAR_* 
is referred to, add extra cases for the below geometry.

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: OpenOffice focus

2008-10-13 Thread Tuomo Valkonen
On 2008-10-13, John Harrigan [EMAIL PROTECTED] wrote:
 Both Acrobat and OpenOffice open in the 'Aux' frame as desired,
 but starting OpenOffice moves focus to the 'Aux' frame.  Acrobat
 does not change the focus.  Changing switchto from true to false
 doesn't seem to change this behavior.

It is possible that OO is crap [of course it is, and utter and total
at that] and forces the focus, in violation of the ICCCM [1]. Focus 
change is not a request, but a command that the X server follows. 
ICCCM establishes protocols on when it may be used.

  [1]: http://www.tronche.com/gui/x/icccm/sec-4.html#s-4.1.7

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: maximizing

2008-10-08 Thread Tuomo Valkonen
On 2008-10-08, panman [EMAIL PROTECTED] wrote:
 I've been trying to figure out where the problem is with maximizing any 
 of the flash video players out there, google, youtube, etc to the frame 
 they're in. They all try and then return to the normal embedded player 
 mode. Does anyone have any input into that?

They're crap that try to be their own WMs. Flash in particular
doesn't think it should be in FS mode if it doesn't have the
focus.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: maximizing

2008-10-08 Thread Tuomo Valkonen
On 2008-10-08, Sylvain Abélard [EMAIL PROTECTED] wrote:
 Flash in particular doesn't think it should be in FS mode if it doesn't have 
 the focus.

 Flash has many defects, but is this one so bad ?

It is. Most importantly, there's a race condition: if the flash 
window doesn't get the focus fast enough, when it goes into FS 
mode, it will close. But this trying to outsmart the WM also
means you can't open the scratchpad while flash is FS, can't
switch back to another WS while flash is FS, or the window will
un-FS.

 I wouldn't like the ugly Flash ads on a web-page to make itself
 fullscreen without asking,

This feature won't stop that, if the flash crap can avoid the
above-mentioned race condition.

 Flash is made for dummies.

All Web technology invented after HTML 2.0, with the exception
of CSS, is for dummies. 

(And even CSS is too complicated.  I suspect it could be 
simplified a lot, if would only have to cater to document 
layout, not application layout. And applications would benefit
from something not suited to documents. *sigh* again trying
to do everything with one language.)

 Be an early adopter! Beat the herd! Choose Windows today!
 Your troll-power is exceptional :D

Just stating where things seem to be going.

 PS: would it be easy to fix this ML's reply-to? Is it possible, do
 we want to avoid it?

There's a problem? It should not be set, and there's a school of
thought that thinks this is how it should be. I have no particular
opinion (!) about the matter, but tend to slightly side with not
setting it. I just wish MUAs were more intelligent about List-Post
and headers. Even mutt -- the mail user agent that sucks the least
-- is stupid with regard to mailing lists. It sucks having to
configure the lists in .procmailrc, include a subscribe line in
.muttrc, include a mailbox line in .muttrc for checking for new
mail (or alternatively, if not procmailed into separate folders, 
write save-hooks), and then remember to press L instead of r
to reply. The default reply key should ask what to do when there
are multiple options (list, group, or just the poster, etc.).
Setting Reply-To is a workaround to retarded MUAs. 

I just use slrn and nntp://news.gmane.org whenever possible.


-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: pidgin add a buddy transient not moveable

2008-10-07 Thread Tuomo Valkonen
On 2008-10-07, A K [EMAIL PROTECTED] wrote:
 I have my pidgin (.im) buddy list nice and narrow on the right of my
 screen. When someone wants to add themselves as a buddy of mine a
 transient window pops up but half of it is hidden and when I move the
 buddy list to another (bigger) frame the transient doesn't move with
 it.

How is the window hidden? Is it clearly inside the frame of the main
window, or could it be just partially outside the screen?

These days Ion automatically detaches (or unsqueezes) big transients
that don't properly fit in the frame, and they don't follow their main
windows around. You can disable this behaviour with

ioncore.set{ unsqueeze = false }

-- 
[Fashion] is usually a form of ugliness so intolerable that we have
 to alter it every six months. -- Oscar Wilde
The computer industry is the only industry that is more fashion-driven
 than women's fashion. -- RMS



Re: Move frames to and from scratchpad

2008-10-06 Thread Tuomo Valkonen
On 2008-10-05, Daniel Clemente [EMAIL PROTECTED] wrote:
   I have been using the function you sent and it works very well; thanks.
   With Tuomo's improvements, I think it would be very helpful for the
   scratchpad feature of Ion. Could it be included?

Just send it to the scripts repo.


-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: unfocused floating windows

2008-10-05 Thread Tuomo Valkonen
On 2008-10-05, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:
 My question is, is it possible to force a 
 window not to have focus even if the pointer is on it (something 
 similar to what happens to the rest of the windows when the scratchpad 
 is visible)?

ioncore.set{mousefocus='disabled'} will disable pointer-based 
focusing entirely. Restore with 'sloppy'. Currently there are
no other options, as nobody's been arsed to write them.
Also, it's possible to make floating windows 'passive'
(setting passive = true in WMPlex.attach[_new] parameters),
but there's no winprop hack for it; using it would demand
some custom scripting.

-- 
Be an early adopter! Beat the herd! Choose Windows today!



ion-3-20081002

2008-10-02 Thread Tuomo Valkonen

Some minor fixes again, including a few that should've already
been in the previous release.


-- 
Be an early adopter! Beat the herd! Choose Windows today!



Re: Move frames to and from scratchpad

2008-09-25 Thread Tuomo Valkonen
On 2008-09-25, Canaan Hadley-Voth [EMAIL PROTECTED] wrote:

   After trying several combinations, I found one that correctly brings a 
 frame from scratchpad to the background frame:
 In Lua console:
 _:screen_of():mx_current():current():current():attach(_sub)
 In a key binding: kpress(META..Shift+k, 
 _:screen_of():mx_current():current():current():attach(_)),
 

 I have been using this function to do what you are trying to do.  

You both are failing to simply recursively apply WRegion.current,
until something interesting is found. Something like:

reg=cwin:screen_of()

function scan(reg)
if not reg then
return nil
elseif obj_is(reg, WFrame) then
return reg:attach(cwin)
elseif ... then
...
else
return scan(reg:current())
end
end

scan(cwin:screen_of())

Maybe it indeed makes sense to use WTiling attach if discovered,
as it can better find something useful, if the current isn't actually
a frame (unlikely).

-- 
Tuomo



  1   2   3   4   5   6   7   8   >