mousless OS


Forum: DSL Tips and Tricks
Topic: mousless OS
started by: escay

Posted by escay on May 18 2006,12:17
Hi all,

i´ve got an idea and just wanted to have some feedback on that topic. I´d like to have an Operating System, where everything can be done without the need of a mouse. I prefer to do things with keystrokes rather than using a mouse (yes, even in an graphical enviornment). well, for nearly every task you can perform there are applications for the console available. But the one thing i miss, is a pdf viewer. AFAIK there is no way to view pdf files on the console. The mydsl-panel lacks IMO the keyboard support as well. You can select the group of software via keystroke, but if you want to select a specific application within the next opened box you are lost.

Is anyone interessted in something like this?
Feedback would be nice.

Greetz
Escay

Edit: just seen that i missed the right forum... should be in "ideas & suggestions" instead. please move that article. thx.

Posted by torp on May 18 2006,14:16
i'm not interested myself, but wm's that are controlled without a mouse do exist. take a look at the repository, there is one in there i think called evil wm. then again you can just use the console by running DSL 2.

torp

Posted by mikshaw on May 18 2006,15:33
Fluxbox has a very good keygrabber, in my opinion.  It can be configured to do practically all of its tasks with the keyboard, and it can be done fairly easily.  Ratpoison is made specifically for keyboarders, and was built to resemble Screen.  There will soon also be wmii in the repository, which is another keyboard-driven window manager.
Evilwm is not so great as far as keyboarding goes.  The program itself is well-controlled through keys, but there is no keybinding available, so applications must be started from a terminal unless you use an additional keygrabber program.  This is not very efficient when compared to Fluxbox's ability to assign hotkeys to launch any number of commands.

My personal opinion is that all applications in an ideal world should have the ability to be controlled with a keyboard, regardless of whether or not you have a perfectly useable mouse.  Some tasks are better suited to a mouse, such as drawing or shooting monsters, but most can be done at least as efficently with a keyboard.

You can view some pdf files in console indirectly by running them through pdftotext and piping the output to a pager or text editor, although this doesn't work on files that have been locked or do not contain plain text. It definitely is not the same as using a pdf viewer.

Posted by escay on May 18 2006,19:35
Hi,

first of all, thank you for the feedback. I didn´t really thought, that anyone would reply. Anyway...

Mikshaw wrote:
"My personal opinion is that all applications in an ideal world should have the ability to be controlled with a keyboard, regardless of whether or not you have a perfectly useable mouse. "

And that is exactly what i think. You should be able to control your whole software set with a keyboard only. See, that is one more reason, why i like linux. you can do everything you want when you are able to read and willing to learn. (i am both - but unfortunatly the day only has 24 hours)

I had a guess that there is a way of converting the files to view them on a console before. Now i took a closer look to xpdf, which also offers a keyset to use. Nice thing... just what i was looking for.

I´ve tried several WM´s but never found one, which was really comfortable with a keyboard only. Ok, so i will give fluxbox a try.

Would be really nice to use XMMS and DMIX with keyboards only - i´ll look around to find some information on this topic.

kind regards

Escay
(BTW - if there is something wrong with my writing, i am sorry about that. I have not written english since i left school) ;-P

Posted by mikshaw on May 18 2006,21:28
You can control much of xmms through either its own keybindings, or by setting up keybinds in your window manager.
< http://www.die.net/doc/linux/man/man1/xmms.1.html >

With a window manager or other keygrabber, you'd need to set up the keybindings using the xmms command followed by a command parameter.  There aren't as many controls available this way, but it allows you to control some parts of xmms while you're focused on another application.

Posted by escay on May 19 2006,08:47
i just took look at the documentation of fluxbox - it seems like that thing can do everything which i want it to do with a little effort of time to setup the keybindings as i need them. Should be the work of a day for the whole thing to setup. very nice.
i guess i´ll have a sleepless night tonight and loads of things to do ;-)

Thanks for your support.

Greetz
Escay

Posted by MDG on May 20 2006,01:45
Escay,
I was just wondering about this myself - I am a keyboard person too!  I'd love to hear how this goes for you and perhaps you can give some pointers to this noob!

MDG

Posted by escay on May 23 2006,10:19
hi mdg,

i am just @ the beginning of the configuration of the system for use without a mouse.

what i can tell you so far, is too read the documentation of every single programm. as i see things right now, it is possible to have a softwareset which is completly keyboardcontrolled.

So where do we have to start?
if you use jwm as WM it is quite easy to configure a controlset for your Keyboard. In your /home/dsl directory you will find a file .jwmrc - that is where you can configure your keybindings. see the jwm homepage for more details.

i am not sure right now, if there is an "embedded"(?) Keygrabber in JWM.

