Ruby 初心者スレッド Part 64

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/09/01(土) 19:25:16.66ID:wk35+pf/
プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
質問するときは、OSやRubyのバージョン、エラーメッセージを書いたほうがいいお
Ruby on RailsについてはWEBプログラミング板で

前スレ
Ruby 初心者スレッド Part 63
https://mevius.5ch.net/test/read.cgi/tech/1523954817/

るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/

Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/

逆引きRuby
http://www.namaraii.com/rubytips/

Ruby コミュニティ公式
https://www.ruby-lang.org/
2018/10/30(火) 22:59:41.01ID:4k+bjVEd
commonmarker 0.17.x から0.18.xに上げたら、html混ざりmarkdownをコンバートすると
htmlは省略だぁ〜ヒャッハー
となるようになってしまった。OTL
2018/10/30(火) 23:04:57.20ID:E+8/TrgC
知らんがな
自分で直してpull request出してこい
787779
垢版 |
2018/10/30(火) 23:16:04.14ID:tLch1bmf
Ruby に、set があったのか!

配列で集合演算するから、忘れていたわ
2018/10/31(水) 14:14:04.19ID:qCIRTH4x
Arrayの集合演算キモいから消してほしい
789デフォルトの名無しさん
垢版 |
2018/11/04(日) 14:01:58.67ID:72B38wDh
記号の読み方について
!= はノットイコールだよね?
=> はファットカンマだよね?
=~ に読みかたってある?
あと、\(バックスラッシュ)のこと何て呼んでる?そのままバックスラッシュ?
教えて
790デフォルトの名無しさん
垢版 |
2018/11/04(日) 14:08:45.24ID:5RY1Lh2I
go c
2018/11/04(日) 14:12:44.93ID:3ZoK2iis
イコールにょろ
792デフォルトの名無しさん
垢版 |
2018/11/04(日) 14:24:33.61ID:72B38wDh
>>790
go chiebukuro?
793デフォルトの名無しさん
垢版 |
2018/11/04(日) 14:24:58.57ID:72B38wDh
>>791
かわいい
2018/11/04(日) 16:33:05.47ID:9/kDjwKe
~はチルダだよ。
チルダさァァァァァん
2018/11/04(日) 17:26:16.48ID:UMsoYhE1
いつの時代じゃよ
796デフォルトの名無しさん
垢版 |
2018/11/04(日) 18:27:11.42ID:rLQVzKFu
>> 792
5c
2018/11/04(日) 19:42:31.11ID:3ZoK2iis
寒い時代だとは思わんか。。。
2018/11/07(水) 11:39:04.64ID:8DqZdVO1
>>791
鶴屋さんだと語尾に思われて思わぬ食い違いがでそう
2018/11/09(金) 16:54:13.33ID:ALrpS26S
ttps://www.ruby-lang.org/ja/downloadsから
「RubyInstaller1.3.3」をダウンロードしたいんだけど、どこにありますか?
2018/11/09(金) 17:47:18.38ID:42yDnQ40
要はnokogiriをインストールしたいんだろ?
2018/11/09(金) 18:04:19.60ID:LMRP/49C
>>799
2.3.3のことなら
https://rubyinstaller.org/downloads/archives/
https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.3.3.exe
https://dl.bintray.com/oneclick/rubyinstaller/rubyinstaller-2.3.3-x64.exe
2018/11/09(金) 20:28:20.74ID:ALrpS26S
>>800
はい。そうです。

>>801
私がやりたいことはバージョンが上でももないとのことでした。
返信ありがとうございました。
2018/11/09(金) 21:32:20.19ID:QKOvQ/Be
参考まで
「Ruby installer for Windows で gem install nokogiri」
https://qiita.com/tanakahisateru/items/76d7049b806dfa2e59f9
2018/11/09(金) 21:40:15.28ID:ALrpS26S
>>802
誤字ってたので訂正

× 私がやりたいことはバージョンが上でももないとのことでした。

○ 私がやりたいことはバージョンが上でも問題ないとのことでした。

>>803
ありがとうございます
2018/11/09(金) 22:07:29.84ID:LcYc+UJI
>>804
この辺>>686-687も参考にせいぜい頑張ってねw

686 デフォルトの名無しさん 2018/10/17(水) 20:13:17.85 ID:pcmrmHBT
ドキュメント軽視とWindows蔑視はRubyコミュニティの伝統。
コードが仕様だ!Windowsなんて使ってる奴が悪い!

687 デフォルトの名無しさん sage 2018/10/17(水) 20:17:44.70 ID:z+Rs6gUv
Unixで開発してるとGCCツールチェインは自然に入ってるからね
はっきり言うね、Windows使いに人権はありません
2018/11/10(土) 00:46:44.99ID:bP07frYq
WSLで好きなruby動かせばええと思うよ
2018/11/10(土) 01:48:21.65ID:z7ZsqvtS
なぜいまさら2.3なのか
2018/11/10(土) 07:19:28.11ID:UwfBI9OI
るりまが503出まくりで見れない
809デフォルトの名無しさん
垢版 |
2018/11/12(月) 12:14:58.73ID:XIxjtr9D
30歳無職なんだけど俺にもプログラミングできるかな?
https://www.loserblog.net/
810デフォルトの名無しさん
垢版 |
2018/11/13(火) 03:53:48.37ID:gWmuHRek
Ruby installer のDevkit 無し(ポータブル版)は、MSYS2/MINGW、GNU コンパイラが無いので、
ソースコードからコンパイルできないけど、サイズは2〜3GB 小さい

WebSocket, Rails, VSCode のデバッグ機能などは使えないけど、
Sinatra, Nokogiri, Selenium WebDriver などは使える
(WebSocket のバイナリをネットで探したけど、見つからなかった。どこかにない?)

漏れは、Windows10 で、ruby 2.4.4 を使っている。
2.5 系は、まだ新しいから使わないように

ポータブル版を、C:\Ruby24-x64 に置いて、
ユーザー環境変数PATH に、C:\Ruby24-x64\bin を追加すればよい

漏れは、ユーザー環境変数RUBYOPT に、--encoding=UTF-8 も設定しているけど、
これで、irb は使えなくなる

ただし、Windows のirb は、日本語がバグるので、
irb を使うのなら、WSL で、Ubuntu 16.04 に、Ruby 2.3.1 を入れて、そちらを使う。
Ubuntu 18.04 は、まだ新しいから、もうちょっと様子を見る

入力補完が効かないけど、VSCode で作ってる。
MSYS2 を入れれば、入力補完できるのかね?
811810
垢版 |
2018/11/13(火) 04:09:32.58ID:gWmuHRek
Windows10・WSL の、Ubuntu が、日本語でも入出力できるのは、
コマンドプロンプトの画面と同じものを使っているから

でも、irb みたいに、Linux 側のソースコードで、
独自にWindows 向けにコンパイルしたものは、半角英数字しか動かない。
日本語など、他の言語はバグル

pry も、irb を使っているのだっけ?

漏れの希望としては、Windows10・WSL の、Ubuntu みたいに、
コマンドプロンプトの画面と同じものを使って、作ってほしい

そうそう、最初にgem で、パッケージマネージャーのBundler を入れる。
それ以後は、gem を使わず、Bundler で他のgem をインストールすればよい
2018/11/13(火) 07:22:43.54ID:e2cmk+aq
なんじゃそりゃ
windowsでマルチバイト文字が文字化けするのはreadlineの所為
pryとirbはソースレベルで全く別物
2018/11/13(火) 08:58:09.11ID:M3rNGpof
こいつ>>810>>811、Ruby関係ないスレで脈絡なく自分語りとRubyの宣伝しだしたり、他言語専用質問スレでRubyで回答してからRubyの宣伝しだしたり非常にウザいんだが。
このスレから出てこないようにしとけよ。
814デフォルトの名無しさん
垢版 |
2018/11/13(火) 18:35:35.73ID:EVOGh0na
Ruby糞
815810
垢版 |
2018/11/13(火) 23:41:18.63ID:gWmuHRek
そのreadline を使っていると、Windows で日本語でバグるのだろう。
Windows で半角英数字以外には、対応していないのだろう

