| Commit message (Collapse) | Author | Age |
|
|
|
| |
Merge values from multiple files.
|
|
|
|
|
| |
In newer notmuch versions it no longer needs to be stored along with the
emails themselves.
|
|
|
|
| |
Useful for a quick check how long operations took.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Urwid + asyncio has been known to have very high CPU usage for 4 years
now, and it hasn't been fixed. That basically makes it impossible to
switch event loops. We can still get the asyncio syntax goodness but
using the twisted asyncioreactor and then initializing urwid with the
Twisted loop which doesn't have this problem.
Fixes #1302
|
|
|
|
|
| |
The descriptions of --help and --version are the same as used in e.g.
GNU coreutils (different from the Python default).
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Terminal colour mode can be set both in the config file and on the
command line, but a default value for the command-line option overrode
whatever was specified in the config file. Fix this.
|
|
|
|
|
|
|
|
|
| |
This prevents SettingsManager from reading the config files right when
it is isntantiated and instead waits for the main module to call
`read_[notmuch]config` with the right path.
This should prevent problems with accidentally reading the default
config paths despite being told otherwise (via commandline options)
|
|
|
|
| |
They are not needed for python >= 3.0.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use fallback, if an enviroment variable is unset *or* empty.
Bug:
- XDG_CONFIG_HOME='' alot
Problem:
Does not find the configuration file (among others), because
os.environ.get('XDG_CONFIG_HOME', '~/.config') returns '', instead of
'~/.config'.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This can create circular imports in unittests, which causes difficult to
debug errors.
Fixes #1076
|
|
|
|
|
|
|
|
|
|
|
| |
This patch does a bit of refactoring to the Settings class for it's
setup, and adds a reload method. The refactoring encapsulates the
handling of NoneType for the read_*config methods, and reworks the
constructor just a bit so that it doesn't rely on calling methods to
create instance variables.
The end result is slightly cleaner, and will be useful for adding a
reload command to alot itself.
|
|
|
|
|
|
|
|
|
|
| |
This replaces the use of type as a validator with the validator keyword.
This is both cleaner and allows the type keyword to be used for setting
the type (if it ever becomes necessary). It also has the advantage of
not opening and closing the file (thus truncating it) or breaking pipes
(like a fifo).
Fixes #996
|
|
|
|
|
| |
This simplifies the main function by pulling out the argument parsing
and validating into a separate function.
|
|\
| |
| | |
Use absolute_imports from __future__
|
| | |
|
|/ |
|
|
|
|
|
| |
This was tested with lsof(8) and the files are not open when alot is up and
running.
|
|
|
|
|
|
|
|
|
| |
This is only possible for the notmuch config file and not for the alot config
file as the former is strictly required but the latter is not. If the latter
does not exist it will be detected by the argument parser. If the former is
not given on the command line the parser will return `None` and we can
manually check if the default config file exists and else just skip the alot
config file.
|
| |
|
|
|
|
| |
Fixes the -n option.
|
| |
|
|
|
|
|
| |
This again sightly changes the help output and also the possible options for
the compose subcommand.
|
|
|
|
|
| |
Especially let the command line parser check if a file given on the command
line exists.
|
|
|
|
|
| |
The command line interface is copied as directly as possible. But at least
the help output is formatted differently.
|
|
|
|
|
|
| |
This reverts commit 581ed2987bd456d2894637a30bb5a14a4caa5f9b.
Fixes #942
|
|
|
|
|
|
|
|
| |
This patch replaces a number of uses of dict.items, dict.values, and
dict.keys with their iterative siblings. The advantage of using the
iterator version is that they don't copy the keys, values, or items, but
simply return references. This reduces memory usage and may speed up the
these operations a bit.
|
|
|
|
|
| |
several of these don't take a self argument. In one case self is needed,
in the others decorating them as static methods fixes the behavior.
|
| |
|
|
|