MediaWiki API result

This is the HTML representation of the JSON format. HTML is good for debugging, but is unsuitable for application use.

Specify the format parameter to change the output format. To see the non-HTML representation of the JSON format, set format=json.

See the complete documentation, or the API help for more information.

{
    "batchcomplete": "",
    "continue": {
        "gapcontinue": "Reverse_engineering_DOS_binaries",
        "continue": "gapcontinue||"
    },
    "warnings": {
        "main": {
            "*": "Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce> for notice of API deprecations and breaking changes."
        },
        "revisions": {
            "*": "Because \"rvslots\" was not specified, a legacy format has been used for the output. This format is deprecated, and in the future the new format will always be used."
        }
    },
    "query": {
        "pages": {
            "108": {
                "pageid": 108,
                "ns": 0,
                "title": "Research project notes",
                "revisions": [
                    {
                        "contentformat": "text/x-wiki",
                        "contentmodel": "wikitext",
                        "*": "== refactoring ==\n*[http://en.wikipedia.org/wiki/Code_refactoring Code refactoring on wikipedia]\n*[http://www.refactoring.com/ Fowler's website (\"refactoring home\")]\n\n== python C parsing ==\n*[http://code.google.com/p/pycparser/ pycparser]\n*[http://eli.thegreenplace.net/2011/07/03/parsing-c-in-python-with-clang/ Python bindings to Clang]\n\n== interfacing VIM ==\n*[http://www.builderau.com.au/program/python/soa/Extending-Vim-with-Python/0,2000064084,339283181,00.htm Extending Vim with Python]\n*[http://vimdoc.sourceforge.net/htmldoc/if_pyth.html Documentation for VIM's Python module]\n*[http://brainacle.com/how-to-write-vim-plugins-with-python.html Examples of argument passing]\n*[https://www.ibm.com/developerworks/aix/library/au-vimplugin/ Some information about syntax highlighting and Perl interface]\n*[http://vimdoc.sourceforge.net/htmldoc/usr_41.html Vimscrip documentation]\n\n== Sources ==\n* Fowler, Martin - Refaktoring - Zlep\u0161en\u00ed existuj\u00edc\u00edho k\u00f3du, Grada 2003\n* Melichar, Bo\u0159ivoj - Jazyky a p\u0159eklady\n* Melichar, Bo\u0159ivoj - Konstrukce p\u0159eklada\u010d\u016f"
                    }
                ]
            },
            "29": {
                "pageid": 29,
                "ns": 0,
                "title": "Resizing Partitions",
                "revisions": [
                    {
                        "contentformat": "text/x-wiki",
                        "contentmodel": "wikitext",
                        "*": "This is a HOWTO on resizing diskslices/partitons with FreeBSD.\n\n'''NOTE:''' this has the potential to break things very badly, be sure you have backups of anything you do this on. Also make sure that you specify the right disk, most of these tools will assume the primary hard drive of your machine, and you might not want to be messing with that (unless you know what you're doing).\n\n== The Situation ==\nI have a 245 meg disk image I want to put on my 1G CompactFlash card. I don't want to waste 75% of the space so I need to resize the slices and the filesystem.\n\nOnce the image is dded to the flash card the setup is as follows:\n\n* /dev/ad4 - entire device\n* /dev/ad4a - the first slice (unused)\n* /dev/ad4c - the 'entire' /dev/ad4 disk\n* /dev/ad4s1 - the first slice of ad4c (same as ad4cs1)\n* /dev/ad4s1a - the first slice of ad4s1 (the actual freebsd filesystem)\n* /dev/ad4s1c - the 'entire' /dev/ad4s1 slice\n\nthe 'c' slices are always, by convention, the entire slice. So, you can see we only have one real 'slice' on the disk. Now we need to start changing the slice sizes...\n\n== Changing the slice sizes with disklabel(8) and fdisk ==\n\n=== Disklabeling the root of the drive ===\n(do we *really* need to disklabel this?)\nNotice that to make /dev/ad4s1 bigger, we'll need to resize /dev/ad4 first, to make it the proper size, we use disklabel for this:\n\n  $disklabel -e /dev/ad4\n\n  # /dev/ad4:\n  8 partitions:\n  #        size   offset    fstype   [fsize bsize bps/cpg]\n    a:   501744       16    unused        0     0\n    c:   501760        0    unused        0     0         # \"raw\" part, don't edit\n\nThe units of size here are 'sectors' which, by default, are 512 bytes, so if we do the math ((501760*512)/1024)/1024 we find the disk is 245 megs.\n\nNow, we need to define a NEW size for this stuff, and since HD manufactures want to rip you off, they assume that a kilobyte has 1000 bytes (not 1024) and a megabyte has 1,000,000 bytes and so on. This makes storage smaller than it seems (256 meg card is really ~245) and it makes some fun math for us. My CF card is a gig so... (1000*1000*1000)/512 = 1,953,125 sectors or ~953 megs. So, we edit the disklabel to reflect this:\n\n  # /dev/ad4:\n  8 partitions:\n  #        size   offset    fstype   [fsize bsize bps/cpg]\n    a:  1953109       16    unused        0     0\n    c:  1953125        0    unused        0     0         # \"raw\" part, don't edit\n\nNote the 16 sector offset has been preserved on the 'a' slice.\n\n=== Resizing the drive with fdisk ===\n\nNow, we need to actually modify the partition table to reflect this change:\n\n  fdisk -u /dev/ad4\n\nTell it you want to change the first partition, accept the default until it asks you about the size. Then input the size of the 'a' slice minus 32 (because of the \"start\" value fdisk reports) 1953077\n\nKeep accepting the defaults until it asks you if you want to write the new partition table, say yes here.\n\n=== Disklabling the first slice ===\n\nNow, we need to disklabel the first slice too:\n\n  $disklabel -e /dev/ad4s1\n\n  # /dev/ad4s1:\n  8 partitions:\n  #        size   offset    fstype   [fsize bsize bps/cpg]\n    a:   501712       16    4.2BSD     2048 16384 31360\n    c:   501728        0    unused        0     0         # \"raw\" part, don't edit\n\nSo, there's the 'real' filesystem that we're ultimately trying to resize. So we just edit the disklabel again, using the sector size of the 'a' slice we just resized above (1953077)\n\n  # /dev/ad4s1:\n  8 partitions:\n  #        size   offset    fstype   [fsize bsize bps/cpg]\n    a:  1953061       16    4.2BSD     2048 16384 31360\n    c:  1953077        0    unused        0     0         # \"raw\" part, don't edit\n\n\n== Using growfs(8) to increase the filesystem size ==\n\nOkay, now we're ready to do the final step:\n\n  growfs /dev/ad4s1a\n\nYo'll be asked if your data was backed up, type the appropiate response (the 'Yes' is case-sensitive). If you type yes it will do the resize and it all should be good... If it's not, then it's time to dig out that backup...\n\n== Recommended Reading ==\n\n  man disklabel\n  man fdisk\n  man growfs"
                    }
                ]
            }
        }
    }
}