Did you know that you can use Bundler without Gemfile?
/ 1 min read
Table of Contents
Did you know that you can use Bundler inside single Ruby script (without Gemfile) and automatically install required dependencies for it?
require 'bundler/inline'
gemfile do source 'https://rubygems.org' gem 'rest-client' gem 'nokogiri'end
###
body = RestClient.get("https://www.reddit.com/r/ruby/").body
puts "Posts from r/ruby front page:"Nokogiri::HTML(body).xpath("//div[contains(@class", "scrollerItem')]//h2").each do |h2| puts h2.text.stripendRun ruby example.rb (without bundle exec), and enjoy!
This is a nice feature that I wasn’t aware of. Best to use for small scripts and quick sketches.
Bonus: use Sublime Text snippet to paste bundler inline code block using tab trigger
1. Open Tools > Developer > New Snippet
2. Paste following code into the snippet file:
<snippet> <content><![CDATA[require 'bundler/inline'
gemfile do source 'https://rubygems.org'end]]></content> <tabTrigger>bun</tabTrigger> <scope>source.ruby</scope></snippet>3. Save snippet (ctrl+s). Now try to open a new empty file with .rb extension and type bun + Tab key. Bundle inline block template will be pasted into the file.