9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-24 16:30 Russ Cox
  2002-01-24 17:34 ` Thomas Bushnell, BSG
  0 siblings, 1 reply; 61+ messages in thread
From: Russ Cox @ 2002-01-24 16:30 UTC (permalink / raw)
  To: 9fans

> I have way more keys that ASCII has codes for.  How exactly should
> that work?  X has a good way (even Lispms had a good way).

Arbitrarily configurable does not imply good.
It does usually imply more pain for users.

Russ



^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-23 18:24 Russ Cox
  2002-01-24  9:38 ` Thomas Bushnell, BSG
  0 siblings, 1 reply; 61+ messages in thread
From: Russ Cox @ 2002-01-23 18:24 UTC (permalink / raw)
  To: 9fans

> The ASCII standard fortunately solves this one, and you're both wrong.

I'll keep that in mind the next time
I port Plan 9 to a machine that runs
off paper tape.  Thanks.

> > the default should be that backspace is backspace.

Further, you completely missed the point.
dhog claimed that typing a backspace key should
send a backspace character, just like typing an
'a' sends an 'a' character; the ascii
semantics of backspace are not relevant
to that particular claim.

Russ


^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-22 18:28 David Gordon Hogan
  2002-01-23 10:04 ` Douglas A. Gwyn
                   ` (2 more replies)
  0 siblings, 3 replies; 61+ messages in thread
From: David Gordon Hogan @ 2002-01-22 18:28 UTC (permalink / raw)
  To: 9fans

> On Unix systems since around 7th Edition, one can bind any input
> character to the INTR function, and the DEL character was the
> default (somewhat confused by Berkeleyites who tried to change
> to DEC OS conventions: ^C -> INTR, DEL -> char-erase, etc.).
> ^? is just a way of representing the ASCII DEL character using
> printable notation; the actual character is still DEL (0x7F).

What _really_ annoys me is when I hit the BACKSPACE key on
the keyboard, while running some terminal emulator, and it
sends DELETE.  This has a tendency to make me feel homicidal.

Actually, xterm is doing it to me right now.  xev receives the
keystroke correctly as "keycode 64 (keysym 0xff08, BackSpace)",
then xterm says, duh, I think you want delete.  Grrrr!

Of course, xterm is configurable through some resource, but
the default should be that backspace is backspace.



^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-22  6:44 okamoto
  0 siblings, 0 replies; 61+ messages in thread
From: okamoto @ 2002-01-22  6:44 UTC (permalink / raw)
  To: 9fans

>I follow this list and browse the documentation in order
>to gain enlightenment and in the hope of gleaning useful ideas for my daily
>work.

By such an attitude, I believe you won't see the problem (if any) the designers
may be facing now, which must be the hottest topic, but then, you'll see only
the past of them.  :-)

I believe any operating system will be tested and trained most effectively in the
real work area, that is any application software.   Therefore, if we try to use Plan 9
for our own  work, we and the community will face an interesting new problem
to be solved, which will promote Plan 9 further.
Don't you think so?
Or you want Plan 9 to be there as it is without more developement?

Kenji



