World Library  
Flag as Inappropriate
Email this Article

Finian's Rainbow (film)

Article Id: WHEBN0009505271
Reproduction Date:

Title: Finian's Rainbow (film)  
Author: World Heritage Encyclopedia
Language: English
Subject: 26th Golden Globe Awards, Fred Astaire, Francis Ford Coppola, B. J. Arnau, How Are Things in Glocca Morra?
Collection:
Publisher: World Heritage Encyclopedia
Publication
Date:
 

Finian's Rainbow (film)

Finian's Rainbow
Original poster
Directed by Francis Ford Coppola
Produced by Joseph Landon
Written by E. Y. Harburg
Fred Saidy
Starring Fred Astaire
Petula Clark
Tommy Steele
Music by Burton Lane
Cinematography Philip H. Lathrop
Edited by Melvin Shapiro
Distributed by Warner Bros.-Seven Arts
Release dates
  • October 9, 1968 (1968-10-09)
Running time
145 minutes
Country Ireland
United States
Language English
Budget $3.5 million
Box office $11,600,000[1]

Finian's Rainbow is a 1968 American musical film directed by Francis Ford Coppola that stars Fred Astaire and Petula Clark. The screenplay by E. Y. Harburg and Fred Saidy is based on their 1947 stage musical of the same name.

Plot

A lovable rogue named Finian McLonergan absconds from his native Ireland with a pot of gold secreted in a carpetbag, plus his daughter Sharon in tow. His destination is Rainbow Valley in the mythical state of Missitucky, where he plans to bury his treasure in the mistaken belief that, given its close proximity to Fort Knox, it will multiply.

Hot on his heels is the leprechaun Og, desperate to recover his stolen crock before he turns human. Among those involved in the ensuing shenanigans are Woody Mahoney, a ne'er-do-well dreamer who woos Sharon; his mute sister Susan, who expresses herself in dance; Woody's good friend and business partner Howard, an African-American botanist determined to grow mentholated tobacco; and bombastic Senator Billboard Rawkins, who wears his bigotry as if it were a badge of honor.

Complications arise when Rawkins, believing there is gold in Rainbow Valley, attempts to seize the land from the people who live there and makes some racial slurs while doing so. Sharon furiously wishes he would turn black himself—and, because she is in close proximity to the magical pot of gold, which is capable of granting three wishes, Rawkins does exactly that. Sharon is accused of witchcraft and sentenced to be burned at the stake unless she can make him white again.

To save his daughter, Finian tries to find the pot of gold, unaware Susan has discovered it and hidden it under a bridge. Rawkins eventually meets Og, who quickly realizes what caused the senator's change in race. Seeing that the change of skin color did nothing to alter his hateful racism, Og casts a spell to make Rawkins more open-minded.

Sharon and Woody gather in the barn to be married, but the sheriff, his deputies, and the local district attorney barricade the doors and promise to burn the building down if Rawkins is not white by sunrise. Og meets with Susan on the bridge under which the gold is hidden and wishes she could talk. When she begins to speak, Og realizes they are standing above the gold.

For a brief moment he considers using the final wish to retain his leprechaun status and return to the fairy world. After a passionate kiss, he decides he would rather remain human with Susan and wishes for Rawkins to be white once more. Thanks to the now-empty crock helping to put out an accidental fire that was about to consume the barn, Howard's mentholated tobacco experiments become successful, ensuring financial success for all the poor people of Rainbow Valley, both white and black. Sharon and Woody are wed, and bid a fond farewell to Finian, who leaves Rainbow Valley in search of his own rainbow.

Production

Development

Since the musical was such a success on stage, there had always been interest in filming it. MGM were interested in filming it in 1948 as a vehicle for Mickey Rooney. However Harburg set the price for the rights at $1 million and wanted creative control.[2]

For a time a German company wanted to made it. In 1954, the Distributors Corporation of America wanted to make it as an animated film. A soundtrack of the score was recorded by several stars, but the film was not completed. In 1958 the authors of the musical teamed with Sidney Buchman to produce the film independently but the film did not proceed.[3]

In 1960 the rights were held by Marvin Rothenberg who wanted Michael Gordon to direct and Debbie Reynolds to star. It was announced the film would be budgeted at $2 million and be released by United Artists.[3][4] However the film did not eventuate.[5]

