The view "show_block_custom_main" require an array to display the custom fields.
One row of this array is, for example:
'customtext_295_7_25_19' =>
object(stdClass)[560]
public 'field_id' => string '28' (length=2)
public 'field_table' => string 'product' (length=7)
public 'field_realname' => string '' (length=0)
public 'field_namekey' => string 'customtext_295_7_25_19' (length=22)
public 'field_type' => string 'customtext' (length=10)
public 'field_value' => string '' (length=0)
public 'field_published' => string '1' (length=1)
public 'field_ordering' => string '2' (length=1)
public 'field_options' =>
array
'errormessage' => string '' (length=0)
'cols' => string '' (length=0)
'filtering' => string '1' (length=1)
'maxlength' => string '0' (length=1)
'rows' => string '' (length=0)
'zone_type' => string 'country' (length=7)
'size' => string '' (length=0)
'format' => string '' (length=0)
'allow' => string '' (length=0)
'readonly' => string '0' (length=1)
'customtext' => string '' (length=0)
public 'field_core' => string '0' (length=1)
public 'field_required' => string '0' (length=1)
public 'field_backend' => string '1' (length=1)
public 'field_frontcomp' => string '1' (length=1)
public 'field_default' => string '' (length=0)
public 'field_backend_listing' => string '0' (length=1)
public 'field_access' => string 'all' (length=3)
public 'field_categories' => string 'all' (length=3)
public 'field_with_sub_categories' => string '0' (length=1)
So if you want to use this layout in the listing you have to prepare the object $fields. And to prepare it you have to edit the file "components/com_hikashop/views/product/view.html.php" function "listing" it require a good php skill, and good knowledge of HikaShop.