Hello everybody,
i am a newbie curious about Squeak, so i downloaded v3.1beta and installed it on my PC (i run Linux Mandrake). Everything went smoothly, but now i am on the Squeak interface, i have all the windows and all, but my mouse and the keyboead seem screwed up.
That means, that for ex. when i left-click on the background i should get this "World" menu, right? It just selects the whole Window with the little colored dots around. The right button acts as the left one.It is the middle button which lets me select commands. So i thought it was just the buttons that were mismatched. But the middle button on the background gives me only a "personal" menu. I tried too "Ctrl+left-click" it gave me yet another menu "World", but not the main one that was described.
The keyboard also does not respond. Also when i am in a text box (for exemple a search or edit box), the keyboard does not give anything, but seems to react to commands, as if i were pressing alt+letter or ctrl+letter. For example, when i am in the main window, typing 'm' directly gives the menu "add a new morph".
Do you have an idea of what's going on?
Thxs
Henri,
On 31 May 2002, Henri Salha wrote:
That means, that for ex. when i left-click on the background i should get this "World" menu, right? It just selects the whole Window with the little colored dots around. The right button acts as the left one.
First thing to try : run `xev' and click buttons in the window. Make sure the buttons are being reported as "button 1", "button 2" and "button 3" (from left to right). Then type `m's at the window and make sure they are reported as "m" with "state 0x0". If either of these aren't the case then you've a problem with your keyboard mapping.
Is there a .xmodmaprc in your home directory ? (If so, what does it change ?)
The keyboard also does not respond. Also when i am in a text box (for exemple a search or edit box), the keyboard does not give anything, but seems to react to commands, as if i were pressing alt+letter or ctrl+letter. For example, when i am in the main window, typing 'm' directly gives the menu "add a new morph".
Do you have an idea of what's going on?
Sounds like keyboard "modifier" is getting stuck permanently "on". (Maybe your "numlock" is engaged ?) Something you could try (this is a rather draconian, but what the hey) is :
xmodmap -e 'clear mod3' xmodmap -e 'clear mod4' xmodmap -e 'clear mod5'
which will switch off numlock (and similar keys).
If this doesn't help then contact me directly and we'll do some debugging.
Ian
Henri,
I had exactly the same experience also with Mandrake. After dowloading various VM's I've finally got Squeak running perfectly. Unfortunately I'm in NT at the moment but when I get back to Linux I'll check which VM finally worked and, more importantly, where I downloaded it from. I'll post another message then to let you know.
There is light at the end of the tunnel :-)
Chris
30-May-02 11:12:54 PM, Henri Salha ricky.linux@wanadoo.fr wrote:
Hello everybody,
i am a newbie curious about Squeak, so i downloaded v3.1beta and installed it on my PC (i run Linux Mandrake). Everything went smoothly, but now i am on the Squeak interface, i have all the windows and all, but my mouse and the keyboead seem screwed up.
That means, that for ex. when i left-click on the background i should get this "World" menu, right? It just selects the whole Window with the little colored dots around. The right button acts as the left one.It is the middle button which lets me select commands. So i thought it was just the buttons that were mismatched. But the middle button on the background gives me only a "personal" menu. I tried too "Ctrl+left-click" it gave me yet another menu "World", but not the main one that was described.
The keyboard also does not respond. Also when i am in a text box (for exemple a search or edit box), the keyboard does not give anything, but seems to react to commands, as if i were pressing alt+letter or ctrl+letter. For example, when i am in the main window, typing 'm' directly gives the menu "add a new morph".
Do you have an idea of what's going on?
Thxs
Hello,
I had similar problems at the beginning of the month and posted this message on May 10th. http://lists.squeakfoundation.org/pipermail/squeak-dev/2002-May/014083.html
I really don't see how it could be a keyboard mapping issue on my end. I had/have an older 3.1 vm that was/is working properly. It was when I updated to the latest greatest that it all broke. It all worked fine when I went back. I would think if I had keyboard mapping issues all vm's would work the same. This is on Debian Sid.
I've been hoping to get a chance to give VMMaker a go soon. Probably after Ian has a chance to finish what he's doing to update the SF sources.
Hopefully the issue will get resolved. I don't know what it is or could be.
Jimmie Houchin
Chris Farmer wrote:
Henri,
I had exactly the same experience also with Mandrake. After dowloading various VM's I've finally got Squeak running perfectly. Unfortunately I'm in NT at the moment but when I get back to Linux I'll check which VM finally worked and, more importantly, where I downloaded it from. I'll post another message then to let you know.
There is light at the end of the tunnel :-)
Chris
30-May-02 11:12:54 PM, Henri Salha ricky.linux@wanadoo.fr wrote:
[snip message]
Hi everybody,
I would like to thank you all for your many replies, help and compassion. I re-installed a new version I found, called 3.1beta4478 and this one works perfectly. So i am finally exploring squeak now!
Thxs again to the community,
Henri
On Fri, 2002-05-31 at 17:52, Jimmie Houchin wrote:
Hello,
I had similar problems at the beginning of the month and posted this message on May 10th. http://lists.squeakfoundation.org/pipermail/squeak-dev/2002-May/014083.html
I really don't see how it could be a keyboard mapping issue on my end. I had/have an older 3.1 vm that was/is working properly. It was when I updated to the latest greatest that it all broke. It all worked fine when I went back. I would think if I had keyboard mapping issues all vm's would work the same. This is on Debian Sid.
I've been hoping to get a chance to give VMMaker a go soon. Probably after Ian has a chance to finish what he's doing to update the SF sources.
Hopefully the issue will get resolved. I don't know what it is or could be.
Jimmie Houchin
Chris Farmer wrote:
Henri,
I had exactly the same experience also with Mandrake. After dowloading various VM's I've finally got Squeak running perfectly. Unfortunately I'm in NT at the moment but when I get back to Linux I'll check which VM finally worked and, more importantly, where I downloaded it from. I'll post another message then to let you know.
There is light at the end of the tunnel :-)
Chris
30-May-02 11:12:54 PM, Henri Salha ricky.linux@wanadoo.fr wrote:
[snip message]
Hi Henri,
I think you have one of the new VMs installed that are supposed to work with Linux and MacOS X. They use a rather weird modifier key mapping. Try one or more of the following: 1) Start the vm with a --help command line parameter and find out what switches you may use to obtain a more sensible behavior (like --swabbtn --swapmod) 2) Try to find a less recent vm (like 3.1a-4146)
Henri Salha wrote:
Hello everybody,
i am a newbie curious about Squeak, so i downloaded v3.1beta and installed it on my PC (i run Linux Mandrake). Everything went smoothly, but now i am on the Squeak interface, i have all the windows and all, but my mouse and the keyboead seem screwed up.
That means, that for ex. when i left-click on the background i should get this "World" menu, right? It just selects the whole Window with the little colored dots around. The right button acts as the left one.It is the middle button which lets me select commands. So i thought it was just the buttons that were mismatched. But the middle button on the background gives me only a "personal" menu. I tried too "Ctrl+left-click" it gave me yet another menu "World", but not the main one that was described.
The keyboard also does not respond. Also when i am in a text box (for exemple a search or edit box), the keyboard does not give anything, but seems to react to commands, as if i were pressing alt+letter or ctrl+letter. For example, when i am in the main window, typing 'm' directly gives the menu "add a new morph".
Do you have an idea of what's going on?
Thxs
Henri,
Sorry for the delay but I've now tested Squeak in Mandrake and these are the results.
I'm running Mandrake 8.2 on a Pentium Pro 200 with 256MB memory. I installed Mandrake straight from CD with no modifications or Kernel tweaking.
The Squeak VM I'm using is from here:
ftp://st.cs.uiuc.edu/Smalltalk/Squeak/3.1beta/linux-unix/Squeak3.1-x86linux-VM.tar.gz
I put it in /usr/share/Squeak
Doing squeak -version produces:
i686-pc-linux-gnu 3.0 #9 XShm Thu May 17 10:02:25 EDT 2001 gcc egcs-2.91.66 Linux citrus.advantive.com 2.2.16-3 #1 Mon Jun 19 18:49:25 EDT 2000 i686 unknown default plugin location: /usr/local/lib/squeak/3.0/*.so
Using various images gives the following results:
The keyboard [UK variety] is fine with all of these images. The mouse [3 button] is as follows:
Using 3.2gamma 4857 + Zurgle:
Left: Desktop Menu Middle: Personal Menu Right: Halo
Using 3.2gamma 4881 + Zurgle:
As above
Using 3.3alpha - 4857:
Left: Find Window Middle: Find Window Right: Halo
Ctrl-Left: World Menu Ctrl-Middle: World Menu Ctrl-Right: World Menu
Right-Ctrl + Middle Button: Personal Menu [That is the Ctrl key on the right hand side of the keyboard]
Using 3.3alpha - 4881
Mouse Buttons as per 3.2gamma 4857 + Zurgle
I hope this helps. I'm certainly no Squeak expert but if there's anything else I can check for you then let me know.
Best regards
Chris
30-May-02 11:12:54 PM, Henri Salha ricky.linux@wanadoo.fr wrote:
Hello everybody,
i am a newbie curious about Squeak, so i downloaded v3.1beta and installed it on my PC (i run Linux Mandrake). Everything went smoothly, but now i am on the Squeak interface, i have all the windows and all, but my mouse and the keyboead seem screwed up.
That means, that for ex. when i left-click on the background i should get this "World" menu, right? It just selects the whole Window with the little colored dots around. The right button acts as the left one.It is the middle button which lets me select commands. So i thought it was just the buttons that were mismatched. But the middle button on the background gives me only a "personal" menu. I tried too "Ctrl+left-click" it gave me yet another menu "World", but not the main one that was described.
The keyboard also does not respond. Also when i am in a text box (for exemple a search or edit box), the keyboard does not give anything, but seems to react to commands, as if i were pressing alt+letter or ctrl+letter. For example, when i am in the main window, typing 'm' directly gives the menu "add a new morph".
Do you have an idea of what's going on?
Thxs
Folks,
Chris Farmer sent me lots of xev output from his Mandrake system. After decoding all the weirdo stuff that was being reported I think I've solved the problem. BUT, not having a Mandrake to test it on I'd really appreciate some help...
If you've had keyboard/pointer problems in recent 3.1 VMs then please would you take 2 minutes to download the following binary:
http://www-sor.inria.fr/~piumarta/squeak/unix/3.1current/bld/squeak
and let me know if it solves your mapping problems.
(Details: the code in the above VM is "immune" to junk in the "state" member in X key/button events [which for some reason was completely absurd in Mandrake] and will instead track the modifier state using the keysyms reported in press/release events.)
If this 3.1 VM works for you then I'll pull the changes forward into 3.[32]-devel.
Thanks!
Ian
Just to be absolutely sure about things, this is what I think the keyboard/pointer mappings should be (if anybody disagrees with the way the following mappings are set up, then that can be a whole other debate):
Alt and Meta both map to Command.
Pointer mappings:
Button1 (red) -> select (world menu on background) Button2 (yellow) -> window menu (personal menu on background) Button3 (blue) -> morph halos
Button1 + Shift -> extend selection (find window menu on background) Button2 + Shift -> window "more" menu (find window on background) Button3 + Shift -> morph halos
Button1 + Ctrl -> window menu (personal menu on b/g) = acts like Button2 Button2 + Ctrl -> morph menu Button3 + Ctrl -> morph menu
Button1 + Command -> morph halos = acts like Button3 Button2 + Command -> window menu (personal menu on b/g) Button3 + Command -> morph halos
Button1 + Shift + Ctrl -> (topmost) morph menu Button2 + Shift + Ctrl -> (topmost) morph menu Button3 + Shift + Ctrl -> (bottommost) morph menu
Button1 + Shift + Command -> extend selection (find window on b/g) Button2 + Shift + Command -> window "more" menu (find window on b/g) Button3 + Shift + Command -> morph halos
Button1 + Ctrl + Command -> morph menu Button2 + Ctrl + Command -> morph menu Button3 + Ctrl + Command -> morph menu
Button1 + Shift + Ctrl + Command -> (topmost) morph menu Button2 + Shift + Ctrl + Command -> (topmost) morph menu Button3 + Shift + Ctrl + Command -> (topmost) morph menu
Keyboard mappings (with reference to "World Menu -> help... -> command-key help"):
key -> lowercasekey key + Shift -> uppercase key key + Ctrl -> uppercase command key key + Command -> lowercase command key key + Shift + Ctrl -> uppercase command key key + Shift + Command -> uppercase command key key + Ctrl + Command -> uppercase command key key + Shift + Ctrl + Command -> uppercase command key
(kilometrage with the others [delimiters, styles, kerning, etc.] will vary according to whether particular symbols are shifted or unshifted on a given keyboard.)
Ian
On Wednesday 05 June 2002 11:53 am, Ian Piumarta wrote:
Just to be absolutely sure about things, this is what I think the keyboard/pointer mappings should be (if anybody disagrees with the way the following mappings are set up, then that can be a whole other debate):
Alt and Meta both map to Command.
OK... whole nother debate:
The usual Mac command for (say) copy is Cmd-C The usual Windows (and many Linux) command for copy is Ctrl-C However, mapping the Alt to Cmd causes us to need Alt-C instead. So Squeak becomes the only app (out of many) that uses Alt-C rather than Ctrl-C to copy.
I would suggest the following mapping between Mac and PC modifier keys, for consistency with the rest of the apps in the given environments:
Mac PC ---------------- Cmd Ctrl Option Alt
On Wed, 05 Jun 2002, Ned Konz wrote:
//snipped//
I would suggest the following mapping between Mac and PC modifier keys, for consistency with the rest of the apps in the given environments:
Mac PC
Cmd Ctrl Option Alt
I'd be inclined to agree: I'm used to it now, but this could be (and I remember it as) a minir stumbling block for newbies.
Cheers
John
On Wed, 5 Jun 2002, John Hinsley wrote:
On Wed, 05 Jun 2002, Ned Konz wrote:
Mac PC
Cmd Ctrl Option Alt
I'd be inclined to agree: I'm used to it now, but this could be (and I remember it as) a minir stumbling block for newbies.
RTFM ? ;)
I'm not convinced that it's a good idea to hard-wire this into the VM. (Squeak would work differently on Unix compared to the other platforms [unless Win32 Squeak has changed the mapping too?].) Also, Don't forget that with the Cmd-[xcv] -> Ctrl-[xvc] change you would also get everything that's explained in the "command key help" window permuted around.
On the other hand flexibility is always a good idea.
If you want to know what swapping ctrl/command would feel like in practice then grab this quick hack:
http://www-sor.inria.fr/~piumarta/squeak/unix/3.1current/bld/squeak-m
(it's a 3.1 VM for 386) and start it up with:
squeak-m -modifiers 0213 [whatever.image]
and let us all know if you *really* like it (including the all the programming keyword shortcuts, indentation, delimiter insertion/removal, word/line cursor movement, etc...).
Ian
PS: FWIW: `-modifiers ABCD' where A corresponds to pressing shift, B to control, C to alt and D to meta. The digits are 0 = report shift to Squeak, 1 = report ctrl, 2 = command, 3 = option. (The deault is `-modifiers 0122', which maps alt and meta to command leaving shift and control alone.)
PP: I'm not suggesting that this is a good solution. The above is purely for entertainment purposes.
On Wednesday 05 June 2002 01:56 pm, Ian Piumarta wrote:
If you want to know what swapping ctrl/command would feel like in practice then grab this quick hack:
http://www-sor.inria.fr/~piumarta/squeak/unix/3.1current/bld/squeak -m
(it's a 3.1 VM for 386) and start it up with:
squeak-m -modifiers 0213 [whatever.image]
and let us all know if you *really* like it (including the all the programming keyword shortcuts, indentation, delimiter insertion/removal, word/line cursor movement, etc...).
Well, I'm not sure that works right. For instance, a plain "Enter" (a/k/a/ "Return") key press just generates what looks like a space in the Workspace.
This is with no modifier keys held down.
On Wed, 5 Jun 2002, Ned Konz wrote:
Well, I'm not sure that works right. For instance, a plain "Enter" (a/k/a/ "Return") key press just generates what looks like a space in the Workspace.
Oops -- Sorry. I said it was a quick hack. I've fixed it (new binary, same place). Thanks for trying it out though!
Ian
On Wed, 05 Jun 2002, Ian Piumarta wrote:
RTFM ? ;)
But I do (and did)! The problem is hat using Ctrl as command becomes almost instinctive. It's exactly the problem my father used to have while driving my Lancia (which had an early Porche type shift) -- he'd always expect first gear to be where second actually was.
http://www-sor.inria.fr/~piumarta/squeak/unix/3.1current/bld/squeak-m
(it's a 3.1 VM for 386) and start it up with:
squeak-m -modifiers 0213 [whatever.image]
Notwithstanding Ned's comments, I'll give it a go soon (currently I'm translating something and installing SuSE 8.0 at the same time -- I can't cope with more excitement).
P.S. If anyone knows an easy way to get Eastern European and Italian "special characters" to appear properly on the same web page, please drop me a line off list!
Cheers
John
On Wednesday 05 June 2002 04:30 pm, John Hinsley wrote:
On Wed, 05 Jun 2002, Ian Piumarta wrote:
RTFM ? ;)
But I do (and did)! The problem is hat using Ctrl as command becomes almost instinctive. It's exactly the problem my father used to have while driving my Lancia (which had an early Porche type shift) -- he'd always expect first gear to be where second actually was.
You may want to look at my earlier change set that does arbitrary swapping (on a key by key basis), also allowing you to swap mouse buttons if you want (so context menus come up on the right button, as you're accustomed).
The Windows VM has a setting that takes care of the button mapping; I wrote this because I use Linux.
See: http://swiki.gsug.org:8080/sqfixes/2173.html
On Thu, 06 Jun 2002, Ned Konz wrote:
//snip//
You may want to look at my earlier change set that does arbitrary swapping (on a key by key basis), also allowing you to swap mouse buttons if you want (so context menus come up on the right button, as you're accustomed).
The Windows VM has a setting that takes care of the button mapping; I wrote this because I use Linux.
Thanks Ned, I'll give it a go after the present period of choas/excitement is over!
Cheers
John
Ned Konz ned@bike-nomad.com wrote:
Mac PC
Cmd Ctrl Option Alt
Option is dead. So the table should look more like:
Mac PC ---------------- Shift Shift Cmd Ctrl Ctrl ???
Note that there is a problem on the last line. Any choice you make will mean that the "control" key, for Squeak on Win32, is not the one labelled "Ctrl". To fix this, we could possibly rename "control" entirely, eg "shifting-command" or "super-command". :) Then we could do:
Squeak Mac PC --------------------- shift shift shift cmd cmd ctrl scmd ctrl alt
Of course, in the process here we end up with a similar condition to mouse buttons: just as people can't talk about left/right/middle or even primary/secondary/tertiary buttons, they can't talk about the control key. Maybe it's worth it, though, if ctrl-c does what a Windows user expects.
-Lex
Ned,
Why don't you change the three lines that are affected by it in ParagraphEditor and leave the VM alone?! There is absolutely no reason to change the (perfectly reasonable) key mapping in the VM for having different shortcuts. Or do you expect the VM to map Cmd-F to Ctrl-F4 just because some weird app expects Ctrl-F4 to be "the shortcut" for text search?! ;-)
Cheers, - Andreas
-----Original Message----- From: squeak-dev-admin@lists.squeakfoundation.org [mailto:squeak-dev-admin@lists.squeakfoundation.org] On Behalf Of Ned Konz Sent: Wednesday, June 05, 2002 9:05 PM To: squeak-dev@lists.squeakfoundation.org Subject: Whole other debate on keyboard mappings
On Wednesday 05 June 2002 11:53 am, Ian Piumarta wrote:
Just to be absolutely sure about things, this is what I think the keyboard/pointer mappings should be (if anybody disagrees with the way the following mappings are set up, then that can be a whole other debate):
Alt and Meta both map to Command.
OK... whole nother debate:
The usual Mac command for (say) copy is Cmd-C The usual Windows (and many Linux) command for copy is Ctrl-C However, mapping the Alt to Cmd causes us to need Alt-C instead. So Squeak becomes the only app (out of many) that uses Alt-C rather than Ctrl-C to copy.
I would suggest the following mapping between Mac and PC modifier keys, for consistency with the rest of the apps in the given environments:
Mac PC
Cmd Ctrl Option Alt
-- Ned Konz http://bike-nomad.com GPG key ID: BEEA7EFE
On Wednesday 05 June 2002 04:30 pm, Andreas Raab wrote:
Why don't you change the three lines that are affected by it in ParagraphEditor and leave the VM alone?!
I did a somewhat different version of that (where the keys to swap were specified in a table) (along with adding another Preference for swapping mouse buttons 2 & 3), and posted it to the list some time ago. It's the first thing I load into new images. My version handles it at the Event dispatch level, though (that is, it really swaps the mouse button bits and/or the key modifier bits).
So in my image, Ctrl-C and Alt-C are swapped, etc.
I'm just concerned about the "out of box experience"; Squeak is different enough that I don't think we should add another unnecessary stumbling block.
Ned,
I'm just concerned about the "out of box experience"; Squeak is different enough that I don't think we should add another unnecessary stumbling block.
And I agree on this - I just don't see absolutely no reason to change the mapping in the VM.
Cheers, - Andreas
Ian Piumarta ian.piumarta@inria.fr wrote:
(Details: the code in the above VM is "immune" to junk in the "state" member in X key/button events [which for some reason was completely absurd in Mandrake] and will instead track the modifier state using the keysyms reported in press/release events.)
Hmm. What happens in the "fixed" VM if you switch apps while a modifier key is down? e.g., what happens if you alt-tab away from Squeak and then click to return? Squeak might see the alt press, but it might lose focus before the alt key is released. When you click back, the VM would still think the alt key is pressed.
More fundamentally, do all X servers even have key press event for modifiers? Do all X servers even have key release events at all? Also, what about things like caps lock -- shouldn't we handle those, as well?
The "state" variable is there for a reason. How far should we go if we can't rely on it? Maybe these guys should fix their install if it is that messed up.
-Lex
On Wed, 5 Jun 2002, Lex Spoon wrote:
Hmm. What happens in the "fixed" VM if you switch apps while a modifier key is down? e.g., what happens if you alt-tab away from Squeak and then click to return? Squeak might see the alt press, but it might lose focus before the alt key is released. When you click back, the VM would still think the alt key is pressed.
You reset the modifier state, either to zero (on EnterNotify -- cheap solution but relatively harmless) or to the correct state by inspecting the contents of the KeymapEvent which accompanies it (expensive solution but which does The Right Thing).
More fundamentally, do all X servers even have key press event for modifiers?
I've never seen one that didn't.
Do all X servers even have key release events at all?
It's part of the protocol.
Also, what about things like caps lock -- shouldn't we handle those, as well?
XLookupString takes care of that.
The "state" variable is there for a reason. How far should we go if we can't rely on it? Maybe these guys should fix their install if it is that messed up.
That was my initial reaction. I was just trying to investigate alternatives and not leave these guys stuck forever at an ancient version (especially since they apparently have no problems with other apps on Mandrake...).
The most perplexing thing is that this problem occurred immediately after pulling in the SF patches (sound like a familiar story? ;^p). I'm starting to wonder about that MappingNotify -> XRefreshKeyboardMapping that's in there, which I took on faith. Maybe it would be a neat idea to check if the event is even related to the keyboard at all before trying to remap it.
(I asked Chris a few hours ago to remove this from his broken VM and try it again. I'm still waiting to hear from him. But that still wouldn't explain the weird stuff that xev was printing out for him.)
Ian
More fundamentally, do all X servers even have key press event for modifiers? Do all X servers even have key release events at all? Also,
FWIW, from the Xlib C Language Reference Manual:
The X server reports KeyPress or KeyRelease events to clients wanting information about keys that logically change state. Note that these events are generated for all keys, even those mapped to modifier bits.
Ian
This worked fine as far as mouse buttons being correct on my Debian/Sid machine, Athlon processor.
HTH.
Jimmie Houchin
On Wed, 2002-06-05 at 13:45, Ian Piumarta wrote:
Folks,
Chris Farmer sent me lots of xev output from his Mandrake system. After decoding all the weirdo stuff that was being reported I think I've solved the problem. BUT, not having a Mandrake to test it on I'd really appreciate some help...
If you've had keyboard/pointer problems in recent 3.1 VMs then please would you take 2 minutes to download the following binary:
http://www-sor.inria.fr/~piumarta/squeak/unix/3.1current/bld/squeak
and let me know if it solves your mapping problems.
(Details: the code in the above VM is "immune" to junk in the "state" member in X key/button events [which for some reason was completely absurd in Mandrake] and will instead track the modifier state using the keysyms reported in press/release events.)
If this 3.1 VM works for you then I'll pull the changes forward into 3.[32]-devel.
Thanks!
Ian
squeak-dev@lists.squeakfoundation.org