Harburg stated in 1960 that he was told part of the reason it was so difficult to get a film version made was Hollywood was scared of fantasy musicals.[6] Another reason was the McCarthyism of the period.[2]

In 1965 Howard Hecht bought the film rights and hired Harburg and Saidy to write a script and some new songs. Hecht said he intended to film in nine months. "This time we really mean business," said Harburg. "We've gotten a substantial deal and participation in money and production. Up tunil now Finian has been making so much money on the road that we didn't want to kill the goose laying all those golden eggs. But you become more idealistic as you grow older and you tend to stop thinking about yourself."[7]

Warner Bros

In September 1966 Warner Bros announced they had the rights and they would make a film produced by Joseph Landon and starring Fred Astaire, with the aim to get Tommy Steele as the leprechaun. The budget was expected to be $4 million.[8][9]

Francis Ford Coppola was signed as director in February 1967.[10] Petula Clarke then came on board as the female lead and Steele confirmed as the leprechaun, although Robert Morse had expressed interest.[11]

Warner Bros. had optioned the film rights to the stage musical , and they were on the verge of expiring. With Camelot having proven to be more costly than anticipated, and its commercial success still undetermined since it had not been released, Jack L. Warner was having second thoughts about another musical project, but when he saw Petula Clark perform on her opening night at the Coconut Grove in the Ambassador Hotel in Los Angeles, he knew he had found the ideal Sharon.[12]

He decided to forge ahead and hoped for the best, despite his misgivings about having nearly-novice "hippie" director Francis Ford Coppola at its helm. Although Clark had made many films in the 1940s and 1950s in her native Great Britain, this would be her first starring role in ten years, and her first film appearance since rising to international fame with "Downtown" four years earlier.

It was known that Dick Van Dyke was considered to play the role of Finian, back in 1965, however, financial problems caused the filming to be postponed, and Van Dyke dropped out of consideration. (Source: "The Films of Fred Astaire")

Fred Astaire, whose last movie musical had been Silk Stockings eleven years earlier, and who had concentrated on his TV specials in the interim, was persuaded at the age of sixty-nine to return to the screen to portray the title character. Given his status as a screen legend and to accommodate his talents, the role was given a musical presence it had not had on stage, and he was given top rather than the original third billing.

While a construction crew transformed more than nine acres of backlot into Rainbow Valley, complete with a narrow gauge railway, schoolhouse, general store, post office, houses, and barns, Coppola spent five weeks rehearsing the cast, and before principal photography began, a complete performance of the film was presented to an audience on a studio soundstage.[13] In the liner notes she wrote for the 2004 Rhino Records limited, numbered edition CD release of the soundtrack, Clark recalls that old-Hollywood Astaire was befuddled by Coppola's contemporary methods of film-making and balked at dancing in "a real field with cow dung and rabbit holes." Although he finally acquiesced to filming a sequence in the Napa Valley near Coppola's home, the bulk of the movie was shot on studio soundstages and the backlot, leaving the finished film with jarring contrasts between reality and make-believe.[12]

Clark was nervous about her first Hollywood movie and particularly concerned about dancing with old pro Astaire. He later confessed he was just as worried about singing with her.[12] The film was partially choreographed by Astaire's long-time friend and collaborator Hermes Pan, who was fired by Coppola during filming.[14] Finian's Rainbow proved to be Astaire's last major movie musical, although he went on to dance with Gene Kelly during the linking sections of That's Entertainment, Part 2.

Clark recalls that Coppola's approach was at odds with the subject matter. "Francis . . . wanted to make it more real. The problem with Finian's Rainbow is that it's sort of like a fairy tale . . . so trying to make sense of it was a very delicate thing."[12] Coppola opted to fall somewhere in the middle, with mixed results. Updating the story line was limited to changing Woody from a labor organizer to the manager of a sharecroppers' cooperative, making college-student Howard a research botanist, and a few minor changes to the lyrics in the Burton Lane-E. Y. Harburg score, such as changing a reference to Carmen Miranda to Zsa Zsa Gabor. Other than that, the plot remains firmly entrenched in the pre-Civil Rights era.

