Chris Jones
15c0138dc3
Fix the config filename when saving
2010-03-31 09:25:45 +01:00
Chris Jones
2f5c494f68
Go back to using the real config file name
2010-03-30 23:49:05 +01:00
Chris Jones
0232e0b19a
Remove some unused default configs
2010-03-30 22:50:46 +01:00
Chris Jones
bbdf055477
Rather than having people use an ugly value of -1 for infinite scrollback, have it as a separate setting, with all of the extra gubbins involved in making that work neatly. Closes LP #532513
2010-03-24 13:22:37 +00:00
Chris Jones
2ce78b7903
Add the ability to inhibit config saving
2010-03-10 12:51:16 +00:00
Chris Jones
ffc6a67e03
Don't blat the default layout with an empty one
2010-03-05 12:29:02 +00:00
Chris Jones
950da4dec3
pylint cleanups
2010-03-02 20:35:06 +00:00
Chris Jones
da7e7850b0
Add support for window sizes in the layout
2010-02-27 15:18:08 +01:00
Chris Jones
64a0f70c41
Build out support for containers to report a position to the layout. This now works for Windows, but will require significantly more work for Paneds
2010-02-27 14:55:38 +01:00
Chris Jones
bdac9e620a
Revert that and instead make the Terminal usage of the options object be more optional
2010-02-21 11:58:17 +00:00
Chris Jones
f9e5a69c71
Initialise command_line_options
2010-02-21 11:55:29 +00:00
Chris Jones
b3eaa85cc9
default to an icon based terminal bell indication, and add such an icon from Tango.
2010-02-11 13:05:12 +00:00
Chris Jones
07a142c6a0
Cache gconf values, and handle them changing
2010-02-09 22:33:47 +00:00
Chris Jones
79a340539b
Make the titlebar presence configurable by config file and context menu. If it's missing, draw a frame around the Terminal, to indicae colour
2010-02-09 00:23:21 +00:00
Chris Jones
eb7fcf5189
Expose cursor blinking and colour in the prefs editor
2010-02-08 22:10:59 +00:00
Chris Jones
8307951001
Catch any/all exceptions from config file parsing
2010-02-08 21:11:38 +00:00
Chris Jones
ad5c927d15
Add a section to the global config for setting the various fg/bg colours of the titlebars
2010-02-08 20:22:08 +00:00
Chris Jones
f99fbf1094
Don't fail to find a plugin section
2010-02-07 12:41:08 +00:00
Emmanuel Bretelle
4c36b25341
Workaround missing 'plugins' entry in configuration
2010-02-06 16:02:16 +01:00
Chris Jones
1aadbae30b
Rework layout config to flatten and build up trees
2010-02-02 00:39:41 +00:00
Chris Jones
678057a0d3
First run at layout loading, creating, enumerating and saving. It sucks and works poorly at the moment, but here it is
2010-02-01 12:11:44 +00:00
Chris Jones
f5dfd404c9
run the layouts config sections through dict_dff to avoid saving defaults unnecessarily
2010-01-31 16:24:20 +00:00
Chris Jones
0501ceb8d4
The beginnings of a layout editor
2010-01-30 00:27:57 +00:00
Chris Jones
a5ac05bcc9
Add a new shortcut to take over duties of spawning a new Terminator process
2010-01-29 23:49:16 +00:00
Chris Jones
ff56fedcf0
Refactor save() a little to reduce the branch complexity, and tidy up some other parts to appease pylint
2010-01-22 18:54:36 +00:00
Chris Jones
df992c284e
Look up GNOME system font and focus settings via gconf
2010-01-21 21:39:05 +00:00
Chris Jones
c00cf071c7
Fix the palette default to be the same as gtkcolorpickers produce, i.e. lower case
2010-01-21 21:20:01 +00:00
Chris Jones
abe9b24518
Implement titlebar colours
2010-01-18 23:27:22 +00:00
Chris Jones
3f214bf686
Restore ctrl-tab/ctrl-shit-tab
2010-01-18 20:39:46 +00:00
Chris Jones
0e01618dfa
isdir is in os.path, not os
2010-01-15 23:32:16 +00:00
Chris Jones
62d5672a88
Extent Config test coverage, and make del_profile() more robust
2010-01-14 23:29:47 +00:00
Chris Jones
375d272ee8
make the config directory if it doesn't exist, and don't explode if we can't write it
2010-01-14 22:58:41 +00:00
Chris Jones
df7a3b978d
The titlebar is no longer optional, it probably never should have been, it's just too complicated
2010-01-13 23:06:42 +00:00
Chris Jones
02c1a482df
Add a get_profile() to Config and use it in Terminal::set_profile() to make sure we don't set a profile that already is
2010-01-13 23:02:17 +00:00
Chris Jones
adfaf600fa
Store the command line options in Config rather than overwriting parts of it, and passing them around
2010-01-11 20:56:30 +00:00
Chris Jones
949dc81574
Clear up some import errors found by pyflakes
2010-01-11 20:03:54 +00:00
Chris Jones
976e3124f7
two lines of debugging for each Config() lookup is mad, drop it to one
2010-01-10 23:47:15 +00:00
Chris Jones
27d0a13330
print more useful errors when the config file format is invalid, and update the configspec generator to know that our undefined default keybindings are now '' instead of None
2010-01-10 17:36:55 +00:00
Chris Jones
da7f1a6ea1
renaming the current profile wasn't updating Config.profile with the new value. Now it is.
2010-01-10 00:53:27 +00:00
Chris Jones
180ccbbf03
Hook up the keybindings tab in the preferences editor. Loads and saves
2010-01-10 00:20:24 +00:00
Chris Jones
80e0926a05
remove some old data, fix up a few defaults that didn't quite match up with reality, and implement the final bits of functionality to make the OK button DTRT
2010-01-09 17:42:59 +00:00
Chris Jones
92e7eb1dff
support adding and removing profiles, and returning their values to Config() when switching between them
2010-01-09 15:51:56 +00:00
Chris Jones
594ee47912
Complete the Terminal Command profile tab. Teach the colour scheme picker how to exist in the config and how to be controlled by the prefs UI
2010-01-08 23:51:45 +00:00
Chris Jones
4aa1b50fe6
Change the way window state config works. Initial workings of preferences window.
2010-01-08 01:02:49 +00:00
Chris Jones
68ade515eb
Add support for disabling modules and add CustomCommandsMenu and TestPlugin to it
2010-01-06 00:27:58 +00:00
Chris Jones
710b8a4834
Plugins that have never given us config before need a dict created for them before they can set values
2010-01-05 22:15:56 +00:00
Chris Jones
299e4cc5a8
Add plugin config API
2010-01-05 21:44:12 +00:00
Chris Jones
91830e22df
Move configobj into its own subdirectory, since its a separate upstream product
2010-01-05 00:03:16 +00:00
Chris Jones
dbe683e259
hey look it's 2010 already
2010-01-04 23:56:28 +00:00
Chris Jones
8141a3496d
call sys.exit() with doctest failure results
2009-12-30 11:26:22 +00: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
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
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
8d3158c152
Make ConfigBase() do some debugging. Hugely verbose, but potentially very useful for now
2009-12-22 00:32:21 +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
0b5ac38793
Hand merge in from trunk
2009-12-19 02:08:35 +00:00
Chris Jones
ac1a58e8b3
Always a good idea to call your new function
2009-11-20 16:52:26 -06:00
Chris Jones
025c5d3dd1
Fix up config.py slightly to make pylint happier
2009-11-20 16:46:50 -06:00
Chris Jones
4284cf67ee
Start making some navigation work
2009-11-09 22:33:17 +00:00
Chris Jones
d9e9cf364a
ditch extreme_tabs, it's a terrible feature. Flesh out the terminal context menu some more, including figuring out how we will track whether a window is in a zoomed state - gobject properties
2009-10-07 00:08:13 +01:00
Chris Jones
0f5cf7c496
remove titletips, it's a terrible option
2009-09-02 23:17:08 +01:00
Chris Jones
1f156248ee
Refactor the config. For now it's defaults only
2009-08-18 12:46:41 +01:00
Chris Jones
5d1ea593d8
migrate dbg,err to util.py
2009-08-08 01:22:31 +01:00
Chris Jones
945d2f277d
It's about time we enabled real transparency by default and just dealt with any fallout
2009-07-30 10:53:08 +01:00
Chris Jones
13c11e1475
merge in trunk
2009-07-13 23:36:45 +01:00
Chris Jones
ac56c18501
Add support for spawning new windows as new Terminator processes. Closes LP #381193
2009-05-28 10:29:56 +02:00
Chris Jones
69265ec036
Add keybindings for group_all, ungroup_all, group_tab and ungroup_tab. Closes LP #376351
2009-05-23 18:05:50 +02:00
Chris Jones
7529d1c32f
Improve PEP 8 compliance
2009-05-07 02:35:23 +01:00
Chris Jones
b0302e6fab
split out translation support into an separate file so it can be more correctly included everywhere
2009-05-07 01:44:42 +01:00
Chris Jones
841fa18c58
improve exception handler
2009-05-07 01:25:51 +01:00
Chris Jones
9b530862e7
Make the zoomed/maximised titlebar optional
2009-04-09 11:23:33 +01:00
Chris Jones
5e78509499
Fix scrolling on patched VTEs. Note that this will only work if the patched VTEs also have python support for their modifications. Closes LP #291184
2009-03-26 10:36:47 +00:00
Chris Jones
711986766a
Allow user configurability of the cursor shape. Patch from Jordan Callicoat. Closes LP #348244
2009-03-25 12:58:55 +00:00
Chris Jones
44e958f53e
Allow user configurability of the cursor colour. Patch from Jordan Callicoat. Closes LP #348231
2009-03-25 12:48:27 +00:00
Chris Jones
de62f1bda4
Make the bell options more explicit and allow multiple bell actions, including a new one to set the window manager urgent hint. Closes LP: #272749
2009-03-20 10:13:29 +00:00
Chris Jones
4944ccabe7
make tab bar more configurable. Closes LP: #287307
2009-03-20 00:23:37 +00:00
Chris Jones
e14e400b6c
since values is no longer static, we need to call the base class __init__ to initialise it
2009-03-06 11:30:56 +00:00
Chris Jones
2fb6b9b329
be more careful about static class properties
2009-03-06 11:25:15 +00:00
Chris Jones
46f17589da
quite why people want this, I don't know, but they do. see LP question 59635
2009-02-02 23:01:00 +00:00
Chris Jones
c3a2b5d2bb
remove references to quake, it's unhelpful. It's now 'hide_window'
2009-01-25 18:33:22 +00:00
Chris Jones
920a668991
Merge in Chris James' quake branch.
2009-01-25 14:28:27 +00:00
Chris Jones
4236e44e5f
Merge in Chris James' quake branch.
2009-01-25 14:26:20 +00:00
Thomas Hurst
bc24c98164
Merge in jkakar's quick tab switching branch, with minor changes. To avoid bikeshed issues, the bindings are disabled by default.
2009-01-21 08:29:32 +00:00
Jamu Kakar
d9205d83d9
- Alt-N switches to the tab at index N for values of 0 >= N <= 9.
...
This makes switching to arbitrary tabs very quick.
2009-01-20 21:18:59 -08:00
Chris Jones
8c62f84357
Track gconf cursor blinking in such a way that it handles the newer GNOME Terminal setting and the older one. Closes LP #283107
2009-01-15 00:02:01 +00:00
Chris Jones
2d57b7888d
Fix GNOME Terminal profile loading. Patch from Y W Sing. Closes LP #304016
2009-01-14 22:57:24 +00:00
Stephen Boddy
d205c35a24
Make the colours of the titlebars like clusterm (much clearer) and configurable
2009-01-07 19:37:59 +01:00
Chris Jones
f7d649d724
completely remove the config file monitoring, as it has too much potential for failure and very little win to offer in return
2008-12-26 16:31:03 +00:00
Chris Jones
d34a2bb12e
fix a print to be a dbg() and disable inotify watching of the config file, it seemingly having some problems
2008-12-26 16:15:48 +00:00
Kees Cook
5c3d3c5c2e
first pass at direction terminal control
2008-12-18 23:41:55 -08:00
Chris Jones
4b69bf47aa
Add keyboard shortcuts for reset and reset/clear. Closes LP#287634
2008-11-17 10:42:34 +00:00
Thomas Hurst
901b5a8ea4
Use "%r" % foo instead of "%s" % repr(foo). No functional changes.
2008-11-04 17:01:00 +00:00
Chris Jones
5ffe50012b
put a default size back in the default font so it's a valid pango name
2008-11-03 23:14:06 +00:00
Thomas Hurst
cb248ac357
Introduce indented config file handling code, disabled for now since nothing uses it, and it has the potential for breaking currently working configs, since indent errors are difficult to recover from sensibly.
2008-11-01 11:31:12 +00:00
Thomas Hurst
c3c6e3713d
Don't fail horribly if the user doesn't have a config file
2008-11-01 10:07:58 +00:00
Thomas Hurst
e244329725
Make gio optional; it's way too soon to expect everyone to have this. Fix keybindings error handling.
2008-10-28 22:24:42 +00:00
Chris Jones
9c75e20492
Add file watching support to ValuestoreRC. Also slightly improve a debug statement in the root config class
2008-10-23 23:29:26 +01:00
Chris Jones
91b8527e2e
Ignore a gconf change signal if it's just for the profile's visible_name, which gnome-terminal seems to set on every run. Should fix LP #268476
2008-10-16 16:30:42 +01:00
Chris Jones
28b9c8e1d2
remove worthless testing code from config.py and extend the test suite a little
2008-09-23 00:28:57 +01:00
Chris Jones
95d4eed6ce
Actually return when we deactivate the gconf object instead of trying to do gconf things with it
2008-09-13 01:58:48 +01:00
Chris Jones
f14b544668
Apply patch from 'SXW', closing LP #237796
2008-09-04 22:27:13 +01:00
Chris Jones
e8be0f326c
fix bogus gconf call
2008-09-02 15:25:12 +01:00
Chris Jones
11df8b9783
python 2.4 hates Exception.message, and it's not really crucial here anyway, so ditch it. Closes LP #262452
2008-08-29 14:09:29 +01:00
Thomas Hurst
3c77ec10c1
Add support for tab_position.
2008-08-28 17:08:15 +01:00
Thomas Hurst
6016f06775
Instead of a boring old MessageDialog, display errors in a Dialog with a scrolling text gadget containing errors.
...
This is a lot of effort for a case that should be rather unlikely; i.e. the user having dozens of errors in their config.
IndentErrors might make this more likely in future. This may be reverted in future, but at least it'll be here if we need it.
2008-08-28 16:34:34 +01:00
Thomas Hurst
f9d96d7210
print -> dbg
2008-08-27 00:58:27 +01:00
Thomas Hurst
32fc1f5082
Only set a setting if the entire line parses
2008-08-27 00:55:57 +01:00
Thomas Hurst
a63c1358ca
Use a callback for getting settings from ConfigFile, so we can validate them as they come in.
2008-08-27 00:30:13 +01:00
root
7ad31a0ee6
Prevent g-t profile failure
2008-08-28 13:56:16 +01:00
Thomas Hurst
c2524cec47
Actually set a colour value. Only set config options if the entire line parses correctly.
2008-08-27 01:51:37 +01:00
Thomas Hurst
d01ed3554f
Handle bogus config values better; err() and keep going rather than raising an exception.
...
If there are exceptions, return to eating them for 0.10.
2008-08-26 23:32:29 +01:00
Thomas Hurst
31d598bb9b
Few gconf fixes; use_system_font should now work again
2008-08-26 21:43:07 +01:00
Thomas Hurst
9baf905cab
Convert the stderr spam into a gtk.MessageDialog. Format and localise the error.
...
Handle unterminated quoted string errors better
2008-08-26 17:04:53 +01:00
Thomas Hurst
a89f18e095
Make config parsing errors non-fatal. Spam stderr with any errors encountered.
2008-08-26 15:41:27 +01:00
Thomas Hurst
0a6acc19dc
Ctrl-Tab and Ctrl-Shift-Tab are actually valid keybindings. Teach keybindings.py that some items may have more than one keybinding by supporting optional tuples in defaults.
2008-08-23 23:57:51 +01:00
Thomas Hurst
f37324303b
Remove some keybinding changes that were only meant for local testing.
2008-08-23 10:01:50 +01:00
Thomas Hurst
f685f3e317
source.keybindings -> source['keybindings'] now.
2008-08-22 06:45:31 +01:00
Thomas Hurst
4dafba1270
Don't use __getattr__ in config stores; use __getitem__ and talk to them using store[key] instead of getattr(store, key). Simpler and maybe faster (1 method lookup vs failed attribute lookup + method lookup).
2008-08-22 03:05:22 +01:00
Chris Jones
93fad0cee1
remove duplicate config default
2008-08-21 23:06:56 +01:00
Thomas Hurst
7f1dc2729a
Really.
2008-08-15 17:27:56 +01:00
Thomas Hurst
6e638af1e7
Defaults have moved
2008-08-15 17:27:16 +01:00
Thomas Hurst
ca66d55bea
Make f11_modifier work again.
2008-08-15 13:40:10 +01:00
Thomas Hurst
c0ab0e3f34
Introduce a cut-down version of my .ini parser; this one doesn't do anything special with indents, and just builds a simple dict on parse. It does introduce the same error handling (other than that for indenting), so some previously working (but highly dubious) configs might break.
...
Hook up a [keybindings] section, to override the default ones now in config.py; teach TerminatorConfig to merge configured keybindings from available sources; gconf support shouldn't be far away.
2008-08-15 04:11:24 +01:00
Thomas Hurst
2d6f1c0485
r459 breaks; regexp probing, since \< is valid in both POSIX and GNU regexps; they just don't mean the same thing. This means on !GNU, URL matching silently breaks and POSIX word boundries are never tried.
...
Since the VTE-warning is annoying people, rather than back it out, try to make everyone happy; Linux now only uses GNU, !Linux always probes, and there's now a try_posix_regexp configuration option who's default reflects this. Hopefully we will Just Work in most environments.
2008-08-03 03:09:38 +01:00
Chris James
a075a6cc62
Quake mode
2008-07-28 02:10:30 -05:00
Chris Jones
202a0fd3b2
reduce whinging from pylint
2008-07-22 12:03:30 +01:00
Chris Jones
e6fd2fc5c8
fix some dbg calls to format consistently with the others
2008-07-13 00:36:53 +01:00
Emmanuel Bretelle
9d97e21aa8
Fixing LP#247893
...
XDG_CONFIG_HOME is not properly handled
2008-07-12 15:35:36 +01:00
Chris Jones
1585d73b10
Yield to bug 242852 and failsafe on transparency. I've added a FAQ page to the website which prominently explains how to enable real transparency
2008-07-07 22:47:02 +01:00
Emmanuel Bretelle
be6229cb9b
LP#242852 comment 19 seems to say that real_transparency is causing the issue.
...
Re-pushing the code removed in rev 398
* added an new conf parameter (enable_real_transparency defaulting to True) so real_transparency can be disabled
* This should be enough to push the release :)
2008-07-06 14:01:44 +01:00
Chris Jones
26c3722196
Set saner release defaults. Should close LP #237866
2008-06-29 02:01:06 +01:00
Chris Jones
f92cb72a6a
Hook -d up to terminatorlib.config.debug properly. Closes LP #243753
2008-06-28 21:20:49 +01:00
Thomas Hurst
254ecec810
Add close_button_on_tab option, defaulting to true. Set to false to turn off close buttons on tabs.
2008-06-27 18:54:42 +01:00
Chris Jones
d38a42b580
split Terminator and TerminatorTerm into their own library files
2008-06-27 00:24:52 +01:00
Thomas Hurst
3717c8af1f
Add copy_on_selection, defaulting to false, which automatically copies selections to the clipboard. Resolves LP #241594 .
2008-06-20 16:18:23 +01:00
Chris Jones
ebf128c1d8
Surely these should not cause Terminator to throw exceptions, we should ignore useless data.
2008-06-18 23:40:56 +01:00
Emmanuel Bretelle
5254ede2da
Enable switch to next/previous term within the same tab
...
* closes LP#238205
2008-06-17 21:40:04 +01:00
Chris Jones
70b6588697
Only use ~/.config/terminator/config instead of ~/.terminatorrc. Closes LP #238070
2008-06-17 01:20:37 +01:00
Chris Jones
c1ee7f2b9c
Support a setting which allows the removal of all bells (ie audible and visual). Closes LP #237758
2008-06-17 00:36:55 +01:00
Chris Jones
327eadd84e
Add an err() and use it
2008-06-17 00:10:44 +01:00