AFAIK in Fluxbox there is on. When i got it the right way, you need a keygrabber to launch applications via keystrokes (as windowskey + e launches the explorer) - i am not really familiar with linux now - but i am working on that ;-)

What i can do is, making the config and posting it step by step if you like....

greetz
escay

Posted by jot on May 23 2006,13:22
Hi,

I am trying to do the same right now basically (: I'm amazed with ion2 window manager, I think If you could spend some time with it it would benefit in many ways. I've tried wmii-3 yesterday and it lacks (or I couldn't find) features that I found in ion2 (from wm_apps repo).

By the way is it possible to compile ion3 on DSL ? Or upgrade lua to 5.1 ?

I haven't touched a mouse for about one year (just the touchpad) so I know some good console apps to start with, I try to choose aps that can be configured to use transparent terminals and If you wish can provide you my configs later.

Ok, now my favorite apps list:

text editor: vim ( +vimshell - already ccompiled, works great - just google 'vimshell' )
when you learn keystrokes and read few tutorials (ask for links) it is really powerfull tool ( + you can go to www.vim.org and read tips & scripts sections ) I hate the way Beaver does the 'find text' action. Vim also has mouse support (6.4 - I will soon add dsl with vimshell patch (mikshaw - can I add dsl compiled with '-march=pentium-mmx' ? ) , you can compile it easily with gcc1-with-libs.dsl ) binary is just 1.1 MB and additional scripts are about 11MB - you can remove them or learn to use them (:

web browser: elinks, dillo, ffox and opera for bigger tasks. Ok, but why elinks ? -> It gives you the best 'commandline browsing experience' , has even more features than dillo, can be extended with lua, is small and fast - If you have doubts just read < this > , be sure to read about 'URI rewriting' <- that's the most useful feature, and fits great into mousless OS.  Elinks supports mouse and it also has experimental BitTorrent support and many other features...

pdf viewer: I found someday an app that let me view pdf's in console (not terminal) , guess you could google 'fbi fbida pdf' it's console image viewer (framebufferimage..?) and as I remember you also need gs. It converts pdf page by page to tiff, and displays it with fbi. But it was too slow for me. (linuxpackages.net - it should be there)

mp3: of course you could use mpg{123,321}, but I would choose mpd with ncmpc although personally I use noxmms ( gui-less xmms, about 90kb ) , and control it via xmmsctrl ( 20kb ) with keybindings, and I am displaying current playing songs' title with torsmo. I couldn't find ncurses based xmms playlist editor that would suit my needs (tried xcplay,ncxmms), I still find ncmpc the best. Recently I have found 'moc' (music on console), it looks like it could be it , but it has some dependencies, but I might try it in the future.

file manager: Midnight Commander - it's hard to find something better, give it transparent theme on transparent terminal , nice background and it looks ... nice (: And functionality is its other advantage, properly configured it can replace emelfm with ease.


p2p : giFT & giFTcurs (+giftares , giftfasttrack) , you can also use edonkeyclc for overnet end edonkey2000 , or mldonkey (supports overnet,ed2k,gnutella,g2,bt...) - it's really powerfull, but I've not  used it a lot, couldn't configure it properly (:
For DirectConnect you could use microdc

rss reader: snownews, it's simple and good. Some of the rss feeds you can monitor via torsmo.


irc : irssi
IM : ekg (it supports gg protocol only) I can't say anything about other messengers as I don't use them (:

Well, guess that'll be it, now I just want to encourage you to try ion2.dsl
First it'll look ugly, get ready for that.
You won't have your dockapps launched by default, you won't have a toolbar, you won't have right click menu.
Encouraged enough ? (:
Ok, don't bother with it's look , you can change it later and it can look as good as fluxbox ( I hope ) .

What do you like in fluxbox ?
tabbed windows ? +checked

nice menu ?
+you can make your own, better (: so checked

dockapps ?
+I read about it , but I'm not sure how, but... checked (:

keybindings ?
+can be done in ion

toolbar to see the windows and time and switch to other workspaces ?
+well I don't know yet, I would like to have a toolbar with a clock, cpu %,  processes , up/down k/s , uptime , raam and swap and of course title of the song playing in xmms. Ok maybe one toolbal is not enough for me (: And I would like to be able to toggle it with Mod1+<key> , and it schould have transparent background. Is it too much ?



And the most IMPORTANT : ion2 is fast, ...well rather FAST !

Did I mention that it can be totally controlled from keyboard and it can tile windows automatically for you, no need to manually resize them ?
And of course you can use it like you use fluxbox ( I mean moving windows with mouse and resize them as you wish )

And I think that the true power of ion2 is in combining those two modes of window managing

Sorry for such a long post (:

Ok, now it is really the end.

PS. I know that this comparison is not objective
PS2. And now I am about to click 'Quick Post'... hmm ... funny

Posted by escay on May 23 2006,14:22
Wow! Respect - that´s a bunch of information to take a closer look at. I guess there are a lot of WM´s which can be controlled by keyboard only. well, what do we have now...

ratpoisen
evil-wm
fluxbox
ion2
jwm

these are just 5 of a heck of a lot of different wm´s...

i found something on sourceforge.net i will try later.
if you´d like to have a ncurses-based multimedia-mulittalent take a look at

< http://lienmp3.sourceforge.net/ >

(hope it´s ok to post links here)

well, i guess our goals divide a bit here. i´d like to have a keyboard driven dsl-distro which should only be altered as much as necessery. i´d say in that point: less is better.

so this means to me: use as much from the stuff which came along with dsl as possible. so what we´ve got is fluxbox or jwm. as i read before fluxbox should be the better choice because it has a keygrabber.
so here is how the config of fluxbox works:

< http://fluxbox.sourceforge.net/docs/en/newdoc.keybindings.php >

as you can see it is quite simple to make your own set of keybindings. i´ll go for a try tonight - and post it as an example, if you´d like to see what i´ve done.

as i posted before you can control xpdf via keyboard. an it is quite simple. the keybindings can be found in the helpfile of xpdf. if desired, i can make list an post it here

regards
escay

Posted by jot on May 23 2006,14:54
If you don't mind I will post my keys file first :)

!!! this file works in fluxbox-0.9.14.uci !!!
Some of them might not work
Instead of xmmsctrl you can use xmms -p ( for play ) check 'xmms --help'
Case doesn't matter in this file, ex.
NextTab = NEXTTAB = NexttaB <- all should work

Mod1 is Alt_L and Mod4 is Alt_R in my case

To check your Mod keys issue 'xmodmap' in terminal

Code Sample

Mod1 Tab :NextWindow 0
Mod1 Shift Tab :PrevWindow 0
Mod1 period :NextTab
Mod1 comma :PrevTab

Mod1 F5 :FullScreen
Mod1 F8 :ToggleDecor
Mod1 F9 :CommandDiialog
Mod1 F10 :Exec /opt/scripts/autowall.sh -c  # this script downloads random wallpaper from escalofrio.com and sets it as a background
Mod1 F11 :ReloadStyle
Mod1 F12 :Reconfigure

Mod1 b :ExecCommand xmmsctrl next
Mod1 z :ExecCommand xmmsctrl previous
Mod1 x :ExecCommand xmmsctrl play
Mod1 c :ExecCommand xmmsctrl pause
Mod1 v :ExecCommand xmmsctrl stop

Mod1 t :ExecCommand aterm
Mod1 Shift t :ExecCommand sudo aterm -name red

Mod1 r :ExecCommand grun

Mod4 1 :Workspace 1
Mod4 2 :Workspace 2
Mod4 3 :Workspace 3
Mod4 4 :Workspace 4

Mod4 k :KillWindow

Control Escape :RootMenu
Control Shift m :Maximize
Control Shift i :Iconify
Control Shift s :Shade


Posted by mikshaw on May 23 2006,18:02
Quote
can I add dsl compiled with '-march=pentium-mmx' ?

It seems as though this would limit its useability to people who have pentium-mmx, which is contrary to one of the basic principles of DSL (support for old hardware).  The mplayer extensions, for example, were built with a runtime processor check enabled.  This slows down its performance a bit, but it is essential for a public binary release.

For the last few days I've been tweaking the new release of wmii in preparation for a myDSL release.  It resembles Ion/Ratpoison visually, but has its own unique method of handling windows and workspaces.  It requires nothing that cannot be found in practically every distro, including DSL, and its size is about 80k compressed. Configuration is done entirely with shell scripts, and it focuses mainly on keyboard users. If you've ever used one of the earlier versions of wmi, you might find this one to be extremely simple to configure in comparison. The one thing i was a little disappointed with is that they removed the tabs, but that's something i can adjust to.

Some keybinds I find useful in Fluxbox.
Mod3&4 are left&right windows keys.
Code Sample
Mod3 Up :ExecCommand umix vol 5+
Mod3 Down :ExecCommand umix vol 5-
Mod3 F8 :ToggleDecor
Mod3 F12 :RootMenu
Mod4 F11 :ExecCommand mc-term -e /opt/mc/bin/mc -b
Mod4 Shift F11 :ExecCommand mc-term -T "root mc" -e su - -c /opt/mc/bin/mc
Mod4 C :ExecCommand cpanel
Mod4 I :ExecCommand sudo pon provider
Mod4 Shift I :ExecCommand sudo poff
Mod4 K :ExecCommand xkill
Mod4 R :ExecCommand grun


Specific to Fluxbox Devel
Code Sample
Mod3 F5 :FullScreen
Mod3 F9 :commanddialog
Mod3 F10 :SetResourceValueDialog
Mod3 F12 :Reconfigure


mc-term is an aterm symlink which has .Xdefaults settings to give it more mc-specific geometry.

Posted by escay on May 23 2006,18:40
XPDF Keybindings:

o = open file
r = reload
f = find text
n = <pgdn> = next page
p = <pgup> = previous page
<space> = scroll down
<backspace> = <delete> = scroll up
v = forward (history path)
b = backward (history path)
0/+/- = zoom zero / in / out
z/w = zoom page / page width
ctrl-L = redraw
q = quit
<home> / <end> = top / bottom of page
arrows = scroll

what more could we wish to have ;-)

regards
escay

Posted by escay on May 23 2006,18:55
hi all,

just played around a bit with the /home/dsl/.fluxbox/keys

i found out, that it is not possible to navigate throught the rootmenu via arrowkeys. Where can i adjust this? I haven´t found a topic on that in the documentation of fluxbox...

clou anybody?

regards
escay

Posted by mikshaw on May 23 2006,20:16
It's possible that this feature is not available in fluxbox stable, but i don't use it often enough to say for sure.  If this is the case, the only benefit that binding the root menu has might be to open it while the root window is obscured. I do know that it is available in fluxbox devel, but all of my commonly used apps are already bound to keys, so the menu gets very little use.
Posted by escay on May 24 2006,07:22
hi,

does this mean, that i have to get the developer-version to have that feature? otherwise i have to bind the applicationlaunch to keystrokes?

what makes me curious is the fact, that even jwm has the ability to navigate through the rootmenu via arrowkeys.

do i have to compile the developer-version if i deceide to use it? anyone did it before with tcc? are there any unresolved dependencies?

regards
escay

Posted by mikshaw on May 24 2006,15:14
The devel version is available from the myDSL repository.  0.9.11 is in "window mgr apps" and 0.9.14 is in "uci".  0.9.11 uses its own set of config files in $HOME/.fluxbox_0.9.11 and 0.9.14 uses the same files as DSL's fluxbox.

As I said before I don't know for sure if this is a feature not in fluxbox stable, and i haven't yet checked it, but I assume that you would be able to do it by default if it was available. There is no init resource for this feature that I'm aware of.

Posted by MDG on May 25 2006,02:55
Escay,

Found this page:  http://home.nyc.rr.com/computertaijutsu/fluxbox.html  

Down the page you will find fluxbox navigation keys patch info.

:)

MDG

EDIT:  I went back and checked the link to the patch - its not linked anymore.  Anyway, some more info on Fluxbox.  I had no luck configuring menu navigation other than getting root menu to come up.  Oh well.....

Posted by escay on May 27 2006,16:51
hi,

i switched to jwm - it is (at least for me) a lot easier to use, because you can nativly navigate the rootmenu with arrowkeys. i do not really need a keygrabber.

here are my settings for JWM so far:

ALT + F1 = rootmenu
ALT + F2 = window settings
ALT + TAB = next window
ALT + 1,2,3,4 = desktop 1,2,3,4
ALT + o = maximize window
ALT + F4 = Close window

---------------------------

for browsing the www with keyboard only i use w3m (could not find proper documentation on netrik)

---------------------------

i made /home/dsl/docs for a set of textfiles, which contains the keybindings for each application i need. there is one file for each application with keybindings. so i made one file for xpdf, one for xmms, one for jwm. then i can read these on an xterm on lets say desktop#2 while the application is running on desktop#1.
that is it - it works perfect for me. it was really made within minutes to edit .jwmrc in /home/dsl.

now i can finally get rid of the mouse ;-)

regards
escay

Posted by MDG on May 28 2006,01:40
Escay,

I downloaded the fluxbox-0.9.14.uci  - -good news - cursor key navigation works!!!

It should also work in the 0.9.11.dsl version (anything above 0.9.4 - it should work).

I had a Knoppix 4.0.2 disk and booted it to fluxbox and cursor kay navigation worked there.

So, the answer is yes - cursor key navigation works!   :)

MDG

Posted by escay on May 28 2006,08:41
okay, so we know there is more than one way to the same goal. ;-)

regards
escay

Posted by KerowynM on June 05 2006,15:09
I can't say enough good things about Ratpoison.  Screen was my first WM, back in the character cell terminal days, so Ratpoison puts me right at home.

I think its best feature is how close to Screen it is.  I can manuver in X like I do on the command line, no UI culture shock.

Powered by Ikonboard 3.1.2a
Ikonboard © 2001 Jarvis Entertainment Group, Inc.