Because preview audiences found the film overly long, the musical number "Necessity" was deleted prior to its release, although the song remains on the soundtrack album. It can also be heard as background music, when Senator Rawkins first shows up in Rainbow Valley in his attempt to buy Finian out.

Cast

Musical sequences

CD cover
  • Overture
  • Look to the Rainbow
  • This Time of the Year
  • How Are Things in Glocca Morra?
  • Look to the Rainbow (Reprise)
  • Old Devil Moon
  • Something Sort of Grandish
  • If This Isn't Love
  • (That) Great Come-and-Get-It-Day
  • Entr'acte
  • When the Idle Poor Become the Idle Rich
  • Rain Dance Ballet
  • The Begat
  • When I'm Not Near the Girl I Love
  • How Are Things in Glocca Morra? (Reprise)
  • Exit Music

Critical reception

Released in major cities as a roadshow presentation complete with intermission, at a time when the popularity of movie musicals was on the wane, the film was dismissed as inconsequential by many critics, who found Astaire's obviously frail and aged appearance shocking and Steele's manic performance annoying. In the New York Times, Renata Adler described it as a "cheesy, joyless thing" and added, "there is something awfully depressing about seeing Finian's Rainbow . . . with Fred Astaire looking ancient, far beyond his years, collapsed and red-eyed . . . it is not just that the musical is dated . . . it is that it has been done listlessly and even tastelessly."[15]

Roger Ebert of the Chicago Sun-Times, on the other hand, thought it was "the best of the recent roadshow musicals . . . Since The Sound of Music, musicals have been . . . long, expensive, weighed down with unnecessary production values and filled with pretension . . . Finian's Rainbow is an exception . . . it knows exactly where it's going, and is getting there as quickly and with as much fun as possible . . . it is the best-directed musical since West Side Story. It is also enchanting, and that's a word I don't get to use much . . . it is so good, I suspect, because Astaire was willing to play it as the screenplay demands . . . he . . . created this warm old man . . . and played him wrinkles and all. Astaire is pushing 70, after all, and no effort was made to make him look younger with common tricks of lighting, makeup and photography. That would have been unnecessary: He has a natural youthfulness. I particularly want to make this point because of the cruel remarks on Astaire's appearance in the New York Times review by Renata Adler. She is mistaken."[16]

Time Out London calls it an "underrated musical . . . the best of the latter-day musicals in the tradition of Minnelli and MGM."[17]

Highly praised by all was Clark, whom Ebert described as "a surprise. I knew she could sing, but I didn't expect much more. She is a fresh addition to the movies: a handsome profile, a bright personality, and a singing voice as unique in its own way as Newsweek said she "looks lovely" and "sings beautifully, with an occasional startling reference to the phrasing and timbre of Ella Logan's original performance."[13] Variety observed, "Miss Clark gives a good performance and she sings the beautiful songs like a nightingale."[13] Clearly, in the United States at least, Clark was known only as a singer, although she had appeared as an actress in British films since she was a child.

Tommy Steele got plenty of negative reviews, calling his performance of Og overacting compared to the controlled charm found in David Wayne in the Broadway version of the musical. Steele's screaming and slapstick performance were considered by many critics to be overdone. require('Module:No globals')

local p = {}

-- articles in which traditional Chinese preceeds simplified Chinese local t1st = { ["228 Incident"] = true, ["Chinese calendar"] = true, ["Lippo Centre, Hong Kong"] = true, ["Republic of China"] = true, ["Republic of China at the 1924 Summer Olympics"] = true, ["Taiwan"] = true, ["Taiwan (island)"] = true, ["Taiwan Province"] = true, ["Wei Boyang"] = true, }

-- the labels for each part local labels = { ["c"] = "Chinese", ["s"] = "simplified Chinese", ["t"] = "traditional Chinese", ["p"] = "pinyin", ["tp"] = "Tongyong Pinyin", ["w"] = "Wade–Giles", ["j"] = "Jyutping", ["cy"] = "Cantonese Yale", ["poj"] = "Pe̍h-ōe-jī", ["zhu"] = "Zhuyin Fuhao", ["l"] = "literally", }

