Commit Graph

1645 Commits

Author SHA1 Message Date
Chris Jones
6058727cdb Port RainCT's LP Code URL handler to a plugin 2010-01-02 01:40:26 +00:00
Chris Jones
8141a3496d call sys.exit() with doctest failure results 2009-12-30 11:26:22 +00:00
Chris Jones
0b3cb3df9b Merge in improved apturl regexp and support for launchpad code URLs from RainCT. Closes LP #501461 2009-12-30 10:30:00 +00:00
Chris Jones
a13581a4c8 Handle exceptions in a way that doesn't make python 2.5 really angry 2009-12-30 01:50:47 +00:00
Chris Jones
714425dfbe Fix apturl handler name and rename LaunchpadURLHandler to LaunchpadBugURLHandler since we are likely to grow a handler for code URLs 2009-12-30 01:50:18 +00:00
Siegfried-Angel Gevatter Pujals
d82733d6a3 Improve the apturl regex to avoid bad matches. 2009-12-30 02:25:05 +01:00
Chris Jones
4cfc1c6fd2 Improve debugging relating to URL mangler plugins 2009-12-30 01:05:51 +00:00
Siegfried-Angel Gevatter Pujals
b9805a5fbd Add support for +junk branches. 2009-12-30 02:02:42 +01:00
Siegfried-Angel Gevatter Pujals
708eaaa2a6 Undo my indentation changes, I misunderstood the code. 2009-12-30 01:50:47 +01:00
Siegfried-Angel Gevatter Pujals
9d49e9ade3 Fix both problems my previous commit had, and fix some indenting
issues in the code because of which LP URIs would not be recognized
when the 'full_uri' regex is used (iiuc).
2009-12-30 01:46:38 +01:00
Siegfried-Angel Gevatter Pujals
97edd822ef Recognize lp:<branch> links
Initial attempt at fixing bug #501461, not working 100%.
2009-12-29 22:52:13 +01:00
Chris Jones
1e187b0333 make the configspec debug output named better 2009-12-29 01:37:32 +00:00
Chris Jones
98015093d8 Add a test to make sure that we correctly load boolean types as python bools 2009-12-28 22:16:47 +00:00
Chris Jones
dc9ae3363d Add ConfigObj's validate.py and construct a config specification and use it to validate the configuration. Most crucially this causes ConfigObj to know about the correct types it should be converting the different entries into 2009-12-28 22:06:23 +00:00
Chris Jones
f690cd6e5f Get ProfileEditor to the barest state of functionality possible 2009-12-27 02:32:16 +00:00
Chris Jones
4c025273c9 rename and import the profile editor 2009-12-27 01:01:34 +00:00
Chris Jones
896bd1af35 Start the epic refactor of the profile editor 2009-12-27 00:59:44 +00:00
Chris Jones
945a547344 pluralise 2009-12-27 00:59:29 +00:00
Chris Jones
ee81bd4f76 Make the terminal context menu list available profiles and switch between them 2009-12-26 20:09:16 +00:00
Chris Jones
2a56e328ac Add methods to Config to list and delete profiles 2009-12-26 19:52:58 +00:00
Chris Jones
f09e9947cd Make the config loading and saving significantly more functional, but also horrifyingly complex, with very little error handling 2009-12-26 19:43:01 +00:00
Chris Jones
825abbb658 Flesh out Config.load() so it actually loads a config 2009-12-26 13:39:14 +00:00
Chris Jones
5bd1b3f9af Make sure ConfigBase() only uses a copy of DEFAULTS so we never change DEFAULTS, allowing us to add dict_diff() so we can avoid including things in the config file that aren't default 2009-12-26 01:19:42 +00:00
Chris Jones
71fcada828 add a fixme 2009-12-25 21:42:57 +00:00
Chris Jones
07f7906f86 Don't write to stdout, write to a config file, but one with a different name for now 2009-12-25 21:25:31 +00:00
Chris Jones
f91d76e9b4 Add ConfigObj 4.6.0 from http://www.voidspace.org.uk/python/configobj.html. Add a really simple implementation of config saving 2009-12-25 21:22:04 +00:00
Chris Jones
60a1b085b4 Add a utility function for finding ~/.config/terminator and use it in PLuginRegistry to load plugins from the user's homedir 2009-12-24 21:35:07 +00:00
Chris Jones
4513eeafc7 Add apturl support. Closes LP #499902 2009-12-24 11:59:41 +00:00
Chris Jones
0a67d73592 Extend the url_handler plugins to include apt: support 2009-12-23 17:30:26 +00:00
Chris Jones
df317bd2cd mildly change the debugging output of objects, and handle ^C a little better 2009-12-23 16:40:54 +00:00
Chris Jones
f33dc6f28a Expand Config() test coverage a little 2009-12-23 10:09:53 +00:00
Chris Jones
8068ef656f extend testing, make ConfigBase settable, drop ConfigBase derivation from dict 2009-12-23 00:10:57 +00:00
Chris Jones
fd91711451 Add a recommends on deskbar-applet to get the global window hiding keybinding 2009-12-22 22:38:22 +00:00
Chris Jones
8d3158c152 Make ConfigBase() do some debugging. Hugely verbose, but potentially very useful for now 2009-12-22 00:32:21 +00:00
Chris Jones
9ce380ef90 port to new borg __init__() 2009-12-22 00:25:25 +00:00
Chris Jones
89425256ec port to new borg __init__() 2009-12-22 00:25:17 +00:00
Chris Jones
2c8e2d14e4 port to new borg __init__() 2009-12-22 00:25:05 +00:00
Chris Jones
4a96bf99d4 add some test coverate, split the defaults into sections and move the borg element to a new base object, converting it to use the new borg __init__ syntax. 2009-12-22 00:24:53 +00:00
Chris Jones
90c8b7e8c5 extend test coverage to ensure borg state is unique between borg types. add some debugging info and support the ability to have multiple borg classes via an ugly parameter to __init__() 2009-12-22 00:24:03 +00:00
Chris Jones
a6a1acd26d Clear up the position re licencing of the two external sources of code in our refactoring 2009-12-19 15:07:22 +00:00
Chris Jones
0b5ac38793 Hand merge in from trunk 2009-12-19 02:08:35 +00:00
Chris Jones
48e8637ca5 Add a FIXME 2009-12-18 09:24:23 +00:00
Chris Jones
fe22a9cf47 Integrate the plugin system into the context menus for Terminal 2009-12-18 00:45:08 +00:00
Chris Jones
5dc643a3b2 Add some docstrings 2009-12-17 23:30:12 +00:00
Chris Jones
30f5225884 Add crashproof code for adding URL handlers from plugins, and reacting to them 2009-12-17 23:17:32 +00:00
Chris Jones
b84f593404 port over launchpad specific URL handling from Terminal 2009-12-17 23:17:03 +00:00
Chris Jones
603da6ec16 Since PluginRegistry is a borg we can easily track if we have been loaded before and if so, not load plugins again. 2009-12-17 23:16:42 +00:00
Chris Jones
01bb454d90 stop (ab)using __subclasses__ isntead interrogating the imported plugin modules for a predefined list of the plugin classes they contain, and always instantiate them when they are imported. Add a test plugin only useful for doctest 2009-12-17 13:51:55 +00:00
Chris Jones
9029e519f9 add a test plugin 2009-12-17 12:54:47 +00:00
Chris Jones
6088084fdf handle import failures and add some very borked doctesting 2009-12-17 12:54:42 +00:00