Commit graph

19 commits

Author SHA1 Message Date
Peter Feigl
102f58d7a4 Use the S-Expression structured printer in notmuch-show, notmuch-reply and notmuch-search.
This patch uses the new S-Expression printer in the notmuch CLI (show,
search and reply). You can now use --format=sexp for any of them.
2012-12-08 09:30:19 -04:00
Peter Feigl
1bf3720b6e Rename the -json printer functions in notmuch-reply and notmuch-show to generic -sprinter functions.
All the structured output functions in notmuch-reply and notmuch-show
are renamed to a generic name (as they do not contain any json-specific
code anyway). This patch is a preparation to actually using the new
S-Expression sprinter in notmuch-reply and notmuch-show.
2012-12-08 09:28:19 -04:00
Austin Clements
ae459a3f4c devel: Document schemata in STYLE 2012-11-08 09:49:54 -04:00
Austin Clements
70dacc1fd9 devel: Add Reply-to to the schemata
The code got out of sync with the documentation in 7d3c06dc.
2012-11-08 09:49:22 -04:00
Tomi Ollila
439fe710eb uncrustify.cfg: added 3 new types for uncrustify to know
Added FILE, notmuch_show_params_t and sprinter_t to be
types when uncrustifying sources. This affect spacing
when uncrustify is deciding for type declaration instead
of binary multiplication operation.
2012-11-07 08:00:03 -04:00
Tomi Ollila
a0ce84c3af devel: add release-checks.sh
Currently Makefile.local contains some machine executable release
checking functionality. This is unnecessarily complex way to do it:

Multiline script functionality is hard to embed -- from Makefile point
of view there is just one line split using backslashes and every line
ends with ';'. It is hard to maintain such "script" when it gets longer.

The embedded script does not fail as robust as separate script; set -eu
could be added to get same level of robustness -- but the provided
Bourne Again Shell (bash) script exceeds this with 'set -o pipefail',
making the script to fail when any of the commands in pipeline fails
(and not just the last one).

Checking for release is done very seldom compared to all other use;
The whole Makefile.local gets simpler and easier to grasp when most
release checking targets are removed.

When release checking is done, the steps are executed sequentially;
nothing is allowed to be skipped due to some satisfied dependency.
2012-09-05 08:33:45 -03:00
Mark Walters
ed93d79199 schemata: update for --body=true|false option
Previously body: was a compulsory field in a message. The new
--body=false option causes notmuch show to omit this field so update
schemata to reflect this.
2012-07-24 15:49:33 -03:00
Austin Clements
e7f5302114 Add missing "tags" field to search schema
This field is output by search, but it didn't make it into the
documentation.
2012-07-09 15:45:37 -06:00
Mark Walters
51a7cd3ddb Minor correction to devel/schemata
In id:"87sjdm12d1.fsf@awakening.csail.mit.edu" Austin pointed out that
devel/schemata needs a slight correction with the new
--entire-thread=false option. This is that correction.
2012-06-30 08:21:36 -03:00
Mark Walters
fdce20d365 Update devel/schemata for --entire-thread=false
Also remove the Json --entire-thread item from devel/TODO.
2012-06-29 22:33:13 -03:00
Tomi Ollila
00a8581e4d uncrustify.cfg: comments and more types
Changes to devel/uncrustify.cfg:

* Updated header comment to state this is config file for *notmuch*.
* Added comment about the reason of 'type' keyword used.
* Added some more custom types woth 'type' keyword.
* Have (every) multiline comment lines start with '*'.
2012-06-03 13:39:57 -03:00
Austin Clements
98cad5a207 Sync schemata with current code structure
The schema itself hasn't changed, but many of the references to
functions in notmuch-show.c were out of date.
2012-04-15 09:42:14 -03:00
Adam Wolfe Gordon
5abc9c1097 schemata: Add documentation for JSON reply format. 2012-03-19 21:56:25 -03:00
Adam Wolfe Gordon
06a34f1407 TODO: Add replying to multiple messages 2012-03-19 21:53:30 -03:00
Austin Clements
661c357123 Document the JSON schemata used by show and search 2012-02-27 22:32:49 -04:00
David Bremner
022a281080 STYLE: Initial draft of coding style document
This was edited by (at least) Austin, Tomi, and myself.

Amended with Austin's proposed wording for indentation.
2012-02-12 11:58:19 -05:00
Tomi Ollila
9e701465eb uncrustify.cfg: label indent, some known types, not, # and ##
Adjusted some uncrustify variables to get closer to prevailing style:

* Label indent (for goto) relative to current indentation.
* Registered GMimeObject and mime_node_t being as types.
* Space after ! (not) operator.
* No space after 'stringify' (#) preprosessor token.
* No spacing change around ## (option not versatile enough).

There are at least 3 cases where attention needs to be paid:

* If there is newline between function name and open paren in function
  call, the paren (and args) are indented too far right.
* #define HOUR (60 *MINUTE) -- i.e. no space after star (*).
* void (*foo)(args) -- i.e no space between (name) and (args).
2012-01-25 07:40:50 -04:00
David Bremner
871fc32837 uncrustify.cfg: initial support for notmuch coding style
Uncrustify is a free (as in GPL2+) tool that indents and beautifies
C/C++ code. It is similar to GNU indent in functionality although
probably more configurable (in fairness, indent has better
documentation).  Uncrustify does not have the indent mis-feature of
needing to have every typedef'ed type defined in the
configuration (even standard types like size_t).

This configuration starts with the linux-kernel style from the
uncrustify config, disables aggressive re-indenting of structs,
and fine tunes the handling 'else' and braces.

In an ideal situation, running uncrustify on notmuch code would be
NOP; currently this is not true for all files because 1) the
configuration is not perfect 2) the coding style of notmuch is not
completely consistent; in particular the treatment of braces after
e.g. for (_) is not consistent.

Some fine tuning by Tomi Olilla.
2012-01-21 15:11:25 -04:00
David Bremner
d51b784214 Start devel directory for developer tools and documentation.
We had a lot of back and forth about the name of this directory, but
nothing very conclusive. In the end, I just chose "devel" just to move
on.
2012-01-17 22:53:31 -04:00