差分

ナビゲーションに移動 検索に移動

エントリポイント

451 バイト除去, 2012年5月2日 (水) 09:17
'''viエントリーポイント'''(び)とは、(entry point)とは、[[BSDプログラム]]を発祥のを実行する際の開始地点のことである。[[テキストエディタサブルーチン]]である。という用語を用いる[[プログラミング言語では]]'''メインルーチン'''と呼ぶこともある。
名称は'''Vi'''sual Editorの「'''ビ'''」であり、[[ラインエディタスクリプト言語]]全盛の世の中に颯爽と登場したビジュアルで操作ができる画期的なテキストエディタであった。Visualと冠していてもなどでは[[Visual Studioソースコード]]と特に関係はない。の先頭をエントリーポイントとするものが多い。また、[[Python]]や[[Ruby]]、[[Perl]]などのように同一[[ソースコード]]でも呼ばれ方の違いにより、メインルーチンとして動いたり、ライブラリとして動いたりということを容易に切り替えれる[[プログラミング言語]]もある。
[[Linux]]界隈ではviを魔改造したvimが圧倒的な勢力をもっているが、[[BSD]]界隈ではnviが強い。== 記述例 ==
== 基本 =[[C Sharp|C#]] ===<source lang="csharp">namespace HelloWorld { class Hello { public static void Main(string[] args) { // something in my house } }}</source>
=== カーソルの移動 ===ビル・ジョイが開発に使っていた「Lear Siegler ADM3A」という[[コンピューターJava]]には十字キーが付いていなかったという理由で、基本的にカーソルの移動はコマンドモードにて「h」「j」「k」「l」キーで行うようになっている。なお近代的なvi実装ではカーソルキーも使えるのが一般的となっており、十字キーを使うことでインサートモードでもカーソル移動が行えたりする。==={| class<source lang="wikitablejava">! コマンドpublic class HelloWorld {! 概要 public static void main (String[] args) {|- // something in my house| h }| カーソルを←に1文字移動する。} |-| j| カーソルを↓に1文字移動する。|-| k| カーソルを↑に1文字移動する。|-| l| カーソルを→に1文字移動する。|}</source>
=== コマンドモードとインサートモード [[Python]] ===viを起動するとまずコマンドモードとなる。<source lang="python">if __name__ == "__main__": # something in my houseこの状態で特定のコマンドを入力することで編集や保存、終了、検索といったことができる。</source>
===[[Ruby]] = インサートモードへの移行 ====コマンドモードで以下のコマンドを入力するとインサートモードへ移行する。複数の種類があるがテキストの入力開始位置の違いなので超基本としては「i」だけを覚えておけば間違いない。インサートモード移行後は近代的なテキストエディタと同様にテキストを入力すればよい。{| class<source lang="wikitableruby">! コマンド! 概要|-| i| カーソル位置に挿入開始|-| a| カーソル位置の次に挿入開始|-| I| 行頭に挿入開始|-if $0 == __FILE__| A # something in my house| 行末に挿入開始end|}</source>
===[[Perl]] = インサートモードの抜け方 ====インサートモードを終了しコマンドモードへ移行するには以下の特殊キーを入力する。{| class<source lang="wikitableperl">! 特殊キーif ($0 eq __FILE__) {! 概要 # something in my house|-}| [Esc]1; #←は「return 1;」の省略表記。| インサートモードを終了し、コマンドモードへ移行する。|}</source>
=== 保存と終了 [[PHP]] ======= 現状わかっている最強の方法 ====<source lang="php">if (!debug_backtrace()) {| class // これ最強}</source> ==== コマンドラインの場合 ====<source lang="wikitablephp"><?phpif (isset($argv[0]) && __FILE__ === realpath($argv[0])) {! コマンド // something in my house}</source>==== Apacheモジュールの場合 ====! 概要<source lang="php">|-<?php| q:if (basename(__FILE__) == basename($_SERVER['PHP_SELF'])) {| 終了 // something in my house|-}| q!:</source>| 強制終了=== [[F Sharp|-F#]] ===| w:<source lang="fsharp">| 保存[<EntryPoint>]|-let main args =| w!: // something in my house| 強制保存 // 0を返して正常終了|- 0| wq:</source>| 保存して終了|-=== [[Haskell]] ===| wq!:<source lang="haskell">| 強制保存して終了{- Haskell "hello, world" -} |main = putStrLn "hello, world" --putStrLn は文字列を出力する|}</source>
== 関連項目 ==
* [[BSDプログラミング言語]]* [[emacs]] 
== 参考文献 ==
<references/>
== 外部リンク ==
{{stub}}
匿名利用者

案内メニュー