^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-22  2:54 dmr
  2002-01-22 11:13 ` Boyd Roberts
  0 siblings, 1 reply; 61+ messages in thread
From: dmr @ 2002-01-22  2:54 UTC (permalink / raw)
  To: 9fans

Murdie observed,

 > If you put the command history editor in the shell, then you can only
 > use it in the shell; if you use another shell from time to time, then
 > you have to learn to use that shell's (different) history mechanism.
 > It's far better to use a single, general, command history mechanism
 > provided by your terminal emulator or Acme (which is so more than a
 > terminal emulator). There is a slight loss from the shell and the
 > command history editor being separated, I know.

True enough; that said, I retain considerable fondness for
the history mechanism of later research Unix systems. It
was adapted from earlier U of Toronto versions, I believe,
revived by Rob, and later put away again.

The shell appended each executed command (not in a script)
to a $HISTORY file.

The '=' command (not builtin) searched backwards in the
file for a last matching pattern, and reissued it.
E.g.

	=

redoes the previous command.

	= ls

finds the last shell command beginning with ls.
Text substitution could be accomplished with further
arguments.

The == variant allowed interactive editing.

	Dennis


^ permalink raw reply	[flat|nested] 61+ messages in thread
[parent not found: <20020121170104.2FABD19A05@mail.cse.psu.edu>]
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-21 22:34 erik quanstrom
  0 siblings, 0 replies; 61+ messages in thread
From: erik quanstrom @ 2002-01-21 22:34 UTC (permalink / raw)
  To: 9fans

along this line, it would be especially cool if the database
engine could export into the filesystem pointers to working
sets, closures, etc. this would allow one to write the
functional equivalent of a stored procedure without any
specific language support in the dtaabase. the place i
always thought this idea fell apart was the other reason
that stored procedures were invented -- so stuff could run
inside the server without the data or the command making a
round trip between client and server. believe me, when you're
walking a million records, it makes a big difference.

the problem is that unless you're really after performance
with insanely-large datasets, a sql-based database just isn't
worth the pain of dealing with that which does not play nicely
with others.


^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-21 22:15 anothy
  2002-01-22  9:53 ` Douglas A. Gwyn
  0 siblings, 1 reply; 61+ messages in thread
From: anothy @ 2002-01-21 22:15 UTC (permalink / raw)
  To: 9fans

// ...i cant seem to be able to change it...

in my experience (always?), aux/vga is unable to change the
resolution of a display once it's first been brought up. to get
your display to boot in a different resolution, change the
definition of vgasize in plan9.ini (which generally lives in a
FAT partition or on a floppy; more on that in a minute).

Acessibility:

Plan 9 does not include a web browser or other html
interpreter; look to Vita Nuova's freely-available Inferno
distribution, which includes Charon.

man dossrv(4) for a description of the a:, c:, and 9fat:
scripts which will facilitate, respectivly, access to a floppy
drive, your primary FAT partition, and your plan9 FAT
partition, where configuration information like plan9.ini
is commonly stored.

for example, to edit my plan9.ini, i do this:
	9fat:
	acme -c1 /n/9fat/plan9.ini
	unmount /n/9fat

Shell:

to find a file named "myfile" in /usr/anothy, i do:
	`{du -a /usr/anothy | awk '{print $2}'} | grep myfile
this sort of construction works well for all manner of
tools (although i have on occasion missed find's easy
methods of finding files based on greater/less-than
comparisons). also try
	grep some_string `{du -a /usr/anothy | awk '{print $2}'}
for finding "some_string" in a set of files.

rc has no command completion or history. the design
rational is essentially that this functionality properly
belongs in the windowing system, not the shell, so that
the solution becomes general: it can be applied to every
program that looks for input. while not having history
(and to a lesser extent command completion) took me a
bit of getting used to comming from unix, i do not miss
it, and now strongly prefer the Plan 9 way of giving me
such things.

Keys:

plan 9 terminals are much more mouse-driven than
unix terminals. the current UI basically mandates that
you become comfortable using the mouse alot. the end
result is a much more efficient system - the mouse is
much better at many tasks than moving things around
with a keyboard, even when it doesn't feel like it (there
was a good report on this linked here earlier, but i failed
to make a note of it; anyone?). this is not always true
(folks with various disabilities or motor imparment
being the primary counter-example), but is true the
overwhelming majority of the time, and the system is
designed with that in mind.

the interupt functionality could be moved off del, and
onto something else, like the pause/break key. but
keyboards vary widely, and a replacement would have
to be well-chosen. on most smaller keyboards (like on
laptops), del is a key, while pause/break is often a
pseudo-key.