-- article titles for wikilinks for each part local wlinks = { ["c"] = "Chinese language", ["s"] = "simplified Chinese characters", ["t"] = "traditional Chinese characters", ["p"] = "pinyin", ["tp"] = "Tongyong Pinyin", ["w"] = "Wade–Giles", ["j"] = "Jyutping", ["cy"] = "Yale romanization of Cantonese", ["poj"] = "Pe̍h-ōe-jī", ["zhu"] = "Bopomofo", }

-- for those parts which are to be treated as languages their ISO code local ISOlang = { ["c"] = "zh", ["t"] = "zh-Hant", ["s"] = "zh-Hans", ["p"] = "zh-Latn-pinyin", ["tp"] = "zh-Latn", ["w"] = "zh-Latn-wadegile", ["j"] = "yue-jyutping", ["cy"] = "yue", ["poj"] = "hak", ["zhu"] = "zh-Bopo", }

local italic = { ["p"] = true, ["tp"] = true, ["w"] = true, ["j"] = true, ["cy"] = true, ["poj"] = true, } -- Categories for different kinds of Chinese text local cats = { ["c"] = "", ["s"] = "", ["t"] = "", }

function p.Zh(frame) -- load arguments module to simplify handling of args local getArgs = require('Module:Arguments').getArgs local args = getArgs(frame) return p._Zh(args) end function p._Zh(args) local uselinks = not (args["links"] == "no") -- whether to add links local uselabels = not (args["labels"] == "no") -- whether to have labels local capfirst = args["scase"] ~= nil

        local t1 = false -- whether traditional Chinese characters go first
        local j1 = false -- whether Cantonese Romanisations go first
        local testChar
        if (args["first"]) then
                 for testChar in mw.ustring.gmatch(args["first"], "%a+") do
          if (testChar == "t") then
           t1 = true
           end
          if (testChar == "j") then
           j1 = true
           end
         end
        end
        if (t1 == false) then
         local title = mw.title.getCurrentTitle()
         t1 = t1st[title.text] == true
        end

-- based on setting/preference specify order local orderlist = {"c", "s", "t", "p", "tp", "w", "j", "cy", "poj", "zhu", "l"} if (t1) then orderlist[2] = "t" orderlist[3] = "s" end if (j1) then orderlist[4] = "j" orderlist[5] = "cy" orderlist[6] = "p" orderlist[7] = "tp" orderlist[8] = "w" end -- rename rules. Rules to change parameters and labels based on other parameters if args["hp"] then -- hp an alias for p ([hanyu] pinyin) args["p"] = args["hp"] end if args["tp"] then -- if also Tongyu pinyin use full name for Hanyu pinyin labels["p"] = "Hanyu Pinyin" end if (args["s"] and args["s"] == args["t"]) then -- Treat simplified + traditional as Chinese if they're the same args["c"] = args["s"] args["s"] = nil args["t"] = nil elseif (not (args["s"] and args["t"])) then -- use short label if only one of simplified and traditional labels["s"] = labels["c"] labels["t"] = labels["c"] end local body = "" -- the output string local params -- for creating HTML spans local label -- the label, i.e. the bit preceeding the supplied text local val -- the supplied text -- go through all possible fields in loop, adding them to the output for i, part in ipairs(orderlist) do if (args[part]) then -- build label label = "" if (uselabels) then label = labels[part] if (capfirst) then label = mw.language.getContentLanguage():ucfirst(

The film earned $5.1 million in rentals in North America.[19]

Awards and nominations

The film was nominated for the Golden Globe Award for Best Motion Picture – Musical or Comedy but lost to Oliver! Petula Clark was nominated for the Golden Globe Award for Best Actress – Motion Picture Musical or Comedy but lost to Barbra Streisand in Funny Girl; Fred Astaire was nominated for the Golden Globe Award for Best Actor – Motion Picture Musical or Comedy but lost to Ron Moody in Oliver!; and Barbara Hancock was nominated for the Golden Globe Award for Best Supporting Actress – Motion Picture but lost to Ruth Gordon in Rosemary's Baby.

Ray Heindorf was nominated for the Academy Award for Best Score – Adaptation or Treatment but lost to Johnny Green for Oliver! M.A. Merrick and Dan Wallin were nominated for the Academy Award for Best Sound but lost to Jim Groom for Oliver![20]

