fuzzy_notes 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README +35 -0
- data/TODO +3 -2
- data/bin/fnote +1 -1
- data/lib/fuzzy_notes/cipher.rb +5 -5
- data/lib/fuzzy_notes/fuzzy_finder.rb +1 -1
- data/lib/fuzzy_notes/logger.rb +13 -2
- data/lib/fuzzy_notes/notes.rb +2 -2
- metadata +7 -7
data/README
CHANGED
@@ -1 +1,36 @@
|
|
1
1
|
README
|
2
|
+
|
3
|
+
fuzzy_notes is a command line note manager with some cool features:
|
4
|
+
|
5
|
+
1. Emacs/Vim/Any CLI text editor support
|
6
|
+
2. Fuzzy path search and full text search across one or more note directories
|
7
|
+
3. OpenSSL encryption
|
8
|
+
4. Evernote integration (coming soon...)
|
9
|
+
|
10
|
+
|
11
|
+
CONFIG
|
12
|
+
|
13
|
+
A config file is not required if you're ok with fuzzy_note's defaults settings
|
14
|
+
outlined below:
|
15
|
+
|
16
|
+
:note_paths:
|
17
|
+
- ~/notes
|
18
|
+
:verbose: false
|
19
|
+
:full_text_search: false
|
20
|
+
|
21
|
+
fuzzy_notes looks for a ~/.fuzzy_notes config file or the -c option and
|
22
|
+
overwrites the defaults with the contents of the YAML file specified.
|
23
|
+
|
24
|
+
|
25
|
+
USAGE
|
26
|
+
|
27
|
+
fnote [options] [keyword1, keyword2...]
|
28
|
+
-c, --config [CONFIG] Specify config file
|
29
|
+
-p, --print Dump matching notes to stdout
|
30
|
+
-l, --list List statistics for matching notes
|
31
|
+
-i, --info Alias for 'list'
|
32
|
+
-s, --search Perform a full text search when matching notes
|
33
|
+
-v, --verbose Enable debug output
|
34
|
+
-e, --encrypt Encrypt matching notes
|
35
|
+
-d, --decrypt Decrypt matching notes
|
36
|
+
-h, --help Show usage
|
data/TODO
CHANGED
@@ -1,2 +1,3 @@
|
|
1
|
-
TODO
|
2
|
-
-Evernote
|
1
|
+
TODO
|
2
|
+
-Evernote integration
|
3
|
+
-On the fly decryption/editing/re-encryption
|
data/bin/fnote
CHANGED
data/lib/fuzzy_notes/cipher.rb
CHANGED
@@ -5,7 +5,7 @@ class FuzzyNotes::Cipher
|
|
5
5
|
private_class_method :new
|
6
6
|
|
7
7
|
def self.apply_cipher(file_paths, decrypt = false)
|
8
|
-
extension, action = decrypt ? ['.txt',
|
8
|
+
extension, action = decrypt ? ['.txt', :dec] : ['.enc', :enc]
|
9
9
|
password = get_password
|
10
10
|
cipher = Gibberish::AES.new(password)
|
11
11
|
|
@@ -16,12 +16,12 @@ class FuzzyNotes::Cipher
|
|
16
16
|
|
17
17
|
begin
|
18
18
|
ciphertext = cipher.send(action, File.read(path))
|
19
|
-
log.debug "
|
19
|
+
log.debug "writing #{decrypt ? 'un' : ''}encrypted content to: #{pathname}/#{filename}#{extension}"
|
20
20
|
File.open("#{pathname}/#{filename}#{extension}", 'w') { |f| f << ciphertext }
|
21
|
-
log.debug "
|
21
|
+
log.debug "deleting #{decrypt ? '' : 'un'}encrypted file: #{path}"
|
22
22
|
File.delete(path)
|
23
23
|
rescue OpenSSL::Cipher::CipherError => e
|
24
|
-
log.error
|
24
|
+
log.error e
|
25
25
|
end
|
26
26
|
end
|
27
27
|
end
|
@@ -30,7 +30,7 @@ class FuzzyNotes::Cipher
|
|
30
30
|
def self.get_password
|
31
31
|
printf 'Enter password (will not be shown):'
|
32
32
|
`stty -echo`; password = STDIN.gets.strip;`stty echo`; puts
|
33
|
-
log.debug "
|
33
|
+
log.debug "entered password: #{password.inspect}"
|
34
34
|
password
|
35
35
|
end
|
36
36
|
|
@@ -8,7 +8,7 @@ class FuzzyNotes::FuzzyFinder
|
|
8
8
|
def self.find(path, params = {})
|
9
9
|
keywords, extensions, search = params.values_at(:keywords, :extensions, :full_text_search)
|
10
10
|
match_proc = method(search ? :full_text_match? : :file_name_match?)
|
11
|
-
log.debug "
|
11
|
+
log.debug "search path: #{path}"
|
12
12
|
|
13
13
|
all_files, matching_files = [], []
|
14
14
|
Find.find(*path) do |file_path|
|
data/lib/fuzzy_notes/logger.rb
CHANGED
@@ -3,14 +3,25 @@ require 'buffered_logger'
|
|
3
3
|
class FuzzyNotes::Log
|
4
4
|
private_class_method :new
|
5
5
|
LOG_LEVEL = 1
|
6
|
+
|
6
7
|
|
7
8
|
def self.init_log(log_level)
|
8
|
-
@log = BufferedLogger.new(STDOUT, log_level)
|
9
|
+
@log = BufferedLogger.new(STDOUT, log_level || LOG_LEVEL, default_format)
|
9
10
|
end
|
10
11
|
|
11
12
|
def self.log
|
12
|
-
@log ||= BufferedLogger.new(STDOUT, LOG_LEVEL)
|
13
|
+
@log ||= BufferedLogger.new(STDOUT, LOG_LEVEL, default_format)
|
13
14
|
end
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def self.default_format
|
19
|
+
{ :debug => "$negative DEBUG: $white %s",
|
20
|
+
:info => "$green INFO: $white %s",
|
21
|
+
:warn => "$yellow WARNING: $white %s",
|
22
|
+
:error => "$red ERROR: $white %s" }
|
23
|
+
end
|
24
|
+
|
14
25
|
end
|
15
26
|
|
16
27
|
|
data/lib/fuzzy_notes/notes.rb
CHANGED
@@ -16,10 +16,10 @@ attr_reader :matching_notes, :all_notes
|
|
16
16
|
def initialize(params = {})
|
17
17
|
parse_init_params(params)
|
18
18
|
FuzzyNotes::Log.init_log(@log_level)
|
19
|
-
log.debug "
|
19
|
+
log.debug "init attributes: \n#{attributes}"
|
20
20
|
|
21
21
|
unless note_paths_valid?
|
22
|
-
log.error "
|
22
|
+
log.error "no valid note paths found, exiting"
|
23
23
|
exit
|
24
24
|
end
|
25
25
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fuzzy_notes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 3
|
10
|
+
version: 0.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Alex Skryl
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-
|
18
|
+
date: 2011-07-19 00:00:00 -05:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -55,11 +55,11 @@ extensions: []
|
|
55
55
|
extra_rdoc_files: []
|
56
56
|
|
57
57
|
files:
|
58
|
-
- lib/fuzzy_notes.rb
|
59
|
-
- lib/fuzzy_notes/logger.rb
|
60
58
|
- lib/fuzzy_notes/cipher.rb
|
61
|
-
- lib/fuzzy_notes/notes.rb
|
62
59
|
- lib/fuzzy_notes/fuzzy_finder.rb
|
60
|
+
- lib/fuzzy_notes/logger.rb
|
61
|
+
- lib/fuzzy_notes/notes.rb
|
62
|
+
- lib/fuzzy_notes.rb
|
63
63
|
- bin/fnote
|
64
64
|
- README
|
65
65
|
- TODO
|