¿Hay alguna forma de instalar páginas man utilizando la especificación gem? Por ejemplo, gem install XXX-1.0.0.gem
debería instalar la página de manual en el sistema.¿Puedo instalar una página de hombre usando la especificación gem?
Respuesta
Puede usar la gema gem-man para instalar las páginas de manual de gemas.
También ofrecen un "interruptor trampa" para usar el hombre mundial: alias man="gem man -s"
Rubygems actualmente no es compatible con la instalación de páginas de manual para las gemas.
A patch se envió a Rubygems hace un tiempo para agregar soporte para páginas de manual, pero fue rechazado.
creo que he encontrado una solución:
En primer lugar, hay que añadir una extensión nativa de la gema:
my_gem.gemspec:
s.extensions << 'manpage/extconf.rb'
s.files << 'manpage/my_gem.1'
Entonces gem install
ejecutará la extconf.rb
y quiere llamar a un Makefile.
make clean
make
make install
Así que la extconf.rb
se puede utilizar para crear el Makefile. También debe asegurarse de que debe haber al menos un archivo Makefile ficticio o de lo contrario la instalación fallará.
makefile = "make:\n" \
"\t%s\n" \
"install:\n" \
"\t%s\n" \
"clean:\n" \
"\t%s\n"
if RUBY_PLATFORM =~ /linux/
clean = 'sudo rm -f /usr/local/share/man/man1/my_gem.1.gz'
make = 'gzip my_gem.1'
install = 'sudo cp -r my_gem.1.gz /usr/local/share/man/man1/'
puts
puts 'You need super user privileges to install the manpage for my_gem.'
puts 'Do you want to proceed? (y/n)'
puts 'The gem will be installed anyways.'
input = STDIN.gets.chomp.strip.downcase
if input == 'y' or input == 'yes'
File.write('Makefile', makefile % [make, install, clean])
else
File.write('Makefile', makefile % [':', ':', ':']) # dummy makefile
end
else
File.write('Makefile', makefile % [':', ':', ':']) # dummy makefile
end
También puedes usar' require 'mkmf'' y 'create_makefile' ''. Luego puede compilar y copiar los archivos a través de 'system ('sudo cp ...')' – Alu
- 1. ¿Cómo puedo degradar a una versión anterior de la brújula usando gem install?
- 2. ¿Cómo puedo generar una especificación de controlador usando rspec?
- 3. ¿Cómo puedo instalar una impresora usando .NET?
- 4. ¿Cómo puedo instalar una joya local?
- 5. Dificultades para instalar mysql gem en Ubuntu
- 6. Gem instalar carriles no pueden terminar
- 7. sqlite3 gem no se puede instalar
- 8. ¿Cómo instalar un archivo Ruby gem descargado?
- 9. Instalar Mogli Gem on Rails 3
- 10. no inicializado Psych constante :: Syck en GEM instalar
- 11. ¿Cómo puedo instalar una jerarquía de archivos usando cmake?
- 12. No puedo instalar la gema sqlite3
- 13. Ejemplo de una declaración INSERT preparada usando ruby pg gem
- 14. Instalar ruby RMagick gem en el servidor de Ubuntu sin instalar X
- 15. ¿Hay una manera fácil de instalar la biblioteca Lisp, como ruby gem (Ruby) o easy_install (Python)?
- 16. ¿Cómo puedo instalar un controlador usando InnoSetup?
- 17. ¿Cómo puedo recuperar el título de la página de una página web usando Python?
- 18. Cómo instalar gem a través del proxy con autorización
- 19. ¿Cómo puedo detectar una actualización de página usando jquery?
- 20. Cómo instalar MySQL gem en Mac OS X
- 21. ¿Cómo envuelvo una extensión Ruby C en una Ruby Gem?
- 22. ¿Por qué no puedo instalar la gema SQLite?
- 23. Usando Rails Gem Active Admin con Asociaciones
- 24. Cómo instalar wxPython usando virtualenv
- 25. 'sudo gem install' o 'gem install' y ubicaciones de gemas
- 26. Instalar una gema de Github con Bundler
- 27. cómo instalar mi aplicación en la página de myfan
- 28. "no es una joya :: Especificación (NilClass lugar)" cuando se ejecuta después de la gema --version
- 29. ¿Dónde puedo encontrar la especificación de comandos de USSD?
- 30. Vista previa de la página man sin instalar el paquete
Teniendo en cuenta el README de 'gem-man', no _install_ man pages for Gems, simplemente _las visualiza. Todavía no se ha respondido cómo especificar las páginas man en GemSpec. – awendt
No puede especificar páginas man en gemspec. Sin embargo, usando la gema del hombre gema, puedes ver fácilmente las páginas man que los creadores de gemas colocaron en la carpeta 'man' de la gema –