I thought RAw gave keycodes on all key events....well I could be wrong. Yeah...that feature is not in the terminal. You can read/dev/event, but that is not terminal specific. I guess if RAW is not acceptable, then you are stuck.
But how do terminal know when events are theirs. Hmm... I do not seem to know.
1) people working at the command line can tell the difference between 10ms and 100ms
What if you are on a network partition. I am on a poorly managed network, and sometimes every head seek counts. The difference can be in dozens of seconds between ls and ls -al.
2) ls itself doesn't have any switches to return just the filename in the object
Right. But how does monad / user know of all the properties that will be returned without running the command. If the command did not run, how does monad autocomplete it for me? Same issue for your third comment. How do you get autocomplete without running the program first.
If Monad really is the next great thing I do not think so. It will have a couple of cool features, but I think it will have enough issues that it will work well with only a very small subset of tools, and the rest will be just like bash completion.
how easy will it be to port to Mono You will also have to port every single app that you want tab completed and piped, as all of those will require knowledge of.NET as well.
The notion that these clippings should _not_ be shared between shells, but should be shared between gui applications is rather weird and unintuitive to me.
I am not sure what you mean. Personally I think that the problem that you are referring to is that the clipboard is an X thing. Personally I think clipboard should be something that is not a part of X, and have its own standard. Perhaps clipboard should be a daemon or a kernel service. That will solve the problem of consoles and X not sharing the clipboard.
actually read the _exact_ key events as they take place This I believe can be done...just set the terminal into RAW instead of XLATE mode.
But doing this would require changes in terminfo, screen and a large number of terminal emulators such as xterm, gnome terminal and konsole in order for it to become used.
This is true. However similar changes have been done. Most terminals have escape codes for setting the title.
It sounds nice, but there are problems with this approach to command line piping as well.
First, this means that every command line needs to be a.NET program. Otherwise this will obviously not work. Second, every program on the command line will have to report some kind of schema on what the output will be. This is similar to you delete issue...but it is more global than that. Why should ls output all the information into the pipe when I want just the list of filenames. A lot of things like size and time accessed require reading of actual inodes, while filenames are in the single directory entry. Third, what if the application changes output depending on what you ask for....running commands to determine their output is not an option....you run into computability issues.
So my opinion of this tech: It is nothing that can not be achieved using awk and sed scripts, but perhaps with less pain. The tab completion is nice, but I think your delete issue is to the point, and I do not think it is solvable except to have some kind of a giant hack (see bash-completion).
I see that you have written a serious shell, so your experience trumps mine....but please allow me to insert a few comments.
Shell programs should support the mouse I have seen shell programs that support the mouse. One such program is midnight commander. I am not sure how that is done, but I hope it is not done directly by the library.
should respect theme color preferences Interesting....but which ones? What about remote access? Dumb terminals? There is no specific way to do this. Many terminals already have reprogrammable colors and IMO all that needs to be done is to have ANSI escapes for non-specific colors like the "error color". Then the color is a property of the terminal, and not the shell.
should use the X clipboard for copy and paste. Why? It is the terminals job to know how to copy and paste. Besides there are other copy and paste systems than the X clipboard (for example your shell can run inside emacs or a console with GPM). If your shell wants to copy and paste command line things, it should really talk to the terminal about it. For scripts there is xclip.
There are many other ways in which the CLI could benefit from a closer integration with the GUI. I agree in general. But I disagree with you on whose job it is. I do not believe it is shells business to deal with things that are outside of its domain...and there are things, a shell just will not be able to do.
One of my biggest pet peeves, which I really do not have the ability, knowledge, persuasion and time to fix is scrolling in GNU screen. I love screen, but it works as a terminal embedded in a terminal, so has the same environment as a shell does...can not assume much about parent terminal. Thus if I run screen inside a gnome-terminal, I lose the ability to use the terminals scroll bar to scroll inside screen (same issue in vim as well). Your solution would be similar to sending X events to change the position of the scroll bar. IMO that way is pretty broken. What should be done is escape sequences for specifying the scrolling to the terminal that are standardized for each terminal (with the necessary termcap abstraction of course).
The same approach could be taken with all the other features that you want. There can be escape sequences to set and get the terminal's clipboard. The terminal could send mouse events via escape sequences. And now the terminal is responsible to handle all the behavior...and moreover the termcap already tells you if a certain feature is supported without hoping for correct guesses about user's environment.
The problem is convincing people to implement all the needed escape sequences.
Linux + Nvidia driver (with RenderAccel disabled) is damn stable.
ATI about 2-3 year ago has earned a reputation that they have really bad drivers. I believe that even Carmack has mentioned that he will only do development on nvidia, as the ATI's were too unpredictable. I believe the situation has changed but not for linux drivers.
Ati linux drivers are the same nightmare they used to be. Some cards are supported, others are not. In general it is a mess.
As far as your "F*CKING WORKS" comment...all I have to say is that it is not the case in my experience. One of the latest computers that I have configured for windows (Dad's Windows XP machine, hard drive with XP installed from the previous box) appears to not like AGP video. I booted Windows, and it freezes upon entering graphics mode. I started knoppix -- no problems. Windows -- freezes at entering graphics mode. Plugged in a different card - same result. Windows freezes at entering graphics mode. Fine, I immediately think that the windows is wrongly using the old configuration that is on the hard drive to start graphics, and is freezing. Here is the kicker...I decided to reinstall Windows only to have the installer freeze completely when entering graphics mode. Same result with the SP2 disc that I have bootlegged (The version I was installing was legit in fact).
I expected there would probably be bios flash for something like this, but no such new bios was available...and no one was reporting the same problem. The eventual workaround involved this: tell the bios to boot a pci graphics card first, and have any cheap pci card sitting there. Then tell windows that the agp card is the main desktop one and ignore the other card. That worked perfectly.
Total time spent to research, tinker, and workaround the problem: 4 days, with few breaks. I am persistent like that. Unfortunately that is more time than I have spent on configuring linux boxes in the last year or two.
And although the Plug and Pray experience of installing ISA modems did go away (mostly due to modems going away, I am sure the OS is still full of bugs in that respect), there is still plenty of fun to go around. Like the new vendor drivers versus generic drivers fighting each other. The SCSI card that the scanner uses disabling the CD drives, as in they are visible, but no longer send any media status info. Microphone on the card stopped working about a year and a half ago due to a generic driver update, and creative just says use generic driver.
Plenty of fun to go around when using windows boxes.
Unfortunately, it seems that linux has become mainstream, but good passwords have not.
My logs are currently filling up with stuff that looks like this:
Feb 1 23:39:58 rtr sshd[17961]: Illegal user test from 202.194.15.133 Feb 1 23:39:58 rtr sshd[17961]: error: Could not get shadow information for NOUSER Feb 1 23:39:58 rtr sshd[17961]: Failed password for illegal user test from 202.194.15.133 port 55865 ssh2 Feb 1 23:40:01 rtr sshd[17963]: Illegal user guest from 202.194.15.133 Feb 1 23:40:01 rtr sshd[17963]: error: Could not get shadow information for NOUSER Feb 1 23:40:01 rtr sshd[17963]: Failed password for illegal user guest from 202.194.15.133 port 56173 ssh2 Feb 1 23:40:03 rtr sshd[17965]: Illegal user admin from 202.194.15.133 Feb 1 23:40:03 rtr sshd[17965]: error: Could not get shadow information for NOUSER Feb 1 23:40:03 rtr sshd[17965]: Failed password for illegal user admin from 202.194.15.133 port 56448 ssh2 Feb 1 23:40:04 rtr sshd[17967]: Illegal user test from 202.194.15.133 Feb 1 23:40:04 rtr sshd[17967]: error: Could not get shadow information for NOUSER Feb 1 23:40:04 rtr sshd[17967]: Failed password for illegal user test from 202.194.15.133 port 56569 ssh2 Feb 1 23:40:06 rtr sshd[17969]: Illegal user admin from 202.194.15.133 Feb 1 23:40:06 rtr sshd[17969]: error: Could not get shadow information for NOUSER Feb 1 23:40:06 rtr sshd[17969]: Failed password for illegal user admin from 202.194.15.133 port 56718 ssh2 Feb 1 23:40:07 rtr sshd[17971]: Illegal user guest from 202.194.15.133 Feb 1 23:40:07 rtr sshd[17971]: error: Could not get shadow information for NOUSER Feb 1 23:40:07 rtr sshd[17971]: Failed password for illegal user guest from 202.194.15.133 port 56817 ssh2 Feb 1 23:40:08 rtr sshd[17973]: Illegal user user from 202.194.15.133 Feb 1 23:40:08 rtr sshd[17973]: error: Could not get shadow information for NOUSER Feb 1 23:40:08 rtr sshd[17973]: Failed password for illegal user user from 202.194.15.133 port 56946 ssh2 Feb 1 23:40:09 rtr sshd[17975]: Illegal user admin from 202.194.15.133 Feb 1 23:40:09 rtr sshd[17975]: error: Could not get shadow information for NOUSER Feb 1 23:40:09 rtr sshd[17975]: Failed password for illegal user admin from 202.194.15.133 port 57033 ssh2 Feb 1 23:40:11 rtr sshd[17977]: Failed password for root from 202.194.15.133 port 57169 ssh2 Feb 1 23:40:12 rtr sshd[17979]: Illegal user admin from 202.194.15.133 Feb 1 23:40:12 rtr sshd[17979]: error: Could not get shadow information for NOUSER Feb 1 23:40:12 rtr sshd[17979]: Failed password for illegal user admin from 202.194.15.133 port 57251 ssh2 Feb 1 23:40:13 rtr sshd[17981]: Failed password for root from 202.194.15.133 port 57377 ssh2 Feb 1 23:40:14 rtr sshd[17983]: Illegal user user from 202.194.15.133 Feb 1 23:40:14 rtr sshd[17983]: error: Could not get shadow information for NOUSER Feb 1 23:40:15 rtr sshd[17983]: Failed password for illegal user user from 202.194.15.133 port 57448 ssh2 Feb 1 23:40:16 rtr sshd[17985]: Failed password for root from 202.194.15.133 port 57570 ssh2 Feb 1 23:40:17 rtr sshd[17987]: Failed password for root from 202.194.15.133 port 57650 ssh2 Feb 1 23:40:19 rtr sshd[17989]: Illegal user test from 202.194.15.133 Feb 1 23:40:19 rtr sshd[17989]: error: Could not get shadow information for NOUSER Feb 1 23:40:19 rtr sshd[17989]: Failed password for illegal user test from 202.194.15.133 port 57724 ssh2 Feb 1 23:40:19 rtr sshd[17991]: Illegal user test from 202.194.15.133 Feb 1 23:40:19 rtr sshd[17991]: error: Could not get shadow information for NOUSER Feb 1 23:40:19 rtr sshd[17991]: Failed password for illegal user test from 202.194.15.133 port 57756 ssh2 Feb 1 23:40:22 rtr sshd[17993]: Illegal user guest from 202.194.15.133 Feb 1 23:40:22 rtr sshd[17993]: error: Could not get shadow information for NOUSER Feb 1 23:40:22 rtr sshd[17993]: Failed password for illegal user guest from 202.194.15.133 port 57974 ssh2 Feb 1 23:40:23 rtr sshd[17995]:
How you select the third window is up to the window manager. In windows it is usually restricted to Alt-Tab. Once the window is the primary winodow, hit Alt+4 to get the fourth tab selected. If you need to go to a specific website on that window, hit Ctrl-L to highlight the address bar.
Also I believe there is a primitive way that one can script firefox from the command line, but I have not tried it.
Do not underestimate the greediness of women. I have heard stories of women going to the jewelers to make sure that the diamond they got the day before is not a cubic zirconia or quartz.
If DeBeers steps up marketing, the first question some women will ask is if it is a "natural" diamond, and will not answer your question until you answer theirs....
It is funny. The worst thing that happened to AMD K6 line were Cyrix chips. Their horrendous reputation made everyone be afraid of buying anything non-Intel.
The only reason why AMD managed to edge out ahead is because the P4 was a not very good, yet expensive, chip that was touted as the best for too long, making people search for alternatives.
If it was not for Cyrix, I would guess that AMD would have a bit more cash by now.
Hmm, quick googling does indeed imply that you (if that is your real name) involved at the development level.
Although I thank you for the offer, I must decline. For starters, I know nothing about hardware development. In fact, I still have a hard time telling a volt from an amp. Two, I will never have enough time to be of any good assistance. I know that is a bad excuse, but such is life.
I will keep an eye on the project, though. I will definitely gladly pay for such a device (assuming that I will have sufficient $$$ in the bank, which I should have, unless I lose my work. And hopefully, I will have enough time to help out with some driver testing/writing, as I do have at least minimal understanding of driver development for linux.
Very much agree. If this card is not for gaming, then it should support a lot of other useful things.
XVideo being one of them. Mpeg decoding is another. Motion Compensation / Deinterlacing would be cool too. Compositing so that X can be pretty would be nice.
And perhaps, if the card is a reprogrammable card, then what would be cool is an ability to customize the card to the needs of the user. Say I would like compositing, but do not plan to run MPEG movies, so I will have one and not have another. However, I have no clue if plugin-able hardware is possible.
As far as AGP goes, I think the card is aiming at PCI, if I remember correctly. As the card is not "high end", it does not need the AGP badwidth, as it will not be shoving textures back and forth. On the other hand, it may be useful if they implement video or compositing.
I think by million dollars, they mean revenue from sales, and not donations.
And by that they mean 10000 boards at about $100-$200 dollars each. If they manage to sell that many of their first revision product, they will continue development.
But will it work just as well inside an xterm?
I thought RAw gave keycodes on all key events....well I could be wrong. Yeah...that feature is not in the terminal. You can read /dev/event, but that is not terminal specific. I guess if RAW is not acceptable, then you are stuck.
But how do terminal know when events are theirs. Hmm... I do not seem to know.
1) people working at the command line can tell the difference between 10ms and 100ms
.NET as well.
What if you are on a network partition. I am on a poorly managed network, and sometimes every head seek counts. The difference can be in dozens of seconds between ls and ls -al.
2) ls itself doesn't have any switches to return just the filename in the object
Right. But how does monad / user know of all the properties that will be returned without running the command. If the command did not run, how does monad autocomplete it for me? Same issue for your third comment. How do you get autocomplete without running the program first.
If Monad really is the next great thing
I do not think so. It will have a couple of cool features, but I think it will have enough issues that it will work well with only a very small subset of tools, and the rest will be just like bash completion.
how easy will it be to port to Mono
You will also have to port every single app that you want tab completed and piped, as all of those will require knowledge of
I am aware of this. I am talking about linking this functionality with the terminal's scrollbar.
The notion that these clippings should _not_ be shared between shells, but should be shared between gui applications is rather weird and unintuitive to me.
I am not sure what you mean. Personally I think that the problem that you are referring to is that the clipboard is an X thing. Personally I think clipboard should be something that is not a part of X, and have its own standard. Perhaps clipboard should be a daemon or a kernel service. That will solve the problem of consoles and X not sharing the clipboard.
actually read the _exact_ key events as they take place
This I believe can be done...just set the terminal into RAW instead of XLATE mode.
But doing this would require changes in terminfo, screen and a large number of terminal emulators such as xterm, gnome terminal and konsole in order for it to become used.
This is true. However similar changes have been done. Most terminals have escape codes for setting the title.
It sounds nice, but there are problems with this approach to command line piping as well.
.NET program. Otherwise this will obviously not work. Second, every program on the command line will have to report some kind of schema on what the output will be. This is similar to you delete issue...but it is more global than that. Why should ls output all the information into the pipe when I want just the list of filenames. A lot of things like size and time accessed require reading of actual inodes, while filenames are in the single directory entry. Third, what if the application changes output depending on what you ask for....running commands to determine their output is not an option....you run into computability issues.
First, this means that every command line needs to be a
So my opinion of this tech: It is nothing that can not be achieved using awk and sed scripts, but perhaps with less pain. The tab completion is nice, but I think your delete issue is to the point, and I do not think it is solvable except to have some kind of a giant hack (see bash-completion).
I see that you have written a serious shell, so your experience trumps mine....but please allow me to insert a few comments.
Shell programs should support the mouse
I have seen shell programs that support the mouse. One such program is midnight commander. I am not sure how that is done, but I hope it is not done directly by the library.
should respect theme color preferences Interesting....but which ones? What about remote access? Dumb terminals? There is no specific way to do this. Many terminals already have reprogrammable colors and IMO all that needs to be done is to have ANSI escapes for non-specific colors like the "error color". Then the color is a property of the terminal, and not the shell.
should use the X clipboard for copy and paste.
Why? It is the terminals job to know how to copy and paste. Besides there are other copy and paste systems than the X clipboard (for example your shell can run inside emacs or a console with GPM).
If your shell wants to copy and paste command line things, it should really talk to the terminal about it. For scripts there is xclip.
There are many other ways in which the CLI could benefit from a closer integration with the GUI.
I agree in general. But I disagree with you on whose job it is. I do not believe it is shells business to deal with things that are outside of its domain...and there are things, a shell just will not be able to do.
One of my biggest pet peeves, which I really do not have the ability, knowledge, persuasion and time to fix is scrolling in GNU screen. I love screen, but it works as a terminal embedded in a terminal, so has the same environment as a shell does...can not assume much about parent terminal. Thus if I run screen inside a gnome-terminal, I lose the ability to use the terminals scroll bar to scroll inside screen (same issue in vim as well). Your solution would be similar to sending X events to change the position of the scroll bar. IMO that way is pretty broken. What should be done is escape sequences for specifying the scrolling to the terminal that are standardized for each terminal (with the necessary termcap abstraction of course).
The same approach could be taken with all the other features that you want. There can be escape sequences to set and get the terminal's clipboard. The terminal could send mouse events via escape sequences. And now the terminal is responsible to handle all the behavior...and moreover the termcap already tells you if a certain feature is supported without hoping for correct guesses about user's environment.
The problem is convincing people to implement all the needed escape sequences.
They are alive in the same sense as the guy from greek mythology whose liver got pecked out by vultures daily, but then he regrew it overnight.
Sadly I think they will never leave that state, for that is their chosen burden... I mean license.
This would not have helped here...as any configuration (including the setup from the CD) was crashing.
Obviously Windows did something that the motherboard did not like.
Linux + Nvidia driver (with RenderAccel disabled) is damn stable.
ATI about 2-3 year ago has earned a reputation that they have really bad drivers. I believe that even Carmack has mentioned that he will only do development on nvidia, as the ATI's were too unpredictable. I believe the situation has changed but not for linux drivers.
Ati linux drivers are the same nightmare they used to be. Some cards are supported, others are not. In general it is a mess.
As far as your "F*CKING WORKS" comment...all I have to say is that it is not the case in my experience. One of the latest computers that I have configured for windows (Dad's Windows XP machine, hard drive with XP installed from the previous box) appears to not like AGP video. I booted Windows, and it freezes upon entering graphics mode. I started knoppix -- no problems. Windows -- freezes at entering graphics mode. Plugged in a different card - same result. Windows freezes at entering graphics mode. Fine, I immediately think that the windows is wrongly using the old configuration that is on the hard drive to start graphics, and is freezing. Here is the kicker...I decided to reinstall Windows only to have the installer freeze completely when entering graphics mode. Same result with the SP2 disc that I have bootlegged (The version I was installing was legit in fact).
I expected there would probably be bios flash for something like this, but no such new bios was available...and no one was reporting the same problem. The eventual workaround involved this: tell the bios to boot a pci graphics card first, and have any cheap pci card sitting there. Then tell windows that the agp card is the main desktop one and ignore the other card. That worked perfectly.
Total time spent to research, tinker, and workaround the problem: 4 days, with few breaks. I am persistent like that. Unfortunately that is more time than I have spent on configuring linux boxes in the last year or two.
And although the Plug and Pray experience of installing ISA modems did go away (mostly due to modems going away, I am sure the OS is still full of bugs in that respect), there is still plenty of fun to go around. Like the new vendor drivers versus generic drivers fighting each other. The SCSI card that the scanner uses disabling the CD drives, as in they are visible, but no longer send any media status info. Microphone on the card stopped working about a year and a half ago due to a generic driver update, and creative just says use generic driver.
Plenty of fun to go around when using windows boxes.
My logs are currently filling up with stuff that looks like this:
I am using the linux version -- probably different bindings.
No, they are just called trophy wives.
How you select the third window is up to the window manager. In windows it is usually restricted to Alt-Tab. Once the window is the primary winodow, hit Alt+4 to get the fourth tab selected. If you need to go to a specific website on that window, hit Ctrl-L to highlight the address bar.
Also I believe there is a primitive way that one can script firefox from the command line, but I have not tried it.
Does not seem that the prices have gone down though.
OTOH, I have no clue what the prices would be.
Do not underestimate the greediness of women. I have heard stories of women going to the jewelers to make sure that the diamond they got the day before is not a cubic zirconia or quartz.
If DeBeers steps up marketing, the first question some women will ask is if it is a "natural" diamond, and will not answer your question until you answer theirs....
It is also missing the "tritium battery" option that we have seen on slashdot a couple of days ago.
Remind me to stop doing that once power over ethernet becomes commonplace.
They probably "removed" PyMusique compatability again. Does anyone know?
Similar story with comcast. I have had multiple scans at the same time on a couple of occasions.
.edu machine got scanned only once.
My
So is break-in CW.
Cyrix chips were a complete joke.
It is funny. The worst thing that happened to AMD K6 line were Cyrix chips. Their horrendous reputation made everyone be afraid of buying anything non-Intel.
The only reason why AMD managed to edge out ahead is because the P4 was a not very good, yet expensive, chip that was touted as the best for too long, making people search for alternatives.
If it was not for Cyrix, I would guess that AMD would have a bit more cash by now.
Hmm, quick googling does indeed imply that you (if that is your real name) involved at the development level.
Although I thank you for the offer, I must decline. For starters, I know nothing about hardware development. In fact, I still have a hard time telling a volt from an amp. Two, I will never have enough time to be of any good assistance. I know that is a bad excuse, but such is life.
I will keep an eye on the project, though. I will definitely gladly pay for such a device (assuming that I will have sufficient $$$ in the bank, which I should have, unless I lose my work. And hopefully, I will have enough time to help out with some driver testing/writing, as I do have at least minimal understanding of driver development for linux.
Very much agree. If this card is not for gaming, then it should support a lot of other useful things.
XVideo being one of them. Mpeg decoding is another. Motion Compensation / Deinterlacing would be cool too. Compositing so that X can be pretty would be nice.
And perhaps, if the card is a reprogrammable card, then what would be cool is an ability to customize the card to the needs of the user. Say I would like compositing, but do not plan to run MPEG movies, so I will have one and not have another. However, I have no clue if plugin-able hardware is possible.
As far as AGP goes, I think the card is aiming at PCI, if I remember correctly. As the card is not "high end", it does not need the AGP badwidth, as it will not be shoving textures back and forth. On the other hand, it may be useful if they implement video or compositing.
I think by million dollars, they mean revenue from sales, and not donations.
And by that they mean 10000 boards at about $100-$200 dollars each. If they manage to sell that many of their first revision product, they will continue development.
At least, that is how I understood it.