mirror of
				https://github.com/sammy-ette/Hilbish
				synced 2025-08-10 02:52:03 +00:00 
			
		
		
		
	Compare commits
	
		
			2 Commits
		
	
	
		
			19bb05f001
			...
			554fb009f8
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 554fb009f8 | |||
| 264043dc1e | 
| @ -103,7 +103,7 @@ Available sections: ]] .. table.concat(modules, ', ') | |||||||
| 		if not self.isSpecial then | 		if not self.isSpecial then | ||||||
| 			if args[1] == 'api' then | 			if args[1] == 'api' then | ||||||
| 				self.sink:writeln(lunacolors.reset(string.format('%s', vals.title))) | 				self.sink:writeln(lunacolors.reset(string.format('%s', vals.title))) | ||||||
| 				self.sink:write(lunacolors.format(string.format('{grayBg} ↳ {white}{italic}%s  {reset}', vals.description))) | 				self.sink:write(lunacolors.format(string.format('{grayBg} ↳ {white}{italic}%s  {reset}', vals.description or 'No description.'))) | ||||||
| 			else | 			else | ||||||
| 				self.sink:write(lunacolors.reset(string.format('Viewing doc page %s', moddocPath))) | 				self.sink:write(lunacolors.reset(string.format('Viewing doc page %s', moddocPath))) | ||||||
| 			end | 			end | ||||||
|  | |||||||
| @ -2,6 +2,7 @@ local ansikit = require 'ansikit' | |||||||
| local bait = require 'bait' | local bait = require 'bait' | ||||||
| local commander = require 'commander' | local commander = require 'commander' | ||||||
| local hilbish = require 'hilbish' | local hilbish = require 'hilbish' | ||||||
|  | local lunacolors = require 'lunacolors' | ||||||
| local terminal = require 'terminal' | local terminal = require 'terminal' | ||||||
| local Greenhouse = require 'nature.greenhouse' | local Greenhouse = require 'nature.greenhouse' | ||||||
| local Page = require 'nature.greenhouse.page' | local Page = require 'nature.greenhouse.page' | ||||||
| @ -42,12 +43,7 @@ commander.register('greenhouse', function(args, sinks) | |||||||
| 
 | 
 | ||||||
| 		self.sink:write(ansikit.getCSI(self.region.height + 1 .. ';1', 'H')) | 		self.sink:write(ansikit.getCSI(self.region.height + 1 .. ';1', 'H')) | ||||||
| 		if not self.isSpecial then | 		if not self.isSpecial then | ||||||
| 			self.sink:write(string.format('\27[0mPage %d', self.curPage)) | 			self.sink:writeln(lunacolors.format(string.format('{grayBg} ↳ Page %d %s{reset}', self.curPage, workingPage.title and ' — ' .. workingPage.title .. ' ' or ''))) | ||||||
| 			if workingPage.title ~= '' then |  | ||||||
| 				self.sink:writeln(' — ' .. workingPage.title) |  | ||||||
| 			else |  | ||||||
| 				self.sink:writeln('') |  | ||||||
| 			end |  | ||||||
| 		end | 		end | ||||||
| 		self.sink:write(buffer == '' and display or buffer) | 		self.sink:write(buffer == '' and display or buffer) | ||||||
| 	end | 	end | ||||||
| @ -106,16 +102,23 @@ commander.register('greenhouse', function(args, sinks) | |||||||
| 		gh:addPage(page) | 		gh:addPage(page) | ||||||
| 	end | 	end | ||||||
| 
 | 
 | ||||||
| 	for _, name in ipairs(args) do | 	if #args ~= 0 then | ||||||
| 		local f <close> = io.open(name, 'r') | 		for _, name in ipairs(args) do | ||||||
| 		if not f then | 			local f <close> = io.open(name, 'r') | ||||||
| 			sinks.err:writeln(string.format('could not open file %s', name)) | 			if not f then | ||||||
| 		end | 				sinks.err:writeln(string.format('could not open file %s', name)) | ||||||
|  | 			end | ||||||
| 
 | 
 | ||||||
| 		local page = Page(name, f:read '*a') | 			local page = Page(name, f:read '*a') | ||||||
| 		gh:addPage(page) | 			gh:addPage(page) | ||||||
|  | 		end | ||||||
|  | 		ansikit.hideCursor() | ||||||
|  | 		gh:initUi() | ||||||
|  | 	else | ||||||
|  | 		sinks.out:writeln [[greenhouse is the Hilbish pager library and command! | ||||||
|  | usage: greenhouse <file>... | ||||||
|  | 
 | ||||||
|  | example: greenhouse hello.md]] | ||||||
| 	end | 	end | ||||||
| 
 | 
 | ||||||
| 	ansikit.hideCursor() |  | ||||||
| 	gh:initUi() |  | ||||||
| end) | end) | ||||||
|  | |||||||
| @ -27,6 +27,12 @@ function Greenhouse:new(sink) | |||||||
| 		['Ctrl-Left'] = self.previous, | 		['Ctrl-Left'] = self.previous, | ||||||
| 		['Ctrl-Right'] = self.next, | 		['Ctrl-Right'] = self.next, | ||||||
| 		['Ctrl-N'] = function(self) self:toc(true) end, | 		['Ctrl-N'] = function(self) self:toc(true) end, | ||||||
|  | 		['Enter'] = function(self) | ||||||
|  | 			if self.isSpecial then | ||||||
|  | 				self:jump(self.specialPageIdx) | ||||||
|  | 				self:special(false) | ||||||
|  | 			end | ||||||
|  | 		end | ||||||
| 	} | 	} | ||||||
| 	self.isSpecial = false | 	self.isSpecial = false | ||||||
| 	self.specialPage = nil | 	self.specialPage = nil | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user