Wikisource bclwikisource https://bcl.wikisource.org/wiki/Panginot_na_Pahina MediaWiki 1.44.0-wmf.3 first-letter Medio Espesyal Olay Paragamit Olay kan paragamit Wikisource Olay sa Wikisource Ladawan Olay sa ladawan MediaWiki Olay sa MediaWiki Plantilya Olay sa plantilya Tabang Olay sa tabang Kategorya Olay sa kategorya Kagsurat Olay sa kagsurat Pahina Olay sa pahina Indeks Olay sa indeks TimedText TimedText talk Module Module talk Pahina:Mga Rawitdawit Ni Jose Rizal.pdf/93 250 1799 8930 8042 2024-11-17T02:24:32Z Filipinayzd 18 8930 proofread-page text/x-wiki <noinclude><pagequality level="4" user="Aking padaba" />[[Category: Bcl Bikol Sentral (Central Bikol)]] [[Category: Mga Rawitdawit Ni Jose Rizal]]</noinclude><center>—70—</center> <center>'''"BURAK SA TAHAW NIN MGA BURAK..."'''</center> <center>(Kabtang)</center> {{block center| Búrak sa kaburakan,<br> Mayomhok na búkol,<br> Na idinodúyan<br> Kaiyan na simuy<br> Nin sa pagpalanyag<br> Na horohapíyap.<br> Símuy na langitnon,<br> Símuy nin pagmahal;<br> Ikang nag-aálay,<br> Saén man lomingoy,<br> Nin kamongayahan;<br> Ikang naghohoyom,<br> Dai nahagayhay,<br> Sa gabós na bágay,<br> Simong dinodúsay,<br> Iyán na alimyo,<br> Na máyong kapantay,<br><br> Gabós kabinían;<br> Ika na sa dagá,<br> Sakalé, nagdigdi,<br> Sa pagtaong ranga<br> Sa mamondong labi;<br> Sa kamongayahan<br> Kan pusó na sadya;<br> Sa saímong daliwawa,<br> An ólay igwa ka,<br> Sarong mabini na kalag,<br> Na nabibilanggong háyag,<br> Sa táhaw kan síod<br> Nin gáweng marigsok?<br> Sabi sisabwag mo,<br> Iyan karahayan,<br> }} {{rule}} <small>*Kabtang: iyo an pagapod nyamó kan gotos na ining kasuratan. Nadáyag nyamó sa síring na kamugtakan, kabilang sa mga sangkap na natitipon halé sa nawará na Collección Rizalina. Saró lámang na pagsanay, sarong borrador; alágad an pagkabarágay kan kagsúrat nagbubuyagyag.</small><noinclude></noinclude> tu2d6ep449ytm2fk7y9ikn28wqx969n 8931 8930 2024-11-17T02:25:19Z Filipinayzd 18 8931 proofread-page text/x-wiki <noinclude><pagequality level="4" user="Aking padaba" />[[Category: Bcl Bikol Sentral (Central Bikol)]] [[Category: Mga Rawitdawit Ni Jose Rizal]]</noinclude><center>—70—</center> <center>'''"BURAK SA TAHAW NIN MGA BURAK..."'''</center> <center>(Kabtang)</center> {{block center| Búrak sa kaburakan,<br> Mayomhok na búkol,<br> Na idinodúyan<br> Kaiyan na simuy<br> Nin sa pagpalanyag<br> Na horohapíyap.<br> Símuy na langitnon,<br> Símuy nin pagmahal;<br> Ikang nag-aálay,<br> Saén man lomingoy,<br> Nin kamongayahan;<br> Ikang naghohoyom,<br> Dai nahagayhay,<br> Sa gabós na bágay,<br> Simong dinodúsay,<br> Iyán na alimyo,<br> Na máyong kapantay,<br><br> Gabós kabinían;<br> Ika na sa dagá,<br> Sakalé, nagdigdi,<br> Sa pagtaong ranga<br> Sa mamondong labi;<br> Sa kamongayahan<br> Kan pusó na sadya;<br> Sa saímong daliwawa,<br> An ólay igwa ka,<br> Sarong mabini na kalag,<br> Na nabibilanggong háyag,<br> Sa táhaw kan síod<br> Nin gáweng marigsok?<br> Sabi sisabwag mo,<br> Iyan karahayan,<br> }} ―――――<br> <small>*Kabtang: iyo an pagapod nyamó kan gotos na ining kasuratan. Nadáyag nyamó sa síring na kamugtakan, kabilang sa mga sangkap na natitipon halé sa nawará na Collección Rizalina. Saró lámang na pagsanay, sarong borrador; alágad an pagkabarágay kan kagsúrat nagbubuyagyag.</small><noinclude></noinclude> mzl5ydxziz3ikl5cc70ka4vbfxpx2fh Plantilya:Ppoem 10 1966 8927 2024-11-17T02:21:13Z Filipinayzd 18 Pinagmukna an pahina kaining "<includeonly><templatestyles src="Ppoem/styles.css" /><!-- -->{{#invoke:Ppoem|ppoem}}</includeonly><noinclude> {{documentation}} </noinclude>" 8927 wikitext text/x-wiki <includeonly><templatestyles src="Ppoem/styles.css" /><!-- -->{{#invoke:Ppoem|ppoem}}</includeonly><noinclude> {{documentation}} </noinclude> 024ugmv0hsr0q3f3a271l1upgocrhk0 Plantilya:Ppoem/styles.css 10 1967 8928 2024-11-17T02:22:17Z Filipinayzd 18 Pinagmukna an pahina kaining ".ws-poem { display:table; /* Centre in page. */ margin:0 auto; /* If someone sets an explicit width, don't let it overflow the page. */ max-width:100%; } .ws-poem-fl, .ws-poem-fn { margin-left:0; vertical-align:top; } .ws-poem-fr{ margin-left:auto; margin-right:0; vertical-align:top; } .ws-poem-stanza { /* Avoid breaking stanzas over pages if we can */ page-break-inside:avoid; break-inside:avoid; } .ws-poem-stanza.ws-poem-left { display:table;..." 8928 sanitized-css text/css .ws-poem { display:table; /* Centre in page. */ margin:0 auto; /* If someone sets an explicit width, don't let it overflow the page. */ max-width:100%; } .ws-poem-fl, .ws-poem-fn { margin-left:0; vertical-align:top; } .ws-poem-fr{ margin-left:auto; margin-right:0; vertical-align:top; } .ws-poem-stanza { /* Avoid breaking stanzas over pages if we can */ page-break-inside:avoid; break-inside:avoid; } .ws-poem-stanza.ws-poem-left { display:table; margin-right:auto; } .ws-poem-stanza.ws-poem-right { display:table; margin-left:auto; } .ws-poem-stanza.ws-poem-center { display:table; margin:0 auto; } .ws-poem-line { display:block; position:relative; } .ws-poem-hi .ws-poem-line { text-indent:-4em; margin-left:4em; } /* Take line breaks out of the flow—they copy-paste but don't do anything. */ .ws-poem-break { position:absolute; } .ws-poem-line.ws-poem-right { text-align:right; } .ws-poem-hi .ws-poem-line.ws-poem-right { text-indent:0; } .ws-poem-line.ws-poem-center { text-align:center; } .ws-poem-hi .ws-poem-line.ws-poem-center { text-indent:0; margin-left:0; } .ws-poem-linenum { float:right; text-indent:0; user-select:none; } /* the default padding for the right gutter (to fit the line numbers) */ .ws-poem-right-gutter .ws-poem-line { padding-right:2em; } .ws-poem-versenum { float:left; text-indent:0; user-select:none; } /* the default padding for the left gutter (to fit the verse numbers) */ .ws-poem-left-gutter .ws-poem-line { padding-left:2em; } /* inter-stanza spaces */ .ws-poem-stanza:not(:last-child) { margin-bottom:1em; } /* indent padding spans */ .ws-poem-indent { display:inline-block; text-indent:0; /* width set inline on each one */ /* allow the user to set a bigger font-size to adjust the size of a single ":" but don't let the indent inflate the overall line height */ line-height:0; overflow:hidden; } /* ============================================================================ * Adjustment of other templates within ppoems. * This is naughty, but at least it keeps the hacks in one place. */ .ws-poem .wst-fqm { position:absolute; } .ws-poem-hi .dropinitial { margin-left:-4em; } /* Force drop initials to "shunt" hanging-indent content rightwards. */ /* This has to be done on the MIDDLE span, because the font size of the inner dropinitial-initial span is independent to the indentation of the outer environment. */ .ws-poem-hi .dropinitial-mid { margin-right:4em; } .ws-poem .pagenum { /* Float out of the space between the span blocks, or it makes a gap without the pagenumbers gadget. */ float:left; } /* ============================================================================ * Pre-defined formatting classes * For use with the {class} syntax (line or stanza) */ .ws-poem-blackletter, .ws-poem-fractur { font-family:UnifrakturMaguntia, UnifrakturCook, Unifraktur, serif; font-size:113%; font-feature-settings:'cv01', 'cv02', 'cv03', 'cv04', 'cv05', 'cv06', 'cv07', 'cv08', 'cv09', 'cv10'; } .ws-poem-bl-ls { font-family:UnifrakturMaguntia, UnifrakturCook, Unifraktur, serif; font-size:113%; font-feature-settings:'cv11', 'cv01','cv02', 'cv03', 'cv04', 'cv05', 'cv06', 'cv07', 'cv08', 'cv09', 'cv10'; } .ws-poem-cursive, .ws-poem-handwriting { font-family:Petit Formal Script, cursive; } .ws-poem-italic, .ws-poem.italic { font-style:italic; } .ws-poem-bold, .ws-poem.bold { font-weight:bold; } .ws-poem-smallcaps, .ws-poem-sc, .ws-poem.smallcaps, .ws-poem.sc { font-variant:small-caps; } /* The text size classes, from xxs to xxxxl. */ .ws-poem-xxsmaller, .ws-poem-xxs { font-size:58%; } .ws-poem-x-smaller, .ws-poem-xs { font-size:69%; } .ws-poem-smaller, .ws-poem-sm { font-size:83%; } .ws-poem-fine { font-size:92%; } .ws-poem-larger, .ws-poem-lg { font-size:120%; } .ws-poem-x-larger, .ws-poem-xl { font-size:144%; } .ws-poem-xx-larger, .ws-poem-xxl { font-size:182%; } .ws-poem-xxx-larger, .ws-poem-xxxl { font-size:207%; } .ws-poem-xxxx-larger, .ws-poem-xxxxl { font-size:249%; } .ws-poem-center, .ws-poem-c { text-align:center; } /* Classes facilitating using ppoem for play scripts by abusing versenums for speech prefixes. The sizes are meant to cover the most common widths for prefixes, _not_ all possible sizes. If none of these fit you should look for other solutions instead. This is _not_ a "table style"-like unbounded set of size classes. Use the custom class + Index Styles facility instead. */ .ws-poem-speech-prefix-xsmaller .ws-poem-line, .ws-poem-speech-prefix-xs .ws-poem-line { margin-left:10em; } .ws-poem-speech-prefix-smaller .ws-poem-line { margin-left:3em; } .ws-poem-speech-prefix .ws-poem-line { margin-left:5em; } .ws-poem-speech-prefix-larger .ws-poem-line { margin-left:7em; } .ws-poem-speech-prefix-xlarger .ws-poem-line, .ws-poem-speech-prefix-xl .ws-poem-line { margin-left:10em; } 1zhcgkx940yr766dwa97avgjqnoccbu Module:Ppoem 828 1968 8929 2024-11-17T02:22:40Z Filipinayzd 18 Pinagmukna an pahina kaining "-- This is an module to implement "ppoem" (a.k.a. proper poem) -- The aim here is to provide a poem syntax that's simple, but semantically -- correct and able to handle things like export and line wrapping. require('strict') local p = {} --p stands for package local getArgs = require('Module:Arguments').getArgs -- return true if an item is in a given list local function check_in_list(x, list) for k, v in pairs(list) do if x == v then return true end..." 8929 Scribunto text/plain -- This is an module to implement "ppoem" (a.k.a. proper poem) -- The aim here is to provide a poem syntax that's simple, but semantically -- correct and able to handle things like export and line wrapping. require('strict') local p = {} --p stands for package local getArgs = require('Module:Arguments').getArgs -- return true if an item is in a given list local function check_in_list(x, list) for k, v in pairs(list) do if x == v then return true end end return false end -- Error if the args[name] is not in the given list of values local function check_arg_in_list(args, name, list, allowNil) if args[name] == nil then if allowNil then return else error("Argument '" .. name .. "' may not be empty") end end local inlist = check_in_list(args[name], list) if not inlist then error("Unknown argument value: '" .. name .. "=" .. args[name] .. "'. Expected one of: " .. table.concat(list, ", ")) end end --[=[ Decompose a single line into a data structure containing all relevant information ]=] function p.parse_line(line) -- do indents first local nbsps = 0 local ems = 0 line = line:gsub("^ +", function(spaces) nbsps = spaces:len() return "" end, 1) if nbsps == 0 then -- replace leading colons with &emsp; line = line:gsub("^(:+)%s*", function(colons) ems = colons:len() return "" end, 1) end -- for all lines, classes come next local classes = {} line = line:gsub("^{(.-)}%s*", function(classes_match) for class_name in string.gmatch(classes_match, "%S+") do table.insert(classes, "ws-poem-" .. class_name) end return "" end, 1) local alignment line = line:gsub("^>>(%s*)(.?)", function(whitespace, next_char) if whitespace == '' and next_char == '>' then -- this is a >>>, which is handled later, -- so return nil so nothing is replaced return nil end -- Otherwise, set alignment and replace the angle brackets with the -- char following them (in effect, delete the angle brackets). alignment = "r" return next_char end, 1) line = line:gsub("^<>%s*", function() alignment = "c" return "" end, 1) -- nothing left - this is a stanza break line if line == "" then local stanza = { type = 'stanza', align = alignment } if #classes > 0 then stanza['classes'] = classes end return stanza end -- at this point this must be a content line local line_num; line = line:gsub("%s*>>>%s*(.+)$", function(line_num_str) line_num = line_num_str; return "" end, 1) local verse_num; line = line:gsub("^(.-)%s*<<<%s*", function(verse_num_str) verse_num = verse_num_str; return "" end, 1) local line_data = { type = 'line', align = alignment, content = line, line_num = line_num, verse_num = verse_num, } if #classes > 0 then line_data['classes'] = classes end if nbsps > 0 then line_data['indent'] = { nbsp = nbsps } elseif ems > 0 then line_data['indent'] = { em = ems } end return line_data end local function construct_stanza(stanza) local classes = { 'ws-poem-stanza' } if stanza['classes'] then for k, v in pairs(stanza['classes']) do table.insert(classes, v) end end if stanza['align'] == 'r' then table.insert(classes, 'ws-poem-right') elseif stanza['align'] == 'c' then table.insert(classes, 'ws-poem-center') end local s = "<div class=\"" .. table.concat(classes, " ") .. "\">" return s end -- construct a fixed width span for use in indenting local function construct_fixed_width(ems) local emsp = "&emsp;" local s = mw.html.create("span") :addClass("ws-poem-indent") :css({ width = ems .. "em", }) :wikitext(emsp:rep(ems)) return tostring(s) end --[=[ Construct a "proper poem" ]=] function p._ppoem(args) check_arg_in_list(args, 'start', {"open", "stanza", "follow", "same-line"}, true) check_arg_in_list(args, 'end', {"close", "stanza", "follow", "same-line"}, true) local open = args['start'] == "open" or not args['start'] local close = args['end'] == "close" or not args['end'] local isPageNs = mw.title.getCurrentTitle():inNamespace(104) -- in Page namespace, we always open a fresh environment and close it at the end if isPageNs then open = true close = true end -- Try not to blow up if called without an argument -- split()/trim() handle empty strings fine, but throw when fed nil local input = "" if args[1] ~= nil then input = args[1] end local lines = mw.text.split(mw.text.trim(input), "\r?\n", false) local s = "" local pending_stanza -- start a new stanza -- this can be overridden later by an explict stanza line like '{stanza class}' if open or args['start'] == "stanza" then pending_stanza = "<div class=\"ws-poem-stanza\">" end local have_line_num = false local have_verse_num = false local num_stanzas = 0 local num_lines = 0 -- we inherited an open stanza local continued_stanza = not (args['start'] == "stanza" or open) -- hide the BR in a span so we can manipulate it with CSS cross-browser local linebreak = '<span class="ws-poem-break"><br/></span>' for k,v in pairs(lines) do local line_data = p.parse_line(v) if line_data['type'] == 'stanza' then -- mw.logObject(line_data) pending_stanza = tostring(construct_stanza(line_data)) else -- it's a line -- we have to put something on the line to make sure it has height if mw.text.trim( line_data.content ) == '' then line_data.content = '&nbsp;' end -- first start any pending stanza if pending_stanza then -- mw.log("pending: " .. pending_stanza, num_stanzas, num_lines) if num_stanzas == 0 and num_lines == 0 and continued_stanza and not isPageNs then -- mw.log("Skip stanza") -- the stanza config in this case is just to set up the stanza in page NS -- otherwise we continue the one from the last template else -- either we have our own stanzas to close, or we inherited one if num_stanzas > 0 or continued_stanza then -- add an extra BR for copy-paste s = s .. linebreak .. '</div>' end -- and now open the pending stanza s = s .. pending_stanza end pending_stanza = nil num_stanzas = num_stanzas + 1 end if line_data['line_num'] then have_line_num = true local ln = mw.html.create("span") :addClass("ws-poem-linenum") :wikitext(line_data['line_num']) s = s .. tostring(ln) end if line_data['verse_num'] then have_verse_num = true local vn = mw.html.create("span") :addClass("ws-poem-versenum") :wikitext(line_data['verse_num'] .. " ") s = s .. tostring(vn) end -- open the line tag local line_classes = line_data['classes'] or {} table.insert(line_classes, 'ws-poem-line') if line_data['align'] == 'r' then table.insert(line_classes, 'ws-poem-right') elseif line_data['align'] == 'c' then table.insert(line_classes, 'ws-poem-center') end local line = "" if not open and k == 1 and args['start'] == 'same-line' then -- line is already opened on previous page else line = line .. "<span class=\"" .. table.concat(line_classes, " ") .. "\">" end -- add indentation (REVIEW: do this with CSS?) if line_data['indent'] then if line_data['indent']['em'] then line = line .. construct_fixed_width(line_data['indent']['em']) elseif line_data['indent']['nbsp'] then local chr = "&nbsp;" line = line .. chr:rep(line_data['indent']['nbsp']) end end -- ...add the line content line = line .. line_data['content'] if not close and k == #lines and args['end'] == 'same-line' then -- don't close the line, it'll continue on the next page else line = line .. linebreak .. '</span>' end s = s .. line num_lines = num_lines + 1 end end if args['end'] == "stanza" or close then s = s .. linebreak .. '</div>' end if open then local div = "<div class=\"ws-poem" if args['class'] ~= nil then div = div .. " " .. args['class'] end -- hanging indentation is the default if args['no_hi'] == nil then div = div .. " ws-poem-hi" end -- add gutters if we see a line/verse number or the user tells us they want them if have_verse_num or args["gutter"] == "left" or args["gutter"] == "both" then div = div .. " ws-poem-left-gutter" end if have_line_num or args["gutter"] == "right" or args["gutter"] == "both" then div = div .. " ws-poem-right-gutter" end div = div .. "\"" -- add an HTML and XML lang attributes if needed if args['lang'] ~= nil then div = div .. " lang=\"" .. args['lang'] .. "\"" div = div .. " xml:lang=\"" .. args['lang'] .. "\"" end -- set up the CSS style if needed local style = "" if args['align'] ~= nil and args['align'] ~= "" then style = style .. 'text-align:' .. args['align'] .. ';' end if args['style'] ~= nil and args['style'] ~= "" then style = style .. args['style'] end if style ~= "" then div = div .. " style=\"" .. style .. "\"" end div = div .. ">" s = div .. s end if close then s = s .. "</div>" end return s end function p.ppoem(frame) local args = getArgs(frame) return p._ppoem(args) end return p da756bn75ykq5yk867kkdud6gcarfne