Skip to content

Latest commit

 

History

History
55 lines (43 loc) · 2.48 KB

TODO.rdoc

File metadata and controls

55 lines (43 loc) · 2.48 KB

TODO

Future Releases

Some of these might not happen, but they’re being thought about. Feel free to add your own.

  • “Push to S3” method (for backing up, etc)

  • Classifiers and file-content based rules. Example:

    • Take bills and bank statements, classify them as the type of document they are, and then rename them based on their content:

      • “eStatement.pdf”, “eStatement (1).pdf”, “eStatement (2).pdf”, “statement-1c3f34d.pdf”, “statement-2c53ad1.pdf”, “document-34d1c3f.pdf”, “document-3ad12c5.pdf”

        > [‘ING’, ‘ING’, ‘ING’, ‘Citi’, ‘Citi’, ‘UI’, ‘UI’]

      • For example, ING statements have a date found with the pattern /Your Savings Summary as ofs+(.*?)$/i, Citi statements have the pattern /Statement Closing Date.*?(dd/dd/dddd)/im, etc. Map using the patterns and rules.

      # (Define classification rules in some format here, naming one ‘bank_statements’ with the extraction rule ‘date’)

      dir(‘~/Downloads/*.pdf’).classify(as: ‘bank_statements’, extract: ‘date’).each do |original_path, classification, date|

      move(original_path, "~/Bills/#{classification}/#{date.strftime(...)}.pdf")

      end

  • Daemon mode

  • Menubar/system tray icon

  • Import of rules from other programs

  • Better user documentation of the DSL (in Maid::Tools)

  • Man pages, e.g. maid(1) and maid(5)

  • Use a Cocoa interface to get Spotlight results

  • “Watch” rules that use Folder Actions on OS X (and icron on Linux?). Something like:

    Maid.rules do
      watch '~/Downloads' do
        rule 'watch rule 1' do
          # ...
        end
    
        rule 'watch rule 2' do
          # ...
        end
      end
    
      rule 'normal rule 3' do
        # ...
      end
    end
    
  • Guard has some similar “watch” functionality. Here’s what they use:

    • FSEvent support on Mac OS X 10.5+ (without RubyCocoa!, rb-fsevent gem, >= 0.3.5 required).

    • Inotify support on Linux (rb-inotify gem, >= 0.5.1 required).

    • Directory Change Notification support on Windows (rb-fchange, >= 0.0.2 required).

    • Polling on the other operating systems (help us to support more OS).

    • Automatic & Super fast (when polling is not used) files modifications detection (even new files are detected).

  • Possibly: notifications

    • Growl notifications (growlnotify & growl gem required).

    • Libnotify notifications (libnotify gem required).

  • GUI for configuring easy rules