window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/dusty.jjvk.com\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.3.1"}};
/*! This file is auto-generated */
!function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83e\udef1\ud83c\udffb\u200d\ud83e\udef2\ud83c\udfff","\ud83e\udef1\ud83c\udffb\u200b\ud83e\udef2\ud83c\udfff")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings);
var breeze_prefetch = {"local_url":"https:\/\/dusty.jjvk.com","ignore_remote_prefetch":"1","ignore_list":["\/wp-admin\/"]};
https://dusty.jjvk.com/wp-content/plugins/breeze/assets/js/js-front-end/breeze-prefetch-links.min.js
https://dusty.jjvk.com/wp-includes/js/jquery/jquery.min.js
https://dusty.jjvk.com/wp-includes/js/jquery/jquery-migrate.min.js
var ajaxurl = "https://dusty.jjvk.com/wp-admin/admin-ajax.php";
跳至主要內容
卜洛克的小說學堂
前日又開始繼續閱讀「卜洛克的小說學堂」一書。這本書其實就是教導讀者如何成為作家—恩、應該是以寫作為生的作家吧?
本書不光是講究書寫技巧,卜洛克也以自身的經驗提出職業小說家應該具備的心裡準備、自我管理。全書可分為四大部分,如同目錄一樣,包括小說職業論(職業作家的職業態度)、小說紀律論(職業作家日常的生活作息、創意培養)、小說結構論(架構一部小說的方式)、小說技藝論(寫作技巧)。
以下整理小說寫作技巧這部分的摘要(持續更新)
角色塑造(12/02更新) 作者認為塑造角色最有效的方式是反應自己的某些特點。也就是「如果我是他的話,在相同的狀況下,我會跟他有一樣的反應」、「他們的個性與環境,有可能是從我的個性與環境延伸出來的。」
她說、他說 本章論述描寫對話的技巧。卜洛克主張對話應當簡潔,但也認為有些狀況下可以多加修飾,例如需要凸顯主角的心情、個性時。當角色塑造不錯時,就讓對話推進劇情,而不要描述過多細節,因為對話本身可以用來描述角色的內心。
氣與活力的動詞 本章論述動詞的使用技巧。作者主張使用活潑生動的動詞,可使小說更具有活力。因此卜洛克建議平時多觀察其他作者如何使用動詞,雖然他自己不常回頭修改作品,但他很欣賞伍德浩斯(Wodehouse)駕馭動詞的方式。
無需道歉 切忌解釋 本章認為作者不應該替自己的角色解釋太多細節。替每個角色解釋行為是舞台劇導演的任務,而非小說家。作者應該信任讀者的理解能力,減少過多描寫。另外,對話也不要寫的太囉唆,讓人感覺像是在交代劇情。如何修飾情緒變化
本章論述形容詞與副詞。作者似乎認為,形容詞與副詞可以影響讀者的認知。卜洛克主張應多用說明性的形容詞與副詞,而盡量避免使用控制讀者反應的修飾語。也就是使用不帶主觀成分的修飾語。他指出:「具有判斷性的形容詞使用起來很方便…不需絞盡腦汁去描繪細節…那麼你就是犯了懶病了。」不過,文末又提醒讀者,這只是原則,最重要的是作家要如何活用。
選角與著墨(12/2) 應該以現實人物片段如:對話的方式、外表的特徵、待人處事的態度等,為基礎來創造人物。在把他們轉化為人物時,一定要練習「視覺化」。在心裡揣摩一番。
設定框架(12/2) 所謂的框架,依照作者解釋為「在某個虛構的上層結構中,設定一個故事」。依照我的理解,推測是「透過一個人去敘述一段故事」。也就是在原本的故事上再加上一層框架。例如書中提到的『勇氣本色』,是透過一位老太太回憶過去來呈獻故事。雖然年輕時的老太太身歷險境,但讀者卻都知道她他能化險為夷。
為何要使用框架?作者認為可以拉開讀者與故事的距離。
距離(12/2) 距離應意指讀者與故事之間的感覺。我個人覺得所謂距離近代表讀者可以直接接觸主角,以主角的眼光進行故事。距離遠,讀者就得透過另外一名角色來瞭解故事。如何建構距離?書中提到以「對話」來決定距離的方法。
例如,少用一些誰誰誰「說」,或是不去描述角色的心理狀態如:XXX說出內心已久的盤算。
document.getElementById( "ak_js_1" ).setAttribute( "value", ( new Date() ).getTime() );
( function() {
var dropdown = document.getElementById( 'wp-block-categories-1' );
function onCatChange() {
if ( dropdown.options[ dropdown.selectedIndex ].value > 0 ) {
location.href = "https://dusty.jjvk.com/?cat=" + dropdown.options[ dropdown.selectedIndex ].value;
}
}
dropdown.onchange = onCatChange;
})();
https://dusty.jjvk.com/wp-includes/js/comment-reply.min.js
https://dusty.jjvk.com/wp-content/plugins/breeze/assets/js/js-front-end/breeze-lazy-load.min.js
https://dusty.jjvk.com/wp-content/plugins/akismet/_inc/akismet-frontend.js
/(trident|msie)/i.test(navigator.userAgent)&&document.getElementById&&window.addEventListener&&window.addEventListener("hashchange",function(){var t,e=location.hash.substring(1);/^[A-z0-9_-]+$/.test(e)&&(t=document.getElementById(e))&&(/^(?:a|select|input|button|textarea)$/i.test(t.tagName)||(t.tabIndex=-1),t.focus())},!1);