Joseph Knight (novel)

Joseph Knight is a historical novel by Scottish author James Robertson published in 2003 by Fourth Estate. It was the Saltire Society Scottish Book of the Year in 2003[1] and won the Scottish Arts Council Book of the Year Award in 2004.[2] The novel is based on the true story of Joseph Knight, an enslaved African man brought from Jamaica to Scotland, and the novel revolves primarily around the cities of Dundee, near where Robertson was then living, and Edinburgh.

Joseph Knight
First edition
AuthorJames Robertson
Cover artistDundee from the Harbour, unknown artist, 1780s
CountryScotland
LanguageEnglish
PublisherFourth Estate
Publication date
7 April 2003
Media typePrint
Pages384
AwardsSaltire Society Scottish Book of the Year
ISBN0-00-715024-5

Plot introduction

The narrative begins in 1802 with elderly John Wedderburn on his Ballindean estate, near Inchture in Perthshire, who has been unsuccessfully trying to find the whereabouts of Joseph Knight, a slave he brought back to Scotland with him from his Sugar plantations in Westmoreland, Jamaica. Joseph had successfully gained his freedom from Wedderburn in a famous court case settled in 1778 in which it was decided that the slave laws of Jamaica did not apply in Scotland. After gaining his freedom though, Joseph disappeared. Wedderburn has employed Jamieson, a Dundee-based investigator to find Joseph and the story moves between the search for elusive Knight, the Wedderburn family experiences in Jamaica, illuminated by a journal written by John's brother Sandy (found by his daughter Susan and handed to Jamieson to aid his investigations) and the events surrounding the court case.

Reception

  • Ali Smith writing in The Guardian concludes "A gift for witty re-imagining and a canny understanding of the novelistic and its conduits to the worlds we live in now mark Robertson as a marvellous novelist and Joseph Knight as a work of cunning and great assurance, one which directly tackles its historic Scottish guilt and also, by implication, a wider, more contemporary guilt: the loss of freedom that imperialism means for both its victims and its winners."[3]
  • Will Cohu in The Telegraph writes "Joseph Knight is a book of such quality as to persuade you that historical novels are the true business of the writer, that it's through the past that we might understand ourselves best, that it's in the past that the imagination can be most free, but also most authentic...Joseph Knight is an enquiry into the defining quality of freedom. Joseph's case strikes a chord with many others in the book – colliers, wives, daughters – who long for liberty. Knight, who ends his days down a coalmine, comes to realise that to be free is not necessarily to be content, but to have the choice to possess wholly what life one has – "It might not be much, life, but he wanted it all the same, all he could get of it" – rather than to long for death as the only hope of emancipation."[4]
gollark: I want a *different* set of "OPERATIONS ON RELEVANT NODE THING" and no HTML generation at the end, and it would be bees to just copy-paste the function here.
gollark: As of now, my code does```nimproc renderToHtml*(input: string): string = let wlRegex = re"\[\[([^:\]]+):?([^\]]+)?\]\]" let opt = CMARK_OPT_UNSAFE or CMARK_OPT_FOOTNOTES or CMARK_OPT_STRIKETHROUGH_DOUBLE_TILDE or CMARK_OPT_TABLE_PREFER_STYLE_ATTRIBUTES # create parser instance let str: cstring = input len: csize_t = len(input).csize_t parser: ParserPtr = cmark_parser_new(opt.cint) if parser == nil: raise newException(CatchableError, "failed to initialize parser") defer: cmark_parser_free(parser) [further initialization stuff] # parse document, get AST cmark_parser_feed(parser, str, len) let doc = cmark_parser_finish(parser) defer: cmark_node_free(doc) if doc == nil: raise newException(CatchableError, "parsing failed - should not occur") # iterate over AST using built-in cmark-gfm AST iteration thing for (evType, node) in cmarkTree(doc): # if it is a text node [OPERATIONS ON RELEVANT NODE THING] let html: cstring = cmark_render_html(doc, opt.cint, cmark_parser_get_syntax_extensions(parser)) defer: free(html) result = $html```
gollark: cmark. I will explain.
gollark: Hmm. Gibson, you use nim, yes? How can I nicely™ abstract this C library?
gollark: Hi.

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.