ruco 0.2.0.beta6 → 0.2.0.beta7
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.md +14 -1
- data/VERSION +1 -1
- data/bin/ruco +15 -9
- data/lib/ruco/editor/colors.rb +1 -1
- data/lib/ruco/file_store.rb +3 -2
- data/lib/ruco/screen.rb +0 -3
- data/ruco.gemspec +2 -2
- metadata +4 -4
data/Readme.md
CHANGED
@@ -23,7 +23,7 @@ Features:
|
|
23
23
|
- (optional) line numbers
|
24
24
|
|
25
25
|
<br/>
|
26
|
-
|
26
|
+
[Colors in Ruby 1.8](#colors)
|
27
27
|
|
28
28
|
Install
|
29
29
|
=======
|
@@ -89,6 +89,19 @@ TIPS
|
|
89
89
|
- [ssh vs clipboard] access your desktops clipboard by installing `xauth` on the server and then using `ssh -X`
|
90
90
|
- [Alt key] if Alt does not work try your Meta/Win/Cmd key
|
91
91
|
|
92
|
+
<a name="colors"/>
|
93
|
+
### Colors in Ruby 1.8
|
94
|
+
|
95
|
+
# OSX via brew OR port
|
96
|
+
brew install oniguruma
|
97
|
+
port install oniguruma5
|
98
|
+
|
99
|
+
# Ubuntu
|
100
|
+
sudo apt-get -y install libonig-dev
|
101
|
+
|
102
|
+
gem install oniguruma
|
103
|
+
|
104
|
+
|
92
105
|
TODO
|
93
106
|
=====
|
94
107
|
- only do syntax parsing for changed lines + selected lines <-> will not be redrawn anyhow
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.0.
|
1
|
+
0.2.0.beta7
|
data/bin/ruco
CHANGED
@@ -45,17 +45,23 @@ def log(stuff)
|
|
45
45
|
File.open('ruco.log','ab'){|f| f.puts stuff }
|
46
46
|
end
|
47
47
|
|
48
|
-
options = parse_options
|
49
|
-
|
50
48
|
# do not use colors if told so or the terminal does not support colors
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
)
|
49
|
+
# so far the only terminal that supports it is xterm-256color
|
50
|
+
# but just setting ENV['TERM'] to it will crash un-rescue-able
|
51
|
+
def activate_256_colors
|
52
|
+
(
|
53
|
+
RbConfig::CONFIG['host_os'] !~ /mswin|mingw/ and # and not windows
|
54
|
+
# and its possible to open xterm-256color
|
55
|
+
Ruco::FileStore.new('~/.ruco/cache').cache('color_possible'){
|
56
|
+
system(%{TERM=xterm-256color ruby -r curses -e 'Curses.noecho' > /dev/null 2>&1})
|
57
|
+
}
|
58
|
+
) and ENV['TERM'] = 'xterm-256color' # finally switch terminal
|
59
|
+
end
|
60
|
+
|
61
|
+
options = parse_options
|
58
62
|
|
63
|
+
require 'ruco/file_store'
|
64
|
+
$ruco_colors = activate_256_colors unless options[:no_colors]
|
59
65
|
require 'ruco'
|
60
66
|
|
61
67
|
# draw app and redraw after each keystroke (or paste)
|
data/lib/ruco/editor/colors.rb
CHANGED
@@ -80,7 +80,7 @@ module Ruco
|
|
80
80
|
end
|
81
81
|
|
82
82
|
def download_into_file(url)
|
83
|
-
theme_store = FileStore.new(
|
83
|
+
theme_store = FileStore.new('~/.ruco/cache', :string => true)
|
84
84
|
theme_store.cache(url) do
|
85
85
|
require 'open-uri'
|
86
86
|
require 'openssl'
|
data/lib/ruco/file_store.rb
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
require "digest/md5"
|
2
2
|
require "fileutils"
|
3
|
+
require "ruco/core_ext/file"
|
3
4
|
|
4
5
|
module Ruco
|
5
6
|
class FileStore
|
6
|
-
def initialize(folder, options)
|
7
|
+
def initialize(folder, options={})
|
7
8
|
@folder = folder
|
8
9
|
@options = options
|
9
10
|
end
|
@@ -11,7 +12,7 @@ module Ruco
|
|
11
12
|
def set(key, value)
|
12
13
|
FileUtils.mkdir_p @folder unless File.exist? @folder
|
13
14
|
File.write(file(key), serialize(value))
|
14
|
-
cleanup
|
15
|
+
cleanup if @options[:keep]
|
15
16
|
end
|
16
17
|
|
17
18
|
def get(key)
|
data/lib/ruco/screen.rb
CHANGED
@@ -12,9 +12,6 @@ module Ruco
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def open(&block)
|
15
|
-
if $ruco_colors and ENV['TERM'] == 'xterm'
|
16
|
-
ENV['TERM'] += '-256color' # activate 256 colors
|
17
|
-
end
|
18
15
|
Curses.noecho # do not show typed chars
|
19
16
|
Curses.nonl # turn off newline translation
|
20
17
|
Curses.stdscr.keypad(true) # enable arrow keys
|
data/ruco.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{ruco}
|
8
|
-
s.version = "0.2.0.
|
8
|
+
s.version = "0.2.0.beta7"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Michael Grosser"]
|
12
|
-
s.date = %q{2011-09-
|
12
|
+
s.date = %q{2011-09-28}
|
13
13
|
s.default_executable = %q{ruco}
|
14
14
|
s.email = %q{michael@grosser.it}
|
15
15
|
s.executables = ["ruco"]
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruco
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 62196365
|
5
5
|
prerelease: 6
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 2
|
9
9
|
- 0
|
10
10
|
- beta
|
11
|
-
-
|
12
|
-
version: 0.2.0.
|
11
|
+
- 7
|
12
|
+
version: 0.2.0.beta7
|
13
13
|
platform: ruby
|
14
14
|
authors:
|
15
15
|
- Michael Grosser
|
@@ -17,7 +17,7 @@ autorequire:
|
|
17
17
|
bindir: bin
|
18
18
|
cert_chain: []
|
19
19
|
|
20
|
-
date: 2011-09-
|
20
|
+
date: 2011-09-28 00:00:00 +02:00
|
21
21
|
default_executable: ruco
|
22
22
|
dependencies:
|
23
23
|
- !ruby/object:Gem::Dependency
|