Rubyの5つの活用例
Rubyで何ができるのだろうと思ったことはないだろうか。まあ、可能性は無限大でしょうが、多少なりとも知られている事例についてお話しできれば幸いです。
数年前、私は友人たち(全員Java開発者)と焼き肉を食べていた。どうしてそんな話になったのかわからないが、私たちは自分のコーディング環境について話し始めた。私は、すべての開発をVimとターミナルでやっていると話した。それがきっかけで、まだパンチカードを使っているのかというようなジョークや面白い質問が飛び出したんだ🙂。
それ以来、いくつかの "本物の "IDEを試したが、いつもここに戻ってきた。 ヴィム とても速いし、必要なツールはすべて揃っているし、単純にテキストモードで作業するのが好きなんだ。
以下、私のワークフローの詳細です。私はLinuxで作業しているが、MacでもWindowsでも問題なくセットアップができる。
私の仕事始めは、ターミナルを開き、~/Projects/XYZをcdし、以下を実行する。 タムックスでは、そこから始めよう。
何なのか? TMUX?著者が言うように:
TMUXはターミナル・マルチプレクサである。これを使えば、1つの端末で複数のプログラムを簡単に切り替えたり、切り離したり(バックグラウンドで実行し続ける)、別の端末に再接続したりできる。
一つのターミナルで複数のことを切り替えるのに使っている。だから、1つの TMUX ウィンドウに レールズ サーバーが稼動している。 ヴィム ターミナルで何かする必要があるときは、ルートをチェックしたり、マイグレーションやテストを実行したりする。 CTRL-A C
そしてそれを実行する。
私は使わない TMUX ペイン、ウィンドウのみで、多くの切り替えを行う(私はCTRL + double-Aを最後のウィンドウの切り替えにバインドしている)。
のもう一つの非常に便利な機能である。 TMUX それは、マウスを使わずにターミナルからテキストを探してコピーできることだ。
私のワークフローの主要部分だ。このワークフローは、私のワークフローの主要部分だ。 ブイアイエム 他のエディターとどう違うのか。それに関する素晴らしい記事やビデオがたくさんあります。一言で言うと ヴィム はモーダルエディタである。挿入モードと通常モードの2つのモードがあります。挿入は文書にテキストを入力するためのもので、ノーマルはカーソルの移動、テキストの断片の削除、変更など、文書に対してさまざまな操作を行うためのものだ。奇妙に聞こえるかもしれないが、しばらくするととても自然に感じられ、いつものエディターに戻るのはとても難しくなる。
ここでお見せしたいのは、私がどのように組み合わせるかということだ。 ヴィム ウェブ開発者として必要なものをすべて手に入れるために、他のツールも使っている。
重いプラグインは好きではない ヴィム コンフィグをいくつか使っている。これがそのリストだ:
ネルドツリー - はファイルエクスプローラである。ファイルの移動、名前の変更、新規ファイルの作成など、ファイルシステムの基本的な操作を簡単に行うことができる、
バイムエンドワイズ - 私はRubyの開発者なので、それを使って 終わり
その後 もし
, する
, デフ
その他いくつかのキーワードがある、
ビムレール - それは レールズ パワープラグイン。このプラグインは Railsアプリ.カーソルの下にあるパーシャルをチェックしたいですか?を押すだけです。 ジーエフ
をクリックすると、現在のウィンドウで開きます。他にもいろいろなオプションがあるが、私がよく使うのはこれだ、
バイムサラウンド - このプラグインを使えば、テキストの周囲を簡単に変更することができます。このプラグインを使えば、数回のキー操作で、テキストの周囲を()から[]に変更できます、
バイムリピート - Vim-surroundを補完するもの。これは .
(Vimで最後の変更を繰り返す)、
ヴィムウィキ- 私のメモの取り方
fzf.vim+ エフゼットエフ - 私の核心部分 ウェブ開発 ワークフロー
これらは、私のコーディングのやり方を定義するツールだ。通常、コーディング作業をしているとき、私はほとんどの時間を、そのものがどのように動作するかを見つけることに費やしていることに気づいた。そのためには、コードベースのさまざまな部分、メソッドの定義、クラスなどを素早くチェックする必要がある。
Fzf はコマンドライン用の対話型Unixフィルターで、あらゆるリスト(ファイル、コマンド履歴、gitコミット、プロセスリスト)で使うことができる。
リップグレップ はgrepに代わるものだが、圧倒的に速い。
この2つが組み合わされば、自分の好きなものをすぐに見つけることができる。 プロジェクト.
には2つの設定がある。 ヴィム コンフィグファイルは、これを手助けしてくれる:
nnoremap:ファイル<Cr
nnoremap :Rg (ノノレマップ :Rg)
最初のものは、ファイル・パスのファジー検索(CTRL-P)を使って正しいファイルを素早く見つけることができる。もうひとつは、プロジェクト内のすべてのファイルのパスと中身に対して リップグレップ (CTRL-F)。
そこで、あるカラムを ユーザー
テーブルでCTRL-Fを押しながら、次のように書く。 アドコラスナム
とマッチする。 add_column :users, :name, :string
.
メソッドの定義を探すとき、私はよくCTRL-Fを実行する。 def メソッド名
.
ファイルパス+コンテンツで検索してくれるのでとても便利です。特に、探しているコンテンツがプロジェクトの特定の部分にあることがわかっているときに便利だ。例えば、ユーザー名を更新した場所を探したい。私は Ctrl-F
構成名
行と一致するように app/controllers/users_controller:user.update(name: new_name)
.
プロジェクトとコードベースの構造を知っていれば、ファジー検索クエリを簡単に構築して、欲しいものをほとんど何でも素早く見つけることができる。
ここをクリック をクリックすると、私が`discourse`コードベース(i5、16GBのデスクトップで440kLOC)をいじくりまわしている様子と、私が普段どのようにプロジェクトを動かしているかを録画したものを見ることができる。
私のセットアップに興味をもってくれて、このセットアップに参加してくれることを願っている。 Fzf を試してみてください。それは本当に私の使い方を変えた ヴィム として コード 編集者