hed 0.0.1 → 0.0.2

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.
Files changed (5) hide show
  1. checksums.yaml +8 -8
  2. data/bin/hed +2 -35
  3. data/lib/hed/mainwnd.rb +54 -0
  4. data/lib/hed/runner.rb +28 -0
  5. metadata +4 -2
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YjJhYmQ1MmY0MWJkODEwYjYzMTMyN2UxOWNlMTFiNDI4OTZkYTEyOA==
4
+ NDlhM2M5ZWU5MWVhNGE1YzdlZDBmZDQ0YWJjYmFmNDg2NjAyNDVmMQ==
5
5
  data.tar.gz: !binary |-
6
- NDdlM2IzNDYzMzMzZjFiMTUyYmExNjNkOWE2MWFjMDllYWU1OGFlZg==
6
+ NjgyYTAwZTdkOTJkNmJkNTNmZDJiYTcxNzkyYzA5NDZmMjAzMzI5OA==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- NzE4OTg2MTUyODg1NjI3YTMyNTQ4MjExNjA5OWViMmIzMzRhNDlhNjFhZmQ1
10
- YjVkZjViNDhhNGFkOTBhMTRmYzRiYTE5MTY2MDhjOWFhM2NjODcxYTU2N2M4
11
- YmY4NjYxN2YxYTIzMzE5NjM1OTFlOWNjMTY3OGI4OTJjNjczZmI=
9
+ N2JkYTQzMTUyOTdkMTllYmZkNjcxYmUyMmE4OGZjMDhlNWUwMTJiMTJkODI5
10
+ YmMyNmFjYTVkZDVlZTdjZjlmNjc1Njc0YWRmZmQ2MTg2MDdjNTYyZjM4N2Ux
11
+ OTZmYjhhY2M4MjU2YTI0OWNiMDVhMmU1YWVjY2M3NDU5OGIyOTI=
12
12
  data.tar.gz: !binary |-
13
- OWM4NTFlODliODAyN2QyZGVkNmM0NGRmM2VhNjZjYThlNWM0OTgyOWI3ZGZm
14
- MzU1YTE2NmVlMDExN2ZiNDIzZmM1NDBiYWMzYzU5YmVlODQ1ZGYyMzkwNDY4
15
- OWMzNzQxNzc1MmI3ODkyMzRjMzA4MDI5YzgzNWM4OGY1ZGQwNjI=
13
+ YmQ0N2FjNDY1ZmJmMGM5ODlkZGNlNDQ1NzBhZTkyZTRlOTc1ZDRkZTA2MWY3
14
+ YTFhNzEzN2E0ODZhYjE4Yjc0YmQzMzEzYWVjODJiNzQ4YjRkYzU3OTZkN2I3
15
+ YzRjYTkxMjM3ZWE2YWE0NzMzMWFhM2NhYjVlNzRjMDgxNDg0YzQ=
data/bin/hed CHANGED
@@ -1,42 +1,9 @@
1
1
  #!/usr/bin/ruby19
2
2
  # encoding: UTF-8
3
3
 
4
- require 'curses'
4
+ require 'hed/runner'
5
5
 
6
- buf = IO.binread 'hed'
7
-
8
- Curses.init_screen
9
-
10
- win = Curses::Window.new Curses.lines, Curses.cols, 0, 0
11
-
12
- addrwin = win.subwin Curses.lines, 8, 0, 0
13
- binwin = win.subwin Curses.lines, 16*3+1, 0, 8+2
14
- textwin = win.subwin Curses.lines, 16, 0, 8+2 + 16*3+1+2
15
-
16
- Curses.lines.times do |y|
17
- addrwin.setpos y, 0
18
- addrwin << "%08x" % y*16
19
- end
20
-
21
- Curses.lines.times do |y|
22
- binwin.setpos y, 0
23
-
24
- 16.times do |x|
25
- binwin << "%02x " % buf[y*16+x].unpack("C")[0]
26
- binwin << ' ' if x == 16/2 - 1
27
- end
28
- end
29
-
30
- Curses.lines.times do |y|
31
- textwin.setpos y, 0
32
- textwin << buf[y*16..(y+1)*16].gsub(/[^[:print:]]/, '⌘')
33
- end
34
-
35
- win.setpos 0, 10
36
-
37
- win.refresh
38
-
39
- sleep 10
6
+ Hed::Runner.run
40
7
 
41
8
  # vim: sw=2 sts=2 ts=8:
42
9
 
@@ -0,0 +1,54 @@
1
+ #!/usr/bin/ruby19
2
+ # encoding: UTF-8
3
+
4
+ require 'curses'
5
+
6
+
7
+ module Hed
8
+
9
+ class MainWnd
10
+ @buf
11
+
12
+ def initialize
13
+ @win = Curses::Window.new Curses.lines, Curses.cols, 0, 0
14
+
15
+ @addrwin = @win.subwin Curses.lines, 8, 0, 0
16
+ @binwin = @win.subwin Curses.lines, 16*3+1, 0, 8+2
17
+ @textwin = @win.subwin Curses.lines, 16, 0, 8+2 + 16*3+1+2
18
+
19
+ @win.setpos 0, 10
20
+ end
21
+
22
+ def buffer= buf
23
+ @buf = buf
24
+ end
25
+
26
+ def refresh
27
+ Curses.lines.times do |y|
28
+ @addrwin.setpos y, 0
29
+ @addrwin << '%08xd' % [y*16]
30
+ end
31
+
32
+ Curses.lines.times do |y|
33
+ @binwin.setpos y, 0
34
+
35
+ 16.times do |x|
36
+ @binwin << '%02x ' % @buf[y*16+x].unpack('C')
37
+ @binwin << ' ' if x == 16/2 - 1
38
+ end
39
+ end
40
+
41
+ Curses.lines.times do |y|
42
+ @textwin.setpos y, 0
43
+ @textwin << @buf[y*16..(y+1)*16].gsub(/[^[:print:]]/, '⌘')
44
+ end
45
+
46
+ @win.refresh
47
+ end
48
+ end
49
+
50
+ end
51
+
52
+
53
+ # vim: sw=2 sts=2 ts=8:
54
+
data/lib/hed/runner.rb ADDED
@@ -0,0 +1,28 @@
1
+ #!/usr/bin/ruby19
2
+ # encoding: UTF-8
3
+
4
+ require 'curses'
5
+
6
+ require 'hed/mainwnd'
7
+
8
+
9
+ module Hed
10
+
11
+ class Runner
12
+ def self.run
13
+ Curses.init_screen
14
+
15
+ wnd = Hed::MainWnd.new
16
+
17
+ wnd.buffer = IO.binread '/etc/fstab'
18
+
19
+ wnd.refresh
20
+
21
+ sleep 10
22
+ end
23
+ end
24
+
25
+ end
26
+
27
+ # vim: sw=2 sts=2 ts=8:
28
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hed
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Levenkov Artem
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-04 00:00:00.000000000 Z
11
+ date: 2014-10-05 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Vim-like hex editor
14
14
  email: artem@levenkov.org
@@ -17,6 +17,8 @@ executables:
17
17
  extensions: []
18
18
  extra_rdoc_files: []
19
19
  files:
20
+ - lib/hed/runner.rb
21
+ - lib/hed/mainwnd.rb
20
22
  - bin/hed
21
23
  homepage: http://www.unixcmd.org/
22
24
  licenses: