Introduction
Prat is a light framework for chat modules based on Ace2 libraries.
This thread marks the second major revision of Prat.
Prat is formerly known as idChat2 by Industrial.
The Prat system consists of the core (Prat/Prat.lua) and a number of integrated Prat modules in the modules folder (Prat/modules/*). The core only provides a root slash command ("/prat") and registers a data file (PratDB). Each Prat module is a self-contained unit of functionality. You can choose to use some or all of the Prat modules depending on your individual needs. If you do not want to use a particular module, you can delete its file from the modules folder or you can toggle the module on/off as desired from inside the game.
The entire focus of the Prat system is to add chat related functionality to World of Warcraft. If you are looking for a feature or function that is not currently listed here as available or planned, then please take a moment to let the Prat Development Team know.
Why the name Prat?
Why the name Prat? That's a great question that I've seen asked quite often on the IRC channel. In theory the word Prat loosely translates to Chat in swedish. The system itself has nothing to do with Sweden, however inspiration for the name was drawn from thoughts of The Swedish Chef (Bork! Bork! Bork!), IKEA, Swiss Miss Hot Chocolate (Mmm..), Swedish Meatballs (Mmm..), and Swedish Swimsuit Models (Mmm..). It may help users to accept the name if they, too, think of these things. ^^
Development Team (in alphabetic order)
These are the authors currently working on the project:
* Curney of Uther
* Krtek
* Sylvanaar of Proudmore
* Fin of Stormrage-EU
If you are a developer interested in contributing to the Prat project, please contact a team member.
Integrated Modules
These modules are included in the Prat modules folder (Prat/modules/*):
* AddonMessages - Toggles showing hidden addon messages on and off (default=off).
* Buttons - Toggles the chat menu and chat window buttons on and off (default=off).
* ChannelColorMemory - Remembers the colors of channels by channel name.
* ChannelNames - Shortens channel names in the chatframe.
* ChannelSeparator - Separates various channel options in the Blizzard UI (default=on).
* ChatFrames - Options for manipulating chat frames.
* ChatLink - Enables item linking in all channels (default=CHATLINKmode).
* Editbox - Options for editbox position, width, and backdrop alpha (default=attachedTop,widthChatFrame1,visibleBackdrop).
* EventNames - Toggles showing event names on and off (default=off).
* Fading - Toggles the fading in chat windows on and off (default=off).
* FontSize - Sets the font size for chat windows (default=12).
* Highlight (text highlighting options coming soon)
* History - Expands chat history options.
* Justify - Sets the justification for chat windows (default=Left).
* Keybindings - Adds keybindings for different chat channels.
* PlayerNames - Color player names by class, set brackets around player names (default=angledBrackets).
* PopupMessage - Displays chat with your name in a pop up window.
* Scroll - Enables mousewheel scrolling for chat windows (default=on).
* StickyChannels - Toggles sticky of different chat channels on and off (default=on).
* TellTarget - Adds a slash command (/tt) to send a message to your target (default=on).
* Timestamps - Adds timestamps to chat windows (default=on).
* UrlCopy - Makes URL copying easy (default=on).
* Who - Perform a /chatwho on selected channel.
Actually that looks like you used Tortoise and it tried to merge Prat1 with Prat2 and found so many differences that it was unable to cleanly merge them and created .diff files and denoted the changes in the file itself.
Entirely delete your Prat folder and check it out again.
Actually, it was a new folder. Deleted Prat1 and made a new folder and did a check out.
Actually that looks like you used Tortoise and it tried to merge Prat1 with Prat2 and found so many differences that it was unable to cleanly merge them and created .diff files and denoted the changes in the file itself.
Entirely delete your Prat folder and check it out again.
Actually, it was a new folder. Deleted Prat1 and made a new folder and did a check out.
THe problem was you were trying to update at the same time i was trying to complete the merge.
You no longer need an SVN client, you can use WAU to keep updated since Prat is now on the trunk
At first let me say that Prat os the most complete chat related addon out there. It enabled me to delete a whole bunch of other addons.
With the latest version r23948 i get the following error message:
Message: ..\AddOns\Prat\modules\ChannelNames.lua line 158:
AceLocale(ChannelNames): Improper translation exists. "Guild" is likely misspelled for locale deDE.
Debug:
[C]: ?
[C]: error()
Ace2\AceLibrary\AceLibrary.lua:85: error()
...nterface\AddOns\Ace2\AceLocale-2.2\AceLocale-2.2.lua:212: RegisterTranslations()
Prat\modules\ChannelNames.lua:158: in main chunk
I am on a german client. I have checked the file 'ChannelNames.lua' and 'Guild' is correctly translated as 'Gilde' within the function. Can you please have a look at this?
At first let me say that Prat os the most complete chat related addon out there. It enabled me to delete a whole bunch of other addons.
With the latest version r23948 i get the following error message:
Message: ..\AddOns\Prat\modules\ChannelNames.lua line 158:
AceLocale(ChannelNames): Improper translation exists. "Guild" is likely misspelled for locale deDE.
Debug:
[C]: ?
[C]: error()
Ace2\AceLibrary\AceLibrary.lua:85: error()
...nterface\AddOns\Ace2\AceLocale-2.2\AceLocale-2.2.lua:212: RegisterTranslations()
Prat\modules\ChannelNames.lua:158: in main chunk
I am on a german client. I have checked the file 'ChannelNames.lua' and 'Guild' is correctly translated as 'Gilde' within the function. Can you please have a look at this?
Translation for German Version in ChannelNames.lua
L:RegisterTranslations("deDe", function() return {
["ChannelNames"] = "Kanal Name",
["Channel name abbreviation options."] ="Kanal Namen Abk\195\188rzungsoptionen",
["Replace"] = "Ersetze",
["Toggle replacing this channel."] = "Schaltet das Ersetzen dieses Kanals ein.",
["Off"] = "Aus",
["Turn off this channel."] = "Schaltet diesen Kanal aus",
["Set"] = "Einstellen",
["Channel %d"] = "Kanal %d",
["%s settings."] = "%s Einstellungen.",
["Use a custom replacement for the chat %s text."] = "Benutze eigenen Namen f\195\188r den Chat %s Text.",
["space_name"] = "Zeige Leerstelle",
["space_desc"] = "Aktiviere eine zus\195\164tzliche Leerstelle nach dem eigenen Kanalnamen.",
["colon_name"] = "Zeige Doppelpunkt",
["colon_desc"] = "Aktiviere das hinzuf\195\188gen eines Doppelpunkts nach dem eigenen Kanalnamen.",
} end)
Only problem I am having apart from the already stated bugs, is if you remove the channel name completely from certain channels ie "guild" you will still have an added space after the timestamp. If you turn off a channel name it should remove the space.
L:RegisterTranslations("deDE", function() return {
["ChannelSticky"] = "Sticky Kan\195\164le",
["Chat channel sticky options."] = "Chat Kanal Sticky Optionen",
["ChatType"] = "Chat Art",
["Per chat type options."] = "Einstellungen nach Chat Art",
["Channel"] = "Kanal",
["%sSticky"] = "%s Sticky",
["Toggles sticky on and off for %s."] = "Schaltet Sticky an und aus f\195\188r %s.",
["Sticky Frame Chat Type"] = "Sticky Chat-Fenster Typ",
["Toggle remembering the chat type last used per chat frame."] = "Aktiviere die Erinnerung an den letzten Chat Typ der von diesem Chat-Fenster benutzt wurde.",
} end)
ChatLink.lua
L:RegisterTranslations("deDE", function() return {
["ChatLink"] = "ChatLink",
["Chat channel item link options."] = "Chat Kanal Item Link Optionen",
["cm_name"] = "ChatManager",
["cm_desc"] = "Aktiviere das Senden von Items im Cirk\" ChatManager Format.",
["clink_name"] = "ChatLink",
["clink_desc"] = "Aktiviere das Senden von items im ChatLink Format.",
} end)
CopyChat.lua
L:RegisterTranslations("deDE", function() return {
["CopyChat"] = "Chat kopieren",
["Copy text from the active chat window."] = "Ein Modul zum kopieren von Text aus dem Chat.",
["Copy Text"] = "Kopieren",
["Copy all of the text in the selected chat frame into an edit box"] = "Kopiert den gesamten Text im ausgew\195\164hlten Chatfenster in das Editierfeld.",
["showbutton_name"] = "Kopier Knopf",
["showbutton_desc"] = "Zeige einen Knopf am Chat-Fenster",
["showbutton_perframename"] = "Fenster%dKnopf",
["showbutton_perframedesc"] = "Zeige einen Knopf am Chat-Fenster %d",
} end)
TellTarget.lua
L:RegisterTranslations("deDE", function() return {
["TellTarget"] = "Sage Ziel",
["Adds telltarget slash command (/tt)."] = "F\195\188gt das Ziel Fl\195\188stern (TellTarget) Slash Kommando (/tt) hinzu.",
["Target does not exist."] = "Ziel existiert nicht.",
["Target is not a player."] = "Ziel ist kein Spieler.",
["No target selected."] = "Kein Ziel ausgew\195\164hlt.",
["NoTarget"] = "Kein Ziel",
} end)
Updated today, it breaks Lore's ability to change language from common to orcish, though it functions again if I uncheck "Do the actual chat replacement"
when u /who a single player prat no longer gives the player name a color.also the font size doesnt stay what u set it to,this has been that way for several versions for me.
I just downloaded the new Prat. I'm having problems with it already, though. Mainly its not working at all :(. Maybe I'm not typing the correct command (I've been typing /prat). I'm not exactly sure what's wrong. Any information would be greatly appreciated.
Prat 1.0 Has Been Superceded By Version 2.0 Which Is Now On The Trunk.
It is Beta 1, you will lose settings in the upgrade process. Please use the issue tracker to report issues.
Report issues using the google tracker: http://code.google.com/p/prat/issues/list
The update was done as a merge to prevent forking the codebase.
Welcome to the Prat 2.0 open beta. Your participation is greatly appreciated.
Icompatibilities with other chat mods:
The internal implementation has been drasticaly changed. Prat not interoperate with most chat mods. However, we are providing what we believe to be an "open framework for chat mods". We will provide basic services which chatmods need which in turn should make thier implementations trivial.
Some of this funtionality is available now, the remainder of what is planned should be completed within the next couple weeks.
If you are interested in developing a chat mod for Prat 2.0, or migrating your mod to use the Prat Framework, please contaact us.
Some of services provided:
1) Chat message segmentation and parsing
Prat breaks the chat string down into over 20 sections which supporting addons can modify without worrying about parsing the chat lines. For example, and addon can retrieve the Player's name, his server, the name of the chat channel its zone, each segment of the player link, etc in addition to edge sentinels which bracket every value.
The chat line is broken into these major sections:
PRE CHANNELNUM CHANNEL ZONE TYPEPREFIX FLAG PLAYERLINK PLAYER SERVER TYPEPOSTFIX MESSAGE POST
I have left out the slots which bracket the edge of every value for brevity.
So if you make a mod that can format the SERVER name's, it can operate without worrying about anything but filling in the value of SERVER when ever you see it.
We will also be providing basic pattern matching functionality to allow you to match text and filter, highlight, perform actions, etc.
Finally and still in development are the chat command and outbound text filtering services. This provides an organized way to control outgoing chat text. In this category are mods like chatlink, and other mods which add commmands like tell target or retell.
The unltimately goal is to have Prat modules which only do enough work to provide thier feature and no more. And to reduce the complexity of writing and maintaining chat mods. We hope to attract other authors to write thier own plugins which ustilze the framework. So instead of having 7-8 mods hooking the chatframes and parsing messages, you only have only 1 leaving the mods to focus on doing thier thing.
So again, welcome to the 2.0 beta, and thanks for all your help
Changing all possible setting combinations of the Chatlink module doesn't help, as does not disabling the module.
Clearing the flag "Do the actual chat replacement" makes it go away.
This channel is also used for GEM (guild event manager) communication and GEM is running. As i understand it GEM also tries to make linking in user created channels possible. Probably there is now a clash between GEM and Prat.
Prat is a light framework for chat modules based on Ace2 libraries.
This thread marks the second major revision of Prat.
Prat is formerly known as idChat2 by Industrial.
The Prat system consists of the core (Prat/Prat.lua) and a number of integrated Prat modules in the modules folder (Prat/modules/*). The core only provides a root slash command ("/prat") and registers a data file (PratDB). Each Prat module is a self-contained unit of functionality. You can choose to use some or all of the Prat modules depending on your individual needs. If you do not want to use a particular module, you can delete its file from the modules folder or you can toggle the module on/off as desired from inside the game.
The entire focus of the Prat system is to add chat related functionality to World of Warcraft. If you are looking for a feature or function that is not currently listed here as available or planned, then please take a moment to let the Prat Development Team know.
Why the name Prat?
Why the name Prat? That's a great question that I've seen asked quite often on the IRC channel. In theory the word Prat loosely translates to Chat in swedish. The system itself has nothing to do with Sweden, however inspiration for the name was drawn from thoughts of The Swedish Chef (Bork! Bork! Bork!), IKEA, Swiss Miss Hot Chocolate (Mmm..), Swedish Meatballs (Mmm..), and Swedish Swimsuit Models (Mmm..). It may help users to accept the name if they, too, think of these things. ^^
Development Team (in alphabetic order)
These are the authors currently working on the project:
* Curney of Uther
* Krtek
* Sylvanaar of Proudmore
* Fin of Stormrage-EU
If you are a developer interested in contributing to the Prat project, please contact a team member.
Integrated Modules
These modules are included in the Prat modules folder (Prat/modules/*):
* AddonMessages - Toggles showing hidden addon messages on and off (default=off).
* Buttons - Toggles the chat menu and chat window buttons on and off (default=off).
* ChannelColorMemory - Remembers the colors of channels by channel name.
* ChannelNames - Shortens channel names in the chatframe.
* ChannelSeparator - Separates various channel options in the Blizzard UI (default=on).
* ChatFrames - Options for manipulating chat frames.
* ChatLink - Enables item linking in all channels (default=CHATLINKmode).
* Editbox - Options for editbox position, width, and backdrop alpha (default=attachedTop,widthChatFrame1,visibleBackdrop).
* EventNames - Toggles showing event names on and off (default=off).
* Fading - Toggles the fading in chat windows on and off (default=off).
* FontSize - Sets the font size for chat windows (default=12).
* Highlight (text highlighting options coming soon)
* History - Expands chat history options.
* Justify - Sets the justification for chat windows (default=Left).
* Keybindings - Adds keybindings for different chat channels.
* PlayerNames - Color player names by class, set brackets around player names (default=angledBrackets).
* PopupMessage - Displays chat with your name in a pop up window.
* Scroll - Enables mousewheel scrolling for chat windows (default=on).
* StickyChannels - Toggles sticky of different chat channels on and off (default=on).
* TellTarget - Adds a slash command (/tt) to send a message to your target (default=on).
* Timestamps - Adds timestamps to chat windows (default=on).
* UrlCopy - Makes URL copying easy (default=on).
* Who - Perform a /chatwho on selected channel.
Reporting Bugs and Requesting Features
Google Project:
http://code.google.com/p/prat/
Google Group:
http://groups.google.com/group/wow-prat
Wiki Pages:
* Prat
* Prat/Commands
* Prat/Reported Issues & Known Bugs
* Prat/Feature Requests & Planned Changes
It is Beta 1, you will lose settings in the upgrade process. Please use the issue tracker to report issues.
Report issues using the google tracker: http://code.google.com/p/prat/issues/list
The update was done as a merge to prevent forking the codebase. Welcome to the Prat 2.0 open beta. Your participation is greatly appreciated.
Actually, it was a new folder. Deleted Prat1 and made a new folder and did a check out.
THe problem was you were trying to update at the same time i was trying to complete the merge.
You no longer need an SVN client, you can use WAU to keep updated since Prat is now on the trunk
At first let me say that Prat os the most complete chat related addon out there. It enabled me to delete a whole bunch of other addons.
With the latest version r23948 i get the following error message:
I am on a german client. I have checked the file 'ChannelNames.lua' and 'Guild' is correctly translated as 'Gilde' within the function. Can you please have a look at this?
Best regards
X-buZZ
The Locals need to be completely redone
L:RegisterTranslations("deDe", function() return {
["ChannelNames"] = "Kanal Name",
["Channel name abbreviation options."] ="Kanal Namen Abk\195\188rzungsoptionen",
["Replace"] = "Ersetze",
["Toggle replacing this channel."] = "Schaltet das Ersetzen dieses Kanals ein.",
["Off"] = "Aus",
["Turn off this channel."] = "Schaltet diesen Kanal aus",
["Set"] = "Einstellen",
["Channel %d"] = "Kanal %d",
["%s settings."] = "%s Einstellungen.",
["Use a custom replacement for the chat %s text."] = "Benutze eigenen Namen f\195\188r den Chat %s Text.",
["space_name"] = "Zeige Leerstelle",
["space_desc"] = "Aktiviere eine zus\195\164tzliche Leerstelle nach dem eigenen Kanalnamen.",
["colon_name"] = "Zeige Doppelpunkt",
["colon_desc"] = "Aktiviere das hinzuf\195\188gen eines Doppelpunkts nach dem eigenen Kanalnamen.",
} end)
Yeah, I disabled them due when trying to locate the cause of the pet action bar tainting. I will turn them back on.
Would love to see these being readded! The show reminder button is awesome!
Keep up the good work....
ChannelSticky.lua:
L:RegisterTranslations("deDE", function() return {
["ChannelSticky"] = "Sticky Kan\195\164le",
["Chat channel sticky options."] = "Chat Kanal Sticky Optionen",
["ChatType"] = "Chat Art",
["Per chat type options."] = "Einstellungen nach Chat Art",
["Channel"] = "Kanal",
["%sSticky"] = "%s Sticky",
["Toggles sticky on and off for %s."] = "Schaltet Sticky an und aus f\195\188r %s.",
["Sticky Frame Chat Type"] = "Sticky Chat-Fenster Typ",
["Toggle remembering the chat type last used per chat frame."] = "Aktiviere die Erinnerung an den letzten Chat Typ der von diesem Chat-Fenster benutzt wurde.",
} end)
ChatLink.lua
L:RegisterTranslations("deDE", function() return {
["ChatLink"] = "ChatLink",
["Chat channel item link options."] = "Chat Kanal Item Link Optionen",
["cm_name"] = "ChatManager",
["cm_desc"] = "Aktiviere das Senden von Items im Cirk\" ChatManager Format.",
["clink_name"] = "ChatLink",
["clink_desc"] = "Aktiviere das Senden von items im ChatLink Format.",
} end)
CopyChat.lua
L:RegisterTranslations("deDE", function() return {
["CopyChat"] = "Chat kopieren",
["Copy text from the active chat window."] = "Ein Modul zum kopieren von Text aus dem Chat.",
["Copy Text"] = "Kopieren",
["Copy all of the text in the selected chat frame into an edit box"] = "Kopiert den gesamten Text im ausgew\195\164hlten Chatfenster in das Editierfeld.",
["showbutton_name"] = "Kopier Knopf",
["showbutton_desc"] = "Zeige einen Knopf am Chat-Fenster",
["showbutton_perframename"] = "Fenster%dKnopf",
["showbutton_perframedesc"] = "Zeige einen Knopf am Chat-Fenster %d",
} end)
TellTarget.lua
L:RegisterTranslations("deDE", function() return {
["TellTarget"] = "Sage Ziel",
["Adds telltarget slash command (/tt)."] = "F\195\188gt das Ziel Fl\195\188stern (TellTarget) Slash Kommando (/tt) hinzu.",
["Target does not exist."] = "Ziel existiert nicht.",
["Target is not a player."] = "Ziel ist kein Spieler.",
["No target selected."] = "Kein Ziel ausgew\195\164hlt.",
["NoTarget"] = "Kein Ziel",
} end)
It is Beta 1, you will lose settings in the upgrade process. Please use the issue tracker to report issues.
Report issues using the google tracker: http://code.google.com/p/prat/issues/list
The update was done as a merge to prevent forking the codebase.
Welcome to the Prat 2.0 open beta. Your participation is greatly appreciated.
Icompatibilities with other chat mods:
The internal implementation has been drasticaly changed. Prat not interoperate with most chat mods. However, we are providing what we believe to be an "open framework for chat mods". We will provide basic services which chatmods need which in turn should make thier implementations trivial.
Some of this funtionality is available now, the remainder of what is planned should be completed within the next couple weeks.
If you are interested in developing a chat mod for Prat 2.0, or migrating your mod to use the Prat Framework, please contaact us.
Some of services provided:
1) Chat message segmentation and parsing
Prat breaks the chat string down into over 20 sections which supporting addons can modify without worrying about parsing the chat lines. For example, and addon can retrieve the Player's name, his server, the name of the chat channel its zone, each segment of the player link, etc in addition to edge sentinels which bracket every value.
The chat line is broken into these major sections:
PRE CHANNELNUM CHANNEL ZONE TYPEPREFIX FLAG PLAYERLINK PLAYER SERVER TYPEPOSTFIX MESSAGE POST
I have left out the slots which bracket the edge of every value for brevity.
So if you make a mod that can format the SERVER name's, it can operate without worrying about anything but filling in the value of SERVER when ever you see it.
We will also be providing basic pattern matching functionality to allow you to match text and filter, highlight, perform actions, etc.
Finally and still in development are the chat command and outbound text filtering services. This provides an organized way to control outgoing chat text. In this category are mods like chatlink, and other mods which add commmands like tell target or retell.
The unltimately goal is to have Prat modules which only do enough work to provide thier feature and no more. And to reduce the complexity of writing and maintaining chat mods. We hope to attract other authors to write thier own plugins which ustilze the framework. So instead of having 7-8 mods hooking the chatframes and parsing messages, you only have only 1 leaving the mods to focus on doing thier thing.
So again, welcome to the 2.0 beta, and thanks for all your help
They look like
pcffffffff pHitem:3665:0:0:0:0:0:0:61407264ph[Curiously Tasty Omelet]
Changing all possible setting combinations of the Chatlink module doesn't help, as does not disabling the module.
Clearing the flag "Do the actual chat replacement" makes it go away.
This channel is also used for GEM (guild event manager) communication and GEM is running. As i understand it GEM also tries to make linking in user created channels possible. Probably there is now a clash between GEM and Prat.
It worked with Prat 1.0, though.
is prat 2.0 a seperate download in the ace updater?