vimamsa 0.1.4 → 0.1.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 06e99c11af9802815672e7b3cc220668fe9a0d6837760ff1cd5ca8b029ca04bc
4
- data.tar.gz: b61f32cdaebc0cce856e832567787da9a9d041ed46000463d226959aee492373
3
+ metadata.gz: 4f68b029a6b5f374740c9afa2cb7c4ac628db4c4b9295b7e64db8294dac89659
4
+ data.tar.gz: c7c72c69ec7cd513e976caff3b0b1f2e619d890d8d84e616fcd747e4ab1193be
5
5
  SHA512:
6
- metadata.gz: d26574ac402e3f2de520d84db614c26a8760bbbae75fa422dd44d0af2145df2ffcfea8fd8c5f8d45735c0367f36ab85d895660822d7f471a6ba7db2bd5e3513a
7
- data.tar.gz: 3e95a3a334284bf3143e67283354c064e23afe2b3332cb5c2f4fc98fe4f80adeee2c4ee39b3759f95b72ff543269e8705d54162e8b04acc5448e41e522360600
6
+ metadata.gz: 892b4011a44310ad05becbf108fce73d4cdda3a25d6241435b03519ad0dd264daa856502956f02f47386bce251aef3e0296cc682fc35b01fefa375fbffd5ee4a
7
+ data.tar.gz: 25c97fde0e225c7cb273bc0fa97d0db4d74376ea2ddca2baea8823dbb1e01d31334fabbaa8e319cc37d40eca23d37b3d64f2cbbbdcbbce88f7d30435cfb44a6f
data/exe/vimamsa CHANGED
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/ruby
2
- require 'ripl/multi_line'
2
+ require "ripl/multi_line"
3
+ require "tempfile"
3
4
  # Ripl.config[:multi_line_prompt] = ' > '
4
5
  require "pathname"
5
6
 
@@ -7,28 +8,33 @@ ENV["GTK_THEME"] = "Adwaita:dark"
7
8
 
8
9
  selfpath = __FILE__
9
10
  selfpath = File.readlink(selfpath) if File.lstat(selfpath).symlink?
10
- scriptdir = File.expand_path(File.dirname(selfpath)+"/..")
11
- puts scriptdir
12
- # Ripl.start :binding => binding
13
-
14
- # binpath = "#{scriptdir}/vimamsa"
15
- # argexp = [binpath]
16
-
17
- # for arg in ARGV
18
- # puts arg
19
- # argexp << Pathname(arg).expand_path.to_s
20
- # end
21
-
22
- Dir.chdir(scriptdir)
23
- # exec(*argexp)
24
-
25
- $LOAD_PATH.unshift(File.expand_path("lib"))
26
- $LOAD_PATH.unshift(File.expand_path("ext"))
11
+ scriptdir = File.expand_path(File.dirname(selfpath) + "/..")
12
+
13
+
14
+ # If process is already running, open the parameter file in the running process and exit.
15
+ listen_dir = File.expand_path("~/.vimamsa/listen")
16
+ if File.exist?(listen_dir) and !ARGV[0].nil?
17
+ tmpf = Tempfile.new("vmarun", listen_dir)
18
+ fp = tmpf.path
19
+ tmpf.write(ARGV[0])
20
+ tmpf.close
21
+ tstart = Time.new
22
+ timeout = false
23
+ while File.exist?(fp)
24
+ sleep 0.001
25
+ if Time.new - tstart > 0.5
26
+ timeout = true
27
+ break
28
+ end
29
+ end
30
+ exit(0) if !timeout
31
+ end
32
+
33
+ $LOAD_PATH.unshift(File.expand_path("lib"))
34
+ $LOAD_PATH.unshift(File.expand_path("ext"))
27
35
 
28
36
  require "vimamsa"
29
- # Ilib:ext
37
+ # Ilib:ext
30
38
  # r rbvma -e "puts VMA.new.run"
31
39
  $vmag = VMAg.new()
32
40
  $vmag.run
33
-
34
-
data/ext/vmaext/vmaext.c CHANGED
@@ -3,11 +3,8 @@
3
3
  #include "ruby/ruby.h"
4
4
 
5
5
  #include <stdio.h>
6
- #include <string.h>
7
6
  #include <stdlib.h>
8
7
 
9
- #warning "C Preprocessor got here!"
10
-
11
8
  typedef struct node {
12
9
  int i;
13
10
  void * next;
data/lib/vimamsa.rb CHANGED
@@ -1,42 +1,12 @@
1
1
  require "vimamsa/version"
2
2
  require "vmaext"
3
3
 
4
-
5
- # require "vimamsa/constants"
6
- # require "vimamsa/debug"
7
- # require "vimamsa/actions"
8
- # require "vimamsa/key_binding_tree"
9
- # require "vimamsa/default_key_bindings"
10
-
11
- # require "vimamsa/ack"
12
- # require "vimamsa/buffer"
13
- # require "vimamsa/buffer_list"
14
-
15
-
16
- # require "vimamsa/easy_jump"
17
- # require "vimamsa/editor"
18
- # require "vimamsa/encrypt"
19
- # require "vimamsa/file_finder"
20
- # require "vimamsa/file_history"
21
- # require "vimamsa/file_manager"
22
- # require "vimamsa/hook"
23
- # require "vimamsa/hyper_plain_text"
24
- # require "vimamsa/macro"
25
- # require "vimamsa/rbvma"
26
- # require "vimamsa/search"
27
- # require "vimamsa/search_replace"
28
- # require "vimamsa/text_transforms"
29
- # require "vimamsa/util"
30
- # # require "version"
31
-
32
- # require "vimamsa/main"
33
-
34
4
  require "vimamsa/rbvma"
35
5
 
36
6
  module Vimamsa
37
7
  # Your code goes here...
38
8
  def self.test
39
9
  puts "Vimamsa test"
40
- puts srn_dst("foobar","baz")
10
+ puts srn_dst("foobar", "baz")
41
11
  end
42
12
  end
@@ -15,7 +15,7 @@ class Buffer < String
15
15
 
16
16
  attr_reader :pos, :lpos, :cpos, :deltas, :edit_history, :fname, :call_func, :pathname, :basename, :update_highlight, :marks, :is_highlighted, :syntax_detect_failed, :id, :lang
17
17
  attr_writer :call_func, :update_highlight
18
- attr_accessor :qt_update_highlight, :update_hl_startpos, :update_hl_endpos, :hl_queue, :syntax_parser, :highlights, :qt_reset_highlight, :is_parsing_syntax, :line_ends, :bt, :line_action_handler, :module, :active_kbd_mode
18
+ attr_accessor :qt_update_highlight, :update_hl_startpos, :update_hl_endpos, :hl_queue, :syntax_parser, :highlights, :qt_reset_highlight, :is_parsing_syntax, :line_ends, :bt, :line_action_handler, :module, :active_kbd_mode, :title, :subtitle
19
19
 
20
20
  @@num_buffers = 0
21
21
 
@@ -29,7 +29,6 @@ class Buffer < String
29
29
  qt_create_buffer(@id)
30
30
  puts "NEW BUFFER fn=#{fname} ID:#{@id}"
31
31
 
32
- #
33
32
  @module = nil
34
33
 
35
34
  @crypt = nil
@@ -47,7 +46,21 @@ class Buffer < String
47
46
  @hl_queue = []
48
47
  @line_action_handler = nil
49
48
 
49
+ @dirname = nil
50
+ @title = "*buf-#{@id}*"
51
+ @subtitle = ""
52
+
53
+ if @fname
54
+ @title = File.basename(@fname)
55
+ @dirname = File.dirname(@fname)
56
+ userhome = File.expand_path("~")
57
+ @subtitle = @dirname.gsub(/^#{userhome}/, "~")
58
+ end
59
+
50
60
  t1 = Time.now
61
+ qt_set_current_buffer(@id)
62
+ gui_set_window_title(@title, @subtitle)
63
+
51
64
  set_content(str)
52
65
  debug "init time:#{Time.now - t1}"
53
66
 
@@ -63,7 +76,7 @@ class Buffer < String
63
76
  else
64
77
  $kbd.set_mode_to_default
65
78
  end
66
- qt_set_current_buffer(@id)
79
+ # qt_set_current_buffer(@id)
67
80
  end
68
81
 
69
82
  def detect_file_language
@@ -73,6 +86,20 @@ class Buffer < String
73
86
  @lang = "ruby" if @fname.match(/\.(rb)$/)
74
87
  @lang = "hyperplaintext" if @fname.match(/\.(txt)$/)
75
88
  @lang = "php" if @fname.match(/\.(php)$/)
89
+
90
+ lm = GtkSource::LanguageManager.new
91
+
92
+ lm.set_search_path(lm.search_path << ppath("lang/"))
93
+ lang = lm.guess_language(@fname)
94
+ # lang.get_metadata("line-comment-start")
95
+ # lang.get_metadata("block-comment-start")
96
+ # lang.get_metadata("block-comment-end")
97
+ @lang_nfo = lang
98
+ if !lang.nil? and !lang.id.nil?
99
+ puts "Guessed LANG: #{lang.id}"
100
+ @lang = lang.id
101
+ end
102
+
76
103
  if @lang
77
104
  gui_set_file_lang(@id, @lang)
78
105
  end
@@ -134,21 +161,7 @@ class Buffer < String
134
161
  end
135
162
 
136
163
  def get_file_type()
137
- # We cant detect syntax if no filename
138
- if !@fname
139
- @syntax_detect_failed = true
140
- return ""
141
- end
142
- if @ftype == nil
143
- @ftype = VER::Syntax::Detector.detect(@fname)
144
- if @ftype == nil
145
- @syntax_detect_failed = true
146
- else
147
- @syntax_detect_failed = false
148
- end
149
- end
150
- debug "ftype=#{@ftype.inspect}"
151
- return @ftype
164
+ return @lang
152
165
  end
153
166
 
154
167
  def revert()
@@ -488,16 +501,26 @@ class Buffer < String
488
501
  end
489
502
 
490
503
  def get_com_str()
491
- return nil if @syntax_detect_failed
504
+ # return nil if @syntax_detect_failed
492
505
 
493
506
  com_str = nil
494
- if get_file_type() == "C" or get_file_type() == "Javascript"
495
- com_str = "//"
496
- elsif get_file_type() == "Ruby"
497
- com_str = "#"
498
- else
499
- com_str = "//"
507
+ # if get_file_type() == "c" or get_file_type() == "java"
508
+ # com_str = "//"
509
+ # elsif get_file_type() == "ruby"
510
+ # com_str = "#"
511
+ # else
512
+ # com_str = "//"
513
+ # end
514
+
515
+ if !@lang_nfo.nil?
516
+ com_str = @lang_nfo.get_metadata("line-comment-start")
500
517
  end
518
+
519
+ # lang.get_metadata("block-comment-start")
520
+ # lang.get_metadata("block-comment-end")
521
+
522
+ com_str = "//" if com_str.nil?
523
+
501
524
  return com_str
502
525
  end
503
526
 
@@ -1262,6 +1285,7 @@ class Buffer < String
1262
1285
  end
1263
1286
 
1264
1287
  def jump_to_next_instance_of_char(char, direction = FORWARD)
1288
+
1265
1289
  #return if at_end_of_line?
1266
1290
  if direction == FORWARD
1267
1291
  position_of_next_char = self.index(char, @pos + 1)
@@ -1618,12 +1642,7 @@ class Buffer < String
1618
1642
  # TODO:?
1619
1643
  end
1620
1644
 
1621
- def save()
1622
- if !@fname
1623
- save_as()
1624
- return
1625
- end
1626
- message("Saving file #{@fname}")
1645
+ def write_contents_to_file(fpath)
1627
1646
  if @crypt != nil
1628
1647
  mode = "wb+"
1629
1648
  contents = "VMACRYPT001" + @crypt.encrypt(self.to_s)
@@ -1633,7 +1652,7 @@ class Buffer < String
1633
1652
  end
1634
1653
 
1635
1654
  Thread.new {
1636
- File.open(@fname, mode) do |io|
1655
+ File.open(fpath, mode) do |io|
1637
1656
  #io.set_encoding(self.encoding)
1638
1657
 
1639
1658
  begin
@@ -1653,6 +1672,15 @@ class Buffer < String
1653
1672
  }
1654
1673
  end
1655
1674
 
1675
+ def save()
1676
+ if !@fname
1677
+ save_as()
1678
+ return
1679
+ end
1680
+ message("Saving file #{@fname}")
1681
+ write_contents_to_file(@fname)
1682
+ end
1683
+
1656
1684
  # Indents whole buffer using external program
1657
1685
  def indent()
1658
1686
  file = Tempfile.new("out")
@@ -1665,7 +1693,7 @@ class Buffer < String
1665
1693
 
1666
1694
  message("Auto format #{@fname}")
1667
1695
 
1668
- if get_file_type() == "C" or get_file_type() == "C++"
1696
+ if ["chdr", "c", "cpp"].include?(get_file_type())
1669
1697
 
1670
1698
  #C/C++/Java/JavaScript/Objective-C/Protobuf code
1671
1699
  system("clang-format -style='{BasedOnStyle: LLVM, ColumnLimit: 100, SortIncludes: false}' #{file.path} > #{infile.path}")
@@ -1675,7 +1703,7 @@ class Buffer < String
1675
1703
  debug cmd
1676
1704
  system(cmd)
1677
1705
  bufc = IO.read(infile.path)
1678
- elsif get_file_type() == "Ruby"
1706
+ elsif get_file_type() == "ruby"
1679
1707
  cmd = "rufo #{file.path}"
1680
1708
  debug cmd
1681
1709
  system(cmd)
@@ -1700,13 +1728,14 @@ class Buffer < String
1700
1728
  savepath = "#{spath}/#{spfx}_#{datetime}"
1701
1729
  if is_path_writable(savepath)
1702
1730
  debug "BACKUP BUFFER TO: #{savepath}"
1703
- IO.write(savepath, self.to_s) if @crypt == nil #TODO: For encrypted
1731
+ write_contents_to_file(savepath)
1704
1732
  else
1705
1733
  message("PATH NOT WRITABLE: #{savepath}")
1706
1734
  end
1707
1735
  end
1708
1736
  end
1709
1737
 
1738
+ #TODO
1710
1739
  def write_to_file(savepath, s)
1711
1740
  if is_path_writable(savepath)
1712
1741
  IO.write(savepath, $buffer.to_s)
@@ -83,8 +83,8 @@ class BufferList < Array
83
83
  $hook.call(:change_buffer, $buffer)
84
84
  $buffer.set_active
85
85
 
86
- set_window_title("Vimamsa - #{fpath}")
87
86
  qt_set_current_buffer($buffer.id)
87
+ gui_set_window_title($buffer.title,$buffer.subtitle)
88
88
 
89
89
  # hpt_scan_images() if $debug # experimental
90
90
  end
@@ -289,6 +289,9 @@ default_keys = {
289
289
  # 'C '=> 'buf.jump_word(BACKWARD,END)',#TODO
290
290
  "VC f <char>" => "buf.jump_to_next_instance_of_char(<char>)",
291
291
  "VC F <char>" => "buf.jump_to_next_instance_of_char(<char>,BACKWARD)",
292
+ "VC f space" => "buf.jump_to_next_instance_of_char(' ')",
293
+ "VC F space" => "buf.jump_to_next_instance_of_char(' ',BACKWARD)",
294
+
292
295
  "VC /[1-9]/" => "set_next_command_count(<char>)",
293
296
  # 'VC number=/[0-9]/+ g'=> 'jump_to_line(<number>)',
294
297
  # 'VC X=/[0-9]/+ * Y=/[0-9]/+ '=> 'x_times_y(<X>,<Y>)',
@@ -435,7 +438,7 @@ default_keys = {
435
438
  "I alt-f" => "buf.jump_word(FORWARD,WORD_START)",
436
439
  "I alt-b" => "buf.jump_word(BACKWARD,WORD_START)",
437
440
 
438
- "I tab" => 'buf.insert_txt(" ")',
441
+ "I tab" => 'buf.insert_txt(" ")',
439
442
  "I space" => 'buf.insert_txt(" ")',
440
443
  # "I return" => 'buf.insert_new_line()',
441
444
  }
@@ -39,6 +39,24 @@ class Editor
39
39
  @_plugins = {}
40
40
  end
41
41
 
42
+ def open_file_listener(added)
43
+ if !added.empty?
44
+ for fp in added
45
+ sleep 0.1
46
+ x = IO.read(fp)
47
+ File.delete(fp)
48
+ for f in x.lines
49
+ f.gsub!("\n", "")
50
+ if File.exist?(f)
51
+ if file_is_text_file(f)
52
+ jump_to_file(f)
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
59
+
42
60
  def start
43
61
  # $highlight = {}
44
62
 
@@ -76,6 +94,13 @@ class Editor
76
94
 
77
95
  dot_dir = File.expand_path("~/.vimamsa")
78
96
  Dir.mkdir(dot_dir) unless File.exist?(dot_dir)
97
+ listen_dir = File.expand_path("~/.vimamsa/listen")
98
+ Dir.mkdir(listen_dir) unless File.exist?(dot_dir)
99
+ listener = Listen.to(listen_dir) do |modified, added, removed|
100
+ puts(modified: modified, added: added, removed: removed)
101
+ open_file_listener(added)
102
+ end
103
+ listener.start
79
104
 
80
105
  $cnf[:theme] = "Twilight_edit"
81
106
  $cnf[:syntax_highlight] = true
@@ -231,9 +256,7 @@ class Editor
231
256
  end
232
257
 
233
258
  def _quit()
234
- # Shut down the Qt thread before the ruby thread
235
259
  vma.shutdown
236
- qt_quit
237
260
  exit
238
261
  end
239
262
 
@@ -432,7 +455,7 @@ GUESS_ENCODING_ORDER = [
432
455
  def create_new_file(filename = nil, file_contents = "\n")
433
456
  debug "NEW FILE CREATED"
434
457
  buffer = Buffer.new(file_contents)
435
- qt_set_current_buffer(buffer.id) #TODO: remove?
458
+ # qt_set_current_buffer(buffer.id) #TODO: remove?
436
459
  $buffers << buffer
437
460
  return buffer
438
461
  end
@@ -493,7 +516,6 @@ def open_new_file(filename, file_contents = "")
493
516
  fname = filename
494
517
  load_buffer(fname)
495
518
  end
496
- set_window_title("Vimamsa - #{File.basename(filename)}")
497
519
  end
498
520
 
499
521
  def scan_word_start_marks(search_str)
data/lib/vimamsa/rbvma.rb CHANGED
@@ -7,6 +7,7 @@ require "pathname"
7
7
  require "date"
8
8
  require "ripl/multi_line"
9
9
  require "json"
10
+ require "listen"
10
11
 
11
12
  puts "INIT rbvma"
12
13
 
@@ -326,9 +327,9 @@ end
326
327
  def qt_select_window_close(arg = nil)
327
328
  end
328
329
 
329
- def set_window_title(str)
330
- unimplemented
331
- end
330
+ # def set_window_title(str)
331
+ # unimplemented
332
+ # end
332
333
 
333
334
  def render_text(tmpbuf, pos, selection_start, reset)
334
335
  unimplemented
@@ -371,12 +372,16 @@ def qt_set_current_buffer(id)
371
372
  # itr = view.buffer.get_iter_at(:offset => 0)
372
373
  # view.buffer.place_cursor(itr)
373
374
 
374
- wtitle = ""
375
- wtitle = buf.fname if !buf.fname.nil?
376
- $vmag.window.title = wtitle
375
+ # wtitle = ""
376
+ # wtitle = buf.fname if !buf.fname.nil?
377
377
  $vmag.sw.show_all
378
378
  end
379
379
 
380
+ def gui_set_window_title(wtitle,subtitle="")
381
+ $vmag.window.title = wtitle
382
+ $vmag.window.titlebar.subtitle = subtitle
383
+ end
384
+
380
385
  def unimplemented
381
386
  puts "unimplemented"
382
387
  end
@@ -469,6 +474,18 @@ class VSourceView < GtkSource::View
469
474
  @last_keyval = nil
470
475
  @last_event = [nil, nil]
471
476
 
477
+ signal_connect "button-press-event" do |_widget, event|
478
+ if event.button == Gdk::BUTTON_PRIMARY
479
+ # puts "Gdk::BUTTON_PRIMARY"
480
+ false
481
+ elsif event.button == Gdk::BUTTON_SECONDARY
482
+ # puts "Gdk::BUTTON_SECONDARY"
483
+ true
484
+ else
485
+ true
486
+ end
487
+ end
488
+
472
489
  signal_connect("key_press_event") do |widget, event|
473
490
  handle_key_event(event, :key_press_event)
474
491
  true
@@ -943,14 +960,15 @@ class VMAg
943
960
  end
944
961
 
945
962
  def init_header_bar()
946
- # @window = Gtk::Window.new(:toplevel)
947
- # @window.screen = main_window.screen
948
- # @window.set_default_size(600, 400)
949
963
 
950
964
  header = Gtk::HeaderBar.new
965
+ @header = header
951
966
  header.show_close_button = true
952
- header.title = "Welcome to Facebook - Log in, sign up or learn more"
953
- header.has_subtitle = false
967
+ header.title = ""
968
+ header.has_subtitle = true
969
+ header.subtitle = ""
970
+ # Ripl.start :binding => binding
971
+
954
972
 
955
973
  # icon = Gio::ThemedIcon.new("mail-send-receive-symbolic")
956
974
  # icon = Gio::ThemedIcon.new("document-open-symbolic")
@@ -958,17 +976,43 @@ class VMAg
958
976
 
959
977
  #edit-redo edit-paste edit-find-replace edit-undo edit-find edit-cut edit-copy
960
978
  #document-open document-save document-save-as document-properties document-new
979
+ # document-revert-symbolic
980
+ #
981
+
982
+ #TODO:
983
+ # button = Gtk::Button.new
984
+ # icon = Gio::ThemedIcon.new("open-menu-symbolic")
985
+ # image = Gtk::Image.new(:icon => icon, :size => :button)
986
+ # button.add(image)
987
+ # header.pack_end(button)
988
+
961
989
  button = Gtk::Button.new
962
- icon = Gio::ThemedIcon.new("open-menu-symbolic")
990
+ icon = Gio::ThemedIcon.new("document-open-symbolic")
963
991
  image = Gtk::Image.new(:icon => icon, :size => :button)
964
992
  button.add(image)
965
993
  header.pack_end(button)
966
994
 
995
+ button.signal_connect "clicked" do |_widget|
996
+ open_file_dialog
997
+ end
998
+
999
+ button = Gtk::Button.new
1000
+ icon = Gio::ThemedIcon.new("document-save-symbolic")
1001
+ image = Gtk::Image.new(:icon => icon, :size => :button)
1002
+ button.add(image)
1003
+ header.pack_end(button)
1004
+ button.signal_connect "clicked" do |_widget|
1005
+ buf.save
1006
+ end
1007
+
967
1008
  button = Gtk::Button.new
968
- icon = Gio::ThemedIcon.new("document-revert-symbolic")
1009
+ icon = Gio::ThemedIcon.new("document-new-symbolic")
969
1010
  image = Gtk::Image.new(:icon => icon, :size => :button)
970
1011
  button.add(image)
971
1012
  header.pack_end(button)
1013
+ button.signal_connect "clicked" do |_widget|
1014
+ create_new_file
1015
+ end
972
1016
 
973
1017
  box = Gtk::Box.new(:horizontal, 0)
974
1018
  box.style_context.add_class("linked")
@@ -977,11 +1021,26 @@ class VMAg
977
1021
  image = Gtk::Image.new(:icon_name => "pan-start-symbolic", :size => :button)
978
1022
  button.add(image)
979
1023
  box.add(button)
1024
+ button.signal_connect "clicked" do |_widget|
1025
+ history_switch_backwards
1026
+ end
980
1027
 
981
1028
  button = Gtk::Button.new
982
1029
  image = Gtk::Image.new(:icon_name => "pan-end-symbolic", :size => :button)
983
1030
  button.add(image)
984
1031
  box.add(button)
1032
+ button.signal_connect "clicked" do |_widget|
1033
+ history_switch_forwards
1034
+ end
1035
+
1036
+ button = Gtk::Button.new
1037
+ icon = Gio::ThemedIcon.new("window-close-symbolic")
1038
+ image = Gtk::Image.new(:icon => icon, :size => :button)
1039
+ button.add(image)
1040
+ box.add(button)
1041
+ button.signal_connect "clicked" do |_widget|
1042
+ bufs.close_current_buffer
1043
+ end
985
1044
 
986
1045
  header.pack_start(box)
987
1046
  @window.titlebar = header
data/lib/vimamsa/util.rb CHANGED
@@ -43,7 +43,7 @@ def read_file(text, path)
43
43
 
44
44
  #TODO: Should put these as option:
45
45
  content.gsub!(/\r\n/, "\n")
46
- content.gsub!(/\t/, " ")
46
+ # content.gsub!(/\t/, " ")
47
47
  content.gsub!(/\b/, "")
48
48
 
49
49
  # content = filter_buffer(content)
@@ -1,3 +1,3 @@
1
1
  module Vimamsa
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
data/vimamsa.gemspec CHANGED
@@ -33,6 +33,7 @@ Gem::Specification.new do |spec|
33
33
  spec.add_runtime_dependency 'gtksourceview3', '~> 3.4'
34
34
  # spec.add_runtime_dependency 'gtksourceview4'
35
35
  spec.add_runtime_dependency 'parallel', '~> 1.14'
36
+ spec.add_runtime_dependency 'listen', '~> 3.4'
36
37
 
37
38
  spec.extensions = ["ext/vmaext/extconf.rb"]
38
39
  spec.licenses = ['GPL-3.0+']
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vimamsa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sami Sieranoja
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-03-14 00:00:00.000000000 Z
11
+ date: 2021-03-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -150,6 +150,20 @@ dependencies:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
152
  version: '1.14'
153
+ - !ruby/object:Gem::Dependency
154
+ name: listen
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '3.4'
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '3.4'
153
167
  description: Vi/Vim -inspired experimental GUI-oriented text editor written with Ruby
154
168
  and GTK.
155
169
  email: