Ruby 初心者スレッド Part 63
レス数が1000を超えています。これ以上書き込みはできません。
プログラミング言語Rubyについての、初心者向けスレです。質問・要望・雑談などどうぞ。
質問するときは、OSやRubyのバージョン、エラーメッセージを書いたほうがいいお
Ruby on RailsについてはWEBプログラミング板で
前スレ
Ruby 初心者スレッド Part 62
https://mevius.5ch.net/test/read.cgi/tech/1511451329/
るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/
Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/
逆引きRuby
http://www.namaraii.com/rubytips/ >>948
VSCode
Atom用のテーマ作ってた人もみんなVSCodeに乗り換えてしまって、VSCodeに移植されてるよ
まあRubyistには無縁なんだけどね >>951
VS codeでもテーマ変えられるんだ!知らなかった。ありがとう
Atomは重いし下火ならVS codeに乗り換えようかな……
でも、Rubyistには無縁とか、宗教上の問題で使えないってどういうこと? キチガイ独自の宗教事情だから気にするな
VS CodeにRuby Solargraph入れるとめっちゃ捗るぞ 暗めのテーマ、Dracula とかか?
Bracket Pair Colorizer
vscode-icons, VSCode Great Icons
indent-rainbow
この辺の拡張機能を使えば、カラフル Bracket Pair Colorizer
カッコの色が、それぞれ違う。
これが無いと、カッコの対応関係がわからないから、プログラミングできない! 未だにK2Editorを使っている。いい加減乗り換えたいが動作が重いか機能不足かの二択でいかんともしがたい メソッドやクラスの定義に飛べたり、クラス名や変数名変えたらプロジェクト内の全てに更新かけてくれるIDEない? >>950
キーバインドを emacs 式に(できれば簡単に)できるかどうか
それ以外はどうでもいい… >>943
ATOMもvscodeも大部分nodejsだったはず
pythonのidleはpython+tkだったか? もう今やEmacsの方がVS Codeより軽いぐらいだからな
VS CodeもAtomよりはよっぽどマシだけど、それでももっさり感は否めない
となるとEmacsか、せいぜいSublime Textって選択肢になってしまう >>953
solargraph入れたらgemが必要と言われ、gemインスールしてからgem install soragraphしたらエラーが出て解決策が分からない
プログラミング難しいっすね……(二ヶ月目初心者) >>961
ゴリゴリに拡張しまくったemacsやvimなら体感的にはVSCodeの方が速いわ >>962
コーディングより環境構築がややこしいのはプログラミングあるあるだから…
Windowsでruby installer使ってるならreadmeの最後にも書いてあるけど↓を試してみ
> gem uninstall eventmachine
> gem install eventmachine --platform ruby -- --use-system-libraries Rubyのgemに限らず最近の言語はパッケージ的な仕組みを持っているけど、処理内容が隠されてしまうから
意図した結果が得られないときのトラブルシュートが難航するんだよな
しかもパッケージがらみの情報は言語本体の情報より少ない上に初心者だとエラーの見方もわからなかったりしてより厳しい状況になる
これ、最近乱立気味のビルドシステムでも同じことが言えていて、標準的な手順から外れたとたん
ビルドシステムを勉強しエキスパートにならないとにっちもさっちもいかなかったりするし トラブったらissue上げるだけだろ
コミュ障かよ Win環境でのissueなんか上げても誰も相手にしないぞ
UnixではテストしたWinは知らんでクローズ >>968
それでクローズされた具体的なチケットプリーズ Rubyが書けるようになるとCやJava,Pythonに対してどんなメリットがあるの?
楽しい以外で たのしいがRubyの存在意義なのに
それを無視されましても・・・ 漏れなんか、ruby installer から、7-zip 版(9MB)を解凍して、ユーザー環境変数PATH を通すだけ。
バージョンアップは、フォルダを丸ごと削除する
最初に、gem で、bundler を入れたら、
gem install bundler
後は、Gemfile に書いて、bundle install してる。
rack-test, rspec, selenium-webdriver, nokogiri, mechanize, sqlite3
ただし、7-zip版は、MSYS2 コンパイル環境が入っていないから、コンパイルできない。
websocket のexe が無いから、これに依存しているgem がインストールできない。
websocketのexe(バイナリ)は、どこかに公開されていないのか?
VSCode でデバッグできないし、solargraph も動かない >>971
そのへんよりはRubyのほうが書きやすいことは間違いない。
楽しいかどうかは外しても、楽ではある。 >>965
だめでした……
・eventmachineはインスールされていませんでした
・ご指摘のコマンドを入力しましたが、"failed to build gem native extention."のエラーが出ました
しかし、Rubyを再インストールするなど紆余曲折の末、gem install solargraphを試したら、無事インストールすることができました!ありがとうございました!
これでVS codeが使えます! >>954
このへんの拡張機能も入れました!見やすくなってすごくいいです!
ATOM派だったけど心が揺らいできました!VS codeもいいですね! >>971
CやJava,Pythonを書けるようになってから
Rubyのことをチラッとでも勉強してみると、
>>974もいっているように、
「このへんの処理やるならRubyのほうがラクに書けるな」
って部分がわかるかと。
いきなりRubyだけ学んでも、ありがたみがわかりにくいと思う。 VSCode の拡張機能なら、以下も必需品。
VSCodeのスレも参照
Code Runner
右クリックメニューから、実行できる
Live Server
ファイルを保存するだけで、ブラウザへ反映される irb -m
とするbcモードというのがあって分数や行列の計算ができるそうですが、
irb(main):001:0> 1/2 + 5/7
=> (17/14)
irb(main):002:0> 5/6 * 2/4
=> (5/12)
このように分数が計算できて便利ですが、
行列の表現の仕方がわかりません。
irb(main):001:0> [[1,2],[3,4]] + [[4,3],[2,1]]
=> [[1, 2], [3, 4], [4, 3], [2, 1]]
単純な結合になってしまいます。 行列ってライブリ使うんじゃなかった?
Rubyで回転行列とかやってたときに標準添付のライブラリ使ったような覚えがある
というか、bcモードなんてあるのか >>971
楽しい以外は特に無いが。なにか問題が? その言語じゃないとできない。みたいなことは殆どないよ。
大抵の言語でできることは他の言語でもできてしまう。 >>979
bcモードはload mathn, fraction or matrix are availableってことだから
Matrix[[1,2]] + Matrix[[3,4]]ってしないとダメ
bcモードじゃないときはrequire 'matrix'する必要がある 漏れは、Selenium WebDriver, Nokogiri で、
自分のPC の画像フォルダにある、様々なサイズの画像を、
すべての画像の高さを、画面の80% に揃えてから、ブラウザで見てる Selenium WebDriver, Nokogiri を使って、
自分のPC の、Pictures 内の画像ファイルだけを、ブラウザで見る。
MyUtility クラスで、画像の拡張子だけを抜き出す
picture_paths = Dir.glob( 'C:/Users/Owner/Pictures/*' )
.select { |fpath| FileTest.file?( fpath ) && MyUtility.check_picture_extname?( fpath ) }
.sample( 5 ) # random choice
index_url = "file:///" + File.join(__dir__, 'index.html')
driver.navigate.to index_url
doc = Nokogiri::HTML(driver.page_source)
content_wrapper = doc.at_css("#content") # 全体の枠
picture_paths.each do | pict_path | # 各画像
# 画像ノード。改行を削除する
img_str = <<"EOT".gsub(/\n/, "")
<img src="#{ pict_path }">
EOT
img_node = Nokogiri::HTML::DocumentFragment.parse img_str
img_node.parent = content_wrapper # 親
end
inner_content = content_wrapper.inner_html.to_s.gsub(/\n/, "") # 改行を削除
jsCode = <<"EOT"
var elem = document.getElementById("content");
elem.innerHTML = '#{ inner_content }';
EOT
driver.execute_script jsCode # JavaScript を実行 2.5環境でruby/dbiがエラーはいて動かないのでsequelを勉強してます。
sql serverにネットワーク越しにrubyodbcでodbc接続してますが
なぜかdecimal型が全部string型で帰ってくるし既存のテーブルだと
intで戻ってくるはずのまでそんなものだから延々調査してたんですけど元凶はrubyodbcでした。
odbcで帰ってくる値をrubyの型に変換するときに特定の型以外全部stringで返す仕様でした。
昨日tinytds接続にしたらdecimalはbigdecimalで帰ってきました。 >>990
img_str = %(<img src="#{pict_path}">)
でよくない?
それにgsub使うよりdelete("\n")の方が分かりやすい
あと文字リテラルに"と'が無差別に混ざっているのが気持ち悪い 改行を削除しないと、タグの間に、改行ノードを作るかも知れないので、ややこしい
HTML の属性は、" で囲むから、それを文字列にするには、' の方がよい
"〜"属性"〜"
"属性" を含む文字列を、" で囲んで、" の対応関係が崩れて、ハマったから
'〜"属性"〜'
これなら、OK いやだからさ
index_url = "file:///" + File.join(__dir__, 'index.html')
こことかおかしいじゃん >>994
他スレで醜態晒してROMってる言うたのにまだいるのな このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 144日 23時間 54分 18秒 レス数が1000を超えています。これ以上書き込みはできません。