E.Y. Harburg and Fred Saidy were nominated for Best Written American Musical by the Writers Guild of America.

DVD release

The film was released on DVD on March 15, 2005. Presented in anamorphic widescreen format, it captures all of Astaire's footwork, most of which was unseen in the original release. require('Module:No globals')

local p = {}

-- articles in which traditional Chinese preceeds simplified Chinese local t1st = { ["228 Incident"] = true, ["Chinese calendar"] = true, ["Lippo Centre, Hong Kong"] = true, ["Republic of China"] = true, ["Republic of China at the 1924 Summer Olympics"] = true, ["Taiwan"] = true, ["Taiwan (island)"] = true, ["Taiwan Province"] = true, ["Wei Boyang"] = true, }

-- the labels for each part local labels = { ["c"] = "Chinese", ["s"] = "simplified Chinese", ["t"] = "traditional Chinese", ["p"] = "pinyin", ["tp"] = "Tongyong Pinyin", ["w"] = "Wade–Giles", ["j"] = "Jyutping", ["cy"] = "Cantonese Yale", ["poj"] = "Pe̍h-ōe-jī", ["zhu"] = "Zhuyin Fuhao", ["l"] = "literally", }

-- article titles for wikilinks for each part local wlinks = { ["c"] = "Chinese language", ["s"] = "simplified Chinese characters", ["t"] = "traditional Chinese characters", ["p"] = "pinyin", ["tp"] = "Tongyong Pinyin", ["w"] = "Wade–Giles", ["j"] = "Jyutping", ["cy"] = "Yale romanization of Cantonese", ["poj"] = "Pe̍h-ōe-jī", ["zhu"] = "Bopomofo", }

-- for those parts which are to be treated as languages their ISO code local ISOlang = { ["c"] = "zh", ["t"] = "zh-Hant", ["s"] = "zh-Hans", ["p"] = "zh-Latn-pinyin", ["tp"] = "zh-Latn", ["w"] = "zh-Latn-wadegile", ["j"] = "yue-jyutping", ["cy"] = "yue", ["poj"] = "hak", ["zhu"] = "zh-Bopo", }

local italic = { ["p"] = true, ["tp"] = true, ["w"] = true, ["j"] = true, ["cy"] = true, ["poj"] = true, } -- Categories for different kinds of Chinese text local cats = { ["c"] = "", ["s"] = "", ["t"] = "", }

function p.Zh(frame) -- load arguments module to simplify handling of args local getArgs = require('Module:Arguments').getArgs local args = getArgs(frame) return p._Zh(args) end function p._Zh(args) local uselinks = not (args["links"] == "no") -- whether to add links local uselabels = not (args["labels"] == "no") -- whether to have labels local capfirst = args["scase"] ~= nil

        local t1 = false -- whether traditional Chinese characters go first
        local j1 = false -- whether Cantonese Romanisations go first
        local testChar
        if (args["first"]) then
                 for testChar in mw.ustring.gmatch(args["first"], "%a+") do
          if (testChar == "t") then
           t1 = true
           end
          if (testChar == "j") then
           j1 = true
           end
         end
        end
        if (t1 == false) then
         local title = mw.title.getCurrentTitle()
         t1 = t1st[title.text] == true
        end

-- based on setting/preference specify order local orderlist = {"c", "s", "t", "p", "tp", "w", "j", "cy", "poj", "zhu", "l"} if (t1) then orderlist[2] = "t" orderlist[3] = "s" end if (j1) then orderlist[4] = "j" orderlist[5] = "cy" orderlist[6] = "p" orderlist[7] = "tp" orderlist[8] = "w" end -- rename rules. Rules to change parameters and labels based on other parameters if args["hp"] then -- hp an alias for p ([hanyu] pinyin) args["p"] = args["hp"] end if args["tp"] then -- if also Tongyu pinyin use full name for Hanyu pinyin labels["p"] = "Hanyu Pinyin" end if (args["s"] and args["s"] == args["t"]) then -- Treat simplified + traditional as Chinese if they're the same args["c"] = args["s"] args["s"] = nil args["t"] = nil elseif (not (args["s"] and args["t"])) then -- use short label if only one of simplified and traditional labels["s"] = labels["c"] labels["t"] = labels["c"] end local body = "" -- the output string local params -- for creating HTML spans local label -- the label, i.e. the bit preceeding the supplied text local val -- the supplied text -- go through all possible fields in loop, adding them to the output for i, part in ipairs(orderlist) do if (args[part]) then -- build label label = "" if (uselabels) then label = labels[part] if (capfirst) then label = mw.language.getContentLanguage():ucfirst( It has audio tracks in English and French, with both the dialogue and songs translated into the latter language. Fluent in French, Clark was the sole cast member to record the foreign version.

