Comme j’ai eu un peu trop de problêmes à faire tourner ncurses sur plusieurs machines, j’ai décidé de repasser à curses.

Voici donc le programme de la dernière fois, réécrit pour curses:

#!/usr/bin/env ruby

require 'curses'
include Curses

file = File.open ARGV[0]

begin
  init_screen
  file.each {|line| addstr(line) }
  refresh
  getch
ensure
  close_screen
end

Un problème avec Unicode ?

Il se peut que vous ayez des problèmes pour afficher correctement les caractères unicode. À tous les coups, c’est parce que la gem curses à été compilée sans les headers indispensables. Installez donc ces headers: libncurses5.dev et libncurses5w.dev, ensuite vous avez deux solutions:

  1. Si vous utilisez Ruby 2.1, désinstallez curses et réinstallez la: gem uninstall curses && gem install curses.
  2. Si vous utilisez Ruby 2.0 ou inférieur, curses fait partie de la bibliothèque standard, c’est donc Ruby qu’il faudra recompiler.

À demain.