use Inline::Python qw{py_eval py_call_function};
py_eval("import BarnOwl");
py_call_function("BarnOwl", "_loader",
  {command => \&BarnOwl::command,
   getcurmsg => \&BarnOwl::getcurmsg,
   getnumcols => \&BarnOwl::getnumcols,
   getidletime => \&BarnOwl::getidletime,
   zephyr_getrealm => \&BarnOwl::zephyr_getrealm,
   zephyr_getsender => \&BarnOwl::zephyr_getsender,
   zephyr_zwrite => \&BarnOwl::zephyr_zwrite,
   ztext_stylestrip => \&BarnOwl::ztext_stylestrip,
   zephyr_getsubs => \&BarnOwl::zephyr_getsubs,
   queue_message => \&BarnOwl::queue_message,
   admin_message => \&BarnOwl::admin_message,
   start_question => \&BarnOwl::start_question,
   start_password => \&BarnOwl::start_password,
   start_edit_win => \&BarnOwl::start_edit_win,
   get_data_dir => \&BarnOwl::get_data_dir,
   get_config_dir => \&BarnOwl::get_config_dir,
   popless_text => \&BarnOwl::popless_text,
   popless_ztext => \&BarnOwl::popless_ztext,
   error => \&BarnOwl::error,
   getnumcolors => \&BarnOwl::getnumcolors,
   add_dispatch => \&BarnOwl::add_dispatch,
   remove_dispatch => \&BarnOwl::remove_dispatch,
   create_style => \&BarnOwl::create_style,
   new_command => \&BarnOwl::new_command,
   new_variable_int => \&BarnOwl::new_variable_int,
   new_variable_bool => \&BarnOwl::new_variable_bool,
   new_variable_string => \&BarnOwl::new_variable_string,
   quote => \&BarnOwl::quote,
  });
BarnOwl::new_command(python => sub {
  my $cmd = shift;
  my $code = join ' ', @_;
  py_eval($code);
});
BarnOwl::new_command(ppython => sub {
  my $cmd = shift;
  my $code = join ' ', @_;
  BarnOwl::popless_text(py_eval($code, 0));
});