also, as noted earlier, it's not at all clear what the
"conventional" functionality of del is. on most of my
Unix systems, it produces ^? - far less useful than the
interupt function.

General:

i'm not sure what you're asking WRT plan9 default
boot being "safe" for other OSes. the bootloader plan
9 will install is not a multi-booter - it only finds the
first partition marked "active" (or can there only ever
be one?) and runs that. it will not, however, touch
any data living on other partitions.

there has been wide speculation on why Plan 9 has
not gained greater support than it has. ideas on
this topic vary widely. my own theory is something
along the lines of plan 9 is just too much: it requires
people to understand (or be willing to learn) many
new concepts all at once to really "get it". others
believe it has something to do with licensing terms,
or the attitude of people on 9fans and comp.os.plan9.
there's also the old chicken-and-egg problem: users
aren't interested because of the comparitave lack of
apps, and app developers arn't interested because of
the lack of users. but that's all just speculation.
ア



^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-21 20:39 Russ Cox
  2002-01-21 21:16 ` Matt H
                   ` (3 more replies)
  0 siblings, 4 replies; 61+ messages in thread
From: Russ Cox @ 2002-01-21 20:39 UTC (permalink / raw)
  To: 9fans

I think it might be neat to build a small number
of little programs that parse and reemit sql queries.
Thus you could use normal shell pipelines to do database
queries but since you're passing _queries_ and not _output_
through the pipes, you still reap the benefits of
query optimization.  Just like the old /acme/edit scripts.

I don't remember enough of the SQL syntax to
reparse your query into an exact shell pipeline, but
the idea is you could do something like

	sql/grep 'Car%' pages.title | sql/join section pages.idx |
	sql/p

Sql/p would behave like the acme p, actually executing
the query to produce output.

Of course, if there isn't much data, moving it into
the file system might be an even better solution.

Russ


^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-21 20:34 presotto
  0 siblings, 0 replies; 61+ messages in thread
From: presotto @ 2002-01-21 20:34 UTC (permalink / raw)
  To: 9fans

To me, dynamic libraries are like clowns.  In both
cases, I was fightened by one at an impressionable
age and have loathed them ever since (Bozo tripped
on his microphone and fell on be when I was 3, Multics
got me at college).

It's a hard fear to overcome.  Putting something into
a dynamic library instead of into a server or the kernel
is oven more efficient.  However, by its very nature,
the interface is less constrained.  As a result, the
visibility of changes and the amount of ratcheting due
to new applications dragging in new, and often incompatible,
versions of the libraries is higher than changes in
the other 2 places.  It's too tempting to add a few
more parameters here and there and to make internal
details externally visible.

I can't really say that they're evil, only that I'ld
prefer not to use them.


^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-21 20:21 Russ Cox
  2002-01-21 20:44 ` Mike Haertel
  0 siblings, 1 reply; 61+ messages in thread
From: Russ Cox @ 2002-01-21 20:21 UTC (permalink / raw)
  To: 9fans

First of all, I was kidding about readline.

> * If dynamic linked libraries, you have taken the first step
>   on the slippery slope to the land of gratuitious complexity,
>   where even a simple "hello, world" C program can execute
>   100000 instructions before it actually prints anything.
>   (No, I'm not kidding.)  For some reason, people seem to think
>   adding features in dynamic libraries is "free".

If I'm running rio on Plan 9, draw a new window, and run
hello world, how many instructions execute before I see
"hello world" on my screen?  Lots and lots, just not many
in the hello world process.  The kernel has to redirect
the write into rio, rio does some lookups to figure out
which window gets the output, libdraw has to walk around
in the font caches, possibly loading the missing letters,
(which is more kernel calls, context switches to kfs,
and execution of the various code in devsd), finally
preparing a "draw string" request for /dev/draw.  Then the
kernel is back.  For simplicity let's assume that the window
is in front of all the others, so memlayer isn't involved.  Now we
clear the background, either with memset or by making
calls to an accelerated vga routine with some busy waits
(still faster than memset, though).  Then we use
per-character calls to memimagedraw to blacken the appropriate
pixels.  And finally we see "hello world" (assuming that we
have direct access to video memory; if not, we've been drawing
in a soft screen and still need to flush the changed portion
out to video memory).

You're still right, of course; dynamic libraries are a
slippery slope for lots of reasons.  My point is that the
overhead of dynamic libraries is not necessarily worse than
the overhead of other system services like the kernel and
the various Plan 9 file servers, just in a different place.
It takes far more than 100,000 instructions to get "hello world"
onto my screen either way.  How you count depends on what
you care to include.

Russ


^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-21 19:42 David Gordon Hogan
  2002-01-21 20:28 ` Matt H
  0 siblings, 1 reply; 61+ messages in thread
