晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
| DIR:/opt/alt/ruby26/lib64/ruby/2.6.0/bundler/vendor/thor/lib/thor/line_editor/ |
| Current File : //opt/alt/ruby26/lib64/ruby/2.6.0/bundler/vendor/thor/lib/thor/line_editor/readline.rb |
begin
require "readline"
rescue LoadError
end
class Bundler::Thor
module LineEditor
class Readline < Basic
def self.available?
Object.const_defined?(:Readline)
end
def readline
if echo?
::Readline.completion_append_character = nil
# Ruby 1.8.7 does not allow Readline.completion_proc= to receive nil.
if complete = completion_proc
::Readline.completion_proc = complete
end
::Readline.readline(prompt, add_to_history?)
else
super
end
end
private
def add_to_history?
options.fetch(:add_to_history, true)
end
def completion_proc
if use_path_completion?
proc { |text| PathCompletion.new(text).matches }
elsif completion_options.any?
proc do |text|
completion_options.select { |option| option.start_with?(text) }
end
end
end
def completion_options
options.fetch(:limited_to, [])
end
def use_path_completion?
options.fetch(:path, false)
end
class PathCompletion
attr_reader :text
private :text
def initialize(text)
@text = text
end
def matches
relative_matches
end
private
def relative_matches
absolute_matches.map { |path| path.sub(base_path, "") }
end
def absolute_matches
Dir[glob_pattern].map do |path|
if File.directory?(path)
"#{path}/"
else
path
end
end
end
def glob_pattern
"#{base_path}#{text}*"
end
def base_path
"#{Dir.pwd}/"
end
end
end
end
end
|