aboutsummaryrefslogtreecommitdiffstats
path: root/drive/list.go
diff options
context:
space:
mode:
authorPetter Rasmussen2016-01-27 20:52:07 +0100
committerPetter Rasmussen2016-01-27 21:01:11 +0100
commitd52aa78ffadf6f4ef2943af207b8a21ef88881ee (patch)
tree36bd8cd76175219ca0751bec6e19511f5a0b735d /drive/list.go
parent35bbe302d53346426541f63f134cb02a11c50e78 (diff)
downloadgdrive-d52aa78ffadf6f4ef2943af207b8a21ef88881ee.tar.bz2
Add file type column
Diffstat (limited to 'drive/list.go')
-rw-r--r--drive/list.go16
1 files changed, 13 insertions, 3 deletions
diff --git a/drive/list.go b/drive/list.go
index 5649a12..20dcda3 100644
--- a/drive/list.go
+++ b/drive/list.go
@@ -17,7 +17,7 @@ type ListFilesArgs struct {
}
func (self *Drive) List(args ListFilesArgs) (err error) {
- fileList, err := self.service.Files.List().PageSize(args.MaxFiles).Q(args.Query).Fields("nextPageToken", "files(id,name,size,createdTime)").Do()
+ fileList, err := self.service.Files.List().PageSize(args.MaxFiles).Q(args.Query).Fields("files(id,name,md5Checksum,mimeType,size,createdTime)").Do()
if err != nil {
return fmt.Errorf("Failed listing files: %s", err)
}
@@ -46,13 +46,14 @@ func PrintFileList(args PrintFileListArgs) {
w.Init(args.Out, 0, 0, 3, ' ', 0)
if !args.SkipHeader {
- fmt.Fprintln(w, "Id\tName\tSize\tCreated")
+ fmt.Fprintln(w, "Id\tName\tType\tSize\tCreated")
}
for _, f := range args.Files {
- fmt.Fprintf(w, "%s\t%s\t%s\t%s\n",
+ fmt.Fprintf(w, "%s\t%s\t%s\t%s\t%s\n",
f.Id,
truncateString(f.Name, args.NameWidth),
+ filetype(f),
formatSize(f.Size, args.SizeInBytes),
formatDatetime(f.CreatedTime),
)
@@ -60,3 +61,12 @@ func PrintFileList(args PrintFileListArgs) {
w.Flush()
}
+
+func filetype(f *drive.File) string {
+ if isDir(f) {
+ return "dir"
+ } else if isBinary(f) {
+ return "bin"
+ }
+ return "doc"
+}