apohllo-cyc-console 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. data/README.txt +108 -0
  2. data/Rakefile +42 -0
  3. data/bin/cyc +16 -0
  4. data/cyc-console.gemspec +24 -0
  5. metadata +65 -0
data/README.txt ADDED
@@ -0,0 +1,108 @@
1
+ = cyc-console
2
+
3
+ * http://github.com/apohllo/cyc-colors
4
+
5
+ == DESCRIPTION:
6
+
7
+ Console for the Cyc ontology written in Ruby.
8
+
9
+ == FEATURES/PROBLEMS:
10
+
11
+ * support for history
12
+ * highlighting of unmatched parenthesis
13
+ * colorful prompt
14
+ * readline based editing (arrows, delete, etc. works!)
15
+
16
+ * problems with multiline commands
17
+ * messeges send to stdout are not visible
18
+ * errors are not printed - only nil is returned
19
+
20
+ == SYNOPSIS:
21
+
22
+ Cyc-console is console for the Cyc ontology written in Ruby.
23
+ It is inspired by the Ruby console - irb. The original Cyc console
24
+ has many limitations. There is no support for readline, which
25
+ means that arrow keys doesn't work as expected. There is also
26
+ no auto-completion, no history, etc. This console aims at overcomming
27
+ these limitations.
28
+
29
+ == INSTALL:
30
+
31
+ You need RubyGems v. 1.2
32
+
33
+ * gem -v
34
+ * 1.2.0 #=> ok
35
+
36
+ You need the github.com repository to be added to your sources list:
37
+
38
+ * gem sources -a http://gems.github.com
39
+
40
+ Then you can type:
41
+
42
+ * sudo gem install apohllo-cyc-console
43
+
44
+ == BASIC USAGE:
45
+
46
+ The gem comes with +cyc+ command, so you can simply type:
47
+
48
+ $ cyc
49
+ cyc@localhost:3601>
50
+
51
+ By defualt the console connects with Cyc on the localhost on the default port 3601.
52
+ You can change it, by providing the name of the host, and the port as parameters:
53
+
54
+ $ cyc www.example.com 4567
55
+ cyc@www.example.com:4567>
56
+
57
+ The console works like regular Cyc console (however, see problems above):
58
+
59
+ cyc@localhost:3601>(genl? #$Cat #$Animal)
60
+ T
61
+ cyc@localhost:3601>
62
+
63
+ If you run the console once again, you will have access to previous commands.
64
+ The history is kept ~/.cyc_history and remembers 1000 commands by default.
65
+ You can change these, by providing CYC_HISTORY_FILE and CYC_HISTORY_SIZE
66
+ environment varibles respectively.
67
+
68
+ One helpful features is to brows the history by providing the beginning of the command.
69
+ If you type:
70
+
71
+ cyc@localhost:3601>(genl?<PG-UP>
72
+
73
+ you'll get the latest command which has the same form:
74
+
75
+ cyc@localhost:3601>(genl? #$Cat #$Animal)
76
+
77
+ This really speeds-up working with the console.
78
+
79
+
80
+ == LICENSE:
81
+
82
+ (The MIT License)
83
+
84
+ Copyright (c) 2009 Aleksander Pohl
85
+
86
+ Permission is hereby granted, free of charge, to any person obtaining
87
+ a copy of this software and associated documentation files (the
88
+ 'Software'), to deal in the Software without restriction, including
89
+ without limitation the rights to use, copy, modify, merge, publish,
90
+ distribute, sublicense, and/or sell copies of the Software, and to
91
+ permit persons to whom the Software is furnished to do so, subject to
92
+ the following conditions:
93
+
94
+ The above copyright notice and this permission notice shall be
95
+ included in all copies or substantial portions of the Software.
96
+
97
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
98
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
99
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
100
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
101
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
102
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
103
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
104
+
105
+ == FEEDBACK
106
+
107
+ * mailto:apohllo@o2.pl
108
+
data/Rakefile ADDED
@@ -0,0 +1,42 @@
1
+ task :default => [:test]
2
+
3
+ $gem_name = "cyc-console"
4
+
5
+ desc "Test the library"
6
+ task :test do
7
+ ruby Dir.glob("test/*")
8
+ end
9
+
10
+ desc "Run specs"
11
+ task :spec do
12
+ sh "spec spec/* --format specdoc --color"
13
+ end
14
+
15
+ desc "Run features"
16
+ task :features do
17
+ sh "features features/* "
18
+ end
19
+
20
+ desc "Build the gem"
21
+ task :build do
22
+ sh "gem build #$gem_name.gemspec"
23
+ end
24
+
25
+ desc "Install the library at local machnie"
26
+ task :install => :build do
27
+ sh "sudo gem install #$gem_name -l"
28
+ end
29
+
30
+ desc "Uninstall the library from local machnie"
31
+ task :uninstall do
32
+ sh "sudo gem uninstall #$gem_name"
33
+ end
34
+
35
+ desc "Reinstall the library in the local machine"
36
+ task :reinstall => [:uninstall, :install] do
37
+ end
38
+
39
+ desc "Clean"
40
+ task :clean do
41
+ sh "rm #$gem_name*.gem"
42
+ end
data/bin/cyc ADDED
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/ruby
2
+ # encoding: utf-8
3
+ require 'readline'
4
+ require 'cyc/console'
5
+
6
+ if Readline.respond_to?("basic_word_break_characters=")
7
+ Readline.basic_word_break_characters= " \t\n\"\\'`><=;|&{("
8
+ end
9
+ Readline.completion_append_character = nil
10
+ Readline.completion_proc = Cyc::Console::CompletionProc
11
+
12
+ host = ARGV[0] || "localhost"
13
+ port = ARGV[1] || 3601
14
+ console = Cyc::Console.new(host,port)
15
+ console.main_loop
16
+
@@ -0,0 +1,24 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = "cyc-console"
3
+ s.version = "0.0.2"
4
+ s.date = "2009-07-15"
5
+ s.summary = "Ruby console for the Cyc ontology"
6
+ s.email = "apohllo@o2.pl"
7
+ s.homepage = "http://apohllo.pl"
8
+ s.description = "Ruby console for the Cyc ontology"
9
+ s.authors = ['Aleksander Pohl']
10
+ # the lib path is added to the LOAD_PATH
11
+ s.require_path = "lib"
12
+ # include Rakefile, gemspec, README and all the source files
13
+ s.files = ["Rakefile", "cyc-console.gemspec", "README.txt"] +
14
+ Dir.glob("lib/**/*")
15
+ # include tests and specs
16
+ s.test_files = Dir.glob("{test,spect,features}/**/*")
17
+ # include README while generating rdoc
18
+ s.rdoc_options = ["--main", "README.txt"]
19
+ s.has_rdoc = true
20
+ s.extra_rdoc_files = ["README.txt"]
21
+ s.executables = ['cyc']
22
+ s.add_dependency("apohllo-colors", [">= 0.0.4"])
23
+ end
24
+
metadata ADDED
@@ -0,0 +1,65 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: apohllo-cyc-console
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Aleksander Pohl
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-07-15 00:00:00 -07:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: apohllo-colors
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.4
24
+ version:
25
+ description: Ruby console for the Cyc ontology
26
+ email: apohllo@o2.pl
27
+ executables:
28
+ - cyc
29
+ extensions: []
30
+
31
+ extra_rdoc_files:
32
+ - README.txt
33
+ files:
34
+ - Rakefile
35
+ - cyc-console.gemspec
36
+ - README.txt
37
+ has_rdoc: true
38
+ homepage: http://apohllo.pl
39
+ post_install_message:
40
+ rdoc_options:
41
+ - --main
42
+ - README.txt
43
+ require_paths:
44
+ - lib
45
+ required_ruby_version: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: "0"
50
+ version:
51
+ required_rubygems_version: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: "0"
56
+ version:
57
+ requirements: []
58
+
59
+ rubyforge_project:
60
+ rubygems_version: 1.2.0
61
+ signing_key:
62
+ specification_version: 2
63
+ summary: Ruby console for the Cyc ontology
64
+ test_files: []
65
+