Bonus features include commentary by Francis Ford Coppola, who focuses mostly on the film's shortcomings, The World Premiere of Finian's Rainbow, and the original theatrical trailer.

See also

References


-- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the and meta-templates and includes -- -- helper functions for other Lua hatnote modules. --


local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local mArguments -- lazily initialise Module:Arguments local yesno -- lazily initialise Module:Yesno

local p = {}


-- Helper functions


local function getArgs(frame) -- Fetches the arguments from the parent frame. Whitespace is trimmed and -- blanks are removed. mArguments = require('Module:Arguments') return mArguments.getArgs(frame, {parentOnly = true}) end

local function removeInitialColon(s) -- Removes the initial colon from a string, if present. return s:match('^:?(.*)') end

function p.findNamespaceId(link, removeColon) -- Finds the namespace id (namespace number) of a link or a pagename. This -- function will not work if the link is enclosed in double brackets. Colons -- are trimmed from the start of the link by default. To skip colon -- trimming, set the removeColon parameter to true. checkType('findNamespaceId', 1, link, 'string') checkType('findNamespaceId', 2, removeColon, 'boolean', true) if removeColon ~= false then link = removeInitialColon(link) end local namespace = link:match('^(.-):') if namespace then local nsTable = mw.site.namespaces[namespace] if nsTable then return nsTable.id end end return 0 end

function p.formatPages(...) -- Formats a list of pages using formatLink and returns it as an array. Nil -- values are not allowed. local pages = {...} local ret = {} for i, page in ipairs(pages) do ret[i] = p._formatLink(page) end return ret end

function p.formatPageTables(...) -- Takes a list of page/display tables and returns it as a list of -- formatted links. Nil values are not allowed. local pages = {...} local links = {} for i, t in ipairs(pages) do checkType('formatPageTables', i, t, 'table') local link = t[1] local display = t[2] links[i] = p._formatLink(link, display) end return links end

function p.makeWikitextError(msg, helpLink, addTrackingCategory) -- Formats an error message to be returned to wikitext. If -- addTrackingCategory is not false after being returned from -- Module:Yesno, and if we are not on a talk page, a tracking category -- is added. checkType('makeWikitextError', 1, msg, 'string') checkType('makeWikitextError', 2, helpLink, 'string', true) yesno = require('Module:Yesno') local title = mw.title.getCurrentTitle() -- Make the help link text. local helpText if helpLink then helpText = ' (help)' else helpText = end -- Make the category text. local category if not title.isTalkPage and yesno(addTrackingCategory) ~= false then category = 'Hatnote templates with errors' category = string.format( '%s:%s', mw.site.namespaces[14].name, category ) else category = end return string.format( '%s', msg, helpText, category ) end


-- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the template.


function p.formatLink(frame) local args = getArgs(frame) local link = args[1] local display = args[2] if not link then return p.makeWikitextError( 'no link specified', 'Template:Format hatnote link#Errors', args.category ) end return p._formatLink(link, display) end

function p._formatLink(link, display) -- Find whether we need to use the colon trick or not. We need to use the -- colon trick for categories and files, as otherwise category links -- categorise the page and file links display the file. checkType('_formatLink', 1, link, 'string') checkType('_formatLink', 2, display, 'string', true) link = removeInitialColon(link) local namespace = p.findNamespaceId(link, false) local colon if namespace == 6 or namespace == 14 then colon = ':' else colon = end -- Find whether a faux display value has been added with the | magic -- word. if not display then local prePipe, postPipe = link:match('^(.-)|(.*)$') link = prePipe or link display = postPipe end -- Find the display value. if not display then local page, section = link:match('^(.-)#(.*)$') if page then display = page .. ' § ' .. section end end -- Assemble the link. if display then return string.format('%s', colon, link, display) else return string.format('%s%s', colon, link) end end