Windows10・WSL の、Ubuntu では、
メニューなどもコマンドプロンプトの画面と、全く同じだから、日本語でもバグらない
2018/11/14(水) 00:04:17.08ID:sJwxMrq1
>>815
文字コードって知ってるかクズ
2018/11/14(水) 01:16:42.01ID:dV0vzlx1
localhostにssh接続して
好きなターミナルエミュレータつかえば
818デフォルトの名無しさん
垢版 |
2018/11/14(水) 09:06:46.01ID:BvL9P3zV
vs codeからvimに乗り換えようと思う。マウス捨てればいいんだろ?
2018/11/14(水) 12:12:13.64ID:cUOp1BJi
WinもMacOSも消してLinuxをCUIだけで入れたらいいよ
2018/11/14(水) 18:15:46.63ID:1Fc8ss/r
windowsで
comポートの一覧出す方法教えてください
2018/11/14(水) 18:21:44.93ID:vc4ZSEr5
vs codeは取得に一日
vimは取得に6ヶ月
2018/11/14(水) 18:34:48.53ID:RHMEiM3I
>>820
Win32API質問箱 Build124
https://mevius.5ch.net/test/read.cgi/tech/1510395780/
2018/11/14(水) 20:23:51.58ID:D2WaC5Jp
>>820
require 'win32ole'
colItems = WIN32OLE.connect('winmgmts://./root\CIMV2').ExecQuery("Select * from Win32_PNPEntity Where (Name like '%(COM%)')" )
colItems.each{|obj| puts obj.Caption }
824デフォルトの名無しさん
垢版 |
2018/11/15(木) 09:15:54.74ID:NWUUxe6q
ぶっちゃけvlmがvscodeに勝ってるところなんてあるか?
2018/11/15(木) 09:46:17.53ID:P9aoBmqQ
>>824
vimはRuby界における公式エディタであるemacsの仇敵だし、vscodeはMSという大悪魔に魂を売ることになる
目糞鼻糞
826デフォルトの名無しさん
垢版 |
2018/11/15(木) 12:05:23.30ID:tGnWpqvT
vimからRuby呼び出してスクリプトによる編集処理してもいいんじゃない?
827デフォルトの名無しさん
垢版 |
2018/11/15(木) 12:52:11.17ID:lNkjj0jr
>>825
Haskellerの癖にvi使いになった自分からすると、ぶっちゃけ編集能力の割に軽いってのがある。
編集能力単体ならemasやvscoreの方があるかも知れないが、軽さとのコスパはvi。
ちょっと編集したい程度ならviの方が速い。
2018/11/15(木) 12:58:50.77ID:Gnw5U56Y
rubyってちょっと編集するくらいでアプリ作れちゃうの?
2018/11/15(木) 14:06:35.25ID:RnfnyGRf
>>828
MS Accessの劣化版みたいなアプリならね
それ以上のことをするなら要件相応の手間は必要
830デフォルトの名無しさん
垢版 |
2018/11/15(木) 22:08:27.47ID:g74yzjtM
Ruby で、PowerShell から、Web サーバーを起動すると、WEBrick が起動する。
ruby -run -e httpd . -p 8080

これで複数のブラウザから、index.html をアクセスできる。
http://localhost:8080

Nokogiri, Selenium WebDriver, ERB などを使って、
原始的に文字列から、HTML タグを構築して、ブラウザで見る

漏れはその方法で、自分のPC 内の画像フォルダ内の画像を、ブラウザで見てる

他には、5ch の書き込み内のリンク(a タグ)を取得して、
それが画像の拡張子なら、img タグに変換して、画像として表示したりしてる

GUI は、HTML, CSS, JavaScript を使えばよい
2018/11/16(金) 00:27:14.48ID:n4axH7dq
一方俺は5ちゃんねるブラウザを使った
2018/11/16(金) 01:39:06.21ID:RoXRfHM0
>>831
wwwww
833デフォルトの名無しさん
垢版 |
2018/11/16(金) 19:08:35.86ID:dkx8E2i6
>>830
世界最大のソフトウェア開発プラットフォームで最も人気なプログラミング言語は何なのか?
https://gigazine.net/news/20181116-top-programming-languages-2018/

