aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--commands/account/account.go4
-rw-r--r--commands/account/cf.go4
-rw-r--r--commands/cd.go4
-rw-r--r--commands/compose/compose.go4
-rw-r--r--commands/compose/header.go24
-rw-r--r--commands/compose/send.go7
-rw-r--r--commands/global.go4
-rw-r--r--commands/msg/archive.go6
-rw-r--r--commands/msg/copy.go8
-rw-r--r--commands/msg/delete.go2
-rw-r--r--commands/msg/invite.go5
-rw-r--r--commands/msg/modify-labels.go4
-rw-r--r--commands/msg/move.go8
-rw-r--r--commands/msg/msg.go4
-rw-r--r--commands/msg/read.go4
-rw-r--r--commands/msg/recall.go3
-rw-r--r--commands/msg/reply.go9
-rw-r--r--commands/msg/unsubscribe_test.go6
-rw-r--r--commands/msgview/msgview.go4
-rw-r--r--commands/msgview/save.go9
-rw-r--r--commands/prompt.go3
-rw-r--r--commands/set.go2
-rw-r--r--commands/terminal/terminal.go4
-rw-r--r--config/bindings.go12
-rw-r--r--config/config.go29
-rw-r--r--config/style.go3
-rw-r--r--config/triggers.go10
-rw-r--r--lib/calendar/calendar.go1
-rw-r--r--lib/crypto/gpg/gpg.go1
-rw-r--r--lib/crypto/gpg/gpgbin/encrypt.go2
-rw-r--r--lib/crypto/pgp/pgp.go6
-rw-r--r--lib/format/format.go14
-rw-r--r--lib/messageview.go11
-rw-r--r--lib/msgstore.go42
-rw-r--r--lib/oauthbearer.go1
-rw-r--r--lib/open.go1
-rw-r--r--lib/parse/hyperlinks.go8
-rw-r--r--lib/statusline/state.go9
-rw-r--r--lib/structure_helpers_test.go20
-rw-r--r--lib/templates/template.go4
-rw-r--r--lib/ui/borders.go3
-rw-r--r--lib/ui/context.go3
-rw-r--r--lib/ui/tab.go6
-rw-r--r--lib/ui/textinput.go3
-rw-r--r--lib/ui/ui.go1
-rw-r--r--models/models.go2
-rw-r--r--widgets/account-wizard.go2
-rw-r--r--widgets/aerc.go3
-rw-r--r--widgets/compose.go31
-rw-r--r--widgets/dirlist.go1
-rw-r--r--widgets/dirtree.go2
-rw-r--r--widgets/exline.go8
-rw-r--r--widgets/getpasswd.go3
-rw-r--r--widgets/msglist.go2
-rw-r--r--widgets/msgviewer.go18
-rw-r--r--widgets/scrollable.go1
-rw-r--r--widgets/selector.go3
-rw-r--r--widgets/terminal.go8
-rw-r--r--worker/imap/connect.go4
-rw-r--r--worker/imap/fetch.go15
-rw-r--r--worker/imap/list.go1
-rw-r--r--worker/imap/movecopy.go1
-rw-r--r--worker/imap/observer.go3
-rw-r--r--worker/imap/open.go10
-rw-r--r--worker/lib/parse.go4
-rw-r--r--worker/lib/search.go4
-rw-r--r--worker/lib/sort.go12
-rw-r--r--worker/maildir/container.go12
-rw-r--r--worker/maildir/search.go3
-rw-r--r--worker/maildir/worker.go10
-rw-r--r--worker/mbox/create.go1
-rw-r--r--worker/mbox/worker.go6
-rw-r--r--worker/notmuch/lib/database.go19
-rw-r--r--worker/notmuch/message.go12
-rw-r--r--worker/notmuch/worker.go39
-rw-r--r--worker/types/thread.go4
-rw-r--r--worker/types/thread_test.go2
-rw-r--r--worker/types/worker.go5
78 files changed, 288 insertions, 285 deletions
diff --git a/commands/account/account.go b/commands/account/account.go
index 4731c19a..fc17fa2d 100644
--- a/commands/account/account.go
+++ b/commands/account/account.go
@@ -4,9 +4,7 @@ import (
"git.sr.ht/~rjarry/aerc/commands"
)
-var (
- AccountCommands *commands.Commands
-)
+var AccountCommands *commands.Commands
func register(cmd commands.Command) {
if AccountCommands == nil {
diff --git a/commands/account/cf.go b/commands/account/cf.go
index b5cda53f..39b0bb89 100644
--- a/commands/account/cf.go
+++ b/commands/account/cf.go
@@ -9,9 +9,7 @@ import (
"git.sr.ht/~rjarry/aerc/widgets"
)
-var (
- history map[string]string
-)
+var history map[string]string
type ChangeFolder struct{}
diff --git a/commands/cd.go b/commands/cd.go
index edfc1795..d856a060 100644
--- a/commands/cd.go
+++ b/commands/cd.go
@@ -9,9 +9,7 @@ import (
"github.com/mitchellh/go-homedir"
)
-var (
- previousDir string
-)
+var previousDir string
type ChangeDirectory struct{}
diff --git a/commands/compose/compose.go b/commands/compose/compose.go
index 563dcd1b..f325e4e2 100644
--- a/commands/compose/compose.go
+++ b/commands/compose/compose.go
@@ -4,9 +4,7 @@ import (
"git.sr.ht/~rjarry/aerc/commands"
)
-var (
- ComposeCommands *commands.Commands
-)
+var ComposeCommands *commands.Commands
func register(cmd commands.Command) {
if ComposeCommands == nil {
diff --git a/commands/compose/header.go b/commands/compose/header.go
index ca5c8698..dcee9aac 100644
--- a/commands/compose/header.go
+++ b/commands/compose/header.go
@@ -12,17 +12,15 @@ import (
type Header struct{}
-var (
- headers = []string{
- "From",
- "To",
- "Cc",
- "Bcc",
- "Subject",
- "Comments",
- "Keywords",
- }
-)
+var headers = []string{
+ "From",
+ "To",
+ "Cc",
+ "Bcc",
+ "Subject",
+ "Comments",
+ "Keywords",
+}
func init() {
register(Header{})
@@ -50,9 +48,7 @@ func (Header) Execute(aerc *widgets.Aerc, args []string) error {
return errors.New("command parsing failed")
}
- var (
- force bool = false
- )
+ var force bool = false
for _, opt := range opts {
switch opt.Option {
case 'f':
diff --git a/commands/compose/send.go b/commands/compose/send.go
index 5448b728..2bd61119 100644
--- a/commands/compose/send.go
+++ b/commands/compose/send.go
@@ -111,7 +111,7 @@ func (Send) Execute(aerc *widgets.Aerc, args []string) error {
var copyBuf bytes.Buffer // for the Sent folder content if CopyTo is set
failCh := make(chan error)
- //writer
+ // writer
go func() {
defer logging.PanicHandler()
@@ -144,7 +144,7 @@ func (Send) Execute(aerc *widgets.Aerc, args []string) error {
failCh <- sender.Close()
}()
- //cleanup + copy to sent
+ // cleanup + copy to sent
go func() {
defer logging.PanicHandler()
@@ -431,7 +431,8 @@ func connectSmtps(host string) (*smtp.Client, error) {
}
func copyToSent(worker *types.Worker, dest string,
- n int, msg io.Reader) <-chan error {
+ n int, msg io.Reader,
+) <-chan error {
errCh := make(chan error)
worker.PostAction(&types.AppendMessage{
Destination: dest,
diff --git a/commands/global.go b/commands/global.go
index 459192f6..ec7d623c 100644
--- a/commands/global.go
+++ b/commands/global.go
@@ -1,8 +1,6 @@
package commands
-var (
- GlobalCommands *Commands
-)
+var GlobalCommands *Commands
func register(cmd Command) {
if GlobalCommands == nil {
diff --git a/commands/msg/archive.go b/commands/msg/archive.go
index d4ad8f91..b8d8ff6d 100644
--- a/commands/msg/archive.go
+++ b/commands/msg/archive.go
@@ -86,7 +86,8 @@ func (Archive) Execute(aerc *widgets.Aerc, args []string) error {
for dir, uids := range uidMap {
store.Move(uids, dir, true, func(
- msg types.WorkerMessage) {
+ msg types.WorkerMessage,
+ ) {
switch msg := msg.(type) {
case *types.Done:
wg.Done()
@@ -111,7 +112,8 @@ func (Archive) Execute(aerc *widgets.Aerc, args []string) error {
}
func groupBy(msgs []*models.MessageInfo,
- grouper func(*models.MessageInfo) string) map[string][]uint32 {
+ grouper func(*models.MessageInfo) string,
+) map[string][]uint32 {
m := make(map[string][]uint32)
for _, msg := range msgs {
group := grouper(msg)
diff --git a/commands/msg/copy.go b/commands/msg/copy.go
index a68a22a2..44257a74 100644
--- a/commands/msg/copy.go
+++ b/commands/msg/copy.go
@@ -34,9 +34,7 @@ func (Copy) Execute(aerc *widgets.Aerc, args []string) error {
if err != nil {
return err
}
- var (
- createParents bool
- )
+ var createParents bool
for _, opt := range opts {
switch opt.Option {
case 'p':
@@ -54,8 +52,8 @@ func (Copy) Execute(aerc *widgets.Aerc, args []string) error {
}
store.Copy(uids, strings.Join(args[optind:], " "),
createParents, func(
- msg types.WorkerMessage) {
-
+ msg types.WorkerMessage,
+ ) {
switch msg := msg.(type) {
case *types.Done:
aerc.PushStatus("Messages copied.", 10*time.Second)
diff --git a/commands/msg/delete.go b/commands/msg/delete.go
index 7cf81138..fdb2117c 100644
--- a/commands/msg/delete.go
+++ b/commands/msg/delete.go
@@ -42,7 +42,7 @@ func (Delete) Execute(aerc *widgets.Aerc, args []string) error {
if err != nil {
return err
}
- //caution, can be nil
+ // caution, can be nil
next := findNextNonDeleted(uids, store)
store.ClearVisualMark()
store.Delete(uids, func(msg types.WorkerMessage) {
diff --git a/commands/msg/invite.go b/commands/msg/invite.go
index c15e2653..936cea74 100644
--- a/commands/msg/invite.go
+++ b/commands/msg/invite.go
@@ -28,7 +28,6 @@ func (invite) Complete(aerc *widgets.Aerc, args []string) []string {
}
func (invite) Execute(aerc *widgets.Aerc, args []string) error {
-
acct := aerc.SelectedAccount()
if acct == nil {
return errors.New("no account selected")
@@ -90,9 +89,7 @@ func (invite) Execute(aerc *widgets.Aerc, args []string) error {
}
}
- var (
- to []*mail.Address
- )
+ var to []*mail.Address
if len(msg.Envelope.ReplyTo) != 0 {
to = msg.Envelope.ReplyTo
diff --git a/commands/msg/modify-labels.go b/commands/msg/modify-labels.go
index a3b49008..655004cf 100644
--- a/commands/msg/modify-labels.go
+++ b/commands/msg/modify-labels.go
@@ -52,8 +52,8 @@ func (ModifyLabels) Execute(aerc *widgets.Aerc, args []string) error {
}
}
store.ModifyLabels(uids, add, remove, func(
- msg types.WorkerMessage) {
-
+ msg types.WorkerMessage,
+ ) {
switch msg := msg.(type) {
case *types.Done:
aerc.PushStatus("labels updated", 10*time.Second)
diff --git a/commands/msg/move.go b/commands/msg/move.go
index b13e94ac..2e3d4385 100644
--- a/commands/msg/move.go
+++ b/commands/msg/move.go
@@ -34,9 +34,7 @@ func (Move) Execute(aerc *widgets.Aerc, args []string) error {
if err != nil {
return err
}
- var (
- createParents bool
- )
+ var createParents bool
for _, opt := range opts {
switch opt.Option {
case 'p':
@@ -61,8 +59,8 @@ func (Move) Execute(aerc *widgets.Aerc, args []string) error {
findNextNonDeleted(uids, store)
joinedArgs := strings.Join(args[optind:], " ")
store.Move(uids, joinedArgs, createParents, func(
- msg types.WorkerMessage) {
-
+ msg types.WorkerMessage,
+ ) {
switch msg := msg.(type) {
case *types.Done:
aerc.PushStatus("Message moved to "+joinedArgs, 10*time.Second)
diff --git a/commands/msg/msg.go b/commands/msg/msg.go
index 7b6fb129..65a40562 100644
--- a/commands/msg/msg.go
+++ b/commands/msg/msg.go
@@ -4,9 +4,7 @@ import (
"git.sr.ht/~rjarry/aerc/commands"
)
-var (
- MessageCommands *commands.Commands
-)
+var MessageCommands *commands.Commands
func register(cmd commands.Command) {
if MessageCommands == nil {
diff --git a/commands/msg/read.go b/commands/msg/read.go
index c6bcd0df..4c169b3b 100644
--- a/commands/msg/read.go
+++ b/commands/msg/read.go
@@ -36,7 +36,6 @@ func (FlagMsg) Complete(aerc *widgets.Aerc, args []string) []string {
// If this was called as 'read' or 'unread', it has the same effect as
// 'flag' or 'unflag', respectively, but the 'Seen' flag is affected.
func (FlagMsg) Execute(aerc *widgets.Aerc, args []string) error {
-
// The flag to change
var flag models.Flag
// User-readable name of the flag to change
@@ -184,7 +183,8 @@ func (FlagMsg) Execute(aerc *widgets.Aerc, args []string) error {
func submitFlagChange(aerc *widgets.Aerc, store *lib.MessageStore,
uids []uint32, flag models.Flag, newState bool,
- wg *sync.WaitGroup, success *bool) {
+ wg *sync.WaitGroup, success *bool,
+) {
store.Flag(uids, flag, newState, func(msg types.WorkerMessage) {
wg.Add(1)
switch msg := msg.(type) {
diff --git a/commands/msg/recall.go b/commands/msg/recall.go
index 477a3636..1ce6ce6b 100644
--- a/commands/msg/recall.go
+++ b/commands/msg/recall.go
@@ -136,7 +136,6 @@ func (Recall) Execute(aerc *widgets.Aerc, args []string) error {
)
aerc.AddDialog(confirm)
}
-
})
}
@@ -212,9 +211,7 @@ func (Recall) Execute(aerc *widgets.Aerc, args []string) error {
mu.Unlock()
})
}
-
})
-
})
return nil
diff --git a/commands/msg/reply.go b/commands/msg/reply.go
index a1254a12..dd5aa190 100644
--- a/commands/msg/reply.go
+++ b/commands/msg/reply.go
@@ -146,7 +146,7 @@ func (reply) Execute(aerc *widgets.Aerc, args []string) error {
to = append(to, envTos...)
for _, addr := range msg.Envelope.Cc {
- //dedupe stuff from the to/from headers
+ // dedupe stuff from the to/from headers
if recSet.Contains(addr) {
continue
}
@@ -259,8 +259,8 @@ func (s addrSet) Contains(a *mail.Address) bool {
return ok
}
-//setReferencesHeader adds the references header to target based on parent
-//according to RFC2822
+// setReferencesHeader adds the references header to target based on parent
+// according to RFC2822
func setReferencesHeader(target, parent *mail.Header) error {
refs, err := parent.MsgIDList("references")
if err != nil {
@@ -285,7 +285,8 @@ func setReferencesHeader(target, parent *mail.Header) error {
// addMimeType adds the proper mime type of the part to the originalMail struct
func addMimeType(msg *models.MessageInfo, part []int,
- orig *models.OriginalMail) error {
+ orig *models.OriginalMail,
+) error {
// caution, :forward uses the code as well, keep that in mind when modifying
bs, err := msg.BodyStructure.PartAtIndex(part)
if err != nil {
diff --git a/commands/msg/unsubscribe_test.go b/commands/msg/unsubscribe_test.go
index d34efb1a..46138309 100644
--- a/commands/msg/unsubscribe_test.go
+++ b/commands/msg/unsubscribe_test.go
@@ -18,10 +18,12 @@ func TestParseUnsubscribe(t *testing.T) {
{"<https://example.com> is a URL", []string{
"https://example.com",
}},
- {"<mailto:user@host?subject=unsubscribe>, <https://example.com>",
+ {
+ "<mailto:user@host?subject=unsubscribe>, <https://example.com>",
[]string{
"mailto:user@host?subject=unsubscribe", "https://example.com",
- }},
+ },
+ },
{"<>, <https://example> ", []string{
"", "https://example",
}},
diff --git a/commands/msgview/msgview.go b/commands/msgview/msgview.go
index 0f0108e2..fb32d8e1 100644
--- a/commands/msgview/msgview.go
+++ b/commands/msgview/msgview.go
@@ -4,9 +4,7 @@ import (
"git.sr.ht/~rjarry/aerc/commands"
)
-var (
- MessageViewCommands *commands.Commands
-)
+var MessageViewCommands *commands.Commands
func register(cmd commands.Command) {
if MessageViewCommands == nil {
diff --git a/commands/msgview/save.go b/commands/msgview/save.go
index f27a68c6..993f4278 100644
--- a/commands/msgview/save.go
+++ b/commands/msgview/save.go
@@ -129,7 +129,6 @@ func savePart(
aerc *widgets.Aerc,
params *saveParams,
) error {
-
if params.trailingSlash || isDirExists(path) {
filename := generateFilename(pi.Part)
path = filepath.Join(path, filename)
@@ -137,7 +136,7 @@ func savePart(
dir := filepath.Dir(path)
if params.createDirs && dir != "" {
- err := os.MkdirAll(dir, 0755)
+ err := os.MkdirAll(dir, 0o755)
if err != nil {
return err
}
@@ -177,7 +176,7 @@ func savePart(
return nil
}
-//isDir returns true if path is a directory and exists
+// isDir returns true if path is a directory and exists
func isDirExists(path string) bool {
pathinfo, err := os.Stat(path)
if err != nil {
@@ -189,14 +188,14 @@ func isDirExists(path string) bool {
return false
}
-//pathExists returns true if path exists
+// pathExists returns true if path exists
func pathExists(path string) bool {
_, err := os.Stat(path)
return err == nil
}
-//isAbsPath returns true if path given is anchored to / or . or ~
+// isAbsPath returns true if path given is anchored to / or . or ~
func isAbsPath(path string) bool {
if len(path) == 0 {
return false
diff --git a/commands/prompt.go b/commands/prompt.go
index 1d2242c2..8746bcfe 100644
--- a/commands/prompt.go
+++ b/commands/prompt.go
@@ -2,8 +2,9 @@ package commands
import (
"fmt"
- "git.sr.ht/~rjarry/aerc/widgets"
"strings"
+
+ "git.sr.ht/~rjarry/aerc/widgets"
)
type Prompt struct{}
diff --git a/commands/set.go b/commands/set.go
index 0259240f..275f9e66 100644
--- a/commands/set.go
+++ b/commands/set.go
@@ -21,7 +21,6 @@ func init() {
func (Set) Aliases() []string {
return []string{"set"}
-
}
func (Set) Complete(aerc *widgets.Aerc, args []string) []string {
@@ -48,7 +47,6 @@ func SetCore(aerc *widgets.Aerc, args []string) error {
new_file := ini.Empty()
section, err := new_file.NewSection(category)
-
if err != nil {
return nil
}
diff --git a/commands/terminal/terminal.go b/commands/terminal/terminal.go
index c93f80ec..edc8429f 100644
--- a/commands/terminal/terminal.go
+++ b/commands/terminal/terminal.go
@@ -4,9 +4,7 @@ import (
"git.sr.ht/~rjarry/aerc/commands"
)
-var (
- TerminalCommands *commands.Commands
-)
+var TerminalCommands *commands.Commands
func register(cmd commands.Command) {
if TerminalCommands == nil {
diff --git a/config/bindings.go b/config/bindings.go
index 1833244b..fa9daa29 100644
--- a/config/bindings.go
+++ b/config/bindings.go
@@ -56,8 +56,8 @@ func MergeBindings(bindings ...*KeyBindings) *KeyBindings {
}
func (config AercConfig) MergeContextualBinds(baseBinds *KeyBindings,
- contextType ContextType, reg string, bindCtx string) *KeyBindings {
-
+ contextType ContextType, reg string, bindCtx string,
+) *KeyBindings {
bindings := baseBinds
for _, contextualBind := range config.ContextualBinds {
if contextualBind.ContextType != contextType {
@@ -83,8 +83,8 @@ func (bindings *KeyBindings) Add(binding *Binding) {
}
func (bindings *KeyBindings) GetBinding(
- input []KeyStroke) (BindingSearchResult, []KeyStroke) {
-
+ input []KeyStroke,
+) (BindingSearchResult, []KeyStroke) {
incomplete := false
// TODO: This could probably be a sorted list to speed things up
// TODO: Deal with bindings that share a prefix
@@ -165,9 +165,7 @@ func FormatKeyStrokes(keystrokes []KeyStroke) string {
return sb.String()
}
-var (
- keyNames map[string]KeyStroke
-)
+var keyNames map[string]KeyStroke
func ParseKeyStrokes(keystrokes string) ([]KeyStroke, error) {
var strokes []KeyStroke
diff --git a/config/config.go b/config/config.go
index 75519ab3..7e1261df 100644
--- a/config/config.go
+++ b/config/config.go
@@ -398,7 +398,7 @@ var searchDirs = buildDefaultDirs()
func installTemplate(root, name string) error {
var err error
if _, err = os.Stat(root); os.IsNotExist(err) {
- err = os.MkdirAll(root, 0755)
+ err = os.MkdirAll(root, 0o755)
if err != nil {
return err
}
@@ -413,7 +413,7 @@ func installTemplate(root, name string) error {
if err != nil {
return err
}
- err = ioutil.WriteFile(path.Join(root, name), data, 0644)
+ err = ioutil.WriteFile(path.Join(root, name), data, 0o644)
if err != nil {
return err
}
@@ -527,10 +527,9 @@ func (config *AercConfig) LoadConfig(file *ini.File) error {
if err := validateBorderChars(uiSection, &uiSubConfig); err != nil {
return err
}
- contextualUi :=
- UIConfigContext{
- UiConfig: uiSubConfig,
- }
+ contextualUi := UIConfigContext{
+ UiConfig: uiSubConfig,
+ }
var index int
if strings.Contains(sectionName, "~") {
@@ -922,7 +921,6 @@ func LoadBindingSection(sec *ini.Section) (*KeyBindings, error) {
}
func (config *AercConfig) LoadBinds(binds *ini.File, baseName string, baseGroup **KeyBindings) error {
-
if sec, err := binds.GetSection(baseName); err == nil {
binds, err := LoadBindingSection(sec)
if err != nil {
@@ -947,11 +945,10 @@ func (config *AercConfig) LoadBinds(binds *ini.File, baseName string, baseGroup
return err
}
- contextualBind :=
- BindingConfigContext{
- Bindings: binds,
- BindContext: baseName,
- }
+ contextualBind := BindingConfigContext{
+ Bindings: binds,
+ BindContext: baseName,
+ }
var index int
if strings.Contains(sectionName, "=") {
@@ -1006,7 +1003,7 @@ func checkConfigPerms(filename string) error {
perms := info.Mode().Perm()
// group or others have read access
- if perms&044 != 0 {
+ if perms&0o44 != 0 {
fmt.Fprintf(os.Stderr, "The file %v has too open permissions.\n", filename)
fmt.Fprintln(os.Stderr, "This is a security issue (it contains passwords).")
fmt.Fprintf(os.Stderr, "To fix it, run `chmod 600 %v`\n", filename)
@@ -1035,7 +1032,8 @@ func (ui *UIConfig) loadStyleSet(styleSetDirs []string) error {
}
func (config AercConfig) mergeContextualUi(baseUi UIConfig,
- contextType ContextType, s string) UIConfig {
+ contextType ContextType, s string,
+) UIConfig {
for _, contextualUi := range config.ContextualUis {
if contextualUi.ContextType != contextType {
continue
@@ -1078,7 +1076,8 @@ func (uiConfig UIConfig) GetStyleSelected(so StyleObject) tcell.Style {
}
func (uiConfig UIConfig) GetComposedStyle(base StyleObject,
- styles []StyleObject) tcell.Style {
+ styles []StyleObject,
+) tcell.Style {
return uiConfig.style.Compose(base, styles)
}
diff --git a/config/style.go b/config/style.go
index 71d39dcd..d1fd5573 100644
--- a/config/style.go
+++ b/config/style.go
@@ -265,7 +265,8 @@ func (ss StyleSet) Compose(so StyleObject, sos []StyleObject) tcell.Style {
}
func (ss StyleSet) ComposeSelected(so StyleObject,
- sos []StyleObject) tcell.Style {
+ sos []StyleObject,
+) tcell.Style {
base := *ss.selected[so]
styles := make([]*Style, len(sos))
for i, so := range sos {
diff --git a/config/triggers.go b/config/triggers.go
index daf43736..edaea45f 100644
--- a/config/triggers.go
+++ b/config/triggers.go
@@ -12,8 +12,8 @@ import (
)
func (trig *TriggersConfig) ExecTrigger(triggerCmd string,
- triggerFmt func(string) (string, error)) error {
-
+ triggerFmt func(string) (string, error),
+) error {
if len(triggerCmd) == 0 {
return errors.New("Trigger command empty")
}
@@ -34,7 +34,8 @@ func (trig *TriggersConfig) ExecTrigger(triggerCmd string,
}
func (trig *TriggersConfig) ExecNewEmail(account *AccountConfig,
- conf *AercConfig, msg *models.MessageInfo) {
+ conf *AercConfig, msg *models.MessageInfo,
+) {
err := trig.ExecTrigger(trig.NewEmail,
func(part string) (string, error) {
formatstr, args, err := format.ParseMessageFormat(
@@ -45,7 +46,8 @@ func (trig *TriggersConfig) ExecNewEmail(account *AccountConfig,
format.Ctx{
FromAddress: account.From,
AccountName: account.Name,
- MsgInfo: msg},
+ MsgInfo: msg,
+ },
)
if err != nil {
return "", err
diff --git a/lib/calendar/calendar.go b/lib/calendar/calendar.go
index dbce6bce..ebe1b771 100644
--- a/lib/calendar/calendar.go
+++ b/lib/calendar/calendar.go
@@ -26,7 +26,6 @@ func (cr *Reply) AddOrganizer(o string) {
// CreateReply parses a ics request and return a ics reply (RFC 2446, Section 3.2.3)
func CreateReply(reader io.Reader, from *mail.Address, partstat string) (*Reply, error) {
-
cr := Reply{
MimeType: "text/calendar",
Params: map[string]string{
diff --git a/lib/crypto/gpg/gpg.go b/lib/crypto/gpg/gpg.go
index e545e1c9..c73272a3 100644
--- a/lib/crypto/gpg/gpg.go
+++ b/lib/crypto/gpg/gpg.go
@@ -37,7 +37,6 @@ func (m *Mail) ImportKeys(r io.Reader) error {
}
func (m *Mail) Encrypt(buf *bytes.Buffer, rcpts []string, signer string, decryptKeys openpgp.PromptFunction, header *mail.Header) (io.WriteCloser, error) {
-
return Encrypt(buf, header.Header.Header, rcpts, signer)
}
diff --git a/lib/crypto/gpg/gpgbin/encrypt.go b/lib/crypto/gpg/gpgbin/encrypt.go
index e72ba148..31245a74 100644
--- a/lib/crypto/gpg/gpgbin/encrypt.go
+++ b/lib/crypto/gpg/gpgbin/encrypt.go
@@ -11,7 +11,7 @@ import (
// Encrypt runs gpg --encrypt [--sign] -r [recipient]. The default is to have
// --trust-model always set
func Encrypt(r io.Reader, to []string, from string) ([]byte, error) {
- //TODO probably shouldn't have --trust-model always a default
+ // TODO probably shouldn't have --trust-model always a default
args := []string{
"--armor",
"--trust-model", "always",
diff --git a/lib/crypto/pgp/pgp.go b/lib/crypto/pgp/pgp.go
index 647b091b..c305f068 100644
--- a/lib/crypto/pgp/pgp.go
+++ b/lib/crypto/pgp/pgp.go
@@ -31,10 +31,10 @@ var (
func (m *Mail) Init() error {
logging.Infof("Initializing PGP keyring")
- os.MkdirAll(path.Join(xdg.DataHome(), "aerc"), 0700)
+ os.MkdirAll(path.Join(xdg.DataHome(), "aerc"), 0o700)
lockpath := path.Join(xdg.DataHome(), "aerc", "keyring.lock")
- lockfile, err := os.OpenFile(lockpath, os.O_CREATE|os.O_EXCL, 0600)
+ lockfile, err := os.OpenFile(lockpath, os.O_CREATE|os.O_EXCL, 0o600)
if err != nil {
// TODO: Consider connecting to main process over IPC socket
locked = false
@@ -149,7 +149,7 @@ func (m *Mail) ImportKeys(r io.Reader) error {
Keyring = append(Keyring, keys...)
if locked {
keypath := path.Join(xdg.DataHome(), "aerc", "keyring.asc")
- keyfile, err := os.OpenFile(keypath, os.O_CREATE|os.O_APPEND, 0600)
+ keyfile, err := os.OpenFile(keypath, os.O_CREATE|os.O_APPEND, 0o600)
if err != nil {
return err
}
diff --git a/lib/format/format.go b/lib/format/format.go
index cc9716dd..0d14cb19 100644
--- a/lib/format/format.go
+++ b/lib/format/format.go
@@ -81,7 +81,8 @@ type Ctx struct {
func ParseMessageFormat(format string, timeFmt string, thisDayTimeFmt string,
thisWeekTimeFmt string, thisYearTimeFmt string, ctx Ctx) (
- string, []interface{}, error) {
+ string, []interface{}, error,
+) {
retval := make([]byte, 0, len(format))
var args []interface{}
@@ -289,10 +290,10 @@ func ParseMessageFormat(format string, timeFmt string, thisDayTimeFmt string,
}
case 'Z':
// calculate all flags
- var readReplyFlag = ""
- var delFlag = ""
- var flaggedFlag = ""
- var markedFlag = ""
+ readReplyFlag := ""
+ delFlag := ""
+ flaggedFlag := ""
+ markedFlag := ""
seen := false
recent := false
answered := false
@@ -390,7 +391,8 @@ handle_end_error:
}
func dummyIfZeroDate(date time.Time, format string, todayFormat string,
- thisWeekFormat string, thisYearFormat string) string {
+ thisWeekFormat string, thisYearFormat string,
+) string {
if date.IsZero() {
return strings.Repeat("?", len(format))
}
diff --git a/lib/messageview.go b/lib/messageview.go
index a1797d53..e0e86ea1 100644
--- a/lib/messageview.go
+++ b/lib/messageview.go
@@ -62,10 +62,12 @@ type MessageStoreView struct {
func NewMessageStoreView(messageInfo *models.MessageInfo,
store *MessageStore, pgp crypto.Provider, decryptKeys openpgp.PromptFunction,
- cb func(MessageView, error)) {
-
- msv := &MessageStoreView{messageInfo, store,
- nil, nil, messageInfo.BodyStructure}
+ cb func(MessageView, error),
+) {
+ msv := &MessageStoreView{
+ messageInfo, store,
+ nil, nil, messageInfo.BodyStructure,
+ }
if usePGP(messageInfo.BodyStructure) {
store.FetchFull([]uint32{messageInfo.Uid}, func(fm *types.FullMessage) {
@@ -117,7 +119,6 @@ func (msv *MessageStoreView) MessageDetails() *models.MessageDetails {
}
func (msv *MessageStoreView) FetchBodyPart(part []int, cb func(io.Reader)) {
-
if msv.message == nil {
msv.messageStore.FetchBodyPart(msv.messageInfo.Uid, part, cb)
return
diff --git a/lib/msgstore.go b/lib/msgstore.go
index b91cd82d..bbaa70ad 100644
--- a/lib/msgstore.go
+++ b/lib/msgstore.go
@@ -27,7 +27,7 @@ type MessageStore struct {
bodyCallbacks map[uint32][]func(*types.FullMessage)
headerCallbacks map[uint32][]func(*types.MessageInfo)
- //marking
+ // marking
marked map[uint32]struct{}
lastMarked map[uint32]struct{}
visualStartUid uint32
@@ -68,8 +68,8 @@ func NewMessageStore(worker *types.Worker,
defaultSortCriteria []*types.SortCriterion,
thread bool, clientThreads bool, clientThreadsDelay time.Duration,
triggerNewEmail func(*models.MessageInfo),
- triggerDirectoryChange func()) *MessageStore {
-
+ triggerDirectoryChange func(),
+) *MessageStore {
if !dirInfo.Caps.Thread {
clientThreads = true
}
@@ -102,8 +102,8 @@ func NewMessageStore(worker *types.Worker,
}
func (store *MessageStore) FetchHeaders(uids []uint32,
- cb func(*types.MessageInfo)) {
-
+ cb func(*types.MessageInfo),
+) {
// TODO: this could be optimized by pre-allocating toFetch and trimming it
// at the end. In practice we expect to get most messages back in one frame.
var toFetch []uint32
@@ -166,7 +166,6 @@ func (store *MessageStore) FetchFull(uids []uint32, cb func(*types.FullMessage))
}
func (store *MessageStore) FetchBodyPart(uid uint32, part []int, cb func(io.Reader)) {
-
store.worker.PostAction(&types.FetchMessageBodyPart{
Uid: uid,
Part: part,
@@ -399,7 +398,6 @@ func (store *MessageStore) runThreadBuilder() {
}
}
store.threadBuilderDebounce = time.AfterFunc(store.threadBuilderDelay, func() {
-
// temporarily deactiviate the selector in the message list by
// setting SelectedUid to the MagicUid
oldUid := store.SelectedUid()
@@ -436,8 +434,8 @@ func (store *MessageStore) runThreadBuilder() {
}
func (store *MessageStore) Delete(uids []uint32,
- cb func(msg types.WorkerMessage)) {
-
+ cb func(msg types.WorkerMessage),
+) {
for _, uid := range uids {
store.Deleted[uid] = nil
}
@@ -461,8 +459,8 @@ func (store *MessageStore) revertDeleted(uids []uint32) {
}
func (store *MessageStore) Copy(uids []uint32, dest string, createDest bool,
- cb func(msg types.WorkerMessage)) {
-
+ cb func(msg types.WorkerMessage),
+) {
if createDest {
store.worker.PostAction(&types.CreateDirectory{
Directory: dest,
@@ -477,8 +475,8 @@ func (store *MessageStore) Copy(uids []uint32, dest string, createDest bool,
}
func (store *MessageStore) Move(uids []uint32, dest string, createDest bool,
- cb func(msg types.WorkerMessage)) {
-
+ cb func(msg types.WorkerMessage),
+) {
for _, uid := range uids {
store.Deleted[uid] = nil
}
@@ -505,8 +503,8 @@ func (store *MessageStore) Move(uids []uint32, dest string, createDest bool,
}
func (store *MessageStore) Flag(uids []uint32, flag models.Flag,
- enable bool, cb func(msg types.WorkerMessage)) {
-
+ enable bool, cb func(msg types.WorkerMessage),
+) {
store.worker.PostAction(&types.FlagMessages{
Enable: enable,
Flag: flag,
@@ -515,8 +513,8 @@ func (store *MessageStore) Flag(uids []uint32, flag models.Flag,
}
func (store *MessageStore) Answered(uids []uint32, answered bool,
- cb func(msg types.WorkerMessage)) {
-
+ cb func(msg types.WorkerMessage),
+) {
store.worker.PostAction(&types.AnsweredMessages{
Answered: answered,
Uids: uids,
@@ -524,7 +522,6 @@ func (store *MessageStore) Answered(uids []uint32, answered bool,
}
func (store *MessageStore) Uids() []uint32 {
-
if store.ThreadedView() && store.builder != nil {
if uids := store.builder.Uids(); len(uids) > 0 {
return uids
@@ -608,13 +605,13 @@ func (store *MessageStore) checkMark() {
}
}
-//IsMarked checks whether a MessageInfo has been marked
+// IsMarked checks whether a MessageInfo has been marked
func (store *MessageStore) IsMarked(uid uint32) bool {
_, marked := store.marked[uid]
return marked
}
-//ToggleVisualMark enters or leaves the visual marking mode
+// ToggleVisualMark enters or leaves the visual marking mode
func (store *MessageStore) ToggleVisualMark() {
store.visualMarkMode = !store.visualMarkMode
switch store.visualMarkMode {
@@ -629,7 +626,7 @@ func (store *MessageStore) ToggleVisualMark() {
}
}
-//ClearVisualMark leaves the visual marking mode and resets any marking
+// ClearVisualMark leaves the visual marking mode and resets any marking
func (store *MessageStore) ClearVisualMark() {
store.resetMark()
store.visualMarkMode = false
@@ -793,7 +790,8 @@ func (store *MessageStore) PrevResult() {
}
func (store *MessageStore) ModifyLabels(uids []uint32, add, remove []string,
- cb func(msg types.WorkerMessage)) {
+ cb func(msg types.WorkerMessage),
+) {
store.worker.PostAction(&types.ModifyLabels{
Uids: uids,
Add: add,
diff --git a/lib/oauthbearer.go b/lib/oauthbearer.go
index 1030696e..4954830f 100644
--- a/lib/oauthbearer.go
+++ b/lib/oauthbearer.go
@@ -3,6 +3,7 @@ package lib
import (
"context"
"fmt"
+
"github.com/emersion/go-imap/client"
"github.com/emersion/go-sasl"
"golang.org/x/oauth2"
diff --git a/lib/open.go b/lib/open.go
index f395d13d..c5d4b1c0 100644
--- a/lib/open.go
+++ b/lib/open.go
@@ -29,7 +29,6 @@ func NewXDGOpen(filename string) *xdgOpen {
errCh: errch,
args: []string{filename},
}
-
}
// SetArgs sets additional arguments to the open command prior to the filename
diff --git a/lib/parse/hyperlinks.go b/lib/parse/hyperlinks.go
index 7a005383..2087a55c 100644
--- a/lib/parse/hyperlinks.go
+++ b/lib/parse/hyperlinks.go
@@ -8,8 +8,10 @@ import (
"strings"
)
-var submatch = `(https?:\/\/[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,10}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))`
-var httpRe = regexp.MustCompile("\"" + submatch + "\"" + "|" + "\\(" + submatch + "\\)" + "|" + "<" + submatch + ">" + "|" + submatch)
+var (
+ submatch = `(https?:\/\/[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,10}\b(?:[-a-zA-Z0-9()@:%_\+.~#?&\/=]*))`
+ httpRe = regexp.MustCompile("\"" + submatch + "\"" + "|" + "\\(" + submatch + "\\)" + "|" + "<" + submatch + ">" + "|" + submatch)
+)
// HttpLinks searches a reader for a http link and returns a copy of the
// reader and a slice with links.
@@ -36,7 +38,7 @@ func HttpLinks(r io.Reader) (io.Reader, []string) {
}
results := []string{}
- for link, _ := range linkMap {
+ for link := range linkMap {
results = append(results, link)
}
diff --git a/lib/statusline/state.go b/lib/statusline/state.go
index 54746fbd..8384f200 100644
--- a/lib/statusline/state.go
+++ b/lib/statusline/state.go
@@ -32,10 +32,11 @@ type folderState struct {
}
func NewState(name string, multipleAccts bool, conf config.StatuslineConfig) *State {
- return &State{separator: conf.Separator,
- renderer: newRenderer(conf.RenderFormat, conf.DisplayMode),
- acct: &accountState{Name: name, Multiple: multipleAccts},
- fldr: make(map[string]*folderState),
+ return &State{
+ separator: conf.Separator,
+ renderer: newRenderer(conf.RenderFormat, conf.DisplayMode),
+ acct: &accountState{Name: name, Multiple: multipleAccts},
+ fldr: make(map[string]*folderState),
}
}
diff --git a/lib/structure_helpers_test.go b/lib/structure_helpers_test.go
index f670735c..a63825d9 100644
--- a/lib/structure_helpers_test.go
+++ b/lib/structure_helpers_test.go
@@ -8,27 +8,26 @@ import (
)
func TestLib_FindAllNonMultipart(t *testing.T) {
-
testStructure := &models.BodyStructure{
MIMEType: "multipart",
Parts: []*models.BodyStructure{
- &models.BodyStructure{},
- &models.BodyStructure{
+ {},
+ {
MIMEType: "multipart",
Parts: []*models.BodyStructure{
- &models.BodyStructure{},
- &models.BodyStructure{},
+ {},
+ {},
},
},
- &models.BodyStructure{},
+ {},
},
}
expected := [][]int{
- []int{1},
- []int{2, 1},
- []int{2, 2},
- []int{3},
+ {1},
+ {2, 1},
+ {2, 2},
+ {3},
}
parts := lib.FindAllNonMultipart(testStructure, nil, nil)
@@ -42,5 +41,4 @@ func TestLib_FindAllNonMultipart(t *testing.T) {
t.Errorf("incorrect values; expected: %v, got: %v", expected[i], parts[i])
}
}
-
}
diff --git a/lib/templates/template.go b/lib/templates/template.go
index 9c71c463..7254d493 100644
--- a/lib/templates/template.go
+++ b/lib/templates/template.go
@@ -19,7 +19,7 @@ import (
var version string
-//SetVersion initializes the aerc version displayed in template functions
+// SetVersion initializes the aerc version displayed in template functions
func SetVersion(v string) {
version = v
}
@@ -182,7 +182,7 @@ func findTemplate(templateName string, templateDirs []string) (string, error) {
"Can't find template %q in any of %v ", templateName, templateDirs)
}
-//DummyData provides dummy data to test template validity
+// DummyData provides dummy data to test template validity
func DummyData() interface{} {
from := &mail.Address{
Name: "John Doe",
diff --git a/lib/ui/borders.go b/lib/ui/borders.go
index 6a5e9dc9..8d381b91 100644
--- a/lib/ui/borders.go
+++ b/lib/ui/borders.go
@@ -22,7 +22,8 @@ type Bordered struct {
}
func NewBordered(
- content Drawable, borders uint, uiConfig *config.UIConfig) *Bordered {
+ content Drawable, borders uint, uiConfig *config.UIConfig,
+) *Bordered {
b := &Bordered{
borders: borders,
content: content,
diff --git a/lib/ui/context.go b/lib/ui/context.go
index 7936f359..fc2104df 100644
--- a/lib/ui/context.go
+++ b/lib/ui/context.go
@@ -63,7 +63,8 @@ func (ctx *Context) SetCell(x, y int, ch rune, style tcell.Style) {
}
func (ctx *Context) Printf(x, y int, style tcell.Style,
- format string, a ...interface{}) int {
+ format string, a ...interface{},
+) int {
width, height := ctx.viewport.Size()
if x >= width || y >= height {
diff --git a/lib/ui/tab.go b/lib/ui/tab.go
index fd49dfee..bcad23c2 100644
--- a/lib/ui/tab.go
+++ b/lib/ui/tab.go
@@ -36,8 +36,10 @@ type Tab struct {
uiConf *config.UIConfig
}
-type TabStrip Tabs
-type TabContent Tabs
+type (
+ TabStrip Tabs
+ TabContent Tabs
+)
func NewTabs(uiConf *config.UIConfig) *Tabs {
tabs := &Tabs{}
diff --git a/lib/ui/textinput.go b/lib/ui/textinput.go
index 9d1de963..8f8f00d0 100644
--- a/lib/ui/textinput.go
+++ b/lib/ui/textinput.go
@@ -59,7 +59,8 @@ func (ti *TextInput) Prompt(prompt string) *TextInput {
}
func (ti *TextInput) TabComplete(
- tabcomplete func(s string) ([]string, string), d time.Duration) *TextInput {
+ tabcomplete func(s string) ([]string, string), d time.Duration,
+) *TextInput {
ti.tabcomplete = tabcomplete
ti.completeDelay = d
return ti
diff --git a/lib/ui/ui.go b/lib/ui/ui.go
index b65c06a4..1f618a6f 100644
--- a/lib/ui/ui.go
+++ b/lib/ui/ui.go
@@ -19,7 +19,6 @@ type UI struct {
}
func Initialize(content DrawableInteractive) (*UI, error) {
-
screen, err := tcell.NewScreen()
if err != nil {
return nil, err
diff --git a/models/models.go b/models/models.go
index e7325d25..820bc3fa 100644
--- a/models/models.go
+++ b/models/models.go
@@ -142,7 +142,7 @@ type BodyStructure struct {
DispositionParams map[string]string
}
-//PartAtIndex returns the BodyStructure at the requested index
+// PartAtIndex returns the BodyStructure at the requested index
func (bs *BodyStructure) PartAtIndex(index []int) (*BodyStructure, error) {
if len(index) == 0 {
return bs, nil
diff --git a/widgets/account-wizard.go b/widgets/account-wizard.go
index 8b78dcdb..57032884 100644
--- a/widgets/account-wizard.go
+++ b/widgets/account-wizard.go
@@ -506,7 +506,7 @@ func (wizard *AccountWizard) finish(tutorial bool) {
}
if !wizard.temporary {
- f, err := os.OpenFile(accountsConf, os.O_WRONLY|os.O_CREATE, 0600)
+ f, err := os.OpenFile(accountsConf, os.O_WRONLY|os.O_CREATE, 0o600)
if err != nil {
wizard.errorFor(nil, err)
return
diff --git a/widgets/aerc.go b/widgets/aerc.go
index 68144aa0..90e7a9e5 100644
--- a/widgets/aerc.go
+++ b/widgets/aerc.go
@@ -51,7 +51,8 @@ type Choice struct {
func NewAerc(conf *config.AercConfig,
crypto crypto.Provider, cmd func(cmd []string) error,
complete func(cmd string) []string, cmdHistory lib.History,
- deferLoop chan struct{}) *Aerc {
+ deferLoop chan struct{},
+) *Aerc {
tabs := ui.NewTabs(&conf.Ui)
statusbar := ui.NewStack(conf.Ui)
diff --git a/widgets/compose.go b/widgets/compose.go
index a4ed27ce..b9528e0e 100644
--- a/widgets/compose.go
+++ b/widgets/compose.go
@@ -65,8 +65,8 @@ type Composer struct {
func NewComposer(aerc *Aerc, acct *AccountView, conf *config.AercConfig,
acctConfig *config.AccountConfig, worker *types.Worker, template string,
- h *mail.Header, orig models.OriginalMail) (*Composer, error) {
-
+ h *mail.Header, orig models.OriginalMail,
+) (*Composer, error) {
if h == nil {
h = new(mail.Header)
}
@@ -78,7 +78,6 @@ func NewComposer(aerc *Aerc, acct *AccountView, conf *config.AercConfig,
}
if fl != nil {
h.SetAddressList("from", fl)
-
}
}
@@ -134,7 +133,6 @@ func NewComposer(aerc *Aerc, acct *AccountView, conf *config.AercConfig,
}
func (c *Composer) buildComposeHeader(aerc *Aerc, cmpl *completer.Completer) {
-
c.layout = aerc.conf.Compose.HeaderLayout
c.editors = make(map[string]*headerEditor)
c.focusable = make([]ui.MouseableDrawableInteractive, 0)
@@ -540,7 +538,7 @@ func (c *Composer) Worker() *types.Worker {
return c.worker
}
-//PrepareHeader finalizes the header, adding the value from the editors
+// PrepareHeader finalizes the header, adding the value from the editors
func (c *Composer) PrepareHeader() (*mail.Header, error) {
for _, editor := range c.editors {
editor.storeValue()
@@ -594,7 +592,7 @@ func getRecipientsEmail(c *Composer) ([]string, error) {
// return email addresses as string slice
results := []string{}
- for email, _ := range rcpts {
+ for email := range rcpts {
results = append(results, email)
}
return results, nil
@@ -933,7 +931,8 @@ type headerEditor struct {
}
func newHeaderEditor(name string, h *mail.Header,
- uiConfig *config.UIConfig) *headerEditor {
+ uiConfig *config.UIConfig,
+) *headerEditor {
he := &headerEditor{
input: ui.NewTextInput("", uiConfig),
name: name,
@@ -944,8 +943,8 @@ func newHeaderEditor(name string, h *mail.Header,
return he
}
-//extractHumanHeaderValue extracts the human readable string for key from the
-//header. If a parsing error occurs the raw value is returned
+// extractHumanHeaderValue extracts the human readable string for key from the
+// header. If a parsing error occurs the raw value is returned
func extractHumanHeaderValue(key string, h *mail.Header) string {
var val string
var err error
@@ -964,16 +963,16 @@ func extractHumanHeaderValue(key string, h *mail.Header) string {
return val
}
-//loadValue loads the value of he.name form the underlying header
-//the value is decoded and meant for human consumption.
-//decoding issues are ignored and return their raw values
+// loadValue loads the value of he.name form the underlying header
+// the value is decoded and meant for human consumption.
+// decoding issues are ignored and return their raw values
func (he *headerEditor) loadValue() {
he.input.Set(extractHumanHeaderValue(he.name, he.header))
he.input.Invalidate()
}
-//storeValue writes the current state back to the underlying header.
-//errors are ignored
+// storeValue writes the current state back to the underlying header.
+// errors are ignored
func (he *headerEditor) storeValue() {
val := he.input.String()
switch strings.ToLower(he.name) {
@@ -996,8 +995,8 @@ func (he *headerEditor) storeValue() {
}
}
-//setValue overwrites the current value of the header editor and flushes it
-//to the underlying header
+// setValue overwrites the current value of the header editor and flushes it
+// to the underlying header
func (he *headerEditor) setValue(val string) {
he.input.Set(val)
he.storeValue()
diff --git a/widgets/dirlist.go b/widgets/dirlist.go
index 2047c304..984fc01c 100644
--- a/widgets/dirlist.go
+++ b/widgets/dirlist.go
@@ -119,7 +119,6 @@ func (dirlist *DirectoryList) UpdateList(done func(dirs []string)) {
var dirs []string
dirlist.worker.PostAction(
&types.ListDirectories{}, func(msg types.WorkerMessage) {
-
switch msg := msg.(type) {
case *types.Directory:
dirs = append(dirs, msg.Dir.Name)
diff --git a/widgets/dirtree.go b/widgets/dirtree.go
index 1130329a..1b7e2e1f 100644
--- a/widgets/dirtree.go
+++ b/widgets/dirtree.go
@@ -383,7 +383,7 @@ func buildTree(node *types.Thread, stree [][]string, defaultUid uint32) {
}
}
keys := make([]string, 0)
- for key, _ := range m {
+ for key := range m {
keys = append(keys, key)
}
sort.Strings(keys)
diff --git a/widgets/exline.go b/widgets/exline.go
index 4a4b6559..e172dd81 100644
--- a/widgets/exline.go
+++ b/widgets/exline.go
@@ -20,8 +20,8 @@ type ExLine struct {
func NewExLine(conf *config.AercConfig, cmd string, commit func(cmd string), finish func(),
tabcomplete func(cmd string) ([]string, string),
- cmdHistory lib.History) *ExLine {
-
+ cmdHistory lib.History,
+) *ExLine {
input := ui.NewTextInput("", &conf.Ui).Prompt(":").Set(cmd)
if conf.Ui.CompletionPopovers {
input.TabComplete(tabcomplete, conf.Ui.CompletionDelay)
@@ -41,8 +41,8 @@ func NewExLine(conf *config.AercConfig, cmd string, commit func(cmd string), fin
}
func NewPrompt(conf *config.AercConfig, prompt string, commit func(text string),
- tabcomplete func(cmd string) ([]string, string)) *ExLine {
-
+ tabcomplete func(cmd string) ([]string, string),
+) *ExLine {
input := ui.NewTextInput("", &conf.Ui).Prompt(prompt)
if conf.Ui.CompletionPopovers {
input.TabComplete(tabcomplete, conf.Ui.CompletionDelay)
diff --git a/widgets/getpasswd.go b/widgets/getpasswd.go
index e4cf07b4..e6de75e1 100644
--- a/widgets/getpasswd.go
+++ b/widgets/getpasswd.go
@@ -19,7 +19,8 @@ type GetPasswd struct {
}
func NewGetPasswd(title string, prompt string, conf *config.AercConfig,
- cb func(string, error)) *GetPasswd {
+ cb func(string, error),
+) *GetPasswd {
getpasswd := &GetPasswd{
callback: cb,
title: title,
diff --git a/widgets/msglist.go b/widgets/msglist.go
index 23eb4102..1ddf46dc 100644
--- a/widgets/msglist.go
+++ b/widgets/msglist.go
@@ -102,7 +102,7 @@ func (ml *MessageList) Draw(ctx *ui.Context) {
}
counter--
if counter > len(store.Uids())-1-ml.Scroll() {
- //skip messages which are higher than the viewport
+ // skip messages which are higher than the viewport
return nil
}
msg := store.Messages[t.Uid]
diff --git a/widgets/msgviewer.go b/widgets/msgviewer.go
index eec786c5..be578b93 100644
--- a/widgets/msgviewer.go
+++ b/widgets/msgviewer.go
@@ -52,8 +52,8 @@ type PartSwitcher struct {
}
func NewMessageViewer(acct *AccountView,
- conf *config.AercConfig, msg lib.MessageView) *MessageViewer {
-
+ conf *config.AercConfig, msg lib.MessageView,
+) *MessageViewer {
hf := HeaderLayoutFilter{
layout: HeaderLayout(conf.Viewer.HeaderLayout),
keep: func(msg *models.MessageInfo, header string) bool {
@@ -178,8 +178,8 @@ func fmtHeader(msg *models.MessageInfo, header string, timefmt string) string {
func enumerateParts(acct *AccountView, conf *config.AercConfig,
msg lib.MessageView, body *models.BodyStructure,
- index []int) ([]*PartViewer, error) {
-
+ index []int,
+) ([]*PartViewer, error) {
var parts []*PartViewer
for i, part := range body.Parts {
curindex := append(index, i+1)
@@ -205,8 +205,8 @@ func enumerateParts(acct *AccountView, conf *config.AercConfig,
}
func createSwitcher(acct *AccountView, switcher *PartSwitcher,
- conf *config.AercConfig, msg lib.MessageView) error {
-
+ conf *config.AercConfig, msg lib.MessageView,
+) error {
var err error
switcher.selected = -1
switcher.showHeaders = conf.Viewer.ShowHeaders
@@ -530,8 +530,8 @@ type PartViewer struct {
func NewPartViewer(acct *AccountView, conf *config.AercConfig,
msg lib.MessageView, part *models.BodyStructure,
- index []int) (*PartViewer, error) {
-
+ index []int,
+) (*PartViewer, error) {
var (
filter *exec.Cmd
pager *exec.Cmd
@@ -634,7 +634,7 @@ func (pv *PartViewer) attemptCopy() {
return
}
if pv.filter != nil {
- pv.copyFilterOutToPager() //delayed until we write to the sink
+ pv.copyFilterOutToPager() // delayed until we write to the sink
}
go func() {
defer logging.PanicHandler()
diff --git a/widgets/scrollable.go b/widgets/scrollable.go
index 0e8bb5a8..f478f858 100644
--- a/widgets/scrollable.go
+++ b/widgets/scrollable.go
@@ -64,5 +64,4 @@ func (s *Scrollable) EnsureScroll(selectingIdx int) {
if s.scroll > maxScroll {
s.scroll = maxScroll
}
-
}
diff --git a/widgets/selector.go b/widgets/selector.go
index ea1dd97a..71224c9b 100644
--- a/widgets/selector.go
+++ b/widgets/selector.go
@@ -176,7 +176,8 @@ type SelectorDialog struct {
}
func NewSelectorDialog(title string, prompt string, options []string, focus int,
- uiConfig *config.UIConfig, cb func(string, error)) *SelectorDialog {
+ uiConfig *config.UIConfig, cb func(string, error),
+) *SelectorDialog {
sd := &SelectorDialog{
callback: cb,
title: title,
diff --git a/widgets/terminal.go b/widgets/terminal.go
index e499e3e4..962b02e8 100644
--- a/widgets/terminal.go
+++ b/widgets/terminal.go
@@ -82,8 +82,7 @@ func init() {
keyMap[tcell.KeyPgUp] = directKey(vterm.KeyPageUp)
keyMap[tcell.KeyPgDn] = directKey(vterm.KeyPageDown)
for i := 0; i < 64; i++ {
- keyMap[tcell.Key(int(tcell.KeyF1)+i)] =
- directKey(vterm.Key(int(vterm.KeyFunction0) + i + 1))
+ keyMap[tcell.Key(int(tcell.KeyF1)+i)] = directKey(vterm.Key(int(vterm.KeyFunction0) + i + 1))
}
keyMap[tcell.KeyTAB] = directKey(vterm.KeyTab)
keyMap[tcell.KeyESC] = directKey(vterm.KeyEscape)
@@ -302,7 +301,6 @@ func (term *Terminal) Draw(ctx *ui.Context) {
term.damageMutex.Lock()
for _, rect := range term.damage {
for x := rect.StartCol(); x < rect.EndCol() && x < ctx.Width(); x += 1 {
-
for y := rect.StartRow(); y < rect.EndRow() && y < ctx.Height(); y += 1 {
coords := coords{x, y}
@@ -472,8 +470,8 @@ func (term *Terminal) onDamage(rect *vterm.Rect) int {
}
func (term *Terminal) onMoveCursor(old *vterm.Pos,
- pos *vterm.Pos, visible bool) int {
-
+ pos *vterm.Pos, visible bool,
+) int {
rows, cols, _ := pty.Getsize(term.pty)
if pos.Row() >= rows || pos.Col() >= cols {
return 1
diff --git a/worker/imap/connect.go b/worker/imap/connect.go
index 5f8cd1c0..bfd95d82 100644
--- a/worker/imap/connect.go
+++ b/worker/imap/connect.go
@@ -16,7 +16,6 @@ import (
// selects the default inbox. If no error is returned, the imap client will be
// in the imap.SelectedState.
func (w *IMAPWorker) connect() (*client.Client, error) {
-
var (
conn *net.TCPConn
err error
@@ -98,8 +97,7 @@ func (w *IMAPWorker) connect() (*client.Client, error) {
// but a valid connection is eventually returned, ensure that it is properly
// closed.
func newTCPConn(addr string, timeout time.Duration) (*net.TCPConn, error) {
-
- var errTCPTimeout = fmt.Errorf("tcp connection timeout")
+ errTCPTimeout := fmt.Errorf("tcp connection timeout")
type tcpConn struct {
conn *net.TCPConn
diff --git a/worker/imap/fetch.go b/worker/imap/fetch.go
index 6ef0baca..b6a5509e 100644
--- a/worker/imap/fetch.go
+++ b/worker/imap/fetch.go
@@ -16,7 +16,8 @@ import (
)
func (imapw *IMAPWorker) handleFetchMessageHeaders(
- msg *types.FetchMessageHeaders) {
+ msg *types.FetchMessageHeaders,
+) {
toFetch := msg.Uids
if imapw.config.cacheEnabled && imapw.cache != nil {
toFetch = imapw.getCachedHeaders(msg)
@@ -76,8 +77,8 @@ func (imapw *IMAPWorker) handleFetchMessageHeaders(
}
func (imapw *IMAPWorker) handleFetchMessageBodyPart(
- msg *types.FetchMessageBodyPart) {
-
+ msg *types.FetchMessageBodyPart,
+) {
logging.Infof("Fetching message %d part: %v", msg.Uid, msg.Part)
var partHeaderSection imap.BodySectionName
@@ -146,8 +147,8 @@ func (imapw *IMAPWorker) handleFetchMessageBodyPart(
}
func (imapw *IMAPWorker) handleFetchFullMessages(
- msg *types.FetchFullMessages) {
-
+ msg *types.FetchFullMessages,
+) {
logging.Infof("Fetching full messages: %v", msg.Uids)
section := &imap.BodySectionName{}
items := []imap.FetchItem{
@@ -205,8 +206,8 @@ func (imapw *IMAPWorker) handleFetchMessageFlags(msg *types.FetchMessageFlags) {
func (imapw *IMAPWorker) handleFetchMessages(
msg types.WorkerMessage, uids []uint32, items []imap.FetchItem,
- procFunc func(*imap.Message) error) {
-
+ procFunc func(*imap.Message) error,
+) {
messages := make(chan *imap.Message)
done := make(chan error)
diff --git a/worker/imap/list.go b/worker/imap/list.go
index 51f4d3e6..67d4c33d 100644
--- a/worker/imap/list.go
+++ b/worker/imap/list.go
@@ -79,5 +79,4 @@ func (imapw *IMAPWorker) handleSearchDirectory(msg *types.SearchDirectory) {
Message: types.RespondTo(msg),
Uids: uids,
}, nil)
-
}
diff --git a/worker/imap/movecopy.go b/worker/imap/movecopy.go
index f1f2b45d..1d25c08c 100644
--- a/worker/imap/movecopy.go
+++ b/worker/imap/movecopy.go
@@ -38,7 +38,6 @@ func (imapw *IMAPWorker) handleAppendMessage(msg *types.AppendMessage) {
Reader: msg.Reader,
Length: msg.Length,
}); err != nil {
-
imapw.worker.PostMessage(&types.Error{
Message: types.RespondTo(msg),
Error: err,
diff --git a/worker/imap/observer.go b/worker/imap/observer.go
index 448128c7..866fac62 100644
--- a/worker/imap/observer.go
+++ b/worker/imap/observer.go
@@ -140,7 +140,8 @@ func (o *observer) DelayedReconnect() error {
func (o *observer) emit(errMsg string) {
o.log("disconnect done->")
o.worker.PostMessage(&types.Done{
- Message: types.RespondTo(&types.Disconnect{})}, nil)
+ Message: types.RespondTo(&types.Disconnect{}),
+ }, nil)
o.log("connection error->")
o.worker.PostMessage(&types.ConnError{
Error: fmt.Errorf(errMsg),
diff --git a/worker/imap/open.go b/worker/imap/open.go
index 2d76f43e..7abebea4 100644
--- a/worker/imap/open.go
+++ b/worker/imap/open.go
@@ -25,8 +25,8 @@ func (imapw *IMAPWorker) handleOpenDirectory(msg *types.OpenDirectory) {
}
func (imapw *IMAPWorker) handleFetchDirectoryContents(
- msg *types.FetchDirectoryContents) {
-
+ msg *types.FetchDirectoryContents,
+) {
logging.Infof("Fetching UID list")
searchCriteria, err := parseSearch(msg.FilterCriteria)
@@ -88,7 +88,8 @@ var sortFieldMap sortFieldMapT = sortFieldMapT{
}
func translateSortCriterions(
- cs []*types.SortCriterion) []sortthread.SortCriterion {
+ cs []*types.SortCriterion,
+) []sortthread.SortCriterion {
result := make([]sortthread.SortCriterion, 0, len(cs))
for _, c := range cs {
if f, ok := sortFieldMap[c.Field]; ok {
@@ -99,7 +100,8 @@ func translateSortCriterions(
}
func (imapw *IMAPWorker) handleDirectoryThreaded(
- msg *types.FetchDirectoryThreaded) {
+ msg *types.FetchDirectoryThreaded,
+) {
logging.Infof("Fetching threaded UID list")
searchCriteria, err := parseSearch(msg.FilterCriteria)
diff --git a/worker/lib/parse.go b/worker/lib/parse.go
index bdd927f9..d92eeda7 100644
--- a/worker/lib/parse.go
+++ b/worker/lib/parse.go
@@ -46,7 +46,7 @@ func FetchEntityPartReader(e *message.Entity, index []int) (io.Reader, error) {
return nil, fmt.Errorf("FetchEntityPartReader: unexpected code reached")
}
-//TODO: the UI doesn't seem to like readers which aren't buffers
+// TODO: the UI doesn't seem to like readers which aren't buffers
func bufReader(e *message.Entity) (io.Reader, error) {
var buf bytes.Buffer
if _, err := io.Copy(&buf, e.Body); err != nil {
@@ -157,7 +157,7 @@ func parseEnvelope(h *mail.Header) (*models.Envelope, error) {
}
msgID, err := h.MessageID()
if err != nil {
- //proper parsing failed, so fall back to whatever is there
+ // proper parsing failed, so fall back to whatever is there
msgID, err = h.Text("message-id")
if err != nil {
return nil, err
diff --git a/worker/lib/search.go b/worker/lib/search.go
index c7d3bee7..dc29a66f 100644
--- a/worker/lib/search.go
+++ b/worker/lib/search.go
@@ -97,8 +97,8 @@ func Search(messages []RawMessage, criteria *searchCriteria) ([]uint32, error) {
// searchMessage executes the search criteria for the given RawMessage,
// returns true if search succeeded
func searchMessage(message RawMessage, criteria *searchCriteria,
- parts MsgParts) (bool, error) {
-
+ parts MsgParts,
+) (bool, error) {
// setup parts of the message to use in the search
// this is so that we try to minimise reading unnecessary parts
var (
diff --git a/worker/lib/sort.go b/worker/lib/sort.go
index 958cbed7..3bfd7d41 100644
--- a/worker/lib/sort.go
+++ b/worker/lib/sort.go
@@ -10,7 +10,8 @@ import (
)
func Sort(messageInfos []*models.MessageInfo,
- criteria []*types.SortCriterion) ([]uint32, error) {
+ criteria []*types.SortCriterion,
+) ([]uint32, error) {
// loop through in reverse to ensure we sort by non-primary fields first
for i := len(criteria) - 1; i >= 0; i-- {
criterion := criteria[i]
@@ -62,7 +63,8 @@ func Sort(messageInfos []*models.MessageInfo,
}
func sortAddresses(messageInfos []*models.MessageInfo, criterion *types.SortCriterion,
- getValue func(*models.MessageInfo) []*mail.Address) {
+ getValue func(*models.MessageInfo) []*mail.Address,
+) {
sortSlice(criterion, messageInfos, func(i, j int) bool {
addressI, addressJ := getValue(messageInfos[i]), getValue(messageInfos[j])
var firstI, firstJ *mail.Address
@@ -92,7 +94,8 @@ func sortAddresses(messageInfos []*models.MessageInfo, criterion *types.SortCrit
}
func sortFlags(messageInfos []*models.MessageInfo, criterion *types.SortCriterion,
- testFlag models.Flag) {
+ testFlag models.Flag,
+) {
var slice []*boolStore
for _, msgInfo := range messageInfos {
flagPresent := false
@@ -116,7 +119,8 @@ func sortFlags(messageInfos []*models.MessageInfo, criterion *types.SortCriterio
}
func sortStrings(messageInfos []*models.MessageInfo, criterion *types.SortCriterion,
- getValue func(*models.MessageInfo) string) {
+ getValue func(*models.MessageInfo) string,
+) {
var slice []*lexiStore
for _, msgInfo := range messageInfos {
slice = append(slice, &lexiStore{
diff --git a/worker/maildir/container.go b/worker/maildir/container.go
index 83f850ab..1d971a4d 100644
--- a/worker/maildir/container.go
+++ b/worker/maildir/container.go
@@ -35,8 +35,10 @@ func NewContainer(dir string, maildirpp bool) (*Container, error) {
if !s.IsDir() {
return nil, fmt.Errorf("Given maildir '%s' not a directory", dir)
}
- return &Container{dir: dir, uids: uidstore.NewStore(),
- recentUIDS: make(map[uint32]struct{}), maildirpp: maildirpp}, nil
+ return &Container{
+ dir: dir, uids: uidstore.NewStore(),
+ recentUIDS: make(map[uint32]struct{}), maildirpp: maildirpp,
+ }, nil
}
// ListFolders returns a list of maildir folders in the container
@@ -183,7 +185,8 @@ func (c *Container) DeleteAll(d maildir.Dir, uids []uint32) ([]uint32, error) {
}
func (c *Container) CopyAll(
- dest maildir.Dir, src maildir.Dir, uids []uint32) error {
+ dest maildir.Dir, src maildir.Dir, uids []uint32,
+) error {
for _, uid := range uids {
if err := c.copyMessage(dest, src, uid); err != nil {
return fmt.Errorf("could not copy message %d: %v", uid, err)
@@ -193,7 +196,8 @@ func (c *Container) CopyAll(
}
func (c *Container) copyMessage(
- dest maildir.Dir, src maildir.Dir, uid uint32) error {
+ dest maildir.Dir, src maildir.Dir, uid uint32,
+) error {
key, ok := c.uids.GetKey(uid)
if !ok {
return fmt.Errorf("could not find key for message id %d", uid)
diff --git a/worker/maildir/search.go b/worker/maildir/search.go
index b8e91df0..7a8ba0e0 100644
--- a/worker/maildir/search.go
+++ b/worker/maildir/search.go
@@ -111,7 +111,8 @@ func (w *Worker) search(criteria *searchCriteria) ([]uint32, error) {
// Execute the search criteria for the given key, returns true if search succeeded
func (w *Worker) searchKey(key uint32, criteria *searchCriteria,
- parts MsgParts) (bool, error) {
+ parts MsgParts,
+) (bool, error) {
message, err := w.c.Message(*w.selected, key)
if err != nil {
return false, err
diff --git a/worker/maildir/worker.go b/worker/maildir/worker.go
index d60315b8..838a3b7f 100644
--- a/worker/maildir/worker.go
+++ b/worker/maildir/worker.go
@@ -406,7 +406,8 @@ func (w *Worker) handleOpenDirectory(msg *types.OpenDirectory) error {
}
func (w *Worker) handleFetchDirectoryContents(
- msg *types.FetchDirectoryContents) error {
+ msg *types.FetchDirectoryContents,
+) error {
var (
uids []uint32
err error
@@ -482,7 +483,8 @@ func (w *Worker) handleRemoveDirectory(msg *types.RemoveDirectory) error {
}
func (w *Worker) handleFetchMessageHeaders(
- msg *types.FetchMessageHeaders) error {
+ msg *types.FetchMessageHeaders,
+) error {
for _, uid := range msg.Uids {
info, err := w.msgInfoFromUid(uid)
if err != nil {
@@ -500,8 +502,8 @@ func (w *Worker) handleFetchMessageHeaders(
}
func (w *Worker) handleFetchMessageBodyPart(
- msg *types.FetchMessageBodyPart) error {
-
+ msg *types.FetchMessageBodyPart,
+) error {
// get reader
m, err := w.c.Message(*w.selected, msg.Uid)
if err != nil {
diff --git a/worker/mbox/create.go b/worker/mbox/create.go
index 7c4d9f7b..266398ab 100644
--- a/worker/mbox/create.go
+++ b/worker/mbox/create.go
@@ -8,7 +8,6 @@ import (
)
func createMailboxContainer(path string) (*mailboxContainer, error) {
-
file, err := os.Open(path)
if err != nil {
return nil, err
diff --git a/worker/mbox/worker.go b/worker/mbox/worker.go
index 4c0a1271..6ba886ae 100644
--- a/worker/mbox/worker.go
+++ b/worker/mbox/worker.go
@@ -99,7 +99,8 @@ func (w *mboxWorker) handleMessage(msg types.WorkerMessage) error {
if !ok {
w.folder = w.data.Create(w.name)
w.worker.PostMessage(&types.Done{
- Message: types.RespondTo(&types.CreateDirectory{})}, nil)
+ Message: types.RespondTo(&types.CreateDirectory{}),
+ }, nil)
}
w.worker.PostMessage(&types.DirectoryInfo{
Info: w.data.DirectoryInfo(msg.Directory),
@@ -338,7 +339,8 @@ func (w *mboxWorker) handleMessage(msg types.WorkerMessage) error {
if !ok {
folder = w.data.Create(msg.Destination)
w.worker.PostMessage(&types.Done{
- Message: types.RespondTo(&types.CreateDirectory{})}, nil)
+ Message: types.RespondTo(&types.CreateDirectory{}),
+ }, nil)
}
if err := folder.Append(msg.Reader, msg.Flags); err != nil {
diff --git a/worker/notmuch/lib/database.go b/worker/notmuch/lib/database.go
index 801f122a..ac1a28ed 100644
--- a/worker/notmuch/lib/database.go
+++ b/worker/notmuch/lib/database.go
@@ -61,9 +61,9 @@ func (db *DB) connect(writable bool) error {
return nil
}
-//withConnection calls callback on the DB object, cleaning up upon return.
-//the error returned is from the connection attempt, if not successful,
-//or from the callback otherwise.
+// withConnection calls callback on the DB object, cleaning up upon return.
+// the error returned is from the connection attempt, if not successful,
+// or from the callback otherwise.
func (db *DB) withConnection(writable bool, cb func(*notmuch.DB) error) error {
too_old := time.Now().After(db.lastOpenTime.Add(MAX_DB_AGE))
if db.db == nil || writable || too_old {
@@ -104,8 +104,8 @@ func (db *DB) ListTags() ([]string, error) {
return result, err
}
-//getQuery returns a query based on the provided query string.
-//It also configures the query as specified on the worker
+// getQuery returns a query based on the provided query string.
+// It also configures the query as specified on the worker
func (db *DB) newQuery(ndb *notmuch.DB, query string) (*notmuch.Query, error) {
q := ndb.NewQuery(query)
q.SetExcludeScheme(notmuch.EXCLUDE_ALL)
@@ -225,7 +225,8 @@ func (db *DB) MsgTags(key string) ([]string, error) {
}
func (db *DB) msgModify(key string,
- cb func(*notmuch.Message) error) error {
+ cb func(*notmuch.Message) error,
+) error {
err := db.withConnection(true, func(ndb *notmuch.DB) error {
msg, err := ndb.FindMessage(key)
if err != nil {
@@ -281,7 +282,8 @@ func (db *DB) KeyFromUid(uid uint32) (string, bool) {
}
func (db *DB) enumerateThread(nt *notmuch.Threads,
- valid map[string]struct{}) ([]*types.Thread, error) {
+ valid map[string]struct{},
+) ([]*types.Thread, error) {
var res []*types.Thread
var thread *notmuch.Thread
for nt.Next(&thread) {
@@ -292,7 +294,8 @@ func (db *DB) enumerateThread(nt *notmuch.Threads,
}
func (db *DB) makeThread(parent *types.Thread, msgs *notmuch.Messages,
- valid map[string]struct{}) *types.Thread {
+ valid map[string]struct{},
+) *types.Thread {
var lastSibling *types.Thread
var msg *notmuch.Message
for msgs.Next(&msg) {
diff --git a/worker/notmuch/message.go b/worker/notmuch/message.go
index e39fb17a..fe82700e 100644
--- a/worker/notmuch/message.go
+++ b/worker/notmuch/message.go
@@ -160,16 +160,16 @@ func (m *Message) Filename() (string, error) {
return m.db.MsgFilename(m.key)
}
-//AddTag adds a single tag.
-//Consider using *Message.ModifyTags for multiple additions / removals
-//instead of looping over a tag array
+// AddTag adds a single tag.
+// Consider using *Message.ModifyTags for multiple additions / removals
+// instead of looping over a tag array
func (m *Message) AddTag(tag string) error {
return m.ModifyTags([]string{tag}, nil)
}
-//RemoveTag removes a single tag.
-//Consider using *Message.ModifyTags for multiple additions / removals
-//instead of looping over a tag array
+// RemoveTag removes a single tag.
+// Consider using *Message.ModifyTags for multiple additions / removals
+// instead of looping over a tag array
func (m *Message) RemoveTag(tag string) error {
return m.ModifyTags(nil, []string{tag})
}
diff --git a/worker/notmuch/worker.go b/worker/notmuch/worker.go
index 36ef10f6..2c80dbd4 100644
--- a/worker/notmuch/worker.go
+++ b/worker/notmuch/worker.go
@@ -51,8 +51,10 @@ type worker struct {
// NewWorker creates a new notmuch worker with the provided worker.
func NewWorker(w *types.Worker) (types.Backend, error) {
events := make(chan eventType, 20)
- return &worker{w: w,
- nmEvents: events}, nil
+ return &worker{
+ w: w,
+ nmEvents: events,
+ }, nil
}
// Run starts the worker's message handling loop.
@@ -92,6 +94,7 @@ func (w *worker) err(msg types.WorkerMessage, err error) {
Error: err,
}, nil)
}
+
func (w *worker) handleMessage(msg types.WorkerMessage) error {
if w.setupErr != nil {
// only configure can recover from a config error, bail for everything else
@@ -211,12 +214,14 @@ func (w *worker) handleListDirectories(msg *types.ListDirectories) error {
}
func (w *worker) gatherDirectoryInfo(name string, query string) (
- *types.DirectoryInfo, error) {
+ *types.DirectoryInfo, error,
+) {
return w.buildDirInfo(name, query, false)
}
func (w *worker) buildDirInfo(name string, query string, skipSort bool) (
- *types.DirectoryInfo, error) {
+ *types.DirectoryInfo, error,
+) {
count, err := w.db.QueryCountMessages(query)
if err != nil {
return nil, err
@@ -254,8 +259,8 @@ func (w *worker) emitDirectoryInfo(name string) error {
return nil
}
-//queryFromName either returns the friendly ID if aliased or the name itself
-//assuming it to be the query
+// queryFromName either returns the friendly ID if aliased or the name itself
+// assuming it to be the query
func (w *worker) queryFromName(name string) string {
// try the friendly name first, if that fails assume it's a query
q, ok := w.nameQueryMap[name]
@@ -281,7 +286,8 @@ func (w *worker) handleOpenDirectory(msg *types.OpenDirectory) error {
}
func (w *worker) handleFetchDirectoryContents(
- msg *types.FetchDirectoryContents) error {
+ msg *types.FetchDirectoryContents,
+) error {
w.currentSortCriteria = msg.SortCriteria
err := w.emitDirectoryContents(msg)
if err != nil {
@@ -292,7 +298,8 @@ func (w *worker) handleFetchDirectoryContents(
}
func (w *worker) handleFetchDirectoryThreaded(
- msg *types.FetchDirectoryThreaded) error {
+ msg *types.FetchDirectoryThreaded,
+) error {
// w.currentSortCriteria = msg.SortCriteria
err := w.emitDirectoryThreaded(msg)
if err != nil {
@@ -303,7 +310,8 @@ func (w *worker) handleFetchDirectoryThreaded(
}
func (w *worker) handleFetchMessageHeaders(
- msg *types.FetchMessageHeaders) error {
+ msg *types.FetchMessageHeaders,
+) error {
for _, uid := range msg.Uids {
m, err := w.msgFromUid(uid)
if err != nil {
@@ -350,8 +358,8 @@ func (w *worker) msgFromUid(uid uint32) (*Message, error) {
}
func (w *worker) handleFetchMessageBodyPart(
- msg *types.FetchMessageBodyPart) error {
-
+ msg *types.FetchMessageBodyPart,
+) error {
m, err := w.msgFromUid(msg.Uid)
if err != nil {
logging.Errorf("could not get message %d: %v", msg.Uid, err)
@@ -542,7 +550,8 @@ func (w *worker) loadQueryMap(acctConfig *config.AccountConfig) error {
}
func (w *worker) loadExcludeTags(
- acctConfig *config.AccountConfig) []string {
+ acctConfig *config.AccountConfig,
+) []string {
raw, ok := acctConfig.Params["exclude-tags"]
if !ok {
// nothing to do
@@ -598,7 +607,8 @@ func (w *worker) emitDirectoryThreaded(parent types.WorkerMessage) error {
}
func (w *worker) emitMessageInfo(m *Message,
- parent types.WorkerMessage) error {
+ parent types.WorkerMessage,
+) error {
info, err := m.MessageInfo()
if err != nil {
return fmt.Errorf("could not get MessageInfo: %v", err)
@@ -620,7 +630,8 @@ func (w *worker) emitLabelList() {
}
func (w *worker) sort(uids []uint32,
- criteria []*types.SortCriterion) ([]uint32, error) {
+ criteria []*types.SortCriterion,
+) ([]uint32, error) {
if len(criteria) == 0 {
return uids, nil
}
diff --git a/worker/types/thread.go b/worker/types/thread.go
index 7c0cc5b8..705b3e4e 100644
--- a/worker/types/thread.go
+++ b/worker/types/thread.go
@@ -94,7 +94,7 @@ var ErrSkipThread = errors.New("skip this Thread")
type NewThreadWalkFn func(t *Thread, level int, currentErr error) error
-//Implement interface to be able to sort threads by newest (max UID)
+// Implement interface to be able to sort threads by newest (max UID)
type ByUID []*Thread
func getMaxUID(thread *Thread) uint32 {
@@ -113,9 +113,11 @@ func getMaxUID(thread *Thread) uint32 {
func (s ByUID) Len() int {
return len(s)
}
+
func (s ByUID) Swap(i, j int) {
s[i], s[j] = s[j], s[i]
}
+
func (s ByUID) Less(i, j int) bool {
maxUID_i := getMaxUID(s[i])
maxUID_j := getMaxUID(s[j])
diff --git a/worker/types/thread_test.go b/worker/types/thread_test.go
index e79dddd1..803f7ba9 100644
--- a/worker/types/thread_test.go
+++ b/worker/types/thread_test.go
@@ -85,7 +85,7 @@ func TestNewWalk(t *testing.T) {
prefix = append(prefix, " ")
}
} else if lvl < lastLevel {
- //ascended, need to trim the prefix layers
+ // ascended, need to trim the prefix layers
diff := lastLevel - lvl
prefix = prefix[:len(prefix)-diff]
}
diff --git a/worker/types/worker.go b/worker/types/worker.go
index 8f179df6..9e247982 100644
--- a/worker/types/worker.go
+++ b/worker/types/worker.go
@@ -36,7 +36,6 @@ func (worker *Worker) setId(msg WorkerMessage) {
}
func (worker *Worker) PostAction(msg WorkerMessage, cb func(msg WorkerMessage)) {
-
worker.setId(msg)
if resp := msg.InResponseTo(); resp != nil {
@@ -52,8 +51,8 @@ func (worker *Worker) PostAction(msg WorkerMessage, cb func(msg WorkerMessage))
}
func (worker *Worker) PostMessage(msg WorkerMessage,
- cb func(msg WorkerMessage)) {
-
+ cb func(msg WorkerMessage),
+) {
worker.setId(msg)
if resp := msg.InResponseTo(); resp != nil {