Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

エディタ戦争のお話

エディタ戦争のお話 at digiporo #3
http://digiporo.connpass.com/event/24503/
2016/01/15

  • Login to see the comments

  • Be the first to like this

エディタ戦争のお話

  1. 1. エディタ戦争のお話エディタ戦争のお話 nasa9084nasa9084 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 1 / 40 2016年01月15日 20:07
  2. 2. 自己紹介自己紹介 名前 北村壮大 : Masahiro Kitamura HN : nasa9084 所属 北海道大学 工学部 情報エレクトロニクス学科 コンピュータサイエンスコース 情報認識学研究室 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 2 / 40 2016年01月15日 20:07
  3. 3. えでぃたえでぃた エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 3 / 40 2016年01月15日 20:07
  4. 4. エディタとはエディタとは テキストエディタ(英語:text editor)とはコンピュータで文字情報(テキスト)のみのファイル、 すなわちテキストファイルを作成、編集、保存するためのソフトウェア(プログラム)である。 一般に、文字情報の入力、削除、コピー、貼り付け、検索、置換、整形などの機能を備えている。 Microsoft Windowsのメモ帳や、Mac OS Xのテキストエディット、UNIXのvi、Emacsなど、 多くのOSやデスクトップ環境に最初から装備されている。 - Wikibedia より - エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 4 / 40 2016年01月15日 20:07
  5. 5. エディタの種類エディタの種類 スクリーンエディタ emacs, vi, Sublime Text, Atom, … ラインエディタ ed, ELDIN ストリームエディタ sed, awk, perl, python, … エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 5 / 40 2016年01月15日 20:07
  6. 6. IDE (統合開発環境)IDE (統合開発環境) 統合開発環境(とうごうかいはつかんきょう)、IDE (Integrated Development Environment) は、 ソフトウェアの開発環境。従来、コンパイラ、テキストエディタ、デバッガなどがばらばらで 利用していたものをひとつの対話型操作環境(多くはGUI)から利用できるようにしたもの。 最近のIDEには、GUIアプリケーション開発のための迅速なプロトタイピング (RAD) が可能なものが多い。 統合開発環境を使うことによって、巨大かつ複雑なソフトウェアでも、作成者に負担をかけることなく 開発することが可能になる。 - Wikipedia より - → MS Visual Studio, Xcode, Eclipse, NetBeans, IntelliJIDEA, … エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 6 / 40 2016年01月15日 20:07
  7. 7. 戦争?戦争? エディタ戦争(Editor War)とは、プログラミングを行う人々(特にハッカー文化に属する人々)の間で続いている、 どのテキストエディタが一番よいかというテーマの論争である。その中でも二大陣営といえるのは、vi愛好派とEmacs愛好派である ハッカー文化においては、愛好するソフトウェアを宗教的狂信とも言える尊敬を持って扱う伝統があり、 そのようなソフトウェアの中でもテキストエディタはもっとも一般的である。 自らの選択したエディタが最善であると信じるグループ間で数々の論争(フレーム)が発生してきた。 - Wikipedia より - →In short:: プログラマ界でのきのこたけのこ戦争 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 7 / 40 2016年01月15日 20:07
  8. 8. 今日のお話今日のお話 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 8 / 40 2016年01月15日 20:07
  9. 9. エディタをさらっと紹介エディタをさらっと紹介 登場するエディタ emacs vi/vim Sublime Text Atom Brackets nano 今回は本当にさらっと エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 9 / 40 2016年01月15日 20:07
  10. 10. emacsemacs エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 10 / 40 2016年01月15日 20:07
  11. 11. どんなエディタ?どんなエディタ? 主としてUNIX環境・CLI環境で使われる GUI環境もある OSSで、多種の実装がある(emacsen) GNU Emacs NTEmacs エディタ戦争の二大陣営の一つ バッファという概念でファイルを操作 emacsがあればPC上で行うことは大体できる ブラウザも標準搭載 emacs lispで拡張・設定 テーマ機能 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 11 / 40 2016年01月15日 20:07
  12. 12. バッファバッファ emacs上でのファイルのコピー 他のエディタでいうところのウィンドウやタブ ファイルだけではなくいろいろなバッファがある ディレクトリ メッセージ いわゆるウィンドウは「フレーム」と呼ぶ 「ウィンドウ」はフレームの中でのバッファ表示領域 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 12 / 40 2016年01月15日 20:07
  13. 13. キーボードから手を離さず作業できるキーボードから手を離さず作業できる 多彩なキーバインド いわゆるキーボード・ショートカット emacsでのすべての動作を個別に割り当てることができる 意味ベースのキーバインド キーボードの配列に依存しない 例 Ctrl-f : 一文字右へ(Front) Ctrl-n : 一行下へ(Next-line) エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 13 / 40 2016年01月15日 20:07
  14. 14. emacs lispによる設定emacs lispによる設定 独自プログラミング言語emacs lispで設定を記述 →エディタとしての基本的な機能も設定ファイルで変更できる ~/.emacs.d/init.elに設定を書く エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 14 / 40 2016年01月15日 20:07
  15. 15. 設定の例設定の例 改行の動作 カーソル位置によって改行の動作を変更 キーバインドの設定 キーバインドはすべて変更可能 →キーバインドを変更可能 プレフィクスキーを使用することで無数のキーバインドが設定可能 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 15 / 40 2016年01月15日 20:07
  16. 16. emacs lispによる拡張emacs lispによる拡張 emacs lispを使うことでエディタの機能を拡張できる パッケージシステムも搭載 →他の人が作った拡張を利用可能 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 16 / 40 2016年01月15日 20:07
  17. 17. 拡張の例拡張の例 補完機能 company.el 文法チェック �ycheck.el emmet emmet.el 命名辞書 codic.el 定型文入力補助 yasnippet.el メールクライアント mew.el gitクライアント magit.el twitter twittering-mode.el エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 17 / 40 2016年01月15日 20:07
  18. 18. vi/vimvi/vim エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 18 / 40 2016年01月15日 20:07
  19. 19. どんなエディタ?どんなエディタ? 主としてUNIX環境・CLI環境で使われる GUI環境もある : gvim 最近だと"vi"コマンドでvimが起動することが多い エディタ戦争二大陣営の一つ UNIXの設計思想 do one thing, and do it well モードという概念でファイルを操作 軽量・高速に動作 大体のUNIX環境で標準搭載 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 19 / 40 2016年01月15日 20:07
  20. 20. モードモード vi/vimではモードを行ったり来たりしながらファイルを編集する コマンドモード コマンド入力をするモード カーソル移動 hjklで移動 コピー ペースト 保存 編集モード ファイルを編集するモード 普通に文字が打てる エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 20 / 40 2016年01月15日 20:07
  21. 21. .vimrcによる設定.vimrcによる設定 シェルの設定ファイル同様、~/.vimrcに設定を書くことでカスタマイズ可能 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 21 / 40 2016年01月15日 20:07
  22. 22. vim scriptによる拡張vim scriptによる拡張 独自スクリプト言語vim scriptを使うことで拡張が可能 プラグイン管理システムも存在(NeoBundle) emacsとは違い自分でインストール 安定感はないとかあるとか エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 22 / 40 2016年01月15日 20:07
  23. 23. 拡張の例拡張の例 補完機能 neocomplete.vim 文法チェック syntastic emmet emmet-vim 定型文入力補助 Neosnippet.vim git補助 fugitive.vim twitter TwitVim エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 23 / 40 2016年01月15日 20:07
  24. 24. Sublime TextSublime Text エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 24 / 40 2016年01月15日 20:07
  25. 25. どんなエディタ?どんなエディタ? web系で最近流行のエディタ 綺麗な見た目が特長 タブ型のGUI Pythonで書かれている 拡張もPythonベース シェアウェア(体験版が無制限で使用可能) $59 ≒ ¥6958 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 25 / 40 2016年01月15日 20:07
  26. 26. JSONによる設定JSONによる設定 設定はJSONで書く 多言語でも使われるので慣れてればすぐ書ける エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 26 / 40 2016年01月15日 20:07
  27. 27. Pythonによる拡張Pythonによる拡張 プラグインシステムを導入すると拡張できる(Package Control) エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 27 / 40 2016年01月15日 20:07
  28. 28. 拡張の例拡張の例 補完強化 All Autocomplete 文法チェック SublimeLinter 行末空白ハイライト TrailingSpaces ベンダープレフィクス調整 Autopre�xer emmet Emmet git補助 Git twitter Sublime Tweet エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 28 / 40 2016年01月15日 20:07
  29. 29. AtomAtom GitHub発の新エディタ 綺麗なGUI Chromiumベース electron OSS 動作はまだまだだが成長が早い 大容量ファイルは苦手 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 29 / 40 2016年01月15日 20:07
  30. 30. ユーザインターフェースのカスタマイズユーザインターフェースのカスタマイズ ChromiumベースなのでJS、CSSでカスタマイズ可能 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 30 / 40 2016年01月15日 20:07
  31. 31. パッケージシステムパッケージシステム パッケージシステムを標準搭載 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 31 / 40 2016年01月15日 20:07
  32. 32. 拡張の例拡張の例 文法チェック Linter Grunt grunt-runner Gulp gulp-control twitter elastic-twitter-stream エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 32 / 40 2016年01月15日 20:07
  33. 33. BracketsBrackets Adobe謹製のエディタ フラットなGUI デフォルトで日本語対応 フリーソフトウェア エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 33 / 40 2016年01月15日 20:07
  34. 34. ホバービューホバービュー 画像ファイル文字列の上にカーソルを乗せると画像がポップアップ エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 34 / 40 2016年01月15日 20:07
  35. 35. ライブプレビューライブプレビュー HTML/CSSをブラウザでリアルタイムに結果表示 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 35 / 40 2016年01月15日 20:07
  36. 36. クイックエディットクイックエディット HTML上でタグに適用されているスタイルをその場で編集 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 36 / 40 2016年01月15日 20:07
  37. 37. 拡張機能マネージャー拡張機能マネージャー デフォルトで搭載 エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 37 / 40 2016年01月15日 20:07
  38. 38. 拡張の例拡張の例 文法チェック Interactive Linter emmet Emmet 定型文入力補助 Brackets Snippets git補助 Git エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 38 / 40 2016年01月15日 20:07
  39. 39. nanonano CLIエディタ ほぼメモ帳並みの機能プラスアルファ 正規表現検索 シンタックスハイライト 画面下部に操作方法 最近のLinuxだと結構入っている エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 39 / 40 2016年01月15日 20:07
  40. 40. THANK YOU!THANK YOU! エディタ戦争のお話 file:///mnt/A2C043EDC043C66F/Users/owner/Dropbox/digi-poro/#3/... 40 / 40 2016年01月15日 20:07

×