Bug 78106

Summary: KopeteCommandHandler should warn on unrecognised '/slash' commands
Product: [Applications] kopete Reporter: Malte S. Stretz <mss>
Component: libkopeteAssignee: Kopete Developers <kopete-bugs-null>
Status: CONFIRMED ---    
Severity: wishlist CC: ana, pereira.alex
Priority: NOR    
Version: 0.40.0   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:

Description Malte S. Stretz 2004-03-20 22:45:51 UTC
Version:           0.8.1 (using KDE 3.2.1, Gentoo)
Compiler:          gcc version 3.3.2 20031218 (Gentoo Linux 3.3.2-r5, propolice-3.3-7)
OS:          Linux (i686) release 2.4.20-gentoo-r8

If you're in a chan and type an unknown command (like /who), Kopete sends the command line as text to the chan. As this leads to inconsistent behaviour and can be a bit embarassing, it should print a nice error message instead.
Comment 1 Jason Keirstead 2004-03-22 01:33:21 UTC
/who is supported in HEAD.

Sending /<*> to the KMM when it is not a real command is for convenience sake for several reasons.. a) pasting text that starts with /<foo>, b) in other protocols people are not really used to /<*> being a command and may type this on purpose.

I don't really see any reason why /noexistcommand should not be sent, I have often wished myself for this many many times in XChat and KSirc etc.
Comment 2 Malte S. Stretz 2004-03-22 10:10:02 UTC
It shouldn't do so because it's heavily inconsistent which is a nightmare, usability-wise. To counter your axamples:
a) No, I can't paste anything and rely on it to *not* trigger a command.
b) It's true that especially IM users aren't used to the slash-commands (as no other protocol supports something like this). But now you're in a situtaion where it some times work and sometimes not. Do I have to remember all implemented commands if I want to type something starting with a slash? No, I should have to remember/learn that a slash starts a command, period. If I post something with a leading slash and thats no known command, Kopete should give me an error so I know about this.

A good example, in both directions, is /who:
1. In Kopete 0.8 I can type "/who are you?/" (to add emphasis) and it will go to the chan. Now I get used to it and continue to do so in 0.9. Oops. Doesn't "work" anymore.
2. I try (better: tried, this was when I noticed this) the /who command. And the stuff goes to the chan, everybody (exaggerated) says "haha, you lamer".

Even worse, imagine I come from mIRC and there I created a nice macro /m for /msg. Now I want to msg somebody privately and say "/m you suck". Oops. I never intended to say that publically.

It often bit myself that I can't paste strings starting with a slash to IRC clients. But while that's inconvinient on the first look, I prefer this over a "maybe it works, maybe not" approach.

A solution might be to make this configurable. Add two options, a "master" one which says "Enable IRC slash-commands" (defaulting to on) and a second one which says "Interpret unknown commands as text" (defaulting to off).

The first time an IRC users types a line starting with a slash he could also get a message box which says something like

  "You typed text which started with a slash. In IRC the slash is commonly"
  "used to start special IRC commands."
  "The word /foo you typed is a recognized command. Do you want to execute
  "it (instead of sending it as plain text)?"
  "[ ] Do not ask me again."
  "[[Yes]] [No] [Cancel]"
Or
  "You typed text which started with a slash. In IRC the slash is commonly"
  "used to start special IRC commands."
  "The word /bar you typed is not a recognized command. Do you want to send"
  "it as plain text?"
  "[ ] Do not ask me again."
  "[Yes] [[No]]"
Comment 3 Sebastian Sauer 2004-04-20 15:09:14 UTC
Comment #2 does say it already, but I've to add one more reason;
Let's say you like to register your nick and therefore use the "/identify nick password"-stuff. Bussiness as usual you wrote /idenntify nick password" and volia... everybody is able to read your password. Yes, I saw a lot of passwords flying around the irc cause of that... It would also a good idear to check if [\s]+/command was given and maybe just remove those whitepace then...
Comment 4 Jason Keirstead 2004-04-20 15:11:16 UTC
Good example, you are right of course.
Comment 5 Olivier Goffart 2005-04-04 10:18:30 UTC
*** Bug 100645 has been marked as a duplicate of this bug. ***
Comment 6 Navid Zamani 2011-03-03 17:20:17 UTC
PROTIP: Make it a user choice! There is no perfect setup for everyone, and there is no absolute best choice. It’s basic physics. Duh.
Problem solved.  :)