さすがRuby!貫禄のランクイン!!
Railsで作られたサービスということを差し引いてもすごい!
2018/11/16(金) 23:07:52.34ID:6qpmN5uX
改訂2版 Ruby逆引きハンドブック、2018/8/28
株式会社マネーフォワード

今読んでいるけど、この本もすごい!

著者は、初版の「るびきち」から、上場企業のマネーフォワードの9人に変わったけど、
何人か、Rubyコミッターもいる

この会社もRubyでは、Cookpad 並みにすごいかも
2018/11/16(金) 23:56:41.91ID:agF7AI+S
2015年まで5位の座を占めていたRubyは
2018年になると10位へ転落し、
トップ10から陥落しかけている状況。
836デフォルトの名無しさん
垢版 |
2018/11/17(土) 00:09:37.31ID:+2RnQZxl
rubyは落ち目だな
今のうちにPythonに乗り換えとくわ
2018/11/17(土) 01:09:58.54ID:TLK93Zwg
PythonはもうAIが機械学習で自動コーディングしてくれるそうだ
2018/11/17(土) 01:25:57.27ID:aw0TiQVW
むかしPerlで書いてたような書捨てスクリプトはRubyのが楽だし
適材適所
2018/11/17(土) 05:07:41.72ID:n+7enX5R
pycharm-ceの出来がいいから、ついpythonで書いちゃうな
rubymineもceバージョン出してくれんかな(´・ω・`)
840デフォルトの名無しさん
垢版 |
2018/11/17(土) 15:41:40.28ID:+2RnQZxl
atom使ってる人いる?
何故atomを使うのか聞きたい
2018/11/17(土) 15:48:37.25ID:DG9kgnl3
そらーをこえてー
2018/11/17(土) 16:05:28.35ID:rc62Vrp5
Railsで世界最高の開発者向けサービスを作って今はMSの社員としてMSから高給を貰っている方々によって開発されたエディタだからな
これはもうRubyがAtomを生み出したと言っても過言ではない
2018/11/17(土) 16:11:27.29ID:5f4S6inB
VSCodeは元々Atomからフォークされたものであるから、VSCodeの起源もまたRubyにあると言っても過言ではない
2018/11/17(土) 16:47:00.84ID:DG9kgnl3
MSは俺が出した金から社員に給料を出しているわけだから、
俺の先祖がAtomを生み出したと言っても過言ではない
2018/11/17(土) 17:39:21.46ID:+xB40+7+
Railsの超初心者の質問なのですが、例外をキャッチしたらエラー画面を出さずにエラーメッセージをビューに送る処理を書きたいのですがうまく行きません。
コードです。
https://ideone.com/ubaMxO
2018/11/17(土) 17:40:11.21ID:DG9kgnl3
ideoneを使ってるだけで初心者って臭いがするなw
2018/11/17(土) 18:22:27.77ID:FW8kVEqd
>>845
render 使わないと何も返さないよ
2018/11/17(土) 18:34:31.02ID:DG9kgnl3
>>847
その答えは失格だなぁw

正しい答えは「例外をキャッチしたらエラー画面を出さずにエラーメッセージをビューに送る処理を書いたらだめ」だ
849デフォルトの名無しさん
垢版 |
2018/11/17(土) 19:07:10.27ID:+xB40+7+
>>848
あんまりよくわからないです
インスタンス変数はビューから参照出来るんですよね?
それとも例外の処理書き間違えていますかね?
2018/11/17(土) 19:09:54.63ID:DG9kgnl3
>>849
だから、例外は放っておけばいいの
余計なことしなくていい
851デフォルトの名無しさん
垢版 |
2018/11/17(土) 19:11:04.46ID:+xB40+7+
>>850
ではエラーメッセージはどうやってビューに渡すんですか?
2018/11/17(土) 19:58:22.61ID:c8NyF4AG
例外が発生したらそのままプログラムを終了させてしまえと主張する気違いはたまに発生する
2018/11/17(土) 20:11:07.08ID:RvE2CkcA
コンソールアプリならアリかな。
それ以外は原則ナシだけども。
854デフォルトの名無しさん
垢版 |
2018/11/17(土) 22:06:33.92ID:+xB40+7+
なんかバカな質問してました
手段忘れたけど自己解決しました
2018/11/17(土) 23:48:54.13ID:2WlUsnTW
Rails の質問は、web制作管理板の方へ書き込んでください
2018/11/18(日) 02:34:46.70ID:tOYW/MHy
>>851
エラーメッセージやなくて例外やろ?
例外は渡さなくていいって言ってるの
rescueもしなくていいって言ってんの

なんのためにRails使ってるんだよ?
そんなクソ面倒なことRailsにやらせろよ
2018/11/18(日) 02:35:32.08ID:tOYW/MHy
>>852
> 例外が発生したらそのままプログラムを終了させてしまえと主張する気違いはたまに発生する
そいつはバカだな。Railsは例外発生してもプログラム終了しないからな。さすがやで
858デフォルトの名無しさん
垢版 |
2018/11/19(月) 17:01:29.63ID:0ckbPJ2E
掲示板実装できた
これで初心者から初心者にステップアップだ
859デフォルトの名無しさん
垢版 |
2018/11/19(月) 17:13:34.20ID:Vwi20v8M
おめでとう
おれはまだRailsすらinstallできてない
2018/11/19(月) 23:10:53.32ID:057j8H5Q
漏れは、Windows10 で、MSYS2 コンパイラを入れていないから、
websocket のバイナリが無いから、Rails は使えない。
どこかに、websocket のバイナリは無いの?

https://www.mirrorcommunications.com/blog/how-to-install-ruby-on-rails-on-windows-10-with-postgresql

2017/04/22
Windows10, WSL
Ruby 2.4.1
Rails 5.0.1

動画もある

まあ、Rails の話は、webprog 板へ書き込んで!
2018/11/20(火) 08:23:25.13ID:YgW9tKBi
rails+windowsはツラすぎるから
WSLかVagrant使え
2018/11/20(火) 08:40:07.28ID:X8QFm2fd
ツラ過ぎるというより意味がないんだよ
どうせ運用環境はLinuxなんだからWinでの苦労なんて便所の落書き以下の意味すらない
2018/11/20(火) 08:41:53.76ID:z5N5L6gH
誰がヅラだって?
864デフォルトの名無しさん
垢版 |
2018/11/20(火) 08:54:26.91ID:j03mDcba
>>862
これマジ?
既にエディタの環境構築でひと苦労なのに、Linuxの構築もしないといけないのか……
Windowserは不遇だな……
865デフォルトの名無しさん
垢版 |
2018/11/20(火) 09:01:28.76ID:ZtIBLsed
>>864
だから言ったのに… >>686-687
信者も相手のOS確認せずに布教して投げっぱにするなよ。
10人に石投げたら8〜9人がWindowsなんやぞ。

686 デフォルトの名無しさん 2018/10/17(水) 20:13:17.85 ID:pcmrmHBT
ドキュメント軽視とWindows蔑視はRubyコミュニティの伝統。
コードが仕様だ!Windowsなんて使ってる奴が悪い!

687 デフォルトの名無しさん sage 2018/10/17(水) 20:17:44.70 ID:z+Rs6gUv
Unixで開発してるとGCCツールチェインは自然に入ってるからね
はっきり言うね、Windows使いに人権はありません
2018/11/20(火) 11:07:26.51ID:CZ2hfhmS
cloud9使えばいいじゃん
端末のOSなど一切関係ないから
ブラウザさえ使えればいいからクソノートでもキーボードさえついていればいい
867デフォルトの名無しさん
垢版 |
2018/11/20(火) 12:20:10.19ID:Vgqca5m8
Ruby Mineの調子が悪いのでエディタ・IDEを変えようと思うのですがオススメありますか?
vimキーバインドにできてスペルチェックあって自動でend挿入出来るのがいいです
2018/11/20(火) 13:50:12.73ID:aO8Frmcl
>>867
Ruby教の教義的にはspacemacs
世間一般では圧倒的にVSCode
869デフォルトの名無しさん
垢版 |
2018/11/22(木) 16:09:31.09ID:NaVQ99ds
色々使ったけどやっぱvs code最強だわ
宗教上の理由で使えない奴らかわいそうw
2018/11/22(木) 21:14:57.62ID:XJTx/PKt
VSCodeはカーソル移動でホームポジションから手を離さないといけないのがなー
Mac使えばいいんだろうけど、そのためだけにMacってのも
2018/11/22(木) 21:58:47.54ID:YYHdauiZ
VimやEmacsのキーバインド使えばいいでしょ
コマンド入力による操作体系が強力だから少なくともRubyMineに比べたらキーボード中心で使いやすいし
2018/11/23(金) 23:37:21.14ID:uhwEdrvZ
別にAutoHotkeyでキーバインド変更しているから無問題
2018/11/24(土) 01:21:45.23ID:PRCdABA7
MacのキーバインドをWindowsやLinuxでも採用すればよかっただけなのにな
なんでわざわざ変えたんだろう
2018/11/24(土) 06:37:15.09ID:emfrr2Lm
>>873
歴史的に見ればMacの方が後だよ。
Macの今のキーバインドが出来たのは2000年ごろだ
2018/11/24(土) 17:44:17.91ID:YsJMMDpU
動的型付けの衰退 - Oracle
https://www.oracle.com/webfolder/technetwork/jp/javamagazine/Java-JF18-editorial.pdf

このオラクルのPDFだけど
大体の人が動的型に言いたかったであろうことが
大変綺麗にまとまってて良かったよ
2018/11/24(土) 18:33:18.63ID:IZ0lTZaS
>>874
1984 Macintosh
1985 Windows
1991 Linux
2018/11/24(土) 18:52:51.51ID:PRCdABA7
>>876
VSCodeの話しだよね?
2018/11/24(土) 19:18:47.82ID:b7tmfxF4
>>878
1984年ごろのMacのキーバインドはホント糞だったよ
2018/11/24(土) 19:20:18.07ID:b7tmfxF4
OSXからだよ。Unix系の素晴らしいキーバインドを取り入れたのは
Unixは最初から素晴らしかったからね
2018/11/24(土) 19:34:35.47ID:VBkVIhNz
UNIXじゃなくてEmacsだろ
今やUNIXエディタ戦争はVimに完敗し、SublimeやAtomでMacの独壇場だったモダンエディタ系も今やMSの天下
RailsがMacにプリインストールされてイケイケだった頃のRubyが懐かしいな
881デフォルトの名無しさん
垢版 |
2018/11/25(日) 04:38:13.34ID:moheOgid
viって使わないとコマンド忘れちゃうね
仕方ないのでnano使ってる
882デフォルトの名無しさん
垢版 |
2018/11/25(日) 19:49:13.96ID:wWU/NTaG
教本に書いてあるクラス定義の例題プログラムが全然理解できない……つらい……
2018/11/25(日) 20:38:08.40ID:mH6GThxQ
プログラミングには向き不向きがあるから諦めることも大事
向いてない奴が頑張っても生涯クソブラック企業で奴隷だぞ
2018/11/25(日) 23:26:13.89ID:bdma9Nzw
Ruby でオブジェクト指向を勉強するのが、一番よい

Rubyでは、あらゆるものがObject だから、Class 自体もObject

self が、Classからnew したインスタンスを指すのが普通だが、
特異メソッドの文脈では、Class自信を指す

どの文脈なのか注意する。
Classの地の文では、selfはClassだから、ここでは特異メソッドになる。
インスタンスの文脈にならない

@インスタンス変数と、@@クラス変数の他に、@クラスインスタンス変数という変態もある。
これは、selfがClassの文脈で、@を使った場合に起こる。
この場合、クラス自身のインスタンス変数となり、サブクラスへ継承されない

たのしいRuby 第5版、2016
を読んだら、以下の2冊を読むとよい

Effective Ruby、2015
改訂2版 Ruby逆引きハンドブック、2018/8/28
2018/11/25(日) 23:32:04.98ID:+Rx2UR4K
> Rubyでは、あらゆるものがObject だから
あれ?Rubyってメソッドはオブジェクトだっけ?

JavaScriptはメソッドがオブジェクトだから
function foo() {}
console.log(foo.name)
とかできるけど、Rubyって無理だったよね?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況