معرض الكتاب 2025.. “روح الله الفضل حبش” أولى أعمال مجدي نصار

بالتزامن مع قرب انطلاق  معرض القاهرة الدولي للكتاب 2025، يصدر قريبا عن دار العين للنشر والتوزيع رواية ” روح الله الفضل حبش ” للكاتب الروائي مجدي نصار، وتعد الرواية الأولى للكاتب.

وفي تصريحات سابقة لـ “الدستور”، أشار “مجدي” إلى أن فكرة رواية “روح الله الفضل حبش” راودته لسنوات، وتطرقت لأفكار قريبة من فكرة هذه الرواية في أعمال أخرى لم تنل حظ النشر.

نصار: منشغل بشخصيات تعاني عجزا ما 

وتابع نصار “يبدو أن جزءًا مني منشغل بشخصيات تعاني عجزًا ما، تقترن من ثم بكرامات خاصة، ويربطها رابط معين بعناصر الطبيعة، لافتًا إلى أنه كتب عن هذه الشخصيات أكثر من مرة ولم ينشرها حتى زارت خياله تلك الفتاة (روح الله)، واحتلت مساحة كبيرة من ذهنه، حيث جاءت بعالمها ومأساتها وكراماتها.

نصار: عنوان الرواية  جاء باسم البطلة

وأوضح مؤلف “روح الله الفضل حبش” أنه حين أحس باكتمال العالم داخل روح وحولها شرع في الكتابة، عارضًا المسودة على أكثر من صديق ممَن يثق في ذائقتهم ووعيهم بفن الرواية، ونقّحت كثيرًا في المسودة حتى توصلت لنص مكتمل نسبيًا: “اخترت أن يكون عنون الرواية باسم البطلة، خاصة أن اسمها مميز بدرجة ما”. 

من أجواء الرواية 

يقولُ القمرُ: كانت تنتظرُ هذا اليوم؛ قدَرٌ لا مفرَّ منه. اليوم.. ستجلسُ في كرسيّ الاعتراف؛ لتبوح لرجلٍ بالسِّرِّ الذي تخجلُ حين تُفشيه للنساء. 

تقولُ الشمسُ: أسرارها تخرجُ عن سُلطتها؛ إفشاؤها صعب، كتمانُها أصعب. جراحُها ظاهرة، مُخجِلة؛ تجعلها تنزوي وتموت في اليوم ألفَ مرَّة. 

يتناوبُ الشمسُ والقمرُ على حراسة رُوح اللَّـه، يراقبانها ويشهدان على خطواتها التائهة بين تساؤلاتها عمَّنْ تكون، ولماذا هي من بين الخَلْق التي تعاني تلك المعاناة البادية فوق وجهها!

تحملُ وَصْمًا بُنيًّا وتسيرُ به، تارةً غير مكترثة وتارةً أخرى خَجْلَى تُداري رُوحها داخل نفسها. حتى تسري روح الله فيها، وتمنحُها مسحةَ جمالٍ بهيَّة تتمكَّن بها في النهاية من الخطوِ فوق العالَم والتحليق بعيدًا عن كل شيء.

 

 

function replaceOembeds() { var allEmbeds = document.getElementsByTagName("OEMBED");

while (allEmbeds.length != 0) { replaceOembedWithHtml(allEmbeds[0], extractLinkFromOembed(allEmbeds[0])); allEmbeds = document.getElementsByTagName("OEMBED"); }

runYoutubeLazyLoad(); loadfbApi(); }

function replaceOembedWithHtml(element, sourceData) { if (sourceData.source.toLowerCase() === "youtube") { var html="

" + '
' + '
' + '
' + '' + '

' + '

';

replaceElementWithHtml(element, html); } else if (sourceData.source.toLowerCase() === "instagram") { var html="

';

replaceElementWithHtml(element, html); } else if (sourceData.source.toLowerCase() === "twitter") { var html="

'; replaceElementWithHtml(element, html); } else if (sourceData.source.toLowerCase() === "facebook") { var html="

' replaceElementWithHtml(element, html); } else { replaceElementWithHtml(element, ""); }

}

function extractLinkFromOembed(element) { return getUrlSource(element.getAttribute("url")); }

function getUrlSource(url) { var ytRegex = /http(?:s?):\/\/(?:www\.)?youtu(?:be\.com\/watch\?v=|\.be\/)([\w\-\_]*)(&(amp;)?‌​[\w\?‌​=]*)?/; var instaRegex = /(https?:\/\/www\.)?instagram\.com(\/p\/(\w+)\/?)/; var twitterRegex = /twitter\.com\/.*\/status(?:es)?\/([^\/\?]+)/; var fbRegex = /^https?:\/\/www\.facebook\.com.*\/(video(s)?|watch|story|posts)(\.php?|\/).+$/;

if (ytRegex.test(url)) { return { source: "Youtube", url: url, id: ytRegex.exec(url)[1] }; }

if (instaRegex.test(url)) { return { source: "Instagram", url: url, id: instaRegex.exec(url)[3] }; }

if (twitterRegex.test(url)) { return { source: "Twitter", url: url, id: twitterRegex.exec(url)[1] }; }

if (fbRegex.test(url)) { return { source: "Facebook", url: url, id: fbRegex.exec(url)[1] };

}

return { source: "Unknown", url: url, id: "" }; }

function replaceElementWithHtml(element, html) { var str = html; var Obj = element; //any element to be fully replaced if (Obj.outerHTML) { //if outerHTML is supported Obj.outerHTML = str; ///it's simple replacement of whole element with contents of str var } else { //if outerHTML is not supported, there is a weird but crossbrowsered trick var tmpObj = document.createElement("div"); tmpObj.innerHTML = ''; ObjParent = Obj.parentNode; //Okey, element should be parented ObjParent.replaceChild(tmpObj, Obj); //here we placing our temporary data instead of our target, so we can find it then and replace it into whatever we want to replace to ObjParent.innerHTML = ObjParent.innerHTML.replace('

', str); } } function loadfbApi() { var js = document.createElement('script'); js.src="https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v3.2"; document.body.appendChild(js); } function runYoutubeLazyLoad() { /// youtube lazyload var youtube = document.querySelectorAll(".youtube");

for (var i = 0; i

close