mdv 0.1.5 → 0.1.6
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.
- checksums.yaml +4 -4
- data/Changelog.md +7 -0
- data/lib/mdv.rb +1 -0
- data/lib/mdv/markdown_viewer.rb +77 -0
- metadata +7 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1df332378426042684724aaa28a08c2fb3853d66
|
4
|
+
data.tar.gz: 017b11187bfae809be0674dee8ab762bedcf0be6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c48e520203c6a73f70704606f3d6cfeb5e8ca11ebd317e631174682a5f3177802d104f6e449e15d4f154f12173ef26da265355a2fdeccdecb87ceab5aded7cee
|
7
|
+
data.tar.gz: f5bd85a36c6bb40b13c827a03fa19dade9f1789fb26381f14a414d5c16e74219b1b9cbfc6e7303c234b985af3e5046fd1b6de4c4293f42ad7fa6fe45fd8688f2
|
data/Changelog.md
CHANGED
data/lib/mdv.rb
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require_relative 'mdv/markdown_viewer'
|
@@ -0,0 +1,77 @@
|
|
1
|
+
require 'gir_ffi-gtk3'
|
2
|
+
GirFFI.setup :WebKit, '3.0'
|
3
|
+
|
4
|
+
module MDV
|
5
|
+
# Markdown viewer window class
|
6
|
+
class MarkdownViewer
|
7
|
+
attr_reader :file
|
8
|
+
|
9
|
+
def initialize(file)
|
10
|
+
@file = file
|
11
|
+
setup_gui
|
12
|
+
reload
|
13
|
+
connect_signals
|
14
|
+
@win.show_all
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def connect_signals
|
20
|
+
connect_key_press_event_signal
|
21
|
+
connect_destroy_signal
|
22
|
+
end
|
23
|
+
|
24
|
+
def connect_destroy_signal
|
25
|
+
@win.signal_connect('destroy') { Gtk.main_quit }
|
26
|
+
end
|
27
|
+
|
28
|
+
def connect_key_press_event_signal
|
29
|
+
@win.signal_connect 'key-press-event' do |_wdg, evt, _ud|
|
30
|
+
handle_key(evt) if evt.state == :control_mask
|
31
|
+
false
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
def handle_key(evt)
|
36
|
+
case evt.keyval
|
37
|
+
when 'q'.ord
|
38
|
+
@win.destroy
|
39
|
+
when 'r'.ord
|
40
|
+
reload
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
def setup_gui
|
45
|
+
@win = Gtk::Window.new :toplevel
|
46
|
+
@win.set_default_geometry 700, 500
|
47
|
+
|
48
|
+
@win.add scrolled_window
|
49
|
+
end
|
50
|
+
|
51
|
+
def scrolled_window
|
52
|
+
@scr ||= Gtk::ScrolledWindow.new(nil, nil).tap do |it|
|
53
|
+
it.add web_view
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def web_view
|
58
|
+
@wv ||= WebKit::WebView.new
|
59
|
+
end
|
60
|
+
|
61
|
+
def fullpath
|
62
|
+
@fullpath ||= File.expand_path(file, Dir.pwd)
|
63
|
+
end
|
64
|
+
|
65
|
+
def base_uri
|
66
|
+
@base_uri ||= "file://#{fullpath}"
|
67
|
+
end
|
68
|
+
|
69
|
+
def html
|
70
|
+
GitHub::Markup.render(fullpath)
|
71
|
+
end
|
72
|
+
|
73
|
+
def reload
|
74
|
+
web_view.load_string html, nil, nil, base_uri
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mdv
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matijs van Zuijlen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-10-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gir_ffi-gtk
|
@@ -108,10 +108,13 @@ files:
|
|
108
108
|
- README.md
|
109
109
|
- Rakefile
|
110
110
|
- bin/mdv
|
111
|
+
- lib/mdv.rb
|
112
|
+
- lib/mdv/markdown_viewer.rb
|
111
113
|
- test/end_to_end/basic_run_test.rb
|
112
114
|
- test/test_helper.rb
|
113
115
|
homepage: http://www.github.com/mvz/mdv
|
114
|
-
licenses:
|
116
|
+
licenses:
|
117
|
+
- MIT
|
115
118
|
metadata: {}
|
116
119
|
post_install_message:
|
117
120
|
rdoc_options: []
|
@@ -136,3 +139,4 @@ summary: Simple Markdown Viewer
|
|
136
139
|
test_files:
|
137
140
|
- test/test_helper.rb
|
138
141
|
- test/end_to_end/basic_run_test.rb
|
142
|
+
has_rdoc:
|