-- Hatnote -- -- Produces standard hatnote text. Implements the template.


function p.hatnote(frame) local args = getArgs(frame) local s = args[1] local options = {} if not s then return p.makeWikitextError( 'no text specified', 'Template:Hatnote#Errors', args.category ) end options.extraclasses = args.extraclasses options.selfref = args.selfref return p._hatnote(s, options) end

function p._hatnote(s, options) checkType('_hatnote', 1, s, 'string') checkType('_hatnote', 2, options, 'table', true) local classes = {'hatnote'} local extraclasses = options.extraclasses local selfref = options.selfref if type(extraclasses) == 'string' then classes[#classes + 1] = extraclasses end if selfref then classes[#classes + 1] = 'selfref' end return string.format( '
%s
', table.concat(classes, ' '), s )

end

return p-------------------------------------------------------------------------------- -- Module:Hatnote -- -- -- -- This module produces hatnote links and links to related articles. It -- -- implements the and meta-templates and includes -- -- helper functions for other Lua hatnote modules. --


local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local mArguments -- lazily initialise Module:Arguments local yesno -- lazily initialise Module:Yesno

local p = {}


-- Helper functions


local function getArgs(frame) -- Fetches the arguments from the parent frame. Whitespace is trimmed and -- blanks are removed. mArguments = require('Module:Arguments') return mArguments.getArgs(frame, {parentOnly = true}) end

local function removeInitialColon(s) -- Removes the initial colon from a string, if present. return s:match('^:?(.*)') end

function p.findNamespaceId(link, removeColon) -- Finds the namespace id (namespace number) of a link or a pagename. This -- function will not work if the link is enclosed in double brackets. Colons -- are trimmed from the start of the link by default. To skip colon -- trimming, set the removeColon parameter to true. checkType('findNamespaceId', 1, link, 'string') checkType('findNamespaceId', 2, removeColon, 'boolean', true) if removeColon ~= false then link = removeInitialColon(link) end local namespace = link:match('^(.-):') if namespace then local nsTable = mw.site.namespaces[namespace] if nsTable then return nsTable.id end end return 0 end

function p.formatPages(...) -- Formats a list of pages using formatLink and returns it as an array. Nil -- values are not allowed. local pages = {...} local ret = {} for i, page in ipairs(pages) do ret[i] = p._formatLink(page) end return ret end

function p.formatPageTables(...) -- Takes a list of page/display tables and returns it as a list of -- formatted links. Nil values are not allowed. local pages = {...} local links = {} for i, t in ipairs(pages) do checkType('formatPageTables', i, t, 'table') local link = t[1] local display = t[2] links[i] = p._formatLink(link, display) end return links end

function p.makeWikitextError(msg, helpLink, addTrackingCategory) -- Formats an error message to be returned to wikitext. If -- addTrackingCategory is not false after being returned from -- Module:Yesno, and if we are not on a talk page, a tracking category -- is added. checkType('makeWikitextError', 1, msg, 'string') checkType('makeWikitextError', 2, helpLink, 'string', true) yesno = require('Module:Yesno') local title = mw.title.getCurrentTitle() -- Make the help link text. local helpText if helpLink then helpText = ' (help)' else helpText = end -- Make the category text. local category if not title.isTalkPage and yesno(addTrackingCategory) ~= false then category = 'Hatnote templates with errors' category = string.format( '%s:%s', mw.site.namespaces[14].name, category ) else category = end return string.format( '%s', msg, helpText, category ) end


-- Format link -- -- Makes a wikilink from the given link and display values. Links are escaped -- with colons if necessary, and links to sections are detected and displayed -- with " § " as a separator rather than the standard MediaWiki "#". Used in -- the template.


function p.formatLink(frame) local args = getArgs(frame) local link = args[1] local display = args[2] if not link then return p.makeWikitextError( 'no link specified', 'Template:Format hatnote link#Errors', args.category ) end return p._formatLink(link, display) end

function p._formatLink(link, display) -- Find whether we need to use the colon trick or not. We need to use the -- colon trick for categories and files, as otherwise category links -- categorise the page and file links display the file. checkType('_formatLink', 1, link, 'string') checkType('_formatLink', 2, display, 'string', true) link = removeInitialColon(link) local namespace = p.findNamespaceId(link, false) local colon if namespace == 6 or namespace == 14 then colon = ':' else colon = end -- Find whether a faux display value has been added with the | magic -- word. if not display then local prePipe, postPipe = link:match('^(.-)|(.*)$') link = prePipe or link display = postPipe end -- Find the display value. if not display then local page, section = link:match('^(.-)#(.*)$') if page then display = page .. ' § ' .. section end end -- Assemble the link. if display then return string.format('%s', colon, link, display) else return string.format('%s%s', colon, link) end end


-- Hatnote -- -- Produces standard hatnote text. Implements the template.


function p.hatnote(frame) local args = getArgs(frame) local s = args[1] local options = {} if not s then return p.makeWikitextError( 'no text specified', 'Template:Hatnote#Errors', args.category ) end options.extraclasses = args.extraclasses options.selfref = args.selfref return p._hatnote(s, options) end

function p._hatnote(s, options) checkType('_hatnote', 1, s, 'string') checkType('_hatnote', 2, options, 'table', true) local classes = {'hatnote'} local extraclasses = options.extraclasses local selfref = options.selfref if type(extraclasses) == 'string' then classes[#classes + 1] = extraclasses end if selfref then classes[#classes + 1] = 'selfref' end return string.format( '
%s
', table.concat(classes, ' '), s )

end

return p
  1. ^
  2. ^ a b Deck Is Stacked Against Broadway By Philip K. Scheuer Special to the Los Angeles Times. The Washington Post, Times Herald (1959-1973) [Washington, D.C] 26 Dec 1967: C7.
  3. ^ a b VIEW FROM A LOCAL VANTAGE POINT By A.H. WEILER. New York Times (1923-Current file) [New York, N.Y] 17 Apr 1960: X5.
  4. ^ Director's First Comedy a Smash: They Told Gordon He Couldn't Make One---Till 'Pillow Talk'! Scheuer, Philip K. Los Angeles Times (1923-Current File) [Los Angeles, Calif] 08 Jan 1960: A7.
  5. ^ GREAT EXPECTATIONS: Or, the Annual Survey of a Few Fine Plans That Failed to Materialize By A.H. WEILER. New York Times (1923-Current file) [New York, N.Y] 25 Dec 1960: X9.
  6. ^ Age of the Unthinking' Blamed on Broadcasters By John Crosby. The Washington Post, Times Herald (1959-1973) [Washington, D.C] 22 May 1960: G13.
  7. ^ Smutty Nose to 93rd St.: More About Movies By A.H. WEILER. New York Times (1923-Current file) [New York, N.Y] 07 Nov 1965: X11.
  8. ^ MOVIE CALL SHEET: Warners to Film 'Rainbow' Martin, Betty. Los Angeles Times (1923-Current File) [Los Angeles, Calif] 28 Sep 1966: D12.
  9. ^ WARNERS TO CAST FOR A POT OF GOLD: 'Finian's Rainbow' Film With Fred Astaire Is Announced By A. H. WEILER. New York Times (1923-Current file) [New York, N.Y] 28 Sep 1966: 41.
  10. ^ Coppola to Direct 'Rainbow' Martin, Betty. Los Angeles Times (1923-Current File) [Los Angeles, Calif] 13 Feb 1967: c23.
  11. ^ Steele in 'Finian's Rainbow' Martin, Betty. Los Angeles Times (1923-Current File) [Los Angeles, Calif] 03 Apr 1967: c30.
  12. ^ a b c d Finian's Rainbow Original Soundtrack CD liner notes
  13. ^ a b c d e at PetulaClark.netFinian's Rainbow
  14. ^ DVDJournal.com
  15. ^ reviewNew York Times
  16. ^ reviewChicago Sun-Times
  17. ^ reviewTime Out
  18. ^ reviewChicago Reader
  19. ^ "Big Rental Films of 1969", Variety, 7 January 1970 p 15
  20. ^

External links

This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 



Copyright © World Library Foundation. All rights reserved. eBooks from World Library are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.