# encoding: utf-8 =begin * Name: SiSU * Description: a framework for document structuring, publishing and search * Author: Ralph Amissah * Copyright: (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Ralph Amissah, All Rights Reserved. * License: GPL 3 or later: SiSU, a framework for document structuring, publishing and search Copyright (C) Ralph Amissah This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . If you have Internet connection, the latest version of the GPL should be available at these locations: * SiSU uses: * Standard SiSU markup syntax, * Standard SiSU meta-markup syntax, and the * Standard SiSU object citation numbering and system * Hompages: * Download: * Git * Ralph Amissah ** Description: system environment, resource control and configuration details =end module SiSU_Info_Version require_relative 'constants' # constants.rb require_relative 'utils' # utils.rb require_relative 'se_info_env' # se_info_env.rb begin require 'singleton' rescue LoadError SiSU_Utils::CodeMarker.new(__LINE__,__FILE__,:fuchsia). error('singleton NOT FOUND (LoadError)') end class InfoVersion < SiSU_Info_Env::InfoEnv # se_info_env.rb include Singleton begin require 'rbconfig' require 'yaml' rescue LoadError SiSU_Utils::CodeMarker.new(__LINE__,__FILE__,:fuchsia). error('rbconfig or yaml NOT FOUND (LoadError)') end @@lib_path=nil def get_version @version={} @pwd=ENV['PWD'] lib_path= @@lib_path \ ? @@lib_path : `echo $RUBYLIB`.split(':') @@lib_path ||=lib_path if File.exist?(SiSU_is[:version_info_path]) @version=YAML::load(File::open(SiSU_is[:version_info_path])) end @version[:install_method]=if SiSU_is[:run_from]==:gem_install spec = Gem::Specification.find_by_name("sisu") gem_root = spec.gem_dir (File.dirname(__FILE__.gsub(/\/lib\/sisu\/#{SiSU_is[:version_dir]}/,'')) == gem_root) \ ? ' (ruby gem install)' : '' else '' end @version end def rbversion %x{ruby -v}.strip end end end module SiSU_Info_About require_relative 'constants' # constants.rb require_relative 'utils' # utils.rb begin require 'singleton' rescue LoadError SiSU_Utils::CodeMarker.new(__LINE__,__FILE__,:fuchsia). error('singleton NOT FOUND (LoadError)') end class InfoAbout def initialize(color='') @color=color end def sisu_version version=SiSU_Env::InfoVersion.instance.get_version rb_ver=SiSU_Env::InfoVersion.instance.rbversion if version[:version] opt_cmd=if defined? @color.cmd \ and @color.cmd =~/[ck]/ @color.cmd else '-v' end SiSU_Screen::Ansi.new( opt_cmd, version[:project], version[:version], version[:date_stamp], version[:date], version[:install_method], rb_ver ).version else puts 'SiSU (version information not available)' end end def sisu_about puts <<-WOK sisu: documents; markup, structuring, publishing in multiple standard formats, & search most (not all) useful commands (are made in a directory containing a sisu markup file &) take the form: sisu [action(s)] [filename(s)] where filename refers to a valid sisu marked up file, e.g.: cd /usr/share/doc/sisu/markup-samples/sisu_manual sisu --html --verbose sisu_commands.sst sisu --txt --html --epub --odt --pdf --sqlite --manpage --texinfo --concordance --qrcode --verbose sisu.ssm cd - See output produced, or see man pages: man sisu WOK end end end __END__