晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
| DIR:/opt/alt/ruby34/share/rubygems/rubygems/ |
| Current File : //opt/alt/ruby34/share/rubygems/rubygems/install_update_options.rb |
# frozen_string_literal: true
#--
# Copyright 2006 by Chad Fowler, Rich Kilmer, Jim Weirich and others.
# All rights reserved.
# See LICENSE.txt for permissions.
#++
require_relative "../rubygems"
require_relative "security_option"
##
# Mixin methods for install and update options for Gem::Commands
module Gem::InstallUpdateOptions
include Gem::SecurityOption
##
# Add the install/update options to the option parser.
def add_install_update_options
add_option(:"Install/Update", "-i", "--install-dir DIR",
"Gem repository directory to get installed",
"gems") do |value, options|
options[:install_dir] = File.expand_path(value)
end
add_option(:"Install/Update", "-n", "--bindir DIR",
"Directory where executables will be",
"placed when the gem is installed") do |value, options|
options[:bin_dir] = File.expand_path(value)
end
add_option(:"Install/Update", "--document [TYPES]", Array,
"Generate documentation for installed gems",
"List the documentation types you wish to",
"generate. For example: rdoc,ri") do |value, options|
options[:document] = case value
when nil then %w[ri]
when false then []
else value
end
end
add_option(:"Install/Update", "--build-root DIR",
"Temporary installation root. Useful for building",
"packages. Do not use this when installing remote gems.") do |value, options|
options[:build_root] = File.expand_path(value)
end
add_option(:"Install/Update", "--vendor",
"Install gem into the vendor directory.",
"Only for use by gem repackagers.") do |_value, options|
unless Gem.vendor_dir
raise Gem::OptionParser::InvalidOption.new "your platform is not supported"
end
options[:vendor] = true
options[:install_dir] = Gem.vendor_dir
end
add_option(:"Install/Update", "-N", "--no-document",
"Disable documentation generation") do |_value, options|
options[:document] = []
end
add_option(:"Install/Update", "-E", "--[no-]env-shebang",
"Rewrite the shebang line on installed",
"scripts to use /usr/bin/env") do |value, options|
options[:env_shebang] = value
end
add_option(:"Install/Update", "-f", "--[no-]force",
"Force gem to install, bypassing dependency",
"checks") do |value, options|
options[:force] = value
end
add_option(:"Install/Update", "-w", "--[no-]wrappers",
"Use bin wrappers for executables",
"Not available on dosish platforms") do |value, options|
options[:wrappers] = value
end
add_security_option
add_option(:"Install/Update", "--ignore-dependencies",
"Do not install any required dependent gems") do |value, options|
options[:ignore_dependencies] = value
end
add_option(:"Install/Update", "--[no-]format-executable",
"Make installed executable names match Ruby.",
"If Ruby is ruby18, foo_exec will be",
"foo_exec18") do |value, options|
options[:format_executable] = value
end
add_option(:"Install/Update", "--[no-]user-install",
"Install in user's home directory instead",
"of GEM_HOME.") do |value, options|
options[:user_install] = value
end
add_option(:"Install/Update", "--development",
"Install additional development",
"dependencies") do |_value, options|
options[:development] = true
options[:dev_shallow] = true
end
add_option(:"Install/Update", "--development-all",
"Install development dependencies for all",
"gems (including dev deps themselves)") do |_value, options|
options[:development] = true
options[:dev_shallow] = false
end
add_option(:"Install/Update", "--conservative",
"Don't attempt to upgrade gems already",
"meeting version requirement") do |_value, options|
options[:conservative] = true
options[:minimal_deps] = true
end
add_option(:"Install/Update", "--[no-]minimal-deps",
"Don't upgrade any dependencies that already",
"meet version requirements") do |value, options|
options[:minimal_deps] = value
end
add_option(:"Install/Update", "--[no-]post-install-message",
"Print post install message") do |value, options|
options[:post_install_message] = value
end
add_option(:"Install/Update", "-g", "--file [FILE]",
"Read from a gem dependencies API file and",
"install the listed gems") do |v,_o|
v ||= Gem::GEM_DEP_FILES.find do |file|
File.exist? file
end
unless v
message = v ? v : "(tried #{Gem::GEM_DEP_FILES.join ", "})"
raise Gem::OptionParser::InvalidArgument,
"cannot find gem dependencies file #{message}"
end
options[:gemdeps] = v
end
add_option(:"Install/Update", "--without GROUPS", Array,
"Omit the named groups (comma separated)",
"when installing from a gem dependencies",
"file") do |v,_o|
options[:without_groups].concat v.map(&:intern)
end
add_option(:"Install/Update", "--default",
"Add the gem's full specification to",
"specifications/default and extract only its bin") do |v,_o|
options[:install_as_default] = v
end
add_option(:"Install/Update", "--explain",
"Rather than install the gems, indicate which would",
"be installed") do |v,_o|
options[:explain] = v
end
add_option(:"Install/Update", "--[no-]lock",
"Create a lock file (when used with -g/--file)") do |v,_o|
options[:lock] = v
end
add_option(:"Install/Update", "--[no-]suggestions",
"Suggest alternates when gems are not found") do |v,_o|
options[:suggest_alternate] = v
end
add_option(:"Install/Update", "--target-rbconfig [FILE]",
"rbconfig.rb for the deployment target platform") do |v, _o|
Gem.set_target_rbconfig(v)
end
end
##
# Default options for the gem install and update commands.
def install_update_options
{
document: %w[ri],
}
end
##
# Default description for the gem install and update commands.
def install_update_defaults_str
"--document=ri"
end
end
|