From: David Gordon Hogan @ 2002-01-21 19:42 UTC (permalink / raw)
  To: 9fans

> > If you put the command history editor in the shell, then you can only
> > use it in the shell; if you use another shell from time to time, then
>
> Not if you put it in a library and link the library
> against every single program that could ever possibly
> want to read input!

Standard practice in the GNU world.  But is it _good_ practice?

I had a lot of ``fun'' getting gdb to run on Plan 9 because of this...



^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-21 18:48 Russ Cox
  2002-01-21 19:58 ` Mike Haertel
  0 siblings, 1 reply; 61+ messages in thread
From: Russ Cox @ 2002-01-21 18:48 UTC (permalink / raw)
  To: 9fans

> If you put the command history editor in the shell, then you can only
> use it in the shell; if you use another shell from time to time, then

Not if you put it in a library and link the library
against every single program that could ever possibly
want to read input!



^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re[2]: [9fans] Getting started in Plan9 - help
@ 2002-01-21 10:01 steve.simon
  2002-01-21 10:28 ` Boyd Roberts
  0 siblings, 1 reply; 61+ messages in thread
From: steve.simon @ 2002-01-21 10:01 UTC (permalink / raw)
  To: 9fans

Any pointers, references, FTP site for "rk" ?

-Steve


____________________Reply Separator____________________
Subject:    Re: [9fans] Getting started in Plan9 - help
Author: 9fans@cse.psu.edu
Date:       20/01/02 22:02

| yes, well, you see plan9 is more mouse driven. eventually you'll
| probably end up with Acme as much your "shell" as anything, and you'll
| find auto complete is unneccessary.

I think that input prediction, if done well, is a beautiful feature, and
one that would fit very well with acme, or maybe as a kind of plumbing. I
used to use a unix thing called "rk"; a markov chain style thing that
continuously prompted you with a line or two of predicted input. You
used the arrow keys or tab or ctrl-m to accept the next char/word/line
of the prediction. It was uncannily good. A lot of command line stuff is
very repetative, and anyone who's seen Rob's fake usenet postings can
see how good this kind of thing is for email. One of these days I'll
get around to hacking it into acme, maybe.

| > - Unless is it part of a grander plan (no pun intended), can we move
| > the process interrupt key from Del to something else and have the
| > conventional functionality of del back ?

Especially since PC keyboards have an actual "break" key to use.




----------------------------------------------------------------------
The contents of this communication are confidential to the normal user of
the email address to which it was sent.  If you have received this email
in error, any use, dissemination, forwarding, printing or copying of this
email is strictly prohibited.  If this is the case, please notify the
sender and delete this message.
----------------------------------------------------------------------



^ permalink raw reply	[flat|nested] 61+ messages in thread
* Re: [9fans] Getting started in Plan9 - help
@ 2002-01-20 21:15 rob pike
  0 siblings, 0 replies; 61+ messages in thread
From: rob pike @ 2002-01-20 21:15 UTC (permalink / raw)
  To: 9fans

> - Is there a place where the uses of directories the std file system
> heirarchy is discussed, esp /n ?

