User:G~metawiki

From Meta, a Wikimedia project coordination wiki

ja:利用者:G

I'm Japanese wikipedian and sysop of Japanese wikipedia. Now, I am translateing some of Wikimedia and Mediawiki to Japanese. I would like to begin making the document of Mediawiki in Japanese. When you give me a comment, please write in Japanese or in simple English.


The following texts are written in Japanese.

ウィキメディアメディアウィキに関することの日本語への翻訳を行っています。不慣れなので誤訳などは適宜、修正してください。 また、井戸端BBSで議論したように、メディアウィキに関する開発情報も随時増強していこうと考えています。

2004年7月7日現在はMediaWikiユーザーズガイドの増強中


現在のコード構成(まだメモ程度)

  • wikipedia/phase3 配下
    • wiki.phtml ... 一番最初に実行されるファイル。Version1.25(2004/2/28)よりindex.phpを呼び出すだけになり、互換性のために残されている扱いに変更。
    • index.php ... wiki.phtmlの代わりに設けられたファイルで、実質上一番最初に実行される。
  • wikipedia/phase3/includes 配下
    • Setup.php ... index.phpから呼び出される初期設定に関するコード(途中にMemCachedClientforWikiクラスの定義やFakeMemCachedClient関数の定義が入っている為、非常にコードが読み辛い)

メディアウィキで使われているクラス(まだごく一部)

  • wikipedia/phase3/includes 配下
    • Article (wikipedia/phase3/includes/Article.php)
    • OutputPage (OutputPage.php)
      • メンバ変数
      • メンバ関数
        • OutputPage ... コンストラクタ
        • addHeader ... メンバ変数 mHeaders に値を追加
        • addCookie ...
        • redirect
        • addMeta
        • addKeyword
        • addLink
        • checkLastModified
        • setRobotpolicy
        • setHTMLtitle
        • setPageTitle
        • getPageTitle
        • setSubtitle
        • getSubtitle
        • isArticle
        • setPrintable
        • isPrintable
        • setSyndicated
        • isSyndicated
        • setOnloadHandler
        • getOnloadHandler
        • disable
        • setArticleRelated
        • setArticleFlag
        • isArticleRelated
        • getLanguageLinks
        • suppressQuickbar
        • isQuickbarSuppressed
        • addHTML
        • addHeadtext
        • debug
        • setParserOptions
        • addWikiText
        • setSquidMaxage
        • enableClientCache
        • sendCacheControl
        • output
        • out
        • setEncodings
        • reportTime
        • errorpage
        • sysopRequired
        • developerRequired
        • loginToUse
        • databaseError
        • readOnlyPage
        • fatalError
        • unexpectedValueError
        • fileCopyError
        • fileRenameError
        • fileDeleteError
        • fileNotFoundError
        • returnToMain
        • addMetaTags
        • headElement(/*private*/)
    • Title (wikipedia/phase3/includes/Title.php)
      • メンバ変数
      • メンバ関数
        • Title ... コンストラクタ
        • nameOf
        • legalChars
        • indexTitle
        • makeName
        • getInterwikiLink
        • touchArray
        • getText
        • getPartialURL
        • getDBkey
        • getNamespace
        • setNamespace
        • getInterwiki
        • getFragment
        • getDefaultNamespace
        • getIndexTitle
        • getPrefixedDBkey
        • getPrefixedText
        • getPrefixedURL
        • getFullURL
        • getURL
        • getLocalURL
        • escapeLocalURL
        • escapeFullURL
        • getInternalURL
        • getEditURL
        • getEscapedText
        • isExternal
        • isProtected
        • isLog
        • userIsWatching
        • userCanEdit
        • getRestrictions
        • isDeleted
        • getArticleID
        • resetArticleID
        • invalidateCache
        • prefix
        • secureAndSplit
        • getTalkPage
        • getSubjectPage
        • getLinksTo
        • getBrokenLinksTo
        • getSquidURLs
        • moveNoAuth
        • moveTo
        • moveOverExistingRedirect
        • moveToNewTitle
        • isValidMoveTarget
        • createRedirect
      • 以下の関数はメンバ関数だが、目的は初期化関数であり、返値はTitleクラスの実体。(メンバ関数が実体を作る為に使われるのは、本末転倒(メンバ関数は実体に対して働きかけを行うものであり、実体を作って、これらの関数で実体に働きかけを行い変数を設定していくべきではないか?)で気持ちが悪いと私は思う。)
        • newFromDBkey
        • newFromText
        • newFromURL
        • newFromID
        • makeTitle
        • newMainPage ... wfMsg( "mainpage" )を引数としてnewFromTextを呼び出す
    • WebRequest (wikipedia/phase3/includes/WebRequest.php)
      • メンバ変数
      • メンバ関数
        • WebRequest ... コンストラクタ(checkMagicQuotes,checkRegisterGlobalsを呼び出す)
        • fix_magic_quotes
        • checkMagicQuotes
        • checkRegisterGlobals
        • getGPCVal
        • getGPCText
        • getVal ... $_REQUESTを第一変数として、メンバ関数getGPCValに投げる。
        • getInt
        • getBool
        • getCheck
        • getText
        • getValues
        • wasPosted
        • checkSessionCookie
        • getRequestURL
        • getFullRequestURL
        • appendQuery
        • escapeAppendQuery

グローバル変数

  • Global variables参照
  • index.phpで定義するもの
    • $wgTitle ... TitleクラスのnewFromTextの返値
    • $wgArticle ... Articleクラスの実体
  • LocalSettings.phpで定義するもの
  • includes/setup.phpで定義するもの
    • $wgRequest ... WebRequestクラスの実体
    • $wgMessageCache ... MessageCacheクラスの実体;
    • $wgLangClass ... "Language" . ucfirst( $wgLanguageCode ) ... 言語固有情報の名前;
    • $wgLang ... クラス名$wgLangClass(言語固有情報のクラス)の実体;
    • $wgOut ... OutputPageクラスの実体
    • $wgBlockCache ... BlockCacheクラスの実体;
    • $wgUser ... User::loadFromSessionの返値
    • $wgDeferredUpdateList ... 空配列
    • $wgLinkCache ... LinkCacheクラスの実体
    • $wgMagicWords ... 空配列
    • $wgMwRedir ... MagicWord::get( MAG_REDIRECT )の返値の参照;
    • $wgParserCache ...ParserCacheの実体;
    • $wgParser ... Parserクラスの実体;


関数

プログラムを読む上で、必要な情報

  • 以下の変数は、PHP側で自動的に値が代入される定義済の変数である。
    • $_SERVER
    • $_ENV
    • $_COOKIE
    • $_GET
    • $_POST
    • $_FILES
    • $_REQUEST
    • $_SESSION