namespace(4).  i admit that the distinction between /n and /mnt is
blurred. the original intent was /n was remote machines, while /mnt
was local services.  a: etc. should probably have been in /mnt.
ditto the blurring for /lib and /sys/lib.  /lib was supposed to be
a library: dictionaries, etc, while /sys/lib was supposed to be supporting
stuff like troff macros.   but we have what we have. see namespace(4).

-rob



^ permalink raw reply	[flat|nested] 61+ messages in thread
* [9fans] Getting started in Plan9 - help
@ 2002-01-20 20:02 Roshan James
  2002-01-20 21:01 ` Matt H
                   ` (3 more replies)
  0 siblings, 4 replies; 61+ messages in thread
From: Roshan James @ 2002-01-20 20:02 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 3665 bytes --]

Getting started in Plan9
-------------------------    
Its been a little over a week since i got my Plan9 working and 
I still seem to be in tourist mode.Lots of questions and 
a few suggestions:
(I promise I have tried to answer these for myself before
before I am ask them)

It would be great if we have a school boy style step-by-step 
getting-off-the-ground tour of plan9, maybe somewhere in the
wiki. I would be glad to do this, if i knew enough.

Graphics
-----------
- I am working with an S3 Trio 64v2 card, the install floppy
gave me 800*600 res,but after installation i am on 640*480 and
i cant seem to be able to change it
aux/vga -l 800x600x8
gives me
'Warning (BUG) : redefinition of aperture does not change 
s3screen segment.'
in a black background in the sentre of the screen and an error
message that reads 
'aux/vga: vgactlw: <size 800x600x8 m8>: vga already configured'
in the console window. it is a low end card but I believe that 
I did have a higher res through the boot disk so it should be 
possible here too. how can i change to a higher res ?

- If plan9 is booted through xosl in 640*480 res,plan9 graphics
display ends up corrupt. the bootloader does switch to text mode
before the OS is booted. anyother resolution or a text mode boot
loader does not seem to have a problem. 
The right quarter of the screen (approx) seems to be a duplicate
of the band of the screen display between in the left part. (bad
description i know). Anyway to fix this ?


Acessibility
-------------
- How can I read a couple of html docs in Plan9 ?
- Is there a place where the uses of directories the std file system
heirarchy is discussed, esp /n ? 
- /n/c: exists, how can i access the extended partitions ?
- How can i access the floppy a: ? /n/a: exists but shows no files.
- How can i access the extended windows partitions ? 
- Problem with accessing C: File operations to /n/c: causes a problem
'%mkdir /n/c:/testdir'
'mkdir: cant create /n/c:/testdir: write to hungup channel'
also a black background error message comes (is there a generic name
for these messages ?)
'dossrv 45: suicide: sys: trap fault read addr=0xb pc=0x00004757'
help ?

Shell
------ 
- How can I find/search for a file in Plan9 ? the usual find /|grep xxx 
does not exist here, what is the equivalent ?
- Why doesnt/Can rc have autocomplete and filename completion as in 
bash ? This has become so neccessary.

Keys
-----
- Why cant the left/right arrow keys+home+end keys move the cursor,
it is really difficult to edit something by placing the cursor there
with the mouse. 
- Unless is it part of a grander plan (no pun intended), can we move 
the process interrupt key from Del to something else and have the 
conventional functionality of del back ?

General
-------
- Is the option of plan9 default boot in bootsetup (during install)
safe for other OSes that exist on the system ?
- Why arent there more applications and more developers interested
in developing for plan9 ? 

Russ, I think it would kill you to keep answering all the newbie 
questions. Russ, Imel, Thanks for all the help you have been. I 
think the Plan9 faq needs updation with some of the more generic 
questions here. This is a lesson that could learned from the Win32's, 
if you want the OS to grow, you have to get people comfortable with 
it very fast. I think we can make that happen.

Rosh.

-------------------------------------------------------------------------------------
One Ring to rule them all, One Ring to find them,
One Ring to bring them all and in the darkness bind them.
(Lord of the Rings)

[-- Attachment #2: Type: text/html, Size: 4834 bytes --]

^ permalink raw reply	[flat|nested] 61+ messages in thread

end of thread, other threads:[~2002-01-29  9:31 UTC | newest]

Thread overview: 61+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-01-24 16:30 [9fans] Getting started in Plan9 - help Russ Cox
2002-01-24 17:34 ` Thomas Bushnell, BSG
  -- strict thread matches above, loose matches on Subject: below --
2002-01-23 18:24 Russ Cox
2002-01-24  9:38 ` Thomas Bushnell, BSG
2002-01-22 18:28 David Gordon Hogan
2002-01-23 10:04 ` Douglas A. Gwyn
2002-01-23 18:01   ` Thomas Bushnell, BSG
2002-01-23 18:19     ` Ronald G Minnich
2002-01-23 18:21       ` Scott Schwartz
2002-01-24  9:38       ` Thomas Bushnell, BSG
2002-01-23 18:46     ` Boyd Roberts
2002-01-24  9:38       ` Thomas Bushnell, BSG
2002-01-24 13:01         ` David Arnold
2002-01-24 17:35           ` Thomas Bushnell, BSG
2002-01-24 21:40             ` Dan Cross
2002-01-25 10:00               ` Thomas Bushnell, BSG
2002-01-25 22:56                 ` Dan Cross
2002-01-28 18:26                   ` Boyd Roberts
2002-01-29  9:31                     ` Douglas A. Gwyn
2002-01-24 16:05         ` Boyd Roberts
2002-01-24 17:34           ` Thomas Bushnell, BSG
2002-01-25 10:00     ` Douglas A. Gwyn
2002-01-23 10:48 ` Boyd Roberts
2002-01-23 18:01 ` Thomas Bushnell, BSG
2002-01-22  6:44 okamoto
2002-01-22  2:54 dmr
2002-01-22 11:13 ` Boyd Roberts
2002-01-22 17:39   ` Douglas A. Gwyn
     [not found] <20020121170104.2FABD19A05@mail.cse.psu.edu>
2002-01-21 23:30 ` Andrew Simmons
2002-01-21 22:34 erik quanstrom
2002-01-21 22:15 anothy
2002-01-22  9:53 ` Douglas A. Gwyn
2002-01-21 20:39 Russ Cox
2002-01-21 21:16 ` Matt H
2002-01-21 23:39 ` Quinn Dunkan
2002-01-22 15:36 ` cej
2002-01-22 15:42   ` Matt H
2002-01-22 23:02 ` skipt
2002-01-23 10:05   ` Douglas A. Gwyn
2002-01-23 22:28     ` Lyndon Nerenberg
2002-01-21 20:34 presotto
2002-01-21 20:21 Russ Cox
2002-01-21 20:44 ` Mike Haertel
2002-01-21 19:42 David Gordon Hogan
2002-01-21 20:28 ` Matt H
2002-01-25 10:30   ` Ralph Corderoy
2002-01-21 18:48 Russ Cox
2002-01-21 19:58 ` Mike Haertel
2002-01-21 20:05   ` James A. Robinson
2002-01-21 10:01 Re[2]: " steve.simon
2002-01-21 10:28 ` Boyd Roberts
2002-01-20 21:15 rob pike
2002-01-20 20:02 Roshan James
2002-01-20 21:01 ` Matt H
2002-01-20 22:02   ` Scott Schwartz
2002-01-22  9:54     ` ozan s yigit
2002-01-23 10:05       ` Bakul Shah
2002-01-21 10:22   ` Boyd Roberts
2002-01-21 10:40     ` John Murdie
2002-01-20 21:03 ` William S.
2002-01-20 21:34 ` William Josephson
2002-01-21  6:53 ` cej

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).